JP2011237296A - 3次元形状計測方法、3次元形状計測装置、及びプログラム - Google Patents
3次元形状計測方法、3次元形状計測装置、及びプログラム Download PDFInfo
- Publication number
- JP2011237296A JP2011237296A JP2010109306A JP2010109306A JP2011237296A JP 2011237296 A JP2011237296 A JP 2011237296A JP 2010109306 A JP2010109306 A JP 2010109306A JP 2010109306 A JP2010109306 A JP 2010109306A JP 2011237296 A JP2011237296 A JP 2011237296A
- Authority
- JP
- Japan
- Prior art keywords
- code
- word
- dimensional
- circular
- monochrome
- 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.)
- Pending
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
【課題】1回のパターン投影、及び撮影により計測対象の3次元形状を復元する。
【解決手段】投影装置1は、所定の投影パターン(円形白黒コード群)を計測対象4に投影する。撮像装置2は、投影パターンが投影された計測対象4を撮影する。コード抽出部3−2は、撮影した画像からコードを抽出する。コード識別部3−3は、抽出したコードからコード番号を識別する。ワード生成部3−4は、着目コード番号の4近傍のコード番号を探索してワードを生成する。対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと投影パターンのワードとの対応をとり、対応点の座標を得る。3次元位置算出部3−6は、3角測量の原理を用いて、撮影画像中のワードの中心座標と投影パターンの中心座標とから3次元座標位置を算出する。
【選択図】図1
【解決手段】投影装置1は、所定の投影パターン(円形白黒コード群)を計測対象4に投影する。撮像装置2は、投影パターンが投影された計測対象4を撮影する。コード抽出部3−2は、撮影した画像からコードを抽出する。コード識別部3−3は、抽出したコードからコード番号を識別する。ワード生成部3−4は、着目コード番号の4近傍のコード番号を探索してワードを生成する。対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと投影パターンのワードとの対応をとり、対応点の座標を得る。3次元位置算出部3−6は、3角測量の原理を用いて、撮影画像中のワードの中心座標と投影パターンの中心座標とから3次元座標位置を算出する。
【選択図】図1
Description
本発明は、投影装置(例えば、プロジェクタ)でパターンが投影された計測対象を、撮像装置(例えば、カメラ)で撮影し、画像処理により対象物体の3次元形状を復元するための3次元形状計測方法、3次元形状計測装置、及びプログラムに関する。
従来の1回のパターン投影、及び撮影により動物体の3次元形状を計測する方法は、空間コード化法と言われ、主に、階調、縞模様、点群を用いたパターン投影方法として知られている。ここで、階調を用いたパターン投影方法は、すべての画素に固有の階調を割り当てることにより、投影パターンの座標と撮影画像の座標との対応付けを行う方法である。
一方、縞模様を用いたパターン投影方法は、De Bruijn系列という1次元の部分数列が特定できれば、数列中の位置が特定可能な数列を使い、その数列に複数の色の付いた縞模様割り当てることにより、投影パターンの座標と撮影画像の座標との対応付けを行う方法である。
一方、点群を用いたパターン投影方法は、M系列という2次元の部分数列が特定できれば、数列中の位置が特定可能な数列を使い、その数列に色や白黒の幾何学模様の点を割り当てることにより、投影パターンの座標と撮影画像の座標の対応付けを行う方法である(例えば、非特許文献1参照)。
P. M. Griffin, L. S. Narasimhan, and S. R. Yee, "Generation of uniquely encoded light patterns for range data acquisition," Pattern Recogn. 25(6), 609-616 (1992)
しかしながら、上述した空間コード化法では、多くの階調を識別する必要があるため、パターン抽出が不安定であるといった問題がある。また、画像中のノイズに弱く、投影対象とする物体表面の特性に大きく左右されるといった問題がある。
さらに、縞模様を用いたパターン投影方法では、複数の色を投影するため、投影対象の色に左右されるという問題がある。また、点群を用いたパターン投影方法では、色点群を用いたものは、複数の色を投影するため、投影対象の色に左右されるという問題がある。また、白黒の幾何模様の点群を用いたものは、対象の高さの変化が急である場所においては、コードが変形することにより、幾何模様の抽出が難しいといった問題があった。
本発明は、このような事情を考慮してなされたものであり、その目的は、投影対象の色によらず、物体の高さによりコードが変形した際にも、1回のパターン投影、及び撮影により、計測対象の3次元形状を復元することができる3次元形状計測方法、3次元形状計測装置、及びプログラムを提供することにある。
上述した課題を解決するために、本発明は、1回のパターン投影、及び該投影されたパターンの撮影により計測対象の3次元形状を計測する3次元形状計測方法であって、それぞれを識別可能なコード番号に一意に対応付けられた、複数の円形白黒コードからなる投影パターンを前記計測対象に投影する投影ステップと、前記投影パターンが投影された前記計測対象を撮影する撮影ステップと、前記計測対象を撮影した撮影画像から円形白黒コードを抽出するコード抽出ステップと、前記抽出した円形白黒コードに対して楕円形状を当てはめることにより、前記抽出した円形白黒コードに対応するコード番号を識別するコード識別ステップと、前記撮影画像中のコード番号の分布に基づいて、各コード番号とその近傍のコード番号とからなるワードを生成するワード生成ステップと、前記撮影画像中のワードを用いて前記投影パターンのワードの対応点位置を算出する対応点位置算出ステップと、前記撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出する3次元位置算出ステップとを含むことを特徴とする3次元形状計測方法である。
本発明は、上記の発明において、前記対応点位置算出ステップで算出された、前記撮影画像中のワードに対応する投影パターンのワードの対応点位置がエピポーラ線近傍に存在するかを判定し、前記エピポーラ線から所定の閾値以上離れる場合には、外れ値とみなして除去する第1の外れ値除去ステップを更に含み、前記3次元位置算出ステップは、前記外れ値が除去された残りの撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出することを特徴とする。
本発明は、上記の発明において、前記3次元位置算出ステップで算出された、前記計測対象に投影された円形白黒コードの3次元位置を用いて、着目3次元点の位置と近傍3次元点の位置との距離を測り、該距離が大きく外れる場合には、外れ値とみなして、前記計測対象に投影された円形白黒コードの3次元位置から、対象となる着目3次元点を除去する第2の外れ値除去ステップを更に含むことを特徴とする。
本発明は、上記の発明において、前記コード抽出ステップでコードは抽出されたが、前記ワード生成ステップでワードが生成できなかった場合に、その着目点のコードとその近傍点のコードとの位置を、穴埋め候補ワード群として保存する穴埋め候補保存ステップと、前記第2の外れ値除去ステップによる外れ値除去後、コードは抽出されたが、ワードが生成できなかった着目点の3次元位置を、ワードが生成できた近傍3次元点の位置を用いて算出する穴埋めステップとを更に含むことを特徴とする。
また、上述した課題を解決するために、本発明は、1回のパターン投影、及び該投影されたパターンの撮影により計測対象の3次元形状を計測する3次元形状計測装置であって、それぞれを識別可能なコード番号に一意に対応付けられた、複数の円形白黒コードからなる投影パターンを前記計測対象に投影する投影手段と、前記投影パターンが投影された前記計測対象を撮影する撮影手段と、前記計測対象を撮影した撮影画像から円形白黒コードを抽出するコード抽出手段と、前記抽出した円形白黒コードに対して楕円形状を当てはめることにより、前記抽出した円形白黒コードに対応するコード番号を識別するコード識別手段と、前記撮影画像中のコード番号の分布に基づいて、各コード番号とその近傍のコード番号とからなるワードを生成するワード生成手段と、前記撮影画像中のワードを用いて前記投影パターンのワードの対応点位置を算出する対応点位置算出手段と、前記撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出する3次元位置算出手段とを備えることを特徴とする3次元形状計測装置である。
本発明は、上記の発明において、前記対応点位置算出手段で算出された、前記撮影画像中のワードに対応する投影パターンのワードの対応点位置がエピポーラ線近傍に存在するかを判定し、前記エピポーラ線から所定の閾値以上離れる場合には、外れ値とみなして除去する第1の外れ値除去手段を更に備え、前記3次元位置算出手段は、前記外れ値が除去された残りの撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出することを特徴とする。
本発明は、上記の発明において、前記3次元位置算出手段で算出された、前記計測対象に投影された円形白黒コードの3次元位置を用いて、着目3次元点の位置と近傍3次元点の位置との距離を測り、該距離が大きく外れる場合には、外れ値とみなして、前記計測対象に投影された円形白黒コードの3次元位置から、対象となる着目3次元点を除去する第2の外れ値除去手段を更に備えることを特徴とする。
本発明は、上記の発明において、前記コード抽出手段でコードは抽出されたが、前記ワード生成手段でワードが生成できなかった場合に、その着目点のコードとその近傍点のコードとの位置を、穴埋め候補ワード群として保存する穴埋め候補保存手段と、前記第2の外れ値除去手段による外れ値除去後、コードは抽出されたが、ワードが生成できなかった着目点の3次元位置を、ワードが生成できた近傍3次元点の位置を用いて算出する穴埋め手段とを更に備えることを特徴とする。
また、上述した課題を解決するために、本発明は、1回のパターン投影、及び該投影されたパターンの撮影により計測対象の3次元形状を計測する3次元形状計測装置のコンピュータに、それぞれを識別可能なコード番号に一意に対応付けられた、複数の円形白黒コードからなる投影パターンを前記計測対象に投影する投影機能、前記投影パターンが投影された前記計測対象を撮影する撮影機能、前記計測対象を撮影した撮影画像から円形白黒コードを抽出するコード抽出機能、前記抽出した円形白黒コードに対して楕円形状を当てはめることにより、前記抽出した円形白黒コードに対応するコード番号を識別するコード識別機能、前記撮影画像中のコード番号の分布に基づいて、各コード番号とその近傍のコード番号とからなるワードを生成するワード生成機能、前記撮影画像中のワードを用いて前記投影パターンのワードの対応点位置を算出する対応点位置算出機能、前記撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出する3次元位置算出機能を実行させることを特徴とするプログラムである。
この発明によれば、投影対象の色によらず、物体の高さによりコードが変形した際にも、1回のパターン投影、及び撮影により、動物体の3次元形状を復元することができる。
以下、本発明の一実施形態を、図面を参照して説明する。
本発明は、円形白黒コードを投影パターンに用いて、形状の変形が大きな際にも形状抽出が容易な楕円当てはめを行うことにより、投影対象の色や形状変化が大きい場合でも、1回のパターン投影、及び撮影により動物体の3次元形状を復元することを特徴としている。
通常、3次元物体に幾何模様を投影すると、撮影画像中の物体が存在する部分において幾何模様が変形する。特に、高さの変化が大きい場所においては、大きな変形となる。本発明においては、これに対処するため、円形白黒コードを投影パターンに用いて、形状の変形が大きな際にも、形状抽出が容易な楕円当てはめを行ってコードを抽出する。なお、本発明では、1つの円形白黒コード内での形状の傾き変化がない場合を対象とする。これを保証するため、本発明では、一投影パターン内に含まれるコード数の密度が高いパターンを用いる。
A.第1実施形態
図1は、本第1実施形態による3次元形状計測装置の構成を示すブロック図である。図1において、計測対象にパターンを投影するプロジェクタ等の投影装置1、計測対象4を撮影するカメラなどの撮像装置2、画像処理を行う計算機、及び結果を表示するモニタなどの表示部を備える処理装置3からなる。
図1は、本第1実施形態による3次元形状計測装置の構成を示すブロック図である。図1において、計測対象にパターンを投影するプロジェクタ等の投影装置1、計測対象4を撮影するカメラなどの撮像装置2、画像処理を行う計算機、及び結果を表示するモニタなどの表示部を備える処理装置3からなる。
なお、本発明では、所定の位置に固定されたカメラ・プロジェクタを用いる。このとき、あらかじめ既知の校正パターンを用いて、カメラとプロジェクタとの内部・外部パラメータを求めておき、カメラとプロジェクタとは、時間同期が取れているものとする。また、画像処理を行うハードウェアについては、汎用の計算機、処理ロジックを実装したボード、チップなど様々なものが考えられるが、ここでは、それを限定しない。
以下では、パターン投影された計測対象を撮影した画像(フレーム画像)が時系列的に入力される状況を想定して説明を進める。ここでのパターンは、可視光波長領域外の光(例えば、赤外光)によるものでもよい。その場合には、カメラとプロジェクタにそれぞれ同じ特性を有した光学フィルタを装着するものとする。
処理装置3は、プロジェクタ制御部3−1、コード抽出部3−2、コード識別部3−3、ワード生成部3−4、対応点算出部3−5、3次元位置算出部3−6、及び表示部3−7を備えている。プロジェクタ制御部3−1は、所定の投影パターン(円形白黒コード群)を生成し、投影装置1に供給する。投影装置1は、所定の投影パターン(円形白黒コード群)を計測対象4に投影する。撮像装置2は、投影パターンが投影された計測対象4を撮影し、撮影した画像をコード抽出部3−2に供給する。
コード抽出部3−2は、撮影した画像(円形白黒コード群を含む)からコードを抽出する。コード識別部3−3は、抽出したコードからコード番号を識別する。ワード生成部3−4は、識別コード群からコード番号を読み出し、着目コード番号の4近傍のコード番号を探索することにより、ワードを生成する。対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと投影パターンのワードとの対応をとり、対応点の座標を得る。3次元位置算出部3−6は、3角測量の原理を用いて、算出した撮影画像中のワードの中心座標と投影パターンの中心座標とから、測対象4に投影された円形白黒コードの3次元座標位置を算出する。表示部3−7は、算出された3次元座標位置を表示する。
次に、本第1実施形態の動作について説明する。
図2は、本第1実施形態による3次元形状計測装置の動作を説明するためのフローチャートである。投影装置1は、処理が開始されると、上述したように、プロジェクタ制御部3−1によって生成された投影パターンを計測対象4に投影し、撮像装置2は、該計測対象を撮影し、画像を取得する(ステップS1)。
図2は、本第1実施形態による3次元形状計測装置の動作を説明するためのフローチャートである。投影装置1は、処理が開始されると、上述したように、プロジェクタ制御部3−1によって生成された投影パターンを計測対象4に投影し、撮像装置2は、該計測対象を撮影し、画像を取得する(ステップS1)。
投影パターンとしては、具体的には、図3に示すような円形白黒コードを用いる。ここで、円形白黒コードは、外円が白で、内円が生成するコードの数に応じて白黒に分割されている。図3の例においては、生成コード数が8なので、内円を90度毎に分割している。外円と内円との割合は、(外円の直径):(内円の直径)=3:2とするようにしても良いし、あらかじめ、後の楕円当てはめ、コードの識別の実験を行った結果を持って割合を変化させても良い。投影パターンは、これらのコードをM系列に従うように並べる。
M系列は(非特許文献1)、2次元の数列であり、縦横の割合が(縦):(横)=(コードの数)2:(コードの数)3となるので、画像の縦横比に合わせて、余る分をカットする。例えば、コード数が8、1600×1200画素の投影パターンを考えると、M系列は、64×512となるので、M系列を最大限用いようとすると、縦方向に伸ばすことになり、1コード当たり1200/64=18.75画素となり、横方向のM系列の最大は、1600/18.75=85.33で85なので、結局、64×85分を用いることなり、残りをカットする。パターン抽出しやすいように、コード間の間隔を空けるために、実際に1コード当たりに割ける画素数は、より少なくなる。
コード抽出部3−2は、撮影した撮影画像中のコードを抽出する(ステップS2)。次に、コード識別部3−3は、抽出したコードからコード番号を識別する(ステップS3)。ここでは、図4に示すように、撮影画像中の円形白黒コードに楕円を当てはめる(楕円形状であるとしてパターンマッチングする)ことで、長径・短径・傾き・中心座標を取得する。ここで、楕円当てはめに当たっては、撮影画像を二値化し、輪郭線抽出を行ったものについて行う。なお、図3のコード“1”のような場合には、内円にも楕円当てはめが可能であるが、楕円の内部に楕円がある場合には除外する。
続いて、図5に示すように、内円の内部を、当てはめた楕円の結果を用い、傾きに沿って、長径・短径の異なる同じ形でスキャンし、スキャンした結果によりコードを識別する。ここで、スキャンに当たっては、スキャンする楕円円周上のすべての画素を調べる必要はなく、コードの際の内円分割の角度に応じて、サンプル点I0〜I3をスキャンすればよい。ここでは、各サンプル点が白か黒かによってコード番号の識別が可能となる。こうして得られた、撮影画像上のコードの中心座標、コード番号を識別コード群として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS4)、終わっていない場合には、ステップS2に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、ワード生成部3−4は、識別コード群からコード番号を読み出し、着目コード番号の4近傍のコード番号を探索することにより、ワードを生成する(ステップS5)。
M系列の性質から、着目コード番号と4近傍のコード番号とが分かれば、対応関係が求められるので、1ワードは、5つのコード番号で形成されることとなる。ここで、近傍のコード番号が1つでも識別できていない場合、あるいは着目コード番号と近傍のコード番号との座標が大きく離れている場合には、ワードを生成しない。
次に、対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと投影パターンのワードとの対応をとり、対応点の座標を得る(ステップS6)。M系列の性質上、部分数列(ワード)が得られると、全体の数列での対応する位置が一意に定まる。よって、生成されたワードを用いて、撮影画像中のワードと投影パターンのワードとの対応をとることができる。撮影画像中のワードの中心座標は、楕円当てはめにより分かっており、また、投影パターンのワードの中心座標も投影パターン作成時に分かっているので、対応点の座標を得ることができる。
次に、3次元位置算出部3−6は、3角測量の原理を用いて、算出した撮影画像中のワードの中心座標と投影パターンの中心座標とから、計測対象4に投影された円形白黒コードの3次元座標位置を算出する(ステップS7)。図6に示すように、画像座標から撮像装置(カメラ)2からの視線方向αが決まり、位相値から投影装置(プロジェクタ)1からの見込み角βが決まるので、あらかじめキャリブレーションにより得ておいた、撮像装置(カメラ)2の中心、投影装置(プロジェクタ)1の中心間の距離Lを用いることで、三角測量の原理から計測対象4の3次元座標を求めることができる。そして、得られた3次元座標位置を3次元形状として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS8)、終わっていない場合には、ステップS5に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、実行時に指定された終了条件(指定時刻や、指定処理枚数等)を満たしたか否かを判定し(ステップS9)、終了条件を満たしていない場合には、ステップS1に戻り、上述した処理を繰り返す。一方、終了条件を満たした場合には、当該処理を終了する。
B.第2実施形態
次に、本発明による第2実施形態について説明する。
図7は、本第2実施形態による3次元形状計測装置の構成を示すブロック図である。なお、図1に対応する部分には同一の符号を付けて説明を省略する。本第2実施形態では、撮影画像中のワードに対応する投影パターンのワードの対応点の位置がエピポーラ線近傍に存在するかを判定し、エピポーラ線から大きく離れる場合には、外れ値とみなし、該外れ値を除去する、対応点による外れ値除去部3−8を設けている。
次に、本発明による第2実施形態について説明する。
図7は、本第2実施形態による3次元形状計測装置の構成を示すブロック図である。なお、図1に対応する部分には同一の符号を付けて説明を省略する。本第2実施形態では、撮影画像中のワードに対応する投影パターンのワードの対応点の位置がエピポーラ線近傍に存在するかを判定し、エピポーラ線から大きく離れる場合には、外れ値とみなし、該外れ値を除去する、対応点による外れ値除去部3−8を設けている。
図8に示すように、ステレオ視の原理により撮影画像の点m’に対応する投影パターンの点mは、エピポーラ線上に存在する。エピポーラ線lは、あらかじめ計測しておいた、投影装置1、撮像装置2の位置関係により、Fundamental Matrixが求められるので、計算が可能である。但し、あらかじめ計測しておいた投影装置1と撮像装置2との位置の誤差、楕円の当てはめ誤差等の影響があるので、閾値Th_lを設け、閾値Th_lの範囲内でエピポーラ線近傍に投影パターンの対応点mがある場合には、対応が取れているものとし、一方、エピポーラ線から大きく離れる場合には、外れ値とみなし、対象となる点を形状計測の候補から削除する。すなわち、図8において、画像面上の点m’の対応点mが、投影パターン面上のエピポーラ線lの近傍にない場合には、外れ値とみなし、対象となる点を形状計測の候補から削除する。
図9は、本第2実施形態による3次元形状計測装置の動作を説明するためのフローチャートである。投影装置1は、処理が開始されると、上述したように、プロジェクタ制御部3−1によって生成された投影パターンを計測対象4に投影し、撮像装置2は、該計測対象を撮影し、画像を取得する(ステップS21)。
コード抽出部3−2は、撮影した撮影画像中のコードを抽出する(ステップS22)。次に、コード識別部3−3は、抽出したコードからコード番号を識別する(ステップS23)。こうして得られた、撮影画像上のコードの中心座標、コード番号を識別コード群として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS24)、終わっていない場合には、ステップS22に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、ワード生成部3−4は、識別コード群からコード番号を読み出し、着目コード番号の4近傍のコード番号を探索することにより、ワードを生成する(ステップS25)。
次に、対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと投影パターンのワードとの対応をとり、対応点の座標を得る(ステップS26)。次に、対応点による外れ値除去部3−8は、閾値の範囲内でエピポーラ線近傍に投影パターンの対応点がある場合には、対応が取れているものとし、一方、エピポーラ線から大きく離れる場合には、外れ値とみなし、対象となる点を形状計測の候補から削除する(ステップS27)。次に、3次元位置算出部3−6は、3角測量の原理を用いて、算出した撮影画像中のワードの中心座標と投影パターンの中心座標とから、計測対象4に投影された円形白黒コードの3次元座標位置を算出する(ステップS28)。そして、得られた3次元座標位置を3次元形状として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS29)、終わっていない場合には、ステップS25に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、実行時に指定された終了条件(指定時刻や、指定処理枚数等)を満たしたか否かを判定し(ステップS30)、終了条件を満たしていない場合には、ステップS21に戻り、上述した処理を繰り返す。一方、終了条件を満たした場合には、当該処理を終了する。
C.第3実施形態
次に、本発明による第3実施形態について説明する。
図10は、本第3実施形態による3次元形状計測装置の構成を示すブロック図である。なお、図7に対応する部分には同一の符号を付けて説明を省略する。本第3実施形態では、図7に示す構成に、さらに、着目3次元点の位置と近傍の3次元点の位置との距離を測り、大きく外れる場合には、外れ値とみなして、対象となる着目3次元点を削除する、3次元位置による外れ値除去部3−9を設けている。
次に、本発明による第3実施形態について説明する。
図10は、本第3実施形態による3次元形状計測装置の構成を示すブロック図である。なお、図7に対応する部分には同一の符号を付けて説明を省略する。本第3実施形態では、図7に示す構成に、さらに、着目3次元点の位置と近傍の3次元点の位置との距離を測り、大きく外れる場合には、外れ値とみなして、対象となる着目3次元点を削除する、3次元位置による外れ値除去部3−9を設けている。
図11は、本第3実施形態による3次元形状計測装置の動作を説明するためのフローチャートである。投影装置1は、処理が開始されると、上述したように、プロジェクタ制御部3−1によって生成された投影パターンを計測対象4に投影し、撮像装置2は、該計測対象を撮影し、画像を取得する(ステップS41)。
コード抽出部3−2は、撮影した撮影画像中のコードを抽出する(ステップS42)。次に、コード識別部3−3は、抽出したコードからコード番号を識別する(ステップS43)。こうして得られた、撮影画像上のコードの中心座標、コード番号を識別コード群として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS44)、終わっていない場合には、ステップS42に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、ワード生成部3−4は、識別コード群からコード番号を読み出し、着目コード番号の4近傍のコード番号を探索することにより、ワードを生成する(ステップS45)。
次に、対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと、投影パターンのワードとの対応をとり、対応点の座標を得る(ステップS46)。次に、対応点による外れ値除去部3−8は、閾値の範囲内でエピポーラ線近傍に投影パターンの対応点がある場合には、対応が取れているものとし、エピポーラ線から大きく離れる場合には、外れ値とみなし、対象となる点を形状計測の候補から削除する(ステップS47)。次に、3次元位置算出部3−6は、3角測量の原理を用いて、算出した撮影画像中のワードの中心座標と投影パターンの中心座標とから、計測対象4に投影された円形白黒コードの3次元座標位置を算出する(ステップS48)。そして、得られた3次元座標位置を初期3次元形状として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS49)、終わっていない場合には、ステップS45に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、3次元位置による外れ値除去部3−9は、ステップ48で保存された初期3次元形状を読み出し、図12に示すように、着目3次元点pの位置と近傍3次元点の位置との距離を測り、大きく外れる場合には、外れ値とみなして、対象となる着目3次元点を削除する(ステップS50)。なお、近傍点は、4近傍であってもよいし、8近傍であっても良い。そして、外れ値を削除して得られた3次元座標位置を3次元形状として保存する。
次に、実行時に指定された終了条件(指定時刻や、指定処理枚数等)を満たしたか否かを判定し(ステップS51)、終了条件を満たしていない場合には、ステップS41に戻り、上述した処理を繰り返す。一方、終了条件を満たした場合には、当該処理を終了する。
D.第4実施形態
次に、本発明による第4実施形態について説明する。
図13は、本第4実施形態による3次元形状計測装置の構成を示すブロック図である。なお、図10に対応する部分には同一の符号を付けて説明を省略する。本第3実施形態では、図10に示す構成に、さらに、コードが抽出されたが、ワードが作成できなかったワードの撮影画像上の位置(着目コードとその近傍コードとの位置を穴埋め候補ワード群という)を保存する穴埋め候補ワード保存部3−10、コード抽出はされたが、ワード生成ができなかった点について、ワード生成できた近傍3次元点の座標値を用いて穴埋めをする形状穴埋め部3−11を設けている。
次に、本発明による第4実施形態について説明する。
図13は、本第4実施形態による3次元形状計測装置の構成を示すブロック図である。なお、図10に対応する部分には同一の符号を付けて説明を省略する。本第3実施形態では、図10に示す構成に、さらに、コードが抽出されたが、ワードが作成できなかったワードの撮影画像上の位置(着目コードとその近傍コードとの位置を穴埋め候補ワード群という)を保存する穴埋め候補ワード保存部3−10、コード抽出はされたが、ワード生成ができなかった点について、ワード生成できた近傍3次元点の座標値を用いて穴埋めをする形状穴埋め部3−11を設けている。
図14は、本第4実施形態による3次元形状計測装置の動作を説明するためのフローチャートである。投影装置1は、処理が開始されると、上述したように、プロジェクタ制御部3−1によって生成された投影パターンを計測対象4に投影し、撮像装置2は、該計測対象を撮影し、画像を取得する(ステップS61)。
コード抽出部3−2は、撮影した撮影画像中のコードを抽出する(ステップS62)。次に、コード識別部3−3は、抽出したコードからコード番号を識別する(ステップS63)。こうして得られた、撮影画像上のコードの中心座標、コード番号を識別コード群として保存する。
次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS64)、終わっていない場合には、ステップS62に戻り、上述した処理を繰り返す。そして、すべての画素について処理が終わった場合には、ワード生成部3−4は、識別コード群からコード番号を読み出し、着目コード番号の4近傍のコード番号を探索することにより、ワードを生成する(ステップS65)。
次に、穴埋め候補ワード保存部3−10は、コードは抽出されたが、ワードが作成できなかったワードの撮影画像上の位置を保存する(ステップS66)。具体的には、後述する形状穴埋めのため、着目コードの近傍のコードが識別できていない場合には、着目コードとその近傍コードとの位置を、穴埋め候補ワード群として保存する。
次に、対応点算出部3−5は、生成されたワードを用いて、撮影画像中のワードと、投影パターンのワードとの対応をとり、対応点の座標を得る(ステップS67)。次に、対応点による外れ値除去部3−8は、閾値の範囲内でエピポーラ線近傍に投影パターンの対応点がある場合には、対応が取れているものとし、エピポーラ線から大きく離れる場合には、外れ値とみなし、対象となる点を形状計測の候補から削除する(ステップS68)。
次に、3次元位置算出部3−6は、3角測量の原理を用いて、算出した撮影画像中のワードの中心座標と投影パターンの中心座標とから、計測対象4に投影された円形白黒コードの3次元座標位置を算出する(ステップS69)。そして、得られた3次元座標位置を初期3次元形状として保存する。次に、撮影画像中のすべての画素について、処理が終わったか否かを判定し(ステップS70)、終わっていない場合には、ステップS65に戻り、上述した処理を繰り返す。
そして、すべての画素について処理が終わった場合には、ステップ69で保存された初期3次元形状を読み出し、着目3次元点の位置と近傍3次元点の位置との距離を測り、大きく外れる場合には、外れ値とみなして、対象となる点を削除する(ステップS71)。なお、近傍点は、4近傍であってもよいし、8近傍であっても良い。
次に、形状穴埋め部3−11は、コード抽出されたが、ワード生成ができなかった点について、ワード生成できた近傍3次元点の座標値を用いて穴埋めをする。ここでは、ステップ66で保存した穴埋め候補ワード群を読み出し、着目コードの近傍コードが外れ値除去後の3次元位置になったかどうかを鑑みて、図15(a)〜(c)に示すように、近傍の4〜2コードの3次元位置を用いて、着目コードに該当する3次元位置を算出する(ステップS72)。
ワードを復号できた点が4つの場合には、図15(a)に示すように、4つの近傍から穴埋めを行う。また、ワードを復号できた点が3つの場合には、図15(b)に示すように、3つの近傍から穴埋めを行う。さらに、ワードを復号できた点が2つの場合には、図15(c)に示すように、2つの近傍から穴埋めを行う。なお、近傍が1コードの場合には、着目コードの3次元位置が算出できないために穴埋めは行わない。そして、外れ値を削除して得られた3次元座標位置を3次元形状として保存する。
次に、実行時に指定された終了条件(指定時刻や、指定処理枚数等)を満たしたか否かを判定し(ステップS73)、終了条件を満たしていない場合には、ステップS61に戻り、上述した処理を繰り返す。一方、終了条件を満たした場合には、当該処理を終了する。
上述した第1ないし第4実施形態によれば、円形白黒コードを用いた投影パターンの検出で、形状の変形が大きな際にも形状抽出が容易な楕円当てはめを行うことにより、投影対象の色や形状変化が大きい場合でも、1回のパターン投影、及び撮影により動物体の3次元形状を復元することができる。
また、コードの内円の分割数を増やすことにより、より多くのコード群を生成することができ、計測密度を上げることが可能となる。
1 投影装置
2 撮像装置
3 処理装置
3−1 プロジェクタ制御部
3−2 コード抽出部
3−3 コード識別部
3−4 ワード生成部
3−5 対応点算出部
3−6 3次元位置算出部
3−7 表示部
3−8 対応点による外れ値除去部
3−9 3次元位置による外れ値除去部
3−10 穴埋め候補ワード保存部
3−11 形状穴埋め部
4 計測対象
2 撮像装置
3 処理装置
3−1 プロジェクタ制御部
3−2 コード抽出部
3−3 コード識別部
3−4 ワード生成部
3−5 対応点算出部
3−6 3次元位置算出部
3−7 表示部
3−8 対応点による外れ値除去部
3−9 3次元位置による外れ値除去部
3−10 穴埋め候補ワード保存部
3−11 形状穴埋め部
4 計測対象
Claims (9)
- 1回のパターン投影、及び該投影されたパターンの撮影により計測対象の3次元形状を計測する3次元形状計測方法であって、
それぞれを識別可能なコード番号に一意に対応付けられた、複数の円形白黒コードからなる投影パターンを前記計測対象に投影する投影ステップと、
前記投影パターンが投影された前記計測対象を撮影する撮影ステップと、
前記計測対象を撮影した撮影画像から円形白黒コードを抽出するコード抽出ステップと、
前記抽出した円形白黒コードに対して楕円形状を当てはめることにより、前記抽出した円形白黒コードに対応するコード番号を識別するコード識別ステップと、
前記撮影画像中のコード番号の分布に基づいて、各コード番号とその近傍のコード番号とからなるワードを生成するワード生成ステップと、
前記撮影画像中のワードを用いて前記投影パターンのワードの対応点位置を算出する対応点位置算出ステップと、
前記撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出する3次元位置算出ステップと
を含むことを特徴とする3次元形状計測方法。 - 前記対応点位置算出ステップで算出された、前記撮影画像中のワードに対応する投影パターンのワードの対応点位置がエピポーラ線近傍に存在するかを判定し、前記エピポーラ線から所定の閾値以上離れる場合には、外れ値とみなして除去する第1の外れ値除去ステップを更に含み、
前記3次元位置算出ステップは、
前記外れ値が除去された残りの撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出することを特徴とする請求項1に記載の3次元形状計測方法。 - 前記3次元位置算出ステップで算出された、前記計測対象に投影された円形白黒コードの3次元位置を用いて、着目3次元点の位置と近傍3次元点の位置との距離を測り、該距離が大きく外れる場合には、外れ値とみなして、前記計測対象に投影された円形白黒コードの3次元位置から、対象となる着目3次元点を除去する第2の外れ値除去ステップを更に含むことを特徴とする請求項2に記載の3次元形状計測方法。
- 前記コード抽出ステップでコードは抽出されたが、前記ワード生成ステップでワードが生成できなかった場合に、その着目点のコードとその近傍点のコードとの位置を、穴埋め候補ワード群として保存する穴埋め候補保存ステップと、
前記第2の外れ値除去ステップによる外れ値除去後、コードは抽出されたが、ワードが生成できなかった着目点の3次元位置を、ワードが生成できた近傍3次元点の位置を用いて算出する穴埋めステップと
を更に含むことを特徴とする請求項3に記載の3次元形状計測方法。 - 1回のパターン投影、及び該投影されたパターンの撮影により計測対象の3次元形状を計測する3次元形状計測装置であって、
それぞれを識別可能なコード番号に一意に対応付けられた、複数の円形白黒コードからなる投影パターンを前記計測対象に投影する投影手段と、
前記投影パターンが投影された前記計測対象を撮影する撮影手段と、
前記計測対象を撮影した撮影画像から円形白黒コードを抽出するコード抽出手段と、
前記抽出した円形白黒コードに対して楕円形状を当てはめることにより、前記抽出した円形白黒コードに対応するコード番号を識別するコード識別手段と、
前記撮影画像中のコード番号の分布に基づいて、各コード番号とその近傍のコード番号とからなるワードを生成するワード生成手段と、
前記撮影画像中のワードを用いて前記投影パターンのワードの対応点位置を算出する対応点位置算出手段と、
前記撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出する3次元位置算出手段と
を備えることを特徴とする3次元形状計測装置。 - 前記対応点位置算出手段で算出された、前記撮影画像中のワードに対応する投影パターンのワードの対応点位置がエピポーラ線近傍に存在するかを判定し、前記エピポーラ線から所定の閾値以上離れる場合には、外れ値とみなして除去する第1の外れ値除去手段を更に備え、
前記3次元位置算出手段は、
前記外れ値が除去された残りの撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出することを特徴とする請求項5に記載の3次元形状計測装置。 - 前記3次元位置算出手段で算出された、前記計測対象に投影された円形白黒コードの3次元位置を用いて、着目3次元点の位置と近傍3次元点の位置との距離を測り、該距離が大きく外れる場合には、外れ値とみなして、前記計測対象に投影された円形白黒コードの3次元位置から、対象となる着目3次元点を除去する第2の外れ値除去手段を更に備えることを特徴とする請求項6に記載の3次元形状計測装置。
- 前記コード抽出手段でコードは抽出されたが、前記ワード生成手段でワードが生成できなかった場合に、その着目点のコードとその近傍点のコードとの位置を、穴埋め候補ワード群として保存する穴埋め候補保存手段と、
前記第2の外れ値除去手段による外れ値除去後、コードは抽出されたが、ワードが生成できなかった着目点の3次元位置を、ワードが生成できた近傍3次元点の位置を用いて算出する穴埋め手段と
を更に備えることを特徴とする請求項7に記載の3次元形状計測装置。 - 1回のパターン投影、及び該投影されたパターンの撮影により計測対象の3次元形状を計測する3次元形状計測装置のコンピュータに、
それぞれを識別可能なコード番号に一意に対応付けられた、複数の円形白黒コードからなる投影パターンを前記計測対象に投影する投影機能、
前記投影パターンが投影された前記計測対象を撮影する撮影機能、
前記計測対象を撮影した撮影画像から円形白黒コードを抽出するコード抽出機能、
前記抽出した円形白黒コードに対して楕円形状を当てはめることにより、前記抽出した円形白黒コードに対応するコード番号を識別するコード識別機能、
前記撮影画像中のコード番号の分布に基づいて、各コード番号とその近傍のコード番号とからなるワードを生成するワード生成機能、
前記撮影画像中のワードを用いて前記投影パターンのワードの対応点位置を算出する対応点位置算出機能、
前記撮影画像中のワードの位置と対応する投影パターンのワードの対応点位置とを用いて、三角測量の原理に基づいて、前記計測対象に投影された円形白黒コードの3次元位置を算出する3次元位置算出機能
を実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010109306A JP2011237296A (ja) | 2010-05-11 | 2010-05-11 | 3次元形状計測方法、3次元形状計測装置、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010109306A JP2011237296A (ja) | 2010-05-11 | 2010-05-11 | 3次元形状計測方法、3次元形状計測装置、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011237296A true JP2011237296A (ja) | 2011-11-24 |
Family
ID=45325442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010109306A Pending JP2011237296A (ja) | 2010-05-11 | 2010-05-11 | 3次元形状計測方法、3次元形状計測装置、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011237296A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013008804A1 (ja) * | 2011-07-11 | 2013-01-17 | キヤノン株式会社 | 計測装置および情報処理装置 |
JP2014095553A (ja) * | 2012-11-07 | 2014-05-22 | Nippon Telegr & Teleph Corp <Ntt> | カメラポーズ推定装置、及びカメラポーズ推定プログラム |
JP2016080471A (ja) * | 2014-10-15 | 2016-05-16 | シャープ株式会社 | 画像認識処理装置及びプログラム |
CN107077729A (zh) * | 2014-09-17 | 2017-08-18 | 皮尔茨公司 | 用于识别相机图像中的投影结构图案的结构元素的方法和设备 |
JP2019090782A (ja) * | 2017-06-20 | 2019-06-13 | 株式会社ミツトヨ | 三次元形状計測装置及び三次元形状計測方法 |
JP2020046229A (ja) * | 2018-09-14 | 2020-03-26 | 株式会社ミツトヨ | 三次元形状測定装置及び三次元形状測定方法 |
CN111336949A (zh) * | 2020-04-11 | 2020-06-26 | 武汉玄景科技有限公司 | 一种空间编码结构光三维扫描方法与系统 |
CN112964196A (zh) * | 2021-02-05 | 2021-06-15 | 杭州思锐迪科技有限公司 | 三维扫描方法、系统、电子装置和计算机设备 |
-
2010
- 2010-05-11 JP JP2010109306A patent/JP2011237296A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013008804A1 (ja) * | 2011-07-11 | 2013-01-17 | キヤノン株式会社 | 計測装置および情報処理装置 |
JP2013036983A (ja) * | 2011-07-11 | 2013-02-21 | Canon Inc | 計測装置および情報処理装置 |
US9014433B2 (en) | 2011-07-11 | 2015-04-21 | Canon Kabushiki Kaisha | Measurement apparatus, information processing apparatus, information processing method, and storage medium |
JP2014095553A (ja) * | 2012-11-07 | 2014-05-22 | Nippon Telegr & Teleph Corp <Ntt> | カメラポーズ推定装置、及びカメラポーズ推定プログラム |
JP2017531258A (ja) * | 2014-09-17 | 2017-10-19 | ピルツ ゲーエムベーハー アンド コー.カーゲー | カメラ画像で投影構造パターンの構造要素を特定する方法および装置 |
CN107077729A (zh) * | 2014-09-17 | 2017-08-18 | 皮尔茨公司 | 用于识别相机图像中的投影结构图案的结构元素的方法和设备 |
JP2016080471A (ja) * | 2014-10-15 | 2016-05-16 | シャープ株式会社 | 画像認識処理装置及びプログラム |
JP2019090782A (ja) * | 2017-06-20 | 2019-06-13 | 株式会社ミツトヨ | 三次元形状計測装置及び三次元形状計測方法 |
JP7186019B2 (ja) | 2017-06-20 | 2022-12-08 | 株式会社ミツトヨ | 三次元形状計測装置及び三次元形状計測方法 |
JP2020046229A (ja) * | 2018-09-14 | 2020-03-26 | 株式会社ミツトヨ | 三次元形状測定装置及び三次元形状測定方法 |
JP7219034B2 (ja) | 2018-09-14 | 2023-02-07 | 株式会社ミツトヨ | 三次元形状測定装置及び三次元形状測定方法 |
CN111336949A (zh) * | 2020-04-11 | 2020-06-26 | 武汉玄景科技有限公司 | 一种空间编码结构光三维扫描方法与系统 |
CN112964196A (zh) * | 2021-02-05 | 2021-06-15 | 杭州思锐迪科技有限公司 | 三维扫描方法、系统、电子装置和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011237296A (ja) | 3次元形状計測方法、3次元形状計測装置、及びプログラム | |
CN111291584B (zh) | 识别二维码位置的方法及其系统 | |
JP5631025B2 (ja) | 情報処理装置、その処理方法及びプログラム | |
US20120176380A1 (en) | Forming 3d models using periodic illumination patterns | |
JP6566768B2 (ja) | 情報処理装置、情報処理方法、プログラム | |
JP6097903B2 (ja) | 3次元形状の取得装置、処理方法およびプログラム | |
WO2012096747A1 (en) | Forming range maps using periodic illumination patterns | |
Lei et al. | Design and decoding of an M-array pattern for low-cost structured light 3D reconstruction systems | |
JP2017181298A (ja) | 3次元形状測定装置および3次元形状測定方法 | |
Furukawa et al. | One-shot entire shape acquisition method using multiple projectors and cameras | |
JP2012127819A (ja) | 距離画像生成装置、位置姿勢計測装置、距離画像処理装置、距離画像生成装置の制御方法、およびプログラム | |
CN112184793B (zh) | 深度数据的处理方法、装置及可读存储介质 | |
JP5822463B2 (ja) | 三次元計測装置、三次元計測方法、およびプログラム | |
US11776137B2 (en) | Systems and methods for detecting motion during 3D data reconstruction | |
CN115456945A (zh) | 一种芯片引脚缺陷的检测方法、检测装置及设备 | |
US9752870B2 (en) | Information processing apparatus, control method thereof and storage medium | |
KR102665603B1 (ko) | 스테레오 매칭을 위한 하드웨어 디스패러티 평가 | |
JP2001194126A (ja) | 三次元形状計測装置および三次元形状計測方法、並びにプログラム提供媒体 | |
US20190213753A1 (en) | Three-dimensional measurement apparatus and three-dimensional measurement method | |
Wijenayake et al. | Dual pseudorandom array technique for error correction and hole filling of color structured-light three-dimensional scanning | |
KR20160024419A (ko) | Dibr 방식의 입체영상 카메라 판별 방법 및 장치 | |
JP3919722B2 (ja) | 肌形状計測方法及び肌形状計測装置 | |
JP6583674B2 (ja) | 3次元測定装置、パターン生成装置、および方法 | |
JP2012160063A (ja) | 球体の検出方法 | |
US10867225B2 (en) | Measurement system and measurement method |