(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-22
(45)【発行日】2024-01-30
(54)【発明の名称】三次元点群データに基づく三次元モデル生成装置
(51)【国際特許分類】
G06F 30/10 20200101AFI20240123BHJP
G06T 17/00 20060101ALI20240123BHJP
【FI】
G06F30/10 100
G06T17/00
(21)【出願番号】P 2019104537
(22)【出願日】2019-06-04
【審査請求日】2022-03-30
(73)【特許権者】
【識別番号】500063228
【氏名又は名称】田中 成典
(73)【特許権者】
【識別番号】515027602
【氏名又は名称】窪田 諭
(73)【特許権者】
【識別番号】519113745
【氏名又は名称】Intelligent Style株式会社
(74)【代理人】
【識別番号】100092956
【氏名又は名称】古谷 栄男
(74)【代理人】
【識別番号】100101018
【氏名又は名称】松下 正
(72)【発明者】
【氏名】田中 成典
(72)【発明者】
【氏名】窪田 諭
(72)【発明者】
【氏名】塚田 義典
(72)【発明者】
【氏名】今井 龍一
(72)【発明者】
【氏名】中村 健二
(72)【発明者】
【氏名】神谷 大介
(72)【発明者】
【氏名】山本 雄平
(72)【発明者】
【氏名】姜 文渊
(72)【発明者】
【氏名】井上 晴可
(72)【発明者】
【氏名】中島 伸介
(72)【発明者】
【氏名】上田 真由美
(72)【発明者】
【氏名】五藤 佳奈
(72)【発明者】
【氏名】蔭山 雅洋
(72)【発明者】
【氏名】伊藤 俊秀
(72)【発明者】
【氏名】辻 光宏
(72)【発明者】
【氏名】梅▲原▼ 喜政
(72)【発明者】
【氏名】丸山 明
(72)【発明者】
【氏名】西川 啓一
(72)【発明者】
【氏名】岩佐 宏一
(72)【発明者】
【氏名】下庄 孝弘
(72)【発明者】
【氏名】大月 庄治
(72)【発明者】
【氏名】平野 順俊
(72)【発明者】
【氏名】山川 純三
(72)【発明者】
【氏名】戸口 伸三
(72)【発明者】
【氏名】三上 卓
(72)【発明者】
【氏名】佐野 龍太
(72)【発明者】
【氏名】藤原 利弘
(72)【発明者】
【氏名】平見 勝洋
(72)【発明者】
【氏名】福住 建
(72)【発明者】
【氏名】中山 忠雅
(72)【発明者】
【氏名】清水 智弘
(72)【発明者】
【氏名】奥平 敬
(72)【発明者】
【氏名】木村 泰三
(72)【発明者】
【氏名】菊地 英一
(72)【発明者】
【氏名】馬場 彰文
(72)【発明者】
【氏名】山崎 文明
(72)【発明者】
【氏名】北田 稔治
(72)【発明者】
【氏名】三浦 泰夫
(72)【発明者】
【氏名】相田 尚
(72)【発明者】
【氏名】其田 直樹
(72)【発明者】
【氏名】西村 修
(72)【発明者】
【氏名】安井 嘉文
(72)【発明者】
【氏名】松田 克巳
(72)【発明者】
【氏名】鳴尾 丈司
【審査官】松浦 功
(56)【参考文献】
【文献】特開2013-092888(JP,A)
【文献】特開2014-056464(JP,A)
【文献】特開2014-186567(JP,A)
【文献】特開2004-133094(JP,A)
【文献】特開2009-237397(JP,A)
【文献】米国特許出願公開第2014/0098094(US,A1)
【文献】米国特許出願公開第2017/0256100(US,A1)
【文献】国際公開第2014/155715(WO,A1)
【文献】特開2007-018493(JP,A)
【文献】塚田義典 外4名,点群データを用いた橋梁の3次元モデルの生成に関する研究,知能と情報 [online],2015年,Vol. 27, No. 5,pp. 796-812,[検索日 2023.05.01], インターネット,URL:https://www.jstage.jst.go.jp/article/jsoft/27/5/27_796/_article/-char/ja/
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00 -30/28
G06T 17/00 -19/20
G06T 1/00
G06T 7/00 - 7/90
G01B 11/00 -11/30
Google Scholar
(57)【特許請求の範囲】
【請求項1】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記対象物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを所定の変化間隔に基づいて変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段と、
を備えた三次元モデル生成装置において、
前記三次元モデル決定手段は、第1段階において前記パラメータを第1の変化間隔にて変化させて第1の適合値に基づいて合致性を判断し、当該第1の適合値よりも合致性が高くなれば、第2段階において前記パラメータを第1の変化間隔より小さい第2の変化間隔にて変化させて合致性を判断することを特徴とする三次元モデル生成装置。
【請求項2】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、コンピュータを、
前記対象物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを所定の変化間隔に基づいて変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段として機能させる三次元モデル生成プログラムにおいて、
前記三次元モデル決定手段は、第1段階において前記パラメータを第1の変化間隔にて変化させて第1の適合値に基づいて合致性を判断し、当該第1の適合値よりも合致性が高くなれば、第2段階において前記パラメータを第1の変化間隔より小さい第2の変化間隔にて変化させて合致性を判断することを特徴とする三次元モデル生成プログラム。
【請求項3】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記対象物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段と、
を備えた三次元モデル生成装置において、
前記対象物は、地物の構成部位であり、
前記抽象化三次元モデルは、地面に対して垂直な高さ方向において、複数個の独立して変化可能なパラメータを有していることを特徴とする三次元モデル生成装置。
【請求項4】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、コンピュータを、
前記対象物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段として機能させる三次元モデル生成プログラムにおいて、
前記対象物は、地物の構成部位であり、
前記抽象化三次元モデルは、地面に対して垂直な高さ方向において、複数個の独立して変化可能なパラメータを有していることを特徴とする三次元モデル生成プログラム。
【請求項5】
請求項1の装置または請求項2のプログラムにおいて、
前記対象物は、地物の構成部位であり、
前記抽象化三次元モデルは、地面に対して垂直な高さ方向において、複数個の独立して変化可能なパラメータを有していることを特徴とする装置またはプログラム。
【請求項6】
請求項1~5のいずれかの装置またはプログラムにおいて、
前記三次元モデル決定手段は、前記抽象化三次元モデルの面に対応する三次元点群データを特定し、当該三次元点群データの各点と当該面との距離の合計に基づいて、合致性を判断する合致性判断手段を備えることを特徴とする装置またはプログラム。
【請求項7】
請求項1~5のいずれかの装置またはプログラムにおいて、
前記抽象化三次元モデル取得手段は、記録された複数の抽象化三次元モデルの中から、前記三次元点群データと図形的特徴が類似する抽象化三次元モデルを取得することを特徴とする装置またはプログラム。
【請求項8】
請求項7の装置またはプログラムにおいて、
前記抽象化三次元モデル取得手段は、少なくともi)前記抽象化三次元モデルの平面の数と前記三次元点群データの平面の数、またはii)前記抽象化三次元モデルの二次元投影図と前記三次元点群データの二次元投影図を、図形的特徴として用いることを特徴とする装置またはプログラム。
【請求項9】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記対象物の各外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段と、
を備えた三次元モデル生成装置において、
前記抽象化三次元モデルは、対象物の種類ごとにグループ化されており、
前記抽象化三次元モデル取得手段は、前記三次元点群データが表す対象物の種類を推定する種類推定手段を有し、推定した種類の抽象化三次元モデルの中から抽象化三次元モデルを取得することを特徴とする三次元モデル生成装置。
【請求項10】
対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、コンピュータを、
前記対象物の各外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段として機能させる三次元モデル生成プログラムにおいて、
前記抽象化三次元モデルは、対象物の種類ごとにグループ化されており、
前記抽象化三次元モデル取得手段は、前記三次元点群データが表す対象物の種類を推定する種類推定手段を有し、推定した種類の抽象化三次元モデルの中から抽象化三次元モデルを取得することを特徴とする三次元モデル生成プログラム。
【請求項11】
構造物の三次元点群データに基づいて、
当該構造物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、
分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、
生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段と、
を備えた三次元モデル生成装置において、
前記三次元モデル生成手段は、
前記構造物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを所定の変化間隔に基づいて変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段とを備え、
前記三次元モデル決定手段は、第1段階において前記パラメータを第1の変化間隔にて変化させて第1の適合値に基づいて合致性を判断し、当該第1の適合値よりも合致性が高くなれば、第2段階において前記パラメータを第1の変化間隔より小さい第2の変化間隔にて変化させて合致性を判断することを特徴とする三次元モデル生成装置。
【請求項12】
構造物の三次元点群データに基づいて、
当該構造物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、コンピュータを、
前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、
分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、
生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段として機能させる三次元モデル生成プログラムにおいて、
前記三次元モデル生成手段は、
前記構造物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを所定の変化間隔に基づいて変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段とを備え、
前記三次元モデル決定手段は、第1段階において前記パラメータを第1の変化間隔にて変化させて第1の適合値に基づいて合致性を判断し、当該第1の適合値よりも合致性が高くなれば、第2段階において前記パラメータを第1の変化間隔より小さい第2の変化間隔にて変化させて合致性を判断することを特徴とする三次元モデル生成プログラム。
【請求項13】
構造物の三次元点群データに基づいて、
当該構造物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、
前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、
分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、
生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段と、
を備えた三次元モデル生成装置において、
前記三次元モデル生成手段は、
前記構造物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段とを備え、
前記構造物は、地物の構成部位であり、
前記抽象化三次元モデルは、地面に対して垂直な高さ方向において、複数個の独立して変化可能なパラメータを有していることを特徴とする三次元モデル生成装置。
【請求項14】
構造物の三次元点群データに基づいて、
当該構造物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置を、コンピュータによって実現するための三次元モデル生成プログラムであって、コンピュータを、
前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、
分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、
生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段として機能させる三次元モデル生成プログラムにおいて、
前記三次元モデル生成手段は、
前記構造物の各外形と対応する外形を有し、パラメータによって寸法可変な抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、
前記抽象化三次元モデルのパラメータを変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段と、
を備えた三次元モデル生成プログラムにおいて、
前記構造物は、地物の構成部位であり、
前記抽象化三次元モデルは、地面に対して垂直な高さ方向において、複数個の独立して変化可能なパラメータを有していることを特徴とする三次元モデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、レーザ測量装置などによって計測するなどで得られた三次元点群データに基づいて、三次元モデルを生成する技術に関するものである。
【背景技術】
【0002】
無人航空機(UAV)や地上移動体(例えば自動車)などにレーザ測量装置を搭載し、地表面の形状や地物を計測することが行われている。また、固定したレーザ測量装置によって、地表面の形状や地物を計測することも行われている。計測の結果、三次元点群データが得られる。
【0003】
このようにして三次元点群データを得ることで、地物の外形形状などを把握することができる。しかし、三次元点群データであることから寸法や形状の正確性に欠けており、管理データとして用いるには適していない。
【0004】
そこで、従来、三次元点群データに基づいて、平面や辺によって構成される三次元モデルを生成することが行われている。
【0005】
たとえば、特許文献1には、対象物がどのような幾何要素(点、線、平面、トーラスなど)で構成されているかを予め与えておき、三次元点群データに基づいて、対象物を構成する幾何要素を推定し、三次元モデルを構築する技術が開示されている。
【0006】
また、特許文献2には、三次元点群データを得た対象物の三次元CADデータに基づいて、三次元モデルを抽出する技術が開示されている。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2016-45781
【文献】特開2014-115915
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1の技術では、各対象物について、当該対象物がどのような幾何要素(点、線、平面、トーラスなど)で構成されているかを予め与えておかなければならず、処理が煩雑であった。また、特許文献1の技術では、対象物の全ての面について三次元点群データがないと三次元モデルが構築できなかった。
【0009】
また、特許文献2の技術では、三次元モデルを得る対象物を含む三次元CADデータがなければ、三次元モデルを生成できず汎用性が低いという問題があった。
【0010】
この発明は、上記のような問題点を解決して、汎用性が高くかつ精度よく三次元モデルを構築することのできる装置を提供することを目的とする。
【課題を解決するための手段】
【0011】
この発明の独立して適用可能ないくつかの特徴を列挙する。
【0012】
(1)(2)この発明に係る三次元モデル生成装置は、対象物の三次元点群データに基づいて、当該対象物の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、前記対象物の各外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルとして決定する三次元モデル決定手段とを備えている。
【0013】
したがって、点、線、面が接続した正確な三次元モデルを形成することができる。
【0014】
(3)この発明に係る装置は、三次元モデル決定手段が、前記抽象化三次元モデルの面に対応する三次元点群データを特定し、当該三次元点群データの各点と当該面との距離の合計に基づいて、合致性を判断する合致性判断手段を備えることを特徴としている。
【0015】
したがって、三次元点群データに合致する三次元モデルを適切に選択することができる。
【0016】
(4)この発明に係る装置は、抽象化三次元モデル取得手段が、記録された複数の抽象化三次元モデルの中から、前記三次元点群データと図形的特徴が類似する抽象化三次元モデルを取得することを特徴としている。
【0017】
したがって、検討すべき三次元モデルを絞り込むことができる。
【0018】
(5)この発明に係る装置は、抽象化三次元モデル取得手段が、少なくともi)前記抽象化三次元モデルの平面の数と前記三次元点群データの平面の数、またはii)前記抽象化三次元モデルの二次元投影図と前記三次元点群データの二次元投影図を、図形的特徴として用いることを特徴としている。
【0019】
したがって、より適切な抽象化三次元モデルを得ることができる。
【0020】
(6)この発明に係る装置は、抽象化三次元モデルが、対象物の種類ごとにグループ化されており、前記抽象化三次元モデル取得手段は、前記三次元点群データが表す対象物の種類を推定する種類推定手段を有し、推定した種類の抽象化三次元モデルの中から抽象化三次元モデルを取得することを特徴としている。
【0021】
したがって、検討すべき抽象化三次元モデルを絞り込むことができる。
【0022】
(7)この発明に係る装置は、対象物が、地物の構成部位であることを特徴としている。
【0023】
したがって、地物を部位ごとに分割して三次元モデルを構築することができる。
【0024】
(8)(9)この発明に係る三次元モデル生成装置は、構造物の三次元点群データに基づいて、当該構造の少なくとも外形を有する三次元モデルを生成する三次元モデル生成装置であって、前記構造物の三次元点群データを前記構造物の部位ごとの三次元点群データに分割する三次元点群データ分割手段と、分割した三次元点群データに基づいて、各部位ごとの三次元モデルを生成する三次元モデル生成手段と、生成された各部位の三次元モデルを統合して構造物全体の三次元モデルを構築する三次元モデル統合手段とを備えている。
【0025】
したがって、部位ごとの三次元モデルを推定し、これらを統合して全体としての三次元モデルを得ることができる。
【0026】
(10)この発明に係る装置は、三次元モデル生成手段が、前記部位の外形と対応する外形を有する寸法可変の抽象化三次元モデルを取得する抽象化三次元モデル取得手段と、前記抽象化三次元モデルの寸法を変えながら、前記分割された三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを当該部位の三次元モデルとして決定する三次元モデル決定手段とを備えることを特徴としている。
【0027】
したがって、抽象化三次元モデルによって、より正確な三次元モデルを得ることができる。
【0028】
(11)(12)この発明に係る三次元モデル選択装置は、対象物の三次元点群データに基づいて、複数の対象物の各外形と対応する外形を有する寸法可変の複数の抽象化三次元モデルから、対応する抽象化三次元モデルを選択する抽象化三次元モデル選択装置であって、少なくとも、i)前記三次元点群データの平面の数と前記抽象化三次元モデルの平面の数とが合致する前記抽象化三次元モデル、または、ii)前記三次元点群データの二次元投影図と前記抽象化三次元モデルの二次元投影図が合致する前記抽象化三次元モデルを選択する手段を備えることを特徴としている。
【0029】
したがって、三次元点群データに対応する抽象化三次元モデルを適切に選択することができる。
【0030】
(13)(14)この発明に係る合致性判断装置は、対象物の三次元点群データと対象物の外形を有する三次元モデルとの合致性を判断する合致性判断装置であって、前記三次元点群データの各点ごとに近傍の点群に基づいて法線を決定する法線決定手段と、前記三次元モデルの面の法線に対して、所定角度以内にある法線を持つ前記三次元点群データの点を、前記三次元モデルの面に対応する三次元点群データとして特定する特定手段と、当該対応する三次元点群データの各点と当該面との距離の合計に基づいて、合致度を算出する合致度算出手段とを備えている。
【0031】
したがって、より正確に合致性を判定することができる。
【0032】
「抽象化三次元モデル取得手段」は、実施形態においては、ステップS2がこれに対応する。
【0033】
「三次元モデル決定手段」は、実施形態においては、ステップS4がこれに対応する。
【0034】
「分割手段」は、実施形態においては、ステップS6がこれに対応する。
【0035】
「プログラム」とは、CPUにより直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮処理がされたプログラム、暗号化されたプログラム等を含む概念である。
【図面の簡単な説明】
【0036】
【
図1】この発明の一実施形態による三次元モデル生成装置の機能ブロック図である。
【
図2】三次元モデル生成装置のハードウエア構成である。
【
図3】三次元モデル生成プログラムのフローチャートである。
【
図6】抽象化三次元モデル取得のフローチャートである。
【
図7】ボクセルグリッド内の点と近似平面を示す図である。
【
図8】三次元点群データを二次元投影した二次元点群データである。
【
図11】マッチング処理の詳細フローチャートである。
【
図12】マッチング処理の詳細フローチャートである。
【
図14】面についての法線ベクトル、線についての法線ベクトルを示す図である。
【
図17】他の例による抽象化三次元モデルの選択処理を示す図である。
【
図18】第2の実施形態による三次元モデル生成装置の機能ブロック図である。
【
図19】三次元モデル生成プログラムのフローチャートである。
【
図25】部位に分割された三次元点群データを示す図である。
【発明を実施するための形態】
【0037】
1.第1の実施形態
1.1システム構成
図1に、この発明の一実施形態による三次元モデル生成装置10の機能ブロック図を示す。抽象化三次元モデル取得手段2は、対象物に対応する抽象化三次元モデルTPを取得する。抽象化三次元モデルTPは、前記対象物の外形に対応する外形を有し、各部分の寸法を変更することのできるようなモデルである。抽象化三次元モデルTPは、少なくとも、対象物の外形の辺または面を有するものである。
【0038】
三次元モデル決定手段4は、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルTMとして出力する。
【0039】
図2に、三次元モデル生成装置10のハードウエア構成を示す。CPU20には、メモリ22、ディスプレイ24、通信回路26、ハードディスク28、DVD-ROMドライブ30、キーボード/マウス32が接続されている。
【0040】
通信回路26は、インターネットに接続するためのものである。ハードディスク28には、オペレーティングシステム36、三次元モデル生成プログラム38が記録されている。三次元モデル生成プログラム38は、オペレーティングシステム36と協働してその機能を発揮するものである。これらプログラムは、DVD-ROM40に記録されていたものを、ハードディスク28にインストールしたものである。
【0041】
1.2三次元モデル生成処理
図3に、三次元モデル生成プログラム38のフローチャートを示す。ここでは、構造物である橋脚を対象として、三次元点群データから三次元モデルを生成する場合について説明する。
【0042】
まず、CPU20は、対象物の三次元点群データを取得する(ステップS1)。この三次元点群データは、ハードディスク28に記録されたものを取得してもよいし、インターネットを介して他の装置から取得してもよい。
図4に、取得した橋脚の三次元点群データの例を示す。橋脚の上部面は他の部位と接触しているため三次元点群データが計測されない。同様に、下部面は地面に埋もれているので三次元点群データが計測されない。
【0043】
次に、CPU20は、この三次元点群データに対応する抽象化三次元モデルを読み込む(ステップS2)。橋脚は、様々な形に分類される。この形状を表すのが抽象化三次元モデルである。この実施形態では、
図5に示すように、抽象化三次元モデルB1、B2、B3・・・Bnが用意されている。抽象化三次元モデルは、ワイヤーフレーム、ソリッドモデルなどの形式にて用意することが好ましい。
【0044】
抽象化三次元モデルB1、B2、B3・・・Bnは、ハードディスク28に記録されたものを読み込んでもよいし、インターネットを介して他の装置から読み込んでもよい。
【0045】
次に、CPU20は、読み込んだ抽象化三次元モデルのうちから、三次元点群データに合致するものを取得する(ステップS3)。この処理の詳細を、
図6に示す。
【0046】
CPU20は、三次元点群データを、ボクセルグリッド(微小立方体)にて区切る(ステップS31)。次に、各ボクセルグリッド内の点について、近似平面を算出する(ステップS32)。
図7に、一つのボクセルグリッドVGを示す。このボクセルグリッドVG内の点Dについて、その近似平面Pを算出する。
【0047】
この近似平面Pの法線ベクトルVを求め、ボクセルグリッドVG内の各点Dにこれを付与する。このようにして求めた各点Dの法線ベクトルに基づいて、三次元点群データを回転させXYZ方向に整列させる(ステップS33)。
【0048】
計測された三次元点群データは、概ねZ軸方向に沿って立ち上がることになる。すなわち、
図4の面S1、面S2などは、Z軸方向に沿うことになる。ただし、計測誤差や、橋脚の傾きなどにより、三次元点群データの面S1、面S2がZ軸に平行にならない場合もある。そこで、面S1、面S2がZ軸に並行になるように三次元点群データを傾ける。
【0049】
この際の処理は以下のとおりである。まず、Z軸にほぼ垂直な法線ベクトルVを持つ点を選択する。これにより、面S1、面S2、面S3(面S1に対向する面)、面S4(面S22に対向する面)の点が選択されることになる。
【0050】
次に、三次元点群データをY軸周り、X軸周りに回転(たとえば-10度~+10度の範囲)させ、上記選択された点の法線ベクトルがZ軸に対して垂直となるような(各法線ベクトルとZ軸の垂直方向との角度誤差の合計が最も小さくなるような)位置を見いだす。
【0051】
上記のように垂直方向への立ち上がりを決めた三次元点群データを、Z軸まわりに回転(たとえば360度)させ、上記選択された点の法線ベクトルがX軸に対して水平(各法線ベクトルとX軸方向との角度誤差の合計が最も小さくなるような)であって、かつ、上記選択された点の法線ベクトルがY軸に対して水平(各法線ベクトルとY軸方向との角度誤差の合計が最も小さくなるような)位置を見いだす。
【0052】
なお、対象物の形状が楕円円柱状であるような場合には、面S1、S2、S3、S4が形成されない。しかし、上記処理を行うことで、楕円の長軸方向がX軸またはY軸に合致するように位置が定まる。また、円柱状の場合には、いずれの位置に定まったとしても後の処理において問題は生じない。
【0053】
以上のようにして、CPU20は、三次元点群データを、XYZ軸方向に整列させる。これにより、三次元点群データは、
図4に示すように、XYZ軸に沿った方向となる。
【0054】
CPU20は、この三次元点群データと形状が最もマッチする抽象化三次元モデルを選択する。その処理は以下のとおりである。
【0055】
CPU20は、三次元点群データを、XY平面、YZ平面、XZ平面に投影し、二次元投影点群データを得る(ステップS34)。
図8に、各面における得られた二次元投影点群データを示す。
図8においては、点のあるエリアを面で示しているが、実際には、点のデータが集合したものである。また、上面、下面は三次元点群データがないため、XY平面においては、ほとんど点が現れていない。
【0056】
一方、
図5に示す抽象化三次元モデルのそれぞれについて、予め、
図9に示すような二次元投影モデルが記録されている。これらの二次元投影モデルは、XYZ軸方向に整列させて二次元平面に投影したものである。抽象化三次元モデルの寸法は可変であるので、可変の際の中心値に基づいて形状を決定し、上記投影を行うようにしている。
【0057】
CPU20は、二次元投影点群データと二次元投影モデルとを比較して(ステップS35)、最も良くマッチングした二次元投影モデル(抽象化三次元モデル)を選択する(ステップS36)。なお、マッチング度合いの算出には、SIFTやSURF等のアルゴリズムで算出した対応点数や、二次元投影点群データと二次元投影モデルの重なり度合い(オーバラップ率)を用いることができる。後者は、たとえば、二次元投影モデルを微小な矩形によって区切りその個数をXとする。これらの矩形のうち、点群データが一つでも存在する矩形の個数をYとする。重なり度合いは、Y/Xとして算出することができる。
【0058】
また、マッチング度合いの高い複数の抽象化三次元モデルを複数提示し、操作者に選択させるようにしてもよい。
【0059】
上記のようにして、抽象化三次元モデルが決定されると、CPU20は、当該抽象化三次元モデルの各寸法を変化させながら、三次元点群データとの適合度合いを算出する(
図3、ステップS4)。
【0060】
たとえば、
図10に示すような抽象化三次元モデルが選択されたものとする。図に示すように、各部分の寸法P1~P6を変えることができるようになっている。また、抽象化三次元モデルと三次元点群データの傾きや位置も合致させる必要があるので、
図13に示すように、X、Y、Z方向への移動量、roll、pitch、yawなどの回転角度、sclaeによる拡大率も変化させるようにしている。
【0061】
図13において、たとえば「P1」であれば、最小0.5mから0.5m刻みに最高4.0mまで8個のパターンを取り得ることが示されている。各パラメータは、二進数にて表現されることになる(必要ビット数参照)。
【0062】
図13に示すように、組合せパターンが多く存在するので、その組合せ数は膨大なものとなり、処理に膨大な時間を要することになる。
【0063】
そこで、この実施形態では、GA(遺伝的アルゴリズム)を用いて、検討を行うようにしている。
図11に、GAを用いた寸法決定のフローチャートを示す。
【0064】
まず、CPU20は、各パラメータについて探索範囲の中からランダムに初期値を選択し、初期集団を生成する(ステップS41)。これにより、全てのパラメータに値が与えられ、三次元モデルが形成されることになる。
【0065】
次に、CPU20は、形成された三次元モデルの全ての面について法線ベクトルを算出する(ステップS42)。
図14Aに、法線ベクトルの例を示す。
図14Aでは、面FP、RSPについてのみ法線ベクトルを示しているが、他の全ての面についても法線ベクトルが生成される。
【0066】
続いて、CPU20は、三次元点群データの点について法線ベクトルを生成する(ステップS44)。ここでは、注目する点の所定範囲内の点により疑似平面を生成し、当該疑似平面の法線ベクトルを、当該注目する点の法線ベクトルとしている。
図14Bに、注目する点の法線ベクトルの例を示す。
【0067】
次に、CPU20は、注目する点の法線ベクトルと、三次元モデルの各面の法線ベクトルとの角度差を算出し、所定角度よりも角度差の小さい面に注目する点を対応付ける(ステップS45)。
【0068】
次に、当該対応づけられた面に対して点から垂線を降ろしてその距離を算出する(ステップS46)。ステップS45において、対応付けられた面が複数ある場合、ステップS46にて算出した距離の小さい方を選択して、点を対応付ける。
【0069】
以上のステップS44~S46の処理を全ての点について行う(ステップS43、S47)。
【0070】
CPU20は、三次元モデルの各面ごとに、対応する点の総数を算出する(ステップS49)。この点の総数が少ない(他の面の点の数の5%以下など)面については、十分な三次元点群データが計測されていない可能性がある。したがって、この適合処理においては、外れ値とし、当該面および点を棄却する(ステップS50)。
【0071】
続いて、CPU20は、三次元モデルと三次元点群データの適合度を算出する(ステップS51)。適合度は、面とこれに対応する点の距離の総和が小さいほど適合度が高いものとしている。この実施形態では、
図15に示すような式により、正規化された適合度Fitnessを算出している。
【0072】
図15において、nは三次元モデルの面数、RMSは点と面との距離の二乗平方根、RMS
minはRMSの最小値、RMS
maxはRMSの最大値、面iのRMSをRMS
iとする。
【0073】
CPU20は、適合度が所定値より小さいかどうかを判断する(ステップS52)。適合度Fitnessが小さいほど、三次元モデルと三次元点群データの合致性が高いことになる。所定値より小さい場合、CPU20は、当該三次元モデルを、三次元点群データに対応する三次元モデルとして決定する(ステップS54)。
【0074】
所定値より大きい場合、CPU20は、GA処理にて、各パラメータのビットを交叉、突然変異などの手法によって変更し、次世代の三次元モデルを生成する(ステップS53)。なお、このGA処理は、遺伝子アルゴリズムにおいて通常用いられている手法を用いることができる。
【0075】
CPU20は、このようにして生成した次世代の三次元モデルについて、ステップS41以下の処理を繰り返す。このようにして、三次元点群データとよくマッチする三次元モデルを得ることができる。
【0076】
CPU20は、このようにして決定した三次元点群モデル(パラメータ値を含む)を出力する(
図3、ステップS5)。
【0077】
この実施形態によれば、三次元点群データが不完全であって、全ての面が測定できていなくとも、完全な三次元モデルを得ることができる。
【0078】
1.3その他
(1)上記実施形態では、遺伝子アルゴリズムを用いて適切な組合せを検討するようにしている。しかし、タブー検索や疑似アニーリング法などを用いるようにしてもよい。また、組合せの数が少ない場合には、全ての組合せを検討するようにしてもよい。
【0079】
(2)上記実施形態では、地物を対象として、三次元点群データから三次元モデルを生成するようにしている。しかし、地物以外の構造物を対象として、三次元点群データから三次元モデルを生成するようにしてもよい。
【0080】
(3)上記実施形態では、ステップS52において適合値が所定値以下になれば、そのパラメータを有する三次元モデルを選択するようにしている。しかし、直ちにそのパラメータにて三次元モデルを選択せず、当該パラメータを中心として、探索ステップを細かくしてパラメータ値を変化させ、より最適なパラメータ(より小さな所定値の適合値になるように)を選択するようにしてもよい。
【0081】
たとえば、
図16に示すように、第2段階では、探索ステップを1/10にしてより細かくパラメータを変化させる。第2段階における探索範囲は、第1段階にて得られた適切値を中心として、探索ステップを細かくし、第1段階と同じ数のパターン数を設定した範囲とする。
【0082】
このようにすることで、より適切なパラメータ値を得ることができる。なお、上記では、第2段階まで行ったが、3段階以上行うようにしてもよい。
【0083】
(4)上記実施形態では、ステップS3において抽象化三次元モデルを選択する際に、二次元投影画像を作成してその類似度により選択するようにしている。しかし、抽象化三次元モデルの面の数と、三次元点群モデルの面の数とを比較して合致するものを選択するようにしてもよい。また、これだけで抽象化三次元モデルを一つに決定できない場合には、上記の二次元投影画像による方法を組み合わせてもよい。また、複数の抽象化三次元モデルをディスプレイに表示し、操作者に選択させるようにしてもよい。
【0084】
この場合のステップS3の詳細なフローチャートを
図17に示す。CPU20は、まず、ボクセルグリッドにて、三次元点群データを区切る(ステップS31)。この処理は、
図6のステップS31と同様である。
【0085】
次に、CPU20は、各ボクセルグリッド内の点から近似平面を算出し、法線ベクトルを算出する。この法線ベクトルを、当該ボクセルグリッド内の全ての点に対して付与する(ステップS32)。この処理は、
図6のステップS32と同様である。
【0086】
続いて、CPU20は、全ての点を対象として、その位置と法線ベクトルによってクラスタリングを行う(ステップS36)。このようなクラスタリングにより、三次元点群データによって表される面の数が示されることになる。
【0087】
次に、CPU20は、算出したクラスタ数と合致する面数を有する抽象化三次元モデルを選択する(ステップS37)。
【0088】
なお、抽象化三次元モデルの面数をクラスタ数とみなして、k-means法を適用して、適合する面数を求めるようにしてもよい。
【0089】
(5)上記実施形態では、用意している抽象化三次元モデルの全てについて三次元点群データとの類似度を判断し、抽象化三次元モデルを選択するようにしている。しかし、抽象化三次元モデルを対象物ごとに種類分けしておき、対象物の種類に応じて、当該種類の抽象化三次元モデルのみを抽出し、その中から三次元点群データに類似するものを選択するようにしてもよい。
【0090】
(6)上記実施形態では、三次元モデル生成装置を、操作者が直接的に操作を行うことのできるコンピュータとして構築した。しかし、端末装置からインターネットなどを介して操作を行うことのできるサーバ装置として構築してもよい。
【0091】
(7)上記実施形態では、ボクセルグリッドを形成し、ボクセルグリッド内の点については全て同じ法線ベクトルを与えるようにしている。しかし、全ての点についてそれぞれ法線ベクトルを与えるようにしてもよい。この場合、法線ベクトルを与える点について、当該点の周囲の所定距離内にある点に基づいて疑似平面を参照し、この法線ベクトルを当該点に与えるようにする。
【0092】
(8)上記実施形態およびその変形例は、その本質に反しない限り、他の実施形態と組み合わせて実施可能である。
【0093】
2.第2の実施形態
2.1システム構成
図18に、第2の実施形態による三次元モデル生成装置10の機能ブロック図を示す。分割手段6は、三次元点群データDDを対象物ごとあるいは対象物の部位ごとに分割する。その際、対象物あるいは部位の名称を与える。
【0094】
抽象化三次元モデル取得手段2は、分割された対象物あるいは部位に対応する抽象化三次元モデルTPを取得する。抽象化三次元モデルTPは、前記対象物の外形に対応する外形を有し、各部分の寸法を変更することのできるようなモデルである。
【0095】
三次元モデル決定手段4は、前記抽象化三次元モデルの寸法を変えながら、前記三次元点群データとの合致性を判断し、合致性の高い抽象化三次元モデルを三次元モデルTMとして出力する。
【0096】
三次元モデル生成装置10のハードウエア構成は、
図2と同様である。
【0097】
2.2三次元モデル生成処理
図19に、三次元モデル生成プログラム38のフローチャートを示す。ここでは、構造物である橋梁全体を対象として、三次元点群データから三次元モデルを生成する場合について説明する。
【0098】
まず、CPU20は、対象物の三次元点群データを取得する(ステップS1)。この三次元点群データは、ハードディスク28に記録されたものを取得してもよいし、インターネットを介して他の装置から取得してもよい。
【0099】
図20に、取得した橋梁の三次元点群データの例を示す。橋梁以外の法面なども含めて三次元点群データが構成されている。
【0100】
次に、CPU20は、この橋梁の三次元点群データを、橋梁を構成する部位ごとの三次元点群データに分割する(ステップS6)。この分割の手法としては、たとえば、
図21に示すように、三次元点群データにおいて各部位(高欄、橋台、主桁・・・)を色分けなどにより明示した学習データを、様々な対象物について多数作成する。
図21においては白黒によって示されているが、左の図面においては高欄の部分のみが赤色で示されており、中央の図面では橋台の部分のみがピンクで示されており、右の図面では主桁の部分のみが緑で示されている。この学習データによって学習したディープラーニングの学習済みモデルによって、与えられた三次元点群データの各部位を推定する。
【0101】
なお、上記のように三次元のデータをディープラーニングにて推定するのは、処理時間を要することになる。そこで、この実施形態では、次のような手法にて、三次元点群データを各部位の三次元点群データに分割するようにしている。
【0102】
この分割処理のフローチャートを
図22に示す。CPU20は、まず、三次元点群データの横断面(横断面点群データ)を生成する(ステップS61)。横断面は、高さ方向に沿う面であり、地物を囲う矩形(バウンダリーボックス)の各面と水平若しくは垂直な面として決定される。
【0103】
次に、この横断面点群データに基づいて、学習済みのディープラーニングのモデルによって各部位の推定を行う(ステップS62)。
図23Aが与えられた三次元点群データであり、
図23Bが推定された各部位である。ここでは、上から、高欄、主桁、橋台に分割されている。
【0104】
ディープラーニングのモデルを学習するためには、多数の地物(対象物)の横断面を生成し、そこに現れた各部位を明示(色分けなどにより)したデータにて学習を行う。各部位の名称は、色分けを行った色によって特定する。
【0105】
続いて、CPU20は、三次元点群データの縦断面(縦断面点群データ)を生成する(ステップS63)。縦断面は、高さ方向に沿う面であり、地物を囲う矩形(バウンダリーボックス)の各面と水平若しくは垂直な面として決定される。
【0106】
次に、この縦断面点群データに基づいて、学習済みのディープラーニングのモデルによって各部位の推定を行う(ステップS64)。学習モデルの生成方法は、横断面と同様である。
【0107】
なお、この実施形態では、断面のうち長さの長い方を縦断面、短い方を横断面としている。
【0108】
さらに、CPU20は、三次元点群データの俯瞰図(俯瞰図点群データ)を生成する(ステップS65)。ここで、俯瞰図の考え方は、
図24に示すとおりである。
図24に示すように、バウンダリーボックスの長軸方向の中央を中心とし、高さ方向に上下に回転する線Lを想定する。なお、線Lによって形成される面(円)は、バウンダリーボックスの矩形の各面と水平または垂直になるように選択される。
【0109】
この線Lに沿うように、投影面を所定個数設ける、たとえば、30度ごとに設けると、12個の投影面が形成されることになる。これらの投影面に三次元点群データを投影し、俯瞰図点群データを得る。
【0110】
CPU20は、この各俯瞰図点群データについて、学習済みのディープラーニングのモデルによって各部位の推定を行う(ステップS66)。学習モデルの生成方法は、横断面と同様である。なお、この実施形態では、角度ごとの投影面ごとに学習済みモデルを形成するのではなく、全ての投影面についてまとめて学習済みモデルを形成するようにしている。もちろん、角度ごとの投影面について学習済みモデルを形成するようにしてもよい。
【0111】
以上のようにして、各断面図、俯瞰図に基づく部位の推定結果を得ることができる。CPU20は、これらを統合して、三次元点群データを各部位に分割する(ステップS67)。
【0112】
なお、この際、各断面図、俯瞰図における部位推定に矛盾がなければ、そのまま推定結果を統合して三次元点群データを各部位に分割する。矛盾がある場合、各図に基づく推定結果につき多数決にて部位を決定する。
【0113】
以上のようにして、
図20に示す三次元点群データが、
図25に示すように、高欄、主桁、橋台の三次元点群データに分割される。
【0114】
以下、このように部位ごとに分割された三次元点群データのそれぞれについて、三次元モデルを生成する(ステップS7、S2、S3、S4)。この処理は、第1の実施形態と同様である。生成した部位ごとの三次元モデルを、ハードディスク28に記録する(ステップS8)。
【0115】
CPU20は、全ての部位について三次元モデルを得た後、これらを統合して橋梁全体の三次元モデルを構築し、これを出力する(ステップS10)。
【0116】
2.3その他
(1)上記実施形態では、一つの地物の三次元点群データにつき、当該地物を構成する部位に分割して三次元モデルを得るようにしている。しかし、複数の地物の三次元点群データから、地物ごとに三次元点群データを分割し、三次元モデルを得るようにしてもよい。
【0117】
(2)上記実施形態では、地物の部位ごとに三次元モデルを構築しているが、地物全体としての抽象化三次元モデルを用意しておき、三次元モデルを構築するようにしてもよい。
【0118】
(3)上記実施形態では、地物を対象として、三次元点群データから三次元モデルを生成するようにしている。しかし、地物以外の構造物を対象として、三次元点群データから三次元モデルを生成するようにしてもよい。
【0119】
(4)上記実施形態では、横断面、縦断面を区別して、学習モデルを構築している。しかし、横断面、縦断面を区別せずに、学習モデルを構築するようにしてもよい。
【0120】
(5)上記実施形態およびその変形例は、その本質に反しない限り、他の実施形態と組み合わせて実施可能である。