(57)【要約】物体の三次元モデルを構築するための走査システム及び方法であって、走査システムは走査装置（２）と走査テンプレート部材（４）とを含む。走査装置（２）は光を投影するためのエミッター（２０）と像を撮像するためのセンサー（２２）とを有し、エミッターとセンサーが使用時に相対的に固定された位置に配置される。走査テンプレート部材（４）は既知の二次元テンプレート（４２）を有する。処理手段は、データを生成して走査装置（２）と走査テンプレート（４２）との間に配置された物体（８）の三次元モデルを構築することができ、使用時に走査テンプレート（４２）に対する物体（８）の情報を生成し、この情報はエミッターによって投影光が投影される同一の像から生成される。測定は同一の基準面に対して行われる。【特許請求の範囲】
【請求項１】
物体の三次元モデルを構築するための走査システムであって、
光を投影するためのエミッター、および像を撮像するためのセンサーを有し、前記エミッターおよび前記センサーが使用時に相対的に固定された位置に配置される走査装置と、
既知の二次元テンプレートを有する走査テンプレート部材と、
データを生成して前記走査装置と前記走査テンプレートとの間に配置された物体の三次元モデルを構築することができる処理手段と、
を含み、
前記処理手段は、使用時に前記走査テンプレートに対する前記物体の情報を生成し、前記情報は、前記エミッターによって前記投影光が投影される同一の像から生成される、走査システム。
【請求項２】
請求項１において、
前記処理手段は、前記センサーによって撮像された像に対して、
前記像内の前記走査テンプレートの少なくとも一部の位置を特定する工程と、
前記走査テンプレートの平面上の前記エミッターによって投影された光の平面と前記走査テンプレートの平面との交差位置である光線の位置を特定する工程と、
前記光線に沿って移動して、前記光線における１以上のディスパリティを特定する工程と、
を行う、走査システム。
【請求項３】
請求項２において、
前記走査プロセスを加速するために複数の光線を使用する、走査システム。
【請求項４】
物体の三次元モデルを構築するための走査方法であって、
走査装置と、既知の二次元テンプレートを有する走査テンプレート部材との間に走査される物体を配置すること、
光を投影するためのエミッターと、像を撮像するためのセンサーとを有し、前記エミッターと前記センサーが使用時に相対的に固定された位置に配置される走査装置を使用して物体を走査すること、
前記走査テンプレートに対する前記物体の情報であって、前記エミッターによって前記投影光が投影される同一の像から生成される情報を生成し、データを生成して前記物体の三次元モデルを構築すること、
を含む、走査方法。
【請求項５】
請求項４において、
前記センサーによって撮像された像に対して、
前記像内における前記走査テンプレートの少なくとも一部の位置を特定すること、
前記走査テンプレート上の前記エミッターによって投影される基準光線の位置を特定すること、
前記光線に沿って移動して、前記光線における１以上のディスパリティを特定すること、
をさらに含む、走査方法。
【請求項６】
請求項５において、
複数の光線を使用する、走査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は走査装置に関し、特に、三次元物体を走査して実在する物体の三次元モデルの再構築するために好適な方法及び走査装置に関する。
【背景技術】
【０００２】
ここに背景として記載するアプローチを追求することができるが、必ずしも既に着想または追求されたアプローチであるとは限らない。従って、特に記載しない限りは、背景として記載するアプローチは本願の請求項の従来技術ではなく、ここに記載することによって従来技術であると認められるものではない。
【０００３】
一般に、三次元走査装置は、２段階のデータ取込プロセスと、それに続く三次元像の再構築とを行う。データ取込では、走査されている物体の初期ジオメトリを生成するために使用される生データを収集する。データ取込プロセスの典型的な例としては、接触技術（例えば、物体の表面を追跡する機械的プローブ）及び非接触技術（例えば、撮像及び範囲特定技術）が挙げられる。再構築では、データを三次元計算機援用設計（ＣＡＤ）及び／またはアニメーションに好適なデータに処理する。
【０００４】
そのような非接触技術の１つは、構造光のパターンを物体に投影する光学的技術を含む。「構造光に基づく低コスト三次元スキャナー（Ａ  ｌｏｗ  ｃｏｓｔ  ３Ｄ  ｓｃａｎｎｅｒ  ｂａｓｅｄ  ｏｎ  ｓｔｒｕｃｔｕｒｅｄ  ｌｉｇｈｔ）」，Ｃ．Ｒｏｃｃｈｉｎｉら，Ｅｕｒｏｇｒａｐｈｉｃｓ  ２００１，第２０巻，第３号には、非接触光学的走査技術を使用した構造光に基づく技術が記載されている。光の構造パターンを物体に投影し、センサーが物体の表面上の光の歪みパターンの像を取得する。次に、センサー、エミッター、抽出点の間の三角測量（ｔｒｉａｎｇｕｌａｔｉｏｎ）によって深さ情報が再構築される。そのような技術では、深さ情報を正確に再構築できるように、特にエミッター、センサー、抽出点の監視位置の高い精度が必要である。そのような技術では、精密な装置と使用時ごとの装置の較正が必要である。
【０００５】
「立方体フレームの光ストライプ投影を使用した三次元再構築の較正不要アプローチ（Ｃａｌｉｂｒａｔｉｏｎ−Ｆｒｅｅ  Ａｐｐｒｏａｃｈ  ｔｏ  ３Ｄ  Ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ｕｓｉｎｇ  Ｌｉｇｈｔ  Ｓｔｒｉｐｅ  Ｐｒｏｊｅｃｔｉｏｎｓ  ｏｎ  ａ  Ｃｕｂｅ  Ｆｒａｍｅ）」，Ｃｈｕら，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｔｈｉｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  ３Ｄ  Ｄｉｇｉｔａｌ  Ｉｍａｇｉｎｇ  ａｎｄ  Ｍｏｄｅｌｌｉｎｇ  ２００１には、光平面プロジェクターによって三次元フレーム内の物体に光を投影するシステムの例を記載している。三次元フレームは、フレームの角部に設けられた複数の発光ダイオード（ＬＥＤ）を含む。ユーザーは物体上でレーザーストライパー（ｌａｓｅｒ  ｓｔｒｉｐｅｒ）を揺り動かす。カメラであるセンサーが、フレーム及びフレーム内の物体の表面によって反射された光の歪み投影パターンの像を取得する。取り込まれた像はＬＥＤの像も含み、センサーは立方体フレームを検出することができる。
【０００６】
Ｃｈｕらが記載している装置に使用されるカメラは内部較正を必要としない。しかし、正確な立方体フレームを製作するためには注意が必要であり、複雑な画像処理も必要である。また、立方体フレームは物体の閉塞（ｏｃｃｌｕｓｉｏｎ）を引き起こす場合がある。具体的には、立方体のエッジで影が発生し、エッジを検出することができる精度が数ピクセル以内に低下する。従って、立方体の像は立方体とはかけ離れてしまい、像の特徴点を見出すためにロバスト（ｒｏｂｕｓｔ  ）な統計値を使用しなければならない。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述した状況に基づき、複雑な処理工程または複雑な基準フレームを必要とすることなく必要な精度を達成する走査装置が必要とされている。
【発明を実施するための最良の形態】
【０００８】
以下、本発明を実施例によって添付図面を参照しながら説明する。ただし、本発明は以下の実施例に限定されるものではない。図１は、走査システムの一実施形態の概略図である。図２は、走査装置の一実施形態の動作を説明するフロー図である。
【０００９】
三次元物体を走査するための方法と装置について説明する。以下の説明では、本発明が完全に理解されるように特定の詳細な事項について説明する。ただし、当業者には、これらの特定の詳細な事項によらずに本発明を実施することができることは明らかであろう。また、本発明が不必要に曖昧になることを避けるために公知の構造と装置はブロック図によって示す。
【００１０】
上述した要求及び以下の説明から明らかになるその他の要求及び目的は、物体の三次元モデルを構築するための走査システムであって、一態様において、光を投影するためのエミッターと像を撮像するためのセンサーとを有し、エミッターとセンサーが使用時に相対的に固定された位置に配置される走査装置と、既知の二次元テンプレートを有する走査テンプレート部材と、を含む走査システムによって達成される。処理手段は、データを生成して走査装置と走査テンプレートとの間に配置された物体の三次元モデルを構築することができる。処理手段は、使用時に走査テンプレートに対する物体の情報を生成し、この情報はエミッターによって投影光が投影される同一の像から生成される。
【００１１】
図１は、走査システムの実施形態を示す。走査システムは、走査装置２と、走査テンプレート部材４と、走査装置２または走査装置２が接続された独立した処理装置６に保存することができる走査ソフトウェアと、を含む。処理装置６は、通常はパーソナルコンピュータＰＣである。ソフトウェアは、走査テンプレート４の詳細を含む。
【００１２】
走査装置２は、エミッター２０とセンサー２２とを有する。エミッター２０とセンサー２２の位置関係は概算値として既知であり、計算アルゴリズムの入力「シード（ｓｅｅｄ；初期値）」となる。
【００１３】
両者の位置関係は走査時には固定される。例えば、非使用時にはエミッター２０とセンサー２２をしまっておき、使用時に既知の相対位置に相対的に移動させることができる。さらに（あるいは）、エミッターとセンサーは複数の固定位置の間を移動可能であってもよい。図１に示す実施形態では、エミッター２０はアーム２４によってセンサー２２に固定されている。エミッター２０とセンサー２２は、アーム２４によって制御することができる相対的に固定された位置を有する。
【００１４】
エミッターは、通常はレーザーポインターであり、レーザーから投影された光を構造化するための手段を含むことができる。最良の結果を得るためには、エミッター２０によって投影される光は細い線状であって、使用時には走査される物体に入射する光の平面を形成する必要がある。センサーは、例えばデジタルカメラ等のＣＣＤ装置といった撮像装置である。通常、走査装置は携帯用途に好適なサイズを有する。あるいは、走査装置２は例えば三脚等に取り付けることができる。
【００１５】
走査テンプレート部材４は、既知の形状とサイズを有す二次元テンプレート４２が印刷された二次元平面４０を有する。図１に示すように、物体８が走査装置２と走査テンプレート４２との間に配置されるように、走査される物体８を二次元走査テンプレート部材４の走査テンプレート４２上に配置する。図１では、走査テンプレート４２は、例えば紙などの平らな長方形の表面４０に印刷された長方形として示されている。その他の形状の走査テンプレートを使用することもできる。
【００１６】
走査テンプレート部材は、例えば、ユーザーが紙またはカードなどの平面に走査テンプレート４２を印刷するようにＰＣ６に指示することによって生成することができる。また、ユーザーは、走査テンプレート４２が走査される物体と対照をなすように走査テンプレート４２の色を選択することができる。いずれの場合にも、生成または用意された走査テンプレートの詳細をその後の処理でアクセスするために保存する。
【００１７】
この走査システムでは、センサー２２が走査テンプレート４２の平面に対する物体８の情報を生成するため、物体８に対する走査装置２の絶対位置は必要ではない。この情報は、センサー２２に対して位置が固定されたエミッター２０によって光の投影パターンが投影される同一の像から生成される。また、物体８上の光のストライプの位置は、ストライプの像及び走査テンプレート４２の平面に対して既知である。
【００１８】
センサー２２によって取り込まれる像は、走査テンプレート４２の像を含み、物体８に対するセンサー２２の位置を推定することができる。また、走査システムには、エミッター２０によって放射される光の構造パターンの詳細がプログラムされている。エミッター２０からの基準ストライプの像１２が、走査テンプレート平面４２の表面及び物体８上に形成される。従って、走査テンプレート４２の平面に対する基準ストライプ１２の位置を、センサー２２の校正精度を遙かに超える精度で非常に正確に知ることができる。
【００１９】
基準ストライプ１２が走査テンプレート平面４２と交差する位置はディスパリティゾーン１４と呼び、物体の表面の位置はディスパリティゾーン１４における基準ストライプ１２の位置によって得られる。
【００２０】
このような実施形態は、同一基準平面に対して全ての測定を行うと全ての一次誤差が解消されるシステム（センサーにおける誤差も含む）によって絶対的な精度を置き換えることになる。
【００２１】
スキャナーを使用するためには、最初にカメラを較正することが必要である。較正は、最小二乗アルゴリズム、好ましくは再帰的最小二乗アルゴリズムを使用することによって行うことができる。カメラは、ユーザーのプリンタによって印刷した較正パターンの複数の像を撮像することによってユーザーが較正する。そのような平面像に基づくカメラの較正方法は公知であり、ｈｔｔｐ：ｗｗｗ．ｖｉｓｉｏｎ．Ｃａｌｔｅｃｈ．ｅｄｕ／ｂｏｕｇｕｅｔｊ／ｃａｌｉｂ＿ｄｏｃ／ｉｎｄｅｘ．ｈｔｍｌ．に公開されているＪ．Ｙ．Ｂｏｕｇｕｅｔによる「Ｍａｔｌａｂのためのカメラ較正ツールボックス（Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｏｏｌｂｏｘ  ｆｏｒ  Ｍａｔｌａｂ）」等に記載されている。
【００２２】
本発明の好ましい実施形態では、ユーザーが走査される物体の推定サイズをシステムに入力するが、この工程は正しい効果を達成するために必要ではない。また、推定サイズの入力を自動化するために便利なメカニズムを提供するいくつかの変形があり、例えば、異なるサイズ及び形状を有する複数の走査テンプレートを用意し、ユーザーが走査される物体のサイズに最も一致するテンプレートを選択することが挙げられる。異なる各走査テンプレートのエッジに特定用パターンを設けることによって、スキャナーとプロセッサーは、物体を走査しながら、どのサイズのテンプレートがユーザーによって選択されたかを特定することができる。これによって、物体の推定サイズを自動的に入力することができる。このアプローチには、機器ソフトウェア設計の熟練者によって容易に行うことができるいくつかの変形がある。
【００２３】
次に、図２を参照して走査システムの詳細な動作について説明する。エミッター２０が、物体８と走査テンプレート部材４に光１０を投影する。センサー２２は、走査テンプレート部材４の表面４０に投影された基準ストライプ１２の像とディスパリティゾーン１４内の物体８と光の交差部分を含む撮像された像を受信する（２０１）。それに応じて、走査テンプレート４２の形状の詳細がプログラムされているプロセッサーは、走査テンプレートの一部の位置を特定する（２０２）。例えば、プロセッサーは走査テンプレート４２の角部を見つけ出す。次に、プロセッサーはたたみこみ演算子（ｃｏｎｖｏｌｕｔｉｏｎ  ｏｐｅｒａｔｏｒ）を使用して走査テンプレート４２の辺を見つけ出す。このために、システムは、前進後退適応拡張カルマンフィルターを使用して走査テンプレート４２の辺を横切る（２０３）。
【００２４】
プロセッサーが走査テンプレート４２の辺の位置を特定すると、プロセッサーは走査テンプレートの形状とサイズに関する情報を有しているため、プロセッサーは走査装置に対する走査テンプレートの位置を知ることができる。従って、システムはカメラに対する走査テンプレートの位置を決定し（２０４）、決定した位置の統計値を生成する。なお、本発明が基づいている全てのジオメトリはねじれた線を使用するため、センサーは動作のために走査テンプレートの平面に垂直である必要はない。
【００２５】
次に、システムは、光パターンの概算モデルと上述したように生成した統計値を使用して基準ストライプ１２の走査テンプレート４２の平面との交差部分の事前分布を生成する（２０５）。プロセッサーは、走査テンプレートの辺に沿って像を処理することによって、像における投影された基準ストライプ１２の位置を特定する。例えば、プロセッサーは図１に示す走査テンプレート４２の左下隅の角部から開始し、走査テンプレートの辺Ａに沿って処理を進める。走査テンプレートの辺Ａと交差する基準ストライプ１２の点Ｂを特定するためにエッジ検出アルゴリズムを使用することができる。走査テンプレート４２の各辺上で点Ｂが見つかると、プロセッサーは、基準ストライプ１２における不連続性を探しながらディスパリティゾーン１４内でＢ−Ｂ線に沿って検索を行う。次に、プロセッサーは線近似によって撮像されている物体８の厚みを推定する。
【００２６】
工程２０５の事前分布は、ベイズフィルター（Ｂａｙｅｓｉａｎ  ｆｉｌｔｅｒ）を使用して、走査テンプレート４２の外部の走査平面上の光パターンのアフィン（Ａｆｆｉｎｅ）近似値を再構築するために使用される（２０６）。次に、走査パターンのアフィン近似値を、走査テンプレート４２の走査される三次元物体との交差位置を予測するために使用する（２０７）。
【００２７】
次に、二次元事前分布（ｐｒｉｏｒ）を、既に行った走査に基づいて工程２０７を使用して予測された像に対して投影的に生成する（２０８）。最初の走査の場合には、予測像位置の境界を使用する。次に、構造光パターンの走査される物体との交差位置の事前分布を適応二次元拡張カルマンフィルターのテンプレートとして使用し、走査される物体上の構造光パターンを検出する（２０９）。
【００２８】
次に、カルマンフィルターによって工程２０９で生成された事後分布の統計値を、走査される物体の三次元ジオメトリの事前分布を生成するために使用する（２１０）。次に、物体のジオメトリの事前分布をベイズ更新規則を使用して更新し、走査される物体の三次元モデルの事後分布を生成する（２１１）。これによって、次の撮像の準備が完了する。
【００２９】
これらの工程を、走査テンプレート４２上の物体全体が走査されるまで、走査テンプレートに対して漸進的に変化させながら投影される光線の領域について繰り返す（２１２）。
【００３０】
生成されたデータは、従来の三次元ＣＡＤまたはアニメーションなどのモデリングのために処理することができる。ここで、「事前分布（ｐｒｉｏｒ）」は「事前分布（ｐｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）」を意味し、「事後分布（ｐｏｓｔｅｒｉｏｒ）」は「事後分布（ｐｏｓｔｅｒｉｏｒ  ｄｉｓｔｒｉｂｕｔｉｏｎ）」を意味する。事前分布は測定前の情報の状態の確率的記述であり、事後分布は測定後の情報の状態である。一般に、ベイズ規則を使用して事前分布から事後分布に到達する。
【００３１】
従って、システムに既知であって特有のパラメータ（「内部パラメータ（ｉｎｔｒｉｎｓｉｃ  ｐａｒａｍｅｔｅｒ）」）を使用するアルゴリズムを使用することによってオフラインで較正された走査装置が提供される。センサーの「外部パラメータ（ｅｘｔｒｉｎｓｉｃ  ｐａｒａｍｅｔｅｒ）」、すなわち、センサーの設計内で内部的に固定されていない変数（例えば、物体の位置）は、ユーザーが生成することができる既知の形状とサイズの走査テンプレートを使用して使用時に推定する。
【００３２】
上述したスキャナーは、家庭用途（例えば、装飾品や宝石などの好みのアイテムの走査）、ゲーム娯楽分野（例えば、アニメーションのための図の走査・再構築）、学術的使用（例えば、古物の走査）、医療的使用などの多くの目的に使用することができる。なお、ここで挙げる例は単なる例示であって、本発明の用途を限定するものではない。
【００３３】
当業者は、本発明から逸脱することなく開示された内容の変形が可能であることを理解されるだろう。従って、上述したいくつかの実施形態の説明は単なる例示であって、本発明はそれらの実施形態に限定されるものではない。また、当業者には、上述した動作に大きな変更を加えることなく開示された内容に小さな変更を加えることができることは明らかであろう。本発明は、請求項の範囲のみによって限定されることを意図するものである。
【図面の簡単な説明】
【００３４】
【図１】走査システムの一実施形態の概略図である。
【図２】走査装置の一実施形態の動作を説明するフロー図である。
【図１】
2007508557.tif 000002
【図２】
2007508557.tif 000003
【国際調査報告】
2007508557.tif 000004
2007508557.tif 000005