(57)【要約】      （修正有）【課題】より計算量を低減しつつ、精度良く計測対象物の３次元計測を行う３次元計測システム、３次元計測方法及びプログラムを提供する。【解決手段】初期計測部４２は、複数の第１投影パターンからなる構造化光の投影により計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、投影光学系のフォーカス方向に関する各第１被投影パターンの奥行きの探索範囲を計測する。ファイン計測部４３は、第１投影パターンと異なる複数の第２投影パターンからなる構造化光の投影により計測対象物に形成された第２被投影パターンを撮影した第２の画像データに対し、計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと第２投影パターンとの類似度により、投影光学系のフォーカス方向に関する各復元パターンに対応する奥行きを計測する。【選択図】図７
2016024052.tif 000002
【特許請求の範囲】
【請求項１】
投影光学系と、前記投影光学系に装着され非対称な符号パターンが形成された符号化開口とを介した構造化光を、計測対象物に投影する投影部と、
前記構造化光により前記計測対象物に投影された被投影パターンを撮像する撮像部と、
前記撮像部での撮像により得られた画像データに基づいて、前記計測対象物の３次元形状を計測する計測部と、
を備え、
前記計測部は、
前記符号化開口に配置された前記符号パターンを介して、複数の第１投影パターンからなる前記構造化光の投影により前記計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、前記投影光学系のフォーカス方向に関する前記各第１被投影パターンの奥行きの探索範囲を計測する第１の計測部と、
前記第１投影パターンと異なる複数の第２投影パターンからなる前記構造化光の投影により前記計測対象物に形成された第２被投影パターンを撮影した第２の画像データに対し、前記フォーカス方向に関する前記第１の計測部で計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと前記第２投影パターンとの類似度により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する第２の計測部と、
を備える３次元計測システム。
【請求項２】
前記各第１被投影パターンの画像データの画像特徴と、前記フォーカス方向に関する前記各第１被投影パターンの奥行きとが関連づけて登録されたデータベースを有し、
前記第１の計測部は、
前記第１の画像データにおける前記各第１被投影パターンの画像特徴を抽出し、前記データベースを参照して、抽出された画像特徴に対応する前記各第１被投影パターンの奥行きの探索範囲を求める、
請求項１に記載の３次元計測システム。
【請求項３】
前記画像特徴は、
ローカル・バイナリ・パターン又はローカル・ターナリ・パターンである、
請求項２に記載の３次元計測システム。
【請求項４】
前記第２の計測部は、
スライディングウインドウ方式で前記第２の画像データから抽出された部分画像データに対して逆畳込み演算を行って、その演算により得られた復元パターンと前記第２投影パターンとの類似度計算により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する、
請求項１乃至３のいずれか一項に記載の３次元計測システム。
【請求項５】
前記第２の計測部は、
前記逆畳込み演算を行うことによりフォーカス方向に得られた複数の復元パターンと第２投影パターンとの類似度をコストとして、グラフカット処理を行い、第２被投影パターンの奥行きを推定する、
請求項１乃至４のいずれか一項に記載の３次元計測システム。
【請求項６】
前記投影部は、
合焦位置がそれぞれ異なる複数色の前記構造化光を、前記計測対象物に投影し、
前記撮像部は、
前記構造化光により前記計測対象物に投影された投影パターンを色毎に撮像し、
前記計測部は、
前記撮像部での撮像により得られた各色の画像データのうち、前記符号パターンを読み取り可能な画像データに基づいて、前記計測対象物の３次元形状を計測する、
請求項１乃至５のいずれか一項に記載の３次元計測システム。
【請求項７】
前記投影部は、
前記符号化開口に、前記第１投影パターンよりも密に配置された前記複数の第２投影パターンを介して、前記構造化光を前記計測対象物に投影する、
請求項１乃至５のいずれか一項に記載の３次元計測システム。
【請求項８】
前記投影部は、
前記符号化開口として、
第１の前記符号パターンが形成され、第１の前記構造化光を投影する第１投影部と、
第２の前記符号パターンが形成され、第２の前記構造化光を投影する第２投影部と、
を有する、
請求項１乃至５のいずれか一項に記載の３次元計測システム。
【請求項９】
前記符号化開口として、
第１の符号パターンは、第１の色の前記構造化光を投影する第１の色フィルタを用いて構成され、
第２の符号パターンは、第２の色の前記構造化光を投影する第２の色フィルタを用いて構成され、
前記撮像部は、
前記構造化光により前記計測対象物に投影された投影パターンを色毎に撮像する、
請求項８に記載の３次元計測システム。
【請求項１０】
前記投影部は、
前記第１又は第２の符号パターンとして、開口パターンを使用し、
投影パターンとして、周期パターンからなる前記構造化光を投影する、
請求項８又は９に記載の３次元計測システム。
【請求項１１】
投影光学系と、前記投影光学系に装着され非対称な符号パターンが形成された符号化開口とを介した構造化光を、計測対象物に投影する投影ステップと、
前記構造化光により前記計測対象物に投影された被投影パターンを撮像する撮像ステップと、
前記撮像ステップでの撮像により得られた画像データに基づいて、前記計測対象物の３次元形状を計測する計測ステップと、
を含み、
前記計測ステップは、
前記符号化開口に配置された前記符号パターンを介して、複数の第１投影パターンからなる前記構造化光の投影により前記計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、前記投影光学系のフォーカス方向に関する前記各第１被投影パターンの奥行きの探索範囲を計測する第１の計測ステップと、
前記第１投影パターンと異なる複数の第２投影パターンからなる前記構造化光の投影により前記計測対象物に形成された第２被投影パターンを撮影した第２の画像データに対し、前記フォーカス方向に関する前記第１の計測ステップで計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと前記第２投影パターンとの類似度により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する第２の計測ステップと、
を含む３次元計測方法。
【請求項１２】
投影光学系と、前記投影光学系に装着され非対称な符号パターンが形成された符号化開口とを介した構造化光により計測対象物に投影された被投影パターンの撮像により得られた画像データに基づいて、前記計測対象物の３次元形状を計測するコンピュータを、
前記符号化開口に配置された前記符号パターンを介して、複数の第１投影パターンからなる前記構造化光の投影により前記計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、前記投影光学系のフォーカス方向に関する前記各第１被投影パターンの奥行きの探索範囲を計測する第１の計測部、
前記第１投影パターンと異なる複数の第２投影パターンからなる前記構造化光の投影により前記計測対象物に形成された第２被投影パターンを撮影した第２画像データに対し、前記フォーカス方向に関する前記第１の計測部で計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと前記第２投影パターンとの類似度により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する第２の計測部、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、３次元計測システム、３次元計測方法及びプログラムに関する。
【背景技術】
【０００２】
近年、様々な分野で物体の３次元形状を計測する研究が盛んに行われている。中でも、装置の単純さとコストの観点から構造化光とカメラを用いたアクティブ３次元計測手法が主流となっている。アクティブ３次元計測手法では、計測対象となる物体へパターン光が投影され、その物体の表面で反射された光がカメラで観測され、パターン光により投影される元のパターンと物体上で観測されるパターンとの対応関係による三角測量で物体の３次元形状（フォーカス方向の奥行き）が画像から復元される。対応関係の計算時間の効率化のために、２次元パターン光をビデオプロジェクタで投影する手法が多く提案されている(例えば、非特許文献１参照)。
【０００３】
しかし、ビデオプロジェクタは被写界深度が浅く、フォーカス方向の奥行きの計測レンジに制約が存在する。この計測レンジの制約を解決するために、被写界深度の深いレーザ光源を用いる手法が提案されている。しかし、レーザ光源を用いた場合には、特殊な光学系が必要になるため、用途に合わせた光学系を構築することが困難になる。
【０００４】
計測レンジの狭さを解消する他の手法として，観測パターンのボケから奥行きを推定するＤｆＤ（Depth from Defocus）法が提案されている（例えば、非特許文献２参照）。ＤｆＤ法は、観測パターンのボケを前提としているため、被写界深度による制約が少ない。しかし、この手法の計測装置では光源にアレイＬＥＤを用いるため、密なパターンを物体に投影することができず、得られる奥行きマップが疎であるという不都合があった。また、奥行きの推定において逆畳込み処理を大量に行う必要があるため、計算量が膨大になるという不都合もあった。
【０００５】
ＤｆＤ法は、一般的にはカメラのボケに基づく手法として知られており、条件さえ揃えば１枚の画像から奥行きを推定することが可能である。しかし、ＤｆＤ法を良好に行うためには，計測対象に高周波なテクスチャが存在することが前提となるため、現実に適用できる範囲は限定的である。そこで、パターン投影光のボケと撮影カメラのボケの両方を数理的にモデル化し、リアルタイムな距離計測を実現するＤｆＤ法が提案されている（例えば、非特許文献３参照）。これは、市松模様状のパターンを物体に投影し、その撮影結果のボケからＤｆＤを行う方法であり、この方法によれば、計測対象にテクスチャが無くとも計測が可能になる。しかし、非特許文献３に記載の手法では、合焦距離の異なる２枚の画像を必要とし、レンズの撮像素子との間にプリズムを設置するなど、撮影側の光学系を工夫する必要があった。
【０００６】
また、プロジェクタの投影像のボケを解析し、投影面の奥行きを推定する手法が提案されている（例えば、非特許文献４参照）。この手法によれば、ライン状の投影パターンの位相をシフトさせながら画像を取得することで、撮影画像のピクセルごとの奥行きを推定することができる。しかし、この手法では、投影パターンを変更した複数枚の画像を必要とするため、動いている物体の奥行き計測が困難であるという不都合があった。
【０００７】
また、プロジェクタの投影光学系に符号化開口を装着することで生成される構造化光を利用した３次元計測方法が開示されている（例えば、非特許文献５参照）。この方法では、格子状に符号パターンが設けられた符号化開口をつけた光源でパターン投影し、計測対象物体上で観測された投影パターンのボケ具合を利用して、ＤｆＤにより各点の距離を求める。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Ryusuke Sagawa, Nozomu Kasuya, Kazuhiro Sakashita, Ryo Furukawa, Hiroshi Kawasaki, Yasushi Yagi, "Grid-based Active Stereo with Single-colored Wave Pattern for Dense One-shot 3D Scan," Proc. 2012 Second Joint 3DIM/3DPVT Conference, pp. 363-370 (2012)
【非特許文献２】H. Kawasaki, Y. Horita, H. Masuyama, S. Ono, M. Kimura, Y. Takane, "Optimized Aperture for Estimating Depth from Projector's Defocus", International Conference on 3D Vision (3DV), Jun. 2013 (Seattle, USA)
【非特許文献３】Nayar, S., Watanabe, M., and Noguchi, M., "Real-Time Focus Range Sensor", IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 18, No. 12, pp. 1186-1198 (1996)
【非特許文献４】Zhang, L. and Nayar, S.K., "Projection Defocus Analysis for Scene Capture and Image Display", ACM Trans. on Graphics (also Proc. of ACM SIGGRAPH) (2006).
【非特許文献５】堀田祐樹、小野智司、川崎洋、木村誠、高根靖雄、”符号化開口を用いたプロジェクタカメラシステムによるボケを利用した三次元計測手法”、電子情報通信学会論文誌  Ｄ  Ｖｏｌ．１９６−Ｄ  Ｎｏ．８  ｐｐ．１８２８−１８３３、一般社団法人電子情報通信学会２０１３
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記非特許文献５に開示された方法では、投影パターンのボケの大きさ、すなわち点広がり関数（Point Spread Function、以下、ＰＳＦともいう）のスケールを規定するパラメータをスケールパラメータとして用いる。まず、複数の既知の奥行きにおいて実際に観測したボケ画像を用いて、それぞれの奥行きにおけるＰＳＦのスケールを獲得し、フィッティングにより正確なスケールパラメータを求めるキャリブレーションを行う。さらに、実際に物体に投影された構造化光による投影パターンを撮像し、撮像により得られた投影パターンの画像データを、キャリブレーションで得られたスケールパラメータに従って、奥行きによって異なるＰＳＦを用いた逆畳込み演算を行って、格子状に配置された各復元パターンがボケのない符号化開口の符号パターンに最も類似する奥行きを、推定結果として求める。
【００１０】
しかしながら、上記非特許文献５に開示された方法では、逆畳込み演算と類似度の計算をすべての奥行きについて行うため、計算量の多い逆畳込み演算の演算回数が膨大となって、計算時間が長くなってしまう。また、結果が不安定となることも起こる。
【００１１】
この発明は、上記のような問題点を解決するためになされたものであり、より計算量を低減しつつ、精度良く計測対象物の３次元計測を行うことができる３次元計測システム、３次元計測方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、この発明の第１の観点に係る３次元計測システムは、
投影光学系と、前記投影光学系に装着され非対称な符号パターンが形成された符号化開口とを介した構造化光を、計測対象物に投影する投影部と、
前記構造化光により前記計測対象物に投影された被投影パターンを撮像する撮像部と、
前記撮像部での撮像により得られた画像データに基づいて、前記計測対象物の３次元形状を計測する計測部と、
を備え、
前記計測部は、
前記符号化開口に配置された前記符号パターンを介して、複数の第１投影パターンからなる前記構造化光の投影により前記計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、前記投影光学系のフォーカス方向に関する前記各第１被投影パターンの奥行きの探索範囲を計測する第１の計測部と、
前記第１投影パターンと異なる複数の第２投影パターンからなる前記構造化光の投影により前記計測対象物に形成された第２被投影パターンを撮影した第２の画像データに対し、前記フォーカス方向に関する前記第１の計測部で計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと前記第２投影パターンとの類似度により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する第２の計測部と、
を備える。
【００１３】
前記各第１投影パターンの画像データの画像特徴と、前記フォーカス方向に関する前記各第１投影パターンの奥行きとが関連づけて登録されたデータベースを有し、
前記第１の計測部は、
前記第１の画像データにおける前記各第１被投影パターンの画像特徴を抽出し、前記データベースを参照して、抽出された画像特徴に対応する前記各第１被投影パターンの奥行きの探索範囲を求める、
ようにしてもよい。
【００１４】
前記画像特徴は、
ローカル・バイナリ・パターン又はローカル・ターナリ・パターンである、
こととしてもよい。
【００１５】
前記第２の計測部は、
スライディングウインドウ方式で前記第２の画像データから抽出された部分画像データに対して逆畳込み演算を行って、その演算により得られた復元パターンと前記第２の投影パターンとの類似度計算により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する、
こととしてもよい。
【００１６】
前記第２の計測部は、
前記逆畳込み演算を行うことによりフォーカス方向に得られた複数の復元パターンと第２投影パターンとの類似度をコストとして、グラフカット処理を行い、第２被投影パターンの奥行きを推定する、
こととしてもよい。
【００１７】
前記投影部は、
合焦位置がそれぞれ異なる複数色の前記構造化光を、前記計測対象物に投影し、
前記撮像部は、
前記構造化光により前記計測対象物に投影された投影パターンを色毎に撮像し、
前記計測部は、
前記撮像部での撮像により得られた各色の画像データのうち、前記符号パターンを読み取り可能な画像データに基づいて、前記計測対象物の３次元形状を計測する、
こととしてもよい。
【００１８】
前記投影部は、
前記符号化開口に、前記第１投影パターンよりも密に配置された前記複数の第２投影パターンを介して、前記構造化光を前記計測対象物に投影する、
こととしてもよい。
【００１９】
前記投影部は、
前記符号化開口として、
第１の前記符号パターンが形成され、第１の前記構造化光を投影する第１投影部と、
第２の前記符号パターンが形成され、第２の前記構造化光を投影する第２投影部と、
を有する、
こととしてもよい。
【００２０】
前記符号化開口として、
第１の符号パターンは、第１の色の前記構造化光を投影する第１の色フィルタを用いて構成され、
第２の符号パターンは、第２の色の前記構造化光を投影する第２の色フィルタを用いて構成され、
前記撮像部は、
前記構造化光により前記計測対象物に投影された投影パターンを色毎に撮像する、
こととしてもよい。
【００２１】
前記投影部は、
前記第１又は第２の符号パターンとして、開口パターンを使用し、
投影パターンとして、周期パターンからなる前記構造化光を投影する、
こととしてもよい。
【００２２】
この発明の第２の観点に係る３次元計測方法は、
投影光学系と、前記投影光学系に装着され非対称な符号パターンが形成された符号化開口とを介した構造化光を、計測対象物に投影する投影ステップと、
前記構造化光により前記計測対象物に投影された被投影パターンを撮像する撮像ステップと、
前記撮像ステップでの撮像により得られた画像データに基づいて、前記計測対象物の３次元形状を計測する計測ステップと、
を含み、
前記計測ステップは、
前記符号化開口に配置された前記符号パターンを介して、複数の第１投影パターンからなる前記構造化光の投影により前記計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、前記投影光学系のフォーカス方向に関する前記各第１被投影パターンの奥行きの探索範囲を計測する第１の計測ステップと、
前記第１投影パターンと異なる複数の第２投影パターンからなる前記構造化光の投影により前記計測対象物に形成された第２被投影パターンを撮影した第２の画像データに対し、前記フォーカス方向に関する前記第１の計測ステップで計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと前記第２投影パターンとの類似度により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する第２の計測ステップと、
を含む。
【００２３】
この発明の第３の観点に係るプログラムは、
投影光学系と、前記投影光学系に装着され非対称な符号パターンが形成された符号化開口とを介した構造化光により計測対象物に投影された被投影パターンの撮像により得られた画像データに基づいて、前記計測対象物の３次元形状を計測するコンピュータを、
前記符号化開口に配置された前記符号パターンを介して、複数の第１投影パターンからなる前記構造化光の投影により前記計測対象物に形成された複数の第１被投影パターンを得て、これを撮影した第１の画像データに基づいて、前記投影光学系のフォーカス方向に関する前記各第１被投影パターンの奥行きの探索範囲を計測する第１の計測部、
前記第１投影パターンと異なる複数の第２投影パターンからなる前記構造化光の投影により前記計測対象物に形成された第２被投影パターンを撮影した第２画像データに対し、前記フォーカス方向に関する前記第１の計測部で計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行って、その演算により得られた複数の復元パターンと前記第２投影パターンとの類似度により、前記投影光学系のフォーカス方向に関する前記各復元パターンに対応する奥行きを計測する第２の計測部、
として機能させる。
【発明の効果】
【００２４】
この発明によれば、計測対象物に形成された複数の第１被投影パターンの画像データに基づいて、投影光学系のフォーカス方向に関する奥行きの探索範囲を絞り込んでから逆畳込み演算を行うことにより、各復元パターンの奥行きを計測している。これにより、逆畳込み演算を行う探索範囲を限定するので、逆畳込み演算の演算回数を少なくすることができる。この結果、より計算量を低減しつつ、精度良く計測対象物の３次元計測を行うことができる。
【図面の簡単な説明】
【００２５】
【図１】この発明の実施の形態１に係る３次元計測システムの概略的な構成を示す斜視図である。
【図２】図１の３次元計測システムの光学系の構成を示す図である。
【図３】図３（Ａ）は、符号化開口の符号パターンの一例を示す図である。図３（Ｂ）は、フォーカス方向に関する符号パターンの被投影パターンの変化を示す図である。
【図４】図４（Ａ）は、投影パターンの一例（その１）を示す図である。図４（Ｂ）は、符号化開口のフォーカス方向に関する被投影パターンの変化（その１）を示す図である。
【図５】図５（Ａ）は、投影パターンの一例（その２）を示す図である。図５（Ｂ）は、符号化開口のフォーカス方向に関する被投影パターンの変化（その２）を示す図である。
【図６】図１のコンピュータのハードウエア構成を示すブロック図である。
【図７】図１のコンピュータの機能構成を示すブロック図である。
【図８】孤立パターンのローカル・バイナリ・パターンのヒストグラムと、奥行きとの相関関係を示す図である。
【図９】孤立パターンの画像データのローカル・バイナリ・パターンのヒストグラムと、ヒストグラムデータベースに登録された複数のヒストグラムとのマッチングを示す図である。
【図１０】スケールパラメータのフィッティングの一例を示す図である。
【図１１】逆畳込み演算及びマッチングの流れの一例を示す図である。
【図１２】スライディングウインドウの一例を示す図である。
【図１３】スライディングウインドウ方式での処理の流れの一例を示す図である。
【図１４】奥行きと視差との関係を示す図である。
【図１５】グラフカット処理の一例を示す図である。
【図１６】階層復元の一例を示す図である。
【図１７】３次元計測処理のフローチャートである。
【図１８】キャリブレーションのフローチャート（その１）である。
【図１９】キャリブレーションのフローチャート（その２）である。
【図２０】初期計測のフローチャートである。
【図２１】ファイン計測のフローチャートである。
【図２２】３次元計測システムの適用例を示す図である。
【図２３】この発明の実施の形態２に係る３次元計測システムの光学系の構成を示す図である。
【図２４】この発明の実施の形態３に係る３次元計測システムの概略的な構成を示すブロック図である。
【発明を実施するための形態】
【００２６】
以下、この発明の実施の形態について図面を参照して詳細に説明する。
【００２７】
実施の形態１．
まず、この発明の実施の形態１について説明する。
【００２８】
図１には、３次元計測システム１００の概略的な構成が示されている。図１に示すように、３次元計測システム１００は、プロジェクタ１とカメラ２とコンピュータ３とを備える。プロジェクタ１は、投影光（構造化光）を計測対象物４に投影する投影部である。カメラ２は、その投影光（構造化光）により計測対象物４に投影された被投影パターンを撮像する撮像部である。カメラ２とコンピュータ３との間は、通信ネットワークで接続されている。この通信ネットワークにより、カメラ２とコンピュータ３との間で画像データの送受信が可能となる。コンピュータ３は、カメラ２での撮像により得られた画像データに基づいて、計測対象物４の３次元形状（プロジェクタ１から見た計測対象物４の奥行き）を計測する計測部である。
【００２９】
図２には図１の３次元計測システム１００の光学系の構成が示されている。図２に示すように、プロジェクタ１は、映像面１１と投影光学系１２と符号化開口１３とを備える。光源から発せられた投影光は、映像面１１を透過する。映像面１１には映像が表示されている。したがって、映像面１１を透過した光は、映像面１１に表示された映像の情報を含んだ光となる。この光は、投影光学系１２に入射する。
【００３０】
投影光学系１２は、入射した光を外部に投影する。投影光学系１２は、屈折光学系であり、映像面１１に表示された映像を結像させる。
【００３１】
投影光学系１２の出射面には符号化開口１３が装着されている。図３（Ａ）に示すように、符号化開口１３には、符号パターン５が設けられている。符号パターン５は左右非対称なパターンである。投影光学系１２を出射した光は、符号パターン５の開口部分を介してプロジェクタ１から出射される。符号パターン５では、図３（Ａ）に示す白の部分が光を透過させる。これにより、プロジェクタ１の出射光は、符号パターン５の形状の情報を含んだ光（構造化光）となる。
【００３２】
図２に戻り、投影光学系１２の光軸ＡＸに沿った座標軸ｄの原点を投影光学系１２の中心とする。プロジェクタ１の出射光は、投影光学系１２の光軸ＡＸを中心としながら座標軸ｄの＋ｄ方向に進み、点ｄpで合焦する。プロジェクタ１の映像面１１は、点ｄpとは結像関係にある。したがって、点ｄpにスクリーンを置くと、そのスクリーンには、映像面１１に表示された映像が結像する。この結像位置が位置Ｂである。
【００３３】
一方、符号化開口１３は、結像映像と畳み込みの関係にあり、フーリエ変換などでその性質を解析可能である。したがって、映像面１１において点状の投影パターンを投影した場合、符号化開口１３の符号パターン５は、点ｄp、すなわち合焦状態では点状のパターンとなり、デフォーカスするにつれて、符号パターン５の像が現れてくるようになる。この実施の形態に係る３次元計測システム１００は、デフォーカス状態にある符号パターン５の画像データを処理することにより、計測対象物４の光軸ＡＸの方向（座標軸ｄの方向）の奥行きを計測する。符号パターン５の像を読み取りできる範囲は、位置Ａと位置Ｃとの間であるため、計測対象物４の奥行きの探索範囲は、位置Ａから位置Ｃまでの範囲Ｆとなる。図３（Ｂ）に示すように、計測対象物４に投影される符号パターンの投影像（被投影パターン）は、座標軸ｄの方向（すなわち投影光学系１２のフォーカス方向）の奥行きに応じて変化する。
【００３４】
この実施の形態では、映像面１１に２種類の映像が表示される。図４（Ａ）に示す投影パターン１１Ａと図５（Ａ）に示す投影パターン１１Ｂである。
【００３５】
図４（Ａ）に示すように、投影パターン１１Ａでは、複数の点状の第１投影パターンが４行４列の格子状に設けられている。この複数の第１投影パターンからなる符号パターン５を介した構造化光の投影により、計測対象物４には符号パターン５の像（第１被投影パターン）が形成される。図４（Ｂ）には、符号化開口１３Ａにおけるフォーカス方向に関するパターン像の変化が示されている。図４（Ｂ）に示すように、合焦位置Ｂにおいて、投影パターン１１Ａのパターン像は、４×４のほぼ点状のパターンとなるが、デフォーカス状態にある位置Ａ、Ｃでは、符号パターン５の像が４行４列に並ぶ配列パターンとなる。
【００３６】
符号パターン５は非対称となっているため、−ｄ方向にデフォーカスした位置Ｂと、＋ｄ方向にデフォーカスした位置Ｃとでは、符号パターン５の像が異なっている。このため、各符号パターン５の形状（ボケ状態）を解析すれば、被投影パターンがどちらの方向にどの程度デフォーカスしているのかを求めることができる。
【００３７】
前述のように、位置Ａから位置Ｃまでが、投影光学系１２のフォーカス方向に関する奥行きの探索範囲Ｆであるが、探索範囲Ｆにおいて、符号化開口１３Ａの符号パターン５を介した投影像では、符号パターン５の像が他の符号パターン５の像と干渉が少ないように、映像面１１における投影パターン１１Ａは、疎な配置となっている。特に、全く干渉しないように配置すると、投影パターン１１Ａの配列密度は疎となるが、処理は安定する。コンピュータ３は、符号化開口１３Ａを介した構造化光の投影により計測対象物４に形成された複数の被投影パターン（孤立パターン）の画像データ（第１の画像データ）に基づいて、投影光学系１２のフォーカス方向に関する各被投影パターンの奥行きの探索範囲を計測する。
【００３８】
図５（Ｂ）に示すように、映像面１１に表示された投影パターン１１Ｂでは、複数の第２の点状パターンが７行７列の格子状に設けられている。すなわち、投影パターン１１Ｂでは、点状パターンの配列密度が投影パターン１１Ａよりも密となっている。図５（Ｂ）に示すように、合焦位置Ｂにおいて、投影パターン１１Ｂの像は、７×７のドット状のパターンとなるが、デフォーカス状態にある位置Ａ、Ｃでは、符号パターン５の像が７行７列に並ぶ配列パターンとなる。
【００３９】
符号パターン５は非対称となっているため、−ｄ方向にデフォーカスした位置Ｂと、＋ｄ方向にデフォーカスした位置Ｃとでは、符号パターン５の像が異なっている。このため、各符号パターン５の形状（ボケ状態）を解析すれば、その被投影パターンがどちらの方向にどの程度デフォーカスしているのかを求めることができる点は、投影パターン１１Ａと同じである。
【００４０】
投影パターン１１Ｂは、投影パターン１１Ａの符号パターンよりも、密に配列されているので、投影光学系１２のフォーカス方向に関する奥行きの探索範囲Ｆ（位置Ａ〜位置Ｃ）において、符号化開口１３Ｂの符号パターン同士が大きく重なる区間が出てくる。
【００４１】
コンピュータ３では、投影パターン１１Ｂを用いた構造化光の投影により計測対象物４に形成された被投影パターンの画像データ（第２の画像データ）に対し、投影光学系１２のフォーカス方向に関して投影パターン１１Ａを用いて計測された奥行きの探索範囲に絞り込んで逆畳込み演算を行う。この逆畳込み演算により、複数の投影パターン１１Ｂにそれぞれ対応する複数の復元パターンが形成される。コンピュータ３は、その演算により得られた復元パターンと投影パターン１１Ｂとの類似度計算により、投影光学系１２のフォーカス方向に関する各復元パターンの奥行きを計測する。
【００４２】
符号化開口１３Ａと符号化開口１３Ｂとは、投影光学系１２に選択的に装着される。その選択は手動によって行われてもよいし、自動的に、例えばコンピュータ３の制御により行われるようにしてもよい。あるいは、カラーフィルターを用いて、別々の透過色として配置してもよい。また、その場合、投影パターンの色もそれに合わせて配色すると良い。選択的に装着した符号化開口１３Ａ、１３Ｂを介した光は、前述のように、各符号パターン５の構造情報を含む構造化光となる。この構造光は投影光として計測対象物４（キャリブレーションの際には平面スクリーン）に投影される。
【００４３】
カメラ２は、構造化光により計測対象物４に投影された被投影パターンを撮像する。カメラ２は、光軸ＡＸ上に設置されていても、されていなくても良い。プロジェクタ１とカメラ２が同軸ではない場合、ハーフミラーなどを使用する必要がなく、より明るいパターンを計測することが出来る他、視差を利用した高精度化がなされるというメリットがある。
【００４４】
コンピュータ３は、カメラ２での撮像により得られた画像データに基づいて、計測対象物４の３次元形状を計測する。上述のように、計測対象物４の各符号パターン５の像の形成状態は、座標軸ｄの位置に依存するため、計測対象物４の各符号パターン５の像の形成状態を画像解析することにより、計測対象物４のフォーカス方向の奥行きを求めることができる。
【００４５】
図１のコンピュータ３のハードウエア構成を示す図６に示すように、コンピュータ３は、制御部３１、主記憶部３２、外部記憶部３３、操作部３４、表示部３５及び通信部３６を備える。主記憶部３２、外部記憶部３３、操作部３４、表示部３５及び通信部３６はいずれも内部バス３０を介して制御部３１に接続されている。
【００４６】
制御部３１は、ＣＰＵ（Central Processing Unit）等から構成されている。このＣＰＵが、外部記憶部３３に記憶されているプログラム３９を実行することにより、図１に示すコンピュータ３の各構成要素が実現される。
【００４７】
主記憶部３２は、ＲＡＭ（Random-Access Memory）等から構成されている。主記憶部３２には、外部記憶部３３に記憶されているプログラム３９がロードされる。この他、主記憶部３２は、制御部３１の作業領域（データの一時記憶領域）として用いられる。
【００４８】
外部記憶部３３は、フラッシュメモリ、ハードディスク、ＤＶＤ−ＲＡＭ（Digital Versatile Disc Random-Access Memory）、ＤＶＤ−ＲＷ（Digital Versatile Disc ReWritable）等の不揮発性メモリから構成される。外部記憶部３３には、制御部３１に実行させるためのプログラム３９があらかじめ記憶されている。また、外部記憶部３３は、制御部３１の指示に従って、このプログラム３９の実行の際に用いられるデータを制御部３１に供給し、制御部３１から供給されたデータを記憶する。
【００４９】
操作部３４は、キーボード及びマウスなどのポインティングデバイス等と、キーボードおよびポインティングデバイス等を内部バス３０に接続するインターフェイス装置から構成されている。操作部３４を介して、操作者が操作した内容に関する情報が制御部３１に入力される。
【００５０】
表示部３５は、ＣＲＴ（Cathode Ray Tube）またはＬＣＤ（Liquid Crystal Display）などから構成され、操作者が操作情報を入力する場合は、操作用の画面が表示される。表示部３５には、後述のとおり、被検者の上気道の通気状態に関する情報などが表示される。
【００５１】
通信部３６は、シリアルインターフェイスまたはパラレルインターフェイスから構成されている。通信部３６は、通信ネットワークを介してカメラ２と接続されており、カメラ２から画像データを受信する。
【００５２】
図１に示すコンピュータ３の各種構成要素は、図６に示すプログラム３９が、制御部３１、主記憶部３２、外部記憶部３３、操作部３４、表示部３５及び通信部３６などをハードウエア資源として用いて実行されることによってその機能を発揮する。
【００５３】
図６に示すようなハードウエア構成を有するコンピュータ３は、その機能構成として、図７に示すように、記憶部４０、データ取得部４１と、初期計測部４２と、ファイン計測部４３と、出力部４４とを備える。
【００５４】
記憶部４０は、図６に示すハードウエア構成のうち、外部記憶部３３に対応する。記憶部４０は、各種データ（画像データ５０Ａ、５０Ｂ、ヒストグラムデータベース５１、奥行き範囲データ５２、スケールパラメータ５３、奥行きデータ５４）を記憶する。
【００５５】
データ取得部４１は、図６に示すハードウエア構成のうち、制御部３１、操作部３４、通信部３６に対応する。データ取得部４１は、カメラ２から送信された画像データを、画像データ５０Ａ、５０Ｂとして、記憶部４０に記憶する。操作部３４の操作入力により、カメラ２から送信された画像データを、画像データ５０Ａ、５０Ｂのいずれかとして記憶部１０に記憶する。
【００５６】
投影パターン１１Ａが投影され符号化開口１３Ａが投影光学系１２に装着されている場合に、データ取得部４１は、操作部３４の操作入力により、カメラ２で撮像された画像データを画像データ５０Ａとして記憶部４０に記憶する。すなわち、画像データ５０Ａは、符号化開口２３Ａを介した構造化光の投影により計測対象物４に形成された複数の孤立パターン（図４（Ｂ）参照）の第１の画像データである。
【００５７】
一方、投影パターン１１Ｂが投影され符号化開口１３Ｂが投影光学系１２に装着されている場合に、データ取得部４１は、操作部３４の操作入力により、カメラ２で撮像された画像データを画像データ５０Ｂとして記憶部４０に記憶する。すなわち、画像データ５０Ｂは、符号化開口１３Ｂを介した構造化光の投影により計測対象物４上に形成された被投影パターンの第２の画像データである。
【００５８】
第１の計測部としての初期計測部４２は、図６に示すハードウエア構成のうち、制御部３１、主記憶部３２及び操作部３４に対応する。初期計測部４２は、記憶部４０に記憶された画像データ５０Ａに基づいて、初期計測を行う。初期計測部４２は、記憶部４０に記憶された画像データ５０Ａに基づいて、投影光学系１２のフォーカス方向（座標軸ｄの方向）に関する各孤立パターンの奥行きの探索範囲を計測する。計測結果は、奥行き範囲データ５２として記憶部４０に記憶される。
【００５９】
より具体的には、初期計測部４２は、画像データ５０Ａにおける各孤立パターンの画像特徴を抽出する。画像特徴としては、ローカル・バイナリ・パターン（ＬＢＰ）又はローカル・ターナリ・パターン（ＬＴＰ）が採用される。さらに、初期計測部４２は、ヒストグラムデータベース５１を参照して、抽出された画像特徴に対応する各孤立パターンの奥行きを求める。図８に示すように、各孤立パターンの奥行き（Ｄｅｐｔｈ１、Ｄｅｐｔｈ２、Ｄｅｐｔｈ３）とＬＢＰのヒストグラムとの間には相関関係がある。奥行きが同じであれば、各孤立パターンのＬＢＰのヒストグラムはほぼ同じとなる。
【００６０】
ここで、ＬＢＰ及びＬＴＰとは、画像データを、中心画素とその中心画素に隣接する８画素各々について、その大小関係を０又は１のバイナリデータとして並べた例えば８ビットのデータ列を各画素の画素値とした画像データ（ＬＢＰ画像、ＬＴＰ画像ともいう）である。ＬＴＰでは、バイナリデータではなく３値データになる。ＬＢＰのヒストグラムは、横軸をＬＢＰの輝度値とし、縦軸をその輝度値を有する画素数としたものである。
【００６１】
ヒストグラムデータベース５１には、図８に示すような各孤立パターンの画像データの画像特徴と、フォーカス方向に関する各孤立パターンの奥行きとが関連づけて登録されている。ヒストグラムデータベース５１には、予め行われるキャリブレーションにより得られたデータが登録される。
【００６２】
初期計測部４２は、図９に示すように、画像データ５０Ａに含まれる孤立パターンの画像データをＬＢＰ画像に変換し、変換されたＬＢＰ画像に基づいてＬＢＰのヒストグラムを生成する。初期計測部４２は、生成したヒストグラムと、ヒストグラムデータベース５１に登録された複数のＬＢＰ画像（Ｄｅｐｔｈ１、Ｄｅｐｔｈ２、Ｄｅｐｔｈ３）のヒストグラムとをマッチングし、最も類似度の高いヒストグラムに対応する奥行きを、４×４の孤立パターン毎に求める。孤立パターン毎に求められた奥行きの探索範囲は、奥行き範囲データ５２として記憶部４０に記憶される。
【００６３】
第２の計測部としての高精度（ファイン）計測部４３は、図６に示すハードウエア構成のうち、制御部３１、主記憶部３２及び操作部３４に対応する。ファイン計測部４３は、記憶部４０に記憶された画像データ５０Ｂに基づいて、計測対象物４の正確な奥行きの計測を行う。ファイン計測により、投影光学系１２のフォーカス方向に関する画像データ５０Ｂに含まれる被投影パターンの奥行きが計測される。計測は、逆畳込み演算を用いて行われる。
【００６４】
計測対象物４に投影される被投影パターンは、投影パターン１１Ｂと点広がり関数（ＰＳＦ）との畳込みにより形成される。ＰＳＦは、奥行きに応じて異なったものとなる。このため、被投影パターンに対して各奥行きに対応するＰＳＦで逆畳込み演算を行った結果、得られる復元パターンが、投影パターン１１Ｂに最も近いときの奥行きが、その復元パターンに対応する奥行きということになる。
【００６５】
ファイン計測部４３は、画像データ５０Ｂに対して探索範囲内の複数のサンプリング位置で逆畳込み演算を行う。これにより、計測範囲内の複数のサンプリング位置に対応する逆畳込み演算後の画像データ（復元パターン）が得られる。
【００６６】
ただし、この実施の形態では、ファイン計測部４３は、奥行き範囲データ５２に含まれる奥行きの探索範囲（Ｆより小さい微小範囲）に絞りこんで、探索範囲内の複数のサンプリング位置で逆畳込み演算を行う。これにより、逆畳込み演算という計算量の多い複雑な演算の演算回数を著しく少なくすることができる。
【００６７】
この実施の形態では、符号パターンの像のボケ具合を積極的に利用して形状復元を行うため、そのボケ具合が必然的に大きくなることから、そのボケ具合を予めキャリブレーションしておく必要がある。収差を無視できる場合には、キャリブレーションするパラメータを、ボケの大きさ（スケール）Ｓに関するもののみとすることができる。
【００６８】
投影光学系１２の光軸ＡＸ上に平面スクリーンを置いた場合、その平面スクリーン上に投影される点状パターンのボケの物理的な大きさｙ（ｄ）は、次式で表される。
【数１】
2016024052.tif 000003
ここで、ｄは、座標軸ｄ上の平面スクリーンの位置であり、ｙaは、符号化開口１３の開口径であり、ｄpは、プロジェクタ１から投影される構造化光の合焦距離であり、ｄaは、カメラ２から投影光学系１２までの座標軸ｄ方向に関する距離である。
【００６９】
ここで、投影像をカメラ２で撮影したとき、平面スクリーン上の点像のボケの大きさ（スケール）Ｓは、以下のように表される。
【数２】
2016024052.tif 000004
ここで、ｃがスケールパラメータである。スケールパラメータｃは以下のようになる。
【数３】
2016024052.tif 000005
すなわち、スケールパラメータｃと、平面スクリーンの位置ｄが決まれば、スケールＳ（ｄ）が決まる。この実施の形態では、複数の既知の奥行きにおいて実際に観測したボケ画像を用いて、それぞれの奥行きにおけるスケールＳ（ｄ）を獲得し、図１０に示すように、スケールＳ（ｄ）のフィッティングを行って正確なスケールパラメータｃを求め、最終的に、スケールパラメータｃに基づいて、奥行きｄの関数であるスケールＳ（ｄ）を求める。この方法は、必要な撮像画像が多くなるものの、現実に即したスケールパラメータｃが直接得られ、カメラ２とプロジェクタ１との間のベースライン等のキャリブレーションも不要となる。スケールパラメータｃは、スケールパラメータ５３として記憶部４０に記憶される。
【００７０】
ファイン計測部４３は、図１１に示すように、計測対象物４に符号化開口１３Ｂを介して投影パターン１１Ｂを投影し、キャリブレーションで得られたスケールパラメータｃを用いて画像データ５０Ｂの被投影パターンＰ２を複数の奥行きで（その奥行きのスケールＳ（ｄ））で逆畳込み演算して逆畳込み演算後のパターンＰ３〜Ｐ５を求める。ファイン計測部４３は、投影パターン１１Ｂに最も類似する復元パターン（パターンＰ３〜Ｐ５に含まれる各復元パターン）の奥行きｄを、復元パターン毎に求める。逆畳込み演算を行うため、隣接する符号パターン５同士のボケが重なったような場合であっても、正しいスケールパラメータｃで逆畳込み演算された場合には、それらは明確に分離され、各復元パターンの奥行きを安定して推定し、計測対象物４の３次元形状を正確に復元することが可能である。
【００７１】
ファイン計測部４３は、スライディングウインドウ方式で画像データ５０Ｂから抽出された部分画像データに対して逆畳込み演算を行う。図１２に示すように、スライディングウインドウＷは、画像データ５０Ｂ上を左上から右に向かって順次スライドする。そして、それぞれの位置で、スライディングウインドウＷ内の画像データが抽出される。さらに、抽出された画像データに対して、上述の逆畳込み演算が行われ、画像データ内の被投影パターンの奥行きが算出される。スライディングウインドウＷのスライド間隔は、スライド前の領域とスライド後の領域の一部が重なるようになっている。
【００７２】
ファイン計測部４３では、スライディングウインドウＷ内の画像データに対して、逆畳込み演算が行われ、そのときの奥行きが算出される。スライディングウインドウＷの横方向の走査が完了すると、スライディングウインドウＷは、下方向及び左端にシフトする。そして、同様の処理が実行される。スライディングウインドウＷの上下の間隔も、スライド前とスライド後とで一部が重なるようになっている。このようにして、画像データ５０Ｂ全体のスライディングウインドウＷの順次走査及び奥行きの推定が行われる。
【００７３】
図１３に示すように、画像データ（Captured image）に対してスラインディングウインドウＷで一部の画像データを抽出し、ハミング窓でフィルタリングしたものをスケールパラメータｃに基づくカーネル（kernel）で逆畳込み演算する。そして、それぞれ逆畳込み演算された画像データを、ハミング窓を用いて他の画像データと統合（Intergration(Weighed sum)）することにより、逆畳込み演算後の画像データ（Deconvolved image）を得る。
【００７４】
ファイン計測部４３は、スライディング方式による逆畳込み演算により得られた復元パターンと投影パターン１１Ｂとの類似度を計算し、投影光学系１２のフォーカス方向に関する各復元パターンに対応する奥行きを計測する。類似度計算には、画像マッチングや、画像特徴量の比較を用いることができる。画像特徴量としては、ガウス関数のあてはめによる点らしさや、尖度などを用いることができる。
【００７５】
この実施の形態に係る３次元計測システム１００では、カメラ２とプロジェクタ１とが同軸上にはない。したがって、図１４に示すように、プロジェクタ１とカメラ２との間の視差により、プロジェクタ１及びカメラ２に近い平面（Near plane）上の点像（赤）と、遠い平面（Far plane）上の点像（緑）との射影ひずみが生じる。この射影ひずみは、逆畳込み演算に悪影響を及ぼす。そこで、この実施の形態では、スライディングウインドウ方式を採用すれば、演算を行う画像データの大きさを小さくすることができるので、この射影ひずみの影響を低減することができる。
【００７６】
ファイン計測部４３は、逆畳込み演算を行うことにより得られた画像データに対して、グラフカット処理を行い、グラフカット処理が行われた画像データに含まれる復元パターンと投影パターン１１Ｂ（オリジナルパターン）との類似度計算を行う。
【数４】
2016024052.tif 000006
グラフカット処理は、上述のエネルギＥ（Ｄ）を最小にする処理である。上述の式において、ｇ（Ｄv）は、データコストであり、逆畳込み演算を行うことによりフォーカス方向に得られた複数の復元パターンと投影パターン１１Ｂとの類似度を用いることができる。ｈ（Ｄu，Ｄv）は、隣接する画素同士の輝度値の差分に相当する関数である。すなわち、グラフカット処理では、他の隣接画素と極端に輝度値が異なる画素について、エネルギＥ（Ｄ）が最小となるように、輝度値の修正が施される。図１５には、４つの平面シートをそれぞれ異なる奥行きに設置した場合に得られる画像データが示されている。図１５に示すように、このグラフカット処理により、画像データにおけるノイズ成分が低減され、画像データ全体が滑らかに調整される。
【００７７】
上述のように、この実施の形態では、図１６に示すように、パターンが疎な投影パターン１１Ａを用いて、画像データ５０Ａ（Captured image with Coarse pattern）が撮像される。そして、初期計測部４２により、画像データ５０Ａに含まれる複数の被投影パターン（孤立パターン）各々のＬＢＰのヒストグラムと複数の奥行きの符号パターンのＬＢＰのヒストグラムとの間のカイ二乗の距離（Chi-square distance）が求められて粗推定（（ａ）Coarse estimation）が行われる。その結果、図１６に示すようなグラフが求められ、奥行きの探索範囲(Estimated depth range in coarse estimation)が求められる。
【００７８】
そして、密な投影パターン１１Ｂを用いて画像データ５０Ｂ（Captured image with Dense pattern(patterns are overlapped each other)）を撮像し、画像データ５０Ｂにおける符号パターン５の像が互いに重なった被投影パターンに対して、求められた奥行きの探索範囲（Search depth range in dense estimation）で、各奥行きにおけるＰＳＦ(PSF for each depth)を用いて逆畳込み演算が行われる。そして、奥行きに対する元の投影パターン１１Ｂ（オリジナルパターン）とのマッチングが行われて密推定（（b)Dense estimation）が行われる。その結果、図１６に示すようにグラフが求められ、各復元パターンに対応する奥行きが求められる。すなわち、この実施の形態では、粗推定と密推定とを段階的に行う。この処理は、階層復元とも呼ばれる。
【００７９】
ファイン計測部４３において、逆畳込み演算は、計測可能範囲Ｆ全体ではなく、奥行き範囲データ５２の探索範囲(図１６ではＬ１とＬ２)だけで行われる。これにより、逆畳込み演算の演算回数を著しく少なくすることができる。
【００８０】
出力部４４は、図６に示すハードウエア構成のうち、制御部３１、主記憶部３２、操作部３４及び表示部３５に対応する。出力部４４は、奥行きデータ５４を表示する。
【００８１】
次に、３次元計測システム１００の動作について説明する。
【００８２】
図１７には、３次元計測システム１００の３次元計測処理（メイン処理）が示されている。図１７に示すように、まず、コンピュータ３は、キャリブレーションを行う（ステップＳ１）。
【００８３】
キャリブレーションでは、プロジェクタ１から出射された構造化光を投影する平面スクリーンが用いられる。図１８に示すように、プロジェクタ１は、符号化開口１３Ａを投影光学系１２に装着し、粗い投影パターン１１Ａを計測対象物４に投影する（ステップＳ１１）。続いて、平面スクリーンの位置（奥行き）が更新される（ステップＳ１２）。ここでは、平面スクリーンが最初の位置に置かれる。最初の位置（平面スクリーンの奥行き）は、他の計測手段によって既知であるものとする。最初の位置は位置Ａであるとする。続いて、カメラ２が、平面スクリーンに投影されたプロジェクタ１の投影像を撮像する（ステップＳ１３）。これにより、撮像画像が、カメラ２からデータ取得部４１を介して画像データ５０Ａとして記憶部４０に記憶される。
【００８４】
続いて、初期計測部４２は、撮像画像（画像データ５０Ａ）をＬＢＰ化する（ステップＳ１４）。これにより、例えば図８に示すＤｅｐｔｈ１のＬＢＰ画像が生成される。続いて、初期計測部４２は、ＬＢＰ画像のヒストグラムを生成する（ステップＳ１５）。これにより、例えば、Ｄｅｐｔｈ１でのＬＢＰ画像のヒストグラムが生成される。
【００８５】
初期計測部４２は、奥行きと対応づけて生成されたヒストグラムをヒストグラムデータベース５１に記憶する（ステップＳ１６）。続いて、初期計測部４２は、最後の位置であるか否かを判定する（ステップＳ１７）。ここでは、位置Ｃが最後の位置であり、スクリーンの位置は、まだ位置Ａであるので、判定は否定される。
【００８６】
最後の位置でなければ（ステップＳ１７；Ｎｏ）、初期計測部４２は、スクリーンの位置を更新する（ステップＳ１２）。ここでは、位置ＡからΔｄほど、＋ｄ方向にシフトされる。この後、投影像の撮像（ステップＳ１３）、撮像画像のＬＢＰ化（ステップＳ１４）、ヒストグラムの生成（ステップＳ１５）、ヒストグラムデータベース５１への登録（ステップＳ１６）、最後の位置の判定（ステップＳ１７）が繰り返される。このようにして、位置Ａから位置Ｃまでの各位置について、一定のサンプリング間隔Δｄで、ＬＢＰ画像のヒストグラムが生成される。
【００８７】
最後の位置であると判定された場合（ステップＳ１７；Ｙｅｓ）、図１９に進み、プロジェクタ１の投影光学系１２に符号化開口１３Ｂを装着し、密に配列された投影パターン１１Ｂ（密パターン）を投影する（ステップＳ２１）。続いて、平面スクリーンの位置が更新される（ステップＳ２２）。ここでは、平面スクリーンが位置Ａに設定される。続いて、カメラ２は、投影像を撮像する（ステップＳ２３）。
【００８８】
続いて、ファイン計測部４３は、画像データ５０Ｂに基づいて、その奥行きでのスケールＳ（ｄ）を算出し、奥行きと対応づけて記憶部４０に記憶する（ステップＳ２４）。続いて、ファイン計測部４３は、スクリーンが最後の位置であるか否かを判定する（ステップＳ２５）。ここでは、位置Ｃが最後の位置であるとする。スクリーンの位置は、まだ位置Ａであるので、判定は否定される。
【００８９】
最後の位置でなければ（ステップＳ２５；Ｎｏ）、ファイン計測部４３は、スクリーンの位置を更新する（ステップＳ２２）。ここでは、位置ＡからΔｄほど、＋ｄ方向にシフトされる。以降、投影像の撮像（ステップＳ２３）、スケールＳ（ｄ）の算出、記憶（ステップＳ２４）、最後の位置の判定（ステップＳ２５）が再び実行される。このようにして、位置Ａから位置Ｃまでの各位置について、一定のサンプリング間隔Δｄで、スケールＳ（ｄ）が算出される。最後の位置であると判定された場合（ステップＳ２５；Ｙｅｓ）、ファイン計測部４３は、フィッティングを行って、スケールパラメータｃを求める（ステップＳ２６）。スケールパラメータｃはスケールパラメータ５３として記憶部４０に記憶される。これにより、キャリブレーションが完了する。
【００９０】
図１７に戻り、続いて、計測対象物４を、計測範囲Ｆ内に設置する（ステップＳ２）。これより、計測対象物４の３次元形状の計測が開始される。
【００９１】
続いて、初期計測部４２は、初期計測を行う（ステップＳ３）。図２０に示すように、プロジェクタ１は、投影光学系１２に符号化開口１３Ａを装着して粗い投影パターン１１Ａを投影する（ステップＳ３１）。続いて、カメラ２は、計測対象物４の投影像を撮像する（ステップＳ３２）。これにより、カメラ２から画像データが送信され、データ取得部４１は、この画像データを画像データ５０Ａとして記憶部４０に記憶する。
【００９２】
続いて、初期計測部４２は、画像データ５０Ａに含まれる各孤立パターンでのローカル・バイナリ・パターン（ＬＢＰ）画像を生成する（ステップＳ３３）。初期計測部４２は、生成されたＬＢＰ画像のヒストグラムを生成する（ステップＳ３４）。初期計測部４２は、生成されたヒストグラムとヒストグラムデータベース５１に登録された各奥行きでのヒストグラムとの類似度計算を行い（ステップＳ３５）、最も近いＬＢＰの奥行きの探索範囲を決定し、奥行き範囲データ５２として、記憶部４０に記憶する（ステップＳ３６）。
【００９３】
続いて、初期計測部４２は、すべてのパターンについて計測が完了したか否かを判定する（ステップＳ３７）。まだ、すべてのパターンの計測が完了していなければ（ステップＳ３７；Ｎｏ）、初期計測部４２は、孤立パターンでのＬＢＰの生成（ステップＳ３３）、ヒストグラムの生成（ステップＳ３４）、マッチング（ステップＳ３５）、最も近いＬＢＰの奥行きの探索範囲の決定（ステップＳ３６）、すべてのパターン完了の判定（ステップＳ３７）が繰り返される。すべてのパターンで、計測が完了し、奥行きの探索範囲が決定されると（ステップＳ３７；Ｙｅｓ）、初期計測を終了する。
【００９４】
図１７に戻り、ファイン計測部４３は、ファイン計測を行う（ステップＳ４）。図２１に示すように、プロジェクタ１の投影光学系１２に符号化開口１３Ｂを装着し、計測対象物４に投影パターン１１Ｂ（密パターン）を投影する（ステップＳ４１）。続いて、カメラ２は投影像を撮像する（ステップＳ４２）。これにより、カメラ２から画像データが送信され、データ取得部４１は、この画像データを画像データ５０Ｂとして記憶部４０に記憶する。
【００９５】
続いて、ファイン計測部４３は、奥行き設定を更新する（ステップＳ４３）。ここで、奥行きは、奥行き範囲データ５２に定められた探索範囲内で設定される。
【００９６】
ファイン計測部４３は、スライディングウインドウ方式で、撮像された画像データ５０Ｂに対して設定された奥行きの範囲で逆畳込み演算を行う（ステップＳ４４）。ここでは、図１３に示すような処理が行われ、逆畳込み演算後の画像データ（Deconvolved image）が求められる。
【００９７】
続いて、ファイン計測部４３は、逆畳込み演算後の画像データに対してグラフカット処理を行う（ステップＳ４５）。これにより、全体的にノイズ成分の少ない画像データが得られる。
【００９８】
続いて、ファイン計測部４３は、逆畳込み演算により得られグラフカット処理が施された画像データに含まれる複数の復元パターン各々と、オリジナルの投影パターン１１Ｂとの類似度を算出する（ステップＳ４６）。
【００９９】
ファイン計測部４３は、最後の位置であるか否かを判定する（ステップＳ４７）。最後の位置でなければ（ステップＳ４７；Ｎｏ）、ファイン計測部４３は、奥行きの設定を更新する（ステップＳ４３）。以降、最後の位置であると判定されるまで、ステップＳ４３〜Ｓ４７が繰り返される。
【０１００】
最後の奥行きであると判定されれば（ステップＳ４７；Ｙｅｓ）、ファイン計測部４３は、これまでに最も類似度が高い奥行きを探索し、探索された奥行きの集合を奥行きデータ５４として記憶部４０に記憶する（ステップＳ４８）。この後、ファイン計測部４３は、ファイン計測を終了する。
【０１０１】
図１７に戻り、ファイン計測が終了すると、３次元計測処理が終了する。求められた奥行きデータ５４が、計測対象物４の３次元形状を示している。この３次元形状は、出力部４４により表示出力される。
【０１０２】
この３次元計測システム１００の利用方法としては様々なものがある。計測時間が短縮されているため、図２２には、この３次元計測システム１００での計測対象物４の３次元形状の計測結果の一例が示されている。図２２に示すように、動体の３次元計測、モーションジェスチャの認識などにも適用することができる。
【０１０３】
以上詳細に説明したように、この実施の形態によれば、計測対象物４に形成された複数の疎な投影パターン１１Ａの画像データに基づいて、投影光学系１２のフォーカス方向に関する各被投影パターンの奥行きの探索範囲を絞り込んでから、複数の密な投影パターン１１Ｂの画像データに基づいて逆畳込み演算を行うことにより、各被投影パターンの奥行きを計測している。これにより、逆畳込み演算を行う範囲を、その奥行きを基準として限定された計測範囲内とするので、逆畳込み演算の演算回数を少なくすることができる。この結果、より計算量を低減しつつ、精度良く計測対象物の３次元計測を行うことができる。
【０１０４】
実施の形態２．
次に、この発明の実施の形態２について説明する。
【０１０５】
図２３に示すように、この実施の形態２に係る３次元計測システム１００は、ハーフミラー６０をさらに有する。３次元計測システム１００は、カメラ２の光軸が、プロジェクタ１の投影光学系１２の光軸ＡＸと同軸に構成されている。プロジェクタ１から出射された投影光は、ハーフミラー６０を透過して計測対象物４に投影される。計測対象物４での反射光は、ハーフミラー６０で反射してカメラ２に至り、カメラ２にて計測対象物４の投影像が、撮像される。
【０１０６】
このようにすれば、奥行きの変化による射影ひずみの発生を防止することができる。したがって、グラフカット処理及びスライディングウインドウ方式を採用しなくても精度良く計測対象物４の３次元形状を求めることができる。
【０１０７】
実施の形態３．
次に、この発明の実施の形態３について説明する。
【０１０８】
図２４に示すように、この実施の形態２に係る３次元計測システム１００は、２つのプロジェクタ１Ａ、１Ｂを備える。プロジェクタ１Ａ、１Ｂの構成は、プロジェクタ１と同じである。
【０１０９】
プロジェクタ１Ａの投影光学系１２には、符号化開口１３が装着されている。ただし、プロジェクタ１Ａの投影光学系１２に装着された符号化開口１３は、第１の色としての赤色光を透過させる赤色フィルタである。プロジェクタ１Ｂの投影光学系１２にも、符号化開口１３が装着されている。ただし、プロジェクタ１Ｂの投影光学系１２に装着された符号化開口１３は、第２の色としての青色光を透過させる青色フィルタである。
【０１１０】
プロジェクタ１Ａから出射される赤色光は、ハーフミラー６１を介して投影される。プロジェクタ１Ｂから出射される青色光は、ハーフミラー６１を介して投影される。
【０１１１】
カメラ２は、赤色光による画像と、青色光による画像とを別々に撮像可能なＲＧＢカメラとなっている。ＲＧＢカメラは、構造化光により計測対象物４に投影された被投影パターンを色毎に撮像する。
【０１１２】
赤色光と青色光とは波長が異なるため、合焦位置が異なる。すなわち、この３次元計測システム１００では、投影部（プロジェクタ１Ａ、１Ｂ）は、合焦位置がそれぞれ異なる複数色の構造化光を、計測対象物４に投影する。構造化光により計測対象物４に投影された被投影パターンを色毎に撮像する。コンピュータ３は、カメラ２での撮像により得られた各色の画像データのうち、符号パターン５の像を読み取り可能な画像データに基づいて、計測対象物４の３次元形状を計測する。
【０１１３】
赤色光の合焦位置ＢＦ１近傍に被投影パターンが形成されている場合には、プロジェクタ１Ｂから出射される青色光による画像データを用いて、計測を行うようにすればよい。図２４に示すように、赤色光の合焦位置ＢＦ１近傍では、赤色光による符号パターン５の像は、点像に近くなっており、青色光による符号パターン５の像を用いた方が、奥行きを精度良く求められるからである。また、青色光の合焦位置ＢＦ２近傍に被投影パターンが形成されている場合には、赤色光による画像データを用いて、計測を行うようにすればよい。青色光の合焦位置ＢＦ２近傍では、青色光による符号パターン５の像は、点像に近くなっており、赤色光による符号パターン５の像を用いた方が、奥行きを精度良く求められるからである。
【０１１４】
なお、プロジェクタ１Ａに投影される投影パターンを疎な投影パターン１１Ａとし、プロジェクタ１１Ｂに投影される投影パターンを密な投影パターン１１Ｂとしてもよい。この場合には、初期計測及びファイン計測を１回の撮像（１ショット）により行うことができる。
【０１１５】
また、プロジェクタ１Ｂには、符号化開口１３Ｂを装着しなくてもよい。本特許ではこれを開口パターンと呼ぶ。この場合、プロジェクタ１Ｂには、映像面１１に、特定の空間周波数成分を有する周期パターンを表示させ、その周期パターンの映像を含む構造化光を投影させるようにする。そして、プロジェクタ１Ａから出射される赤色光の画像データに基づいて初期計測を行い、プロジェクタ１Ｂから出射され映像として移し出されるパターンのボケ具合に基づいて、ファイン計測を行うようにしてもよい。高周波パターンは僅かなボケでもこれを高精度に計測することが出来るため、合焦位置付近ではボケ具合が少なくなるため、逆畳み込みによる奥行き推定精度が低くなる点を、効果的に補うことができる。
【０１１６】
上記実施の形態１のような同軸落射方式でない３次元計測システムでは、スライディングウインドウ方式を用いて、奥行きの変化による被投影パターンの射影ひずみを解決した。しかし、プロジェクタとカメラとのベースラインが既知である場合には、奥行きの変化による被投影パターンの位置ずれ量を算出することができるので、カメラで撮像された画像データに含まれる被投影パターンの位置をベースラインに基づいて補正した上で、奥行きの推定を行うようにしてもよい。
【０１１７】
また、上記各実施の形態では、ローカル・バイナリ・パターン（ＬＢＰ）を画像特徴として、初期計測を行ったが、前述のように、ローカル・ターナリ・パターン（ＬＴＰ）を画像特徴として、初期計測を行うようにしてもよい。
【０１１８】
また、上記各実施の形態では、投影光学系１２の出射側に符号化開口１３を装着したが、投影光学系１２の入射側に符号化開口１３を装着するようにしてもよい。また、投影光学系１２の内部に符号化開口１３を組み込んでもよい。投影光学系１２が複数のレンズより構成されている場合には、そのレンズ間に符号化開口１３を装着するようにしてもよい。
【０１１９】
符号パターン５も、図３（Ａ）に示すものには限られない。計測対象物４に非対称なパターンを形成できるものであればよい。
【０１２０】
その他、コンピュータ３のハードウエア構成やソフトウエア構成は一例であり、任意に変更および修正が可能である。
【０１２１】
制御部３１、主記憶部３２、外部記憶部３３、操作部３４、表示部３５及び通信部３６、内部バス３０などから構成されるコンピュータ３の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体（フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行するコンピュータ３を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することでコンピュータ３を構成してもよい。
【０１２２】
コンピュータ３の機能を、ＯＳ（オペレーティングシステム）とアプリケーションプログラムの分担、またはＯＳとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【０１２３】
搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板（BBS, Bulletin Board System）にコンピュータプログラムを掲示し、ネットワークを介してコンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、ＯＳの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【０１２４】
この発明は、この発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、この発明の範囲を限定するものではない。すなわち、この発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
【符号の説明】
【０１２５】
１、１Ａ、１Ｂ  プロジェクタ、２  カメラ、３  コンピュータ、４  計測対象物、５  符号パターン、１１  映像面、１１Ａ、１１Ｂ  投影パターン、１２  投影光学系、１３、１３Ａ、１３Ｂ  符号化開口、３０  内部バス、３１  制御部、３２  主記憶部、３３  外部記憶部、３４  操作部、３５  表示部、３６  通信部、３９  プログラム、４０  記憶部、４１  データ取得部、４２  初期計測部、４３  高精度（ファイン）計測部、４４  出力部、５０Ａ、５０Ｂ  画像データ、５１  ヒストグラムデータベース、５２  奥行き範囲データ、５３  スケールパラメータ、５４  奥行きデータ、６０、６１  ハーフミラー、１００  ３次元計測システム。
【図１】
2016024052.tif 000007
【図２】
2016024052.tif 000008
【図３】
2016024052.tif 000009
【図４】
2016024052.tif 000010
【図５】
2016024052.tif 000011
【図６】
2016024052.tif 000012
【図７】
2016024052.tif 000013
【図８】
2016024052.tif 000014
【図９】
2016024052.tif 000015
【図１０】
2016024052.tif 000016
【図１１】
2016024052.tif 000017
【図１２】
2016024052.tif 000018
【図１３】
2016024052.tif 000019
【図１４】
2016024052.tif 000020
【図１５】
2016024052.tif 000021
【図１６】
2016024052.tif 000022
【図１７】
2016024052.tif 000023
【図１８】
2016024052.tif 000024
【図１９】
2016024052.tif 000025
【図２０】
2016024052.tif 000026
【図２１】
2016024052.tif 000027
【図２２】
2016024052.tif 000028
【図２３】
2016024052.tif 000029
【図２４】
2016024052.tif 000030