JP2021060962A - 教師データの生成方法、学習済の学習モデル、及びシステム - Google Patents

教師データの生成方法、学習済の学習モデル、及びシステム Download PDF

Info

Publication number
JP2021060962A
JP2021060962A JP2020100838A JP2020100838A JP2021060962A JP 2021060962 A JP2021060962 A JP 2021060962A JP 2020100838 A JP2020100838 A JP 2020100838A JP 2020100838 A JP2020100838 A JP 2020100838A JP 2021060962 A JP2021060962 A JP 2021060962A
Authority
JP
Japan
Prior art keywords
image data
image
work
learning model
predetermined information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020100838A
Other languages
English (en)
Inventor
武 大屋
Takeshi Oya
武 大屋
和也 樋爪
Kazuya Hizume
和也 樋爪
悠太 岡部
Yuta Okabe
悠太 岡部
隆之 橋本
Takayuki Hashimoto
隆之 橋本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of JP2021060962A publication Critical patent/JP2021060962A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8883Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges involving the calculation of gauges, generating models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

【課題】 画像データの数を減らしながら、良否判定に必要な数の教師データを得ることができる。【解決手段】 一形態に係る教師データの生成方法は、画像認識用の教師データを生成する方法であって、ワークを撮像した画像データを取得する工程と、前記画像データを複数の第1領域に分割し、前記複数の第1領域のそれぞれに対して所定の情報を含むか否かを付して、複数の教師データを生成する工程と、を備える。【選択図】 図4

Description

本発明は教師データの生成方法、学習済の学習モデル、及びシステムに関する。
工場内で生産される製品(ワーク)を認識するシステムが知られている。例えば、ワークの外観検査において、欠陥の有無を判定するために、撮像装置により取得された画像データから、人間の目視ではなく、機械が欠陥を認識する検査システムが挙げられる。特許文献1には、撮像装置がワークを撮像し、撮像装置により得られた画像データが人工知能によって構成された処理装置に入力されて欠陥検査を行う検査システムが開示されている。
特開2018−164272号公報
特許文献1に記載された検査システムのように、人工知能を用いて検査を行う場合には、学習済モデルの生成が行われる。特許文献1では、良品画像と不良品画像とを複数個ずつ含む教師データを学習モデルに入力して学習済モデルを生成している。特許文献1では教師データの数と同じ数の良品画像及び不良品画像が必要となる。本発明は、画像データの数を減らしながら、良否判定に必要な数の教師データを得ることを目的とする。
本発明に係る教師データを生成する方法の一側面は、画像認識用の教師データを生成する方法であって、ワークを撮像した画像データを取得する工程と、前記画像データを複数の第1領域に分割し、前記複数の第1領域のそれぞれに対して所定の情報を含むか否かを付して、複数の教師データを生成する工程と、を備える。
本発明に係る学習方法の一側面は、第1の背景色の第1部分と前記第1の背景色とは異なる第2の背景色の第2部分とを含む画像データを入力し、前記第1部分における複数の第1領域のそれぞれに対して所定の情報を含むか否かを付した複数の教師データを用いて機械学習させ、前記第2部分における前記複数の第1領域のそれぞれに対して前記所定の情報を含むか否かを付した複数の教師データを用いて機械学習させる。
本発明に係るシステムの一側面は、撮像装置と、前記撮像装置により撮像した画像データが入力される学習モデルを有する処理装置と、を備えるシステムであって、前記処理装置は、前記撮像装置によって第1のワークを撮像することで得られた画像データの複数の第1領域のそれぞれに対して所定の情報を含むか否かが付された学習済の学習モデルを含み、前記撮像装置によって第2のワークを撮像することで得られた第2の画像データを前記学習済の学習モデルに入力し、前記第2の画像データから前記第2のワークに関する判定を行う。
本発明に係るシステムの一側面は、撮像装置と、前記撮像装置により撮像した画像データが入力される学習モデルを有する処理装置と、を備えるシステムであって、前記処理装置は、前記撮像装置によって良品のワークを撮像することで得られた画像データと、前記撮像装置によって不良品のワークを撮像することで得られた画像データと、の差分画像を含む学習済の学習モデルを含み、前記撮像装置によって第2のワークを撮像することで得られた第2の画像データと前記良品のワークを撮像することで得られた画像データとの差分画像を前記学習済の学習モデルに入力し、前記第2のワークに関する判定を行う。
本発明によれば、画像データの数を減らしながら、良否判定に必要な数の教師データを得ることができる。
システムの概要を示す図である。 システムの処理フローを示す図である。 システムで利用する学習モデルについて説明する図である。 第1の実施形態に係る教師データの生成方法について説明する図である。 第1の実施形態に係る教師データの生成方法について説明する図である。 第1の実施形態に係る教師データの生成方法について説明する図である。 第2の実施形態に係る教師データの生成方法について説明する図である。 第3の実施形態に係る教師データの生成方法について説明する図である。 第3の実施形態に係る教師データの生成方法について説明する図である。 第3の実施形態に係る教師データの生成方法について説明する図である。 第3の実施形態に係る教師データの生成方法について説明する図である。
以下に示す実施形態は、本発明の技術思想を具体化するためのものであって、本発明を限定するものではない。なお、各図面が示す部材の大きさや位置関係は、説明を明確にするために誇張していることがある。以下の説明において、同一の構成については同一の番号を付して説明を省略する。
図1は、システムの一例としての検査システムの基本的構成を示したものである。本実施形態に係るシステムは、検査システムのほかにも、種々のシステムに採用することができる。種々のシステムとしては、例えば、画像データに特定のものが存在するか否かを特定する画像認識用のシステムや、配送センターの自動振り分けシステム等が挙げられる。
以下、図2に示す処理フローとともに、本実施形態に係る検査システムを説明する。
(撮像装置)
まず、センサ10を用いて所定の範囲内におけるワーク(対象物)の有無を検知する(図2:S1)。センサ10は、例えば、生産ライン上で高速で移動するワークを検知するためのセンサであり、例えば赤外線センサを用いる。センサ10により、所定の範囲内においてワークが検知されると、センサ10からトリガ生成回路20に対して信号が出力される。トリガ生成回路20は、センサ10からの信号に基づき撮像トリガ信号を生成する(図2:S2)。
トリガ生成回路20は、例えばFPGA(Field programmable gate array)やASIC(Application Specific Integrated Circuit)などのロジック回路から構成されている。トリガ生成回路20は、センサ10から入力された信号に対してハードウエア処理をし、ハードウエア処理された撮像のためのトリガ信号が撮像装置30に伝達される。そして、撮像装置30がワークを撮像する(図2:S3)。
本実施形態によれば、トリガ生成回路20はロジック回路により構成されており、ハードウエア処理により並列処理がなされる。そして、トリガ生成回路20からの信号を、ソフトウエア処理を介することなく、撮像装置30に入力している。したがって、逐次処理を行うソフトウエア処理と比較して、無駄な遅延が生じにくい。トリガ生成回路20から、撮像装置30へのトリガ信号の伝達は有線で行うことが好ましい。
撮像装置30は、レンズ部と、撮像素子と、撮像素子から出力される信号を処理する信号処理部と、信号処理部により生成された画像データを出力する出力部と、トリガ信号が入力される入力部と、を有する。
入力部にトリガ信号が入力されると、撮像装置30は撮像を開始する。レンズ部は、撮像装置から取り外し可能に設けられており、対象物の大きさや、撮影シーンに応じて、適切なレンズ部を選択することができる。信号処理部は、撮像素子から出力される信号から画像データを生成する。出力部は、信号処理部で生成された画像データを出力する。
撮像素子は、光電変換部がアレイ状に配置された素子であって、例えば、CMOSセンサである。撮像素子は、各行で露光期間の開始と終了が異なるローリングシャッタ形式の撮像素子でもよいし、全行一括で露光期間の開始と終了が同時であるグローバル電子シャッター形式の撮像素子でもよい。
(処理装置40)
撮像装置30から出力された画像データは、処理装置40に入力されて画像データの推定が行われる(図2:S4)。処理装置40では、画像データの対象物に関する推定が行われる。ここで、画像データの対象物に関する推定は、システムの用途に応じた処理を行う。以下では推定の処理として、撮像対象としてのワークが欠陥を有するかどうかを判定する外観検査処理を説明する。この他にも例えば、画像データに特定の対象物が存在するか否かを特定するシステムの場合は、特定する処理が推定の処理に相当する。また、自動振り分けシステムの場合は、例えば、ワークのサイズにより判別する処理が推定の処理に相当する。撮像装置30から処理装置40への画像データの伝送は、有線で行うことが好ましい。
処理装置40は、学習済モデルを有しており、学習済モデルを用いてワークの良否を判断する。GPU(Graphics Processing Unit)42はデータをより多く並列処理することで効率的な演算を行うことができる。したがって、複数層のニューラルネットワークを用いる機械学習やディープラーニングのような学習モデルを用いて学習を行う場合にはGPU42で処理を行うことができる。なお、機械学習やディープラーニングは、処理装置40の内部ではなく、クラウドで行ってもよい。クラウドで行うことにより、機械学習やディープラーニングの処理速度を向上させることができる。そこで本実施形態では、処理装置40における処理にはCPU41に加えてGPU42を用いる。具体的には、学習モデルを含む学習プログラムを実行する場合に、CPU41とGPU42が協同して演算を行うことで学習を行う。なお、処理装置40の処理はCPU41またはGPU42のみにより演算が行われても良い。また、学習モデルを含む学習プログラムの実行は、クラウドで行っても良い。
CPU41とGPU42のそれぞれは、メモリを有しており、これらのメモリには、撮像装置から出力された画像データが保持される。上記のとおり、トリガ生成回路20により、CPU41とGPU42のメモリには、同時刻の画像データが保持されることになる。なお、処理装置40がCPU41のメモリ及びGPU42の主メモリとは異なるメモリを備えていてもよい。この場合は、画像データが主メモリに保持される。そして、必要に応じて、主メモリに保持された画像データがCPU41のメモリ及びGPU42のメモリに書き込まれる。
GPU42は、メモリに保持された画像データにアクセスし、並列的に画像データを処理する。GPU42は、学習済のモデルを用いて、ワークに欠陥があるか否かを判断する。GPU42は、CPU41よりも定型的な膨大な計算処理を行うのに適しており、GPU42によれば推定処理を速く行うことができる。
処理装置40は、撮像装置30により取得された画像データに基づき、画像データの領域に欠陥が有るか否かを判定する(図2:S5)。処理装置40により行われた判定結果は、PLC(Programmable Logic Controller)50に出力される、ワークに欠陥があるという最終判定結果の場合、PLC50は、ロボット60に動作制御用の信号を入力する。ロボット60は、ワークの移動動作を切り替え、欠陥があると判定されたワークを生産ラインから移動させる(図2:S6)。
処理装置40から、PLC50へ判定結果を出力する際には、高速の信号伝送は要求されていない。そのため、Ethernetなどの汎用規格の有線や無線などを使って、信号転送を行うことができる。
(学習済モデル430)
図3は、処理装置40のGPU42で行われるワークの欠陥判定を行うAIを説明するための図である。図4、図5、及び図6は、学習フェーズでの教師データの生成方法を説明するための図である。
図3(A)は、学習フェーズの概念図である。学習モデル420に対して、教師データを入力することにより欠陥判定のアルゴリズムが形成される。教師データの詳細は図4、図5、及び図6を参照しながら後述するが、教師データは、1つの画像データを複数の領域に分割した画像データである。正解ありの学習(教師あり学習:Supervised learning)を行う場合は、1つの画像データから得られる複数の領域に所定の情報が含まれるか否かをマーキングしたデータである。所定の情報とは、例えば、欠陥の有無である。欠陥の有無とは、例えば、ワークが金属表面を有する部品の場合は金属の剥がれの有無であり、ワークが色付けされた部品の場合は所定の色とは異なる色の付着の有無である。学習モデル420に教師データを入力し、誤差逆伝播法などによってアルゴリズムを変更し、所定の情報の有無についてより精度の高い情報を出力するように学習させたものが学習済モデル430である。この学習フェーズの処理は、CPU41およびGPU42の少なくともいずれか一方によって行われる。なお、学習フェーズの処理は、クラウドで行うことが好ましい。学習フェーズの処理を処理装置40で行う場合は処理装置40の性能として一定以上の性能が求められる。これに対して、学習フェーズの処理をクラウドで行うことにより、処理装置40の性能を問わずにワークの欠陥判定を行うことができる。
学習の具体的なアルゴリズムとしては、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどの機械学習を利用してもよい。また、学習のアルゴリズムは、ニューラルネットワークを利用して、特徴量、結合重みづけ係数を自ら生成するディープラーニングであってもよい。たとえば、深層学習のモデルとして、CNNモデル(Convolutional Neural Network Model)を用いてもよい。
図3(B)は、推定フェーズの概念図である。学習フェーズにより構築した学習済モデル430に対して、ワーク画像440を入力すると、欠陥有無の判定結果450が出力される。この学習済モデル430を用いた処理はGPU42によって実行される。ワーク画像440とは、具体的には、検査をしたいワークを撮像装置30で撮像した画像データである。
(第1の実施形態)
次に、図4を参照しながら、第1の実施形態の教師データの生成方法について説明する。
まず、良品のワーク、第1の欠陥を含むワーク、第1の欠陥とは異なる第2の欠陥を含むワーク等を撮像した画像データを準備する。そして、1つの画像データを複数の領域(第1領域)に分割し、領域ごとに所定の情報を含むか否かマーキングする。
図4では、各第1領域は、欠陥のある領域R1と欠陥のない領域R2とに分類される。そして、マーキングされた領域のデータを学習モデルに入力している。本実施形態によれば、複数の領域に分割して教師データを作成することにより、1つの画像データから複数の教師データを得ることができる。したがって、教師データに使うことのできる画像データが少ない場合であっても、画像データのワークに関する推定の処理の精度を高くすることができる。また、欠陥のある領域について解像度を落とさずに学習させることができるため、判定精度を高めることができる。
本実施形態では、同じ画像データにおいて、分割位置をずらして複数の第2領域に分割し、各第2領域を領域R1と領域R2とに分類してマーキングされた領域のデータを学習モデルに入力している。これにより、1枚の画像データから得られる教師データを増やしている。本実施形態によれば、1枚の画像データから欠陥の位置がずれた領域R1を複数生成することができ、1枚の画像から得られる教師データをさらに増やすことができる。図4では、分割位置をずらした図を1つ示しているが、分割位置を少しずつずらして教師データを増やすことが好ましい。
また、複数の領域の分割位置を回転させてもよい。これにより、1枚の画像データから得られる教師データを増やすことができる。
教師データとして、ワークのXY座標を変えて撮像した画像データ、ワークを回転させて撮像した画像データをさらに用いてもよい。これらの画像データを教師データとして学習モデルに入力することにより、ワークが所定の位置からずれている場合にも精度を下げることなく良否判定を行うことができる。
図5に、本実施形態に係る教師データの生成のフローチャートを示す。本実施形態では図4で説明した各領域のそれぞれにおいて、複数の成分に分解し、分解した成分の情報を教師データとして用いている。つまり、領域ごとに複数の成分に分解し、複数の成分のそれぞれを学習モデルに入力して学習済モデルを生成している。複数の成分とは、色成分、色相(H:Hue)、彩度(S:Saturation)、明度(V:Value)である。これらの成分の値を出し、各値に基づいて学習済モデルが推定を行う。これにより、学習済モデルの判定精度を向上させることができる。
まず、図5に示す、欠陥のある領域R1と欠陥のない領域R2とをそれぞれ、色画像データ、H画像データ、S画像データ、V画像データで分解する。色画像データは、具体的には、赤色(R)画像データ、緑色(G)画像データ、および青色(B)画像データである。
そして、領域R1の各データと領域R2の各データとを学習モデルに学習させる。このとき、それぞれの画像群に対して、良品又は不良品の情報をマーキングして学習させる。つまり、各画像データに対して、良品又は不良品の2クラス分類学習を行う。これにより、R、G、B、H、S、Vの良品又は不良品の推定値が学習された学習済モデルが生成される。推定フェーズでは、得られた推定値とワークの画像の各データとを比較することにより、良否判定を行う。
本実施形態では、背景デザインが異なる場合に、デザインごとに前述の学習済モデルを作成している。例えば、図6では、背景デザインとして背景色が異なる場合について示している。図6では、赤色の背景の領域(第1部分)と青色の背景の領域(第2部分)とがあるワークを用いている。そして、図6では、撮像画像データの第1部分について学習させた学習済モデルAと、第2部分について学習させた学習済モデルBと、を生成している。つまり、背景デザインごとに学習済モデルを生成している。背景デザインが異なる場合は、学習済モデルに入力する教師データの数を増やさなければ精度よく良否判定を行えない可能性がある。例えば、ワークが色付けされた部品の場合に、背景色が赤色の領域に対して赤色以外の色が付着した場合と、背景色が青色の領域に対して青色以外の色が付着した場合と、では色ごとの変化量が異なる。このように背景色も異なり、付着する色も異なる場合は、一方のみが異なる場合に比較して学習済モデルの精度を上げるための教師データの数が多くなりやすい。本実施形態のように、背景色ごとに学習済モデルを生成しておけば、良否判定のみを行えばよいため、所定数の教師データから良否判定を行うことができる。
なお、上述の説明では、背景デザインとして背景色を用いているが、背景色以外に、背景の模様や、背景の材質の違いも背景デザインとして含むものとする。
上述の説明では、ワークとして、良品のワークと第1の欠陥を含むワークと第2の欠陥を含むワークとを用いているが、少なくとも1つの欠陥を含むワークを用いればよい。この場合でも、複数の領域に分割することにより欠陥の位置の異なる複数の教師データを得ることができる。一方で、例えば、ワークが色付けされた部品の場合は、欠陥の形状が異なることが考えられる。上述の説明のような、形状などの種類の異なる欠陥を含むワークを複数用いることにより、良否判定の精度を向上させることができる。
また、上述の説明では、教師データとして良品画像411から得られる領域にマーキングしたデータを入力しているが、このデータはなくてもよい。例えば、欠陥1画像412から得られる領域にマーキングしたデータと欠陥2画像413から得られる領域のデータとを教師データとして用いてもよい。欠陥1画像412から得られる領域や欠陥2画像412から得られる領域から欠陥のない領域R2の情報を教師データとして入力することが可能であるためである。
図1では、処理装置40で学習済モデルの生成を行うが、生成された学習済モデルを処理装置40に入力してもよい。例えば、撮像装置で撮像した画像データを情報端末に伝達し、情報端末で学習済モデルの生成を行い、所定の精度以上の学習済モデルを処理装置40に入力してもよい。情報端末とは、例えば、パソコン等のコンピュータである。
上述の説明では、色画像データと色相データ等とを学習モデルに入力しているがこれに限られない。例えば、色ごとに演算パラメータを調整し、そのデータをもとに学習済モデルを生成してもよい。
(第2の実施形態)
図7は、第2の実施形態に係る学習済モデルの生成方法である。本実施形態は、不良品と良品との差分情報を学習モデルに入力する点が第1の実施形態とは異なる。以下で説明する事項以外は、第1の実施形態と同様である。
図7に示すように、ワークが色付けされた部品である場合に、ワークの形状や背景色が同じでも機種ごとに印字されている文字や図柄が異なる場合がある。このような場合に、すべての機種に対してそれぞれ学習済モデルを作成すると膨大な数の教師データが必要となる。これに対して、本実施形態では、欠陥あり画像データと欠陥なし(良品)画像データとの差分情報から学習済モデルを生成している。具体的には、機種1について、欠陥あり画像データ(第1のワークの撮像画像データ)と良品画像データ(第3のワークの撮像画像データ)との差分情報を不良品として学習モデルに入力する。そして、良品画像データ(第2のワークの撮像画像データ)と良品画像データ(第4のワークの撮像画像データ)との差分情報を良品として学習モデルに入力している。これを機種ごとに行うことにより、学習済モデルを生成している。
差分情報を生成する前には、欠陥あり画像データと良品画像データとのパターンマッチング等による画像の位置合わせを行い、その後差分情報を生成することが好ましい。これにより、差分情報の精度を高めることができる。ワークとして、印字されたラベルが貼られた部品である場合は、ワークのラベルの位置を合わせて差分情報を生成することが好ましい。ラベルの位置を合わせることにより、ワークごとにラベルの位置がずれている場合でも、良否判定を正確に行うことができる。
本実施形態では、学習済モデルを使用して良否判定を行う場合においても、良品画像データと実際にワークを撮影した画像データとの差分情報を生成して学習済モデルに入力し、学習済モデルから良否判定結果を出力している。
本実施形態によれば、機種ごとに印字されている文字や図柄が異なる場合であっても、同じ学習済モデルを用いて良否判定を行うことができる。
図7では、異なる機種の差分情報を入力しているが、同じ機種で複数の欠陥に対する差分情報を生成して入力してもよい。推定フェーズにおいて、良否判定を行う機種の良品データと実際のワークを撮影した画像データとの差分情報を学習済モデルに入力すればある程度の精度を維持しながら良否判定を行うことができる。
(第3の実施形態)
図8〜図11は、第3の実施形態に係る学習済モデルの生成方法を説明する図である。本実施形態は、1つのワークにおいて、撮像画像データと、シフト画像データとの差分情報を学習モデルに入力する点が第2の実施形態とは異なる。つまり、本実施形態ではワーク間の差分ではなく、ワーク内での差分を見ている点が第2の実施形態とは異なる。一般的に、機種によって図柄や文字に小さな相違があっても学習済モデルに影響するため、機種ごとに異なる学習済モデルを生成する必要がある。本実施形態のように、所定の繰り返しパターンを有する1つのワークにおける差分画像で欠陥の有無を判定することにより、図柄や文字の相違による影響を排除できる。以下で説明する事項以外は、第2の実施形態と同様である。
本実施形態で想定するワークは、所定の繰り返しパターンを含む領域を有する製品を想定している。例えば、壁紙、シール、木目化粧紙、織布、食器が挙げられる。これらの製品において、模様や材質が所定の繰り返しパターンを有するものをワークとして想定している。所定の繰り返しパターンとは同じパターンを2以上含むものを指す。同じパターンとは、図9に示すような繰り返し周期を指しており、繰り返し周期における欠陥の有無に差があるものは同じパターンに含まれるものとする。つまり、欠陥があっても、所定のパターンが繰り返し配されていれば、所定の繰り返しパターンを有するものとする。
図8(A)は、学習フェーズの概念図である。本実施形態に係る学習フェーズは、画像取得の工程P11、画像回転の工程P12、シフト位置検出の工程P13、差分画像生成の工程P14、画像分割の工程P15、アノテーションの工程P16、機械学習の工程P17を含む。
画像取得の工程P11では、ワーク(第1のワーク)において、所定の繰り返しパターンを含む領域を撮像した撮像画像を取得する。
画像回転の工程P12では、差分を適切に算出できるよう、所定の繰り返しパターンの回転方向を調整する。例えば、図9に示すようなパターンの場合は、撮像画像の外縁である直線部分が水平になるように撮像画像を回転して回転方向における向きを調整する。この他にも、回転方向を算出する方法としては、所定の繰り返しパターンに含まれるパターン方向を検出する方法や、ワーク(第1のワーク)の端の直線を検出する方法等が挙げられる。なお、画像回転の工程P12は必須の構成ではなく、画像取得の工程P11の後に、シフト位置検出の工程P13を行ってもよい。
シフト位置検出の工程P13では、シフト画像の生成を行うための撮像画像からのシフト位置を検出する。そして、シフト位置におけるシフト画像を算出する。シフト位置は適宜設定することが可能である。シフト位置の検出を行うにあたり、まず、基準位置を設定する。例えば、所定のパターンの端を基準位置として設定する。次に、1以上の所定のパターン分だけ離れた位置をシフト位置として検出し、シフト画像として算出する。シフト位置の検出方法の一例を以下で説明するが、シフト位置の検出方法はこれに限られない。
所定の周期パターンが行方向(横方向)に並ぶ場合に、基準となる所定の周期パターンを行方向にシフトさせた際に最も類似度が高いパターンとされるパターンを検出する必要がある。例えば、図9において、領域a1と領域b1を含む周期パターンとの類似度が最も高いパターンを検出する必要がある。類似度は、基準位置のパターンの各画素の輝度値(画素値)と、基準位置から行方向に所定量離れたパターンの各画素の画素値との差分を算出し、差分の標準偏差を算出して求めることができる。標準偏差が最小となるパターンを類似度が最も高いパターンとし、その類似度が最も高いパターンの画像をシフト画像として生成する。なお、図9では周期パターンが行方向のみに並ぶ場合を示したが、列方向(縦方向)や斜め方向に周期パターンが並ぶ場合には、列方向にシフトした際に類似度が高いパターン、行および列方向にシフトした際に類似度が高いパターンをそれぞれシフト画像として生成してもよい。
次に、差分画像生成の工程P14を行う。図9に示すように、差分画像生成の工程P14では、撮像画像とシフト画像との差分画像を生成する。差分画像では、撮像画像とシフト画像との差分を取るため所定の繰り返しパターンの影響を受けにくくなる。つまり、差分画像では、欠陥の有無のみが確認できる状態となる。これにより欠陥の有無を判断することが可能となる。
なお、図9に示すように、撮像画像に欠陥がある場合に、シフト位置によってはシフト画像にも欠陥が残る場合がある。この場合、差分画像のみで判断するとワークに2つの欠陥がある場合のみが欠陥ありと判定される。そのため、シフト画像に欠陥がある場合であっても、シフト画像に欠陥が入らない場合には欠陥なしと判断されてしまうという不都合が生じる。そこで、シフト画像が有する欠陥の影響をなくす必要がある。
本実施形態では、図10に示すように、撮像画像とシフト画像との差分値を算出し、差分値の絶対値が所定の閾値を超えるか否かで欠陥の有無を補正する処理を行う。補正処理は対象物に応じて変えることができる。
図10(A)は撮像画像の画像データであり、図10(C)はシフト画像の画像データである。図10(A)、図10(C)では、説明の便宜上、撮像画像とシフト画像において欠陥のみを図示しており所定の周期パターンは図示していない。図10(E)は図10(A)と図10(C)との差分画像であり、図10(G)は欠陥の有無を補正する処理を行った後の画像である。図10(B)、図10(D)、図10(F)、図10(H)は、それぞれ、図10(A)、図10(C)、図10(E)、図10(G)の破線における画素値を示す図である。図10(A)および図10(C)において、欠陥のない領域の画素値は255であり、欠陥のある領域の画素値は128である。図10(F)の差分画像は、撮像画像の画素値からシフト画像の画素値を減算して算出することができる。例えば、図10(B)の欠陥の画素値は、減算を行うことで128−256=−128となる(図10(F))。撮像画像の画素値からシフト画像の画素値を減算した結果が負の値の場合に欠陥あり領域とし、減算した結果が正の値の場合に欠陥なし領域とする補正を行う。これにより、処理後画像においては、シフト画像で検出された欠陥領域を欠陥なしと補正することができる。
なお、差分画像の生成においては、欠陥のコントラストを大きくするために、減算した結果を所定の値で乗算してもよい。例えば、減算した結果×2+255の式で処理後の画素値を算出すれば、コントラストを大きくした状態で補正できる。したがって、補正処理を正確に行い、撮像画像における欠陥のみのデータを抽出することが可能となる。したがって、撮像画像における欠陥のみのデータを学習させることが可能となる。
また、図10の例では、欠陥がある場合に画素値(階調)が低くなるワークを補正する処理を想定している。例えば、対象物が繊維であり、対象物を透過した光を撮像装置で撮像して検査する例である。この例とは逆に、欠陥がある場合に画素値が高くなるワークを補正する場合は、減算した結果が負の値の場合に欠陥なし領域とし、減算した結果が正の値の場合に欠陥あり領域と補正してもよい。
次に、画像分割の工程P15を行う。画像分割の工程P15では、AI学習/推論を実行するためのサイズに画像を分割する。なお、画像分割の境界部分に欠陥が存在すると欠陥検出をしにくくなる。したがって、図11に示すように、画像分割を行うにあたり、領域が重なりあるように分割位置を決定することが好ましい。
次に、画像分割の工程P15で得られた画像データにおいて、良品又は不良品の情報をマーキングして学習モデルに学習させる(アノテーションの工程P16)。アノテーションの工程P16では、画像分割の工程P15で得られた画像データの回転や平行移動をさせた画像を生成し、学習画像データの枚数を増加させてもよい。なお、画像分割をせずに処理後の差分画像を用いてアノテーションを行ってもよい。これらのデータを用いて学習モデルに学習させる(機械学習の工程P17)。
図8(B)に示す推論フェーズでは、実際に検査を行うワーク(第2のワーク)を用いて、画像取得の工程P21、画像回転の工程P22、シフト位置検出の工程P23、差分画像生成の工程P24,画像分割の工程P25までを行う。そして、推論の工程P26において、ワークの良品、不良品の判定を行うことが可能となる。推論フェーズにおいても、学習フェーズと同様に、画像回転の工程P22は必須ではない。
本実施形態によれば、ワークの機種によって図柄や文字が少し異なる場合でも、機種ごとの別の学習モデルを作ることなく検査を行うことが可能となる。また、別機種の差分画像を同じ学習モデルに入力して学習済モデルを作成することにより、別機種を同じ学習済モデルで判定することも可能となる。
30 撮像装置
40 処理装置

Claims (24)

  1. 画像認識用の教師データを生成する方法であって、
    ワークを撮像した画像データを取得する工程と、
    前記画像データを複数の第1領域に分割し、前記複数の第1領域のそれぞれに対して所定の情報を含むか否かを付して、複数の教師データを生成する工程と、を備えることを特徴とする教師データの生成方法。
  2. 前記複数の教師データを作成する工程において、
    前記画像データを分割する位置をずらして複数の第2領域に分割し、前記複数の第2領域のそれぞれに対して前記所定の情報を含むか否かを付して、複数の教師データを生成することを特徴とする請求項1に記載の教師データの生成方法。
  3. 前記所定の情報は、欠陥の有無であることを特徴とする請求項1又は2に記載の教師データの生成方法。
  4. 前記ワークは色付けされた部品であり、
    前記所定の情報は所定の色とは異なる色の付着の有無であることを特徴とする請求項1乃至3のいずれか1項に記載の教師データの生成方法。
  5. 前記画像データを取得する工程と、前記複数の教師データを生成する工程と、を良品のワーク及び欠陥を含むワークの各々に対して行うことを特徴とする請求項1乃至4のいずれか1項に記載の生成方法。
  6. 請求項1乃至5のいずれか1項に記載の教師データの生成方法により生成された教師データを学習モデルに入力する工程を含む、機械学習を行う方法。
  7. ワークを撮像した画像データは第1の背景デザインの第1部分と、前記第1の背景デザインとは異なる第2の背景デザインの第2部分と、を含み、
    前記第1部分および前記第2部分のそれぞれを複数の第1領域に分割し、
    学習済の学習モデルは、第1の前記学習済の学習モデルと、第2の前記学習済の学習モデルと、を含み、
    前記第1の学習済の学習モデルは、前記第1部分における前記複数の第1領域のそれぞれに対して所定の情報を含むか否かを付した複数の教師データを用いて機械学習されており、
    前記第2の学習済の学習モデルは、前記第2部分における前記複数の第1領域のそれぞれに対して前記所定の情報を含むか否かを付した複数の教師データを用いて機械学習されていることを特徴とする学習済の学習モデル。
  8. 前記所定の情報を含む領域と、前記所定の情報を含まない領域と、のそれぞれを複数の成分に分解し、
    前記所定の情報を含む領域における前記複数の成分のそれぞれの推定値を求めた教師データと、前記所定の情報を含まない領域における前記複数の成分のそれぞれの推定値を求めた教師データと、を学習モデルに入力して機械学習させることを特徴とする請求項7に記載の学習済の学習モデル。
  9. 前記複数の成分は、色成分、色相、彩度、及び明度を含むことを特徴とする請求項8に記載の学習済の学習モデル。
  10. 前記学習モデルは、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシン、又はニューラルネットワークを用いることを特徴とする請求項6乃至9のいずれか1項に記載の学習済の学習モデル。
  11. 第1の背景デザインの第1部分と前記第1の背景デザインとは異なる第2の背景デザインの第2部分とを含む画像データを入力し、
    前記第1部分における複数の第1領域のそれぞれに対して所定の情報を含むか否かを付した複数の教師データを用いて機械学習させ、
    前記第2部分における前記複数の第1領域のそれぞれに対して前記所定の情報を含むか否かを付した複数の教師データを用いて機械学習させる学習方法。
  12. 前記所定の情報を含む領域と、前記所定の情報を含まない領域と、のそれぞれを複数の成分に分解し、
    前記所定の情報を含む領域における前記複数の成分のそれぞれの推定値を求めた教師データと、前記所定の情報を含まない領域における前記複数の成分のそれぞれの推定値を求めた教師データと、学習モデルに入力して機械学習させることを特徴とする請求項11に記載の学習方法。
  13. ワークを撮像した画像データを入力し、
    前記画像データを、所定の情報を含む第1領域と、前記所定の情報を含まない第2領域と、に分割し、
    前記第1領域と前記第2領域のそれぞれを複数の成分に分解し、
    前記第1領域における前記複数の成分のそれぞれの推定値を求めた教師データと、前記第2領域における前記複数の成分のそれぞれの推定値を求めた教師データと、を機械学習させる学習方法。
  14. 前記所定の情報は、欠陥の有無であることを特徴とする請求項11乃至13のいずれか1項に記載の学習方法。
  15. 前記複数の成分は、色成分、色相、彩度、及び明度を含むことを特徴とする請求項13に記載の学習方法。
  16. 撮像装置と、前記撮像装置により撮像した画像データが入力される学習済の学習モデルを有する処理装置と、を備えるシステムであって、
    前記学習済の学習モデルは、前記撮像装置によって第1のワークを撮像することで得られた画像データの複数の第1領域のそれぞれに対して所定の情報を含むか否かを付して作成されており、
    前記撮像装置によって第2のワークを撮像することで得られた第2の画像データを前記学習済の学習モデルに入力し、前記第2の画像データから前記第2のワークに関する判定を行う、
    ことを特徴とするシステム。
  17. 撮像装置と、前記撮像装置により撮像した画像データが入力される学習済の学習モデルを有する処理装置と、を備えるシステムであって、
    前記学習済の学習モデルは、前記撮像装置によって第1のワークを撮像することで得られた第1の画像データと、前記第1の画像データとは異なる第2の画像データとの差分情報を入力して作成されており、
    前記撮像装置によって第2のワークを撮像することで得られた第3の画像データと前記第3の画像データとは異なる第4の画像データとの差分情報を前記学習済の学習モデルに入力し、前記第2のワークに関する判定を行う、
    ことを特徴とするシステム。
  18. 前記第2の画像データと第4の画像データは、良品のワークを撮影した画像データであることを特徴とする請求項17に記載のシステム。
  19. 前記第1のワークは繰り返しパターンを含み、
    前記第2の画像データは、前記第1のワークを撮像した画像データにおいて、前記第1の画像データから1以上の繰り返しパターン分だけシフトしたシフト画像であり、
    前記第4の画像データは、前記第2のワークを撮像した画像データにおいて、前記第3の画像データから1以上の繰り返しパターン分だけシフトしたシフト画像であることを特徴とする請求項17又は18に記載のシステム。
  20. 前記学習モデルに入力される前記第1の画像データと前記第2の画像データとの差分情報は、所定の処理が行われた情報であり、
    前記所定の処理は、前記第2の画像データと前記第1の画像データとの差分情報で差分がある領域において、当該領域の差分値の絶対値が所定の閾値を超える場合に、当該領域を差分が無い領域と処理することを特徴とする請求項19に記載のシステム。
  21. 前記所定の情報は、欠陥の有無であることを特徴とする請求項16乃至20のいずれか1項に記載のシステム。
  22. 前記第1のワークは色付けされた部品であり、
    前記所定の情報は所定の色とは異なる色の付着の有無であることを特徴とする請求項16乃至21のいずれか1項に記載のシステム。
  23. 前記システムは、センサと、前記撮像装置に撮像トリガ信号を伝達するトリガ生成回路と、を備え、
    前記センサは、所定の範囲内に前記第2のワークがあることを検知すると前記トリガ生成回路に信号を出力し、
    前記撮像装置は、前記信号に基づき出力される前記トリガ生成回路からの前記撮像トリガ信号に基づき前記第1のワークを撮像することを特徴とする請求項16乃至22のいずれか1項に記載のシステム。
  24. 前記システムは、ロボットを備え、
    前記学習済の学習モデルによって欠陥を有すると判断されたワークを移動させることを特徴とする請求項23に記載のシステム。
JP2020100838A 2019-10-08 2020-06-10 教師データの生成方法、学習済の学習モデル、及びシステム Pending JP2021060962A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019185542 2019-10-08
JP2019185542 2019-10-08

Publications (1)

Publication Number Publication Date
JP2021060962A true JP2021060962A (ja) 2021-04-15

Family

ID=75381485

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020100838A Pending JP2021060962A (ja) 2019-10-08 2020-06-10 教師データの生成方法、学習済の学習モデル、及びシステム

Country Status (5)

Country Link
US (1) US20220284567A1 (ja)
EP (1) EP4043868A1 (ja)
JP (1) JP2021060962A (ja)
CN (1) CN114503157A (ja)
WO (1) WO2021070675A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020095428A (ja) * 2018-12-12 2020-06-18 株式会社東芝 モデル学習システム、モデル学習方法、プログラム、及び記憶媒体
JP7036477B1 (ja) * 2021-10-18 2022-03-15 株式会社Anamorphosis Networks 欠陥検出方法、欠陥検出システム、及び、欠陥検出プログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005156334A (ja) * 2003-11-25 2005-06-16 Nec Tohoku Sangyo System Kk 疑似不良画像自動作成装置及び画像検査装置
US10453366B2 (en) * 2017-04-18 2019-10-22 Samsung Display Co., Ltd. System and method for white spot mura detection
JP7004145B2 (ja) * 2017-11-15 2022-01-21 オムロン株式会社 欠陥検査装置、欠陥検査方法、及びそのプログラム
US11386538B2 (en) * 2018-01-29 2022-07-12 Nec Corporation Image processing apparatus, image processing method, and storage medium
JP2019185542A (ja) 2018-04-13 2019-10-24 キヤノン株式会社 アプリケーション実行装置、その制御方法、及びプログラム
JP2018164272A (ja) 2018-05-28 2018-10-18 ソリッドビジョン株式会社 撮像処理装置

Also Published As

Publication number Publication date
US20220284567A1 (en) 2022-09-08
EP4043868A1 (en) 2022-08-17
WO2021070675A1 (ja) 2021-04-15
CN114503157A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
CN108734690B (zh) 一种视觉缺陷检测设备及其检测方法
CN109483573A (zh) 机器学习装置、机器人系统以及机器学习方法
WO2021070675A1 (ja) 教師データの生成方法、学習済の学習モデル、及びシステム
WO2022236876A1 (zh) 一种玻璃纸缺陷识别方法、系统、装置及存储介质
CN109767445B (zh) 一种高精度的pcb缺陷智能检测方法
US20210150700A1 (en) Defect detection device and method
JP2021170404A (ja) 画像処理方法および撮影装置
CN115131444B (zh) 一种基于单目视觉点胶平台的标定方法
CN111784655B (zh) 一种水下机器人回收定位方法
CN114240939A (zh) 一种主板元器件外观缺陷检测方法、系统、设备及介质
Xie et al. Detecting PCB component placement defects by genetic programming
CN113034488A (zh) 一种喷墨印刷品的视觉检测方法
CN115861368A (zh) 一种针对多类图像的多类轮廓跟踪方法、装置和介质
CN114255212A (zh) 一种基于cnn的fpc表面缺陷检测方法及其系统
CN112200790A (zh) 布料缺陷检测方法、设备和介质
CN114187267B (zh) 基于机器视觉的冲压件缺陷检测方法
WO2020241540A1 (ja) システムの制御方法、及びシステム
Zhou et al. A novel convolutional neural network for electronic component classification with diverse backgrounds
Zhang et al. Learning-based framework for camera calibration with distortion correction and high precision feature detection
Singh et al. Performance analysis of object detection algorithms for robotic welding applications in planar environment
Xie et al. A high speed AOI algorithm for chip component based on image difference
Wang et al. Assembly defect detection of atomizers based on machine vision
Metzner et al. Automated optical inspection of soldering connections in power electronics production using convolutional neural networks
JP2021092887A (ja) 外観検査装置、外観検査システム、特徴量推定装置および外観検査プログラム
CN116012579A (zh) 一种基于列车车辆智能巡检机器人拍摄图像检测零部件异常状态的方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230531

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20231213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240423