(57)【要約】【課題】  オブジェクトの三次元形状データを取得する際、効率や精度の改善は変わらぬテーマである。【解決手段】  プロジェクタ１２からオブジェクトにスリット光を投ずる。これをカメラ１４で撮影する。プロジェクタ１２とカメラ１４の三次元位置は既知とする。プロジェクタ１２からオブジェクト表面に生じたスリット光の像を結ぶ面と、同様にスリット光の像からカメラ１４の焦点を結ぶ面の上には、オブジェクトまたはその一部は存在しえない。撮影を多数行い、オブジェクトの非存在領域を特定すれば、オブジェクトの形状が特定できる。【選択図】図４
2005037379.tif 000002
【特許請求の範囲】
【請求項１】
光源からモデリングの対象物体に投影されたスリット光の投影像を単一のカメラで撮影するステップと、
前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面、および前記投影像の各点と前記カメラの焦点を直線で結んで形成される第２の有限な面の位置を、前記光源およびカメラの前記対象物体に対する位置関係をもとに特定するステップと、
前記第１の有限な面上および第２の有限な面上には、前記対象物体またはその一部が存在しない旨を記録するステップと、
を含むことを特徴とする三次元モデリング方法。      
【請求項２】
光源からモデリングの対象物体に投影されたスリット光の投影像をステレオカメラで撮影するステップと、
前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面の位置は問わない一方、前記投影像の各点と前記ステレオカメラを構成する左右カメラのそれぞれの焦点を直線で結んで形成される第２および第３の有限な面の位置を、前記ステレオカメラの位置をもとに特定するステップと、
前記第２の有限な面上および第３の有限な面上には、前記対象物体またはその一部が存在しない旨を記録するステップと、
を含むことを特徴とする三次元モデリング方法。
【請求項３】
請求項１に記載の方法において、前記記録するステップはさらに、前記第１の有限な面と第２の有限な面によって切り取られるボリューム空間には、前記対象物体またはその一部が存在しない旨を記録することを特徴とする三次元モデリング方法。
【請求項４】
請求項２に記載の方法において、前記記録するステップはさらに、前記第２の有限な面と第３の有限な面によって切り取られるボリューム空間にも、前記対象物体またはその一部が存在しない旨を記録することを特徴とする三次元モデリング方法。
【請求項５】
光源からモデリングの対象物体に投影されたスリット光の投影像をカメラで撮影するステップと、
前記対象物体が存在しうる空間に注目点を定め、その注目点の前記カメラによる撮影画像内位置と前記スリット光の像の撮影画像内位置とを比較するステップと、
前記注目点の前記カメラによる撮影画像内位置のほうが前記スリット光の像の撮影画像内位置よりも前記光源に近いとき、前記注目点の奥行きと、前記注目点とカメラ焦点を結ぶ直線とスリット光平面の交点の奥行きとを比較するステップと、
前記注目点の奥行きのほうが前記交点の奥行きよりも小さいとき、その注目点には前記対象物体またはその一部が存在しない旨を記録するステップと、
を含むことを特徴とする三次元モデリング方法。
【請求項６】
請求項１または５に記載の方法において、前記カメラおよび光源からなる系と前記対象物体とを相対運動させながら、前記の各ステップを実行することを特徴とする三次元モデリング方法。
【請求項７】
請求項２に記載の方法において、前記ステレオカメラと前記対象物体とを相対運動させながら、前記の各ステップを実行することを特徴とする三次元モデリング方法。
【請求項８】
請求項１、２、５のいずれかに記載の方法において、
前記対象物体が存在しうる空間を予めボクセルに分割し、かつそれら各ボクセルに前記対象物体またはその一部が存在する旨の情報を初期値として付与するステップを実行した後、前記の各ステップを実行し、
前記記録するステップにおいて、前記対象物体またはその一部が存在しないことが判明したボクセルについて、前記初期値を更新することを特徴とする三次元モデリング方法。
【請求項９】
請求項１、２、５に記載の方法において、前記の各ステップの実行前に、前記対象物体を複数回撮影し、それら複数の撮影画像のそれぞれについて前記対象物体の輪郭線外には前記対象物体またはその一部が存在しない旨を記録していくことにより、前記対象物体の概形を特定する輪郭判定ステップを実行し、この輪郭判定ステップの後においても、前記対象物体またはその一部が存在しない旨が記録されていない空間領域について、前記の各ステップを実行することを特徴とする三次元モデリング方法。
【請求項１０】
請求項１から９のいずれかに記載の各ステップをコンピュータに実行せしめることを特徴とするコンピュータプログラム。
【請求項１１】
光源からモデリングの対象物体に投影されたスリット光の投影像を単一のカメラで撮影して得られた画像データを入力する画像入力部と、
前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面、および前記投影像の各点と前記カメラの焦点を直線で結んで形成される第２の有限な面の位置を、前記光源およびカメラの前記対象物体に対する位置関係をもとに特定する座標計算部と、
前記第１の有限な面上および第２の有限な面上には、前記対象物体またはその一部が存在しない旨をメモリに記録する記録制御部と、
を含むことを特徴とする三次元モデリング装置。
【請求項１２】
光源からモデリングの対象物体に投影されたスリット光の投影像をステレオカメラで撮影して得られた画像データを入力する画像入力部と、
前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面の位置は問わない一方、前記投影像の各点と前記ステレオカメラを構成する左右カメラのそれぞれの焦点を直線で結んで形成される第２および第３の有限な面の位置を、前記ステレオカメラの位置をもとに特定する座標計算部と、
前記第２の有限な面上および第３の有限な面上には、前記対象物体またはその一部が存在しない旨をメモリに記録する記録制御部と、
を含むことを特徴とする三次元モデリング装置。
【請求項１３】
光源からモデリングの対象物体に投影されたスリット光の投影像をカメラで撮影して得られた画像データを入力する画像入力部と、
前記対象物体が存在しうる空間に注目点を定め、その注目点の前記カメラによる撮影画像内位置と前記スリット光の像の撮影画像内位置とを比較し、および前記注目点の奥行きと、前記注目点とカメラ焦点を結ぶ直線とスリット光平面の交点の奥行きとを比較する座標計算部と、
前記注目点の前記カメラによる撮影画像内位置のほうが前記スリット光の像の撮影画像内位置よりも前記光源に近く、かつ、前記注目点の奥行きのほうが前記交点の奥行きよりも小さいとき、その注目点には前記対象物体またはその一部が存在しない旨をメモリに記録する記録制御部と、
を含むことを特徴とする三次元モデリング装置。
【請求項１４】
請求項１１または１３に記載の装置において、前記単一のカメラと前記光源を一体に備えるアームをさらに含むことを特徴とする三次元モデリング装置。
【請求項１５】
請求項１２に記載の装置において、前記ステレオカメラと前記光源を一体に備えるアームをさらに含むことを特徴とする三次元モデリング装置。
【請求項１６】
請求項２に記載の方法において、
前記光源の位置を特定するステップと、
特定された光源の位置をもとに、前記第１の有限な面上には前記対象物体またはその一部が存在しない旨を記録するステップと、
を含むことを特徴とする三次元モデリング方法。
【請求項１７】
請求項２に記載の方法において、
前記ステレオカメラに３台目以降のカメラを追加し、３台目以降のそれぞれのカメラの焦点と、前記投影像の各点とを直線で結んで形成される第４以降の有限な面の位置を特定するステップと、
前記第４以降の有限な面上には前記対象物体またはその一部が存在しない旨を記録するステップと、
をさらに含むことを特徴とする三次元モデリング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は三次元モデリング技術に関し、特に、カメラで対象物体を撮影してその対象物体の座標データを取得する三次元モデリング方法と装置に関する。
【背景技術】
【０００２】
美術品をアーカイブ化したり、クレイモデルから設計データを取得したり、人間を撮影してその立体像を得るようなとき、実在の対象物体を三次元デジタイズしてモデリングすることがある。例えば非特許文献１には、ステレオカメラを利用して対象物体の三次元座標情報を取得する技術が紹介されている。また、非特許文献２には、取得された離散的な三次元の点から対象物体の表面を再構築する技術が紹介されている。対象物体の三次元モデリングは、ＣＧ処理をするハードウエアの高性能化やオブジェクトデータを伝送する通信帯域の拡大により、今後さらに多くのアプリケーションを獲得していくと思われる。
【非特許文献１】谷内田著，「ロボットビジョン」，昭晃堂，１９９０年，ｐ．１８１−１８５
【非特許文献２】H. Hoppe, T. DeRose, T. Duchamp, J. McDonald and W. Stuetzle, “Surface Reconstruction from Unorganized Points.” Siggraph ’92, pp.71-78, 1992
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ステレオカメラによる方法だと、取得される三次元データの精度が左右画像のマッチングの精度に依存する。また、オクルージョン、すなわち、自己遮蔽が発生する部分は、当然ながら正しいデータが取得できない。一方、まず三次元の離散的な点の座標を取得する場合、形状が複雑な場所では、サーフェイスの再構築の際、点どうしのコネクティビティを誤り、結果として誤った形状を認識することがある。
【０００４】
本発明はこうした課題を認識してなされたものであり、その目的は、対象物体がある程度複雑な形状であっても、比較的簡便に正確な三次元データを取得することのできる三次元モデリング技術を提供することにある。
【課題を解決するための手段】
【０００５】
本発明のある態様は三次元モデリング方法であり、光源からモデリングの対象物体に投影されたスリット光の投影像を単一のカメラで撮影するステップと、前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面、および前記投影像の各点と前記カメラの焦点を直線で結んで形成される第２の有限な面の位置を、前記光源およびカメラの前記対象物体に対する位置関係をもとに特定するステップと、前記第１の有限な面上および第２の有限な面上には、前記対象物体またはその一部が存在しない旨を記録するステップとを含む。
【０００６】
「光源およびカメラの位置関係」は、光源とカメラの座標および方向の双方によって確定する。この位置関係がわかっていれば、光源から対象物体に投影されたスリット光の位置とカメラ焦点を結ぶことにより、スリット光の位置が特定できる。その特定方法自体は既知である。いずれにしても、第１の有限な面と第２の有限な面は光路であるから、そこには対象物体もその一部も存在しない。
【０００７】
なお、単一のカメラの代わりにステレオカメラを利用すれば、前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面の位置は問わない一方、前記投影像の各点と前記ステレオカメラを構成する左右カメラのそれぞれの焦点を直線で結んで形成される第２および第３の有限な面の位置を、前記ステレオカメラの位置をもとに特定し、前記第２の有限な面上および第３の有限な面上には、前記対象物体またはその一部が存在しない旨を記録すればよい。
【０００８】
ステレオカメラを用いても、スリット光が対象物体に投影されているため、左右画像のマッチングは一般に容易である。また、ステレオカメラを用いる場合、光源の位置はもはや不要であり、ステレオカメラの位置、すなわちステレオカメラを構成する左右カメラの位置と方向がわかれば、第２、第３の有限な面を特定できる。またそれらの面は光路であるから、対象物体もその一部も存在しない。
【０００９】
なお、光源の位置を特定する場合は、特定された光源の位置をもとに、第１の有限な面上にも対象物体またはその一部が存在しない旨を記録することができる。
同様に、ステレオカメラに３台目以降のカメラを追加し、３台目以降のそれぞれのカメラの焦点と、前記の投影像の各点とを直線で結んで形成される第４以降の有限な面の位置を特定し、第４以降の有限な面上には前記対象物体またはその一部が存在しない旨を記録してもよい。光源の位置を特定したり、３台目以降のカメラの位置を利用することにより、当然ながら、一回の撮影でより広い範囲のモデリングが可能になる。
【００１０】
単一のカメラを利用する場合、前記記録するステップはさらに、前記第１の有限な面と第２の有限な面によって切り取られるボリューム空間には、前記対象物体またはその一部が存在しない旨を記録してもよい。例えば、カメラと光源が比較的近い場合、その中に対象物体の一部が進入してくることはないと考えてもよいし、または、進入しないよう計測をすればよい。この態様によると、一回の撮影で相当なボリューム空間が処理できるため、効率的である。なお、ボリューム空間とは実空間の一部に対応するように仮想的に設定された空間であり、例えば、ボクセルを用いて表現される。ボクセルとは、二次元画像でいうピクセル、すなわち画素に対応するものであり、ピクセルを三次元に拡張したものである。
【００１１】
同様のことをステレオカメラの場合で考えれば、前記記録するステップはさらに、前記第２および第３の有限な面によって切り取られるボリューム空間にも、前記対象物体またはその一部が存在しない旨を記録すればよい。
【００１２】
単一カメラの場合、カメラおよび光源からなる系と前記対象物体とを相対運動させながら、前記の各ステップを実行してもよい。この直観的な意味は、対象物体の周辺をどんどん削り取り、対象物体の表面を次第にあらわにすることにある。あらわになった時点で、対象物体の表面が特定できたことになる。ステレオカメラの場合も同様である。
【００１３】
別の態様では、前記対象物体が存在しうる空間を予めボクセルに分割し、かつそれら各ボクセルに前記対象物体またはその一部が存在する旨の情報を初期値として付与するステップを実行した後、前記の各ステップを実行し、前記記録するステップにおいて、前記対象物体またはその一部が存在しないことが判明したボクセルについて、前記初期値を更新してもよい。
【００１４】
さらに別の態様では、前記の各ステップの実行前に、前記の各ステップの実行前に、前記対象物体を複数回撮影し、それら複数の撮影画像のそれぞれについて前記対象物体の輪郭線外には前記対象物体またはその一部が存在しない旨を記録していくことにより、前記対象物体の概形を特定する輪郭判定ステップを実行し、この輪郭判定ステップの後においても、前記対象物体またはその一部が存在しない旨が記録されていない空間領域について、前記の各ステップを実行してもよい。輪郭判定ステップの一例は、後述の輪郭によるモデリング法である。
【００１５】
この態様によれば、まず大まかに対象物体の概形を決め、つぎに詳細に決めることができ、処理の効率化が実現する。これはいわば、彫刻における「荒削り」の段階と仕上げの段階のアナロジーと考えることができ、その効率のよさは容易に理解できるところである。
【００１６】
本発明のさらに別の態様は、三次元モデリング装置であり、光源からモデリングの対象物体に投影されたスリット光の投影像を単一のカメラで撮影して得られた画像データを入力する画像入力部と、前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面、および前記投影像の各点と前記カメラの焦点を直線で結んで形成される第２の有限な面の位置を、前記光源およびカメラの前記対象物体に対する位置関係をもとに特定する座標計算部と、前記第１の有限な面上および第２の有限な面上には、前記対象物体またはその一部が存在しない旨をメモリに記録する記録制御部とを含む。
【００１７】
ステレオカメラを利用する場合、この装置は光源からモデリングの対象物体に投影されたスリット光の投影像をステレオカメラで撮影して得られた画像データを入力する画像入力部と、前記光源と前記投影像の各点を直線で結んで形成される第１の有限な面の位置は問わない一方、前記投影像の各点と前記ステレオカメラを構成する左右カメラのそれぞれの焦点を直線で結んで形成される第２および第３の有限な面の位置を、前記ステレオカメラの位置をもとに特定する座標計算部と、前記第２の有限な面上および第３の有限な面上には、前記対象物体またはその一部が存在しない旨をメモリに記録する記録制御部とを含む。
【００１８】
三次元モデリング装置において、前記単一のカメラまたはステレオカメラと前記光源を一体に備えるアームをさらに含んでもよい。この場合、アームを対象物体の周囲で操作することにより、例えばなるべくオクルージョンがない位置から計測したり、複雑な形状の部分については、より詳細に計測するといった作業が可能であり、モデリングの精度を高めることができる。
【００１９】
本発明のさらに別の態様は三次元モデリング方法であり、光源からモデリングの対象物体に投影されたスリット光の投影像をカメラで撮影するステップと、前記対象物体が存在しうる空間に注目点を定め、その注目点の前記カメラによる撮影画像内位置と前記スリット光の像の撮影画像内位置とを比較するステップと、前記注目点の前記カメラによる撮影画像内位置のほうが前記スリット光の像の撮影画像内位置よりも前記光源に近いとき、前記注目点の奥行きと、前記注目点とカメラ焦点を結ぶ直線とスリット光平面の交点の奥行きとを比較するステップと、前記注目点の奥行きのほうが前記交点の奥行きよりも小さいとき、その注目点には前記対象物体またはその一部が存在しない旨を記録するステップとを含む。
【００２０】
本発明のさらに別の態様は、三次元モデリング装置であり、光源からモデリングの対象物体に投影されたスリット光の投影像をカメラで撮影して得られた画像データを入力する画像入力部と、前記対象物体が存在しうる空間に注目点を定め、その注目点の前記カメラによる撮影画像内位置と前記スリット光の像の撮影画像内位置とを比較し、および前記注目点の奥行きと、前記注目点とカメラ焦点を結ぶ直線とスリット光平面の交点の奥行きとを比較する座標計算部と、前記注目点の前記カメラによる撮影画像内位置のほうが前記スリット光の像の撮影画像内位置よりも前記光源に近く、かつ、前記注目点の奥行きのほうが前記交点の奥行きよりも小さいとき、その注目点には前記対象物体またはその一部が存在しない旨をメモリに記録する記録制御部とを含む。
【００２１】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００２２】
本発明によれば、対象物体に関する正確で効率的な三次元モデリングが実現する。
【発明を実施するための最良の形態】
【００２３】
実施の形態１．
図１から図５は、第１の実施の形態に係る三次元モデリング技術の原理を示す。図１において、本実施の形態はオブジェクト１０に対してプロジェクタ１２からスリット光を投射し、その投影像（以下これをスリット像ともいう）をカメラ１４で撮影する。プロジェクタ１２とカメラ１４の位置関係、すなわちそれらの位置と向きは三次元空間において既知とする。
【００２４】
このとき、プロジェクタ１２とスリット像を結ぶ面（これを第１面とよぶ）の上には、オブジェクト１０またはその一部は存在しない。さらに、スリット像からカメラ１４の焦点を結ぶ面（これを第２面とよぶ）の上にも、オブジェクト１０またはその一部は存在しない。こうして、オブジェクト１０が存在しないところを特定していくことにより、逆にオブジェクト１０が存在するところを残すことでオブジェクト１０の中実な三次元データを取得する。
【００２５】
本実施の形態では、最初にオブジェクト１０が存在しうる空間全体をボクセルに分割し、各ボクセルに初期値「１」を与えておく。この「１」は物体が存在するという意味をもっており、前述の第１面、第２面のいずれかと交差するボクセルを検出し、その値を「０」に更新する。「０」は物体の非存在を意味する。なお、全体の系が小さく、プロジェクタ１２とカメラ１４の間にオブジェクト１０の一部が進入しないような状況では、単に第１面と第２面の面上だけでなく、それらによって切り取られるボリューム空間全体を物体の非存在領域（これを単に非存在領域と略す）として一気に多数のボクセルを「０」にしてもよい。具体的には、プロジェクタ１２の任意の基準点とカメラ１４の焦点とスリット像の両端点の合計４点で定まる三角錐の領域を非存在領域とみなすことができる。以降、プロジェクタ１２とカメラ１４で構成される系とオブジェクト１０とを相対移動させることにより、次々に非存在領域を特定していき、オブジェクト１０の存在領域を浮き彫りにしていく。
【００２６】
この処理からもわかるように、本実施の形態ではオブジェクト１０にソリッドモデルを採用することになるから、サーフェイスモデルでしばしば問題になる、多様体としてあり得ない形状の表現等の問題が自然に解決されている。
【００２７】
図２は図１の系を上から見た模式図である。いま、プロジェクタ１２、カメラ１４の位置も向きも三次元空間で既知であるから、まずプロジェクタ１２からスリット像（図中Ｐと表記）へ向かう第１面を含む平面が特定できる。つぎに、カメラ１４の撮影画像に含まれるスリット像の位置から第２面を含む平面が特定できる。これらふたつの平面の交線がスリット像であるから、スリット像の三次元座標が特定できる。これにより、非存在領域の三次元座標が特定される。スリット像の三次元座標の特定自体は既知の技術である。
【００２８】
図３は、ある時刻におけるプロジェクタ１２とカメラ１４の位置から決まる非存在領域と、別の時刻におけるプロジェクタ１２とカメラ１４の位置から決まる非存在領域を示している。同図において、未着色、すなわち白色のボクセルは非存在領域、着色したボクセルはそうではない領域を示す。ここでは、第１面と第２面のそれぞれの面上のみを非存在領域としているが、プロジェクタ１２とカメラ１４による系とオブジェクト１０を相対運動させることで、非常に容易に非存在領域を成長させていくことができる。一方、図４は面上だけでなく、前述の三角錐領域をいちどに非存在領域とする例を示す。同図からも、本実施の形態によるモデリング効率のよさが理解できる。
【００２９】
図５は単一のカメラ１４に替えてステレオカメラ１６を利用する場合の原理を示す。いまステレオカメラ１６の左右カメラの位置と向きが既知とする。その場合、ステレオカメラ１６だけでスリット像の三次元座標が特定できるため、プロジェクタ１２の位置は未知でもよい。ステレオカメラ１６の場合も処理の本質は同じであるが、追加になったカメラとスリット像を結ぶ第３面が発生し、この面上も非存在領域となる。したがって、第２面、第３面の配置によっては、一回の撮影で大きく非存在領域を特定することができる。なお、プロジェクタ１２の位置も取得する場合には、第１面上も非存在領域となる。同様に、ステレオカメラ１６に三台目以降の位置が既知のカメラを追加すれば、当然それらのカメラとスリット像を結ぶ第４以降の面上も非存在領域となり、処理を効率化することができる。
【００３０】
図６は、以上の原理に基づく三次元モデリング装置１００を含むシステムの全体構成を示す。ここでは、オブジェクト１０はテーブル３０に載置されている。また、アーム２０も同様にテーブル３０に固定されている。このアーム２０の先、プローブ２２付近に、プローブ２２との位置関係が既知な撮影ユニット２４が取り付けられている。撮影ユニット２４は、図示しないがプロジェクタ１２とカメラ１４とを一体に内蔵している。なお、アーム２０や撮影ユニット２４も含めて三次元モデリング装置１００と考えてもよい。
【００３１】
アーム２０は、単に撮影ユニット２４を支持するだけでなく、そのプローブ２２の位置と向き（以下これらを統括して単に「アームの位置情報」などという）が常に特定可能になっている。そうしたアーム２０として、例えば、米国ファローテクノロジー社のＦＡＲＯ  Ａｒｍ（商標）がある。この製品は測定系に測定物を持っていくのではなく、測定物に測定機を持っていく思想で設計されており、６軸多関節構造を有する。各関節の角度は常にロータリーエンコーダで検出されており、プローブ２２の三次元位置が完全に特定できる。いま、プローブ２２と撮影ユニット２４の位置関係が既知であるから、アーム２０をどのような操作しても、つねに撮影ユニット２４の三次元位置が判明する。したがって、アーム２０をオブジェクト１０の周囲のいろいろな角度へ据えつけて撮影を行えば、極めて効率的なモデリングが実現する。アームが１台の場合でも、オブジェクト１０をターンテーブルに載せて回転させ、いろいろな回転角で撮影を行えば、全周のモデリングが効率よく実現できる。ただし、このようなアーム２０がない場合、オブジェクト１０をターンテーブルに載せて回転させ、いろいろな回転角で固定型のプロジェクタ１２およびカメラ１４から撮影をしてもよい。一般論として、測定系に対してオブジェクト１０を動かす場合、回転速度のわかっている回転台に対象物体を載せたり、オブジェクト１０を載せた台に位置キャリブレーションマークを付け、測定中は常にそれを撮影するといった方法を採ることができる。
【００３２】
三次元モデリング装置１００は、アーム２０から撮影画像を入力するインタフェイスである画像入力部４０と、アームの位置情報および撮影画像から非存在領域の三次元座標を特定する座標計算部４２と、非存在領域をメモリ６６へ記録する記録制御部６０とを有する。三次元モデリング装置１００の構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリのロードされたモデリングプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００３３】
座標計算部４２のアーム位置取得部４４は、アーム２０からアーム位置を読み込む。線分抽出部４６は画像入力部４０から撮影画像を入力し、スリット像を画像内の線分として抽出する。この抽出は例えば輝度ベース等、既知の手法でなされる。抽出された線分の画像内における二次元位置は線分位置算出部４８へ通知される。線分位置算出部４８は、アーム位置からプロジェクタ１２とカメラ１４の位置を特定し、図２で説明したごとく第１面と第２面をそれぞれ含むふたつの平面を特定し、線分の三次元位置を特定する。その結果は領域特定部５０へ通知され、領域特定部５０が図３または図４の方法で非存在領域を特定する。以上の結果が記録制御部６０へ通知される。
【００３４】
記録制御部６０の初期化部６２は、オブジェクト１０が存在しうる空間領域全体のボクセルに対して初期値「１」を設定する。更新部６４は、領域特定部５０からの通知された非存在領域に一部または全部が入るボクセルの値を「０」にクリアする。ただし、一部のみが非存在領域に入るボクセルについては「１」のままで維持し、全体が入ったときに限り、「０」にクリアしてもよい。これは設計の方針による。
【００３５】
以上が三次元モデリング装置１００の構成であるが、座標計算部４２には、オプショナルな構成として輪郭判定部５２が設けられている。輪郭判定部５２は、本発明者が先に提案した「輪郭線を用いたモデリング」（以下「輪郭モデリング」という）を実行するもので、その詳細は特開２００３−６７７２６に述べたとおりである。いまその原理だけ説明すれば、カメラ１４による撮影画像からオブジェクト１０の輪郭線を抽出し、カメラ１４の焦点と輪郭線上の各点を結んで得られる曲面の外を非存在領域とするものである。この処理をオブジェクト１０の周りから撮影された複数の画像についてなせば、非常に短時間でオブジェクト１０の概形を大まかに特定することができる。ただし、オブジェクト１０の表面の窪みなどはこの方法では特定が困難であるから、輪郭モデリングを最初に実行し、つづいて詳細情報を得るために本実施の形態による非存在領域の特定を実行する「二段階処理」は有効である。
【００３６】
図７は以上の構成による処理の流れを示す。処理の開始に先立ち、まず初期化部６２によってボクセルの初期化がなされる（Ｓ１０）。つづいて、プロジェクタ１２からスリット光を投じ（Ｓ１２）、カメラ１４で撮影する（Ｓ１４）。線分抽出部４６は画像入力部４０経由で画像を取得し（Ｓ１６）、一方、アーム位置取得部４４はアーム２０からアーム位置情報を取得する（Ｓ１８）。
【００３７】
つづいて、線分抽出部４６はスリット像である線分の撮影画像内における二次元位置を特定する（Ｓ２０）。線分位置算出部４８はその結果から線分の三次元位置を算出し（Ｓ２２）、領域特定部５０が非存在領域を算出する（Ｓ２４）。つづいて、ボクセル単位の処理がなされ（Ｓ２６）、オブジェクト１０の形状が十分に得られるまで（Ｓ２８のＮｏ）、Ｓ１４以下の処理が繰り返される。形状が十分に得られれば処理を抜ける（Ｓ２８のＹｅｓ）。
【００３８】
図８はＳ２６におけるボクセル単位の処理の流れを示す。同図のごとく、まずボクセルの値が「１」、すなわち「物体が存在する」であれば（Ｓ１００のＹｅｓ）、そのボクセルが非存在領域に入っているかどうかを判定し（Ｓ１０２）、入っていれば（Ｓ１０２のＹｅｓ）、ボクセルの値を「０」にクリアして（Ｓ１０４）、処理を抜ける。Ｓ１００でＮｏ、Ｓ１０２でＮｏの場合は、それぞれ処理を抜ける。以上の処理をすべてのボクセルについて行う。
【００３９】
実施の形態２．
図９は本実施の形態に係る三次元モデリング方法の原理を示す。同図は系を上から見たところであり、以下の記号を使用する。
Ｐ：    スリット像が現実に発生するオブジェクト１０上の位置  
ｐ：    スリット像の撮影画像１８内位置  
Ｃ：    カメラ１４とスリット像を結ぶ面、すなわち第２面  
Ｂ：    いま検査しているボクセル  
Ｐ０：  ボクセルＢとカメラ１４焦点を結ぶ直線Ｃ０と、スリット光平面Ｌすなわち第１面Ｌの交点
ｐ０：  ボクセルＢの撮影画像１８内位置  
Ｄ０：  Ｐ０の奥行き
ＤＢ：  ボクセルＢの奥行き  
【００４０】
本実施の形態は、図４同様、第１面と第２面によって囲まれる空間を非存在領域として特定する。この際、以下のふたつの条件を同時に満たすボクセルが非存在領域にあると考える。  
条件１：  第２面Ｃよりも左側にある
条件２：  第１面Ｌよりも右側にある
【００４１】
ここで、条件１は「ｐ０のほうがｐよりもプロジェクタ１２に近い」と換言できる。ただし、ｐ０とｐを比較する際、撮影画像１８内の水平方向（Ｙ方向）で比較する。一方、条件２は「ＤＢがＤ０よりも小さい」と換言できる。Ｄ０およびＤＢは、Ｂの座標、カメラ１４の焦点距離、ボクセル空間座標系におけるカメラ位置情報、Ｌの式がすべて既知なので、簡単な計算から求まる。オブジェクト１０が存在しうる空間内のすべてのボクセルについて、これらふたつの条件を同時に満たすかどうかを検査し、同時に満たせばそのボクセルは非存在領域として判定される。
【００４２】
本実施の形態を実現する構成は図６のものでよい。ただし、領域特定部５０の機能が変更になる。領域特定部５０は、オブジェクト１０が存在しうる空間に検査の対象となる注目点であるボクセルＢを定め、ボクセルＢの撮影画像１８内位置ｐ０とスリット光の撮影画像１８内位置ｐとを比較し、さらに、ボクセルＢの奥行きＤＢと、ボクセルＢとカメラ１４焦点を結ぶ直線Ｃ０とスリット光平面Ｌの交点Ｐ０の奥行きＤ０とを比較する。比較の結果から、そのボクセルが条件１、２を満たす場合、その旨を記録制御部６０へ通知する。記録制御部６０による記録は既述のとおりである。
【００４３】
実施の形態における処理手順は図７からＳ２２を除いたものとなる。ただし、Ｓ２４の処理が変更になる。Ｓ２４では、各ボクセルについて条件１、２の成立性が検査される。条件１が不成立の場合、条件２の検査はスキップできる。本実施の形態でも、当然ながらカメラ１４およびプロジェクタ１２からなる系とオブジェクト１０とを相対運動させながら各処理ステップを実行することにより非存在領域を成長させることができる。以上、本実施の形態も、比較的簡単な計算からオブジェクト１０の三次元形状をモデリングでき、利便性が高い。
【００４４】
以上、本発明を実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、そうした例を挙げる。
【００４５】
実施の形態では、撮影画像をもとに三次元モデリングを行った。しかし、アーム２０のような機構を利用するのであれば、別のモデリングも可能である。例えば、撮影ユニット２４の代わりに形状が既知の付属物を取り付け、この付属物をオブジェクト１０に接触させながらスキャンすることも可能である。この場合、この付属物の存在領域にはオブジェクト１０やその一部は存在しないため、非存在領域が特定できる。付属物は操作性の面、および早期に非存在領域を確定する目的の面から形状設計されればよい。なお、この方法の場合、光学的な処理ができない黒、透明、鏡面などの形状を得ることができる。
【図面の簡単な説明】
【００４６】
【図１】実施の形態１による三次元モデリングの原理を示す図である。
【図２】図１の系を上から見た模式図である。
【図３】実施の形態１により、オブジェクトの非存在領域が特定される原理を示す図である。
【図４】実施の形態１の別の方法により、オブジェクトの非存在領域が特定される原理を示す図である。
【図５】実施の形態１でステレオカメラを用いた場合の三次元モデリングの原理を示す図である。
【図６】実施の形態１に係る三次元モデリング装置を含むシステムの全体構成図である。
【図７】実施の形態１による三次元モデリングの処理を示すフローチャートである。
【図８】図７のうち、Ｓ２６の詳細を示す図である。
【図９】実施の形態２による三次元モデリングの原理を示す図である。
【符号の説明】
【００４７】
１０  オブジェクト、  １２  プロジェクタ、  １４  カメラ、  １６  ステレオカメラ、  ２０  アーム、  ２２  プローブ、  ２４  撮影ユニット、  ４０  画像入力部、  ４２  座標計算部、  ４４  アーム位置取得部、  ４６  線分抽出部、  ４８  線分位置算出部、  ５０  領域特定部、  ５２  輪郭判定部、  ６０  記録制御部、  ６２  初期化部、  ６４  更新部、  ６６  メモリ、  １００  三次元モデリング装置。
【図１】
2005037379.tif 000003
【図２】
2005037379.tif 000004
【図３】
2005037379.tif 000005
【図４】
2005037379.tif 000006
【図５】
2005037379.tif 000007
【図６】
2005037379.tif 000008
【図７】
2005037379.tif 000009
【図８】
2005037379.tif 000010
【図９】
2005037379.tif 000011