JP2022114331A - 検査システム、検査方法及び検査プログラム - Google Patents

検査システム、検査方法及び検査プログラム Download PDF

Info

Publication number
JP2022114331A
JP2022114331A JP2021010592A JP2021010592A JP2022114331A JP 2022114331 A JP2022114331 A JP 2022114331A JP 2021010592 A JP2021010592 A JP 2021010592A JP 2021010592 A JP2021010592 A JP 2021010592A JP 2022114331 A JP2022114331 A JP 2022114331A
Authority
JP
Japan
Prior art keywords
image
unit
reproduced
inspection
mask
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
JP2021010592A
Other languages
English (en)
Inventor
洋一 木川
Yoichi Kikawa
日飛 陳
Yatfei Chan
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.)
Nitto Denko Corp
Original Assignee
Nitto Denko 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 Nitto Denko Corp filed Critical Nitto Denko Corp
Priority to JP2021010592A priority Critical patent/JP2022114331A/ja
Priority to US17/579,971 priority patent/US20220236192A1/en
Priority to EP22152408.5A priority patent/EP4033447A1/en
Priority to CN202210073166.0A priority patent/CN114894801A/zh
Publication of JP2022114331A publication Critical patent/JP2022114331A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/8806Specially adapted optical and illumination features
    • 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/8803Visual 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • 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/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-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/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
    • G01N2021/95638Inspecting patterns on the surface of objects for PCB's
    • 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
    • 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/30141Printed circuit board [PCB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Pathology (AREA)
  • Immunology (AREA)
  • General Health & Medical Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Health & Medical Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Image Processing (AREA)

Abstract

【課題】 検査システムにおける検査員の作業負荷を低減させる。【解決手段】 検査システムは、検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像から、マスク前の第1画像が再現されるように学習された画像再現部と、新たな検査対象物を撮影した第2画像の一部をマスクすることで生成された第2マスク画像を、前記画像再現部に入力することで再現された再現画像と、前記第2画像とに基づいて、前記第2画像に欠陥が含まれるか否かを判定する判定部とを有する。【選択図】図1

Description

本発明は、検査システム、検査方法及び検査プログラムに関する。
従来より、プリント基板等の検査対象物を撮影し、基準画像と比較することで、検査対象物が良品であるか不良品であるかを検査する検査システムが知られている。
当該検査システムでは、例えば、不良品を良品としてしまうことがないように、欠陥候補を過剰に検出しておき、検出した欠陥候補の画像を、最終的に検査員が目視検査することで、欠陥の見逃し防止を実現している。
特開2013-098267号公報 特開2020-052474号公報
しかしながら、上記検査システムの場合、良品の範囲内での製造ばらつき等も、欠陥候補として検出されるため、検査員が目視検査すべき欠陥候補の画像が多くなり、検査員の作業負荷が高いという問題がある。
一つの側面では、検査システムにおける検査員の作業負荷を低減させることを目的としている。
一態様によれば、検査システムは、
検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像から、マスク前の第1画像が再現されるように学習された画像再現部と、
新たな検査対象物を撮影した第2画像の一部をマスクすることで生成された第2マスク画像を、前記画像再現部に入力することで再現された再現画像と、前記第2画像とに基づいて、前記第2画像に欠陥が含まれるか否かを判定する判定部とを有する。
検査システムにおける検査員の作業負荷を低減させることができる。
学習フェーズにおける検査システムのシステム構成の一例を示す図である。 学習装置のハードウェア構成の一例を示す図である。 学習装置の学習用データセット生成部による処理の具体例を示す図である。 学習装置の学習部による処理の具体例を示す第1の図である。 検査フェーズにおける検査システムのシステム構成の一例を示す図である。 推論装置のハードウェア構成の一例を示す図である。 推論装置の推論部による処理の具体例を示す第1の図である。 検査システムにおける学習処理の流れを示す第1のフローチャートである。 検査システムにおける検査処理の流れを示す第1のフローチャートである。 学習装置の学習部による処理の具体例を示す第2の図である。 推論装置の推論部による処理の具体例を示す第2の図である。 検査システムにおける学習処理の流れを示す第2のフローチャートである。 検査システムにおける検査処理の流れを示す第2のフローチャートである。
以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
[第1の実施形態]
<学習フェーズにおける検査システムのシステム構成>
はじめに、第1の実施形態に係る検査システムの、学習フェーズにおけるシステム構成について説明する。図1は、学習フェーズにおける検査システムのシステム構成の一例を示す図である。
図1に示すように、学習フェーズにおける検査システム100は、自動光学検査(AOI:Automated Optical Inspection)装置110と、学習装置120とを有する。
AOI装置110は、プリント基板130の自動外観検査を行う。AOI装置110は、プリント基板130をカメラでスキャンし、種々の検査項目を検査することで、欠陥候補を検出する。AOI装置110が検査する検査項目には、例えば、回路幅、回路間隔、ミッシングパッド/パッドなし、回路ショート等が含まれる。
AOI装置110により検出された欠陥候補を含む各領域の画像140は、学習装置120に送信されるとともに、検査ラインに送信される。検査ラインでは、検査員等の検査員111が、欠陥候補を含む各領域の画像140を目視検査する。なお、AOI装置110は、不良品を良品とすることがないように、欠陥候補を含む各領域の画像が過剰に検出されるように設定されているものとする。
検査員111は、各領域の画像140に欠陥が含まれているか否かを目視検査し、最終的に、プリント基板130が良品であるか不良品であるかを判断する。具体的には、欠陥候補を含む各領域の画像140のいずれにも欠陥が含まれていない場合には、プリント基板130は良品であると判断される。また、欠陥候補を含む各領域の画像140のいずれかに欠陥が含まれている場合には、プリント基板130は不良品であると判断される。
なお、検査員111は、目視検査の結果(各領域の画像140に欠陥が含まれているか否かを判断した結果)を、学習装置120に通知する。図1の例において、「目視検査結果:OK」とは、欠陥候補を含む領域の画像に欠陥が含まれていないと判断されたことを示し、「目視検査結果:NG」とは、欠陥候補を含む領域の画像に欠陥が含まれていると判断されたことを示している。
学習装置120には、学習プログラムがインストールされており、学習装置120は、当該プログラムを実行することで、学習用データセット生成部121、学習部122として機能する。
学習用データセット生成部121は、AOI装置110から送信された、欠陥候補を含む各領域の画像140の中から、検査員111による目視検査の結果、欠陥が含まれていないと判断された画像を抽出する。また、学習用データセット生成部121は、抽出した各領域の画像を、目視検査の結果と対応付けて、学習用データセットとして学習用データセット格納部123に格納する。
学習部122は、学習用データセット格納部123に格納された学習用データセットに含まれる各領域の画像を読み出す。また、学習部122は、各領域の画像の一部をマスクすることでマスク画像を生成し、生成したマスク画像から、マスク前の画像が再現されるようにモデルに対して学習処理を行う。
なお、学習部122によって学習処理が行われるモデルには、例えば、画像の白抜き領域を補完するモデル等が用いられる。当該モデルでは、一部の領域が白抜きされた画像が入力された場合に、白抜きされた領域の周辺領域に基づき白抜きされた領域を補完し、白抜きされる前の元の画像を再現する。以下、当該モデルを、「画像再現部」と称す。
<学習装置のハードウェア構成>
次に、学習装置120のハードウェア構成について説明する。図2は、学習装置のハードウェア構成の一例を示す図である。図2に示すように、学習装置120は、プロセッサ201、メモリ202、補助記憶装置203、I/F(Interface)装置204、通信装置205、ドライブ装置206を有する。なお、学習装置120の各ハードウェアは、バス207を介して相互に接続されている。
プロセッサ201は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の各種演算デバイスを有する。プロセッサ201は、各種プログラム(例えば、学習プログラム等)をメモリ202上に読み出して実行する。
メモリ202は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ201とメモリ202とは、いわゆるコンピュータを形成し、プロセッサ201が、メモリ202上に読み出した各種プログラムを実行することで、当該コンピュータは、例えば上記各機能(学習用データセット生成部121、学習部122)を実現する。
補助記憶装置203は、各種プログラムや、各種プログラムがプロセッサ201によって実行される際に用いられる各種データを格納する。例えば、学習用データセット格納部123は、補助記憶装置203において実現される。
I/F装置204は、外部装置の一例である操作装置210、表示装置211と、学習装置120とを接続する接続デバイスである。I/F装置204は、学習装置120に対する操作(例えば、検査員111による目視検査の結果を入力する操作、あるいは、学習装置120の管理者(不図示)が学習処理の指示を入力する操作等)を、操作装置210を介して受け付ける。また、I/F装置204は、学習装置120による学習処理の結果等を出力し、表示装置211を介して、学習装置120の管理者に表示する。
通信装置205は、他の装置(本実施形態では、AOI装置110)と通信するための通信デバイスである。
ドライブ装置206は記録媒体212をセットするためのデバイスである。ここでいう記録媒体212には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体212には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
なお、補助記憶装置203にインストールされる各種プログラムは、例えば、配布された記録媒体212がドライブ装置206にセットされ、該記録媒体212に記録された各種プログラムがドライブ装置206により読み出されることでインストールされる。あるいは、補助記憶装置203にインストールされる各種プログラムは、通信装置205を介してネットワークからダウンロードされることで、インストールされてもよい。
<学習装置の各部の詳細>
次に、学習装置120の各部(ここでは、学習用データセット生成部121、学習部122)の詳細について説明する。
(1)学習用データセット生成部による処理の具体例
図3は、学習装置の学習用データセット生成部による処理の具体例を示す図である。図3に示すように、AOI装置110から、例えば、欠陥候補を含む各領域の画像301~306が送信されると、学習用データセット生成部121では、「目視検査結果:OK」の画像を抽出する。
図3の例は、各領域の画像301~306のうち、画像301、302、304、305は、「目視検査結果:NG」の画像であることを示している。このため、学習用データセット生成部121では、各領域の画像303、306(「目視検査結果:OK」の画像)を抽出して、学習用データセット310を生成する。
図3に示すように、学習用データセット310は、情報の項目として、"ID"、"画像"、"目視検査結果"とを有する。
"ID"には、各領域の画像を識別する識別子が格納される。"画像"には、各領域の画像が格納される。"目視検査結果"には、各領域の画像の目視検査の結果が格納される。なお、学習用データセット310には、「目視検査結果:OK」の画像のみが格納されるため、"目視検査結果"には、「OK」のみが格納される。
このように、学習用データセット生成部121は、
・AOI装置110により検出された欠陥候補を含む各領域の画像、かつ、
・検査員111により、欠陥が含まれていないと判断された画像(「目視検査結果:OK」の画像)、
を用いて、学習用データセット310を生成する。
(2)学習部による処理の具体例
図4は、学習装置の学習部による処理の具体例を示す第1の図である。図4に示すように、学習部122は、マスク部410、画像再現部420、比較/変更部430を有する。
マスク部410は、学習用データセット格納部123に格納された学習用データセット310の"画像"に格納された各領域の画像(第1画像の一例。例えば、画像440)を読み出す。また、マスク部410は、読み出した画像440の一部をマスクすることで、マスク画像(第1マスク画像の一例。例えば、マスク画像440_1~440_n)を生成する。また、マスク部410は、生成したマスク画像440_1~440_nを画像再現部420に入力する。なお、マスク部410が、読み出した画像440に対してマスクする際のマスク位置はランダムであり、例えば、マスク部410は、9~16箇所程度の位置にマスクする。
画像再現部420は、マスク画像440_1~440_nに基づいて、マスク前の画像441_1~441_nを再現し、比較/変更部430に出力する。
比較/変更部430は、画像再現部420により再現された画像441_1~441_nと、マスク部410により読み出されたマスク前の画像440とを比較し、両者が一致するように、画像再現部420のモデルパラメータを更新する。
これにより、画像再現部420は、マスク部410により生成されたマスク画像440_1~440_nから、マスク前の画像440が再現されるように学習処理が行われることになる。このように、画像再現部420を用いる構成とすることで、学習装置120によれば、教師なしの学習処理を行うことができる。また、欠陥が含まれていない各領域の画像(「目視検査結果:OK」の画像)のみを用いて学習処理を行うことができる。これにより、様々な種類の欠陥が含まれている各領域の画像(「目視検査結果:NG」の画像)を収集して学習処理を行う場合と比較して、学習コストを低減させることができる。
なお、マスク前の画像が再現されるように学習処理が行われた学習済み画像再現部は、後述する検査フェーズにおいて用いられる。
<検査フェーズにおける検査システムのシステム構成>
次に、第1の実施形態に係る検査システムの、検査フェーズにおけるシステム構成について説明する。図5は、検査フェーズにおける検査システムのシステム構成の一例を示す図である。
図5に示すように、検査フェーズにおける検査システム500は、AOI装置110と、推論装置510とを有する。
このうち、AOI装置110は、学習フェーズにおける検査システム100のAOI装置110と同じであるため、ここでは説明を省略する。
推論装置510には、検査プログラムがインストールされており、当該プログラムが実行されることで、推論装置510は、推論部511、出力部512として機能する。
推論部511は、学習フェーズにおいて生成された学習済み画像再現部を有する。推論部511は、検査対象物であるプリント基板530に対して自動外観検査が行われることでAOI装置110から送信された各領域の画像540を取得する。また、推論部511は、取得した各領域の画像540の一部をマスクすることで、マスク画像を生成したのち、学習済み画像再現部に入力する。また、推論部511は、学習済み画像再現部により再現された画像と、マスク前の画像540とを比較することで、各領域の画像540に欠陥が含まれるか否かを判定する。更に、推論部511は、判定結果を出力部512に通知する。
出力部512は、推論部511より通知された判定結果を、検査ラインに出力する。検査ラインでは、検査員111が、欠陥候補を含む各領域の画像を目視検査する。ただし、検査フェーズにおいて、検査ラインでは、出力部512により出力された判定結果を参照し、欠陥候補を含む各領域の画像540のうち、推論装置510により欠陥が含まれないと判定された画像を除外する。そして、検査ラインでは、欠陥候補を含む各領域の画像540のうち、推論装置510により欠陥が含まれると判定された画像550を目視検査に割り当てる。つまり、出力部512では、欠陥が含まれると判定された画像550について目視検査を行うよう画像550を出力する。
このように、AOI装置110においてプリント基板530に対して自動外観検査が行われ、欠陥候補を含む各領域の画像が検出された場合、検査ラインでは、推論装置510によって、欠陥が含まれると判定された画像を、目視検査に割り当てる。この結果、検査システム500によれば、目視検査に割り当てる画像の数を減らすことが可能となり、検査員111による目視検査の作業負荷を低減させることができる。
<推論装置のハードウェア構成>
次に、推論装置510のハードウェア構成について説明する。図6は、推論装置のハードウェア構成の一例を示す図である。なお、図6に示すように、推論装置510のハードウェア構成は、学習装置120のハードウェア構成と概ね同じであることから、ここでは、学習装置120のハードウェア構成との相違点を中心に説明する。
プロセッサ601は、各種プログラム(例えば、検査プログラム等)をメモリ602上に読み出して実行する。プロセッサ601が、メモリ602上に読み出した各種プログラムを実行することで、プロセッサ601とメモリ602とにより形成されるコンピュータは、例えば上記各機能(推論部511、出力部512)を実現する。
<推論装置の各部の詳細>
次に、推論装置510の各部(ここでは、推論部511)の詳細について説明する。図7は、推論装置の推論部による処理の具体例を示す第1の図である。図7に示すように、推論部511は、マスク部710、学習済み画像再現部720、判定部730を有する。
マスク部710は、AOI装置110から送信された欠陥候補を含む各領域の画像(第2画像の一例。例えば、画像741)を取得し、取得した画像の一部をマスクすることで、マスク画像(第2マスク画像の一例。例えば、マスク画像741_1~741_n)を生成する。また、マスク部710は、生成したマスク画像741_1~741_nを学習済み画像再現部720に入力する。
学習済み画像再現部720は、学習フェーズにおいて画像再現部420に対して学習処理が行われることで生成された学習済みモデルである。学習済み画像再現部720は、マスク画像741_1~741_nに基づいて、マスク前の画像(第2再現画像の一例。例えば、画像751_1~751_n)を再現する。
判定部730は、学習済み画像再現部720により再現された画像751_1~751_nと、マスク部710により取得されたマスク前の画像741とを比較して、欠陥が含まれるか否かを判定する。
具体的には、判定部730は、まず、再現された画像751_1とマスク前の画像741の各画素の画素値の平均2乗誤差(MSE:Mean Square Error)を算出する。続いて、判定部730は、再現された画像751_2とマスク前の画像741の各画素の画素値の平均2乗誤差(MSE)を算出する。以下、同様に、再現された画像751_3とマスク前の画像741の各画素の画素値の平均2乗誤差(MSE)~再現された画像751_nとマスク前の画像741の各画素の画素値の平均2乗誤差(MSE)を算出する。
続いて、判定部730は、算出した各MSEがいずれも、所定の閾値(Th)以下であるか否かを判定する。算出した各MSEがいずれも、所定の閾値以下であると判定した場合、画像741には欠陥が含まれないと判定する(「判定結果:OK」)。一方、算出した各MSEのうち、いずれかのMSEが所定の閾値を超えていると判定した場合、画像741には欠陥が含まれると判定する(「判定結果:NG」)。
このように、推論部511では、再現された画像と、マスク前の画像とを比較して、欠陥が含まれるか否かを判定する。これにより、例えば、マスク前の画像と基準画像とを比較して欠陥が含まれるか否かを判定する場合と比べて、良品の範囲内での製造ばらつき等に対応した判定結果を出力することが可能となる。
つまり、検査システム500によれば、欠陥の見逃し防止を実現するように検出された欠陥候補を含む各領域の画像に対して、「目視検査結果:OK」となるであろう画像(「判定結果:OK」の画像)を、目視検査の割り当てから適切に除外することができる。この結果、検査システム500によれば、目視検査に割り当てる画像の数を減らすことが可能となり、検査員の作業負荷を低減させることができる。
<学習処理の流れ>
次に、検査システム100における学習処理の流れについて説明する。図8は、検査システムにおける学習処理の流れを示す第1のフローチャートである。
ステップS801において、学習装置120の学習用データセット生成部121は、AOI装置110より、欠陥候補を含む各領域の画像を取得する。
ステップS802において、学習装置120の学習用データセット生成部121は、取得した各領域の画像から、「目視検査結果:OK」の画像を抽出し、学習用データセットを生成する。
ステップS803において、学習装置120の学習部122は、学習用データセットに含まれる各領域の画像の一部をマスクすることでマスク画像を生成し、生成したマスク画像から、マスク前の画像が再現されるように、画像再現部に対して学習処理を行う。
ステップS804において、学習装置120の学習部122は、学習処理を終了するか否かを判定する。ステップS804において、学習処理を継続すると判定した場合には(ステップS804においてNoの場合には)、ステップS801に戻る。
一方、ステップS804において、学習処理を終了すると判定した場合には(ステップS804においてYesの場合には)、ステップS805に進む。
ステップS805において、学習装置120の学習部122は、学習済み画像再現部を出力して、学習処理を終了する。
<検査処理の流れ>
次に、検査システム500における検査処理の流れについて説明する。図9は、検査システムにおける検査処理の流れを示す第1のフローチャートである。
ステップS901において、推論装置510の推論部511は、AOI装置110より、欠陥候補を含む各領域の画像を取得する。
ステップS902において、推論装置510の推論部511は、取得した各領域の画像の一部をマスクすることでマスク画像を生成し、生成したマスク画像を、学習済み画像再現部に入力することで、マスク前の画像を再現する。
ステップS903において、推論装置510の推論部511は、再現した画像と、マスク前の画像とを比較し、MSEを算出することで、マスク前の画像に欠陥が含まれるか否かを判定する。
具体的には、推論装置510の推論部511では、例えば、取得した画像を縦方向に3分割、横方向に3分割の計9分割にする。続いて、推論装置510の推論部511では、いずれかの1つの分割領域をマスクすることで生成したマスク画像についてMSEを算出する処理を、マスクする分割領域を順次変えながら9回行う。そして、いずれか1つのマスク画像についてMSEが閾値を超えた場合、推論装置510の推論部511では、当該取得した画像には、欠陥が含まれると判定する(「判定結果:NG」)。
ステップS904において、推論装置510の出力部512は、判定結果を報知する。これにより、自動外観検査が行われることでAOI装置110にて検出された欠陥候補を含む各領域の画像が、欠陥が含まれないと判定された画像(「判定結果:OK」の画像)と、欠陥が含まれると判定された画像(「判定結果:NG」の画像)とに分類される。この結果、欠陥が含まれると判定された画像(「判定結果:NG」の画像)のみを目視検査に割り当てることが可能となる。
ステップS905において、推論装置510の推論部511は、検査処理を終了するか否かを判定する。ステップS905において、検査処理を継続すると判定した場合には(ステップS905においてNoの場合には)、ステップS901に戻る。
一方、ステップS905において、検査処理を終了すると判定した場合には(ステップS905においてYesの場合には)、検査処理を終了する。
<まとめ>
以上の説明から明らかなように、第1の実施形態に係る検査システムは、
・プリント基板を撮影した画像のうち、欠陥が含まれていないと判断された画像の一部をマスクすることでマスク画像を生成する。また、生成したマスク画像から、マスク前の画像が再現されるように、画像再現部に対して学習処理を行う。
・新たなプリント基板を撮影した画像の一部をマスクすることでマスク画像を生成する。また、生成したマスク画像を学習済み画像再現部に入力することでマスク前の画像を再現し、再現した画像と、マスク前の画像とを比較することで、マスク前の画像に欠陥が含まれるか否かを判定する。
このように、再現した画像とマスク前の画像とを比較して欠陥が含まれるか否かを判定することで、良品の範囲内での製造ばらつき等に対応した判定結果を出力することが可能となる。
つまり、第1の実施形態によれば、欠陥の見逃し防止を実現するように検出された欠陥候補を含む各領域の画像に対して、「目視検査結果:OK」となるであろう画像(「判定結果:OK」の画像)を、目視検査の割り当てから適切に除外することができる。この結果、第1の実施形態によれば、目視検査に割り当てる画像の数を減らすことが可能となり、検査員の作業負荷を低減させることができる。
[第2の実施形態]
上記第1の実施形態では、各領域の画像の一部をマスクすることで生成したマスク画像を、画像再現部に入力するものとして説明した。これに対して、第2の実施形態では、各領域の画像の一部をマスクすることで生成したマスク画像に、CAD(Computer-aided design)データを重畳したうえで、画像再現部に入力する場合について説明する。以下、第2の実施形態について、上記第1の実施形態との相違点を中心に説明する。
<学習部による処理の具体例>
はじめに、第2の実施形態に係る学習装置120の各部のうち、学習部122による処理の具体例について説明する。図10は、学習装置の学習部による処理の具体例を示す第2の図である。
図10に示すように、第2の実施形態において、学習部122が処理を行うにあたり、学習用データセット格納部123には、学習用データセット1010が格納されているものとする。
学習用データセット1010には、情報の項目として、学習用データセット310の情報の項目に加えて、"CADデータ"が含まれる。"CADデータ"には、"画像"に格納された各領域の画像に対応する領域のCADデータが格納される。図10の例は、画像1012に対応する領域のCADデータ1011が格納されている様子を示している。
また、図10に示すように、学習部122は、マスク部410、重畳部1020、画像再現部1030、比較/変更部1040を有する。
マスク部410は、図4で説明したマスク部410と同様であり、図10の例は、学習用データセット1010の"画像"に格納された画像1012を読み出し、一部をマスクすることで、マスク画像1031を生成した様子を示している。
重畳部1020は、マスク部410により生成されたマスク画像のうち、マスクされた領域に、CADデータの対応する領域を重畳し、重畳画像を生成する。図11の例は、マスク画像1141のうち、マスクされた領域に、CADデータ1011の対応する領域を重畳し、重畳画像1032を生成した様子を示している。
画像再現部1030は、重畳部1020にて生成された重畳画像に基づいて、マスク前の画像を再現し、比較/変更部1040に出力する。図10の例は、重畳部1020にて生成された重畳画像1032に基づいてマスク前の画像1033を再現し、比較/変更部1040に出力した様子を示している。
比較/変更部1040は、画像再現部1030により再現された画像1033と、マスク部410によって読み出されたマスク前の画像1012とを比較し、両者が一致するように、画像再現部1030のモデルパラメータを更新する。
これにより、画像再現部1030は、重畳部1020により生成された重畳画像1032から、マスク前の画像1012が再現されるように学習処理が行われることになる。なお、マスク前の画像が再現されるように学習処理が行われた学習済み画像再現部は、後述する検査フェーズにおいて用いられる。
<推論装置の各部の処理の具体例>
次に、推論装置510の推論部511による処理の具体例について説明する。図11は、推論装置の推論部による処理の具体例を示す第2の図である。図11に示すように、推論部511は、マスク部710、重畳部1110、学習済み画像再現部1120、判定部1130を有する。
マスク部710は、図7のマスク部710と同様であり、図11の例は、AOI装置110から送信された画像1101の一部をマスクすることで、マスク画像1141を生成した様子を示している。なお、画像1101は、回路ショート等の欠陥が含まれている画像である。
重畳部1110は、マスク部710により生成されたマスク画像のうち、マスクされた領域に、CADデータの対応する領域を重畳し、重畳画像を生成する。図11の例は、マスク画像1141のうち、マスクされた領域に、CADデータ1102の対応する領域を重畳し、重畳画像1142を生成した様子を示している。
学習済み画像再現部1120は、学習フェーズにおいて画像再現部1030に対して学習処理が行われることで生成された学習済みモデルである。学習済み画像再現部1120は、重畳部1110より通知された重畳画像に基づいて、マスク前の画像を再現する。図11の例は、重畳部1110より通知された重畳画像1142に基づいて、マスク前の画像1143が再現された様子を示している。
判定部1130は、学習済み画像再現部1120により再現された画像1143と、マスク部710により取得されたマスク前の画像1101とを比較して、欠陥が含まれるか否かを判定する。図11の例は、学習済み画像再現部1120により再現された画像1143と、マスク部710により取得されたマスク前の画像1101とを比較した結果、MSEが所定の閾値を超えており、欠陥が含まれると判定された様子(「判定結果:NG」)を示している。
このように、回路ショート等の欠陥が含まれる画像1101の場合、上記第1の実施形態で説明したマスク画像だけでは、「目視検査結果:OK」の画像を再現するように動作させることは困難である。回路ショート等の欠陥の場合、マスクした領域の周辺に、マスクした領域を補完するのに必要な情報が含まれていないからである。
これに対して、上記のように、マスクされた領域にCADデータの対応する領域を重畳することで、「目視検査結果:OK」の画像を再現するように動作させることが可能になる。この結果、再現された画像とマスク前の画像との誤差が大きくなり、回路ショート等の欠陥が含まれることを精度よく判定することが可能となる。
<学習処理の流れ>
次に、第2の実施形態に係る検査システム100における学習処理の流れについて説明する。図12は、検査システムにおける学習処理の流れを示す第2のフローチャートである。図8に示した第1のフローチャートとの相違点は、ステップS1201~S1203である。
ステップS1201において、学習装置120の学習用データセット生成部121は、ステップS801において取得された各領域の画像に対応するCADデータを取得する。
ステップS1202において、学習装置120の学習用データセット生成部121は、取得した各領域の画像から、「目視検査結果:OK」の画像を抽出する。また、学習装置120の学習用データセット生成部121は、抽出した各領域の画像を、対応する領域のCADデータと対応付けて学習用データセットを生成する。
ステップS1203において、学習装置120の学習部122は、学習用データセットに含まれる各領域の画像の一部をマスクすることでマスク画像を生成したのち、CADデータの対応する領域を重畳することで重畳画像を生成する。
以下、ステップS803~S805は、図8を用いて説明済みであるため、ここでは説明を省略する。
<検査処理の流れ>
次に、第2の実施形態に係る検査システム500における検査処理の流れについて説明する。図13は、検査システムにおける検査処理の流れを示す第2のフローチャートである。図9に示した第1のフローチャートとの相違点は、ステップS1301~S1302である。
ステップS1301において、推論装置510の推論部511は、ステップS901において取得された各領域の画像に対応する領域のCADデータを取得する。
ステップS1302において、推論装置510の推論部511は、取得した各領域の画像の一部をマスクすることでマスク画像を生成したうえで、CADデータの対応する領域を重畳し、重畳画像を生成する。
以下、ステップS902~S905は、図9を用いて説明済みであるため、ここでは説明を省略する。
<まとめ>
以上の説明から明らかなように、第2の実施形態に係る検査システムは、
・プリント基板を撮影した画像のうち、欠陥が含まれていないと判断された画像の一部をマスクすることでマスク画像を生成したうえで、CADデータの対応する領域を重畳し、重畳画像を生成する。また、生成した重畳画像から、マスク前の画像が再現されるように、画像再現部に対して学習処理を行う。
・新たなプリント基板を撮影した画像の一部をマスクすることでマスク画像を生成したうえで、CADデータの対応する領域を重畳し、重畳画像を生成する。また、生成した重畳画像を学習済みの画像再現部に入力することでマスク前の画像を再現し、再現した画像と、マスク前の画像とを比較することで、マスク前の画像に欠陥が含まれるか否かを判定する。
このように、重畳画像から「目視検査結果:OK」の画像が再現できるように学習処理を行う構成とすることで、回路ショート等の欠陥が含まれることを精度よく判定することが可能となる。この結果、第2の実施形態によれば、上記第1の実施形態と同様の効果を享受しつつ、誤判定を回避することが可能になる。
[第3の実施形態]
上記第1の実施形態では、学習フェーズにおいてマスク部410が、1個の画像(例えば、画像440)に対して複数個のマスク画像(例えば、マスク画像440_1~440_n)を生成するものとして説明した。しかしながら、1個の画像から生成するマスク画像は複数個に限定されず、例えば、1個の画像から1個のマスク画像のみを生成するように構成してもよい。
また、上記第1の実施形態では、学習部122による学習処理の具体的な回数について言及しなかったが、例えば、1個の画像から1個のマスク画像を生成する場合にあっては、
・学習用データセット310として、10000個の画像を用意し、
・その中の20個の画像を選択して、それぞれの画像に対して、ランダムな位置及びランダムなサイズで、1箇所ずつマスクし、
・当該20個のマスク画像を用いて、画像再現部420のモデルパラメータを更新する処理を、500回(=10000個/20個)行い、
・これらの処理を1セットとして、誤差が収束するまで10000セット程度繰り返す。
これにより、推論部511では、精度の高い判定結果を出力することができる。
上記第2の実施形態では、マスク画像にCADデータを重畳するものとして説明したが、マスク画像に重畳するデータは、CADデータに限定されない。例えば、検査フェーズにおいては、マスク画像に、「目視検査結果:OK」の画像の対応する領域を重畳するように構成してもよい。
また、上記第1及び第2の実施形態では、検査対象物がプリント基板である場合について説明したが、検査対象物はプリント基板に限定されない。
また、上記第1及び第2の実施形態では、判定結果に基づいて、目視検査に割り当てる画像を決定するものとして説明した。しかしながら、判定結果の利用方法はこれに限定されず、例えば、判定結果を検査員111に表示し、目視検査を支援するように構成してもよい。
また、上記第1及び第2の実施形態では、学習装置120と推論装置510とを別体として構成したが、学習装置120と推論装置510とは一体として構成してもよい。
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
100 :検査システム
110 :AOI装置
120 :学習装置
121 :学習用データセット生成部
122 :学習部
310 :学習用データセット
410 :マスク部
420 :画像再現部
500 :検査システム
510 :推論装置
511 :推論部
512 :出力部
710 :マスク部
720 :学習済み画像再現部
730 :判定部

Claims (8)

  1. 検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像から、マスク前の第1画像が再現されるように学習された画像再現部と、
    新たな検査対象物を撮影した第2画像の一部をマスクすることで生成された第2マスク画像を、前記画像再現部に入力することで再現された再現画像と、前記第2画像とに基づいて、前記第2画像に欠陥が含まれるか否かを判定する判定部と
    を有する検査システム。
  2. 前記判定部は、
    前記再現画像と、前記第2画像との各画素の画素値の誤差に基づいて算出される値が、所定の閾値以下である場合、前記第2画像に欠陥が含まれないと判定し、
    前記再現画像と、前記第2画像との各画素の画素値の誤差に基づいて算出される値が、所定の閾値を超えている場合、前記第2画像に欠陥が含まれると判定する、請求項1に記載の検査システム。
  3. 前記画像再現部は、
    生成した第1マスク画像にCADデータを重畳した重畳画像から、マスク前の第1画像が再現されるように学習され、
    前記判定部は、
    生成した第2マスク画像にCADデータを重畳した重畳画像を、前記画像再現部に入力することで再現された再現画像と、前記第2画像とに基づいて、前記第2画像に欠陥が含まれるか否かを判定する、請求項1に記載の検査システム。
  4. 前記判定部により、前記第2画像に欠陥が含まれると判定された場合に、前記第2画像について目視検査を行うよう前記第2画像を出力する出力部を更に有する、請求項2に記載の検査システム。
  5. 検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像から、マスク前の第1画像が再現されるよう、画像再現部に対して学習処理を行う学習部を更に有する、請求項1に記載の検査システム。
  6. 検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像にCADデータを重畳した重畳画像から、マスク前の第1画像が再現されるよう、画像再現部に対して学習処理を行う学習部を更に有する、請求項3に記載の検査システム。
  7. 検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像から、マスク前の第1画像が再現されるように学習された画像再現部に、新たな検査対象物を撮影した第2画像の一部をマスクすることで生成された第2マスク画像を入力することで再現された再現画像と、前記第2画像とに基づいて、前記第2画像に欠陥が含まれるか否かを判定する判定工程、
    を有する検査方法。
  8. 検査対象物を撮影した画像のうち、欠陥が含まれていないと判断された第1画像の一部をマスクすることで生成された第1マスク画像から、マスク前の第1画像が再現されるように学習された画像再現部に、新たな検査対象物を撮影した第2画像の一部をマスクすることで生成された第2マスク画像を入力することで再現された再現画像と、前記第2画像とに基づいて、前記第2画像に欠陥が含まれるか否かを判定する判定工程、
    をコンピュータに実行させるための検査プログラム。
JP2021010592A 2021-01-26 2021-01-26 検査システム、検査方法及び検査プログラム Pending JP2022114331A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021010592A JP2022114331A (ja) 2021-01-26 2021-01-26 検査システム、検査方法及び検査プログラム
US17/579,971 US20220236192A1 (en) 2021-01-26 2022-01-20 Inspection system, inspection method, and inspection program
EP22152408.5A EP4033447A1 (en) 2021-01-26 2022-01-20 Inspection system, inspection method, and inspection program
CN202210073166.0A CN114894801A (zh) 2021-01-26 2022-01-21 检查系统、检查方法及检查程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021010592A JP2022114331A (ja) 2021-01-26 2021-01-26 検査システム、検査方法及び検査プログラム

Publications (1)

Publication Number Publication Date
JP2022114331A true JP2022114331A (ja) 2022-08-05

Family

ID=80122368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021010592A Pending JP2022114331A (ja) 2021-01-26 2021-01-26 検査システム、検査方法及び検査プログラム

Country Status (4)

Country Link
US (1) US20220236192A1 (ja)
EP (1) EP4033447A1 (ja)
JP (1) JP2022114331A (ja)
CN (1) CN114894801A (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013098267A (ja) 2011-10-31 2013-05-20 Hitachi High-Technologies Corp 半導体パターン検査装置
JP7120528B2 (ja) 2018-09-21 2022-08-17 株式会社Screenホールディングス 分類器構築方法、画像分類方法、分類器構築装置および画像分類装置
IT201800011107A1 (it) * 2018-12-14 2020-06-14 Sacmi Dispositivo di ispezione ottica di preforme
US11030738B2 (en) * 2019-07-05 2021-06-08 International Business Machines Corporation Image defect identification

Also Published As

Publication number Publication date
CN114894801A (zh) 2022-08-12
EP4033447A1 (en) 2022-07-27
US20220236192A1 (en) 2022-07-28

Similar Documents

Publication Publication Date Title
JP6879431B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP6936957B2 (ja) 検査装置、データ生成装置、データ生成方法及びデータ生成プログラム
JP7004145B2 (ja) 欠陥検査装置、欠陥検査方法、及びそのプログラム
JP3834041B2 (ja) 学習型分類装置及び学習型分類方法
KR20190063839A (ko) 제조 공정에서 딥러닝을 활용한 머신 비전 기반 품질검사 방법 및 시스템
KR102206698B1 (ko) 이상 검사 장치 및 이상 검사 방법
JP2008277730A (ja) 欠陥検査装置、欠陥検査プログラム、図形描画装置および図形描画システム
KR20210057518A (ko) 불량 이미지 생성 장치 및 방법
JP2022045688A (ja) 欠陥管理装置、方法およびプログラム
JP2020135051A (ja) 欠点検査装置、欠点検査方法、欠点検査プログラム、学習装置および学習済みモデル
JP2014126445A (ja) 位置合せ装置、欠陥検査装置、位置合せ方法、及び制御プログラム
US20230402249A1 (en) Defect inspection apparatus
JP2022114331A (ja) 検査システム、検査方法及び検査プログラム
WO2022130814A1 (ja) 指標選択装置、情報処理装置、情報処理システム、検査装置、検査システム、指標選択方法、および指標選択プログラム
US8300918B2 (en) Defect inspection apparatus, defect inspection program, recording medium storing defect inspection program, figure drawing apparatus and figure drawing system
JPH08327559A (ja) パターン検査装置およびその検査方法
KR20230036650A (ko) 영상 패치 기반의 불량 검출 시스템 및 방법
JP7392166B2 (ja) 画像生成装置、画像生成方法およびプログラム
WO2022172469A1 (ja) 画像検査装置、画像検査方法、及び学習済みモデル生成装置
JP2023008416A (ja) 異常検知システムおよび異常検知方法
CN113205110B (zh) 一种面板缺陷分类模型的建立方法及面板缺陷分类方法
WO2022201968A1 (ja) 情報処理装置、制御プログラム、および制御方法
JP7465446B2 (ja) 画像検査装置、画像検査方法、及び学習済みモデル生成装置
JP4889018B2 (ja) 外観検査方法
JP2023162652A (ja) 学習用画像生成プログラム、学習用画像生成装置、及び学習用画像生成方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231215