JP7015001B2 - 欠陥検査装置、欠陥検査方法、及びそのプログラム - Google Patents

欠陥検査装置、欠陥検査方法、及びそのプログラム Download PDF

Info

Publication number
JP7015001B2
JP7015001B2 JP2018046534A JP2018046534A JP7015001B2 JP 7015001 B2 JP7015001 B2 JP 7015001B2 JP 2018046534 A JP2018046534 A JP 2018046534A JP 2018046534 A JP2018046534 A JP 2018046534A JP 7015001 B2 JP7015001 B2 JP 7015001B2
Authority
JP
Japan
Prior art keywords
image
defect
determination
inspection
unit
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.)
Active
Application number
JP2018046534A
Other languages
English (en)
Other versions
JP2019159889A (ja
Inventor
泰之 池田
真嗣 栗田
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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2018046534A priority Critical patent/JP7015001B2/ja
Priority to CN201910030739.XA priority patent/CN110274908B/zh
Priority to EP19151773.9A priority patent/EP3540688A1/en
Priority to US16/249,917 priority patent/US11301978B2/en
Publication of JP2019159889A publication Critical patent/JP2019159889A/ja
Application granted granted Critical
Publication of JP7015001B2 publication Critical patent/JP7015001B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • 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
    • 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/95Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
    • G01N21/956Inspecting patterns on the surface of objects
    • G01N21/95607Inspecting patterns on the surface of objects using a comparative method
    • 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
    • G06T7/0008Industrial image inspection checking presence/absence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • 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/8887Scan 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 based on image processing techniques
    • 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/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • 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/20092Interactive image processing based on input by user
    • G06T2207/20104Interactive definition of region of interest [ROI]
    • 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
    • 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/30168Image quality inspection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Chemical & Material Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Geometry (AREA)
  • Signal Processing (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Image Analysis (AREA)

Description

本発明は、機械学習によって生成された識別器を用いた欠陥検出処理を実行可能な欠陥検査装置、欠陥検査方法、及びそのプログラムに関する。
FA(Factory Automation)分野では、画像計測処理を用いた自動制御が広く実用化されている。例えば、ワークなどの検査対象を撮像し、その撮像された画像から抽出された特徴量に基づいて、当該ワークについての良否を検査するような工程が実現される。
例えば特許文献1には、複数の撮像条件で撮像した検査対象の画像を学習用データに用いて学習した識別器の出力結果に基づいて、検査対象の欠陥の有無を判定する装置について開示されている。具体的には、特許文献1に記載の装置は、外観の良否が既知の対象物に対して、少なくとも2つの異なる撮像条件で撮像された画像に基づく少なくとも2つの画像のそれぞれから、当該画像の特徴量を抽出する学習用抽出手段と、前記学習用抽出手段により前記少なくとも2つの画像から抽出された特徴量を跨る特徴量から、対象物の良否を判定するための特徴量を選択する選択手段と、前記選択手段により選択された前記特徴量に基づいて、対象物の良否を判定する識別器を生成する生成手段と、を有する。
特開2017-49974号公報
特許文献1に記載されるような従来の識別器は、画像の特徴量に基づいて欠陥の有無を検出することを学習する。しかしながら、生産ライン上を流れるワークの種類や撮影条件等の検査条件は生産ラインによって様々であり、学習時の条件と必ずしも一致するとは限らない。したがって、事前学習された識別器を実際に生産ラインに用いる場合には、識別器の出力結果はノイズ等の影響を受ける場合がある。ノイズは、例えば光の反射や陰影等によって、画像に混ざった不要な特徴量である。よって識別器の出力結果に基づいて欠陥の有無を判定するには、ノイズと欠陥とを切り分けるために、判定用のパラメータを調整できることが好ましい。一方で、この調整には手間がかかるため、生産性の低下を招く場合があった。
本発明は、上述した事情を鑑みてなされたものであり、事前学習された識別器が出力する結果を用いて欠陥の有無を検査する検査装置において、欠陥の有無を判別するための判定用パラメータを適切かつ簡易に設定する技術を提供することを目的とする。
本発明は、上述した課題を解決するために、以下の構成を採用する。
本発明の一側面に係る欠陥検査装置は、検査対象物の検査画像を所得する取得部と、検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成する画像生成部と、検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定する検査部と、欠陥に対応する領域が特定された2値化画像である設定用画像を用いて、設定用画像の画素の色の濃度に基づく画像スコアを算出し、領域の内部の画像スコアと領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新する、設定部と、を備える。特徴抽出画像は、欠陥検査装置に入力される画像から所定の特徴を抽出した画像をいう。2値化画像は、特徴抽出画像に基づいて生成され、検査部によって欠陥の有無が判定される画像をいう。
上記構成では、事前学習された識別器が出力する結果を用いて欠陥の有無を検査する欠陥検査装置において、欠陥の有無を判別するための判定用パラメータを適切かつ簡易に設定することができる。判定用パラメータが適切に設定できるようになることで、誤判定が減少する。特にノイズを減らすことができるので、欠陥ではないのに欠陥と認識してしまう誤検出が減少する。さらに、判定用パラメータを簡易に設定できるので、欠陥検査装置の設定工数、立上げ工数が削減できる。
上記一側面に係る欠陥検査装置において、2値化画像は白色の画素と黒色の画素とから構成され、白色の画素と前記黒色の画素とのそれぞれに濃度値が対応付けられており、設定部は、領域内に含まれる複数の画素について、色の濃度値の合計値を第1の画像スコアとして算出し、領域外の含まれる複数の画素について、色の濃度値の合計値を第2の画像スコアとして算出し、第1の画像スコアと第2の画像スコアとの差が最大となるように判定用パラメータを更新するように構成されてもよい。この態様によると、欠陥検査装置は、画像スコアを算出し比較することで、適切な判定用パラメータを探索することが可能になる。
また、判定用パラメータは、2値化画像を生成するための2値化レベルを含むように構成されてもよい。さらに、判定用パラメータは、2値化画像を判定するための1以上の判定項目と、判定項目の各々に対して設定される判定閾値を含むように構成されてもよい。この態様によると、検査部によって欠陥の有無が判定される対象となる2値化画像を生成する閾値を適切かつ簡易に設定することができる。これによって誤判定をより減少させることが可能になる。
また、上記一側面に係る欠陥検査装置において、欠陥を判定するための1以上の判定項目は、2値化画像における同職の画素の塊で表現される所定の領域の面積、外接矩形の幅及び/又は高さ、周囲長、縦横比、円形度の少なくとも1つを含み、判定閾値は、これらの判定項目の各々に対して設定される上限値及び/又は下限値を含むように構成されてもよい。この態様によると、欠陥検査装置は、判定項目ごとに判定閾値を設定することができる。これにより、より適切な判定用パラメータを設定可能になる。
また、判定項目と判定閾値とは、画像生成部又は検査部の学習時に用いられる学習用の画像データに含まれる欠陥の特徴量に基づいて決定されてもよい。この態様によると、欠陥検査装置は、学習用データセットに含まれる学習用画像が有する欠陥の形状の分布に対応した判定条件を設定することができ、学習用データセットに含まれる欠陥と同等の形状を有する欠陥を抽出することができる。
また、上記一側面に係る欠陥検査装置は、領域の指定を受け付ける表示部をさらに備え、検査部は、予め定められた判定用パラメータに基づいて、欠陥と判定される領域を特定するとともに、特定した領域を検査画像とともに表示部に対して出力し、設定部は、表示部を介して受け付けた領域の指定に基づいて設定用画像を生成するよう構成されてもよい。この態様によると、ユーザは予め定められた判定用パラメータに対して事後的に調整を行うことが可能になり、検査部の欠陥検査の制度をより適切かつ容易に調整することができる。この結果、ユーザの検査部の欠陥検出の精度調整に係る負荷をより低減することができる。
また、上記一側面に係る欠陥検査装置において、検査部は、2値化画像において、欠陥を判定するための1以上の特徴量の各々に対して設定された判定閾値に基づいて、2値化画像のうち、欠陥と判定される領域を特定し、特定した領域をユーザに提示し、設定部は、ユーザから、検査部で欠陥と判定された領域であるが、欠陥として判定されるべきでない領域、及び/又は、検査部で欠陥と判定されなかった領域であるが、欠陥として判定されるべきである領域の指定を受け付け、当該指定に基づいて、判定閾値を更新するよう構成されてもよい。また、欠陥を判定するための1以上の判定項目と判定閾値は、ユーザの指定に基づいて決定されてもよい。この態様によると、ユーザは予め定められた判定用パラメータに対して事後的に調整を行うことが可能になり、検査部の欠陥検査の制度をより適切かつ容易に調整することができる。
また、本発明の一側面に係る欠陥検査方法は、コンピュータが、検査対象物の検査画像を所得するステップと、検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成するステップと、検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定するステップと、欠陥に対応する領域が特定された2値化画像である設定用画像を用いて、設定用画像の画素の色の濃度に基づく画像スコアを算出し、領域の内部の画像スコアと領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新するステップとを実行する。
上記構成では、事前学習された識別器が出力する結果を用いて欠陥の有無を検査する方法において、欠陥の有無を判別するための判定用パラメータを適切かつ簡易に設定することができる。判定用パラメータが適切に設定できるようになることで、誤判定が減少する。特にノイズを減らすことができるので、欠陥ではないのに欠陥と認識してしまう誤検出が減少する。さらに、判定用パラメータを簡易に設定できるので、欠陥検査装置の設定工数、立上げ工数が削減できる。
また、本発明の一側面に係るプログラムは、コンピュータを、検査対象物の検査画像を所得する手段、検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成する手段、検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定する手段、及び欠陥に対応する領域が特定された2値化画像である設定用画像を用いて、設定用画像の画素の色の濃度に基づく画像スコアを算出し、領域の内部の画像スコアと領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新する手段、として機能させる。
上記構成では、事前学習された識別器が出力する結果を用いて欠陥の有無を検査するプログラムにおいて、欠陥の有無を判別するための判定用パラメータを適切かつ簡易に設定することができる。判定用パラメータが適切に設定できるようになることで、誤判定が減少する。特にノイズを減らすことができるので、欠陥ではないのに欠陥と認識してしまう誤検出が減少する。さらに、判定用パラメータを簡易に設定できるので、欠陥検査装置の設定工数、立上げ工数が削減できる。
本発明によれば、事前学習された識別器が出力する結果を用いて欠陥の有無を検査する欠陥検査装置において、欠陥の有無を判別するための判定用パラメータを適切かつ簡易に設定する技術を提供できる。
本実施の形態に係る欠陥検査システムのシステム構成例を示す模式図である 。 本実施の形態に係る欠陥検査装置のハードウェア構成を示す模式図である。 本実施の形態に係る欠陥検査装置の機能構成を示す模式図である。 本実施の形態に係る欠陥検査システムにおけるCNNを用いた画像計測処理の処理手順の一例を説明するための図である。 本実施の形態に係るCNNエンジンに与えられる学習データセットの一例を示す図である。 本実施の形態に係るCNNエンジンの学習時の入・出力及び期待値を説明するための模式図である。 本実施の形態に係る欠陥検査システムにおける半自動設定モードの処理の一例を説明するためのフローチャートである。 本実施の形態に係る欠陥検査システムにおける自動手動設定モードの処理の一例を説明するためのフローチャートである。 本実施の形態に係る欠陥検査装置における欠陥領域の一例を説明するための図である。 本実施の形態に係る欠陥検査システムにおける自動手動設定モードの処理の一例を説明するためのフローチャートである。 本実施の形態に係る欠陥検査装置が提供するユーザインターフェイス画面200の一例を示す模式図である。 本実施の形態に係る欠陥検査装置が提供するユーザインターフェイス画面200の一例を示す模式図である。 本実施の形態に係る欠陥検査装置が提供するユーザインターフェイス画面200の一例を示す模式図である。 本実施の形態に係る欠陥検査装置が提供するユーザインターフェイス画面200の一例を示す模式図である。 本実施の形態に係る欠陥検査システムにおける準備工程の処理手順を示すフローチャートである。 本実施の形態に係る欠陥検査システムにおける運用工程の処理手順を示すフローチャートである。
以下、本発明の一側面に係る実施の形態(以下「本実施形態」とも表記する)を、図面に基づいて説明する。ただし、以下で説明する実施形態は、あらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。つまり、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、本実施形態において登場するデータを自然言語により説明しているが、より具体的には、コンピュータが認識可能な疑似言語、コマンド、パラメータ、マシン語等で指定される。
§1 適用例
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本実施形態に係る欠陥検査システム1の適用場面の一例を模式図である。本実施の形態に係る欠陥検査システム1は、検査対象を撮像することにより生成される入力画像に対して欠陥検査を行う際に、欠陥として抽出する特徴に応じて適切な判定用パラメータが設定されるように作業者(以下「ユーザ」ともいう。)を補助することができる。なお、検査対象は、例えば、製造過程にある、部品、製品等のワーク(Work piece)等を含む。
図1に示されるとおり、欠陥検査システム1は、例えば、ベルトコンベア2上を搬送される検査対象であるワーク4を撮像して得られる入力画像に対して画像計測処理を実行することで、ワーク4の外観検査または外観計測を実現する。以下の説明においては、画像計測処理の典型例として、ワーク4表面における欠陥の有無の検査などに適用した例を説明するが、これに限らず、欠陥の種類の特定、欠陥の外観形状の寸法計測などにも応用が可能である。
ベルトコンベア2の上部には撮像部であるカメラ102が配置されており、カメラ102の撮像視野6はベルトコンベア2の所定領域を含むように構成される。カメラ102の撮像により生成された画像データ(以下、「入力画像」ともいう。)は、欠陥検査装置100へ送信される。カメラ102による撮像は、周期的またはイベント的に実行される。
欠陥検査装置100は、上位ネットワーク8を介して、PLC(プログラマブルコントローラ)10およびデータベース装置12などと接続されている。欠陥検査装置100における計測結果は、PLC10および/またはデータベース装置12へ送信されてもよい。なお、上位ネットワーク8には、PLC10およびデータベース装置12に加えて、任意の装置が接続されるようにしてもよい。
欠陥検査装置100は、処理中の状態や計測結果などを表示するためのディスプレイ104と、ユーザ操作を受付ける入力部としてのキーボード106およびマウス108とが接続されていてもよい。
欠陥検査装置100は機械学習によって生成された識別器を有している。一例として、欠陥検査装置100はCNNエンジンを有している。CNNエンジンは、畳み込みニューラルネットワーク(Convolutional Neural Network)を用いた識別器を構成しており、入力画像が予め指定された所定の特徴に対応した複数のクラス(分類)のいずれかに属する確率、および、各クラスに対応した特徴抽出画像を生成するように構成されている。ここで、特徴抽出画像は、入力画像から所定の特徴を抽出した画像をいい、本実施の形態において、所定の特徴(クラス)は、背景、黒点、白点、黒線、白線、の5つである。CNNエンジンは前述した複数のクラスごとに用意された学習用画像と教師データ(ラベル)とを含む学習データセットに基づいて事前学習を行うことにより、入力画像から所定の特徴が抽出された特徴抽出画像を生成する。CNNエンジンは、学習用データセットを用いた事前学習により、所定のクラスに属する確率、および、特徴抽出画像を生成するように調整された内部パラメータをあらかじめ獲得している。ここで、内部パラメータとは、ニューラルネットワークの構成(例えば、ニューラルネットワークの層数、各層におけるニューロンの個数、ニューロン同士の結合関係、各ニューロンの活性化関数)、ハイパーパラメータ(各ニューロン間の結合の重み及び各ニューロンの閾値を示す情報)を含む。本実施の形態において、所定の特徴とは、欠陥の形状に関する特徴、および、欠陥の色の濃度、に関する特徴を含む。より具体的には、欠陥の形状に関する特徴として、点欠陥および線欠陥を含み、欠陥の色の濃度に関する特徴として、白欠陥および黒欠陥を含む。これらの組合せにより、本実施の形態におけるCNNエンジンは、所定のクラスとして、「白点」、「白線」、「黒点」、「黒線」を含み、各クラスに対応した1以上の特徴抽出画像を生成する。これら特徴抽出画像は、グレースケールで表現される。CNNエンジンの構成、および、CNNエンジンの学習過程に関しては後述する。
さらに欠陥検査装置100は、CNNエンジンが出力した1または複数の特徴抽出画像に基づいて、各クラスに対応した特徴が、白色または黒色の画素で表現された2値化画像を生成し、この2値化画像と、判定用のパラメータ(以下「判定用パラメータ」ともいう。)とを用いて対象のワークにおける欠陥の有無などを判断する検査部(以下「後処理部」ともいう。)を有する。なお、後処理部は、欠陥の有無に加え、欠陥の大きさ、位置、種別などを検出することもできる。ここで、判定用パラメータは、2値化画像を生成するための2値化レベル、2値化画像に含まれる特徴を欠陥と判定するか否かの判定項目および各判定項目に対応して設定される判定閾値、を含むパラメータである。判定項目としては、特徴を示す画素の面積、外接矩形の幅及び高さ、周囲長、円形度などが挙げられる。なお、円形度とは、図形の複雑さを表すための数値である。円形度の値が大きいほど、円形に近いことを示し、欠陥ではなく、何らかの模様であることを示す。判定閾値は、下限値と上限値とを含むことが好ましく、下限値と上限値との間に含まれる特徴量を有する特徴を欠陥と判定するための閾値である。
生産ライン上を流れるワークの種類や撮影条件等の検査条件は生産ラインによって様々であり、学習時の条件と必ずしも一致するとは限らない。このため、学習済みのCNNを生産ラインに用いる際に、内部パラメータによっては、ノイズが特徴抽出画像に含まれてしまう場合がある。ノイズは、例えば光の反射や陰影等によって、画像に混ざった不要な特徴量である。このようなノイズは、欠陥であるのに欠陥でないといった誤判定や、欠陥ではないのに欠陥であるといった誤判定の原因になる。したがって、後処理部によって、特徴抽出画像にノイズが含まれる場合には、ノイズと欠陥を切り分ける処理が必要となることがある。ノイズと欠陥との切り分け処理は判定用パラメータに基づいて行われるところ、生産ラインに応じて判定用パラメータを手動によって適切に調整するのは手間がかかり生産性を低下させてしまう。
本実施形態にかかる欠陥検査装置100は、このような事情を鑑み、CNNエンジンが出力した特徴抽出画像に含まれるノイズと欠陥とを、後処理部において切り分けるための判定用パラメータを、実際に欠陥判定を行う入力画像に応じて更新する機能を有している。具体的には本実施形態にかかる欠陥検査装置100は、まず、入力画像(検査画像)に対して、学習器(CNN)を適用することで1以上の特徴抽出画像を生成する。そして、1以上の特徴抽出画像に対して、加減算処理(行わなくてもよい)、及び、予め定められた2値化レベルの初期値に基づく2値化処理、を実行して2値化画像を生成する。さらに、欠陥検査装置100は、予め定められた判定項目と判定閾値との初期値に基づいて、検査部が欠陥部分を特定する判定処理を行う。このとき、検査部は、判定処理結果をユーザに表示(欠陥と判定された領域を画像とともに提示)し、ユーザからのフィードバックを受け付けることができる。例えば、欠陥検査装置100は、検査部が欠陥として検出する領域(欠陥領域)を見逃した場合には、欠陥領域の追加をユーザから受け付けることができる。また欠陥検査装置100は、検査部が、ノイズを誤って欠陥領域として判定してしまった場合には、当該欠陥領域の削除を受け付けることができる。ユーザからのフィードバックを受け付けると、欠陥検査装置100は欠陥領域が指定された画像(設定用画像)を用いて、当該欠陥領域内外の濃度の差が大きくなるように判定用パラメータ(2値化レベル、判定項目、判定閾値)を調整する。
なお、「表示部を介してユーザから領域指定を受け付ける」処理は行わなくてもよい。この場合には、予め欠陥領域が特定された画像を取得すればよい(図7、図9の全自動モードにおけるS201のように、予め欠陥領域が特定された画像を用いればよい)。
なお、本実施形態にかかる欠陥検査装置10は、判定用パラメータの設定モードとして、少なくともプリセットされた判定用パラメータをユーザが調整する機能(半自動モード)を有している。これによって、ユーザはプリセットされた判定用パラメータが適切でない場合に調整すればよいため、判定用パラメータ設定の負荷を低減させることができる。また、本実施形態にかかる欠陥検査装置10は、半自動モードの他、判定用パラメータを自動で設定するモード(全自動モード)及びユーザが手動で判定用パラメータを設定する機能(手動モード)を有している。なお、第1の設定モード、第2の設定モード、第3の設定モードは、それぞれ、半自動モード、手動モード、全自動モード、に対応する。
§2 構成例
<1.欠陥検査装置100のハードウェア構成>
次に、本実施の形態に係る欠陥検査システム1に含まれる欠陥検査装置100のハードウェア構成について説明する。
図2は、本実施の形態に係る欠陥検査装置100のハードウェア構成を示す模式図である。図2を参照して、欠陥検査装置100は、一例として、汎用的なコンピュータアーキテクチャに従って構成される汎用コンピュータを用いて実現されてもよい。欠陥検査装置100は、プロセッサ110と、メインメモリ(主記憶部)112と、カメラインターフェイス114と、入力インターフェイス116と、表示インターフェイス118と、通信インターフェイス120と、ストレージ(補助記憶部)130とを含む。これらのコンポーネントは、典型的には、内部バス122を介して互いに通信可能に接続されている。
プロセッサ110は、ストレージ130に格納されているプログラムをメインメモリ112に展開して実行することで、図3乃至図12を用いて後述するような機能および処理を実現する。メインメモリ112は、揮発性メモリにより構成され、プロセッサ110によるプログラム実行に必要なワークメモリとして機能する。
カメラインターフェイスは取得部の一例である。カメラインターフェイス114は、カメラ102と接続されて、カメラ102にて撮像された入力画像を取得する。カメラインターフェイス114は、カメラ102に対して撮像タイミングなどを指示するようにしてもよい。
入力インターフェイス116は、キーボード106およびマウス108などのユーザによる操作が行われる入力部と接続される。入力インターフェイス116は、ユーザが入力部に対して行った操作などを示す指令を取得する。
表示インターフェイス118は、表示部としてのディスプレイ104と接続されている。表示インターフェイス118は、プロセッサ110によるプログラムの実行によって生成される各種処理結果をディスプレイ104へ出力する。
通信インターフェイス120は、上位ネットワーク8を介して、PLC10およびデータベース装置12などと通信するための処理を担当する。
ストレージ130は、CNNエンジンを実現するための画像処理プログラム132およびOS(operating system)134など、コンピュータを欠陥検査装置100として機能させるためのプログラムを格納している。ストレージ130は、さらに、後述するような画像計測処理を実現するための判定用パラメータ136と、カメラ102から取得された入力画像138と、画像計測処理によって得られた計測結果140とを格納していてもよい。
ストレージ130に格納される画像処理プログラム132は、DVD(digital versatile disc)などの光学記録媒体またはUSB(universal serial bus)メモリなどの半導体記録媒体などを介して、欠陥検査装置100にインストールされてもよい。あるいは、画像処理プログラム132は、ネットワーク上のサーバ装置などからダウンロードするようにしてもよい。
本実施の形態に係る画像処理プログラム132は、本実施の形態に係る機能を実現するためのすべてのソフトウェアモジュールを含んでおらず、OSと協働することで、必要な機能が提供されるようにしてもよい。
本実施の形態に係る画像処理プログラム132は、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、画像処理プログラム132自体には、上記のような組合せられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。このように、本実施の形態に係る画像処理プログラム132は、他のプログラムに組込まれた形態であってもよい。
図2には、汎用コンピュータを用いて欠陥検査装置100を実現する例を示したが、これに限られることなく、その全部または一部の機能を専用回路(例えば、ASIC(application specific integrated circuit)やFPGA(field-programmable gate array)など)を用いて実現してもよい。さらに、一部の処理をネットワーク接続された外部装置に担当させてもよい。
<2.欠陥検査装置100の機能構成>
次に、図3及び図4を参照して、本実施形態に係る欠陥検査システム1に含まれる欠陥検査装置100の機能構成について説明する。なお、図3においてCNNエンジン156が画像生成部に該当し、後処理部170(特に判定部162)が検査部に該当する。
図3は、本実施形態に係る欠陥検査装置100の機能構成を示す模式図である。欠陥検査装置100が有する各機能構成は、典型的には、前述のプロセッサ110が画像処理プログラム132を実行することで実現される演算処理である。また、図4は、本実施形態に係る欠陥検査装置100における検査工程(運用工程)の一例を説明するための模式図である。
図3を参照して、欠陥検査装置100は、機能構成として、入力バッファ152と、前処理部154と、CNNエンジン156と、後処理部170と、設定部166とを含む。以下、各機能部について詳細に説明する。
(2-1.入力バッファ152)
入力バッファ152は、カメラ102により撮像された入力画像を一旦格納する。プロセッサ110がストレージ130に入力画像を記憶することで、入力バッファ152が実現される。入力バッファ152には、前処理部154および設定部166からのアクセスが可能である。
(2-2.前処理部154)
前処理部154は、入力バッファ152に格納される入力画像に対して必要な前処理を実行する。本実施形態に係る前処理部154は、検査工程の立ち上げ時(以下「準備工程」ともいう。)において前処理フィルタを生成する。前処理フィルタは例えば入力画像を変換するためのパラメータ(フィルタパラメータ)である。なお、前処理フィルタの具体例としては、明度補正、カラーグレー変換、後述する入力画像の拡大縮小、等が挙げられる。なお、前処理フィルタは、入力画像に態様により適宜適用すればよい。
後述するCNNエンジン156は事前学習によって、所定の特徴抽出画像を抽出するための内部パラメータを獲得している。これにより、CNNエンジン156は内部パラメータで規定された特徴量の幅に納まる特徴を抽出することができる。しかし、内部パラメータに対応する特徴量の範囲は、学習済みモデルの生成に利用した学習データが含む欠陥の種類に依存して決定される。したがって、生産ラインにおいて学習データに含まれない特異な特徴を有する欠陥が発生すると、当該欠陥の特徴量は事前学習によって獲得した特徴量から逸脱し、誤認識(見逃し)が発生する場合がある。また、生産ラインにおいて学習データに含まれない特異な特徴を有する背景領域のパターンが発生すると、当該背景領域のパターンが事前学習によって獲得した特徴量の範囲と合致し、誤認識(見過ぎ)が発生する場合がある。
そこで、前処理部154は、準備工程において、入力画像を以下のように変換可能な前処理フィルタを生成する。
・入力画像に含まれる欠陥に対応する領域の特徴量の幅が、内部パラメータに対応した特徴量の範囲に含まれるように、入力画像を拡大縮小する。
・入力画像に含まれる欠陥でない領域の特徴が、内部パラメータで抽出される特徴量に納まらないように入力画像を拡大縮小する。
そして実際に検査を行う工程(以下「運用工程」ともいう。)においては、入力画像に対して、前処理として当該前処理フィルタを適用することによって入力画像の変換を行う(図4のS1)。このような前処理は、後段にあるCNNエンジン156での特徴の抽出を容易化するように入力画像を加工することを目的としている。前処理の内容については、設定部166を介してユーザから指定されるようにしてもよい。前処理後の入力画像(以下「前処理済み画像」ともいう。)は、CNNエンジン156へ出力される(図4のS2)。
(2-3.CNNエンジン156)
CNNエンジン156は、事前学習された複数のクラスを有するCNNエンジン156を入力画像に適用することで、複数のクラスに対応する複数の特徴抽出画像をそれぞれ生成する特徴抽出画像生成機能を提供する。CNNエンジン156にてそれぞれ生成された複数の特徴抽出画像は後処理部170へ出力されるとともに、設定部166からのアクセスも可能になっている。
以下、CNNエンジン156の機能についてより詳細に説明する。
CNNエンジン156は、画像が入力された場合に、入力された画像があらかじめ指定された複数のクラス(分類:n)に属する確率prob(n)を出力するように構成されている。確率は、予め指定された複数のクラス(分類)ごとに算出される。本実施形態におけるCNNエンジン156は、事前学習により、入力画像が、いずれのクラスに属する画像であるかの確率prob(n)と、当該クラスに属する特徴抽出画像(特徴抽出画像1,特徴抽出画像2,・・・,特徴抽出画像N)を出力する(図4のS3)。本実施の形態において、複数のクラスは、背景、黒点、白点、黒線、白線、の5つのクラスである。カメラ102などにより撮像された入力画像がCNNエンジン156に入力されることで、これらのクラス「白点」、「黒点」、「白線」、「黒線」に分類される特徴を抽出した特徴抽出画像がそれぞれ生成される。図4に示す特徴抽出画像においては、各特徴を示す領域と他の領域との濃度差が大きくなるように表示されている。なお、濃度差を大きく表示する例として、他の領域よりも明るく表示する態様や、他の領域よりも暗くする態様を含み得るが、これらに限られず、所定の特徴を示す領域を区別可能な態様であればいかなる態様でもよい。
上述のとおりCNNエンジン156は事前学習によって、各クラスに対応する特徴抽出画像を生成するための内部パラメータを獲得している。たとえば、「白線」や「黒線」のクラスを抽出する場合、内部パラメータは、抽出可能な欠陥の幅のピクセル数で表すことが可能である。内部パラメータは事前学習によって与えられた学習画像に含まれていた欠陥の種類に応じて獲得される。
本実施の形態におけるCNNエンジン156は、1または複数のコンボリューション層、1または複数のプーリング層、全結合層、ソフトマックス層を有する。入力画像の各画像の情報は、複数のコンボリューション層、と複数のプーリング層とを介して全結合層に出力される。コンボリューション層による畳み込み処理と、プーリング層による画像サイズの圧縮処理により、画像の特徴が抽出されていく。
全結合層は、コンボリューション層とプーリング層とを介して特徴が抽出された画像データを特定のノードに結合し、所定の関数によって変換された特徴変数を出力する。全結合層に設けられた各ノードは、予め指定された複数のクラスに対応する画像データとなる。
全結合層の出力は、ソフトマックス層(出力層)に対して出力される。ソフトマックス層では、予め指定された複数のクラス分類(n)のいずれに属するかの確率prob(n)を0~1の範囲で出力する。
なお、コンボリューション層、全結合層の計算式は、それぞれ式(1)、式(2)で与えられるとおりである。各式において、複数の重みWおよびバイアスBは内部パラメータに含まれるハイパーパラメータであり、これらの内部パラメータは学習によって決定される。また、ソフトマックス層の計算式は式(3)で示される。
Figure 0007015001000001
Figure 0007015001000002
Figure 0007015001000003
次に、本実施の形態におけるCNNエンジン156の学習について説明する。本実施の形態において用いられる、学習用画像、及び、教師データ(ラベル)を含んだ学習データセットの一例を図5Aに示す。また、図5Aに示す学習データ及び教師データのセットを用いた学習過程の概略を図5Bに示す。
図5Aに示すように、学習データは、予め指定された複数のクラス(分類:n)に対応した学習用の画像を有している。本実施の形態では、図5Aに示すように、背景、黒点で表現される欠陥、白点で表現される欠陥、黒線で表現される欠陥、白線で表現される欠陥、の5種類のクラスに対応した学習用画像が、それぞれ複数用意されている。さらに、各学習用の画像データには、各画像データの分類を示す教師データ(ラベル)が0~4の番号で付与されている。より具体的には、背景に対して0、黒点で表現される欠陥に対して1、白点で表現される欠陥に対して2、黒線で表現される欠陥に対して3、白線で表現される欠陥に対して4、がそれぞれ付与されている。
図5Bに示すように、CNNエンジン156の学習において、まず、CNNの内部を構成するすべてのハイパーパラメータの値を乱数により初期化する。続いて、図5Aに示す学習データセットに含まれる学習用画像をCNNエンジン156に入力し、確率分布prob(n)を出力させる。続いて、CNNエンジン156が出力した確率分布の実測値prob(n)を、確率分布の出力期待値と比較する。ここで、確率分布の出力期待値は、入力した学習用画像に対応するラベルの確率分布prob(n)=1、かつ、入力した学習用画像に対応しないラベルの確率分布prob(n)=0となることである。したがって、図xxに示すように、黒線で表現される欠陥が含まれる入力画像であって、教師データ(ラベル)として3が紐づけられる場合、その確率分布の出力期待値は、prob(3)=1で、かつ、その他の確率分布の出力期待値が、prob(n:0、1、2、4、)=0となることが好ましい。したがって、CNNエンジン156の学習は、ある学習用画像を入力した場合にソフトマックス層が出力する確率分布の実測値と、その学習用画像に対応するラベルの出力期待値との差が最小になるように、ハイパーパラメータの組み合わせを探索して更新する処理となる。
ハイパーパラメータの更新は、複数の学習用画像を用いて確率分布prob(n)を算出し、確率分布の実測値と出力期待値との交差エントロピーの合計を損失関数として、以下の式(4)に示す損失関数を最小化するように、ハイパーパラメータの値を繰り返し演算して行われる。このとき、ハイパーパラメータの演算には、勾配降下法と誤差逆伝搬法を用いることができる。更新前後におけるハイパーパラメータの差が所定値未満となった場合に、学習を完了させる。
Figure 0007015001000004
(2-4.後処理部170)
後処理部170は、CNNエンジン156から出力される複数の特徴抽出画像の少なくとも一部の特徴抽出画像に対して、後処理を行うことで計測結果画像を生成する。具体的には、後処理部170は、CNNエンジン156が出力した複数の特徴抽出画像のうち、指定された1つまたは複数の特徴抽出画像を選択し、後処理を実行することにより、計測結果画像を出力する(図4のS4)。1つまたは特徴抽出画像の選択は、図3に示すように設定部166を介してユーザによる指定を受け付けてもよい。なお、後処理部170は計測結果画像と併せて計測結果を出力してもよい。計測結果は、入力画像に対して欠陥検査処理を実行したときに得られる判定結果(例えば、欠陥の有無、欠陥パターンの大きさ、欠陥パターンの位置など)を含む。
本実施形態では、後処理部170は、選択部158と、画像演算部160と、判定部162とから構成される。
選択部158は、CNNエンジン156から出力される複数の特徴抽出画像のうち、1または複数の特徴抽出画像を選択し、選択した特徴抽出画像を画像演算部160へ出力する。なお、選択部158は、特徴抽出画像を選択する際に、後述する設定部166を介してユーザの選択を受け付けてもよい。
画像演算部160は、選択部158が複数の特徴抽出画像を選択した場合に、必要に応じて所定の画像処理を実行し、その結果を判定部162へ出力する。ここで画像演算処理とは、複数の画像間において、対応する画素の間で四則演算を含む任意の数学的処理を行うことを含む。より具体的には、画像演算部160は、例えば画像演算処理として、選択された複数の特徴抽出画像のうち2つ以上の特徴抽出画像を用いて、画像同士の加算処理や、画像間の減算処理、及びそれらの重付き演算処理を実行することができる。
図4は、最も適切な特徴抽出画像として、選択部158によって「黒線」の特徴抽出画像が選択された例を示している。しかし、この例では、「黒線」の特徴抽出画像内には「黒点」に相当する特徴も現れている。すなわち、「黒線」の特徴抽出画像および「黒点」の特徴抽出画像のいずれにも、点状の特徴部分が共通して現れている。入力画像から鑑みるに、この「黒点」に相当する特徴は、欠陥を示しておらず、ノイズである。このように、入力画像に含まれる特徴の種類や大きさによっては、欠陥と欠陥以外(例えば、背景部分やノイズ)とのパターン分離が難しくなる。このとき、画像演算部160は、一方の特徴抽出画像から他方の特徴抽出画像に現れている特徴を減じるように画像演算処理を実行することで、目的の特徴のみを抽出することができる。すなわち、図4に示す例では、画像演算部160は、「黒線」の特徴抽出画像を構成するそれぞれの画素の輝度値と「黒点」の特徴抽出画像を構成するそれぞれの画素の輝度値との差を求める処理が実行する。一方、欠陥に対応する特徴が、複数のクラスの特徴抽出画像に分散して現れることもある。例えば、検査対象物にキズ状の欠陥が複数生じている場合であって、一のキズ欠陥は、照明条件により「白線」のの特徴抽出画像に抽出され、他のキズ欠陥は「黒線」の特徴抽出画像に抽出された場合である。このような場合、画像演算部160は、「白線」の特徴抽出画像と、「黒線」の特徴抽出画像との加算処理を実行してよい。このように、選択された複数の特徴抽出画像について画像同士の加減算処理、重み付き演算処理を実行することにより、欠陥として抽出する特徴を包含した画像を生成することができる。
なお、画像演算部160は、選択部158が特徴抽出画像を1つしか選択しなかった場合には、画像演算処理を行わず、そのまま判定部162に特徴抽出画像を出力してもよい。また、画像演算部160はどのような画像演算処理を実行するかを、設定部166を介してユーザから受け付けてもよい。
判定部162は、後述する設定部166から少なくとも入力される判定用パラメータに従って、画像演算部160が出力した特徴抽出画像(画像演算処理済みまたは画像演算未処理)に対して2値化処理及び判定処理を実行し、計測結果画像を出力する。なお、判定部162は計測結果画像と併せて計測結果を出力してもよい。
本実施形態において、判定用パラメータは、少なくとも2値化レベルまたは判定条件を含む。2値化レベルは、判定部162が2値化処理によって特徴抽出画像または、複数の特徴抽出画像について画像演算部160が画像処理を施した画像を2値化した画像(2値化画像)を生成する際に用いる閾値である。また、判定条件は、判定部162が、2値化画像に欠陥が含まれるか否かの判定に用いる特徴量の種類を示す判定項目(例えば、欠陥として検出する場合の当該画像の面積や、外接矩形の幅・高さ、周囲長、縦横日、円形度等である)と当該判定項目に設定され、欠陥として検出する特徴量の範囲を示す判定閾値とを組み合わせた情報である。判定閾値は、上限と下限とが設定されていることが好ましい。また、判定条件に含まれる判定項目は単一の項目に限定されず、複数の判定項目が含まれてもよい。この場合、判定条件は、複数の判定項目と、当該複数の判定項目それぞれについて設定された閾値との組合せの情報をいう。なお、判定用パラメータは、さらに判断ロジックを指定する情報などを含んでもよい。
以下の説明では、判定用パラメータは後述する設定部166の処理によって設定される例について説明するが、後処理部170として機械学習等された学習器を用いる場合には、判定用パラメータは事前学習によって獲得されている構成でもよい。この場合、判定用パラメータは、後述する設定部166の処理によって適切な値に更新される。
判定部162の2値化処理、及び判定処理の詳細について説明する。
2値化処理とは、判定部162が判定用パラメータに含まれる2値化レベルに従って、特徴抽出画像、または、複数の特徴抽出画像について画像演算部160が画像処理を施した画像(以下、「中間画像」という。)から2値化画像を生成する処理である。より詳細には、2値化処理として、判定部162は、まず、画像演算部160が出力した中間画像に対して判定用パラメータに含まれる2値化レベルに基づいて、2値化画像を生成する。2値化レベルとは、例えば、画素の強度に関する閾値である。例えば、判定部162が特徴抽出画像の濃度を白と黒の2値で表す2値化画像を生成する場合を例に説明する。この場合、もとの特徴抽出画像の濃度は連続した値を有するところ、判定部162は、2値化レベル以上の強度を有する画素をすべて黒に変換し、2値化レベル未満の強度を有する画素をすべて白に変換することで、特徴抽出画像を2値化した2値化画像を生成する。なお、強度と黒白との対応関係はこれに限定されず、逆でもよい。
次に、判定処理とは、判定部162が判定用パラメータに含まれる判定条件に従って、2値化画像(中間画像の一例である。)から計測結果画像(あるいは計測結果画像と計測結果)を生成する処理である。より詳細には、判定処理として、判定部162は、2値化処理によって生成された2値化画像において、同じ色がつながった画素の塊(以下「第1特徴領域」ともいう。)を抽出する。そして、判定部162は、判定用パラメータとして与えられた判定条件に基づいて、抽出した第1特徴領域から、欠陥として検出される領域を抽出する。そして欠陥として検出すべき第1特徴領域のみを抽出した計測結果画像を生成し出力する。
例えば面積を判定項目とする判定条件が与えられた場合、判定部162は、ある第1特徴領域の面積が、判定条件として与えられた判定閾値の範囲内である場合に、当該第1特徴領域を欠陥として検出される領域として抽出する。そして、判定部162は、2値化画像から欠陥として検出される領域を抽出した計測結果画像を生成する。
(2-5.設定部166)
設定部166は、判定部162が判定処理に用いる判定用パラメータを設定し、判定部162に出力する。本実施形態に係る設定部166は判定用パラメータを設定するモードとして、以下の3種類を有している。
・手動モード
・半自動モード
・全自動モード
なお、設定部166は、上記の設定モードのうち少なくとも半自動モードを有していればよく、すべてのモードを有することは必須ではない。各モードの設定処理について詳細に説明する。
(1)手動モード
手動モードでは、設定部166は、判定条件の設定として、判定項目の選択と選択された判定項目に設定する判定閾値(上限と下限)との設定をユーザから受け付ける。また、設定部166は手動モードでは2値化レベルの設定もユーザから受け付ける。設定部166は、受け付けた2値化レベルと判定条件とを判定パラメータとして判定部162に出力する。
(2)半自動モード
半自動モードでは、設定部166は、判定用パラメータを仮設定したのち、ユーザからパラメータの調整を受け付けるモードであり、ユーザが判定用パラメータを調整自在な状態で判定用パラメータの仮設定を自動的に実行する設定モードである。図6を用いて半自動モードにおける設定部166の処理の一例について説明する。
半自動モードでは、まず、設定部166は、判定用パラメータを仮設定して判定部162に出力する(S101)。具体的には、設定部166は、CNNエンジン156の学習に使用した学習データセットに含まれる学習用画像に含まれる欠陥の特徴に基づいて判定条件を仮設定してもよい。また、設定部166は、CNNエンジン156が獲得した内部パラメータに基づいて判定条件を仮設定してもよい。ここで、学習用画像には、様々な態様の欠陥が含まれている。したがって、これら欠陥の形状の特徴、例えば、欠陥の面積、長さ、周囲長、円形度等、が明らかである場合には、学習用画像に含まれる欠陥の形状に基づいて、判定項目および判定閾値を設定する。これによれば、学習用データセットに含まれる学習用画像が有する欠陥の形状の分布に対応した判定条件を設定することができ、学習用データセットに含まれる欠陥と同等の形状を有する欠陥を検出することができる。また、学習用データセットを用いて獲得されたCNNエンジン156の内部パラメータは、学習用画像に含まれる様々な態様の欠陥を検出するように獲得されているので、CNNエンジン156の内部パラメータに基づいて判定項目および判定閾値を設定することで、学習用データに含まれる欠陥と同等の形状を有する欠陥を検出可能な判定条件を設定することができる。このように、例えば設定部166は、学習用画像や内部パラメータに対応する特徴量を判定閾値として仮設定する。このとき設定部166は、前処理部154が設定した前処理フィルタを考慮して判定用パラメータを仮設定することが好ましい。例えば、前処理フィルタによって入力画像が拡大または縮小されている場合には、第1特徴領域の面積等の判定項目に対する判定閾値は、前処理フィルタによる拡大縮小率を考慮して、事前学習した内部パラメータよりも拡大して仮設定することが好ましい。
なお、2値化レベル及び判定項目については、事前にユーザから指定を受け付ける構成でもよい。これによって判定用パラメータの仮設定処理を高速化することができる。この場合、S101の処理において、設定部166はユーザから指定された判定項目ごとに内部パラメータに基づいて判定閾値を判定用パラメータに仮設定する。
判定部162が仮設定した判定用パラメータを判定部162に出力する(S102)と、判定部162は、2値化画像に抽出されている第1特徴領域から、仮設定された判定用パラメータに合致する領域を、欠陥として検出される領域(以下「第2特徴領域」ともいう。)として抽出する。そして2値化画像において、第2特徴領域を強調表示した設定用画像を出力する(図10B参照)。設定部166は、出力された設定用画像をユーザに提示し、強調表示された第2特徴領域のうち、除外すべき(すなわち欠陥として検出しない)第2特徴領域(以下「第3特徴領域」ともいう。)の選択を受け付ける(S103)。なお、判定部162は設定用画像として計測結果画像をユーザに提示し、計測結果画像において欠陥として検出された領域から第3領域の選択を受け付ける構成でもよい。
そして、設定部166は、第3特徴領域が欠陥として検出されないように判定条件を再度設定する。具体的には、設定部166は第3特徴領域の特徴量が、判定条件の範囲に含まれないように、判定閾値を設定し直す(S104)。判定閾値の設定のし直し(更新)は、図7に示すように、欠陥として検出される領域の内部と外部との画素の色の濃度の差に基づいて定まる、画像スコアの差によって行われる。このとき設定部166は仮設定された判定用パラメータに含まれる判定項目とは異なる判定項目を選択し、判定閾値を設定してもよい。
このように、半自動モードでは、あらかじめ仮設定された判定用パラメータの調整を行うことで、適切な判定用パラメータを設定することができる。これによって、高精度で欠陥を検出するのに適切な判定用パラメータの設定を容易に行うことができる。
(3)全自動モード
全自動モードでは、設定部166は、入力画像に対して、欠陥として検出する領域(以下「欠陥領域」ともいう。)の指定をユーザから受け付け、当該指定された欠陥領域に基づいて判定用パラメータを自動設定する。図7乃至図9を用いて全自動モードにおける設定部166の処理の一例について説明する。
図7は1枚の入力画像に基づいて判定用パラメータを自動設定する際の設定部166の処理フローの一例である。
まず、設定部166はユーザから入力画像に対する欠陥領域の特定を受け付ける(S201)。図8は特定された欠陥領域の一例を示す図である。図8においては、矩形GTが欠陥領域に対応する。なお、欠陥領域は矩形に限定されず、面積をもった任意の形状でよい。
図7に戻り、フローの続きを説明する。
欠陥領域が指定されると、CNNエンジン156が特徴抽出画像を生成する。このとき設定部166は、判定用パラメータを初期設定する(S202)。判定用パラメータの初期設定は、例えば2値化レベルの初期化、判定項目の選択、及び選択された判定項目に対応する判定閾値の初期化である。設定部166は、CNNエンジン156の学習に使用した学習データセットに含まれる学習用画像に含まれる欠陥の特徴に基づいて2値化レベル、判定条件を含む判定用パラメータを仮設定してもよい。また、設定部166は、CNNエンジン156が獲得した内部パラメータに基づいて2値化レベル、判定条件を含む判定用パラメータを仮設定してもよい。なお、2値化レベル及び判定項目については、事前にユーザから指定を受け付ける構成でもよい。これによって判定用パラメータの設定処理を高速化することができる。判定部162は、初期設定された判定用パラメータに含まれる2値化レベルに基づいて、2値化画像を生成する。さらに判定部162は、初期設定された判定用パラメータに含まれる判定項目と判定閾値とに基づいて計測結果画像を生成する。
設定部166は、生成された計測結果画像を取得し(S203)、スコア(画像スコア)を算出する(S204)。具体的には、設定部166は、計測結果画像における、欠陥領域内の画素の色の濃度と、欠陥領域外の画素の色の濃度との差をスコアとして算出する。ここで、画素の色の濃度とは、欠陥を含む特徴に対応する画素(以下、特徴画素という)の、欠陥領域内もしくは欠陥領域外(以下、各対象領域という)における割合ということができる。特徴画素の各対象領域における割合は、当該対象領域に含まれる特徴画素の数量(数、面積等)そのものであってもよいし、当該対象領域内における特徴に対応しない画素(以下、非特徴画素という)の合計数量に対する特徴画素の合計数量の割合、あるいは、当該対象領域内における全画素の数量に対する特徴画素または非特徴画素の割合であってもよい。
2値化画像において、特徴領域に白色の画素が対応する場合、非特徴領域は黒色の画素が対応する。この場合、欠陥領域内の画素の色の濃度は、欠陥領域内の白色の画素数であり、欠陥領域外の画素の色の濃度は、欠陥領域外の白色の画素数として、両濃度の差をスコアを算出することができる。
それぞれの画素の色に対応する濃度値(例えば、白色に対して1、黒色に対して0)が予め設定されている場合、各対象領域内の画素についての濃度値の合計値を第1の画像スコアとして算出してもよい。
上述のとおり、計測結果画像は、2値化画像に含まれる第1特徴領域から、第2特徴領域を抽出した画像である。したがって、欠陥領域内で適切に第2特徴領域が抽出される場合(すなわち欠陥に対する見逃しが起きない場合)には、欠陥領域内の濃度は大きくなる。他方、欠陥領域外で第2特徴領域が抽出されない場合(すなわち見過ぎが起きない場合)には、欠陥領域外の濃度は小さくなる。つまり、判定用パラメータが最も適切に設定された場合には、欠陥領域内の濃度と欠陥領域外の濃度の差(スコア)が最大になる。よって、設定部166は、スコアを算出し比較することで、適切な判定用パラメータを探索することができる。
そのため、設定部166は、S203とS204の処理を、判定用パラメータを変更しながら(S215)、終了条件を満たす(S205)まで繰り返し実行する。終了条件は、例えば取りうるすべての判定閾値についてスコアを算出した場合や、スコアがある値に収束した場合等である。また、終了条件は、本処理フローを開始してからの経過時間、あるいは、S203とS204の処理のトライアル数の閾値として設定されていてもよい。
例えば設定部166は、2値化レベルと判定項目を固定して、判定閾値を種々に変更してS203・S204の処理を繰り返したのち、次の判定項目を設定し、判定閾値を種々に変更してS203・S204の処理を繰り返してもよい。また、あるいはS203・S204の処理を繰り返すごとに、2値化レベル・判定項目・判定閾値のすべてを変更してもよい。
設定部166は終了条件を満たしたと判定した場合(S205:YES)、スコアが最大となる判定用パラメータを選択し、判定用パラメータを選択した判定用パラメータに更新する(S206)。なお、必ずしも、取りうるすべての判定用パラメータのなかからスコアを最大にする判定用パラメータが選択される必要はない。例えば、所定の経過時間内あるいは所定のトライアル回数内に算出されたスコアのなかから最大のスコアがtとそのスコアに対応する判定用パラメータが選択されてもよい。すなわち、本処理フローの開始時に設定された判定用パラメータより相対的に大きなスコアが得られる判定用パラメータが選択される構成であればよい。ここで、スコアが最大となったときの判定用パラメータの判定項目が、面積、外接矩形の幅及び/又は高さ、周囲長、縦横比、円形度である場合には、スコアが最大となったときの判定閾値は、下限値として用いられることが好ましい。また、スコアが最大となったときの判定用パラメータの判定項目が円形度である場合には、スコアが最大となったときの判定閾値は、上限値として用いられることが好ましい。また、一の画像に対し複数の欠陥領域が特定されている場合であって、かつ、欠陥領域毎に領域の内部と外部との画像スコアの差が最大になるように判定閾値を算出した場合には、算出された複数の判定閾値のうちの最大値と最小値とを、判定項目の種別に応じて、判定閾値の上限値または下限値としてよい。
図9は複数の入力画像に基づいて判定用パラメータを自動設定する際の設定部166の処理フローの一例である。図9を用いて、複数の入力画像を用いる場合の処理について、図7との違いを中心に説明する。
この場合、設定部166は、S201において、複数の入力画像すべてについて、欠陥領域の指定を受け付ける。
また、設定部166は、S203において、複数の入力画像それぞれの計測結果画像を判定部162から取得する。そして、計測結果画像ごとに欠陥領域内の濃度と、欠陥領域外の濃度との差を算出し、入力画像ごとに算出した差の合計値をスコアとして算出する(S304)。その他の処理は、図7のフローと同様である。複数の入力画像を用いて判定用パラメータの設定を行うことで、欠陥検出の精度をより向上させることができる。
このように、全自動モードでは、ユーザは欠陥として検出したい領域を特定するだけで、適切な判定用パラメータを自動設定することができる。
<4.ユーザインターフェイス画面例>
次に、図10A乃至10Dを参照して本実施の形態に係る欠陥検査装置100が提供し、表示部に出力されるユーザインターフェイス画面のいくつかの例を説明する。
図10Aは、判定用パラメータを設定する際に、欠陥検査装置100が提供する手動設定画面700の一例を示す模式図である。手動設定画面700は、2値化レベル設定部710と、判定条件設定部720と、計測結果画像表示部730とを有している。手動設定画面700は主に手動モードで用いられる。
2値化レベル設定部710は、2値化レベルコントローラ711と、2値化レベル表示欄712とを含んでいる。ユーザは、2値化レベルコントローラ711から、2値化レベルの閾値と上限とを設定することができる。設定した2値化レベルは2値化レベル表示欄712に表示される。
判定条件設定部720は、判定項目選択欄721と、判定閾値設定欄722とを含んでいる。ユーザは判定項目選択欄721から例えばプルダウン等によって判定条件として指定したい判定項目を選択することができる。なお図10Aの例では、設定できる判定項目は3種類だがこれに限定されず、手動設定画面700は任意の数の判定項目を設定可能なインターフェイスを有してもよい。また、ユーザは対応する判定項目の判定閾値設定欄722に判定閾値の上限と下限を設定することで、判定条件を設定することができる。
また、計測結果画像表示部730には、設定された判定用パラメータに基づいて判定部162によって生成された計測結果画像が表示される。
図10B及び図10Cは、判定用パラメータを設定する際に、欠陥検査装置100が提供する半自動設定画面800の一例を示す模式図である。第3特徴領域選択部830と、上述の2値化レベル設定部710と、判定条件設定部720と、を有している。半自動設定画面800は主に半自動モードで用いられる。なお、半自動設定画面800は、検査画像についての欠陥領域が予め特定されている場合には、全自動モードにおける欠陥領域の特定操作で使用されてもよい。
2値化レベル設定部710と、判定条件設定部720との機能は上述のとおりであるが、半自動設定画面800においては、仮設定された判定用パラメータがあらかじめ設定されて表示されている。
第3特徴領域選択部830には、仮設定された判定用パラメータに基づいて、判定部162によって生成された設定用画像が表示されている。この設定用画像においては第2特徴領域が枠831乃至833に囲まれて強調表示されている(図10B)。ユーザは、強調表示されている第2特徴領域のうち、第3特徴領域として指定するものを選択することができる。図10Cは図10Bにおいて枠833で囲まれていた第2特徴領域が第3特徴領域として選択された場合の画面表示の一例を示している。第3特徴領域が選択されると、判定用パラメータが更新され、2値化レベル設定部710や、判定条件設定部720に表示されている判定用パラメータが変化する。図10Cの例では、判定項目が縦横比の下限値が0(図10B)から0.8(図10C)に変化している。なお、このとき判定閾値や2値化レベルだけでなく、例えば選択されていた判定条件設定部720において選択されていた判定項目が変化してもよい。
図10Dは、本実施形態に係る欠陥検査装置100が提供する自動設定画面900の一例を示す模式図である。図10Dの例では、自動設定画面900は、図形登録領域901と、座標入力領域902と表示領域903を有している。
図形登録領域901は、図形ボタン911を含んでいる。ユーザは、図形ボタン911から、所望の形状の図形のボタンを選択することで、欠陥領域を特定する図形を選択することができる。図10Dの例では、図形ボタン911として、正方形や長方形、円形、五角形、円弧形、同心円が表示されているがこれに限定されず、任意の図形を設定可能である。また、図形を選択する方法はボタンに限定されず、プルダウンやチェックボックス、ラジオボタン等でもよい。
座標入力領域902は、欠陥領域の座標の入力を受け付ける。図10Dの例では、ユーザは座標入力領域902において、欠陥領域の左上と右上との座標を入力することで、欠陥領域GTを指定することができる。ユーザが指定した欠陥領域GTは、表示領域903に表示される。
なお、欠陥領域の指定方法は、図10Dの例に限定されない。例えば、欠陥領域は、表示領域903に表示された画像に直接描画することによって、入力される構成でもよい。
§3 動作例
次に、本実施の形態に係る欠陥検査システム1における動作例について説明する。本実施の形態に係る欠陥検査システム1においては、画像計測処理に係る判定用パラメータを設定するための準備工程と、現実に対象のワークを撮像して画像計測処理を実行する運用工程とが存在する。なお、準備工程の処理シーケンスと、運用工程の処理シーケンスとは、前述の入力部を用いて、ユーザが選択することができる。また、運用工程の処理シーケンスにおいて、検査結果(例えば、欠陥の有無、欠陥に対応する領域の大きさ、当該領域の位置などの情報をいう。)の内容に応じて、設定された前処理フィルタを更新する処理を実行するようにしてもよい。例えば、運用工程の処理シーケンスにおいて、未検出の欠陥が所定回数生じた場合に、前述の判定用パラメータを、いずれかの設定モードで更新するようにしてもよい。
図11は、本実施の形態に係る欠陥検査システム1における準備工程の処理手順を示すフローチャートである。図12は、本実施の形態に係る欠陥検査システム1における運用工程の処理手順を示すフローチャートである。図11および図12に示す処理手順の各ステップは、典型的には、欠陥検査装置100のプロセッサ110が画像処理プログラム132などを実行することで実現される。
図11を参照して、準備工程において、欠陥検査装置100は、画像計測処理の基準となるワークを所定位置に配置した状態でカメラ102を用いて撮像して得られる入力画像を取得する(ステップS401)。このとき、カメラ102がワークを撮像することで生成される入力画像(画像データ)は、欠陥検査装置100へ転送されて、欠陥検査装置100のメインメモリ112に展開される。
続いて、欠陥検査装置100は、設定モードの選択を受け付ける(S402)。設定モードが手動モードである場合(CASE:手動モード)、欠陥検査装置100は手動設定画面700を表示して、ユーザから判定用パラメータの設定を受け付ける(S411)。
設定モードが半自動モードである場合(CASE:半自動モード)、欠陥検査装置100は、まず判定用パラメータを仮設定する(S421)。次に、仮設定された判定用パラメータを用いて設定用画像を生成し、設定用画像に表示された第2特徴領域について、ユーザから第3特徴領域の特定を受付ける(S422)。特定された第3特徴領域に基づいて、欠陥検査装置100は判定用パラメータを更新する(S423)。
さらに設定モードが全自動モードである場合(CASE:全自動モード)、欠陥検査装置100は自動設定画面900を表示して、ユーザから欠陥領域の特定を受け付ける(S431)。そして特定された欠陥領域に基づいて、欠陥検査装置100は判定用パラメータを設定する(S432)。
さらに、欠陥検査装置100は、設定した判定用パラメータを格納する(S403)。そして、準備工程での処理は終了する。
図12を参照して、運用工程において、欠陥検査装置100は、画像計測処理の基準となるワークがカメラ102の撮像視野6に到着すると、カメラ102を用いて当該ワークを撮像して得られる入力画像を取得する(S501)。このとき、カメラ102がワークを撮像することで生成される入力画像(画像データ)は、欠陥検査装置100へ転送されて、欠陥検査装置100のメインメモリ112に展開される。
続いて、欠陥検査装置100は、取得した入力画像に対して前処理を実行する(S502)。さらに、欠陥検査装置100は、事前学習されたCNNを用いて、前処理後の入力画像から1または複数の特徴の種類(クラス)毎に特徴を抽出する処理を実行する。欠陥検査装置100は、この特徴を抽出する処理によって、1または複数のクラス毎の特徴抽出画像を生成する(S503)。
続いて、欠陥検査装置100は、後処理を実行して、計測結果画像を生成する(S504)。
最終的に、欠陥検査装置100は、生成した計測結果画像を出力する(S505)。計測結果画像の出力先としては、ディスプレイ104などであってもよいし、上位ネットワーク8を介して接続されている、PLC10および/またはデータベース装置12であってもよい。そして、運用工程の処理は終了する。なお、欠陥検査装置100は、計測結果画像に代えて、または、計測結果画像とともに、検査対象に欠陥が含まれているか否かの情報を少なくとも含む検査結果を出力してもよい。検査結果は、例えば、生産ラインにおいて検査対象の仕分けを行う所定の動作機械に送付される。これによれば、動作機械は、検査結果に応じた検査対象の自動仕分けを実行することができる。
なお、図12に示す運用工程の処理手順が開始される条件は、ワークの到着を検出するタイミングセンサからのトリガ信号、上位装置からの実行開始指令、ユーザからの指示のいずれであってもよい。
<H.利点>
本実施の形態に係る欠陥検査装置100は、事前学習された識別器が出力する結果を用いて欠陥の有無を検査する際に、欠陥の有無を判別するための判定用パラメータを適切かつ簡易に設定することができる。このような欠陥検査装置100では、判定用パラメータが適切に設定できるようになることで、誤判定が減少する。特にノイズを減らすことができるので、欠陥ではないのに欠陥と認識してしまう誤検出が減少する。さらに、判定用パラメータを簡易に設定できるので、欠陥検査装置の設定工数、立上げ工数が削減できる。
また、本実施の形態に係る欠陥検査装置100は、事前学習された複数のクラスを有するCNNエンジンが出力した特徴抽出画像に含まれるノイズを抽出すべき欠陥と切り分けるための判定用パラメータの設定を容易にする。具体的には本実施形態にかかる欠陥検査装置100は、少なくともプリセットされた閾値をユーザが調整する機能(半自動モード)を有している。これによって、ユーザはプリセットされた閾値が適切でない場合にのみ閾値を調整すればよいため、判定用パラメータ設定の負荷を低減させることができる。
さらに、本実施の形態に係る欠陥検査装置100は、判定用パラメータを設定するためのモードとして、上述の半自動モードの他、手動モード及び全自動モードを有している。例えば判定用パラメータの設定に全自動モードを用いることで、作業者は欠陥領域を指定するだけで判定用パラメータを適切に設定することができる。このように本実施形態に係る欠陥検査装置が複数の設定モードを有することで、作業者の習熟度に応じて、適切な設定モードを選択することができる。
以上、本発明の実施の形態を詳細に説明してきたが、上述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
検査対象物の検査画像を所得する取得部(114)と、
前記検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成する画像生成部(156)と、
前記検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、前記特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定する検査部(170)と、
前記欠陥に対応する領域が特定された前記2値化画像である設定用画像を用いて、前記設定用画像の画素の色の濃度に基づく画像スコアを算出し、前記領域の内部の画像スコアと前記領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新する、設定部(166)と、
を備える、欠陥検査装置(100)。
(付記2)
前記2値化画像は白色の画素と黒色の画素とから構成され、
前記白色の画素と前記黒色の画素とのそれぞれに濃度値が対応付けられており
前記設定部(166)は、前記領域内に含まれる複数の画素について、色の濃度値の合計値を第1の画像スコアとして算出し、前記領域外に含まれる複数の画素について、色の濃度値の合計値を第2の画像スコアとして算出し、第1の画像スコアと第2の画像スコアとの差が最大となるように判定用パラメータを更新する、
付記1に記載の欠陥検査装置(100)。
(付記3)
前記検査部(170)は、更新した前記判定用パラメータと、前記2値化画像と、に基づいて欠陥の有無を判定し、判定結果を出力する、
付記1または2に記載の欠陥検査装置(100)。
(付記4)
前記検査部(170)は、前記判定結果として、少なくとも、更新した前記判定用パラメータに基づいて欠陥を特定した前記2値化画像を出力する、
付記3に記載の欠陥検査装置(100)。
(付記5)
前記判定用パラメータは、前記2値化画像を生成するための2値化レベルを含む、
付記1から4のいずれか一項に記載の欠陥検査装置(100)。
(付記6)
前記判定用パラメータは、前記欠陥を判定するための1以上の判定項目と、前記判定項目の各々に対して設定される判定閾値とを含む、
付記1から5のいずれか一項に記載の欠陥検査装置(100)。
(付記7)
前記欠陥を判定するための1以上の判定項目は、前記2値化画像における同色の画素の塊で表現される所定の領域の面積、外接矩形の幅及び/又は高さ、周囲長、縦横比、円形度の少なくとも1つを含み、前記判定閾値は、これらの判定項目の各々に対して設定される上限値及び/又は下限値を含む、
付記6に記載の欠陥検査装置(100)。
(付記8)
前記判定項目と前記判定閾値とは、前記画像生成部又は前記検査部の学習時に用いられる学習用の画像データに含まれる欠陥の特徴に基づいて決定される、
付記6又は7に記載の欠陥検査装置(100)。
(付記9)
前記領域の指定を受け付ける表示部(104)をさらに備え、
前記検査部(170)は、予め定められた前記判定用パラメータに基づいて、欠陥と判定される領域を特定するとともに、特定した領域を前記検査画像とともに前記表示部(104)に対して出力し、
前記設定部(166)は、前記表示部を介して受け付けた前記領域の指定に基づいて前記設定用画像を生成する、
付記1から8のいずれか一項に記載の欠陥検査装置(100)。
(付記10)
前記検査部(170)は、
前記2値化画像において、欠陥を判定するための1以上の特徴量の各々に対して設定された判定閾値に基づいて、前記2値化画像のうち、欠陥と判定される領域を特定し、特定した領域をユーザに提示し、
前記設定部(166)は、
前記ユーザから、前記検査部(170)で欠陥と判定された領域であるが、欠陥として判定されるべきでない領域、及び/又は、前記検査部で欠陥と判定されなかった領域であるが、欠陥として判定されるべきである領域の指定を受け付け、当該指定に基づいて、前記判定閾値を更新する
請求項1から9のいずれか一項に記載の欠陥検査装置(100)。
(付記11)
前記判定用パラメータは、前記欠陥を判定するための1以上の判定項目と、前記判定項 目の各々に対して設定される判定閾値とを含み、
前記欠陥を判定するための1以上の判定項目と前記判定閾値は、前記ユーザの指定に基づいて決定される、付記10に記載の欠陥検査装置(100)。
(付記12)
コンピュータ(100)が、
検査対象物の検査画像を所得するステップと、
前記検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成するステップと、
前記検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、前記特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定するステップと、
前記欠陥に対応する領域が特定された前記2値化画像である設定用画像を用いて、前記設定用画像の画素の色の濃度に基づく画像スコアを算出し、前記領域の内部の画像スコアと前記領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新するステップと
を実行する欠陥検査方法。
(付記13)
コンピュータ(100)を、
検査対象物の検査画像を所得する手段、
前記検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成する手段、
前記検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、前記特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定する手段、及び
前記欠陥に対応する領域が特定された前記2値化画像である設定用画像を用いて、前記設定用画像の画素の色の濃度に基づく画像スコアを算出し、前記領域の内部の画像スコアと前記領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新する手段、
として機能させるプログラム。
1 欠陥検査システム
2 ベルトコンベア
4 ワーク
6 撮像視野
8 上位ネットワーク
10 欠陥検査装置
12 データベース装置
100 欠陥検査装置
102 カメラ
104 ディスプレイ
106 キーボード
108 マウス
110 プロセッサ
112 メインメモリ
114 カメラインターフェイス
116 入力インターフェイス
118 表示インターフェイス
120 通信インターフェイス
122 内部バス
130 ストレージ
132 画像処理プログラム
136 判定用パラメータ
138 入力画像
140 計測結果
152 入力バッファ
154 前処理部
156 エンジン
158 選択部
160 画像演算部
162 判定部
166 設定部
170 後処理部
300 自動設定画面
700 手動設定画面
710 値化レベル設定部
711 値化レベルコントローラ
712 値化レベル表示欄
720 判定条件設定部
721 判定項目選択欄
722 判定閾値設定欄
730 計測結果画像表示部
800 半自動設定画面
830 第3特徴領域選択部
900 自動設定画面
901 図形登録領域
902 座標入力領域
903 表示領域
911 図形ボタン

Claims (13)

  1. 検査対象物の検査画像を取得する取得部と、
    前記検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成する画像生成部と、
    前記検査対象物における欠陥有無を判定するための1以上の判定用パラメータと、前記特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定する検査部と、
    前記欠陥に対応する領域が特定された前記2値化画像である設定用画像を用いて、前記設定用画像の画素の色の濃度に基づく画像スコアを算出し、前記領域の内部の画像スコアと前記領域の外部の画像スコアとの差が相対的に大きくなるように前記判定用パラメータを更新する、設定部と、
    を備える、欠陥検査装置。
  2. 前記2値化画像は白色の画素と黒色の画素とから構成され、
    前記白色の画素と前記黒色の画素とのそれぞれに濃度値が対応付けられており、
    前記設定部は、前記領域内に含まれる複数の画素について、前記濃度値の合計値を第1の画像スコアとして算出し、前記領域外の含まれる複数の画素について、前記濃度値の合計値を第2の画像スコアとして算出し、第1の画像スコアと第2の画像スコアとの差が最大となるように判定用パラメータを更新する、
    請求項1に記載の欠陥検査装置。
  3. 前記検査部は、更新した前記判定用パラメータと、前記2値化画像と、に基づいて欠陥の有無を判定し、判定結果を出力する、
    請求項1または2に記載の欠陥検査装置。
  4. 前記検査部は、前記判定結果として、少なくとも、更新した前記判定用パラメータに基づいて欠陥を特定した前記2値化画像を出力する、
    請求項3に記載の欠陥検査装置。
  5. 前記判定用パラメータは、前記2値化画像を生成するための2値化レベルを含む、
    請求項1から4のいずれか一項に記載の欠陥検査装置。
  6. 前記判定用パラメータは、前記欠陥を判定するための1以上の判定項目と、前記判定項目の各々に対して設定される判定閾値とを含む、
    請求項1から5のいずれか一項に記載の欠陥検査装置。
  7. 前記欠陥を判定するための1以上の判定項目は、前記2値化画像における同色の画素の塊で表現される所定の領域の面積、外接矩形の幅及び/又は高さ、周囲長、縦横比、円形度の少なくとも1つを含み、前記判定閾値は、これらの判定項目の各々に対して設定される上限値及び/又は下限値を含む、
    請求項6に記載の欠陥検査装置。
  8. 前記判定項目と前記判定閾値とは、前記画像生成部又は前記検査部の学習時に用いられる学習用の画像データに含まれる欠陥の特徴に基づいて決定される、
    請求項6又は7に記載の欠陥検査装置。
  9. 前記領域の指定を受け付ける表示部をさらに備え、
    前記検査部は、予め定められた前記判定用パラメータに基づいて、欠陥と判定される領域を特定するとともに、特定した領域を前記検査画像とともに前記表示部に対して出力し、
    前記設定部は、前記表示部を介して受け付けた前記領域の指定に基づいて前記設定用画像を生成する、
    請求項1から7のいずれか一項に記載の欠陥検査装置。
  10. 前記検査部は、
    前記2値化画像において、欠陥を判定するための1以上の特徴量の各々に対して設定された判定閾値に基づいて、前記2値化画像のうち、欠陥と判定される領域を特定し、特定した領域をユーザに提示し、
    前記設定部は、
    前記ユーザから、前記検査部で欠陥と判定された領域であるが、欠陥として判定されるべきでない領域、及び/又は、前記検査部で欠陥と判定されなかった領域であるが、欠陥として判定されるべきである領域の指定を受け付け、当該指定に基づいて、前記判定閾値を更新する
    請求項1から9のいずれか一項に記載の欠陥検査装置。
  11. 前記判定用パラメータは、前記欠陥を判定するための1以上の判定項目と、前記判定項目の各々に対して設定される判定閾値とを含み、
    前記欠陥を判定するための1以上の判定項目と前記判定閾値は、前記ユーザの指定に基づいて決定される、請求項10に記載の欠陥検査装置。
  12. コンピュータが、
    検査対象物の検査画像を取得するステップと、
    前記検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成するステップと、
    前記検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、前記特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定するステップと、
    前記欠陥に対応する領域が特定された前記2値化画像である設定用画像を用いて、前記設定用画像の画素の色の濃度に基づく画像スコアを算出し、前記領域の内部の画像スコアと前記領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新するステップと
    を実行する欠陥検査方法。
  13. コンピュータを、
    検査対象物の検査画像を取得する手段、
    前記検査画像に対して、学習用の画像データを用いて1以上の特徴を抽出するように事前学習した学習済みの識別器を適用することで、1以上の特徴抽出画像を生成する手段、
    前記検査対象物における検出対象部位の有無を判定するための1以上の判定用パラメータと、前記特徴抽出画像に基づいて生成される2値化画像と、に基づいて欠陥に対応する領域を特定する手段、及び
    前記欠陥に対応する領域が特定された前記2値化画像である設定用画像を用いて、前記設定用画像の画素の色の濃度に基づく画像スコアを算出し、前記領域の内部の画像スコアと前記領域の外部の画像スコアとの差が相対的に大きくなるように判定用パラメータを更新する手段、
    として機能させるプログラム。
JP2018046534A 2018-03-14 2018-03-14 欠陥検査装置、欠陥検査方法、及びそのプログラム Active JP7015001B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018046534A JP7015001B2 (ja) 2018-03-14 2018-03-14 欠陥検査装置、欠陥検査方法、及びそのプログラム
CN201910030739.XA CN110274908B (zh) 2018-03-14 2019-01-14 缺陷检查装置、缺陷检查方法以及计算机可读记录介质
EP19151773.9A EP3540688A1 (en) 2018-03-14 2019-01-15 Defect inspection device, defect inspection method, and program
US16/249,917 US11301978B2 (en) 2018-03-14 2019-01-17 Defect inspection device, defect inspection method, and computer readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018046534A JP7015001B2 (ja) 2018-03-14 2018-03-14 欠陥検査装置、欠陥検査方法、及びそのプログラム

Publications (2)

Publication Number Publication Date
JP2019159889A JP2019159889A (ja) 2019-09-19
JP7015001B2 true JP7015001B2 (ja) 2022-02-02

Family

ID=65033383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018046534A Active JP7015001B2 (ja) 2018-03-14 2018-03-14 欠陥検査装置、欠陥検査方法、及びそのプログラム

Country Status (4)

Country Link
US (1) US11301978B2 (ja)
EP (1) EP3540688A1 (ja)
JP (1) JP7015001B2 (ja)
CN (1) CN110274908B (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
TWI653605B (zh) * 2017-12-25 2019-03-11 由田新技股份有限公司 利用深度學習的自動光學檢測方法、設備、電腦程式、電腦可讀取之記錄媒體及其深度學習系統
JP6977686B2 (ja) * 2018-08-06 2021-12-08 オムロン株式会社 制御システムおよび制御装置
US11861484B2 (en) * 2018-09-28 2024-01-02 Qualcomm Incorporated Neural processing unit (NPU) direct memory access (NDMA) hardware pre-processing and post-processing
JP7311310B2 (ja) * 2018-10-18 2023-07-19 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 情報処理装置、情報処理方法及びプログラム
JP7206892B2 (ja) * 2018-12-20 2023-01-18 富士通株式会社 画像検査装置、画像検査のための学習方法および画像検査プログラム
JP6869490B2 (ja) * 2018-12-28 2021-05-12 オムロン株式会社 欠陥検査装置、欠陥検査方法、及びそのプログラム
JP7271305B2 (ja) * 2019-05-16 2023-05-11 株式会社キーエンス 画像検査装置及び画像検査装置の設定方法
CN111008964B (zh) * 2019-11-27 2023-06-23 易启科技(吉林省)有限公司 一种部件表面缺陷检测方法
JP7365999B2 (ja) * 2019-12-24 2023-10-20 財團法人工業技術研究院 ニューラルネットワーク演算装置および方法
JP7423368B2 (ja) * 2020-03-23 2024-01-29 イビデン株式会社 不良検出装置及び不良検出方法
JP7485028B2 (ja) * 2020-06-03 2024-05-16 日本電信電話株式会社 学習装置、方法及びプログラム
CN111784666A (zh) * 2020-06-30 2020-10-16 深兰科技(达州)有限公司 基于学习记忆的led灯珠缺陷检测方法
CN111768386B (zh) * 2020-06-30 2024-02-20 北京百度网讯科技有限公司 产品缺陷检测方法、装置、电子设备和存储介质
CN112381898B (zh) * 2020-12-07 2024-03-01 苏州律点信息科技有限公司 一种影像特征的提取方法、装置、存储介质及电子设备
US20220276207A1 (en) * 2021-03-01 2022-09-01 Ecole De Technologie Superieure Ultrasonic testing for defect detection
CN117043814A (zh) * 2021-03-22 2023-11-10 松下知识产权经营株式会社 检查辅助系统、检查辅助方法和程序
JP2022164146A (ja) * 2021-04-16 2022-10-27 株式会社キーエンス 画像検査装置、画像処理方法、画像処理プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器
JP2022164145A (ja) * 2021-04-16 2022-10-27 株式会社キーエンス 画像検査装置、画像検査装置用制御ユニット、画像検査方法、画像検査プログラム及びコンピュータで読取可能な記録媒体並びに記録した機器
CN113658136B (zh) * 2021-08-17 2023-10-13 燕山大学 一种基于深度学习的传送带缺陷检测方法
CN113706506B (zh) * 2021-08-27 2023-07-28 创新奇智(重庆)科技有限公司 一种装配状态检测的方法、装置、电子设备及存储介质
CN113537517B (zh) * 2021-09-16 2022-01-07 深圳市信润富联数字科技有限公司 缺陷检测模型训练方法、装置、设备及存储介质
JP2023082567A (ja) * 2021-12-02 2023-06-14 株式会社日立製作所 システムおよびプログラム
CN114418899B (zh) * 2022-03-28 2022-08-16 深圳市嘉年印务有限公司 一种自彩印的自适应修复方法、系统及可读存储介质
CN114764790B (zh) * 2022-03-31 2023-05-12 河北鹰眼智能科技有限公司 一种基于霍夫圆检测的齿轮断齿检测方法
CN114454635B (zh) * 2022-04-13 2022-06-17 中体彩印务技术有限公司 一种防伪印刷品制备方法及其系统
CN114612469B (zh) * 2022-05-09 2022-08-12 武汉中导光电设备有限公司 产品缺陷检测方法、装置、设备及可读存储介质
CN114897850B (zh) * 2022-05-20 2024-08-06 湖北工业大学 检测带钢表面缺陷的有监督Dropout方法及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006090921A (ja) 2004-09-27 2006-04-06 Sharp Corp 外観検査装置、閾値決定方法、外観検査方法、およびコンピュータを外観検査装置として機能させるためのプログラム
JP2006293528A (ja) 2005-04-07 2006-10-26 Sharp Corp 学習用画像選択方法および装置、画像処理アルゴリズム生成方法および装置、プログラムならびに記録媒体
JP2008175588A (ja) 2007-01-16 2008-07-31 Kagawa Univ 外観検査装置
JP2018005639A (ja) 2016-07-04 2018-01-11 タカノ株式会社 画像分類装置、画像検査装置、及び、プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0690144B2 (ja) * 1989-01-14 1994-11-14 松下電工株式会社 画像処理方法
JPH09179985A (ja) * 1995-12-25 1997-07-11 Ricoh Co Ltd 画像欠陥検査方法及び画像欠陥分類方法
US7508973B2 (en) * 2003-03-28 2009-03-24 Hitachi High-Technologies Corporation Method of inspecting defects
WO2011114449A1 (ja) * 2010-03-17 2011-09-22 株式会社島津製作所 Tftアレイ検査方法およびtftアレイ検査装置
JPWO2011155123A1 (ja) * 2010-06-07 2013-08-01 株式会社日立ハイテクノロジーズ 観察画像の分類基準の最適化方法、および画像分類装置
JP5608575B2 (ja) * 2011-01-19 2014-10-15 株式会社日立ハイテクノロジーズ 画像分類方法および画像分類装置
JP2017049974A (ja) 2015-09-04 2017-03-09 キヤノン株式会社 識別器生成装置、良否判定方法、およびプログラム
JP6615835B2 (ja) * 2017-06-26 2019-12-04 矢崎総業株式会社 画像検査における二値化処理プログラム及び二値化処理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006090921A (ja) 2004-09-27 2006-04-06 Sharp Corp 外観検査装置、閾値決定方法、外観検査方法、およびコンピュータを外観検査装置として機能させるためのプログラム
JP2006293528A (ja) 2005-04-07 2006-10-26 Sharp Corp 学習用画像選択方法および装置、画像処理アルゴリズム生成方法および装置、プログラムならびに記録媒体
JP2008175588A (ja) 2007-01-16 2008-07-31 Kagawa Univ 外観検査装置
JP2018005639A (ja) 2016-07-04 2018-01-11 タカノ株式会社 画像分類装置、画像検査装置、及び、プログラム

Also Published As

Publication number Publication date
CN110274908A (zh) 2019-09-24
US20190287235A1 (en) 2019-09-19
EP3540688A1 (en) 2019-09-18
CN110274908B (zh) 2022-01-11
JP2019159889A (ja) 2019-09-19
US11301978B2 (en) 2022-04-12

Similar Documents

Publication Publication Date Title
JP7015001B2 (ja) 欠陥検査装置、欠陥検査方法、及びそのプログラム
JP6869490B2 (ja) 欠陥検査装置、欠陥検査方法、及びそのプログラム
JP7004145B2 (ja) 欠陥検査装置、欠陥検査方法、及びそのプログラム
US10824906B2 (en) Image processing device, non-transitory computer readable storage medium, and image processing system
JP5546317B2 (ja) 外観検査装置、外観検査用識別器の生成装置及び外観検査用識別器生成方法ならびに外観検査用識別器生成用コンピュータプログラム
US9075026B2 (en) Defect inspection device and defect inspection method
CN112088387B (zh) 检测成像物品缺陷的系统和方法
US10621717B2 (en) System and method for image-based target object inspection
JP2018005640A (ja) 分類器生成装置、画像検査装置、及び、プログラム
JP2018005639A (ja) 画像分類装置、画像検査装置、及び、プログラム
JP2017049974A (ja) 識別器生成装置、良否判定方法、およびプログラム
CN111667455A (zh) 一种刷具多种缺陷的ai检测方法
CN110596120A (zh) 玻璃边界缺陷检测方法、装置、终端及存储介质
CN106355579A (zh) 烟条表面褶皱的缺陷检测方法
TWI743837B (zh) 訓練資料增量方法、電子裝置與電腦可讀取記錄媒體
CN114226262A (zh) 瑕疵检测方法、瑕疵分类方法及其系统
Sulaiman et al. Automatic grading system for oil palm fruit ripeness
CN116645351A (zh) 一种复杂场景的缺陷在线检测方法及系统
CN115861259A (zh) 一种基于模板匹配的引线框架表面缺陷检测方法及装置
US20220157050A1 (en) Image recognition device, image recognition system, image recognition method, and non-transitry computer-readable recording medium
CN112115824A (zh) 果蔬检测方法、装置、电子设备以及计算机可读介质
JP2002140695A (ja) 検査方法およびその装置
US20230077332A1 (en) Defect Inspection System and Defect Inspection Method
JP2024101892A (ja) 欠陥検査方法及び欠陥検査装置
JPH0676069A (ja) 表面欠陥検出装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210524

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220104