(57)【特許請求の範囲】
【請求項１】
予め用意されたテンプレートとの照合によって３次元の対象物を検出する３Ｄパターンマッチング方法であって、
コンピュータが実行する工程として、
前記対象物の表面形状を計測した３次元の点群データを記憶する３次元点群データベースから前記点群データを読み込む工程と、
前記対象物の３次元形状を前記点群データと同等の密度の点群で表したテンプレートが記憶されているテンプレートデータベースから前記テンプレートを読み込む工程と、
前記点群データの分布状態に近似する近似面を求め、前記点群データのうち前記近似面との乖離が閾値以下である点群データは前記近似面上の点に置換してリサンプリングデータとする一方、前記点群データのうち前記近似面との乖離が閾値を超える点群データは前記近似面上のデータに置換することなくリサンプリングデータに加えるリサンプリング工程と、
前記リサンプリングデータと、前記テンプレートとを照合して、両者が一致するか否かの判定処理を実行するテンプレートマッチング工程とを備え、
前記テンプレートマッチング工程は、
３次元空間を所定サイズの格子に分割し、各格子内に存在する前記リサンプリングデータおよび前記テンプレートのデータ点数を特徴量とし、該特徴量の比較によって前記判定処理を実行する３Ｄパターンマッチング方法。
【請求項２】
請求項１記載の３Ｄパターンマッチング方法であって、
前記リサンプリング工程は、さらに３次元空間内に周期的に配列する配列点を求めて前記点群データに含まれる点を近接する前記配列点のデータに置換し、該配列点のデータのうち前記近似面との乖離が閾値以下であるデータは前記近似面上の点に置換してリサンプリングデータとする一方、前記配列点のデータのうち前記近似面との乖離が閾値を超えるデータは前記近似面上のデータに置換することなくリサンプリングデータに加える処理を実行することを特徴とする３Ｄパターンマッチング方法。
【請求項３】
請求項１または２記載の３Ｄパターンマッチング方法であって、
前記テンプレートマッチング工程の結果に基づき、前記リサンプリングデータに対して前記テンプレートを相対的に配置する工程と、
前記リサンプリングデータと前記テンプレートを構成する点ごとの位置誤差とに応じて、両者のずれを所定の評価式に基づいて定数的に評価する工程と、
前記リサンプリングデータに対する前記テンプレートの相対的な位置および姿勢を変えながら前記評価を行い、前記ずれが最小になると評価される位置および姿勢を求める工程と
をさらに備える３Ｄパターンマッチング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レーザ計測などによって得られた３次元の点群から対象物を検出する技術に関する。
【背景技術】
【０００２】
車両などにレーザ計測装置を搭載し、走行しながら周囲の３次元形状を計測するモービルマッピングシステムが知られている。モービルマッピングシステムでは、車両の周囲をレーザ計測装置でスキャンすることによって、スキャン時の車両位置を基準として、計測点ごとに道路や車両周囲に位置する電柱、壁などの地物までの距離を計測することができる。車両を走行しながらこの計測を行うことによって、３次元の点群データを得ることができる。
こうして得られた点群データから、対象物を検出する技術として特許文献１、２記載の技術がある。
特許文献１は、予め用意された３次元のテンプレートと対象物の点群データとの間に作用する仮想的な引力およびモーメントを計算し、それに応じて両者の位置関係を修正することによって、対象物とテンプレートとの一致度を判定する技術を開示する。
特許文献２は、点群データを地表面などの平面に投射し、その投射結果とテンプレートとの比較によって、電柱等の円筒形形状を検出する技術を開示する。
また、点群データとテンプレートとのズレを各点ごとに評価して、両者の一致度を判定し、対象物を検出するＩＣＰ（Iterative Closest Point）と呼ばれる解析技術も知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２４１１４１号公報
【特許文献２】特開２０１０−２８６２６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
テンプレートとの比較によって点群データから対象物を検出する方法は有用ではあるが、従来技術では、検出できる対象物が限定されていたり、精度が不十分だったりするという課題があった。ＩＣＰは高い精度で対象物を検出可能ではあるが、計算量が多大となり、解析を開始する初期条件としての点群データとテンプレートとの相対的配置によっては膨大な計算時間を要し、十分な精度も確保できないという課題があった。
これらの課題は、レーザ計測によらず、３次元の点群データとテンプレートとの照合によって対象物を検出する際に共通の課題であった。本発明は、かかる検出において対象物の制約なく、検出の処理速度を速め、精度向上を図ることを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、コンピュータによって、３次元の対象物を検出する３Ｄパターンマッチング方法として構成することができる。
即ち、予め用意されたテンプレートとの照合によって３次元の対象物を検出する３Ｄパターンマッチング方法であって、
コンピュータが実行する工程として、
前記対象物の表面形状を計測した３次元の点群データを記憶する３次元点群データベースから前記点群データを読み込む工程と、
前記対象物の３次元形状を、前記点群データと同等の密度の点群で表したテンプレートを記憶するテンプレートデータベースから前記テンプレートを読み込む工程と、
前記点群データと、前記テンプレートとを照合して、両者が一致するか否かを判定するテンプレートマッチング工程とを備え、
前記テンプレートマッチング工程は、
３次元空間を所定サイズの格子に分割し、各格子内に存在する前記点群データおよびテンプレートのデータ点数を特徴量とし、該特徴量の比較によって前記判定を行う工程である３Ｄパターンマッチング方法である。
【０００６】
本発明によれば、上述の通り、格子内に存在するデータ点数を特徴量として、対象物の点群データとテンプレートとの照合を行う。このように特徴量によって点群データおよびテンプレートのそれぞれをモデル化することによって、３次元空間内での両者の照合が比較的容易となり、対象物形状の制約なく検出が可能となる。また、照合が容易になる結果、テンプレートの位置、姿勢を多様に変化させて照合することが可能となるため、検出精度を向上させることができる。
上記態様においては、３次元空間を立方体で分割する他、格子は種々の形状をとることができる。またその寸法も任意に設定可能であるが、点群データおよびテンプレートのデータ点数が、十分、有意な値となるよう、これらのデータ点数の空間密度に応じて設定することが好ましい。
特徴量としては、上述の他、曲率、反射率を併せて用いても良い。曲率は、データの配置を曲面近似することによって求めることができる。反射率は、レーザ計測する際に各点ごとに、射出光と反射光との強度の比として計測しておくことができ、これを特徴量とすることによって、例えば、反射鏡などの地物を容易に検出することが可能となる。複数の特徴量を併用する場合には、これらの特徴量の重み付き加算値を用いるようにしてもよい。
【０００７】
本発明においては、さらに、
前記テンプレートマッチング工程に先立って、３次元空間内に周期的に配列する配列点を求め、前記点群データに含まれる点を近接する前記配列点のデータに置換するリサンプリング工程を備えるうようにしてもよい。
計測によって得られる点群データには少なからずノイズが含まれているのが通常である。上述の態様により、車両計測による点群の偏り（近いほど密で、遠いほど粗）を改善することができる。
周期的に配列する配列点とは、例えば、３次元空間に直交座標系、円筒座標系、極座標系によって定められる格子点を利用することができる。また、周期的とは、必ずしも等間隔であることを意味せず、例えば、配列点の間隔を正弦関数などの周期関数によって変化させてもよい。
【０００８】
また、テンプレートマッチング工程に先立って、前記点群データの分布状態に近似する近似面を求め、該点群データをそれぞれ前記近似面上の点のデータに置換するリサンプリング工程を備えるようにしてもよい。
検出されるべき対象物が現実に存在する物である以上、その表面は何らかの平面または曲面で構成されているはずである。上述の態様では、点群データの分布状態から近似面を求め、近似面上の点で元のデータを置換することによって、点群データに含まれるノイズの影響を抑制することができ、検出精度をより向上させることができる。
近似面上の点は、種々の方法で求めることができる。例えば、空間内に予め設定された格子点を前記近似面に射影することで、置換されるべき点群を求めても良い。また、原点群データを、それぞれ近似面に射影して置換されるべき点群を求めても良い。
さらに、前記テンプレートマッチング工程に先立って、前記点群データの分布状態に近似する近似面を求めるとともに、３次元空間内に周期的に配列する配列点を求めて前記点群データに含まれる点を近接する前記配列点のデータに置換し、前記配列点のデータをそれぞれ前記近似面上の点のデータに置換するリサンプリング工程を備えるようにしてもよい。
上述した２つの態様のリサンプリングデータを併用する態様である。こうすることにより、相互の利点を活かし、ノイズを効果的に除去することができる。
【０００９】
また、本発明では、さらに、
前記テンプレートマッチング工程の結果に基づき、前記対象物の点群データに対して前記テンプレートを相対的に配置する工程と、
前記点群データとテンプレートを構成する点ごとの位置誤差に基づいて、両者のずれを所定の評価式に基づいて定数的に評価する工程と、
前記点群データに対する前記テンプレートの相対的な位置および姿勢を変えながら前記評価を行い、前記ずれが最小になると評価される位置および姿勢を求める工程とを備えるものとしてもよい。
【００１０】
これは、いわゆるＩＣＰによる検出工程を追加した態様である。こうすることによって、点群データとテンプレートとを構成する点ごとの位置誤差を評価するため、上述の特徴量を用いる方法よりも、両者をより精度良く一致させることができ、さらに検出精度を向上させることができる。一般にＩＣＰでは、計算開始の初期条件における点群データとテンプレートの相対的位置関係（以下、「初期位置」という）によって計算量が増大するとともに、検出精度が確保できないという課題があるが、本発明では、上記態様による照合は、特徴量を用いて点群データとテンプレートとを概ね一致させてあるから、初期位置の影響なく、十分な精度を確保することができる。
【００１１】
本発明は、その他、上述の各工程を実現する機能部を設けることによって、対象物を検出する３次元対象物検出装置として構成することもできる。また、上述の各工程を、コンピュータに実行させるためのコンピュータプログラムとして構成してもよい。さらに、かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等、コンピュータが読取り可能な種々の媒体を利用できる。
【図面の簡単な説明】
【００１２】
【図１】３次元対象物検出装置の構成を示す説明図である。
【図２】リサンプリング処理の方法を示す説明図である。
【図３】リサンプリング処理のフローチャートである。
【図４】リサンプリングの処理結果例を示す説明図である。
【図５】テンプレートマッチング処理の方法を示す説明図である。
【図６】テンプレートマッチング処理のフローチャートである。
【図７】ＩＣＰマッチング処理の方法を示す説明図である。
【図８】ＩＣＰマッチング処理のフローチャートである。
【発明を実施するための形態】
【実施例１】
【００１３】
Ａ．装置構成：
図１は、３次元対象物検出装置の構成を示す説明図である。３次元対象物検出装置１０は、コンピュータに、図中の各機能を実現するコンピュータプログラムをインストールすることによって構成されている。本実施例では、スタンドアロンで稼働する装置として構成しているが、ネットワークで接続された複数のコンピュータからなる分散システムとして構成してもよい。
【００１４】
３次元対象物検出装置１０には、３次元点群データベース１６、テンプレートデータベース１７が備えられている。
３次元点群データベース１６は、レーザ計測装置で現実の空間をスキャンすることによって得られる３次元の点群データを格納するデータベースである。
図の下側に、点群データの例を示した。車両にレーザ計測装置を搭載して、図示するようにスキャンしながら走行すると、車両から、道路、および周囲の壁や電柱などの表面までの距離を計測することができる。図中では、スキャンの軌跡が線状に描かれているが、計測は離散的に行われるため、計測した表面の位置は点状に得られている。スキャン時にレーザの射出した方向および車両の位置は既知であるから、これらの点の３次元座標を得ることができる。３時点点群データベース１６に格納されている点群データとは、こうして得られた各点の３次元座標から構成されている。点群データは、対象物を検出可能な密度（解像度と呼ぶこともできる）とすることが好ましく、例えば、レーザスキャンの走査方向に５ｃｍ、スキャン走査線の間隔方向に５０ｃｍ程度とすることができる。
テンプレートデータベース１７は、検出すべき対象物の３次元形状を表した３次元ポリゴンデータに従って、その表面を、点群データと同等の空間密度で点群化したデータ（以下、「テンプレート」という）を格納している。つまり、テンプレートとは、３次元モデルの原点とする相対座標で、対象物の表面上の各点の座標値を表したデータである。テンプレートは、検出すべき対象物に応じて複数種類用意されている。
【００１５】
リサンプリング処理部１３は、３次元点群データベース１６内の点群データに対し、リサンプリング処理を施し、結果をリサンプリングデータ記憶部１１に格納する。リサンプリング処理とは、点群データに含まれるノイズの影響を低減させるための処理である。リサンプリング処理の具体的な内容は後述する。
【００１６】
テンプレートマッチング部１４は、テンプレートデータベース１７に格納されているテンプレートと、リサンプリングデータ記憶部１１内の点群データとを照合する。テンプレートデータベース１７内にある複数のテンプレートのうち、点群データに一致するものを検出することによって、対象物を検出するのである。
テンプレートマッチング部１４による検出結果は、マッチング結果記憶部１２に記憶される。
【００１７】
ＩＣＰマッチング部１５は、テンプレートと、点群データとのＩＣＰマッチング処理を行う。ＩＣＰマッチングとは、点群データおよびテンプレートを構成する点ごとに、位置および姿勢のずれを評価し、両者の一致／不一致を判断する処理である。処理の具体的内容は後述する。本実施例では、ＩＣＰマッチングに先立って行われたテンプレートマッチングの結果に基づいて得られた相対的な位置および姿勢で、テンプレートを点群データに配置して、ＩＣＰマッチングを行う。マッチングの結果は、マッチング結果記憶部１２に格納される。
【００１８】
Ｂ．リサンプリング処理：
図２は、リサンプリング処理の方法を示す説明図である。リサンプリング処理とは、点群データのノイズの影響を抑制するための処理である。
図２（ａ）には近接する格子点への置換による処理を例示した。点群データは、３次元のデータであるが、図の煩雑化を回避するため、ここでは２次元のデータとして示した。図示する直線は、点群データの周囲を所定の間隔で区切った格子を表している。この処理では、例えば、点Ｐａ１を点Ｐｂ１で置換するように、点群データを構成する各点（図中の黒丸）を、近接する格子点で置換する。
図２（ｂ）に示すように、点群データを近似する近似面を求め、点群データをそれぞれ近似面に射影した点のデータに置換する処理も例示することができる。図２（ｂ）の処理では、点群データの点Ｐａ１、Ｐａ２、Ｐａ３等に対し、これらを近似する直線Ｌを求める。そして、点Ｐｃ１、Ｐｃ２、Ｐｃ３等のように、点群データの各点を、直線Ｌに射影した点に置換する。
点Ｐｃ１、Ｐｃ２、Ｐｃ３等のように、原点群データの点Ｐａ１、Ｐａ２、Ｐａ３等を直線Ｌに射影してもよいが、射影の方法としては、図中の点ＰＡを点ＰＣに射影しているように、直線Ｌ上に、原点群データに代えて格子点を射影してもよい。
図２（ｂ）では、２次元での処理を例示したが、実際の点群データは３次元空間に配置されているから、近似する近似面を求めることになる。本実施例では、近似面は平面としたが、曲面としてもよい。近似した平面の基となる点群において平面との距離が大きい点群の比率が多い場合は、地物の面が平面ではない可能性が高いので、近似面として曲面を求め、この曲面に対してリサンプリングすることとしてもよい。曲面の近似面は非線形最適化によって曲面を当てはめていくことにより求めることができる。また上述の場合においては、格子を区切る間隔を小さくして再びリサンプリング処理を行なうこととしてもよい。点群データに基づいて得られる近似面は、対象物の表面を近似する面であると考えられるから、図２（ｂ）の方法によれば、点群データからノイズの影響を除去しつつ、対象物の形状により近づけたデータを得ることができる。
図２（ａ）、図２（ｂ）で示したリサンプリング処理は、いずれか一方を適用してもよいし、図２（ａ）の処理、図２（ｂ）の処理の順に、双方を適用してもよい。
【００１９】
図３は、リサンプリング処理のフローチャートである。リサンプリング処理部１３（図１参照）の処理に相当する。ここでは、３次元空間に所定の間隔で格子を設定し、原点群データの各点の位置を近接する格子点へ置換し、置換された格子点を原点群データから求められる近似面に射影する処理を例示する。この置換は、先に図２（ａ）、図２（ｂ）を順次適用した処理である。
【００２０】
処理を開始すると、コンピュータのＣＰＵは、注目点ｘを設定する（ステップＳ１０）。ここで、注目点ｘとは、上述した通り、原点群データを格子点に置換した点の一つである。
そして、３次元の点群データから、前述の注目点ｘの近傍に存在するＮ点ｐ１、ｐ２、…ｐＮを抽出する（ステップＳ１１）。そして、これらのＮ点ｐ１、ｐ２、…ｐＮを主成分分析して、平面に近似する直交基底ベクトルｖｘ、ｖｙを求める（ステップＳ１２）。主成分分析は、周知の解析方法であるため、詳細な説明は省略する。この直交基底ベクトルｖｘ、ｖｙで定義される平面が、近似面αとなる。
ＣＰＵは、点ｘを近似面αに射影する（ステップＳ１３）。図中に射影の様子を例示した。直交基底ベクトルｖｘ、ｖｙで定義される平面αに対し、点ｘからおろした垂線の足を射影点ｘ’とするのである。直交基底ベクトルｖｘ、ｖｙの原点からｘまでの座標は既知であるから、射影点ｘ’のｖｘ成分ａ、ｖｙ成分ｂも求めることができる。
ＣＰＵは、全ての射影点ｘ’を無条件にリサンプリング点として採用する訳ではない。本実施例では、注目点ｘから射影点ｘ’までの距離Ｄが所定の閾値Ｔｈ以下の場合に、射影点ｘ’をリサンプリング点として追加するのである。近似面αから遠方にある格子点まで全てをリサンプリング点として追加すると、データ点数が増大しすぎるとともに、リサンプリング点の密度が均一とならず、マッチング処理に悪影響を与えるからである。すなわち、距離Ｄが大きな点は近似面に近似できているとは言い難く、この点をそのままリサンプリング点として追加すると元の形状と大きく乖離した点群データが得られてしまう。そこで、距離Ｄが大きな点は近似面に射影せず、原データをそのままリサンプリング点に追加することで、壁や路面などの平面等で近似可能な点群はリサンプリングされ、車両や電柱など平面での近似が困難な点群はそのまま残すことが可能である。すなわち、元の形状を保ったリサンプリング方法が可能となる。
図３の処理方法によれば、格子点を射影することでリサンプリング点を得ることができる。格子点は空間上に均一に並んだ点であるため、この方法によれば、リサンプリング点を概ね均等な密度で得ることができる利点がある。
図３の処理に代えて、原点群データを構成する各点を射影するようにしてもよい。この場合には、ステップＳ１３における条件を省略し、原点群データから射影点までの距離に関係なくリサンプリングデータとして追加することができる。
【００２１】
図４は、リサンプリングの処理結果例を示す説明図である。図中のＯＢＪ１〜ＯＢＪ３は、電柱に相当する部分である。
図４（ａ）は、原点群データを図示したものである。レーザスキャン時の走査線に沿って点群データが配列されており、走査方向には点群データの密度が高く、走査線に交差する方向ではやや疎になっていることが分かる。
図４（ｂ）は、近接する格子点に割り当てる方法（図２（ａ）に示した方法）でリサンプリングした結果例である。この方法では、全点群データの密度が均一になっていることが分かる。
図４（ｃ）は、実施例におけるリサンプリング処理の結果である。つまり、図２（ａ）の方法でリサンプリングした結果に対し、図２（ｂ）の方法によるリサンプリング処理を施したものである。道路面において点群データの密度がほぼ均一になるとともに、領域ＯＢＪ３に示すように電柱の形状も保持されていることが分かる。
このように本実施例のリサンプリング処理によれば、対象物の形状を保持したまま、リサンプリングデータとして、密度がほぼ均一な点群データを得ることができる。
【００２２】
Ｃ．正規化テンプレートマッチング：
図５は、正規化テンプレートマッチング処理の方法を示す説明図である。
図５（ａ）は、マッチングの対象となる対象物の点群データを示した。説明の便宜上、ティーポットを例示しているが、現実には道路際などに存在する電柱その他の地物が対象物となる。点群データは、図３で示した上述のリサンプリング処理を施したものである（以下「リサンプリングデータ」という）。正規化テンプレートマッチング処理では、３次元空間内に格子を設定し、各格子内に存在する点群データのデータ点数（「メッシュ密度」ということもある）を特徴量として用いる。図５（ａ）中に示すように、ある３次元の格子内に点群データが６個存在すれば、「特徴量＝６」となる。メッシュ密度を特定するための格子のサイズは、任意に設定可能であるが、対象物が複数の格子にまたがって存在する範囲で、リサンプリング処理で用いた格子よりも大きくすることが好ましい。
図５（ｂ）は、テンプレート例を示している。テンプレート用に設定されたｘ、ｙ、ｚの３次元空間内で定義される３次元ポリゴンモデルの表面を対象物と同等の密度で点群データ化したものである。本実施例では、テンプレートに対し、さらに対象物と同じ格子によって、格子ごとのメッシュ密度を求め、この結果を正規化テンプレートマッチングに用いる。
図５（ｃ）は、対象物のリサンプリングデータと、テンプレートとのマッチング処理の考え方を示した。図の煩雑化を回避するため、ここでは、双方を２次元のデータとして例示してある。図中のｘ、ｙ平面における領域Ｉの４つの格子に、対象物の点群データが存在するものとする。それぞれの格子に記載されている３，１，２，８という数は、対象物のメッシュ密度を表している。説明の便宜上、数字を示していない格子は、全てメッシュ密度が０であるものとする。
対象物と同じ物体に対応するテンプレートＴＯも、同じく３，１，２，８というメッシュ密度を有している。このテンプレートＴＯを、まず、図示するように、原点付近に配置し、対象物のリサンプリングデータとテンプレートとの積を格子ごとに求めると、この状態では、全ての格子で、対象物とテンプレートの一方が０となっているから、全ての格子で積は０となる。テンプレートの位置を順に移動させながら、同様の処理を実行すると、（ｘ３，ｙ２）の位置（領域Ｔ１）に配置した時には、テンプレートの右上の格子（メッシュ密度＝１）と、対象物の左下の格子（メッシュ密度＝２）とが重なるから、積は２となる。このように、対象物とテンプレートとの位置関係に応じて、積の総和は変化し、テンプレートを領域Ｉに配置して、対象物に重なった時に最大となる。従って、積の総和が最大となる位置を求めることにより、対象物とテンプレートとが最も一致した状態を特定することができる。
正規化テンプレートマッチング処理では、上述の手順によって、対象物とテンプレートとが最も一致した状態を求め、その状態での一致度を評価することによって、対象物がテンプレートに対応する物品か否かを判定するのである。
また、車両にレーザ計測装置を搭載して車両の前方を扇状にレーザでスキャンしながら走行することによって得られた距離データに基づく点群においては、レーザ計測装置から遠い空間に比べて近い空間のほうが密度が高くなり、また、車両の速度が速いときに比べて遅いときのほうが密度が高くなる傾向がある。このような現実の地物とは無関係な点群密度の偏りは、メッシュ密度に影響し、さらに一致度の評価に影響する可能性がある。そこで、先述したように、原点群データの各点の位置を近接する格子点へ置換し、置換された格子点を原点群データから求められる近似面に射影するリサンプリング処理を行なうと、点群の密度の偏りがある程度均一化されるので、正規化テンプレートマッチングへの上述したような計測の事情によって生じる影響が少なくなる。すなわち、密度によって表す特徴量の相関を解析する正規化テンプレートマッチング処理の前処理として図３に示す方法でリサンプリング処理することは特に有効である。
【００２３】
図６は、正規化テンプレートマッチング処理のフローチャートである。図１に示したテンプレートマッチング部１４が実行する処理に相当する。
処理を開始すると、ＣＰＵは、対象物のリサンプリングデータに対し、メッシュ密度を求め（ステップＳ２０）、その結果であるＩ（ｘ、ｙ、ｚ）を処理用のメモリに格納する（ステップＳ２１）。Ｉ（ｘ、ｙ、ｚ）は、３次元の各軸方向にｘ、ｙ、ｚ番目の格子におけるメッシュ密度を表している。
ＣＰＵは、また、テンプレートについてもメッシュ密度を求め（ステップＳ３０）、ｎ番目のテンプレートを選択して（ステップＳ３１）、その結果Ｔｎ（Ｘ，Ｙ，Ｚ）を処理用のメモリに格納する（ステップＳ３２）。Ｔｎ（Ｘ、Ｙ、Ｚ）は、テンプレートを規定する３次元の各軸方向にＸ、Ｙ、Ｚ番目の格子におけるメッシュ密度を表している。
【００２４】
そして、ＣＰＵは３次元的に正規化テンプレートマッチングを行い（ステップＳ４０）、正規化相関テーブルＲＮＣＣ（ｘ，ｙ，ｚ）を求める（ステップＳ４１）。これらの処理では、テンプレートＴｎ（Ｘ，Ｙ，Ｚ）を、図５（ｃ）に示すように、リサンプリングデータの（ｘ，ｙ，ｚ）の位置に配置して、正規化相関値ＲＮＣＣを次式によって求めるのである。正規化相関テーブルＲＮＣＣ（ｘ，ｙ，ｚ）は、それぞれ、テンプレートの配置位置（ｘ，ｙ，ｚ）に応じた正規化相関値ＲＮＣＣを格納した３次元テーブルである。
【数１】
0005753422.tif 000002
【００２５】
正規化相関テーブルを求めると、ＣＰＵは、その中の極大値を検出する（ステップＳ４２）。本実施例では、所定サイズのマスクを利用して極大値を求めるものとした。図中に正規化相関テーブルを二次元であるとして、３×３の二次元マスクを用いた場合の処理例を示した。
処理Ｒ１に示すように、正規化相関テーブルのうち処理対象となるレコードに、マスクの中央の値を対応させ、判定領域を設定する。例えば、左下のレコード２（丸囲みで示した）を処理する際には、マスクを対応させた領域Ｍ１が判定領域となる。処理対象のレコードが、この判定領域内の他のレコードよりも大きい値となっている時は、極大値の候補レコードとして残し、そうでない場合には値０とする。同様に、丸囲み「４」のレコードには判定領域Ｍ２が特定され、この中で４は最大値であるから、極大値候補として残される。この極大値を取る位置（Ｘ，Ｙ，Ｚ）を検出候補位置として保存する。
以上の処理を全レコードについて行うと、処理結果Ｒ２に示すように、２，４の２つのレコードのみが極大値候補として残る。そして、両者のうち大きい値である「４」が最終的にステップＳ４２における極大値となる。
この例では、２次元で３×３のマスクを用いる例を示したが、実際には、正規化相関テーブルは３次元テーブルであるから、３次元のマスクとし、２０×２０×２０ほどのサイズとしている。
【００２６】
ＣＰＵは、検出された極大値を所定のしきい値と比較する（ステップＳ４３）。極大値がしきい値よりも大きい場合には、リサンプリングデータとテンプレートとの一致度が十分に高いと判断し、対象物が検出されたものとして（ステップＳ４４）、この処理を終了する。極大値がしきい値よりも小さい場合には、対象物とは異なるテンプレートを用いており、対象物が検出できなかったものと判断し（ステップＳ４４）、テンプレートを換えて（ステップＳ３１）、以上の処理を繰り返す。テンプレートを換える前に、テンプレートの角度を変えて同様の処理を繰り返すものとしてもよい。テンプレートの姿勢が対象物に対して相対的にずれているために、不一致と判断されている可能性もあるからである。
対象物を検出した結果は、次のＩＣＰマッチング処理に引き継がれる。
【００２７】
Ｄ．ＩＣＰマッチング：
図７は、ＩＣＰマッチング処理の方法を示す説明図である。図７（ａ）の左側に示す状態でテンプレートが用意されているのに対し、対象物のリサンプリングデータが右側に示すように傾いた状態にあるものとする。ＩＣＰマッチング処理では、このテンプレートを順次、回転および平行移動することによって、リサンプリングデータに一致する状態を求め、対象物とテンプレートとの一致／不一致を判断し、対象物を検出する。
図７（ｂ）には、対象物に対するテンプレートの初期位置と検出精度との関係を示した。横軸に、初期位置の角度差をとり、縦軸にはＩＣＰマッチング処理を施した後のテンプレートと対象物との平均距離、即ちズレを示している。この例では、初期位置の角度差が３５度以上になると、平均距離が極端に増大し、検出誤差が低下することが分かる。
本実施例では、ＩＣＰマッチング処理に先立って、正規化テンプレートマッチングを施しており、対象物とテンプレートが概ね一致させてあるため、ＩＣＰマッチング処理の検出精度を十分に確保することができる。
【００２８】
図８は、ＩＣＰマッチング処理のフローチャートである。ＩＣＰマッチング部１５の処理に相当する。
処理を開始すると、ＣＰＵは、初期値設定を行う（ステップＳ５０）。正規化テンプレートマッチングで得られた結果に基づき（例えば、図６で得られた検出候補位置を用いることが可能である）、リサンプリングデータに対してテンプレートを配置するのである。また、テンプレートを移動させるための回転行列Ｒおよび平行移動ベクトルＭを、それぞれ用意する。
ＣＰＵは、テンプレートとリサンプリングデータの各点の対応づけを行い（ステップＳ５１）、誤差量の計算及び最小化を行う（ステップＳ５２）。正規化テンプレートマッチングによってテンプレートとリサンプリングデータは比較的近接して配置されているから、テンプレートの近傍で、リサンプリングデータの対応する点を求めればよい。誤差量の計算および最小化は、次式に示すＭＳＥ値が最小となる回転行列Ｒ、平行移動ベクトルＭを求める処理である。
【００２９】
【数２】
0005753422.tif 000003
Ｔ…テンプレートの点群
Ｉ…リサンプリングデータの点群
Ｎ…点群の総数
Σ…点群全体についての総和
ＭＳＥが最小となる回転行列Ｒ（３×３行列）、平行移動ベクトルＭ（３×１ベクトル）は、回転行列の行列式（デターミナント）が１となる拘束条件を考慮して解を得る方法が知られている。かかる解法の一つとして、クォータニオン（四元数とも言われる）を用いた制約付最小二乗法が知られている。この解法については、公知の技術であるため、詳細な説明は省略する。
【００３０】
ＣＰＵは、こうして得られた回転行列Ｒ、平行移動ベクトルＭを用いて、テンプレートの点群の回転および平行移動を行う（ステップＳ５３）。リサンプリングデータを回転および平行移動してもよい。
そして、終了条件を判定し（ステップＳ５４）、終了したと判断される場合は処理を終了する。終了していない場合は、ステップＳ５１以降の処理を繰り返し実行する。終了条件は、条件１：所定反復回数施してもＭＳＥ値の変化が所定範囲内におさまっている場合、または条件２：所定の最大反復回数に至った場合とした。条件１に該当する場合は、ＭＳＥ値の収束によってテンプレートと対象物が一致する状態が見いだされたことを意味し、条件２に該当する場合は、反復によってもＭＳＥ値が収束せず、テンプレートと対象物が不一致であると判断される場合であることを意味している。
【００３１】
Ｅ．効果および変形例：
以上で説明した本実施例によれば、対象物およびテンプレートを表す点群データを、メッシュ密度によって格子ごとの特徴量で表すことによって、効率的に正規化テンプレートマッチングを施すことが可能となり、形状の制約なく対象物を精度良く検出することが可能である。
また、リサンプリング処理を施すことによって、点群データに含まれるノイズの影響を抑制することができ、さらに精度を向上することができる。
さらに、正規化テンプレートマッチングを施した後にＩＣＰマッチングを行うため、ＩＣＰマッチングによる検出を安定的に高精度で実現することができる。なお、ＩＣＰマッチングが終了したときにテンプレートとリサンプリングデータとの対応する点同士の距離が予め設定した閾値以上のものがあれば、正規化テンプレートマッチングで誤マッチングが発生していると判断することもできる。
【００３２】
本実施例においては、上述した種々の処理を全て備えている必要はなく、適宜、一部を省略しても差し支えない。
本発明は上述の実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてハードウェア的に構成されている部分は、ソフトウェア的に構成することもでき、その逆も可能である。
【産業上の利用可能性】
【００３３】
本発明は、レーザ計測等によって得られた点群データから、対象物を検出するために利用可能である。
【符号の説明】
【００３４】
１０…３次元対象物検出装置
１１…リサンプリングデータ記憶部
１２…マッチング結果記憶部
１３…リサンプリング処理部
１４…正規化テンプレートマッチング部
１５…ＩＣＰマッチング部
１６…３次元点群データベース
１７…テンプレートデータベース
【図２】
0005753422.tif 000004
【図３】
0005753422.tif 000005
【図４】
0005753422.tif 000006
【図５】
0005753422.tif 000007
【図６】
0005753422.tif 000008
【図７】
0005753422.tif 000009
【図８】
0005753422.tif 000010
【図１】
0005753422.tif 000011