(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023170183
(43)【公開日】2023-12-01
(54)【発明の名称】検査装置および学習方法
(51)【国際特許分類】
G06V 10/82 20220101AFI20231124BHJP
G01N 21/88 20060101ALI20231124BHJP
G06T 7/00 20170101ALI20231124BHJP
【FI】
G06V10/82
G01N21/88 J
G06T7/00 350C
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2022081732
(22)【出願日】2022-05-18
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り ・ウェブサイトのアドレス https://confit.atlas.jp/guide/event/jsai2021/proceedings/list 掲載日 令和3年5月21日 ・研究集会名 2021年度 人工知能学会 全国大会(35回) 開催場所 オンライン開催 開催日 令和3年6月11日 ・ウェブサイトのアドレス https://www.jstage.jst.go.jp/browse/pjsai/-char/ja 掲載日 令和3年6月14日 ・刊行物名 「画像ラボ,2022年4月号,10~16頁」 発行所 日本工業出版 発行日 令和4年4月10日
(71)【出願人】
【識別番号】301065892
【氏名又は名称】株式会社アドヴィックス
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】中井 淳一
(72)【発明者】
【氏名】浅野 憲司
(72)【発明者】
【氏名】▲高▼田 将典
【テーマコード(参考)】
2G051
5L096
【Fターム(参考)】
2G051AA07
2G051AB02
2G051CA04
2G051CB01
2G051DA08
2G051EB05
2G051EB10
2G051ED11
2G051ED21
5L096BA03
5L096DA01
5L096EA07
5L096GA08
5L096HA11
5L096KA04
5L096KA15
(57)【要約】
【課題】検査対象の検査精度を向上させる。
【解決手段】検査対象の検査対象画像を取得する対象画像取得部(101)と、その検査対象画像(IMG1)に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像(IMG2)を生成するエッジ強調画像生成部(102)と、正常な検査対象の検査対象画像から生成されたエッジ強調画像を少なくとも含む入力画像とその検査対象画像である出力画像との関係を予め機械学習した学習済モデル(M)へ、未学習の検査対象の検査対象画像から生成されたエッジ強調画像を少なくとも入力し、学習済モデルから出力された画像である再現画像を取得する再現画像取得部(103)と、未学習の検査対象に係る検査対象画像と再現画像とに基づいて、当該検査対象の異常を検知する異常検知部(105)と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
検査対象の画像である検査対象画像を取得する対象画像取得部と、
前記対象画像取得部により取得された前記検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成部と、
正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と当該正常な前記検査対象の前記検査対象画像である出力画像との関係を予め機械学習した学習済モデルへ、未学習の前記検査対象の前記検査対象画像から前記エッジ強調画像生成部により生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得部と、
未学習の前記検査対象に係る前記検査対象画像と前記再現画像取得部により取得された前記再現画像とに基づいて、当該検査対象の異常を検知する異常検知部と、を備える、検査装置。
【請求項2】
未学習の前記検査対象の前記検査対象画像と前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得部を更に備え、
前記異常検知部は、前記高域強調画像取得部により取得された前記高域強調画像に基づいて、前記検査対象の異常を検知する、請求項1に記載の検査装置。
【請求項3】
正常な検査対象の画像である検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成ステップと、
前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と、当該検査対象画像との間の関係を予め機械学習した学習済モデルへ、未学習の正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得ステップと、
未学習の正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習ステップと、
を有する学習方法。
【請求項4】
前記学習済モデルは、エンコーダと当該エンコーダの出力側に接続されたデコーダとを備え、
前記エンコーダに含まれる複数のレイヤの少なくとも何れかのレイヤを、当該少なくとも何れかのレイヤに対応するレイヤであって、前記デコーダに含まれるレイヤに接続するスキップ構造を有している、請求項3に記載の学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、検査装置および学習方法に関する。
【背景技術】
【0002】
特許文献1には、学習済みのニューラルネットワークにより、対象材料表面の画像(以下、検査対象画像)から欠陥低減画像を生成し、検査対象画像と欠陥低減画像とで異なる部分を欠陥として識別する方法が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された従来技術は、検査対象の表面の汚れを当該検査対象の異常として検知してしまう。
本開示の一態様は、検査対象の検査精度向上を目的とする。
【課題を解決するための手段】
【0005】
上記の課題を解決するために、本開示の一態様に係る検査装置は、検査対象の画像である検査対象画像を取得する対象画像取得部と、前記対象画像取得部により取得された前記検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成部と、正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と当該正常な前記検査対象の前記検査対象画像である出力画像との関係を予め機械学習した学習済モデルへ、未学習の前記検査対象の前記検査対象画像から前記エッジ強調画像生成部により生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得部と、未学習の前記検査対象に係る前記検査対象画像と前記再現画像取得部により取得された前記再現画像とに基づいて、当該検査対象の異常を検知する異常検知部と、を備える。
【0006】
また、本開示の他の一態様に係る学習方法は、正常な検査対象の画像である検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成ステップと、前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と、当該検査対象画像との間の関係を予め機械学習した学習済モデルへ、未学習の正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得ステップと、未学習の正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習ステップと、を有する。
【発明の効果】
【0007】
本開示の一態様によれば、検査対象の検査精度を向上させることができる。
【図面の簡単な説明】
【0008】
【
図1】本開示の一実施形態に係る検査装置および学習装置を含む検査システムの構成を示すブロック図である。
【
図2】本開示の一実施形態に係る検査装置の構成を示すブロック図である。
【
図3】検査対象画像およびエッジ強調画像の一例を示す図である。
【
図4】学習モデルの一構成例を示すブロック図である。
【
図5】本開示の一実施形態に係る検査装置の作動の流れを示すフローチャートである。
【
図6】本開示の一実施形態に係る学習装置の構成を示すブロック図である。
【
図7】本開示の一実施形態に係る学習装置の作動の流れを示すフローチャートである。
【発明を実施するための形態】
【0009】
(検査システムの構成)
以下、本開示の一実施形態について、詳細に説明する。
図1は、本開示の一実施の形態に係る検査装置および学習装置を含む検査システム100の一構成例を示すブロック図である。検査システム100は、検査対象5の外観検査を行うためのシステムであり、検査装置1と、学習装置2と、カメラ3と、照明4とを備えている。
【0010】
検査対象5は、例えば、ブレーキ部品である。以下の説明においては、検査対象5は、円筒形の金属部品であり、その側面に溝を有するものとする。検査対象5は、検査対象5の底面の中心が回転台6の回転軸上に位置するように、円形の底面を下にして回転台6の上に載置されている。不図示のモータ等の回転により、回転台6が所定方向Rに回転されると、回転台6と共に検査対象5が所定方向Rに回転される。
【0011】
カメラ3は、例えばラインスキャンカメラで構成される。カメラ3は、その撮像範囲に検査対象5の側面を含むように配置されている。照明4は、検査対象5の撮像時に、少なくともカメラ3の撮像範囲を照らすように配置されている。カメラ3は、検査対象5を撮像し、検査対象5の側面の撮像画像、好ましくは検査対象5の側面の正反射画像を出力する。カメラ3は、検査装置1および学習装置2と、有線または無線で接続されており、検査対象5の撮像画像を、検査装置1および学習装置2へ出力することができる。
【0012】
検査装置1は、学習済みの学習モデルMを用いて、検査対象5の異常検知を行う装置である。検査対象5の異常とは、例えば、検査対象5の側面についた傷などである。検査対象5の側面に設けられた溝、および、検査対象5の側面の軽微な汚れは、検査対象5の異常には含めない。
学習装置2は、敵対的生成ネットワークを用いた機械学習により、学習済みの学習モデルMを構築する装置である。以下、学習済みの学習モデルMのことを、学習済モデルMと記載することがある。
【0013】
(検査装置1の構成)
検査システム100に含まれる検査装置1の構成について、
図2を参照して説明する。
図2は、検査装置1の構成を示すブロック図である。検査装置1は、例えばコンピュータであり、制御部10と、記憶部11と、入出力部12と、通信部13とを備える。
【0014】
制御部10は、例えばCPU(Central Processing Unit)であり、プログラムを記憶部11から読み出して実行する。
記憶部11は、例えばHDD(Hard Disk Drive)、SSD(Solid State Drive)などであり、制御部10が実行するプログラムと、学習済みの学習モデルMとを記憶している。また、記憶部11は、制御部10がワークスペースとして使用するRAM(Random Access Memory)等を有する。当該RAM等には、検査対象5の外観検査中に、検査対象5の画像である検査対象画像IMG1、エッジ強調画像IMG2等の画像が記憶される。
入出力部12は、例えばキーボード等の入力装置、ディスプレイ等の出力装置を含む。
通信部13は、学習装置2またはカメラ3と、有線または無線で通信する通信インタフェースを含む。
【0015】
検査対象画像IMG1およびエッジ強調画像IMG2の一例を
図3に示す。
図3に示す検査対象画像IMG1は、所定方向Rに回転した検査対象5の側面を模式的に示した図である。
図3の検査対象画像IMG1は、1周分の画像が5段のブロックに分割されている。
図3の検査対象画像IMG1には、検査対象5の側面に設けられている複数の溝51と穴52とが撮像されている。検査対象5の側面には正常な範囲の汚れが含まれ得るが、
図3に示す模式図では正常な範囲の汚れについては図示を省略している。
【0016】
エッジ強調画像IMG2は、検査対象画像IMG1に対してエッジを強調する画像処理を施した画像である。エッジ強調画像IMG2では、検査対象画像IMG1の溝51の輪郭53と、正常範囲の汚れとが強調されている。
【0017】
(学習モデルMの構成と機能)
図4は、学習済みの学習モデルMの一構成例を示す図である。学習モデルMは、ジェネレータGと、ディスクリミネータDとを有するニューラルネットワークである。学習モデルMは、正常な検査対象5の検査対象画像IMG1から生成されたエッジ強調画像IMG2を少なくとも含む入力画像IMG3と、その正常な検査対象5の検査対象画像IMG1との関係を、予め学習している。
【0018】
ジェネレータGには、例えば、U-netが用いられる。ジェネレータGは、エンコーダと、当該エンコーダの出力側に接続されたデコーダとを備える。エンコーダおよびデコーダには、畳み込み層等のレイヤLを複数有する。
【0019】
ジェネレータGは、エンコーダに含まれる複数のレイヤLの少なくともいずれかのレイヤL1を、そのレイヤL1に対応するレイヤであってデコーダに含まれるレイヤL2に接続するスキップ構造Sを少なくとも1つ有する。スキップ構造Sにより接続されるエンコーダ側のレイヤL1と、デコーダ側のレイヤL2とは、各々が出力する特徴マップの解像度が一致する対応関係にある。デコーダ側のレイヤL2では、そのレイヤL2の出力に対して、エンコーダ側のレイヤL1の出力を重畳させる。
【0020】
学習済みの学習モデルMのジェネレータGに対して、検査対象5の入力画像IMG3が入力されると、画像生成アルゴリズムの一種であるpix2pixにより、再現画像IMG4が出力される。ジェネレータGに入力する入力画像IMG3には、少なくともエッジ強調画像IMG2を含んでいればよく、エッジ強調画像IMG2の元となった検査対象画像IMG1とエッジ強調画像IMG2との組み合わせを入力画像IMG3としてもよい。
【0021】
学習済みの学習モデルMは、正常な検査対象5の検査対象画像IMG1と入力画像IMG3との関係を学習したものである。そのため、ジェネレータGの出力画像である再現画像IMG4は、正常な検査対象5の範疇の画像となる。ジェネレータGには、スキップ構造Sが含まれているため、複数のレイヤLを経たとしも、検査対象5に設けられた溝51、検査対象5の汚れ等が再現画像IMG4から消失することを抑制することができる。
【0022】
検査対象5の再現画像IMG4と、その検査対象5の検査対象画像IMG1とは、学習モデルMのディスクリミネータDへ入力される。ディスクリミネータDは、検査対象5が正常品および異常品のいずれであるか、異常検知結果を出力する。
【0023】
(検査装置1の機能)
図2に示すように、制御部10は、記憶部11に記憶されているプログラムを実行することにより、対象画像取得部101、エッジ強調画像生成部102、再現画像取得部103、高域強調画像取得部104、異常検知部105、第1学習部106および第2学習部107として機能する。
【0024】
対象画像取得部101は、カメラ3から検査対象5の撮像画像を取得し、その撮像画像に基づいて検査対象5の画像である検査対象画像IMG1を取得する。
【0025】
エッジ強調画像生成部102は、対象画像取得部101により取得された検査対象画像IMG1に対して、画像に含まれるエッジを強調する画像処理を施すことにより、エッジ強調画像IMG2を生成する。画像に含まれるエッジを強調する画像処理とは、例えば、エッジ検出処理、2値化処理、またはそれら両方である。
図3のエッジ強調画像IMG2は、検査対象画像IMG1の各段に対して、2値化処理およびエッジ検出処理を施したものである。
【0026】
再現画像取得部103は、エッジ強調画像生成部102により取得されたエッジ強調画像IMG2を少なくとも含む入力画像IMG3を、記憶部11に記憶された学習済みの学習モデルMのジェネレータGへ入力し、ジェネレータGから再現画像IMG4を取得する。再現画像取得部103へ入力する入力画像IMG3は、エッジ強調画像IMG2と、その元となる検査対象画像IMG1とのペアであってもよい。
【0027】
高域強調画像取得部104は、再現画像取得部103が取得した検査対象5の再現画像IMG4と、その検査対象5の検査対象画像IMG1とについて、対応する画素位置における画素値の差分を示す差分画像IMG5を生成する。次に、高域強調画像取得部104は、差分画像IMG5に対して離散的フーリエ変換を行い、その演算結果に対してNLM(Non-local means filter)およびハイパスフィルタを適用し、検査対象5の高域強調画像IMG6を取得する。
【0028】
ジェネレータGが出力する再現画像IMG4は、画像全体の色調が検査対象画像IMG1と異なることがある。画像全体の色調差は、差分画像IMG5に対して離散的フーリエ変換を行った結果において、空間周波数成分の低いスペクトルとして現れる。高域強調画像取得部104は、ハイパスフィルタ等を適用することにより、高域強調画像IMG6において空間周波数成分が低いほど差分を抑制することにより、検査対象5の金属表面の傷のように空間周波数成分が比較的高い差分を強調する。
【0029】
異常検知部105は、高域強調画像取得部104が取得した検査対象5の高域強調画像IMG6に基づいて、検査対象5の異常を検知する。例えば、異常検知部105は、高域強調画像IMG6の画素値の二乗和を画素数で除算した値に基づいて、異常度を算出する。そして、異常検知部105は、その異常度が所定の閾値以上の場合にその検査対象5を異常品と判定し、異常度が所定の閾値未満の場合にその検査対象5を正常品と判定する。この判定結果が学習モデルMのディスクリミネータDの出力結果となる。
【0030】
第1学習部106は、正常な検査対象5の検査対象画像IMG1に、当該検査対象画像IMG1に対応する再現画像IMG4が近づくように、ジェネレータGのパラメータを調整する。ジェネレータGのパラメータとは、例えば、ジェネレータGに含まれる畳み込みフィルタ等においてフィルタ演算に用いられる重み係数等である。
【0031】
第2学習部107は、ディスクリミネータDのパラメータを調整する。例えば、第2学習部107は、高域強調画像取得部104による画像処理のパラメータ、異常検知部105における異常度に関する閾値等のパラメータを調整する。高域強調画像取得部104による画像処理のパラメータとは、例えば、NLMのパラメータ、ハイパスフィルタのフィルタサイズ等である。
なお、第1学習部106による上記の処理、及び、第2学習部107による上記の処理を複数回繰り返す構成としてもよい。
【0032】
(検査装置1の制御)
図5を参照して、検査装置1が行う制御について説明する。
図5は、検査装置1の制御部10による制御の流れを示すフローチャートである。
図5に示す制御の前に、検査装置1のユーザは、学習モデルMに学習させていない未学習の検査対象5を回転台6に配置し、照明4から検査対象5を照明した状態で1回転以上させて、その検査対象5の側面をカメラ3に撮像させているものとする。
【0033】
S101において、制御部10は、対象画像取得部101として機能し、対象画像取得処理を実行する。制御部10は、カメラ3から、検査対象5の側面の撮像画像を取得する。制御部10は、取得した撮像画像の中から検査対象5の側面の所定位置を検出し、
図3に示すように、その所定位置が検査対象画像IMG1の1段目の端部Pに現れるように撮像画像を編集する。例えば、検査対象5の側面の所定位置が撮像画像の端になかった場合、その所定位置が端に現れるように撮像画像を切断し、切断した画像を他端側に貼り付ける。検査対象5の側面のうち、検査対象画像IMG1の端部Pに現れる位置を揃えることにより、ディスクリミネータDによる異常の検知精度が向上させることができる。制御部10は、位置合わせ後の撮像画像を、所定数のブロックに分割する。制御部10は、撮像画像から分割された複数の画像を含む検査対象画像IMG1を取得する。
図3の例では、検査対象画像IMG1には、検査対象5の側面について1回転分の撮像画像が含まれており、5段のブロックに分割されている。
【0034】
S102において、制御部10は、エッジ強調画像生成部102として機能し、エッジ強調画像生成処理を実行する。制御部10は、S101において取得した検査対象画像IMG1に基づいてエッジ強調画像IMG2を取得する。
【0035】
S103において、制御部10は、再現画像取得部103として機能し、再現画像取得を実行する。制御部10は、S102において取得したエッジ強調画像IMG2を学習済モデルMのジェネレータGに入力することにより、ジェネレータGから再現画像IMG4を取得する。
【0036】
S104において、制御部10は、高域強調画像取得部104として機能し、高域強調画像取得処理を実行する。制御部10は、S101において取得した検査対象画像IMG1と、S103において取得した再現画像IMG4とに基づいて、差分画像IMG5を取得する。次に、制御部10は、その差分画像IMG5に対して離散的フーリエ変換を行い、その演算結果に対してNLM(Non-local means filter)およびハイパスフィルタを適用し、検査対象5の高域強調画像IMG6を取得する。
【0037】
S105において、制御部10は、異常検知部105として機能し、異常検知処理を実行する。制御部10は、S104において取得した高域強調画像IMG6に基づいて、検査対象5の異常度を算出する。そして、制御部10は、その異常度が所定の閾値以上の場合には検査対象5を異常品と判定し、異常度が所定の閾値未満の場合には検査対象5を正常品と判定する。
【0038】
検査装置1のユーザは、異常検知部105の検知結果に基づいて、第1学習部106および第2学習部107を実行させる。例えば、正常な検査対象5が異常品と判定された場合、または、異常を含む検査対象5が正常品と判定された場合に、第1学習部106および第2学習部107を実行させる。第1学習部106および第2学習部107を用いたパラメータの調整により、正常な検査対象5に対する学習が進む。
【0039】
(学習装置2の構成)
検査システム100に含まれる学習装置2の構成について、
図6を参照して説明する。
図6は、学習装置2の構成を示すブロック図である。学習装置2は、例えばコンピュータであり、制御部20と、記憶部21と、入出力部22と、通信部23とを備える。学習装置2の制御部20、記憶部21、入出力部22および通信部23は、検査装置1の制御部10、記憶部11、入出力部12および通信部13と同様の構成である。
【0040】
(学習装置2の機能)
制御部20は、記憶部21に記憶されている各種プログラムを実行することにより、エッジ強調画像生成部201、再現画像取得部202、高域強調画像取得部203、第1学習部204および第2学習部205として機能する。エッジ強調画像生成部201、再現画像取得部202、高域強調画像取得部203、第1学習部204および第2学習部205は、
図2に示した制御部10のエッジ強調画像生成部102、再現画像取得部103、高域強調画像取得部104、第1学習部106および第2学習部107と同様の機能を有する。
【0041】
(学習装置2の制御)
図7を参照して、学習装置2の制御について説明する。
図7は、学習装置2の制御部20により実行される処理の流れを示すフローチャートである。
【0042】
S201において、制御部20は、学習モデルMの構築を行うための前処理を行う。制御部20は、1個以上の正常な検査対象5について、その撮像画像を取得する。制御部20は、例えば、予め撮像された検査対象5の側面の撮像画像を、通信部23を介して取得することにしてもよいし、対象画像取得部101のようにカメラ3から検査対象5の側面について少なくとも1回転分の撮像画像を取得することにしてもよい。
【0043】
更に、制御部20は、前処理の一環として、上記のとおり取得した検査対象5の側面の撮像画像に基づいて、対象画像取得部101と同様の方法により、検査対象画像IMG1を取得する。すなわち、制御部20は、検査対象画像IMG1の1段目の端部Pに検査対象5の側面の所定位置が現れるように、検査対象5の側面の撮像画像を整える。また、制御部20は、位置合わせを行い整えた撮像画像を、所定数のブロックに分割し、検査対象画像IMG1を取得する。
【0044】
更に、制御部20は、前処理の一環として、教師データの水増し処理を行う。例えば、制御部20は、上記のとおり取得した検査対象画像IMG1を左右反転させた複製、上下反転させた複製および上下左右反転させた複製を生成し、それらの複製を検査対象画像IMG1として取得する。
【0045】
S202において、制御部20は、エッジ強調画像生成部201として機能し、エッジ強調画像生成処理を実行する。より具体的には、制御部20は、S201において取得した検査対象画像IMG1に基づいてエッジ強調画像IMG2を生成する。
【0046】
S203において、制御部20は、再現画像取得部202として機能し、再現画像取得を実行する。より具体的には、制御部20は、S202において取得したエッジ強調画像IMG2を少なくとも含む入力画像IMG3を学習モデルMのジェネレータGに入力することにより、再現画像IMG4を取得する。
【0047】
S204において、制御部20は、高域強調画像取得部203として機能し、高域強調画像取得処理を実行する。より具体的には、制御部20は、S201において取得した検査対象画像IMG1と、S203において取得した再現画像IMG4とに基づいて、差分画像IMG5を取得する。次に、制御部20は、その差分画像IMG5に対して離散的フーリエ変換を行い、その演算結果に対してNLM(Non-local means filter)およびハイパスフィルタを適用し、検査対象5の高域強調画像IMG6を取得する。
【0048】
S205において、制御部20は、第1学習部204として機能し、第1学習処理を実行する。より具体的には、制御部20は、正常な検査対象5の検査対象画像IMG1に、当該検査対象画像IMG1に対応する再現画像IMG4が近づくように、ジェネレータGのパラメータを調整する。
【0049】
S206において、制御部20は、第2学習部205として機能し、第2学習処理を実行し、ディスクリミネータDのパラメータを調整する。より具体的には、制御部20は、差分画像IMG5に係る再現画像IMG4と検査対象画像IMG1との間の色調差が抑制されるように、高域強調画像取得部203による画像処理のパラメータを調整する。
【0050】
なお、S205における第1学習処理、および、S206における第2学習処理は、同一の検査対象5について複数回繰り返す構成としてもよい。
【0051】
(変形例)
上記実施形態では、検査システム100は、検査装置1と学習装置2とを別々に備えることとしたが、検査装置1が学習装置2の一部の機能を兼ねることにしてもよい。
上記実施形態では、検査システム100は学習装置2を備えることとしたが、検査システム100は学習装置2を備えていなくてもよい。この場合、検査システム100に接続されていない外部学習装置であって、学習装置2と同様の機能を有する外部学習装置で、学習済モデルMを予め構築しておき、当該学習済モデルMを記憶させた記憶部11を検査システム100に備えることにしてもよい。また、上記外部学習装置で、画像処理のパラメータや異常度に関するパラメータを予め調整しておき、当該パラメータを記憶させた記憶部11を検査システム100に備えることにしてもよい。
上記実施形態では、検査システム100に照明4を備えることとしたが、必ずしも照明4を備える必要はない。
【0052】
上記実施形態では、検査システム100は、検査対象5の外観検査を行うこととしたが、本開示の適用範囲は外観検査だけに限られない。検査対象5を撮像した画像を用いる検査であれば外観検査以外の検査、例えば種々の非破壊検査にも適用することができる。非破壊検査としては、例えばX線画像やサーモグラフィによる画像を用いた検査が考えられる。
【0053】
上記実施形態では、検査装置1の制御部10は、高域強調画像取得部104、第1学習部106および第2学習部107として機能させたが、必須ではない。制御部10を高域強調画像取得部104として機能させない場合は、異常検知部105では、異常度として、検査対象5の再現画像IMG4と検査対象画像IMG1との平均二乗誤差を算出することにすればよい。また、制御部10を第1学習部106および第2学習部107として機能させない場合は、入出力部12を用いて学習モデルMのパラメータを手動で調整することにしてもよい。
【0054】
〔まとめ〕
本開示の一態様に係る検査装置は、検査対象の画像である検査対象画像を取得する対象画像取得部と、前記対象画像取得部により取得された前記検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成部と、正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と当該正常な前記検査対象の前記検査対象画像である出力画像との関係を予め機械学習した学習済モデルへ、未学習の前記検査対象の前記検査対象画像から前記エッジ強調画像生成部により生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得部と、未学習の前記検査対象に係る前記検査対象画像と前記再現画像取得部により取得された前記再現画像とに基づいて、当該検査対象の異常を検知する異常検知部と、を備える。
【0055】
検査対象画像のうち検査対象に付着した正常範囲の汚れや検査対象に含まれる溝の部分は、検査対象画像のエッジを強調する画像処理による影響が比較的大きい。しかしながら、正常な検査対象の検査対象画像から生成されたエッジ強調画像を少なくとも含む入力画像から元の検査対象画像を再現する機械学習を行った学習済モデルへ、正常な検査対象のエッジ強調画像を入力すると、検査対象の正常範囲の汚れや溝を含めて検査対象画像が再現される。一方、上記学習済モデルでは、異常を含む検査対象のエッジ強調画像に含まれる異常部分は再現することができない。したがって、検査対象画像と再現画像とに基づいて、検査対象の異常を検知することができる。上記構成によれば、正常範囲の汚れや溝を含む検査対象を、異常な検査対象として誤検知することを抑制することができ、検査精度が向上する。
【0056】
また、本開示の一態様に係る検査装置は、未学習の前記検査対象の前記検査対象画像と前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得部を更に備え、前記異常検知部は、前記高域強調画像取得部により取得された前記高域強調画像に基づいて、前記検査対象の異常を検知する。
【0057】
検査対象の異常部分では、検査対象画像と再現画像との互いに対応する画素位置の差分が比較的大きく変化する。そこで、空間周波数成分が比較的低い差分ほど抑制することにより、検査対象画像IMG1と再現画像IMG4との間の色調差等のように、異常と検知すべきでない差分が抑制され、異常が強調される。そのため、高域強調画像に基づいて検査対象の異常を検知することにより、異常検知の精度を向上させることができる。
【0058】
また、本開示の一態様に係る検査装置では、前記再現画像取得部は、未学習の前記検査対象の前記検査対象画像と、当該検査対象画像から生成された前記エッジ強調画像とを前記学習済モデルへ入力することによって、前記再現画像を取得する。
【0059】
また、本開示の一態様に係る検査装置は、正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習部を更に備える。
【0060】
また、本開示の一態様に係る検査装置は、前記差分画像に係る前記再現画像と前記検査対象画像との色調差が抑制されるように、前記高域強調画像取得部による画像処理のパラメータを調整する第2学習部を更に備える。
【0061】
また、本開示の一態様に係る検査装置では、前記エッジ強調画像生成部は、前記対象画像取得部により取得された前記検査対象画像に対して、前記エッジを強調する画像処理である2値化処理およびエッジ検出処理の少なくともいずれか一方を施すことによって、前記エッジ強調画像を生成する。
【0062】
本開示の一態様に係る学習装置は、正常な検査対象の画像である検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成部と、前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と、当該検査対象画像との間の関係を予め機械学習した学習済モデルへ、未学習の正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得部と、未学習の正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習部と、を備える。
【0063】
また、本開示の一態様に係る学習装置は、前記検査対象画像と、当該検査対象画像に係る前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得部と、前記差分画像に係る前記再現画像と前記検査対象画像との色調差が抑制されるように、前記高域強調画像取得部による画像処理のパラメータを調整する第2学習部と、を更に備える。
【0064】
また、本開示の一態様に係る学習装置では、前記学習済モデルは、エンコーダと当該エンコーダの出力側に接続されたデコーダとを備え、
前記エンコーダに含まれる複数のレイヤの少なくとも何れかのレイヤを、当該少なくとも何れかのレイヤに対応するレイヤであって、前記デコーダに含まれるレイヤに接続するスキップ構造を有している。
【0065】
本開示の一態様に係る検査方法は、検査対象の画像である検査対象画像を取得する対象画像取得ステップと、前記対象画像取得ステップにより取得された前記検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成ステップと、正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と当該正常な前記検査対象の前記検査対象画像である出力画像との関係を予め機械学習した学習済モデルへ、未学習の前記検査対象の前記検査対象画像から前記エッジ強調画像生成ステップにより生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得ステップと、未学習の前記検査対象に係る前記検査対象画像と前記再現画像取得ステップにより取得された前記再現画像とに基づいて、当該検査対象の異常を検知する異常検知ステップと、を有する。
【0066】
また、本開示の一態様に係る検査方法は、未学習の前記検査対象の前記検査対象画像と前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得ステップを更に有し、前記異常検知ステップでは、前記高域強調画像取得ステップにより取得された前記高域強調画像に基づいて、前記検査対象の異常を検知する。
【0067】
また、本開示の一態様に係る検査方法は、前記再現画像取得ステップでは、未学習の前記検査対象の前記検査対象画像と、当該検査対象画像から生成された前記エッジ強調画像とを前記学習済モデルへ入力することによって、前記再現画像を取得する。
【0068】
また、本開示の一態様に係る検査方法は、正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習ステップを更に有する。
【0069】
また、本開示の一態様に係る検査方法は、前記差分画像に係る前記再現画像と前記検査対象画像との色調差が抑制されるように、前記高域強調画像取得ステップによる画像処理のパラメータを調整する第2学習ステップを更に有する。
【0070】
また、本開示の一態様に係る検査方法では、前記エッジ強調画像生成ステップは、前記対象画像取得ステップにより取得された前記検査対象画像に対して、前記エッジを強調する画像処理である2値化処理およびエッジ検出処理の少なくともいずれか一方を施すことによって、前記エッジ強調画像を生成する。
【0071】
本開示の一態様に係る学習方法は、正常な検査対象の画像である検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成ステップと、前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と、当該検査対象画像との間の関係を予め機械学習した学習済モデルへ、未学習の正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得ステップと、未学習の正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習ステップと、を有する。
【0072】
検査対象画像IMG1に対して2値化処理やエッジ検出処理を施すことにより、検査対象5に付着した汚れや検査対象に含まれる溝51によるエッジが強調されたエッジ強調画像IMG2が生成される。学習モデルMのジェネレータGに、エッジ強調画像IMG2を少なくとも含む入力画像IMG3を入力すると、再現画像IMG4が出力される。学習装置2の制御部20は、
図7のS205において、検査対象5の検査対象画像IMG1に、検査対象画像IMG1に対応する再現画像IMG4が近づくように、学習モデルMのジェネレータGのパラメータを調整する。これにより、学習モデルMのジェネレータGにより、正常範囲の汚れや溝を含む検査対象5の入力画像IMG3から高精度な再現画像IMG4が生成することができる。また、その学習モデルGを記憶部11に記憶した検査装置1による検査について検査制度が向上する。
【0073】
また、本開示の一態様に係る学習方法は、前記検査対象画像と、当該検査対象画像に係る前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得ステップと、前記差分画像に係る前記再現画像と前記検査対象画像との色調差が抑制されるように、前記高域強調画像取得ステップによる画像処理のパラメータを調整する第2学習ステップと、を更に有する。
【0074】
本開示の一態様に係る学習方法では、前記学習済モデルは、エンコーダと当該エンコーダの出力側に接続されたデコーダとを備え、
前記エンコーダに含まれる複数のレイヤの少なくとも何れかのレイヤを、当該少なくとも何れかのレイヤに対応するレイヤであって、前記デコーダに含まれるレイヤに接続するスキップ構造を有している。
【0075】
畳み込み層等の複数のレイヤを有する学習モデルのジェネレータでは、再現画像IMG4を取得する際に、入力画像IMG3に含まれる正常範囲の汚れや溝に関する情報が消失することが考えられる。本開示のジェネレータGでは、エンコーダに含まれるレイヤとデコーダに含まれるレイヤとを接続するスキップ接続Sを有するようにした。これにより、正常範囲の汚れや溝に関する情報が再現画像IMG4から消失してしまうことを抑制することができる。
【0076】
本開示の一態様に係るプログラムは、検査対象の画像である検査対象画像を取得する対象画像取得処理と、前記対象画像取得処理により取得された前記検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成処理と、正常な前記検査対象の前記検査対象画像とから生成された前記エッジ強調画像を少なくとも含む入力画像と当該正常な前記検査対象の前記検査対象画像である出力画像との関係を予め機械学習した学習済モデルへ、未学習の前記検査対象の前記検査対象画像から前記エッジ強調画像生成処理により生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得処理と、未学習の前記検査対象に係る前記検査対象画像および前記再現画像に基づいて、当該検査対象の異常を検知する異常検知処理と、をコンピュータに実行させる。
【0077】
また、本開示の一態様に係るプログラムは、未学習の前記検査対象の前記検査対象画像と前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得処理を前記コンピュータに更に実行させ、前記異常検知処理では、前記高域強調画像取得処理により取得された前記高域強調画像に基づいて、前記検査対象の異常を検知する。
【0078】
また、本開示の一態様に係るプログラムは、前記再現画像取得処理では、未学習の前記検査対象の前記検査対象画像と、当該検査対象画像から生成された前記エッジ強調画像とを前記学習済モデルへ入力することによって、前記再現画像を取得する。
【0079】
また、本開示の一態様に係るプログラムは、正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習処理を前記コンピュータに更に実行させる。
【0080】
また、本開示の一態様に係るプログラムは、前記差分画像に係る前記再現画像と前記検査対象画像との色調差が抑制されるように、前記高域強調画像取得処理による画像処理のパラメータを調整する第2学習処理を前記コンピュータに更に実行させる。
【0081】
また、本開示の一態様に係るプログラムでは、前記エッジ強調画像生成処理は、前記対象画像取得処理により取得された前記検査対象画像に対して、前記エッジを強調する画像処理である2値化処理およびエッジ検出処理の少なくともいずれか一方を施すことによって、前記エッジ強調画像を生成する。
【0082】
本開示の一態様に係るプログラムは、正常な検査対象の画像である検査対象画像に対して、画像に含まれるエッジを強調する画像処理を施すことによって、エッジ強調画像を生成するエッジ強調画像生成処理と、前記検査対象画像から生成された前記エッジ強調画像を少なくとも含む入力画像と、当該検査対象画像との間の関係を予め機械学習した学習済モデルへ、未学習の正常な前記検査対象の前記検査対象画像から生成された前記エッジ強調画像を少なくとも入力し、前記学習済モデルから出力された画像である再現画像を取得する再現画像取得処理と、未学習の正常な前記検査対象の前記検査対象画像に、当該検査対象画像に対応する前記再現画像が近づくように、前記学習済モデルのパラメータを調整する第1学習処理と、をコンピュータに実行させる。
【0083】
また、本開示の一態様に係るプログラムは、前記検査対象画像と、当該検査対象画像に係る前記再現画像との互いに対応する画素位置における画素値の差分を示す差分画像に対して、空間周波数成分が低いほど前記差分が抑制される画像処理を施して得られる高域強調画像を取得する高域強調画像取得処理と、前記差分画像に係る前記再現画像と前記検査対象画像との色調差が抑制されるように、前記高域強調画像取得処理による画像処理のパラメータを調整する第2学習処理と、を前記コンピュータに更に実行させる。
【0084】
また、本開示の一態様に係るプログラムでは、前記学習済モデルは、エンコーダと当該エンコーダの出力側に接続されたデコーダとを備え、前記エンコーダに含まれる複数のレイヤの少なくとも何れかのレイヤを、当該少なくとも何れかのレイヤに対応するレイヤであって、前記デコーダに含まれるレイヤに接続するスキップ構造を有している。
【0085】
本開示は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本開示の技術的範囲に含まれる。
【符号の説明】
【0086】
1 検査装置
2 学習装置
3 カメラ
5 検査対象
10、20 制御部
11、21 記憶部
100 検査システム
101 対象画像取得部
102、201 エッジ強調画像生成部
103、202 再現画像取得部
104、203 高域強調画像取得部
105 異常検知部
106、204 第1学習部
107、205 第2学習部
IMG1 検査対象画像
IMG2 エッジ強調画像
IMG3 入力画像
IMG4 再現画像
IMG5 差分画像
IMG6 高域強調画像
M 学習モデル