(57)【要約】【課題】通常検査と、深層学習処理による検査を適用可能にする場合に、処理時間を短時間化しながら、高い検査精度が得られるようにする。【解決手段】新たに取得された検査対象画像に対し通常検査処理を適用し、検査対象画像内の特徴量と良品判定を確定させる閾値、又は不良品判定を確定させる閾値とに基づいて、良品判定又は不良品判定が可能な特徴量を有する検査対象画像に対しては良品判定又は不良品判定を確定させる。良品判定又は不良品判定が確定できない特徴量を有する検査対象画像に対しては深層学習処理を適用し、良品又は不良品の判定を実行する。【選択図】図１１
2020187656.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物を撮像して取得された検査対象画像に基づいて検査対象物の良否判定を行う画像検査装置において、
検査に用いる特徴量の設定と、当該特徴量と比較され、良品判定を確定させる閾値、又は不良品判定を確定させる閾値の設定とを使用者から受け付けることにより、通常検査処理の設定を行う通常検査設定手段と、
良品属性が付与された複数の良品画像及び／又は不良品属性が付与された複数の不良品画像を、ニューラルネットワークの入力層に入力して当該ニューラルネットワークに学習させ、新たに入力された検査対象画像を良品画像と不良品画像に分類する深層学習処理の設定を行う深層学習設定手段と、
新たに取得された検査対象画像に対し前記通常検査処理を適用し、当該検査対象画像内の特徴量と前記良品判定を確定させる閾値、又は前記不良品判定を確定させる閾値とに基づいて、良品判定又は不良品判定が可能な特徴量を有する検査対象画像に対しては良品判定又は不良品判定を確定させ、良品判定又は不良品判定が確定できない特徴量を有する検査対象画像に対して前記深層学習処理を適用し、良品又は不良品の判定を実行可能な検査実行手段とを備えていることを特徴とする画像検査装置。
【請求項２】
請求項１に記載の画像検査装置において、
前記検査実行手段は、前記通常検査処理において、良品判定が可能な特徴量を有する検査対象画像に対しては良品判定を確定させるとともに、不良品判定が可能な特徴量を有する検査対象画像に対しては不良品判定を確定させ、良品判定が確定できない特徴量を有する検査対象画像と、不良品判定が確定できない特徴量を有する検査対象画像とに対してのみ前記深層学習処理を適用するように構成されていることを特徴とする画像検査装置。
【請求項３】
請求項１または２に記載の画像検査装置において、
前記検査実行手段は、前記通常検査処理において正規化相関を用いて良否判定を行い、前記通常検査処理で求めた相関値が前記不良品判定を確定させる閾値以下である場合には、当該通常検査処理において不良品判定を確定させるように構成されていることを特徴とする画像検査装置。
【請求項４】
請求項１または２に記載の画像検査装置において、
前記検査実行手段は、前記通常検査処理において正規化相関を用いて良否判定を行い、前記通常検査処理で求めた相関値が前記良品判定を確定させる閾値以上である場合には、当該通常検査処理において良品判定を確定させるように構成されていることを特徴とする画像検査装置。
【請求項５】
請求項１または２に記載の画像検査装置において、
前記検査実行手段は、予め登録された登録画像と新たに取得された検査対象画像との差分をブロブ検出する差分検査で良否判定を行い、前記通常検査処理で求めた差分のブロブ面積が前記不良品判定を確定させる閾値以上である場合には、当該通常検査処理において不良品判定を確定させるように構成されていることを特徴とする画像検査装置。
【請求項６】
請求項１または２に記載の画像検査装置において、
前記検査実行手段は、予め登録された登録画像と新たに取得された検査対象画像との差分をブロブ検出する差分検査で良否判定を行い、前記通常検査処理で求めた差分のブロブ面積が前記良品判定を確定させる閾値以下である場合には、当該通常検査処理において良品判定を確定させるように構成されていることを特徴とする画像検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査対象物を撮像した画像に基づいて検査対象物の良否判定を行う画像検査装置に関する。
【背景技術】
【０００２】
例えば特許文献１に開示されているように、検査対象物を撮像した画像を用いた一般的な検査処理では、画像内の検査対象物の様々な特徴量（色、エッジ、位置等）に基づいて検査対象物の良否の判定を行う（以下、通常検査という）。通常検査では、画像検査装置の設定時に使用者がどのような特徴量に基づいて検査を行うか選択し、選択された特徴量に対して良否判定の基準となる閾値を設定し、運用時に新たに入力された検査画像から設定時に選択された特徴量を抽出し、抽出された特徴量を閾値と比較することにより検査対象物の良否判定を行う。色やエッジなどの特徴量がはっきりしている画像に対しては良否判定が容易であるが、例えば色ムラが多い検査対象物や、金属部品のように周囲の環境によってエッジの出方が変わりやすい検査対象物などでは、特徴量が撮像条件などによって変化しやすく、人間の目による検査では良否判定が容易であっても、画像検査装置では判定が難しく、ひいては、判定結果が安定しないことがある。
【０００３】
このような難しい検査に対応が可能な検査処理技術として、良品が撮像された良品画像と不良品が撮像された不良品画像の特徴をそれぞれニューラルネットワークなどの公知の機械学習器に学習させ、新たに入力された検査対象物の画像が良品であるか、不良品であるかを機械学習器によって識別する技術が知られている（例えば特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１２０５５０号公報
【特許文献２】特開２０１８−５６４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、ニューラルネットワークの層を多層にし、識別能力を大きく向上させたもので学習させることは一般にディープラーニング（深層学習）と呼ばれている。ディープラーニングでは、事前に複数の良品属性が付与された画像と、不良品属性が付与された画像を多層のニューラルネットワークに入力し、良品画像と不良品画像とを識別できるように、ネットワーク内の複数のパラメータを調整していき、学習を完了させる。このディープラーニングは多方面で用いられている。
【０００６】
しかし、深層学習処理は、学習に用いていない未知のデータが入力された場合の挙動が不安定であるという問題がある。すなわち、深層学習処理を検査対象物の検査処理に適用し、検査対象物が良品であるか、不良品であるかの２クラス判別を学習させた場合に、例えば学習データに存在していなかったような想定外の不良状態のものが入力されると、良品と間違えて判定してしまうおそれがあり、このことは工場などにおける検査工程では未然に防止する必要がある。また、深層学習処理は、通常検査に比べると判定に要する処理時間が長くなり、このことも工場などにおける検査工程では改善すべき課題となる。
【０００７】
このように、深層学習処理は、通常検査での対応が難しい検査対象物の検査が可能になるという利点があるものの、未知のデータへの挙動が不安定であったり、処理時間が長くなるという問題があった。一方、特徴量がはっきりしていれば通常検査でも十分に安定的な検査が可能であり、そのような場合にはあえて深層学習処理を利用するメリットは殆どない。
【０００８】
本発明は、かかる点に鑑みてなされたものであり、その目的とするところは、通常検査と、深層学習処理による検査を適用可能にする場合に、処理時間を短時間化しながら、高い検査精度が得られるようにすることにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、第１の発明は、検査対象物を撮像して取得された検査対象画像に基づいて検査対象物の良否判定を行う画像検査装置において、検査に用いる特徴量の設定と、当該特徴量と比較され、良品判定を確定させる閾値、又は不良品判定を確定させる閾値の設定とを使用者から受け付けることにより、通常検査処理の設定を行う通常検査設定手段と、良品属性が付与された複数の良品画像及び／又は不良品属性が付与された複数の不良品画像を、ニューラルネットワークの入力層に入力して当該ニューラルネットワークに学習させ、新たに入力された検査対象画像を良品画像と不良品画像に分類する深層学習処理の設定を行う深層学習設定手段と、新たに取得された検査対象画像に対し前記通常検査処理を適用し、当該検査対象画像内の特徴量と前記良品判定を確定させる閾値、又は前記不良品判定を確定させる閾値とに基づいて、良品判定又は不良品判定が可能な特徴量を有する検査対象画像に対しては良品判定又は不良品判定を確定させ、良品判定又は不良品判定が確定できない特徴量を有する検査対象画像に対して前記深層学習処理を適用し、良品又は不良品の判定を実行可能な検査実行手段とを備えていることを特徴とする。
【００１０】
この構成によれば、通常検査設定手段により、検査に用いる特徴量の設定と、良品判定を確定させる閾値、又は不良品判定を確定させる閾値の設定とが行え、また、深層学習設定手段により、ニューラルネットワークに良品画像や不良品画像を学習させて良品画像と不良品画像の分類が行えるようになる。つまり、通常検査処理と深層学習処理とを行うことが可能になる。ニューラルネットワークの入力層には、学習用画像として、良品画像のみを入力してもよいし、不良品画像のみを入力してもよい。また、ニューラルネットワークの層の数を３層以上とすることで、いわゆるディープラーニングによって識別能力が大きく向上する。
【００１１】
新たに取得された検査対象画像に対し通常検査処理を適用したとき、検査対象画像内の特徴量と良品判定を確定させる閾値とに基づいて良品判定が可能な特徴量を有する検査対象画像に対しては良品判定を確定させる。また、検査対象画像内の特徴量と不良品判定を確定させる閾値とに基づいて不良品判定が可能な特徴量を有する検査対象画像に対しては不良品判定を確定させる。したがって、明らかに良品と判定できる検査対象物又は明らかに不良品と判定できる検査対象物を、処理速度の速い通常検査処理によって検査することで、スループットが大きく向上する。残りの僅かな検査対象物だけを深層学習処理によって検査するので、処理速度の低下を抑制しながら、検査精度を高めることが可能になる。
【００１２】
第２の発明は、前記検査実行手段は、前記通常検査処理において、良品判定が可能な特徴量を有する検査対象画像に対しては良品判定を確定させるとともに、不良品判定が可能な特徴量を有する検査対象画像に対しては不良品判定を確定させ、良品判定が確定できない特徴量を有する検査対象画像と、不良品判定が確定できない特徴量を有する検査対象画像とに対してのみ前記深層学習処理を適用するように構成されていることを特徴とする。
【００１３】
この構成によれば、明らかに良品と判定できる検査対象物と、明らかに不良品と判定できる検査対象物の両方を処理速度の速い通常検査処理によって検査することができる。
【００１４】
第３の発明は、前記検査実行手段は、前記通常検査処理において正規化相関を用いて良否判定を行い、前記通常検査処理で求めた相関値が前記不良品判定を確定させる閾値以下である場合には、当該通常検査処理において不良品判定を確定させるように構成されていることを特徴とする。
【００１５】
この構成によれば、通常検査処理において例えばパターンサーチのような正規化相関を用いて良否判定を行う場合、相関値を求めることができる。通常検査処理で求めた相関値が不良品判定を確定させる閾値以下であり、低い場合には、不良品である可能性が高く、この場合に不良品判定を確定させることで、誤判定を極めて少なくすることができる。
【００１６】
第４の発明は、前記検査実行手段は、前記通常検査処理において正規化相関を用いて良否判定を行い、前記通常検査処理で求めた相関値が前記良品判定を確定させる閾値以上である場合には、当該通常検査処理において良品判定を確定させるように構成されていることを特徴とする。
【００１７】
この構成によれば、通常検査処理で求めた相関値が良品判定を確定させる閾値以上であり、高い場合には、良品である可能性が高く、この場合に良品判定を確定させることで、誤判定を極めて少なくすることができる。
【００１８】
第５の発明は、前記検査実行手段は、予め登録された登録画像と新たに取得された検査対象画像との差分をブロブ検出する差分検査で良否判定を行い、前記通常検査処理で求めた差分のブロブ面積が前記不良品判定を確定させる閾値以上である場合には、当該通常検査処理において不良品判定を確定させるように構成されていることを特徴とする。
【００１９】
この構成によれば、差分のブロブ面積によって不良品判定を確定させることができるので、この場合には深層学習処理を用いなくて済む。これにより、深層学習処理に特有の不安定な挙動を排除することができる。
【００２０】
第６の発明は、前記検査実行手段は、予め登録された登録画像と新たに取得された検査対象画像との差分をブロブ検出する差分検査で良否判定を行い、前記通常検査処理で求めた差分のブロブ面積が前記良品判定を確定させる閾値以下である場合には、当該通常検査処理において良品判定を確定させるように構成されていることを特徴とする。
【００２１】
この構成によれば、通常検査処理でブロブ検出を用いて良否判定を行う場合、差分のブロブ面積を求めることができる。差分のブロブ面積が良品判定を確定させる閾値以下で小さい場合には、明らかに良品である可能性が高く、このような場合に良品判定を確定させることで、誤判定を極めて少なくすることができる。
【発明の効果】
【００２２】
本発明によれば、検査対象画像内の特徴量と良品判定を確定させる閾値、又は不良品判定を確定させる閾値とに基づいて、良品判定又は不良品判定が可能な特徴量を有する検査対象画像に対しては良品判定又は不良品判定を確定させ、良品判定又は不良品判定が確定できない特徴量を有する検査対象画像に対して深層学習処理を適用することができるので、処理時間を短時間化しながら、高い検査精度を得ることができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の実施形態に係る画像検査装置の構成を示す模式図である。
【図２】画像検査装置のハードウエア構成を示す図である。
【図３】画像検査装置のブロック図である。
【図４】パターンサーチと深層学習処理を組み合わせた場合に表示するユーザーインターフェースを示す図である。
【図５】差分検査と深層学習処理を組み合わせた場合に表示するユーザーインターフェースを示す図である。
【図６】学習検査と深層学習処理を組み合わせた場合に表示するユーザーインターフェースを示す図である。
【図７】傷検出と深層学習処理を組み合わせた場合に表示するユーザーインターフェースを示す図である。
【図８】通常検査処理で不良品判定を行い、残りを深層学習処理で良否判定する場合の手順を示すフローチャートである。
【図９】深層学習処理のみの累積ヒストグラムと、通常検査処理と深層学習処理を組み合わせた場合の累積ヒストグラムを示す図である。
【図１０】通常検査処理で良品判定を行い、残りを深層学習処理で良否判定する場合の手順を示すフローチャートである。
【図１１】通常検査処理で良品判定及び不良品判定を確定させ、残りを深層学習処理で良否判定する場合の手順を示すフローチャートである。
【図１２】良品画像と不良品画像とが第１の分布例である場合を示す図６相当図である。
【図１３】良品画像と不良品画像とが第２の分布例である場合を示す図６相当図である。
【図１４】良品画像と不良品画像とが第１の分布例である場合を示す図７相当図である。
【図１５】良品画像と不良品画像とが第２の分布例である場合を示す図７相当図である。
【図１６】累積ヒストグラムを表示する場合のユーザーインターフェースを示す図である。
【図１７】通常検査処理と深層学習処理の両方で良品画像と不良品画像との分離ができない場合の分布例を示す図１６相当図である。
【図１８】通常検査用閾値表示線を表示した場合の図１６相当図である。
【図１９】累積ヒストグラムの不良品のみの分布、良品のみの分布及び不良品と良品とが混在する分布を示す図である。
【図２０】数値表示する場合の例を示す図１６相当図である。
【図２１】通常検査処理と深層学習処理の両方で良品画像と不良品画像との分離ができない場合の分布例を示す図２０相当図である。
【図２２】通常検査用閾値表示線を表示した場合の図２０相当図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施形態を図面に基づいて詳細に説明する。尚、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本発明、その適用物或いはその用途を制限することを意図するものではない。
【００２５】
図１は、本発明の実施形態に係る画像検査装置１の構成を示す模式図である。画像検査装置１は、例えば各種部品や製品等の検査対象物を撮像して取得された検査対象画像に基づいて検査対象物の良否判定を行うための装置であり、工場等の生産現場等で使用することができる。検査対象物は、それ全体が検査対象であってもよいし、検査対象物の一部のみが検査対象であってもよい。また、１つの検査対象物に複数の検査対象が含まれていてもよい。また、検査対象画像には、複数の検査対象物が含まれていてもよい。検査対象物はワークと呼ぶこともできる。
【００２６】
画像検査装置１は、装置本体となる制御ユニット２と、撮像ユニット３と、表示装置（表示部）４と、パーソナルコンピュータ５とを備えている。パーソナルコンピュータ５は、必須なものではなく、省略することもできる。表示装置４の代わりにパーソナルコンピュータ５を使用して各種情報や画像を表示させることもできる。図１では、画像検査装置１の構成例の一例として、制御ユニット２、撮像ユニット３、表示装置４及びパーソナルコンピュータ５を別々のものとして記載しているが、これらのうち、任意の複数を組み合わせて一体化することもできる。例えば、制御ユニット２と撮像ユニット３を一体化することや、制御ユニット２と表示装置４を一体化することもできる。また、制御ユニット２を複数のユニットに分割して一部を撮像ユニット３や表示装置４に組み込むことや、撮像ユニット３を複数のユニットに分割して一部を他のユニットに組み込むこともできる。
【００２７】
（撮像ユニット３の構成）
図２に示すように、撮像ユニット３は、カメラモジュール（撮像部）１４と、照明モジュール（照明部）１５とを備えており、検査対象画像の取得を実行するユニットである。カメラモジュール１４は、撮像光学系を駆動するＡＦ用モータ１４１と、撮像基板１４２とを備えている。ＡＦ用モータ１４１は、撮像光学系のレンズを駆動することにより、自動でピント調整を実行する部分であり、従来から周知のコントラストオートフォーカス等の手法によってピント調整を行うことができる。カメラモジュール１４による撮像視野範囲（撮像領域）は、検査対象物を含むように設定されている。撮像基板１４２は、撮像光学系から入射した光を受光する受光素子としてＣＭＯＳセンサ１４３と、ＦＰＧＡ１４４と、ＤＳＰ１４５とを備えている。ＣＭＯＳセンサ１４３は、カラー画像を取得することができるように構成された撮像センサである。ＣＭＯＳセンサ１４３の代わりに、例えばＣＣＤセンサ等の受光素子を用いることもできる。ＦＰＧＡ１４４及びＤＳＰ１４５は、撮像ユニット３の内部において画像処理を実行するためのものであり、ＣＭＯＳセンサ１４３から出力された信号はＦＰＧＡ１４４及びＤＳＰ１４５にも入力されるようになっている。
【００２８】
照明モジュール１５は、検査対象物を含む撮像領域を照明する発光体としてのＬＥＤ（発光ダイオード）１５１と、ＬＥＤ１５１を制御するＬＥＤドライバ１５２とを備えている。ＬＥＤ１５１による発光タイミング、発光時間、発光量は、ＬＥＤドライバ１５２によって任意に設定することができる。ＬＥＤ１５１は、撮像ユニット３に一体に設けてもよいし、撮像ユニット３とは別体として外部照明ユニットとして設けてもよい。図示しないが、照明モジュール１５には、ＬＥＤ１５１から照射された光を反射するリフレクターや、ＬＥＤ１５１から照射された光が通過するレンズ等が設けられている。ＬＥＤ１５１から照射された光が検査対象物と、検査対象物の周辺領域に照射されるように、ＬＥＤ１５１の照射範囲が設定されている。発光ダイオード以外の発光体を使用することもできる。
【００２９】
（制御ユニット２の構成）
制御ユニット２は、メイン基板１３と、コネクタ基板１６と、通信基盤１７と、電源基板１８とを備えている。メイン基板１３には、ＦＰＧＡ１３１と、ＤＳＰ１３２と、メモリ１３３とが搭載されている。ＦＰＧＡ１３１とＤＳＰ１３２は制御部１３Ａを構成するものであり、これらが一体化された主制御部を設けることもできる。
【００３０】
メイン基板１３の制御部１３Ａは、接続されている各基板及びモジュールの動作を制御する。例えば、制御部１３Ａは、照明モジュール１５のＬＥＤドライバ１５２に対してＬＥＤ１５１の点灯／消灯を制御する照明制御信号を出力する。ＬＥＤドライバ１５２は、制御部１３Ａからの照明制御信号に応じて、ＬＥＤ１５１の点灯／消灯の切替及び点灯時間の調整を行うとともに、ＬＥＤ１５１の光量等を調整する。
【００３１】
また、制御部１３Ａは、カメラモジュール１４の撮像基板１４２に、ＣＭＯＳセンサ１４３を制御する撮像制御信号を出力する。ＣＭＯＳセンサ１４３は、制御部１３Ａからの撮像制御信号に応じて、撮像を開始するとともに、露光時間を任意の時間に調整して撮像を行う。すなわち、撮像ユニット３は、制御部１３Ａから出力される撮像制御信号に応じてＣＭＯＳセンサ１４３の視野範囲内を撮像し、視野範囲内に検査対象物があれば、検査対象物を撮像することになるが、検査対象物以外の物が視野範囲内にあれば、それも撮像することができる。例えば、画像検査装置１の設定時には、使用者により良品としての属性を付与された良品画像と、不良品としての属性を付与された不良品画像とを撮像することができる。画像検査装置１の運用時には、検査対象物を撮像することができる。また、ＣＭＯＳセンサ１４３は、ライブ画像、即ち現在の撮像された画像を短いフレームレートで随時出力することができるように構成されている。
【００３２】
ＣＭＯＳセンサ１４３による撮像が終わると、撮像ユニット３から出力された画像信号は、メイン基板１３のＦＰＧＡ１３１に入力され、ＦＰＧＡ１３１及びＤＳＰ１３２によって処理されるとともに、メモリ１３３に記憶されるようになっている。メイン基板１３の制御部１３Ａによる具体的な処理内容の詳細については後述する。
【００３３】
コネクタ基板１６は、電源インターフェース１６１に設けてある電源コネクタ（図示せず）を介して外部から電力の供給を受ける部分である。電源基板１８は、コネクタ基板１６で受けた電力を各基板及びモジュール等に分配する部分であり、具体的には、照明モジュール１５、カメラモジュール１４、メイン基板１３、及び通信基板１７に電力を分配する。電源基板１８は、ＡＦ用モータドライバ１８１を備えている。ＡＦ用モータドライバ１８１は、カメラモジュール１４のＡＦ用モータ１４１に駆動電力を供給し、オートフォーカスを実現している。ＡＦ用モータドライバ１８１は、メイン基板１３の制御部１３ＡからのＡＦ制御信号に応じて、ＡＦ用モータ１４１に供給する電力を調整する。
【００３４】
通信基板１７は、メイン基板１３の制御部１３Ａから出力された検査対象物の良否判定信号、画像データ、ユーザーインターフェース等を表示装置４やパーソナルコンピュータ５、外部制御機器（図示せず）等に出力する。表示装置４やパーソナルコンピュータ５は、例えば液晶パネル等からなる表示パネルを有しており、画像データやユーザーインターフェース等は表示パネルに表示される。
【００３５】
また、通信基板１７は、表示装置４が有するタッチパネル４１やパーソナルコンピュータ５のキーボード５１等から入力された使用者の各種操作を受け付けることができるように構成されている。表示装置４のタッチパネル４１は、例えば感圧センサを搭載した従来から周知のタッチ式操作パネルであり、使用者によるタッチ操作を検出して通信基板１７へ出力する。パーソナルコンピュータ５は、操作デバイスとしてキーボード５１及びマウス５２を備えている。パーソナルコンピュータ５は、操作デバイスとしてタッチパネル（図示せず）を備えていてもよい。パーソナルコンピュータ５は、これら操作デバイスから入力された使用者の各種操作を受け付けることができるように構成されている。通信は、有線であってもよいし、無線であってもよく、いずれの通信形態も、従来から周知の通信モジュールによって実現することができる。
【００３６】
制御ユニット２には、例えばハードディスクドライブ等の記憶装置１９が設けられている。記憶装置１９には、後述する各制御及び処理を上記ハードウエアによって実行可能にするためのプログラムファイル８０や設定ファイル等（ソフトウエア）が記憶されている。プログラムファイル８０や設定ファイルは、例えば光ディスク等の記憶媒体９０に格納しておき、この記憶媒体９０に格納されたプログラムファイル８０や設定ファイルを制御ユニット２にインストールすることができる。また、記憶装置１９には、上記画像データや良否判定結果等を記憶させておくこともできる。
【００３７】
（画像検査装置１の具体的な構成）
図３は、画像検査装置１のブロック図であり、プログラムファイル８０や設定ファイルがインストールされた制御ユニット２により、図３に示す各部が構成される。すなわち、画像検査装置１は、画像入力部２１と、通常検査設定部（通常検査設定手段の一例）２２と、深層学習設定部（深層学習設定手段の一例）２３と、検査実行部（検査実行手段の一例）２４と、表示制御部２５と、閾値調整部（閾値調整手段の一例）２６と、検査選択部（検査選択手段の一例）２７とを備えている。表示制御部２５と表示装置４とによって表示手段が構成されている。これら各部２１〜２７や手段は、ハードウエアのみで構成されていてもよいし、ハードウエアとソフトウエアとの組み合わせによって構成されていてもよい。例えば、閾値調整部２６には、キーボード５１やマウス５２を含むこともできる。
【００３８】
また、図３に示す各部２１〜２７は、概念的に独立したように示しているが、任意の２つ以上の部分が統合された形態であってもよく、図示した形態に限られるものではない。また、各部２１〜２７や手段は、それぞれが独立したハードウエアで構成されたものであってもよいし、１つのハードウエアまたはソフトウエアによって複数の機能が実現されるように構成されたものであってもよい。また、図３に示す各部２１〜２７や手段の機能や作用は、メイン基板１３の制御部１３Ａによる制御で実現することもできる。
【００３９】
画像検査装置１は、少なくとも２種類の検査、即ち、通常検査処理による検査対象物の検査と、深層学習処理による検査対象物の検査とを行うことが可能に構成されている。通常検査処理とは、検査対象物を撮像した画像を用いた一般的な検査処理のことであり、画像内の検査対象物の様々な特徴量（色、エッジ、位置等）に基づいて検査対象物の良否の判定を行う処理である。通常検査処理には、例えば、パターンサーチ、差分検査、学習検査、傷検出等が含まれるが、これら以外の検査処理が含まれていてもよい。
【００４０】
一方、深層学習処理は、事前に複数の良品属性が付与された画像と、不良品属性が付与された画像とのうち、少なくとも一方を多層のニューラルネットワークに入力し、良品画像と不良品画像とを識別できるように、ネットワーク内の複数のパラメータを調整して得られた学習済みのニューラルネットワークを用いる検査処理のことである。ここで用いるニューラルネットワークは３層以上であり、いわゆるディープラーニングが可能なニューラルネットワークである。
【００４１】
詳細は後述するが、通常検査処理と深層学習処理とのうち、一方の検査処理のみで安定的な検査が行える場合には、一方の検査処理のみ行うことができる。また、通常検査処理と深層学習処理の両方を併用することで、例えば通常検査処理では判定が難しい検査を深層学習処理で高精度に判定できる。また、学習に用いていない未知のデータが入力された場合に起こり得る深層学習処理に特有の不安定な挙動を、通常検査処理のみの検査処理によって回避することができるようになる。
【００４２】
また、画像検査装置１は、撮像設定等の各種パラメータ設定、マスター画像の登録、通常検査処理の設定、深層学習処理の設定等を行う設定モードと、実際の現場において検査対象物を撮像した検査対象画像に基づいて検査対象物の良否判定を行う運転モード（Ｒｕｎモード）とに切り替えられるようになっている。設定モードでは、使用者が所望の製品検査で良品と不良品とを分けることができるようにするための事前の作業を行うことが可能になっており、この作業には、ニューラルネットワークの学習作業が含まれている。設定モードと運転モードとの切替は、図示しないユーザーインターフェース上で行うことができる他、設定モードの完了と同時に運転モードに自動で移行するように構成することもできる。運転モードから設定モードへの移行も任意に行えるようになっている。また、運転モードにおいて、ニューラルネットワークの再学習を行うこともできる。
【００４３】
（画像入力部２１の構成）
図３に示す画像入力部２１は、設定モード時に、良品属性が付与された複数の良品画像及び／又は不良品属性が付与された複数の不良品画像を深層学習設定部２３に入力する部分であるとともに、登録画像を通常検査設定部２２に入力する部分である。また、画像入力部２１は、運転モード時に、新たに取得された検査対象画像を検査実行部２４に入力する部分でもある。
【００４４】
具体的には、設定モード時に、使用者が検査対象物を撮像ユニット３のＣＭＯＳセンサ１４３の視野範囲に置くと、制御部１３Ａは、ＣＭＯＳセンサ１４３で撮像されたライブ画像を画像入力用ユーザーインターフェース（図示せず）の一部に組み込み、このライブ画像が組み込まれた画像入力用ユーザーインターフェースを表示装置４に表示させる。検査対象物が画像入力用ユーザーインターフェースに表示されている状態で使用者が画像の取り込み操作を行うと、その時点で画像入力用ユーザーインターフェースに表示されている画像、即ち使用者が取り込みたい画像が静止画として取り込まれる。取り込まれた画像は、メモリ１３３や記憶装置１９に記憶される。使用者による画像の取り込み操作は、例えば画像入力用ユーザーインターフェースに組み込まれたボタン操作、キーボード５１やマウス５２の操作等を挙げることができる。
【００４５】
使用者は、画像を取り込む際に、良品属性と不良品属性との一方を付与することができる。例えば、画像入力用ユーザーインターフェースに「良品取り込みボタン」及び「不良品取り込みボタン」を設けておき、画像入力用ユーザーインターフェースに表示されている画像の取り込み時に、「良品取り込みボタン」の操作がなされた場合には、その時点で取り込まれた画像は、良品属性が付与された良品画像として取り込むことができ、一方、「不良品取り込みボタン」の操作がなされた場合には、その時点で取り込まれた画像は、不良品属性が付与された良品画像として取り込むことができる。これを繰り返すことで、複数の良品画像及び複数の不良品画像を取り込むことができる。複数の良品画像を入力する場合、異なる良品を撮像した画像であってもよいし、１つの良品の角度や位置を変えて複数回撮像した画像であってもよい。また、画像検査装置１の内部で例えば画像の明るさを変更する等して、複数の良品画像及び複数の不良品画像を生成してもよい。良品画像及び不良品画像は、それぞれ、例えば１００枚程度用意しておく。例えば、傷を検出する場合には、傷が入った不良品画像を用意することになるが、これは使用者が作成してもよいし、画像検査装置１が自動で作成するようにしてもよい。
【００４６】
深層学習用の画像として、良品画像のみ、または不良品画像のみを取り込むこともできる。また、良品属性及び不良品属性を画像に付与する方法は、上述した方法に限られるものではなく、例えば画像の取り込み後に付与する方法であってもよい。また、良品属性及び不良品属性を付与した後に、属性の修正を受け付けることが可能に構成することもできる。
【００４７】
使用者は、通常検査処理で使用する登録画像をマスター画像として取り込むことができる。登録画像は、例えば新たに取得された検査対象画像との差分をブロブ（塊）検出することによって良否判定を行う差分検査を行う際に使用することができる。また、登録画像は、正規化相関を用いて良否判定を行う際等に使用することができる。例えば、画像入力用ユーザーインターフェースに「登録画像取り込みボタン」を設けておき、画像入力用ユーザーインターフェースに表示されている画像の取り込み時に、「登録画像取り込みボタン」の操作がなされた場合には、その時点で取り込まれた画像を登録画像とすることができる。画像の取り込み後に、取り込んだ画像を登録画像として設定することもできる。
【００４８】
運転モード時には、検査対象物がＣＭＯＳセンサ１４３の視野範囲に入った状態で、制御部１３Ａは、ＣＭＯＳセンサ１４３によって検査対象物を撮像して検査対象画像を取り込む。検査対象画像の取り込みを行うトリガーとなる信号は、従来から周知であり、例えば画像検査装置１の外部から入力される信号であってもよいし、画像検査装置１の内部で生成される信号であってもよい。
【００４９】
（通常検査設定部２２の構成）
通常検査設定部２２は、通常検査に用いる特徴量の設定と、当該特徴量と比較される良否判定の基準となる通常検査用閾値の設定とを使用者から受け付けることにより、通常検査処理の設定を行う部分である。通常検査に用いる特徴量とは、例えば検査対象物の色、検査対象物のエッジ、検査対象物の位置等を挙げることができる。検査対象物のエッジ情報には、エッジの位置、形状、長さ等が含まれる。検査対象物の位置は、検査対象物自体の位置の他、検査対象物の一部の位置も含まれる。通常検査に用いる特徴量は、１つであってもよいし、２つ以上であってもよい。
【００５０】
通常検査に用いる特徴量の設定を行う際には、制御部１３Ａが生成する特徴量設定用ユーザーインターフェース（図示せず）を表示装置４に表示させ、その特徴量設定用ユーザーインターフェースで使用者の操作を受け付ける。特徴量設定用ユーザーインターフェースには、上述した特徴量の入力や選択等を行う特徴量設定部が設けられており、使用者が特徴量設定部に対してキーボード５１やマウス５２によって入力操作を行うと、その入力操作が制御部１３Ａで受け付けられ、検査に用いる特徴量の設定が完了する。設定された特徴量は、メモリ１３３や記憶装置１９に記憶される。
【００５１】
また、上述のようにして設定された特徴量は、良否判定の基準となる通常検査用閾値と比較され、その結果、検査対象画像が良品であるか不良品であるかを、後述する検査実行部２４が判定することになる。このとき用いられる良否判定の基準となる通常検査用閾値の設定を行う際には、制御部１３Ａが生成する閾値設定用ユーザーインターフェース（図示せず）を表示装置４に表示させ、その閾値設定用ユーザーインターフェースで使用者の操作を受け付ける。閾値設定用ユーザーインターフェースには、上述した通常検査用閾値の入力を行うための閾値入力部が設けられている。使用者が閾値入力部に対してキーボード５１やマウス５２によって閾値の入力操作を行うと、その入力操作が制御部１３Ａで受け付けられ、閾値の入力及び設定が完了する。設定された通常検査用閾値は、メモリ１３３や記憶装置１９に記憶される。通常検査用閾値は、画像検査装置１が自動的に設定した後、使用者が調整することで最終的な入力が完了するようにしてもよい。通常検査用閾値は、通常検査処理で用いられる閾値であり、深層学習処理の検査では用いられない。
【００５２】
通常検査用閾値を使用者から受け付ける際、良品判定を確定させる良品確定用閾値と、不良品判定を確定させる不良品確定用閾値とを受け付けるように構成することもできる。良品確定用閾値は、この閾値を基準として、例えば閾値以上であれば良品、または閾値以下であれば良品といった良品の判定を行う閾値であり、良品を確定できる程度に確度の高い閾値に設定することができる。一方、不良品確定用閾値は、この閾値を基準として、例えば閾値以上であれば不良品、または閾値以下であれば不良品といった不良品の判定を行う閾値であり、不良品を確定できる程度に確度の高い閾値に設定することができる。良品確定用閾値と不良品確定用閾値とは、どちらか一方のみ受け付けるようにしてもよいし、両方を受け付けるようにしてもよい。良品確定用閾値と不良品確定用閾値とが入力された場合には、識別可能な状態でメモリ１３３や記憶装置１９に記憶される。
【００５３】
（深層学習設定部２３の構成）
深層学習設定部２３は、良品属性が付与された複数の良品画像及び／又は不良品属性が付与された複数の不良品画像を、ニューラルネットワークの入力層に入力して当該ニューラルネットワークに学習させ、新たに取得された検査対象画像を良品画像と不良品画像に分類する深層学習処理の設定を行う部分である。ニューラルネットワークは、制御部１３Ａ上に構築することができ、少なくとも、入力層、中間層及び出力層を有している。
【００５４】
良品画像や不良品画像は、画像入力部２１によって取得されているので、深層学習設定部２３は、画像入力部２１で取得された良品画像や不良品画像をニューラルネットワークの入力層に入力する。ニューラルネットワークの入力層には、良品画像のみを入力してもよいし、不良品画像のみを入力してもよいし、良品画像及び不良品画像の両方を入力してもよい。これは画像の取得状況に応じて自動的に変更してもよいし、使用者が選択できるようにしてもよい。
【００５５】
深層学習設定部２３は、正解情報（入力した画像が良品であるか、不良品であるか）もニューラルネットワークに提供し、複数の良品画像及び／又は複数の不良品画像と、正解情報とを利用してニューラルネットワークに学習させる。これにより、ニューラルネットワークの複数の初期パラメータが変更されて正答率の高いパラメータになる。このニューラルネットワークの学習は、良品画像や不良品画像が入力された時点で自動的に行わせることもできる。ニューラルネットワークに学習させることで、良品画像と不良品画像との識別が可能な識別器が生成され、新たに取得された検査対象画像を識別器によって良品画像と不良品画像に分類することができるようになる。この識別器は、図３に示す識別器生成部２３ａによって生成することができる。
【００５６】
ニューラルネットワークは、ＣＮＮ（Convolutional Neural Network）をベースにした識別型ネットワークであってもよいし、オートエンコーダーに代表される復元型ニューラルネットワークであってもよい。識別型ネットワークの場合、出力値を正規化した値（一般的にはソフトマックス関数と呼ばれる正規化関数が用いられる）値を良否判定の基準となる閾値（深層学習処理用閾値）とすることができる。深層学習処理用閾値は、良品判定の基準となる良品判定用閾値と、不良品判定の基準となる不良品判定用閾値とを含むことができ、いずれの閾値も正規化した値を用いることができる。深層学習処理用閾値と、上記通常検査用閾値とは独立している。
【００５７】
復元型ニューラルネットワーク、特にオートエンコーダーの場合、例としては、設定モード時に良品画像データを入力し、入力データをそのまま復元して出力するように事前に学習させておくことができる。運用モード時には、新たに取得された検査対象画像を学習済みのニューラルネットワークに入力して復元画像を得る。ニューラルネットワークに入力した画像と、復元画像との差を取り、差分が一定以上あった場合に不良品、一定未満の場合に良品と判定するように構成できる。ニューラルネットワークに入力した画像と復元画像との階調値の差分を総和して判定する方法や、差分が一定以上あるピクセル数を総和して判定する方法などがあり、いずれの方法を用いてもよい。このように、深層学習処理用閾値は、画像のピクセル数（画素数）や面積を用いて決めてもよい。
【００５８】
（検査実行部２４の構成）
検査実行部２４は、新たに取得された良品属性が付与された良品画像と不良品属性が付与された不良品画像の両方に対し、通常検査処理と深層学習処理とを適用するように構成されている。新たに取得された良品属性が付与された良品画像と、新たに取得された不良品属性が付与された不良品画像とは、通常検査設定部２２による通常検査処理の設定及び深層学習設定部２３による深層学習処理の設定が終わった後に、取得された画像である。尚、検査実行部２４は、設定モード時における検査と、運転モード時における検査の両方を行うことが可能に構成されている。
【００５９】
検査実行部２４は、新たに取得された良品画像に対して通常検査処理を適用することで、当該良品画像に対して通常検査処理を行った場合の正答率を算出し、また、新たに取得された不良品画像に対して通常検査処理を適用することで、当該不良品画像に対して通常検査処理を行った場合の正答率を算出する。さらに、検査実行部２４は、新たに取得された良品画像に対して深層学習処理を適用することで、当該良品画像に対して深層学習処理を行った場合の正答率を算出し、また、新たに取得された不良品画像に対して深層学習処理を適用することで、当該不良品画像に対して深層学習処理を行った場合の正答率を算出する。
【００６０】
正答率とは、例えば良品かどうかの確かさ（確度）である。深層学習処理の場合、出力値を正規化した値に基づいて、良品画像に近いのか、不良品画像に近いのかを判定し、良品に近いほど良品度合いが高い、また、不良品に近いほど良品度合いが低いと判定することができる。これに基づいて、深層学習処理を行った場合の正答率を算出することができ、例えば図４の横軸に示すように、良品度合の高低で表示することができる。
【００６１】
一方、通常検査処理の場合は、検査手法によって正答率の算出方法が異なる。検査手法は、上述したように、パターンサーチ、差分検査、学習検査、傷検出等がある。パターンサーチの場合、検査を行いたい部分（パターン）を設定モード時に登録しておき、この登録されているパターンと、その後に新たに取得された検査対象画像に含まれるパターンとを正規化相関を用いて判定し、得られた相関値に基づいて良否判定を行う。この相関値が一定以上高い場合には、良品と判定する一方、相関値が低い場合には不良品と判定する。よって、図４の縦軸に示すように、相関値の高低によって正答率を表示することができ、正答率を相関値と関連付けて表示できる。パターンサーチの場合、相関値が閾値となり得る。尚、深層学習処理を行った場合の良品度合を縦軸で示し、パターンサーチの相関値を横軸で示してもよい。以下の例も同様である。
【００６２】
差分検査の場合、設定モード時に予め画像を登録しておき、この登録画像と、その後に新たに取得された検査対象画像との差分をブロブ検出することで良否判定を行う。差分のブロブ面積が一定以上小さい場合には、良品と判定する一方、差分のブロブ面積が大きい場合には不良品と判定する。よって、図５の縦軸に示すように、差分のブロブ面積の大小によって正答率を表示することができ、正答率を差分のブロブ面積と関連付けて表示できる。差分検査の場合、差分のブロブ面積が閾値となり得る。
【００６３】
学習検査は、例えば特許第５７６７９６３号公報に記載されている方法で、複数の良品画像を学習させることで自動的に良品の範囲を定義し、「良品ではない」ものを検出する方法である。統計に基づいた画素のバラつき範囲から逸脱する階調値の総和（欠陥量）や、ピクセル数等の面積（欠陥部の面積）に基づいて、欠陥を検出する方法である。
【００６４】
学習検査の場合、欠陥量や欠陥部の面積が一定以上小さい場合には、良品と判定する一方、欠陥量や欠陥部の面積が大きい場合には不良品と判定する。よって、図６の縦軸に示すように、欠陥量や欠陥部の面積の大小によって正答率を表示することができる。学習検査の場合、欠陥量や欠陥部の面積が閾値となり得る。
【００６５】
傷検出は、特許第４５４４５７８号に記載されている方法で、例えば、画像内において検査領域を決め、この検査領域に含まれる画素に関してＮ×Ｎのセグメントを設定し、該セグメントを所定方向にシフトさせながら各セグメントに含まれる各画素の濃度の平均濃度を算出し、一のセグメントの平均濃度と、これに隣接する他のセグメントの平均濃度との間の差分値を欠陥レベルとして算出する手法を採用することができる。これにより、検査対象物の傷検出を行うことができる。
【００６６】
傷検出の場合、欠陥レベルや欠陥部の面積が一定以上小さい場合には、良品と判定する一方、欠陥レベルや欠陥部の面積が大きい場合には不良品と判定する。よって、図７の縦軸に示すように、欠陥量や欠陥部の面積の大小によって正答率を表示することができる。傷検出の場合、欠陥レベルや欠陥部の面積が閾値となり得る。
【００６７】
（表示制御部２５の構成）
表示制御部２５は、検査実行部２４で算出された各正答率を読み込むことにより、検査実行部２４で実行された通常検査処理による正答率と、検査実行部２４で実行された深層学習処理による正答率とを取得する正答率取得部２５ａを備えている。表示制御部２５は、検査実行部２４で実行された通常検査処理による正答率と、検査実行部２４で実行された深層学習処理による正答率とを比較可能な形態で表示装置４に表示させることができるように構成されている。
【００６８】
具体的には、表示制御部２５は、図４に示すようにパターンサーチと深層学習処理を組み合わせた場合に表示する第１ユーザーインターフェース６０を生成する。第１ユーザーインターフェース６０には、グラフ表示領域６０ａが設けられている。グラフ表示領域６０ａに表示されるグラフの縦軸は、通常検査処理としてのパターンサーチによって求めた相関値の高低を示しており、上に行くほど相関値が高くなる、即ち良品度合が高くなるように設定されている。つまり、通常検査処理による正答率をパターンサーチの相関値と関連付けて表示することができる。
【００６９】
グラフ表示領域６０ａに表示されるグラフの横軸は、深層学習処理によって求めた良品度合の高低を示しており、右に行くほど良品度合が高くなる、即ち良品度合が高くなるように設定されている。グラフ中、「○」は良品画像を示しており、「×」は不良品画像を示している。このように同一グラフ上に、通常検査処理による正答率と、深層学習処理による正答率とを同時に表示することで、両者を簡単に比較することができる形態になる。尚、通常検査処理による正答率と、深層学習処理による正答率との表示形態は、図４に示すグラフに限られるものではなく、例えば数値によって両者を比較することができる表示形態であってもよいし、他の表示形態であってもよい。
【００７０】
また、差分検査の場合、表示制御部２５は、図５に示すように差分検査と深層学習処理を組み合わせた場合に表示する第２ユーザーインターフェース６１を生成する。第２ユーザーインターフェース６１には、第１ユーザーインターフェース６０と同様なグラフ表示領域６１ａが設けられている。グラフ表示領域６１ａに表示されるグラフの縦軸は、通常検査処理としての差分検査によって求めた差分のブロブ面積の大小を示しており、上に行くほど差分のブロブ面積が小さくなる、即ち良品度合が高くなるように設定されている。つまり、通常検査処理による正答率を差分のブロブ面積と関連付けて表示することができる。グラフ表示領域６１ａに表示されるグラフの横軸は、第１ユーザーインターフェース６０のものと同じである。
【００７１】
また、学習検査の場合、表示制御部２５は、図６に示すように学習検査と深層学習処理を組み合わせた場合に表示する第３ユーザーインターフェース６２を生成する。第３ユーザーインターフェース６２には、第１ユーザーインターフェース６０と同様なグラフ表示領域６２ａが設けられている。グラフ表示領域６２ａに表示されるグラフの縦軸は、通常検査処理としての学習検査によって求めた欠陥量の大小を示しており、上に行くほど欠陥量が小さくなる、即ち良品度合が高くなるように設定されている。グラフ表示領域６２ａに表示されるグラフの横軸は、第１ユーザーインターフェース６０のものと同じである。
【００７２】
また、傷検出の場合、表示制御部２５は、図７に示すように傷検出と深層学習処理を組み合わせた場合に表示する第４ユーザーインターフェース６３を生成する。第４ユーザーインターフェース６３には、第１ユーザーインターフェース６０と同様なグラフ表示領域６３ａが設けられている。グラフ表示領域６３ａに表示されるグラフの縦軸は、通常検査処理としての傷検出によって求めた欠陥レベルの大小を示しており、上に行くほど欠陥レベルが小さくなる、即ち良品度合が高くなるように設定されている。グラフ表示領域６３ａに表示されるグラフの横軸は、第１ユーザーインターフェース６０のものと同じである。
【００７３】
（閾値調整部２６の構成）
図４に示す第１ユーザーインターフェース６０には、横軸と平行に延びる通常検査用閾値表示線６０ｂが表示されており、通常検査処理の判定結果は、通常検査処理における閾値とともに表示される。通常検査用閾値表示線６０ｂは、通常検査用閾値を示す線である。通常検査用閾値表示線６０ｂの代わりに、または通常検査用閾値表示線６０ｂと共に、通常検査用閾値を示すことが可能な表示形態を採用してもよく、例えば背景色の塗り分けや、閾値を数値で表示する形態等を用いることもできる。
【００７４】
使用者は、通常検査用閾値表示線６０ｂをキーボード５１やマウス５２等によって上下方向（通常検査用閾値の増減方向）に移動させることができる。通常検査用閾値表示線６０ｂの位置に応じて通常検査用閾値となる相関値が増減し、通常検査用閾値表示線６０ｂを上に移動させると相関値が増加する一方、通常検査用閾値表示線６０ｂを下に移動させると相関値が減少する。閾値調整部２６は、使用者による通常検査用閾値表示線６０ｂの移動状態を検出することで、通常検査用閾値を変更する。通常検査用閾値の調整方法は上述した方法に限られるものではなく、例えば数値を入力することによって調整可能にしてもよい。
【００７５】
図５に示す第２ユーザーインターフェース６１には、第１ユーザーインターフェース６０と同様な通常検査用閾値表示線６１ｂが表示されている。使用者は、通常検査用閾値表示線６１ｂを上下方向に移動させることにより、通常検査用閾値となる差分のブロブ面積値が増減し、通常検査用閾値表示線６０ｂを上に移動させると差分のブロブ面積値が減少する一方、通常検査用閾値表示線６０ｂを下に移動させると差分のブロブ面積値が増加する。
【００７６】
図６に示す第３ユーザーインターフェース６２には、第１ユーザーインターフェース６０と同様な通常検査用閾値表示線６２ｂが表示されている。使用者は、通常検査用閾値表示線６２ｂを上下方向に移動させることにより、通常検査用閾値となる欠陥量が増減し、通常検査用閾値表示線６０ｂを上に移動させると欠陥量が減少する一方、通常検査用閾値表示線６０ｂを下に移動させると欠陥量が増加する。
【００７７】
図７に示す第４ユーザーインターフェース６３には、第１ユーザーインターフェース６０と同様な通常検査用閾値表示線６３ｂが表示されている。使用者は、通常検査用閾値表示線６３ｂを上下方向に移動させることにより、通常検査用閾値となる欠陥レベルが増減し、通常検査用閾値表示線６０ｂを上に移動させると欠陥レベルが小さくなる一方、通常検査用閾値表示線６０ｂを下に移動させると欠陥レベルが大きくなる。
【００７８】
（通常検査処理と深層学習処理との組み合わせ）
この実施形態では、図３に示す検査実行部２４が、通常検査処理と深層学習処理とを組み合わせて検査を行うことができるように構成されている。以下に、通常検査処理で不良品判定を行い、残りを深層学習処理で良否判定する場合と、通常検査処理で良品判定を行い、残りを深層学習処理で良否判定する場合と、通常検査処理で良品判定及び不良品判定を確定させ、残りを深層学習処理で良否判定する場合との３つの場合の手順について説明する。
１．通常検査処理で不良品判定を行い、残りを深層学習処理で良否判定する場合
図８は、通常検査処理で不良品判定を行い、残りを深層学習処理で良否判定する場合の手順を示すフローチャートである。図４に示すパターンサーチと深層学習処理を組み合わせた場合と、図５に示す差分検査と深層学習処理を組み合わせた場合に適用することができる処理手順である。
【００７９】
図８に示すフローチャートの開始後、ステップＳＡ１では検査対象物の撮像を行う。これは、制御部１３ＡがＣＭＯＳセンサ１４３を制御することによって行うことができ、具体的には図３に示す画像入力部２１が行う。
【００８０】
ステップＳＡ２では、検査実行部２４がステップＳＡ１で取得された検査対象画像に対して通常検査処理による検査を行う。ステップＳＡ３では、ステップＳＡ２で行った通常検査処理による検査の結果、明らかに不良品画像であるか否かを判定する。これは、通常検査用閾値に基づいて判定することができ、例えば図４に示すパターンサーチの場合、通常検査用閾値（通常検査用閾値表示線６０ｂで示す）に相当する相関値と、ステップＳＡ２で求めた相関値とを比較し、ステップＳＡ２で求めた相関値が通常検査用閾値以下であれば、明らかに不良品画像であると判定する。図５に示す差分検査の場合も同様にブロブ面積の大小によって判定することができる。
【００８１】
ステップＳＡ３で用いられる通常検査用閾値は不良品判定を確定させる閾値である。従って、ステップＳＡ３では、不良品判定が可能な特徴量を有する検査対象画像に対して不良品判定を確定させる一方、不良品判定を確定させることができない検査対象画像に対しては不良品判定を確定させることなく、次のステップに進むようにする。
【００８２】
ステップＳＡ３でＹＥＳと判定された場合にはステップＳＡ７に進む。ステップＳＡ３でＹＥＳと判定されたということは、不良品判定が確定している。従って、明らかに不良品画像であるということであり、この場合はステップＳＡ７において最終的に不良品画像とする。つまり、明らかに不良品画像であると判定することができる画像に対しては、深層学習処理を行うことなく、判定結果を確定させることができるので、高い処理速度が維持される。
【００８３】
一方、ステップＳＡ３でＮＯと判定された場合にはステップＳＡ４に進む。ステップＳＡ３でＮＯと判定されたということは、不良品判定を確定できないということであり、不良品画像であるか、良品画像であるか、明確でない。この場合に、ステップＳＡ４において通常検査処理よりも識別能力の高い深層学習処理による検査を実行する。尚、深層学習処理が実行される画像には、明らかに不良品画像であると判定される画像が含まれていないので、深層学習処理に特有の想定外の欠陥が混入されたような未知のデータが入力された場合の挙動の不安定さが無くなり、判定精度を高めることができる。
【００８４】
その後、ステップＳＡ５では、深層学習処理により得られた良品度合が深層学習処理用閾値を超えるか否かを判定する。ステップＳＡ５でＮＯと判定された場合には、識別能力の高い深層学習処理によって不良品画像であると判定されたということであり、ステップＳＡ７に進んで不良品画像であるという判定を確定させる。一方、ステップＳＡ５でＮＯと判定された場合は良品画像であるので、ステップＳＡ６において良品画像であるという判定を確定させる。
【００８５】
このような手順を経ることで、図９に示すような効果が得られる。図９の上側に示す図は、深層学習処理のみで良否判定した場合の出力値のヒストグラムである。深層学習処理のみで良否判定すると、不良品画像と不良品画像とが混在している領域Ａが存在する。つまり、深層学習処理では、上述した不安定な挙動により、明らかに不良品画像であると判定される画像を良品画像であると判定してしまい、不良品画像と不良品画像とを分離することができない。一方、図８に示すフローチャートの手順を経ることで、明らかに不良品画像であると判定される画像が深層学習処理されないので、図９の下側に示す図のように、不良品画像と不良品画像とを分離することができるようになる。
【００８６】
すなわち、図８に示すフローチャートのように、検査対象画像を通常検査処理した結果に応じて、通常検査処理のみで検査を終了させるか、通常検査処理と深層学習処理とを組み合わせた検査処理を行うかを選択することができる。これは、図３に示す検査選択部２７によって実行される。例えば、パターンサーチの場合、通常検査処理で求めた相関値がステップＳＡ３で用いる閾値（所定相関値）以下である場合には、当該通常検査処理において不良品であると判定することができるので、検査選択部２７は通常検査処理のみで検査を終了させる。一方、通常検査処理で求めた相関値が上記所定相関値よりも高い場合には、検査選択部２７は深層学習処理を選択する。
【００８７】
また、差分検査の場合、図８に示すフローチャートの手順と同じであり、通常検査処理で求めた差分のブロブ面積が所定面積値以上である場合には、当該通常検査処理において不良品であると判定することができるので、検査選択部２７は通常検査処理のみで検査を終了させる。一方、通常検査処理で求めた差分のブロブ面積が所定面積値よりも小さい場合には、検査選択部２７は深層学習処理を選択する。
【００８８】
２．通常検査処理で良品判定を行い、残りを深層学習処理で良否判定する場合
図１０は、通常検査処理で良品判定を行い、残りを深層学習処理で良否判定する場合の手順を示すフローチャートである。図６に示す学習検査と深層学習処理を組み合わせた場合と、図７に示す傷検出と深層学習処理を組み合わせた場合に適用することができる処理手順である。
【００８９】
図１０に示すフローチャートの開始後、ステップＳＢ１、ＳＢ２は、図８に示すフローチャートのステップＳＡ１、ＳＡ２と同じである。ステップＳＢ３では、ステップＳＢ２で行った通常検査処理による検査の結果、明らかに良品画像であるか否かを判定する。これは、通常検査用閾値に基づいて判定することができ、例えば図６に示す学習検査の場合、通常検査用閾値（通常検査用閾値表示線６２ｂで示す）に相当する欠陥量と、ステップＳＢ２で求めた欠陥量とを比較し、ステップＳＢ２で求めた欠陥量が通常検査用閾値以下であれば、明らかに良品画像であると判定する。図７に示す傷検出の場合も同様に判定することができる。
【００９０】
ステップＳＢ３で用いられる通常検査用閾値は良品判定を確定させる閾値である。従って、ステップＳＢ３では、良品判定が可能な特徴量を有する検査対象画像に対して良品判定を確定させる一方、良品判定を確定させることができない検査対象画像に対しては良品判定を確定させることなく、次のステップに進むようにする。
【００９１】
ステップＳＢ３でＹＥＳと判定された場合にはステップＳＢ７に進む。ステップＳＢ３でＹＥＳと判定されたということは、良品が確定している。従って、明らかに良品画像であるということであり、この場合はステップＳＢ７において最終的に良品画像とする。つまり、変動量の少ない明らかに良品画像であると判定することができる画像に対しては、深層学習処理を行うことなく、判定結果を確定させることができるので、高い処理速度が維持される。
【００９２】
一方、ステップＳＢ３でＮＯと判定された場合にはステップＳＢ４に進む。ステップＳＢ３でＮＯと判定されたということは、良品判定を確定できないということであり、不良品画像であるか、良品画像であるか、明確でない。この場合に、ステップＳＢ４において通常検査処理よりも識別能力の高い深層学習処理による検査を実行する。尚、深層学習処理が実行される画像には、明らかに良品画像であると判定される画像が含まれていないので、スループットを高い状態で維持できる。
【００９３】
その後、ステップＳＢ５では、深層学習処理により得られた良品度合が深層学習処理用閾値を超えるか否かを判定する。ステップＳＢ５でＹＥＳと判定された場合には、識別能力の高い深層学習処理によって良品画像であると判定されたということであり、ステップＳＢ７に進んで良品画像であるという判定を確定させる。一方、ステップＳＢ５でＮＯと判定された場合は不良品画像であるので、ステップＳＢ６において不良品画像であるという判定を確定させる。
【００９４】
一般的にワークの大半が良品（例えば９９％以上など）であることを踏まえると、このように、明らかに良品であるものを高速処理が可能な既存処理で先に判断し、判断が難しいものに限定して深層学習処理を適用することで、識別能力の高い深層学習処理を用いながら、全体のスループットを高速な状態に維持することができる。
３．通常検査処理で良品判定及び不良品判定を確定させ、残りを深層学習処理で良否判定する場合
図１１は、通常検査処理で良品判定及び不良品判定を確定させ、残りを深層学習処理で良否判定する場合の手順を示すフローチャートである。この手順は、良品画像と不良品画像とが図１２及び図１４に示す第１の分布例のような分布、図１３及び図１５に示す第２の分布例のような分布になっている場合に適用することができる。
【００９５】
図１１に示すフローチャートの開始後、ステップＳＣ１、ＳＣ２は、図８に示すフローチャートのステップＳＡ１、ＳＡ２と同じである。また、図１１に示すフローチャートのステップＳＣ３は、図８に示すフローチャートのステップＳＡ３と同じであり、また、図１１に示すフローチャートのステップＳＣ８は、図８に示すフローチャートのステップＳＡ７と同じである。
【００９６】
ステップＳＣ３では、例えば図１２に示す学習検査の場合、通常検査用閾値（通常検査用閾値表示線６２ｃで示す）に相当する欠陥量と、ステップＳＣ２で求めた欠陥量とを比較し、ステップＳＣ２で求めた欠陥量が通常検査用閾値よりも大きく、かつ、その差が一定以上に大きければ、明らかに不良品画像であると判定する。図１３に示す分布状態の場合も同様に判定することができ、また、図１４、図１５に示す傷検出の場合も同様に判定することができる。
【００９７】
ステップＳＣ３で用いられる通常検査用閾値は不良品判定を確定させる閾値である。従って、ステップＳＣ３では、不良品判定が可能な特徴量を有する検査対象画像に対して不良品判定を確定させる一方、不良品判定を確定させることができない検査対象画像に対しては不良品判定を確定させることなく、次のステップに進むようにする。
【００９８】
ステップＳＣ３でＮＯと判定された場合には、良品画像か、明らかに不良品画像であると判定できない画像であり、この場合には、ステップＳＣ４に進む。ステップＳＣ４では、ステップＳＣ２で行った通常検査処理による検査の結果、明らかに良品画像であるか否かを判定する。
【００９９】
ステップＳＣ４では、例えば学習検査の場合、通常検査用閾値（図１２に示す通常検査用閾値表示線６２ｂ）に相当する欠陥量と、ステップＳＣ２で求めた欠陥量とを比較し、ステップＳＣ２で求めた欠陥量が通常検査用閾値よりも大きく、かつ、その差が一定以上に大きければ、明らかに良品画像であると判定する。図１３に示す分布状態の場合も同様に判定することができ、また、図１４、図１５に示す傷検出の場合も同様に判定することができる。
【０１００】
ステップＳＣ４で用いられる通常検査用閾値は良品判定を確定させる閾値である。従って、ステップＳＣ４では、良品判定が可能な特徴量を有する検査対象画像に対して良品判定を確定させる一方、良品判定を確定させることができない検査対象画像に対しては良品判定を確定させることなく、次のステップに進むようにする。
【０１０１】
ステップＳＣ４でＹＥＳと判定された場合にはステップＳＣ７に進む。ステップＳＣ４でＹＥＳと判定されたということは、明らかに良品画像であるということであり、この場合はステップＳＣ７において良品画像であるという判定を確定させる。つまり、変動量の少ない明らかに良品画像であると判定することができる画像に対しては、深層学習処理を行うことなく、判定結果を確定させることができるので、高い処理速度が維持される。
【０１０２】
一方、ステップＳＣ４でＮＯと判定された場合にはステップＳＣ５に進む。ステップＳＣ４でＮＯと判定されたということは、明らかに良品画像であると判定できない画像、または明らかに不良品画像であると判定できない画像であり、この場合に、ステップＳＣ５において通常検査処理よりも識別能力の高い深層学習処理による検査を実行する。
【０１０３】
その後、ステップＳＣ６では、深層学習処理により得られた良品度合が深層学習処理用閾値を超えるか否かを判定する。ステップＳＣ６でＹＥＳと判定された場合には、識別能力の高い深層学習処理によって良品画像であると判定されたということであり、ステップＳＣ７に進んで良品画像であるという判定を確定させる。一方、ステップＳＣ６でＮＯと判定された場合は不良品画像であるので、ステップＳＣ８において不良品画像であるという判定を確定させる。このような手順を経ることで、明らかに良品であるものを高速処理が可能な既存処理で先に判断し、判断が難しいものに限定して深層学習処理を適用することで、識別能力の高い深層学習処理を用いながら、全体のスループットを高速な状態に維持することができる。また、図９に示すような効果も同時に得られる。
【０１０４】
（検査選択部２７の構成）
検査選択部２７は、上述したフローチャートに示すように、ある閾値に基づいた判定によって通常検査処理のみ、通常検査処理と深層学習処理の併用とを自動的に選択するように構成されているが、これに限られるものではなく、例えば、使用者により、通常検査処理のみ、深層学習処理のみ、通常検査処理と深層学習処理の併用のうち、任意の処理を選択可能にすることもできる。例えば、検査処理選択用ユーザーインターフェースを表示装置４に表示させて、使用者による任意の検査処理の選択操作を受け付け可能に構成することもできる。
【０１０５】
検査処理を選択する際、図４〜図７に示すユーザーインターフェース６０〜６３を表示装置４に表示させておくことで、通常検査処理の正答率と深層学習処理の正答率とを比較しながら、分類を行う上で有効な検査処理を選択することができる。
【０１０６】
（ユーザーインターフェースの例）
ユーザーインターフェースは上述したものに限られるものではなく、他のユーザーインターフェースであってもよい。図１６に示すユーザーインターフェース７０には、第１ユーザーインターフェース６０のグラフ表示領域６０ａと同様なグラフ表示領域７０ａと、深層学習処理での出力値の累積ヒストグラムを表示する第１ヒストグラム表示領域７０ｂと、通常検査処理での出力値の累積ヒストグラムを表示する第２ヒストグラム表示領域７０ｃとが設けられている。第１ヒストグラム表示領域７０ｂ及び第２ヒストグラム表示領域７０ｃを設けることで、どちらの処理によれば良品画像と不良品画像を分離できるかを比較することができ、より分離度合が良好な方を選択することができる。
【０１０７】
また、第１ヒストグラム表示領域７０ｂの近傍には第１分離状態表示領域７０ｄが設けられ、第２ヒストグラム表示領域７０ｃの近傍には第２分離状態表示領域７０ｅが設けられている。第１分離状態表示領域７０ｄには、第１ヒストグラム表示領域７０ｂに表示されている累積ヒストグラムの良品画像と不良品画像の分離状態、即ち、良品画像と不良品画像とが分離できるか否かが表示される。同様に、第２分離状態表示領域７０ｅには、第２ヒストグラム表示領域７０ｃに表示されている累積ヒストグラムの良品画像と不良品画像の分離状態が表示される。図１６に示す例では、通常検査処理では良品画像と不良品画像とを分離できないが、深層学習処理では良品画像と不良品画像とを分離できることが分かる。
【０１０８】
また、通常検査処理で明らかに不良品であるものを不良品と確定し、残りを深層学習処理で検査する場合、通常検査処理で明らかに不良品と確定するための閾値に応じて、深層学習処理での出力値の累積ヒストグラムを更新することで、良品画像と不良品画像とを分離する閾値を調整することができる。
【０１０９】
例えば、図１７に示す分布例では、第１ヒストグラム表示領域７０ｂ及び第２ヒストグラム表示領域７０ｃに表示されている累積ヒストグラムを見ると、通常検査処理及び深層学習処理の両方で良品画像と不良品画像とを分離できないことが分かる。
【０１１０】
このような場合、図１８に示すように、通常検査処理の閾値を表示する通常検査用閾値表示線７０ｆをユーザーインターフェース７０に表示させておき、この通常検査用閾値表示線７０ｆをキーボード５１やマウス５２等によって上下方向に移動させることにより、通常検査処理及び深層学習処理の両方で良品画像と不良品画像とを分離可能にすることができる。通常検査用閾値表示線７０ｆを上下方向に移動させると、図１８に斜線で示す範囲、即ち、深層学習処理で検査する範囲を変更することができる。深層学習処理で検査する範囲を変更することで、第２ヒストグラム表示領域７０ｃに表示されている累積ヒストグラムが更新される。使用者は、第２ヒストグラム表示領域７０ｃに表示されている累積ヒストグラムを見ながら通常検査用閾値を調整し、良品画像と不良品画像とを分離可能な閾値に設定することができる。
【０１１１】
また、図１９に示すような累積ヒストグラムになっていた場合、不良品のみの分布の範囲Ｂに属する画像の数を「不良品数」とし、良品のみの分布の範囲Ｃに属する画像の数を「良品数」とし、不良品と良品とが混在する分布の範囲Ｄに属する画像の数を「不明数」とすることができる。これら範囲Ｂ〜Ｄの数値を表示装置４に表示することで、範囲Ｂ〜Ｄの数値を比較することができ、これにより、分離度合が良好なものを選択することができる。
【０１１２】
例えば、図２０に示す例では、ユーザーインターフェース７０に、第１数値表示領域７０ｇと、第２数値表示領域７０ｈとが設けられている。第１数値表示領域７０ｇには、深層学習処理での出力値に基づいて算出された不良品数、良品数及び不明数が表示される。第２数値表示領域７０ｈには、通常検査処理での出力値に基づいて算出された不良品数、良品数及び不明数が表示される。この図に示すように、第１数値表示領域７０ｇ及び第２数値表示領域７０ｈに表示された数値を見ることによっても、通常検査処理及び深層学習処理で良品画像と不良品画像とを分離できるか否かを把握できる。
【０１１３】
また、通常検査処理で明らかに不良品であるものを不良品と確定し、残りのものを深層学習処理で検査する場合、通常検査処理で明らかに不良品と確定するための閾値に応じて、「分離度合の数値表示」を更新することで、良品画像と不良品画像とを分離する閾値を調整することができる。
【０１１４】
例えば、図２１に示す分布例では、通常検査処理及び深層学習処理の両方で良品画像と不良品画像とを分離できない状態である。
【０１１５】
このような場合、図２２に示すように、通常検査処理の閾値を表示する通常検査用閾値表示線７０ｆをユーザーインターフェース７０に表示させておき、この通常検査用閾値表示線７０ｆをキーボード５１やマウス５２等によって上下方向に移動させることにより、通常検査処理及び深層学習処理の両方で良品画像と不良品画像とを分離可能にすることができる。通常検査用閾値表示線７０ｆを上下方向に移動させると、図２２に左下がりの斜線で示す範囲、即ち、深層学習処理で検査する範囲に対する深層学習処理での分離度合の数値表示が更新されるとともに、同図に右下がりの斜線で示す範囲、即ち、通常検査処理で検査する範囲に対する通常検査処理での分離度合の数値表示が更新される。使用者は、第１数値表示領域７０ｇ及び第２数値表示領域７０ｈに表示されている数値を見ながら通常検査用閾値を調整し、良品画像と不良品画像とを分離可能な閾値に設定することができる。
【０１１６】
（実施形態の作用効果）
以上説明したように、この実施形態に係る画像検査装置１によれば、設定モード時に通常検査処理及び深層学習処理を設定し、その後、新たに取得された良品画像と不良品画像に通常検査処理を適用した場合の正答率と、新たに取得された良品画像と不良品画像に深層学習処理を適用した場合の正答率とを算出して表示装置４に表示することができる。表示装置４には、通常検査処理を適用した場合の正答率と、深層学習処理を適用した場合の正答率とが比較可能な形態で表示されているので、使用者は、通常検査処理と、深層学習処理のいずれの処理が検査対象物の検査に適しているのか、表示装置４の表示内容に基づいて容易に判別可能になる。また、通常検査処理と深層学習処理を組み合わせた処理が検査対象物の検査に適しているのか否かも容易に判別可能になる。
【０１１７】
正答率の比較結果に基づいて、通常検査処理と深層学習処理のいずれか一方、又はこれらの処理を組み合わせた検査処理の選択を行うことができる。例えば、通常検査処理だけで十分に安定的な検査が可能である場合には、通常検査処理を選択することで、深層学習処理に特有の不安定な挙動が排除されるとともに、処理時間が短縮される。一方、通常検査処理だけでは対応が困難な検査対象物の場合は、深層学習処理を選択することで検査精度が向上する。
【０１１８】
また、使用者は、表示装置４に表示された通常検査処理の判定結果を見ながら通常検査用閾値を調整することができるので、良品と不良品との分離を適切に行うことができる。また、良品と不良品との分離度合を累積ヒストグラムや数値によって確認することができるので、良品と不良品との分離状態を容易に把握することができる。
【０１１９】
また、設定モードの後、新たに取得された検査対象画像に対し通常検査処理を適用したときに、検査対象画像内の特徴量と良品判定を確定させる閾値とに基づいて良品判定が可能な特徴量を有する検査対象画像に対しては良品判定を確定させることができる。また、検査対象画像内の特徴量と不良品判定を確定させる閾値とに基づいて不良品判定が可能な特徴量を有する検査対象画像に対しては不良品判定を確定させることができる。
【０１２０】
したがって、明らかに良品と判定できる検査対象物又は明らかに不良品と判定できる検査対象物を、処理速度の速い通常検査処理によって検査することで、スループットが大きく向上する。残りの僅かな検査対象物だけを深層学習処理によって検査するので、処理速度の低下を抑制しながら、検査精度を高めることが可能になる。
【０１２１】
上述の実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内のものである。
【産業上の利用可能性】
【０１２２】
以上説明したように、本発明に係る画像検査装置は、検査対象物を撮像して取得された検査対象画像に基づいて検査対象物の良否判定を行う場合に利用することができる。
【符号の説明】
【０１２３】
１                画像検査装置
２              制御ユニット
４              表示装置
１３Ａ          制御部
１４            カメラモジュール
１５            照明モジュール
２１            画像入力部
２２            通常検査設定部
２３            深層学習設定部
２４            検査実行部
２５            表示制御部
２６            閾値調整部
２７            検査選択部
【図１】
2020187656.tif 000003
【図２】
2020187656.tif 000004
【図３】
2020187656.tif 000005
【図４】
2020187656.tif 000006
【図５】
2020187656.tif 000007
【図６】
2020187656.tif 000008
【図７】
2020187656.tif 000009
【図８】
2020187656.tif 000010
【図９】
2020187656.tif 000011
【図１０】
2020187656.tif 000012
【図１１】
2020187656.tif 000013
【図１２】
2020187656.tif 000014
【図１３】
2020187656.tif 000015
【図１４】
2020187656.tif 000016
【図１５】
2020187656.tif 000017
【図１６】
2020187656.tif 000018
【図１７】
2020187656.tif 000019
【図１８】
2020187656.tif 000020
【図１９】
2020187656.tif 000021
【図２０】
2020187656.tif 000022
【図２１】
2020187656.tif 000023
【図２２】
2020187656.tif 000024