(57)【特許請求の範囲】
【請求項１】
複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンを、被写体に投影する投影手段と、
前記投影パターンが投影された被写体を撮像する撮像手段と、
前記撮像手段により投影された被写体の撮像画像から前記基準線パターンを検出する基準線パターン検出手段と、
前記基準線パターン検出手段で検出された基準線パターンに基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う線パターン対応手段と、
前記線パターン対応手段によって対応付けられた前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出手段と、
を有する情報処理装置。
【請求項２】
前記投影パターンは、第１の方向に第１の線パターン及び前記第１の線パターンの基準となる第１の基準線パターンを含む請求項１記載の情報処理装置。
【請求項３】
前記投影パターンは、前記第１の方向と異なる第２の方向に第２の線パターン及び前記第２の線パターンの基準となる第２の基準線パターンを更に含む請求項２記載の情報処理装置。
【請求項４】
前記線パターン対応手段は、前記基準線パターンにより特定される基準位置と、前記撮像手段で撮像されたそれぞれの方向の線パターンの交点と、に基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う請求項１乃至３何れか１項記載の情報処理装置。
【請求項５】
前記基準線パターン検出手段は、前記撮像手段で撮像された撮像画像内において、前記撮像手段の主点と、前記投影手段の主点と、前記被写体に投影された前記基準線パターンの上の任意の点と、がなすエピポーラ面に対して、直交する方向を基準長として用いて、前記基準線パターンを検出する請求項１乃至４何れか１項記載の情報処理装置。
【請求項６】
前記投影手段は、線の幅の変化、又は線の進行方向に対する輝度の変化、又は線の進行方向に対して直交する方向の輝度の変化、によって特徴付けた前記基準線パターンを、前記被写体に投影する請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
前記基準線パターンは、前記基準線パターンと異なる方向の前記線パターンで区切られる線パターン線分ごとに特徴を持たせることで特徴付けられ、
前記基準線パターン検出手段は、前記線パターン線分の単位で前記特徴の変化の配列を取得し、前記基準線パターンを検出する請求項６記載の情報処理装置。
【請求項８】
前記撮像手段で撮像された被写体の撮像画像から前記被写体の２次元位置を検出する被写体検出手段を更に有し、
前記投影手段は、前記被写体検出手段で検出された前記被写体の２次元位置に基づいて、前記基準線パターンの投影位置を更新する請求項１乃至７何れか１項記載の情報処理装置。
【請求項９】
前記投影手段と前記撮像手段との焦点面が同一位置又は平行でない配置において、前記投影手段によって投影された前記投影パターンに対して、基準線パターンの検出が容易となるよう歪み補正を行う補正手段を更に有する請求項１乃至８何れか１項記載の情報処理装置。
【請求項１０】
情報処理装置が実行する情報処理方法であって、
複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンを、被写体に投影する投影ステップと、
前記投影パターンが投影された被写体を撮像する撮像ステップと、
前記投影パターンが投影された被写体の撮像画像から前記基準線パターンを検出する基準線パターン検出ステップと、
前記基準線パターン検出ステップで検出された基準線パターンに基づいて、前記投影ステップによって投影された線パターンと、前記撮像ステップで撮像された線パターンと、の対応付けを行う線パターン対応ステップと、
前記線パターン対応ステップによって対応付けられた前記投影ステップによって投影された線パターンと、前記撮像ステップで撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出ステップと、
を含む情報処理方法。
【請求項１１】
コンピュータを、
複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンを、被写体に投影する投影手段と、
前記投影パターンが投影された被写体を撮像する撮像手段と、
前記撮像手段により投影された被写体の撮像画像から前記基準線パターンを検出する基準線パターン検出手段と、
前記基準線パターン検出手段で検出された基準線パターンに基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う線パターン対応手段と、
前記線パターン対応手段によって対応付けられた前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出手段と、
して機能させるためのプログラム。
【請求項１２】
投影手段によって、複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンが投影された被写体の撮像画像を、前記被写体を撮像した撮像手段より受け取り、前記撮像画像から前記基準線パターンを検出する基準線パターン検出手段と、
前記基準線パターン検出手段で検出された基準線パターンに基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う線パターン対応手段と、
前記線パターン対応手段によって対応付けられた前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出手段と、
を有する情報処理装置。
【請求項１３】
情報処理装置が実行する情報処理方法であって、
投影手段によって、複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンが投影された被写体の撮像画像を、前記被写体を撮像した撮像手段より受け取り、前記撮像画像から前記基準線パターンを検出する基準線パターン検出ステップと、
前記基準線パターン検出ステップで検出された基準線パターンに基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う線パターン対応ステップと、
前記線パターン対応ステップによって対応付けられた前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出ステップと、
を含む情報処理方法。
【請求項１４】
コンピュータを、
投影手段によって、複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンが投影された被写体の撮像画像を、前記被写体を撮像した撮像手段より受け取り、前記撮像画像から前記基準線パターンを検出する基準線パターン検出手段と、
前記基準線パターン検出手段で検出された基準線パターンに基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う線パターン対応手段と、
前記線パターン対応手段によって対応付けられた前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出手段と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
物体の三次元形状測定装置は、産業分野における工場での部品検査、医学的な分野における生体の形状測定等、各分野において広く用いられている。特に非接触による計測方法は、対象物体が接触によって変形、破損する恐れのある場合に有効である。
このような非接触の三次元形状測定は、撮像手段を用いて画像によって三角測量を行う方式が広く用いられている。より具体的な例として、特許文献１では、格子パターンをプロジェクタによって被写体に投影し、撮像手段で撮像することによって三次元形状を行う例が示されている。より具体的には、縦横の線からなる格子パターンを投影パターンとして用いて、同時に格子で囲まれる矩形内に２次元のコードパターンを埋め込んだものを投影し、投影されるパターン上の２次元位置と、撮像画像における２次元位置を対応付ける。対応付けられた投影されるパターン上の２次元位置と、撮像画像における２次元位置と、から、格子パターンを構成する各線の対応付けを行い、光切断法による三角測量によって三次元形状測定を行う。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３５６０１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記従来技術例では、矩形内に埋め込んだ２次元のパターンを検出するために、矩形を構成する周囲の格子が同一、かつ、連続した平面上に存在する必要がある。そのため、凸凹が著しい領域、細長い領域等、縦横に十分な平面の大きさが得られない条件下では、パターンを正しく検出できず、結果、三次元形状測定が行えない問題があった。
【０００５】
本発明はこのような問題点に鑑みなされたもので、凸凹が著しい領域、細長い領域等、縦横に十分な平面の大きさが得られない条件下でパターンを正しく検出することを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明の情報処理装置は、複数の線パターンと、前記線パターンの基準となる基準線パターンと、を含む投影パターンを、被写体に投影する投影手段と、前記投影パターンが投影された被写体を撮像する撮像手段と、前記撮像手段により投影された被写体の撮像画像から前記基準線パターンを検出する基準線パターン検出手段と、前記基準線パターン検出手段で検出された基準線パターンに基づいて、前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンと、の対応付けを行う線パターン対応手段と、前記線パターン対応手段によって対応付けられた前記投影手段によって投影された線パターンと、前記撮像手段で撮像された線パターンとに基づいて、前記被写体の三次元形状を導出する導出手段と、を有する。
【発明の効果】
【０００７】
本発明によれば、凸凹が著しい領域、細長い領域等、縦横に十分な平面の大きさが得られない条件下でパターンを正しく検出することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態１のシステム構成等の一例を示す図である。
【図２】実施形態１における動作を説明する流れ図である。
【図３】実施形態１の投影線パターンの一例を示す図である。
【図４】実施形態１における撮像線パターンと、撮像縦線パターンと、撮像横線パターンと、の一例を示す図である。
【図５】ステップＳ２０５の縦基準線パターンの検出方法を説明する流れ図である。
【図６】ステップＳ２０５の横基準線パターンの検出方法を説明する流れ図である。
【図７】実施形態１の基準位置から未対応の撮像縦線パターンと、撮像横線パターンと、の対応づけ方法を説明するための図である。
【図８】カメラの主点位置を原点Ｏとするカメラ座標系を用いて、計測対象線パターン上における任意の計測点の位置を計測する場合の模式図である。
【図９】線の幅以外を用いる基準線パターンの特徴線パターンの特徴付け方法を説明するための図である。
【図１０】実施形態２のシステム構成等の一例を示す図である。
【図１１】被写体の位置の変化に応じて、基準線パターンの投影位置を変更する処理を説明するための図である。
【図１２】プロジェクタ、カメラ、投影縦線パターンの位置関係を示す図である。
【図１３】実施形態３における動作を説明する流れ図である。
【図１４】実施形態３の投影線パターンの一例を示す図である。
【図１５】実施形態３における撮像線パターンと、撮像縦線パターンと、撮像横線パターンと、の一例を示す図である。
【図１６】ステップＳ１３０５における縦基準線パターンの検出方法を説明する流れ図である。
【図１７】基準線パターンの上における任意の線パターン線分Ｓnbの上側に存在する、撮像横線パターンの投影ＩＤ番号と、下側に存在する撮像横線パターンの投影ＩＤ番号と、の関係を示す図である。
【図１８】実施形態３の基準位置から未対応の撮像縦線パターンと、撮像横線パターンと、の対応づけ方法を説明するための図である。
【図１９】実施形態４のシステム構成等の一例を示す図である。
【図２０】プロジェクタとカメラとの焦点面が平行でない配置において、投影線パターンの補正を行わない場合の撮像線パターン、補正を行った場合の投影線パターン、補正を行った場合の撮像線パターンを示す図である。
【図２１】実施形態５のシステム構成等の一例を示す図である。
【図２２】実施形態５の投影線パターンの一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
【００１０】
（実施形態１）
図１は、実施形態１のシステム構成等の一例を示す図である。パターン光投影手段の一例であるプロジェクタ１０１は、計測対象となる被写体１０２に対して、少なくとも二本以上の縦線パターンと少なくとも二本以上の横線パターンとで構成されるパターン光を投影する。なお、以降、縦線パターンを投影縦線パターンと、横線パターンを投影横線パターンと、双方をまとめていう場合は投影線パターンという。また、プロジェクタ１０１は、投影縦線パターン内には縦基準線パターンを、投影横線パターン内には横基準線パターンを重畳して同時に投影する。縦基準線パターン、横基準線パターンは、それぞれ縦線パターンにおける基準位置、横線パターンの基準位置を示す指標として用いられる。撮像手段の一例であるカメラ１０３は、パターン光が投影された状態の被写体１０２を撮像する。
ここで、情報処理装置１００は、図１の（ｂ）に示されるようなハードウェア構成を有する。より具体的に説明すると、情報処理装置１００は、ハードウェア構成として、互いにバス等を介して接続されたＣＰＵ１１０と、記憶装置１１１と、通信装置１１２と、を含む。ＣＰＵ１１０は、記憶装置１１１等に記憶されているプログラムに基づき処理を実行することによって、図１の（ａ）に示されるような情報処理装置１００の機能構成（ソフトウェア構成）を実現する。通信装置１１２は、ＣＰＵ１１０の制御に基づき、情報処理装置１００と他の装置（例えば、カメラ１０３又はプロジェクタ１０１等）との通信を制御する。
【００１１】
図１の（ａ）に示されるように、情報処理装置１００は、機能構成として、線パターン抽出部１０４と、基準線パターン検出部１０５と、線パターン対応部１０６と、三次元形状測定部１０７と、を含む。
線パターン抽出部１０４は、カメラ１０３で得られた撮像画像から、画像処理を用いて被写体１０２（被写体上）に投影された縦線パターン、横線パターンを求める処理を行う。基準線パターン検出部１０５は、線パターン抽出部１０４で得られた撮像縦線パターン、撮像横線パターンから、被写体１０２に投影されたパターン光に存在する縦基準線パターン、横基準線パターンを検出する。線パターン対応部１０６は、基準線パターン検出部１０５で検出された縦基準線パターン、横基準線パターンを基準位置として、プロジェクタ１０１によって投影された縦線パターン、横線パターンと、撮像縦線パターン、撮像横線パターンと、の対応付けを行う。三次元形状測定部１０７は、対応付けが行われた撮像画像内の線パターンを用いて、光切断法の原理でカメラ１０３と、線パターンが投影された被写体１０２と、の間の奥行き、即ち形状を計算する。
なお、図１の（ａ）に示した情報処理装置１００の構成は、ハードウェアで実装されても良い。
【００１２】
図２は、実施形態１における動作を説明する流れ図である。以下、流れ図のステップ番号に従って動作説明を行う。
ステップＳ２０１：
図１におけるプロジェクタ１０１がパターン光を投影する。投影線パターンは、図３に示すように、複数の投影縦線パターン３０１と投影横線パターン３０２との交差する格子状のパターンで構成される。投影縦線パターン３０１は、上から順に０，１，２・・・と、一意の投影ＩＤ番号が、投影横線パターン３０２は、左から順に０，１，２・・・と、一意の投影ＩＤ番号が付加されている。プロジェクタ１０１は、同時に、それぞれ投影縦線パターン３０１、投影横線パターン３０２に重畳する形で、線の幅が異なる縦基準線パターン３０３、横基準線パターン３０４をそれぞれ被写体１０２上の一部領域、或いは全領域が含まれる位置で投影する。縦基準線パターン３０３、横基準線パターン３０４にも投影ＩＤ番号が同様に付加されており、図３における縦基準線パターン３０３の投影ＩＤ番号は５、横基準線パターン３０４の投影ＩＤ番号は４となる。なお、後述のステップで分離が容易となるように、プロジェクタ１０１は、投影縦線パターン３０１、縦基準線パターン３０３は赤色、投影横線パターン３０２、横基準線パターン３０４は青色で投影する。
ステップＳ２０２：
図１におけるカメラ１０３が、被写体１０２を撮像する。被写体１０２は、図４ａに示すように被写体１０２にパターン光４０１が投影された状態で撮像され、撮像画像は、図１における線パターン抽出部１０４に伝送される。
【００１３】
ステップＳ２０３：
図１における線パターン抽出部１０４が、伝送された撮像画像の赤色成分のみを選択することで、図４ｂに示すような撮像縦線パターン４０２を抽出する。線パターン抽出部１０４は、抽出した撮像縦線パターン４０２に対して、連続した領域でラベリングを行い、Ｎ＝０，１，２・・・Ｎmaxのように、各領域で一意となる撮像ＩＤ番号を付加する。
ステップＳ２０４：
図１における線パターン抽出部１０４が、伝送された撮像画像の青色成分のみを選択することで、図４ｃに示すような撮像横線パターン４０３を抽出する。線パターン抽出部１０４は、抽出した撮像横線パターン４０３に対して、連続した領域でラベリングを行い、Ｍ＝０，１，２，３・・・Ｍmaxのように、各領域で一意となる撮像ＩＤ番号を付加する。以降、撮像縦線パターン４０２と撮像横線パターン４０３との双方を撮像線パターンと呼ぶ。
ステップＳ２０５：
図１における基準線パターン検出部１０５が、撮像縦線パターン４０２内から、投影された縦基準線パターン３０３に対応する線パターンと、撮像横線パターン４０３内から、投影された横基準線パターン３０４に対応する線パターンと、を検出する。
【００１４】
ここで、図５は、ステップＳ２０５における縦基準線パターン３０３の検出方法を説明する流れ図である。以下で、流れ図のステップ番号に従ってステップＳ２０５における動作説明を行う。
ステップＳ５０１：
基準線パターン検出部１０５は、撮像横線パターン最大幅：Ｗhmaxを初期値の０に設定する。
ステップＳ５０２：
基準線パターン検出部１０５は、撮像横線パターンの撮像ＩＤ番号：ｎを初期値の０に設定する。
ステップＳ５０３：
基準線パターン検出部１０５は、図４ｂに示す抽出した撮像縦線パターン４０２の中から、撮像ＩＤ番号がｎの撮像縦線パターン４０２の平均幅Ｗhを計算する。基準線パターン検出部１０５は、被写体１０２の表面に多少の凹凸がある場合でも、平均化して線全体の幅を計算することによって、正しく線の幅を算出することが出来る。
ステップＳ５０４：
基準線パターン検出部１０５は、ＷhとＷhmaxとの数値を比較する。基準線パターン検出部１０５は、Ｗhmax＜Ｗhが真であればステップＳ５０５に、偽であればステップＳ５０７に進む。
【００１５】
ステップＳ５０５：
基準線パターン検出部１０５は、ＷhmaxにＷhを代入する。
ステップＳ５０６：
基準線パターン検出部１０５は、Ｎrefにｎを代入する。
ステップＳ５０７：
基準線パターン検出部１０５は、ｎに１を加える。
ステップＳ５０８：
基準線パターン検出部１０５は、ｎと、最大の撮像縦線パターン４０２の撮像ＩＤ番号であるＮmaxの数値を比較する。基準線パターン検出部１０５は、ｎ≧Ｎmaxが真であれば図５に示す、処理を終了する。基準線パターン検出部１０５は、偽であればステップＳ５０３に進む。
以上の処理によって、基準線パターン検出部１０５は、図４における撮像縦線パターン４０２から、図３における縦基準線パターン３０３に対応する撮像ＩＤとなるＮrefを検出する。
基準線パターン検出部１０５は、横基準線パターン３０４についても、図６の流れ図に示すように同様の処理を行う。このことによって、基準線パターン検出部１０５は、図４ｃにおける撮像横線パターン４０３（ｍ＝０，１，２…．Ｍmax）内から、横基準線パターン３０４に対応する撮像ＩＤとなるＭrefを検出する。
【００１６】
再び、図２の説明に戻る。
ステップＳ２０６：
図１における線パターン対応部１０６が、図４における撮像縦線パターン４０２、撮像横線パターン４０３の撮像ＩＤ番号と、図３における投影縦線パターン３０１、投影横線パターン３０２の投影ＩＤ番号と、をそれぞれ対応付ける。縦基準線パターン３０３の撮像ＩＤ番号Ｎrefと、横基準線パターン３０４の撮像ＩＤ番号Ｍrefとは、ステップＳ２０５において既に検出されている。線パターン対応部１０６は、これらを基準位置として、撮像線パターンとその交点がなす位相幾何学的な位置関係から、その他の撮像縦線パターン４０２と撮像横線パターン４０３との対応付けを行う。図７に示すように、線パターン対応部１０６は、縦基準線パターン３０３、横基準線パターン３０４から、縦横の撮像線パターンの交点と隣り合う撮像線パターンを順に辿りながら、任意の撮像線パターンに到達することができる。線パターン対応部１０６は、このときの縦方向、横方向の線単位での移動量をカウントすると、基準位置７０１に対して、未対応撮像縦線パターン７０２は横方向に＋３、未対応撮像横線パターン７０３は縦方向に−１の位置にあることが分かる。線パターン対応部１０６は、このように交点で区切られた線ごとの移動単位を位相と考え、投影線パターン同士の位相と撮像線パターン同士の位相との関係を不変量として扱えば、上記の対応づけが可能となる。以上で求めた基準位置からの移動量と、縦基準線パターン３０３の投影ＩＤ番号（図７ではＮ＝５）と、横基準線パターン３０４の投影ＩＤ番号（図７ではＭ＝４）とから、未対応撮像縦線パターン７０２の投影ＩＤ番号はＮ＝８と求められる。また、未対応撮像横線パターン７０３の投影ＩＤ番号はＭ＝３と求められる。
線パターン対応部１０６は、上記の処理を、全ての撮像縦線パターン４０２、撮像横線パターン４０３に適用することで、全ての撮像ＩＤ番号に対して、投影ＩＤ番号を対応付ける。
【００１７】
ステップＳ２０７：
図１における三次元形状測定部１０７が、投影ＩＤ番号が対応付けられた撮像縦線パターン４０２、撮像横線パターン４０３を用いて、被写体１０２の形状を計測する。
図８は、カメラの主点位置８０１を原点Ｏ（０，０）とするカメラ座標系８０２を用いて、計測対象線パターン８０３上における任意の計測点８０４の位置を計測する場合の模式図である。プロジェクタ１０１で投影される線パターンを直線とした場合、計測対象線パターン８０３は、投影される線パターンがなす平面と、被写体１０２との交線となる。ここで、投影される線パターンがなす光切断平面８０５は、カメラ座標系を用いて以下の式で予め較正されているものとする。
【数１】
0005578844.tif 000002
【００１８】
また、計測対象線パターン８０３上の点は、図１におけるカメラ１０３による撮像画像８０６上の投影点８０７の位置Ｐ（Ｐｘ，Ｐｙ，−ｆ）を用いて、以下の式で表される直線８０８上に存在する。ここで、図８における撮像画像８０６は、図１におけるカメラ１０３をピンホールカメラと仮定したときの、撮像素子上における投影像と等しい実寸法としている。更に、撮像画像８０６は、カメラ座標のｘｙ平面に対して平行で、画像中心が原点位置からＺ軸方向に焦点距離の−ｆだけ離れた位置に配置されているものとする。
【数２】
0005578844.tif 000003
ｔは、任意の実数をとるパラメータである。式（１）で示した光切断平面８０５と、式（２）で示した直線８０８と、の交点が計測点８０４となるため、計測点８０４の位置Ｃ（Ｃｘ，Ｃｙ，Ｃｚ）は、カメラ座標系において以下の式で表される。
【００１９】
【数３】
0005578844.tif 000004
【００２０】
ステップＳ２０６において、投影ＩＤ番号への対応付けが行われた全ての撮像縦線パターン４０２、撮像横線パターン４０３を計測対象線パターン８０３として三次元形状測定部１０７が、上記計算を行うことで、被写体全体の形状を求めることが出来る。
以上の手順により、従来手法と比較してより高い密度で格子パターンを投影することが可能となる。また、基準線パターンの検出と、基準位置からの対応づけと、を行うことによって、縦横に十分な大きさの平面が無く、２次元のコードパターンが使用できない凹凸のある領域、細長い領域においても三次元形状測定が行える。
本実施形態における縦基準線パターン３０３、横基準線パターン３０４は、それぞれ投影線パターンに一つのみとしているが、これを複数配置して基準位置を増やすことによって、情報処理装置は、対応づけをよりロバストにすることも出来る。複数の基準線パターンを配置する場合には、計測対象となる被写体が取りうる奥行きの範囲を限定し、撮像画像中における各基準線パターンの取りうる位置の範囲を、相互に重複しないように制限させる。この制限により、情報処理装置は、複数の基準線パターンを混同することなく同時に検出することが出来る。
【００２１】
図２のステップＳ２０５において、縦基準線パターン３０３、横基準線パターン３０４の検出を可能とするために、線の幅によって基準線パターンを特徴付けているが、線の幅以外の方法で特徴付けても良い。
図９ａに、線の進行方向に対して輝度変化を与えて特徴付ける場合の例を示す。その他の投影線パターンに対して、交点を一区切りとしてそれぞれ２値以上の輝度変化を持たせ、この輝度変化の有無を判定することで基準線パターン検出部１０５は、基準線パターン９０１を検出する。
輝度変化で特徴付けた複数の基準線パターンを配置する場合には、各基準線パターンの輝度変化を相互相関性の低いランダム数列に従って持たせることで基準線パターン検出部１０５における検出を容易にすることも出来る。例えば線パターン抽出部１０４が読み取った輝度変化と各基準線パターンに用いたランダム数列との相関係数を算出し、最大の相関係数を得る輝度変化を持つ撮像線パターンを選択することで、基準線パターン検出部１０５は、一意に基準線パターンを検出できる。相互相関性の低いランダム数列としては、例えばｄｅ  Ｂｒｕｉｊｎ系列が知られている。ｄｅ  Ｂｒｕｉｊｎ数列を用いると、画像のノイズや、被写体の不連続性で基準線パターンの一部のみが観察されるような撮像画像においても、基準線パターン検出部１０５は、ロバストに基準線パターンを検出することが可能になる。
【００２２】
別の特徴付けの方法として、図９ｂに、線の切断方向に対して輝度変化を与えて特徴付ける場合の例を示す。投影線パターンに対して、線の切断方向にガウス分布による輝度変化を片側のみに与える。各撮像線パターンを色域選択によって抽出後、線両側の切断方向の輝度変化を、全ての撮像線パターンで比較することで、基準線パターン検出部１０５は、両側の輝度変化が異なる基準線パターン９０２を検出する。輝度変化を片側のみとすることで、仮に投影線パターンがボケて撮像された場合にも、両側の輝度変化に差が生じるため、基準線パターン検出部１０５は、ロバストに基準線パターンを検出することが可能になる。
その他の特徴づけの方法として、プロジェクタ１０１にカラープロジェクタを使用できる場合には、色によって特徴付けることも出来る。色を用いる場合には、線の幅による特徴づけと比較して、被写体１０２の表面がカメラ１０３に対して著しく傾斜しているような状況下においても、色情報は大きく変化することが無い。そのため、基準線パターン検出部１０５は、被写体の形状に対してロバストに基準線パターンを検出することが可能になる。
上記実施形態では、投影線パターンは投影縦線パターン３０１、投影横線パターン３０２の二種類としているが、三方向、即ち三種類以上の線パターンを投影しても良い。線の方向を増やすことによって、より密に三次元形状の測定が可能になる。
なお、本実施形態では、上述したように情報処理装置１００を、プロジェクタ１０１、カメラ１０３とは別の装置としたが、情報処理装置１００の構成要素に、プロジェクタ１０１と、カメラ１０３とを含めて、例えば３次元形状測定装置としても良い。
【００２３】
（実施形態２）
図２のステップＳ２０１においては、縦基準線パターン３０３、横基準線パターン３０４は、最初から被写体１０２に重畳する位置で投影するものとしている。よりロバストな計測を行うために、図１０に示すように、装置構成に被写体検出部１００１を加えることで、被写体の位置の変化に応じて、基準線パターンの投影位置を適宜変更しても良い。
図１１は、被写体の位置の変化に応じて、基準線パターンの投影位置を変更する処理を説明するための図である。
カメラ１０３は、被写体１０２を撮像する前に、予め背景のみの状態でパターン光を投影した背景画像１１０１を取得する。次に、カメラ１０３は、被写体１０２を配置した状態で被写体画像１１０２を撮像する。被写体検出部１００１は、背景画像１１０１と被写体画像１１０２との差分を取る。このときの差分画像１１０３で検出された領域が被写体領域となる。プロジェクタ１０１は、この被写体領域の重心位置を被写体の２次元位置として、縦基準線パターン１１０４、横基準線パターン１１０５を投影することで、被写体に重畳する位置に基準線パターンを投影することが出来る。カメラ１０３及び被写体検出部１００１が上記の処理を撮像画像が得られる毎に行うことで、プロジェクタ１０１は、基準線パターンの投影位置を更新することが出来る。
上記処理によって、被写体に移動が生じる場合にも、常に被写体に重畳する位置に基準線パターンを投影し続けることが可能になる。
【００２４】
（実施形態３）
本実施形態のカメラ１０３は図１２に示すようにプロジェクタ主点１２０１、カメラ主点１２０２、投影縦線パターン１２０３上の任意の点１２０４、の３点がなすエピポーラ面１２０５に対して全ての投影縦線パターン１２０３が平行となる位置に配置されている。また、プロジェクタ１０１とカメラ１０３との画角は等しく、焦点面が同一位置となるように調整されている。線パターン抽出部１０４は、カメラ１０３で得られた撮像画像から、画像処理を用いて被写体１０２に投影された縦線パターン、横線パターンを求める処理を行う。基準線パターン検出部１０５は、線パターン抽出部１０４で得られた撮像縦線パターンから、被写体１０２に投影されたパターン光に存在する基準線パターンを検出する。線パターン対応部１０６は、基準線パターン検出部１０５で検出された縦基準線パターンを基準位置として、プロジェクタ１０１によって投影された投影縦線パターン、投影横線パターンと、撮像縦線パターン、撮像横線パターンとの対応付けを行う。三次元形状測定部１０７は、対応付けが行われた撮像横線パターンを用いて、光切断法の原理でカメラ１０３と、線パターンが投影された被写体１０２との間の奥行き、即ち形状を計算する。
【００２５】
図１３は、実施形態３における動作を説明する流れ図である。以下、流れ図のステップ番号に従って動作説明を行う。
ステップＳ１３０１：
図１におけるプロジェクタ１０１がパターン光を投影する。投影する投影線パターンは、図１４に示すように、複数の投影縦線パターン１４０１と投影横線パターン１４０２との交差する格子状のパターンで構成される。以後、投影縦線パターン１４０１、投影横線パターン１４０２を併せて投影線パターンという。投影縦線パターン１４０１は、上から順に０，１，２・・・と、一意の投影ＩＤ番号が、投影横線パターン１４０２は、左から順に０，１，２・・・と、一意の投影ＩＤ番号が付加されている。プロジェクタ１０１は、同時に、投影縦線パターン１４０１に重畳する形で、投影横線パターンによって区切られた線パターン線分ごとに幅が異なる基準線パターン１４０３を、被写体１０２上の一部領域、或いは全領域が含まれる位置で投影する。基準線パターン１４０３にも投影ＩＤ番号が同様に付加されており、図１４における基準線パターン１４０３の投影ＩＤ番号はＮ＝３となる。なお、後述のステップで分離が容易となるように、プロジェクタ１０１は、投影縦線パターン１４０１、基準線パターン１４０３は赤色、投影横線パターン１４０２は青色で投影する。
【００２６】
ステップＳ１３０２：
図１におけるカメラ１０３が被写体１０２を撮像する。被写体１０２は、図１５ａに示すように被写体１０２にパターン光１５０１が投影された状態で撮像され、撮像画像はカメラ１０３から線パターン抽出部１０４に伝送される。
ステップＳ１３０３：
図１における線パターン抽出部１０４が、伝送された撮像画像の赤色成分のみを選択することで、図１５ｂに示すような撮像縦線パターン１５０２を抽出する。線パターン抽出部１０４は、抽出した撮像縦線パターン１５０２を、連続した領域でラベリングを行い、Ｎ＝０，１，２・・・Ｎmaxのように、各領域で一意となる撮像ＩＤ番号を付加する。
ステップＳ１３０４：
図１における線パターン抽出部１０４が、伝送された撮像画像の青色成分のみを選択することで、図１５ｃに示すような撮像横線パターン１５０３を抽出する。抽出した撮像横線パターン１５０３は、連続した領域でラベリングを行い、Ｍ＝０，１，２・・・Ｍmaxのように、各領域で一意となる撮像ＩＤ番号を付加する。
ステップＳ１３０５：
図１における基準線パターン検出部１０５が、図１５ｂにおける撮像縦線パターン１５０２内から、投影された基準線パターン１４０３に対応する線パターンを検出する。
【００２７】
図１６は、ステップＳ１３０５における基準線パターン１４０３の検出方法を説明する流れ図である。以下、流れ図のステップ番号に従ってステップＳ１３０５における動作説明を行う。
ステップＳ１６０１：
基準線パターン検出部１０５は、対象とする撮像横線パターンの撮像ＩＤ番号ｎを初期値の０に設定する。
ステップＳ１６０２：
基準線パターン検出部１０５は、最大相関値を示すＣmaxを初期値の０に設定する。
ステップＳ１６０３：
基準線パターン検出部１０５は、図１５ｂに示す撮像縦線パターン１５０２の中から、撮像ＩＤ番号ｎの撮像縦線パターン１５０２を選択し、撮像横線パターン１５０３で区切られた線パターン線分Ｓnb（ｂ＝０，１，２・・・Ｍmax−１）に分割する。
【００２８】
ステップＳ１６０４：
基準線パターン検出部１０５は、ステップＳ１６０３において分割された各線パターン線分Ｓnbの、平均幅の配列Ｗnb（ｂ＝０，１，２・・・Ｍmax−１）を計算する。基準線パターン検出部１０５は、この平均幅の配列Ｗnbを、以下のステップで特徴変化の配列として用いる。
ステップＳ１６０５：
基準線パターン検出部１０５は、ステップＳ１６０４において計算したＷnbと、基準線パターンの基準長配列Ｗrefb（ｂ＝０，１，２・・・Ｍmax−１）との相関係数Ｃnを、以下の式で計算する。
【００２９】
【数４】
0005578844.tif 000005
【００３０】
ここで、
【数５】
0005578844.tif 000006
【数６】
0005578844.tif 000007
は、それぞれ、Ｗnb、Ｗrefbの（ｂ＝０，１，２・・・Ｍ
max−１）の範囲の全要素に対する相加平均である。
なお、前述のように、カメラ１０３は、図１２におけるエピポーラ面１２０５に対して、全ての投影縦線パターン１２０３が常に平行となる位置に配置されており、プロジェクタ１０１とカメラ１０３との画角は等しく焦点面が同一位置となるように調整されている。
以上の条件から、エピポーラ面に対して直交する方向となる、撮像縦線パターン１５０２の幅は、被写体１０２の形状に影響されず、常に一定の数値を示す。よって、Ｗnbを各撮像縦線パターン１５０２の基準長の配列として、基準線パターンの基準長の配列Ｗrefbとの、相関係数を計算して類似度を比較することで、ロバストに基準線パターンの検出が可能になる。
【００３１】
ステップＳ１６０６：
基準線パターン検出部１０５は、ＣnとＣmaxの数値を比較する。基準線パターン検出部１０５は、Ｃn＞Ｃmaxが真であればステップＳ１６０７に進む。基準線パターン検出部１０５は、偽であればステップＳ１６０９に進む。
ステップＳ１６０７：
基準線パターン検出部１０５は、ＣmaxにＣnを代入する。
ステップＳ１６０８：
基準線パターン検出部１０５は、基準線パターンＩＤ番号Ｎrefにｎを代入する。
ステップＳ１６０９：
基準線パターン検出部１０５は、ｎに１を加える。
ステップＳ１６１０：
基準線パターン検出部１０５は、ｎと、最大の撮像縦線パターン４０２の撮像ＩＤであるＮmaxとの数値を比較する。基準線パターン検出部１０５は、ｎ≧Ｎmaxが真であれば処理を終了する。基準線パターン検出部１０５は、偽であればＳ１６０３に進む。
以上の処理によって、基準線パターン検出部１０５は、撮像縦線パターン１５０２から、基準線パターン１４０３に対応する撮像ＩＤ番号となるＮrefを検出する。
【００３２】
再び、図１３の説明に戻る。
ステップＳ１３０６：
図１における線パターン対応部１０６が、撮像縦線パターン１５０２、撮像横線パターン１５０３の撮像ＩＤ番号と、投影縦線パターン１４０１、投影横線パターン１４０２の投影ＩＤ番号とをそれぞれ対応付ける。基準線パターン１４０３の撮像ＩＤ番号ＮrefはステップＳ１３０５において既に検出している。線パターン対応部１０６は、これを基準位置として、撮像線パターンとその交点がなす位相幾何学的な位置関係から、基準線パターン１４０３以外の撮像縦線パターン１５０２と撮像横線パターン１５０３との対応付けを行う。なお、本実施形態における基準線パターン１４０３は、ステップＳ１６０３において撮像横線パターン１５０３との交点ごとに区切られた線パターン線分Ｓnb単位で分割されている。したがって、線パターン対応部１０６は、交差する撮像横線パターンの投影ＩＤ番号も一意に決定することができる。例えば、図１７に示すように、基準線パターン１４０３上における任意の線パターン線分Ｓnbの上側に存在する撮像横線パターン１７０１の投影ＩＤ番号はｂ、下側に存在する撮像横線パターン１７０２の投影ＩＤ番号はｂ＋１となる。
【００３３】
図１８に示すように、線パターン対応部１０６は、基準線パターン１４０３上における任意の線パターン線分Ｓnbの上側の点１８０１を基準位置として縦横の撮像線パターンの交点と隣り合う撮像線パターンを順に辿りながら任意の撮像線パターンに到達できる。線パターン対応部１０６はこのときの縦方向、横方向の線単位での移動量をカウントすると線パターン線分Ｓnbの上側の点１８０１に対して未対応撮像縦線パターン１８０２は横方向に＋２、未対応撮像横線パターン１８０３は縦方向＋３の位置にあることが分かる。線パターン対応部１０６は、以上で求めた移動量と図１８における基準線パターン１４０３の投影ＩＤ番号Ｎ＝３、線パターン線分Ｓnb（ｂ＝２）とから未対応撮像縦線パターン１８０２の投影ＩＤ番号はＮ＝５と求められる。また、線パターン対応部１０６は、未対応撮像横線パターン１８０３の投影ＩＤ番号はＭ＝５と求められる。線パターン対応部１０６は、実施形態１と同様に、投影線パターン同士の位相と撮像線パターン同士の位相の関係を不変量として扱えば、上記の対応づけが可能となる。
線パターン対応部１０６は、上記の処理を、全ての撮像縦線パターン１５０２、撮像横線パターン１５０３に適用することで、全ての撮像ＩＤ番号に対して、投影ＩＤ番号を対応付ける。
【００３４】
ステップＳ１３０７：
図１における三次元形状測定部１０７が、図１５における投影ＩＤ番号が対応付けられた撮像横線パターン１５０３を用いて、被写体１０２の形状を計測する。三次元形状測定部１０７は、本ステップでは、実施形態１におけるステップＳ２０７での処理を、撮像横線パターン１５０３に対してのみ行う。本実施形態における撮像縦線パターン１５０２は、左右方向に変動しない線パターン線分として記録されている。そのため、三次元形状測定部１０７は、撮像縦線パターン１５０２を三次元形状測定には用いない。
以上の手順により、従来手法と比較してより高い密度で格子パターンを投影することが可能となる。更に、被写体の形状に依存しない基準長を用いる基準線パターンの検出と、基準位置からの対応づけと、を行うことによって、２次元のコードパターンが使用できない凹凸のある領域、細長い領域においても、ロバストに三次元形状測定が行える。
【００３５】
（実施形態４）
実施形態３では、上述したように、プロジェクタ１０１とカメラ１０３との画角が等しく、焦点面を同一位置とすることで、基準線パターンの検出を容易としているが、必ずしも焦点面を同一位置に配置する必要はない。図１９は、プロジェクタ１０１とカメラ１０３との焦点面が平行でない場合の構成図である。図２０ａは、得られる撮像線パターン２００１を示す図である。このような条件下では、投影線パターンは台形状に歪み、基準線パターン２００２は下になるほど線幅が大きくなるため、このままでは基準線パターン２００２の検出が困難となる。そこで、図１９におけるパターン光補正部１９０１を加え、図２０ｂに示すように、投影線パターン２００３を予め逆方向の台形状に歪ませる補正を行って投影しても良い。これにより、図２０ｃに示すように、歪みが相殺された基準線パターン２００４を得ることが出来るため、検出が容易となる。
パターン光補正部１９０１は、上記のような台形歪みだけでなく、プロジェクタ１０１の投影光学系に起因する歪曲歪みを補正しても良い。これにより、より高精度、かつ、よりロバストな基準線パターンの検出と、三次元形状の計測が可能となる。
また、本実施形態において、基準線パターンは一本のみとしているが、これを複数本投影して基準位置を増やし、対応づけをよりロバストにすることも出来る。
複数の基準線パターンを配置する場合には、各基準線パターンの基準長配列Ｗrefbを相互相関性の低いランダム数列に従って持たせて検出を容易にすることも出来る。相互相関性の低いランダム数列としては、実施形態１で述べたｄｅ  Ｂｒｕｉｊｎ系列が知られている。ｄｅ  Ｂｒｕｉｊｎ数列を用いると、画像のノイズや、被写体の不連続性で基準線パターンの一部のみが観察されるような撮像画像においても、ロバストに基準線パターンを検出することが可能になる。
【００３６】
（実施形態５）
実施形態２において、被写体の位置に応じて、基準線パターンの投影位置を動的に変化させる例を示したが、投影線パターン全体を動的に変化させてもよい。例えば、投影線パターン全体の密度や線幅を変更すれば、周辺光により撮像線パターンのコントラストが低下するなどの場合にも、ロバストに計測が継続可能になる。
図２１は、実施形態５のシステム構成などの一例を示す図である。パターン生成装置の一例であるパターン生成部２１０１は、プロジェクタ１０１で投影するための投影線パターンデータを動的に生成する（パターンデータ生成）。ここで生成する投影線パターンデータは、少なくとも二つの方向を持ち、各方向に少なくとも二本以上の線を持つ投影線パターンを有し、少なくとも１方向の投影線パターンが、少なくとも二本以上のその他の方向の投影線パターンに対して交点を有する。投影線パターン内に配置されている基準線パターンは、隣接する交点で区切られた線パターン線分ごとに、線パターンの幅を変化させて特徴付けられている。
上記法則に従って生成した投影線パターンデータは、実施形態３における図１４の投影線パターンと同様となり、ステップＳ１３０１におけるプロジェクタ１０１が投影するパターン光として使用される。以降、実施形態３と同様の動作を実施することで、被写体の形状を測定できる。
【００３７】
更に、実施形態３の動作に加え、ステップＳ１３０３、Ｓ１３０４における、撮像縦線パターン１５０２、撮像横線パターン１５０３の抽出結果を基に、パターン生成部２１０１で生成する投影線パターンデータを変化させる。撮像縦線パターン１５０２、撮像横線パターン１５０３が安定して抽出できていない場合には、投影線パターン全体の密度を下げ、線幅を太くする。安定して撮像縦線パターン１５０２、撮像横線パターン１５０３が抽出できている場合には、逆に投影線パターン全体の密度を上げ、線幅を細くする。このように投影パターンデータを変化させることで、周辺光によって撮像線パターンのコントラストが低下する場合にも撮像でき、同時に可能な限り高密度な撮像を行うことができる。
なお、投影縦線パターン、基準線パターンと、投影横線パターンとは、それぞれ赤色、青色で投影することで、色によって相互に干渉することなく抽出可能としているが、使用する色の波長によっては、相互に色が干渉して、抽出に問題が生じる場合がある。このような相互の干渉を最小限とするために、図２２に示すような基準線パターン２２０１とした投影線パターンデータを生成してもよい。隣接する交点で区切られた線パターン線分の中心部のみの幅を変化させ、基準線パターンと投影横線パターンとの交点の面積を最小にすることで、相互の干渉を最小限にすることが可能となる。ここで線パターン線分の中心部とは線パターン線分の中心から予め定められた範囲内の線パターン線分のことである。
【００３８】
（その他の実施形態）
また、上述した情報処理装置は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００３９】
以上、上述した各実施形態によれば、凸凹が著しい領域、細長い領域等、縦横に十分な平面の大きさが得られない条件下でパターンを正しく検出することができる。また、上述した各実施形態によれば、グリッド等で囲まれた領域内に基準を埋め込む必要がないため、パターンを細かくすることが可能となり、より密な形状計測が行える。つまり、上述した各実施形態によれば、より高い密度でパターンを投影することが可能となり、凹凸のある領域、細長い領域においても三次元形状を測定することができる。
【００４０】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４１】
１００  情報処理装置、１０１  プロジェクタ、１０２  カメラ
【図１】
0005578844.tif 000008
【図２】
0005578844.tif 000009
【図３】
0005578844.tif 000010
【図４】
0005578844.tif 000011
【図５】
0005578844.tif 000012
【図６】
0005578844.tif 000013
【図７】
0005578844.tif 000014
【図８】
0005578844.tif 000015
【図９】
0005578844.tif 000016
【図１０】
0005578844.tif 000017
【図１１】
0005578844.tif 000018
【図１２】
0005578844.tif 000019
【図１３】
0005578844.tif 000020
【図１４】
0005578844.tif 000021
【図１５】
0005578844.tif 000022
【図１６】
0005578844.tif 000023
【図１７】
0005578844.tif 000024
【図１８】
0005578844.tif 000025
【図１９】
0005578844.tif 000026
【図２０】
0005578844.tif 000027
【図２１】
0005578844.tif 000028
【図２２】
0005578844.tif 000029