(57)【特許請求の範囲】
【請求項１】
互いに異なる相対分光分布を有する単一波長の光を発光する複数の光源を有し、被写体に前記複数の光源が発光する照明光を実質的に同時に照射する照明部と、
前記複数の光源から照射された複数の前記照明光に対して前記被写体が放出した光を撮像する撮像部と、
前記撮像部の各色の感度特性に関する情報を記憶するメモリと、
前記撮像部の前記各色の感度特性に関する情報を用いて、前記撮像部により撮像された撮像画像を、前記単一波長の成分毎の第１画像、第２画像および第３画像を含む複数の単一波長画像に分離する演算部と、
前記複数の単一波長画像から選択された前記第１画像と前記第２画像とを用いて、前記被写体の特定部位の情報を検出する検出部と、
前記複数の単一波長画像から選択された前記第１画像と前記第３画像とを用いて、前記検出部が検出した前記特定部位に存在する特徴的な部分に相当する画像特徴量を抽出する判断部と、を備えた、
外観検査装置。
【請求項２】
前記検出部は、前記第１画像と前記第２画像とに対して、同じ位置にあたる画素値を用いて、画素毎に比を算出し、算出した比を元の画素の位置の画素値とする画像を生成し、生成した画像の画素毎の値を、所定の閾値を使って二値化し、前記特定部位と前記特定部位でない部位の二値画像を生成し、
前記判断部は、前記第１画像と前記第３画像とに対して、同じ位置にあたる画素値を用いて、画素毎に比を算出し、算出した比を元の画素の位置の画素値とする特徴候補画像を生成し、前記二値画像の前記特定部位をマスク画像として前記特徴候補画像から、前記特定部位に存在する特徴的な部分を抽出する、
請求項１に記載の外観検査装置。
【請求項３】
前記第１画像は、前記特定部位と前記特定部位でない部位の反射光強度の差が最も大きい波長で撮像した画像であり、
前記第２画像は、前記特定部位と前記特定部位でない部位の反射光強度の大小が前記第１画像と入れ替わる波長で撮像した画像である、
請求項１または２に記載の外観検査装置。
【請求項４】
前記第１画像は、前記被写体からの反射光の波長６５０ｎｍ付近で撮像した画像であり、
前記第２画像は、前記被写体からの反射光の波長５５０ｎｍ付近で撮像した画像であり、
前記第３画像は、前記被写体からの反射光の波長４５０ｎｍ付近で撮像した画像である、
請求項１から３のいずれか１項に記載の外観検査装置。
【請求項５】
前記被写体はトマトであり、
前記特定部位はトマトの果実部であり、
前記特徴的な部分はトマトの果実部の表面にある傷である、
請求項１から４のいずれか１項に記載の外観検査装置。
【請求項６】
前記複数の光源毎の強度は、独立に制御可能である、
請求項１から５のいずれか１項に記載の外観検査装置。
【請求項７】
前記複数の光源の少なくとも１つの強度を制御する制御部をさらに備え、
前記制御部は、前記複数の光源のうち、前記被写体の反射光の強度が相対的に弱い光源の強度を強くする、もしくは、前記複数の光源のうち、反射光強度が相対的に強い前記光源の強度を弱くする、
請求項６に記載の外観検査装置。
【請求項８】
前記演算部は、前記複数の光源毎の強度情報を用いて、演算により分離した前記複数の単一波長画像の強度を補正する、
請求項６または７に記載の外観検査装置。
【請求項９】
前記複数の光源毎の強度を決定する決定部をさらに備え、
前記決定部は、事前の撮像によって分離した、前記複数の単一波長画像に基づき、次回の撮像時の前記複数の光源毎の強度を決定する、
請求項６から８のいずれか１項に記載の外観検査装置。
【請求項１０】
前記複数の光源毎の設定強度を入力可能なユーザーインターフェースをさらに備えた、
請求項６から８のいずれか１項に記載の外観検査装置。
【請求項１１】
前記判断部は、エッジ検出を用いて前記画像特徴量を抽出する、
請求項１に記載の外観検査装置。
【請求項１２】
前記判断部で抽出した結果に関する情報を出力する出力部をさらに備えた、
請求項１または１１に記載の外観検査装置。
【請求項１３】
前記検出部は、前記選択された前記複数の単一波長画像の１つ以上に基づいて機械学習により決定した識別境界を用いて、前記被写体の特定部位の情報を検出する、
請求項１から１２のいずれか１項に記載の外観検査装置。
【請求項１４】
前記演算部は、前記被写体に応じて、選択される前記複数の単一波長画像の１つ以上を変更する、
請求項１から１３のいずれか１項に記載の外観検査装置。
【請求項１５】
前記検出部で検出した結果に関する情報を出力する出力部をさらに備えた、
請求項１に記載の外観検査装置。
【請求項１６】
互いに異なる相対分光分布を有する単一波長の光を発光する複数の光源が発光する照明光を被写体に実質的に同時に照射し、
前記複数の光源から照射された複数の前記照明光に対して前記被写体が放出した光を撮像部により撮像して撮像画像を生成し、
前記撮像部の各色の感度特性に関する情報と、生成された前記撮像画像とを用いて、前記単一波長の成分毎の第１画像、第２画像および第３画像を含む複数の単一波長画像に分離し、
前記複数の単一波長画像から選択された前記第１画像と前記第２画像とを用いて、前記被写体の特定部位の情報を検出し、
前記複数の単一波長画像から選択された前記第１画像と前記第３画像とを用いて、検出された前記特定部位に存在する特徴的な部分に相当する画像特徴量を抽出する外観検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、被写体に光を照射して撮像した撮像画像に基づき被写体の外観を検査する装置および方法に関する。
【背景技術】
【０００２】
特許文献１は、農産物の外観検査装置を開示している。この外観検査装置は、撮像手段と、傷害部の特徴色を指定する複数の色指定部と、論理和演算部と、傷害検出部とを有する。色指定部はそれぞれ、画像処理部と、論理積演算部とを含む。画像処理部は、撮像手段で農産物を撮像して得られた画像に対して指定された特徴色を抽出するための複数の画像処理を施す。論理積演算部は、画像処理部にて画像処理された複数の画像を論理積演算する。論理和演算部は、各色指定部の論理積演算部にて論理積演算された画像を論理和演算する。傷害検出部は、論理和演算部にて論理和演算された画像に基づき農産物の傷害を検出する。
【０００３】
これにより、傷害のある農産物をより正確に選別させることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−３００７６７号公報
【発明の概要】
【０００５】
本開示は、高速かつ高精度に被写体の外観検査を行う装置を提供する。
【０００６】
本開示における外観検査装置は、照明部と、撮像部と、メモリと、演算部と、検出部と、判断部とを有する。照明部は、互いに異なる相対分光分布を有する単一波長の光を発光する複数の光源を有し、被写体に複数の光源が発光する照明光を実質的に同時に照射する。撮像部は、複数の光源から照射された複数の照明光に対して被写体が放出した光を撮像する。メモリは、撮像部の各色の感度特性に関する情報を記憶している。演算部は、撮像部の各色の感度特性に関する情報を用いて、撮像部により撮像された撮像画像を、単一波長の成分毎の第１画像、第２画像および第３画像を含む複数の単一波長画像に分離する。検出部は、複数の単一波長画像から選択された第１画像と第２画像とを用いて、被写体の特定部位の情報を検出する。判断部は、複数の単一波長画像から選択された第１画像と第３画像とを用いて、検出部が検出した特定部位に存在する特徴的な部分に相当する画像特徴量を抽出する。
【０００７】
また、本開示における外観検査方法は、互いに異なる相対分光分布を有する単一波長の光を発光する複数の光源が発光する照明光を被写体に実質的に同時に照射する。そして、複数の光源から照射された複数の照明光に対して被写体が放出した光を撮像部により撮像し、撮像画像を生成する。そして、撮像部の各色の感度特性に関する情報と、生成された撮像画像とを用いて、単一波長の成分毎の第１画像、第２画像および第３画像を含む複数の単一波長画像に分離する。そして、複数の単一波長画像から選択された第１画像と第２画像とを用いて、被写体の特定部位の情報を検出する。そして、複数の単一波長画像から選択された第１画像と第３画像とを用いて、検出された特定部位に存在する特徴的な部分に相当する画像特徴量を抽出する。
【０００８】
本開示によれば、高速かつ高精度に被写体の外観検査を行う装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、被写体の分光分布の一例を示す図である。
【図２】図２は、本開示の実施の形態１における外観検査装置の構成例を示すブロック図である。
【図３】図３は、図２に示す外観検査装置における撮像部の分光感度特性を示す図である。
【図４】図４は、図２に示す外観検査装置の動作を説明するためのフローチャートである。
【図５】図５は、図２に示す外観検査装置における検出部により生成された二値画像の一例を示す図である。
【図６】図６は、本開示の実施の形態２による外観検査装置の検出部における識別境界の例を示す図である。
【図７】図７は、本開示の実施の形態３における外観検査装置の構成例を示すブロック図である。
【図８】図８は、図７に示す外観検査装置における出力部における表示の一例を示す図である。
【図９】図９は、本開示の実施の形態４における外観検査装置の構成例を示すブロック図である。
【図１０】図１０は、本開示の実施の形態４における外観検査装置の他の構成例を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、適宜図面を参照しながら、本開示による種々の実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
【００１１】
なお、添付図面および以下の説明は、当業者が本開示を十分に理解するために、提供されるのであって、これらにより請求の範囲に記載の主題を限定することは意図されていない。
【００１２】
なお、以下の説明において、「画像を記憶する」等の表現は、「画像のデータを記憶する」ということを意味する。また、以下の説明においては、観測対象（被写体）として、果実部に傷を有するヘタ付きのトマトを想定している。また、ヘタ付トマトは、果実、ヘタ、傷の３つの部位に分類される。本開示においては、傷のように、外観検査の対象となる部位を、被写体における「特徴的な部分」と定義する。また、果実のように、特徴的な部分を含む、または特徴的な部分を含む可能性がある部位を「特定部位」と定義する。
【００１３】
以下、トマトの表面についた傷を抽出する場合を例に装置の構成および動作を説明する。
【００１４】
［０−１反射光と分光分布］
反射光は、物質に光が照射された際に物質から放出され、その物質のもつ特性を反映する。そのため反射光は、物質の定性的、定量的な解析に利用することができる。
【００１５】
本開示では、物質が照射された光に対して光を放出することを、「照射された光を反射する」とも表現する。
【００１６】
分光分布は、光を回折格子で連続的に波長ごとに分離するなどの手法で得られる。分光分布は、各波長の光の強度を示す。反射光の分光分布は、光が照射された物質のもつ特性を反映する。横軸に波長、縦軸を各波長における反射光の強度として、分光分布をグラフ化すると、そのグラフの形状にその物質のもつ定性的な情報が反映される。また、そのグラフの全体的な強度に、その物質の定量的な情報が反映される。また、その物質の定性的な情報を表した分光分布の形状に関する情報を、以下では相対分光分布と称する。
【００１７】
図１は、被写体の一例であるトマトの部位毎の分光分布を示す図である。縦軸は反射光強度、横軸は波長（ｎｍ）を示す。また、実線Ｕ１は果実の分光分布、点線Ｕ２はヘタの分光分布、波線Ｕ３は傷の分光分布を示す。図１に示すように、トマトは果実、ヘタ、傷の部位毎に異なる分光分布を有する。この部位毎の違いを利用することで、特定部位の情報の検出が可能となる。例えば、果実とヘタの反射光強度の差は、波長６５０ｎｍ付近が最も大きい。そこで、波長６５０ｎｍ付近の各部位の反射光強度を用いて、反射光を撮像した撮像画像において、トマトの果実の領域とヘタの領域との分離が可能となる。また、反射光の波長帯域が狭いほど、撮像画像から特定部位を高精度に分離することができる。
【００１８】
［０−２．ＲＧＢベクトル］
本開示では、ＲＧＢカメラで撮像した撮像画像の各画素のＲＧＢ値を三次元のベクトルとしてとらえ、ＲＧＢ値をＲＧＢベクトルとして表記する。以下、ＲＧＢベクトルの方向と長さについて説明する。
【００１９】
ＲＧＢベクトルの方向とは、ＲＧＢの各色の比率を反映した情報であり、光が照射された物質の定性的な特性に関する情報を含む。つまり、ＲＧＢベクトルの方向は相対分光分布に関係する。ＲＧＢベクトルの方向としては、例えば長さを１で正規化したＲＧＢベクトルを用いることができる。一方、ＲＧＢベクトルの長さは、ＲＧＢの全体的な強度を反映した値であり、光が照射された物質の定量的な特性に関する情報を含む。
【００２０】
ある分光分布を有する観測光を、ＲＧＢカメラで撮像した場合、撮像画像のある画素のＲＧＢベクトルの各要素の値は、観測光の分光分布にＲＧＢカメラのＲ（赤）バンド、Ｇ（緑）バンド、Ｂ（青）バンドの各分光感度特性を掛け算し、さらに各バンド幅に対して積分した値となる。そのため、観測光の相対分光分布が同じであれば、ＲＧＢベクトルの方向は同じとなる。つまりＲＧＢベクトルの方向は、観測光の相対分光分布の情報を含む。また、観測光の相対分光分布が同じまま強度のみが変化すると、ＲＧＢベクトルの長さのみが変化する。つまり、ＲＧＢベクトルの長さは、観測光の分光分布の強度に関する情報を含む。
【００２１】
例えば、ある被写体をある強度の光で照射して得られた反射光のＲＧＢベクトルをベクトルＶ１、２倍の強度の光で照射して得られた反射光のＲＧＢベクトルをベクトルＶ２とする。そうすると、ベクトルＶ１とベクトルＶ２の方向は変わらないが、ベクトルＶ２の長さはベクトルＶ１の長さの２倍となる。
【００２２】
なお、本開示では、ＲＧＢベクトルも分光分布の一つであり、またＲＧＢベクトルの方向も、相対分光分布の一つであるととらえ、ＲＧＢベクトルを分光分布、ＲＧＢベクトルの方向を相対分光分布とも表記する。
【００２３】
（実施の形態１）
［１−１．外観検査装置の構成］
図２は、実施の形態１における外観検査装置１００の構成を示すブロック図である。
【００２４】
外観検査装置１００は、ＣＰＵ１１０、照明部１２０、撮像部１３０、メモリ１４０、演算部１５０、選択部１６０、検出部１７０、判断部１８０を有する。また、照明部１２０は、光源１２１、光源１２２、光源１２３を有する。
【００２５】
ＣＰＵ１１０は、各部の動作を制御する。例えば、ＣＰＵ１１０は、照明部１２０に対して、光源１２１、光源１２２、光源１２３のオンオフを制御する。また、ＣＰＵ１１０は、撮像部１３０に対して、撮像動作を指示する。また、ＣＰＵ１１０は、演算部１５０、選択部１６０、検出部１７０、判断部１８０の動作を制御する。
【００２６】
照明部１２０は、互いに異なる相対分光分布を有する単一波長の光を発光する３つの光源１２１、光源１２２、光源１２３を有し、これら３つの光源が発光する照明光を実質的に同時に被写体１９０に照射する。本開示において、光源の数とは、互いに異なる相対分光分布を有する光源の種類の数を意味するとする。光源１２１、光源１２２、光源１２３は、単一波長光源であり、それぞれ中心波長が異なる。本実施の形態では、光源１２１は、ＬＥＤであり、波長４５０ｎｍを中心とした相対分光分布を有する照明光Ｌ１を発光する。また、光源１２２は、ＬＥＤであり、波長５５０ｎｍを中心とした相対分光分布を有する照明光Ｌ２を発光する。また、光源１２３は、ＬＥＤであり、波長６５０ｎｍを中心とした相対分光分布を有する照明光を発光する。照明部１２０は、ＣＰＵ１１０の制御に従って、光源１２１、光源１２２、光源１２３を実質的に同時に発光させ、３つの異なる照射光を被写体１９０へ同時に照射する。
【００２７】
被写体１９０は、各光源が発光する照明光をそれぞれ反射する。照明光Ｌ１が被写体１９０に反射された光を反射光Ｒ１、照明光Ｌ２が被写体１９０に反射された光を反射光Ｒ２、照明光Ｌ３が被写体１９０に反射された光を反射光Ｒ３とする。反射光Ｒ１の強度は、照明光Ｌ１の強度と、照明光Ｌ１の波長における被写体１９０の反射率との積になる。同様に、反射光Ｒ２、反射光Ｒ３の強度は、各々、照明光Ｌ２、Ｌ３の強度と、照明光Ｌ２、Ｌ３の波長における被写体１９０の反射率との積になる。また、照明光Ｌ１、Ｌ２、Ｌ３は、実質的に同時に被写体１９０に照射される。そのため、被写体１９０が放出した光は、反射光Ｒ１、Ｒ２、Ｒ３が混合された光である。
【００２８】
撮像部１３０は、照明部１２０の複数の光源から照射された複数の照明光に対して被写体１９０が放出した光（すなわち、反射光）を撮像する。撮像部１３０は、レンズと撮像素子（いずれも図示せず）とを有する。レンズは、反射光Ｒ１、反射光Ｒ２、反射光Ｒ３による被写体１９０の像を撮像素子に結像させる。撮像素子は、ＲＧＢのベイヤ配列の画素を有し、３色のカラー撮像が可能である。すなわち、撮像部１３０は、ＲＧＢカメラとして動作する。撮像部１３０は、被写体１９０の像をカラー画像として撮像し、メモリ１４０に記憶させる。本実施の形態では、撮像部１３０として、図３に示す感度特性を有する撮像素子を含むＲＧＢカメラが用いられている。
【００２９】
図３は、撮像部１３０の感度特性を示す図である。すなわち、図３は、撮像素子の各画素に配置される色フィルタの分光感度特性の例でもある。縦軸は感度、横軸は波長（ｎｍ）を表す。また、破線Ｅ１はＲＧＢカメラのＲバンドの感度特性、実線Ｅ２はＧバンドの感度特性、一点鎖線Ｅ３はＢバンドの感度特性をそれぞれ示している。撮像部１３０は、図３のように３色の分光感度特性が、お互い大きく重なり合い、どの波長の単一波長光を観測しても、複数の色において非零の値が観測されるという特徴を有する。撮像部１３０は、被写体１９０に同時に照射された複数の照明光Ｌ１、Ｌ２、Ｌ３に対応する反射光Ｒ１、Ｒ２、Ｒ３を同時に撮像する。撮像部１３０は、反射光Ｒ１、Ｒ２、Ｒ３の全てに対して感度を有しているため、各色の画素は、反射光Ｒ１、Ｒ２、Ｒ３が混合された状態での光を観測する。
【００３０】
次に、ある波長における撮像部１３０のＲＧＢ各色の感度特性に関する情報について説明する。ある波長をλ（ｎｍ）、撮像部１３０のＲバンドの分光感度特性をＲ（λ）、Ｇバンドの分光感度特性をＧ（λ）、Ｂバンドの分光感度特性をＢ（λ）としたとき、その波長における撮像部１３０の各色の感度特性は、ＲＧＢベクトル（Ｂ（λ），Ｇ（λ），Ｒ（λ））で表せる。一例として、図３に波長λが４５０ｎｍの場合のＲＧＢベクトル（Ｂ（４５０），Ｇ（４５０），Ｒ（４５０））を示す。
【００３１】
撮像部１３０は、図３に示すように、ＲＧＢ各色の分光感度特性が、互いに大きく重なり合っている。そのため、図３で示す波長の範囲内では、どのような３つの波長の組み合わせを選択しても、その波長における撮像部１３０の各色の感度特性に関する情報は、互いに一次独立となる。すなわち、光源１２１、１２２、１２３の波長に対する撮像部１３０の各色の感度特性に関する情報は、互いに一次独立となる。具体的には、光源１２１、１２２、１２３の中心波長は、それぞれ４５０ｎｍ、５５０ｎｍ、６５０ｎｍであることから、撮像部１３０においては、光源１２１、１２２、１２３各々の波長における撮像部１３０の各色の感度特性に関する情報であるＲＧＢベクトル（Ｂ（４５０），Ｇ（４５０），Ｒ（４５０））、（Ｂ（５５０），Ｇ（５５０），Ｒ（５５０））、（Ｂ（６５０），Ｇ（６５０）、Ｒ（６５０））が、互いに一次独立である。
【００３２】
メモリ１４０は、撮像部１３０が撮像した撮像画像と、演算部１５０および検出部１７０の処理結果とを記憶する。また、メモリ１４０は、演算部１５０、選択部１６０、検出部１７０、判断部１８０のワークメモリとして使用される。さらに、メモリ１４０は、光源１２１、１２２、１２３における撮像部１３０のＲＧＢ各色の感度特性に関する情報を記憶する。この情報は、光源１２１、１２２、１２３をそれぞれ撮像部１３０で撮像した場合のＲＧＢベクトルの方向に関する。すなわちこの情報は、光源１２１、１２２、１２３の相対分光分布に関する情報と、撮像部１３０の分光感度特性を含んだ値で構成されている。また各ＲＧＢベクトルは、ベクトルの長さが１になるように正規化されている。なお、各光源における撮像部１３０のＲＧＢ各色の感度特性に関する情報は、予め取得されている。例えば、各光源を直接、撮像部１３０で撮像して得たＲＧＢ値を正規化して取得する方法により、予め取得されている。
【００３３】
演算部１５０は、メモリ１４０に記憶されている各光源における撮像部１３０のＲＧＢ各色の感度特性に関する情報を用いて、撮像部１３０により撮像された撮像画像を、演算処理する。この処理によって、演算部１５０は各光源に対応する反射光のみを各々含む複数の画像に分離する。各光源に対応する反射光とは、例えば、光源１２１に対応する反射光は反射光Ｒ１であり、光源１２２に対応する反射光は反射光Ｒ２であり、光源１２３に対応する反射光は反射光Ｒ３である。すなわち、各光源に対応する反射光とは、被写体が反射した反射光の内、各光源からの照射光に由来する反射光を意味する。
【００３４】
以上のように、演算部１５０は、光源１２１、１２２、１２３における撮像部１３０のＲＧＢ各色の感度特性に関する情報を用いて、撮像部１３０により撮像された撮像画像を、後述する演算処理する。その結果、演算部１５０は撮像画像を反射光Ｒ１のみを含む単一波長画像、反射光Ｒ２のみを含む単一波長画像、反射光Ｒ３のみを含む単一波長画像を各光源の波長ごとに算出して分離する。そしてこれらの単一波長画像をメモリ１４０に記憶させる。
【００３５】
選択部１６０は、ＣＰＵ１１０の制御により演算部１５０により分離された３枚の単一波長画像の中から１つ以上を選択する。そして、メモリ１４０から選択した単一波長画像を読み出して、検出部１７０および判断部１８０に供給する。本実施の形態においては、選択部１６０が選択する単一波長画像はあらかじめ設定されている。
【００３６】
検出部１７０は、ＣＰＵ１１０の制御により選択部１６０から供給された単一波長画像を用いて、被写体１９０の特定部位の情報を検出する。例えば、被写体１９０がトマトであり、果実の傷を観測する場合、果実を特定部位として、果実の情報を検出する。さらに、検出部１７０は、特定部位の情報を検出結果として、判断部１８０へ供給すると共に、メモリ１４０に記憶させる。
【００３７】
判断部１８０は、検出部１７０から供給された検出結果を用いて、被写体１９０の特定部位に特徴的な部分が存在するかどうかを判断する。被写体１９０がトマトの場合には、判断部１８０は、の特定部位である果実表面に傷があるかどうかを判断する。
【００３８】
なお、本開示では、被写体１９０の撮像時に用いる光源は、光源１２１、１２２、１２３のみであり、暗室内で撮像される。
【００３９】
［１−２．動作］
［１−２−１．外観検査装置の動作］
以上のように構成された外観検査装置１００の動作を説明する。
【００４０】
図４は、外観検査装置１００の動作を説明するためのフローチャートである。
【００４１】
ステップＳ２０１にて、ＣＰＵ１１０は照明部１２０に光源１２１、１２２、１２３をオンにするよう制御する。照明部１２０は、この制御により、光源１２１、１２２、１２３をオンにし、照明光Ｌ１、Ｌ２、Ｌ３を実質的に同時に被写体１９０へ照射する。
【００４２】
ステップＳ２０２にて、ＣＰＵ１１０は、照明光Ｌ１、Ｌ２、Ｌ３が同時に照射された状態で、撮像部１３０に被写体１９０を撮像させる。撮像部１３０は、被写体１９０によって反射された、反射光Ｒ１、Ｒ２、Ｒ３が混合された観測光を撮像し、撮像画像Ｐを取得する。撮像画像Ｐは、反射光Ｒ１、Ｒ２、Ｒ３を含む。撮像部１３０は撮像画像Ｐをメモリ１４０に記憶させる。
【００４３】
ステップＳ２０３にて、ＣＰＵ１１０は、ステップ２０２の撮像が終わると、照明部１２０に光源１２１、１２２、１２３をオフするよう制御する。照明部１２０は、この制御により、光源１２１、１２２、１２３をオフにする。
【００４４】
ステップＳ２０４にて、ＣＰＵ１１０は、演算部１５０を制御する。演算部１５０は、この制御により、各光源における、撮像部１３０のＲＧＢ各色の感度特性に関する情報を用いて、メモリ１４０が記憶している撮像画像Ｐを、各光源に対応する反射光のみを含む複数の画像に分離する。すなわち、演算部１５０は、撮像画像Ｐを、反射光Ｒ１のみを含む単一波長画像、反射光Ｒ２のみを含む単一波長画像、反射光Ｒ３のみを含む画像の３枚の単一波長画像に分離し、メモリ１４０に記憶させる。
【００４５】
ステップＳ２０５にて、ＣＰＵ１１０は、選択部１６０を制御する。選択部１６０は、この制御により、メモリ１４０が記憶している３枚の単一波長画像から１つ以上を選択して読み出し、検出部１７０、判断部１８０に供給する。
【００４６】
ステップＳ２０６にて、ＣＰＵ１１０は、検出部１７０を制御する。検出部１７０は、この制御により、選択部１６０から供給された１つ以上の単一波長画像から、被写体１９０の特定部位の情報を検出する。さらに、検出部１７０は、検出した特定部位の情報を判断部１８０に出力する。
【００４７】
ステップＳ２０７にて、ＣＰＵ１１０は、判断部１８０を制御する。判断部１８０は、この制御により、選択部１６０から供給された１つ以上の単一波長画像から、被写体１９０に所定の特徴的な部分が存在するかどうかを判断する。すなわち、判断部１８０は、検出部１７０が出力した特定部位の情報と、選択部１６０が供給した１つ以上の単一波長画像を用いて、単一波長画像に所定の特徴的な部分があれば抽出する。判断部１８０は抽出結果により、被写体１９０の状態を観測する。
【００４８】
なお、連続で撮像する場合は、Ｓ２０３のステップを実施せず、光源１２１、１２２、１２３がオンとなっている状態のまま、次の被写体の撮像及び演算を実施し、任意のタイミングでステップＳ２０３を実施してもよい。
【００４９】
［１−２−２．各波長の反射光画像の算出］
ステップＳ２０４の演算を詳細に述べる。この演算は撮像画像Ｐの画素ごとに対して行われる。また、本実施の形態のように複数の色フィルタを市松状に配置したベイヤ配列構造を有する撮像素子の場合、１画素の中には１色の値しか含まれていない。そのため、周辺画素の情報を用いた補間処理によって、ＲＧＢ各色の間の画素の値を作り出し、１画素中に複数色の値を持たせる処理を事前に行う。１画素中に複数色の値を持たせる方法は、これ限らず任意の方法を用いてもよい。他にも、デバイスの状態から１画素中に複数色の値を含むような撮像素子や、ダイクロイックミラーを用いて同軸で複数設置されたモノクロの撮像素子に各色の光を分離する方法を用いてもよい。
【００５０】
撮像画像Ｐにおける画素で、演算の対象としているある１画素を、画素ｐとして説明する。各画素には、ＲＧＢ値であるＲＧＢベクトルが記録されている。
【００５１】
画素ｐのＲＧＢベクトルは、反射光Ｒ１のＲＧＢベクトル、反射光Ｒ２のＲＧＢベクトル、反射光Ｒ３のＲＧＢベクトルの和である。ここで、光源１２１、１２２、１２３として、狭帯域のＬＥＤを用いている。そのため、反射光Ｒ１、Ｒ２、Ｒ３のＲＧＢベクトルの方向は、各々光源１２１、１２２、１２３における撮像部１３０の各色の感度特性に関する情報であるＲＧＢベクトルの方向と同一と見なすことができる。すなわち、反射光Ｒ１のＲＧＢベクトルの方向と、メモリ１４０で保持する光源１２１の撮像部１３０のＲＧＢ各色の感度特性に関する情報であるＲＧＢベクトルの方向を同一と見なすことができる。同様に、反射光Ｒ２のＲＧＢベクトルの方向と、メモリ１４０で保持する光源１２２の撮像部１３０のＲＧＢ各色の感度特性に関する情報であるＲＧＢベクトルの方向を同一と見なすことができ、反射光Ｒ３のＲＧＢベクトルの方向と、メモリ１４０で保持する光源１２３の撮像部１３０のＲＧＢ各色の感度特性に関する情報であるＲＧＢベクトルの方向を同一と見なすことができる。
【００５２】
ここで、光源１２１における撮像部１３０の各色の感度特性に関する情報をＲＧＢベクトルｒ１、光源１２２における撮像部１３０の各色の感度特性に関する情報をＲＧＢベクトルｒ２、光源１２３における撮像部１３０の各色の感度特性に関する情報をＲＧＢベクトルｒ３とする。前述のことを利用することによって、画素ｐのＲＧＢベクトルＩｐは、ＲＧＢベクトルｒ１、ｒ２、ＲＧＢベクトルｒ３の線形結合として表現できる。すなわち、画素ｐのＲＧＢベクトルＩｐを（ＩｐＲ，ＩｐＧ，ＩｐＢ）、メモリ１４０で記憶されているＲＧＢベクトルｒ１を（ｒ１Ｒ，ｒ１Ｇ，ｒ１Ｂ）、ＲＧＢベクトルｒ２を（ｒ２Ｒ，ｒ２Ｇ，ｒ２Ｂ）、ＲＧＢベクトルｒ３を（ｒ３Ｒ，ｒ３Ｇ，ｒ３Ｂ）とすると、ベクトルＩｐは次式で表される。
【００５３】
【数１】
0006765036.tif 000002
【００５４】
ただし、ｗ１は、ベクトルｒ１の重み、ｗ２は、ベクトルｒ２の重み、ｗ３は、ベクトルｒ３の重みである。
【００５５】
式（１）は、未知数がｗ１、ｗ２、ｗ３の３つである３式の連立方程式である。また、各光源における撮像部１３０のＲＧＢ各色の感度特性に関する情報は、それぞれ１次独立である。そのため、連立方程式を解くことが可能で、各未知数を算出することが可能である。また、ｗ１、ｗ２、ｗ３は、任意の方法を用いて方程式を解けば算出できる。例えば、方程式を行列で表現し、逆行列を用いた演算により解けばよい。
【００５６】
さらに、ｗ１とベクトルｒ１の積から、画素ｐにおける反射光Ｒ１のＲＧＢベクトルを算出することができる。同様に、ｗ２とベクトルｒ２の積から、画素ｐにおける反射光Ｒ２のＲＧＢベクトルを算出することができ、ｗ３とベクトルｒ３の積から、画素ｐにおける反射光Ｒ３のＲＧＢベクトルを算出することができる。これらはそれぞれ、式（１）の右辺の第一項、第二項、第三項に相当する。
【００５７】
以上の演算を全画素に対して行うことにより、撮像画像Ｐから、反射光Ｒ１、Ｒ２、Ｒ３それぞれのＲＧＢベクトルの二次元分布情報を算出することができる。すなわち、撮像画像Ｐから、反射光Ｒ１のみを含む単一波長画像、反射光Ｒ２のみを含む単一波長画像、反射光Ｒ３のみを含む単一波長画像を算出することができる。このように、撮像画像Ｐを、反射光Ｒ１のみを含む単一波長画像、反射光Ｒ２のみを含んだ画像、反射光Ｒ３のみを含む単一波長画像に分離することができる。分離された各単一波長画像は、各画素にＲＧＢベクトルを有しているため、カラー画像となる。
【００５８】
なお、使用する光源の波長を変更したい場合、光源１２１、１２２、１２３のうちの任意の１つ以上を、光源１２１、１２２、１２３のいずれとも波長が異なる他の単一波長の光源に変更してもよい。光源を変更した場合、メモリ１４０には、変更した光源における、撮像部１３０のＲＧＢ各色の感度特性に関する情報を新たに記憶させておく。もしくは、事前に記憶させておいてもよい。
【００５９】
前述のように、撮像部１３０では、ＲＧＢ３色の分光感度特性が、お互い大きく重なり合い、図３で示す波長の範囲内では、どのような３つの波長の組み合わせを選択しても、それらの波長における、撮像部１３０の各色の感度特性に関する情報は、お互いに一次独立となる。そのため、任意の光源を変更した後の各光源における撮像部１３０の各色の感度特性に関する情報は、互いに一次独立となり、演算部１５０において、方程式を解くことが可能となる。すなわち、撮像部１３０では、図３のように、３色の分光感度特性が、お互い大きく重なり合い、どのような３つの波長の組み合わせを選択しても、それらの波長における、撮像部１３０の各色の感度特性に関する情報は、お互いに一次独立となる。このため、撮像部１３０自体を変更することなく、照明の波長を切り替えるだけで、あらゆる波長の組み合わせを自由に選択することができる。このように、使用できる波長の選択の自由度が高い。そのため、状況に応じて観測に最適な波長を自由に選択及び変更できる。
【００６０】
［１−２−３．単一波長画像の選択］
次に、選択部１６０の動作を説明する。選択部１６０は、ＣＰＵ１１０の制御に従って、検出部１７０および判断部１８０に、あらかじめ設定された１つ以上の単一波長画像をメモリ１４０から読み出し、検出部１７０および判断部１８０へ供給する。
【００６１】
図１に示すように、トマトの分光分布は部位によって異なる。例えば、ヘタと果実では、波長５５０ｎｍ付近と波長６５０ｎｍ付近でのヘタと果実の反射光強度の大小が入れ替わる。そのため、両者の比を算出することでトマトのヘタと果実を分離することが可能である。また、果実表面にある傷を判別する際には、波長４５０ｎｍ付近と波長６５０ｎｍ付近の傷と果実の反射光強度の比を算出することで、傷の部分のコントラストを上げることが可能である。
【００６２】
光源１２１、１２２、１２３の中心波長は、それぞれ４５０ｎｍ、５５０ｎｍ、６５０ｎｍであることから、本実施の形態では、検出部１７０に対しては、反射光Ｒ２の単一波長画像と反射光Ｒ３の単一波長画像を選択し、判断部１８０に対しては、反射光Ｒ１の単一波長画像と反射光Ｒ３の単一波長画像を選択するように設定されている。
【００６３】
［１−２−４．特定部位の検出］
次に、検出部１７０の動作を説明する。検出部１７０には、選択部１６０より、反射光Ｒ２の単一波長画像と、反射光Ｒ３の単一波長画像とが供給される。検出部１７０は、反射光Ｒ２の単一波長画像と反射光Ｒ３の単一波長画像に対して、同じ位置にあたる画素値を用いて、画素毎に比を算出し、算出した比を元の画素の位置の画素値とする画像を生成する。検出部１７０は、生成した画像の画素毎の値を、所定の閾値を使って二値化し、二値画像を生成する。検出部は、この二値画像を検出結果として出力する。
【００６４】
図５は、検出部１７０により生成された二値画像５００の一例を示す。二値画像５００において、白い領域Ｆ１はトマトの果実、領域Ｆ１内の黒い領域Ｆ２はヘタの領域である。図５に示すように、トマトの特定部位である果実領域Ｆ１と、特定部位ではないヘタ領域Ｆ２が分離された二値画像が生成されることが分かる。
【００６５】
［１−２−５．画像の特徴的な部分の抽出］
次に、判断部１８０の動作を説明する。本実施の形態では、特徴的な部分とは、検出部１７０が検出した特定部位である果実領域に存在する傷として説明する。
【００６６】
まず、判断部１８０は、選択部１６０から供給された反射光Ｒ１の単一波長画像と反射光Ｒ３の単一波長画像との、同じ位置にあたる画素値を用いて、画素毎に比を算出し、算出した比を元の画素の位置の画素値とする画像を生成する。次に、判断部１８０は、生成した画像において、エッジを検出し、エッジを強調させた傷候補画像を作成する。被写体１９０に傷がある場合、傷候補画像には、被写体１９０の輪郭と、傷のエッジが含まれる。この場合、傷のエッジは、特徴的な部分の画像特徴量の一例である。判断部１８０は、傷候補画像と検出部１７０で検出した特定部位の情報を用いて、傷候補画像から、被写体１９０の輪郭に相当するエッジを除外し、特徴的な部分（傷）を抽出する。
【００６７】
例えば、被写体１９０がトマトの場合、傷候補画像に存在するエッジには、傷だけではなくトマトのヘタと果実の輪郭も含まれている。判断部１８０は、二値画像の果実領域をマスク画像として利用し、傷候補画像とマスク画像の論理積を算出する。このようにして、判断部１８０は、傷候補画像から、トマトのヘタと果実の輪郭から検出されたエッジを除外し、果実部に存在する傷のみを抽出することができる。
【００６８】
なお、以上の説明では、検出部１７０、判断部１８０はそれぞれ、選択部１６０から供給された２つの単一波長画像の同じ位置にあたる画素値を用いて、画素毎に比を算出している。しかしながら、図１を参照して説明したように、トマトは果実、ヘタ、傷の部位毎に異なる分光分布を有する。この部位毎の違いを利用することで、特定部位の検出が可能となる。そのため、検出部１７０、判断部１８０は１つの単一波長画像からでも特定部位を検出したり、その特定部位における特徴的な部分を抽出したりすることができる。たとえば、波長６５０ｎｍ付近の単一波長画像から、トマトの果実の領域とヘタの領域とを分離することができる。ただし、使用する単一波長画像の数、すなわち単一波長の成分毎の複数の単一波長画像の数が多いほど検出精度が高くなる。
【００６９】
［１−３．まとめ］
本実施の形態における外観検査装置１００は、照明部１２０と、撮像部１３０と、メモリ１４０と、演算部１５０と、検出部１７０とを有する。照明部１２０は、互いに異なる相対分光分布を有する単一波長の光を発光し、被写体１９０に照明光を実質的に同時に照射する光源１２１、１２２、１２３を有する。撮像部１３０は、光源１２１、１２２、１２３から実質的に同時に照射された照明光に対して、被写体１９０が放出した光を撮像する。メモリ１４０は、撮像部１３０のＲＧＢ各色の感度特性に関する情報を記憶している。演算部１５０は、撮像部１３０の各色の感度特性に関する情報を用いて、撮像部１３０により撮像された撮像画像を、単一波長の成分毎の複数の単一波長画像に分離する。検出部１７０は、複数の単一波長画像から選択された１つ以上を用いて、被写体１９０の特定部位の情報を検出する。
【００７０】
また外観検査装置１００はさらに判断部１８０を有する。判断部１８０は、演算部１５０が分離した複数の単一波長画像のうち１つ以上の単一波長画像と検出部１７０の検出結果を用いて、被写体１９０に存在する特徴的な部分を抽出する。この際、判断部１８０は、複数の単一波長画像の１つ以上を選択して、検出部１７０が検出した特定部位に存在する特徴的な部分に相当する画像特徴量を、エッジ検出を用いて抽出する。
【００７１】
これにより、演算部１５０は、１度の撮像による撮像画像から、複数の単一波長画像を取得することができる。また、検出部１７０は、各部位の検出に最適な単一波長画像を用いて、特定部位の情報を検出することができる。また、判断部１８０は、検出部１７０の結果を用いることで、複数の特徴的な部分の候補から、特徴的な部分以外を精度良く除外することができる。
【００７２】
従って、簡易な構成で、撮像時間を短縮できると共に、特徴的な部分を効率よく抽出ことができる。すなわち、高速かつ高精度に被写体１９０の外観検査を行うことができる。
【００７３】
（実施の形態２）
［２−１．外観検査装置の構成］
実施の形態２における外観検査装置の構成は、図２に示す実施の形態１の構成と同じである。本実施の形態と実施の形態１の相違点は、検出部１７０の動作についてのみである。本実施の形態では、検出部１７０の動作を中心に説明する。
【００７４】
検出部１７０は、ＣＰＵ１１０の制御により選択部１６０から供給された単一波長画像の１つ以上に基づいて、機械学習により決定した識別境界を用いて、特定部位を検出し、検出結果を二値画像化して出力する。
【００７５】
［２−２．動作］
続いて、本実施の形態による外観検査装置１００の動作を説明する。
【００７６】
［２−２−１．特定部位の検出］
図６を参照しながら、検出部１７０の動作を説明する。図６は、本実施の形態の検出部１７０が決定した識別境界の例を示す図である。縦軸は反射光Ｒ３の反射光強度、横軸は反射光Ｒ２の反射光強度を示す。また、黒丸と黒三角は、反射光Ｒ２の単一波長画像と、反射光Ｒ３の単一波長画像において、トマトの果実およびヘタにあたる位置にある画素を対象とし、同じ位置にある画素の反射光Ｒ３の反射光強度と反射光Ｒ２の反射光強度を１つの組として、平面上にクラス分類したものである。黒丸はヘタにあたる位置にある画素、黒三角は果実にあたる位置にある画素を示す。
【００７７】
図６に示すように、トマトの果実とヘタのそれぞれの画素の分布より、直線６００に示すような、トマトの果実とヘタを分離できる識別境界を決定できる。この識別境界の決定方法には、例えば、サポートベクターマシンなどの機械学習を用いる手法がある。この識別境界を用いてトマトの果実とヘタとを分離することができる。すなわち、検出部１７０は、反射光Ｒ２の単一波長画像と反射光Ｒ３の単一波長画像の同じ位置にあたる画素毎の画素値の関係から識別境界に基づいて、トマトの果実とヘタを二値で分離した二値画像を生成することができる。なお本実施の形態でも検出部１７０は２つの単一波長画像を用いているが、図６からわかるように、例えば、反射光Ｒ３の単一波長画像の強度だけでも果実とヘタとをほぼ分離可能である。
【００７８】
［２−３．まとめ］
本実施の形態の外観検査装置１００において、検出部１７０は、演算部１５０が分離した単一波長画像より、機械学習を用いて複数の特定部位を分離できる識別境界を決定することができる。
【００７９】
これにより、検出部１７０は、被写体１９０の特徴に応じた識別境界を用いることで特定部位を検出した画像を生成することができる。
【００８０】
従って、簡易な構成で、撮像時間を短縮できると共に、特徴的な部分を効率よく抽出ことができる。すなわち、高速かつ高精度に被写体１９０の外観検査を行うことができる。
【００８１】
（実施の形態３）
［３−１．外観検査装置の構成］
図７は、実施の形態３における外観検査装置７００の構成例を示すブロック図である。図７において、図２と同じ動作を行う構成要素については同一符号を付し、その詳細な説明は省略する。外観検査装置７００は、図２に示す実施の形態１の構成に対し、出力部７８１をさらに有する。また、ＣＰＵ１１０、判断部１８０に代えてＣＰＵ７１０、判断部７８０を有する。ＣＰＵ７１０、判断部７８０の動作はＣＰＵ１１０、判断部１８０の動作とは異なる。以下、ＣＰＵ７１０、判断部７８０、出力部７８１の動作を中心に説明する。
【００８２】
ＣＰＵ７１０は実施の形態１と同様に、各部の動作を制御する。また、ＣＰＵ７１０は、判断部７８０で得た結果を、出力部７８１に出力させる。
【００８３】
判断部７８０は、検出部１７０から供給された特定部位の情報から、画像の特徴的な部分を抽出し、抽出結果をＣＰＵ７１０に出力する。
【００８４】
出力部７８１は、例えば液晶モニタのような情報表示装置であり、ＣＰＵ７１０から出力される情報を表示部に出力（表示）する。あるいは、出力部７８１は、画像に特徴的な部分が含まれることを示す信号を出力するインターフェイスや出力端子である。
【００８５】
［３−２．動作］
続いて、外観検査装置７００の動作について説明する。
【００８６】
［３−２−１．画像の特徴的な部分の抽出］
まず判断部７８０の動作を説明する。判断部７８０は、実施の形態１で説明した判断部１８０と同様に、被写体１９０に存在する特徴的な部分を検出する。判断部７８０は、特徴的な部分を検出できた場合には、ＣＰＵ７１０に抽出結果を出力する。結果の出力方法としては、例えば、ＣＰＵ７１０が有するポート（不図示）に判断部７８０を接続し、このポートのハイとローを抽出結果の有無に応じて切り替える等の手段を使えばよい。
【００８７】
被写体１９０がトマトである場合、判断部７８０は、果実部に傷を抽出できた場合は、その結果をＣＰＵ７１０に出力する。
【００８８】
［３−２−２．情報の表示］
ＣＰＵ７１０は、判断部７８０から出力された抽出結果に応じて、出力部７８１を制御する。具体的には、ＣＰＵ７１０は、果実部に傷が存在すると判断部１８０が判断した場合であって、出力部７８１が情報表示装置である場合、出力部７８１にその事実を示す情報を表示させる。
【００８９】
図８は、出力部７８１の表示の一例を示す図である。出力部７８１は、画面に傷の有無を文字で表示したり、もしくは傷（図８の領域Ｆ３）のある果実の画像を表示したりする。この際、傷の部分の色を変えることや、傷の部分を点滅させる等の措置により、傷をより強調して表示してもよい。
【００９０】
また、出力部７８１は、傷の個数や種類を表示してもよい。その場合、判断部７８０では傷の抽出だけでなく、傷の個数や種類を特定する処理と、その結果をＣＰＵ７１０に供給する機能を追加する。あるいは、図７には図示していないが、判断部７８０で抽出した傷の画像を一旦、メモリ１４０に記憶させ、例えば判断部７８０から果実に傷が存在することを示す情報を得た場合に、ＣＰＵ７１０がメモリ１４０に記憶された傷の画像を解析して傷の個数や種類を特定する処理を行ってもよい。
【００９１】
［３−２−３．情報の出力］
出力部７８１がインターフェイスや出力端子である場合、ＣＰＵ７１０は、判断部７８０から出力された抽出結果に応じて、出力部７８１に対し、画像に特徴的な部分が含まれることを示す信号を送る。具体的には、ＣＰＵ７１０は、果実部に傷が存在すると判断部７８０が判断した場合、出力部７８１にその事実を示す信号を出力する。出力部７８１は、他の機器に電気的に接続されている。出力部７８１に接続された機器とは、例えば、トマトの不良排出機である。例えば、被写体１９０であるトマトがコンベアで搬送されている間に、撮像部１３０がトマトを撮像し、判断部７８０が撮像画像において、傷の存在を検出した場合、不良排出機は、出力部７８１からの信号により、傷のあるトマトを排出することができる。
【００９２】
［３−３．まとめ］
外観検査装置７００において、判断部７８０は抽出結果をＣＰＵ７１０に出力し、ＣＰＵ７１０は抽出結果に応じて、出力部７８１に抽出結果を出力（表示）する。
【００９３】
これにより、特徴的な部分の抽出結果と抽出内容を観測者に表示することができる。あるいは、他の機器にその情報を伝達することができる。
【００９４】
なお図示していないが、ＣＰＵ７１０は、検出部１７０で検出した結果に関する情報を出力部７８１に出力してもよい。例えば、被写体１９０がトマトの場合、果実領域に対するヘタ領域の面積比をＣＰＵ７１０が算出し、所定の閾値以上であれば、異常として出力部７８１に出力させたり、あるいは、トマト以外のものが混入していた場合に、異物として検出し、出力部７８１に出力させたりしてもよい。あるいは、ＣＰＵ７１０は、判断部７８０、検出部１７０で検出した結果に関する情報を両方とも出力部７８１に出力してもよい。
【００９５】
（実施の形態４）
［４−１．外観検査装置の構成］
図９は実施の形態４における外観検査装置９００の構成例を示すブロック図である。
【００９６】
外観検査装置９００の構成は、図２に示す実施の形態１の構成に対し、照明部１２０、検出部１７０の動作が異なるとともに、ＣＰＵ１１０に代えてＣＰＵ９１０を有し、さらに、決定部決定部９７１が追加されている。ＣＰＵ９１０の動作はＣＰＵ１１０の動作とは異なる。これ以外の構成は図２に示す外観検査装置１００と同様である。このため、実施の形態１と異なる部分のみを以下に説明する。
【００９７】
ＣＰＵ９１０は、決定部９７１から受け取った光源１２１〜１２３の強度情報を基に、各光源の光源強度を独立に制御する。
【００９８】
照明部１２０は、ＣＰＵ９１０からの制御に従って、指定された光源強度で光源１２１〜１２３から照明光を被写体１９０へ照射する。
【００９９】
検出部１７０は、ＣＰＵ９１０からの制御に従って、検出結果を決定部９７１へ供給する。
【０１００】
決定部９７１は、演算部１５０が抽出した各単一波長画像をメモリ１４０より読み出し、検出部１７０より供給された特定部位のマスク画像領域における各反射光強度から次の撮像時の各光源の強度を決定する。さらに決定した光源強度情報をＣＰＵ９１０に出力する。
【０１０１】
［４−２．動作］
続いて、外観検査装置９００の動作について説明する。
【０１０２】
［４−２−１．光源強度の決定］
まず、任意の光源強度で、図４に示す実施の形態１と同じ動作を実施し、演算部１５０は、各光源の波長に対応する、単一波長画像を算出する。次に、演算部１５０は、算出した各単一波長画像を、メモリ１４０を経由して、あるいは直接に、決定部９７１に出力する。決定部９７１は、入力された単一波長画像毎に、空間的に同じ位置にある特定の領域内の強度の平均値を計算する。すなわち、決定部９７１は、光源１２１の波長に相当する単一波長画像内の特定領域Ａにおける強度の平均値を計算する。また、決定部９７１は、光源１２２の波長に相当する単一波長画像内の特定領域Ａにおける強度の平均値を計算する。また、決定部９７１は、光源１２３の波長に相当する単一波長画像内の特定領域Ａにおける強度の平均値を計算する。例えば、特定領域Ａとして、例えば、検出部１７０より供給された二値画像の果実領域を設定する。
【０１０３】
決定部９７１は、算出した各単一波長画像内の特定領域Ａの強度を用いて、次の撮像時の各光源の光源強度を決定する。例えば、一度目の撮像で、各光源強度を同一とする。この撮像の結果、例えば、光源１２１の波長に対する反射率が、光源１２２、光源１２３の波長に対する反射率よりも相対的に低い被写体が撮像された場合を想定する。この場合、光源１２１の波長に相当する単一波長画像内の特定領域の平均強度は、光源１２２、光源１２３の波長に相当する単一波長画像内の特定領域の平均強度より低くなる。例えば、光源１２１、光源１２２、光源１２３の波長に相当する単一波長画像中の特定領域の平均強度の比率が１：１０：１０であったとする。その場合、光源１２１の波長に相当する単一波長画像は、信号強度が弱く、相対的にＳ／Ｎが低くなってしまう。そのため、決定部９７１は、次の撮像時は、相対的に光源１２１の強度を強くして撮像するようにＣＰＵ９１０に指示を出す。例えば、決定部９７１は、光源１２１、１２２、１２３の光源強度を、それぞれ、１度目の撮像の１０倍、１倍、１倍とするようにＣＰＵ１１０に、各光源の光源強度に関する情報を渡す。
【０１０４】
ＣＰＵ９１０は、決定部９７１から各光源の光源強度に関する情報を受け取り、照明部１２０に、各光源の光源強度を制御させる。すなわち、先ほどの光源強度をＬとすると、光源１２１の光源強度を１０Ｌ、光源１２２の光源強度をＬ、光源１２３の光源強度をＬとするように、各光源の光源強度を制御する。なお決定部９７１で決定した光源毎の設定強度をメモリ１４０に記憶させ、ＣＰＵ１１０がメモリ１４０から光源毎の設定強度を読み出してもよい。
【０１０５】
照明部１２０は、ＣＰＵ９１０からの指示を受け、光源ごとに、指定された光源強度で照明光を照射する。すなわち、光源１２１は、１０Ｌの光源強度で、光源１２２は、Ｌの光源強度で、光源１２３は、Ｌの光源強度で、それぞれ照明光を被写体１９０に照射する。この部分は、図４のステップＳ２０１に相当する。
【０１０６】
ステップＳ２０２以降は実施の形態１と同様に実施し、各光源の波長に相当する単一波長画像を算出する。
【０１０７】
以上の処理により、相対的に反射光が弱かった光源１２１の光源強度が強くされるため、算出した光源１２１の波長に相当する単一波長画像の信号強度も強くなり、Ｓ／Ｎが向上した画像が取得できる。
【０１０８】
なお本実施の形態では、決定部９７１は、強度を算出する単一波長画像中の特定領域を、検出部１７０より供給された二値画像の果実領域としたが、これに限らず、単一波長画像中の任意の空間的位置、任意の形状の領域を設定してよい。
【０１０９】
また、決定部９７１は、単一波長画像中の特定領域の平均強度を算出するとしたが、これに限らず、平均値の代わりに、例えば最小値、最大値、中間値を用いてもよい。
【０１１０】
なお、本実施の形態では、反射光の強度が弱い波長を有する光源の光源強度を強くしたが、これに限らず、反射光の強度が強い波長を有する光源の光源強度を弱くするよう制御してもよい。
【０１１１】
また、本実施の形態では、決定部９７１は、各光源の波長に相当する各反射光の強度が同程度になるように各光源の光源強度を決定するとしたが、これに限らず、任意の強度比で各光源の光源強度を変更してよい。
【０１１２】
なお、本実施の形態では、一度撮像した後に、決定部９７１が、事前の設定に応じて次の撮像時の光源強度を決定していたが、これに限らず、ユーザーが事前に光源強度を決定してもよい。例えば、被写体の分光反射率が分かっている場合、ユーザーが事前に、相対的に反射率の低い波長に相当する光源の光源強度を、他の光源の光源強度よりも強く設定してもよい。この場合、図１０に示すように、決定部９７１に代えて光源毎の設定強度を事前に入力可能なユーザーインターフェース９７３が設けられる。なお、ユーザーインターフェース９７３から入力された光源毎の設定強度をメモリ１４０に記憶させ、ＣＰＵ１１０がメモリ１４０から光源毎の設定強度を読み出してもよい。
【０１１３】
［４−３．まとめ］
図９に示す外観検査装置９００では、決定部９７１は、演算部１５０が生成した単一波長画像の特定領域における反射光強度から、次回撮像時の各光源の光源強度を決定する。ＣＰＵ９１０は決定部９７１が決定した光源強度を用いて、照明部１２０を制御する。
【０１１４】
これにより、決定部９７１は、反射率が低い光源を検出し、ＣＰＵ９１０は、決定部９７１の検出結果を用いて、反射率が低い光源の光源強度を強くする制御を行うことができる。すなわち、光源毎の強度は、独立に制御可能であり、複数の光源のうち、被写体１９０の反射光の強度が相対的に弱い光源では、その強度が強くなるよう制御される。この場合、ＣＰＵ９１０は複数の光源の少なくとも１つの強度を制御する制御部として機能する。
【０１１５】
従って、撮像画像から分離される単一波長画像の信号強度が強くなり、演算部１５０は、Ｓ／Ｎ比が向上した画像を生成することができる。すなわち、観測の精度を向上させることができる。
【０１１６】
（他の実施の形態）
以上のように、本開示における技術の例示として、実施の形態１〜４を説明した。しかしながら、本開示における技術は、これに限定されず、変更、置き換え、付加、省略などを行った実施の形態にも適用できる。また、上記実施の形態１〜４で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。
【０１１７】
そこで、以下、他の実施の形態を例示する。本開示では、照明部１２０において、照明光を同時に照射する光源数を３、撮像部１３０に含まれるカメラの取得できる色数を３（ＲＧＢ）としたが、これに限定されない。未知数の数に対して、連立方程式の式の数が上回る構成であれば、任意の光源数及び色数でよい。つまり、照明光を同時に照射する光源数を、カメラで取得できる色数以下とすればよい。例えば、カメラで取得できる色数が４であれば、同時に照明できる光源数を４以下とすればよい。ただし、未知数の数に対して、方程式の数が多くなる場合、すなわち、照明光を同時に照射する光源数が、カメラで取得できる色数より少ない場合は、最適解を計算するような、例えば最小二乗法のような手法を用いる必要がある。また、照明光を同時に照射する光源数及びカメラの取得できる色数を増やした場合、メモリ１４０で保持する、各光源における、撮像部の各色の感度特性に関する情報も適切に変更する必要がある。例えば、カメラで取得できる色数が４であれば、各光源における、撮像部の各色の感度特性に関する情報であるベクトルは、４次元ベクトルとなる。
【０１１８】
単一波長光源としてＬＥＤを用いたが、狭帯域の相対分光分布を有する光源であれば任意の光源を用いることができる。例えばレーザー、モノクロメーター、特定波長の光を透過させる光学フィルタを用いた光源でもよい。広義には、方程式を構成するにあたり、被写体の分光反射率分布を含めた反射光のＲＧＢベクトルと光源のＲＧＢベクトルの方向を同一と見なせればどのような光源でもよい。
【０１１９】
各光源の中心波長が、４５０ｎｍ、５５０ｎｍ、６５０ｎｍである光源を用いたが、これに限らず、どの波長の光源を用いてもよい。
【０１２０】
暗室での撮像としたが、環境光が存在する場合でもよい。その場合、例えば、照明光を照射して撮像した撮像画像と、照明光を照射しないで撮像した撮像画像の差分画像を計算する。その差分画像は、照明光に関連する反射光のみ含まれるため、実質的に暗室で撮像した場合と同等と見なすことができる。
【０１２１】
メモリ１４０に保持されている各光源における、撮像部１３０の各色の感度特性に関する情報であるＲＧＢベクトルの長さを１に正規化したが、これに限らず、任意の長さにしてもよい。どのような長さにしても、その分重みの値が対応して変化するだけで、反射光画像を構成する際に、重みとＲＧＢベクトルの積をとると同じ値となる。
【０１２２】
また、各光源の強度に関する情報を取得し、光源の強度に応じた値で正規化してもよい。例えば、光源１２１〜１２３の強度比が１：２：３であった場合、各光源における、撮像部１３０の各色の感度特性に関する情報であるＲＧＢベクトルの長さを、それぞれ１、２、３として正規化してもよい。もしくは、長さの比が、１：２：３となる任意の長さで正規化してもよい。
【０１２３】
色情報としてＲＧＢ値を用いたが、これに限らず、任意の色情報を用いてよい。例えば、ＲＧＢ値から線形変換によって得られる、輝度信号と色差信号のような値を用いてもよい。
【０１２４】
ステップＳ２０４の演算を全画素で行うとしたが、これに限らず、例えば画像の一部の画素でのみで実施してもよい。
【０１２５】
メモリ１４０で保持する光源１２１及び光源１２２の分光情報を、光源１２１及び光源１２２を撮像素子で撮像した場合のＲＧＢベクトルであり、光源１２１及び光源１２２の分光分布と、撮像素子の分光感度特性を含んだ値としたが、これに限らず、より細かい波長の刻みで各光源の分光分布と撮像素子の分光感度特性を含んだ分光情報を保持してもよい。その場合、波長方向の積分により、ＲＧＢ値に変換する演算を実施してＲＧＢ値を算出する。また各光源の分光情報と撮像素子の分光情報を別々で保持しておき、演算により組み合わせてもよい。
【０１２６】
各光源における、撮像部１３０の各色の感度特性に関する情報の取得方法を、各光源を直接、撮像部１３０で撮像して得たＲＧＢ値を正規化して取得するとしたが、任意の方法を用いてよい。正規化に関しては、上述の通りだが、ＲＧＢ値の取得は、これに限らず、撮像部１３０の各色の分光感度特性から取得してもよい。その場合、使用する波長もしくは、使用する波長を含む任意の複数の波長における、撮像部１３０の分光感度特性を予め取得しておき、この分光感度特性に基づきＲＧＢ値を取得してもよい。例えば、４００ｎｍから７００ｎｍの間を５ｎｍの間隔でサンプリングした撮像部１３０の分光感度特性をメモリ１４０に保持しておき、使用する光源の波長に応じて、撮像部１３０の分光感度特性から、ＲＧＢ値を取得する。もちろん、４００ｎｍから７００ｎｍの間を５ｎｍの間隔で光源を撮像して取得したＲＧＢ値をメモリ１４０に保持しておき、使用する光源の波長に応じて、ＲＧＢ値を取得してもよい。
【０１２７】
図３に示す特性を撮像部１３０の分光感度特性としたが、図３に限らず、使用する各光源における、撮像部１３０の各色の感度特性に関する情報が一次独立であれば、任意の分光感度特性を有する撮像部を用いてよい。ただし、波長の選択性の自由度を高くするためには、図３のように、各色の重なり合う領域が存在し、各波長における、撮像部１３０の各色の感度特性に関する情報が、広範囲においてお互いに一次独立であるような特徴を有する撮像部が適する。
【０１２８】
また、使用する各光源における、撮像部１３０の各色の感度特性に関する情報がお互いに一次独立であるかを判別する判別部を新たに設けてもよい。判別部は、演算部１５０の演算の前に、メモリ１４０から取得した、使用する各光源における、撮像部１３０の各色の感度特性に関する情報がお互いに一次独立であるかどうかを判別し、判別結果をＣＰＵ１１０へ渡す。ＣＰＵ１１０は、一次独立であるという結果を受け取った場合は、演算部１５０において演算を実施し、一次独立でないという結果を受け取った場合は、演算部１５０での演算は実施せず、さらに任意の方法でユーザーに使用する光源の組み合わせでは、演算による分離を実施できないことを伝える。
【０１２９】
照明部１２０は、光源を３つ有しているが、これに限らず、波長の異なる２以上の任意の数の光源を有し、撮像時に、その中からカメラの取得できる色数以下の個数の任意の光源を同時に使用して、照明光を照射する構成としてもよい。その場合、複数の光源の内、使用する可能性のある光源における、撮像部１３０の各色の感度特性に関する情報をメモリ１４０に保持する。例えば、照明部１２０は、光源１２１、光源１２２、光源１２３に加えて、さらに３つの光源を備える構成とする。ある条件の撮像時には、光源１２１、１２３と、上記３つの光源のうちの１つを使用し、別の条件の撮像時には、使用する光源を切り替えて、上記３つの光源を使用し、さらに別の条件の撮像時には、異なる組み合わせで光源を使用するような構成としてもよい。すなわち、複数の光源の組み合わせは、変更可能であればよい。
【０１３０】
また、各光源強度が分かれば、これらの光源強度を用いて、演算部１５０によって算出した各光源の波長に相当する反射光画像の強度を補正してもよい。反射光画像の強度の補正は、演算部１５０が行う。例えば、光源１２１、光源１２２、光源１２３の光源強度の比率が、１：２：３であった場合、演算部１５０が一旦算出した各光源の波長に相当する反射光画像の強度を、それぞれ、演算部１５０がさらに１倍、１／２倍、１／３倍して補正する。これにより、各光源の光源強度の比率が１：１：１であるとみなすことができる。同じ光源強度に対する、各波長の応答を取得できるため、被写体１９０の相対的な分光反射率の情報を取得することができる。また被写体１９０の位置での照度が分かると、被写体１９０の絶対的な分光反射率の情報を取得することができる。
【０１３１】
また、照明部１２０は、被写体１９０に照射する各光源からの照明光の比率が空間的に一定となる特徴を有していてもよい。これにより、例えば、被写体１９０の各位置において、各反射光の比率を計算して解析を行う際、各位置を同等に評価することが可能となる。一方、被写体１９０に照射する各光源からの照明光の比率が空間的に一定でない場合、位置によって、照明光の強度自体が異なる。そのため、位置ごとの各反射光の比率を同等に評価することができない。もしくは、被写体１９０に照射する各光源からの照明光の比率が空間的に一定でない場合でも、事前に各光源において、被写体１９０の三次元空間中の照明光の強度を取得しておけばよい。この場合、撮像時に同時に被写体１９０までの距離を取得することによって、後から各光源の照明光の三次元的な強度の違いを補正することができる。
【０１３２】
選択部１６０から検出部１７０と判断部１８０へ供給する単一波長画像は、異なる単一波長画像の組み合わせを例示したが、これに限らず、同じ単一波長画像の組み合わせでもよい。検出部１７０と判断部１８０へ供給する単一波長画像の組み合わせはどのようにしてもよい。また、被写体１９０に応じて、選択部１６０は選択する複数の単一波長画像を変更してもよい。
【０１３３】
実施の形態１の検出部１７０の動作の説明において、反射光Ｒ２のみを含んだ単一波長画像と反射光Ｒ３のみを含んだ単一波長画像の同じ位置にあたる画素値を用いて、画素毎に比を算出するとしたが、これに限るものではない。用いる単一波長画像と演算方法の組み合わせは自由に選択できる。例えば、差分、正規化差分などが挙げられるが、被写体に応じて適当な単一波長画像と演算方法の組み合わせを採用すればよい。以上の点は、判断部１８０の動作においても同様である。
【０１３４】
実施の形態１の判断部１８０の動作の説明において、トマトの傷を画像のエッジによって検出するとしたが、この画像のエッジを検出する方法はどのような方法を用いてもよい。例えば、キャニー法やソーベルフィルタのような１次微分を行う方法やラプラシアンフィルタのような２次微分を行う方法が挙げられるが、この例示以外にも画像中のエッジを検出するような方法であればいかなる処理方法を用いてもよい。
【０１３５】
実施の形態１の判断部１８０の動作の説明において、トマトの傷を画像のエッジによって検出するとしたが、トマトの傷を検出する方法はエッジ検出でなくてもよい。例えば、検出部１７０の動作と同じように、トマトの果実と傷の分光分布の差異を利用し、閾値処理によってトマトの果実と傷を二値に分離した二値画像を生成することができる。さらに検出部１７０から供給された二値画像の果実領域をマスク画像として利用し、その論理積を算出することで、トマトの果実に存在する傷のみを抽出することができる。
【０１３６】
実施の形態２の検出部１７０の動作の説明において、サポートベクターマシンを用いてトマトの果実とヘタのクラス分類結果から識別境界を決定したが、識別境界の決定方法はこれに限定されない。他の識別境界決定手法、例えば、フィッシャーの線形判別法を用いてもよいし、手動で識別境界を決定してもよい。また、識別境界は線形関数に限らず、非線形関数でもよい。さらに、識別境界の決定に用いる空間は、平面に限らずどのような多次元空間でもよい。また、例えば、ｋ近傍法や深層学習といった機械学習アルゴリズムを利用してトマトの果実とヘタとをクラス分類し、トマトの果実とヘタとを二値に分離した二値画像を生成してもよい。なお、実施の形態２において、トマトの果実とヘタという二項分類について説明をしたが、識別境界を複数用意し、例えば、トマトの果実の熟している部分と熟していない部分とヘタのように３つ以上の部位を検出することも可能である。
【０１３７】
実施の形態１〜４において、トマトを被写体１９０の例として外観検査装置の動作を説明したが、これに限らず、外観検査装置１００、７００、９００は、みかん、りんごなど青果物、ひいては、食品の汚れ、傷み、腐敗の検出に広く適用可能である。また、鉄橋、鉄塔、ビルなど建造物のさび、腐食など正常部位と異なる分光分布を持つ異常部位の検出にも適用可能である。また、病気によって変色した細胞部分、肌のしみなどの生体における異常部位の検出にも適用可能である。総じて、被写体１９０の分光分布から被写体１９０の特定部位の検出および特徴的な部分の抽出に適当な光源波長を選択することで、同様の効果が得られる。
【０１３８】
実施の形態１の撮像部１３０が有する撮像素子の色フィルタ配列をベイヤ配列として説明したがこれに限るものではなく、例えばストライプ配置など他の配置であっても同様の効果が得られる。また撮像素子の画素配置も市松パターンに限るものではなく、例えばハニカム配列等の他の配列であっても構わない。さらに、撮像素子の各画素に配置される色フィルタの分光感度特性の例を図３に示したが、分光感度特性はこれに限るものではなく、実施の形態１に示した特徴を有する特性のフィルタであれば、その特性のプロファイルが異なっても同様の効果が得られる。
【０１３９】
単一波長画像を用いて、特定部位の検出とさらに特徴的な部分の抽出と情報の表示を行う構成を説明したが、例えば特徴的な部分の抽出の結果から分かり得た情報を、液晶モニタのような表示装置以外のインジケータ、音声アラームのような装置を用いて作業者に知らしめる構成としてもよい。
【０１４０】
照明部１２０、演算部１５０、選択部１６０、検出部１７０、判断部１８０または７８０を、ＣＰＵ１１０、７１０または９１０と独立した構成として説明したが、これに限るものではない。例えば演算部１５０、選択部１６０、検出部１７０、判断部１８０および７８０の全てもしくは一部の機能をＣＰＵ１１０、７１０または９１０に統合し、そこで実行されるソフトウエアとして実現する構成としてもよい。照明部１２０による光源１２１〜１２３の制御機能をＣＰＵ１１０、７１０または９１０に統合してもよい。
【０１４１】
検出部１７０、判断部１８０に供給する単一波長画像の選択を選択部１６０が行ったが、これに限定するものではなく、ＣＰＵ１１０が行ってもよい。また、検出部１７０、判断部１８０自身が行ってもよい。
【０１４２】
ＣＰＵ９１０を、複数の光源の少なくとも１つの強度を制御する制御部としたが、照明部１２０が制御機能を有し、照明部１２０が上記制御部として機能してもよい。
【０１４３】
また、本開示の外観検査装置において、各機能構成要素（機能ブロック）は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等の半導体装置により個別に１チップ化されてもよいし、一部又は全部を含むように１チップ化されてもよい。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。
【０１４４】
また、上述した各種処理（例えば、図４に示す手順）の全部又は一部は、電子回路等のハードウェアにより実現されても、ソフトウェアを用いて実現されてもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現してもよい。なお、ソフトウェアによる処理は、外観検査装置に含まれるプロセッサがメモリに記憶された制御プログラムを実行することにより実現されるものである。加えて、上記実施の形態の各処理をソフトウェアで実現する場合に、処理の一部あるいは全体を別々のハードウェアで行ってもよい。例えば、処理の一部を、ネットワークを介したサーバ側で所持、実行してもよい。
【０１４５】
なお、上述の実施の形態は、本開示における技術を例示するためのものであるから、請求の範囲またはその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
【産業上の利用可能性】
【０１４６】
本開示は、被写体の部位毎の分光分布の差異を利用して、特定部位の情報の検出を行う装置に適用可能である。具体的には、選果装置、内視鏡装置、分析装置、外観検査装置などに、本開示は適用可能である。
【符号の説明】
【０１４７】
１００，７００，９００    外観検査装置
１１０，７１０，９１０    ＣＰＵ
１２０    照明部
１２１，１２２，１２３    光源
１３０    撮像部
１４０    メモリ
１５０    演算部
１６０    選択部
１７０    検出部
１８０，７８０    判断部
１９０    被写体
５００    画像
６００    直線
７８１    出力部
９７１    決定部
９７３    ユーザーインターフェース
【図１】
0006765036.tif 000003
【図２】
0006765036.tif 000004
【図３】
0006765036.tif 000005
【図４】
0006765036.tif 000006
【図５】
0006765036.tif 000007
【図６】
0006765036.tif 000008
【図７】
0006765036.tif 000009
【図８】
0006765036.tif 000010
【図９】
0006765036.tif 000011
【図１０】
0006765036.tif 000012