(57)【特許請求の範囲】
【請求項１】
異なる第１の測定位置及び第２の測定位置の各々で光を走査しながら照射すると共に物体から反射される反射光を用いて、自装置から物体までの距離に基づく点群情報を取得する取得部と、
前記取得部が取得した前記点群情報から平面領域に属する点群情報を前記第１の測定位置および第２の測定位置ごとに抽出する抽出部と、
前記第１の測定位置から抽出される前記平面領域の間の垂直方向の距離と、前記第２の測定位置から抽出される前記平面領域の間の垂直方向の距離とに基づいて前記第１の測定位置及び前記第２の測定位置の間の前記平面領域の対応関係をマッチングすることにより、前記第１の測定位置及び前記第２の測定位置の間のオフセット量を算出する算出部と、
前記算出部が算出したオフセット量にしたがって補正された前記点群情報を用いて位置合わせを行う位置合わせ部と
を有することを特徴とする情報処理装置。
【請求項２】
前記抽出部は、水平面領域に関する点群情報を前記第１の測定位置および前記第２の測定位置ごとに抽出することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記抽出部は、自装置で前記点群情報が取得される座標系の垂直方向に対応するベクトルと前記平面領域の法線ベクトルとがなす角度が所定の範囲以内である平面領域の法線ベクトルを抽出し、該抽出された平面領域の法線ベクトルの角度の分布のうち前記分布の中央値から所定の範囲内である法線ベクトルを持つ平面領域を前記水平面領域として抽出することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
異なる第１の測定位置及び第２の測定位置の各々で光を走査しながら照射すると共に物体から反射される反射光を用いて、前記第１の測定位置又は前記第２の測定位置から物体までの距離に基づく点群情報を取得する処理と、
取得した前記点群情報から平面領域に属する点群情報を前記第１の測定位置および第２の測定位置ごとに抽出する処理と、
前記第１の測定位置から抽出される前記平面領域の間の垂直方向の距離と、前記第２の測定位置から抽出される前記平面領域の間の垂直方向の距離とに基づいて前記第１の測定位置及び前記第２の測定位置の間の前記平面領域の対応関係をマッチングすることにより、前記第１の測定位置及び前記第２の測定位置の間のオフセット量を算出する処理と、
算出したオフセット量にしたがって補正された前記点群情報を用いて位置合わせを行う処理と
コンピュータに実行させることを特徴とする情報合成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報合成プログラムに関する。
【背景技術】
【０００２】
異なる計測点で取得された複数の３次元（dimension）点群データの位置合わせ、いわゆるレジストレーションに関する技術が知られている。
【０００３】
例えば、既知の形状のターゲットを環境に設置しておき、各々の３次元点群からターゲットを検出することにより位置合わせを行う方法がある。このように位置合わせにターゲットを用いる場合、ターゲットを設置する手間が発生し、どの地点にターゲットを設置するのがよいかといった判断が現場の作業員に委ねられることから使用時の手軽さが損なわれる。
【０００４】
このことから、ターゲットを用いずに、３次元点群データにより表現される環境の形状から位置合わせを自動的に行う方法が求められる。
【０００５】
かかる方法の一例として、計測点が異なる複数の３次元点群から他の点とは区別しやすい特徴点もしくは線や面などの特徴を複数抽出し、ＲＡＮＳＡＣ（RANdom  Sample  Consensus）などのアルゴリズムで正しい対応を求めることで、位置合わせを行う方法がある。ところが、広い空間の計測に適用する場合、大量の点を扱うことになるので、計算コストが増大する。
【０００６】
これに対して、３次元点群をそのまま処理するのではなく、それぞれの３次元点群を一定の高さで水平方向にスライスし、そこに含まれる点群を２次元でマッチングすることで、計算を効率化する方法が提案されている。
【０００７】
この方法では、複数の３次元点群を環境に対して同じ高さで水平方向にスライスすることが必要になる。全ての計測を同じ高さで行えればよいが、環境を死角なく測定しようとすると計測器の脚の長さを変えて測定したい場合や、机や台にセンサを置いて測定したい場合が出てくる。このため、事前に各３次元点群データの高さの基準を合わせる方法が求められる。
【０００８】
３次元点群をスライスする前に各３次元点群データの高さの基準を合わせる方式として、多くの計測点で観測可能な床面を検出し、その床面を基準とする方法がある。例えば、床面を検出する方法として、下記２つの方法が挙げられる。
【０００９】
１つ目として、法線が鉛直上向きの点群により形成される平面を全て抽出して高さが最も低い面を基準面とする方法がある。２つ目として、法線が鉛直上向きの点群により形成される平面を全て抽出して面積が最も大きい面を基準面とする方法がある。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１２−１１２７０５号公報
【特許文献２】特開平１０−９６６０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記の技術では、オクルージョンが発生する環境下で互いの３Ｄ点群の間で合成する基準面の対応がとれないので、３Ｄ点群データの合成精度が低下する場合がある。
【００１２】
１つの側面では、本発明は、オクルージョンのある環境下で３次元点群データの合成精度を高めることができる情報処理装置及び情報合成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
一態様では、情報処理装置は、異なる測定位置で光を走査しながら照射すると共に物体から反射される反射光を用いて、自装置から物体までの距離に基づく点群情報を取得する取得部と、前記取得部が取得した前記点群情報から平面領域に属する点群情報を前記測定位置ごとに抽出する抽出部と、前記異なる測定位置の間で、前記抽出部が抽出した前記平面領域の間の垂直方向の差分が一致するオフセット量を算出する算出部と、前記算出部が算出したオフセット量にしたがって補正された前記点群情報を用いて位置合わせを行う位置合わせ部とを有する。
【発明の効果】
【００１４】
オクルージョンのある環境下で３次元点群データの合成精度を高めることができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、実施例１に係るポータブル型情報処理装置の使用例を示す図である。
【図２Ａ】図２Ａは、オクルージョンの一例を示す図である。
【図２Ｂ】図２Ｂは、オクルージョンの一例を示す図である。
【図３】図３は、実施例１に係るポータブル型情報処理装置の機能的構成を示すブロック図である。
【図４】図４は、３次元点群データの計測方法の一例を示す図である。
【図５】図５は、水平面の高さの集合の一例を示す図である。
【図６】図６は、水平面の高さの集合とオフセット量の関係を示す図である。
【図７】図７は、高さの集合の一例を示す図である。
【図８】図８は、評価値の一例を示す図である。
【図９】図９は、実施例１に係る全体処理の手順を示すフローチャートである。
【図１０】図１０は、実施例１に係るレジストレーション処理の手順を示すフローチャートである。
【図１１】図１１は、水平面の抽出に関する応用例を示す図である。
【図１２】図１２は、実施例１及び実施例２に係る情報合成プログラムを実行するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１６】
以下に添付図面を参照して本願に係る情報処理装置及び情報合成プログラムについて説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１７】
［適用場面の一例］
図１は、実施例１に係るポータブル型情報処理装置１０の使用例の一例を示す図である。図１には、作業が行われる区画の一例として、現場２Ａ〜現場２Ｎが例示されている。なお、以下では、現場２Ａ〜現場２Ｎを総称する場合に「現場２」と記載する場合がある。
【００１８】
図１に示すポータブル型情報処理装置１０は、作業者３がハンドキャリーを行うポータブル型の装置として実装される。例えば、作業者３が現場２Ａ〜現場２Ｎで作業を行う場合、１つの現場２につき１台の情報処理装置１０を設置せずともかまわず、１台の情報処理装置１０を各現場２で持ち回って使用することができる。すなわち、作業者３は、現場２で作業が終了する度に、次の現場２へハンドキャリー等でポータブル型情報処理装置１０を持ち込み、次の現場２の任意の位置に載置することにより、支援データの提供を受けることができる。
【００１９】
このように、ポータブル型情報処理装置１０は、現場２Ａ〜現場２Ｎに持ち込むことにより、簡単な操作で周囲の環境をくまなく計測してデジタイズ化することができる。さらに、環境中の人の計測を行いデジタイズ化した環境情報と紐づけることで、環境中の人の行動を記録したり、人の状態に応じた情報を提供したりするなど、様々な情報支援を可能としている。
【００２０】
例えば、ポータブル型の情報処理装置１０は、詳細は図２を用いて後述するが、２次元平面内をスキャンして環境に対する距離を測定可能なレーザレンジファインダを、モータで回転させることで、全方位の３次元点群データの計測を実現する。
【００２１】
［オクルージョン］
このポータブル型の情報処理装置１０を現場２に持ち運び計測を行うと、１回の計測で広範囲の計測が行えるが、現場２内に置かれたパーティションやテーブルなどが遮蔽物となったり、現場２内の施設の構造上、出入口に面する視点以外からは壁等が遮蔽物となって計測が遮られたりする場合がある。この結果、上記の遮蔽物が妨げとなって未計測の場所が発生する（オクルージョン）。この場合、未計測の場所を計測できるように別の場所にポータブル型の情報処理装置１０を移動して再度計測を行う。これを繰り返すことにより、互いの計測点で発生する死角が補われた複数の３次元点群データを得ることができる。一方で、複数の３次元点群の位置関係は不明であるので、複数の３次元点群の間で位置合わせ、いわゆるレジストレーションを行うことにより、１つの３次元点群データに合成される。
【００２２】
これを具体的に説明すると、ポータブル型情報処理装置１０では、（１）３Ｄ（dimension）計測、（２）フィルタリング、（３）レジストレーション、（４）メッシュモデル化といった手順で、現場２に関する環境のモデルデータが生成される。
【００２３】
すなわち、ポータブル型情報処理装置１０は、現場２において異なる計測点で３Ｄ計測が実施されることにより複数の３次元点群データを計測する（１）。その上で、ポータブル型情報処理装置１０は、３次元点群データごとにフィルタリングを行うことによりノイズとなる点群を除去する（２）。例えば、３次元点群データに含まれる点ごとに当該点から近い順から所定数の各点との間で分散を算出する。このとき、点が物品等を形成する要素である場合、近傍の点も密集するので、ノイズとなる孤立点よりも分散が小さくなり、ノイズとなる孤立点であれば、近傍に点が存在してもまばらとなるので、物品の構成要素である点よりも分散が大きくなる。このことから、一例として、分散が閾値以上である点をノイズとみなして除去する。
【００２４】
その後、ポータブル型情報処理装置１０は、ノイズ除去後に、複数の３次元点群データの位置合わせ処理を行うことにより、１つの３次元点群データとして統合する（３）。その上で、ポータブル型情報処理装置１０は、１つに統合された３次元点群データをメッシュ化処理により、３次元の面データに変換する（４）。これによって、データ容量を削減し、環境のモデルとして利用する。
【００２５】
このように、異なる計測点で計測された３次元点群の位置合わせをするレジストレーションの方法は、これまで様々なものが考案されているが、上記の背景技術の項でも説明した通り、３次元点群の位置合わせにターゲットを用いる場合、ターゲットを設置する手間が発生し、どの地点にターゲットを設置するのがよいかといった判断が現場の作業員に委ねられることから使用時の手軽さが損なわれる。
【００２６】
このため、ターゲットを用いずに、３次元点群データにより表現される環境の形状から位置合わせを自動的に行う方法が求められるが、複数の３次元点群データごとに点、線や面などの特徴を複数抽出し、ＲＡＮＳＡＣ（RANdom  Sample  Consensus）などのアルゴリズムにしたがって対応点を求めたのでは、計算コストが増大する。
【００２７】
このことから、３次元点群をそのまま処理するのではなく、それぞれの３次元点群を一定の高さで水平方向にスライスし、そこに含まれる点群を２次元でマッチングすることにより、計算効率を高めるのが有効であると考えられる。
【００２８】
この場合、複数の３次元点群を環境に対して同じ高さで水平方向にスライスできることが条件となる。このとき、全ての計測を同じ高さで行えればよいが、現場２の環境を死角なく測定しようとするとポータブル型情報処理装置１０の脚の長さを変えて測定したい場合や、机や台にポータブル型情報処理装置１０を置いて測定したい場合が出てくる。このような背景から、事前に各３次元点群データの高さの基準を合わせる方法が求められる。
【００２９】
３次元点群をスライスする前に各３次元点群データの高さの基準を合わせる方式として、多くの計測点で観測可能な床面を検出し、その床面を基準とする方法がある。例えば、法線が鉛直上向きの点群により形成される平面を全て抽出して高さが最も低い面を基準面とする方法１と、法線が鉛直上向きの点群により形成される平面を全て抽出して面積が最も大きい面を基準面とする方法２との２つの方法がある。
【００３０】
しかしながら、上記２つの方法のいずれを採用したとしても、オクルージョンの問題で位置合わせする２つの計測点で得られた点群データにおいて異なる平面を基準として選択してしまう状況が想定されるので、適用範囲に制約が生じる。
【００３１】
［方法１の失敗例］
図２Ａは、オクルージョンの一例を示す図である。図２Ａには、上記の方法１でオクルージョンにより高さの基準合わせが失敗する場面の一例が示されている。図２Ａには、ポータブル型情報処理装置１０が計測点Ｍ１に載置された状態で３次元点群データの計測が実施されると共に、ポータブル型情報処理装置１０が計測点Ｍ２に載置された状態で３次元点群データの計測が実施される場合が示されている。さらに、図２Ａには、計測点Ｍ１で計測された３次元点群データから抽出される平面のうち高さが最も低い面が太線の実線で示される一方で、計測点Ｍ２で計測された３次元点群データから抽出される平面のうち高さが最も低い面が太線の破線で示されている。図２Ａに示す現場２Ａには、床面よりも低い位置に階段の踊り場が存在する。かかる階段の踊り場は、計測点Ｍ２からはレーザが届く一方で、計測点Ｍ１からは階段が死角となってレーザが届かない。このオクルージョンによって、計測点Ｍ１で計測された３次元点群データからは床面が最低面として抽出される一方で、計測点Ｍ２で計測された３次元点群データからは階段の踊り場が最低面として抽出される。この結果、計測点Ｍ１及び計測点Ｍ２の間で基準面にずれが生じるので、高さの位置合わせに失敗する。
【００３２】
［方法２の失敗例］
図２Ｂは、オクルージョンの一例を示す図である。図２Ｂには、上記の方法２でオクルージョンにより高さの基準合わせが失敗する場面の一例が示されている。図２Ｂには、ポータブル型情報処理装置１０が計測点Ｍ３に載置された状態で３次元点群データの計測が実施されると共に、ポータブル型情報処理装置１０が計測点Ｍ４に載置された状態で３次元点群データの計測が実施される場合が示されている。さらに、図２Ｂには、計測点Ｍ３で計測された３次元点群データから抽出される平面のうち面積が最も大きい面が太線の実線で示される一方で、計測点Ｍ４で計測された３次元点群データから抽出される平面のうち面積が最も大きい面が太線の破線で示されている。図２Ｂに示す現場２Ｂは、会議室に大きめの会議卓が置かれており、計測点Ｍ３では、床面にポータブル型情報処理装置１０が載置される一方で、計測点Ｍ４では、会議卓の机上にポータブル型情報処理装置１０が載置される場合が示されている。この場合、計測点Ｍ３からは床面を広く走査できる一方で、会議卓の机上に載置される計測点Ｍ４からは会議卓に隠れて床面が一部しか走査できない。かかるオクルージョンによって、計測点Ｍ３で計測された３次元点群データからは床面が最も面積の大きい面として抽出される一方で、計測点Ｍ４で計測された３次元点群データからは会議卓の机上の面が最も面積の大きい面として抽出される。この結果、計測点Ｍ３及び計測点Ｍ４の間で基準面にずれが生じるので、高さの位置合わせに失敗する。
【００３３】
これら図２Ａ及び図２Ｂに示した通り、床面に限らず環境中の特定の場所を検出して基準にする方法では、計測点によってオクルージョンで基準としようとしている場所が一部または全部隠される状況に弱い。
【００３４】
そこで、本実施例に係るポータブル型情報処理装置１０では、床面などの特定の面に基準に求める高さの基準合わせは実施しない。つまり、本実施例に係るポータブル型情報処理装置１０では、異なる計測点で計測される３次元点群の間で現場２の環境に存在する平面間の相対的な位置関係、すなわち平面間の高度差が一致するオフセット量を算出して高さの基準を合わせ、２次元のレジストレーションを実行することで、オクルージョンのある環境下で３次元点群データの合成精度を高める。
【００３５】
［ポータブル型情報処理装置１０の構成］
図３は、実施例１に係るポータブル型情報処理装置１０の機能的構成を示すブロック図である。図３に示すように、ポータブル型情報処理装置１０は、表示部１１と、記憶部１３と、３次元点群データ取得部１５と、制御部１７とを有する。なお、ポータブル型情報処理装置１０は、図３に示した機能部以外の他の機能部、例えば入力デバイスや通信インタフェースなどを有することとしてもかまわない。
【００３６】
表示部１１は、各種の情報を表示するデバイスである。
【００３７】
一実施形態として、表示部１１には、発光により表示を実現する液晶ディスプレイや有機ＥＬ（electroluminescence）ディスプレイ等を実装することもできるし、投影により表示を実現するプロジェクタ等を実装することもできるし、これらの両方を実装することもできる。かかる表示部１１は、制御部１７による指示にしたがって情報を表示することができるが、一例として、後述の位置合わせ部１７ｃにより位置合わせが行われた３次元点群データ、あるいは当該３次元点群データがメッシュ化処理により変換された３次元のポリゴンデータなどを表示することができる。
【００３８】
記憶部１３は、制御部１７で実行されるＯＳ（Operating  System）を始め、上記のオフセット量の算出および２次元のレジストレーションを実現するアプリケーションプログラムなどの各種プログラムに用いられるデータを記憶する記憶デバイスである。
【００３９】
一実施形態として、記憶部１３は、ポータブル型情報処理装置１０における補助記憶装置として実装することができる。例えば、記憶部１３には、ＨＤＤ（Hard  Disk  Drive）、光ディスクやＳＳＤ（Solid  State  Drive）などを採用できる。なお、記憶部１３は、必ずしも補助記憶装置として実装されずともよく、ポータブル型情報処理装置１０における主記憶装置として実装することもできる。この場合、記憶部１３には、各種の半導体メモリ素子、例えばＲＡＭ（Random  Access  Memory）やフラッシュメモリを採用できる。
【００４０】
例えば、記憶部１３は、後述の位置合わせ部１７ｃにより位置合わせが行われた３次元点群データ、あるいは当該３次元点群データがメッシュ化処理により変換された３次元のポリゴンデータなどを記憶することができる他、表示部１１に表示させる作業の支援データに関するコンテンツなども記憶できる。
【００４１】
３次元点群データ取得部１５は、３次元点群データを取得する処理部である。
【００４２】
一実施形態として、３次元点群データ取得部１５は、ＬＲＦ（Laser  Range  Finder）などにより実装することができる。図４は、３次元点群データの計測方法の一例を示す図である。図４に示すように、３次元点群データ取得部１５は、円筒の中心から円周に向かってＸ軸周りに光を照射し、その反射光を受光する走査を行うことにより、垂直断面Ｖｓの距離を得ることができる。そして、３次元点群データ取得部１５は、図示しないモータを駆動して、ＬＲＦをＺ軸周りに回転させて上記の走査を繰り返すことにより、ポータブル型情報処理装置１０の全周囲の距離を３次元点群データとして取得することができる。当然のことながら、３次元点群データ取得部１５は、図２Ａに示した現場２Ａの計測点Ｍ１及びＭ２、あるいは図２Ｂに示した計測点Ｍ３及びＭ４などのように、１つの現場２で異なる複数の計測点ごとに３次元点群データを取得することができる。なお、３次元点群データ取得部１５が起動される契機は、作業者３から計測ボタン等の指示操作を受け付けた場合であってもよく、ポータブル型情報処理装置１０が載置されたことが検知された場合であってもかまわない。
【００４３】
制御部１７は、各種のプログラムや制御データを格納する内部メモリを有し、これらによって各種の処理を実行するものである。
【００４４】
一実施形態として、制御部１７は、中央処理装置、いわゆるＣＰＵ（Central  Processing  Unit）として実装される。なお、制御部１７は、必ずしも中央処理装置として実装されずともよく、ＭＰＵ（Micro  Processing  Unit）やＭＣＵ（Micro  Controller  Unit）として実装されることとしてもよい。また、制御部１７は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによっても実現できる。
【００４５】
制御部１７は、図示しない主記憶装置として実装されるＤＲＡＭ（Dynamic  Random  Access  Memory）やＳＲＡＭ（Static  Random  Access  Memory）などのＲＡＭのワークエリア上に、上記のオフセット量の算出および２次元のレジストレーションを実現するアプリケーションプログラムとして記憶された情報合成プログラムをプロセスとして展開することにより、下記の処理部を仮想的に実現する。
【００４６】
図３に示すように、制御部１７は、平面抽出部１７ａと、オフセット量算出部１７ｂと、位置合わせ部１７ｃとを有する。
【００４７】
平面抽出部１７ａは、３Ｄ点群データから現場２の平面を抽出する処理部である。
【００４８】
一実施形態として、平面抽出部１７ａは、ＲＡＮＳＡＣなどのアルゴリズムにしたがって、３次元点群データ取得部１５により取得された３次元点群データに含まれる３次元点群が形成する平面を抽出する。例えば、平面抽出部１７ａは、３次元点群データに含まれる３次元点群をサンプルとし、当該サンプルから３つの点をランダムに抽出する。続いて、平面抽出部１７ａは、３次元点群データに含まれる３次元点群のうち、サンプルからランダムに抽出された３点により定まる平面モデルから所定の距離以内にある点群をさらに抽出する。ここで、平面モデルから所定の距離以内にある点群を平面モデル上に存在する点群とみなし、以降の処理を説明することとする。その上で、平面抽出部１７ａは、平面モデル上に存在する点群の数が所定の閾値以上であるか否かを判定する。このとき、平面抽出部１７ａは、平面モデル上の点群が閾値以上である場合、平面モデルを定義するパラメータ、例えば３点の座標または平面の方程式等と、当該平面モデルに含まれる点群とが対応付けられた平面データを内部メモリ上のワークエリアに保存する。一方、平面抽出部１７ａは、平面モデル上に存在する点群の数が閾値未満である場合、当該平面モデルに関する平面データを保存しない。その後、平面抽出部１７ａは、サンプルからの３点のランダムサンプリング及びそれに伴う平面データの保存を所定の試行回数にわたって繰り返し実行する。このような平面抽出方法によって、一定数以上の点群が平面モデルからの法線方向へ向けて一定距離内にある平面モデルを求めることができる。以下では、平面モデルにより規定される平面上で３次元点群が所定の密度以上で存在する部分のことを「平面」と記載する場合がある。
【００４９】
ここで、平面抽出部１７ａは、複数の計測点で計測された３次元点群データごとに当該３次元点群データから水平面を抽出することもできる。この場合、平面抽出部１７ａは、各計測点の３次元点群データの間で水平面の方向を算出する。そして、平面抽出部１７ａは、各計測点の３次元点群データごとに当該３次元点群データに含まれる各点が持つ座標をＺ軸の正方向が水平面の法線方向となるように変換する。その上で、平面抽出部１７ａは、上述の通り、ＲＡＮＳＡＣなどのアルゴリズムにしたがって、各計測点の３次元点群データごとに当該３次元点群データから水平面を抽出する。
【００５０】
さらに、平面抽出部１７ａは、次のような基準にしたがって２つ以上の任意の数の３次元点群データをレジストレーションの実行対象としてグループ化できる。例えば、平面抽出部１７ａは、３次元点群データ取得部１５により３次元点群データが取得される度に、当該３次元点群データをそれまでに取得された３次元点群データとグループ化することにより、レジストレーションの実行対象とすることができる。さらに、平面抽出部１７ａは、過去に取得された３次元点群データの中でも所定の期間、例えば１０分間以内に取得された３次元点群データに絞ってグループ化することもできる。また、平面抽出部１７ａは、グループ化を行う３次元点群データの組合せを図示しない入力デバイスを介して受け付けることもできる。
【００５１】
このように、各計測点の３次元点群データごとに当該３次元点群データから水平面が抽出されると、平面抽出部１７ａは、各水平面の高さ（ｚ座標）、例えば図４に示したＬＲＦにより照射されるレーザ光源の位置を原点とする高さを算出する。
【００５２】
オフセット量算出部１７ｂは、異なる計測点間のオフセット量を算出する処理部である。ここで言う「オフセット量」とは、各計測点間の高さの基準の差を指し、この差が調整されることにより各計測点の高さが揃う。
【００５３】
［オフセット量の問題定義］
ここで、オフセット量算出部１７ｂは、床面など特定の場所の検出に依存しないオフセット量の算出方法を用いる。すなわち、現場２等の環境中に存在する水平面は、床や天井、テーブルなど広がりをもつものが多く、２つの計測点が大きく離れていなければ、多くの場合、共通の水平面を２つ以上検出できる可能性が高いという知見を利用する。また、レーザスキャナの計測精度は高いので、異なる計測点における３次元点群データであっても共通の水平面間の距離はほぼ同じ値として検出できる。
【００５４】
このことから、オフセット量算出部１７ｂは、各計測点で抽出された全水平面の相対的な位置関係（距離）を特徴として面の対応をマッチングすることで、オフセット量を求めることができる。
【００５５】
図５は、水平面の高さの集合の一例を示す図である。図５には、図２Ｂに示したオクルージョンが発生する現場２Ｂが示されている。図５には、計測点Ｍ３で計測された３次元点群データから抽出される水平面の高さの集合と、計測点Ｍ４で計測された３次元点群データから抽出される水平面の高さの集合とが示されている。図５に示すように、オフセット量算出部１７ｂは、計測点Ｍ３及びＭ４の３次元点群データごとに当該３次元点群データから水平面が抽出されると、各水平面の高さ（ｚ座標）、例えば図４に示したＬＲＦにより照射されるレーザ光源の位置を原点とする高さを算出する。この場合、計測点Ｍ３で計測された３次元点群データから抽出される水平面の高さの集合として、Ｈ１｛ｈ１１，ｈ１２，ｈ１３｝が得られると共に、計測点Ｍ４で計測された３次元点群データから抽出される水平面の高さの集合として、Ｈ２｛ｈ２１，ｈ２２，ｈ２３，ｈ２４｝が得られる。なお、上記の例では、集合Ｈ１のうちｈ１２及びｈ１３が負の値をとると共に、集合Ｈ２のうちｈ２２、ｈ２３及びｈ２４が負の値をとることになる。
【００５６】
このようにして得られた高さの値に関する２つの集合データは、データ間で計測が行われた高さが異なるので、同じ水平面に関する高さを表していてもその高さの値は異なる。この高さの基準の差が求めたいオフセット量である。このとき、同一の水平面であってもデータ間で高さの値は同じにならないが、図５に示す例で言えば、床面と会議卓の机上の水平面との距離、会議卓の机上の水平面と天面との距離、床面と天面との距離などといったように同じ水平面の組み合わせで距離を計算すれば３次元点群データ間で多少の計測誤差はあっても略同一の値が得られる可能性が高い。よって、水平面間の距離を特徴として３次元点群データ間で対応する面を探索することが可能である。例えば、計測点Ｍ４で計測された３次元点群データから抽出された水平面間の距離のうち、計測点Ｍ３で計測された３次元点群データから抽出された水平面間の距離、すなわち床面および天面の距離（ｈ１１−ｈ１３）と近い距離（ｈ２１−ｈ２３）を探索する。
【００５７】
これら３次元点群データの間で対応する水平面間の距離が同じであるという事実は、別の見方をすると、正しい高さの基準のオフセット量Δｈを求めて高さの値を変換すると、３次元点群データの間で同じ高さの値が複数得られるということを意味する。図６は、水平面の高さの集合とオフセット量Δｈの関係を示す図である。図６には、集合Ｈ１の各要素が実線の太線で示される一方で、集合Ｈ２の各要素が一点鎖線の太線で示されている。図６の左部に示す集合Ｈ１及び集合Ｈ２に関する正解がオフセット量Δｈである場合、図６の右部に示すように、集合Ｈ２に含まれる各要素にオフセット量Δｈを加算する補正を行うと、集合Ｈ１のｈ１１と集合Ｈ２のｈ２１の高さが一致すると共に集合Ｈ１のｈ１４と集合Ｈ２のｈ２３の高さが一致する。このように、正しい高さの基準のオフセット量Δｈを求めて高さの値を変換すると、３次元点群データの間で同じ高さの値が複数得られる可能性が高い。このことから、オフセット量Δｈを求める問題として解くことが可能である。
【００５８】
［パラメータの定義］
ここで、異なる計測点で計測された第１の３次元点群データから抽出される水平面の高さの集合をＨ１とし、第２の３次元点群データから抽出される水平面の高さの集合をＨ２としたとき、集合Ｈ１及び集合Ｈ２は下記の数列で表すことができる。
【００５９】
Ｈ１＝｛ｈ１１，ｈ１２，…，ｈ１ｉ，…，ｈ１Ｍ｝
Ｈ２＝｛ｈ２１，ｈ２２，…，ｈ２ｊ，…，ｈ２Ｎ｝
【００６０】
このとき、オフセット量をΔｈとして、オフセット量Δｈの補正後の第２の３次元点群データから抽出された水平面の高さの集合Ｈ２´を次のように表す。
【００６１】
Ｈ２´＝｛ｈ２１´，ｈ２２´，…，ｈ２ｊ´，…，ｈ２Ｎ´｝
＝｛ｈ２１＋Δｈ，ｈ２２＋Δｈ，…，ｈ２ｊ＋Δｈ，…，ｈ２Ｎ＋Δｈ｝
【００６２】
［オフセット量Δｈの算出方法１］
一実施形態として、オフセット量算出部１７ｂは、Ｈ１とＨ２´の一致度を表す、下記の式（１）の評価関数Ｅを用いてオフセット量Δｈを求める。すなわち、オフセット量算出部１７ｂは、下記の式（２）に示す最大高度差Ｄにより定まる下記の式（３）の不等号の範囲内でオフセット量Δｈを所定のシフト量ずつ変化させ、下記の式（１）の評価関数Ｅを最小化するオフセット量Δｈを求める。下記の式（１）に示す評価関数Ｅでは、値が小さいほどＨ１とＨ２´の一致度が高いことを意味する。
【００６３】
Ｅ＝ΣｉΣｊｌｏｇ（１＋｜ｈ１ｉ−ｈ２ｊ´｜）・・・（１）
Ｄ＝ｍａｘｉ，ｊ｜ｈ１ｉ−ｈ２ｊ｜・・・（２）
−Ｄ≦Δｈ≦Ｄ・・・（３）
【００６４】
ここで、評価関数内のｌｏｇ（１＋ｄ）は、上に凸な関数であるため、同じ量近づくのであれば遠くよりも近くの方がより値を小さくできる関数である（近い方が傾きが急）。図７は、高さの集合の一例を示す図である。図７では、説明の便宜上、集合Ｈ１の要素としてｈ１１が含まれる一方で、集合Ｈ２´の要素としてｈ２１´及びｈ２２´が含まれる状況に簡略化して説明を行う。さらに、図７には、高さｈ１１と高さｈ２１´とが一致する状態Ｓ１を左側に示す一方で、そこからオフセット量Δｈをシフト量ａにわたって変化させた状態Ｓ２を右側に示す。図７に示す例の場合、状態Ｓ１及び状態Ｓ２の間で高さｈ１１に対するｈ２１´及びｈ２２´の距離の総和は同値となるが、上記の式（１）にしたがって評価値を算出することにより、状態Ｓ１で算出される評価値の方が状態Ｓ２で算出される評価値よりも低く、すなわち一致度を高く算出させることができる。
【００６５】
図８は、評価値の一例を示す図である。図８の左部には、図７に示した状態Ｓ１で算出される評価値が示される一方で、図８の右部には、図７に示した状態Ｓ２で算出される評価値が示されている。図８の左部に示す通り、状態Ｓ１の場合、上記の式（１）にしたがって評価値Ｅはｅ１＋ｅ２により計算される。このうち、ｅ１は、高さｈ１１と高さｈ２１´とが一致するので、ｌｏｇ（１＋｜ｈ１１−ｈ２１´｜）は「０」となる一方で、ｅ２は、ｌｏｇ（１＋｜ｈ１１−ｈ２２´｜）と算出される。一方、図８の右部に示す通り、状態Ｓ２の場合、上記の式（１）にしたがって評価値Ｅはｅ３＋ｅ４により計算される。このうち、ｅ３は、ｌｏｇ（１＋｜ｈ１１−ｈ２１´｜）と算出されると共にｅ４は、ｌｏｇ（１＋｜ｈ１１−ｈ２２´｜）と算出される。このとき、ｅ３は、ｅ１に比べてシフト量ａの分、ｈ２１´がｈ１１から離れることによりその値が大きくなる一方で、ｅ４は、ｅ２に比べてシフト量ａの分、ｈ２２´がｈ１１に近づくことによりその値が小さくなるが、ｌｏｇ（１＋ｄ）が上に凸な関数であるため、増分が減少分より大きくなる。したがって、状態Ｓ１で算出される評価値の方が状態Ｓ２で算出される評価値よりも低く、すなわち一致度が高く算出させることができる。一方で、評価関数の傾きを「１」とする場合、すなわち評価関数をΣｉΣｊ｜ｈ１ｉ−ｈ２ｊ´｜とする場合は増分と減少分が同じになり評価値に差が生じず、一致度の評価関数としては適さない。
【００６６】
［オフセット量Δｈの算出方法２］
他の実施形態として、オフセット量算出部１７ｂは、集合Ｈ１及び集合Ｈ２から１つずつ高さの値を取り出す組合せごとに、当該組合せに関する高さが一致するオフセット量Δｈを計算する。続いて、オフセット量算出部１７ｂは、当該オフセット量ΔｈでＨ１及びＨ´２の高さが所定の範囲、例えば±α内におさまる個数ｃｉｊを算出する。その上で、オフセット量算出部１７ｂは、全ての組合せについて個数ｃｉｊを算出し、最大の個数を与えるオフセット量Δｈを求める。
【００６７】
これらオフセット量Δｈの算出方法１及び算出方法２は、適応的に切り替えて用いることもできる。例えば、オフセット量算出部１７ｂは、各の計測点の間で、互いに抽出される水平面の数の積が所定の閾値以上である場合、上記の算出方法１を採用し、閾値未満である場合、上記の算出方法２を採用することにより、演算量に応じてアルゴリズムを切り替えることができる。
【００６８】
位置合わせ部１７ｃは、異なる計測点間の３次元点群データの位置合わせ、いわゆるレジストレーションを行う処理部である。
【００６９】
一実施形態として、位置合わせ部１７ｃは、オフセット量算出部１７ｂにより算出されたオフセット量Δｈにしたがって各計測点の３次元点群データの間で高さの基準を合わせる。すなわち、位置合わせ部１７ｃは、異なる計測点で計測された３次元点群データのうち集合Ｈ２が割り当てられた方の３次元点群データ、すなわち第２の３次元点群データに含まれる各点にオフセット量Δｈを加算する。その後、位置合わせ部１７ｃは、下記の関連文献１に記載があるように、位置合わせの対象とする３次元点群データそれぞれについて所定の高さの区間に含まれる３次元点群を所定の面、例えば床面に投影することにより２次元の水平方向のスライスデータを抽出し、これらを２次元でレジストレーションを行う。
【００７０】
［関連文献１］“大規模環境の統合点群モデルの自動生成（第三報）
点群ペア位置合せとマッチ判定による複数点群の完全自動位置合せ”
松山雄介、伊達宏昭、金井理、2014年度精密工学会春季大会、セッションID:  E45
【００７１】
この他、位置合わせ部１７ｃは、下記の関連文献２に記載された方法で、同じ高さで各３次元点群をスライスして抽出した２次元点群について水平面内で位置合わせすることとしてもかまわない。
【００７２】
［関連文献２］友納正裕，“ユークリッド変換に不変な特徴量を用いた二次元大域スキャンマッチング方式，日本ロボット学会誌，Vol.  25，No.  3，pp390〜401(2007)”
【００７３】
これを説明すると、２次元点群は、各点の法線を周囲の点の位置から計算することができ、方向つき点群を得ることができる。データ間で方向付き点の対応が１つ決まると２次元の場合、位置合わせのための座標変換パラメータ（ｘ，ｙ，θ）が求まる。そこで、方向付き点の対応候補を他の点の位置関係から評価して所定数に絞り込む。これにより、座標変換の候補が絞り込まれるので、各候補について位置合わせの誤差を最小化する詳細位置合わせ処理を行った上で残差を評価し、最も残差が少なかった位置合わせ結果を採用する。これによって、２次元のレジストレーションを実現できる。
【００７４】
このように１つに統合された３次元点群データにメッシュ化処理を行うことにより、３次元の面データに変換することもできる。これら１つに統合された３次元点群データまたは３次元の面データを用いることにより、作業者３を支援する支援データを作成し、プロジェクションＡＲにより投影することもできる。
【００７５】
［処理の流れ］
次に、本実施例に係るポータブル型情報処理装置１０の処理の流れについて説明する。図９は、実施例１に係る全体処理の手順を示すフローチャートである。この処理は、３次元点群データ取得部１５により異なる計測点で計測された３次元点群データがレジストレーションの実行対象としてグループ化された場合に開始される。
【００７６】
図９に示すように、平面抽出部１７ａは、ポータブル型情報処理装置１０のセンサ座標系の高さ方向、すなわちＺ軸を基準に、各計測点の３次元点群データごとに水平面の法線方向を算出する（ステップＳ１０１）。
【００７７】
そして、平面抽出部１７ａは、各計測点の３次元点群データごとに当該３次元点群データに含まれる各点が持つ座標をＺ軸の正方向が水平面の法線方向となるように変換する（ステップＳ１０２）。その上で、平面抽出部１７ａは、ＲＡＮＳＡＣなどのアルゴリズムにしたがって、各計測点の３次元点群データごとに当該３次元点群データから水平面を抽出する（ステップＳ１０３）。
【００７８】
その後、オフセット量算出部１７ｂは、各計測点の３次元点群データごとに当該３次元点群データから抽出された各水平面の高さ（ｚ座標）、例えば図４に示したＬＲＦにより照射されるレーザ光源の位置を原点とする高さを算出する（ステップＳ１０４）。
【００７９】
そして、オフセット量算出部１７ｂは、各計測点で抽出された全水平面の相対的な位置関係（距離）を特徴として面の対応をマッチングすることにより、オフセット量Δｈを算出する（ステップＳ１０５）。
【００８０】
続いて、位置合わせ部１７ｃは、ステップＳ１０５で得られたオフセット量Δｈにしたがって計測点の３次元点群データの各点の位置を補正する（ステップＳ１０６）。その上で、位置合わせ部１７ｃは、３次元点群データそれぞれについて水平方向に同じ高さでスライスされた２次元点群データを抽出する（ステップＳ１０７）。その後、位置合わせ部１７ｃは、図１０に示すように、２次元点群でレジストレーションを実行し（ステップＳ１０８）、処理を終了する。
【００８１】
［レジストレーション処理］
図１０は、実施例１に係るレジストレーション処理の手順を示すフローチャートである。図１０に示すように、位置合わせ部１７ｃは、ステップＳ１０７で抽出された一方の２次元点群を基準点群とし、他方の２次元点群を補正点群とし、基準点群と補正点群の各点について法線方向を算出する（ステップＳ３０１）。具体的には、位置合わせ部１７ｃは、注目する点の周囲の一定距離範囲に存在する点の中で最も離れた２点を抽出してその２点と直交し、原点、すなわちＬＲＦにより照射されるレーザ光源の位置の方向に向かうベクトルを法線ベクトルとして算出する。
【００８２】
続いて、位置合わせ部１７ｃは、基準点群と補正点群の間の点対応候補を複数抽出する（ステップＳ３０２）。具体的には、位置合わせ部１７ｃは、各点の位置と法線方向を基準に座標系が定義された時の他の点の位置関係を特徴（シグネチャ）として、各点の組合せについてシグネチャの一致度を評価し、所定値以上の一致度のものを点対応候補として抽出する。
【００８３】
その後、位置合わせ部１７ｃは、各点対応ごとに座標変換パラメータ（Δｘ，Δｙ，Δθ）を算出する（ステップＳ３０３）。具体的には、位置合わせ部１７ｃは、２つの異なる計測点で得られた各２次元点群の間で対応する、すなわち同じ場所を計測した点が１つ決まれば、座標変換パラメータを算出することができる。
【００８４】
続いて、位置合わせ部１７ｃは、ステップＳ３０３で得られた複数の座標変換パラメータをクラスタリングして要素数が所定数以上であるクラスタの重心の座標変換パラメータを算出する（ステップＳ３０４及びステップＳ３０５）。
【００８５】
その後、位置合わせ部１７ｃは、各パラメータで変換後の点群の位置関係を初期位置とし、ＩＣＰ（Iterative  Closest  Point）アルゴリズムによりそれぞれ詳細位置合わせを行う（ステップＳ３０６）。最後に、位置合わせ部１７ｃは、各位置合わせの結果の残差を評価して最も一致度が高い位置合わせの結果を最終的な解として選択し（ステップＳ３０７）、処理を終了する。
【００８６】
［効果の一側面］
上述してきたように、本実施例に係るポータブル型情報処理装置１０は、異なる計測点で計測される３次元点群の間で現場２の環境に存在する平面間の相対的な位置関係、すなわち平面間の高度差が一致するオフセット量を算出して高さの基準を合わせ、２次元のレジストレーションを実行する。したがって、本実施例に係るポータブル型情報処理装置１０によれば、オクルージョンのある環境下で３次元点群データの合成精度を高めることができる。
【実施例２】
【００８７】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００８８】
［水平面の抽出］
上記のオフセット量Δｈの補正を行う前段階として、水平面を抽出する処理の応用例について説明する。例えば、ポータブル型情報処理装置１０の設置面が傾いている時や、ポータブル型情報処理装置１０の脚の長さが微妙に異なりセンサが水平面に対して傾いている時、次のような処理により水平面を抽出できる。
【００８９】
すなわち、ポータブル型情報処理装置１０が傾いていたとしても、センサ自体の座標系で上向きのベクトルが水平面の法線ベクトルとの角度差が小さいという知見を利用する。つまり、角度差が大きい、言い換えればポータブル型情報処理装置１０の傾きが大きいとポータブル型情報処理装置１０は転倒してしまうことから、逆説的に、転倒していない場合には、センサ自体の座標系で上向きのベクトルが水平面の法線ベクトルとの角度差が小さいと言える。
【００９０】
例えば、ポータブル型情報処理装置１０は、３次元点群データから平面を抽出する。ここで抽出される平面は、センサ座標系のＺ軸に直交する面に限定されない。その上で、ポータブル型情報処理装置１０は、先に抽出された各平面の法線ベクトルｎｋとセンサ座標系のＺ軸正方向のベクトル、すなわちセンサ座標系の上方向のベクトルｖｓとの角度θｋが所定の範囲内である平面を抽出する。ただし、ポータブル型情報処理装置１０は、θｋ＞９０°のとき、θｋ＝１８０°−θｋとして逆向きのベクトルも抽出対象に含める。なお、ここでは、各平面の法線ベクトルを用いる場合を例示したが、各平面に含まれる各点群の法線ベクトルとしてもよい。
【００９１】
このようにして抽出された角度の分布を参照して、ポータブル型情報処理装置１０は、当該角度の分布の中央値となるベクトルｖｈを算出する。このとき、現場２の中に一定数の水平面が存在する場合、ベクトルｖｈが水平面の法線ベクトルとなる。このことから、ポータブル型情報処理装置１０は、各平面の法線ベクトルｎｋのうち、角度の分布の中央値となるベクトルｖｈとその逆向きのベクトルも含めて所定の角度以内のものに対応する平面を水平面として抽出する。
【００９２】
図１１は、水平面の抽出に関する応用例を示す図である。図１１には、ポータブル型情報処理装置１０が水平面よりも傾いて載置されている場合が示されている。図１１に示す例の場合、３次元点群データから法線ベクトルｎ１〜ｎ５を持つ５つの平面が抽出される。そして、センサ座標系の上方向のベクトルｖｓとの間でなす角度θｋが一定範囲以内である法線ベクトルが抽出されることにより、法線ベクトルｎ５が除去される一方で、法線ベクトルｎ１〜ｎ４が抽出される。その後、角度θｋが大きい順または小さい順にソートされると、法線ベクトルｎ１、ｎ２、ｎ４はほぼ同じ値になるので、中央値は、ｎ１、ｎ２、ｎ４のいずれかになる。この結果、ポータブル型情報処理装置１０が水平面よりも傾いて載置されている場合でも、水平面を抽出することが可能になる。
【００９３】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、３次元点群データ取得部１５、平面抽出部１７ａ、オフセット量算出部１７ｂまたは位置合わせ部１７ｃをポータブル型情報処理装置１０の外部装置としてネットワーク経由で接続するようにしてもよい。また、３次元点群データ取得部１５、平面抽出部１７ａ、オフセット量算出部１７ｂまたは位置合わせ部１７ｃを別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のポータブル型情報処理装置１０の機能を実現するようにしてもよい。
【００９４】
［情報合成プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１２を用いて、上記の実施例と同様の機能を有する情報合成プログラムを実行するコンピュータの一例について説明する。
【００９５】
図１２は、実施例１及び実施例２に係る情報合成プログラムを実行するコンピュータのハードウェア構成例を示す図である。図１２に示すように、コンピュータ１００は、操作部１１０ａと、スピーカ１１０ｂと、カメラ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ１７０と、ＲＡＭ１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【００９６】
ＨＤＤ１７０には、図１２に示すように、上記の実施例１で示した平面抽出部１７ａ、オフセット量算出部１７ｂ及び位置合わせ部１７ｃと同様の機能を発揮する情報合成プログラム１７０ａが記憶される。この情報合成プログラム１７０ａは、図３に示した平面抽出部１７ａ、オフセット量算出部１７ｂ及び位置合わせ部１７ｃの各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例１で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【００９７】
このような環境の下、ＣＰＵ１５０は、ＨＤＤ１７０から情報合成プログラム１７０ａを読み出した上でＲＡＭ１８０へ展開する。この結果、情報合成プログラム１７０ａは、図１２に示すように、情報合成プロセス１８０ａとして機能する。この情報合成プロセス１８０ａは、ＲＡＭ１８０が有する記憶領域のうち情報合成プロセス１８０ａに割り当てられた領域にＨＤＤ１７０から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、情報合成プロセス１８０ａが実行する処理の一例として、図９〜図１０に示す処理などが含まれる。なお、ＣＰＵ１５０では、必ずしも上記の実施例１で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【００９８】
なお、上記の情報合成プログラム１７０ａは、必ずしも最初からＨＤＤ１７０やＲＯＭ１６０に記憶されておらずともかまわない。例えば、コンピュータ１００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に情報合成プログラム１７０ａを記憶させる。そして、コンピュータ１００がこれらの可搬用の物理媒体から情報合成プログラム１７０ａを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１００に接続される他のコンピュータまたはサーバ装置などに情報合成プログラム１７０ａを記憶させておき、コンピュータ１００がこれらから情報合成プログラム１７０ａを取得して実行するようにしてもよい。
【符号の説明】
【００９９】
１０    ポータブル型情報処理装置
１１    表示部
１３    記憶部
１５    ３次元点群データ取得部
１７    制御部
１７ａ  平面抽出部
１７ｂ  オフセット量算出部
１７ｃ  位置合わせ部
【図１】
0006693193.tif 000002
【図２Ａ】
0006693193.tif 000003
【図２Ｂ】
0006693193.tif 000004
【図３】
0006693193.tif 000005
【図４】
0006693193.tif 000006
【図５】
0006693193.tif 000007
【図６】
0006693193.tif 000008
【図７】
0006693193.tif 000009
【図８】
0006693193.tif 000010
【図９】
0006693193.tif 000011
【図１０】
0006693193.tif 000012
【図１１】
0006693193.tif 000013
【図１２】
0006693193.tif 000014