JP3711203B2 - 3次元形状抽出方法及び装置並びに記録媒体 - Google Patents
3次元形状抽出方法及び装置並びに記録媒体 Download PDFInfo
- Publication number
- JP3711203B2 JP3711203B2 JP28787698A JP28787698A JP3711203B2 JP 3711203 B2 JP3711203 B2 JP 3711203B2 JP 28787698 A JP28787698 A JP 28787698A JP 28787698 A JP28787698 A JP 28787698A JP 3711203 B2 JP3711203 B2 JP 3711203B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- tracking
- target object
- missing
- estimation
- 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.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、デジタルビデオカメラなどによって対象物体を撮影した動画像などの画像系列から、対象物体の3次元形状を抽出、復元する技術に関する。
【0002】
【従来の技術】
デジタルビデオカメラやデジタルスチルカメラのようなデジタルメディアによって取り込んだ動画像や静止画像の系列から、対象物体の3次元形状を推定する技術は、コンピュータヴィジョンの研究分野における重要な課題の一つである。また、その応用分野、例えばロボットヴィジョン、自動走行車、ビデオカメラを使った3次元形状入力、画像符号化、3次元モデリングなどでも大きな関心が持たれている。
【0003】
時系列の2次元動画像からの3次元情報の抽出問題において、いわゆる「運動からの構造推定(Structure From Motion)」という方法では、運動(Motion)→距離(Depth)→形状(Shape)という手順にしたがって、まずカメラの運動を求め、次に物体上の特徴点のカメラ中心からの距離を求めることにより、形状を推定するのが普通である。しかし、時系列動画像では、各フレーム間での対応点の動きが小さいので、運動を平行運動か回転運動かによって特定するのは不可能に近い。結局、求められた奥行き(Depth)の解が不可能になり、形状情報の復元が上手くいかない。逆に時系列のサンプリング間隔を大きくとった場合、すなわち、各フレーム間の対応点の動きが大きい場合には、特徴点の対応付けの信頼性が低下してしまう。
【0004】
奥行きを計算せずに動きと形状を同時に計算することによって解を安定させる方法として、TomasiとKanadeにより提案された「因子分解法(factorization)」がある( C.Tomasi and T.Kanade,「Shape and motion from image stream
under orthography: A factorization method」, International Journal of
Computer Vision,vol.9,1992,pp.137−154)。この方法は、正射影モデルに基づいて線形定式化を行い、数値計算的に安定な行列の特異値分解を用いるため、他の手法に比べて、解が極めて安定であることが特徴である。
【0005】
さらに、定式化の線形性を保ちながら実際のカメラモデルである中心射影により近い擬似中心射影(paraperspective)モデルを利用する因子分解法が、PoelmanとKanadeにより提案された( C.J.Poelman and T.Kanade,「A paraperspective factorization method for shape and motion recovery」, IEEE Transaction on Pattern Analysis and Machine Intelligence,vol.19,no.3,pp.206−218)。
【0006】
ここで、この擬似中心射影モデルと、それを利用する因子分解法について説明する。
【0007】
まず擬似中心射影モデルについて述べる。このモデルは、中心射影のスケーリング効果(近くの物体が遠くの物体より大きく見えること)と、位置効果(画像の端に写っている物体が、投影中心の近くにある物体と違った角度で見える)を考慮しながら、正射影モデルの持つ線形性を保持している。擬似中心射影モデルによる物体の画像面への投影は、次のようなステップによって行われる。
(1)物体の重心を通り、画像面に平行な平面(仮想平面)を定義する。
(2)カメラ中心と物体の重心を結ぶ直線の方向に沿って、物体上の点を仮想平面に投影する。
(3)中心射影によって、その仮想平面上の点を画像面に投影する。
【0008】
この操作を図1によって具体的に説明する。図1において、1はカメラ中心、2はカメラ中心1から焦点距離だけ離れた画像面である。Cは、カメラにより撮影された物体の特徴点(その一部が■マークで代表して表されている)の集合の重心(物体の重心)である。3は重心Cを通り画像面2に平行な仮想平面である。ワールド座標系の原点を重心Cに採り、特徴点pのワールド座標系での3次元座標をsp∈R3とする。
【0009】
時系列画像中のある画像フレームfに関し、ワールド座標系でのカメラ中心1の座標をtf、画像面2の2次元ローカル座標系の基底ベクトルをif,jf∈R3(ただし、‖if‖=‖jf‖=1,if×jf=0)、カメラの光軸方向をkf=if×jf∈R3とする。画像フレームfにおいて、画像面2と、ベクトルkfの交点Ofを原点に採り、単位直交ベクトルの組(if,jf)により、2次元ローカル座標系Σf=(Of;if,jf)を定義する。
【0010】
擬似中心射影では、前述のように、特徴点pの画像面2への投影は次の2ステップで行われる。第1のステップで、特徴点pを仮想平面3に投影するが、この投影はカメラ中心1から重心Cに向かう直線と平行に行う。そして第2のステップで、仮想平面3に投影された点を画像面2に中心射影する。特徴点pの画像面2への投影点のΣf=(Of;if,jf)での座標を(ufp,vfp)とする。ただし、カメラの焦点距離は1とする。この(ufp,vfp)は、次のように表現される。
【0011】
【数1】
ただし、
【0012】
【数2】
ここで、zfはカメラ中心1から仮想平面3までの距離、(xp,yp)は物体の重心C(ワールド座標系の原点)の中心射影による画像面2への投影である。また、(Ufp,Vfp)は特徴点pを画像面2へ中心射影したときの投影点の座標であり、次式により表される。
【0013】
【数3】
この(Ufp,Vfp)をzfの周りでテーラー展開することにより、擬似中心射影モデルは、中心射影を
【0014】
【数4】
の仮定のもとで近似(一次近似)したものであることが分かる。
【0015】
次に、因子分解法について説明する。因子分解法においては、F枚の画像フレームにわたってP個の特徴点を追跡し、その結果として、投影点の画像面Σf=(Of;if,jf)上での2次元ローカル座標(ufp,vfp),f=1,2,...,F;p=1,2,...,Pを(5)式のよう並べた2F×Pの行列W(「追跡行列」と呼ぶ)を定義する。
【0016】
【数5】
この追跡行列の上半分は特徴点のx座標値ufpを表し、下半分は特徴点のy座標値vfpを表す。追跡行列の各列は一つの特徴点に対する追跡結果、各行は単一フレーム内の全特徴点のx座標値又はy座標値に対応する。
【0017】
次に、各フレーム毎に全特徴点のx座標値の平均値xfとy座標値の平均値yf
【0018】
【数6】
を求める。そして、追跡行列の各要素からxf,yfを差し引いた行列W*(「計測行列」と呼ぶ)を作る。
【0019】
【数7】
この計測行列は、フレーム数Fと特徴点数Pをいくら増やしても階数が高々3であるので、次のように分解できる。
【0020】
【数8】
これを前記(1)式と照らし合わせると、2F×3の行列Rはカメラの姿勢ベクトル{(mf,nf):f=1,2,...,F}を、3×Pの行列Sは特徴点の位置ベクトル{sp:p=1,2,...,P}を、それぞれ並べた行列であることがわかる。
【0021】
一般的には、計測行列にノイズが含まれるため、行列の階数が3であるとは限らないが、その場合でも、特異値分解を用いて大きな3つの特異値だけを保つように分解すると、二乗誤差の最小化の意味での最適分解が得られる。擬似中心射影モデルの場合も同様に、計測行列をカメラ姿勢行列と特徴点形状行列とに分解できる。このような計測行列に対する分解法を「因子分解法」と呼ぶ。
【0022】
計測行列に対する因子分解の基本アルゴリズムについて説明する。計測行列の因子分解には、行列の特異値分解の手法が用いられる。すなわち、特異値分解を用いて、計測行列は次のように3つの行列の積に分解できる。
【0023】
【数9】
ただし、Uは2F×Pの直交行列、Σは計測行列の特異値(σ1,σ2,...,σP)からなるP×Pの対角行列、VはP×Pの直交行列である。もし、計測行列の階数が3であれば、σ4以降の特異値は0に近い、小さな値になる。ここで、σ4以降を0であるとして計測行列を分解すると、
【0024】
【数10】
となる。そこで、
【0025】
【数11】
とおけば、一つの分解
【0026】
【数12】
が得られる。しかし、(12)式の分解は一意ではない。実際、任意の正則行列Qにより、
【0027】
【数13】
のように、無数の解が存在する。そこで、次のような拘束条件を導入し、この拘束条件を満たすQを求める。
【0028】
【数14】
【0029】
【数15】
【0030】
【数16】
そして、このQを使って
【0031】
【数17】
とおけば、
【0032】
【数18】
に一意に分解できる。Rは2F×3の行列でカメラの姿勢を示す。Sは3×Pの行列で各特徴点の3次元座標値を示す。詳細は前述のPoelmanとKanadeの文献に譲るが、行列Rすなわち{(mf,nf):f=1,2,...,F}と、(6)式で計算される(xf,yf)とから、カメラ方向{(if,jf,kf):f=1,2,...,F}を求めることができる。次に、(14)式からzfを、(2)式からカメラの位置tfを計算できる。
【0033】
【発明が解決しようとする課題】
正射影モデル、擬似中心射影モデルのいずれを利用するにしても、因子分解法においては、選ばれたすべての特徴点が、一連の画像フレームにわたって追跡できることを前提としている。すなわち、最初の画像フレームで見えている特徴点が途中で隠れて見えなくなったり、途中の画像フレームで新しい特徴点が導入されたりしないことを仮定している。しかしながら、カメラが物体の周りを一回りするような状況では、最初の画像フレームで見えている特徴点の一部は途中で物体に遮蔽されてしまうので、そのような仮定は、長時間にわたって撮影された動画像などでは当てはまらない。その結果、追跡行列にかなりの数の欠測値ができてしまうため、推定によって欠測値を補完する必要がある。
【0034】
また、因子分解は一意でなく、二通りの解が存在する。すなわち対象物体の表面の凹凸が区別できない。
【0035】
よって、本発明の一般的な目的は、動画像や連続した静止画像系列から作成される追跡行列に欠測値が生じる場合にも、対象物体の3次元形状の高精度な抽出を可能にすることである。本発明のより具体的な目的の一つは、追跡行列中の欠測値の効率的な推定を可能にすることであり、もう一つの目的は、対象物体の3次元形状を表面の凹凸も含め正確に抽出可能にすることである。以上の目的、及びその他の目的は、以下の説明から明らかになろう。
【0036】
【課題を解決するための手段】
請求項1乃至4の各項記載の発明によれば、改良された3次元形状抽出方法が提供される。この3次元形状抽出方法は、対象物体を撮影した画像系列を入力データとして、対象物体の特徴点を追跡することにより追跡行列を作成するステップ、追跡行列の欠測値を、追跡行列の部分行列である推定行列を用いて推定し、欠測値を推定値で置き換えるステップ、この欠測値推定ステップを終了した追跡行列から計測行列を作成するステップ、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換するステップからなり、前記欠測値推定ステップにおいて推定行列のサイズを徐々に増大させながら欠測値の推定を繰り返すことを特徴とする。請求項2記載の発明の特徴は、前記欠測値推定ステップにおいて、追跡行列を参照して特徴点をその追跡状況に応じて複数のグループに分類し、追跡行列に対し特徴点を所定のグループ順に並べ直す整形処理を施すことである。請求項3記載の発明の特徴は、前記欠測値推定ステップにおいて、追跡行列に推定値で置き換えられていない欠測値が残っているが、そのいずれの欠測値に関しても推定行列の構築が不可能になった場合に、追跡行列の上下を反転してから追跡行列の整形処理と欠測値を推定する処理を継続することである。請求項4記載の発明の特徴は、対象物体を所定方向に回転させつつ撮影し、計測行列より変換された3次元データにより表される対象物体の特徴点の運動方向と、前記撮影中の対象物体の回転方向とを比較し、この比較が不一致となった特徴点について凹凸を反転させる操作を3次元データに施すステップを追加することである。
【0037】
請求項5、6、7又は8記載の発明によれば、改良された3次元形状抽出装置が提供される。
請求項5記載の発明に係る3次元形状値抽出装置は、対象物体を撮影した画像系列を入力する手段、入力された画像系列において対象物体の特徴点を追跡することにより追跡行列を作成する手段、追跡行列の欠測値を追跡行列の部分行列である推定行列を用いて推定する処理を、推定行列のサイズを徐々に増大させながら繰り返して欠測値を推定値で置き換える手段、この欠測値推定手段により処理後の追跡行列から計測行列を作成する手段、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換する手段からなることを特徴とする。
請求項6記載の発明に係る3次元形状抽出装置は、対象物体を撮影した画像系列を入力する手段、入力された画像系列において対象物体の特徴点を追跡することにより追跡行列を作成する手段、追跡行列を参照して特徴点をその追跡状況に応じて複数のグループに分類し、追跡行列の特徴点を所定のグループ順に並べ換える整形処理を行った後、追跡行列の部分行列である推定行列を用いて追跡行列の欠測値を推定する処理を推定行列のサイズを徐々に増大させながら繰り返して欠測値を推定値で置き換える手段、この欠測値推定手段により処理後の追跡行列から計測行列を構築する手段、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換する手段からなることを特徴とする。
請求項7記載の発明に係る3次元形状抽出装置は、請求項6記載の発明に係る3次元形状抽出装置であって、欠測値推定手段において、追跡行列に推定値で置き換えられていない欠測値が残っているが、そのいずれの欠測値に関しても推定行列の構築が不可能になった場合に、追跡行列の上下を反転してから、追跡行列の整形処理と欠測値を推定する処理を継続することを特徴とする。
請求項8記載の発明に係る3次元形状抽出装置は、請求項5,6又は7記載の発明に係る3次元形状抽出装置であって、対象物体は所定方向に回転させつつ撮影され、計測行列より変換された3次元データにより表される対象物体の特徴点の運動方向と、前記撮影中の対象物体の回転方向とを比較し、この比較が不一致となった特徴点について凹凸を反転させる操作を3次元データに施す手段をさらに有することを特徴とする。
【0038】
【発明の実施の形態】
以下、本発明の一実施形態として、カメラによって物体を撮影した動画像又は一連の静止画像から、因子分解法により物体の3次元形状を高精度に抽出するための3次元形状抽出システムについて説明する。なお、カメラモデルとして前述の擬似中心射影モデルを仮定する。
【0039】
図2は、この3次元形状抽出システムの一例の構成図である。図2において、100は回転台であり、その上に対象物体102が載置される。回転台100の外周部上面に、所定間隔で複数のマークMが設けられている。104は回転台100の回転駆動機構であり、駆動部106によって駆動される。108はデジタルビデオカメラであり、回転台100を所定方向に所定速度で回転させた状態で、回転台100上の対象物体102を連続的に撮影し、画像ストリームを出力する。なお、撮影中に回転台100上のマークMがカメラ108の視野に入るように、回転台100とカメラ108の位置関係が決められる。
【0040】
デジタルビデオカメラ108から出力される画像ストリームを基に対象物体の3次元形状を抽出するための処理系は、画像入力部110、2次元演算部112、及び3次元演算部114から構成され、パソコン116と協働して作用する。デジタルビデオカメラ108から出力される画像ストリームは画像入力部110に入力される。画像入力部110は、画像ストリームから静止画像の集合を作成し、それをパソコン116のメモリ上に書き込む。2次元演算部112は、パソコン116のメモリ上の静止画像集合を基に、因子分解のための計測行列を構築し、それをパソコン116のメモリに書き込む。3次元演算部114は、計測行列から対象物体の3次元形状を抽出する。抽出された3次元形状のデータはパソコン116のメモリに書き込まれる。好ましくは、パソコン116において、3次元形状データより3次元形状が復元されてディスプレイ画面に表示され、形状抽出の結果を確認可能とされる。
【0041】
駆動部106から回転台100の回転方向を示す回転方向データが出される。この回転方向データは、3次元演算部114に入力される。また、2次元演算部112において、回転台100の回転方向を特徴点追跡に利用する場合には、2次元演算部112にも回転方向データが入力される。パソコン116は、前述のように処理の中間データと最終結果データを記憶するためのメモリを提供するほか、駆動部106や3次元形状抽出処理系(110,112,114)の動作制御を行う。画像入力部110、2次元演算部112、3次元演算部114の全部又は一部を、パソコン116のハードウェア上でソフトウェアにより実現してもよい。
【0042】
画像入力部110の処理内容を説明する。図3はその処理フローを示すフローチャートである。画像入力部110は、デジタルビデオカメラ108より出力される画像ストリームを取り込む(ステップ300)。取り込んだ画像ストリームの各フレームを、必要に応じて適当な静止画像のフォーマットに変換し(ステップ302)、得られた静止画像フレームの時系列をパソコン116のメモリに書き込む(ステップ304)。
【0043】
2次元演算部112の処理内容を説明する。図4は、その処理フローを示すフローチャートである。図示のように、2次元演算部112は、まずパソコン116のメモリより画像フレームを取り込み、濃度変化の激しい小画像領域を対象物体の特徴点として抽出する(ステップ400)。この際、好ましくは、濃度変化の激しさにより特徴点にランク付けする。すなわち、濃度変化が激しい特徴点ほど高いランクを付ける。
【0044】
次に、2次元演算部112は、相前後するフレームの特徴点を対応付けることにより、特徴点を追跡する(ステップ402)。前ステップで特徴点のランク付けが行われた場合には、ランクの高い特徴点から優先して一定個数の特徴点を選んで追跡を行う。特徴点の追跡を行う場合、現フレーム上の特徴点と次フレーム上の特徴点との間でパターン・マッチングを行い、パターンが一致すると判断される特徴点を対応付けることになるが、類似したパターンが多数存在する場合は、特徴点の対応付け、すなわち追跡を誤る可能性がある。
【0045】
このような追跡誤りを減らすため、好ましくは、駆動部106から入力された回転方向データによって示される回転台100の回転方向を、特徴点追跡の制限条件として利用し、その回転方向と、対応付けた特徴点の移動方向とが矛盾する場合には、その追跡結果は誤っている可能性が高いので、その追跡結果を捨てる。その特徴点に関して、次フレームで他に対応する適当な特徴点が見つからなければ、その位置座標は欠測値となる。さらに追跡誤りを減らすため、好ましくは、回転台100の外周部に設けられたマークMのパターンを利用する。すなわち、特徴点の位置座標を(x,y)とし(ただし、xは水平方向、yは垂直方向の座標)、現フレームと次フレームにおいて、マークMのパターン(マークパターンと呼ぶ)の中で、対応付けた特徴点のy座標と一番近いy座標を持つマークパターンを対応マークパターンとして選ぶ。そして、対応付けた特徴点の運動ベクトルの方向が対応マークパターンの運動ベクトルの方向と逆であるか、又は、特徴点の運動ベクトルの大きさと対応マークパターンの運動ベクトルの大きさとの差が所定の閾値を越えた場合は、追跡が失敗したと判断し、その追跡結果を捨てる。
【0046】
次に、2次元演算部112は、前ステップの追跡結果に基づいて、前記(5)式に示した2F×Pの追跡行列を作成する(ステップ404)。この追跡行列のデータはパソコン116のメモリに書き込まれる。なお、ステップ400,402で得られたデータもパソコン116のメモリに一時的に記憶される。
【0047】
前述のように、対象物体それ自体による特徴点の隠蔽、あるいは撮影時の照明の変動や追跡の失敗などによって、追跡行列には特徴点の位置座標が欠落した要素(欠測値)が含まれているのが一般的である。2次元演算部112は、次に、そのような特徴点の欠測値の推定を行う(ステップ406)。そして、欠測値が補われた追跡行列に基づいて前記(7)式に示した計測行列を作成する(ステップ408)。計測行列はパソコン116のメモリに保存される。
【0048】
次に、ステップ406の欠測値推定処理について説明する。具体的な処理内容の説明に先立ち、欠測値推定の基本的な考え方を説明する。
【0049】
図5は、特徴点1〜7をフレーム1〜8にわたって追跡した結果の例である。図中、「・」印は特徴点の追跡を成功し、その位置座標が得られていることを示し、「?」印は特徴点の追跡を失敗しその位置座標が欠測値となっていることを示す。このような欠測値が計測行列に残っていると、そのままでは因子分解法に利用できないため、欠測値を推定して補完する必要がある。欠測値の推定には、その欠測値の周りの既知の位置座標を利用する。まず、推定対象の欠測値を1つ選択する。そして、選択した欠測値を含む、追跡行列の部分行列(推定行列と呼ぶ)を作成する。この推定行列では、推定対象の要素以外の要素は全て既知である(位置座標が得られている)ことが必要である。
【0050】
例えば、図5において、特徴点6のフレーム5の欠測値を推定対象として選択したとする。この場合、例えば図5に示した枠の内部に対応した推定行列を作成する。この推定行列から欠測値を推定し、その推定値で追跡行列の該当欠測値を書き換える。次に、例えば、図5中の特徴点6のフレーム6の欠測値を推定対象に選び、その推定のための推定行列を作成する。例えば、特徴点1〜6、フレーム1〜6に対応する推定行列を作成し、その欠測値を推定し、追跡行列の当該欠測値を推定値で書き換える。次に、例えば図5中の特徴点7のフレーム2の欠測値を推定対象に選択し、例えば、特徴点1〜7、フレーム2〜6に対応する推定行列を作成し、当該欠測値を推定する。このようにして、欠測値を1つずつ順次推定し、最終的に追跡行列中の全ての欠測値を補完する。
【0051】
ここで、推定行列から欠測値を推定する方法として、「行拡張」と呼ばれる方法と、「列拡張」と呼ばれる方法を説明する。次式に示すような推定行列を考える。ただし、ufp,vfpが推定対象の欠測値である。
【0052】
【数19】
まず、行拡張法について説明する。(19)式の推定行列の欠測値所在の行を抜いた部分行列を作る。そして、この部分行列を因子分解法で次のように分解する。
【0053】
【数20】
M2mx3は2m枚のフレームにおけるカメラの姿勢を表す行列、S3x(n+1)は
(n+1)個の特徴点における3次元座標を表す行列である。第(m+1)フレームにおける第(n+1)特徴点(ufp,vfp)は、次の方程式組を満たすことが分かる。
【0054】
【数21】
(21)式と(22)式には、それぞれ4つの未知数(ufp,mf T)と
(vfp,nf T)があるので、これらの未知数を解くために、既知特徴点の数(=n+1)は最低4、すなわちnは3以上であることが分かる。しかし、ノイズなどの影響を考慮し、既知特徴点の数を4以上にして、言い換えれば、(21)式と(22)式を優決定系(over constrained)の最小二乗解で解くのが適当である。
【0055】
まず、(21)式を次のように展開する。
【0056】
【数22】
(22.n+1)以外を次のように整理する。
【0057】
【数23】
(23)式から、mfが求められる。そして(22.n+1)式に代入し、
【0058】
【数24】
のように、座標値ufpを求める。同じように、ufp が求められる。
【0059】
【数25】
次に、列拡張法について説明する。行拡張法と逆に、(19)式の推定行列から欠測値所在の列を抜いた部分行列を作る。この部分行列を因子分解法で、次のように分解する。
【0060】
【数26】
M2(m+1)x3は2(m+1)のフレームにおけるカメラの姿勢を表す行列、S'3xnはn個の特徴点における3次元座標を表す行列である。第(m+1)フレームにおける第(n+1)特徴点(ufp,vfp)は次の2式を満たすことが分かる。
【0061】
【数27】
(26)式はn個までの特徴点に対し成立するが(27)式と(28)式は
(n+1)個までの特徴点に対し成立する。すなわち、S1'+S2'+...+Sn'=0に対し、S1+S2+...+Sn+Sn+1=0でなければならない。ここで、
Sn+1=−nCとすると、
【0062】
【数28】
である。すなわち、
【0063】
【数29】
なお、(27)式と(28)式のxfとyfは次のように修正しなければならない。
【0064】
【数30】
(30)式と(31)式を(27)式と(28)式に代入すると
【0065】
【数31】
が得られる。この(32)式から、Sp、そしてufp,vfpが求められる。
【0066】
さて、推定に用いる推定行列のサイズが大きいほうが推定精度が上がるが、その反面、1つの欠測値の推定のための計算コストが高くなってしまう。そこで、本発明においては、前述のように、適当なサイズの推定行列を作り、欠測値の推定を行い、推定を失敗した場合には、推定行列のサイズをある大きさまで少しずつ増大させながら、推定を繰り返す。また、推定行列のサイズを少しずつ増大させながら推定演算を繰り返す処理をスムーズに進めることができるようにするため、本発明においては、推定処理の過程で追跡行列の「整形処理」を行う。また、欠測値が残っていて、それ以上は推定行列を構築できなくなった場合に、追跡行列を上下逆さに反転させる処理を行って、推定処理を続行する。
【0067】
このように、本発明にあっては、推定行列のサイズを徐々に増大させながら欠測値の推定を行うことにより、欠測値推定の計算コストの増大を抑えることができ、また、追跡行列の整形処理さらには追跡行列の上下反転により、そのような欠測値推定をスムーズに行い、従来よりも効率よく、より多くの欠測値を的確に推定することができる。したがって、追跡行列中に多くの欠測値がある場合にも精度のよい3次元形状抽出が可能になる。
【0068】
ここで、追跡行列の「整形処理」と「上下反転」について説明する。図6は、ある画像ストリームの追跡行列を示す。図中、網掛け部分は特徴点の位置座標が存在することを示し、空白部分は特徴点の位置座標が存在しない(欠測値となっている)ことを示す。この追跡行列を観察すると、特徴点は追跡状況によってグループ分けできることに気付く。
【0069】
本発明によれば、例えば、特徴点の連続して存在する(追跡できた)時間(フレーム)によって、特徴点を次の4つのグループに分ける。
Aグループ:最初のフレームから最後のフレームまで連続して存在する(全フレームにわたって追跡に成功した)特徴点、
Bグループ:最初のフレームでは存在するが、途中のフレームから消えてしまう(途中で追跡に失敗した)特徴点、
Cグループ:途中のフレームで出現するが、しばらくたって消える特徴点、
Dグループ:途中のフレームで出現して、最後のフレームまで連続して存在する特徴点。
そして、追跡行列のAグループからDグループの特徴点に対応した列を図7に示すような順番に並べ直す。これが整形処理である。図7において、網掛けした部分は位置座標(計測値)が存在する要素であり、空白部分は位置座標が存在しない(欠測値となっている)要素である。
【0070】
このように整形した追跡行列を用いて、欠測値に対する推定を行う。推定は1回で成功するとは限らないので、推定が成功しない場合には、推定行列のサイズを、所定の最大サイズまで、少しずつ大きくしながら推定を繰り返す。欠測値の推定を成功した場合には、その欠測値を推定値で書き換え、それを初めから存在する位置座標として扱い、追跡行列の整形処理をやり直す。
【0071】
要約すると、追跡行列の整形処理、推定行列の構築、推定演算の手順を停止条件を満たすまで、推定行列のサイズを少しずつ増加させながら繰り返す。この停止条件とは、具体的には、全ての欠測値を推定できたこと、又は、推定できない欠測値が残っているが、それ以上は推定行列を構築できないことである。そして、このような推定手順が終わっても欠測値が残っている場合は、追跡行列を上下反転させてから、同様の推定手順を繰り返す。
【0072】
以上に説明した2次元演算部112における欠測値推定処理のフローの一例を図8に示し、説明する。まず、パソコン116のメモリから追跡行列を取り込む(ステップ500)。この追跡行列に対し、前述の整形処理を行う(ステップ502)。整形後の追跡行列において、1つ以上の欠測値のための推定行列を構築可能であるか調べる(ステップ504)。可能ならば、注目した欠測値に対する推定行列を作成し(ステップ506)、推定演算を行い(ステップ508)、推定の成否を調べる(ステップ510)。成功した場合には、推定値で欠測値を書き換える。失敗した場合には推定行列のサイズを増加させ(ステップ512)、増加後の推定行列のサイズが予め決めた最大サイズ以下であるか調べる(ステップ514)。最大サイズ以下であるならば、その増加したサイズの推定行列を作成して推定演算を再度行う(ステップ508)。推定が成功するか、推定行列のサイズが最大サイズを越えると、全ての欠測値の推定が完了したか調べる(ステップ516)。欠測値が残っていなければ、処理は終了する。追跡行列はパソコン116のメモリに保存される。
【0073】
推定値が残っている場合には、ステップ502へ戻り次の欠測値に対する処理を続ける。
【0074】
欠測値が残っているが、推定行列の構築が不可能になった場合、ステップ504よりステップ518へ進み、追跡行列の上下反転を既に行ったか判定する。反転前ならば、追跡行列の上下反転を行い(ステップ520)、ステップ502へ戻って処理を続ける。追跡行列の上下反転後の処理でも欠測値が残っていて、推定行列の構築が不可能となった場合、ステップ504からステップ518へ、さらにステップ522へ進み、追跡行列を再び上下反転させて元の行順に戻し、処理を終了する。追跡行列はパソコン116のメモリに保存される。
【0075】
ここで、推定行列の構築に関してさらに説明する。推定行列は、線形近似射影モデルの仮定条件を良く満たす特徴点の計測値(位置座標)を集めて構築するのが、推定精度を上げるために好ましい。すなわち、前述のように、擬似中心射影モデルは、中心射影モデルにおける、カメラの光学中心から対象物体の重心までの距離の周りで展開し、一次近似をとったモデルであり、次の2式の近似条件を仮定している。
【0076】
【数32】
【0077】
【数33】
(34)式は撮影距離zfに比べて対象物体のサイズが十分に小さいという仮定を、(33)式は各特徴点のカメラの光軸への投影量が非常に小さいという仮定をそれぞれ表している。各特徴点がモデルの仮想平面上にあれば、擬似中心射影が中心射影に一致すると言える。したがって、(33)式は推定行列の構築条件を示唆している。しかし、仮想平面が常にカメラの画像面に平行であるため、カメラ運動が平行移動である場合以外は、各フレームにおけるカメラの姿勢は異なる。カメラの運動が激しい場合、(33)式の仮定を満たすことは難しい。ただし、ビデオカメラで撮った動画像の場合、連続するフレーム間のカメラの姿勢変換は小さいため、局所的に集中している特徴点の集合は(33)式の仮定を満たすと考えてよい。したがつて、追跡行列から推定行列を構築する際に、まず追跡を失敗し欠測値となっている特徴点(欠測特徴点)と最も近い特徴点を選択して推定行列を構築する。ただし、欠測特徴点の位置すなわち推定対象の欠測値が未知という問題がある。そこで、隣り合うフレーム間では特徴点の運動が平行運動であると仮定し、欠測値の代わりに、欠測特徴点の直前のフレームにある計測値(「仮定計測値」と呼ぶ)を利用する。すなわち、仮定計測値と最も距離が小さい計測値を選択して推定行列を構築する。この方法は、フレーム間の特徴点の運動が小さい動画像の場合に適する。
【0078】
次に、3次元演算部114における処理内容を説明する。図9は、その処理フローを示すフローチャートである。
【0079】
まず、3次元演算部114は、パソコン116のメモリより、2次元演算部112によって作成された計測行列を取り込む(ステップ600)。次に、この計測行列に対し前述の因子分解法を適用し(ステップ602)、対象物体の特徴点の3次元座標(形状データ)611と、特徴点群とカメラとの相対的な3次元運動(運動データ)610を求める。
【0080】
因子分解は一意ではなく、二通りの解があり、形状の凹凸の区別がつかないという問題がある。そこで本発明では、形状の凹凸判断を行って必要な凹凸の修正を行い(ステップ604)、凹凸が正確な形状データ606を得る。
【0081】
ステップ604の内容を図10に示す。すなわち、3次元(運動/形状)データ610,611と、駆動部106から入力された回転方向データ612とを比較し、回転台100の回転方向と対象物体上の特徴点の運動方向との一致を調べる(ステップ702)。運動方向が一致する特徴点に関する形状データはそのまま正確なものとして出力する(ステップ706)。しかし、運動方向が一致しない特徴点の形状データについては、z軸に対して反転し、すなわち凹凸反転操作を行い(ステップ704)、反転したものを正確な形状データとして出力する(ステップ706)。
【0082】
このように、本発明によれば、撮影中の対象物体の回転の方向と、計測行列から得られた3次元データにより表される特徴点の運動方向とが不一致の場合に凹凸反転操作を行うことにより、対象物体の表面の凹凸も含めた正確な形状抽出が可能である。
【0083】
図2に示した画像入力部110、2次元演算部112及び3次元演算部114の機能、あるいは図3、図4、図8、図9及び図10に関連して説明した処理内容を、パソコン116又は別のパソコンその他のコンピュータを利用し、ソフトウェアにより実現することもできる。例えば、図11に略示するようなCPU800、メモリ801、ハードディスクなどの補助記憶装置802、フロッピーディスクなどの記録媒体804の読み書きのためのドライブ803、外部の入力機器との入力インターフェイス805及び出力インターフェイス806などをシステムバス807によって接続したようなコンピュータを利用できる。そして、図3、図4、図8、図9及び図10に関連して説明した処理内容を実行させるためのプログラム810はメモリ801上に置かれてCPU800によって実行される。このプログラム810は、例えば、それが記録されたフロッピーディスクなどの記録媒体804からドライブ803を介してメモり801にロードされ、あるいは補助記憶装置802に一旦格納され処理実行時にメモリ801にロードされる。カメラ108から出力される画像ストリームや駆動部106より出力される回転方向データは、例えば入力インターフェイス805を介して取り込まれる。最終的な形状データは、例えば、補助記憶装置802に保存されたり、ドライブ803を介してフロッピーディスクなどに書き出される。
【0084】
【発明の効果】
以上の説明から明らかなように、本発明によれば、推定行列のサイズを徐々に増大させながら欠測値の推定を行うことにより、欠測値推定の計算コストの増大を抑えることができ、また、追跡行列の整形処理さらには追跡行列の上下反転により、そのような欠測値推定をスムーズに行い、従来よりも効率よく、より多くの欠測値を的確に推定することができる。したがって、追跡行列中に多くの欠測値がある場合にも精度のよい3次元形状抽出が可能になる。また、撮影中の対象物体の回転の方向と、計測行列から得られた3次元データにより表される特徴点の運動方向とが不一致の場合に凹凸反転を行うことにより、対象物体の表面の凹凸も正確に抽出可能である。
【図面の簡単な説明】
【図1】擬似中心射影モデルの説明図である。
【図2】本発明による3次元形状抽出システムの構成図である。
【図3】画像入力部の処理フローを示すフローチャートである。
【図4】2次元演算部の処理フローを示すフローチャートである。
【図5】追跡行列の欠測値の推定方法の説明図である。
【図6】追跡行列の一例を示す図である。
【図7】追跡行列の整列処理の説明図である。
【図8】欠測値推定処理フローの一例を示すフローチャートである。
【図9】3次元演算部の処理フローを示すフローチャートである。
【図10】形状凹凸判断/推定処理を示すフローチャートである。
【図11】本発明をソフトウェアで実現するために利用するコンピュータの一例を示すブロック図である。
【符号の説明】
100 回転台
102 対象物体
104 回転駆動機構
106 駆動部
108 デジタルビデオカメラ
110 画像入力部
112 2次元演算部
114 3次元演算部
116 パソコン
Claims (12)
- 対象物体を撮影した画像系列を入力データとして、対象物体の特徴点を追跡することにより追跡行列を作成するステップ、追跡行列の欠測値を、追跡行列の部分行列である推定行列を用いて推定し、欠測値を推定値で置き換えるステップ、この欠測値推定ステップを終了した追跡行列から計測行列を作成するステップ、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換するステップからなり、前記欠測値推定ステップにおいて推定行列のサイズを徐々に増大させながら欠測値の推定を繰り返すことを特徴とする3次元形状抽出方法。
- 欠測値推定ステップにおいて、追跡行列を参照して特徴点をその追跡状況に応じて複数のグループに分類し、追跡行列に対し特徴点を所定のグループ順に並べ直す整形処理を施すことを特徴とする請求項1記載の3次元形状抽出方法。
- 欠測値推定ステップにおいて、追跡行列に推定値で置き換えられていない欠測値が残っているが、そのいずれの欠測値に関しても推定行列の構築が不可能になった場合に、追跡行列の上下を反転して、追跡行列の整形処理と欠測値を推定する処理を継続することを特徴とする請求項2記載の3次元形状抽出方法。
- 対象物体は所定方向に回転させつつ撮影され、計測行列より変換された3次元データにより表される対象物体の特徴点の運動方向と、前記撮影中の対象物体の回転方向とを比較し、この比較が不一致となった特徴点について凹凸を反転させるための操作を3次元データに施すステップをさらに含むことを特徴とする請求項1、2又は3記載の3次元形状抽出方法。
- 対象物体を撮影した画像系列を入力する手段、入力された画像系列において対象物体の特徴点を追跡することにより追跡行列を作成する手段、追跡行列の欠測値を追跡行列の部分行列である推定行列を用いて推定する処理を、推定行列のサイズを徐々に増大させながら繰り返して欠測値を推定値で置き換える手段、この欠測値推定手段により処理後の追跡行列から計測行列を作成する手段、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換する手段からなることを特徴とする3次元形状抽出装置。
- 対象物体を撮影した画像系列を入力する手段、入力された画像系列において対象物体の特徴点を追跡することにより追跡行列を作成する手段、追跡行列を参照して特徴点をその追跡状況に応じて複数のグループに分類し、追跡行列の特徴点を所定のグループ順に並べ換える整形処理を行った後、追跡行列の部分行列である推定行列を用いて追跡行列の欠測値を推定する処理を推定行列のサイズを徐々に増大させながら繰り返して欠測値を推定値で置き換える手段、この欠測値推定手段により処理後の追跡行列から計測行列を構築する手段、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換する手段からなることを特徴とする3次元形状抽出装置。
- 欠測値推定手段において、追跡行列に推定値で置き換えられていない欠測値が残っているが、そのいずれの欠測値に関しても推定行列の構築が不可能になった場合に、追跡行列の上下を反転してから、追跡行列の整形処理と欠測値の推定処理を継続することを特徴とする請求項6記載の3次元形状抽出装置。
- 対象物体は所定方向に回転させつつ撮影され、計測行列より変換された3次元データにより表される対象物体の特徴点の運動方向と、前記撮影中の対象物体の回転方向とを比較し、この比較が不一致となった特徴点について凹凸を反転させる操作を3次元データに施す手段をさらに有することを特徴とする請求項5,6又は7記載の3次元形状抽出装置。
- 対象物体を撮影した画像系列を入力するステップ、入力された画像系列において対象物体の特徴点を追跡することにより追跡行列を作成するステップ、追跡行列の欠測値を追跡行列の部分行列である推定行列を用いて推定する処理を推定行列のサイズを徐々に増大させながら繰り返して欠測値を推定値で置き換えるステップ、この欠測値推定ステップにより処理後の追跡行列から計測行列を作成するステップ、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換するステップをコンピュータ に実行させるプログラムが記録されたことを特徴とするコンピュータ読み取り可能記録媒体。
- 対象物体を撮影した画像系列において対象物体の特徴点を追跡することにより追跡行列を作成するステップ、追跡行列を参照して特徴点をその追跡状況に応じて複数のグループに分類し、追跡行列の特徴点を所定のグループ順に並べ換える整形処理を行った後、追跡行列の部分行列である推定行列を用いて追跡行列の欠測値を推定する処理を推定行列のサイズを徐々に増大させながら繰り返して欠測値を推定値で置き換えるステップ、この欠測値推定ステップを終了した追跡行列から計測行列を構築するステップ、及び、計測行列を対象物体の形状と運動をそれぞれ表す3次元データに変換するステップをコンピュータに実行させるプログラムが記録されたことを特徴とするコンピュータ読み取り可能記録媒体。
- 欠測値推定ステップにおいて、追跡行列に推定値で置き換えられていない欠測値が残っているが、そのいずれの欠測値に関しても推定行列の構築が不可能になった場合に、追跡行列の上下を反転してから、追跡行列の整形処理と欠測値の推定処理を継続することを特徴とする請求項10記載のコンピュータ読み取り可能記録媒体。
- 対象物体は所定方向に回転させつつ撮影され、プログラムは、計測行列より変換された3次元データにより表される対象物体の特徴点の運動方向と、前記撮影中の対象物体の回転方向とを比較し、この比較が不一致となった特徴点については凹凸を反転させる操作を3次元データに施すステップをさらにコンピュータに実行させるものであることを特徴とする請求項9,10又は11記載のコンピュータ読み取り可能記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28787698A JP3711203B2 (ja) | 1998-10-09 | 1998-10-09 | 3次元形状抽出方法及び装置並びに記録媒体 |
US09/414,349 US6628819B1 (en) | 1998-10-09 | 1999-10-07 | Estimation of 3-dimensional shape from image sequence |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28787698A JP3711203B2 (ja) | 1998-10-09 | 1998-10-09 | 3次元形状抽出方法及び装置並びに記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000113194A JP2000113194A (ja) | 2000-04-21 |
JP3711203B2 true JP3711203B2 (ja) | 2005-11-02 |
Family
ID=17722887
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28787698A Expired - Fee Related JP3711203B2 (ja) | 1998-10-09 | 1998-10-09 | 3次元形状抽出方法及び装置並びに記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3711203B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5087264B2 (ja) * | 2005-12-08 | 2012-12-05 | 株式会社トプコン | 画像処理装置及びその方法 |
JP5219090B2 (ja) * | 2009-07-02 | 2013-06-26 | ソーバル株式会社 | 3次元形状測定装置、3次元形状測定方法 |
CN113375568B (zh) * | 2021-05-12 | 2023-03-31 | 苏州阿普奇物联网科技有限公司 | 一种基于激光扫描的金属拉丝抛光不良检测方法 |
-
1998
- 1998-10-09 JP JP28787698A patent/JP3711203B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000113194A (ja) | 2000-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109242873B (zh) | 一种基于消费级彩色深度相机对物体进行360度实时三维重建的方法 | |
US7352386B1 (en) | Method and apparatus for recovering a three-dimensional scene from two-dimensional images | |
Torresani et al. | Tracking and modeling non-rigid objects with rank constraints | |
Han et al. | Reconstruction of a scene with multiple linearly moving objects | |
JP2002024807A (ja) | 物体運動追跡手法及び記録媒体 | |
KR20130084849A (ko) | 카메라 추적을 위한 방법 및 장치 | |
Garg et al. | Dense multi-frame optic flow for non-rigid objects using subspace constraints | |
JP2006252275A (ja) | カメラ運動及び物体形状の復元システム | |
Bartol et al. | Generalizable human pose triangulation | |
You et al. | MISD-SLAM: multimodal semantic SLAM for dynamic environments | |
Fua et al. | Reconstructing surfaces from unstructured 3d points | |
Simon et al. | Kronecker-markov prior for dynamic 3d reconstruction | |
Parashar et al. | Robust isometric non-rigid structure-from-motion | |
KR100944293B1 (ko) | 단일 축 회전 영상들로부터의 효율적인 전 방향 3차원모델의 재구성 방법 | |
JP3711203B2 (ja) | 3次元形状抽出方法及び装置並びに記録媒体 | |
Lu et al. | Model-based integration of visual cues for hand tracking | |
JP2001101419A (ja) | 画像特徴追跡処理方法、画像特徴追跡処理装置、3次元データ作成方法 | |
JP2000003446A (ja) | 欠測値推定方法、三次元データ入力装置、及び、記録媒体 | |
Phalak et al. | DeepPerimeter: Indoor boundary estimation from posed monocular sequences | |
JP2002008014A (ja) | 3次元形状抽出方法及び装置並びに記録媒体 | |
Ogawara et al. | Grasp recognition using a 3D articulated model and infrared images | |
Adán et al. | 3D feature tracking using a dynamic structured light system | |
Xu et al. | Optical flow-based video completion in spherical image sequences | |
JP2009048305A (ja) | 形状解析プログラム及び形状解析装置 | |
JP3548652B2 (ja) | 物体形状復元装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050412 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050419 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050616 |
|
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: 20050809 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050812 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080819 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090819 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090819 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100819 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100819 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110819 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110819 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120819 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120819 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130819 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |