JP6843237B2 - シーンのポイントクラウドを表現するシステム及び方法 - Google Patents

シーンのポイントクラウドを表現するシステム及び方法 Download PDF

Info

Publication number
JP6843237B2
JP6843237B2 JP2019526638A JP2019526638A JP6843237B2 JP 6843237 B2 JP6843237 B2 JP 6843237B2 JP 2019526638 A JP2019526638 A JP 2019526638A JP 2019526638 A JP2019526638 A JP 2019526638A JP 6843237 B2 JP6843237 B2 JP 6843237B2
Authority
JP
Japan
Prior art keywords
point cloud
fitting
spline
patch
parameterized
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019526638A
Other languages
English (en)
Other versions
JP2019536162A (ja
Inventor
フェン、チェン
田口 裕一
裕一 田口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JP2019536162A publication Critical patent/JP2019536162A/ja
Application granted granted Critical
Publication of JP6843237B2 publication Critical patent/JP6843237B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、シーンの一組の3次元(3D)点を迅速に表現するシステム及び方法に関し、より具体的には、高速Tスプラインフィッティング(fast T-spline fitting)を用いて、シーンの一組の3D点を表現するシステム及び方法に関する。
Tスプラインは、コンピュータ支援設計、コンピュータグラフィックス及びリバースエンジニアリングにおける従来の不均一有理基底スプライン(NURBS:non-uniform rational bases spline:不均一有理Bスプライン)又は基底スプライン(bases spline:Bスプライン)表現に比べて、はるかに少ない数の制御点を用いて、任意の形状の物体を表現するために使用される。
従来のTスプラインフィッティングアルゴリズムは、一般に、簡単なBスプライン又はベジェ表面から開始して、入力ポイントクラウドを近似する。その後、より多くの制御点を制御メッシュの中に挿入することによって、大きいフィッティング誤差を有する場所において、制御メッシュが局所的に精緻化される。メッシュ精緻化後に、全ての入力点を再び用いて、新たな一組の制御点を精緻化する。これは、各メッシュ精緻化反復において、新たな最小二乗フィッティングのために、あらゆる単一のデータ点がアクセスされることを意味する。数多くの細部を有する大規模なポイントクラウドの場合、そのようなメッシュ精緻化及び最小二乗フィッティングは、高いフィッティング精度と少ない数の制御点との間の合理的なバランスを達成するために、何度も実行されなければならない。そのような従来のTスプラインフィッティング方式にとって、高速計算を達成するのは難しい。
したがって、既存の方法を用いてポイントクラウドにわたってTスプラインをフィッティングすることは、Tスプライン制御点が同時に全てのデータ点とフィッティングされなければならないことから時間がかかり、それにより計算コストもかかる。
例えば、画像を取り込む方法が特許文献1に記述されているが、その方法は、より長い計算時間を必要とする。それゆえ、シーンの一組の3D点を表現する高速Tスプラインフィッティングを提供することができるシステム及び方法が必要とされている。
米国特許出願公開第20160005221号
いくつかの実施形態は、高速Tスプラインフィッティングアルゴリズムによって、Tスプライン表面が2Dパラメータ化ポイントクラウドに効率的にフィッティングされるということの認識及び理解に基づく。
本発明の実施形態によれば、Tスプライン表現を用いてシーンのポイントクラウドを表現するシステムは、シーンの画像を取り込むように構成される3次元(3D)センサと、3Dセンサ、及びTスプライン表現を用いてシーンのポイントクラウドを表現するプログラムを記憶するメモリと通信し、プログラムの命令を実行するように構成されるプロセッサであって、命令は、3Dセンサを用いてシーンの画像を取り込むステップと、画像からポイントクラウドを生成するステップと、ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、ポイントクラウドのパラメータ化領域を決定するステップと、終了条件が閾値条件を満たすまで、パラメータ化領域及びポイントクラウドのマッピングされたデータ点を一組のパッチに再帰的に分割処理するステップであって、現在の分割処理は、先行する分割処理によって形成されたパッチに対応するポイントクラウドの部分にスプライン表面をフィッティングすることと、パッチを更に分割処理することとを含む、ステップと、パッチを接続して、パラメータ化領域内の制御点のトポロジーを規定するTメッシュを形成するステップと、Tメッシュに従ってポイントクラウドにTスプライン表面をフィッティングし、制御点の位置を特定するステップとを含む、プロセッサとを備える。
本発明の別の実施形態は、メモリ及び3次元センサと通信するプロセッサを用いて、Tスプライン表現を用いてシーンのポイントクラウドを表現する方法であって、3Dセンサを用いてシーンの画像を取り込むことと、画像からポイントクラウドを生成することと、ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、ポイントクラウドのパラメータ化領域を決定することと、終了条件が閾値条件を満たすまで、パラメータ化領域及びポイントクラウドのマッピングされたデータ点を一組のパッチに再帰的に分割処理することであって、現在の分割処理は、先行する分割処理によって形成されたパッチに対応するポイントクラウドの部分にスプライン表面をフィッティングすることと、パッチを更に分割処理することとを含むことと、パッチを接続して、パラメータ化領域内の制御点のトポロジーを規定するTメッシュを形成することと、Tメッシュに従ってポイントクラウドにTスプライン表面をフィッティングし、制御点の位置を特定することとを含む、方法を提供する。
さらに、別の実施形態は、プロセッサにTスプライン表現を用いてシーンのポイントクラウドを表現する方法を実行させるプログラムコードを記憶する非一時的コンピュータ可読記録媒体であって、プログラムコードは、3Dセンサを用いてシーンの画像を取り込むプログラムコードと、画像からポイントクラウドを生成するプログラムコードと、ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、ポイントクラウドのパラメータ化領域を決定するプログラムコードと、終了条件が閾値条件を満たすまで、パラメータ化領域及びポイントクラウドのマッピングされたデータ点を一組のパッチに再帰的に分割処理するプログラムコードであって、現在の分割処理は、先行する分割処理によって形成されたパッチに対応するポイントクラウドの部分にスプライン表面をフィッティングすることと、パッチを更に分割処理することとを含む、プログラムコードと、パッチを接続して、パラメータ化領域内の制御点のトポロジーを規定するTメッシュを形成するプログラムコードと、Tメッシュに従ってポイントクラウドにTスプライン表面をフィッティングし、制御点の位置を特定するプログラムコードとを含む、非一時的コンピュータ可読記録媒体を開示する。
本開示の実施形態によれば、本開示の実施形態によるTスプライン表現を用いてシーンのポイントクラウドを表現するシステム及び方法は、コンピュータを用いて、計算コストを著しく削減することができ、シーン物体内の画像のデータ処理を改善することができる。
さらに、本開示の実施形態によれば、プロセッサと接続されるメモリ又はコンピュータ可読記録媒体に記憶されるプログラムのアルゴリズムは、制御処理ユニット使用量、及びプロセッサの電力消費量を削減することができる。
本明細書に組み込まれ、その一部を構成する添付の図面は、1つ以上の特定の例を示し、例の説明とともに、その特定の例の原理及び実施態様を説明する役割を果たす。
本開示の実施形態による、高速Tスプラインフィッティングシステムを示すブロック図である。 3Dセンサを用いて3Dポイントクラウドを取り込むことを例示する図である。 ベジェパッチの場合に計算される制御点を表す図である。 頂点nに対応する破線円内部の6つの接合部を表す図である。 頂点nに対応する破線円内部の6つの接合部を表す図である。 未処理のポイントクラウドのデータから、フィッティング済みTスプライン表面を取得するTスプラインフィッティングプロセスのデータ処理ステップを示すブロック図である。 本開示の実施形態による、物体としてソファを使用するTスプラインフィッティングのデータ処理ステップを示す図である。 いくつかの異なるシーンについて、本発明のアルゴリズムと、KinFu、すなわち、キネクトフュージョン(Kinect Fusion)のオープンソース実施態様との定性的比較を示す図である。 本開示の一実施形態による、SKI法とFasTfit法との比較を示す図である。 本開示の一実施形態による、SKI法とFasTfit法との比較を示す図である。 FindKnotMultiplicityアルゴリズムを用いて取得されるフィッティング結果を示す図である。 FindKnotMultiplicityアルゴリズムを用いない場合に取得されるフィッティング結果を示す図である。 未編成ポイントクラウドをフィッティングする例を示す図である。 2つの元の画像と、対応する画像フィッティング結果を有するC32 Tメッシュ結果及びSKI−C32CTRL Tメッシュ結果とを示す図である。
上記で明らかにされた図面は、ここに開示されている実施形態を記載しているが、この論述において言及されるように、他の実施形態も意図されている。この開示は、限定ではなく代表例として例示の実施形態を提示している。ここに開示されている実施形態の原理の範囲及び趣旨に含まれる非常に多くの他の変更及び実施形態を当業者は考案することができる。
以下の説明は、例示的な実施形態のみを提供し、本開示の範囲も、適用範囲も、構成も限定することを意図していない。そうではなく、例示的な実施形態の以下の説明は、1つ以上の例示的な実施形態を実施することを可能にする説明を当業者に提供する。添付の特許請求の範囲に明記されているような開示された主題の趣旨及び範囲から逸脱することなく要素の機能及び配置に行うことができる様々な変更が意図されている。
以下の説明では、実施形態の十分な理解を提供するために、具体的な詳細が与えられる。しかしながら、当業者は、これらの具体的な詳細がなくても実施形態を実施することができることを理解することができる。例えば、開示された主題におけるシステム、プロセス、及び他の要素は、実施形態を不必要な詳細で不明瞭にしないように、ブロック図形式の構成要素として示される場合がある。それ以外の場合において、よく知られたプロセス、構造、及び技法は、実施形態を不明瞭にしないように不必要な詳細なしで示される場合がある。さらに、様々な図面における同様の参照符号及び名称は、同様の要素を示す。
また、個々の実施形態は、フローチャート、フロー図、データフロー図、構造図、又はブロック図として描かれるプロセスとして説明される場合がある。フローチャートは、動作を逐次的なプロセスとして説明することができるが、これらの動作の多くは、並列又は同時に実行することができる。加えて、これらの動作の順序は、再配列することができる。プロセスは、その動作が完了したときに終了することができるが、論述されない又は図に含まれない追加のステップを有する場合がある。さらに、特に説明される任意のプロセスにおける全ての動作が全ての実施形態において行われ得るとは限らない。プロセスは、方法、関数、手順、サブルーチン、サブプログラム等に対応することができる。プロセスが関数に対応するとき、その関数の終了は、呼び出し側関数又はメイン関数へのその機能の復帰に対応することができる。
さらに、開示された主題の実施形態は、少なくとも一部は手動又は自動のいずれかで実施することができる。手動実施又は自動実施は、マシン、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、又はそれらの任意の組み合わせを用いて実行することもできるし、少なくとも援助することができる。ソフトウェア、ファームウェア、ミドルウェア又はマイクロコードで実施されるとき、必要なタスクを実行するプログラムコード又はプログラムコードセグメントは、マシン可読媒体に記憶することができる。プロセッサ(複数の場合もある)が、それらの必要なタスクを実行することができる。本発明は、高速Tスプラインフィッティングを利用することによって従来技術のフィッティングシステムを改善する。
図1Aは、本開示の実施形態による、高速Tスプラインフィッティングシステム100を示すブロック図である。高速Tスプラインフィッティングシステム100は、キーボード111及びポインティングデバイス/メディア112、マイクロフォン113と接続可能な入力/出力(I/O)インターフェースを有するヒューマンマシンインターフェース(HMI)110、受信機114、送信機115、3Dセンサ116、全地球測位システム(GPS)117、1つ以上のI/Oインターフェース118、プロセッサ120、記憶装置130、メモリ140、ローカルエリアネットワーク及びインターネットネットワーク(図示せず)を含むネットワーク155と接続可能なネットワークインターフェースコントローラ150(NIC)、ディスプレイデバイス165に接続されたディスプレイインターフェース160、撮像デバイス175と接続可能な撮像インターフェース170、印刷デバイス185と接続可能なプリンタインターフェース180を備えることができる。I/Oインターフェースを有するHMI110は、アナログ/デジタル変換器及びデジタル/アナログ変換器を含むことができる。I/Oインターフェースを有するHMI110は、無線インターネット接続又は無線ローカルエリアネットワークを介して、複数の3Dポイントクラウドを完成させることを可能にする、他の高速Tスプラインフィッティングシステム又は他のコンピュータと通信することができる無線通信インターフェースを含む。高速Tスプラインフィッティングシステム100は、電源190を備えることができる。電源190は、外部電源(図示せず)からI/Oインターフェース118を介して充電可能なバッテリーとすることができる。用途に応じて、電源190は、任意選択で、システム100の外部に配置することができる。HMI及びI/Oインターフェース110及びI/Oインターフェース118は、とりわけ、コンピュータモニター、カメラ、テレビ、プロジェクター、又はモバイルデバイスを含む別のディスプレイデバイス(図示せず)に接続するように適応させることができる。
高速Tスプラインフィッティングシステム100は、NIC150に接続したネットワーク155を介して発話データを含む電子テキスト/撮像文書を受信することができる。記憶装置130は、高速Tスプラインフィッティングプログラム131を含み、そのプログラム131のアルゴリズムは、コードデータとして記憶装置130に記憶され、そのアルゴリズムは、コードデータ(プログラムのアルゴリズム又は命令)に従ってプロセッサ120によって実行される。プログラム131は、メモリ140を用いてコンピュータ可読記録媒体(図示せず)からプログラムのアルゴリズムをロードすることによってプロセッサ120が高速Tスプラインフィッティングプログラムを実行できるように、この媒体に記憶することができる。さらに、ポインティングデバイス/媒体112は、コンピュータ可読記録媒体上に記憶されたプログラムを読み出すデータ処理デバイスを含むことができる。
3Dセンサ116を用いてシーンの3Dポイントクラウドを取り込み始めるために、キーボード111、ポインティングデバイス/媒体112を用いて、又は他のコンピューター195に接続されるワイヤレスネットワーク若しくはネットワーク155を介して、システム100に命令を送信することができる。3Dポイントクラウドの取り込みは、記憶装置130内に記憶されるプリインストールされた従来の音声認識プログラムを用いて、マイクロフォン113を介してユーザーの音響信号を受信するのに応答して開始することができる。さらに、高速Tスプラインフィッティングシステム100は、ネットワーク155を介して、他のコンピューター195から3Dポイントクラウドのデータを受信することができ、3Dポイントクラウドの受信データを用いて、高速Tスプラインフィッティングを実行することができる。システム100は、高速Tスプラインフィッティングプロセスの結果として生成されたデータを、ネットワーク155を介して他のコンピューター195に送信することができる。

プロセッサ120は、1つ以上のグラフィックス処理ユニット(GPU)を含む、複数のプロセッサとすることができる。記憶装置130は、マイクロフォン113を介して取得された音声信号を認識するためにプロセッサ120によって実行することができる音声認識アルゴリズム(図示せず)を含むことができる。
プロセッサ120は、メモリ140と通信する記憶装置130に記憶されるプログラム131の命令を実行する。3Dセンサ116は、シーンのデータを取り込み、画像のデータを、I/Oインターフェース110を介してメモリ140に送信する。プロセッサ120は、メモリ140内の画像のデータから、シーンの3Dポイントクラウドを生成する。3Dポイントクラウドから、プロセッサ120は、ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、ポイントクラウドのパラメータ化領域を決定する。さらに、プロセッサ120は、パラメータ化領域及びポイントクラウドのマッピングされたデータ点を、終了条件が満たされるまで、一組のパッチに再帰的に分割処理する。この場合、現在の分割処理は、先行する分割処理によって形成されるパッチに対応するポイントクラウドの部分にスプライン表面をフィッティングすることと、フィッティングの誤差が或る閾値(誤差値)より大きいとき、更にパッチを分割処理することとを含む。閾値は事前に決定することができる。例えば、閾値は、ポイントクラウドのその部分の面積によって、又は所定のフィッティング誤差値によって決定することができる。この場合、各パッチのフィッティング誤差は、パラメータ化領域の他のパッチのフィッティング誤差から独立して求められる。フィッティング誤差値は、フィッティング誤差と呼ばれる場合がある。さらに、各パッチのフィッティング誤差は、パラメータ化領域の他のパッチのフィッティング誤差から独立して求めることができる。
場合によっては、閾値は、画像の所定のデータサイズに基づいて自動的に決定される場合がある。閾値はデータに依存する場合があり、使用されるデータのコンテキストに応じて決定される場合がある。さらに、プロセッサ120は、パッチの接続を実行して、パラメータ領域内の制御点のトポロジーを規定するTメッシュを形成し、Tメッシュに従ってポイントクラウドにTスプライン表面をフィッティングし、制御点の位置を特定する。
場合によっては、パッチはそれぞれ、パラメータ化領域内の長方形のサブパッチとすることができる。さらに、分割処理することは、パラメータ化領域を一組のパッチに均等に、又は不均等に分割することができる。
いくつかの例では、閾値条件は、パッチ内のデータ点に対してフィッティングされるスプラインに関する所定のフィッティング誤差値によって定義することができる。別の場合では、閾値条件は、画像の所定のデータサイズによって定義することができる。
さらに、フィッティング済みTスプライン表面のデータは、ディスプレイデバイス又は別のコンピュータに送信することができる。この場合、ディスプレイデバイスは、ディスプレイデバイスの画面上にTスプライン表面及びTメッシュを表示することができる。
ポイントクラウド取込プロセス
図1Bは、本開示の実施形態による、高速Tスプラインフィッティングシステム100の3Dセンサ116を用いて3Dポイントクラウドを取り込むことを例示する図である。この場合、高速Tスプラインフィッティングシステム100は、前壁210、左壁211、右壁212、床220、天井(図示せず)、ソファ230、ランプ240及び窓250を含む、室内の物体の点データをスキャンする。
3Dセンサ116は、物体の表面上で測定された一組の3D点を含む、物体の点データを取り込み、点データはメモリ140又は記憶装置130に記憶される。高速Tスプラインフィッティングプログラム131に従って、プロセッサ120を用いて、点データに関するデータ処理が実行される。通常、一組の3D点は、奥行画像として知られる、ピクセルによって示される2D画像として取り込まれ、各ピクセルは、そのピクセルによって規定される光線の方向に沿って位置する物体の表面上の3D点までの距離測定値(距離値)を含む。ピクセルごとに、ピクセルに対応する光線の方向は、3Dセンサ116の内部較正パラメータを用いてピクセルを逆投影することによって再生することができ、3D点は3Dロケーションにおいて光線上で再生することができ、3Dセンサ116からの3Dロケーションの距離は距離測定値によって与えられる。
本開示の一実施形態において、3Dポイントクラウドは、3Dセンサ116を固定された姿勢に配置することによって生成される。3Dセンサ116の姿勢は3自由度並進(位置)及び3自由度回転(向き)を含み、全部で6自由度を有する。この場合、点データは固定された姿勢において単一フレームとして(奥行画像として)取り込まれ、その点データの単一のフレームによって3Dポイントクラウドが生成される。別の実施形態において、3Dポイントクラウドは、3Dセンサを異なる姿勢に動かし、異なる姿勢において点データの複数のフレームを取り込み、複数のフレームを単一の共通座標系(所定の座標系)の中に互いに位置合わせすることによって生成される。そのような位置合わせは、当前記技術分野において既知であるような同時位置特定及びマッピング(SLAM:simultaneous localization and mapping)技法を使用することによって行うことができる。
入力ポイントクラウドが、奥行画像行−列インデックスを使用することによって固定的にパラメータ化されたと仮定する。任意のダウンストリームアプリケーションに関して高速計算が不要である場合でも、本発明の高速Tスプラインフィッティング方式は依然として任意の、より良好なパラメータ化方法を用いて機能することができ、制御点の数がより少ない、潜在的により良好なフィッティング結果をもたらす。さらに、大部分の他のパラメータ化は時間がかかるので、はるかに高速の計算と引き換えに、わずかに制御点が増える負担を担うのが合理的である。したがって、本開示のいくつかの実施形態は、制御処理ユニット使用量及び電力消費量を削減することができ、それもコンピュータの機能を改善する。
図2Aは、u−v座標上のシート表面の例示であり、そのシートは制御点及びパッチによって表される。図2B及び図2Cは、d=3の場合の局所ノットベクトル推定の例を示す。3つのベジェパッチ(b1;b2;b3)が、Cの所定の表面連続性を有する単一のTメッシュを生成するように接続される。各パッチ境界は、データに応じて連続(実線)又は不連続(破線)に分類され、それを用いて、インデックス/パラメータ空間内でノット多重度(重複するノットラインの数)を求める。図2C内の破線円内部の6つの接合部は、図2B内の頂点n(×印)に対応する。ベジェパッチ(黒点)に対して計算される制御点を用いて、最終的なTスプラインに関して制御点を初期化する。
図3Aは、本開示の実施形態による、未処理のポイントクラウドのデータからフィッティング済みTスプライン表面を取得する高速Tスプラインフィッティングプロセスのデータ処理ステップを示すブロック図である。Tスプラインフィッティングプロセスは、3Dセンサ116を用いて未処理のポイントクラウド(ポイントクラウドデータ)を取り込むステップ(ステップS1)と、パラメータ化ポイントクラウドを取得する(ステップS3)ためのデータパラメータ化ステップ(ステップS2)と、Bスプラインパッチを取得する(ステップS5)ための適応分割ステップ(ステップS4)と、異なる連続性を有するTメッシュを取得する(ステップS7)ためにBスプラインパッチに基づいてTメッシュを推定するステップ(ステップS6)と、フィッティング済みTスプライン表面を取得する(S9)ために、パラメータ化ポイントクラウドデータと、異なる連続性を有するTメッシュとを用いて、Tスプラインをフィッティングするステップ(ステップS8)とを含む。
図3Bは、本開示の実施形態による、物体としてソファを使用するTスプラインフィッティングのデータ処理を示す。この場合、未処理のポイントクラウド(ソファの3Dポイントデータ)が3Dセンサ116を用いて取り込まれる。ポイントクラウドの各データ点が、3次元空間(x軸、y軸及びz軸)によって表される。ポイントクラウドに関してデータパラメータ化が実行され、パラメータ化されたポイントクラウドがベクトル{(x,y,z,u,v)}として取得される。ただし、パラメータ化されたポイントクラウドは、図示されるように、u−v座標上の点(u,v)に基づいてパラメータ領域によって表すことができる。図3Aの各ステップも対応して図に示される。
Bスプライン及びNURBSフィッティング
Bスプライン又はNURBS表面をフィッティングするための2つの方式がある。第1の方式は、簡単な制御メッシュから開始し、大きいフィッティング誤差(フィッティング誤差値)を有するエリアにおいてグローバルノット精緻化を実行し、全ての制御点の最適な位置を求め、必要に応じて、データパラメータ化を更新し、その後、フィッティング誤差が十分に小さくなるまで、このプロセスを繰り返す。第2の方式は、必要以上に複雑なメッシュから開始し、ノット除去によってそのメッシュを繰り返し簡単にすることによって、その手順を逆に実施する。
Tスプラインフィッティング
或る次数のTスプライン式が、関連するパラメータu及びvを有する各Tスプライン表面点Q(u,v)∈Rを、以下のように、全ての制御点C∈R,k=1,...,Kの組み合わせとして表す。
Figure 0006843237
ただし、U及びVは、第kの制御点に関連付けられる、R2d−1内の局所ノットベクトルであり、T:R×R→Rは、入力変数としてu、vをとり、関数パラメータとしてU、VをとるTスプラインブレンディング関数であり、wは、制御点ごとの重みである。
FASTFITアルゴリズム
FastFitアルゴリズムと呼ばれる、高速Tスプラインフィッティングアルゴリズムの概要が、本開示の実施形態による、以下のアルゴリズム1によって記述される。
Figure 0006843237
FastFitアルゴリズムは以下のステップを含むことができる。
FitBezierPatchAdaptive:第一に、入力ポイントクラウドが、所定のフィッティング誤差閾値に従って、一組のBスプライン/ベジェパッチに適応的に分割(分割処理)される。これらのパッチはそれぞれ、入力データパラメータ領域内の長方形のサブ領域に対応する。言い換えると、各パッチは、パラメータ化領域内の長方形のサブパッチである。例えば、図2B及び図2Cに示されるように、パラメータ化領域は不均等に分割される場合がある。
InferLocalKnotVector:第二に、所定の最終モデル連続性と、隣接するパッチの共有エッジにおけるデータ連続性との両方に応じて、これらのサブ領域が、異なる接続選択肢を有するTメッシュに構成される。これは、制御点の数を決定し、Tメッシュを生成するために、対応する局所ノットベクトルを推定できるようにする。
SolveControlPoint:この固定T−メッシュを見つけた後に、ベジェパッチフィッティング結果で初期化されたPCGを用いて、最適な制御点を取得するために、最終的に、大きい疎線形システムを解く。
各ステップの詳細を説明する前に、固定されたパラメータ化を有するポイントクラウドに焦点を合わせる。
本実施態様において、数多くの3Dセンサの未処理の出力は一組の2Dインデックス付き3D点F={pi,j∈R;i=1,...,M、j=1,...,N}に容易に編成できるので、編成済みポイントクラウド(奥行画像又はzマップデータのいずれか)に関して、簡単な均一なパラメータ化が使用される。ただし、2Dインデックス(i,j)及び(i±1,j±1)は、奥行不連続性がない限り、対応する点間の3D近接関係を反映する。そのようにして、各データ点のパラメータ化は直接、その2Dインデックス(i,j)になり、すなわち、式(1)からのフィッティング済みTスプライン表面上のQ(i,j)が、データ点pi,jに対応する。未編成ポイントクラウドFの場合、PCAベースパラメータ化、すなわち、F={(p;u,v),p∈R,u∈R,v∈R;i=1,...,M}であり、ただし、3D点piごとの式(1)への入力変数としての(u,v)パラメータは、2つの最も大きい固有値に対応する2つの固有ベクトルで張られた平面上にpiを投影することによって取得される。この定式は、パラメータ化されたポイントクラウド内の部分領域に適用可能であり、任意選択で、入力ポイントクラウドのプリセグメンテーションを使用することができ、本アルゴリズムを各セグメントに適用することができる。
いくつかの実施形態において、数多くの3Dセンサの未処理の出力は一組の2Dインデックス付き3Dに編成することができるので、未編成ポイントクラウド(奥行画像又はzマップデータのいずれか)に関して、簡単な均一のパラメータ化を使用することができる。
適応的パッチ生成
本開示のいくつかの実施形態は、その多重度が、根底にあるBスプライン基底関数の次数、すなわち、d+1に等しくなるまで、各ノットラインにおいて繰り返されるノット挿入を使用することによって、任意のTスプライン表面を一組の独立したBスプライン、又はより簡単に言うと、ベジェ表面に変換できるという認識に基づく。逆の手順において考えるとき、入力点のそれぞれを、固定ノットベクトルを有する簡単なBスプラインによって、或いはベジェパッチによって十分に表すことができるまで、入力点をより小さいパッチに適応的に分割するとどうなるかを解析した。そうすると、共有されるノットラインにおいて、すなわち、パラメータ領域内の各パッチの境界において、全てのそのようなパッチを、適切な連続性を有する単一のTスプラインになるように互いに構成するだけで十分である。
これが、以下のアルゴリズム2において説明される本発明の適応的パッチ生成につながる。本発明の表記に基づいて、未編成ポイントクラウドの場合、
Figure 0006843237
であり、編成済みポイントクラウドの場合、
Figure 0006843237
である。不要な初期パッチフィッティングを回避するために、InitSplit関数によって、入力領域全体をいくつかの領域に均等に分割する。本実施態様では、常に、4×4ブロックから開始する。本開示の別の実施形態によれば、各領域に関する所定の面積比に従って、入力領域全体を分割することができる。
Figure 0006843237
FitBezierPatch関数は、領域r内の全てのデータ点を取り込み、そのrに関して規定されるベジェパッチbをフィッティングする。これは、標準的なQR又はコレスキー分解のいずれかを用いて以下の式を解くことによって行われる。
Figure 0006843237
ここで、Pの各行はベジェ制御点を表す。領域r内の入力データ点がQの各行に記憶され、B行列の(i,j)エントリは、r内の第iのデータ点のパラメータにおいて評価される第jの制御点のベジェ基底関数値を記憶する。
Bスプラインをフィッティングするのとは異なり、ベジェパッチのためのノットベクトルを求める必要はないことに留意されたい。それゆえ、B行列は、その領域rのサイズにのみ依存する。FitBezierPatch関数は、Bの階数不足に起因して、最小二乗フィッティングを実行できない場合がある。これは通常、大きい細部変動を有する小さい領域において、又はあまりに多くの欠落データを有する領域において生じる。上記のシステムの階数を十分にするために、空のフィットbを返し、対応するrを無視するか、又はトレードオフパラメータλを用いて、制御点間に線形制約Sを加える。例示的な制約は、隣接する制御点が互いに近づくように単に強制するか、又はフィットが揺れ動くのを抑制するために、より高度なものとすることができる。
NeedSplit関数は、異なる基準を用いて、bがフィット不良であるか否かを、それゆえ、より小さい部分に更に分割される必要があるか否かを判断することができる。入力データが、あらゆる場所において同じ等方性誤差を有することが既知である場合には、この関数は、所定の閾値で、Lフィッティング誤差をチェックすることができる。そうでない場合、例えば、奥行依存性誤差を有することが既知であるキネクトデータの場合、この関数は、動的な奥行依存性閾値で、フィッティング誤差をチェックすることができる。
CanSplit関数は、所与の領域rを更に分割できるか否かを検査する。本実施態様において、未編成ポイントクラウドの場合、その関数は常に真を返す。編成済みポイントクラウドの場合、分割された領域r及びrが有効なベジェフィットを得るのに十分なデータを内部に有することができない場合には、すなわち、umax−umin+1及びvmax−vmin+1がいずれも2d+1より小さい場合には、領域rは分割することはできない。これは、分割後に、結果として生成されたブロックが制御点より少ないデータ点を有することになり、その結果、式(2)において制約付きのフィッティングを実行しない限り、階数不足のシステムが生じるためである。パッチが分割される必要があるが、分割できない状況は、留意にするに値する。これは一般に、簡単なベジェ表面として表すことができない、あまりにも多くの細部を有する小さいブロックにおいて起こる。この状況を取り扱う2つの選択肢がある。すなわち、フィッティング誤差が、所定の誤差に比べて十分に小さくなるまで、そのベジェ表面上でBスプライン精緻化を実行すること、又はこの小さいデータ部分を単に破棄することである。実施態様の一例として、それらの小さい細部は一般にセンサ雑音によって引き起こされ、それらを無視しても、多くの場合に、最終的なフィッティング結果を著しく損なうことはないので、後者が選択される。
Split関数は異なる挙動を有することができる、すなわち、大きいベジェフィッティング誤差を有する場所において分割することができるか、又はフィッティング誤差分布に従って分割することができる。本実施態様では、良好なフィッティング結果を与える傾向がない疎らな領域を回避するために、その領域の長い方の側の中央において常に分割する。
局所ノットベクトル推定
アルゴリズム2の出力B、すなわち、一組のベジェパッチは基本的に、既に有効なTスプラインであり、あらゆるノットラインの多重度が全てのベジェパッチの選択された次数、d+1に等しい。しかしながら、パッチの境界にわたって滑らかであることを確実にするために、表面パラメータ連続性を規定することが、より望ましい。上記で言及されたように、パラメータ領域内の全ての返されるパッチの境界は、本発明のTスプラインフィッティングの場合に再生されるTメッシュとして取り扱われ、それは、以下のステップにおいても固定されたままである。例えば、図2Bにおいて、3つのパッチb、b及びbから簡単なTメッシュが生成される。しかしながら、Tメッシュの原画像、すなわち、いわゆる、インデックス/パラメータ空間内のTメッシュが、局所ノットベクトルを推定するために依然として特定されることになる。これは、所望の表面モデルの所定のパラメータ連続性及び入力ポイントクラウドから得られるデータ連続性の両方を考慮して、Tメッシュの各エッジに異なる多重度を割り当てることができるためである。
アルゴリズム3は、局所ノットベクトルの推定に関して記述する。最初のステップは、関数BuildMeshを用いて、全てのベジェパッチの境界から、面−エッジ−頂点で表されるメッシュTmeshを構築することである。このTmeshの頂点は、全てのパッチの角に対応する。このTmeshのエッジは、中間に任意の他の頂点を含まない全てのパッチの辺に対応する。このTmeshの面は全てのパッチに対応する。また、このTmeshは、図2Bに示されるように、u方向において[・・・,u,u,u,・・・]として、v方向において[・・・,v,v,v,・・・]としてその局所的ノット隣接要素を特定するために、頂点(u,v)からその上方向、下方向、左方向及び右方向に光線を放つ動作も可能にするはずである。
そのようなTmeshを構築した後に、FindEdgeMultiplicity関数が、Tmesh内の各エッジを調べ、そのエッジの両側に存在する2つの面/パッチ間の入力データ連続性を検査する必要がある。検査結果は、その後、そのエッジ内に記憶される。本発明の実施態様では、奥行依存性閾値を用いて、2つのパッチ間のデータ不連続性、すなわち、2つのパッチが互いに接続を断たれるか否かを検出する。これは多くの場合に、物体閉塞(object occlusion)が隣接する点間に大きい奥行差を生成するキネクトライクポイントクラウドにおいて生じる。Tメッシュ内でこの不連続を適切に取り扱わないと、結果として生じるTスプラインは、接続を断たれた入力点をフィッティングするための表現能力が低下することになる。入力ポイントクラウドのプリセグメンテーションを使用する場合であっても、データ不連続性は各セグメント内に残存する場合があり、それゆえ、局所ノットベクトルを推定するときにノット多重度を追加するために、依然としてそのような検出を実行する必要があることに留意されたい。
最後に、このアルゴリズムは、Tmesh内の各頂点を調べ、GenLocalKnotVector関数を用いて、その頂点に関連付けられる制御点のための一組の局所ノットベクトルを生成及び記憶する。これは、頂点の局所ノット隣接要素を見つける、上記で言及されたTmesh演算の助けを借りて行われる。例えば、図2Bでは、破線エッジにおいて入力点の接続が断たれるので、このエッジは不連続として表示される。したがって、フィッティングされる表面モデルに関してC1連続性が規定される場合には、GenLocalKnotVector関数が、図2Bのようなパラメータ空間内のソースTメッシュから、図2Cのようなインデックス/パラメータ空間内のTメッシュを生成する。同じ演算を用いて、青色破線円内の6つの接合部、すなわち、いわゆる、アンカーに対応する、頂点nに関する6対のノットベクトルを出力することができる。
Figure 0006843237
制御点初期化及び精緻化
一般に、ベジェパッチフィッティングにおいて単に、境界制御点が強制的に共有されるようにしても、結果として、表面の滑らかさ又はフィッティング誤差のいずれかに関して最適なTスプライン表面は生じない。アルゴリズム3から出力される一組の局所ノットベクトル(U、V)を用いてTメッシュが発見されると、
Figure 0006843237
として、最良の制御点位置を解くための疎線形システムを構築しなければならない。ただし、Tは行あたりのデータ点ごとに式(1)からのTスプラインブレンディング関数値を保持するMN×K行列であり、QはTと同じ行順の行あたりの各入力データ点を保持するMN×3行列であり、Cは、Tと同じ列順の行あたりの各未知の制御点を保持するK×3行列である(未編成ポイントクラウドの場合、N=1)。
制御点の数及び入力データサイズがいずれも小さい場合には、この疎線形システムは、コレスキー又はQR分解等の直接ソルバーを用いて解くことができる。しかしながら、問題サイズが大きいとき、直接ソルバーの使用は扱いにくいので、PCG又は漸進的フィッティング(progressive fitting)等の反復ソルバーを使用することができる。したがって、高速計算のために反復数を削減する良好な初期化が必要になる。
アルゴリズム4は、関数AssignRelevant−ControlPointを示し、その関数は、その関連するベジェパッチB内の対応する制御点として各初期Tスプライン制御点を設定することを採用することができる。図2Cは1つのそのような例を示し、4つの小点がそれらのTスプライン制御点のアンカーを示し、それらの小点はパッチb3に関連付けられる。このヒューリスティックな初期化後に、RefineControlPoints関数が、反復ソルバーを用いて、その初期推測を精緻化する。本発明の実施態様では、そのような精緻化のために、ヤコビ前処理(Jacobi preconditioner)を伴うPCGを選択する。
Figure 0006843237
本開示の実施形態によれば、上記のアルゴリズムを介して、フィッティング済みTスプライン表面を取得した後に、Tスプライン表面がディスプレイデバイス165の画面モニター上に表示される。フィッティング済みTスプライン表面のデータは、ユーザーの入力動作時に、又はネットワーク155を介した別のコンピュータ若しくは他のコンピュータからのデータ要求時に、WiFiネットワークを含むネットワーク155を介してディスプレイデバイス又は他のコンピュータ(高速Tスプラインフィッティングシステム100の外部にある)に送信することができる。
実験結果
2つの異なる適用例、すなわち、3Dポイントクラウド及び画像データにTスプラインをフィッティングする際のいくつかのデータセットにわたる本発明のFasTFitアルゴリズムの速度及び精度を評価した。編成済み3Dポイントクラウド、すなわち、キネクトライク及びzマップライク編成済みポイントクラウド、並びに未編成ポイントクラウドの3種類を検討する。キネクトポイントクラウドの場合、点間のユークリッド距離に基づく簡単なプリセグメンテーションを使用し、本発明のアルゴリズムを各セグメントに適用した。このセグメントベース手法によれば、ポイントクラウド全体に対して単一のTスプラインをフィッティングするより、制御点の数が少なくなり、それゆえ、計算が高速になることがわかった。画像データの場合、画像全体に対して単一のTスプラインをフィッティングした。4.0GHzのインテルCore i7CPUを備える標準的なデスクトップPCにおいて、OpenMP並列化を伴うC++においてアルゴリズムを実施し、全ての実験を行った。
図4は、いくつかの異なるシーンの場合の本発明のアルゴリズムと、KinFu、すなわち、キネクトフュージョンのオープンソース実施態様との間の定性的比較を示す。
第1の行は、未処理の入力ポイントクラウドを示す。第2の行は、複数のポイントクラウドを融合することによって、KinFuで得られた結果を示す。これは、複数のフレーム間の正確な位置合わせを必要とし、第2の列のように位置合わせが正確でない場合には、品質が劣化することに留意されたい。第3の行は、単一の入力ポイントクラウドの異なるセグメントにC2 Tスプライン表面をフィッティングすることによって、本開示の実施形態による本発明の結果を示す。第4の行は、異なる色において示される、ポイントクラウドセグメントにわたるフィッティング済みTメッシュを示す。正確な位置合わせを仮定すると、その表面再構成品質は、KinFuの品質に相当する。
3Dポイントクラウド
第1の適用例は、3Dポイントクラウドの各単一フレームにわたってTスプライン表面をフィッティングすることである。本発明の方法と2つの関連する従来の方法との間の定量的比較及び定性的比較の両方を実行した。
反復方式との定量的比較
小領域ノット挿入(SKI:subregional knot insertion)は、反復方式に従う編成済み入力データのためのTスプラインフィッティング方法のうちの1つである。各メッシュ精緻化反復において、その方法は、入力データ全体をいくつかの小領域(一組のパッチ)に均等に分割する。言い換えると、分割処理プロセスによって、パラメータ化領域を一組のパッチに均等に分割する。さらに、場合によっては、分割処理が、いくつかの小領域(一組のパッチ)に不均等に分割する場合がある。小領域の数は、反復とともに二次的に増加する。その際、最大フィッティング二乗平均平方根誤差(RMSE:root-mean-squared-error)を有する小領域の一定のパーセンテージが選択され、そのパーセンテージは挿入比α%と呼ばれる。言い換えると、分割処理は、最大フィッティングRMSEを用いて、分割処理パーセンテージ(挿入比α%)に基づいて実行される。例えば、分割処理パーセンテージは、0.1%〜1%の範囲内のノット挿入比とすることができる。
その後、選択された小領域ごとに、その選択された小領域内部に最大フィッティング誤差を有するデータ点を含むTメッシュ面の中心にノットが挿入される。最後に、この新たなTスプラインの制御点位置を最適化するために、PCGの代わりに、漸進的フィッティングアルゴリズム。
キネクトポイントクラウドフィッティングを本発明のFasTFit方式と比較するために、α%=0.1を用いて、SKI方式を実施した。
特定の疎線形システム解法アルゴリズムの代わりに、反復フィッティング方式対非反復フィッティング方式を比較することに留意されたい。この実験において、式(3)の線形システムが、SKI及びFasTFitの両方に関してPCGによって解かれた。
この比較に関して、3つの不可欠な統計値、すなわち、フィッティング時間、RMSE及び制御点の数がある。それらの統計値はそれぞれ、フィッティング方式の速度、品質及びモデル簡潔性を表す。6つのフィッティング構成、すなわち、C31、SKI−C31CTRL、SKI−C31RMSE、C32、SKI−C32CTRL、SKI−C32RMSEが設計された。C31(1の所定のノット多重度を有する3次スプライン)及びC32(2のノット多重度を有する3次)構成はそれぞれ、C及びCの所定の表面連続性を有するFasT−Fitを使用する。他の全ての構成は、SKIを適用し、SKIのメッシュ精緻化反復に関して異なる中止条件を用いてC表面をフィッティングする。SKI−C31CTRLは、制御点の数が本発明のC31フィットの制御点の数以上になると、そのメッシュ精緻化を中止し、一方、SKI−C31RMSEは、現在のフィッティングRMSEが本発明のC31フィッティングのRMSE以下になると中止し、SKI−C32CTRL及びSKI−C32RMSEは、C32フィットの制御点の数及びRMSEの場合に同様に規定される。
通常の屋内シーンにわたってVGAサイズのキネクトポイントクラウドの1200を超える数のフレームを収集し、これらのポイントクラウドにわたって6回の実験を実行した。その結果が表1に要約され、その表からFasTFitの以下の利点を観測することができる。
フィッティング速度
FasTFitは、SKIより少なくとも10倍〜15倍速く動作する。FasTFitのステップごとの処理時間が表2に示される。表1にセグメンテーション時間は含まれないことに留意されたい。
Figure 0006843237
Figure 0006843237
品質
SKIが同じレベルの制御点数において中止されるとき、FasTFitの結果として、同等のフィッティングRMSEが生じる(表1内のC31に対するSKI−C31CTRLのRMSEの差は0.2%未満である)。ノット挿入に起因して、SKIはFasTFit内の制御点と厳密に同じ数において中止できないので、SKI−C31CTRLの制御点の平均数は、C31の平均数よりわずかに多い。そのような条件下であっても、約29%の事例において、C31がSKI−C31CTRLより小さいRMSEを有する。
コンパクト性
SKIが同じレベルのRMSEにおいて中止されるとき、FasTFitの結果として、大抵の場合に、制御点の数が少なくなる(表1内のC31に対するSKI−C31RMSEの制御点の数を比較)。同様に、SKIはFasTFitと厳密に同じRMSEにおいて中止できないので、SKI−C31RMSEの平均RMSEは、C31の平均RMSEよりわずかに小さい。
それゆえ、FasTFitは、SKIと同等であるか、又はSKIより良好である品質及び簡潔性で、より効率的に表面表現を与える。本開示の実施形態によるFasTFitの利点は、反復メッシュ精緻化に時間を費やすことなく、適切なTメッシュを効率的に発見することができ、結果として生じるTスプラインが、以下の定性的比較において確認できるように、満足のいく表面フィットであることである。この特徴は、計算機能の改善を提供し、計算タスクに関する電力消費量を削減する。
定性的比較
表面フィッティングの品質を評価するために、SKIに加えて、本発明の結果を、打切り符号付き距離フィールド(TSDF:truncated signed distance field)において複数のポイントクラウドを融合することによって従来の表面再構成品質のうちの1つを提供するKinFu、すなわち、キネクトフュージョンのオープンソース実施態様によって得られた結果と比較する。
図4はその比較を示し、その比較では、KinFuにおいて実現されるのと同じシェーディングパイプラインを用いて全ての結果を視覚化する。本発明のアルゴリズムは、単一のフレームしか使用しなくても、KinFuと同等の高品質の表面再構成を提供する。また、本発明の表現は、図4のTメッシュ視覚化において示されるように、固定ボクセル分解能を有するTSDF表現に比べて、コンパクトであることにも留意されたい。
Zマップ/ポイントクラウド
zマップライク3Dポイントクラウドに関するFasTFitが、既知のピュージェット湾地形のデジタル標高マップ(DEM:digital elevation map)の拡張バージョン(100mのピクセル間間隔及び0.5mのピクセル単位を有する1025×1025ピクセル)を用いて評価される。図5A及び図5Bは、本開示の一実施形態による、SKI法とFasTfit法との比較を示す。この場合、反復方式は、著しく多い数の制御点に起因して、FasTFitよりはるかに(4桁)遅い速度で動作し、その結果として、最大RMSE領域を含むTメッシュ面の探索、形状保存制御点挿入、及び各反復におけるTメッシュの保持に関する計算コストによって、SKI、すなわち、反復方式は更に低速になることに留意されたい。行1は概観を示す。行2及び行3は詳細な図を示す。行4は凡例及びTメッシュを示す。メッシュはフィッティング誤差を示す。図5Bは、SKI法と比べて、FasTFitが4桁高速であり、同等の表面をフィッティングすることを示す実験結果である。
また、10〜50の範囲の次数(degree)の異なるランダムベジェ表面から生成される41個の異なるzマップポイントクラウド(1×1×1.2mの領域内の300×300点)のデータセットをシミュレートする。これに基づいて、見逃したデータ点、不連続性及び等方性ガウス雑音(0.003m標準偏差)を追加することによって、3つのデータベースを更にシミュレートする。これらのシミュレートされたデータセット(全部で164のポイントクラウド)に関するSKI法との比較が表3に示される。
Figure 0006843237
図6A及び図6Bは典型的なフィッティング結果を示し、その結果は、FasTFitのフィッティング効率及び品質を実証し、特に、FindKnotMultiplicityを通してデータ不連続性を考慮する利点を実証する。
未編成ポイントクラウド
SLAMシステムを用いて、複数のダウンサンプリングされたキネクトポイントクラウドを位置合わせすることによって取り込まれた未編集3Dポイントクラウドに関してFasTFitを更に評価する。ここでは、スキャンされたシーンからの物体を手作業でセグメント化し、上記のようなPCAベース法及び単一のTスプライン表面を用いて、物体ポイントクラウドをパラメータ化した。図7は、上から下に、未処理点、フィッティング済みTスプライン及びTメッシュに対応する、未編成ポイントクラウドをフィッティングする例を示す。
画像データ
第2の適用例は、カラー画像に関してRGB空間内でTスプラインをフィッティングすることであり、その結果は、ズーム処理及び幾何学的変換等の、種々の画像プロセスアルゴリズムを助けることができる。
図8は、2つの元の画像と、対応する画像フィッティング結果を有するC32 Tメッシュ結果及びSKI−C32CTRL Tメッシュ結果とを示す。それらの画像は、フィッティング結果及び対応するTメッシュから再構成される。元の画像と、FasTFit及びSKIの両方からのフィッティング済み画像との間の違いは、ほとんど目に見えない。元の画像、C32画像フィッティング結果及びSKI−C32CTRL画像フィッティング結果を示す図8を参照されたい。SKIに関する時間を節約するために、この場合、形状保存制御点挿入を適用しなかったことに留意されたい。
表4はフィッティング統計値を示す。Lenaの事例では、RMSEをSKI−C31CTRL及びC31未満に低減する前に最大反復に達するので、SKI−C31RMSEはSKI−C31CTRLと同じ結果を有する。全ての事例において、FasTFitは、類似の画像再構成品質をもたらしながら、SKIより著しく高速である。本発明のFasTFit及び元のSKI実施態様はいずれも並列化のためにOpenMPを使用することに留意されたい。FasTFitのPSNRはSKIのPSNRよりわずかに小さい場合であっても、画像がキネクトライクポイントクラウドより多くのデータ不連続を有する傾向があるので、場合によってはFasTFitがはるかに多くの制御点を有し、計算速度を優先するためにFasTFitにおいてトレードオフが行われた。
Figure 0006843237
上記のように、新規のTスプラインフィッティング方式は、VGAサイズのキネクトデータ等の大きいポイントクラウドを効率的、かつ正確にモデル化することができる。それぞれが独立したベジェパッチによって忠実に表現できるまで、入力ポイントクラウドをより小さい部分に適応的に分割することによって、反復ノット精緻化及び制御点調整を用いることなく、適切なTメッシュが効率的に発見される。その後、入力データにおいて明らかにされたパッチ境界にわたる表面連続性を考慮する異なるパッチ接続選択肢を通して、Tメッシュ上で全ての制御点に関する局所ノットベクトルが推定される。フィッティング済みベジェパッチに基づく、全ての制御点のヒューリスティックな初期化を通して、制御点精緻化を効率的に実行することができ、それにより、入力ポイントクラウドに関する本発明によるフィッティング済みTスプラインモデルがもたらされる。本開示の実施形態による結果は、複数のフレームを融合した後にキネクトフュージョンによって生成される結果と比べて、単一フレームキネクトポイントクラウドデータに関して同等か、場合によっては更に良好な表面再構成を示す。
本開示の実施形態によるアルゴリズムは、平均で400ms未満の処理時間で、VGAサイズのキネクトデータに関して概ねリアルタイムの性能を与えることができる。画像データフィッティングに関して、本発明のアルゴリズムは、公表されている最新技術の結果より少なくとも1桁速い処理時間を達成した。そのような高速の処理速度は、数多くのダウンストリームアプリケーションに利益を与えることができる。
従来の反復フィット及び精緻化パラダイムから転換することによって、本発明は、このタスクをより効率的に実行する新規のアルゴリズムを提示する。ポイントクラウドを一組のBスプラインパッチに適応的に分割することを通して、本発明は最初に、Tスプライン制御点の適切なトポロジー、すなわち、Tメッシュを発見する。その後、本発明は、これらのBスプラインパッチを接続して、データに応じて隣接するパッチ間で異なる連続性を有する単一のTスプライン表面にする。Tスプライン制御点はBスプラインパッチにおけるそれらの対応からヒューリスティックに初期化され、それらの制御点は共役勾配法を使用することによって精緻化される。本発明の実験は、提案されるアルゴリズムのCPU実施態様が、合理的な数の制御点を有するVGAサイズのキネクトポイントクラウドにわたってTスプラインを400ms以内に効率的にフィッティングできることを実証し、その時間は最新技術のアルゴリズムより少なくとも2桁速い。したがって、本開示の実施形態によるTスプライン表現を用いてシーンのポイントクラウドを表現するシステム及び方法は、コンピュータを用いて、計算コストを著しく削減することができ、シーン物体内の画像のデータ処理を改善することができる。
本開示の実施形態によれば、プロセッサと接続されるメモリ又はコンピュータ可読記録媒体に記憶されるプログラムのアルゴリズムは、制御処理ユニット使用量、及びプロセッサの電力消費量を削減することができる。
本開示の上記で説明した実施形態は、多数の方法のうちの任意のもので実施することができる。例えば、実施形態は、ハードウェア、ソフトウェア又はそれらの組み合わせを用いて実施することができる。ソフトウェアで実施される場合、ソフトウェアコードは、単一のコンピュータに設けられるのか又は複数のコンピュータ間に分散されるのかにかかわらず、任意の適したプロセッサ又はプロセッサの集合体において実行することができる。そのようなプロセッサは、1つ以上のプロセッサを集積回路部品に有する集積回路として実装することができる。ただし、プロセッサは、任意の適したフォーマットの回路類を用いて実装することができる。
また、本明細書において略述された様々な方法又はプロセスは、様々なオペレーティングシステム又はプラットフォームのうちの任意の1つを用いる1つ以上のプロセッサ上で実行可能なソフトウェアとしてコード化することができる。加えて、そのようなソフトウェアは、複数の適したプログラミング言語及び/又はプログラミングツール若しくはスクリプティングツールのうちの任意のものを用いて記述することができ、実行可能機械語コード、又はフレームワーク若しくは仮想機械上で実行される中間コードとしてコンパイルすることもできる。通常、プログラムモジュールの機能は、様々な実施形態において所望に応じて組み合わせることもできるし、分散させることもできる。
また、本開示の実施形態は、方法として具現化することができ、この方法の一例が提供されている。この方法の一部として実行される動作は、任意の適した方法で順序付けることができる。したがって、例示したものと異なる順序で動作が実行される実施形態を構築することができ、この順序は、いくつかの動作が例示の実施形態では順次的な動作として示されていても、それらの動作を同時に実行することを含むことができる。さらに、請求項の要素を修飾する、特許請求の範囲における第1、第2等の序数の使用は、それ自体で、1つの請求項の要素の別の請求項の要素に対する優先順位も、優位性も、順序も暗示するものでもなければ、方法の動作が実行される時間的な順序も暗示するものでもなく、請求項の要素を区別するために、単に、或る特定の名称を有する1つの請求項の要素を、同じ(序数の用語の使用を除く)名称を有する別の要素と区別するラベルとして用いられているにすぎない。

Claims (20)

  1. Tスプライン表現を用いてシーンのポイントクラウドを表現するシステムであって、
    前記シーンの画像を取り込むように構成される3次元センサと、
    前記3次元センサ、及びTスプライン表現を用いて前記シーンのポイントクラウドを表現するプログラムを記憶するメモリと通信し、前記プログラムの命令を実行するように構成されるプロセッサであって、前記命令は、
    前記3次元センサを用いて前記シーンの単一フレームの奥行画像を取り込むステップと、
    前記単一フレームの前記奥行画像から前記ポイントクラウドを生成するステップと、
    前記単一フレームから取り込まれた前記ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、前記ポイントクラウドの前記パラメータ化領域を決定するステップと、
    終了条件が閾値条件を満たすまで、前記パラメータ化領域及び前記単一フレームから取り込まれた前記ポイントクラウドの前記マッピングされたデータ点を一組のパッチに再帰的に適応的に分割処理するステップであって、現在の分割処理は、先行する分割処理によって形成されたパッチに対応する前記ポイントクラウドの部分にスプライン表面をフィッティングすることと、前記パッチを更に分割処理することとを含み、前記分割処理は最大フィッティング二乗平均平方根誤差を用いて、前記パッチの分割処理パーセンテージに基づいて実行される、ステップと、
    前記パッチを接続して、前記パラメータ化領域内の制御点のトポロジーを規定するTメッシュを形成するステップと、
    前記Tメッシュに従って前記ポイントクラウドにTスプライン表面をフィッティングし、前記制御点の位置を特定するステップと、
    を含む、プロセッサと、
    を備える、システム。
  2. 前記パッチはそれぞれ、前記パラメータ化領域内の長方形のサブパッチである、請求項1に記載のシステム。
  3. 前記分割処理することは、前記パラメータ化領域を前記一組のパッチに均等に、又は不均等に分割する、請求項1に記載のシステム。
  4. 前記閾値条件は、パッチ内のデータ点に対してフィッティングされるスプラインに関する所定のフィッティング誤差値である、請求項1に記載のシステム。
  5. 前記閾値条件は、前記奥行画像の所定のデータサイズである、請求項4に記載のシステム。
  6. 前記命令は、
    フィッティング済みTスプライン表面のデータをディスプレイデバイス又は別のコンピュータに送信することを更に含む、請求項1に記載のシステム。
  7. ディスプレイデバイスを更に備え、
    前記ディスプレイデバイスは、前記ディスプレイデバイスの画面上に前記Tスプライン表面及びTメッシュを表示するように構成される、請求項1に記載のシステム。
  8. メモリ及び3次元センサと通信するプロセッサを用いて、Tスプライン表現を用いてシーンのポイントクラウドを表現する方法であって、
    前記3次元センサを用いて前記シーンの単一フレームの奥行画像を取り込むことと、
    前記単一フレームの前記奥行画像から前記ポイントクラウドを生成することと、
    前記単一フレームから取り込まれた前記ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、前記ポイントクラウドの前記パラメータ化領域を決定することと、
    終了条件が閾値条件を満たすまで、前記パラメータ化領域及び前記単一フレームから取り込まれた前記ポイントクラウドの前記マッピングされたデータ点を一組のパッチに再帰的に適応的に分割処理することであって、現在の分割処理は、先行する分割処理によって形成されたパッチに対応する前記ポイントクラウドの部分にスプライン表面をフィッティングすることと、前記パッチを更に分割処理することとを含み、前記分割処理は最大フィッティング二乗平均平方根誤差を用いて、前記パッチの分割処理パーセンテージに基づいて実行されることと、
    前記パッチを接続して、前記パラメータ化領域内の制御点のトポロジーを規定するTメッシュを形成することと、
    前記Tメッシュに従って前記ポイントクラウドにTスプライン表面をフィッティングし、前記制御点の位置を特定することと、
    を含む、方法。
  9. 前記パッチのそれぞれのフィッティング誤差は、前記パラメータ化領域の他のパッチのフィッティング誤差から独立して求められる、請求項8に記載の方法。
  10. 前記閾値条件は前記部分の面積によって決定される、請求項8に記載の方法。
  11. 前記パッチはそれぞれ、前記パラメータ化領域内の長方形のサブパッチである、請求項8に記載の方法。
  12. 前記分割処理することは、前記パラメータ化領域を前記一組のパッチに均等に、又は不均等に分割する、請求項8に記載の方法。
  13. 前記閾値条件は、所定のフィッティング誤差値である、請求項8に記載の方法。
  14. 前記閾値条件は、前記奥行画像の所定のデータサイズである、請求項8に記載の方法。
  15. 前記分割処理することは、最大フィッティング二乗平均平方根誤差(RMSE)を用いて、前記パッチの分割処理パーセンテージに基づいて実行される、請求項8に記載の方法。
  16. 前記分割処理パーセンテージは、0.1%〜1%の範囲内のノット挿入比である、請求項15に記載の方法。
  17. フィッティング済みTスプライン表面のデータをディスプレイデバイス又は別のコンピュータに送信することを更に含む、請求項8に記載の方法。
  18. 前記ディスプレイデバイスの画面上に前記Tスプライン表面及びTメッシュを表示することを更に含む、請求項17に記載の方法。
  19. プロセッサにTスプライン表現を用いてシーンのポイントクラウドを表現する方法を実行させるプログラムコードを記憶する非一時的コンピュータ可読記録媒体であって、前記プログラムコードは、
    3次元センサを用いて前記シーンの単一フレームの奥行画像を取り込むプログラムコードと、
    前記単一フレームの前記奥行画像から前記ポイントクラウドを生成するプログラムコードと、
    前記単一フレームから取り込まれた前記ポイントクラウドのデータ点をパラメータ化領域のパラメータの値にマッピングすることによって、前記ポイントクラウドの前記パラメータ化領域を決定するプログラムコードと、
    終了条件が閾値条件を満たすまで、前記パラメータ化領域及び前記単一フレームから取り込まれた前記ポイントクラウドの前記マッピングされたデータ点を一組のパッチに再帰的に適応的に分割処理するプログラムコードであって、現在の分割処理は、先行する分割処理によって形成されたパッチに対応する前記ポイントクラウドの部分にスプライン表面をフィッティングすることと、前記パッチを更に分割処理することとを含み、前記分割処理は最大フィッティング二乗平均平方根誤差を用いて、前記パッチの分割処理パーセンテージに基づいて実行される、プログラムコードと、
    前記パッチを接続して、前記パラメータ化領域内の制御点のトポロジーを規定するTメッシュを形成するプログラムコードと、
    前記Tメッシュに従って前記ポイントクラウドにTスプライン表面をフィッティングし、前記制御点の位置を特定するプログラムコードと、
    を含む、非一時的コンピュータ可読記録媒体。
  20. 前記パッチのそれぞれのフィッティング誤差は、前記パラメータ化領域の他のパッチのフィッティング誤差から独立して求められる、請求項19に記載の非一時的コンピュータ可読記録媒体。
JP2019526638A 2017-03-27 2017-10-05 シーンのポイントクラウドを表現するシステム及び方法 Active JP6843237B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/469,840 2017-03-27
US15/469,840 US10832471B2 (en) 2017-03-27 2017-03-27 Fast T-spline fitting system and method
PCT/JP2017/037095 WO2018179532A1 (en) 2017-03-27 2017-10-05 System and method for representing point cloud of scene

Publications (2)

Publication Number Publication Date
JP2019536162A JP2019536162A (ja) 2019-12-12
JP6843237B2 true JP6843237B2 (ja) 2021-03-17

Family

ID=60382528

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019526638A Active JP6843237B2 (ja) 2017-03-27 2017-10-05 シーンのポイントクラウドを表現するシステム及び方法

Country Status (3)

Country Link
US (1) US10832471B2 (ja)
JP (1) JP6843237B2 (ja)
WO (1) WO2018179532A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109840937B (zh) * 2018-12-14 2022-11-29 广东三维家信息科技有限公司 一种基于空间四叉树的3d点云路径规划方法
CN111479114B (zh) * 2019-01-23 2022-07-22 华为技术有限公司 点云的编解码方法及装置
US11210812B2 (en) 2019-05-15 2021-12-28 Samsung Electronics Co., Ltd. Single-pass boundary detection in video-based point cloud compression
CN112385222B (zh) * 2019-06-12 2023-11-10 浙江大学 点云处理的方法与装置
CN110750193B (zh) * 2019-10-17 2022-01-14 腾讯科技(深圳)有限公司 一种基于人工智能的场景拓扑确定方法和装置
US11688155B2 (en) 2020-01-06 2023-06-27 Luminar, Llc Lane detection and tracking techniques for imaging systems
US11315329B1 (en) * 2020-02-25 2022-04-26 Facebook Technologies, Llc. Scene reconstruction from sparse data
CN111914450A (zh) * 2020-07-20 2020-11-10 华中科技大学 一种基于局部细化求解的ast样条曲面快速重建算法
CN111967342B (zh) * 2020-07-27 2024-04-12 杭州易现先进科技有限公司 平面参数设置的方法、装置、电子装置和存储介质
US20230177738A1 (en) * 2021-12-03 2023-06-08 Tencent America LLC Dynamic mesh compression based on point cloud compression
WO2023215962A1 (en) * 2022-05-13 2023-11-16 Maple Advanced Robotics Inc. Systems and methods for surface fitting, path planing, and surface processing of an object

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7129942B2 (en) * 2002-12-10 2006-10-31 International Business Machines Corporation System and method for performing domain decomposition for multiresolution surface analysis
JP2006523891A (ja) 2003-03-26 2006-10-19 ブリガム・ヤング・ユニバーシティ 局所洗練を用いてt−スプライン及びt−nurcc表面を定義するためのシステム及び方法
US8004517B1 (en) * 2005-06-24 2011-08-23 Geomagic, Inc. Methods, apparatus and computer program products that model three-dimensional surface structures
US20070018988A1 (en) * 2005-07-20 2007-01-25 Michael Guthe Method and applications for rasterization of non-simple polygons and curved boundary representations
US20070247458A1 (en) * 2006-04-11 2007-10-25 Samsung Electronics Co., Ltd. Adaptive computation of subdivision surfaces
WO2008066740A2 (en) * 2006-11-22 2008-06-05 Parker Vision, Inc. Multi-dimensional error correction for communications systems
US20090024370A1 (en) * 2007-07-19 2009-01-22 Scott Michael A Method and System for Performing T-Spline Based Isogeometric Analysis
US8310481B2 (en) * 2007-10-12 2012-11-13 Edward Ernest Bailey Computer aided design method for enhancement of local refinement through T-splines
EP2471046A4 (en) * 2009-08-26 2017-07-26 Sinvent AS Method for local refinement of a geometric or physical representation
EP2750108B1 (en) * 2012-12-28 2019-05-01 Dassault Systèmes Parameterizing a 3D modeled object for tessellation
ES2728861T3 (es) * 2013-03-15 2019-10-29 Univ Carnegie Mellon Sistema robótico autónomo supervisado para inspección y procesamiento de superficie compleja
US10121273B2 (en) * 2013-08-08 2018-11-06 University Of Florida Research Foundation, Incorporated Real-time reconstruction of the human body and automated avatar synthesis
US20160005221A1 (en) * 2014-07-03 2016-01-07 Qualcomm Incorporated Photometric optimization with t-splines
US9646410B2 (en) * 2015-06-30 2017-05-09 Microsoft Technology Licensing, Llc Mixed three dimensional scene reconstruction from plural surface models
US10102319B2 (en) * 2015-07-17 2018-10-16 Board Of Trustees Of Michigan State University Electromagnetic scattering analysis module using subdivision based isogeometric analysis
US10296664B2 (en) * 2015-12-17 2019-05-21 Autodesk, Inc. Scalable and precise fitting of NURBS surfaces to large-size mesh representations
US10102671B2 (en) * 2017-02-09 2018-10-16 Wisconsin Alumni Research Foundation Systems for generalizing non-uniform rational B-spline and application of systems
CN108694740A (zh) * 2017-03-06 2018-10-23 索尼公司 信息处理设备、信息处理方法以及用户设备

Also Published As

Publication number Publication date
WO2018179532A1 (en) 2018-10-04
US10832471B2 (en) 2020-11-10
US20180276884A1 (en) 2018-09-27
JP2019536162A (ja) 2019-12-12

Similar Documents

Publication Publication Date Title
JP6843237B2 (ja) シーンのポイントクラウドを表現するシステム及び方法
US10832079B2 (en) Determining an architectural layout
CN109003325B (zh) 一种三维重建的方法、介质、装置和计算设备
US11922580B2 (en) Floorplan generation based on room scanning
US9412040B2 (en) Method for extracting planes from 3D point cloud sensor data
US20200284587A1 (en) Methods for simultaneous localization and mapping (slam) and related apparatus and systems
JP2018124985A (ja) 平面セグメントを用いて点群を完成させる方法およびシステム
US8610712B2 (en) Object selection in stereo image pairs
JP4999717B2 (ja) レンジ画像から物体の姿勢を求める方法及びシステム
US9311565B2 (en) 3D scanning with depth cameras using mesh sculpting
EP3131060A1 (en) Method and apparatus for constructing three dimensional model of object
US20210232858A1 (en) Methods and systems for training an object detection algorithm using synthetic images
CN111738265B (zh) Rgb-d图像的语义分割方法、系统、介质及电子设备
US11908081B2 (en) Method and system for automatic characterization of a three-dimensional (3D) point cloud
JP2013127783A (ja) 並列追跡及びマッピングのためのキーフレーム選択
US20140168204A1 (en) Model based video projection
CN111382618B (zh) 一种人脸图像的光照检测方法、装置、设备和存储介质
CN112862736B (zh) 一种基于点的实时三维重建与优化方法
KR20230133293A (ko) 멀티-뷰 정세화를 사용한 3차원 모델들의 향상
CN114998406A (zh) 一种自监督多视图深度估计方法、装置
CN114373018A (zh) 一种实时驱动方法、装置及设备
US20240290056A1 (en) Methods, storage media, and systems for augmenting data or models
CN118229552A (zh) 图像处理方法、电器设备、可读存储介质和程序产品
WO2024011063A1 (en) Methods, storage media, and systems for combining disparate 3d models of a common building object
CN117274543A (zh) 一种基于NeRF的ORB-SLAM3系统AR实时可视化方法和系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190517

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190517

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200805

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210222

R150 Certificate of patent or registration of utility model

Ref document number: 6843237

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250