(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022164146
(43)【公開日】2022-10-27
(54)【発明の名称】画像検査装置、画像処理方法、画像処理プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器
(51)【国際特許分類】
G06T 7/00 20170101AFI20221020BHJP
【FI】
G06T7/00 350C
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021069449
(22)【出願日】2021-04-16
(71)【出願人】
【識別番号】000129253
【氏名又は名称】株式会社キーエンス
(74)【代理人】
【識別番号】110003225
【氏名又は名称】弁理士法人豊栖特許事務所
(72)【発明者】
【氏名】何 迪
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096BA03
5L096FA06
5L096FA15
5L096GA38
5L096HA11
5L096JA11
5L096JA13
5L096KA03
5L096KA04
(57)【要約】
【課題】学習データの構築を容易にする。
【解決手段】画像検査装置100は、各層の重み係数が予め学習された一又は複数のニューラルネットワークを記憶する学習済みニューラルネットワーク記憶部19aと、ワーク画像に基づいて、ワークの良否判定又はワークの仕分け判定を実行する推論処理部20aとを備える。推論処理部20aは、検査ワーク画像を、ニューラルネットワークに入力して得られた良否特徴量と良否判定境界とに基づいて、ワーク画像の良否判定を行う第一推論処理と、複数の異なる種別のワーク画像を、複数の仕分け特徴量に基づいて、ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け境界を設定し、カメラ部14により生成された検査用のワーク画像を、ニューラルネットワークに入力して得られた仕分け特徴量と仕分け境界とに基づいて、ワーク画像の仕分けを行う第二推論処理とを実行可能としている。
【選択図】
図2
【特許請求の範囲】
【請求項1】
検査対象のワークに照明光を照射する照明部と、
前記照明部から照射され、ワークで反射された反射光を受光し、ワーク画像を生成するカメラ部と、
前記ワーク画像が入力される入力層と、
前記入力層に結合された中間層と、
前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数のニューラルネットワークを記憶する学習済みニューラルネットワーク記憶部と、
前記ワーク画像に基づいて、ワークの良否判定又はワークの仕分け判定を実行する推論処理部とを備え、
前記推論処理部は、
前記カメラ部により生成された良品ワークを示す良品画像と、不良品ワークを示す不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた各ワーク画像を特徴付ける複数の良否特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定境界を設定し、
前記カメラ部により生成された検査用のワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた良否特徴量と前記良否判定境界とに基づいて、ワーク画像の良否判定を行う第一推論処理と、
前記カメラ部により生成された複数の異なる種別のワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた各ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け境界を設定し、
前記カメラ部により生成された検査用のワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた仕分け特徴量と前記仕分け境界とに基づいて、ワーク画像の仕分けを行う第二推論処理と
を実行可能としてなる画像検査装置。
【請求項2】
請求項1に記載の画像検査装置であって、さらに、
前記第一推論処理を行う良否判定モードと、前記第二推論処理を行う仕分けモードを選択するためのモード選択部を備えてなる画像検査装置。
【請求項3】
請求項1又は2に記載の画像検査装置であって、さらに、
前記照明部、前記カメラ部、前記学習済みニューラルネットワーク記憶部及び前記推論処理部を収容する筐体を備えており、
前記筐体には、ユーザからの各種の設定を受け付けるインタフェースが設けられ、
前記インタフェースを介して、
ワーク画像の良否判定を行う良否判定モードと、
入力されたワーク画像の仕分けを行う仕分けモードのいずれかの選択が可能であり、
前記推論処理部は、選択されたモードに応じて、第一推論処理と、第二推論処理のいずれかを実行するよう構成してなる画像検査装置。
【請求項4】
請求項1~3のいずれか一項に記載の画像検査装置であって、
前記推論処理部は、前記第一推論処理において良品と判定されたワークを、前記第二推論処理により多値に分類するよう構成してなる画像検査装置。
【請求項5】
請求項1~4のいずれか一項に記載の画像検査装置であって、さらに、
マスタ画像と、検査ツールを設定するツール設定部を備えており、
前記第一推論処理では、前記マスタ画像に対して、前記検査ツールとして学習ツールを設定可能であり、
前記第二推論処理では、前記マスタ画像に対して、前記検査ツールとして学習仕分けツールを設定可能であり、
前記学習ツールでは、良品であるマスタ画像と不良品であるマスタ画像に対して検査対象領域を設定し、前記判定境界を設定し、
前記学習仕分けツールでは、前記マスタ画像上に仕分けの際に参照すべき領域を設定し、各マスタ画像に対応付けて種別を登録するよう構成してなる画像検査装置。
【請求項6】
請求項1~5のいずれか一項に記載の画像検査装置であって、さらに、
前記推論処理部による第二推論処理の結果を出力する複数の出力ポートを有する出力部を備えており、
前記複数の出力ポートは、前記第二推論処理で仕分けられた種別毎に、出力先として割り当てられてなる画像検査装置。
【請求項7】
請求項1~6のいずれか一項に記載の画像検査装置であって、さらに、
前記推論処理部で行われる前記第二推論処理が、学習ベースの学習仕分けと、ルールベースの標準仕分けのいずれで行われるかを選択するための仕分けベース選択部を備えてなる画像検査装置。
【請求項8】
請求項7に記載の画像検査装置であって、
前記学習仕分けは、一のツールで仕分けが可能であり、
前記標準仕分けは、種別毎に複数のツールを設定し、各ツールが順番に実行されるよう構成してなる画像検査装置。
【請求項9】
検査対象のワークに照明部から照明光を照射し、ワークで反射された反射光をカメラ部で受光し、ワーク画像を生成して、ワークの良否判定又はワークの仕分け判定を実行する画像検査方法であって、
前記ワーク画像が入力される入力層と、前記入力層に結合された中間層と、前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数の学習済みのニューラルネットワークを準備し、前記学習済みニューラルネットワーク記憶部に記憶する工程と、
前記カメラ部で良品ワークを撮像して、良品画像を生成する工程と、
前記カメラ部で不良品ワークを撮像して、不良品画像を生成する工程と、
前記良品画像と不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力し、各良品画像、不良品画像を特徴付ける複数の良品特徴量、不良品特徴量をそれぞれ取得し、得られた複数の良品特徴量、不良品特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定境界を設定する工程と、
前記カメラ部で複数の異なる種別のワーク画像をそれぞれ撮像して、種別ワーク画像を生成する工程と、
前記種別ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力し、各種別ワーク画像を特徴付ける複数の仕分け特徴量をそれぞれ取得し、得られた複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け境界を設定する工程と、
前記カメラ部で検査用のワーク画像撮像して、検査ワーク画像を生成する工程と、
前記検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して、良否特徴量を取得する工程と、
得られた良否特徴量と前記良否判定境界とに基づいて、第一推論処理としてワーク画像の良否判定を行う工程と、
前記検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して、仕分け特徴量を取得する工程と、
得られた仕分け特徴量と前記仕分け境界とに基づいて、第二推論処理としてワーク画像の仕分けを行う工程と、
を含む画像検査方法。
【請求項10】
検査対象のワークに照明部から照明光を照射し、ワークで反射された反射光をカメラ部で受光し、ワーク画像を生成して、ワークの良否判定又はワークの仕分け判定を実行する画像検査方法であって、
前記ワーク画像が入力される入力層と、前記入力層に結合された中間層と、前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数の学習済みのニューラルネットワークを準備し、前記学習済みニューラルネットワーク記憶部に記憶する工程と、
前記カメラ部で良品ワークを撮像して、生成された良品画像と、前記カメラ部で不良品ワークを撮像して、生成された不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する工程と、
前記カメラ部で複数の異なる種別のワーク画像をそれぞれ撮像して、生成された種別ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する工程と、
各良品画像、不良品画像を特徴付ける複数の良品特徴量、不良品特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定基準、
及び各種別ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け基準を、それぞれ設定する工程と、
前記カメラ部で検査用のワーク画像撮像して、生成された検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する工程と、
検査ワーク画像を特徴付ける検査特徴量と、前記良否判定基準とに基づいて、第一推論処理としてワーク画像の良否判定を行い、良品と判定された場合に、検査特徴量と、前記仕分け基準とに基づいて、第二推論処理としてワーク画像の仕分けを行い、
仕分け結果を出力する工程と、
を含む画像検査方法。
【請求項11】
検査対象のワークに照明光を照射する照明部と、
前記照明部から照射され、ワークで反射された反射光を受光し、ワーク画像を生成するカメラ部と、
前記ワーク画像が入力される入力層と、
前記入力層に結合された中間層と、
前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数のニューラルネットワークを記憶する学習済みニューラルネットワーク記憶部と、
前記ワーク画像に基づいて、ワークの良否判定又はワークの仕分け判定を実行する推論処理部とを備えるコンピュータで実行させるための画像検査プログラムであって、
前記カメラ部で良品ワークを撮像して、生成された良品画像と、前記カメラ部で不良品ワークを撮像して、生成された不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する機能と、
前記カメラ部で複数の異なる種別のワーク画像をそれぞれ撮像して、生成された種別ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する機能と、
各良品画像、不良品画像を特徴付ける複数の良品特徴量、不良品特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定基準、
及び各種別ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け基準を、それぞれ設定する機能と、
前記カメラ部で検査用のワーク画像撮像して、生成された検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する機能と、
検査ワーク画像を特徴付ける検査特徴量と、前記良否判定基準とに基づいて、第一推論処理としてワーク画像の良否判定を行い、良品と判定された場合に、検査特徴量と、前記仕分け基準とに基づいて、第二推論処理としてワーク画像の仕分けを行い、
仕分け結果を出力する機能と、
をコンピュータに実現させるための画像検査プログラム。
【請求項12】
請求項11に記載のプログラムを記録したコンピュータで読み取り可能な記録媒体又は記憶した機器。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像検査装置、画像処理方法、画像処理プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器に関する。
【背景技術】
【0002】
ワークの良否判定を行う画像センサとして、近年、いわゆるAI学習機能を備える機種が登場している。このような機種では、ユーザ環境に応じて運用時に画像を学習する学習ベースの検査モードを備えている。
【0003】
しかしながら、このような学習ベースの検査モードを実現するためのニューラルネットワークの構築には、長い時間と多くの教師データが必要となり、相応の時間と手間をかける必要があり、必ずしも使い勝手のよいものではなかった。また、異なる種類の推論を実行したい場合は、ニューラルネットワーク自体を切り替える必要がある。例えば、異なる製造ラインに適用しようとすれば、新たに学習を行う必要があり、相当の時間と手間がかかってしまうという問題があった。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的の一は、学習データの構築を容易にした画像検査装置、画像処理方法、画像処理プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器を提供することにある。
【課題を解決するための手段及び発明の効果】
【0006】
本発明の一側面に係る画像検査装置は、検査対象のワークに照明光を照射する照明部と、前記照明部から照射され、ワークで反射された反射光を受光し、ワーク画像を生成するカメラ部と、前記ワーク画像が入力される入力層と、前記入力層に結合された中間層と、前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数のニューラルネットワークを記憶する学習済みニューラルネットワーク記憶部と、前記ワーク画像に基づいて、ワークの良否判定又はワークの仕分け判定を実行する推論処理部とを備え、前記推論処理部は、前記カメラ部により生成された良品ワークを示す良品画像と、不良品ワークを示す不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた各ワーク画像を特徴付ける複数の良否特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定境界を設定し、前記カメラ部により生成された検査用のワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた良否特徴量と前記良否判定境界とに基づいて、ワーク画像の良否判定を行う第一推論処理と、前記カメラ部により生成された複数の異なる種別のワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた各ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け境界を設定し、前記カメラ部により生成された検査用のワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して得られた仕分け特徴量と前記仕分け境界とに基づいて、ワーク画像の仕分けを行う第二推論処理とを実行可能としている。上記構成により、学習済みニューラルネットワークを予め準備しておき、良否判定と仕分けを共通のニューラルネットワークを用いて行うことで、推論処理毎にニューラルネットワークを構築する手間を省き、簡素化した良否判定と仕分けの処理環境が実現される。
【0007】
また、本発明の他の側面に係る画像検査方法は、検査対象のワークに照明部から照明光を照射し、ワークで反射された反射光をカメラ部で受光し、ワーク画像を生成して、ワークの良否判定又はワークの仕分け判定を実行する画像検査方法であって、前記ワーク画像が入力される入力層と、前記入力層に結合された中間層と、前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数の学習済みのニューラルネットワークを準備し、前記学習済みニューラルネットワーク記憶部に記憶する工程と、前記カメラ部で良品ワークを撮像して、良品画像を生成する工程と、前記カメラ部で不良品ワークを撮像して、不良品画像を生成する工程と、前記良品画像と不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力し、各良品画像、不良品画像を特徴付ける複数の良品特徴量、不良品特徴量をそれぞれ取得し、得られた複数の良品特徴量、不良品特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定境界を設定する工程と、前記カメラ部で複数の異なる種別のワーク画像をそれぞれ撮像して、種別ワーク画像を生成する工程と、前記種別ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力し、各種別ワーク画像を特徴付ける複数の仕分け特徴量をそれぞれ取得し、得られた複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け境界を設定する工程と、前記カメラ部で検査用のワーク画像撮像して、検査ワーク画像を生成する工程と、前記検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して、良否特徴量を取得する工程と、得られた良否特徴量と前記良否判定境界とに基づいて、第一推論処理としてワーク画像の良否判定を行う工程と、前記検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力して、仕分け特徴量を取得する工程と、得られた仕分け特徴量と前記仕分け境界とに基づいて、第二推論処理としてワーク画像の仕分けを行う工程とを含む。これにより、学習済みニューラルネットワークを予め準備しておき、良否判定と仕分けを共通のニューラルネットワークを用いて行うことで、推論処理毎にニューラルネットワークを構築する手間を省き、簡素化した良否判定と仕分けの処理環境が実現される。
【0008】
さらに、本発明の他の側面に係る画像検査方法は、検査対象のワークに照明部から照明光を照射し、ワークで反射された反射光をカメラ部で受光し、ワーク画像を生成して、ワークの良否判定又はワークの仕分け判定を実行する画像検査方法であって、前記ワーク画像が入力される入力層と、前記入力層に結合された中間層と、前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数の学習済みのニューラルネットワークを準備し、前記学習済みニューラルネットワーク記憶部に記憶する工程と、前記カメラ部で良品ワークを撮像して、生成された良品画像と、前記カメラ部で不良品ワークを撮像して、生成された不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する工程と、前記カメラ部で複数の異なる種別のワーク画像をそれぞれ撮像して、生成された種別ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する工程と、各良品画像、不良品画像を特徴付ける複数の良品特徴量、不良品特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定基準、及び各種別ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け基準を、それぞれ設定する工程と、前記カメラ部で検査用のワーク画像撮像して、生成された検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する工程と、検査ワーク画像を特徴付ける検査特徴量と、前記良否判定基準とに基づいて、第一推論処理としてワーク画像の良否判定を行い、良品と判定された場合に、検査特徴量と、前記仕分け基準とに基づいて、第二推論処理としてワーク画像の仕分けを行い、仕分け結果を出力する工程とを含む。これにより、学習済みニューラルネットワークを予め準備しておき、良否判定と仕分けを共通のニューラルネットワークを用いて行うことで、推論処理毎にニューラルネットワークを構築する手間を省き、簡素化した良否判定と仕分けの処理環境が実現される。
【0009】
さらにまた、本発明の他の側面に係る画像検査プログラムは、検査対象のワークに照明光を照射する照明部と、前記照明部から照射され、ワークで反射された反射光を受光し、ワーク画像を生成するカメラ部と、前記ワーク画像が入力される入力層と、前記入力層に結合された中間層と、前記中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有し、各層の重み係数が予め学習された一又は複数のニューラルネットワークを記憶する学習済みニューラルネットワーク記憶部と、前記ワーク画像に基づいて、ワークの良否判定又はワークの仕分け判定を実行する推論処理部とを備えるコンピュータで実行される画像検査プログラムであって、前記カメラ部で良品ワークを撮像して、生成された良品画像と、前記カメラ部で不良品ワークを撮像して、生成された不良品画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する機能と、前記カメラ部で複数の異なる種別のワーク画像をそれぞれ撮像して、生成された種別ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する機能と、各良品画像、不良品画像を特徴付ける複数の良品特徴量、不良品特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの良否判定を行うための良否判定基準、及び各種別ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、前記ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け基準を、それぞれ設定する機能と、前記カメラ部で検査用のワーク画像撮像して、生成された検査ワーク画像を、前記学習済みニューラルネットワーク記憶部に記憶されたニューラルネットワークに入力する機能と、検査ワーク画像を特徴付ける検査特徴量と、前記良否判定基準とに基づいて、第一推論処理としてワーク画像の良否判定を行い、良品と判定された場合に、検査特徴量と、前記仕分け基準とに基づいて、第二推論処理としてワーク画像の仕分けを行い、仕分け結果を出力する機能と、をコンピュータに実現させるための画像検査プログラム。上記構成により、学習済みニューラルネットワークを予め準備しておき、良否判定と仕分けを共通のニューラルネットワークを用いて行うことで、推論処理毎にニューラルネットワークを構築する手間を省き、簡素化した良否判定と仕分けの処理環境が実現される。
【0010】
さらにまた、本発明の他の側面に係るコンピュータで読み取り可能な記録媒体又は記憶した機器は、上記プログラムを格納したものである。記録媒体には、CD-ROM、CD-R、CD-RWやフレキシブルディスク、磁気テープ、MO、DVD-ROM、DVD-RAM、DVD-R、DVD+R、DVD-RW、DVD+RW、Blu-ray、HD DVD(AOD)、UHD(いずれも商品名)等の磁気ディスク、光ディスク、光磁気ディスク、半導体メモリその他のプログラムを格納可能な媒体が含まれる。またプログラムには、上記記録媒体に格納されて配布されるものの他、インターネット等のネットワーク回線を通じてダウンロードによって配布される形態のものも含まれる。さらに記憶した機器には、上記プログラムがソフトウェアやファームウェア等の形態で実行可能な状態に実装された汎用もしくは専用機器を含む。さらにまたプログラムに含まれる各処理や機能は、コンピュータで実行可能なプログラムソフトウエアにより実行してもよいし、各部の処理を所定のゲートアレイ(FPGA、ASIC)等のハードウエア、又はプログラムソフトウエアとハードウェアの一部の要素を実現する部分的ハードウエアモジュールとが混在する形式で実現してもよい。
【図面の簡単な説明】
【0011】
【
図1】本発明の実施形態に係る画像検査装置の構成を示す模式図である。
【
図2】画像検査装置のハードウエア構成を示す図である。
【
図5】仕分け結果に応じてワークを分類する様子を示す模式図である。
【
図6】プロセッサ部の機能を示すブロック図である。
【
図7】良否判定条件を設定したニューラルネットワークの特徴量空間を示す模式図である。
【
図8】仕分け条件を設定したニューラルネットワークの特徴量空間を示す模式図である。
【
図9】画像検査装置の設定時において、判定条件を設定する手順を示すフローチャートである。
【
図11】検査モードを選択する手順を示すフローチャートである。
【
図12】ニューラルネットワークを使って仕分け処理を行う様子を示す模式図である。
【
図13】
図12と同じニューラルネットワークを使って良否判定処理を行う様子を示す模式図である。
【
図14】モード選択画面で「良否判定モード」ボタンを選択した状態を示す模式図である。
【
図17】検出ウィンドウ設定画面を示す模式図である。
【
図19】
図18から品種画像を追加した品種登録画面を示す模式図である。
【
図20】学習を終えた品種登録画面を示す模式図である。
【
図22】カスタム設定の品種登録画面を示す模式図である。
【
図24】輪郭ツールを設定した品種登録画面を示す模式図である。
【
図25】
図24にさらに色ツールを追加した品種登録画面を示す模式図である。
【
図26】幅ツールを設定した品種登録画面を示す模式図である。
【発明を実施するための形態】
【0012】
以下、本発明の実施の形態を図面に基づいて説明する。ただし、以下に示す実施の形態は、本発明の技術思想を具体化するための画像検査装置、画像処理方法、画像処理プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器を例示するものであって、本発明は画像検査装置、画像処理方法、画像処理プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器を以下のものに特定しない。また、本明細書は特許請求の範囲に示される部材を、実施の形態の部材に特定するものでは決してない。特に実施の形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一もしくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
[実施形態1]
【0013】
本発明の実施形態1に係る画像検査装置を、
図1の模式図に示す。画像検査装置は、例えば各種部品や製品等、ワークと呼ばれる検査対象物を撮像した画像に基づいて検査対象物の良否判定や仕分け判定を行うための装置であり、画像センサ等と呼ばれ、工場等の生産現場等で使用することができる。検査対象物は、それ全体が検査対象であってもよいし、一部のみが検査対象であってもよい。また一の検査対象物に複数の検査対象が含まれていてもよい。さらに一の画像に、複数の検査対象物が含まれていてもよい。
【0014】
ここでは、検査対象物の外観を撮像して、予め規定された検査条件に従い、良否判定と仕分け判定を行う画像検査装置の例を説明する。良否判定は、例えば良品か不良品かを判定する所定の良否判定条件を設定時に設定しておき、運用時あるいは運転時において、撮像した検査対象物の画像を撮像し、良否判定条件に照らして検査対象物の良否を判定する。また仕分け判定は、良品と判定された検査対象物をさらに、予め規定された仕分け条件に従い、複数の種別のいずれに属するかを判定する。例えば検査対象物の色を、赤、青、緑のいずれかに仕分ける仕分け条件に従い、これに応じて良品を赤、青、緑のいずれかに仕分ける例が該当する。
【0015】
画像検査装置100は、装置本体となる制御ユニット2と、撮像ユニット3と、表示部4と、パーソナルコンピュータ5と、操作部6を備えている。パーソナルコンピュータ5には、画像検査装置100を操作する画像検査プログラムをインストールする。画像検査プログラムのユーザインターフェース画面は、パーソナルコンピュータ5のモニタや、表示部4に表示させることができる。なおパーソナルコンピュータ5は、必須のものではなく、省略することもできる。この場合は制御ユニット2が、画像検査を実行する。また制御ユニット2で、画像検査プログラムを実行させるようにしてもよい。
【0016】
さらに表示部4の代わりにパーソナルコンピュータのディスプレイを用いることもできる。また
図1では、画像検査装置100の構成例の一例として、制御ユニット2、撮像ユニット3、表示部4、パーソナルコンピュータ5、操作部6を別々のものとして記載しているが、これらのうち、任意の複数を組み合わせて一体化することもできる。例えば、制御ユニット2と撮像ユニット3を一体化することや、制御ユニット2と表示部4を一体化することもできる。また、制御ユニット2を複数のユニットに分割して一部を撮像ユニット3や表示部4に組み込むことや、撮像ユニット3を複数のユニットに分割して一部を他のユニットに組み込むこともできる。さらに操作部6も、別途設ける他、パーソナルコンピュータが備える入力デバイスを利用したり、表示部をタッチパネルとする等、他の部材に統合してもよい。
【0017】
また
図1の例では、制御ユニット2を、撮像ユニット3と、表示部4と、パーソナルコンピュータ5にそれぞれケーブルを介して接続している。ただ本発明は各部材の接続を有線接続に限定するものでなく、無線LANや公衆通信回線、NFC等の電波、赤外線、光等の媒体を介した無線接続としてもよい。また通信規格は、イーサネットやIEEE802.1x、USB、Bluetooth、ZigBee(いずれも登録商標又は製品名)等、規格化された汎用のものや、専用のプロトコルやインターフェースが適宜利用できる。
【0018】
本発明の実施形態1に係る画像検査装置100のハードウェア構成を、
図2のブロック図に示す。この図に示す画像検査装置100は、制御ユニット2と撮像ユニット3を含む筐体1と、表示部4と、パーソナルコンピュータ5を備える。
【0019】
筐体1は、画像検査装置100の外形を形成するケーシングであり、その内部に照明部15やカメラ部14、学習済みニューラルネットワーク記憶部19aや推論処理部20a等を収容する。筐体1には、ユーザからの各種の設定を受け付けるインタフェースが設けられる。インタフェースを介して、ワーク画像の良否判定を行う良否判定モードと、入力されたワーク画像の仕分けを行う仕分けモードのいずれかを選択としている。推論処理部20aは、選択されたモードに応じて、第一推論処理と、第二推論処理のいずれかを実行する。これにより、クラウドサービスのような物理的に異なる場所に保存された学習済みニューラルネットワークを利用するのでなく、各画像検査装置に学習済みニューラルネットワーク記憶部19aを準備してローカルに保存されたデータでもって推論処理を行うことにより、データ通信のための設備を不要とし、遅延や外乱等に強い推論処理が実現される。
(制御ユニット2)
【0020】
制御ユニット2は、メイン基板13と、コネクタ基板16と、通信基板17と、電源基板18と、記憶部19と、出力部12を備えている。メイン基板13には、プロセッサ部20と、メモリ133とが搭載されている。メモリ133は、RAMやROM等で構成される。
【0021】
コネクタ基板16は、電源インタフェース161に設けてある電源コネクタを介して、外部の電源から電力の供給を受ける。電源基板18は、供給された電力を各基板に供給する。本実施形態では、カメラ部14にはメイン基板13を介して電力を供給している。電源基板18のモータドライバ181は、カメラ部14のモータ141に駆動電力を供給し、オートフォーカスを実現している。
【0022】
通信基板17は、メイン基板13から出力された検査対象物の良否判定結果を示すOK/NG信号(判定信号)や画像データ等を表示部4へ送信する。判定信号を受信した表示部4は、判定結果を表示する。なお、本実施形態では、通信基板17を介して判定信号を出力する構成にしているが、例えばコネクタ基板16を介して判定信号を出力する構成にしても良い。
(操作部6)
【0023】
また画像検査装置100は、ユーザの操作を受け付ける操作部6を備えている。操作部6は、キーボードやマウス、タッチパネル等の既存の入力でバイスが利用できる。
図2の例では、通信基板17は、表示部4が有するタッチパネル41やパーソナルコンピュータ5のキーボード51等から入力されたユーザの各種操作を受け付けることができるように構成されている。表示部4のタッチパネル41は、例えば感圧センサを搭載した既知のタッチ式操作パネルであり、ユーザによるタッチ操作を検出して通信基板17へ出力する。パーソナルコンピュータ5は、キーボード51の他に、マウスやタッチパネルを備えており、これら操作デバイスから入力されたユーザの各種操作を受け付けることができるように構成されている。通信は、有線であってもよいし、無線であってもよく、いずれの通信形態も、従来から周知の通信モジュールによって実現することができる。
【0024】
照明部15は、検査対象物を撮像する撮像領域に照明光を照射する、複数のLED11を備えている。LED11にはレンズやリフレクタを設けることができる。レンズは、短距離用又は長距離用のレンズユニットとして交換可能とできる。なお本明細書において照明光とは、主に照明部15で照射される光を指すが、自然光等、照明部15によらずに存在する環境光も含む意味で使用する。
【0025】
撮像ユニット3は、カメラ部14と、照明部15を備えている。カメラ部14は、モータ141が駆動することにより、オートフォーカス動作の制御を行うことができる。このカメラ部14は、メイン基板13からの撮像指示信号に応じて検査対象物を撮像する。本実施形態では、撮像素子としてCMOS基板142を備えている。撮像されたカラー画像は、CMOS基板142にてダイナミックレンジを広げる変換特性に基づいてHDR画像に変換され、メイン基板13のプロセッサ部20へ出力される。
【0026】
メイン基板13は、接続してある各基板の動作を制御する。例えば照明部15に対しては、複数のLED11の点灯/消灯を制御する制御信号を、LEDドライバ151へ送信する。LEDドライバ151は、プロセッサ部20からの制御信号に応じて、例えばLED11の点灯/消灯、光量等を調整する。また、カメラ部14のモータ141に対しては、電源基板18のモータドライバ181を介してオートフォーカス動作を制御する制御信号を送信する。さらにCMOS基板142に対しては、撮像指示信号を送信する。
(プロセッサ部20)
【0027】
メイン基板13のプロセッサ部20は、与えられた信号やデータを処理して各種の演算を行い、演算結果を出力する制御回路や制御素子である。プロセッサ部20は、汎用PC向けのCPUやMPU、GPU、TPU等のプロセッサに限定するものでなく、特定用途向けにカスタマイズされたLSIやFPGA、ASIC等のゲートアレイ、マイコン、あるいはSoC等のチップセットやパッケージ等で構成できる。プロセッサ部20は、後述する複数の機能を実現する。なお本発明は、物理的に一のプロセッサ部で構成する例に限られず、複数のCPU等でプロセッサ部を構成してもよい。複数のCPUには、物理的に複数のCPUとする他、複数のCPUコアを一パッケージに組み込んだいわゆるマルチコアのMPUとしてもよい。この場合において、複数のCPUやCPUコアで各機能を実現する他、CPUやCPUコア毎に異なる機能を割り当てて実行してもよい。さらに、CPUとGPUの組み合わせでプロセッサ部を構成してもよい。この場合において、GPUは上述した表示制御部の機能を果たす他、プロセッサ部に割り当てられた機能の一部又は全部を実行させるように構成してもよい。
【0028】
図2の例では、メイン基板13のプロセッサ部20をFPGAとDSPで構成している。 FPGAは、照明制御、撮像制御をすると共に、取得した画像データに対する画像処理を実行する。また、DSPは、画像データについて、エッジ検出処理、パターン検索処理等を実行する。パターン検索処理の結果として、検査対象物の良否を示す判定結果を通信基板17へ出力する。演算処理結果等はメモリ133に記憶される。なお上記の例ではFPGAが照明制御、撮像制御等を実行するが、DSPが実行しても良い。また、FPGAとDSPの組み合わせに代えて、一の主制御回路乃至主制御部を設けても良い。例えば一のCPUが主制御部として、複数のLED11の点灯/消灯を制御する制御信号をLEDドライバ151へ送信したり、オートフォーカス動作を制御する制御信号をカメラ部14のモータ141へ送信したり、撮像指示信号等をCMOS基板142へ送信したりといった機能を果たす。
(記憶部19)
【0029】
制御ユニット2には、例えばハードディスクドライブ等の記憶部19が設けられている。記憶部19には、後述する各制御及び処理を上記ハードウエアによって実行可能にするためのプログラムファイルや設定ファイル等(ソフトウエア)、マスタ画像、良否判定結果、仕分け結果等が記憶されている。プログラムファイルや設定ファイルは、例えばUSBメモリや光ディスク等の可搬式の記憶媒体に格納しておき、この記憶媒体に格納されたプログラムファイルや設定ファイルを制御ユニット2に読み込むことができる。
【0030】
また記憶部19は、学習済みの一又は複数のニューラルネットワークを記憶する学習済みニューラルネットワーク記憶部19aとして機能する。学習済みニューラルネットワークは、ワーク画像が入力される入力層と、この入力層に結合された中間層と、この中間層に結合され、入力されたワーク画像の特徴量を出力する出力層とを有する。また各層の重み係数が予め学習されている。
(出力部12)
【0031】
出力部12は、推論処理部20aによる第一推論処理及び第二推論処理の結果を出力するための部材である。この出力部12は、推論処理部20aによる第二推論処理の結果を出力する複数の出力ポート12a、12b、...12nを有する。各出力ポート12a、12b、...12nは、第二推論処理で仕分けられた種別毎に、出力先として割り当てられている。これにより、
図3に示す良否判定のような、OKかNGかの二者択一の結果のみならず、
図4に示すように判定結果を3以上の多値で出力可能となり、仕分けや分類の結果に応じた以降の処理を行い易くできる。例えば
図5に示すように、コンベアベルトCBで順次搬送される検査用のワークWKをカメラ部14で撮像し、良品とされたワークの色や形状、サイズ等の種別、あるいは良品の優・良・可等でランク分けする場合に利用できる。この例では、メイン基板13の推論処理部20aによる仕分け結果に応じて、出力部12の各出力ポート12a、12b、...12nから出力を、コンベアベルトCBから別ラインCB1、CB2、CB3に搬出する仕分け機ST1、ST2、ST3に入力することで、ワークWKの種別に応じて適切なラインに振り分けることが可能となる。
【0032】
プロセッサ部20のブロック図を
図6に示す。この図に示すようにプロセッサ部20は、推論処理部20aと、モード選択部20bと、仕分けベース選択部20cと、ツール設定部20dの機能を実現する。推論処理部20aは、ワーク画像に基づいて、ワークの良否判定又はワークの仕分け判定を実行するための部材である。モード選択部20bは、第一推論処理を行う良否判定モードと、第二推論処理を行う仕分けモードを選択するための部材である。仕分けベース選択部20cは、推論処理部20aで行われる第二推論処理を、学習ベースの学習仕分けと、ルールベースの標準仕分けのいずれかで行うかを選択するための部材である。ツール設定部20dは、マスタ画像と、検査ツールを設定するための部材である。
(良否判定条件)
【0033】
この推論処理部20aは、ワークの良否判定を行うための良否判定条件を設定する判定条件設定部としても機能する。ここで良否判定条件としては、良否判定境界の設定等が挙げられる。具体的には、画像検査装置100の設定時において、カメラ部14により生成された良品ワークを示す良品画像と、不良品ワークを示す不良品画像を、学習済みニューラルネットワーク記憶部19aに記憶されたニューラルネットワークに入力する。ここで良品画像や不良品画像は、それぞれ一以上あればよい。そして入力された各良品画像、不良品画像について、各画像を特徴付ける複数の良否特徴量をニューラルネットワークから取得する。ここでニューラルネットワークの特徴量の内、良否判定に際して使用する良否特徴量としては、良否判定に有効となり得る画像のパラメータであり、画像の色や、エッジ、位置等が挙げられる。さらに、これら複数の良否特徴量に基づいて、ニューラルネットワークの特徴量空間上に、ワークの良否判定を行うための良否判定境界を設定する。例えば
図7に示すニューラルネットワークの特徴量空間FSでは、良品画像の良否特徴量を●で、不良品画像の良否特徴量を○で、それぞれプロットしている。このような特徴量空間において、良品画像のグループが含まれる領域と、不良品画像のグループが含まれる領域を区別するように、良否判定境界BD1を設定する。
図7の例では、良否判定境界BD1の上側が良品、下側が不良品と判定されることとなる。
【0034】
このようにして画像検査装置100の設定を終えた後、実際の運用時においては、推論処理部20aは、設定時に設定された判定条件に従って良否判定を実行する。具体的には、良否判定を行う対象となる検査用のワークを、カメラ部14で撮像して、検査ワーク画像を生成する。この検査ワーク画像を、学習済みニューラルネットワーク記憶部19aに記憶されたニューラルネットワークに入力し、良否特徴量を取得する。そして良否特徴量を特徴量空間上に設定された良否判定境界に適用して、ワーク画像の良否判定を行う。この良否判定を、第一推論処理と呼ぶ。
(仕分け条件)
【0035】
一方で推論処理部20aは、良品と判定されたワークをさらに、仕分け条件に従って分類する。仕分け条件は、ワークが予め規定された複数の異なる種別のいずれに属するかを判定するための条件である。複数の異なる種別は、3以上あってもよい。例えば、ワークの色で仕分ける場合は、赤と黒のいずれか、あるいは赤と黄と黒のいずれかに分類する。またワークの形状やサイズ等の種別で仕分けてもよい。このため推論処理部20aは、ワークの仕分けを行うための仕分け条件を設定する仕分け条件設定部としても機能する。ここで良否判定条件としては、良否判定境界の設定等が挙げられる。具体的には、画像検査装置100の設定時において、カメラ部14により生成された複数の異なる種別のワーク画像を、学習済みニューラルネットワーク記憶部19aに記憶されたニューラルネットワークに入力して得られた各ワーク画像を特徴付ける複数の仕分け特徴量に基づいて、ニューラルネットワークの特徴量空間上にワークの分類を行うための仕分け境界を設定する。仕分け特徴量は、仕分けに有効となり得る画像のパラメータであり、仕分け先の種別に応じて設定される。例えばワークの色に応じて仕分ける場合は画像の色度や明度が有効となり、ワークの形状に応じて仕分ける場合は画像のエッジが有効となる。仕分け特徴量は、種別に応じて良否特徴量と共通することもある。そして仕分け特徴量に基づいて、ニューラルネットワークの特徴量空間上に、ワークの仕分けを行うための仕分け境界を設定する。例えば
図8に示すニューラルネットワークの特徴量空間FSでは、ワークの先端の形状が丸ピンかUピンかを仕分ける例を示しており、丸ピンを△で、Uピンを○で、それぞれ示している。このような特徴量空間において、丸ピンのグループが含まれる領域と、Uピンのグループが含まれる領域を区別するように、仕分け境界BD2を設定する。
図8の例では、仕分け境界BD2の左側が丸ピン、右側がUピンに仕分けられることとなる。
【0036】
このようにして仕分け境界の設定を終えた後、実際の運用時においては、推論処理部20aは仕分け条件に従って仕分けを実行する。具体的には、仕分けを行う対象となる検査用のワークの、既に撮像されたワーク画像を、学習済みニューラルネットワーク記憶部19aに記憶されたニューラルネットワークに入力し、仕分け特徴量を取得する。そして、仕分け特徴量を、特徴量空間上に設定された仕分け境界に適用して、ワーク画像の仕分けを行う。この仕分け処理を第二推論処理と呼ぶ。
【0037】
このような構成により、学習済みニューラルネットワークを予め準備しておき、良否判定と仕分けという2つの異なる推論処理を共通のニューラルネットワークを用いて行うことができる。この結果、推論処理毎にニューラルネットワークを構築する手間を省き、システムを簡素化できる。
【0038】
特に推論処理部20aを、第一推論処理において良品と判定されたワークを、第二推論処理により多値に分類するよう構成することで、単なる良品判定に止まることなく、さらに良品の分類までを一連で処理することが可能となる。すなわち従来は、検査用ワークがOKかNGかという二者択一の良否判定のみを行う画像センサが多く、これをさらに分類するには別途、仕分け用の画像センサを分類数に応じて複数台、用意する必要があったところ、本実施形態に係る画像検査装置100では、良品とされたワークを更に多値に分類することが一の装置でもって実現できる。なお、仕分け先が無いワークはNG(不良品)とする。
【0039】
また以上の例では推論処理部20aが、良否判定条件や仕分け条件等を設定する判定条件設定部を兼用する例を説明したが、本発明はこの構成に限られず、推論処理部と判定条件設定部とを個別に用意してもよい。
(判定条件の設定手順)
【0040】
次に、画像検査装置100の設定時において、推論処理部20aで判定条件を設定する手順を、
図9のフローチャートに基づいて説明する。まずステップS901において、学習画像の特徴量を算出する。次にステップS902において、学習画像を特徴量空間上にプロットする。さらにステップS903において、特徴量空間で学習画像の位置を把握する。次にステップS904において、良否判定の設定を行うか否かを判定する。良否判定の設定を行う場合はステップS905において、良否判定を行うための判定境界を設定し、ステップS907に進む。一方、ステップS904において、良否判定の設定でない場合はステップS906に進み、分類を行うための仕分け境界を設定し、ステップS907に進む。最後にステップS907において、設定された判定境界を記録する。ここでは記憶部19に判定境界を記録して保持する。このようにして、判定条件が設定される。
(検査ツール)
【0041】
また本実施形態に係る画像検査装置100では、検査ツールを備えることができる。検査ツールは、学習や仕分けの条件を設定するための部材である。検査ツールとしては、学習ツールや仕分けツールが挙げられる。学習ツールは、良否判定の条件を設定するツールである。学習ツールは、良品であるマスタ画像と不良品であるマスタ画像に対して検査対象領域を設定し、判定境界を設定する。すなわち第一推論処理では、マスタ画像に対して学習ツールを用いて設定する。
【0042】
一方、仕分けツールは、仕分け条件を設定するツールである。仕分けツールは、学習仕分けツールと標準仕分けツールを含むことができる。学習仕分けツールは、マスタ画像上に仕分けの際に参照すべき領域を設定し、各マスタ画像に対応付けて種別を登録する。すなわち第二推論処理では、マスタ画像に対して、学習仕分けツールを用いて設定する学習仕分けは、
図4に示すように一の学習仕分けツールで仕分けが可能である。一方、標準仕分けは、種別毎に複数のツールで設定する。このため標準仕分けツールは、複数の標準ツールを備えている。例えば
図10に示す例では、標準仕分けツールを標準ツール1、標準ブール2、標準ツール3で構成している。ここでは仕分けの結果として、ワークA、ワークB、ワークCのいずれかに分類されるとする。この場合において、検査用画像がワークAに分類された場合は、標準ツール1から仕分け結果が出力される。同様に検査用画像がワークBに分類された場合は、標準ツール2から仕分け結果が出力される。また検査用画像がワークCに分類された場合は、標準ツール3から仕分け結果が出力される。検査用画像がいずれにも仕分けられない場合は、NGとなり出力は行われない。
【0043】
このように、学習仕分けでは一の学習仕分けツールで仕分けが行われるのに対し、標準仕分けでは品種毎に複数の標準ツールを設定して、各ツールが順番に実行される。
図10の例では各標準ツール1~3が順番に実行されることで、仕分け結果が出力される。これにより、標準仕分けの明確な管理が可能となるものの、複数の標準ツールの設定を行う必要が生じる。
(検査モードの選択)
【0044】
ここで検査モードとして、仕分けモードと良否判定モードを選択する手順を、
図11のフローチャートに基づいて説明する。まずステップS1101にて
図6に示すプロセッサ部20のモード選択部20bは、良否判定モードか、仕分けモードのいずれかの選択をユーザから受け付ける。ユーザから仕分けモードの選択を受け付けると、さらにモード選択部20bはステップS1102にて学習仕分けモードか、標準仕分けモードのいずれかのモードの選択を受け付けることができる。
【0045】
ここで学習仕分けモードとは、上述したニューラルネットワークを用いた機械学習を用いた学習仕分けを行うモードであり、標準仕分けモードとは、ニューラルネットワークを用いずに、ワークの輪郭や色等の特徴量を用いたルールベースの仕分けモードである。
【0046】
ステップS1102にて学習仕分けモードが選択されると、プロセッサ部20はマスタ画像の登録を受け付ける(ステップS1103)。マスタ画像は、カメラ部14が都度撮影した画像であっても良いし、過去の運転履歴画像や記憶部19に記憶されているファイル画像であっても良い。
【0047】
続いて、ユーザはマスタ画像上に、検査対象領域として1又は複数の検出ウィンドウを設定する(ステップS1104)。設定された検出ウィンドウ内の画像は上述したニューラルネットワークに入力され、ニューラルネットワークから各検出ウィンドウ内の特徴量が出力される。
【0048】
続いて、ユーザは検出ウィンドウを設定したマスタ画像に対応する品種を登録する(ステップS1105)。例えば、ユーザが赤色のボールペンを品種として登録したい場合は、当該マスタ画像に対応する品種を「赤色のボールペン」として登録する。登録された品種は、ニューラルネットワークから出力された検出ウィンドウ内の特徴量と対応付けて記憶部19に記憶される。各品種に対応する画像は1つであっても良いが、複数の赤色のボールペンに対応する複数の画像をマスタ画像として登録することができる。例えば、色味が僅かに異なる色のボールペンを赤色のボールペンとして品種登録しておけば、運転時に多少色味が異なっていても、赤に近い色を有するボールペンを「赤色のボールペン」として仕分けすることができる。
【0049】
仕分けを行うためには、品種を2個以上登録する必要がある。例えば、赤色のボールペンと青色のボールペンに仕分けを行うためには、青色のボールペンの対応するマスタ画像を追加登録し、検出ウィンドウ内の特徴量を抽出し、「青色のボールペン」として品種登録する必要がある。
【0050】
各品種に対応したマスタ画像と、各マスタ画像から抽出された特徴量と、各マスタ画像に対応する品種は記憶部19に記憶される。この状態で、ユーザからの学習処理の開始指示を受け付けると、各品種を仕分けするために必要な仕分け境界が算出される(ステップS1106)。なお、ここで行われる学習処理は、事前に学習されて記憶部19に記憶されたニューラルネットワークから出力された特徴量に基づいて、各品種を仕分けするための仕分け境界を算出する処理であり、ニューラルネットワーク自体のパラメータを学習する処理ではない。続いて、ステップS1107で出力設定が行われる。出力設定については詳細は後述する。
【0051】
一方、ステップS1102でルールベース仕分けモードが選択されると、ステップS1108に進み、マスタ画像の登録を受け付け、ステップS1109で仕分けルールの設定を受け付ける。仕分けルールの設定では、登録されたマスタ画像上で、検出ウィンドウ内の色を判別する色ツールや輪郭を検出する輪郭ツールの設定ができる。色ツールを選択すれば、検出ウィンドウ内の色に応じて、輪郭ツールを用いれば検出された輪郭の情報に基づいて、ワークの仕分けルールを設定することができる。このようにステップS1102でルールベース仕分けモードが選択されると、上述したニューラルネットワークを用いた特徴量の抽出を行わずに、ユーザにより設定された特徴量を画像から抽出し、抽出した特徴量に基づいてワークの仕分けを行うことができる。
【0052】
一方、ステップS1101でユーザが良否判定モードを選択した場合は、ステップS1110に進み、良否判定を学習ベースで行うかルールベースで行うかの選択を行う。ここでは、ユーザが学習良否判定モードか、ルールベース良否判定モードかを選択することができる。ユーザにより学習用の検査ツールが選択されると、学習良否判定モードとしての設定が行われる。一方、ユーザによりルールベースの検査ツールが選択されると、ルールべース設定モードとしての設定が可能になる。
【0053】
ステップS1110で学習良否判定モードが選択されると、プロセッサ部20は良品画像と不良品画像にそれぞれ対応するマスタ画像の登録を受け付け(ステップS1111)、マスタ画像上に検出ウィンドウを設定する(ステップS1112)。そしてマスタ画像に設定された検出ウインドウ内の画像をニューラルネットワークに入力し、ニューラルネットワークから出力された良品画像であることを示す特徴量と、不良品画像であることを示す特徴量を特徴量空間上にマッピングし、良品と不良品を識別するための判定境界を自動的に生成する(ステップS1113)。なお、上述した学習仕分けモードと同様に、良品に対応する良品画像と、不良品に対応する不良品画像は1枚ずつあっても良いし、複数であっても良い。
【0054】
一方、ステップS1110でルールベース設定モードが選択された場合は、ステップS1114にてマスタ画像の登録を受け付ける(ステップS1115)。ここでは、輪郭ツール、色ツール等のルールベースの検査ツールの設定ができる。
【0055】
以上説明したように、本実施形態においては、事前に学習されたニューラルネットワークに異なる品種の画像を入力し、仕分け境界を生成する学習仕分けモードと(第一仕分けモード)と、色や輪郭情報に基づいて、品種の仕分けを行うルールベース仕分けモード(第二仕分けモード)と、事前に学習されたニューラルネットワークに良品画像と不良品画像を入力し、良否判定境界を生成する学習良否判定モード(第一良否判定モード)と、色や輪郭情報に基づいて、ワークの良否判定を行うルールベース良否判定モード(第二良否判定モード)のいずれかの検査モードの設定を行うことができる。このような検査モードの選択は、モード選択部20bで行える。
【0056】
上記の学習仕分けモードと、学習良否判定モードにおいて、特徴量の抽出に用いられるニューラルネットワークは、同一のネットワークを使うことができる。画像検査装置本体には単一のニューラルネットワークを学習させておくだけで、3以上の品種を登録して仕分けを行う学習仕分けモードと、良品画像と不良品画像を学習させて良否判定を行う良否判定モードとを切り替えて使うことができる。
【0057】
ニューラルネットワークを使って仕分け処理を行う様子を
図12に、また同じニューラルネットワークを使って良否判定処理を行う様子を
図13に、それぞれ示す。これらの図において、AはワークWKを撮像したワーク画像に検出ウィンドウDWを設定した状態、Bはニューラルネットワークで行われる推論処理、Cは特徴量空間FSで行われる仕分け処理又は良否判定処理を、それぞれ示している。またこれらの図に示すニューラルネットワークNNは事前に学習されて記憶部19に記憶された同一のニューラルネットワークNNである。仕分け処理と良否判定処理を行う推論処理は、事前に学習されたニューラルネットワークNNに、
図12及び
図13のAに示す検出ウィンドウDW内の画像を入力することにより実行される。画像検査装置本体は、事前に学習されたニューラルネットワークNNを記憶部19の学習済みニューラルネットワーク記憶部19aに記憶しておき、プロセッサ部20は推論処理を実行するための専用回路を搭載している。当該専用回路が仕分けと良否判定に関する推論処理を実行する。プロセッサ部20はニューラルネットワークNNの学習処理を実行せず、推論処理のみを実行すれば良いため、処理負荷がかからない。
【0058】
学習良否判定処理では、
図13のAに示す予め設定された検出ウィンドウDW内の画像が、Bに示す事前に学習されたニューラルネットワークNNに入力されて、特徴量が抽出される。抽出された特徴量はCに示す特徴量空間FS上にマッピングされ、特徴量空間FSに対して設定された判定境界と比較されて、良否判定結果を出力する(第一推論処理)。
【0059】
一方、学習仕分け処理では、
図12のAに示す予め設定された検出ウィンドウDW内の画像が、
図12のBに示す事前に学習されたニューラルネットワークNNに入力されて、特徴量が抽出される。抽出された特徴量が、
図12のCの特徴量空間FSにおいて、上述した設定処理により設定された仕分け境界と比較されて、予め設定された品種のどれに対応するかを判定し、出力する(第二推論処理)。
【0060】
これらの良否判定や仕分け処理では、検出ウィンドウDW内の画像のみがニューラルネットワークNNに入力され、特徴量が抽出されるため、推論処理にかかる負荷を低減できる。また、検出ウィンドウDW以外の部分の画像によって、良否判定や仕分けの性能が影響を受けないため、安定した検査ができる。
【0061】
なお、上述した実施例では、良否判定と仕分けで同一のニューラルネットワークを使う例を示したが、別々のニューラルネットワークを使っても良いことは云うまでもない。
(仕分けGUI)
【0062】
以下、検査ツールを用いて判定条件を設定する手順を、以下
図14~
図21に示す画像検査プログラムのユーザインターフェース画面に基づいて説明する。まず、良否判定条件と仕分け条件のいずれを設定するかを選択する。
図14はモード選択画面210の一例を示している。モード選択画面210では、「良否判定モード」ボタン211と、「仕分けモード」ボタン212が設けられている。「良否判定モード」ボタン211を選択すると、例えば良否判定モードの説明として、「OKワークをマスタ画像として登録し、輪郭や面積、エッジ等の特徴を判別するツールを設定します。マスタ画像との差分を判別します。」等と表示される。一方、「仕分けモード」ボタン212を選択すると、「複数の品種画像をマスタ画像として登録し、ワークの特徴に応じて品種を判別します。判定結果を元に仕分けを行うことができます。」等と説明が表示されるようにしてもよい。このように、ユーザに対して選択すべき項目を提示すると共に、各項目を文字や図形等で説明することで、設定や操作に詳しくないユーザであっても、設定の手順や意味を順に案内して適切な設定作業が行われるように誘導することができる。
(簡単設定)
【0063】
仕分け条件の設定は、設定手順を簡素化した簡単設定と、各設定項目をユーザが直接指定可能なカスタム設定を設けることができる。例えば
図14において、「仕分けモード」ボタン212を押下すると、
図15の仕分けモード画面220となり、「学習仕分けモード」ボタン221と「ルールベース仕分けモード」ボタン222が表示され、ユーザは簡単設定とカスタム設定のいずれかを選択できる。「学習仕分けモード」ボタン221を押下すると、簡単設定が開始され、学習仕分けツールが表示される。学習仕分けツールを用いた仕分け条件の設定は、撮像条件の設定と、マスタ画像の登録と、品種登録と、出力の割り当てを含む。撮像条件の設定では、カメラ部14で検査用画像を生成する際の撮像条件として、撮像視野や画像の明るさ、ピント等を設定する。
【0064】
また画像検査プログラムは、簡単設定に際して、ユーザの設定作業をガイダンスするするナビゲーション機能を備えている。ナビゲーション機能は、例えば
図16等において、画面の上段に各工程をフロー図状に図示すると共に、現在設定中の項目をハイライト表示させて、設定作業の進捗状況をユーザが一目で把握できるようにしている。
【0065】
マスタ画像の登録は、マスタ画像登録画面を用いて行う。マスタ画像登録画面では、画像検査を行う検査対象領域を設定するためのマスタ画像を登録する。検査対象領域は枠状のウィンドウとして設定される。また、運用時において撮像する検査用画像の明るさが変動する場合は、明るさが変動した画像も取得しておき、1品種目の登録画像とすることで、明るさの変動に対応することができる。マスタ画像を登録する設定方法として、ライブ画像から登録する方法、運転画像履歴から登録する方法、ファイル画像から登録する方法等がある。
図16はツール設定画面240の例を示している。ツール設定画面240では、登録済みのマスタ画像に対して、検査対象領域を設定すると共に、仕分けられる品種を登録する。
図16のツール設定画面240では、右側の操作領域202に「検出ウィンドウ設定」ボタン241と「品種画像登録」ボタン242が設けられている。「検出ウィンドウ設定」ボタン241を押下すると、
図17の検出ウィンドウ設定画面250が表示され、画像表示領域201においてマウス等の入力デバイスを用いて検査対象領域を枠状に設定する。検査対象領域は複数指定することができる。指定済みの検査対象領域は、画像表示領域201においてそれぞれ枠状に表示される。また操作領域202においては、指定済みの検査対象領域が個別の識別番号を付されると共に、一覧で表示される。
図17の例では、検査対象領域として3つのウィンドウを指定している。このようにしてすべての検査対象領域を指定すると、右下の「OK」ボタン251を押下して検査対象領域の指定を終了する。
【0066】
一方、仕分けの品種登録は、品種登録画面で行う。
図16のツール設定画面240において、「品種画像登録」ボタン242を押下すると、
図18の品種登録画面260が表示される。品種登録画面260では、品種と画像を登録して、仕分け境界を設定する。ここで仕分け境界を設定することを、本実施例では「学習」とも称する。登録された画像は、画像表示領域201の左端に設けられた品種画像表示欄261に、縮小して一覧表示される。
【0067】
ここで1品種目は、マスタ画像として登録された画像に対して行ってもよい。この場合は、既に登録された画像に対して1品種目が設定されたことになる。
図18の例では、マスタ画像が第一品種画像として登録され、画像表示領域201の左側に設けられた品種画像表示欄261の0番に登録されている。よって次の2品種目以降に該当する画像を順次登録していくことになる。追加する品種と対応する画像の登録は、
図18の操作領域202に設けられた「画像を登録」ボタン262を押下して行う。「画像を登録」ボタン262を押下すると、
図19の画像表示領域201に表示された画像が、品種画像として登録される。例えば
図19の例では、画像検査装置100のカメラ部14で撮像されるワークを、登録したい品種のワークに変更して、
図18の画像表示領域201にライブ画像を表示させた状態で、第二品種画像として登録し、
図19の画像表示領域201の品種画像表示欄261において1番目の第一品種画像として登録させた状態を示している。また品種画像は、ライブ画像に限らず、過去に登録した画像から登録することができる。例えば
図18の品種登録画面260で、操作領域202の下段に設けられた「ファイル・履歴から」ボタン263を押下して、過去に保存した画像を表示させて、品種画像として登録することができる。
【0068】
さらに、品種画像と共に品種名を登録することができる。
図18の例では、品種名として「MASTER_0」が、
図19の例では「MASTER_1」が、それぞれ自動で入力されている。また、ユーザが任意の品種名を登録することもできる。例えば
図18等の品種登録画面260で、操作領域202に設けられたメモ状のアイコン264を押下すると、品種名の編集が可能となる。
【0069】
このようにして複数、すなわち2品種以上の品種画像を登録すると、学習、ここでは仕分け境界の設定を開始することができる。
図19の品種登録画面260の右下に設けられた「学習開始」ボタン265を押下すると、この時点で登録された品種画像を用いて、特徴量空間に仕分け境界が設定される。なお品種名の追加後、品種画像を登録していない段階では学習できず、「学習開始」ボタン265はグレーアウトされて選択できない。
【0070】
品種登録を終えると、最後に出力割当を行う。例えば学習が完了し、仕分け境界が設定されると、品種登録が終了して
図20において右下に示すように「STEP4に進む」ボタン266が押下可能となる。「STEP4に進む」ボタン266を押下すると、
図21の出力割当画面270に切り替わる。出力割当画面270では、出力ポート毎に出力される内容を割り当てることができる。各出力ポートに割当可能な出力として、設定された品種の種別情報、良否判定の結果(OK又はNG)、運転、ビジー、エラー、出力なし等が挙げられる。このような割り当てられる出力の内容は、出力ポート毎にユーザが選択可能とできる。
図21の例では、出力ポート1の設定欄271として、プルダウンメニューで割当可能な出力を選択可能としている。このようにして判定条件のすべての設定を終えると、右下の「完了」ボタン272を押下して設定作業を終了し、判定条件の設定内容を記憶部19に保存する。
(カスタム設定)
【0071】
以上は簡単設定について説明した。一方、カスタム設定では、ルールベースでの仕分けを行うための設定を行う。ルールベースでの仕分けでは、上述したニューラルネットワークを用いることなく、色や輪郭等、ユーザにより指定された特徴量を用いて仕分けを行うことができる。例えば
図15の仕分けモード画面220で「ルールベース仕分けモード」ボタン222を押下するなどして、
図11のステップS1102でルールベース仕分けが選択されると、ステップS1109において、ルールベース仕分けの設定を行う。ルールベース仕分けの設定では、輪郭ツールや色ツール等、特徴量に応じてルールベースの仕分けツールを設定できる。
【0072】
ルールベース仕分けの設定の一例として、
図22に示す品種登録詳細画面280では、操作領域202において「ツール追加」ボタン281を設けている。この「ツール追加」ボタン281を押下すると、
図23に示すツール追加画面290が表示される。ツール追加画面290では、どの特徴量を用いて仕分けを行うかを設定することができる。
図23の例では、操作領域202において基本ツールとして「輪郭」291、「色ツール」292、「位置補正」293が設けられており、それぞれを選択することで、ワーク画像の輪郭や色彩、位置等を特徴量として詳細に設定できる。例えば「輪郭」291を選択した場合、
図24に示すように品種登録詳細画面280が表示される。品種登録詳細画面280では、操作領域202に、品種画像0、品種名「MASTER_0」が登録され、特徴量の01として輪郭283が設定される。輪郭283では閾値を設定できる。ここでは、スライダにより0~100の範囲で、マスタ画像上で設定された輪郭との一致度に対する閾値を設定する。閾値の設定の一例として、入力画像の検出ウィンドウ内で検出された輪郭が、マスタ画像上で設定された検出ウィンドウ内の輪郭と同一の長さでなかったり、一部欠けていたとしても、同じ品種として検出したい場合は、閾値を低めに設定する。例えば、入力画像の輪郭が、マスタ画像の輪郭に対して4分の1までは輪郭が欠けていてもOKと判定したい場合は、閾値を「75」と設定する。このような閾値の設定により、入力画像の輪郭の一致度が閾値以上である場合は、設定された品種として仕分け結果を出力する。
【0073】
図25は、追加のツールとして、色ツール284を設定した例を示している。マスタ画像上で色ツールが設定された検出ウィンドウ内の色と、入力画像の検出ウィンドウ内の色がどの程度一致しているかによって、仕分けをすることができる。色ツール284に対しても、色の一致度に対する閾値をスライダで任意に設定できる。この場合は、輪郭ツール283で検出された輪郭の一致度が閾値以上で、かつ色ツール284で検出された色の一致度が閾値以上である場合に、設定された品種1を出力するというAND設定となる。
【0074】
さらに
図26は、上記と異なる品種画像である品種画像1、品種名「MASTER_1」に対して、特徴量として幅ツール285が設定された例を示している。幅ツール285ではマスタ画像上の複数の輪郭の間の距離を幅として設定するものである。マスタ画像上で検出された幅に対して、入力画像上で検出された幅がどの程度一致しているかを示す幅の一致度に対して、同様にスライダを用いて閾値を設定することができる。ここでは、閾値以上の幅の一致度を有する入力画像を品種2として出力している。
【0075】
このように品種登録詳細画面280において複数の異なる特徴量を用いて仕分けをするための仕分けツールの設定ができる。ルールベースの仕分け設定終了後に、仕分け処理を実行する際には、マスタ画像上で各仕分けツールに対応する検出ウィンドウが設定され、検出ウィンドウ内の各仕分けツールに対応する特徴量が抽出される。ここで、マスタ画像上で検出された特徴量と、どの程度一致していたらマスタ画像と同じ品種として決定するかを定める閾値を、設定時に調整することができる。運用時には、入力画像が入力されると、例えば位置補正等で検出ウィンドウの位置が特定される。そして特定された検出ウィンドウ内において、特徴量が抽出され、抽出された特徴量が、マスタ画像の特徴量とどの程度一致しているかを示す一致度が算出される。算出された一致度は閾値と比較されて、マスタ画像に対して設定された品種と同じ品種か否かを判定する仕分け処理が行われる。また同一のマスタ画像に対して、異なる種類の複数のツールを設定することもできる。この場合は、各ツールで抽出された特徴量に基づく比較結果を組み合わせて、仕分けを行うことができる。
【産業上の利用可能性】
【0076】
本発明の画像検査装置、画像検査方法、画像検査プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器は、検査対象物のワークを撮像した画像に基づいて検査対象物の良否判定や仕分けを行う用途等に好適に利用できる。
【符号の説明】
【0077】
100…画像検査装置
1…筐体
2…制御ユニット
3…撮像ユニット
4…表示部
5…パーソナルコンピュータ
6…操作部
11…LED
12…出力部;12a、12b、...12n…出力ポート
13…メイン基板
14…カメラ部
15…照明部
16…コネクタ基板
17…通信基板
18…電源基板
19…記憶部;19a…学習済みニューラルネットワーク記憶部
20…プロセッサ部;20a…推論処理部;20b…モード選択部;
20c…仕分けベース選択部;20d…ツール設定部
41…タッチパネル
51…キーボード
100…画像検査装置
133…メモリ
141…モータ
142…基板
151…ドライバ
161…電源インタフェース
181…モータドライバ
201…画像表示領域
202…操作領域
210…モード選択画面
211…「良否判定モード」ボタン
212…「仕分けモード」ボタン
220…仕分けモード画面
221…「学習仕分けモード」ボタン
222…「ルールベース仕分けモード」ボタン
240…ツール設定画面
241…「検出ウィンドウ設定」ボタン
242…「品種画像登録」ボタン
250…検出ウィンドウ設定画面
251…「OK」ボタン
260…品種登録画面
261…品種画像表示欄
262…「画像を登録」ボタン
263…「ファイル・履歴から」ボタン
264…メモ状のアイコン
265…「学習開始」ボタン
266…「STEP4に進む」ボタン
270…出力割当画面
271…出力ポート1の設定欄
272…「完了」ボタン
280…品種登録詳細画面
281…「ツール追加」ボタン
283…輪郭
284…色ツール
285…幅ツール
290…ツール追加画面
291…「輪郭」
292…「色ツール」
293…「位置補正」
CB…コンベアベルト;CB1、CB2、CB3…別ライン
ST1、ST2、ST3…仕分け機
FS…特徴量空間
BD1…良否判定境界
BD2…仕分け境界
WK…ワーク
DW…検出ウィンドウ
NN…ニューラルネットワーク