(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
1.第1の実施形態
以下、発明を利用した三次元点群位置データ処理装置の一例について、図面を参照して説明する。なお以下の説明において、三次元点群位置データは、測定対象物の各測定点における三次元座標データを含んでいる。三次元座標を表示する座標系は、直交座標系または極座標系が採用される。
図1には、三次元点群位置データ処理装置100が示されている。三次元点群位置データ処理装置100は、異なる2つの視点から得られた測定対象物の三次元点群位置データの位置合わせを行う機能、および位置合わせが行われた2つの視点から得られた測定対象物の三次元点群位置データを統合して扱うことで、測定対象物の三次元モデルを作成する機能を備えている。三次元点群位置データ処理装置100は、パーソナルコンピュータ上においてソフトウェア的に構成されている。三次元点群位置データ処理装置100をパーソナルコンピュータ上で構成するプログラムは、パーソナルコンピュータ中にインストールされている。なお、このプログラムは、サーバや適当な記録媒体に記録しておき、そこから提供される形態であってもよい。
【0020】
利用されるパーソナルコンピュータは、キーボートやタッチパネルディスプレイ等の入力部、液晶ディスプレイ等の画像表示装置、入力部と表示部を統合したユーザインターフェースであるGUI(グラフィカル・ユーザ・インターフェース)機能部、CPUおよびその他専用の演算デバイス、半導体メモリ、ハードディスク記憶部、光ディスク等の記憶媒体との間で情報のやり取りを行えるディスク記憶装置駆動部およびそのインターフェース部、USBメモリ等の携帯型記憶媒体との間で情報のやり取りを行えるインターフェース部、無線通信や有線通信を行う通信インターフェース部を必要に応じて備えている。なお、パーソナルコンピュータとしては、ノート型、携帯型、卓上型等の形態が挙げられるが、その形態は限定されない。また、汎用のパーソナルコンピュータを利用する以外に、専用のコンピュータを用意することもできる。また、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのPLD(Programmable Logic Device)等を用いて構成した専用のハードウェアによって三次元点群位置データ処理装置100を構成することも可能である。
【0021】
三次元点群位置データ処理装置100には、測定対象物の三次元点群位置データの取得を行うレーザースキャナが接続される。レーザースキャナからは、異なる視点から得られた少なくとも2群の三次元点群位置データが入力される。レーザースキャナは、測定対象物にレーザー光を照射し、その反射光を受光することで、レーザースキャナの設置位置(視点)から測定点までの距離、方位、仰角または俯角の情報を取得し、これらの情報に基づき、測定点の三次元位置座標に係る情報を算出する。また、レーザースキャナは、測定点からの反射光の強度、色、色相、彩度等に関する情報を取得する。レーザースキャナはこれらの情報に基づき、三次元座標値を含む点群位置データを算出し、それを三次元点群位置データ処理装置100に出力する。レーザースキャナの詳細な構成の一例は後述する。
【0022】
異なる2つの視点からの三次元点群位置データの取得は、1台のレーザースキャナを用いて行う方法でもよいし、2台のレーザースキャナを用いて行う方法でもよい。視点の数は、異なる2つが基本であるが、さらに3つ、4つ、それ以上とすることも可能である。以下においては、基本となる異なる2つの視点で得られた三次元点群位置データを処理の対象とする場合の例を説明する。また、三次元点群位置データを取得する方法としては、レーザースキャナを用いる方法以外に、画像処理ソフトウェアを用いて立体写真画像から抽出する方法を採用することもできる。
【0023】
図1に示す三次元点群位置データ処理装置100は、三次元点群位置データ取得部101、三次元モデル作成部102、類似度判定部103、距離相関データ算出部104、対応面決定部105、対応面位置合わせ部106、詳細位置合わせ部107、座標統合部108、統合三次元モデル作成部109、統合画像作成部110を備えている。
【0024】
三次元点群位置データ取得部101は、上述したレーザースキャナからの三次元点群位置データを取得する。ここでは、異なる2つの視点において取得した同一の測定対象物に係る三次元点群位置データが三次元点群位置データ取得部101に入力される。なお、レーザースキャナの出力に基づき、三次元点群位置データ取得部101において三次元点群位置データの算出を行う形態も可能である。
【0025】
三次元点群位置データ処理装置100は、三次元モデル作成部102を備えている。三次元モデル作成部102は、非面領域の算出、非面領域の除去、ラベリング処理、輪郭線等の特徴部分の算出、輪郭線により構成される三次元モデルの作成、およびこれらに関連した演算を行う。三次元モデルというのは、測定対象物の輪郭線を線図として表現した測定対象物の三次元構造を視覚化した画像である。輪郭線というのは、測定対象物の外観を視覚的に把握するために必要な、当該測定対象物の外形を形作っている線(outline)のことである。具体的には、折れ曲がった部分や急激に曲率が小さくなっている部分が輪郭線となる。輪郭線は、外側の輪郭の部分のみが対象となるとは限らず、凸状に飛び出している部分を特徴付ける縁の部分や、凹状に引っ込んでいる部分(例えば、溝構造の部分)を特徴づける縁の部分も対象となる。輪郭線により所謂線図が得られ、対象物の外観が把握し易い画像表示を行うことができる。なお、三次元モデルには、上述した線の情報だけではなく、測定対象物の外観を視覚的に把握する際の特徴部分となる点の情報も含まれる。また、三次元モデルをラベリングされた面によって構成される多面体として表現することも可能である。
【0026】
以下、
図1の三次元モデル作成部102の詳細について説明する。
図2には、三次元モデル作成部102のブロック図が示されている。三次元モデル作成部102は、非面領域算出部201、非面領域除去部202、面ラベリング部203、輪郭線算出部204、二次元エッジ算出部205、エッジ統合部206を備えている。以下、これら各機能部について説明する。非面領域算出部201は、局所領域を取得する局所領域取得部201a、局所領域の法線ベクトルを算出する法線ベクトル算出部201b、局所領域の局所曲率を算出する局所曲率算出部201c、局所領域にフィッティングする局所平面を算出する局所平面算出部201dを備えている。
【0027】
局所領域取得部201aは、三次元点群位置データに基づき、注目点を中心とした一辺が3〜7画素程度の正方領域(格子状の領域)を局所領域として取得する。法線ベクトル算出部201bは、局所領域取得部201aが取得した上記の局所領域における各点の法線ベクトルの算出を行う。この法線ベクトルを算出する処理では、局所領域における三次元点群位置データに着目し、各点の法線ベクトルを算出する。この処理は、全ての三次元点群位置データを対象として行われる。すなわち、三次元点群位置データが無数の局所領域に区分けされ、各局所領域において各点の法線ベクトルの算出が行われる。
【0028】
局所曲率算出部201cは、上述した局所領域内の法線ベクトルのバラツキ(局所曲率)を算出する。ここでは、着目している局所領域において、各法線ベクトルの3軸成分の強度値(NVx, NVy, NVz)の平均(mNVx,mNVy,mNVz)を求める。またこの結果に基づき、さらに標準偏差(StdNVx,StdNVy,StdNVz)を求める。次に、標準偏差の二乗和の平方根を局所曲率(Local Curveture:crv)として算出する(数1)。
【0030】
局所平面算出部201dは、局所領域にフィッティング(近似)する局所平面を求める。この処理では、着目している局所領域の各点の三次元座標から局所平面の方程式を求める。局所平面は、着目している局所領域にフィッティングさせた平面である。ここでは、最小二乗法を用いて、当該局所領域にフィッティングする局所平面の面の方程式を算出する。具体的には、複数の異なる平面方程式を求め、更にそれらを比較し、当該局所領域にフィッティングする局所平面の面の方程式を算出する。仮に、着目している局所領域が平面であれば、局所平面と局所領域とは一致する。以上の処理を、局所領域を順次ずらしながら、全ての三次元点群位置データが対象となるように繰り返し行い、各局所領域における法線ベクトル、局所平面、局所曲率を得る。
【0031】
非面領域除去部202は、上で求めた各局所領域における法線ベクトル、局所平面、局所曲率に基づいて、非面領域の点を除去する処理を行う。すなわち、面(平面および曲面)を抽出するために、予め面でないと判断できる部分(非面領域)を除去する。なお、非面領域とは、平面でも曲面でもない領域であるが、下記の(1)〜(3)の閾値によっては曲率の高い曲面を含む場合がある。
【0032】
非面領域除去部202は、三次元点群位置データ取得部101が取得した三次元点群位置データの中から、算出した非面領域の三次元点群位置データを除去する。非面領域除去の処理は、以下に示す3つの方法のうち、少なくとも一つを用いて行うことができる。ここでは、下記の(1)〜(3)の方法による判定を上述した局所領域の全てに対して行い、1以上の方法において非面領域と判定された局所領域を、非面領域を構成する局所領域として抽出する。そして、抽出された非面領域を構成する点に係る三次元点群位置データを除去する。
【0033】
(1)局所曲率の高い部分:上述した局所曲率を予め設定しておいた閾値と比較し、閾値を超える局所曲率の局所領域を非面領域と判定する。局所曲率は、注目点とその周辺点における法線ベクトルのバラツキを表しているので、面(平面および曲率の小さい曲面)ではその値が小さく、面以外(非面)ではその値は大きくなる。したがって、予め決めた閾値よりも局所曲率が大きければ、当該局所領域を非面領域と判定する。
【0034】
(2)局所平面へのフィッティング精度:局所領域の各点と対応する局所平面との距離を計算し、これらの距離の平均が予め設定した閾値よりも大きい場合、当該局所領域を非面領域と判定する。すなわち、局所領域が平面から乖離した状態であると、その程度が激しい程、当該局所領域の各点と対応する局所平面との距離は大きくなる。このことを利用して当該局所領域の非面の程度が判定される。
【0035】
(3)共平面性のチェック:ここでは、隣接する局所領域において、対応する局所平面同士の向きを比較する。この局所平面の向きの違いが閾値を超えている場合、比較の対象となった局所領域が非面領域に属していると判定する。具体的には、対象となる2つの局所領域のそれぞれにフィッティングする2つの局所平面の法線ベクトルと、その中心点間を結ぶベクトルとの内積が0であれば、両局所平面が同一平面上に存在すると判定される。また、上記内積が大きくなる程、2つの局所平面が同一面上にない程度がより顕著であると判定される。
【0036】
上記の(1)〜(3)の方法による判定において、1以上の方法において非面領域と判定された局所領域を、非面領域を構成する局所領域として抽出する。そして、この抽出された局所領域を構成する点に係る三次元点群位置データを算出対象としている三次元点群位置データから除去する。以上のようにして、非面領域の除去が行われる。なお、除去された三次元点群位置データは、後の処理で利用する可能性があるので、適当な記憶領域に格納するなり、除去されなかった三次元点群位置データと識別できる状態とするなどして、後で利用できる状態にしておく。
【0037】
次に、面ラベリング部203について説明する。面ラベリング部203は、面抽出部の一例である。面ラベリング部203は、非面領域の三次元点群位置データが除去された三次元点群位置データに対して、法線ベクトルの連続性に基づいて面ラベリングを行う。具体的には、特定の注目点と隣接点の法線ベクトルの角度差が予め決めた閾値以下なら、それらの点に同一ラベルを貼る。この作業を繰り返すことで、連続する平面、連続する緩やかな曲面に同一ラベルが貼られ、それらを一つの面として識別可能となる。また、面ラベリングの後、法線ベクトルの角度差や法線ベクトルの3軸成分の標準偏差を用いて、ラベル(面)が平面であるか、または曲率の小さい曲面であるかを判定し、その旨を識別する識別データを各ラベルに関連付ける。
【0038】
続いて、面積の小さいラベル(面)をノイズとして除去する。なお、このノイズ除去は、面ラベリングの処理と同時に行ってもよい。この場合、面ラベリングを行いながら、同一ラベルの点数(ラベルを構成する点の数)を数え、所定以下の点の数であるラベルを取り消す処理を行う。次に、この時点でラベルが無い点に対して、最近傍面(最も近い面)と同一のラベルを付与していく。これにより、既にラベリングされた面の拡張を行う。
【0039】
すなわち、ラベルの付いた面の方程式を求め、当該面とラベルが無い点との距離を求める。ラベルが無い点の周辺に複数のラベル(面)がある場合には、その距離が最も短いラベルを選択する。そして、依然としてラベルが無い点が残存している場合には、非面領域除去、ノイズ除去、およびラベル拡張における各閾値を変更し、再度関連する処理を行う。例えば、非面領域除去において、局所曲率の閾値を上げることで、非面として抽出する点の数が少なくなるようにする。または、ラベル拡張において、ラベルの無い点と最近傍面との距離の閾値を上げることで、ラベルの無い点に対してより多くのラベルを付与するようにする。
【0040】
次に、ラベルが異なる面であっても同一面である場合にラベルを統合する。この場合、連続しない面であっても、位置または向きが等しい面同士に同じラベルを付ける。具体的には、各面の法線ベクトルの位置および向きを比較することで、連続しない同一面を抽出し、いずれかの面のラベルに統一する。以上が面ラベリング部203の機能である。
【0041】
この面ラベリング部203の機能によれば、扱うデータ量を圧縮できるので、三次元点群位置データの処理を高速化できる。また必要なメモリ量を節約できる。また、測定中に紛れ込んだ通行人や通過した車両の三次元点群位置データをノイズとして除去することができる。
【0042】
輪郭線算出部204は、隣接する面の三次元点群位置データに基づき、輪郭線を算出(推定)する。以下、具体的な算出方法について説明する。輪郭線算出部204は、間に非面領域を挟む隣接する面同士の交線を求め、それを輪郭線とする処理を行う。この際、隣接する面の間の非面領域に局所平面をフィッティングさせ、この局所平面を複数繋ぐことで、非面領域を複数の局所平面によって近似する方法を採用することもできる。これは、複数の局所平面により構成される多面体で非面領域を近似したものと捉えることができる。この場合、隣接する面から局所平面をつないでゆき、最後に隣接した局所平面同士の交線を輪郭線として算出する。輪郭線が算出されることで、測定対象物の輪郭の画像が明確となる。
【0043】
次に、二次元エッジ算出部205について説明する。二次元エッジ算出部205は、対象物からの反射光の強度分布に基づいて、ラプラシアン、プリューウィット、ソーベル、キャニーなどの公知のエッジ抽出オペレータを用いて、セグメント化(区分け)された面に対応する二次元画像の領域内からエッジを抽出する。すなわち、二次元エッジは、面内の濃淡の違いにより認識されるので、この濃淡の違いを反射光の強度の情報から抽出し、その抽出条件に閾値を設けることで、濃淡の境目をエッジとして抽出する。次に、抽出されたエッジを構成する点の三次元座標の高さ(z値)と、その近傍の輪郭線(三次元エッジ)を構成する点の三次元座標の高さ(z値)とを比較し、この差が所定の閾値以内の場合には、当該エッジを二次元エッジとして抽出する。すなわち、二次元画像上で抽出されたエッジを構成する点が、セグメント化された面上にあるか否かを判定し、面上にあると判定された場合にそれを二次元エッジとする。
【0044】
二次元エッジの算出後、輪郭線算出部204が算出した輪郭線と二次元エッジ算出部205が算出した二次元エッジとを統合する。この処理はエッジ統合部206において行われる。これにより、三次元点群位置データに基づくエッジの抽出が行われる。このエッジの抽出により、測定対象物を視認する際における測定対象物の外観を構成する線(輪郭線)が抽出され、三次元モデルのデータが得られる。
【0045】
図3には、三次元モデルの一例が示されている。
図3(A)と(B)には、異なる視点からの測定対象物400,400’(この場合は、平屋の建物の例)の三次元モデルが示されている。なお、符号409の部分はガラス面であり、レーザー光が透過し、三次元点群位置データの取得ができなかった(あるいは不正確であった)例が示されている。
【0046】
本実施形態において、三次元点群位置データ処理装置100は、異なる2つの視点において測定された三次元点群位置データが入力される。このため、三次元モデル作成部102は、
図3に例示するような異なる2つの視点から得られる三次元モデルを作成する。この2つの三次元モデルは、
図3に例示されているように、同じ測定対象物をデータ化し、線図として表現したものであるが、この段階で三次元モデル作成部102において得られる三次元モデルは、2つの視点から得られた三次元点群位置データの関連付け(位置合わせ)が行われていないので、互いの対応関係は明確ではない。この意味で、
図3では、同一の測定対象物であるが、三次元モデルとして表された測定対象物に対して、異なる符号400と符号400’を付与している。
【0047】
図1に戻り、類似度判定部103は、以下の処理を行う。前述したように、三次元モデル作成部102では、異なる2つの視点から見た三次元モデルを作成している。この三次元モデルを作成する過程において、
図2を参照して説明したように、測定対象物を構成する面の抽出が行われている。つまり、
図3に示すように、測定対象物は、複数の面の集合(多面体)として把握され、その輪郭の情報によって三次元モデルが作成されている。類似度判定部103では、異なる視点から得られた2つの三次元モデルを構成する面の類似度を判定する。すなわち、第1の三次元モデルの特定の面が、第2の三次元モデルの特定の面とどの程度の類似度があるかを判定する。
【0048】
この類似度の判定は、以下のようにして行われる。ここでは、
図3に例示する三次元モデルを例として説明する。まず、既に
図2の面ラベリング部203において抽出されているそれぞれの三次元モデルにおける面のデータを取得する。そして、該当する三次元モデルを構成する面の中から、その面積の順に上位n個を選択する。nの数は任意であるが、ここでは、説明を簡単にするために、例えばn=4とする。この例の場合、三次元モデル400を構成する面の中の上位4つの面401,402,403,404を抽出する。また、測定対象物の三次元モデル400’ を構成する面の中の上位4つの面405,406,407,408を抽出する。これにより、面積に着目して処理の対象が絞り込まれる。
【0049】
次いで、第1群の面401,402,403,404と第2群の面405,406,407,408とにおける形状の類似度(マッチング)を演算により求める。ここでは、形状の類似度として、対象となる第1群の面の幅をW
1、高さをH
1、第2群の面の幅をW
2、高さをH
2として、下記の数2に基づき、類似度Sを算出する。
【0051】
ここで、S
WおよびS
Hの値が1以上とならないように、W
1/W
2またはW
2/W
1の一方、H
1/H
2またはH
2/H
1の一方を選択する。下記表1および表2に、算出された
図3の例示の場合の類似度の値の一例を示す。
【0054】
表1および表2に例示される形状の類似性を算出することで、大雑把な面同士の類似性の評価が行われる。以上の処理が類似度判定部103において行われる。類似度判定部103における処理により、例えば、面401と類似するのは、面405または406であり、面403と類似するのは、面407または面408であることが判る。この形状を用いて類似度を判定する処理により、後で行われるより詳細な類似度を調べる際における比較する対象のペアの数を減らすことができ、演算量を削減できる。言い換えると、表1の面401と面408というような、より詳細な類似度の演算を行うことが無駄な対象を省くことができ、処理を効率化できる。面の形状の類似性を調べる方法としては、面の形状をモデル化、類型化あるいは単純化したもの同士を比較する方法も可能である。
【0055】
類似度判定部103の処理の後、距離相関データ算出部104において、以下の処理が行われる。距離相関データ算出部104は、注目面と他の面との間の相対位置関係を算出する相対位置関係算出部の一例である。この例において、距離相関データ算出部103は、表1および表2に例示した結果に基づき、上位2組の組み合わせについて、更により詳細な類似度を求める処理を行う。上記表1および表2に示す例でいうと、面401と面405、面401と面406、面403と面407、面403と面408の組み合わせが、類似性の高い候補となる。
【0056】
以下、ここで行われる処理の内容を具体例に即して説明する。
図4は、距離相関データ算出部104において行われる処理の一例を示すフローチャートである。処理が開始されると(ステップS101)、まず注目面が選択される(ステップS102)。注目面は、類似度判定部103において類似度が高いと判定された候補の中から選択される。ここでは、注目面として面401が選択される場合の例を説明する。
【0057】
図5は、距離相関データ算出部104において行われる処理の内容を説明するための概念図である。
図5には、面401が注目面として選択された場合の例が示されている。面401が注目面として選択された場合、面401に基づいて投影用設定面500が測定空間上に設定される(ステップS103)。投影用設定面500は、面401の法線方向から見て、面401と重心を共有し、同じ法線ベクトルを有している。また、投影用設定面500は、面401の端から5mの範囲に大きさを拡張した面とされ、面401の手前側5mの位置に設定されている。なお、投影用設定面500の当該法線方向における位置は、面401の手前側でなくその奥側であってもよい。また、投影用設定面500と面401の法線方向における位置を一致させることも可能である。また、投影用設定面500の法線ベクトルと面401の法線ベクトルとを同じ方向ではなく、特定の角度関係とすることも可能である。投影用設定面500の大きさは、面401周囲のその他の面が投影できるように、上述したように面401より大きく拡張された寸法とする。この寸法は、上記の5mに限定されず、他の値であってもよい。
【0058】
投影用設定面500を設定したら、測定対象物400を構成する複数の面のそれぞれを投影用設定面500に投影する。この際、投影の方向は、投影用設定面500の法線方向において行う。また、投影の対象となる測定対象物400を構成する複数の面は、
図3(A)および
図3(B)に示すものに限定されず、三次元モデル作成部102での処理においてラベリングされたすべての面に対して行われる。なお、演算量を減らすために、面を構成する点群の数に閾値を設け、予め定めておいた規定の数以上の点群で構成される面(つまり、規定の面積以上の面)に対して上記の処理を行うようにしてもよい。そして、格子状に設定した複数の位置における各面と投影用設定面500までの距離を算出する(ステップS104)。この距離は、投影用設定面500の法線の方向(面401の法線の方向)におけるものが算出される。なお、ここでは、格子の間隔(分解能)は0.05mに設定されている。
【0059】
すなわち、設定された格子点の各点において、当該法線方向で重なる面間の距離の算出が行われる。具体的には、投影用設定面の法線方向で考えて、投影用設定面500と面401が重なる部分の各格子点における投影用設定面500と面401との間の距離、投影用設定面500と面404が重なる部分の各格子点における投影用設定面500と面404との間の距離が算出される。また、面402と面403は、投影用設定面500に対して垂直であるので、投影用設定面500に最も近い部分の距離を算出する。投影用設定面500と各面との間の距離を投影用測定面500の各格子点で求めることで、注目面である面401と他の面とが三次元的にどのような位置関係にあるにかが定量的に把握される。
【0060】
各格子点における投影用設定面500と各面の距離とを算出したら、予め定めておいた規定の値を超えるものを除外する(ステップS105)。これは、誤差や無駄な演算を排除するためである。こうして、投影用設定面500の法線方向における投影用設定面500と各面(面401およびその周囲の他の面)との間の距離の値が格子状に分布したマトリクスデータが得られる。このマトリクスデータが、測定対象物400における面401と他の面との間の三次元空間内での位置関係を示す相関データ群となる。この相関データ群は、各格子点における投影用設定面500と各面との間の距離の値がマトリクス状に分布したデータとなる。表3にこの相関データ群の一例を示す。ここで、(X
n, Y
m)で示される座標が格子点の位置であり、Z
mnが投影用設定面500と各面との間の距離である。Z
mnには、投影用設定面500と注目面である面401との間の距離、および投影用設定面500と注目面である面401の周囲における複数のその他の面との間の距離が含まれている。
【0062】
表3の相関データ群は、測定対象物400を構成する面401(注目面)と、測定対象物400を構成するその他の面との三次元的な相対位置関係が、投影用設定面500との間の距離の分布状態として表現されたものである。言い換えると、表3に例示される相関データ群は、注目面と他の面とが奥行き方向でどのような位置関係にあるのかが、投影用設定面との間の奥行き方向における距離の二次元的な分布状態として定量的に評価されたデータ群であるといえる。表3に例示される相関データ群により、注目面と他の面とが三次元的にどのような位置関係にあるのかを定量的に評価することができる。表3に示される格子点毎における投影用設定面500から、測定対象物400を構成する面401およびその周囲のその他の面までの距離の分布状態は、測定対象物400における面401の三次元位置に強く相関しており、測定対象物400における面401の三次元位置を特定可能な固有なデータ群となる。すなわち、
図3(A)および
図5の場合でいうと、面401と面402,403,404との間の奥行き方向における距離を投影用設定面500上の各格子点で記録したマトリクスデータは、立体的な形状を有する測定対象物400における面401の三次元的な位置を特徴付ける面401固有のもので、同じマトリクスデータが、他の面で得られる可能性は極めて低く、実施的に無いに等しい。この傾向は、測定対象物400の形状が複雑になる程、そしてその非対称性が大きい程、顕著になる。
【0063】
ここでは、このマトリクスデータに基づいて、当該注目面(この場合は、面401)に係る距離画像を作成する(ステップS106)。距離画像は、格子点毎に算出された投影用設定面500と、法線方向で重なる測定対象物400を構成する各面との間の距離の違いを濃度等の違いとして表示した画像のことである。すなわち、この段階において、投影用設定面500上の各格子点において、投影用設定面500と、この投影用設定面500に投影された面との間の距離が求められている。この各格子点における距離の値を画素情報として画像化したものが距離画像である。距離画像により、測定対象物における注目面の三次元的な位置を評価することができる。例えば、2つの距離画像の類似性が高ければ、この2つの距離画像における注目面が同一の面である可能性がそれだけ高くなる。なお、距離画像は便宜的なもので、演算において、画像情報と同様に扱うことができるので、画像と呼んでいるだけであり、実際に画像データを生成する必要はない。
【0064】
図6には、距離画像の一例が示されている。
図6には、
図5の状況に対応する距離画像が示されている。
図6の場合、
図5の投影用設定面500に最も近い面が白で示され、次に投影用設定面500に近い面が斜線で示されている。なお、ガラス面409は正確な三次元点群位置データの取得ができなかったので面としてラベリングされていない場合が示されている。また、
図5の面402,403の図示は省略されている。
【0065】
ステップS106にける距離画像の作成を行ったら、ここで注目していた注目面以外の注目面の候補があるか否か、が判定され(ステップS107)、他の注目面の候補があれば、ステップS102以下の処理を繰り返し、他の注目面の候補がなければ、処理を終了する(ステップS108)。こうして、
図1の類似度判定部103の判定により絞り込まれた面の全てについて、
図6に例示した距離画像を作成する。例えば、面401と面405、面401と面406、面403と面407、面403と面408の組み合わせが、類似性の高い候補として選択されている場合、面401を注目面とした距離画像、面403を注目面とした距離画像、面405を注目面とした距離画像、面406を注目面とした距離画像、面407を注目面とした距離画像、面408を注目面とした距離画像を作成する。
【0066】
以上が
図1の距離相関データ算出部104において行われる。次に、対応面決定部105について説明する。対応面決定部105は、距離相関データ算出部104において取得された距離画像に基づき、
図3(A)の第1の視点における面401,402,403,404と、
図3(B)の第2の視点における面405,406,407,408との間における対応する面を探し出す処理を行う。対応面決定部105は、第1の視点における距離画像の一つと、第2の視点における距離画像の一つとを比較し、その差が最小なものを2つの視点において対応する面とする処理を行う。すなわち、
図3(A)の視点から得た複数の距離画像と、
図3(B)の視点から得た複数の距離画像とを個別に比較し、最も類似する距離画像のペアを探し出し、このペアの距離画像における注目面を対応する面とする処理を行う。
【0067】
図7は、対応面決定部105において行われる処理の一例を示すフローチャートである。処理が開始されると(ステップS201)、まず、距離画像同士の重心の位置を一致させた状態で、2つの距離画像の比較を行う(ステップS202)。ここでは、同一の座標点(格子点)における距離の値を比較し、その差の平均であるRMSを算出する。この際、少なくとも一方の距離の値がない場合は、その格子点での差の算出は行わない。RMSは、下記の数3によって算出される。
【0069】
図8は、上記数3のPiおよびQiについて説明する概念図である。
図8には、第1の距離画像上の特定の格子点における距離の値に対応する位置にある点Q
1と第2の距離画像上における特定の格子点における距離の値に対応する位置にある点P
1が示されている。ここで格子点の数がN個ある場合に、RMSは、上記数3によって算出される。ここで、距離画像の類似度が近い程、RMSの値は小さくなり、距離画像が異なる程、RMSの値は大きくなる。なお、距離画像が同じものであれば、理想的にはRMS=0となるが、実際には、誤差の問題もあり、同じ距離画像であってもRMS=0とはならない場合がある。RMSは、考えられる組み合わせの全ての面のペアにおいて算出される。下記表4にRMSの計算結果の一例を示す。表4に示すように、2つの視点から見て対応する面を注目面とした距離画像同士に係るRMSは小さく、対応しない面を注目面とした距離画像同士に係るRMSの値は大きい。
【0071】
そして、算出されたRMSが最小な値の組み合わせが選択される(ステップS203)。この例の場合でいうと、RMSが最小となる面401と面405を注目面とする組み合わせが、対応する面の組み合わせとして選択される。そして、このRMSが最小となる注目面の組み合わせを対応する面として決定し(ステップS204)、対応面決定部105で行われる処理が終了する(ステップS205)。
【0072】
ここで、RMSが小さいということは、比較する2つの距離画像の類似性が高いということである。2つの距離画像の類似性が高いということは、対象となる2つの注目面に係る他の面に対する距離の相関データ群の類似性が高いということであり、これは、これら2つの注目面の他の面に対する位置の相関関係の特殊性が類似しているということである。前述したように、測定対象物における注目面と他の面との間の三次元空間内での位置関係を示す相関データ群は、その面を特定する概念として利用できる。したがって、第1の視点における面から選ばれた上記相関データ群と、第2の視点における面から選ばれた上記相関データ群とを比較し、その差が最小なものを探すことで、面401と面405により示されるような2つの視点で対応する面を探し出すことができる。
【0073】
図1に戻り、対応面の位置合わせ部106は、対応面決定部105が決定した対応する面の位置合わせを行う。
図9は、対応面決定部105で行われる処理の一例を示すフローチャートである。処理が開始されると(ステップS301)、一方の対応面を他方の対応面に合わせるために必要な変換行列の算出が行われる(ステップS302)。例えば、
図3の場合でいうと、面401の重心の位置と面405の重心の位置を合わせ、さらにこの2つの面の法線の向きを合わせる剛体変換を行うための変換行列の算出が行なわれる。例えば、面405を面401に一致させる場合を考える。この場合、面405を面401に一致させるのに必要な、面405の平行移動を表す変換行列をT
C、面405を回転させる変換行列をR
Cとし、更に変換前の第2の視点における三次元点群位置データをP
2、変換後の第2の視点における三次元点群位置データをP
2’とすると、この変換は、下記数4によって示される。
【0075】
この剛体変換を第2の視点において得られた三次元点群位置データの全てに対して行うことで、第1の視点から得られた三次元点群位置データと第2の視点から得られた三次元点群位置データとの概略の位置合わせが行われる(ステップS303)。この位置合わせが行われることで、第1の視点から得られた三次元点群位置データと第2の視点から得られた三次元点群位置データとの対応関係が明らかになり、2つの三次元点群位置データを同じ座標系で取り扱うことができるようになる。
【0076】
原理的には、上記の方法で、異なる2つに視点から得られた三次元点群位置データ同士の位置合わせ、すなわち、第1の視点において得られた三次元点群位置データと第2の視点において得られた三次元点群位置データとの対応関係を求めることができる。しかしながら、ノイズや測定誤差の影響によって、重心の位置の僅かなずれ等が生じる場合がある。
【0077】
そこで、位置合わせの精度を更に高めるために、対応する面として選択されたもの(例えば、
図3の面401および面405)の輪郭(縁の部分)およびエッジ(角の部分)が合うように、数4の変換行列を補正する補正値を算出する。この処理は、大体の位置合わせが完了しているので、膨大な三次元点群位置データを対象とする必要がなく、短時間の処理で行うことができる。面401や405の輪郭やエッジの位置は、面401や面405を特徴付けるパラメータであり、その位置を合わせ込むことで、対応する2つの面の位置合わせの精度を更に高めることができる。この処理は、対応面決定部105で行ってもよいし、対応面の位置合わせ部106で行ってもよい。
【0078】
次に詳細位置合わせ部107について説明する。対応面の位置合わせ部106における位置合わせでは、一つの面を足掛かりとした位置合わせであるので、ある程度の誤差が生じる場合が多い。そこで、対応面の位置合わせ部106での処理の結果に基づき、詳細位置合わせ部107において更に詳細な位置合わせを行い、位置合わせの精度が高められる。
【0079】
以下、詳細位置合わせ部107において行われる処理の詳細について説明する。ここでは、上記の数4による座標変換の後における面の情報を用いて、既に決まっている対応面以外の面、すなわち
図3の場合でいうと、この段階で既に対応付けが行われている面401,面405以外の面に関する対応付けが行われる。この対応付けで、まず対象とする2つの面が同一平面上にあるか否か、が判定される。この判定は、共平面条件を用いて行われる。
【0080】
図10は、共平面条件を説明する概念図である。まず、候補となる2つの平面の法線ベクトルをn
1,n
2とし、この2つの面上の点をp
1,p
2とし、この2つの点を結ぶベクトルをpとする。ここで、2つの面の一方の面は、第1の視点から得た三次元点群位置データに基づく面あり、他方の面は、第2の視点から得た三次元点群位置データに基づく面である。ここで、共平面を決める式である数5を用いて、2つの面が同一平面上にあるか否か、を判定する。
【0082】
ここでは、d=1よりも小さい場合に、比較する2つの面が同一平面上にあると判定される。2つの面が同一平面上にあると判定された場合、更にこの2つの面が重なっているか否か、について判定する。ここでは、2つの面が75%以上重なっている場合に、2つの視点において対応する面であると判定する。この同一平面上にあるか、そして同一平面にあるとしてそれが重なっているか、についての判定を全ての面に対して行う。この際、大体の位置関係は判っているので、上記の判定を行う候補は絞り込むことができ、総当りで演算を行う場合に比較して演算量は飛躍的に減らすことができる。
【0083】
次に対応面と判定された全ての面のペアを取り出す。そして、第1の視点は面を、第2の視点は面に属する点を用い、
図11に示すように対応する面と点との間の距離dを計算する。ここで、第2の視点の面に属する点P
2’(数4によって剛体変換済み)から面の法線Nv
2の方向に伸ばしたベクトルと第1の視点の対応面との交点をIp
1とすると、上記距離dは、下記数6によって表される。
【0085】
図11では、第2の面上の1点からの距離を示しているが、第2の視点に属する対応の取れた面上の全ての点についてこの計算を行い、その総和を誤差とする。そして次に、この誤差を最小化する。ここでは、多次元滑降シンプレックス法を用いてこの誤差の最小化を行う。まず、距離の総和を表す誤差評価関数E(数7)を導入する。
【0087】
ここで、Eが最小となるように、剛体変換パラメータ、R
dおよびT
dを求める。ここでは、計算に用いるシンプレックスの反射、拡大、縮小の係数をそれぞれ1.0、0.5、2.0とする。また、収束判定には、下記の数8を用いる。
【0089】
数7は、反復計算の途中で得られる変換パラメータから、最大と最小の誤差を持つパラメータT
h,R
h,T
l,R
l、それらを用いて誤差を算出する関数fを用いて計算される。この反復計算は、数8の条件を満たすときに収束したと判断し、計算を停止させる。ここでは、e=1.0
−12を収束の条件とする。また、収束しない場合であっても、反復計算の上限を5000回とする。
【0090】
こうして、対応面決定部105で決定された対応面以外の面についても対応関係が求められ、異なる2つの視点において得られた三次元点群位置データの更に詳細な位置合わせが可能となる。以上の処理が、詳細位置合わせ部107において行われる。
【0091】
詳細位置合わせ部107での位置合わせは、上記の手法の他に、公知のICP(Iterative Closest Point)アルゴリズムを用いて行うこともできる。この場合、ある程度の位置合わせが対応面位置合わせ部106で行われているので、ICPアルゴリズムにおける比較点の選択、対応点探索、不要点除去の処理を行わずに済む。そのため、誤差最小化計算のみとなり、少ない演算量で高い演算精度を得ることができる。誤差最小化には、滑降シンプレックスの他に最急降下法やニュートン法などを用いることも可能である。ICPアルゴリズムを用いた場合、面と面同士が比較され、反復計算により対応付けが行われる。
【0092】
図1の座標統合部108は、対応面の位置合わせ部106および詳細位置合わせ部107において得られた剛体変換パラメータに基づき、第1の視点から得られた三次元点群位置データを記述する第1の座標系と、第2の視点から得られた三次元点群位置データを記述する第2の座標系とを統合する。これは、例えば一方の座標系を他方の座標系に変換することで行われる。こうすることで、2群あった三次元点群位置データを一つの座標系で取り扱うことができる状態となる。これにより、例えば、
図3(A)の第1の視点から得られた三次元点群位置データと
図3(B)の第2の視点から得られた三次元点群位置データとを統合して取り扱うことができるようになる。
【0093】
統合三次元モデル作成部109は、異なる2つの視点から得られた三次元点群位置データに基づき、三次元モデルを作成する。この場合に得られる三次元モデルは、一方の視点からはオクルージョンとなる部分が他方の視点からの三次元点群位置データによって補完されたものとなる。統合画像作成部110は、三次元モデル作成部109において作成された三次元モデルの画像データを生成する。この画像データを液晶ディスプレイ等の表示装置に送り、表示を行わせることで、例えば
図3に示すような三次元モデルの画像表示が行われる。
【0094】
例えば、
図3(A)の第1の視点から得られた三次元点群位置データと
図3(B)の第2の視点から得られた三次元点群位置データとを統合して取り扱うことで得られた三次元モデルは、第1の視点から見た状態に回転させると、
図3(A)のように見え、それを回転させ
図3(B)の視点から見た状態とすると、
図3(B)に示す表示となる。この際、第1の視点から見えない面406や第2の視点からは見えない面402がオクルージョンとなる問題が発生しない。
【0095】
こうして、
図3(A)と
図3(B)の少なくとも一方から見える部分については、三次元モデルを回転させてもオクルージョンは発生せず、三次元CADデータと同様に回転させての表示を行わすことができる画像データを得ることができる。
【0096】
(動作の一例)
以下、
図1の三次元点群位置データ処理装置100の動作の一例を説明する。
図12は、三次元点群位置データ処理装置100の動作の一例を示すフローチャートである。処理が開始されると(ステップS401)、まず
図1の三次元点群位置データ取得部101において、異なる2つの視点から得られた三次元点群位置データの取得が行われる(ステップS402)。そして
図1の三次元モデル作成部102における三次元点群位置データに基づく処理が行われ、その過程において、面のラベリングが行われ、測定対象物の面の抽出が行われる。この処理は、2つの視点から得られた2群の三次元点群位置データのそれぞれに対して行われる(ステップS403)。
【0097】
次に、抽出された面のデータに基づき、類似度の判定処理が行われ(ステップS404)、その結果に基づき、類似度が高い面の組が抽出される(ステップS405)。この処理は、
図1の類似度判定部103において行われる。次に、類似度判定部103において、類似していると判定された対応面の候補を対象として、他の面に対する距離の相関データが算出され、距離画像の作成が行われる(ステップS406)。この処理は、
図1の距離相関データ算出部104において、例えば
図4に示す手順に従って行われる。
【0098】
次に、ステップS406において作成した距離画像が比較され(ステップS407)、各座標における距離データの差に基づくRMSが最小となる組み合わせが、異なる2つの視点から得られた面同士の対応する面(対応面)として決定される(ステップS408)。この処理は、
図1の対応面決定部105において、例えば
図7に示す手順に従って行われる。
【0099】
対応面が決定したら、対応面の位置合わせを行い、一方の視点における対応面の座標と他方の視点における対応面の座標との対応関係が求められる(ステップS409)。この処理は、
図1の対応面位置合わせ部106において、例えば
図9に示す手順に従って行われる。
【0100】
ステップS409の後、対応面以外の面同士の位置合わせを行うことで、更に詳細な位置合わせを行う(ステップS410)。この処理は、
図1の詳細合わせ部107において、例えば
図10および
図11に関連して説明した手順に従って行われる。
【0101】
ステップS410の詳細な位置合わせを行った後、異なる2つの視点から得られた三次元点群位置データ同士の対応関係を求め、2つの三次元点群位置データを統合して扱う座標系を取得する。そして、この座標系を用いて統合された三次元モデルを作成し(ステップS411)、処理を終了する(ステップS412)。
【0102】
(優位性)
測定対象物を構成する複数の面に含まれる面401を特徴付ける要素として、面401と同じ法線ベクトルを有する投影用設定面500を計測空間に設定し、面401を含めた他の面を投影用設定面500に投影する。この際、各面と投影用設定面500との距離を投影用設定面500に設定した格子点で算出し、そのマトリクスデータを、面401を特徴付ける距離画像とする。この距離画像を他の面においても作成し、また他の視点から見た面においても作成する。そして、2つの視点における距離画像同士を比較し、その差が最小な距離画像の組が得られた面の組み合わせを2つの視点における対応する面とする。
【0103】
この方法によれば、第1の視点における注目面と第2の視点における注目面における当該注目面を特徴づける相関データ群を比較することで、同じ特徴を有する注目面同士を対応面として決定することができる。表3に例示するような相関データ群は、当該注目面固有のもので、当該注目面を特徴付ける極めて顕著性の高いものであるので、差が最も少ない相関データ群の組み合わせを探し出すことで、極めて高い精度で対応面を探し出すことができる。
【0104】
また、対応面の決定後に、他の面の対応関係を算出することで、より精度の高い位置合わせが可能となる。この際、対応面を求めることで、既に凡その位置合わせが行われているので、演算の対象となる範囲が絞り込まれ、位置の合わないデータ間の関係を探索するような無駄な処理を抑えることができる。このため、精度を維持しつつ、処理時間が抑えられる。
【0105】
また、面積および形状の類似性を利用して対応面の候補を絞り込み、その後に距離画像を用いた対応面の決定を行うことで、演算量を減らし、且つ、精度を維持することができる。
【0106】
(その他)
測定対象物における注目面と他の面との間の三次元空間内での位置関係を示す相関データ群としては、
図5に例示する方法で取得する方法以外に多様なバリエーションを考えることができる。例えば、注目面の重心から対象となる他の面の複数の位置までの距離を算出し、それを
図6の距離画像のようにマトリクスデータとして取得することで、注目面を特徴づけてもよい。また、注目面の縁と他の面の縁との間の距離を計算し、距離画像に対応するデータ群を得る方法もある。これら
の場合も、注目面と他の面との三次元的な位置関係が定量的に把握され、それにより注目面が特徴付けられ、測定対象物において注目面を他の面から識別することが可能となる。
【0107】
ここでは、視点の数が2つの場合を基本的な場合の例として説明したが、更に第3の視点、第4の視点・・・と異なる視点からの情報を統合してゆくことで、オクルージョンを更に減らし、また得られる三次元モデルの精度をより高くできる。また、複数の視点の一部から得られる三次元点群位置データとして、立体写真画像から抽出したものを採用することも可能である。例えば、主な三次元点群位置データがレーザースキャナから得られている場合において、一部の三次元点群位置データを補完したい場合がある。このような場合、レーザースキャナを用いるより、写真撮影による立体写真画像に基づく三次元点群位置データの取得の方が作業効率の点で好ましい場合がある。このような場合は、レーザースキャナから得られた三次元点群位置データと立体写真画像から得られた三次元点群位置データとを対象として、対応面の算出が行われる。
【0108】
2.第2の実施形態
注目面と他の面との間の相対位置関係を利用して対応面を探し出す方法としては、第1の実施形態で説明した測定対象物における注目面と他の面との間の三次元空間内での位置関係を示す相関データ群を利用する方法が最適であるが、他の方法もある。以下、注目面と他の面との間の相対位置関係を利用して対応面を探し出す方法の他の一例を説明する。ここでは、対応面を検出する方法として、測定対象物の三次元形状に係るパラメータを比較し、そのマッチングに基づき、対応面を検出する方法を説明する。
【0109】
図1の三次元点モデル作成部102は、三次元点群位置データに基づき、測定対象物の外観を複数の面の集合として取り扱うことができるようにする処理を行う。ここで各面は、他と区別できるラベルとして扱われる。ラベルは、面の位置および面の向きのデータを持っている。ラベルの位置は、例えばその面の重心の三次元座標によって特定されている。
【0110】
このラベルの分布状態(あるいは組み合わさった形状)を比較し、その差が最小となる位置関係を求めることで、対応する面(対応面)を特定することができる。
図13は、ラベルを用いたマッチングの手法を説明する概念図である。
図13(A)には、測定対象物に対して第1の視点から三次元点群位置データの取得を行い、更に第2の視点から三次元点群位置データの取得を行う様子が概念的に単純化されたモデルとして記載されている。
【0111】
ここで、測定対象物は、ラベル1が付与された第1の面、ラベル2が付与された第2の面、ラベル3(ラベル1’)が付与された第3の面、ラベル4(ラベル2’)が付与された第4の面、ラベル3’が付与された第5の面、ラベル4’が付与された第6の面から構成されている。
【0112】
ここで、第1の視点からは、ラベル3’およびラベル4’がオクルージョンとなり、その部分の三次元点群位置データは取得されていない。
図13(B)には、第1の視点から得られたラベリングされた測定対象物のモデル(ラベルによって構成された測定対象物のモデル)が示されている。なお、本来は、ラベリングされた測定対象物のモデルは、三次元的なモデルであるが、ここでは、2次元的な単純化されたモデルが示されている。
【0113】
また、第2の視点からは、ラベル1およびラベル2がオクルージョンとなり、その部分の三次元点群位置データは取得されていない。
図13(C)には、第2の視点から得られたラベリングされた測定対象物のモデルが示されている。
【0114】
2つの視点から得られた三次元点群位置データ同士の位置合わせ(つまり対応関係の特定)が行われる前の段階では、
図13(B)のラベリングモデルと
図13(C)のラベリングモデルの対応関係は明らかでない。以下、2つのラベリングモデルにおける隣接するラベル間の相関関係を比較し、その類似性から2つのラベリングモデルの位置合わせを行う手法により、
図13(B)のラベリングモデルと
図13(C)のラベリングモデルの対応関係は明らかにする手法を説明する。
【0115】
ラベルは、ラベリングされた面の向きやその重心位置の情報で特徴付けられている。したがって、
図13の場合でいうと、ラベル1とラベル2の相関関係、ラベル2とラベル3の相関関係、ラベル3とラベル4の相関関係は、隣接するラベルの相対位置と向きの関係を特定することで明らかになる。そして、隣接するラベルの相関関係によって
図13(B)に示すラベリングモデルの形状が特定される。また同様に、隣接するラベルの相関関係によって
図13(C)に示すラベリングモデルの形状が特定される。
【0116】
以下、具体的な処理の一例を説明する。
図14には、特定のラベルを基準として、横軸にこの特定のラベルに対する他のラベルの角度をとり、縦軸に当該角度にあるラベルを構成する三次元点群の数を点数としたものをとったヒストグラムの一例が示されている。ここで、ヒストグラムの縦軸は、面の面積に対応するパラメータと把握することができる。この例では、
図13(B)に示す第1の視点から得られた各ラベルのそれぞれを基準としたヒストグラムと
図13(C)に示す第2の視点から得られた各ラベルのそれぞれを基準としたヒストグラムを作成する。このヒストグラムは、隣接するラベルの相関関係を示すものとなる。
【0117】
ここでは、
図14に示すヒストグラムの類似性が高いものを選び、それを対応する面として選択する。例えば、
図14には、第1の視点から得られたラベル3のヒストグラムと第2の視点から得られたラベル1’のヒストグラムとが類似している場合が示されている。したがって、この場合、
図13(B)のラベル3と
図13(C)のラベル1’とが対応する面として選択される。そして、
図14には図示されていないが、同様のヒストグラムを比較する作業を行うことで、
図13(B)のラベル4と
図13(C)のラベル2’とが対応する面として選択される。こうして、
図13(D)に示すような第1の視点から得られたラベルと第2の視点から得られたラベルとの対応関係が求まる。そしてこの対応する面が求まることで、
図5〜
図7を参照して説明した距離画像を用いての対応面の決定の場合と同様に、異なる2つの視点から得られた三次元モデル間で対応する面を求めることができる。
【0118】
以上の処理を
図1の三次元点群位置データ処理装置100で行う場合、距離相関データ算出部104の部分を、上記のヒストグラムを生成する処理部に置き換える。そして、対応面決定部105の部分で類似するヒストグラムを選び出し、対応面を決定する処理が行われるようにする。
【0119】
ラベルに係る情報は、三次元点群位置データに比較してデータ量が圧倒的に少なくできる。このため、
図13に示す原理に基づく演算は、三次元点群位置データをそのまま利用してのマッチングを行う場合に比較して、演算速度を飛躍的に高めることができる。
【0120】
また、上述したヒストグラムを用いる方法以外の方法による位置合わせも可能である。例えば、
図13(B)と
図13(C)に示す2つのラベリングモデルの位置合わせを行う場合を説明する。この場合、ステレオマッチング方等の手法により、形状が合う部分を探し出し、対応する面を決定する。例えば、
図13(B)のラベリングモデルと
図13(C)のラベリングモデルの一方または両方を動かし、更に必要であれば、倍率を可変し、共通する相関関係を有するラベル3,ラベル4の部分とラベル1’,ラベル2’の部分とが重なるようにすることで(
図13(D)参照)、2つのラベリングモデルで対応する面を探し出すことができる。
【0121】
ここで述べた複数のラベルの向きの関係を用いての対応する面を求める手法は、第1の実施形態で説明した距離画像を用いる手法と組み合わせて用いることも有効である。例えば、本実施形態で示した方法で対応面の候補を絞り込み、その上で第1の実施形態の方法で対応面を決定する方法が挙げられる。また、第1の実施形態で示した方法を用いて対応面を決定し、この対応面を含む複数の面に本実施形態の方法を適用する方法も挙げられる。また、測定対象物の形状に応じて、第1の実施形態の方法または本実施形態の方法を適宜選択し、対応面の決定を行う方法も可能である。
【0122】
3.第3の実施形態
以下、三次元点群位置データを処理する機能を有する三次元レーザースキャナについて説明する。この例において、三次元レーザースキャナは、測定対象物に対して測距光(レーザー光)を走査しつつ照射し、レーザー光の飛行時間に基づいて自身の位置から測定対象物上の多数の測定点までの距離を測距する。また、この三次元レーザースキャナは、レーザー光の照射方向(水平角および高低角)を検出し、距離および照射方向に基づいて測定点の三次元座標を算出する。また、この三次元レーザースキャナは、測定対象物を撮影した二次元画像(各測定点におけるRGB強度)を取得し、二次元画像と三次元座標とを結び付けた三次元点群位置データを形成する。さらに、ここで示す三次元レーザースキャナは、
図1に関連して説明した三次元点群位置データ処理装置100の処理を行う機能を有している。
【0123】
(構成)
図15および
図16は、三次元レーザースキャナ1の構成を示す断面図である。三次元レーザースキャナ1は、整準部22、回転機構部23、本体部27、および回転照射部28を備えている。本体部27は、測距部24、撮影部25、制御部26等から構成されている。なお、
図15は、説明の便宜のため、
図16に示す断面方向に対して、回転照射部28のみ側方から見た状態を示している。
【0124】
整準部22は、台盤29を有し、回転機構部23は下部ケーシング30を有する。下部ケーシング30は、ピン31と2個の調整ネジ32とにより3点で台盤29に支持されている。下部ケーシング30は、ピン31の先端を支点にして傾動する。なお、台盤29と下部ケーシング30との間には、台盤29と下部ケーシング30とが互いに離反しないようにするため、引っ張りスプリング33が設けられている。
【0125】
下部ケーシング30の内部には、2個の整準モータ34が設けられている。2個の整準モータ34は、制御部26によって互いに独立して駆動される。整準モータ34の駆動により整準駆動ギア35、整準従動ギア36を介して調整ネジ32が回転し、調整ネジ32の下方への突出量が調整される。また、下部ケーシング30の内部には傾斜センサ37(
図13参照)が設けられている。2個の整準モータ34は、傾斜センサ37の検出信号により駆動され、これにより整準が実行される。
【0126】
回転機構部23は、下部ケーシング30の内部に水平角用駆動モータ38を有する。水平角用駆動モータ38の出力軸には水平回動駆動ギア39が嵌着されている。水平回動駆動ギア39は、水平回動ギア40に噛合されている。水平回動ギア40は、回転軸部41に設けられている。回転軸部41は、回転基盤42の中央部に設けられている。回転基盤42は、下部ケーシング30の上部に、軸受け部材43を介して設けられている。
【0127】
また、回転軸部41には水平角検出器44として、例えばロータリーエンコーダが設けられている。水平角検出器44は、下部ケーシング30に対する回転軸部41の相対的回転角(水平角)を検出する。水平角は制御部26に入力され、制御部26は、その検出結果に基づき水平角用駆動モータ38を制御する。
【0128】
本体部27は、本体部ケーシング45を有する。本体部ケーシング45は、回転基盤42に固着されている。本体部ケーシング45の内部には鏡筒46が設けられている。鏡筒46は、本体部ケーシング45の回転中心と同心の回転中心を有する。鏡筒46の回転中心は、光軸47に合致されている。鏡筒46の内部には、光束分離手段としてのビームスプリッタ48が設けられている。ビームスプリッタ48は、可視光を透過し、かつ、赤外光を反射する機能を有する。光軸47は、ビームスプリッタ48によって光軸49と光軸50とに分離される。
【0129】
測距部24は、鏡筒46の外周部に設けられている。測距部24は、発光部としてのパルスレーザ光源51を有する。パルスレーザ光源51とビームスプリッタ48との間には、穴あきミラー52、レーザー光のビームウエスト径を変更するビームウエスト変更光学系53が配設されている。測距光源部は、パルスレーザ光源51、ビームウエスト変更光学系53、穴あきミラー52で構成されている。穴あきミラー52は、パルスレーザ光を穴部52aからビームスプリッタ48に導き、測定対象物から反射して戻って来た反射レーザー光を測距受光部54に向けて反射する役割を有する。
【0130】
パルスレーザ光源51は、制御部26の制御により所定のタイミングで赤外パルスレーザ光を発する。赤外パルスレーザ光は、ビームスプリッタ48によって高低角用回動ミラー55に向けて反射される。高低角用回動ミラー55は、赤外パルスレーザ光を測定対象物に向けて反射する。高低角用回動ミラー55は、高低角方向に回転することで、鉛直方向に延びる光軸47を高低角方向の投光光軸56に変換する。ビームスプリッタ48と高低角用回動ミラー55との間でかつ鏡筒46の内部には集光レンズ57が配設されている。
【0131】
測定対象物からの反射レーザー光は、高低角回動用ミラー55、集光レンズ57、ビームスプリッタ48、穴あきミラー52を経て測距受光部54に導かれる。また、測距受光部54には、内部参照光路を通って参照光も導かれる。反射レーザー光が測距受光部54で受光されるまでの時間と、レーザー光が内部参照光路を通って測距受光部54で受光されるまでの時間との差に基づき、三次元レーザースキャナ1から測定対象物(測定対象点)までの距離が測定される。測距受光部54は、CMOS光センサ等の光電変化素子により構成され、検出した光のRGB強度を検出する機能も有している。
【0132】
撮影部25は、画像受光部58を備え、カメラとして機能する。画像受光部58は、鏡筒46の底部に設けられている。画像受光部58は、多数の画素が平面状に集合して配列されたもの、例えば、CCD(Charge Coupled Device)で構成されている。画像受光部58の各画素の位置は光軸50によって特定される。例えば、光軸50を原点として、X−Y座標を想定し、このX−Y座標の点として画素が定義される。
【0133】
回転照射部28は、投光ケーシング59の内部に収納されている。投光ケーシング59の周壁の一部は、投光窓となっている。
図16に示すように、鏡筒46のフランジ部60には、一対のミラーホルダー板61が対向して設けられている。ミラーホルダー板61には、回動軸62が掛け渡されている。高低角用回動ミラー55は、回動軸62に固定されている。回動軸62の一端部には高低角ギア63が嵌着されている。回動軸62の他端側には高低角検出器64が設けられている。高低角検出器64は、高低角用回動ミラー55の回動角を検出し、その検出結果を制御部26に出力する。
【0134】
ミラーホルダー板61の一方には、高低角用駆動モータ65が取り付けられている。高低角用駆動モータ65の出力軸には駆動ギア66が嵌着されている。駆動ギア66は、回転軸62に取り付けられた高低角ギア63に噛合されている。高低角用駆動モータ65は、高低角検出器64の検出結果に基づき、制御部26の制御により適宜駆動される。
【0135】
投光ケーシング59の上部には、照星照門67が設けられている。照星照門67は、測定対象物を概略視準するのに用いられる。照星照門67を用いた視準方向は、投光光軸56の延びる方向、および回動軸62の延びる方向に対して直交する方向とされている。また、
図16に示すように、投光ケーシング59の上部には、GPSアンテナ81が配置されている。GPSアンテナにより、GPS情報が取得され、内部で行われる演算にGPS情報を利用することができる構成とされている。
【0136】
図17は、制御部のブロック図である。制御部26には、水平角検出器44、高低角検出器64、傾斜センサ37、GPSアンテナ81からの検出信号が入力される。また、制御部26は、操作部6から操作指示信号が入力される。制御部26は、水平角用駆動モータ38、高低角用駆動モータ65、整準モータ34を駆動制御する共に、作業状況、測定結果等を表示する表示部7を制御する。制御部26には、メモリカード、HDD等の外部記憶装置68が着脱可能とされている。
【0137】
制御部26は、演算部4、記憶部5、水平駆動部69、高低駆動部70、整準駆動部71、距離データ処理部72、画像データ処理部73等から構成されている。記憶部5は、測距や高低角と水平角の検出を行うために必要なシーケンスプログラム、演算プログラム、測定データの処理を実行する測定データ処理プログラム、画像処理を行う画像処理プログラム、三次元点群位置データから面を抽出し、更に輪郭線を算出するプログラム、この算出した輪郭線を表示部7に表示させるための画像表示プログラム、三次元点群位置データの再取得に係る処理を制御するプログラム等の各種のプログラムを格納すると共に、これらの各種のプログラムを統合管理するための統合管理プログラム等を格納する。また、記憶部5は、測定データ、画像データ等の各種のデータを格納する。水平駆動部69は、水平角用駆動モータ38を駆動制御し、高低駆動部70は、高低角用駆動モータ65を駆動制御し、整準駆動部71は、整準モータ34を駆動制御する。距離データ処理部72は、測距部24によって得られた距離データを処理し、画像データ処理部73は、撮影部25により得られた画像データを処理する。
【0138】
また、制御部26は、GPS受信部82を備えている。GPS受信部82は、GPSアンテナが受信したGPS衛星からの信号を処理し、地球上における座標データを算出する。これは、通常のGPS受信装置と同じである。GPSから得られた位置情報は、後述する三次元点群位置データ処理部100’に入力される。
【0139】
図18は、演算部4のブロック図である。演算部4は、三次元座標演算部74、リンク形成部75、グリッド形成部9、三次元点群位置データ処理部100’を備えている。三次元座標演算部74には、距離データ処理部72から測定対象点の距離データが入力され、水平角検出器44および高低角検出器64から測定対象点の方向データ(水平角および高低角)が入力される。三次元座標演算部74は、入力された距離データと方向データとに基づき、三次元レーザースキャナ1の位置を原点(0,0,0)とした各測定点の三次元座標(直交座標)を算出する。
【0140】
リンク形成部75には、画像データ処理部73から画像データおよび三次元座標演算部74が算出した各測定点の三次元座標の座標データが入力される。リンク形成部75は、画像データ(各測定点のRGB強度)と三次元座標を結び付けた三次元点群位置データ2を形成する。つまり、リンク形成部75は、測定対象物のある点に着目した場合、その着目点の二次元画像中における位置と、その着目点の三次元座標とを関連付けしたものを作成する。この関連付けされたデータは、全ての測定点について算出され、それらが三次元点群位置データ2となる。
【0141】
リンク形成部75は、以上の三次元点群位置データ2をグリッド形成部9に出力する。グリッド形成部9は、三次元点群位置データ2の隣接点の点間距離が一定でない場合に、等間隔のグリッド(メッシュ)を形成し、グリッドの交点に最も近い点を登録する。または、グリッド形成部9は、線形補間法やバイキュービック法を用いて、グリッドの交点位置に全点を補正する。なお、三次元点群位置データ2の点間距離が一定である場合には、グリッド形成部9の処理を省略することができる。
【0142】
以下、グリッドの形成手順について説明する。
図19は、点間距離が一定でない三次元点群位置データを示す概念図であり、
図20は、形成したグリッドを示す概念図である。
図19に示すように、各列の平均水平間隔H
1〜Nを求め、さらに列間の平均水平間隔の差分ΔH
i,jを算出し、その平均をグリッドの水平間隔ΔHとする(数9)。垂直方向の間隔は、各列での垂直方向の隣接点との距離ΔV
N,Hを算出し、画像サイズW,Hの画像全体におけるΔV
N,Hの平均を垂直間隔ΔVとする(数10)。そして、
図20に示すように、算出した水平間隔ΔHおよび垂直間隔ΔVのグリッドを形成する。
【0145】
次に、形成したグリッドの交点に最も近い点を登録する。この際、交点から各点までの距離には所定の閾値を設けて、登録を制限する。例えば、閾値は、水平間隔ΔHおよび垂直間隔ΔVの1/2とする。なお、線形補間法やバイキュービック法のように、交点との距離に応じた重みを付けて全点を補正してもよい。ただし、補間を行った場合には、本来計測していない点となる。
【0146】
以上のようにして得られた三次元点群位置データは、三次元点群位置データ処理部100’に出力される。三次元点群位置データ処理部100’は、第1の実施形態で説明した三次元点群位置データ処理装置100と同様の動作を行う専用の集積回路であり、FPGA等により構成されている。また、三次元点群位置データ処理部100’の動作においてユーザに提示される画像の表示が液晶ディスプレイである表示部7に表示される。
【0147】
三次元点群位置データ処理部100’には、GPS受信部82から得られた地球上における座標データが入力される。この構成によれば、三次元点群位置データ処理部100’で取り扱われる座標がGPSから得られた位置データ(例えば、電子地図情報)とリンクされる。これにより、例えば、三次元レーザースキャナ1の設置位置を電子地図上に画面表示することができる。
【0148】
(その他)
制御部26の構成において、グリッド形成部9から三次元点群位置データが外部に出力される形態とすると、
図15、
図16に示す装置は、第1の実施形態で示したパーソナルコンピュータを利用した三次元点群位置データ処理装置100と組み合わせて使用可能な三次元レーザースキャナとなる。また、三次元点群位置データ処理部100’が行う処理を分散して行う構成も可能である。例えば、三次元点群位置データ処理部100’の機能の一部を通信回線で結ばれたサーバで行うような構成も可能である。これは、
図1の三次元点群位置データ処理装置100の場合も同じである。これらの構成は、本発明の光学情報処理システムの一例として把握される。
【0149】
画像を取得する方法として、CCDカメラ等を用いた撮影による方法が一般的であるが、点群データに基づいて測定対象物の画像を再現することもできる。レーザースキャナにより三次元点群位置データを得た場合、各点からの反射光の光強度に係るデータが得られる。したがって、三次元点群位置データを対象物の画像を構成する画素データとして取り扱うことで、三次元点群位置データに基づいて測定対象物の画像を再現することができる。つまり、CCDやCMOSイメージセンサ等の撮影手段の代わりに、レーザースキャナを用いて測定対象物の画像を得ることができる。この場合、
図1の画像受付け部102は、レーザースキャナから出力される三次元点群位置データに基づき、上述した原理により画像データを取得する。
【0150】
(その他)
以下、本明細書中で開示する発明について説明する。第1の発明は、第1の視点において得られた測定対象物の三次元点群位置データおよび第2の視点において得られた前記測定対象物の三次元点群位置データを取得する三次元点群位置データ取得部と、前記2つの三次元点群位置データのそれぞれに基づき、同一面上の点に同一ラベルを付与し、前記第1の視点から見た前記測定対象物を構成する第1の複数の面および前記第2の視点から見た前記測定対象物を構成する第2の複数の面を抽出する面抽出部と、前記第1の複数の面および前記第2の複数の面に対して、注目面と他の面との間の相対位置関係を複数の位置で算出する相対位置関係算出部と、前記第1の複数の面における前記相対位置関係と前記第2の複数の面における前記相対位置関係とを比較し、前記相対位置関係の類似性が最も高いペアを前記第1の複数の面と前記第2の複数の面との間で対応する対応面として決定する対応面決定部とを備えることを特徴とする三次元点群位置データ処理装置が記載されている。
【0151】
上記の構成では、第1の三次元点群位置データから得られた面(第1の視点における面)と第2の点群位置データから得られた面(第2の視点における面)との対応するものを見つける手法として、注目面とその周囲の面との位置関係を用いることを特徴とする。すなわち、対象物を構成する面の一つ(注目面)と、他の複数の面との位置関係は、対象物の形状および対象物における注目面の位置に強く相関しており、注目面を他の面から識別するその面特有のものである可能性が極めて高い。そこで、注目面と他の面の相対位置関係を、この注目面を特徴付け、他の面から識別する要素として用いる。
【0152】
すなわち、注目面とその他の面の相対位置関係は、その注目面に固有なものであり、関係する面が同じであれば、それは視点の位置に係らず同じである。このことを利用し、請求項1に記載の発明では、第1の視点から見た場合の特定の面(注目面)における上記の相対位置関係と、第1の視点とは異なる第2の視点から見た場合の特定の面(注目面)における上記の相対位置関係とを比較し、その差が最小な組み合わせ(言い換えると、最も類似する組み合わせ)を算出する。これにより、特徴が同じ、あるいは特徴が極めて似通った面の組が抽出され、それが対応面とされる。また、請求項1に記載の発明では、上述した相対位置関係を複数の位置で算出することで、当該注目面を特徴付ける度合いをより強くし、対応面の決定する精度を高くしている。
【0153】
この方法は、注目面の特徴を顕在化させたもの同士の比較によって、対応面を決める方法であり、高い精度で対応面を決定することができる。また、面を扱うために必要なデータ量は、元の三次元点群位置データのデータ量に比較して非常に少ないので、元の三次元点群位置データ同士を比較する場合に比較して、極めて少ない演算量で処理を行うことができる。
【0154】
第2の発明は、第1の発明において、前記相対位置関係算出部は、前記第1の複数の面および前記第2の複数の面に対して、注目面と他の面との間の三次元空間内での位置関係を示す相関データ群を算出し、前記対応面決定部は、前記第1の複数の面における前記相関データ群と前記第2の複数の面における前記相関データ群との類似性を評価することを特徴とする。
【0155】
上記第1の発明において、第1の視点から得られる特定の一つの面(以下、注目面)を特徴付ける概念として、第1の視点から見た注目面と他の複数の面との間の三次元空間内における位置関係を利用する。この位置関係は、相関データ群により表される。この相関データ群としては、第1の視点から見た注目面と他の複数の面の三次元座標間の関係を示すマトリクスデータや、注目面を基準とした他の複数の面の三次元座標のデータ群が利用される。
【0156】
ここで、他の面は複数あるので、三次元空間内における注目面と他の面との位置関係は、特定の形状を有する対象物における注目面の位置を特徴付けるものとなる。この傾向は、対象物の形状が複雑である程、顕著となる。したがって、実質的に上記の相関データ群は、当該注目面だけしか持っていない識別情報、つまり特定の注目面を他の面と区別する識別情報となる。この性質を利用することで、第1の視点から見た面と第2の視点から見た面の対応関係を明らかにすることができる。すなわち、「注目面と他の面との間の三次元的な位置関係を特定する相関データ群」に着目し、第1の視点から見た各面における上記相関データ群と第2の視点から見た各面における上記相関データ群同士を比較する。ここで、類似性が一番高い相関データ群を持っている面の組が、第1の視点と第2の視点とにおいて対応する面(つまり同一の面)ということになる。
【0157】
上述したように、特定の視点から見た場合における「注目面と他の面との間の三次元的な位置関係を特定する相関データ群」は、注目面に固有な情報であり、注目面を特徴付け、他の面から識別することを可能とする。そして、注目面と他の面の関係は、視点を変えても変わらない。これは、対象物が回転するだけであるからである。したがって、異なる視点からのものであっても、対応する面の組における「注目面と他の面との間の三次元的な位置関係を特定する相関データ群」は同じもの、あるいは類似性が極めて高いものとなる。このため、2つの視点における面同士における当該相関データ群の類似性を評価し、類似性が最も高い組み合わせを求めることで、2つに視点における対応する面を高い精度で探し出すことができる。なお、その他の面は、測定対象物を構成する面の内の注目面と異なる面であればよい。例えば、このその他の面としては、注目面に隣接する面や注目面から離れた位置にある面が選択される。また、その他の面は、その数が多い方が探索の精度が高まるので、複数であることが望ましい。
【0158】
この手法は、対象物の形状に起因する面を特徴付けるパラメータ同士の比較に基づくものであり、高い精度で対応する面を演算により知ることができる。言い換えると、2つの視点において対応する面を精度よく演算により求めることができる。また、面のデータは、元の三次元点群位置データに比較してデータ量が少ないので、三次元点群位置データをそのまま扱う場合に比較して演算の負担が小さく、処理をより高速に行うことができる。
【0159】
第3の発明は、第2の発明において、前記第1の複数の面における前記相関データ群が、前記第1の複数の面における前記注目面と特定の関係にある投影用設定面と、前記第1の複数の面における前記注目面および前記他の面との間の距離の分布を示すデータ群であり、前記第2の複数の面における前記相関データ群が、前記第2の複数の面における前記注目面と特定の関係にある投影用設定面と、前記第2の複数の面における前記注目面および前記他の面との間の距離の分布を示すデータ群であることを特徴とする。
【0160】
第3の発明によれば、複数の視点のそれぞれにおいて、投影用設定面に注目面とその他の面を投影し、投影用設定面と注目面との間の距離、更に投影用設定面とその他の面との間の距離を算出する。そしてこの算出値によって、「注目面と他の面との間の三次元的な位置関係を特定する相関データ群」が構成される。例えば、投影用設定面が格子状に区切られ、各格子点における法線方向における投影された面までの距離の値を示すマトリクスデータによって、上記の相関データ群が構成される。この手法によれば、注目面と他の面との奥行き方向の相関関係を、少ないデータ量で定量的に捉えることができ、少ない演算量でありながら、高い精度で対応面を探し出すことができる。なお、注目面と投影用設定面との間の特定の関係としては、注目面と投影用設定面の法線ベクトルを一致させ、またこの法線ベクトルの方向から見て両面の重心を一致させ、さらに両面の間の距離を特定の値とした関係を挙げることができる。
【0161】
第4に記載の発明は、第3に記載の発明において、前記対応面決定部は、前記第1の複数の面に含まれる特定の面と前記第2の複数の面に含まれる特定の面とをその重心の位置で重ねた上で、前記相関データ群の前記複数の位置それぞれにおける値の差を算出し、この差が最小となる面の組み合わせを前記対応する2つの面として決定することを特徴とする。
【0162】
第5に記載の発明は、第1〜4のいずれか一項に記載の発明において、前記第1の複数の面の性質と前記第2の複数の面の性質とに基づき、面同士の類似度を判定する類似度判定部を更に備え、前記類似度判定部において類似と判定された面の組を対象として前記相対位置関係算出部における処理が行われることを特徴とする。請求項5に記載の発明によれば、対応面を調べる候補となる面の組み合わせが予め絞り込まれる。このため、処理が効率化される。
【0163】
第6に記載の発明は、第5に記載の発明において、前記類似度の判定が、対象となる面の面積および形状の少なくとも一つに基づいて行われることを特徴とする。請求項6に記載の発明によれば、比較的簡単な演算により対応面の候補が絞り込まれる、このため、処理が効率化される。
【0164】
第7に記載の発明は、第1乃至6のいずれか一項に記載の発明において、前記対応面決定部で決定された前記対応面の重心の位置と法線ベクトルとに基づき、前記第1の視点での座標系と前記第2の視点での座標系との間の位置合わせを行う第1の位置合わせ部を更に備えることを特徴とする。
【0165】
第8に記載の発明は、第7に記載の発明において、前記第1の位置合わせ部は、前記対応面の輪郭または輪郭の一部に基づき、前記第1の視点での座標系と前記第2の視点での座標系との間の位置合わせを行うことを特徴とする。請求項8に記載の発明によれば、面を特徴付ける特徴点となる面の輪郭または輪郭の一部(角の部分も含む)を利用しての位置合わせが行われるので、高い精度の位置合わせを行うことができる。
【0166】
第9に記載の発明は、第7または8に記載の発明において、前記第1の位置合わせ部における処理の結果に基づき、前記第1の複数の面および前記第2の複数の面における前記対応面以外の面同士の位置合わせを行う第2の位置合わせ部を更に備えることを特徴とする。請求項9に記載の発明によれば、対応面とされた以外の面同士の位置合わせが行われるので、異なる2つの視点から得られた三次元点群位置データ同士の位置合わせの精度を更に高めることができる。
【0167】
第10に記載の発明は、第9に記載の発明において、前記第2の位置合わせ部は、面と点の位置合わせ、または面と面の位置合わせを行うことを特徴とする。
【0168】
第11に記載の発明は、第1乃至10のいずれか一項に記載の発明において、前記第2の位置合わせ部によって位置合わせが行われた前記2つの三次元点群位置データに基づき前記測定対象物を特定の視点から見た三次元モデルを生成する三次元モデル生成部を更に備えることを特徴とする。請求項11に記載の発明によれば、オクルージョンを減少させた三次元モデルが得られる。
【0169】
第12に記載の発明は、第1に記載の発明において、前記相対位置関係算出部は、前記第1の複数の面における隣接する面の向きの相関関係と前記第2の複数の面における隣接する面の向きの相関関係を算出し、前記対応面決定部は、前記第1の複数の面における前記隣接する面の向きの相関関係と前記第2の複数の面における前記隣接する面の向きの相関関係との類似性に基づいて前記対応面の決定を行うことを特徴とする。請求項12に記載の発明によれば、注目面とその注目面に隣接する隣接面の向きの関係によって、注目面と他の面との間の相対位置関係が特定される。
【0170】
第13に記載の発明は、第1の視点において得られた測定対象物の三次元点群位置データおよび第2の視点において得られた前記測定対象物の三次元点群位置データを取得する三次元点群位置データ取得手段と、前記2つの三次元点群位置データのそれぞれに基づき、同一面上の点に同一ラベルを付与し、前記第1の視点から見た前記測定対象物を構成する第1の複数の面および前記第2の視点から見た前記測定対象物を構成する第2の複数の面を抽出する面抽出手段と、前記第1の複数の面および前記第2の複数の面に対して、注目面と他の面との間の相対位置関係を複数の位置で算出する相対位置関係算出手段と、前記第1の複数の面における前記相対位置関係と前記第2の複数の面における前記相対位置関係とを比較し、前記相対位置関係の類似性が最も高いペアを前記第1の複数の面と前記第2の複数の面との間で対応する対応面として決定する対応面決定手段とを備えることを特徴とする三次元点群位置データ処理システムである。
【0171】
第13に記載の発明は、請求項1に記載の発明をシステムの発明として捉えたものである。第13に記載の発明では、各手段は、離れて存在していてもよい。この場合、各手段が通信手段を介して接続され、全体として一つのシステムとして動作する形態であればよい。
【0172】
第14に記載の発明は、第1の視点において得られた測定対象物の三次元点群位置データおよび第2の視点において得られた前記測定対象物の三次元点群位置データを取得する三次元点群位置データ取得ステップと、前記2つの三次元点群位置データのそれぞれに基づき、同一面上の点に同一ラベルを付与し、前記第1の視点から見た前記測定対象物を構成する第1の複数の面および前記第2の視点から見た前記測定対象物を構成する第2の複数の面を抽出する面抽出ステップと、前記第1の複数の面および前記第2の複数の面に対して、注目面と他の面との間の相対位置関係を複数の位置で算出する相対位置関係算出ステップと、前記第1の複数の面における前記相対位置関係と前記第2の複数の面における前記相対位置関係とを比較し、前記相対位置関係の類似性が最も高いペアを前記第1の複数の面と前記第2の複数の面との間で対応する対応面として決定する対応面決定ステップとを備えることを特徴とする三次元点群位置データ処理方法である。
【0173】
第15に記載の発明は、コンピュータに読み取らせて実行させるプログラムであって、コンピュータに第1の視点において得られた測定対象物の三次元点群位置データおよび第2の視点において得られた前記測定対象物の三次元点群位置データを取得する三次元点群位置データ取得ステップと、前記2つの三次元点群位置データのそれぞれに基づき、同一面上の点に同一ラベルを付与し、前記第1の視点から見た前記測定対象物を構成する第1の複数の面および前記第2の視点から見た前記測定対象物を構成する第2の複数の面を抽出する面抽出ステップと、前記第1の複数の面および前記第2の複数の面に対して、注目面と他の面との間の相対位置関係を複数の位置で算出する相対位置関係算出ステップと、前記第1の複数の面における前記相対位置関係と前記第2の複数の面における前記相対位置関係とを比較し、前記相対位置関係の類似性が最も高いペアを前記第1の複数の面と前記第2の複数の面との間で対応する対応面として決定する対応面決定ステップとを実行させることを特徴とするプログラムである。