(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-04
(45)【発行日】2024-03-12
(54)【発明の名称】ポイントクラウドの着色において使用される方法及びシステム
(51)【国際特許分類】
G06T 19/20 20110101AFI20240305BHJP
G06T 7/80 20170101ALI20240305BHJP
【FI】
G06T19/20
G06T7/80
(21)【出願番号】P 2020561061
(86)(22)【出願日】2019-04-30
(86)【国際出願番号】 AU2019050393
(87)【国際公開番号】W WO2019210360
(87)【国際公開日】2019-11-07
【審査請求日】2022-02-14
(32)【優先日】2018-05-01
(33)【優先権主張国・地域又は機関】AU
(73)【特許権者】
【識別番号】590003283
【氏名又は名称】コモンウェルス サイエンティフィック アンド インダストリアル リサーチ オーガナイゼーション
(74)【代理人】
【識別番号】100169904
【氏名又は名称】村井 康司
(74)【代理人】
【識別番号】100216150
【氏名又は名称】香山 良樹
(72)【発明者】
【氏名】パヴェル ヴェチョルスキー
(72)【発明者】
【氏名】マーク コックス
(72)【発明者】
【氏名】パウロ ボルジェス
(72)【発明者】
【氏名】トーマス ロウ
(72)【発明者】
【氏名】マイケル ボッセ
【審査官】▲高▼橋 真之
(56)【参考文献】
【文献】特開2013-069235(JP,A)
【文献】米国特許出願公開第2018/0096525(US,A1)
【文献】特開2015-176412(JP,A)
【文献】特開2002-031528(JP,A)
【文献】Sagi Katz, Ayellet Tal, Ronen Basri,Direct Visibility of Point Sets,ACM Transactions on Graphics,米国,2007年07月31日,Vol. 26, No. 3, Article 24
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/20
G06T 7/80
(57)【特許請求の範囲】
【請求項1】
環境の3次元(3D)ポイントクラウドの着色において使用される方法であって、1つ又は複数の電子処理装置内において、
a)マッピング装置によってキャプチャされた幾何学的データを使用して、
i)前記環境の3Dポイントクラウドを決定し、及び
ii)マッピング装置軌跡を決定する、
ステップと、
b)カメラ軌跡に沿って移動するカメラによってキャプチャされた前記環境のビデオ記録を示すビデオデータを取得するステップであって、前記ビデオデータは、いくつかのフレームを含む、ステップと、
を含み、
c)複数のフレームのそれぞれについて、
i)前記カメラのすぐ近傍におけるシーンをキャプチャするローカルポイントクラウドを決定することによって、前記フレーム内の前記ポイントクラウドの少なくともいくつかの3Dポイントを識別し、可視性チェックは、特定のフレームの前記カメラの視点から見える前記ローカルポイントクラウド内のポイントを決定するために前記ローカルポイントクラウドに対して実行される、ステップと、及び
ii)前記ビデオデータから抽出された前記フレーム内の対応するピクセルの色を使用して、少なくともいくつかの前記3Dポイントに対する候補色を決定するステップと、
を含み、
d)候補色を使用して、前記3Dポイントクラウドの1つ又は複数のポイントに色を割り当て、少なくとも1つのポイントは、複数のフレームから取得された候補色を使用して色を割り当てられる、ステップと、
を含む、方法。
【請求項2】
前記ローカルポイントクラウドを決定するステップは、
a)カメラポーズの前方軸を決定し、
b)前記前方軸に沿って第1のポイントを所定の距離に投影し、
c)
i)前記ローカルポイントクラウドに含めるための前記第1のポイントの前記所定の距離内にあるすべてのポイント、及び
ii)前記ローカルポイントクラウドに含めるための前記第1のポイントの前記所定の距離内にあるビン内に含まれるすべてのポイントであって、低解像度のビンにセグメント化されているポイント、
の1つを選択する、
ことにより、前記カメラの近傍ポイントを抽出するステップを含む、
請求項1に記載の方法。
【請求項3】
前記可視性チェックは、
a)前記ローカルポイントクラウドを、原点に前記カメラがある座標系に変換するステップと、
b)前記カメラに最も近いポイントが、前記カメラから最も遠いポイントに反射されるように、球面反射カーネルを前記ローカルポイントクラウド内の少なくともいくつかの前記ポイントに適用するステップと、
c)その反射が、前記反射されたポイントクラウドの凸包のメンバである場合に、ポイントを可視として分類するステップと、
を含む、
請求項1又は2に記載の方法。
【請求項4】
a)前記ローカルポイントクラウドは、前記可視性チェックを実行する前にダウンサンプリングされる、及び、
b)前記ローカルポイントクラウドは、前記ローカルポイントクラウドをビンにセグメント化することによって、前記可視性チェックを実行する前にダウンサンプリングされ、それぞれのビンからの少なくとも1つのポイントは、前記可視性チェックで使用される、
の内の少なくとも一方である、
請求項1から3のいずれか一項に記載の方法。
【請求項5】
それぞれのフレームに対応する可視3Dポイントは、前記3Dポイントを2D画像座標に変換することによって前記フレーム内に投影され、
前記フレーム内のそれぞれの2D画像座標について、
a)前記2D画像座標で前記3Dポイントの前記候補色を抽出するステップと、
b)前記候補色を、平均色を前記3Dポイントに割り当てるために使用される累積色選択アルゴリズムに提供するステップと、
を含む、
請求項1から4のいずれか一項に記載の方法。
【請求項6】
a)前記累積色選択アルゴリズムの出力は、色割当において使用されるロバスト移動平均である、及び、
b)前記累積色選択アルゴリズムは、ガウス重み付け関数を使用して反復的に再重み付けされた最小二乗ロバスト平均の1回の反復の累積近似である、
の内の少なくとも一方である、
請求項5に記載の方法。
【請求項7】
前記累積色選択アルゴリズムが、ガウス重み付け関数を使用して反復的に再重み付けされた最小二乗ロバスト平均の1回の反復の累積近似であるとき、
a)3Dポイントの第1の候補色について、
i)前記第1の候補色で移動平均を初期化するステップと、
ii)初期共分散行列で移動共分散を初期化するステップと、
iii)移動重みを初期化するステップと、
を含み、
b)前記3Dポイントのそれぞれの後続の候補色について、
i)現在の平均を決定するステップと、
ii)現在の共分散を決定するステップと、
iii)前記現在の平均及び現在の共分散を使用して、前記後続の色候補の尤度を決定するステップと、
iv)前記尤度によって前記後続の候補色を乗算し、且つ結果を前記移動平均に加算するステップと、
v)前記後続の候補色と前記現在の平均との差を決定するステップと、
vi)前記尤度によって前記差の外積を乗算し、且つ結果を前記移動共分散に加算するステップと、
vii)前記尤度を前記移動重みに加算するステップと、
viii)前記移動重みによって前記移動平均を除算することにより、推定平均を決定するステップと、
を含む、
請求項6に記載の方法。
【請求項8】
いくつかのフレームについて、前記フレーム内の可視3Dポイントのサブセットのみが着色され、いくつかのポイントは、以前に処理されたフレームにおけるそれらの可観測性の品質に少なくとも部分的に基づいて除去される、
請求項4から7のいずれか一項に記載の方法。
【請求項9】
3Dポイントのそれぞれの候補色は、現在の視点に対する前記ポイントの深度に反比例する重みによってスケーリングされ、
それぞれのポイントの累積重みは、前記ポイントが、後続のフレームで着色されるポイントを取得するために使用される空間ルックアップテーブルから除去されるべきであるかどうかを決定する際に使用される、
請求項8に記載の方法。
【請求項10】
複数のフレームから取得された候補色を使用して、前記色を前記3Dポイントクラウドの1つ又は複数のポイントに割り当てるステップは、それぞれの3Dポイントが位置する表面に対する視点の間の角度を決定し、且つ前記角度が90°に最も近い前記3Dポイントに対応する色を使用して色を割り当てるステップを含む、
請求項1から9のいずれか一項に記載の方法。
【請求項11】
前記フレーム内の前記ポイントクラウドの少なくともいくつかの3Dポイントは、前記カメラの位置に少なくとも部分的に基づくものである、
請求項1から10のいずれか一項に記載の方法。
【請求項12】
フレームに対する前記カメラの前記位置は、前記フレームのキャプチャの時点を示すタイミング情報に基づいて決定される、
請求項11に記載の方法。
【請求項13】
前記タイミング情報は、キャプチャされたビデオデータと、前記マッピング装置軌跡との時間的同期に基づくものである
、
請求項12に記載の方法。
【請求項14】
フレームに対する前記カメラの前記位置は、マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータに基づくものである、
の内の少なくとも一方である、
請求項12に記載の方法。
【請求項15】
a)マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータを決定するステップ、
を含み、
b)複数のフレームのそれぞれについて、
i)前記フレームのキャプチャの時点を示すタイミング情報を決定するステップと、
ii)前記マッピング装置軌跡、前記タイミング情報及び前記カメラ外部パラメータを使用して、前記カメラ軌跡に沿って前記カメラの位置を決定するステップと、
を含み、
c)前記カメラの前記位置に少なくとも部分的に基づいて、前記フレーム内の前記ポイントクラウドの少なくともいくつかの3Dポイントを識別するステップ、
を含む、
請求項1から
14のいずれか一項に記載の方法。
【請求項16】
タイミング情報を決定するステップは、キャプチャされたビデオデータを前記マッピング装置軌跡と時間的に同期させるステップを含む、
請求項
15に記載の方法。
【請求項17】
a)前記キャプチャされたビデオデータは、前記ビデオデータ及びマッピング装置から取得されたヨー速度を相関させることにより、前記マッピング装置軌跡と時間的に同期される、及び、
b)前記キャプチャされたビデオデータは、前記ビデオデータから前記ヨー速度を取得するステップによって前記ビデオデータ及びマッピング装置から取得されたヨー速度を相関させることにより、前記マッピング装置軌跡と時間的に同期され、前記ビデオデータから前記ヨー速度を取得するステップは、連続的なフレームのペアについて、
i)ピクセルの移動を追跡するためにオプティカルフローを使用するステップと、
ii)前記オプティカルフローから前記カメラのポーズの変化を判定するステップと、
iii)前記ポーズの変化から前記ヨー速度を決定するステップと、
を含む、
の内の少なくとも一方である、
請求項
16に記載の方法。
【請求項18】
a)前記ヨー速度を決定するステップ前に、前記カメラの前記ポーズは、前記カメラ外部パラメータを使用して前記マッピング装置座標系に変換される、及び、
b)
i)滑らかに変化する関数を、前記ビデオデータから取得された前記ヨー速度に適用するステップと、
ii)前記マッピング装置によって記録された前記幾何学的データから前記ヨー速度を抽出するステップと、
iii)前記マッピング装置によって記録された前記幾何学的データの前記ヨー速度のサンプリング周波数で、前記ビデオデータから取得された前記ヨー速度をリサンプリングするステップと、
iv)前記ビデオデータから取得された前記リサンプリングされたヨー速度を前記幾何学的データからの前記ヨー速度と相関させるステップと、
をさらに含む、
の内の少なくとも一方である、
請求項
17に記載の方法。
【請求項19】
a)前記マッピング装置から取得された前記ヨー速度は、慣性計測ユニット(IMU)の計測値から決定される、及び、
b)前記複数のフレームのそれぞれについて、前記カメラの前記位置を決定するステップは、
i)前記フレームに対して前記マッピング装置の補間されたポーズを提供するために、前記タイミング情報を使用して前記フレームのタイムスタンプで前記マッピング装置軌跡を補間するステップと、
ii)前記フレームに対応するカメラポーズを決定するために、前記マッピング装置の前記補間されたポーズに前記カメラ外部パラメータを適用するステップと、
を含む、
の内の少なくとも一方である、
請求項
17又は
18に記載の方法。
【請求項20】
環境の3次元(3D)ポイントクラウドの着色において使用されるシステムであって、
a)マッピング装置によってキャプチャされた幾何学的データを使用して、
i)前記環境の3Dポイントクラウドを決定し、及び
ii)マッピング装置軌跡を決定し、
b)カメラ軌跡に沿って移動するカメラによってキャプチャされた前記環境のビデオ記録を示すビデオデータを取得し、前記ビデオデータは、複数のフレームを含む、
ように構成された1つ又は複数の電子処理装置を含み、
c)複数のフレームのそれぞれについて、前記1つ又は複数の電子処理装置は、
i)前記カメラのすぐ近傍におけるシーンをキャプチャするローカルポイントクラウドを決定することによって、前記フレーム内の前記ポイントクラウドの少なくともいくつかの3Dポイントを識別し、可視性チェックは、特定のフレームの前記カメラの視点から見える前記ローカルポイントクラウド内のポイントを決定するために前記ローカルポイントクラウドに対して実行され、及び
ii)前記ビデオデータから抽出された前記フレーム内の対応するピクセルの色を使用して、少なくともいくつかの前記3Dポイントに対する候補色を決定する、
ように構成され、
d)候補色を使用して、前記3Dポイントクラウドの1つ又は複数のポイントに色を割り当て、少なくとも1つのポイントは、複数のフレームから取得された候補色を使用して色を割り当てられる、
ように構成された前記1つ又は複数の電子処理装置を含む、システム。
【請求項21】
a)前記幾何学的データをキャプチャするように構成されたマッピング装置、
b)光撮像、検出及び測距(LiDAR)センサを使用するマッピング装置、
及び
c)
i)携帯されるか、
ii)空中プラットフォームに取り付けられるか、及び
iii)地上プラットフォームに取り付けられるか、
の内の1つであるマッピング装置、
の内の少なくとも1つを含む、
請求項
20に記載のシステム。
【請求項22】
前記環境のビデオ記録を取得するように構成されたカメラ、を含む、
請求項20又は21に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ポイントクラウドの着色において使用される方法及びシステムに関し、且つ一例では、3Dマッピング装置及びカメラなどの撮像装置を使用して取得されたデータを融合することにより、ポイントクラウドを着色する方法及びシステムに関する。
【背景技術】
【0002】
任意の以前の刊行物(若しくはそれから導出された情報)又は既知の任意の事項に対する本明細書における参照は、その以前の刊行物(若しくはそれから導出された情報)又は既知の事項が、本明細書が関係する研究の分野における常識の一部を形成することの承認若しくは是認又は何らかの形態の示唆として解釈されず且つ解釈されるべきでない。
【0003】
過去十年間において、環境の3D幾何学的表現が高精度で生成されるモバイルマッピングシステムの開発が劇的な進展を遂げている。この分野では、光撮像、検出及び測距(lidar)に基づくシステムは、非常に一般的であり、産業の中でもロボット工学(車両ナビゲーション)、ゲーム(仮想現実)、測量において用途を見出している。その主要な競争相手(カメラ)に対するlidar検知の主な利点は、照明状態に対する不変性及び高精度の距離情報であり、lidarを3Dマッピングのための優れた且つ証明された代替肢としている。一方、カメラと比較したlidarの基本的な欠点は、豊富な視覚的外観情報を提供しないことである。用途に応じて、このタイプの情報は、人間(及び多くの場合に機械)による解釈とって大きい利益を有する。
【0004】
色などの視覚的文脈情報を実現するためにlidarとカメラデータとを融合すること、即ち距離を色情報と組み合わせることが知られている。この融合を実行するためのいくつかの方式が存在し、いくつかは、特定の装置及びセンサセットアップに厳格に依存し、これは、常に望ましいわけではない。
【0005】
カメラを任意の既存のlidarの3Dマッピング装置に単純に追加することにより、既存のカメラレスプラットフォームに適用され得る、ポイントクラウド着色において使用される一般的な方法を提供することが有利であろう。従って、プラットフォームから独立しており、且つ取付けセットアップに関する難しい制約をもたらさない方法が望ましい。例えば、方法は、携帯されるか、空中プラットフォーム上に取り付けられるか又は地上プラットフォーム上に取り付けられるかの任意の1つであるマッピング装置に追加されるカメラと関連して使用可能であることを要する。
【0006】
一般に、着色されたポイントクラウドを実現するための基本的なプロセスは、色(又は熱若しくはハイパースペクトルデータなどの他の情報)がそれぞれの3Dポイントに割り当てられるように、マッピング装置によって取得されたポイントクラウドの3Dポイント上に2Dカメラ画像を投影することである。
【0007】
lidar及びカメラが結合されていない(即ち接続又は同期されていない)システムでは、ポイントクラウドの着色に関連するいくつかの課題が存在する。これらの課題は、(i)lidarとカメラとの間のクロックの同期化、(ii)ポイントの可視性の判定、及び(iii)色割当のインテリジェントな判定を含む。
【0008】
lidar及びカメラが結合されていないことに伴い、これらは、共通のクロックを共有しておらず、従って、それぞれの方式から収集されたデータは、データ処理が発生し得る前に同期させなければならない異なるタイムスタンプを有することになる。ポイントの可視性は、カメラとlidarとが相互に遠く離れて取り付けられ、それにより装置ごとに異なる「視点」をもたらし得るため、重要である。ポイントの可視性に関係する他の問題は、特定の視点からどの3Dポイントに着色するかを定義することにあります。これが発生する理由は、ポイントクラウド内のポイントの体積がゼロであるために、空間内の特定の位置から、固体物の背後の3Dポイントが見えてしまい(実際には見えないはずなのに)、誤った色割当につながるからである。
【0009】
色割当の観点では、色候補のセットから3Dポイントに色を割り当てる方法に課題が存在する。モバイルマッピング(即ち移動するプラットフォームからのもの)の場合、再構築されたポイント3Dポイントがデータ収集時に複数のフレームで観測される可能性が高く、そのポイントの外観が観測角度に応じて取得プロセスの全体を通して変化するという事実において問題が存在する。この問題は、従来の静的な「トライポッド」システムにおけるよりも連続的なモバイルマッピングで格段に深刻である。
【発明の概要】
【課題を解決するための手段】
【0010】
本発明は、このような背景並びにそれに関連する課題及び問題に照らして開発された。
【0011】
広範な一形態では、本発明の一態様は、環境の3次元(3D)ポイントクラウドの着色において使用される方法を提供することを追求し、方法は、1つ又は複数の電子処理装置内において、マッピング装置によってキャプチャされた幾何学的データを使用して、環境の3Dポイントクラウドを決定し、及びマッピング装置の軌跡を決定するステップと、カメラ軌跡に沿って移動するカメラによってキャプチャされた環境のビデオ記録を示すビデオデータを取得するステップであって、ビデオデータは、いくつかのフレームを含む、ステップと、マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータを決定するステップと、を含み、複数のフレームのそれぞれについて、方法は、フレームのキャプチャの時点を示すタイミング情報を決定するステップと、マッピング装置の軌跡、タイミング情報及びカメラ外部パラメータを使用して、カメラ軌跡に沿ってカメラの位置を決定するステップと、カメラの位置に少なくとも部分的に基づいて、フレーム内のポイントクラウドの少なくともいくつかの3Dポイントを識別し、且つカメラのすぐ近傍におけるシーンをキャプチャするローカルポイントクラウドを決定し、可視性チェックは、特定のフレームのカメラの視点から見えるローカルポイントクラウド内のポイントを決定するためにローカルポイントクラウドに対して実行される、ステップと、及びビデオデータから抽出されたフレーム内の対応するピクセルの色を使用して、少なくともいくつかの3Dポイントに対する候補色を決定するステップと、を含み、複数のフレームから取得された候補色を使用して、3Dポイントクラウドの1つ又は複数のポイントに色を割り当てるステップ、を含む。
【0012】
一実施形態では、タイミング情報を決定するステップは、キャプチャされたビデオデータを装置軌跡と時間的に同期させるステップを含む。
【0013】
一実施形態では、キャプチャされたビデオデータは、ビデオデータ及びマッピング装置から取得されたヨー速度を相関させることにより、装置軌跡と時間的に同期される。
【0014】
一実施形態では、ビデオデータからヨー速度を取得するステップは、連続的なフレームのペアについて、ピクセルの移動を追跡するためにオプティカルフローを使用するステップと、オプティカルフローからカメラのポーズの変化を判定するステップと、ポーズの変化からヨー速度を決定するステップと、を含む。
【0015】
一実施形態では、ヨー速度を決定するステップの前に、カメラのポーズは、カメラ外部パラメータを使用してマッピング装置座標系に変換される。
【0016】
一実施形態では、方法は、滑らかに変化する関数を、ビデオデータから取得されたヨー速度に適用するステップと、マッピング装置によって記録された幾何学的データからヨー速度を抽出するステップと、マッピング装置によって記録された幾何学的データのヨー速度のサンプリング周波数で、ビデオデータから取得されたヨー速度をリサンプリングするステップと、ビデオデータから取得されたリサンプリングされたヨー速度を幾何学的データからのヨー速度と相関させるステップと、を更に含む。
【0017】
一実施形態では、相関は、ビデオデータのタイムスタンプと装置軌跡のタイムスタンプとの間のマッピングを実行するアファイン関数を推定するために使用される。
【0018】
一実施形態では、アファイン関数は、時間シフトを示すオフセットパラメータと、レート調整を示すスケールパラメータとを有する。
【0019】
一実施形態では、マッピング装置から取得されたヨー速度は、慣性計測ユニット(IMU)の計測値から決定される。
【0020】
一実施形態では、複数のフレームのそれぞれについて、カメラの位置を決定するステップは、フレームに対してマッピング装置の補間されたポーズを提供するために、タイミング情報を使用してフレームのタイムスタンプでマッピング装置の軌跡を補間するステップと、フレームに対応するカメラポーズを決定するために、マッピング装置の補間されたポーズにカメラ外部パラメータを適用するステップと、を含む。
【0021】
一実施形態では、ローカルポイントクラウドを決定するステップは、カメラポーズの前方軸を決定し、前方軸に沿って第1のポイントを所定の距離に投影し、ローカルポイントクラウドに含めるための第1のポイントの所定の距離内にあるすべてのポイント、及びローカルポイントクラウドに含めるための第1のポイントの所定の距離内にあるビン内に含まれるすべてのポイントであって、低解像度のビンにセグメント化されているポイント、の1つを選択する、ことにより、カメラの近傍ポイントを抽出するステップを含む。
【0022】
一実施形態では、可視性チェックは、ローカルポイントクラウドを、原点にカメラがある座標系に変換するステップと、カメラに最も近いポイントが、カメラから最も遠いポイントに反射されるように、球面反射カーネルをローカルポイントクラウド内の少なくともいくつかのポイントに適用するステップと、その反射が、反射されたポイントクラウドの凸包のメンバである場合に、ポイントを可視として分類するステップと、を含む。
【0023】
一実施形態では、カーネルは、指数反転カーネルである。
【0024】
一実施形態では、ローカルポイントクラウドは、可視性チェックを実行する前にダウンサンプリングされる。
【0025】
一実施形態では、ローカルポイントクラウドは、ビンにセグメント化され、及びそれぞれのビンからの少なくとも1つのポイントは、可視性チェックで使用される。
【0026】
一実施形態では、特定のビン内のポイントが可視として分類される場合、ビン内のすべてのポイントは、それぞれのフレームのカメラから見えるポイントを含む可視ローカルポイントクラウドを再構築するために使用される。
【0027】
一実施形態では、それぞれのフレームに対応する可視3Dポイントは、3Dポイントを2D画像座標に変換することによってフレーム内に投影される。
【0028】
一実施形態では、フレーム内のそれぞれの2D画像座標について、方法は、2D画像座標で3Dポイントの候補色を抽出するステップと、候補色を、平均色を3Dポイントに割り当てるために使用される累積色選択アルゴリズムに提供するステップと、を含む。
【0029】
一実施形態では、色選択アルゴリズムの出力は、色割当において使用されるロバスト移動平均である。
【0030】
一実施形態では、色選択アルゴリズムは、ガウス重み付け関数を使用して反復的に再重み付けされた最小二乗ロバスト平均の1回の反復の累積近似である。
【0031】
一実施形態では、3Dポイントの第1の候補色について、方法は、第1の候補色で移動平均を初期化するステップと、初期共分散行列で移動共分散を初期化するステップと、移動重みを初期化するステップとを含む。
【0032】
一実施形態では、3Dポイントのそれぞれの後続の候補色について、方法は、現在の平均を決定するステップと、現在の共分散を決定するステップと、現在の平均及び現在の共分散を使用して、後続の色候補の尤度を決定するステップと、尤度によって後続の候補色を乗算し、且つ結果を移動平均に加算するステップと、後続の候補色と現在の平均との差を決定するステップと、尤度によって差の外積を乗算し、且つ結果を移動共分散に加算するステップと、尤度を移動重みに加算するステップと、移動重みによって移動平均を除算することにより、推定平均を決定するステップと、を含む。
【0033】
一実施形態では、推定平均は、3Dポイントの代表色を示す。
【0034】
一実施形態では、いくつかのフレームについて、フレーム内の可視3Dポイントのサブセットのみが着色され、いくつのポイントは、以前に処理されたフレームにおけるそれらの可観測性の品質に少なくとも部分的に基づいて除去される。
【0035】
一実施形態では、3Dポイントのそれぞれの候補色は、現在の視点に対するポイントの深度に反比例する重みによってスケーリングされる。
【0036】
一実施形態では、それぞれのポイントの累積重みは、ポイントが、後続のフレームで着色されるポイントを取得するために使用される空間ルックアップテーブルから除去されるべきであるかどうかを決定する際に使用される。
【0037】
一実施形態では、複数のフレームから取得された座標色を使用して、色を3Dポイントクラウドの1つ又は複数のポイントに割り当てるステップは、それぞれの3Dポイントが位置する表面に対する視点の間の角度を決定し、且つ角度が90度に最も近い3Dポイントに対応する色を使用して色を割り当てるステップを含む。
【0038】
一実施形態では、3Dマッピング装置は、光撮像、検出及び測距(LiDAR)センサを使用する。
【0039】
一実施形態では、3Dマッピング装置は、携帯されるか、空中プラットフォームに取り付けられるか、及び地上プラットフォームに取り付けられるか、の1つである。
【0040】
一実施形態では、プラットフォームは、移動可能である。
【0041】
広範な一形態では、本発明の一態様は、環境の3次元(3D)ポイントクラウドの着色において使用されるシステムを提供することを追求し、システムは、マッピング装置によってキャプチャされた幾何学的データを使用して、環境の3Dポイントクラウドを決定し、及びマッピング装置の軌跡を決定し、カメラ軌跡に沿って移動するカメラによってキャプチャされた環境のビデオ記録を示すビデオデータを取得し、ビデオデータは、複数のフレームを含み、マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータを決定する、ように構成された1つ又は複数の電子処理装置を含み、複数のフレームのそれぞれについて、1つ又は複数の電子処理装置は、フレームのキャプチャの時点を示すタイミング情報を決定し、マッピング装置の軌跡、タイミング情報及びカメラ外部パラメータを使用して、カメラ軌跡に沿ってカメラの位置を決定し、カメラの位置に少なくとも部分的に基づいて、フレーム内のポイントクラウドの少なくともいくつかの3Dポイントを識別し、且つカメラのすぐ近傍におけるシーンをキャプチャするローカルポイントクラウドを決定し、可視性チェックは、特定のフレームのカメラの視点から見えるローカルポイントクラウド内のポイントを決定するためにローカルポイントクラウドに対して実行され、及びビデオデータから抽出されたフレーム内の対応するピクセルの色を使用して、少なくともいくつかの3Dポイントに対する候補色を決定する、ように構成され、複数のフレームから取得された候補色を使用して、3Dポイントクラウドの1つ又は複数のポイントに色を割り当てる、ように構成された1つ又は複数の電子処理装置を含む。
【0042】
一実施形態では、システムは、幾何学的データをキャプチャするように構成されたマッピング装置を含む。
【0043】
一実施形態では、マッピング装置は、光撮像、検出及び測距(LiDAR)センサを使用する。
【0044】
一実施形態では、3Dマッピング装置は、携帯されるか、空中プラットフォームに取り付けられるか、及び地上プラットフォームに取り付けられるか、の1つである。
【0045】
一実施形態では、プラットフォームは、移動可能である。
【0046】
一実施形態では、システムは、環境のビデオ記録を取得するように構成されたカメラを含む。
【0047】
広範な一形態では、本発明の一態様は、環境の3次元(3D)ポイントクラウドの着色において使用される方法を提供することを追及し、方法は、1つ又は複数の電子処理装置内において、マッピング装置によってキャプチャされた幾何学的データを使用して、環境の3Dポイントクラウドを決定し、及びマッピング装置の軌跡を決定する、ステップと、カメラ軌跡に沿って移動するカメラによってキャプチャされた環境のビデオ記録を示すビデオデータを取得するステップであって、ビデオデータは、いくつかのフレームを含む、ステップと、マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータを決定するステップと、を含み、複数のフレームのそれぞれについて、方法は、フレームのキャプチャの時点を示すタイミング情報を決定するステップと、マッピング装置の軌跡、タイミング情報及びカメラ外部パラメータを使用して、カメラ軌跡に沿ってカメラの位置を決定するステップと、カメラの位置に少なくとも部分的に基づいて、フレーム内のポイントクラウドの少なくともいくつかの3Dポイントを識別するステップと、を含み、ビデオデータから抽出されたフレーム内の対応するピクセルの色を使用して、少なくともいくつかの3Dポイントに対する候補色を決定するステップと、複数のフレームから取得された候補色を使用して、3Dポイントクラウドの1つ又は複数のポイントに色を割り当てるステップ、を含む。
【0048】
広範な一形態では、本発明の一態様は、環境の3次元(3D)ポイントクラウドの着色において使用されるシステムを提供することを追及し、システムは、マッピング装置によってキャプチャされた幾何学的データを使用して、環境の3Dポイントクラウドを決定し、及びマッピング装置の軌跡を決定し、カメラ軌跡に沿って移動するカメラによってキャプチャされた環境のビデオ記録を示すビデオデータを取得し、ビデオデータは、複数のフレームを含み、マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータを決定する、ように構成された1つ又は複数の電子処理装置を含み、複数のフレームのそれぞれについて、1つ又は複数の電子処理装置は、フレームのキャプチャの時点を示すタイミング情報を決定し、マッピング装置の軌跡、タイミング情報及びカメラ外部パラメータを使用して、カメラ軌跡に沿ってカメラの位置を決定し、カメラの位置に少なくとも部分的に基づいて、フレーム内のポイントクラウドの少なくともいくつかの3Dポイントを識別し、及びビデオデータから抽出されたフレーム内の対応するピクセルの色を使用して、少なくともいくつかの3Dポイントに対する候補色を決定する、ように構成され、複数のフレームから取得された候補色を使用して、3Dポイントクラウドの1つ又は複数のポイントに色を割り当てる、ように構成された1つ又は複数の電子処理装置を含む。
【0049】
本発明の広範な形態及びその個々の特徴は、合わせて、相互交換可能に且つ/又は独立して使用され、及び別個の広範な形態に対する参照は、限定を意図したものではないことを理解されたい。
【0050】
以下では、次の添付図面を参照して本発明の非限定的な例について説明する。
【図面の簡単な説明】
【0051】
【
図1】環境の3Dポイントクラウドの着色において使用される方法の一例のフローチャートである。
【
図2】環境の3Dポイントクラウドの着色において使用されるシステムの一例の概略図の例である。
【
図4A-4C】3Dポイントクラウドの着色において使用される、それぞれ携帯された、空中プラットフォームに取り付けられた及び地上プラットフォームに取り付けられたセンサの例を示す。
【
図5A-5C】キャプチャされたビデオデータをマッピング装置の軌跡と時間的に同期させる特定のプロセスの一例のフローチャートを提供する。
【
図6A】カメラ及びマッピング装置のヨーレートの相互相関出力のグラフである。
【
図6B-6C】カメラとマッピング装置との間での失敗した及び成功した時間的同期化のグラフプロットを示す。
【
図7】カメラ軌跡を決定する特定のプロセスの一例のフローチャートを提供する。
【
図8A-8C】それぞれマッピング装置の軌跡を示し、マッピング装置の軌跡は、画像タイムスタンプで補間され、及びカメラポーズは、カメラ外部変換を適用することにより取得される。
【
図9A-9B】特定のビデオフレームの3Dポイントの可視性を判定するための特定のプロセスの一例のフローチャートを提供する。
【
図10A-10G】特定のビデオフレームの可視3Dポイントの選択を示す連続的な一連の図を提供する。
【
図11A-11C】閉塞されたポイントを除去する球面変換で使用されるカーネル関数のスケール不変性を評価するために使用される合成シーンと、線形カーネル及び指数カーネルを使用した可視ポイントの対応する投影とをそれぞれ示す。
【
図11D】可変深度の類似のシーンにおける、γ、カーネル設計パラメータ及びカーネルタイプの関数としての可視性分析の品質のグラフである。
【
図11E】線形及び指数反転間の比較を示すグラフである。
【
図12A-12B】ポイントクラウド内の3Dポイントを着色するための特定のプロセスの一例のフローチャートを提供する。
【
図13A-13F】それぞれ携帯、地上プラットフォーム及び空中プラットフォームで得られた、結果としての着色されたポイントクラウド及び対応するカメラフレームの例を示す。
【発明を実施するための形態】
【0052】
以下では、
図1を参照して、環境の3次元(3D)ポイントクラウドの着色において使用される方法の一例について説明する。
【0053】
説明のため、方法は、少なくとも、(光撮像、検出及び測距(LiDAR)センサなどの)マッピング装置及びそれに取り付けられた(カメラなどの)撮像装置を有する3Dマッピングプラットフォームと関連する1つ又は複数の処理システムの一部を形成する1つ又は複数の電子処理装置を少なくとも部分的に使用して実行されると仮定する。1つ又は複数の電子処理装置は、マッピング装置から幾何学的データを、カメラからビデオデータを、受け取るように構成される。3Dマッピングプラットフォームから取得された収集されたデータは、処理時間が取得時間未満となるようにオフライン又はリアルタイムで処理することができる。
【0054】
この例では、ステップ100において、方法は、1つ又は複数の電子処理装置において、マッピング装置によってキャプチャされた幾何学的データを使用して、環境の3Dポイントクラウドを決定するステップを含む。3Dポイントクラウドを決定することを目的として、任意の適切な同時位置特定及びマッピング(SLAM)アルゴリズムを使用することができる。回転型lidarなどのマッピング装置は、携帯されるか又は代わりに環境を通して移動する空中若しくは地上プラットフォームに取り付けられたモバイルプラットフォームの一部であり得る。
【0055】
また、幾何学的データは、ステップ110において、データが収集されるのに伴って移動したセンサの経路を示すマッピング装置の軌跡を決定するために使用される。
【0056】
ステップ120では、方法は、カメラ軌跡に沿って移動するカメラによってキャプチャされた環境のビデオ記録を示すビデオデータを取得するステップを含み、ビデオデータは、いくつかのフレームを含む。一例では、可視スペクトル内で色情報を収集するためにカメラが使用されるが、代わりに、ハイパースペクトル及び熱を含む他のスペクトル情報が取得され得る。結果的な着色されたポイントクラウドは、視覚的に表されるスペクトルを示すRGBベクトルを使用することができる。
【0057】
従って、着色が非可視スペクトルに基づいて実行され得ることから、本開示は、可視色におけるポイントクラウドの着色に限定されない。
【0058】
ステップ130では、方法は、マッピング装置座標系での3Dポイントをカメラ座標系に変換する変換を示すカメラ外部パラメータを決定するステップを含む。更に詳細に後述するように、カメラ軌跡は、プラットフォームに対するそれぞれの装置の相対的な位置決めに起因して装置軌跡と異なることを理解されたい。マッピング装置からカメラへのユークリッド変換は、マッピング装置座標系での3Dポイントをカメラ座標系に変換する。これは、本明細書ではカメラ外部パラメータと呼称される。
【0059】
カメラによってキャプチャされた複数のフレームのそれぞれについて、方法は、ステップ140において、フレームのキャプチャの時点を示すタイミング情報を決定するステップを含む。タイミング情報は、ビデオフレームのタイミングがマッピング装置の時間座標で推定されるように、ビデオデータ内のタイムスタンプと装置軌跡内のタイムスタンプとの間の対応性を正確に判定する。
【0060】
ステップ150では、方法は、マッピング装置の軌跡、タイミング情報及びカメラ外部パラメータを使用して、カメラ軌跡に沿ってカメラの位置を決定するステップを含む。これは、カメラの視点がフレームごとに判明するようにカメラの3Dポーズがフレームごとに決定されることを可能にする。タイミング情報及びマッピング装置の軌跡により、ビデオの特定のフレームがキャプチャされた際にマッピング装置の位置を決定することができる。この結果、カメラの外部パラメータを使用して、マッピング装置の特定のポーズに対するカメラのポーズを決定することができる。
【0061】
ステップ160では、方法は、カメラの位置に少なくとも部分的に基づいて、フレーム内のポイントクラウドの少なくともいくつかの3Dポイントを識別するステップを含む。通常、少なくともいくつかの3Dポイントは、特定のフレームがキャプチャされた際、カメラによって可視であるか又は観測可能であると考えられるポイントである。これらは、特定のフレームに対して着色されるポイントである。
【0062】
これに応じて、ステップ170では、方法は、ビデオデータから抽出されたフレーム内の対応するピクセルの色を使用して、少なくともいくつかの3Dポイントに対する候補色を決定するステップを含む。これを実行するには、3Dポイントをフレームの2D画像内に投影しなければならず、これは、カメラ座標系での3Dポイントを2Dビデオフレーム座標に変換する関数に対するパラメータを使用して実現される。これは、本明細書ではカメラ内部パラメータと呼称される。それぞれのフレームが処理されるのに伴い、候補色は、複数のフレーム内の3Dポイントについて観測される。従って、それぞれの3Dポイントは、通常、色をそれぞれのポイントに割り当てるために使用される候補色観測の対応するセットを有する。
【0063】
最後に、ステップ180では、方法は、複数のフレームから取得された候補色を使用して、3Dポイントクラウドの1つ又は複数のポイントに色を割り当てるステップを含む。色割当は、更に詳細に後述するように、未加工の観測された値(例えば、RGB値)の重み付けされた合計に基づいて代表色を選択する。
【0064】
上述の方法は、いくつかの利点を提供する。
【0065】
まず、この方法は、特にカメラとマッピング装置との関連性が薄い多くの異なるプラットフォームによって生成されたポイントクラウドに、色が追加されることを可能にする。従って、この着色アルゴリズムは、第三者によって製造された3Dマッピングシステムに適用することができる。
【0066】
更なる利点は、(i)既存のカメラレス装置にカメラを取り付けることができるという経済的な魅力、(ii)カメラタイプ又は形式(RGB、ハイパースペクトル、熱)に関する制限がないこと、(iii)着色されるポイントの数が格段に大きいこと、(iv)最新のマッピング装置はモバイル用に設計されており、ポイントごとに複数の候補色から色精度を高めることができること、及び(v)ポータビリティ及びプラットフォームの独立性、にある。
【0067】
以下では、いくつかの更なる特徴について説明する。
【0068】
通常、タイミング情報を決定するステップは、それぞれのフレームが装置軌跡のどのポイントに対応するかがわかるように、キャプチャされたビデオデータを装置軌跡と時間的に同期させるステップを含む。上述のように、幾何学的データ及びビデオデータにあるタイムスタンプは、異なるクロックからサンプリングされる可能性が高いことから、この情報は、一般的に知られていない。従って、ビデオデータのタイムスタンプと装置軌跡のタイムスタンプとの間の正確な対応を計算しなければならない。
【0069】
時間的同期を実行するために、マッピング装置(又はそれと関連する慣性計測ユニット(IMU)は、装置のヨーレート(即ちヨー速度)を記録すると仮定される。この結果、ビデオデータ及びマッピング装置から得られたヨー速度を相関させることにより、キャプチャされたビデオデータを装置軌跡と時間的に同期させることができる。
【0070】
ビデオデータからヨー速度を取得するステップは、連続的なフレームのペアについて、ピクセルの移動を追跡するためにオプティカルフローを使用するステップと、オプティカルフローからカメラのポーズの変化を判定するステップと、このカメラポーズをマッピング装置座標系に変換するステップと、ポーズの変化からヨー速度を決定するステップとを含む。オプティカルフローを使用して、画像シーケンスからピクセルを追跡するために使用される技法については、Jean-Yves Bouguet,“Pyramidal implementation of the affine lucas kanade feature tracker description of the algorithm”,Intel Corporation,5,2001に記述されている。
【0071】
カメラのポーズの変化は、カメラ内部パラメータを使用して、オプティカルフローから決定され得ることを理解されたい。次いで、カメラポーズをロール、ピッチ、ヨー及び平行移動に分解し、ヨー成分を抽出することができる。次いで、単位を、ヨーレート、即ちヨー角/フレームから、ヨー角/秒に正規化することができる。但し、ヨー成分を抽出する前に、カメラ外部パラメータを使用してカメラポーズをマッピング装置座標系に変換しなければならないことを理解されたい。
【0072】
次いで、方法は、通常、滑らかに変化する関数を、ビデオデータから取得されたヨー速度に適用するステップと、マッピング装置によって記録された幾何学的データのヨー速度のサンプリング周波数で、ビデオデータから取得されたヨー速度をリサンプリングするステップとを含む。幾何学的データのヨー速度のサンプリング周波数がビデオデータの周波数未満である場合、幾何学的データのヨー速度がリサンプリングされる。
【0073】
次いで、マッピング装置によって記録された幾何学的データからヨー速度が抽出され、且つビデオデータから取得されたリサンプリングされたヨー速度が幾何学的データからのヨー速度と相関される。通常、正規化された相互相関は、ビデオデータのタイムスタンプと装置軌跡のタイムスタンプとの間のマッピングを実行するアファイン関数を推定するために使用される。アファイン関数は、時間シフトを示すオフセットパラメータと、レート調整を示すスケールパラメータとを有する。
【0074】
一例では、複数のフレームのそれぞれについて、カメラの位置を決定するステップは、フレームに対してマッピング装置の補間されたポーズを提供するために、タイミング情報を使用してフレームのタイムスタンプでマッピング装置の軌跡を補間するステップと、フレームに対応するカメラポーズを決定するために、マッピング装置の補間されたポーズに変換(即ちカメラ外部)を適用するステップとを含む。この結果、方法は、3Dポイントクラウド内のどのポイントがカメラの視点から見えるかを決定する際に使用するために、複数のフレームのそれぞれに対して、カメラの視点を決定する。
【0075】
複数のフレームのそれぞれにおいてポイントクラウドの少なくともいくつかの3Dポイントを識別するステップは、カメラのすぐ近傍におけるシーンをキャプチャするローカルポイントクラウドを決定するステップを含む。ローカルポイントクラウドを決定するステップは、カメラポーズの前方軸を決定することと、前方軸に沿って第1のポイントを所定の距離に投影することと、ローカルポイントクラウドに含めるための第1のポイントの所定の距離内にあるすべてのポイント、及び、ローカルポイントクラウドに含めるための第1のポイントの所定の距離内にあるビン内に含まれるすべてのポイントであって、低解像度のビンにセグメント化されているポイント、の1つを選択することとにより、カメラの近傍ポイントを抽出するステップを含む。
【0076】
所定の距離パラメータの選択は、マッピング装置の有効範囲及びシーンの特性に依存する。より短い有効範囲は、例えば、屋内シーンのために使用することができる。投影されたポイントからすべてのポイントまでの距離をチェックする代わりに、ポイントを低解像度のビンにバケット化し、且つビンまでの距離をチェックすることにより、大幅なスピードアップを実現することができる。次いで、ビンが十分に近いと考えられる場合、ビンに含まれるすべてのポイントがさらに処理される。
【0077】
次いで、通常、方法は、特定のフレームのカメラの視点から見えるローカルポイントクラウド内のポイントを決定するために、ローカルポイントクラウドに対して可視性チェックを実行するステップを含む。可視性チェックは、ローカルポイントクラウドを、原点にカメラがある座標系に変換するステップと、カメラに最も近いポイントが、カメラから最も離れたポイントに反射されるように、球面反射カーネルをローカルポイントクラウド内の少なくともいくつかのポイントに適用するステップと、その反射が、反射されたポイントクラウドの凸包のメンバである場合に、ポイントを可視として分類するステップとを含む。
【0078】
可視性チェックは、S.Katz,A.Tal,and R.Basri,“Direct visibility of point sets,”in ACM SIGGRAPH 2007 Papers,ser.SIGGRAPH’07.New York,NY,USA:ACM,2007 and,S.Katz and A.Tal,“On the visibility of point clouds,”in 2015 IEEE International Conference on Computer Vision(ICCV),Dec 2015,pp.1350-1358で提案されている技法を利用する。この分析は、画像では見えないかもしれない表面への色の「にじみ」や、結果の歪みを防ぐのに役立つため、結果として得られる着色されたポイントクラウドの品質にとって重要である。
【0079】
更に詳細に後述するように、使用されるカーネルは、(線形カーネルと比較して)スケール不変であることが示されている指数反転カーネルである。換言すれば、入力ポイントクラウドがスケーリングされる場合、Katzらによって提案されたポイント可視性チェックは、指数反転カーネルの使用による影響を受けない。逆に、Katzらによるポイント可視性チェックの出力は、線形カーネルを使用する際、入力ポイントクラウドのスケールによって異なる。可視性の計算が物体のスケールの影響を受けるという事実は、明らかに望ましくない特性である。特に、大きな凹型構造は、Katzらのポイント可視性アルゴリズムで線形カーネルを使用すると、悪影響を受ける可能性がある。
【0080】
従って、スケール不変の特性と、凹型構造に対する特定の適合性により、指数反転カーネルは、モバイルマッピング装置を使用する際と同様に、膨大な数の物体を含むポイントクラウド内のポイントの可視性を決定するのに魅力的である。
【0081】
隠れたポイントを除去するための可視性チェックアルゴリズムは、O(NlogN)の操作であり、Nはポイントクラウド内のポイントの数であるため、特にポイントクラウドが密集している場合又はローカルポイントクラウドの範囲が大きな屋外シーンのために高く設定されている場合、着色パイプラインのランタイムにかなりのオーバーヘッドが追加され得る。相互に近接したポイントは、類似の可観測性を有する、という基本的な仮定により、近くのポイントの抽出と類似の方法で、3Dポイントをバケット化することによって、高速化を実現することができる。これを実現するには、ビンは、より細かい潜在的な閉塞を保持するために、十分に高い解像度でなければならない。この解像度の値は、ランタイムの高速化と可視性評価の品質との間のトレードオフをもたらす設計パラメータである。
【0082】
従って、可視性チェックを実行する前にそれぞれのビンから少なくとも1つのポイントを選択することにより、ローカルポイントクラウドをダウンサンプリングすることができる。一例では、ローカルポイントクラウドを効果的に均一にダウンサンプリングするために、それぞれのビンから1つのポイントのみが取得される。結果として間引きされたポイントクラウドに対して可視性チェックを実行すると、可視ポイントが由来するビンへの参照が維持され、これらは、完全に密な可視ポイントクラウドを迅速に回復するために使用される。
【0083】
換言すれば、特定のビン内のポイントが可視として分類される場合、そのビン内のすべてのポイントは、それぞれのフレームのカメラから見える(即ち観測可能)であると考えられるポイントを含む可視ローカルポイントクラウドを再構築するために使用される。
【0084】
それぞれのフレームのカメラの観点から見えるポイントクラウド内の3Dポイントが決定された後、方法は、カメラ外部及び内部パラメータを使用して、3Dポイントを2D画像座標に変換することにより、可視3Dポイントをフレームに投影するステップを含む。
【0085】
一例では、フレーム内のそれぞれの2D画像座標について、方法は、2D画像座標で3Dポイントの候補色を抽出するステップと、候補色を、平均色を3Dポイントに割り当てるために使用される累積色選択アルゴリズムに提供するステップとを含む。一例では、色選択アルゴリズムの出力は、色割当において使用されるロバスト移動平均である。この使用される平均は、ポイントクラウド、装置軌跡、ヨー速度及び/又は外部に埋め込まれたエラーから生じる外れ値に対してロバストである。
【0086】
一例では、色選択アルゴリズムは、ガウス重み付け関数を使用して、反復的に再重み付けされた最小二乗ロバスト平均の1回の反復の累積近似である。
【0087】
3Dポイントの第1の候補色について、方法は、移動平均を第1の候補色で初期化するステップと、移動共分散を初期共分散行列で初期化するステップと、移動重みを初期化するステップとを含む。3Dポイントのそれぞれの後続の候補色について、方法は、現在の平均を決定するステップと、現在の共分散を決定するステップと、現在の平均及び現在の共分散を使用して後続の色候補の尤度を決定するステップと、尤度によって後続の候補色を乗算し、且つ結果を移動平均に加算するステップと、後続の候補色と現在の平均との差を決定するステップと、尤度によって差の外積を乗算し、且つ結果を移動共分散に加算するステップと、尤度を移動重みに加算するステップと、移動重みによって移動平均を除算することにより、推定平均を決定するステップと、を含む。
【0088】
この点に関して、重み付けされたガウス分布の推定平均は、3Dポイントの代表色を示すことを理解されたい。
【0089】
計算効率を更に改善するために、いくつかのフレームについてフレーム内の可視3Dポイントのサブセットのみが着色され、いくつかのポイントは、以前に処理されたフレームにおけるそれらの可観測性の品質に少なくとも部分的に基づいて除去される。この点で、3Dポイントのそれぞれの候補色は、現在の視点に対するポイントの深度に反比例する重みによってスケーリングされる。それぞれのポイントの累積重みは、ポイントが、後続のフレームで着色されるポイントを取得するために使用される空間ルックアップテーブルから除去されるべきであるかどうかを決定する際に使用される。
【0090】
別の広範な形態では、本発明は、環境の3次元(3D)ポイントクラウドの着色において使用されるシステムを提供し、システムは、マッピング装置によってキャプチャされた幾何学的データを使用して、環境の3Dポイントクラウドを決定し、及びマッピング装置の軌跡を決定するように構成された1つ又は複数の電子処理装置を含む。1つ又は複数の処理装置は、カメラ軌跡に沿って移動するカメラによってキャプチャされた環境のビデオ記録を示すビデオデータを更に取得し、ビデオデータは、複数のフレームを含む。複数のフレームのそれぞれについて、1つ又は複数の電子処理装置は、フレームのキャプチャの時点を示すタイミング情報を決定し、マッピング装置の軌跡及びタイミング情報を使用して、カメラ軌跡に沿ってカメラの位置を決定し、カメラの位置に少なくとも部分的に基づいて、フレーム内のポイントクラウドの少なくともいくつかの3Dポイントを識別し、及びビデオデータから抽出されたフレーム内の対応するピクセルの色を使用して、少なくともいくつかの3Dポイントに対する候補色を決定するように構成される。1つ又は複数の電子処理装置は、複数のフレームから取得された候補色を使用して、3Dポイントクラウドの1つ又は複数のポイントに色を割り当てるように更に構成される。
【0091】
通常、システムは、幾何学的データをキャプチャするように構成されたマッピング装置を含み、且つ一例では、マッピング装置は、光撮像、検出及び測距(LiDAR)センサを使用する。
【0092】
3Dマッピング装置は、携帯されるか、空中プラットフォームに取り付けられるか、及び自動運転車などの地上プラットフォームに取り付けられるか、の1つであり得る。通常、プラットフォームは、移動可能である。
【0093】
システムは、環境のビデオ記録を取得するように構成されたカメラを更に含む。カメラは、データの視覚的表現をユーザーに提供するために着色するアプリケーションに応じて、(RGB色などの)視覚データ又はハイパースペクトル若しくは熱データを記録することができる。
【0094】
次に、
図2を参照して、環境の3次元(3D)ポイントクラウドの着色において使用されるシステムの一例について説明する。
【0095】
この例では、システム200は、地上車両205などのモバイルプラットフォームに搭載された少なくとも1つの電子処理装置210を含む。電子処理装置210は、データストア240に結合され、データストア240は、マッピング装置220からの幾何学的データ、カメラ230からのビデオデータ、マッピング装置の軌跡、環境の3Dポイントクラウドなどを格納する。他の構成では、プロセッサは、車両から離れていてもよく、センサと無線通信してもよい。あるいは、センサによって収集されたすべてのデータをダウンロードし、取得後にオフラインで処理してもよい。
【0096】
マッピング装置220は、地上車両205に搭載されており、且つ環境の3Dマップ(即ちポイントクラウド)を構築するために、車両の周りの環境のスキャンを実行するように構成される。一例では、マッピング装置は、Velodyneによって製造されたVLP-16 3D LiDARなどの3D LiDARセンサである。また、カメラ230は、プラットフォームの移動中の環境を適切に観測するために、任意の都合の良い位置で車両に搭載されている。一例では、カメラは、GoPro4 Session又はRicoh Theta S 360°ビデオカメラでもよい。
【0097】
図4A~
図4Cでは、使用され得る複数のプラットフォームを参照することにより、システムの容易な適用性及び「プラグアンドプレイ」ポータビリティが示されている。
図4Aでは、様々な携帯型システムが示されており、マッピング装置420A及びカメラ430Aは、任意の望ましい方法によってセットアップすることができる。
図4Bでは、空中(即ちドローン)プラットフォームが示されており、マッピング装置420Bは、カメラ430Bの下方に配置される。
図4Cでは、
図2に描かれているような地上プラットフォームが示されており、マッピング装置420Cは、車両の中央の支柱の上部に位置し、且つカメラ430Cは、車両の前部に取り付けられる。
【0098】
図3には、電子処理装置210の一例が示されている。この例では、処理装置210は、図示のように、バス304を介して相互接続された、少なくとも1つのマイクロプロセッサ300、メモリ301、キーボード及び/又はディスプレイなどの任意の入出力装置302並びに外部インターフェイス303を含む。この例では、外部インターフェイス303は、処理装置210を、通信ネットワーク、データストア240、他のストレージ装置などの周辺装置に接続するために利用することができる。1つの外部インターフェイス303が示されているが、これは、例示を目的としたものに過ぎず、実際には様々な方法を使用する複数のインターフェイス(例えば、Ethernet、シリアル、USB、無線など)を提供することができる。
【0099】
使用中、マイクロプロセッサ300は、マッピング装置220及びビデオカメラ230からのセンサデータを受信するステップと、3Dポイントクラウド及び装置軌跡を計算するステップと、タイミング情報を決定するステップと、可視性チェックを実行するステップと、色を3Dポイントに割り当てるステップと、可視性データ及び候補色情報を格納する様々なルックアップテーブルからデータを取得するためにデータストア240と通信するステップとを含む、必要な処理が実行できるように、メモリ301内に格納されるアプリケーションソフトウェアの形態で命令を実行する。アプリケーションソフトウェアは、1つ又は複数のソフトウェアモジュールを含むことができ、且つオペレーティングシステム環境などの適切な実行環境で実行することができる。
【0100】
従って、電子処理装置210は、適切にプログラムされたコンピュータシステム、PC、ラップトップ若しくはスマートフォン、タブレットなどの携帯型PCなど、任意の適切な処理システムから形成され得ることを理解されたい。特定の一例では、電子処理装置210は、Intelアーキテクチャに基づく処理システムなどの標準的な処理システムであり、これは、不揮発性(例えば、ハードディスク)ストレージに格納されたソフトウェアアプリケーションを実行するが、これは、必須ではない。しかしながら、処理システムは、マイクロプロセッサ、マイクロチッププロセッサ、論理ゲート構成、FPGA(フィールドプログラマブルゲートアレイ)などの実装ロジックと任意に関連付けられたファームウェア又は任意の他の電子装置、システム若しくは構成などの任意の電子処理装置であり得ることを理解されたい。
【0101】
次に、
図5A~
図5Cを参照して、キャプチャされたビデオデータをマッピング装置の軌跡と時間的に同期させるための特定のプロセスについて説明する。
【0102】
ステップ500では、ビデオカメラ230のサンプリング周波数が決定され、且つステップ505では、マッピング装置220によって幾何学的データに記録されたヨー速度のサンプリング周波数が決定される。これらのパラメータは、いずれも定数である。
【0103】
ステップ510では、記録からの連続するビデオフレームのペアが処理のために取得され、且つステップ515では、オプティカルフローが、連続するビデオフレームのそれぞれのペアのピクセルの動きを追跡するために使用される。この点で、連続するフレーム間の一致する特徴のペアが生成され、且つそれらの相対的な動きが追跡される。
【0104】
ステップ520では、カメラ内部パラメータが取得され、且つオプティカルフローからカメラのポーズの変化(即ちピクセルの相対的な動き)を決定するためにステップ525で使用される。ステップ530では、カメラ外部パラメータが取得され、且つマッピング装置座標系におけるカメラポーズを決定するためにステップ535で使用される。次いで、ステップ540では、カメラポーズがロール、ピッチ、ヨー及び平行移動に分解される。ステップ545では、ヨー成分が抽出され、且つヨー角/フレームからヨー角/秒に正規化される。
【0105】
次いで、ステップ550では、滑らかに変化する関数がデータに適用され、且つステップ555では、方法は、ビデオデータのサンプリング周波数が幾何学的データのヨー速度のサンプリング周波数未満であるかどうかを決定するステップを含む。ステップ560では、ビデオデータ内のサンプリング周波数が幾何学的データ内のサンプリング周波数未満である場合、ビデオデータからのヨー速度が幾何学的データ内のヨー速度のサンプリング周波数でリサンプリングされる。そうでなければ、幾何学的データ内のヨー速度のサンプリング周波数がビデオデータ内の周波数未満である場合、ステップ565では、幾何学的データ内のヨー速度がビデオデータの周波数でリサンプリングされる。
【0106】
ステップ570では、リサンプリングされた測定値が取得され、且つステップ575では、幾何学的データからのヨー速度が抽出される。ステップ580では、ビデオデータから決定されたリサンプリングされたヨー速度測定値を、幾何学的データに記録された測定値に登録する(又はリサンプリングされたデータに応じて逆も当てはまる)アファイン関数についての解を得るために、正規化された相互相関が使用される。
【0107】
最後に、ステップ585では、ビデオフレームのタイミングと、装置軌跡との間のマッピングを示すアファイン関数が2つのパラメータ(スケール及びオフセット)によって決定される。
【0108】
図6B及び
図6Cには、不十分な時間同期及び成功した時間同期の例がそれぞれ示されている。2つの信号間のヨー速度の絶対的な大きさは、常に一致するとは限らないが、ピークの相対的な重なりは、時間の良好な位置合わせを意味することに留意されたい。
【0109】
不十分な同期は、(i)ビデオの開始時間とIMUデータ記録との間の不一致が大きすぎるか、又は(ii)IMU/カメラの特徴的な動きがなく(例えば、空の特徴のない廊下)、最適化のための統計的に有意な情報がない、ために起こり得る。幸い、ビデオ及びIMU記録の開始時間は、制御可能である。また、ほとんどの実際の環境は、適切な追跡及び同期のための十分な特徴を含む。従って、
図6Bに示される誤った状況は、実際には回避することができる。
【0110】
装置のヨーレートが、ゼロ平均であり、連続するサンプル間の相関が一般的に低く、高周波数である信号によって一般的に表されることを考えると、カメラのヨーレートと装置軌跡とを相互相関させることにより、
図6Aに示されるように、非常に高い明瞭なピークが得られる。この明瞭さは、時間的同期に高いロバスト性をもたらす。
【0111】
自動トリガがない場合、カメラ及びIMUデータ記録は、同時に開始されない。この結果、時間同期が実行されたときに、IMU、ひいてはlidar軌跡の時間の境界から外れたタイムスタンプを有する画像が存在し得る。このようなタイムスタンプのカメラポーズは、依然として連続した軌跡から推定できるが、実際には、誤ったポーズになる可能性がある。従って、測定データの時間境界から外れた画像タイムスタンプは破棄され、代わりに、ビデオとカメラポーズの間で、フレーム数で測定された時間オフセットの較正が実行される。
【0112】
次に、
図7を参照して、カメラ軌跡を決定する特定のプロセスについて説明する。
【0113】
この例では、ステップ700において、(
図8Aに描かれているように)マッピング装置の軌跡がそれぞれのフレームのタイムスタンプで補間される。次いで、ステップ710では、(
図8Bに示されるように)それぞれのフレームのマッピング装置のポーズが取得される。次いで、ステップ720では、カメラ外部パラメータが取得され、最終的にステップ730では、(
図8Cに示されるように)それぞれのフレームのカメラのポーズがカメラ外部を使用して決定される。
【0114】
ここで、
図9A~
図9Bを参照して、特定のビデオフレームの3Dポイントの可視性を決定するための特定のプロセスについて以下で説明する。
【0115】
それぞれのフレームに対応するカメラポーズが決定された後、方法は、ポイントクラウド内のどの3Dポイントが、それぞれのフレームに表示されるかを選択する。
【0116】
処理されるそれぞれの視点において、カメラは、ポイントクラウド全体でキャプチャされたシーンのサブセットのみを観測することができる。3Dポイントのセットは、カメラの視野内にあり、特定のフレームで色を割り当てることができるポイントに絞り込まなければならない。
【0117】
任意選択で、方法は、ステップ900において、3Dポイントクラウドのポイントを低解像度ビンにバケット化するステップを含む。このステップは、3Dポイントクラウドがマッピング装置の幾何学的スキャンデータから決定された後、いつでも3Dポイントクラウド上で実行することができる。
【0118】
特定のビデオフレームに表示されるポイントを選択する際の第1の段階は、カメラに近接しているポイントを抽出することである。ステップ905では、フレームのカメラポーズが取得され、ステップ910では、カメラポーズの前方軸が決定される。カメラのポーズの前方軸を使用することにより、ステップ915において、ポイントがカメラの前に所定の距離で投影され、次いで、任意選択で、このポイントの同一の距離内のすべてのポイントが更なる処理のために取得される。これは、例えば、
図10Bに示されており、近傍ポイント抽出は、
図10Aのキャプチャされた画像に対応するカメラポーズに対して実行される。
【0119】
所定の距離パラメータの選択は、lidarセンサの有効範囲及びシーンの特性に依存する。例えば、屋内シーンでは、より短い有効範囲を使用することができる。
【0120】
投影されたポイントからすべてのポイントまでの距離をチェックする代わりに、上述のポイントを低解像度のビンにバケット化し、ビンまでの距離をチェックすることで、大幅なスピード化を実現することが可能であり、これは、図示の例ではステップ920で実行されるステップである。次いで、ビンが十分に近いと考えられる場合、決定されたビン内のポイントは、ステップ925において抽出され、ローカルポイントクラウドを形成するために取得される。
【0121】
(
図10Cに示されるように)カメラのすぐ近くのシーンをキャプチャするローカルポイントクラウドを決定したら、次のステップは、閉塞されたポイントを除去することである。これが発生する理由は、ポイントクラウド内のポイントの体積がゼロであるために、空間内の特定の位置からは、固体物の背後の3Dポイントが見えてしまう(実際には見えないはずの3Dポイントが見えてしまう)ためである。ローカルポイントクラウドに閉塞されたポイントを含めることは、これらのポイントがカメラに表示されず、誤った色割当につながるため、望ましくない。例えば、
図10Aに示される画像では、カメラは、2つのビンの背後を見ることができないが、それにも関わらず、
図10Cで抽出されたローカルポイントクラウドには、閉塞されたビンの背後のポイントが含まれている。
【0122】
相互に近接したポイントは、類似の可観測性を有するという基本的な仮定により、近くのポイントのルックアップと類似の方法で、ステップ930で3Dポイントをバケット化することより、高速化を実現することができる。これを実現するには、ビンは、
図10Dに示されるように、より細かい潜在的な閉塞を保持するために、十分に高い解像度でなければならない。この解像度の値は、ランタイムの高速化と可視性評価の品質との間のトレードオフをもたらす設計パラメータである。次いで、ステップ935では、ローカルポイントクラウドを効果的に均一にダウンサンプリングするために1つのポイントがそれぞれのビンから取得される(
図10Eを参照されたい)。
【0123】
ステップ940では、ダウンサンプリングされたローカルポイントクラウド内のポイントの可視性を判定する可視性チェックが実行される。可視性チェックは、上述のように、S.Katz,A.Tal,and R.Basri,“Direct visibility of point sets,”in ACM SIGGRAPH 2007 Papers,ser.SIGGRAPH’07.New York,NY,USA:ACM,2007及びS.Katz and A.Tal,“On the visibility of point clouds,”in 2015 IEEE International Conference on Computer Vision(ICCV),Dec 2015,pp.1350-1358で提案されている技法を利用する。この分析は、画像では見えないかもしれない表面への色の「にじみ」や、結果の歪みを防ぐのに役立つため、結果として得られる着色されたポイントクラウドの品質にとって重要である。2つの刊行物の全体の内容は、参照により本明細書に援用される。
【0124】
この技術は、ローカルポイントクラウドを、原点に視点、即ちカメラを有する新しい座標系に変換するステップを含む。
図14Aは、視点を中心とする球体を使用した球面フリッピング反転を示す。反転ステップにおいて、ローカルポイントクラウド内のポイントは、現実世界でカメラに近いポイントが遠くなるように、球体に対して放射状に反射される。次いで、凸包は、新たに変換されたポイントのセットについて計算され、凸包上に存在するこれらのポイントは、可視であるとみなされる。
図14Bは、可視であるとみなされる凸包上のポイントの逆投影を示す。
【0125】
結果として得られる間引きされたポイントクラウド(
図10F)に対して可視性チェックを実行すると、可視ポイントが由来するビンへの参照が維持され、これらは、
図10Gに示される完全に密な可視ポイントクラウドを迅速に回復するために使用される。このようにして、ステップ945では、可視ポイントを有するビン内のすべてのポイントが取得され、ステップ950では、可視ローカルポイントクラウドを決定するために使用される。
【0126】
隠れたポイントを除去するためのアルゴリズムは、O(NlogN)の操作であることから、特にポイントクラウドが密集している場合又はローカルポイントクラウドの範囲が大きな屋外シーンのために高く設定されている場合、着色パイプラインのランタイムにかなりのオーバーヘッドが追加され得る。そのため、ポイントをバケット化し、間引きされたローカルポイントクラウドに対して分析を実行することにより、大幅な計算効率が達成される。
【0127】
従って、上述の最適化は、可視ポイントの計算における計算の複雑さを軽減するのに有用である。上述のように、第1の最適化には、カメラポーズに従って位置決め及び方向付けされた固定円セクタ内にあるポイントを見つけるステップを含む。
【0128】
第2の最適化は、近くのポイントが同一の可視性値を有することを仮定している。
【0129】
どちらの最適化も、完成した3Dポイントクラウドの領域を表すために模範的な3Dポイントが使用される、データ構造を利用する。領域(即ちボクセル)は、3Dポイントクラウドを、重なり合わない矩形領域の固定セットに分割することにより形成される。このデータ構造は、階層の第1の層が3Dポイントクラウドの最も粗い分割を示す、階層形式を可能にする。後続の層は、その模範的な3Dポイントによってカプセル化された領域のサイズを縮小し、その結果、より多くの模範的なポイントを含む。
【0130】
上述の第1の最適化は、円セクタ内の領域を見つけるために、階層データ構造の第1の層の模範ポイントを使用する。次いで、可視性を計算するために、選択された粗い領域と重なるより細かい領域の模範的なポイントが使用される。次いで、模範ポイントに割り当てられた結果の可視性値は、その関連する領域内のすべてのポイントに伝播される。
【0131】
両方の最適化の重要な特性は、それぞれのステップの計算の複雑さがボクセルの数によって制限されることである。
【0132】
隠れポイント除去処理で使用されるラジアル(即ち球面)変換は、以下の式1:
【数1】
によって定義され、ここで、ポイントクラウドQ=[q
1,...,q
n]内のそれぞれの3Dポイントq
iは、新しい3Dポイントp
i=F(q
i)にマッピングされ、関数f:R
++→R
++は、球面反射を実行する単調減少カーネル関数である。
【0133】
式2及び式3によって定義されるように、線形カーネル及び指数反転カーネルを含むカーネル関数の選択には、多くの可能性がある。
【数2】
【数3】
ここで、dは、原点からのポイントの距離であり、γは、設計パラメータである。
【0134】
上述のカーネル関数のスケール不変性をテストするために、
図11Aに示される合成データセットが生成される。ここで、2つのブロック及びその背後の壁は、異なるサイズを有し、観測者から異なる距離に位置するが、観測者がいる位置に配置されたカメラの画像に投影された時に、同一の正確な外観を有するように生成される。
図11B及び
図11Cは、この投影が、問題の2つのカーネルについてどのように見えるかを示している。
【0135】
可視ポイントの投影で観測される壁のギャップは、前景のボックスと背景の壁の縁の周りの鋭い不連続性に起因する。しかしながら、このギャップの大きさは、可視性分析が、線形カーネルではなく、指数反転カーネルによって実行されたときに、異なる深度(画像の左側と右側)に位置するシーン間でより一貫性を有するように見えることに留意されたい。より定量的な比較を提供するために、これが合成シーンであり、且つ形状が十分に単純であることを考慮して、それぞれの壁の可視ポイントの実際の予測数が計算される。次いで、それぞれのカーネルタイプのγ値の範囲で可視性分析が実行され、可視とみなされたそれぞれの壁からのポイントの数がカウントされる(
図11D)。指数反転カーネルの精度は、すべてのγ値にわたって異なる深度のシーン間で一貫しているが、線形カーネルは、異なる深度での可視性分析の品質に不一致を示す。
図11Eには、線形及び指数反転カーネル間の更なる比較が示されている。
【0136】
シーケンス内のビデオフレームは互いに独立して処理されるため、それぞれの視点から着色される3Dポイントの空間ルックアップは、連続する画像によって処理されるポイントに冗長性をもたらす。これは、特に処理された画像間の時間間隔が小さい場合又は2つの連続する視点間のカメラポーズの変化がわずかである場合に当てはまる。色のよりロバストな推定値を得るためには、いくつかの冗長な観測が望まれるが、十分に観測されたとみなされるポイントを空間ルックアップから除去し、後続の視点で処理されるポイントの数を減らすことで、処理時間の大幅な高速化を達成することができる。
【0137】
ポイントがどれだけよく観測されたかを測定する単純な方法は、観測の数をカウントし、その数が特定の閾値に到達したらポイントを除去することである。但し、本明細書に記載されたアプローチでは、観測されたそれぞれの色は、現在の視点に対するポイントの深度に反比例する重みによってスケーリングされる(式4)。従って、それぞれのポイントについてのこの蓄積された重みの使用は、空間ルックアップから除去するポイントをマーキングするためのメトリックとして提案される。
【数4】
ここで、zは、次式によって与えられる。
【数5】
ここで、max_rangeは、ユーザーによって定義されるパラメータである。
【0138】
この重み付けの必要性は、ポイントクラウドの密度と画像の解像度によっては、同一のピクセルに投影された複数の3Dポイントが存在し得るという事実から生じる。カメラからの距離が長くなるにつれて、実際には多少の局所的なばらつきが見られても、空間内のより多くの隣接するポイントが同じ色にマッピングされる可能性が高くなる。従って、このスケーリングは、特定の深度レベルでのすべてのポイントにわたって、1つの色の寄与を正規化することを試みる。
【0139】
観測の数とは対照的に、累積重みを使用することにより、現在制限されている観測は、値が空間ルックアップからの除去するための閾値に近づくと、少なくともいくつかの高品質なものを含む可能性が高くなる。この閾値の選択は、その後、アプリケーションの要件及び制約に依存する。
【0140】
可視性分析アルゴリズムが有意な結果を生成するには、すべての3Dポイント、従って潜在的な閉塞の知識が、すべての視点について維持されなければならないことに留意することが重要である。しかし、上述の空間ハッシュ選択の使用は、特定の視点が処理される時点までに、空間ルックアップによって返されるポイントクラウドが間引きされている可能性があり、それによりポイント可視性の誤った評価につながることを意味する。従って、可視性分析と空間ハッシュ選択が両方使用される場合、それぞれの視点における可視性は、ポイントクラウド全体で予め計算され、新しいルックアップテーブルに格納されなければならず、次いで実際の色割当フェーズの間に参照され、それに応じて選択されることができる。
【0141】
色割当フェーズのタスクは、その交差する色のセットに基づいてそれぞれの3Dポイントの平均色を計算することである。算術平均を使用すると、過度に不鮮明な結果を与えるが、モードを使用すると、その感度に起因して過度にノイズの多い結果を与える。従って、中間のロバストな平均が必要とされる。課題は、中央値など、外れ値に対してロバストな平均は、同時に色サンプルのフルセットを必要とすることである。これは、ポイントごとに色のリストを維持する必要があり、メモリのコストがかかる。従って、算術平均のように累積的な方法で計算できるが、中央値や他のロバストな平均のように外れ値の重みを小さくする平均が必要とされる。
【0142】
例示的な色選択アルゴリズムを以下に提示する。これは、問題をチャネルごとに取り扱い、サンプル内の平均及び分散の現在の推定値の周りのガウス関数に基づいて、それぞれの新しいサンプルを重み付けする。行6では、平均及び分散の推定値が更新されるのに伴い、移動ロバスト平均を再重み付けします。これは、サンプルの数が20未満など小さい場合に精度が向上します。
【0143】
【0144】
ここで、N(c,d,n)は、ガウス関数f(x;μ,σ2)への入力として、平均及び分散c/n,d/n-(c/n)2を与える。
【0145】
この方法は、ガウス重み付け関数を使用することによる、反復的に再重み付けされた最小二乗ロバスト平均の1回の反復の累積近似である。累積近似の欠点は、結果として得られる平均が何らかの順序依存性を有することである。但し、サンプル順序に伴うロバスト平均の標準偏差は、サンプルの標準偏差の10パーセント未満であり、サンプル数がゼロ及び無限数の場合に、偏差がゼロになる傾向がある。この小さな順序依存性は、ポイント間の可視ノイズを引き起こす可能性があるが、アルゴリズムは、同一の時間的順序でそれぞれのポイントを処理するため、空間ノイズは回避される。
【0146】
次に、推定された重み付けされたガウス分布の平均を用いて、最終的な色を3Dポイントに割り当てる具体的な例について説明する。
【0147】
以下の対数尤度関数を使用して、重み付けされたガウス分布の平均及び共分散を推定する問題を考える。
【数6】
ここで、Nは、多変量ガウス密度関数であり、x
iは、候補色であり、且つw
i≧0は、色x
iに割り当てられた重みである。μ及びΣについての解は、以下の通りである。
【数7】
【数8】
ここで、Si=(xi-μ)(xi-μ)
Tである。
【0148】
式7及び式8から、以前のN-1個の色候補の寄与は、3つの量を使用して表せることが明らかである。
【数9】
【0149】
従って、ポイントクラウド内のそれぞれのポイントは、処理中に3つの状態変数を必要とする。上述の技術は、カメラによって記録されたビデオが順次処理されることを可能にすることを理解されたい。
【0150】
一例では、重みw
iは、以下の形式の重み付けされていないガウス分布を使用して計算される。
【数10】
この重み付け関数の選択は、観測値が到着する順序に対してロバストでありながら、誤った候補色に対すて一定レベルのロバスト性を提供する。それぞれの候補色の重みを計算するための重み付けされていないガウス分布の使用は、1ポイント当たり2つの状態変数が余分に必要になるが、状態変数に必要なメモリは、すべての色候補を格納するために必要なメモリよりも格段に小さい。
【0151】
次に、
図12A~
図12Bを参照して、ポイントクラウド内の3Dポイントを着色するための特定のプロセスについて説明する。
【0152】
この例では、ステップ1200において、まず、カメラ外部及び内部パラメータが取得される。次いで、ステップ1205では、処理されるフレームの可視ローカルポイントクラウドがルックアップから取得される。次いで、ステップ1210では、2D画像座標に可視3Dポイントを変換するために、カメラ外部及び内部パラメータが使用される。このようにして、可視3Dポイントがフレーム内の画像上に投影される。ステップ1215では、2D画像座標におけるピクセルの色に対応して、3Dポイントの候補色(即ちRGBベクトル)が抽出される。
【0153】
ステップ1220では、候補色が上述の累積色選択アルゴリズムに提供される。次いで、ステップ1225では、3Dポイントに対して色の移動ロバスト平均が更新される。
【0154】
ステップ1230では、方法は、例えば、上述の空間ハッシュ選択を使用することにより、3Dポイントの色のコンフィデンスに到達したかどうかをチェックする。3Dポイントの色のコンフィデンスに到達している場合、ステップ1235において、3Dポイントが空間ルックアップから除去され、それにより、任意の後続のフレームで処理されないことが保証される。到達しない場合、ステップ1240において、3Dポイントが空間ルックアップ内に残り、それにより後のフレームでの更なる色観測を可能にする。
【0155】
ステップ1245では、方法は、着色される任意のフレームが残っているかどうかを判定する。残っている場合、方法は、ステップ1205に戻り、次のフレームのための可視ローカルポイントクラウドがルックアップから取得される。着色されるべきすべてのフレームがされた場合、ステップ1250において、それぞれの3Dポイントの移動ロバスト平均が取得され、ステップ1255において、対応するロバスト移動平均を使用して、色がそれぞれの3Dポイントに割り当てられる。従って、このようにして、ポイントクラウドの全体を着色することができる。
【0156】
別の実施形態では、処理されるべきすべてのフレームがされたとき、それぞれの3Dポイントが位置する表面に対する視点の間の角度が決定され、且つ角度が90°に最も近い3Dポイントに対応する色を使用することにより、色が3Dポイントに割り当てられる。この表面は、球面フリッピング及び凸包構築を含む上述の技術により定義することができる。
【0157】
実験
すべての実験において、既存のカメラレスlidar走査装置が使用され、且つこれらにカメラが追加された。
【0158】
実行された実験では、システムは、8つのコアのIntel Core i7-6920HQ CPU@2.90GHzと、8GBのメモリとを有する標準的なラップトップ上で稼働する。テストでは、GoPro 4 Session及びRicoh Theta S 360°カメラの2つのタイプの消費者用カメラを使用した。テストには、携帯型装置(CSIRO Revoユニット)、無人航空機DJI Matrice 600及び電動全地形型のJohn Deere TE Gator自律型地上車両の3つのタイプのプラットフォームを使用した。システムの容易な適用性及びポータビリティを示すために、(
図4A~
図4Cの異なるセットアップで示されるように)複数のプラットフォームでテストを実行した。
【0159】
カメラがプラットフォームに取り付けられた後、lidarのベース参照フレームとカメラとの間の外部変換を決定するために外部較正を実行した。実施されたテストでは、ユーザーがカメラ画像上のポイントクラウドの視点を手動で調整できるように視覚ツールを実装した。外部を較正するために、ユーザーは、必要とされる程度の精度が得られるまで変換のすべての成分(平行移動、回転及びスケール)をチューニングする。較正の品質は、カメラによって可視化された3Dポイントを画像平面に透視投影し、両方のモダリティで十分に特徴的な特徴間の位置合わせの品質を観測することにより評価される。
【0160】
表1を参照すると、着色の品質及び処理時間に影響を及ぼすいくつかの主要なパラメータが提供されている。「値」列は、ポイントの密度及び必要な処理時間に応じて使用することができる典型的な値を示す。
【0161】
【0162】
ここで、上述のプラットフォームを使用したいくつかの例示的なテスト結果について簡潔に説明する。携帯型マッピング装置は、30mの有効範囲を有するHokuyu UTM-30LX走査型レーザー距離計を搭載した。テストは、屋内オフィス、廊下及び工業環境などの複数のエリアで実施され、歩行速度でデータを記録した。オフィス環境の着色されたポイントクラウドのスナップショットと、それに対応するカメラビューは、それぞれ
図13A及び
図13Bに示される。このタイプの環境では、上述の可視性分析は、空間のより雑然とした性質のために、大幅な視覚的改善をもたらした。
【0163】
地上車両が工業団地内で約2m/sで運転され、結果として得られた着色されたポイントクラウドのスナップショットが
図13C及び
図13Dに示される。
図4Cに示されるように、lidarからカメラへの大きな移動があり、それにより可視性分析を使用する必要がある。結果として得られたポイントクラウドは、lidar取付けポストの大きな振動にも関わらず、適切に着色されている。地上車両プラットフォームは、100mの有効範囲をもつ、Velodyne VLP-16 lidarを使用した。この場合、利用可能な16個のビームのうちの4個のみがテストで使用され、リアルタイム処理よりも高速になった。
【0164】
同様に、空中プラットフォームでは、Velodyne VLP-16 lidarを使用した。カメラの取付けは、この場合にも(
図4Bに示されるように)異なり、クワッドコプターのサイズと限られたペイロード容量を考えると、余分なケーブル配線や処理の必要性がない、小型カメラを追加するのが便利である。結果として得られた着色されたポイントクラウドのスナップショットが、
図13E及び
図13Fに示される。
【0165】
表2を参照すると、(
図13~
図13Fに示される)上述のプラットフォームで収集されたデータセットのパラメータ及び処理時間が提供される。すべての場合において、「カーネルタイプ」は、γ=0.001の指数関数型であった。
【0166】
【0167】
従って、少なくとも1つの例では、空間的にも又は時間的にもマッピング装置とカメラの緊密な結合を必要としない、移動走査プラットフォームによって取得されたポイントクラウドの着色に使用される方法が提示される。これを目的として、オプティカルフロー情報を使用してマッピング装置のデータとカメラのデータとを同期させる新規な方法が示される。着色パイプラインは、改善されたポイントクラウド可視性分析アルゴリズムを統合する。上述のパイプラインによって採用された色の蓄積及び割当スキームは、メモリ効率が高く、照明条件の変動やマッピング装置とカメラとの間の局所的な位置ずれの結果として生じる外れ値に対してロバストである。最後に、提案される着色パイプラインは、携帯、自律型地上車両又は空中車両など、様々な異なる走査プラットフォームに適用することができる。
【0168】
本明細書及び添付の請求項の全体を通して、文脈がそうではない旨を必要としない限り、「含む(comprise)」という用語及び「含む(comprises)」又は「含んでいる」などの変形は、任意の他の完全体又は完全体の群の排除ではなく、記述される完全体若しくは完全体の群又はステップの包含を意味するものと理解されたい。
【0169】
当業者は、多数の変更形態及び変形形態が明らかとなることを理解するであろう。当業者に明らかとなるすべてのこのような変更形態及び変形形態は、以上で広範に記述された本発明の趣旨及び範囲に含まれるものと見なされるべきである。