(57)【特許請求の範囲】
【請求項１】
計測用パターンが投影された計測対象物を撮像した第１の撮像画像と、略均一な照明が照射された前記計測対象物を撮像した第２の撮像画像を取得する画像取得手段と、
前記第２の撮影画像に基づいて、前記第１の撮像画像に適用するべき平滑化フィルタを決定する平滑化フィルタ決定手段と、
前記平滑化フィルタ決定手段で決定された平滑化フィルタを、前記第１の撮像画像に適用する平滑化フィルタ適用手段と、
前記平滑化フィルタ適用手段により前記平滑化フィルタが適用された画像に基づいて、前記計測対象物までの距離を計測する計測手段とを有することを特徴とする距離計測装置。
【請求項２】
前記平滑化フィルタ決定手段は、前記第２の撮像画像の所定の領域ごとに前記平滑化フィルタをそれぞれ決定し、
前記平滑化フィルタ適用手段は、前記第２の撮像画像の所定の領域に対応する前記第１の撮像画像の領域ごとに、前記平滑化フィルタをそれぞれ適用することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記平滑化フィルタ決定手段は、前記第２の撮像画像における注目画素の輝度値と該注目画素の周辺画素の輝度値とに基づいて、前記平滑化フィルタを決定することを特徴とする請求項１または２に記載の距離計測装置。
【請求項４】
前記平滑化フィルタ決定手段は、前記第２の撮像画像における注目画素の輝度値と該注目画素の周辺画素の輝度値との差分値に基づいて、前記平滑化フィルタを決定することを特徴とする請求項３に記載の距離計測装置。
【請求項５】
前記平滑化フィルタ決定手段は、前記平滑化フィルタのサイズを決定することを特徴とする請求項１乃至４のいずれか１項に記載の距離計測装置。
【請求項６】
前記計測用パターンは周期性を有しており、
前記平滑化フィルタ決定手段は、前記第１の撮影画像内の前記計測用パターンの有する周期に基づいて、前記平滑化フィルタのサイズの上限値を設定することを特徴とする請求項１乃至５のいずれか１項に記載の距離計測装置。
【請求項７】
前記計測用パターンは、明部と暗部とが所定の周期で繰り返される空間符号化パターンであり、
前記平滑化フィルタ決定手段は、前記第２の撮像画像の前記計測用パターンの明部と暗部の１周期よりも小さいサイズに成るように、前記平滑化フィルタのサイズを決定することを特徴とする請求項１乃至６のいずれか１項に記載の距離計測装置。
【請求項８】
前記計測用パターンと前記略均一な照明光とが同一の装置によって投影または照射されることを特徴とする請求項１乃至７のいずれか１項に記載の距離計測装置。
【請求項９】
前記第１の撮像画像と前記第２の撮像画像とが同一の撮像装置によって撮像されることを特徴とする請求項１乃至８のいずれか１項に記載の距離計測装置。
【請求項１０】
計測用パターンが投影された計測対象物を撮像した第１の撮像画像と、略均一な照明が照射された前記計測対象物を撮像した第２の撮像画像を取得する画像取得工程と、
前記第２の撮影画像に基づいて、前記第１の撮像画像に適用するべき平滑化フィルタを決定する平滑化フィルタ決定工程と、
前記平滑化フィルタ決定工程で決定された平滑化フィルタを、前記第１の撮像画像に適用する平滑化フィルタ適用工程と、
前記平滑化フィルタ適用工程で前記平滑化フィルタが適用された画像に基づいて、前記計測対象物までの距離を計測する計測工程とを有することを特徴とする距離計測方法。
【請求項１１】
コンピュータを、請求項１乃至９のいずれか１項に記載の距離計測装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計測対象物の三次元的な距離を非接触で計測する距離計測装置に関する。
【背景技術】
【０００２】
従来から距離計測方法としては種々の手法が提案されている。大きく分類すると、照明装置を用いずに撮像装置だけで距離計測を行うパッシブ型と、照明装置と撮像装置を組み合わせて用いるアクティブ型がある。アクティブ型では照明装置によりパターン光を計測対象物に投影し、撮像装置で画像撮像をするので、計測対象物の表面テクスチャが少ない場合でもパターン光を手がかりにして距離計測を行うことができる。アクティブ型の距離計測法としては空間符号化法、位相シフト法、グリッドパターン投影法、光切断法など種々の手法が提案されている。これらの手法は三角測量法に基づくため、パターン光の投影装置からの出射方向をもとに距離計測を行う。
【０００３】
計測対象物が様々な方向を向く場合や、計測対象物が様々な反射率を有する部材から構成される場合、撮影画像には画像輝度が高い領域と低い領域が混在することとなる。画像輝度が高い領域においては、パターン光のコントラストが高く、ノイズ成分も小さいため、良好な距離計測が実施できる。一方で、画像輝度が低い領域においては、パターン光のコントラスが低くなり、相対的にノイズ成分が大きくなる。ノイズ成分が大きくなると、計測精度が低下したり、空間符号化法においてはデコードに失敗して投影装置からの出射方向を誤り、大きな計測誤差を生じる。計測誤差を低減するためには、ノイズ低減をすることが必要となる。その一つの手段が空間的な平滑化処理である。
【０００４】
特許文献１には、計測用のパターン光が投影された対象物の画像に対してエッジ検出を行い、検出されたエッジの数に基づき、ノイズ低減フィルタのサイズを変更する方法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１９１１９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の方法を用いる場合には、パターン光の境界部分のエッジのみを検出し、その数をカウントすることが望ましい。しかしながら、計測シーンに面の境界があり、それぞれの面の向きが異なることにより反射光量が異なる場合や、対象物にテクスチャがある等により表面の反射光量分布が局所的に異なる場合など、パターン光の境界部分以外にエッジが検出される。そのため、エッジの数を適切にカウントすることができない。そしてそのような場合には適切なフィルタサイズを決定することが難しい。
【０００７】
上記の課題に鑑み、本発明は、表面の反射光量分布が局所的に異なる場合においても、画像に適切なフィルタを適用することにより精度良く距離計測を行うことを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の距離計測装置は、例えば、計測用パターンが投影された計測対象物を撮像した第１の撮像画像と、略均一な照明が照射された前記計測対象物を撮像した第２の撮像画像を取得する画像取得手段と、前記第２の撮影画像に基づいて、前記第１の撮像画像に適用するべき平滑化フィルタを決定する平滑化フィルタ決定手段と、
前記平滑化フィルタ決定手段で決定された平滑化フィルタを、前記第１の撮像画像に適用する平滑化フィルタ適用手段と、前記平滑化フィルタ適用手段により前記平滑化フィルタが適用された画像に基づいて、前記計測対象物までの距離を計測する計測手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、表面の反射光量分布が局所的に異なる場合においても、画像に適切なフィルタを適用することにより精度良く距離計測を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態にかかる距離計測装置の概略構成を示した図。
【図２】空間符号化法による距離計測処理のフロー図。
【図３】４ビットの空間符号化法における投影パターンを示した図。
【図４】４ビットグレイコードを示した図。
【図５】三角測量に基づく距離計測原理を示した図。
【図６】第１の実施形態の平滑化フィルタ決定処理のフロー図。
【図７】第１の実施形態の平滑化フィルタ適用処理のフロー図。
【図８】第２の実施形態の平滑化フィルタ決定処理のフロー図。
【図９】第３の実施形態の平滑化フィルタ決定処理のフロー図。
【図１０】第４の実施形態の平滑化フィルタ決定処理のフロー図。
【図１１】第４の実施形態の平滑化フィルタ適用処理のフロー図。
【図１２】対象シーン、および、注目画素に応じて決定される平滑化フィルタの例。
【図１３】本発明の情報処理装置のハードウェア構成の例を示す図。
【発明を実施するための形態】
【００１１】
以下、本発明にかかる実施形態の情報処理装置を詳細に説明する。
【００１２】
本発明にかかる実施形態を説明するのに先立ち、各実施形態に示す情報処理装置が実装されるハードウェア構成について、図１３を用いて説明する。
【００１３】
図１３は、本実施形態における距離計測装置３のハードウェア構成図である。同図において、ＣＰＵ１３１０は、バス１３００を介して接続する各デバイスを統括的に制御する。ＣＰＵ１３１０は、読み出し専用メモリ（ＲＯＭ）１３２０に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム（ＯＳ）をはじめ、本実施形態に係る各処理プログラム、デバイスドライバ等はＲＯＭ１３２０に記憶されており、ランダムアクセスメモリ（ＲＡＭ）１３３０に一時記憶され、ＣＰＵ１３１０によって適宜実行される。また、入力Ｉ／Ｆ１３４０は、外部の装置（撮像装置や、表示装置や操作装置など）から距離計測装置３で処理可能な形式で入力信号として入力する。また、出力Ｉ／Ｆ１３５０は、外部の装置（表示装置）へ表示装置が処理可能な形式で出力信号として出力する。
【００１４】
（第１の実施形態）
図１に本発明の第１の実施形態にかかる距離計測装置３を用いたシステムの基本構成概略図を示す。
【００１５】
距離計測装置３は、パターン光を計測対象物に投影する投影部１と、パターン光が投影された計測対象物を撮像する撮像部２とに接続される。距離計測装置３は、投影部１と撮像部２を制御し、撮像された画像データを計算処理して計測対象物の３次元的な距離を計測するなる。計測対象物は５１、５２、および、５３から構成され、それらをまとめて計測対象シーン５と呼ぶ。
【００１６】
投影部１は、光源１１、照明光学系１２、表示素子１３、投影光学系１４から構成される。光源１１にはハロゲンランプ、ＬＥＤなど各種の発光素子を用いることができる。照明光学系１２は光源１１から出射した光を表示素子１３へと導く機能を持つ光学系である。このとき、光源から出射した光を表示素子１３に入射させる際、入射輝度分布が均一であることが望ましい。そのため、例えば、ケーラー照明や拡散板など輝度分布の均一化に適した光学系が用いられる。表示素子１３には、透過型ＬＣＤや反射型のＬＣＯＳ・ＤＭＤなどが用いられる。表示素子１３は、照明光学系１２からの光を投影光学系１４に導く際に、透過率、または、反射率を空間的に制御する機能を持つ。投影光学系１４は表示素子を計測対象物の特定位置に結像させるように構成された光学系である。
【００１７】
撮像部２は、撮像レンズ２１、撮像素子２２から構成される。撮像レンズ２１は計測対象物の特定位置を撮像素子２２上に結像させるよう構成された光学系である。撮像素子２２には、ＣＭＯＳセンサ、ＣＣＤセンサなど各種光電変換素子を用いる。
【００１８】
投影パターン制御部３１は後述する投影パターンを生成して、記憶装置に予め記憶する。
また、必要に応じて記憶した投影パターンのデータを読み出し、例えば、ＤＶＩのような汎用的なディスプレイ用インターフェースを介して投影パターンのデータを投影部１に伝送する。さらにＲＳ２３２ＣやＩＥＥＥ４８８などの汎用の通信インターフェースを介して投影部１の動作を制御する機能を有している。この場合、ディスプレイ用インターフェースや通信インターフェースは、出力Ｉ／Ｆ１３５０の一例である。なお、投影部１では投影パターンデータに基づいて表示素子１３に投影パターンを表示する。
【００１９】
画像取得部３２は、撮像部２で標本化ならびに量子化されたディジタルの画像信号を取り込む。さらに、取り込んだ画像信号から各画素の画像輝度値（濃度値）で表される画像データを取得してメモリに記憶する機能を有している。なお、画像取得部３２はＲＳ２３２ＣやＩＥＥＥ４８８などの汎用の通信インターフェースを介して撮像部２の動作（撮像のタイミングなど）を制御する機能を有する。
【００２０】
画像取得部３２と投影パターン制御部３１は互いに連携した動作をする。表示素子１３へのパターン表示が完了すると、投影パターン制御部３１は画像取得部３２に信号を送る。画像取得部３２は投影パターン制御部３１から信号を受信すると撮像部２を動作させ、画像撮像を実施する。画像撮影が完了すると画像取得部３２は投影パターン制御部３１に信号を送る。投影パターン制御部３１は画像取得部３２から信号を受信すると、表示素子１３に表示する投影パターンを次の投影パターンに切り替える。これを順次繰り返すことで、全ての投影パターンの撮像を実施する。
【００２１】
平滑化フィルタ決定部３３は、略均一な照明が照射された計測対象物の画像をもとに、平滑化フィルタを決定する。平滑化フィルタ適用部３４は、平滑化フィルタ決定部３３で決定された平滑化フィルタを計測用のパターン光が投影された計測対象物の撮影画像に適用する。平滑化フィルタ決定部３４と平滑化フィルタ適用部３４の詳しい説明は後述するが、本発明で決定される平滑化フィルタは、画像内のエッジ（境界）をできるだけ保存する平滑化フィルタである。すなわち、画像内のエッジをまたがないようにサイズが決定される。
【００２２】
距離計算部３５は、平滑化フィルタ適用部３４により平滑化フィルタが適用されたパターン画像をもとに計測対象物までの距離を計算する。第１の実施形態では図３に示すように、明部と暗部とを含む投影パターンにより距離計測を行う公知の空間符号化法と呼ばれる計測手法を用いる。図３に示すように、投影パターンは周期性を有している。ただし、本発明が適用できる計測手法は空間符号化法に限られるものではない。
【００２３】
パラメータ記憶部３６は、計測対象物の３次元的な距離を算出するのに必要なパラメータを格納する。パラメータとしては、投影部１と撮像部２の機器パラメータ、投影部１と撮像部２の内部パラメータ、投影部１と撮像部２の外部パラメータ、平滑化フィルタ情報がある。機器パラメータは、具体的には表示素子の画素数、撮像素子の画素数である。投影部１と撮像部２の内部パラメータは、焦点距離、画像中心、ディストーションによる画像歪みの係数などである。これらは、内部パラメータのキャリブレーションにより算出される。投影部１と撮像部２の外部パラメータは、投影部１と撮像部２の相対位置関係を表す並進ベクトルと回転行列である。これらは、外部パラメータのキャリブレーションにより算出される。
【００２４】
平滑化フィルタ情報は平滑化フィルタ決定部３３により決定されたものが格納される。この情報は、平滑化フィルタ適用部３４により参照される。
【００２５】
距離計測装置３を構成する各機能部は、ＣＰＵ１３１０が、ＲＯＭ１３２０に格納されたプログラムをＲＡＭ１３３０に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、ＣＰＵ１３１０を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
【００２６】
次に空間符号化法による距離計測の原理について説明する。
【００２７】
図２に示すように空間符号化法による距離計測は大きく４つのステップに分かれる。投影撮像ステップＳ１、平滑化フィルタ適用ステップＳ２、デコードステップＳ３、距離計測ステップＳ４である。
【００２８】
投影撮像ステップＳ１は、Ｓ１０１〜Ｓ１０３からなる。
【００２９】
Ｓ１０１では、投影部１は、図３（ａ）〜図３（ｊ）に示した投影パターンを順にパターン投影する。この例では４ビットの空間符号化法のグレイコードパターン（空間符号化パターン）であるため、プロジェクタからの出射光を２４（＝１６）分割することができる。ビット数を増加させると投影枚数は増加するが、出射光の分割数を増加させることができる。例えば１０ビットの場合には、２１０（＝１０２４）分割することが可能となる。
【００３０】
Ｓ１０２では、撮像部２は、Ｓ１０１の投影パターンが投影された計測対象物の画像撮影を行う。そして、画像取得部３２は、撮像部２が撮像した画像を順次取得する。
【００３１】
Ｓ１０３では、画像取得部３２は、全投影パターンの画像撮影が終了したか否かを判定する。終了している場合には、Ｓ２の平滑化フィルタ適用ステップに進む。終了していない場合には、Ｓ１０１のパターン投影に戻る。
【００３２】
平滑化フィルタ適用ステップＳ２はＳ２０１〜Ｓ２０２からなる。
【００３３】
Ｓ２０１では、平滑化フィルタ決定部３３は、平滑化フィルタを決定する。通常の空間符号化法では、ノイズ低減のために投影パターンのビット数や撮影画像位置に依らず一定サイズの平滑化フィルタが選ばれる。しかしながら本実施形態では、撮影画像の画素ごと（所定の領域ごと）に適した平滑化フィルタを決定する。具体的な処理は後述する。平滑化フィルタ決定部３３は、選ばれた平滑化フィルタをパラメータ記憶部３６に記憶させる。
【００３４】
Ｓ２０２では、平滑化フィルタ適用部３４は、平滑化フィルタを撮影画像に適用し、撮像素子ノイズの低減を行う。具体的には、パラメータ記憶部３６に記憶された平滑化フィルタを読み出し、平滑化フィルタを画像取得部３２から取得した画像に適用する。
【００３５】
デコードステップＳ３はＳ３０１〜Ｓ３０６からなる。
【００３６】
Ｓ３０１では、距離計算部３５は、制御変数ｉを１に設定する。
【００３７】
Ｓ３０２では、距離計算部３５は、制御変数ｉに対応するｉビット目の画像の２値化判定を行う。例えば、ｉ＝１の場合、図３（ｂ）の１ビットポジティブパターンを投影した時の撮影画像と図３（ｇ）の１ビットネガティブパターンを投影した時の撮影画像をもとに１ビットパターンの２値化を行う。２値化判定処理では、ポジティブ画像とネガティブ画像とで画像輝度値の比較を行い、ポジティブ画像の方が画像輝度値が大きい画素を１、ネガティブ画像の方が画像輝度値が大きい画素を０と判定する。
【００３８】
Ｓ３０３では、距離計算部３５は、制御変数ｉがＮよりも小さいか否かの判定を行う。Ｎは空間符号化法の最下位ビット数であり、ここではＮが４である場合の説明をする。ｉが４よりも小さい場合、Ｓ３０４に進み、制御変数ｉに１を加算し、Ｓ３０２に戻る。ｉがＮ以上となった場合、ループを抜け、Ｓ３０５に進む。
【００３９】
Ｓ３０５では、距離計算部３５は、４ビットのグレイコードを生成する。Ｓ３０５に進むまでに、１ビットから４ビットまで２値化が実施されている。これを順に並べることで、図４に示すように４ビットのグレイコードが生成される。
【００４０】
Ｓ３０６では、距離計算部３５は、Ｓ３０５で生成された４ビットグレイコードを４ビットの空間コードに変換する。空間コードに変換されることで、投影部１からの出射方向を把握できるようになる。続いて、距離計測ステップＳ４に進む。
【００４１】
距離計測ステップＳ４は、Ｓ４０１からなる。
【００４２】
図５に示すように投影部１からの出射方向と、撮像部２への入射方向をもとに三角測量の原理で距離計測を行う。撮影画像内の画素の情報から撮像部２への入射方向を求めるために、撮像部２の内部パラメータが使用される。同様に表示素子の画素の情報から出射方向を求めるために、投影部１の内部パラメータが利用される。三角測量の原理で、距離計測を行う際に、撮像部２と投影部１の外部パラメータも利用される。詳細は割愛する。
【００４３】
以上が、空間符号化法を用いた距離計測の原理である。
【００４４】
空間符号化法では、各ビットでポジティブパターンとネガティブパターンの大小関係をもとに、２値化を実施した。投影パターンの画像輝度波形の大きさに対して、撮像素子のノイズが大きい場合、２値化判定に誤りを生じることがある。２値化判定に誤りが生じると投影部からの出射方向を誤ることになり、大きな距離計測誤差となる。
【００４５】
また、ポジティブパターンとネガティブパターンの画像輝度波形の交点位置をもとに距離計測方法では、その交点位置の計算精度がノイズにより悪化する。本発明ではノイズによる２値化判定の誤りや、交点位置の計算精度の悪化を低減するための平滑化フィルタに関するものである。
【００４６】
本発明の特徴的な構成である平滑化フィルタ決定部３３と平滑化フィルタ適用部３４について、詳しく述べる。先ほど図２を用いて空間符号化法の原理を説明した際には、平滑化フィルタが一定サイズであると述べた。本実施形態では、Ｓ２０１の平滑化フィルタ決定処理で、撮影画像の画素ごとに適した平滑化フィルタを決定する。Ｓ２０２においてはＳ２０１で決定した画素ごとに適した平滑化フィルタを適用する。
【００４７】
Ｓ２０１の平滑化フィルタ決定処理は、平滑化フィルタ決定部３３で実施される。平滑化フィルタ決定部３３では、略均一な照明が照射された計測対象物の画像をもとに、平滑化フィルタを決定する。投影部１から図２（ａ）に示した全点灯画像を照射することで、略均一な照明を実現することができる。略均一な照明を実現する他の手段としては、図示しない計測装置の周囲に存在する環境光源からの光を利用する方法がある。環境光源からの光が略均一であるとみなせる場合には、略均一な照明として用いることが可能である。
【００４８】
第１の実施形態では、エッジ保存平滑化フィルタと呼ばれる平滑化フィルタを用いる。一般的な平滑化フィルタは、画像に含まれるノイズ成分等を軽減することができるが、同時に、画像にもともと存在するエッジも滑らかにしてしまう。エッジ保存平滑化フィルタでは、画像中のエッジは保ちつつ、ノイズ成分等による細かな変動を平滑化することができる。
【００４９】
距離計測用の画像に対して一般的な平滑化フィルタ適用すると、画像中のエッジが滑らかになるだけでなく、物体の境界を越えて平滑化をかけてしまうことがある。このようなケースでは、高さの異なる物体の間で平滑化フィルタが実施されるため、空間コードに誤りを生じ、計測結果に偽の形状を生じることがある。
【００５０】
第１の実施形態では、物体と物体との境界で平滑化フィルタが実施されるのを防ぐために、略均一な照明が照射された画像を利用する。物体と物体との境界は、反射光量分布の変化、すなわち、画像輝度値の変化として観測される。画像輝度値の変化は、画像エッジとして表出する。つまり、略均一な照明が照射された画像を利用して、エッジ保存平滑化フィルタを求め、それを計測用パターン光画像に適用することで、物体と物体の境界を越えて、平滑化フィルタが適用されることを軽減することができる。それにより、距離計測結果に偽形状が含まれることを軽減できる。
【００５１】
図６に第１の実施形態の平滑化フィルタ決定フローのフロー図を示す。
【００５２】
Ｓ６０１では、平滑化フィルタ決定部３３は、画像座標のｙ座標値を１に設定する。
【００５３】
Ｓ６０２では、平滑化フィルタ決定部３３は、画像座標のｘ座標値を１に設定する。
【００５４】
Ｓ６０３では、平滑化フィルタ決定部３３は、画像座標（ｘ、ｙ）における画像輝度値Ｉｂを取得する。
【００５５】
Ｓ６０４では、平滑化フィルタ決定部３３は、フィルタ制御変数ｆｙを−Ｆｙに設定する。本実施形態のフィルタサイズは画像のｙ方向が（２×Ｆｙ＋１）画素、画像のｘ方向が（２×Ｆｘ＋１）画素である。
【００５６】
Ｓ６０５では、平滑化フィルタ決定部３３は、フィルタ制御変数ｆｘを−Ｆｘに設定する。
【００５７】
Ｓ６０６では、平滑化フィルタ決定部３３は、画像座標（ｘ、ｙ）の周囲画素の画像座標（ｘ＋ｆｘ、ｙ＋ｆｙ）における画像輝度値Ｉｎを取得する。ｘ＋ｆｘ、または、ｙ＋ｆｙが画像の外側にはみ出す場合には、その画素は無視する。
【００５８】
Ｓ６０７では、平滑化フィルタ決定部３３は、画像座標（ｘ、ｙ）における画像輝度Ｉｂと、周囲画素の画像座標（ｘ＋ｆｘ、ｙ＋ｆｙ）における画像輝度Ｉｎの差分の絶対値Ｉｄを以下の式（１）で算出する。
【００５９】
Ｉｄ＝ａｂｓ（Ｉｎ−Ｉｂ）・・・式（１）
ここで、ａｂｓ（）はカッコ内の数値の絶対値を返す関数である。
【００６０】
Ｓ６０８では、平滑化フィルタ決定部３３は、Ｓ６０７で算出した画像輝度の差分の絶対値Ｉｄと予め設定された閾値との大小比較を行う。Ｉｄが閾値よりも小さい場合、Ｓ６０９に進む。Ｉｄが閾値よりも大きい場合、Ｓ６１０に進む。
【００６１】
Ｓ６０９では、平滑化フィルタ決定部３３は、ＩｂとＩｎの差が小さいため、計測対象物の境界等ではないと判断されるため、（ｆｘ、ｆｙ）を平滑化算出対象画素とする。
【００６２】
Ｓ６１０では、平滑化フィルタ決定部３３は、Ｓ６０９とは逆にＩｂとＩｎの差が大きいため、計測対象物の境界等であると判断されるため、（ｆｘ、ｆｙ）を平滑化算出対象画素から除外する。
【００６３】
Ｓ６１１では、平滑化フィルタ決定部３３は、ｆｘがｘ方向のフィルタサイズの最終位置であるＦｘに達したかどうかを判定する。ｆｘ＜Ｆｘが成立する、すなわち、ｆｘがＦｘに達していない場合、Ｓ６１２に進み、ｆｘに１を加算する。一方、ｆｘ＜Ｆｘが成立する、すなわち、ｆｘがＦｘに達している場合、Ｓ６１３に進む。
【００６４】
Ｓ６１３では、平滑化フィルタ決定部３３は、ｆｙがｙ方向のフィルタサイズの最終位置であるＦｙに達したかどうかを判定する。ｆｙ＜Ｆｙが成立する、すなわち、ｆｙがＦｙに達していない場合、Ｓ６１４に進み、ｆｙに１を加算する。一方、ｆｙ＜Ｆｙが成立する、すなわち、ｆｙがＦｘに達している場合、Ｓ６１５に進む。
【００６５】
Ｓ６１５では、平滑化フィルタ決定部３３は、画像座標（ｘ、ｙ）における平滑化フィルタが決定する。すなわちフィルタサイズ（２×Ｆｘ＋１）×（２×Ｆｙ＋１）のどの画素が平滑化フィルタ算出対象であるかが判明している。平滑化フィルタ算出対象画素数がＭであるとすると、平滑化フィルタ算出対象画素のカーネルの値は１／Ｍとなる。この各画素の平滑化フィルタについての情報はパラメータ記憶部３６に記憶される。続いて、Ｓ６１６に進む。
【００６６】
Ｓ６１６では、平滑化フィルタ決定部３３は、ｘが横方向の画像サイズであるＷに到達したかを判定する。ｘ＜Ｗが成立する、すなわち、ｘがＷに到達していない場合、Ｓ６１７に進み、ｘに１を加算する。ｘがＷに到達している場合には、Ｓ６１８に進む。
【００６７】
Ｓ６１７では、平滑化フィルタ決定部３３は、画像座標のｘ座標値に１を加算する。そして、Ｓ６０３に戻る。
【００６８】
Ｓ６１８では、平滑化フィルタ決定部３３は、ｙが縦方向の画像サイズであるＨに到達したかを判定する。ｙ＜Ｈが成立する、すなわち、ｙがＨに到達していない場合、Ｓ６１９に進み、ｙに１を加算する。ｙがＹに到達している場合には、処理を終了する。
【００６９】
Ｓ６１９では、平滑化フィルタ決定部３３は、画像座標のｙ座標値に１を加算する。そして、Ｓ６０２に戻る。
【００７０】
以上が、エッジ保存平滑化フィルタ決定処理Ｓ２０１のフローである。
【００７１】
図１２に対象シーン、および、注目画素に応じて決定される平滑化フィルタの例について説明した図を示す。図１２（ａ）、（ｃ）、（ｅ）が対象計測シーン５を撮影した画像における注目画素位置とその周辺画素範囲を表している。図１２（ｂ）、（ｄ）、（ｆ）がそれぞれの注目画素位置で決定されたエッジ保存平滑化フィルタである。
【００７２】
図１２（ａ）の場合、注目画素を含む周辺画素領域が計測対象物５２の中に全て収まっている。このような場合、一般的な平滑化フィルタを適用しても、計測対象物５２の中での反射光量の変化は小さいため、大きな問題は生じない。エッジ保存平滑化フィルタを求めても、注目画素と周辺画素の画像輝度値の変化量が小さいため、図１２（ｂ）に示すように周辺画素の全画素が平滑化算出対象画素とみなされる。一般的な平滑化フィルタと変わらないものとして求められる。
【００７３】
図１２（ｃ）の場合、注目画素、および、右側の周辺画素は計測対象物５１上にあるが、左側の周辺画素については、計測対象物５２上にある。このような場合、一般的な平滑化フィルタを適用すると、平滑化フィルタが計測対象物を超えて適用されることになるため、計測結果に偽形状を生じさせる恐れがある。一方で、本発明のエッジ保存平滑化フィルタ決定フローを用いると、注目画素と計測対象物５２上の周辺画素とでは、画像輝度値の変化量が大きくなるため、左側の周辺画素は、平滑化フィルタ算出対象から除外される。従って、エッジ保存平滑化フィルタは、図１２（ｄ）に示すように注目画素から右側の画素のみを平滑化フィルタ算出対象画素とするものとして決定される。つまり、計測対象物５１と計測対象物５２という高さの異なる物体の境界を越えて、平滑化フィルタが適用されることはなくなるため、計測結果が偽形状となることを抑制できる。
【００７４】
図１２（ｅ）の場合、注目画素、および、左上側の周辺画素は計測対象物５２上にあるが、右上の周辺画素については、計測対象物５１上に、下側の周辺画素については計測対象物５３上にある。このような場合、一般的な平滑化フィルタを適用すると、平滑化フィルタが計測対象物を超えて適用されることになるため、計測結果に偽形状を生じさせる恐れがある。一方で、注目画素の画像輝度値と、計測対象物５１上の画素の画像輝度値の変化量は大きくなる。同様に注目画素の画像輝度値と、計測対象物５３上の画素の画像輝度値の変化量も大きくなる。従って、本発明のエッジ保存平滑化フィルタ決定フローを用いると、エッジ保存平滑化フィルタは、図１２（ｆ）に示すように注目画素から左上側の画素のみを平滑化フィルタ算出対象画素とするものとして決定される。つまり、計測対象物５２の範囲内でのみ平滑化フィルタが適用されることになるため、物体の境界を越えて平滑化フィルタが適用されることはなく、計測結果に偽形状が発生することを抑制できる。
【００７５】
エッジ保存平滑化フィルタと呼ばれる平滑化フィルタであれば上述した方法以外の方法も本発明に適用することができる。例えばｋ最近平均化フィルタ、バイラテラルフィルタを用いることができる。ｋ最近平均化フィルタとは、注目画素の画像輝度値に対し、注目画素の近傍領域の中で、近い輝度値をもつ画素を一定個数選択し、その選択された画素の画像輝度値の平均値を出力とする。バイラテラルフィルタとは、着目画素と周辺画素の画像輝度値の差に応じて、ガウス分布に従う重みを付けた平均化を行うフィルタである。
【００７６】
以下、通常のエッジ保存平滑化フィルタと本発明のエッジ保存平滑化フィルタの違いについて述べる。通常のエッジ保存平滑化フィルタでは、フィルタを決定する画像と、フィルタを適用する画像は同一である。本発明は、フィルタを決定する画像（第２の撮像画像）とフィルタを適用する画像（第１の撮像画像）が異なる点に特徴がある。平滑化フィルタを適用する画像は計測用のパターン画像である。
【００７７】
アクティブ方式の３次元計測においては、濃度変化を含む計測用パターン光を計測対象物に投影する。前述したように計測対象物の境界の段差に起因する画像中のエッジは、反射光量分布の変化により発生する。しかし、計測用パターン光が投影された状況下で、エッジ保存平滑化フィルタを求めようとすると、計測パターン光の濃度変化も含まれるため、計測対象物の反射光量分布に起因する変化を適切に求めることは困難となる。本発明では略均一な照明が照射された測定対象物の画像をもとにエッジ保存平滑化フィルタを求め、そこで求めたエッジ保存平滑化フィルタを計測用パターン光が投影された対象物の撮影画像に適用する。このようにすることで、計測用パターン光の濃度変化の影響を受けずに平滑化フィルタを決定することができる。
【００７８】
Ｓ２０２の平滑化フィルタ適用処理は平滑化フィルタ適用部３４で実施される。図７に第１の実施形態の平滑化フィルタ適用フローのフロー図を示す。
【００７９】
Ｓ７０１では、平滑化フィルタ適用部３４は、制御変数ｊを１に設定する。
【００８０】
Ｓ７０２では、平滑化フィルタ適用部３４は、平滑化対象をｊ枚目のパターン画像に設定する。
【００８１】
Ｓ７０３では、平滑化フィルタ適用部３４は、画像座標のｙ座標値を１に設定する。
【００８２】
Ｓ７０４では、平滑化フィルタ適用部３４は、画像座標のｘ座標値を１に設定する。
【００８３】
Ｓ７０５では、平滑化フィルタ適用部３４は、画像座標（ｘ、ｙ）における平滑化フィルタを取得する。画素ごとの平滑化フィルタは、平滑化フィルタ決定部３３で決定され、パラメータ記憶部３６に格納されている。
【００８４】
Ｓ７０６では、平滑化フィルタ適用部３４は、Ｓ７０５で取得した平滑化フィルタに基づき、画像座標（ｘ、ｙ）における平滑化処理が実施される。画像座標（ｘ、ｙ）の画像輝度値と、周辺画素の画像輝度値とが平滑化フィルタのカーネル値に基づき積和演算される。
【００８５】
Ｓ７０７では、平滑化フィルタ適用部３４は、ｘが横方向の画像サイズであるＷに到達したかを判定する。ｘ＜Ｗが成立する、すなわち、ｘがＷに到達していない場合、Ｓ７０８に進み、平滑化フィルタ適用部３４は、ｘに１を加算する。ｘがＷに到達している場合には、Ｓ７０９に進む。
【００８６】
Ｓ７０９では、平滑化フィルタ適用部３４は、ｙが縦方向の画像サイズであるＨに到達したかを判定する。ｙ＜Ｈが成立する、すなわち、ｙがＨに到達していない場合、Ｓ７１０に進み、ｙに１を加算する。ｙがＨに到達している場合には、Ｓ７１１に進む。
【００８７】
Ｓ７１１では、平滑化フィルタ適用部３４は、ｊ枚目の画像全画素に対して平滑化フィルタの適用を終了する。続いて、Ｓ７１２に進む。
【００８８】
Ｓ７１２では、平滑化フィルタ適用部３４は、全パターン画像に対して平滑化フィルタの適用が終了したかの判定を行う。終了していない場合、Ｓ７１３に進みｊに１を加算し、次の画像に平滑化フィルタを適用する。全パターン画像に対する処理が終了した場合、処理を終了する。
【００８９】
以上が平滑化フィルタ適用処理Ｓ２０２のフローである。
【００９０】
第１の実施形態では、略均一照明が照射された計測対象物の撮影画像をもとに、エッジ保存平滑化フィルタを決定し、その平滑化フィルタを計測用パターン光が投射された撮影画像に適用する。これにより、物体と物体との境界を含まない範囲で平滑化処理を実施することができるため、ノイズを低減することと、計測結果に偽形状を生じさせないことの両立が可能になるため、高精度な距離計測を実現できる。
【００９１】
第１の実施形態では、空間符号化法に適用する例を述べたが、前述したように本発明が適用できる計測手法は空間符号化法に限られるものではない。
【００９２】
位相シフト法では投影パターンの強度を正弦波状に変調し、位相を変えながら複数枚のパターン光を投光する。例えばπ／２ずつ位相を変える場合には、４枚のパターンが投影される。複数枚のパターン光を撮影した画像から画素ごとに、輝度を正弦波近似し、位相を算出する。この位相の情報をもとに距離計測を行う。このとき、ＳＮが悪いと正弦波近似誤差が大きくなるため、算出される位相に誤差が発生し、距離計測結果にも誤りを生じる。
【００９３】
位相シフト法に本発明を適用する場合、この正弦波状に強度変調された投影パターンを撮影した画像にエッジ保存平滑化フィルタを適用する。画素ごとに同じフィルタが適用されるので、位相の計算に悪影響はなく、かつ、ノイズ低減を実現できる。
【００９４】
（第２の実施形態）。
【００９５】
第２の実施形態にかかる形状計測装置の基本構成概略図は図１に示した第１の実施形態と同様であるが、平滑化フィルタ決定部３３の処理に違いがある。
【００９６】
第２の実施形態の平滑化フィルタ決定部３３では、略均一な照明が照射された対象物の画像の画像輝度値をもとに計測用のパターン画像に適用する平滑化フィルタのサイズを決定する。
【００９７】
一般に画像輝度値が低いほどＳＮは低い。すなわち、画像輝度値が低いエリアほどより強いノイズ低減処理を適用する必要があるため、平滑化フィルタのサイズを大きくすることが求められる。逆に画像輝度が高いエリアではＳＮも高い。そのため、サイズの平滑化フィルタでも十分なノイズ低減効果が得られる。逆にＳＮが高いエリアで大きな平滑化フィルタをかけることは偽形状を生じさせる原因ともなりうる。
【００９８】
すなわち、第２の実施形態では、画像輝度値の絶対値に基づき、平滑化フィルタのサイズを変更する。
【００９９】
図８に平滑化フィルタを決定する処理のフローチャートを示す。
【０１００】
Ｓ８０１、Ｓ８０２、Ｓ８０３は第１の実施形態のＳ６０１、Ｓ６０２、Ｓ６０３と同様であるため、説明は割愛する。
【０１０１】
Ｓ８２０では、平滑化フィルタ決定部３３は、Ｓ８０３で取得した画像座標（ｘ、ｙ）における画像輝度値Ｉｂに基づきＦｘとＦｙを決定する。前述したようにＩｂが大きいほどＳＮは高いのでＦｘ、Ｆｙを小さくする。Ｉｂが小さいほどＦｘ、Ｆｙを大きくする。ＦｘとＦｙが決定されると、Ｓ６１５に進む。
【０１０２】
Ｓ８１５では、平滑化フィルタ決定部３３は、Ｓ８２０で決定されたＦｘとＦｙをもとに画像座標（ｘ、ｙ）における平滑化フィルタを決定し、パラメータ記憶部３６に格納する。パラメータ記憶部への格納が終了すると、Ｓ８１６に進む。
【０１０３】
Ｓ８１６〜Ｓ８１９は第１の実施形態のＳ６１６〜Ｓ６１９と同様であるため、詳しい説明は割愛するが、画像をラスタスキャンしながら平滑化フィルタを決定していくので、画像の全画素における平滑化フィルタが決定される。
【０１０４】
以上が、第２の実施形態の平滑化フィルタを決定するフローである。
【０１０５】
上記では、説明の簡略化のためにフィルタの形状を矩形形状として説明したが、本発明が有効なフィルタ形状は矩形形状に限らない。例えば、矩形形状の頂点付近の画素を除外してもよいし、フィルタ形状を略円形形状としても構わない。
【０１０６】
また、均一照明画像の画像輝度値をもとに平滑化フィルタのサイズを決定する例を説明したが、全点灯画像と全消灯画像の差分値から算出されるパターン光強度値をもとに平滑化フィルタのサイズを決定してもよい。この場合、パターン光強度が高い領域はＳＮが高いので、平滑化フィルタのサイズを小さくする。パターン光強度が低い領域はＳＮが低いので、平滑化フィルタのサイズを大きくする。
【０１０７】
さらに、全消灯画像の画像輝度値は、環境光成分を表わす。環境光成分は、ノイズをバイアス的に増加させるため、環境光成分をフィルタのサイズを決定する要素として、加えるとより効果的にフィルタサイズを決定できる。
【０１０８】
第２の実施形態においても、略均一画像の画像輝度値の大小にもとづき、平滑化フィルタのサイズが決定されるので、ノイズを低減することと、計測結果に偽形状を生じさせないことの両立が可能になる。
【０１０９】
（第３の実施形態）
第３の実施形態にかかる形状計測装置の基本構成概略図は図１に示した第１の実施形態と同様であるが、平滑化フィルタ決定部３３による処理に違いがある。
【０１１０】
第３の実施形態の平滑化フィルタ決定部３３では、略均一な照明が照射された対象物の画像の注目画素の画像輝度をもとに平滑化フィルタのサイズを決定し、さらに周辺画素の画像輝度値からエッジ保存平滑化フィルタを求める。
【０１１１】
図９に平滑化フィルタを決定する処理のフローチャートを示す。図７で説明した第２の実施形態のフローとの差異はＳ９２０が追加されている点である。
【０１１２】
Ｓ９０３で取得した画像座標（ｘ、ｙ）における画像輝度値Ｉｂに応じて、Ｓ９２０で、平滑化フィルタのサイズに関するパラメータであるＦｘとＦｙを決定する。
【０１１３】
第２の実施形態で述べたように、画像輝度値の絶対値が高い画素においては、ＳＮが高いためエッジ保存平滑化フィルタを決定するための探索範囲に相当するＦｘとＦｙを小さくすることができる。そのため、平滑化フィルタを決定する際の処理手順を省略することができる。処理手順の省略により、第１の実施形態に比べて高速に平滑化フィルタを決定することができる。
【０１１４】
以上が第３の実施形態のエッジ保存平滑化フィルタを決定するフローである。
【０１１５】
第３の実施形態においても、略均一画像の画像輝度値の大小にもとづき、平滑化フィルタのサイズが決定されるので、ノイズを低減することと、計測結果に偽形状を生じさせないことの両立が可能になる。さらにエッジ保存平滑化フィルタの決定処理の処理時間短縮も実現できる。
【０１１６】
（第４の実施形態）投影パターン画像の周期に応じて適用する平滑化フィルタのサイズを変更。
【０１１７】
第４の実施形態にかかる形状計測装置の基本構成概略図は図１に示した第１の実施形態と同様であるが、平滑化フィルタ決定部３３と平滑化フィルタ適用部３４の処理に違いがある。
【０１１８】
第１の実施形態から第３の実施形態では、平滑化フィルタ決定部３３で決定された平滑化フィルタは、計測用パターン光の有する縞パターンの周期に依らず一定であった。平滑化フィルタのサイズが、縞パターンの明暗の１周期よりも大きい場合、パターン光のコントラストは著しく低下する。そこで、第４の実施形態では、平滑化フィルタのサイズが計測用パターン光の有する縞パターンの周期に対して、大きい場合に、縞パターンの周期に合わせて平滑化フィルタのサイズを縮小する。具体的には計測用パターン光の画像上での縞パターン１周期に相当するサイズを平滑化フィルタサイズの上限値とする。
【０１１９】
平滑化フィルタ決定部３３においては、縞パターンの周期に応じて、平滑化フィルタを複数決定する。一般に、計測用パターン光の縞の方向は縦方向か、横方向のいずれかである。縞パターンが画像中で縦方向の場合、横方向の平滑化フィルタのサイズに上限値を設ける。逆に縞パターンが画像中で横方向の場合、縦方向の平滑化フィルタのサイズに上限値を設ける。
【０１２０】
式で表現すると縞の方向が縦方向の場合以下の式（２）、縞の方向が横方向の場合以下の式（３）である
２×Ｆｘ＋１＝Ｔ・・・式（２）
２×Ｆｙ＋１＝Ｔ・・・式（３）
式（２）と式（３）を変形すると、以下の式（４）、式（５）となる。
【０１２１】
Ｆｘ＝（Ｔ−１）／２・・・式（４）
Ｆｙ＝（Ｔ−１）／２・・・式（５）
図１０に平滑化フィルタを決定する処理のフローチャートを示す。図９で説明した第３の実施形態のフローとの差異はＳ１０２１が追加されたこと、Ｓ１０１５の処理がＳ９０１５から変更されたことの２点である。フローの説明はこの２点のみ行い、他の部分については割愛する。
【０１２２】
Ｓ１０２１では前述のように計測用パターン光の周期Ｔと縞の方向に基づき、式（４）と式（５）を用いてＦｘとＦｙの上限値を設定する。
【０１２３】
Ｓ１０１５では、計測用パターン光の周期によって平滑化フィルタが異なるので、平滑化フィルタの情報を周期ごとにパラメータ記憶部に格納する。
【０１２４】
以上が、第４の実施形態のエッジ保存平滑化フィルタを決定するフローである。
【０１２５】
なお、計測用パターン光の周期Ｔが、ＦｘとＦｙの初期値から決まるフィルタサイズ（２×Ｆｘ＋１）×（２×Ｆｙ＋１）に対して、十分大きい場合には、適用される平滑化フィルタのサイズは一定サイズとなる。計測用パターン光の周期Ｔがフィルタサイズに対して小さい下位ビットの投影パターンのときのみ、平滑化フィルタを複数求めればよい。
【０１２６】
続いて第４の実施形態の平滑化フィルタ適用部３４の説明を行う。
【０１２７】
図１１に第４の実施形態の平滑化フィルタ適用処理のフローを示す。図７に示した第１の実施形態との違いは、Ｓ１１１４が追加されている点と、Ｓ１１０５の処理がＳ７０５から変更されている点の２点である。
【０１２８】
第４の実施形態の平滑化フィルタ決定部では、計測用パターン光画像の周期Ｔによって平滑化フィルタを変更している。そのため、Ｓ１１１４ではｊ枚目のパターン画像の周期Ｔを取得しておく。そして、Ｓ１１０５で画像座標（ｘ、ｙ）と取得した周期Ｔに基づいて、パラメータ記憶部から平滑化フィルタを取得する。Ｓ１１０６では取得した平滑化フィルタに基づき平滑化フィルタを適用する。
【０１２９】
以上が第４の実施形態の平滑化フィルタ適用処理のフローである。
【０１３０】
第４の実施形態では、空間符号化法に適用する例を述べたが、位相シフト法にも適用できる。位相シフト法の場合、正弦波状のパターン光の撮影画像上での１周期に相当するサイズを、平滑化フィルタサイズの上限値とする。
【０１３１】
すなわち、投影するパターン光の１周期に相当するサイズを平滑化フィルタサイズの上限値とすることで、様々な投影パターン光を用いる３次元計測手法に適用できる。
【０１３２】
第４の実施形態を利用することで、計測用パターン光の周期Ｔが小さいケースにおいても投影パターン光の輝度波形のコントラスト低下を抑えた状態で、ノイズ低減を実施可能となる。
【０１３３】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。
【０１３４】
即ち、上述した各実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【０１３５】
このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記憶媒体は、本発明に含まれる。
【図１】
0006444233.tif 000002
【図２】
0006444233.tif 000003
【図３】
0006444233.tif 000004
【図４】
0006444233.tif 000005
【図５】
0006444233.tif 000006
【図６】
0006444233.tif 000007
【図７】
0006444233.tif 000008
【図８】
0006444233.tif 000009
【図９】
0006444233.tif 000010
【図１０】
0006444233.tif 000011
【図１１】
0006444233.tif 000012
【図１２】
0006444233.tif 000013
【図１３】
0006444233.tif 000014