(57)【要約】    【課題】  汎用性が高くかつ精度よく三次元モデルを構築することのできる装置を提供する。    【解決手段】  抽象化三次元モデル取得手段２は、対象物に対応する抽象化三次元モデルＴＰを取得する。抽象化三次元モデルＴＰは、前記対象物の外形に対応する外形を有し、各部分の寸法を変更することのできるようなモデルである。  三次元モデル決定手段４は、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルＴＭとして出力する。【選択図】  図１
2020197979.tif 000002
【特許請求の範囲】
【請求項１】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記対象物の各外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段と、
を備えた三次元モデル生成装置。
【請求項２】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、コンピュータを、
前記対象物の各外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段として機能させる三次元モデル生成プログラム。
【請求項３】
請求項１の装置または請求項２のプログラムにおいて、
前記三次元モデル決定手段は、前記抽象化三次元モデルの面に対応する三次元点群データを特定し、当該三次元点群データの各点と当該面との距離の合計に基づいて、合致性を判断する合致性判断手段を備えることを特徴とする装置またはプログラム。
【請求項４】
請求項１〜３のいずれかの装置またはプログラムにおいて、
前記抽象化三次元モデル取得手段は、記録された複数の抽象化三次元モデルの中から、前記三次元点群データと図形的特徴が類似する抽象化三次元モデルを取得することを特徴とする装置またはプログラム。
【請求項５】
請求項４の装置またはプログラムにおいて、
前記抽象化三次元モデル取得手段は、少なくともi)前記抽象化三次元モデルの平面の数と前記三次元点群データの平面の数、またはii)前記抽象化三次元モデルの二次元投影図と前記三次元点群データの二次元投影図を、図形的特徴として用いることを特徴とする装置またはプログラム。
【請求項６】
請求項１〜５のいずれかの装置またはプログラムにおいて、
前記抽象化三次元モデルは、対象物の種類ごとにグループ化されており、
前記抽象化三次元モデル取得手段は、前記三次元点群データが表す対象物の種類を推定する種類推定手段を有し、推定した種類の抽象化三次元モデルの中から抽象化三次元モデルを取得することを特徴とする装置またはプログラム。
【請求項７】
請求項１〜６のいずれかの装置またはプログラムにおいて、
前記対象物は、地物の構成部位であることを特徴とする装置またはプログラム。
【請求項８】
構造物の三次元点群データに基づいて、当該構造の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、
分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、
生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段と、
を備えた三次元モデル生成装置。
【請求項９】
構造物の三次元点群データに基づいて、当該構造の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、
前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、
分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、
生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段とを備えた三次元モデル生成プログラム。
【請求項１０】
請求項８の装置または請求項９のプログラムにおいて、
前記三次元モデル生成手段は、
前記部位の外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルの寸法を変えながら、前記分割された三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを当該部位の三次元モデルとして決定する三次元モデル決定手段と、
を備えることを特徴とする装置またはプログラム。
【請求項１１】
対象物の三次元点群データに基づいて、複数の対象物の各外形と対応する外形を有する寸法可変の複数の抽象化三次元モデルから、対応する抽象化三次元モデルを選択する抽象化三次元モデル選択装置であって、
少なくとも、i)前記三次元点群データの平面の数と前記抽象化三次元モデルの平面の数とが合致する前記抽象化三次元モデル、または、ii)前記三次元点群データの二次元投影図と前記抽象化三次元モデルの二次元投影図が合致する前記抽象化三次元モデルを選択する手段を備えることを特徴とする三次元モデル選択装置。
【請求項１２】
対象物の三次元点群データに基づいて、複数の対象物の各外形と対応する外形を有する寸法可変の複数の抽象化三次元モデルから、対応する抽象化三次元モデルを選択する抽象化三次元モデル選択装置をコンピュータによって実現するための三次元モデル選択プログラムであって、コンピュータを、
少なくとも、i)前記三次元点群データの平面の数と前記抽象化三次元モデルの平面の数とが合致する前記抽象化三次元モデル、または、ii)前記三次元点群データの二次元投影図と前記抽象化三次元モデルの二次元投影図が合致する前記抽象化三次元モデルを選択する手段として機能させるための三次元モデル選択プログラム。
【請求項１３】
対象物の三次元点群データと対象物の外形を有する三次元モデルとの合致性を判断する合致性判断装置であって、
前記三次元点群データの各点ごとに近傍の点群に基づいて法線を決定する法線決定手段と、
前記三次元モデルの面の法線に対して、所定角度以内にある法線を持つ前記三次元点群データの点を、前記三次元モデルの面に対応する三次元点群データとして特定する特定手段と、
当該対応する三次元点群データの各点と当該面との距離の合計に基づいて、合致度を算出する合致度算出手段と、
を備えた合致性判断装置。
【請求項１４】
対象物の三次元点群データと対象物の外形を有する三次元モデルとの合致性を判断する合致性判断装置をコンピュータによって実現するための合致性判断プログラムであって、コンピュータを、
前記三次元点群データの各点ごとに近傍の点群に基づいて法線を決定する法線決定手段と、
前記三次元モデルの面の法線に対して、所定角度以内にある法線を持つ前記三次元点群データの点を、前記三次元モデルの面に対応する三次元点群データとして特定する特定手段と、
当該対応する三次元点群データの各点と当該面との距離の合計に基づいて、合致度を算出する合致度算出手段として機能させるための合致性判断プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、レーザ測量装置などによって計測するなどで得られた三次元点群データに基づいて、三次元モデルを生成する技術に関するものである。
【背景技術】
【０００２】
無人航空機（ＵＡＶ）や地上移動体（例えば自動車）などにレーザ測量装置を搭載し、地表面の形状や地物を計測することが行われている。また、固定したレーザ測量装置によって、地表面の形状や地物を計測することも行われている。計測の結果、三次元点群データが得られる。
【０００３】
このようにして三次元点群データを得ることで、地物の外形形状などを把握することができる。しかし、三次元点群データであることから寸法や形状の正確性に欠けており、管理データとして用いるには適していない。
【０００４】
そこで、従来、三次元点群データに基づいて、平面や辺によって構成される三次元モデルを生成することが行われている。
【０００５】
たとえば、特許文献１には、対象物がどのような幾何要素（点、線、平面、トーラスなど）で構成されているかを予め与えておき、三次元点群データに基づいて、対象物を構成する幾何要素を推定し、三次元モデルを構築する技術が開示されている。
【０００６】
また、特許文献２には、三次元点群データを得た対象物の三次元ＣＡＤデータに基づいて、三次元モデルを抽出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１６−４５７８１
【特許文献２】特開２０１４−１１５９１５
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１の技術では、各対象物について、当該対象物がどのような幾何要素（点、線、平面、トーラスなど）で構成されているかを予め与えておかなければならず、処理が煩雑であった。また、特許文献１の技術では、対象物の全ての面について三次元点群データがないと三次元モデルが構築できなかった。
【０００９】
また、特許文献２の技術では、三次元モデルを得る対象物を含む三次元ＣＡＤデータがなければ、三次元モデルを生成できず汎用性が低いという問題があった。
【００１０】
この発明は、上記のような問題点を解決して、汎用性が高くかつ精度よく三次元モデルを構築することのできる装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
この発明の独立して適用可能ないくつかの特徴を列挙する。
【００１２】
(1)(2)この発明に係る三次元モデル生成装置は、対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、前記対象物の各外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段とを備えている。
【００１３】
したがって、点、線、面が接続した正確な三次元モデルを形成することができる。
【００１４】
(3)この発明に係る装置は、三次元モデル決定手段が、前記抽象化三次元モデルの面に対応する三次元点群データを特定し、当該三次元点群データの各点と当該面との距離の合計に基づいて、合致性を判断する合致性判断手段を備えることを特徴としている。
【００１５】
したがって、三次元点群データに合致する三次元モデルを適切に選択することができる。
【００１６】
(4)この発明に係る装置は、抽象化三次元モデル取得手段が、記録された複数の抽象化三次元モデルの中から、前記三次元点群データと図形的特徴が類似する抽象化三次元モデルを取得することを特徴としている。
【００１７】
したがって、検討すべき三次元モデルを絞り込むことができる。
【００１８】
(5)この発明に係る装置は、抽象化三次元モデル取得手段が、少なくともi)前記抽象化三次元モデルの平面の数と前記三次元点群データの平面の数、またはii)前記抽象化三次元モデルの二次元投影図と前記三次元点群データの二次元投影図を、図形的特徴として用いることを特徴としている。
【００１９】
したがって、より適切な抽象化三次元モデルを得ることができる。
【００２０】
(6)この発明に係る装置は、抽象化三次元モデルが、対象物の種類ごとにグループ化されており、前記抽象化三次元モデル取得手段は、前記三次元点群データが表す対象物の種類を推定する種類推定手段を有し、推定した種類の抽象化三次元モデルの中から抽象化三次元モデルを取得することを特徴としている。
【００２１】
したがって、検討すべき抽象化三次元モデルを絞り込むことができる。
【００２２】
(7)この発明に係る装置は、対象物が、地物の構成部位であることを特徴としている。
【００２３】
したがって、地物を部位ごとに分割して三次元モデルを構築することができる。
【００２４】
(8)(9)この発明に係る三次元モデル生成装置は、構造物の三次元点群データに基づいて、当該構造の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段とを備えている。
【００２５】
したがって、部位ごとの三次元モデルを推定し、これらを統合して全体としての三次元モデルを得ることができる。
【００２６】
(10)この発明に係る装置は、三次元モデル生成手段が、前記部位の外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、前記抽象化三次元モデルの寸法を変えながら、前記分割された三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを当該部位の三次元モデルとして決定する三次元モデル決定手段とを備えることを特徴としている。
【００２７】
したがって、抽象化三次元モデルによって、より正確な三次元モデルを得ることができる。
【００２８】
(11)(12)この発明に係る三次元モデル選択装置は、対象物の三次元点群データに基づいて、複数の対象物の各外形と対応する外形を有する寸法可変の複数の抽象化三次元モデルから、対応する抽象化三次元モデルを選択する抽象化三次元モデル選択装置であって、少なくとも、i)前記三次元点群データの平面の数と前記抽象化三次元モデルの平面の数とが合致する前記抽象化三次元モデル、または、ii)前記三次元点群データの二次元投影図と前記抽象化三次元モデルの二次元投影図が合致する前記抽象化三次元モデルを選択する手段を備えることを特徴としている。
【００２９】
したがって、三次元点群データに対応する抽象化三次元モデルを適切に選択することができる。
【００３０】
(13)(14)この発明に係る合致性判断装置は、対象物の三次元点群データと対象物の外形を有する三次元モデルとの合致性を判断する合致性判断装置であって、前記三次元点群データの各点ごとに近傍の点群に基づいて法線を決定する法線決定手段と、前記三次元モデルの面の法線に対して、所定角度以内にある法線を持つ前記三次元点群データの点を、前記三次元モデルの面に対応する三次元点群データとして特定する特定手段と、当該対応する三次元点群データの各点と当該面との距離の合計に基づいて、合致度を算出する合致度算出手段とを備えている。
【００３１】
したがって、より正確に合致性を判定することができる。
【００３２】
「抽象化三次元モデル取得手段」は、実施形態においては、ステップＳ２がこれに対応する。
【００３３】
「三次元モデル決定手段」は、実施形態においては、ステップＳ４がこれに対応する。
【００３４】
「分割手段」は、実施形態においては、ステップＳ６がこれに対応する。
【００３５】
「プログラム」とは、ＣＰＵにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。
【図面の簡単な説明】
【００３６】
【図１】この発明の一実施形態による三次元モデル生成装置の機能ブロック図である。
【図２】三次元モデル生成装置のハードウエア構成である。
【図３】三次元モデル生成プログラムのフローチャートである。
【図４】三次元点群データの例である。
【図５】三次元モデルの例である。
【図６】抽象化三次元モデル取得のフローチャートである。
【図７】ボクセルグリッド内の点と近似平面を示す図である。
【図８】三次元点群データを二次元投影した二次元点群データである。
【図９】二次元投影した三次元モデルである。
【図１０】抽象化三次元モデルのパラメータである。
【図１１】マッチング処理の詳細フローチャートである。
【図１２】マッチング処理の詳細フローチャートである。
【図１３】パラメータを示す図である。
【図１４】面についての法線ベクトル、線についての法線ベクトルを示す図である。
【図１５】合致度の算出式を示す図である。
【図１６】パラメータを示す図である。
【図１７】他の例による抽象化三次元モデルの選択処理を示す図である。
【図１８】第２の実施形態による三次元モデル生成装置の機能ブロック図である。
【図１９】三次元モデル生成プログラムのフローチャートである。
【図２０】三次元点群データの例である。
【図２１】部位の学習を示すための図である、
【図２２】地物分割処理のフローチャートである。
【図２３】断面による部位推定を示す図である。
【図２４】投影面を説明するための図である。
【図２５】部位に分割された三次元点群データを示す図である。
【発明を実施するための形態】
【００３７】
１．第１の実施形態
1.1システム構成
図１に、この発明の一実施形態による三次元モデル生成装置１０の機能ブロック図を示す。抽象化三次元モデル取得手段２は、対象物に対応する抽象化三次元モデルＴＰを取得する。抽象化三次元モデルＴＰは、前記対象物の外形に対応する外形を有し、各部分の寸法を変更することのできるようなモデルである。抽象化三次元モデルＴＰは、少なくとも、対象物の外形の辺または面を有するものである。
【００３８】
三次元モデル決定手段４は、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルＴＭとして出力する。
【００３９】
図２に、三次元モデル生成装置１０のハードウエア構成を示す。ＣＰＵ２０には、メモリ２２、ディスプレイ２４、通信回路２６、ハードディスク２８、ＤＶＤ−ＲＯＭドライブ３０、キーボード／マウス３２が接続されている。
【００４０】
通信回路２６は、インターネットに接続するためのものである。ハードディスク２８には、オペレーティングシステム３６、三次元モデル生成プログラム３８が記録されている。三次元モデル生成プログラム３８は、オペレーティングシステム３６と協働してその機能を発揮するものである。これらプログラムは、ＤＶＤ−ＲＯＭ４０に記録されていたものを、ハードディスク２８にインストールしたものである。
【００４１】
1.2三次元モデル生成処理
図３に、三次元モデル生成プログラム３８のフローチャートを示す。ここでは、構造物である橋脚を対象として、三次元点群データから三次元モデルを生成する場合について説明する。
【００４２】
まず、ＣＰＵ２０は、対象物の三次元点群データを取得する（ステップＳ１）。この三次元点群データは、ハードディスク２８に記録されたものを取得してもよいし、インターネットを介して他の装置から取得してもよい。図４に、取得した橋脚の三次元点群データの例を示す。橋脚の上部面は他の部位と接触しているため三次元点群データが計測されない。同様に、下部面は地面に埋もれているので三次元点群データが計測されない。
【００４３】
次に、ＣＰＵ２０は、この三次元点群データに対応する抽象化三次元モデルを読み込む（ステップＳ２）。橋脚は、様々な形に分類される。この形状を表すのが抽象化三次元モデルである。この実施形態では、図５に示すように、抽象化三次元モデルＢ1、Ｂ2、Ｂ3・・・Ｂnが用意されている。抽象化三次元モデルは、ワイヤーフレーム、ソリッドモデルなどの形式にて用意することが好ましい。
【００４４】
抽象化三次元モデルＢ1、Ｂ2、Ｂ3・・・Ｂnは、ハードディスク２８に記録されたものを読み込んでもよいし、インターネットを介して他の装置から読み込んでもよい。
【００４５】
次に、ＣＰＵ２０は、読み込んだ抽象化三次元モデルのうちから、三次元点群データに合致するものを取得する（ステップＳ３）。この処理の詳細を、図６に示す。
【００４６】
ＣＰＵ２０は、三次元点群データを、ボクセルグリッド（微小立方体）にて区切る（ステップＳ３１）。次に、各ボクセルグリッド内の点について、近似平面を算出する（ステップＳ３２）。図７に、一つのボクセルグリッドＶＧを示す。このボクセルグリッドＶＧ内の点Ｄについて、その近似平面Ｐを算出する。
【００４７】
この近似平面Ｐの法線ベクトルＶを求め、ボクセルグリッドＶＧ内の各点Ｄにこれを付与する。このようにして求めた各点Ｄの法線ベクトルに基づいて、三次元点群データを回転させＸＹＺ方向に整列させる（ステップＳ３３）。
【００４８】
計測された三次元点群データは、概ねＺ軸方向に沿って立ち上がることになる。すなわち、図４の面Ｓ１、面Ｓ２などは、Ｚ軸方向に沿うことになる。ただし、計測誤差や、橋脚の傾きなどにより、三次元点群データの面Ｓ１、面Ｓ２がＺ軸に平行にならない場合もある。そこで、面Ｓ１、面Ｓ２がＺ軸に並行になるように三次元点群データを傾ける。
【００４９】
この際の処理は以下のとおりである。まず、Ｚ軸にほぼ垂直な法線ベクトルＶを持つ点を選択する。これにより、面Ｓ１、面Ｓ２、面Ｓ３（面Ｓ１に対向する面）、面Ｓ４（面Ｓ２２に対向する面）の点が選択されることになる。
【００５０】
次に、三次元点群データをＹ軸周り、Ｘ軸周りに回転（たとえば−１０度〜＋１０度の範囲）させ、上記選択された点の法線ベクトルがＺ軸に対して垂直となるような（各法線ベクトルとＺ軸の垂直方向との角度誤差の合計が最も小さくなるような）位置を見いだす。
【００５１】
上記のように垂直方向への立ち上がりを決めた三次元点群データを、Ｚ軸まわりに回転（たとえば３６０度）させ、上記選択された点の法線ベクトルがＸ軸に対して水平（各法線ベクトルとＸ軸方向との角度誤差の合計が最も小さくなるような）であって、かつ、上記選択された点の法線ベクトルがＹ軸に対して水平（各法線ベクトルとＹ軸方向との角度誤差の合計が最も小さくなるような）位置を見いだす。
【００５２】
なお、対象物の形状が楕円円柱状であるような場合には、面Ｓ１、Ｓ２、Ｓ３、Ｓ４が形成されない。しかし、上記処理を行うことで、楕円の長軸方向がＸ軸またはＹ軸に合致するように位置が定まる。また、円柱状の場合には、いずれの位置に定まったとしても後の処理において問題は生じない。
【００５３】
以上のようにして、ＣＰＵ２０は、三次元点群データを、ＸＹＺ軸方向に整列させる。これにより、三次元点群データは、図４に示すように、ＸＹＺ軸に沿った方向となる。
【００５４】
ＣＰＵ２０は、この三次元点群データと形状が最もマッチする抽象化三次元モデルを選択する。その処理は以下のとおりである。
【００５５】
ＣＰＵ２０は、三次元点群データを、ＸＹ平面、ＹＺ平面、ＸＺ平面に投影し、二次元投影点群データを得る（ステップＳ３４）。図８に、各面における得られた二次元投影点群データを示す。図８においては、点のあるエリアを面で示しているが、実際には、点のデータが集合したものである。また、上面、下面は三次元点群データがないため、ＸＹ平面においては、ほとんど点が現れていない。
【００５６】
一方、図５に示す抽象化三次元モデルのそれぞれについて、予め、図９に示すような二次元投影モデルが記録されている。これらの二次元投影モデルは、ＸＹＺ軸方向に整列させて二次元平面に投影したものである。抽象化三次元モデルの寸法は可変であるので、可変の際の中心値に基づいて形状を決定し、上記投影を行うようにしている。
【００５７】
ＣＰＵ２０は、二次元投影点群データと二次元投影モデルとを比較して（ステップＳ３５）、最も良くマッチングした二次元投影モデル（抽象化三次元モデル）を選択する（ステップＳ３６）。なお、マッチング度合いの算出には、ＳＩＦＴやＳＵＲＦ等のアルゴリズムで算出した対応点数や、二次元投影点群データと二次元投影モデルの重なり度合い（オーバラップ率）を用いることができる。後者は、たとえば、二次元投影モデルを微小な矩形によって区切りその個数をＸとする。これらの矩形のうち、点群データが一つでも存在する矩形の個数をＹとする。重なり度合いは、Ｙ／Ｘとして算出することができる。
【００５８】
また、マッチング度合いの高い複数の抽象化三次元モデルを複数提示し、操作者に選択させるようにしてもよい。
【００５９】
上記のようにして、抽象化三次元モデルが決定されると、ＣＰＵ２０は、当該抽象化三次元モデルの各寸法を変化させながら、三次元点群データとの適合度合いを算出する（図３、ステップＳ４）。
【００６０】
たとえば、図１０に示すような抽象化三次元モデルが選択されたものとする。図に示すように、各部分の寸法Ｐ1〜Ｐ6を変えることができるようになっている。また、抽象化三次元モデルと三次元点群データの傾きや位置も合致させる必要があるので、図１３に示すように、Ｘ、Ｙ、Ｚ方向への移動量、roll、pitch、yawなどの回転角度、sclaeによる拡大率も変化させるようにしている。
【００６１】
図１３において、たとえば「Ｐ1」であれば、最小０．５ｍから０．５ｍ刻みに最高４．０ｍまで８個のパターンを取り得ることが示されている。各パラメータは、二進数にて表現されることになる（必要ビット数参照）。
【００６２】
図１３に示すように、組合せパターンが多く存在するので、その組合せ数は膨大なものとなり、処理に膨大な時間を要することになる。
【００６３】
そこで、この実施形態では、ＧＡ（遺伝的アルゴリズム）を用いて、検討を行うようにしている。図１１に、ＧＡを用いた寸法決定のフローチャートを示す。
【００６４】
まず、ＣＰＵ２０は、各パラメータについて探索範囲の中からランダムに初期値を選択し、初期集団を生成する（ステップＳ４１）。これにより、全てのパラメータに値が与えられ、三次元モデルが形成されることになる。
【００６５】
次に、ＣＰＵ２０は、形成された三次元モデルの全ての面について法線ベクトルを算出する（ステップＳ４２）。図１４Ａに、法線ベクトルの例を示す。図１４Ａでは、面ＦＰ、ＲＳＰについてのみ法線ベクトルを示しているが、他の全ての面についても法線ベクトルが生成される。
【００６６】
続いて、ＣＰＵ２０は、三次元点群データの点について法線ベクトルを生成する（ステップＳ４４）。ここでは、注目する点の所定範囲内の点により疑似平面を生成し、当該疑似平面の法線ベクトルを、当該注目する点の法線ベクトルとしている。図１４Ｂに、注目する点の法線ベクトルの例を示す。
【００６７】
次に、ＣＰＵ２０は、注目する点の法線ベクトルと、三次元モデルの各面の法線ベクトルとの角度差を算出し、所定角度よりも角度差の小さい面に注目する点を対応付ける（ステップＳ４５）。
【００６８】
次に、当該対応づけられた面に対して点から垂線を降ろしてその距離を算出する（ステップＳ４６）。ステップＳ４５において、対応付けられた面が複数ある場合、ステップＳ４６にて算出した距離の小さい方を選択して、点を対応付ける。
【００６９】
以上のステップＳ４４〜Ｓ４６の処理を全ての点について行う（ステップＳ４３、Ｓ４７）。
【００７０】
ＣＰＵ２０は、三次元モデルの各面ごとに、対応する点の総数を算出する（ステップＳ４９）。この点の総数が少ない（他の面の点の数の５％以下など）面については、十分な三次元点群データが計測されていない可能性がある。したがって、この適合処理においては、外れ値とし、当該面および点を棄却する（ステップＳ５０）。
【００７１】
続いて、ＣＰＵ２０は、三次元モデルと三次元点群データの適合度を算出する（ステップＳ５１）。適合度は、面とこれに対応する点の距離の総和が小さいほど適合度が高いものとしている。この実施形態では、図１５に示すような式により、正規化された適合度Fitnessを算出している。
【００７２】
図１５において、ｎは三次元モデルの面数、RMSは点と面との距離の二乗平方根、RMSminはRMSの最小値、RMSmaxはRMSの最大値、面ｉのRMSをRMSiとする。
【００７３】
ＣＰＵ２０は、適合度が所定値より小さいかどうかを判断する（ステップＳ５２）。適合度Fitnessが小さいほど、三次元モデルと三次元点群データの合致性が高いことになる。所定値より小さい場合、ＣＰＵ２０は、当該三次元モデルを、三次元点群データに対応する三次元モデルとして決定する（ステップＳ５４）。
【００７４】
所定値より大きい場合、ＣＰＵ２０は、ＧＡ処理にて、各パラメータのビットを交叉、突然変異などの手法によって変更し、次世代の三次元モデルを生成する（ステップＳ５３）。なお、このＧＡ処理は、遺伝子アルゴリズムにおいて通常用いられている手法を用いることができる。
【００７５】
ＣＰＵ２０は、このようにして生成した次世代の三次元モデルについて、ステップＳ４１以下の処理を繰り返す。このようにして、三次元点群データとよくマッチする三次元モデルを得ることができる。
【００７６】
ＣＰＵ２０は、このようにして決定した三次元点群モデル（パラメータ値を含む）を出力する（図３、ステップＳ５）。
【００７７】
この実施形態によれば、三次元点群データが不完全であって、全ての面が測定できていなくとも、完全な三次元モデルを得ることができる。
【００７８】
1.3その他
(1)上記実施形態では、遺伝子アルゴリズムを用いて適切な組合せを検討するようにしている。しかし、タブー検索や疑似アニーリング法などを用いるようにしてもよい。また、組合せの数が少ない場合には、全ての組合せを検討するようにしてもよい。
【００７９】
(2)上記実施形態では、地物を対象として、三次元点群データから三次元モデルを生成するようにしている。しかし、地物以外の構造物を対象として、三次元点群データから三次元モデルを生成するようにしてもよい。
【００８０】
(3)上記実施形態では、ステップＳ５２において適合値が所定値以下になれば、そのパラメータを有する三次元モデルを選択するようにしている。しかし、直ちにそのパラメータにて三次元モデルを選択せず、当該パラメータを中心として、探索ステップを細かくしてパラメータ値を変化させ、より最適なパラメータ（より小さな所定値の適合値になるように）を選択するようにしてもよい。
【００８１】
たとえば、図１６に示すように、第２段階では、探索ステップを１／１０にしてより細かくパラメータを変化させる。第２段階における探索範囲は、第１段階にて得られた適切値を中心として、探索ステップを細かくし、第１段階と同じ数のパターン数を設定した範囲とする。
【００８２】
このようにすることで、より適切なパラメータ値を得ることができる。なお、上記では、第２段階まで行ったが、３段階以上行うようにしてもよい。
【００８３】
(4)上記実施形態では、ステップＳ３において抽象化三次元モデルを選択する際に、二次元投影画像を作成してその類似度により選択するようにしている。しかし、抽象化三次元モデルの面の数と、三次元点群モデルの面の数とを比較して合致するものを選択するようにしてもよい。また、これだけで抽象化三次元モデルを一つに決定できない場合には、上記の二次元投影画像による方法を組み合わせてもよい。また、複数の抽象化三次元モデルをディスプレイに表示し、操作者に選択させるようにしてもよい。
【００８４】
この場合のステップＳ３の詳細なフローチャートを図１７に示す。ＣＰＵ２０は、まず、ボクセルグリッドにて、三次元点群データを区切る（ステップＳ３１）。この処理は、図６のステップＳ３１と同様である。
【００８５】
次に、ＣＰＵ２０は、各ボクセルグリッド内の点から近似平面を算出し、法線ベクトルを算出する。この法線ベクトルを、当該ボクセルグリッド内の全ての点に対して付与する（ステップＳ３２）。この処理は、図６のステップＳ３２と同様である。
【００８６】
続いて、ＣＰＵ２０は、全ての点を対象として、その位置と法線ベクトルによってクラスタリングを行う（ステップＳ３６）。このようなクラスタリングにより、三次元点群データによって表される面の数が示されることになる。
【００８７】
次に、ＣＰＵ２０は、算出したクラスタ数と合致する面数を有する抽象化三次元モデルを選択する（ステップＳ３７）。
【００８８】
なお、抽象化三次元モデルの面数をクラスタ数とみなして、k-means法を適用して、適合する面数を求めるようにしてもよい。
【００８９】
(5)上記実施形態では、用意している抽象化三次元モデルの全てについて三次元点群データとの類似度を判断し、抽象化三次元モデルを選択するようにしている。しかし、抽象化三次元モデルを対象物ごとに種類分けしておき、対象物の種類に応じて、当該種類の抽象化三次元モデルのみを抽出し、その中から三次元点群データに類似するものを選択するようにしてもよい。
【００９０】
(6)上記実施形態では、三次元モデル生成装置を、操作者が直接的に操作を行うことのできるコンピュータとして構築した。しかし、端末装置からインターネットなどを介して操作を行うことのできるサーバ装置として構築してもよい。
【００９１】
(7)上記実施形態では、ボクセルグリッドを形成し、ボクセルグリッド内の点については全て同じ法線ベクトルを与えるようにしている。しかし、全ての点についてそれぞれ法線ベクトルを与えるようにしてもよい。この場合、法線ベクトルを与える点について、当該点の周囲の所定距離内にある点に基づいて疑似平面を参照し、この法線ベクトルを当該点に与えるようにする。
【００９２】
(8)上記実施形態およびその変形例は、その本質に反しない限り、他の実施形態と組み合わせて実施可能である。
【００９３】
２．第２の実施形態
2.1システム構成
図１８に、第２の実施形態による三次元モデル生成装置１０の機能ブロック図を示す。分割手段６は、三次元点群データＤＤを対象物ごとあるいは対象物の部位ごとに分割する。その際、対象物あるいは部位の名称を与える。
【００９４】
抽象化三次元モデル取得手段２は、分割された対象物あるいは部位に対応する抽象化三次元モデルＴＰを取得する。抽象化三次元モデルＴＰは、前記対象物の外形に対応する外形を有し、各部分の寸法を変更することのできるようなモデルである。
【００９５】
三次元モデル決定手段４は、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルＴＭとして出力する。
【００９６】
三次元モデル生成装置１０のハードウエア構成は、図２と同様である。
【００９７】
2.2三次元モデル生成処理
図１９に、三次元モデル生成プログラム３８のフローチャートを示す。ここでは、構造物である橋梁全体を対象として、三次元点群データから三次元モデルを生成する場合について説明する。
【００９８】
まず、ＣＰＵ２０は、対象物の三次元点群データを取得する（ステップＳ１）。この三次元点群データは、ハードディスク２８に記録されたものを取得してもよいし、インターネットを介して他の装置から取得してもよい。
【００９９】
図２０に、取得した橋梁の三次元点群データの例を示す。橋梁以外の法面なども含めて三次元点群データが構成されている。
【０１００】
次に、ＣＰＵ２０は、この橋梁の三次元点群データを、橋梁を構成する部位ごとの三次元点群データに分割する（ステップＳ６）。この分割の手法としては、たとえば、図２１に示すように、三次元点群データにおいて各部位（高欄、橋台、主桁・・・）を色分けなどにより明示した学習データを、様々な対象物について多数作成する。図２１においては白黒によって示されているが、左の図面においては高欄の部分のみが赤色で示されており、中央の図面では橋台の部分のみがピンクで示されており、右の図面では主桁の部分のみが緑で示されている。この学習データによって学習したディープラーニングの学習済みモデルによって、与えられた三次元点群データの各部位を推定する。
【０１０１】
なお、上記のように三次元のデータをディープラーニングにて推定するのは、処理時間を要することになる。そこで、この実施形態では、次のような手法にて、三次元点群データを各部位の三次元点群データに分割するようにしている。
【０１０２】
この分割処理のフローチャートを図２２に示す。ＣＰＵ２０は、まず、三次元点群データの横断面（横断面点群データ）を生成する（ステップＳ６１）。横断面は、高さ方向に沿う面であり、地物を囲う矩形（バウンダリーボックス）の各面と水平若しくは垂直な面として決定される。
【０１０３】
次に、この横断面点群データに基づいて、学習済みのディープラーニングのモデルによって各部位の推定を行う（ステップＳ６２）。図２３Ａが与えられた三次元点群データであり、図２３Ｂが推定された各部位である。ここでは、上から、高欄、主桁、橋台に分割されている。
【０１０４】
ディープラーニングのモデルを学習するためには、多数の地物（対象物）の横断面を生成し、そこに現れた各部位を明示（色分けなどにより）したデータにて学習を行う。各部位の名称は、色分けを行った色によって特定する。
【０１０５】
続いて、ＣＰＵ２０は、三次元点群データの縦断面（縦断面点群データ）を生成する（ステップＳ６３）。縦断面は、高さ方向に沿う面であり、地物を囲う矩形（バウンダリーボックス）の各面と水平若しくは垂直な面として決定される。
【０１０６】
次に、この縦断面点群データに基づいて、学習済みのディープラーニングのモデルによって各部位の推定を行う（ステップＳ６４）。学習モデルの生成方法は、横断面と同様である。
【０１０７】
なお、この実施形態では、断面のうち長さの長い方を縦断面、短い方を横断面としている。
【０１０８】
さらに、ＣＰＵ２０は、三次元点群データの俯瞰図（俯瞰図点群データ）を生成する（ステップＳ６５）。ここで、俯瞰図の考え方は、図２４に示すとおりである。図２４に示すように、バウンダリーボックスの長軸方向の中央を中心とし、高さ方向に上下に回転する線Ｌを想定する。なお、線Ｌによって形成される面（円）は、バウンダリーボックスの矩形の各面と水平または垂直になるように選択される。
【０１０９】
この線Ｌに沿うように、投影面を所定個数設ける、たとえば、３０度ごとに設けると、１２個の投影面が形成されることになる。これらの投影面に三次元点群データを投影し、俯瞰図点群データを得る。
【０１１０】
ＣＰＵ２０は、この各俯瞰図点群データについて、学習済みのディープラーニングのモデルによって各部位の推定を行う（ステップＳ６６）。学習モデルの生成方法は、横断面と同様である。なお、この実施形態では、角度ごとの投影面ごとに学習済みモデルを形成するのではなく、全ての投影面についてまとめて学習済みモデルを形成するようにしている。もちろん、角度ごとの投影面について学習済みモデルを形成するようにしてもよい。
【０１１１】
以上のようにして、各断面図、俯瞰図に基づく部位の推定結果を得ることができる。ＣＰＵ２０は、これらを統合して、三次元点群データを各部位に分割する（ステップＳ６７）。
【０１１２】
なお、この際、各断面図、俯瞰図における部位推定に矛盾がなければ、そのまま推定結果を統合して三次元点群データを各部位に分割する。矛盾がある場合、各図に基づく推定結果につき多数決にて部位を決定する。
【０１１３】
以上のようにして、図２０に示す三次元点群データが、図２５に示すように、高欄、主桁、橋台の三次元点群データに分割される。
【０１１４】
以下、このように部位ごとに分割された三次元点群データのそれぞれについて、三次元モデルを生成する（ステップＳ７、Ｓ２、Ｓ３、Ｓ４）。この処理は、第１の実施形態と同様である。生成した部位ごとの三次元モデルを、ハードディスク２８に記録する（ステップＳ８）。
【０１１５】
ＣＰＵ２０は、全ての部位について三次元モデルを得た後、これらを統合して橋梁全体の三次元モデルを構築し、これを出力する（ステップＳ１０）。
【０１１６】
2.3その他
(1)上記実施形態では、一つの地物の三次元点群データにつき、当該地物を構成する部位に分割して三次元モデルを得るようにしている。しかし、複数の地物の三次元点群データから、地物ごとに三次元点群データを分割し、三次元モデルを得るようにしてもよい。
【０１１７】
(2)上記実施形態では、地物の部位ごとに三次元モデルを構築しているが、地物全体としての抽象化三次元モデルを用意しておき、三次元モデルを構築するようにしてもよい。
【０１１８】
(3)上記実施形態では、地物を対象として、三次元点群データから三次元モデルを生成するようにしている。しかし、地物以外の構造物を対象として、三次元点群データから三次元モデルを生成するようにしてもよい。
【０１１９】
(4)上記実施形態では、横断面、縦断面を区別して、学習モデルを構築している。しかし、横断面、縦断面を区別せずに、学習モデルを構築するようにしてもよい。
【０１２０】
(5)上記実施形態およびその変形例は、その本質に反しない限り、他の実施形態と組み合わせて実施可能である。
【図１】
2020197979.tif 000003
【図２】
2020197979.tif 000004
【図３】
2020197979.tif 000005
【図４】
2020197979.tif 000006
【図５】
2020197979.tif 000007
【図６】
2020197979.tif 000008
【図７】
2020197979.tif 000009
【図８】
2020197979.tif 000010
【図９】
2020197979.tif 000011
【図１０】
2020197979.tif 000012
【図１１】
2020197979.tif 000013
【図１２】
2020197979.tif 000014
【図１３】
2020197979.tif 000015
【図１４】
2020197979.tif 000016
【図１５】
2020197979.tif 000017
【図１６】
2020197979.tif 000018
【図１７】
2020197979.tif 000019
【図１８】
2020197979.tif 000020
【図１９】
2020197979.tif 000021
【図２０】
2020197979.tif 000022
【図２１】
2020197979.tif 000023
【図２２】
2020197979.tif 000024
【図２３】
2020197979.tif 000025
【図２４】
2020197979.tif 000026
【図２５】
2020197979.tif 000027