(57)【要約】【課題】多重反射による測定誤差を排除する。【解決手段】撮像手段１０で撮像された複数の画像に基づいて、距離画像を生成可能な距離画像生成手段３２と、投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、第一投影パターンと縞の方向が異なる第二投影パターンを生成するためのパターン生成手段２２と、パターン生成手段２２で生成された第一投影パターンを、投光手段２０から投影して撮像手段１０で撮像した第一パターン投影画像に基づき、距離画像生成手段３２で生成された第一距離画像と、共通の投光手段２０から投影された第二投影パターンで得られた第二パターン投影画像に基づき生成された第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報を不正と判定する不正高さ判定手段３７とを備える。【選択図】図１
2015078935.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物の高さ情報を含む距離画像を取得すると共に、該距離画像に基づいて画像処理を行うことが可能な三次元画像処理装置であって、
後記撮像手段の光軸に対して斜め方向から、入射光を所定の縞状の投影パターンの構造化照明として投光するための投光手段と、
前記投光手段で投光され、検査対象物で反射された反射光を取得して複数のパターン投影画像を撮像するための撮像手段と、
前記撮像手段で撮像された複数の画像に基づいて、距離画像を生成可能な距離画像生成手段と、
投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、前記第一投影パターンと縞の方向が異なる第二投影パターンを生成するためのパターン生成手段と、
前記パターン生成手段で生成された第一投影パターンを、前記投光手段から投影して前記撮像手段で撮像した第一パターン投影画像に基づき、前記距離画像生成手段で生成された第一距離画像と、共通の投光手段から投影された第二投影パターンで得られた第二パターン投影画像に基づき生成された第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報を不正と判定する不正高さ判定手段と
を備えることを特徴とする三次元画像処理装置。
【請求項２】
請求項１に記載の三次元画像処理装置であって、
前記パターン生成手段が、第一投影パターンとして、縞の方向が鉛直方向及び水平方向に対して傾斜された投影パターンを生成するよう構成してなることを特徴とする三次元画像処理装置。
【請求項３】
請求項２に記載の三次元画像処理装置であって、
前記パターン生成手段が、第一投影パターンとして、縞の方向が鉛直方向から４５°傾斜された投影パターンを生成するよう構成してなることを特徴とする三次元画像処理装置。
【請求項４】
請求項１〜３のいずれか一に記載の三次元画像処理装置であって、
前記パターン生成手段が、第二投影パターンとして、第一投影パターンと対称な投影パターンを生成するよう構成してなることを特徴とする三次元画像処理装置。
【請求項５】
請求項１〜４のいずれか一に記載の三次元画像処理装置であって、
前記パターン生成手段が、デジタルマイクロミラーデバイスを備えることを特徴とする三次元画像処理装置。
【請求項６】
請求項５に記載の三次元画像処理装置であって、
前記デジタルマイクロミラーデバイスの各画素を構成するマイクロミラーが、平面視において矩形状であり、各マイクロミラーが菱形状に傾斜された姿勢で配置されてなることを特徴とする三次元画像処理装置。
【請求項７】
請求項１〜６のいずれか一に記載の三次元画像処理装置であって、
前記距離画像生成手段が、前記第一距離画像と第二距離画像とを、前記不正高さ判定手段で不正と判定された部位を除いて平均化した合成画像を生成可能に構成してなることを特徴とする三次元検査装置。
【請求項８】
請求項１〜７のいずれか一に記載の三次元画像処理装置であって、
前記不正高さ判定手段が、所定値以上の差が生じていると判定された部位に、不正情報とのフラグを埋め込むよう構成してなることを特徴とする三次元画像処理装置。
【請求項９】
請求項１〜８のいずれか一に記載の三次元画像処理装置であって、
前記不正高さ判定手段が、所定値以上の差が生じていると判定された部位を、計測不可な箇所と同様の扱いとしてなることを特徴とする三次元画像処理装置。
【請求項１０】
請求項１〜９のいずれか一に記載の三次元画像処理装置であって、
前記投光手段が、少なくとも位相シフト法と空間コード化法を用いて距離画像を得るための構造化照明を投光してなることを特徴とする三次元画像処理装置。
【請求項１１】
検査対象物の高さ情報を含む距離画像を取得し、該距離画像に基づいて画像処理を行う三次元画像処理方法であって、
構造化照明用の投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、前記第一投影パターンと縞の方向が異なる第二投影パターンを予め設定し、撮像手段の光軸に対して斜め方向から、入射光を前記第一投影パターンの構造化照明として投光手段から投光する工程と、
前記投光手段で投光され、検査対象物で反射された反射光を取得して第一パターン投影画像を前記撮像手段で撮像する工程と、
前記撮像手段で撮像された複数の画像に基づいて、第一距離画像を距離画像生成手段で生成する工程と、
撮像手段の光軸に対して前記第一投影パターンと同じ方向から、入射光を前記第二投影パターンの構造化照明として投光手段から投光する工程と、
前記投光手段で投光され、検査対象物で反射された反射光を取得して第二パターン投影画像を前記撮像手段で撮像する工程と、
前記撮像手段で撮像された複数の画像に基づいて、第二距離画像を距離画像生成手段で生成する工程と、
前記第一距離画像と第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報があれば、これを不正と判定する工程と
を含むことを特徴とする三次元画像処理方法。
【請求項１２】
検査対象物の高さ情報を含む距離画像を取得すると共に、該距離画像に基づいて画像処理を行うことが可能な三次元画像処理プログラムであって、
構造化照明用の投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、前記第一投影パターンと縞の方向が異なる第二投影パターンを予め設定するための投影パターン設定機能と、
撮像手段の光軸に対して斜め方向から、入射光を前記投影パターン設定機能で設定された第一投影パターン、第二投影パターンの構造化照明としてそれぞれ投光手段で投光し、検査対象物で反射された反射光を取得して撮像された第一パターン投影画像、第二パターン投影画像に基づいて、第一距離画像、第二距離画像をそれぞれ生成するための距離画像生成機能と、
前記第一距離画像と第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報があれば、これを不正と判定する不正高さ判定機能と
をコンピュータに実現させることを特徴とする三次元画像処理プログラム。
【請求項１３】
請求項１２に記載の三次元画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体又は記録した機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元画像処理装置、三次元画像処理方法、三次元画像処理プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器に関する。
【背景技術】
【０００２】
工場等数多くの生産現場では、人の目視に頼っていた検査を自動化・高速化する画像処理装置が導入されている。画像処理装置は、ベルトコンベア等の生産ラインを流れてくるワークをカメラによって撮像し、得られた画像データを用いて所定領域のエッジ検出や面積計算等の計測処理を実行する。そして、計測処理の処理結果に基づいて、ワークの欠け検出やアライメントマークの位置検出等の検査を行い、ワークの欠けや位置ずれの有無を判定する判定信号を出力する。このように、画像処理装置は、ＦＡセンサの一つとして利用されることがある。
【０００３】
ＦＡセンサとして用いられる画像処理装置が計測処理の対象とする画像は、主に、高さ情報を含まない輝度画像である。そのため、上述したワークの欠け検出についていえば、欠けた部分の二次元形状を安定的に検出することは得意であるが、傷の凹み具合等、輝度画像としては現れ難い三次元形状を安定的に検出することは困難である。例えば、検査時にワークを照らす照明の種類や照明方向を工夫して、傷の凹みに起因する陰影を検出して、間接的に三次元形状を検出することも考えられるが、輝度画像の中で常に明瞭な陰影が検出されるとは限らない。不明瞭な陰影が検出されたときに不良品を良品と誤って判定する誤判定を防ぐために、例えば判定閾値を安全側に偏らせると、良品を大量に不良品として判定し、歩留まりの悪化を招く虞がある。
【０００４】
そこで、カメラの受光光量に応じた濃淡値を画素値とする濃淡画像だけでなく、カメラとワークまでの距離に応じた濃淡値を画素値とすることで、高さを二次元的に表現した距離画像（例えば特許文献１参照）を用いた外観検査が考えられる。
【０００５】
三次元画像処理装置の一例を、図２３の模式図に示す。この三次元画像処理装置１９０は、受光素子等の撮像手段を備えたヘッド部１９１と、ヘッド部１９１と接続され、ヘッド部１９１で撮像した画像データを送られて、取得した画像データから距離画像を生成するコントローラ部１９２で構成される。
【０００６】
ここで三角測距の原理を、図２３に基づいて説明する。ヘッド部１９１は、投光部１１０から出射される入射光の光軸と、受光部１２０に入射する反射光の光軸（受光部１２０の光軸）との間の角度αが予め設定されている。ここでステージ１４０上にワークＷＫが載置されない場合には、投光部１１０から出射される入射光は、ワークＷＫの載置面の点Ｏにより反射され、受光部１２０に入射される。一方、ステージ１４０上にワークＷＫが載置される場合、投光部１１０から出射される入射光は、ワークＷＫの表面の点Ａにより反射され、反射光となって受光部１２０に入射される。そして点Ｏと点Ａとの間のＸ方向における距離ｄを測定し、この距離ｄに基づいてワークＷＫの表面の点Ａの高さｈを算出する。
【０００７】
上述した三角測距の計測原理を応用して、ワークＷＫの表面のすべての点の高さを算出することにより、ワークＷＫの三次元的な形状が測定される。パターン投影法はワークＷＫの表面のすべての点に入射光を照射するために、投光部１１０からは所定の構造化パターンに従って入射光が出射され、ワーク表面で反射した反射光を受光し、受光した複数のパターン画像に基づいてワークＷＫの三次元形状を効率よく測定する。
【０００８】
このようなパターン投影法には、位相シフト法や空間コード化法、マルチスリット法等が知られている。パターン投影法を用いた三次元計測処理によって、投影パターンを変化させて複数回の撮像をヘッド部で繰り返し、コントローラ部に送出する。コントローラ部では、ヘッド部から送られるパターン投影画像に基づいて演算を行い、ワークの高さ情報を有する距離画像を得ることができる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１２−２１９０９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
このようなカメラとプロジェクタの構成による、位相シフト法や空間コード化法を用いた３Ｄ計測では、図２４に示すような縞パターンが投影パターンＰＮとして投影される。しかしながら、パターン投影法では、多重反射が発生する箇所で、原理上不正な計測結果が生じてしまうという問題があった。特に、図２５に示すように、カメラから見て直立したワークＷＫの側面は、鏡面反射の影響で計測が不正となり、有効な結果と不正な結果が混在することで、後段の処理に影響を及ぼしてしまう。
【００１１】
しかしながら、鏡面反射は明瞭なパターンとして撮像されるため、光量不足の場合などと異なり、正常な測定結果と同様の明瞭な測定結果として表示されてしまい、異常な結果となっているのかどうかを判別することが従来は困難であり、本来とは異なる測定結果が得られてしまうという状態であった。
【００１２】
具体的には、図２６のように、ワークＷＫを載置するためのステージＳＴ上に置かれたワークＷＫＡ、ＷＫＢ、ＷＫＣに対して、撮像手段１０であるカメラと投光手段２０であるプロジェクタで撮像する例を考える。この場合、カメラから見たワークＷＫＡ、ＷＫＢ、ＷＫＣは、図２７のようになる。この状態で、図２４のような投影パターンＰＮ０をワークＷＫＡ、ＷＫＢ、ＷＫＣに投影すると、カメラで撮像される縞パターンは図２８のようになる。この内、ワークＷＫＢとワークＷＫＣを撮像した縞パターンは、図２９の拡大図のようになる。ここで、ワークＷＫＢとワークＷＫＣの側面は、図２５に示したように角度が急峻であるため底面のパターンが映り込むような状態、すなわち鏡面反射が生じる（図２９においては鏡面反射による鏡面パターンの映り込みを判り易く示すため、異物を表示させている）。この結果、鏡面反射が生じない状態で本来得られるべきパターンとは異なるパターンが得られることとなる。具体的には、図２７のワークに対して測定されるべき本来の距離画像は、図３０Ａのようになるべきところ、図２８のような縞パターンが撮像される結果、図３０Ｂのような不正な距離画像が測定されることとなる。なおこれらの図において、ワークの影になり高さの測定が不能な領域は黒塗りで示している。また、明るいほど（白に近いほど）高さが高い状態を表し、暗いほど高さが低い状態を表す。
【００１３】
図３０Ａと図３０Ｂを対比すれば明らかなとおり、ワークＷＫＡについては正常な高さが測定されている。一方ワークＷＫＢは、天面は鏡面反射が生じないので正しく測定されているものの、手前側の側面が、ステージＳＴの床面と同じ高さで連続するように、不正な高さ情報として演算されている。またワークＷＫＣについては、同じく天面は正しく測定されているものの、左下に面した側面が、ステージ床面よりもさらに下に潜るような不正な測定結果が得られている。
【００１４】
このような不正な結果が演算される理由は、鏡面反射が生じる結果、本来得られるべき投影パターンとは、異なる投影パターンが観測されて、三角測量による高さ計算が不正な結果となるためである。具体的には、ワークＷＫＢの場合は、図３１Ｃに示すように、ワークＷＫＢの側面に対して斜め方向からプロジェクタにより縞パターンが投影されるので、観測ポイントの視線との交点で高さ情報が取得される。このような縞パターンをワークＷＫＢに投影すると、本来の正常な投影パターンは図３１Ａのようになる。しかしながら鏡面反射が生じる結果、ステージ床面のパターンが側面に映り込み、図３１Ｂのような投影パターンとなる。例えば図３１Ａの側面上の観測ポイントＰ1に着目すると、本来３の縞が照射されるべきところ、実際には図３１Ｂのように２の縞が照射されているように見えてしまう。この結果、図３１ＣのようにワークＷＫＢの側面が、本来の高さである３の縞と観測ポイントの視線との交点でなく、２の縞との交点として高さ情報が検出される結果、ステージ床面と同じ高さとなって測定されることとなる。
【００１５】
またワークＷＫＣの場合は、図３２Ｃに示すように、ワークＷＫＣの側面に対して斜め方向からプロジェクタにより縞パターンが投影されるところ、本来の正常な投影パターンは図３２Ａのようになるべきところ、鏡面反射によって図３２Ｂのような投影パターンとなる。この例では、観測ポイントＰ2に着目すると、本来５の縞が照射されるべきところ、実際には図３２Ｂのように４の縞が照射されているように見える結果、図３２ＣのようにワークＷＫＣの側面が、本来の高さである５の縞と観測ポイントの視線との交点でなく、４の縞との交点として高さ情報が検出される結果、ステージ床面よりも更に低い高さとして測定されることとなる。
【００１６】
このように、鏡面反射が生じている部位では、正常な計測結果か、不正な計測結果かの区別がつかず、後段の処理で影響を受けてしまうという問題があった。
【００１７】
本発明は、従来のこのような問題点を解決するためになされたものである。本発明の主な目的は、多重反射による測定誤差を抑制可能な三次元画像処理装置、三次元画像処理方法、三次元画像処理プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を提供することにある。
【課題を解決するための手段及び発明の効果】
【００１８】
上記の目的を達成するために、本発明の第１の三次元画像処理装置によれば、検査対象物の高さ情報を含む距離画像を取得すると共に、該距離画像に基づいて画像処理を行うことが可能な三次元画像処理装置であって、後記撮像手段の光軸に対して斜め方向から、入射光を所定の縞状の投影パターンの構造化照明として投光するための投光手段と、前記投光手段で投光され、検査対象物で反射された反射光を取得して複数のパターン投影画像を撮像するための撮像手段と、前記撮像手段で撮像された複数の画像に基づいて、距離画像を生成可能な距離画像生成手段と、投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、前記第一投影パターンと縞の方向が異なる第二投影パターンを生成するためのパターン生成手段と、前記パターン生成手段で生成された第一投影パターンを、前記投光手段から投影して前記撮像手段で撮像した第一パターン投影画像に基づき、前記距離画像生成手段で生成された第一距離画像と、共通の投光手段から投影された第二投影パターンで得られた第二パターン投影画像に基づき生成された第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報を不正と判定する不正高さ判定手段とを備えることができる。上記構成により、従来は困難であった鏡面反射等により不正な高さ情報が生じている部位を検出することが可能となり、測定結果の信頼性を向上できる。
【００１９】
また、第２の三次元画像処理装置によれば、前記パターン生成手段が、第一投影パターンとして、縞の方向が鉛直方向及び水平方向に対して傾斜された投影パターンを生成するよう構成できる。
【００２０】
さらに、第３の三次元画像処理装置によれば、前記パターン生成手段が、第一投影パターンとして、縞の方向が鉛直方向から４５°傾斜された投影パターンを生成するよう構成できる。
【００２１】
さらにまた、第４の三次元画像処理装置によれば、前記パターン生成手段が、第二投影パターンとして、第一投影パターンと対称な投影パターンを生成するよう構成できる。
【００２２】
さらにまた、第５の三次元画像処理装置によれば、前記パターン生成手段が、デジタルマイクロミラーデバイスを備えることができる。
【００２３】
さらにまた、第６の三次元画像処理装置によれば、前記デジタルマイクロミラーデバイスの各画素を構成するマイクロミラーが、平面視において矩形状であり、各マイクロミラーが菱形状に傾斜された姿勢で配置できる。上記構成により、斜め方向に傾斜させた投影パターンを投影させる際、縞のがたつきを低減できる利点が得られる。
【００２４】
さらにまた、第７の三次元画像処理装置によれば、前記距離画像生成手段が、前記第一距離画像と第二距離画像とを、前記不正高さ判定手段で不正と判定された部位を除いて平均化した合成画像を生成可能に構成できる。上記構成により、不正な高さ情報を含む部位を排除しつつも、他の領域の測定精度については一層向上させた距離画像を生成できるという利点が得られる。
【００２５】
さらにまた、第８の三次元画像処理装置によれば、前記不正高さ判定手段が、所定値以上の差が生じていると判定された部位に、不正情報とのフラグを埋め込むよう構成できる。上記構成により、高さ情報を利用した演算を行うに際して、不正な値となる部位を容易に特定でき、不正な結果に影響されない処理が可能となる。
【００２６】
さらにまた、第９の三次元画像処理装置によれば、前記不正高さ判定手段が、所定値以上の差が生じていると判定された部位を、計測不可な箇所と同様の扱いとできる。上記構成により、高さ情報を利用した演算を行うに際して、不正な値となる部位を、影により、位相シフトのコントラストが低く計測不可な箇所等と同様の扱いにすることができる。
【００２７】
さらにまた、第１０の三次元画像処理装置によれば、前記投光手段が、少なくとも位相シフト法と空間コード化法を用いて距離画像を得るための構造化照明を投光できる。
【００２８】
さらにまた、第１１の三次元画像処理方法によれば、検査対象物の高さ情報を含む距離画像を取得し、該距離画像に基づいて画像処理を行う三次元画像処理方法であって、構造化照明用の投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、前記第一投影パターンと縞の方向が異なる第二投影パターンを予め設定し、撮像手段の光軸に対して斜め方向から、入射光を前記第一投影パターンの構造化照明として投光手段から投光する工程と、前記投光手段で投光され、検査対象物で反射された反射光を取得して第一パターン投影画像を前記撮像手段で撮像する工程と、前記撮像手段で撮像された複数の画像に基づいて、第一距離画像を距離画像生成手段で生成する工程と、撮像手段の光軸に対して前記第一投影パターンと同じ方向から、入射光を前記第二投影パターンの構造化照明として投光手段から投光する工程と、前記投光手段で投光され、検査対象物で反射された反射光を取得して第二パターン投影画像を前記撮像手段で撮像する工程と、前記撮像手段で撮像された複数の画像に基づいて、第二距離画像を距離画像生成手段で生成する工程と、前記第一距離画像と第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報があれば、これを不正と判定する工程とを含むことができる。これにより、従来は困難であった鏡面反射等により不正な高さ情報が生じている部位を検出することが可能となり、測定結果の信頼性を向上できる。
【００２９】
さらにまた、第１２の三次元画像処理方法によれば、検査対象物の高さ情報を含む距離画像を取得すると共に、該距離画像に基づいて画像処理を行うことが可能な三次元画像処理プログラムであって、構造化照明用の投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、前記第一投影パターンと縞の方向が異なる第二投影パターンを予め設定するための投影パターン設定機能と、撮像手段の光軸に対して斜め方向から、入射光を前記投影パターン設定機能で設定された第一投影パターン、第二投影パターンの構造化照明としてそれぞれ投光手段で投光し、検査対象物で反射された反射光を取得して撮像された第一パターン投影画像、第二パターン投影画像に基づいて、第一距離画像、第二距離画像をそれぞれ生成するための距離画像生成機能と、前記第一距離画像と第二距離画像とで、検査対象物の対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報があれば、これを不正と判定する不正高さ判定機能とをコンピュータに実現させることができる。上記構成により、従来は困難であった鏡面反射等により不正な高さ情報が生じている部位を検出することが可能となり、測定結果の信頼性を向上できる。
【００３０】
さらにまた、第１３の側面に係るコンピュータで読み取り可能な記録媒体又は記憶した機器は、上記三次元画像処理プログラムを格納するものである。記録媒体には、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷやフレキシブルディスク、磁気テープ、ＭＯ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒ、ＤＶＤ＋Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、Ｂｌｕ−ｒａｙ（登録商標）、ＨＤ  ＤＶＤ（ＡＯＤ）等の磁気ディスク、光ディスク、光磁気ディスク、半導体メモリその他のプログラムを格納可能な媒体が含まれる。またプログラムには、上記記録媒体に格納されて配布されるものの他、インターネット等のネットワーク回線を通じてダウンロードによって配布される形態のものも含まれる。さらに記憶した機器には、上記プログラムがソフトウェアやファームウェア等の形態で実行可能な状態に実装された汎用もしくは専用機器を含む。さらにまたプログラムに含まれる各処理や機能は、コンピュータで実行可能なプログラムソフトウエアにより実行してもよいし、各部の処理を所定のゲートアレイ（ＦＰＧＡ、ＡＳＩＣ）等のハードウエア、又はプログラムソフトウエアとハードウェアの一部の要素を実現する部分的ハードウエアモジュールとが混在する形式で実現してもよい。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態に係る画像処理装置を含む三次元画像処理システムのシステム構成例を示す図である。
【図２】本発明の変形例に係る三次元画像処理システムのシステム構成例を示す図である。
【図３】本発明の実施の形態２に係る三次元画像処理装置のハードウェア構成を示す模式図である。
【図４】図４Ａは本発明の実施の形態３に係る三次元画像処理装置のヘッド部、図４Ｂは実施の形態４に係る三次元画像処理装置のヘッド部をそれぞれ示す模式図である。
【図５】本発明の実施の形態３に係る三次元画像処理装置を示すブロック図である。
【図６】マイクロミラーを菱形状に配置したＤＭＤを示す平面図である。
【図７】図６のＤＭＤを構成するマイクロミラーを示す拡大平面図である。
【図８】マイクロミラーを碁盤目状に配置したＤＭＤを示す平面図である。
【図９】図５のコントローラ部を示すブロック図である。
【図１０】本実施形態に係る画像処理装置の処理動作を示すフローチャートである。
【図１１】本発明の一実施例に係る三次元画像処理を示すブロック図である。
【図１２】第一投影パターンを示すイメージ図である。
【図１３】第二投影パターンを示すイメージ図である。
【図１４】不正高さ判定を実行する手順を示すフローチャートである。
【図１５】図１５Ａは、図２７のワークに対する第一投影パターン画像を示すイメージ図、図１５Ｂは、第二投影パターン画像を示すイメージ図である。
【図１６】図１６Ａは、図２７のワークに対する第二投影パターン画像を示すイメージ図、図１６Ｂは、第二投影パターン画像を示すイメージ図である。
【図１７】図１７Ａは図２７のワークの本来の距離画像、図１７Ｂは第一投影パターン画像から得られた距離画像、図１７Ｃは第二投影パターン画像から得られた距離画像、それぞれ示すイメージ図である。
【図１８】図１８ＡはワークＷＫＢの本来の第一投影パターン画像、図１８Ｂは鏡面反射によって得られた第一投影パターン画像、図１８Ｃは測定される高さ情報を示す模式図である。
【図１９】図１９ＡはワークＷＫＢの本来の第二投影パターン画像、図１９Ｂは鏡面反射によって得られた第二投影パターン画像、図１９Ｃは測定される高さ情報を示す模式図である。
【図２０】図２０ＡはワークＷＫＣの本来の第一投影パターン画像、図２０Ｂは鏡面反射によって得られた第一投影パターン画像、図２０Ｃは測定される高さ情報を示す模式図である。
【図２１】図２１ＡはワークＷＫＣの本来の第二投影パターン画像、図２１Ｂは鏡面反射によって得られた第二投影パターン画像、図２１Ｃは測定される高さ情報を示す模式図である。
【図２２】図２２Ａは図２７のワークの第一距離画像、図２２Ｂは第二距離画像、図２２Ｃは図２２Ａ、図２２Ｂから高さ情報の不正な領域を抽出した画像、図２２Ｄは図２２Ａ、図２２Ｂから図２２Ｃを除外して平均化した合成距離画像を、それぞれ示すイメージ図である。
【図２３】三角測距方式で距離画像を撮像する様子を示す模式図である。
【図２４】縞パターンの一例を示すイメージ図である。
【図２５】ワークの角度が急峻な部位を観測する様子を示す模式図である。
【図２６】ワークとカメラ、プロジェクタの位置関係を示す模式図である。
【図２７】図２６のカメラからワークを見た状態を示す模式図である。
【図２８】図２７のワークに図２４の投影パターンを投影して得られる投影パターン画像を示すイメージ図である。
【図２９】図２８の投影パターン画像のワークＷＫＢ、ＷＫＣ部分を示す拡大図である。
【図３０】図３０Ａは、図２７のワークに対して本来得られるべき距離画像、図３０Ｂは鏡面反射によって得られた不正な距離画像をそれぞれ示すイメージ図である。
【図３１】図３１Ａは、図２７のワークＷＫＢに対する正常な投影パターン、図３１ＢはワークＷＫＢに対して鏡面反射が生じた投影パターン、図３１Ｃは測定される高さ情報を示す模式図である。
【図３２】図３２Ａは、図２７のワークＷＫＣに対する正常な投影パターン、図３２ＢはワークＷＫＣに対して鏡面反射が生じた投影パターン、図３２Ｃは測定される高さ情報を示す模式図である。
【発明を実施するための形態】
【００３２】
以下、本発明の実施の形態を図面に基づいて説明する。ただし、以下に示す実施の形態は、本発明の技術思想を具体化するための三次元画像処理装置、三次元画像処理装置の状態変化判定方法、三次元画像処理装置の状態変化判定プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を例示するものであって、本発明は三次元画像処理装置、三次元画像処理装置の状態変化判定方法、三次元画像処理装置の状態変化判定プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を以下のものに特定しない。また、本明細書は特許請求の範囲に示される部材を、実施の形態の部材に特定するものでは決してない。特に実施の形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一もしくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
【００３３】
また本明細書において「距離画像（高さ画像）」という場合には、高さ情報を含む画像の意味で使用し、例えば距離画像に光学的な輝度画像をテクスチャ情報として貼り付けた三次元の合成画像も、距離画像に含む意味で使用する。また、本明細書において距離画像の表示形態は二次元状に表示されるものに限られず、三次元状に表示されるものも含む。
（実施の形態１）
【００３４】
本発明の実施の形態１に係る三次元画像処理装置の構成を図１に示す。この三次元画像処理装置１００は、ヘッド部１と、コントローラ部２とを備える。ヘッド部１は、検査対象物（ワーク）ＷＫを照らす投光手段２０と、ワークＷＫの画像を撮像する撮像手段１０と、コントローラ部２と接続するためのヘッド側通信手段３６を備える。
【００３５】
一方コントローラ部２は、撮像された画像に基づいて、エッジ検出や面積計算等の計測処理を実行する。またコントローラ部２には、液晶パネル等の表示手段４、ユーザが表示手段４上で各種操作するためのコンソール等の入力手段３、ＰＬＣ（Programmable Logic Controller）等を着脱自在に接続できる。
【００３６】
以上の三次元画像処理装置１００は、ヘッド部１の投光手段２０でワークＷＫに測定光を投光し、測定光がワークＷＫに入射されて反射された反射光を、撮像手段１０でパターン投影画像として撮像する。またパターン投影画像に基づいて距離画像を生成し、さらにこの距離画像を、各画素が有する高さ情報を輝度に置き換えた低階調距離画像に変換する。コントローラ部２は、変換された低階調距離画像に基づいて、エッジ検出や面積計算等の計測処理を実行する。
【００３７】
なお検査対象物であるワークＷＫは、例えばライン上を順次搬送される物品であり、移動又は静止している。また移動するワークは、コンベア等による平行移動の他、回転するものも含まれる。
（投光手段２０）
【００３８】
投光手段２０は、距離画像を生成するためにワークＷＫを照らす照明として用いられる。したがって投光手段２０は、距離画像を取得するためのパターン投影法に応じて、例えばワークに正弦波縞模様パターンを投影するためのパターン投影器等とすることができる。また投光手段以外に、明視野照明や暗視野照明を行うための一般的な照明装置を別途設けてもよい。あるいは投光手段２０に、一般的な照明装置としての機能を持たせることも可能である。
【００３９】
コントローラ部２は、ヘッド部１から取得した距離画像データを用いて画像処理を実行し、外部接続されたＰＬＣ７０等の制御機器に対し、ワークの良否等の判定結果を示す信号として判定信号を出力する。
【００４０】
撮像手段１０は、ＰＬＣ７０から入力される制御信号、例えば撮像手段１０から画像データを取り込むタイミングを規定する撮像トリガ信号に基づいて、ワークの撮像を行う。
【００４１】
表示手段４は、ワークを撮像して得られた画像データや、その画像データを用いた計測処理の結果を表示するための表示装置である。一般に、ユーザは、表示手段４を視認することによって、コントローラ部２の動作状態を確認することができる。入力手段３は、表示手段４上でフォーカス位置を移動させたり、メニュー項目を選択したりするための入力装置である。なお、表示手段４にタッチパネルを使用する場合は、表示手段と入力手段を兼用できる。
【００４２】
またコントローラ部２は、コントローラ部２の制御プログラムを生成するためのパーソナルコンピュータＰＣを接続することもできる。またパーソナルコンピュータＰＣには、三次元画像処理に関する設定を行う三次元画像処理プログラムをインストールして、コントローラ部２で行う処理の各種設定を行うこともできる。あるいは、このパーソナルコンピュータＰＣ上で動作するソフトウェアによって、画像処理の処理順序を規定する処理順序プログラムを生成することができる。コントローラ部２では、その処理順序に沿って各画像処理が順次実行される。パーソナルコンピュータＰＣとコントローラ部２とは、通信ネットワークを介して接続されており、パーソナルコンピュータＰＣ上で生成された処理順序プログラムは、例えば表示手段４の表示態様を規定するレイアウト情報等と共に、コントローラ部２に転送される。また逆に、コントローラ部２から処理順序プログラムやレイアウト情報等を取り込んで、パーソナルコンピュータＰＣ上で編集することもできる。なお、この処理順序プログラムは、パーソナルコンピュータＰＣだけでなく、コントローラ部２においても生成できるようにしてもよい。
（変形例）
【００４３】
なお、以上の例ではコントローラ部２として専用のハードウェアを構築しているが、本発明はこの構成に限定されるものでない。例えば図２に示す変形例に係る三次元画像処理装置１００’のように、汎用のパーソナルコンピュータやワークステーション等に専用の検査プログラムや三次元画像処理プログラムをインストールしたものをコントローラ部２’として機能させ、ヘッド部１に接続して利用することもできる。この三次元画像処理装置は、三次元画像処理プログラムで画像処理等、必要な設定を行った上で、ヘッド部１で撮像されたパターン投影画像に従って低階調距離画像を画像処理して、必要な検査を行う。
（ヘッド側通信手段３６）
【００４４】
また、これに応じてヘッド部１側に、ヘッド側通信手段３６として、専用のコントローラ部２や、コントローラ部２として機能するパーソナルコンピュータのいずれにも接続できるようなインターフェースを設けることもできる。例えばヘッド部１に、ヘッド側通信手段３６として、図１に示すようにコントローラ部２と接続するためのコントローラ接続用インターフェース３６Ａを設けたり、あるいは図２に示すように、パーソナルコンピュータと接続するためのＰＣ接続用インターフェース３６Ｂを設ける。またこのようなインターフェースをユニット式に交換可能とすることで、ヘッド部の他の構成をある程度共通化して、共通のヘッド部でコントローラ部やパーソナルコンピュータのいずれにも接続可能とできる。あるいは、専用のコントローラ部２と、パーソナルコンピュータのいずれにも接続可能なインターフェースを備えた一のヘッド側通信手段を設けてもよい。またこのようなインターフェースは、既存の通信規格、例えばイーサーネット（商品名）やＵＳＢ、ＲＳ−２３２Ｃ等が利用できる。また、必ずしも規格化された、あるいは汎用の通信方式によらず、専用の通信方式としてもよい。
（ＰＣ接続モード）
【００４５】
さらに三次元画像処理プログラムに、ヘッド部１に接続するコントローラ部２’としてパーソナルコンピュータを使用する場合の設定を行うＰＣ接続モードを備えることもできる。すなわちコントローラ部が専用ハードウェアであるか、パーソナルコンピュータであるかに応じて、設定可能な項目や設定内容を変化させることで、いずれの場合にも三次元画像処理に関する設定を適切に行うことが可能となる。さらに、コントローラ部２’として機能するパーソナルコンピュータに、ヘッド部１の動作確認用途、及び簡易的な計測機能を持たせたビューワプログラムをインストールして、接続されたヘッド部の動作や機能を確認できるようにしてもよい。
【００４６】
なお図１に示す撮像手段１０と投光手段２０を利用することで得られる「距離画像」とは、ワークＷＫを撮像する撮像手段１０から、ワークＷＫまでの距離に応じて各画素の濃淡値が変化する画像をいう。換言すれば、撮像手段１０からワークＷＫまでの距離に基づいて濃淡値が決定される画像ともいえるし、ワークＷＫまでの距離に応じた濃淡値を有する多値画像ともいえるし、或いはワークＷＫの高さに応じた濃淡値を有する多値画像ともいえる。さらに、輝度画像の画素ごとに、撮像手段１０からの距離を濃淡値に変換した多値画像ともいえる。
【００４７】
距離画像を生成する手法としては、大きく分けて２つの方式があり、一つは、通常の画像を得るための照明条件で撮像した画像を用いて距離画像を生成するパッシブ方式（受動計測方式）、もう一つは、高さ方向の計測をするための光を能動的に照射して距離画像を生成するアクティブ方式（能動計測方式）である。パッシブ方式の代表的な手法は、ステレオ計測法である。これは、撮像手段１０を２台以上用意し、これら２台以上のカメラを所定の位置関係で配置するだけで距離画像を生成できることから、輝度画像を生成するための一般的な画像処理システムを利用して距離画像を生成でき、システム構築コストを抑制することができる。
【００４８】
一方で、アクティブ方式の代表的な手法は、光切断法とパターン投影法である。光切断法は、上述したステレオ計測法において、一方のカメラを光投影器等の投光手段に置き換えて、ワークに対してライン状のレーザ光を投光し、物体表面の形状に応じたライン光の像の歪み具合からワークの三次元形状を復元する。光切断法は、対応点の決定が不要であるので安定した計測が可能である。しかし、１回の計測で１ライン分しか計測できないため、全画素の計測値を得ようとすると、対象物又はカメラを走査しなければならない。これに対し、パターン投影法は、ワークに投影された所定パターンの形状や位相等をずらして複数枚の画像を撮像し、撮像した複数枚の画像を解析することでワークの三次元形状を復元するものである。パターン投影法には幾つか種類があり、正弦波縞模様パターンの位相をずらして複数枚（最低３枚以上）の画像を撮像し、複数枚の画像から画素ごとに正弦波の位相を求め、求めた位相を利用してワーク表面上の三次元座標を求める位相シフト法や、２つの規則的なパターンが合成されるときに生じる一種の空間周波数のうねり現象を利用して三次元形状を復元するモアレポトグラフィ法、ワークに投影するパターン自体を撮影毎に異ならせ、例えば白黒デューティ比５０％で縞幅が画面半分、４分の１、８分の１、、、と細くなっていく縞パターンを順次投影し、それぞれのパターンにてパターン投影画像の撮影を行い、ワークの高さの絶対位相を求める空間コード化法、ワークに複数の細線状のパターン照明（マルチスリット）を投影し、スリット周期より狭いピッチでパターンを移動させ、複数回撮影を行うマルチスリット法等が代表的である。
【００４９】
本実施形態に係る三次元画像処理装置１００では、上述した位相シフト法と空間コード化法を組み合わせて距離画像を生成する。これにより、ワーク又はヘッドを相対的に動かすことなく、距離画像を生成することができる。
【００５０】
なお図１に示す撮像手段１０と投光手段２０の配置レイアウトは、ワークＷＫに対して斜め方向から投光し、ワークＷＫからの反射光をほぼ垂直な方向で受光できるよう、投光手段２０を斜めに、撮像手段１０を鉛直姿勢に保持するように配置している。このように投光方向と撮像方向とを一致させず、傾斜させることで、ワークＷＫの表面形状の凹凸に起因する陰影を捉えたパターン投影画像を撮像できる。
（実施の形態２）
【００５１】
ただ本発明は、この配置例に限定されるものでなく、例えば図３に示す実施の形態２に係る三次元画像処理装置２００のように、撮像手段１０側をワークＷＫに対して傾斜姿勢に、投光手段２０側を鉛直姿勢に保持する配置例としてもよい。このような配置のヘッド部１Ｂによっても、同様に投光方向と撮像方向とを傾斜させて、ワークＷＫの陰影を捉えたパターン投影画像を撮像できる。
（実施の形態３）
【００５２】
さらに、投光手段や撮像手段の一方又は両方を複数配置することもできる。例えば、実施の形態３として図４Ａに示す三次元画像処理装置３００のように、撮像手段１０をワークＷＫに対して鉛直姿勢に保持する一方、撮像手段１０を中心に２つの投光手段２０を両側に配置して、左右からそれぞれ投光するヘッド部１Ｃとして構成することもできる。このように投光の方向が異なるパターン投影画像をそれぞれ撮像することで、一方向からの投光ではワークＷＫ自体で陰影パターンが隠れてしまう等、パターン投影画像を部分的に撮像できない状態が生じて高さ計測が不正確又は不可能となる事態を低減できる。特に、ワークに対して相対する方向（例えば左右や前後）から投光するように投光手段２０を配置すれば、ワーク自体で遮られて撮像できない可能性を大幅に低減できる。
（実施の形態４）
【００５３】
また、以上の例では撮像手段を一台、投光手段を二台とする構成について説明したが、逆に撮像手段を二台、投光手段を一台とする構成とすることもできる。このような例を実施の形態４に係る三次元画像処理装置４００として図４Ｂに示す。この例に示すヘッド部１Ｄでは、投光手段２０をワークＷＫに対して鉛直姿勢に保持し、図においてその左右に撮像手段１０をそれぞれ、ワークＷＫに対して傾斜姿勢に配置させている。この構成でも、ワークＷＫを異なる傾斜角度から撮像できるので、実施の形態３と同様にパターン投影画像が部分的に撮像困難となる事態を抑制できる。またこの方法であれば、一回の投光で２枚のパターン投影画像を同時に撮像できるため、処理時間を短縮化できる利点も得られる。
【００５４】
その反面、２つの撮像手段で異なる角度から同じワークを撮像しても、撮像している部位や視野等が異なるため、各画素の位置を一致させる作業が必要となり、誤差も発生する可能性がある。これに対し、上述した実施の形態３によれば、撮像手段を共通化したことで、いずれの投光手段から測定光を投光しても、同一の視野の画像を撮像できるため、このような統合作業を不要とでき、また統合作業に伴う誤差の発生も回避して、処理を簡素化できる利点が得られる。
【００５５】
なお以上の例では、各ヘッド部において撮像手段１０と投光手段２０とを一体的に構成した例を説明したが、本発明はこの構成に限られない。例えば、撮像手段１０と投光手段２０とを別個の部材で構成したヘッド部とすること可能である。また撮像手段や投光手段を３以上設けることも可能である。
（ブロック図）
【００５６】
次に、本発明の実施の形態３に係る三次元画像処理装置３００の構成を示すブロック図を図５に示す。三次元画像処理装置３００は、図５に示すように、ヘッド部１と、コントローラ部２とを備える。
（ヘッド部１）
【００５７】
このヘッド部１は、投光手段２０と、撮像手段１０と、ヘッド側制御部３０と、ヘッド側演算部３１と、ヘッド側記憶手段３８と、ヘッド側通信手段３６等を備えている。投光手段２０は、測定光源２１、パターン生成手段２２及び複数のレンズ２３、２４、２５を含む。撮像手段１０は、図示しないがカメラ及び複数のレンズを含む。
（投光手段２０）
【００５８】
投光手段２０は、撮像手段の光軸に対して斜め方向から入射光を所定の投影パターンの構造化照明として投光するための部材である。この投光手段２０には、プロジェクタが利用でき、光学部材であるレンズやパターン生成手段２２等が含まれる。投光手段２０は、静止若しくは移動するワークの位置の斜め上方に配置される。なおヘッド部１は、複数の投光手段２０を含むこともできる。図５の例においては、ヘッド部１は２つの投光手段２０を含む。ここでは、第一の方向からワークに対して測定用照明光を照射可能な第一プロジェクタ２０Ａ（図５において右側）と、第一の方向とは異なる第二の方向からワークに対して測定用照明光を照射可能な第二プロジェクタ２０Ｂ（図５において左側）を、それぞれ配置している。第一プロジェクタ２０Ａ、第二プロジェクタ２０Ｂは撮像手段１０の光軸を挟んで対称に配置される。第一プロジェクタ２０Ａ、第二プロジェクタ２０Ｂからワークに対し、交互に測定光を投光して、それぞれの反射光のパターンを撮像手段１０で撮像する。
【００５９】
各第一プロジェクタ２０Ａ、第二プロジェクタ２０Ｂの測定光源２１は、例えば白色光を出射するハロゲンランプや白色光を出射する白色ＬＥＤ（発光ダイオード）等が利用できる。測定光源２１から出射された測定光は、レンズにより適切に集光された後、パターン生成手段２２に入射する。
【００６０】
さらに、距離画像を生成するためのパターン投影画像を取得する測定光を出射するための投光手段に加え、通常の光学画像（輝度画像）を撮像するための観察用照明光源を設けることもできる。観察用照明光源には、ＬＥＤの他、半導体レーザ（ＬＤ）やハロゲンライト、ＨＩＤ等を利用できる。特に撮像素子としてカラーで撮像可能な素子を用いた場合は、観察用照明光源に白色光源を利用できる。
【００６１】
測定光源２１から出射された測定光は、レンズ２３により適切に集光された後、パターン生成手段２２に入射する。パターン生成手段２２は、任意のパターンの照明を実現できる。例えば、白字に黒字、黒字に白字等、ワークや背景の色に応じてパターンを反転させ、見易い、あるいは測定し易い適切なパターンを表現できる。このようなパターン生成手段２２は、例えばＤＭＤ（デジタルマイクロミラーデバイス）が利用できる。ＤＭＤの一例を、図６に示す。この図に示すＤＭＤ３９は、画素毎に微小なミラー（マイクロミラーＭＣ）をＯＮ／ＯＦＦさせて任意のパターンを表現できる。これにより、白と黒を反転させたパターンを容易に照射できる。パターン生成手段２２にＤＭＤを用いることで、任意のパターンを容易に生成でき、機械的なパターンマスクの準備やその入れ替え作業を不要とできるので、装置の小型化と迅速な計測ができる利点がある。また、ＤＭＤを用いたパターン生成手段２２は、すべての画素をＯＮとする全照明パターンの照射によって、通常の照明と同様に利用できるので、輝度画像の撮像にも利用できる。
【００６２】
各マイクロミラーＭＣは、矩形状に形成される。図６のＤＭＤ３９の例では、マイクロミラーＭＣを菱形状に傾斜された姿勢で配置している。この結果、図７に示すように投影パターンを斜めの縞状に形成する際、投影パターンを構成する各ラインが綺麗に描画できるという利点を有する。逆に、図８に示すような碁盤目状にマイクロミラーＭＣ’を配置したＤＭＤ３９’の例では、斜めの投影パターンを描画する際に、各ラインがぎざぎざとなる。このため、後述するように斜め方向に傾斜させた投影パターンを投影させる場合は、図７のような傾斜配置型のＤＭＤを利用することで、縞のがたつきを低減できる。
【００６３】
なおパターン生成手段２２は、ＤＭＤに限らず、ＬＣＤ（液晶ディスプレイ）、ＬＣＯＳ（Liquid Crystal on Silicon：反射型液晶素子）又はマスクとすることもできる。パターン生成手段２２に入射した測定光は、予め設定されたパターン及び予め設定された強度（明るさ）に変換されて出射される。パターン生成手段２２により出射された測定光は、複数のレンズにより撮像手段１０の観察・測定可能な視野よりも大きい径を有する光に変換された後、ワークに照射される。
（撮像手段１０）
【００６４】
撮像手段１０は、投光手段２０で投光され、ワークＷＫで反射された反射光を取得して複数のパターン投影画像を撮像するためのカメラを備える。このようなカメラには、ＣＣＤやＣＭＯＳ等が利用できる。この例では高解像度の得られるモノクロＣＣＤカメラを利用している。なお、カラーで撮像可能なカメラを使用することも可能であることはいうまでも無い。また撮像手段は、パターン投影画像以外に、通常の輝度画像を撮像することも可能である。
【００６５】
ヘッド側制御部３０は、撮像手段１０及び投光手段２０である第一プロジェクタ２０Ａ、第二プロジェクタ２０Ｂを制御するための部材である。例えば、投光手段２０がワークに対して測定光を投光してパターン投影画像を得るための投光パターンの作成を、ヘッド部側制御部３０で行う。これによって撮像手段１０で、投光手段２０から位相シフト用の投影パターンを投影させて位相シフト画像を撮像させ、また投光手段２０から空間コード化用の投影パターンを投影させて空間コード画像を撮像させる。このようにヘッド側制御部３０は、撮像手段１０で位相シフト画像と空間コード画像を撮像するよう、投光手段を制御するための投光制御手段として機能する。
【００６６】
ヘッド側演算部３１は、フィルタ処理部３４と距離画像生成手段３２を含む。距離画像生成手段３２は、撮像手段１０で撮像された複数のパターン投影画像に基づいて、距離画像を生成する。
【００６７】
ヘッド側記憶手段３８は、各種設定や画像等を保持するための部材であり、半導体メモリやハードディスク等の記憶素子が利用できる。例えば、撮像手段１０で撮像されたパターン投影画像を保持するための輝度画像記憶部３８ｂ、及び距離画像生成手段３２で生成された距離画像を保持するための距離画像記憶部３８ａを含む。
【００６８】
ヘッド側通信手段３６は、コントローラ部２と通信を行うための部材である。ここではコントローラ部２のコントローラ側通信手段４２と接続されて、データ通信を行う。例えば、距離画像生成手段３２で生成された距離画像を、コントローラ部２に対して送出する。
（距離画像生成手段３２）
【００６９】
距離画像生成手段３２は、ワークＷＫを撮像する撮像手段１０からワークＷＫまでの距離に応じて各画素の濃淡値が変化する距離画像を生成する手段である。例えば、位相シフト法で距離画像を生成する場合は、ワークに対して正弦波縞模様パターンを位相ずらして投影するように、ヘッド側制御部３０が投光手段２０を制御し、それに応じて正弦波縞模様パターンの位相がずれた画像を複数枚撮像するように、ヘッド側制御部３０が撮像手段１０を制御する。そしてヘッド側制御部３０は、複数枚の画像から画素毎に正弦波の位相を求め、求めた位相を利用して距離画像を生成する。
【００７０】
また空間コード化法を用いて距離画像を生成する場合は、光が照射される空間を、多数の断面略扇状の小空間に分け、この小空間には一連の空間コード番号を付す。このため、ワークの高さが高くても、言い換えると高低差が大きくても、光が照射される空間内にあれば、空間コード番号から高さが演算できる。したがって、高さの高いワークについても全体にわたって形状を計測できる。この位相シフト方と空間コード法を組み合わせることで、高さの低い部分から高い部分まで精度良く三次元形状を計測することができる。
【００７１】
このようにしてヘッド部側で距離画像を生成し、コントローラ部側に送出することで、ヘッド部からコントローラ部側に送出すべきデータ量を低減でき、大量のデータ転送によって生じ得る処理の遅れを回避できる。
【００７２】
なお、本実施形態ではヘッド部１側で距離画像の生成処理を行うようにしているが、例えばコントローラ部２側で距離画像の生成処理を担うこともできる。また、距離画像から低階調距離画像への階調変換は、コントローラ部で行う他、ヘッド部側で行わせることもできる。この場合は、ヘッド側演算部３１が階調変換手段の機能を実現する。
（コントローラ部２）
【００７３】
またコントローラ部２は、コントローラ側通信手段４２と、コントローラ側制御部と、コントローラ側演算部と、コントローラ側記憶手段と、検査実行手段５０と、コントローラ側設定手段４１とを備えている。コントローラ側通信手段４２は、ヘッド部１のヘッド側通信手段３６と接続されてデータ通信を行う。コントローラ側制御部は、各部材の制御を行うための部材である。コントローラ側演算部は、画像処理部６０の機能を実現する。画像処理部６０は、画像サーチ手段６４や階調変換手段４６等の機能を実現する。
（階調変換手段）
【００７４】
階調変換手段４６は、距離画像に基づいて、高階調の距離画像を、低階調の低階調距離画像に階調変換する（詳細な手順については後述する）。これによって、ヘッド部で生成された高さ情報を有する距離画像を、既存の画像処理でも扱える低階調の濃淡画像として表現することで、計測処理や検査処理に資することができる。また、距離画像の生成処理と、階調変換処理とを、ヘッド部とコントローラ部とで分担して、負荷を分散できる利点も得られる。なお、ヘッド部側で距離画像の生成に加え、低階調距離画像の生成も行わせてもよい。このような処理はヘッド側演算部で行うことができる。これによって、コントローラ部側の負荷を一層軽減して、効率のよい運用が可能となる。
【００７５】
さらに階調変換手段は、距離画像のすべてを階調変換するのでなく、好ましくは、必要な部分のみを選択して、階調変換する。具体的には、予め検査対象領域設定手段（詳細は後述）で設定された検査対象領域と対応する部分のみを階調変換する。このようにすることで、多階調の距離画像を低階調の距離画像に変換する処理を、検査対象領域のみに限ることで階調変換に要する負荷を軽減できる。またこのことは処理時間の短縮化にも寄与する。すなわち、処理時間の短縮化を図ることで、ＦＡ用途の検査のような処理時間の限られた用途においても好適に利用でき、リアルタイム処理が実現される。
【００７６】
コントローラ側記憶手段は、各種設定や画像を保持するための部材であり、半導体記憶素子やハードディスク等が利用できる。
【００７７】
コントローラ側設定手段４１は、コントローラ部に対する各種設定を行うための部材であり、コントローラ部に接続されたコンソール等の入力手段３を介してユーザからの操作を受け付け、必要な条件等をコントローラ側に指示する。例えば、階調変換条件設定手段４３や基準面指定手段４４、空間コード化切替手段４５、間隔均等化処理設定手段４７、投光切替手段４８、シャッタースピード設定手段４９等の機能を実現する。
【００７８】
検査実行手段５０は、階調変換手段４６で階調変換された低階調距離画像に対して、所定の検査処理を実行する。
（ハードウェア構成）
【００７９】
次にコントローラ部２のハードウェア構成例を、図９のブロック図に示す。この図に示すコントローラ部２は、各種プログラムに基づき数値計算や情報処理を行うと共に、ハードウェア各部の制御を行う主制御部５１を有している。主制御部５１は、例えば、中央演算処理装置としてのＣＰＵと、主制御部５１が各種プログラムを実行する際のワークエリアとして機能するＲＡＭ等のワークメモリと、起動プログラムや初期化プログラム等が格納されたＲＯＭ，フラッシュＲＯＭ，又はＥＥＰＲＯＭ等のプログラムメモリとを有している。
【００８０】
またコントローラ部２は、撮像手段１０や投光手段２０等を含むヘッド部１と接続して、ワークに対して正弦波縞模様パターンを、位相をずらして投影するよう投光手段２０を制御し、撮像手段１０での撮像により得られた画像データを取り込むためのコントローラ側接続部５２と、入力手段３からの操作信号が入力される操作入力部５３と、液晶パネル等の表示手段４に対して画像を表示させる表示用ＤＳＰ等から構成される表示制御部５４と、外部のＰＬＣ７０やパーソナルコンピュータＰＣ等と通信可能に接続される通信部５５と、一時的なデータを保持するＲＡＭ５６と、設定内容を保存するコントローラ側記憶手段５７と、パーソナルコンピュータＰＣにインストールされた三次元画像処理プログラムで設定されたデータを保持するための補助記憶手段５８と、エッジ検出や面積計算等の計測処理を実行する演算用ＤＳＰ等から構成される画像処理部６０と、画像処理部６０での処理結果等に基づいて所定の検査を行った結果を出力するための出力部５９等を備えている。これらの各ハードウェアは、バス等の電気的な通信路（配線）を介し、通信可能に接続されている。
【００８１】
主制御部５１内のプログラムメモリには、コントローラ側接続部５２、操作入力部５３、表示制御部５４、通信部５５、及び画像処理部６０の各部を、ＣＰＵのコマンド等により制御するための制御プログラムが格納されている。また、上述した処理順序プログラム、すなわちパーソナルコンピュータＰＣにおいて生成され、パーソナルコンピュータＰＣから転送された処理順序プログラムは、プログラムメモリに格納される。
【００８２】
通信部５５は、外部のＰＬＣ７０に接続されたセンサ（光電センサ等）でトリガ入力があったときに、ＰＬＣ７０から撮像トリガ信号を受信するインターフェース（Ｉ／Ｆ）として機能する。また、パーソナルコンピュータＰＣから転送されてくる三次元画像処理プログラムや表示手段４の表示態様を規定するレイアウト情報等を受信するインターフェース（Ｉ／Ｆ）としても機能する。
【００８３】
主制御部５１のＣＰＵは、通信部５５を介してＰＬＣ７０から撮像トリガ信号を受信すると、コントローラ側接続部５２に対して撮像指令（コマンド）を送る。また、処理順序プログラムに基づいて、画像処理部６０に対して、実行すべき画像処理を指示するコマンドを送信する。なお、撮像トリガ信号を生成する装置として、ＰＬＣ７０ではなく、光電センサ等のトリガ入力用のセンサを、通信部５５に直接接続するように構成してもよい。
【００８４】
操作入力部５３は、ユーザの操作に基づき入力手段３からの操作信号を受信するインターフェース（Ｉ／Ｆ）として機能する。表示手段４には、入力手段３を用いたユーザの操作内容が表示される。例えば入力手段３にコンソールを用いる場合は、表示手段４上に表示されるカーソルを上下左右に移動させる十字キー、決定ボタン、又はキャンセルボタン等の各部品を配置できる。これらの各部品を操作することによって、ユーザは表示手段４上で、画像処理の処理順序を規定するフローチャートを作成したり、各画像処理のパラメータ値を編集したり、基準領域の設定をしたり、基準登録画像を編集したりすることができる。
【００８５】
コントローラ側接続部５２は、画像データの取り込みを行う。具体的には、例えばＣＰＵから撮像手段１０の撮像指令を受信すると、撮像手段１０に対して画像データ取り込み信号を送信する。そして、撮像手段１０で撮像が行われた後、撮像して得られた画像データを取り込む。取り込んだ画像データは、一旦バッファリング（キャッシュ）され、予め用意しておいた画像変数に代入される。なお、「画像変数」とは、数値を扱う通常の変数と異なり、対応する画像処理ユニットの入力画像として割り付けることで、計測処理や画像表示の参照先となる変数をいう。
【００８６】
画像処理部６０は、画像データに対する計測処理を実行する。具体的には、まずコントローラ側接続部５２が上述した画像変数を参照しつつ、フレームバッファから画像データを読み出して、画像処理部６０内のメモリへ内部転送を行う。そして、画像処理部６０は、そのメモリに記憶された画像データを読み出して、計測処理を実行する。また画像処理部６０には、階調変換手段４６、異常点ハイライト手段６２、画像サーチ手段６４等が含まれる。
【００８７】
表示制御部５４は、ＣＰＵから送られてきた表示指令（表示コマンド）に基づいて、表示手段４に対して所定画像（映像）を表示させるための制御信号を送信する。例えば、計測処理前又は計測処理後の画像データを表示するために、表示手段４に対して制御信号を送信する。また、表示制御部５４は、入力手段３を用いたユーザの操作内容を表示手段４に表示させるための制御信号も送信する。
【００８８】
以上のようなハードウェアで構成されたヘッド部１やコントローラ部２は、各種プログラム等によって、図５の各手段や機能をソフトウェア的に実現可能な構成としている。この例では、図１のコンピュータに、三次元画像処理プログラムをインストールして、三次元画像処理に必要な設定を行う態様を採用している。
（階調変換）
【００８９】
以上の三次元画像処理装置は、ワークの距離画像を取得し、この距離画像に対して画像処理を行い、この結果に対して検査を行う。本実施の形態における三次元画像処理装置は、距離画像の画素値である高さ情報をそのまま用いて演算を行う高さ検査処理に加えて、既存のハードウェアを用いて面積やエッジ等の情報を用いた演算を行う画像検査処理の、２種類の検査を実施することができる。ここで、高さ検査処理の精度を維持するためには、多階調な距離画像を生成する必要がある。一方、既存のハードウェアではこのような多階調な距離画像に画像検査処理を実施することはできない。そのため、既存のハードウェアを用いて画像検査処理を行うために、多階調な距離画像に階調変換を施し、低階調距離画像を生成する。
【００９０】
しかしながら、多階調の距離画像の高さ情報を、そのまま低階調の距離画像に変換したのでは、高さ情報の精度が損なわれるという問題がある。ＦＡ用途等で利用される一般的な画像は、モノクロで各画素の濃淡値を８階調で表現した画像が多い。これに対して距離画像は、１６階調画像のような高階調の画像が用いられている。このため、多階調の距離画像を低階調距離画像に階調変換する際に、高さ情報が相当量損なわれることとなり、検査の精度に影響を与える。かといって、精度を高めるために既存の画像処理で扱う画像の階調数を上げるには導入コストが高騰するとともに、処理負荷が高くなり、利用に対するハードルが高くなる。
【００９１】
そこで、このような階調変換に際して、必要な高さ情報が維持されるような階調変換の条件を設定することが必要となる。以下、その方法及び手順について詳述する。
（高さ検査又は画像検査）
【００９２】
まず、三次元画像処理装置を用いて高さ検査処理を行う処理動作を、図１０のフローチャートに基づいて説明する。この三次元画像処理装置は、計算処理を行うためのツールとして、距離画像に対して高さ検査を行う高さ検査処理ツールと、既存の輝度画像に対して画像検査を行う各種の画像検査処理ツールとを備えている。ここでは、高さ検査処理について説明する。
【００９３】
最初に、距離画像を生成する（ステップＳ７１）。具体的には、距離画像生成手段３２が、撮像手段１０と投光手段２０とを用いて距離画像を生成する。次いで、所望の計算処理を選択する（ステップＳ７２）。ここでは、計算処理に必要なツールを選択する。
【００９４】
画像検査処理ツールを選択する場合は、ステップＳ７３に進み、上記ステップＳ７１で得られた高階調の距離画像に対して、階調変換処理を行い、低階調の距離画像に変換する。これによって、既存の画像処理装置が備えている検査処理ツールでも、低階調距離画像を扱えるようになる。なお、階調変換処理は、高階調の距離画像の全域に対して行うのでなく、好ましくは画像検査処理のために設定された検査対象領域内でのみ行う。
【００９５】
一方、高さ検査ツールを選択する場合は、多階調距離画像が有する高さ情報をそのまま利用するため、階調変換を行うことなく、ステップＳ７４に進む。
【００９６】
さらに、検査実行手段５０が、各種計算処理を行い（ステップＳ７４）、次いでこの計算結果に基づいて、ワークが良品であるか否かを判定する（ステップＳ７５）。判定信号出力手段１６０は、検査実行手段５０によってワークが良品であると判定された場合には（ステップＳ７５：ＹＥＳ）、判定信号としてＯＫ信号をＰＬＣ７０に出力し（ステップＳ７６）、検査実行手段５０によってワークが良品でない、すなわち不良品であると判定された場合には（ステップＳ７５：ＮＯ）、判定信号としてＮＧ信号をＰＬＣ７０に出力する（ステップＳ７７）。
（不正高さ判定機能）
【００９７】
さらに三次元画像処理装置は、ワークに対して投影パターンを照射し、パターン投影画像を撮像する際に、多重反射によってワークの本来の高さ情報とは異なる、不正な値が検出されたことを検出する不正高さ判定機能を備える。このような三次元画像処理装置の例を、図１１のブロック図に示す。この図に示す三次元画像処理装置は、投光手段２０と、撮像手段１０と、これら投光手段２０と撮像手段１０とを制御するヘッド側制御部と、ヘッド側演算部とを備えている。ヘッド側演算部は、距離画像生成手段３２と、不正高さ判定手段３７とを備えている。距離画像生成手段３２は、位相シフト法と空間コード化法を組み合わせることで、高い精度でもって比較的短時間で、高さ情報を備える距離画像を得ることができる。パターン生成手段２２は、投影パターンの縞の方向を変化させた複数の投影パターンとして、第一投影パターンと、第一投影パターンと縞の方向が異なる第二投影パターンを生成する。不正高さ判定手段３７は、パターン生成手段２２で生成された第一投影パターンを、投光手段２０から投影して撮像手段１０で撮像した第一パターン投影画像に基づき、距離画像生成手段３２で生成された第一距離画像と、共通の投光手段２０から投影された第二投影パターンで得られた第二パターン投影画像に基づき生成された第二距離画像とで、ワークＷＫの対応する部位の高さ情報を比較して、所定値以上の差が生じている部位の高さ情報を不正と判定する。
【００９８】
このように、同一の投光手段２０から異なる投影パターンを投影し、その高さ情報を演算することで、正常な結果であればいずれの投影パターンでも同じ高さ情報が得られるのに対し、多重反射、例えば鏡面反射が発生している場合は、投影パターンによって異なる高さ情報が得られる。そこで、各投影パターンで演算された高さ情報を比較することで、顕著な差が見られる部位が存在する場合には、当該部位において多重反射が発生し、正確な他差情報が得られていないことが判定できる。このようにして、従来は困難であった鏡面反射等による不正な測定結果が生じていることを検出し、さらに発生している部位も特定できるようになり、測定結果の信頼性を向上できる利点が得られる。
（パターン生成手段２２）
【００９９】
第一投影パターンと第二投影パターンは、同じ投光手段２０すなわち光源から投影して、投影パターン画像を撮像する。なお、演算処理を低減するために、二種類の投影パターンを投影することが好ましいが、三種類以上の投影パターンを投影して、各投影パターン画像から得られた高さ情報を比較する構成とすることもできる。ただし、投影パターンが多いと、投影パターンの照射、投影パターン画像の撮像、高さ情報の演算に要する時間が長くなる。
【０１００】
ここで、パターン生成手段２２が生成する投影パターンの例として、第一投影パターンＰＮ１を図１２に、第二投影パターンＰＮ２を図１３に、それぞれ示す。この例では、第一投影パターンＰＮ１は、図２４に示す従来の投影パターンＰＮ０と比較して、垂直方向に対し＋４５°傾斜させている。一方第二投影パターンＰＮ２は、−４５°傾斜させている。このような傾斜させた投影パターンの描画には、上述した図６、図７のように菱形状にマイクロミラーを配置したＤＭＤが好適に利用できる。なお、第一投影パターン、第二投影パターンの傾斜角度は、傾斜されておれば足り、逆にいえば垂直又は水平のパターン以外であれば機能し、傾斜角度は問わない。ただ、上述の通り±４５°の傾斜パターンであれば、菱形状にマイクロミラーを配置したＤＭＤによって綺麗な縞パターンを構成しやすいという利点が得られる。また、第一投影パターンと第二投影パターンは、好ましくは線対称のパターンとする。
【０１０１】
次に、図１２、図１３の投影パターンを利用して、図２６、図２７に示すようなワークＷＫＡ、ＷＫＢ、ＷＫＣを撮像して、不正高さ判定を行う手順を、以下図１４のフローチャートに基づいて説明する。まず、ステップＳ１４０１において、ワークに対して第一投影パターンの方向に沿った位相シフト法、空間コード化法のパターンを複数照射し、第一投影パターン画像群を撮像する。ここでは、図２６に示すように、ワークＷＫＡ、ＷＫＢ、ＷＫＣに対して、投光手段２０から第一投影パターンを照射して、撮像手段１０で第一投影パターン画像を撮像する。得られた第一投影パターン画像の例を、図１５Ａ、図１５Ｂに示す。この図において、ワークＷＫＢとワークＷＫＣの側面においては、図１５Ｂの拡大図において矢印で示すように、鏡面反射が発生していることが確認できる。
【０１０２】
次にステップＳ１４０２において、同じ投光手段２０から、今度は第二投影パターンの方向に沿った位相シフト法、空間コード化法のパターンを複数照射して、第二投影パターン画像群を撮像する。得られた第二投影パターン画像の例を、図１６Ａ、図１６Ｂに示す。ここでも図１６Ｂの拡大図に示すように、ワークＷＫＢとワークＷＫＣの側面において鏡面反射が発生していることが確認できる。なお図１５Ａ、図１５Ｂの第一投影パターン画像と比較すると、当然ながら縞模様が異なっている。
【０１０３】
さらにステップＳ１４０３において、第一投影パターン画像群、第二投影パターン画像群から、それぞれ高さ情報を含む第一距離画像、第二距離画像を距離画像生成手段３２にて生成する。この結果、ワークの各部位の高さ情報が得られる。なお、この例では第一投影パターン画像群、第二投影パターン画像群の撮像後に第一距離画像、第二距離画像を生成しているが、先に第一投影パターン画像群を撮像して第一距離画像を生成した後、第二投影パターン画像群を撮像して第二距離画像を生成することもできる。
【０１０４】
得られた高さ情報を、ワークのイメージとして図１７Ａ、図１７Ｂ、図１７Ｃに示す。この図において、図１７Ａはワーク本来の高さを、図１７Ｂは第一投影パターン画像から得られた高さを、図１７Ｃは第二投影パターン画像から得られた高さを、それぞれ示している。これらを対比すれば明らかなとおり、ワークＷＫＢの側面とワークＷＫＣの側面では、不正な高さが検出されており、他の部位では正常な高さ情報が検出されていることが判る。具体的には、図１７Ｂに示す第一投影パターン画像から演算された高さ情報によれば、ワークＷＫＢの側面は、図１７Ａに示す実際の高さと近い結果が得られているものの、ワークＷＫＣの側面は、ワークを載置したステージＳＴと同じ高さで連続しているという不正な結果となっている。一方、図１７Ｃに示す第二投影パターン画像から演算された高さ情報によれば、ワークＷＫＢの側面、ワークＷＫＣの側面とも、ステージＳＴよりも更に下方に潜る不正な結果を示している。
【０１０５】
このように、同じワークに対して同じ方向（光源）から捉えた投影パターン画像が、鏡面反射の結果として、異なる結果を生じた理由は、以下に示すとおり、投影パターンの方向に違いによって、観測される投影パターンの変化に違いが生じた結果、三角測量による距離の演算が異なる結果となったものである。この様子を、図１８Ａ〜図２０Ｃに基づいて順次説明する。まず、＋４５°に傾斜させた第一投影パターンを照射して、ワークＷＫＢの側面の高さ情報を得る様子を、図１８Ａ〜図１８Ｃに示す。ワークＷＫＢの側面に対し、図１８Ｃのように第一投影パターンを照射し、撮像手段１０で撮像すると、本来であれば図１８Ａに示すような投影パターン画像が得られる。しかしながら、鏡面反射によって実際は図１８Ｂに示すような投影パターン画像が撮像される。ここで、測定ポイントＰ3における高さ情報に着目すると、本来であれば２の縞が照射されるので、図１８Ｃにおいて２の縞と、撮像手段１０から延びる観測ポイントへの視線との交点の高さが得られる。実際は図１８Ｂに示すように、鏡面反射によってステージＳＴに照射された照射パターンが鏡面状に複写されているが、図１８Ａの本来のパターンと近いパターンとなっているので、得られる高さの差も小さく、大きな誤差は生じていない。
【０１０６】
一方、同じワークＷＫＢの側面に対して異なる投影パターン、ここでは−４５°に傾斜させた第二投影パターンを照射して高さ情報を得る様子を、図１９Ａ〜図１９Ｃに示す。この状態では、鏡面反射の結果、図１９Ａに示すように本来得られるべき投影パターン画像とは大きく異なった投影パターン画像が、図１９Ｂのように撮像されている。この結果、観測ポイントＰ4における高さ情報は、本来であれば図１９Ａに示すように２の縞によって演算されるべきところ、実際は図１９Ｂに示すように隣の１の縞によって演算されており、この結果図１９Ｃに示すように、本体の高さとは異なり、ステージＳＴよりも低い高さとして演算されている。このような高さの測定結果に誤りが生じる原因は、位相シフト法や空間コード化法等のパターン投影法では、それぞれの投影パターンで位相をずらしながら所定回数のパターン投影を行っているところ、得られた複数の投影パターン画像から演算される各画素の位相が鏡面反射によりずれることが原因で、測定結果にずれが発生するためである。
【０１０７】
さらに、ワークＷＫＣの側面の高さについても検討すると、まず第一投影パターンを照射したワークＷＫＣの側面の高さ情報を得る様子を、図２０Ａ〜図２０Ｃに示す。ここでは、鏡面反射の結果、図２０Ａに示すように本来得られるべき投影パターン画像とは異なる、図２０Ｂのよう投影パターン画像が撮像されている。この結果、観測ポイントＰ5における高さ情報は、本来であれば図２０Ａに示すように６の縞によって演算されるべきところ、実際は図２０Ｂに示すように５の縞によって演算されており、この結果図２０Ｃに示すように、本体の高さである６の縞と観測ポイントの視点との交点よりも低い高さ（５の縞との交点はステージの高さ）として演算されている。
【０１０８】
一方、第二投影パターンを照射したワークＷＫＣの側面の高さ情報を得る様子を、図２１Ａ〜図２１Ｃに示す。ここでも鏡面反射の結果、図２１Ａに示す本来の投影パターン画像とは異なる、図２１Ｂのよう投影パターン画像が撮像されている。この結果、観測ポイントＰ6における高さ情報は、本来であれば図２１Ａに示すように５の縞によって演算されるべきところ、実際は図２１Ｂに示すように４の縞によって演算されており、この結果図２１Ｃに示すように、本体の高さである５の縞と観測ポイントの視点との交点よりも低い高さ（４の縞との交点はステージの高さよりも低い）として演算されている。
【０１０９】
このように、鏡面反射による影響の現れ方が、投影パターンによって異なるため、鏡面反射が生じている部位についてのみ、高さ情報の演算結果が異なるという状態が生じている。逆に、投影パターンを変化させると、多重反射が生じている部位においては異なる高さ情報が得られるという性質を利用することで、多重反射の発生を検出できる。すなわち、第一距離画像と第二距離画像の、対応部位における高さ情報を比較し、所定の閾値以上の差異が生じている部位は高さ情報が不正であると、不正高さ判定手段３７でもって判断する。具体的には、図１４に戻って説明すると、まずステップＳ１４０４において初期位置へ移動し、ステップＳ１４０５において、移動された位置における第一距離画像と第二距離画像の高さ情報を、それぞれ抽出して比較し、その差分が所定の閾値以上であるか否かを、不正高さ判定手段３７が判定する。そして閾値以上の差分が検出された場合は、ステップＳ１４０６に進み、不正であると出力する。ここでは、当該画素に対して、不正であることを示すフラグを書き込み、ステップＳ１４０７に進む。一方、差分が閾値よりも小さい場合は、ステップＳ１４０６を経ることなくステップＳ１４０７に進み、すべての位置で判定処理が終了したか否かを判定し、未だの場合はステップＳ１４０８に進み、位置すなわち画素を移動させた上で、ステップＳ１４０５に戻り、処理を繰り返す。そしてすべての画素に対して判定処理が終了した場合は、処理を終了する。
【０１１０】
なお、この例では高さ情報の比較を画素毎に、すべての画素に対して行っているが、この例に限らず、例えば数画素単位で比較することにより処理を簡素化したり、高さ情報の比較を行う領域、具体的にはワークの存在する領域を、予めユーザに指定させたり、あるいは画像処理で自動的に対象領域を設定させるなどして、高さ情報を比較する処理を簡素化することもできる。
【０１１１】
このようにして、付加的な部材を用いることなく、既存の設備を利用しながら、簡単な演算によって不正な高さ情報を排除することができ、高い信頼性を持った三次元の情報のみでもって計測や判定を行える利点が得られる。
【０１１２】
なお不正高さ判定手段３７は、高さ情報の不正を検出すると、当該部位の高さ情報として、不正な値であることを示すフラグを記録する。これにより、当該距離画像を用いた演算を行う際は、フラグを有する部位の演算を行わないなどして、不正な結果に影響されない処理が可能となる。また、このような不正な高さ情報となった部位の扱いについては、例えば投影パターンの照射で影が生じた部位や、位相シフトのコントラストが低く計測不可な部位などと同様の扱いとすることもできる。
【０１１３】
さらに、不正な値を含む演算が指定された場合は、ユーザに対して高さ情報が不正であることを告知するなどして、再設定を促したり、演算を中止したり、あるいは不正な情報であることを前提に演算を続行するなど、用途や目的に応じて処理を進めることができ、信頼性が低い情報であることを知らずに演算等を行う事態を回避して、測定結果の信憑性を維持できる。
【０１１４】
その一方で、２枚の距離画像を生成することから、不正でないと判定された部位については、２つの計測結果を平均化することで、高さ情報の一層の高精度化を図ることも可能となる。例えば図２２Ａに示すように、第一距離画像と、図２２Ｂに示す第二距離画像とを比較し、高さ情報に閾値以上の差分の生じている不正な箇所ＥＡを図２２Ｃのように抽出して排除し、残りの部分を平均化して、図２２Ｄに示すような合成高さ画像を生成する。これによって、正しい計測結果と不正な計測結果の混在を回避し、後段の処理で不正な結果による悪影響を抑制できる。加えて、２枚の距離画像の平均化によって測定誤差も抑制して、高さ情報の測定精度を更に向上できる。
【０１１５】
実施の形態３に基づく本実施例では、図４Ａに示すように２つの投光手段２０Ａ、２０Ｂを持つが、上述の説明は、このうち片方（例えば左側から投光する投光手段２０Ｂ）の投光手段を用いた説明を記載した。同様の処理を、もう片方（例えば右側から投光する投光手段２０Ａ）の投光手段を用いて処理することができる。これにより、１つの投光手段によって不正箇所を排除して得られた高精度な平均化距離画像と、もう片方の投光手段によって、別角度から得られた高精度な平均化距離画像の、２つの距離画像を生成することができる。（内部的には、各投光手段で第一、第二投影パターンをそれぞれ投光するため、計４種類の距離画像を生成することになる。）１つの撮像手段と１つの投光手段により、１つの計測系を構築することができるため、２つの投光手段を持つ本実施例では、２つの計測系を構築することができる。この２つの異なる計測系で得られた高精度な平均化距離画像同士をさらに合成することで、投光によって影になってしまう部分を穴埋めした、高精度な距離画像を生成することができる。
【０１１６】
なお、この合成は、以下に記載する順番で行っても良い。まず第一投影パターンを用いて、各計測系間の合成を行い、その後第二投影パターンを用いて各計測系間の合成を行う。最後に、得られた２つの合成画像同士を比較し、高さ情報に閾値以上の差分を生じている不正な箇所を排除し、残りの部分を平均化して高精度な距離画像を生成する。あるいは、投光系毎に第一投影パターン、第二投影パターンを用いて合成を行い、その後各投光系で得られた合成画像同士を比較し、同様に高さ情報に閾値以上の差分を生じている不正な箇所を排除して残りの部分を平均化し高精度な距離画像を生成することもできる。このように合成する手順を変えても、不正箇所を排除して残りの部分を高精度化する、同様の効果を得ることができる。
【産業上の利用可能性】
【０１１７】
本発明の三次元画像処理装置、三次元画像処理方法、三次元画像処理プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器は、三角測距の原理を利用した検査装置等に利用できる。
【符号の説明】
【０１１８】
１００、１００’、２００、３００、４００…三次元画像処理装置
１、１Ｂ、１Ｃ、１Ｄ…ヘッド部
２、２’…コントローラ部
３…入力手段
４…表示手段
１０、１０Ａ、１０Ｂ…撮像手段
２０…投光手段；２０Ａ…第一プロジェクタ；２０Ｂ…第二プロジェクタ
２１…測定光源
２２…パターン生成手段
２３、２４、２５…レンズ
３０…ヘッド側制御部
３１…ヘッド側演算部
３２…距離画像生成手段
３４…フィルタ処理部
３６…ヘッド側通信手段；３６Ａ…コントローラ接続用インターフェース；３６Ｂ…ＰＣ接続用インターフェース
３７…不正高さ判定手段
３８…ヘッド側記憶手段；３８ａ…距離画像記憶部；３８ｂ…輝度画像記憶部
３９、３９’…ＤＭＤ
４１…コントローラ側設定手段
４２…コントローラ側通信手段
４３…階調変換条件設定手段
４４…基準面指定手段
４５…空間コード化切替手段
４６…階調変換手段
４７…間隔均等化処理設定手段
４８…投光切替手段
４９…シャッタースピード設定手段
５０…検査実行手段
５１…主制御部
５２…コントローラ側接続部
５３…操作入力部
５４…表示制御部
５５…通信部
５６…ＲＡＭ
５７…コントローラ側記憶手段
５８…補助記憶手段
５９…出力部
６０…画像処理部
６２…異常点ハイライト手段
６４…画像サーチ手段
６６…リアルタイム更新手段
７０…ＰＬＣ
１１０…投光部
１２０…受光部
１４０…ステージ
１９０…三次元画像処理装置
１９１…ヘッド部
１９２…コントローラ部
ＷＫ、ＷＫＡ、ＷＫＢ、ＷＫＣ…ワーク
ＳＴ…ステージ
ＰＣ…パーソナルコンピュータ
ＭＣ、ＭＣ’…マイクロミラー
ＰＮ０…投影パターン
ＰＮ１…第一投影パターン
ＰＮ２…第二投影パターン
ＥＡ…不正な箇所
【図１】
2015078935.tif 000003
【図２】
2015078935.tif 000004
【図３】
2015078935.tif 000005
【図４】
2015078935.tif 000006
【図５】
2015078935.tif 000007
【図６】
2015078935.tif 000008
【図７】
2015078935.tif 000009
【図８】
2015078935.tif 000010
【図９】
2015078935.tif 000011
【図１０】
2015078935.tif 000012
【図１１】
2015078935.tif 000013
【図１４】
2015078935.tif 000014
【図２３】
2015078935.tif 000015
【図２５】
2015078935.tif 000016
【図２６】
2015078935.tif 000017
【図２７】
2015078935.tif 000018
【図１２】
2015078935.tif 000019
【図１３】
2015078935.tif 000020
【図１５】
2015078935.tif 000021
【図１６】
2015078935.tif 000022
【図１７】
2015078935.tif 000023
【図１８】
2015078935.tif 000024
【図１９】
2015078935.tif 000025
【図２０】
2015078935.tif 000026
【図２１】
2015078935.tif 000027
【図２２】
2015078935.tif 000028
【図２４】
2015078935.tif 000029
【図２８】
2015078935.tif 000030
【図２９】
2015078935.tif 000031
【図３０】
2015078935.tif 000032
【図３１】
2015078935.tif 000033
【図３２】
2015078935.tif 000034