(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-17
(45)【発行日】2023-01-25
(54)【発明の名称】学習処理装置及び検査装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20230118BHJP
【FI】
G06T7/00 350C
G06T7/00 610
(21)【出願番号】P 2021546938
(86)(22)【出願日】2020-09-16
(86)【国際出願番号】 JP2020035141
(87)【国際公開番号】W WO2021054376
(87)【国際公開日】2021-03-25
【審査請求日】2022-03-14
(31)【優先権主張番号】P 2019168127
(32)【優先日】2019-09-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】502220366
【氏名又は名称】シンテゴンテクノロジー株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】和田 謙
【審査官】藤原 敬利
(56)【参考文献】
【文献】特開2018-198053(JP,A)
【文献】特開2019-061578(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/00- 3/12
G06N 7/08-99/00
G06T 7/00- 7/90
(57)【特許請求の範囲】
【請求項1】
検査対象物を撮像した画像データとニューラルネットワークモデルとに基づく前記検査対象物の検査に用いられるニューラルネットワークモデルを構築する学習処理装置(30)であって、
前記学習処理装置(30)は、
複数の学習用画像を含む画像データのリストに基づいて所定の学習条件で学習処理を行ってニューラルネットワークモデルを構築する学習部(30)を備え、
前記学習部(30)は、前記画像データのリスト又は前記学習条件のうちの少なくとも一部が変更された場合に、前記画像データのリスト及び前記学習条件の組み合わせに対して固有のモデル識別データを付与し、当該画像データのリスト及び前記学習条件で構築されたニューラルネットワークモデルに対して前記固有のモデル識別データを埋め込むことで、前記ニューラルネットワークモデルを構築するごとに、当該ニューラルネットワークモデルに固有のモデル識別データを埋め込む、ことを特徴とする学習処理装置。
【請求項2】
前記モデル識別データが、バイナリデータである、ことを特徴とする請求項
1に記載の学習処理装置。
【請求項3】
設定された検査処理条件のデータファイルにしたがって検査対象物を検査する検査装置(1)であって、
複数の学習用画像を含む画像データのリストに基づいて所定の学習条件で学習処理を行いニューラルネットワークモデルを構築する学習部(30)と、
構築された前記ニューラルネットワークモデルを適用した前記検査処理条件のデータファイルを生成する処理条件設定部(20)と、
前記検査処理条件のデータファイルにしたがって、前記検査対象物を撮像した画像データと前記ニューラルネットワークモデルとに基づいて前記検査対象物の異常を判定する検査部(10)と、を備え、
前記学習部(30)は、前記画像データのリスト又は前記学習条件のうちの少なくとも一部が変更された場合に、前記画像データのリスト及び前記学習条件の組み合わせに対して固有のモデル識別データを付与し、当該画像データのリスト及び前記学習条件で構築されたニューラルネットワークモデルに対して前記固有のモデル識別データを埋め込むことで、前記ニューラルネットワークモデルを構築するごとに、当該ニューラルネットワークモデルに固有のモデル識別データを埋め込むことで、前記ニューラルネットワークモデルを構築するごとに、固有のモデル識別データを付与して前記ニューラルネットワークモデルを構築し、
前記処理条件設定部(20)は、適用するニューラルネットワークモデルが変更されるごとに、固有の条件識別データを付与して前記検査処理条件
のデータ
ファイルを生成する、ことを特徴とする検査装置。
【請求項4】
前記条件識別データが、バイナリデータである、ことを特徴とする請求項
3に記載の検査装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、検査に用いるニューラルネットワークモデルを構築する学習処理装置及び学習処理機能を備えた検査装置に関する。
【背景技術】
【0002】
従来、検査対象物を検査するために撮像画像を用いる検査装置が知られている。例えば、容器入りの薬剤を製造する際に、薬剤用容器のひびや容器内の異物の有無を、画像を用いて検査する検査装置が知られている。かかる検査に用いられるソフトウェアは、例えばルールベース画像認識処理を用いており、所定の検査を実行するための処理手順及び設定するパラメータ等を検査処理条件として管理する機能を有している。例えば、製薬業界においては、製造業者に対して適正製造規範(GMP:Good Manufacturing Practice)で定められたガイドラインに適合するように、ソフトウェアは、作成、検証済みの検査処理条件が薬剤製造時に使用されている検査処理条件と同一であるか、及び、有効であるかを確認できることが必要とされる。
【0003】
一方、近年では、ニューラルネットワークを用いた検査装置も実用化されている。例えば、特許文献1には、検査対象物を撮像した検査画像の一部を入力画像として切り出し、入力画像の検査結果に影響を与える検査用マークを検査画像における入力画像の切り出し位置に応じて入力画像に埋め込み、検査用マークが埋め込まれた入力画像を、ニューラルネットワークに入力し、ニューラルネットワークの出力を用いて入力画像の検査結果を判定する検査装置が開示されている。
【0004】
また、特許文献2には、検査対象物を含む学習用画像に基づいてニューラルネットワークの学習を行い、学習用画像の特徴量を出力する学習済みのニューラルネットワークを構築し、学習済みのニューラルネットワークが出力した学習用画像の特徴量に基づいて検査対象物の良否を判定する識別器を学習により生成し、検査対象物を含む判定用画像を学習済みのニューラルネットワークに入力し判定用画像の特徴量を出力し、判定用画像の特徴量を識別器に入力して検査対象物の良否の判定を行う画像検査装置が開示されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2019-505802号公報
【文献】特開2019-87181号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述したように、ルールベース画像認識処理による検査手法に代えてニューラルネットワークを用いる場合、ニューラルネットワークモデルの構造をユーザが理解することができないため、作成、検証済みのニューラルネットワークモデルと、検査段階で使用されるニューラルネットワークモデルとが同一であるか、あるいは、当該ニューラルネットワークモデルが有効であるかを検証することが容易ではない。
【課題を解決するための手段】
【0007】
本開示のある観点によれば、検査対象物を撮像した画像データとニューラルネットワークモデルとに基づく検査対象物の検査に用いられるニューラルネットワークモデルを構築する学習処理装置であって、学習処理装置は、複数の学習用画像を含む画像データのリストに基づいて所定の学習条件で学習処理を行ってニューラルネットワークモデルを構築する学習部を備え、学習部は、ニューラルネットワークモデルを構築するごとに、当該ニューラルネットワークモデルに固有のモデル識別データを埋め込む学習処理装置が提供される。
【0008】
また、本開示の別の観点によれば、設定された検査処理条件のデータファイルにしたがって検査対象物を検査する検査装置であって、複数の学習用画像を含む画像データのリストに基づいて所定の学習条件で学習処理を行いニューラルネットワークモデルを構築する学習部と、構築されたニューラルネットワークモデルを適用した検査処理条件のデータファイルを生成する処理条件設定部と、検査処理条件のデータファイルにしたがって、検査対象物を撮像した画像データとニューラルネットワークモデルとに基づいて検査対象物の異常を判定する検査部と、を備え、学習部は、ニューラルネットワークモデルを構築するごとに、固有のモデル識別データを付与してニューラルネットワークモデルを構築し、処理条件設定部は、適用するニューラルネットワークモデルが変更されるごとに、固有の条件識別データを付与して検査処理条件データを生成する、ことを特徴とする検査装置が提供される。
【発明の効果】
【0009】
以上説明したように本開示によれば、ニューラルネットワークモデルを用いて検査対象物の検査に用いられるニューラルネットワークモデルを構築する学習処理装置において、作成、検証済みのニューラルネットワークモデルと、検査段階で使用されるニューラルネットワークモデルとが同一であるかを容易に検証することができる。
【図面の簡単な説明】
【0010】
【
図1】本開示の実施の形態に係る検査装置の構成例を示すブロック図である。
【
図3】ニューラルネットワークの学習処理及び検査処理条件の設定処理の動作例を示すフローチャートである。
【
図4】データセット変更前のモデル識別データ及び条件識別データのデータファイルを示す説明図である。
【
図5】データセット変更後のモデル識別データ及び条件識別データのデータファイルを示す説明図である。
【発明を実施するための形態】
【0011】
以下に添付図面を参照しながら本開示の実施の形態について説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0012】
<1.検査装置の全体構成>
まず、本実施形態に係る検査装置の全体構成の一例を説明する。本実施形態に係る検査装置は、例えば、容器入りの薬剤の検査工程の作業ラインの一部に組み込まれて使用され、ニューラルネットワークを用いて検査対象物を検査する。ニューラルネットワークの種類は特に限定されない。検査装置は、ひびや割れ等の容器の破損の有無や、容器内への異物の混入の有無を検査する。容器は、例えば、アンプル、バイアル、ビン、カープル又は注射器等であるが、これらの例に限定されない。
【0013】
検査装置は、少なくともプロセッサ及び記憶装置を備えて構成される。プロセッサは、例えば、GPU(Graphics Processing Unit)等の画像処理装置と、CPU(Central Processing Unit)等の演算処理装置とを含んでいる。記憶装置は、例えば、HDD(Hard Disk Drive)やCD(Compact Disc)、DVD(Digital Versatile Disc)、SSD(Solid State Drive)、USB(Universal Serial Bus)フラッシュ、ストレージ装置等の一つ又は複数の記憶媒体を含んでいる。
【0014】
図1は、本実施形態に係る検査装置1の構成例を示す模式図である。検査装置1は、画像処理部40、検査部10、処理条件設定部20、学習部30及び記憶部50を備える。画像処理部40、検査部10、処理条件設定部20及び学習部30の一部又は全部は、上記のプロセッサによるプログラムの実行により実現できる機能である。画像処理部40、検査部10、処理条件設定部20及び学習部30の一部又は全部は、ファームウェア等の更新可能なもので構成されていてもよく、プロセッサからの指令によって実行されるプログラムモジュール等であってもよい。記憶部50は、上記の記憶装置により実現される機能である。
【0015】
なお、検査装置1を構成する学習部30は、学習処理装置としての機能を有する構成要素であり、当該学習部30を含む一部の機能を有する独立した処理装置として構成されていてもよい。
【0016】
検査装置1には、連続して搬送される薬剤入り容器を撮影するための撮像装置5a,5bが接続されている。撮像装置5a,5bとしては、例えば、広角のCCD(Charge Coupled Device)カメラ又はラインセンサカメラ等が用いられる。
図1には二つの撮像装置5a,5bが示されているが、撮像装置の数は一つであってもよく、三つ以上であってもよい。このほか、検査装置1は、検査対象物に光を照射する照明装置や、検査対象物を視覚的に拡大する顕微鏡を備えていてもよい。さらに、検査装置1は、画像表示モニタ、スピーカ等を備えていてもよい。画像表示モニタは、例えば、作業者が検査状況の確認等のための画像情報やテキストを表示する。画像表示モニタは、作業者による操作入力を受け付けるタッチパネルであってもよい。スピーカは、例えば、検査手順のガイダンスを発したり、薬剤入り容器に欠陥を検出したときにアラームを発したりするために備えられる。
【0017】
例えば、液体の薬剤を充填した薬剤入り容器を搬送しながら、異物混入などの検査を行うことが考えられる。この場合、検査ステーションに至った薬剤入り容器を回転させながら撮影することで、容器の状態を検出したり、回転させている状態での内部の薬剤の状態を撮影することで異物の混入を検出したりすることができる。例えば、複数の検査ステーションにおいて、それぞれ複数の撮像装置において薬剤入り容器の検査を行う。
【0018】
画像処理部40は、撮像装置5a,5bにより撮影された撮像画像を取得する。画像処理部40は、取得した撮像画像を記憶部50に保存する。画像処理部40は、撮像画像を記憶部50に保存する際に、検査に適した適宜の画像処理を行ってもよい。例えば、画像処理部40は、撮像画像のうちの検査対象範囲に対応する一部を切り出す処理を行ってもよい。また、画像処理部40は、撮像画像のデータの圧縮や正規化、拡張等の処理を行ってもよい。
【0019】
学習部30は、撮像画像を用いてニューラルネットワークの学習(深層学習:ディープラーニング)を行う。すなわち、所定の検査条件において得られた異常なしの画像や、各種異常ありの画像を学習することで、ニューラルネットワークモデルを構築する。
【0020】
処理条件設定部20は、検査対象物の検査処理条件のデータファイルを生成する。検査処理条件のデータファイルとは、検査の処理手順や検査条件のパラメータ等をまとめたデータファイルである。従来のルールベース画像認識処理を用いた検査においては、予め定められた検査条件のデータファイルに基づいて検査が行われ、各検査における検査条件が、例えば撮像装置毎に撮影された画像データとともに記憶される。また、学習によってニューラルネットワークモデルを構築した場合には、その学習に用いた画像についての検査条件から、構築したニューラルネットワークモデルに対応する検査条件データファイルを生成する。
【0021】
ユーザは、設定された検査処理条件にしたがって検査を実行する。検査部10は、学習済みのニューラルネットワークモデルを用いて検査対象物の検査を行う。例えば、検査部10は、検査対象物を撮影した画像をニューラルネットワークモデルに入力し、その出力に基づいて検査対象物の検査を行う。使用されるニューラルネットワークモデルは、設定された検査処理条件での学習によって形成されたものである。
【0022】
なお、検査部10は、ニューラルネットワークモデルを用いた検査と併せて、従来のルールベース画像認識処理に基づく検査を行うことができるように構成されていてもよい。以下に説明する本実施形態に係る検査装置1は、ニューラルネットワークモデルを用いた検査以外に、従来のルールベース画像認識処理を用いた検査を実行可能に構成されている。
【0023】
<2.検査処理の例>
次に、検査処理条件のデータファイルに含まれる検査手順に従った検査処理の一例を説明する。
【0024】
図2は、検査手順の一例を示す。
図2に例示する検査手順では、ステップS11~ステップS19において、それぞれ設定された条件で検査部vsn_PC1~vsn_PC4により検査処理を行った後に、ニューラルネットワークモデルを用いた判定を行い、その後ステップS21において、検査対象物の欠陥を判定する。このうち、ステップS11~S17は、ルールベース画像認識処理等によって行われる検査処理であり、ステップS19が、ニューラルネットワークモデルを用いた検査処理である。
【0025】
検査対象物が、ボトル型の容器である場合、例えば、ステップS11~ステップS17では、容器の肩あるいは首等、主としてひびが生じやすい部分に大きなキズがないか、あるいは、容器内に異物が混入していないか、を光学的に判定可能に条件が設定されて検査が行われ、その検査結果として得らえた画像に基づいて判定が行われる。それぞれのステップS11~ステップS17では、検査処理条件のデータファイルの設定にしたがって検査対象の容器を撮像する撮像装置5a,5bを変えたり、照明装置から照射する光の露光量、スペクトル、露光時間等を変えたりしながら、所定の検査が行われる。そして、ステップS11~ステップS17では、得られた画像データに基づいて、従来のルールベースでの容器の外観あるいは容器内の異物混入などの異常の有無が検出される。
【0026】
また、ステップS11~S17の検査について、各検査処理条件および各検査で得られた画像は、各ステップS11~S17の検査に対応付けてそれぞれ記憶部50に記憶される。
【0027】
ステップS19では、ニューラルネットワークモデルを用いて、容器の外観あるいは容器内の欠陥の有無の判定が行われる。ステップS19においても、検査処理条件のデータファイルの設定にしたがって、複数の検査対象の容器の画像をそれぞれニューラルネットワークモデルに入力し、その出力に基づいて、容器におけるキズの有無や、容器内への異物の混入の有無が検査される。すなわち、1つの検査によって得られた容器画像について、その検査について用意されたニューラルネットワークモデルに入力することで、当該検査についての検査結果であるキズなどの異常(欠陥)についての判定結果が得られる。そして、各検査について、使用された検査処理条件のデータファイルと、用いたニューラルネットワークモデルとを関連付けて記憶する。
【0028】
ステップS21では、ステップS11~ステップS19の判定結果から、検査対象物の合否を判定する。例えば、ステップS11~S17における判定結果、およびステップS19における判定結果のいずれかで欠陥有りと判定された容器を不合格にしたり、両方で欠陥有りと判定された容器を不合格にすることができる。なお、これらの各ステップS11~ステップS21で行われる処理の内容については、従来公知の技術を採用することができるため、詳しい説明は省略する。
【0029】
本実施形態に係る検査装置1では、ステップS19のニューラルネットワークモデルを用いた検査処理について、その検査処理条件のデータファイルとともに記憶する際に、当該ニューラルネットワークモデルのモデル識別データと、その検査処理条件のデータファイルの条件識別データを記憶する。ニューラルネットワークモデルのモデル識別データは、学習によってニューラルネットワークモデルを構築した時に付与する。すなわち、ニューラルネットワークの学習に用いるデータセットが異なるごとに書換困難な識別データを付与する。そして、ステップS19において、検査処理に用いたニューラルネットワークモデルのモデル識別データをその検査に対応して記憶する。従って、検査終了後において、行った検査ごとに用いたニューラルネットワークモデルのモデル識別データが記憶されており、検査処理に用いたニューラルネットワークモデルの検証を可能にしている。
【0030】
各ニューラルネットワークモデルについては、これを構築する際に用いた画像データのリストや設定パラメータなどが記憶されている。このため、ユーザが画像認識になんらかの不具合を発見したときに、モデル識別データからニューラルネットワークモデルを特定することができ、これによってニューラルネットワークの学習時に用いた画像データのリスト及び設定パラメータを追跡することができる。したがって、行われる検査に対するニューラルネットワークモデルの妥当性を検証することができる。
【0031】
<3.学習処理動作及び検査処理条件の設定処理動作>
次に、検査装置1により行われるニューラルネットワークの学習処理及び検査処理条件の設定処理の動作例を説明する。
【0032】
図3は、ニューラルネットワークの学習処理及び検査処理条件の設定処理の動作例を示すフローチャートである。
図3の左列は、検査処理条件(レシピ:Rcp.)の設定に関する動作を示し、右列は、ニューラルネットワークモデルの生成に用いるデータセット(Dtst.)に関する動作を示す。
【0033】
まず、検査装置1の処理条件設定部20が、ユーザの入力に基づいて、ニューラルネットワークモデルを特定の検査処理条件に適用することを検知する(ステップS31でYES)。すなわち、学習によりニューラルネットワークモデルを構築するとともに、構築したニューラルネットワークモデルに適用する検査処理条件のデータファイルを生成する。
【0034】
次いで、学習部30は、ニューラルネットワークの学習用のデータセットを設定する(ステップS33)。学習用のデータセットとは、ニューラルネットワークの学習に用いる画像データのリスト、及び、学習に用いる設定パラメータのデータ群である。設定パラメータは、例えば、ニューラルネットワークをディープラーニング(深層学習)する深度や学習率、誤差関数等のパラメータである。画像データのリストは、記憶部50に保存された画像データからランダムに選択されてもよく、ユーザにより指定されてもよい。すなわち、特定の検査条件において行った検査の結果についての画像データが異常あり、異常なしの例として記憶されており、これらのデータセットに基づいて、ニューラルネットワークモデルが構築される。
【0035】
例えば、学習開始時に、保存されている画像データのうちの50%をランダムに抽出して学習させてニューラルネットワークモデルを生成した後、残りの50%を生成したニューラルネットワークモデルに入力して当該モデルを検証してもよい。かかる検証により誤りが生じた場合には、当該画像データについては、手動で学習用の画像データとして追加してもよい。あるいは、薬剤入り容器の生産に適用したニューラルネットワークモデルに対して、検出できなかった異物や容器の欠陥があった場合に、当該容器を撮像した画像データを新たにデータセットに登録し、当該画像データを学習させるようにしてもよい。
【0036】
次いで、学習部30は、設定したデータセットに、モデル識別データを付与する(ステップS35)。付与されるモデル識別データは、データセットに対して付与される書換困難な識別データであって、データセットの一部でも異なる場合に個別に付与される。学習部30は、学習に用いる画像データのリストや設定パラメータの少なくとも一部を変更した場合、必ず別のモデル識別データを付与して、それぞれ異なるデータセットとして区別可能にする。このように、モデル識別データにより、ニューラルネットワークモデルとこれを構築するために用いられたデータセットが特定される。モデル識別データは、例えばバイナリデータであってもよい。バイナリデータを用いることによって、他のデータセットと識別可能な識別データを書換困難な識別データとして容易にデータセットに組み込むことができる。
【0037】
次いで、学習部30は、ニューラルネットワークの学習を行い、ニューラルネットワークモデルを生成する(ステップS37)。例えば、学習部30は、画像データをクラス分けしつつニューラルネットワークの学習を行う。クラス分けは、例えば、容器にひびが生じた状態、容器が欠けた状態、容器内に異物が混入した状態、及びそれらの程度に応じて行われてもよい。適用可能なニューラルネットワークの種類や学習方法は、特に限定されるものではなく、検査の内容に応じて適切なニューラルネットワークあるいは学習方法が選択される。
【0038】
次いで、学習部30は、生成したニューラルネットワークモデルに対して、モデル識別データを付与する(ステップS39)。ここで説明する例では、ニューラルネットワークモデルに対して、データセットに対して付与されたモデル識別データと同一の識別データを付与する。仮に、データセットを変更せずにニューラルネットワークモデルを生成した場合であっても異なるハッシュ値となるが、データセットが同一である限り、付与されるモデル識別データとして同一の識別データ(本実施形態ではバイナリデータ)が付与される。一方、データセットの少なくとも一部が変更されている限り、異なるモデル識別データがニューラルネットワークモデルに付与される。
【0039】
次いで、処理条件設定部20は、生成したニューラルネットワークモデルを検査処理条件のデータファイルに適用する(ステップS41)。具体的に、ニューラルネットワークを用いた検査処理に用いるニューラルネットワークモデルとして、生成したニューラルネットワークモデルを適用する。すなわち、ニューラルネットワークモデルを構築した際に使用したデータセットに対応する検査処理条件から、構築したニューラルネットワークモデルに対応する検査処理条件のデータファイルを生成する。
【0040】
新たにニューラルネットワークモデルを生成した場合、検査処理条件のデータファイルに適用する前に、検査部10において、当該ニューラルネットワークモデルの有効性を検証してもよい。これにより、当該ニューラルネットワークモデルを用いた検査の信頼性を高めることができる。
【0041】
次いで、処理条件設定部20は、生成した検査処理条件のデータファイルに対して条件識別データを付与して、当該検査処理条件のデータファイルを保存し(ステップS43)、処理を終了する。条件識別データは、ニューラルネットワークモデルのモデル識別データが異なる検査処理条件のデータファイルのそれぞれに対して異なる値が付与される。条件識別データは、モデル識別データと同様に、容易に書き換えることができない識別データである。条件識別データとして、例えば、バイナリデータが用いられる。
【0042】
ここで、ステップS31の判定で、NOの場合には、学習部30は、データセットが変更されたか否かを判別する(ステップS45)。具体的に、学習部30は、ユーザにより学習用の画像データが追加されたり、設定パラメータが追加あるいは変更されたりしたか否かを判別する。学習部30は、データセットが変更されていない場合(S45/No)、保存されているニューラルネットワークモデル及び検査処理条件のデータファイルを保持し、処理を終了する。一方、学習部30は、データセットが変更された場合(S45/Yes)、ステップS35に戻って、新たなニューラルネットワークモデル及び検査処理条件のデータファイルの生成を行う。その際、学習部30は、ニューラルネットワークモデル及び検査処理条件のデータファイルに対して、新たにモデル識別データ及び条件識別データを付与する。
【0043】
なお、このステップS31~S45の処理は、随時繰り返されるため、ユーザの入力があった場合およびデータセットが変更された場合に、新たなニューラルネットワークモデル及び検査処理条件のデータファイルの生成が行われる。
【0044】
図4及び
図5は、データセットの変更前後のモデル識別データ及び条件識別データを説明するための図である。
図4は、データセット変更前のモデル識別データ及び条件識別データのデータファイルを示し、
図5は、データセット変更後のモデル識別データ及び条件識別データのデータファイルを示す。
図4及び
図5のデータファイルには、プロジェクトファイル番号(Prj.)としてそれぞれ「111」,「112」が付されている。
【0045】
図4及び
図5に示す例では、第1の検査部vsn_PC1が、第1の撮像カメラcmr1、第2の撮像カメラcmr2、第3の撮像カメラcmr3及び第4の撮像カメラcm4によりそれぞれ撮影された画像データのリストを用いてニューラルネットワークモデルによる検査を行う。また、第2の検査部vsn_PC2以降、第10の検査部vsn_PC10が、それぞれ、第1の撮像カメラcmr1、第2の撮像カメラcmr2、第3の撮像カメラcmr3及び第4の撮像カメラcm4の少なくとも一つによりそれぞれ撮影された画像データのリストを用いて従来のルールベース画像認識処理による検査を行う。
【0046】
それぞれの検査部vsn_PC1~vsn_PC10のそれぞれによって、第1の撮像カメラcmr1、第2の撮像カメラcmr2、第3の撮像カメラcmr3及び第4の撮像カメラcm4によりそれぞれ撮影された画像データのリストを用いて行われる検査ごとに、検査処理条件のデータファイルが生成される。例えば、
図4においては、検査処理条件のデータファイルの条件識別データ(R.U.N.)として、「010」,「003」,「021」,「004」,「018」,「013」・・・「066」がそれぞれのデータファイルに付与されている。
【0047】
また、ニューラルネットワークモデルを用いた検査については、それぞれの検査処理条件に適用されたニューラルネットワークモデルに対して、モデル識別データとしてのモデル識別データ(M.U.N.)として、「002」,「001」,「017」,「002」が付与されている。
【0048】
ここで、第1の撮像カメラcmr1及び第3の撮像カメラcmr3により撮像された画像データのリストを用いてニューラルネットワークモデルを生成する際のデータセットが変更されたとする。そうすると、
図5に示すように、生成されるニューラルネットワークモデルのモデル識別データ(M.U.N.)が、それぞれ「003」,「018」に更新される。また、当該ニューラルネットワークモデルを適用した検査処理条件のデータファイルの識別データである条件識別データ(R.U.N.)が、それぞれ「012」,「022」に更新される。
【0049】
このように、本実施形態に係る検査装置1において、学習部30は、ニューラルネットワークモデルを生成するためのデータセットの一部が変更されるごとに、書換困難なモデル識別データを付与してニューラルネットワークモデルを生成する。また、処理条件設定部20は、モデル識別データが異なるニューラルネットワークモデルを適用した検査処理条件に対して、変更が困難な条件識別データを付与して検査処理条件のデータファイルを生成する。したがって、ユーザは、ニューラルネットワークモデルを用いた画像認識による検査結果に不具合を感じたときに、使用したニューラルネットワークモデルの生成に用いられた画像データのリストや設定パラメータ、生成時期を追跡することができる。
【0050】
特に、各検査プロジェクトにおいて、各検査部のカメラごとに、条件識別データと、ニューラネットワークモデルを使用した場合にはそのモデル識別データが記憶される。従って、判定に使用したネットワークモデルにおよびその検査条件についての検証が容易に行える。また、ネットワークモデルが変更された場合には、条件識別データも変更されるため、ネットワークモデルに対応するデータセットについての検証も確実に行える。
【0051】
なお、ニューラルネットワークモデルを用いずにルールベースで検査を行う場合にも、各検査に対応して検査処理条件データファイルが生成され、これをその条件識別データととともに記憶する。この場合、撮像までの検査処理条件は同一でも、ニューラネットワークモデルを利用した場合とは、別の条件識別データが付与される。
【0052】
すなわち、検査の際の検査処理条件データファイルには、ニューラルネットワークモデルを用いない場合と、ニューラネットワークモデルを用いた場合とでは、別の条件識別データが付与され、また用いたニューラルネットワークモデルが異なれば、対応する検査処理条件データファイルについて別の条件識別データが付与される。
【0053】
例えば、
図4,5における、vsn_PC2においては、各検査の検査処理条件データファイルについて、それぞれ条件識別データ(R.U.N.)が付与され、仮にvsn_PC2において、ニューラネットワークモデルを用いた判定を行えば、そのモデルに対応した別の条件識別データ(R.U.N.)が付与される。。
【0054】
これにより、ユーザは、ニューラルネットワークの内容を理解できない場合であっても、モデル識別データまたは条件識別データに基づいて、検査に用いたニューラルネットワークモデルが、ニューラルネットワークモデルの生成、検証に用いたモデルと同一であるか、あるいは、有効であるか等の妥当性を検証することができる。
【0055】
また、付与されるモデル識別データおよび条件識別データが、バイナリデータ等の書換困難な識別データであるため、ニューラルネットワークモデルあるいは検査処理条件のデータファイルの生成後に改ざんされるおそれが低く、ニューラルネットワークモデルの妥当性の信頼度を高めることができる。
【0056】
また、生成されたニューラルネットワークモデル毎にモデル識別データが付与され、検査処理条件のデータファイルごとに条件識別データが付与されるため、例えば、容器が変更された場合、あるいは、同じ容器であっても内容物が変更された場合等の検査環境に応じて使用するニューラルネットワークモデルを選択することが容易になる。
【0057】
以上、添付図面を参照しながら本開示の実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0058】
例えば、上記実施形態に係る検査装置1の検査部10、処理条件設定部20、学習部30及び画像処理部40が1つのコンピュータ装置により構成されていたが、本開示はかかる例に限定されない。検査部10、処理条件設定部20、学習部30及び画像処理部40のそれぞれ、あるいは、二つ以上が、互いに通信可能な複数のコンピュータ装置により構成されていてもよい。
【符号の説明】
【0059】
1 検査装置、10 検査部、20 処理条件設定部、30 学習部、40 画像処理部