(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-06
(45)【発行日】2023-09-14
(54)【発明の名称】三次元モデルデータ生成装置、コンピュータプログラム、及び三次元モデルデータ生成方法
(51)【国際特許分類】
G06T 17/00 20060101AFI20230907BHJP
【FI】
G06T17/00
(21)【出願番号】P 2021201904
(22)【出願日】2021-12-13
【審査請求日】2021-12-13
(73)【特許権者】
【識別番号】593154436
【氏名又は名称】アイサンテクノロジー株式会社
(73)【特許権者】
【識別番号】599002043
【氏名又は名称】学校法人 名城大学
(73)【特許権者】
【識別番号】504139662
【氏名又は名称】国立大学法人東海国立大学機構
(73)【特許権者】
【識別番号】521545400
【氏名又は名称】株式会社マップフォー
(73)【特許権者】
【識別番号】516264082
【氏名又は名称】株式会社ティアフォー
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際弁理士法人
(72)【発明者】
【氏名】目黒 淳一
(72)【発明者】
【氏名】山崎 雄大
【審査官】佐野 潤一
(56)【参考文献】
【文献】特開2003-256871(JP,A)
【文献】特開2000-176165(JP,A)
【文献】特開2012-256230(JP,A)
【文献】特開2018-005819(JP,A)
【文献】特開2016-218694(JP,A)
【文献】特開2010-287156(JP,A)
【文献】中国特許出願公開第112927366(CN,A)
【文献】特開2003-316256(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 15/00-19/00
G01C 7/00
G01C 11/00
G01C 15/00
G09G 5/00
B60R 1/00
B60R 11/00
B60R 21/00
(57)【特許請求の範囲】
【請求項1】
三次元点群により路面を含む地表上の三次元形状を表し、前記三次元点群における各点の三次元座標を記述する点群データを取得する取得部と、
前記点群データに基づき、前記三次元点群を、前記路面に対応する第一の点群と、前記第一の点群以外の第二の点群とに分離する分離部と、
前記第一の点群を平面要素の一群に変換し、前記第二の点群を立体要素の一群に変換することによって、前記平面要素の一群により前記路面の形状を表し、前記立体要素の一群により路面以外の形状を表す三次元モデルデータを生成する生成部と、
を備え
、
前記立体要素のそれぞれは、三角柱の立体要素であり、
前記三次元モデルデータは、前記立体要素のそれぞれの6頂点及び3面を定義するデータを備える三次元モデルデータ生成装置。
【請求項2】
前記平面要素のそれぞれは、四角形の平面要素であり、
前記三次元モデルデータは、前記平面要素のそれぞれの4頂点及び1面を定義するデータを備える請求項1記載の三次元モデルデータ生成装置。
【請求項3】
請求項1
又は請求項2記載の三次元モデルデータ生成装置が備える前記取得部と、前記分離部と、前記生成部としての機能をコンピュータに実現させるためのコンピュータプログラム。
【請求項4】
コンピュータによって実行される三次元モデルデータ生成方法であって、
三次元点群により路面を含む地表上の三次元形状を表し、前記三次元点群における各点の三次元座標を記述する点群データを取得することと、
前記点群データに基づき、前記三次元点群を、前記路面に対応する第一の点群と、前記第一の点群以外の第二の点群とに分離することと、
前記第一の点群を平面要素の一群に変換し、前記第二の点群を立体要素の一群に変換することによって、前記平面要素の一群により前記路面の形状を表し、前記立体要素の一群により路面以外の形状を表す三次元モデルデータを生成することと、
を含
み、
前記立体要素のそれぞれは、三角柱の立体要素であり、
前記三次元モデルデータは、前記立体要素のそれぞれの6頂点及び3面を定義するデータを含む三次元モデルデータ生成方法。
【請求項5】
前記平面要素のそれぞれは、四角形の平面要素であり、
前記三次元モデルデータは、前記平面要素のそれぞれの4頂点及び1面を定義するデータを含む請求項4記載の三次元モデルデータ生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、三次元モデルデータ生成装置及び三次元モデルデータ生成方法に関する。
【背景技術】
【0002】
路面、及び、その他の地表上のオブジェクトを、三次元点群により表す三次元点群地図データが知られている(例えば、非特許文献1参照)。地表上のオブジェクトには、自然物の他、建造物等の人工物が含まれる。三次元点群地図データは、例えば面情報を含む三次元モデルデータに変換されて、使用される。
【0003】
三次元モデルデータは、例えば車両の自動運転検証用のシミュレータ、特にはレーザレーダから発射される光のトレーシングを含むLiDAR(Light Detection and Ranging)シミュレーションに使用される。
【0004】
三次元モデルデータの生成に際し、三次元点群は、例えば立方体のボクセルの一群に変換される。この変換により、三次元点群地図データから、路面及びその他の地表上のオブジェクトに関する面情報を有する三次元モデルデータが生成される。
【0005】
あるいは、三次元点群地図データは、ポアソン表面再構築(Poisson Surface Reconstruction)及びボールピボットアルゴリズム(BPA:Ball Pivoting Algorithm)等の表面再構築技術を用いた三次元点群のメッシュ化により、面情報が付加された三次元モデルデータに変換される。
【先行技術文献】
【非特許文献】
【0006】
【文献】橘川 雄樹、外4名、「自動運転実証実験:位置推定精度の検証」、国際交通安全学会誌、vol.42,No.2,pp.48-53、[online]、平成29年10月、[令和3年8月10日検索]、インターネット<URL: http://www.iatss.or.jp/common/pdf/publication/iatss-review/42-2-06.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記表面再構築技術を用いたメッシュ化による三次元モデルデータの生成技術によれば、三次元形状の表面を滑らかに表現した三次元モデルデータを生成することができる。一方、この技術によれば、三次元モデルデータの生成に係る処理負荷が大きく、データ生成に要するプロセッサの演算時間が長い。
【0008】
三次元点群のボクセル化による三次元モデルデータの生成技術によれば、上記メッシュ化による三次元モデルデータの生成技術と比較して、三次元モデルの生成に係る処理負荷を小さくすることができ、データ生成に要するプロセッサの演算時間を短くすることができる。一方、この技術によれば、点を、8頂点6面のボクセルに変換することから、三次元モデルデータのデータ量が大きく、必要なメモリ量が多い。
【0009】
そこで、本開示の一側面によれば、三次元点群データから、面情報を含む三次元モデルデータを、高速にかつ少ないデータ量で生成可能な技術を提供できることが望ましい。
【課題を解決するための手段】
【0010】
本開示の一側面に係る三次元モデルデータ生成装置は、取得部と、分離部と、生成部とを備える。取得部は、三次元点群により路面を含む地表上の三次元形状を表す点群データを取得する。点群データは、三次元点群における各点の三次元座標を記述する。
【0011】
分離部は、点群データに基づき、三次元点群を、路面に対応する第一の点群と、第一の点群以外の第二の点群とに分離する。生成部は、第一の点群を平面要素の一群に変換し、第二の点群を立体要素の一群に変換することによって、平面要素の一群により路面の形状を表し、立体要素の一群により路面以外の形状を表す三次元モデルデータを生成する。
【0012】
路面に対応する第一の点群を平面要素の一群に変換して、面情報を有する三次元モデルデータを生成する場合には、第一の点群及び第二の点群を含む点群全体を一律に、8頂点6面の立体要素に変換するよりも、三次元モデルデータのデータ量を抑えることができ、三次元モデルデータの記憶に必要なメモリ量を低減することができる。
【0013】
この変換技術によれば更に、メッシュ化による三次元モデルデータの生成技術と比較して、三次元モデルデータ生成装置の処理負荷を抑えることができる。従って、本開示の一側面によれば、三次元点群データから、面情報を含む三次元モデルデータを、高速にかつ少ないデータ量で生成可能な三次元モデルデータ生成装置を提供することができる。
【0014】
本開示の一側面によれば、平面要素のそれぞれは、四角形の平面要素であり得る。三次元モデルデータは、平面要素のそれぞれの4頂点及び1面を定義するデータを備え得る。
【0015】
本開示の一側面によれば、立体要素のそれぞれは、三角柱の立体要素であり得る。三次元モデルデータは、立体要素のそれぞれの6頂点及び3面を定義するデータを備え得る。三角柱の立体要素が用いられる場合には、立方体又は四角柱の立体要素が用いられる場合と比較して、三次元モデルデータのデータ量を更に抑えることができる。
【0016】
本開示の一側面によれば、三次元モデルデータ生成装置が備える取得部と、分離部と、生成部としての機能を少なくとも部分的にコンピュータに実現させるためのコンピュータプログラムが提供されてもよい。コンピュータプログラムは、コンピュータ読取可能な一時的ではない記録媒体に記録され得る。
【0017】
本開示の一側面によれば、三次元モデルデータ生成方法が提供されてもよい。三次元モデルデータ生成方法は、コンピュータにより実行され得る。
【0018】
三次元モデルデータ生成方法は、三次元点群により路面を含む地表上の三次元形状を表し、三次元点群における各点の三次元座標を記述する点群データを取得することと、点群データに基づき、三次元点群を、路面に対応する第一の点群と、第一の点群以外の第二の点群とに分離することと、第一の点群を平面要素の一群に変換し、第二の点群を立体要素の一群に変換することによって、平面要素の一群により路面の形状を表し、立体要素の一群により路面以外の形状を表す三次元モデルデータを生成することとを含み得る。
【0019】
この三次元モデルデータ生成方法によれば、三次元モデルデータ生成装置と同様に、三次元点群データから、面情報を含む三次元モデルデータを、高速にかつ少ないデータ量で生成可能である。
【図面の簡単な説明】
【0020】
【
図1】三次元モデルデータ生成装置の構成を表すブロック図である。
【
図2】プロセッサが実行するデータ生成処理を表すフローチャートである。
【
図4】三次元モデルデータの簡単な例を示す図である。
【発明を実施するための形態】
【0021】
以下に本開示の例示的実施形態を、図面を参照しながら説明する。
図1に示す本実施形態の三次元モデルデータ生成装置1は、汎用の情報処理装置に、当該情報処理装置を三次元モデルデータ生成装置1として機能させるためのコンピュータプログラム(以下、三次元モデルデータ生成プログラムPRという。)がインストールされて構成される。
【0022】
三次元モデルデータ生成装置1は、
図1に示すように、プロセッサ11と、メモリ13と、ストレージ15と、表示部17と、操作部19と、データ入出力部21と、を備える。プロセッサ11は、ストレージ15に格納されたコンピュータプログラムに従う処理を実行する。メモリ13は、RAMを備え、プロセッサ11による処理実行時に作業用メモリとして使用される。
【0023】
ストレージ15は、ハードディスクドライブ又はソリッドステートドライブにより構成され、コンピュータプログラム、及び、コンピュータプログラムに従う処理の実行時に使用される各種データを記憶する。ストレージ15は、三次元モデルデータ生成プログラムPRを記憶する。
【0024】
表示部17は、プロセッサ11により制御されて、三次元モデルデータ生成装置1を操作するユーザに対し、各種情報を表示するように構成される。表示部17は、例えば液晶ディスプレイを含む。
【0025】
操作部19は、三次元モデルデータ生成装置1に対するユーザからの操作信号をプロセッサ11に入力するように構成される。操作部19は、例えばキーボード及びポインティングデバイスを含む。
【0026】
データ入出力部21は、外部からのデータ入力及び外部へのデータ出力に使用される。データ入出力部21は、例えば有線又は無線により外部機器と通信する通信インタフェースを備えることができる。データ入出力部21は、USBメモリに対するデータの読込及び書込が可能なUSBインタフェースを備えることができる。データ入出力部21は、カード型の記録メディアに対するデータの読込及び書込が可能なメディアリーダ/ライタを備えることができる。
【0027】
プロセッサ11は、三次元モデルデータの生成指令が操作部19を介してユーザから入力されると、ストレージ15が記憶する三次元モデルデータ生成プログラムPRに従うデータ生成処理(
図2参照)を実行する。
【0028】
図2に示すデータ生成処理を開始すると、プロセッサ11は、指定場所から、三次元モデルデータの生成対象である三次元点群地図データを取得する(S110)。三次元点群地図データは、例えば、通信により外部機器から取得される。あるいは、三次元点群地図データは、USBメモリ又はその他の記録メディアから読み込まれる。
【0029】
三次元点群地図データは、所定地域の三次元形状、具体的には路面及び路面以外の地表上のオブジェクトの三次元形状(特に外形)を、三次元点群で表す点群データである。上記オブジェクトには、建造物等の人工物、及び、草木等の自然物が含まれる。
【0030】
三次元点群地図データは、三次元点群を構成する各点の三次元座標を記述する。三次元点群地図データは、例えば、車両に搭載されたレーザレーダ等の計測機器を用いて作成される。この場合、三次元点群地図データは、車両の走行道路に対応する路面及びその周囲の地表上のオブジェクトの三次元形状を三次元点群で表すデータとして構成され得る。
【0031】
三次元点群地図データは、例えば、PCD(Point Cloud Data)形式の点群データとして用意される。PCD形式の点群データは、三次元点群を構成する各点の位置を、三次元座標(x,y,z)で記述する。
【0032】
PCD形式の点群データは、更に各点の法線ベクトルの情報を有し得る。すなわち、三次元点群地図データは、三次元点群における各点の三次元座標及び法線ベクトルを記述する点群データであってもよい。
【0033】
S110の処理後、プロセッサ11は、取得した三次元点群地図データに対するフィルタリング処理により、三次元点群の点数を低減するように、三次元点群地図データを加工する(S120)。
【0034】
具体的には、プロセッサ11は、三次元点群を備える三次元座標空間を所定サイズのグリッドにより区画化し、グリッドセル毎に一つの代表点を配置し、残りの点を削除するように、三次元点群地図データを加工することができる(S120)。代表点は、対応するグリッドセル内の点群の重心に対応し得る。
【0035】
従って、フィルタリング処理後の三次元点群地図データは、上記三次元座標空間において、点群を構成する各点がグリッドセルに対応する間隔で配置された点群データとして構成され得る。間隔は、例えば実空間での20cmに対応する間隔であり得る。
【0036】
例えば、フィルタリング処理後の三次元点群地図データは、三次元座標空間を実空間相当で20cmのグリッドにより区画化したときの、20cmの立方体のグリッドセル毎に代表点が定められ、その他の点群が除去された点群データであり得る。
【0037】
続くS130において、プロセッサ11は、フィルタリング処理後の三次元点群地図データが示す三次元点群のセグメンテーションを行う。すなわち、プロセッサ11は、三次元点群を、路面に対応する特徴を示す第一の点群PG1と、それ以外の第二の点群PG2とに分離する。この分離は、例えばポイントクラウドライブラリ(PCL)を用いて実現可能である。
【0038】
三次元点群全体の中で、鉛直方向において最下部に位置する比較的平坦に並ぶ点群は、路面に対応する特徴を示す。第二の点群PG2には、路面以外の地表上のオブジェクトを表す点群が含まれる。
【0039】
S130の処理によって、三次元点群地図データからは、第一の点群PG1を構成する各点P1の三次元座標を記述する第一の点群データ、及び、第二の点群PG2を構成する各点P2の三次元座標を記述する第二の点群データが生成される。第一の点群データ及び第二の点群データのいずれも、上述した三次元点群地図データと同様に、PCD形式の点群データであり得る。
【0040】
続くS140において、プロセッサ11は、第一の点群データに基づき、第一の点群PG1を構成する各点P1を平面要素E1に変換することによって、路面の形状を表す面情報を有する第一の形状モデルデータを生成する。
【0041】
S140において、プロセッサ11は、第一の点群PG1における一つの点P1に対し、一つの平面要素E1を割り当てるように、第一の形状モデルデータを生成する。例えば、
図3に示す三次元点群のうち、路面に対応する第一の点群PG1の各点P1を、
図4に示す平面要素E1に変換するように、第一の形状モデルデータを生成する。
【0042】
平面要素E1は、具体的には、4頂点及び1面を有する四角形、特には正方形の平面要素であり得る。プロセッサ11は、例えば、第一の点群PG1を構成する点P1のそれぞれを、この点の法線ベクトルに対応する法線を有する面を含む平面要素E1に変換することによって、第一の形状モデルデータを生成する。平面要素E1は、例えばフィルタリング処理(S120)で用いられたグリッドセルに対応する大きさの平面要素であり得る。
【0043】
第一の形状モデルデータは、平面要素E1毎に、対応する平面要素E1を定義するデータとして、4頂点の三次元座標と、4頂点が面を構成することを定義する記述と、を含む。形状モデルデータは、例えばOBJ形式のデータとして構成される。
【0044】
続くS150において、プロセッサ11は、第二の点群データに基づき、第二の点群PG2を構成する各点P2を立体要素E2に変換することによって、路面以外の地表上のオブジェクトの形状を表す面情報を有する第二の形状モデルデータを生成する。
【0045】
S150において、プロセッサ11は、第二の点群PG2における一つの点に対し、一つの立体要素E2を割り当てるように、第二の形状モデルデータを生成する。例えば、
図3に示す三次元点群のうち、路面以外の地表上のオブジェクトに対応する第二の点群PG2における各点P2を、
図4に示す立体要素E2に変換するように、第二の形状モデルデータを生成する。
【0046】
立体要素E2は、具体的には、三角柱の立体要素であり、特には、6頂点及び3面を有する三角柱の立体要素である。3面は、三角柱における水平面(すなわちxy平面)に平行な法線を有する3つの側面であり得る。すなわち、立体要素E2は、3つの側面を含む三角柱の立体要素であり得て、鉛直方向(すなわちz方向)に平行な法線を有する上下面を含まない立体要素であり得る。
【0047】
プロセッサ11は、例えば、第二の点群PG2を構成する点P2のそれぞれを、この点P2の法線ベクトルに対応する方向を向く側面を有する立体要素E2に変換し、第二の形状モデルデータを生成する。立体要素E2は、例えばフィルタリング処理(S120)で用いられたグリッドセルに対応する大きさの立体要素E2であり得る。
【0048】
第二の形状モデルデータは、立体要素E2毎に、対応する立体要素E2を定義するデータとして、立体要素E2に含まれる6頂点の三次元座標と、3側面のそれぞれを4頂点の組合せにより定義する記述と、を含む。第二の形状モデルデータも第一の形状モデルデータと同様に、例えばOBJ形式のデータとして構成される。
【0049】
続くS160において、プロセッサ11は、上記第一及び第二の形状モデルデータの組合せを、三次元点群地図データに対応する三次元モデルデータとして出力する。この三次元モデルデータは、三次元点群に対応する三次元形状に面情報を付加したデータに対応する。
【0050】
S160において、プロセッサ11は、三次元モデルデータを、例えばストレージ15に保存する。あるいは、プロセッサ11は、三次元モデルデータを、シミュレータに出力することができる。
【0051】
シミュレータの例には、自動運転向けのマルチロボットシミュレータが含まれる。対応するシミュレータとしては、LGSVLシミュレータが知られている。この種のシミュレータは、例えば、三次元モデルデータにより定義される車両の走行環境に対応する仮想的な三次元座標空間の中で複数の車両を走行させて、自動運転アルゴリズムを検証するのに使用される。
【0052】
以上に説明した本実施形態の三次元モデルデータ生成装置1によれば、三次元点群に対応する三次元形状に面情報を付加した三次元モデルデータを、少ないプロセッサ11の処理負荷で、且つ、少ないデータ量で、効率的に生成することができる。
【0053】
例えば、三次元点群を、路面に対応する第一の点群PG1と、第一の点群PG1以外の第二の点群PG2とに分離せず、三次元点群を構成する各点を一律に、8頂点6面の立方体の立体要素(いわゆるボクセル)に変換する第一の比較例を考える。
【0054】
第一の比較例によれば、LiDAR技術を用いた自動運転アルゴリズムの検証に重要ではない面情報が立体要素に多く含まれるため、三次元モデルデータのデータ量が不必要に大きくなりがちである。
【0055】
一方、ポアソン表面再構築及びボールピボットアルゴリズム等の表面再構築技術を用いて、面情報を付加した三次元モデルデータを生成する第二の比較例を考える。第二の比較例によれば、三次元形状の表面を滑らかに且つ高精度に表現した三次元モデルデータを生成することができるものの、プロセッサ11の処理負荷が大きく、三次元モデルデータの生成に時間を要する。
【0056】
上述のシミュレータで三次元モデルデータを使用することを考えた場合、三次元モデルデータは、対応する空間における路面や地表上のオブジェクトの表面を、LiDARを用いた自動運転の検証に必要な精度で表すことができればよい。
【0057】
このような精度の観点で見た場合、第一の比較例によれば、検証精度に対する影響が小さい面の情報が多く、三次元モデルデータのデータ量に無駄が多い。第二の比較例によれば、三次元モデルデータにおける面情報の正確性に関するメリットよりも、三次元モデルデータの生成に時間を要するデメリットのほうが、ユーザにとっては大きい可能性がある。特に、三次元点群地図データが、広範囲の地域に関する点群データであり、そのデータ量が巨大であるとき、処理負荷及びデータ生成時間の低減に係るメリットは、ユーザにとって非常に大きい。
【0058】
本実施形態によれば、第一の点群PG1を4頂点1面の平面要素E1の一群に変換し、第二の点群PG2を6頂点3面の三角柱要素の一群に変換するので、第一の点群PG1及び第二の点群PG2に分けずに、各点を8頂点6面の立体要素に変換する第一の比較例と比べて、三次元モデルデータのデータ量を抑制することができ、三次元モデルデータの記憶に必要なメモリ量を抑えることができる。
【0059】
更に言えば、地表上のオブジェクトを立方体又は四角柱の立体要素よりも面数の少ない三角柱の立体要素E2の一群に変換するため、第二の点群PG2だけに注目しても、三次元モデルデータの記憶に必要なメモリ量を低減することができる。
【0060】
更に言えば、本実施形態では、面情報を規定形状の平面要素E1及び立体要素E2を用いて付加しているため、ポアソン表面再構築及びボールピボットアルゴリズムを用いた表面再構築技術と比較して、少ない処理負荷で高速に面情報を有する三次元モデルデータを生成することが可能である。
【0061】
従って、本実施形態によれば、三次元点群地図データから、面情報を含む三次元モデルデータを、高速にかつ少ないデータ量で生成可能である。
【0062】
本開示が、上記実施形態に限定されるものではなく、種々の態様を採り得ることは言うまでもない。平面要素E1は、四角形でなくてもよく、三角形や五角形等の多角形の形状を呈していていもよいし、非多角形の形状を呈していてもよい。立体要素E2もまた、三角柱でなくてもよく、四角柱、立方体、その他の立体形状を呈していてもよい。
【0063】
本開示の技術は、自動運転アルゴリズム検証用のシミュレータ向けの三次元モデルデータの生成装置に限定されるものではなく、点群データに基づいて、面情報を含む三次元モデルデータを生成する様々なシステムに適用可能である。
【0064】
上記実施形態における1つの構成要素が有する機能は、複数の構成要素に分散して設けられてもよい。複数の構成要素が有する機能は、1つの構成要素に統合されてもよい。上記実施形態の構成の一部は、省略されてもよい。上記実施形態の構成の少なくとも一部は、他の上記実施形態の構成に対して付加又は置換されてもよい。特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【符号の説明】
【0065】
1…三次元モデルデータ生成装置、11…プロセッサ、13…メモリ、15…ストレージ、17…表示部、19…操作部、21…データ入出力部、E1…平面要素、E2…立体要素、PG1…第一の点群、PG2…第二の点群、PR…三次元モデルデータ生成プログラム。