KR102437115B1 - 제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법 - Google Patents

제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법 Download PDF

Info

Publication number
KR102437115B1
KR102437115B1 KR1020200067732A KR20200067732A KR102437115B1 KR 102437115 B1 KR102437115 B1 KR 102437115B1 KR 1020200067732 A KR1020200067732 A KR 1020200067732A KR 20200067732 A KR20200067732 A KR 20200067732A KR 102437115 B1 KR102437115 B1 KR 102437115B1
Authority
KR
South Korea
Prior art keywords
image
original image
images
masking
regions
Prior art date
Application number
KR1020200067732A
Other languages
English (en)
Other versions
KR20210150834A (ko
Inventor
윤종필
김동응
김문조
신우상
이종현
Original Assignee
한국생산기술연구원
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 한국생산기술연구원 filed Critical 한국생산기술연구원
Priority to KR1020200067732A priority Critical patent/KR102437115B1/ko
Publication of KR20210150834A publication Critical patent/KR20210150834A/ko
Application granted granted Critical
Publication of KR102437115B1 publication Critical patent/KR102437115B1/ko

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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06T5/004
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • G06T5/75Unsharp masking
    • 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/30168Image quality inspection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

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

Abstract

원본 영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 마스킹 영상들을 생성하는 단계, 상기 각각의 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계, 및 각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계, 및 상기 추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계를 포함하는, 결함 검사 방법을 공개한다.

Description

제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법{Apparatus and method of defect inspection using structure prediction based on deep learning}
본 발명은 인공지능, 검사장비, 비파괴 검사, 및 고장진단 예측 등에 사용될 수 있는 제품 결함 검사 시스템에 관한 것이다.
최근 스마트 팩토리 구현을 위한 다양한 기술들이 집중 연구되고 있다. 스마트 팩토리 구현을 위해서는 원료량, 원료 품질, 제조 공정 데이터 (온도, 습도 등), 설비 운전 조건 등의 다양한 공정 데이터가 필요하고 그 결과로 나타나는 제품의 품질 데이터가 데이터베이스(DB)화 되어 있어야 한다. 즉 인풋(input)과 아웃풋(output)의 상관관계를 분석하여 품질을 예측하고, 대량 결함 발생을 사전에 방지하고, 설비 고장을 사전에 예측하여 선제적으로 대응할 수 있어야 한다. 이러한 스마트 팩토리 구현을 위해 결함을 실시간 검사하고 제품 품질을 판정하는 결함 검사 시스템은 핵심 기술이다.
결함 검사는 제품의 표면 결함을 검사하기 위한 비전 시스템, 제품의 내부 결함을 검사하기 위한 초음파, CT를 이용한 비파괴 시스템이 있다. 이러한 시스템은 센서의 종류가 CCD, X-ray, 초음파 등으로 나뉠 뿐 센싱된 데이터를 처리하는 모듈은 동일하다. 즉 센싱 시스템, 데이터 처리, 그리고 마지막으로 제품의 원 데이터(raw data)와 검사 결과를 저장하는 데이터베이스(DB)로 구성된다.
특히 영상에서 결함의 위치와 종류를 판단하는 인식 모듈이 결함 검사 성능에 영향을 미치는 주요 요소이다. 예전에는 정상과 결함을 판단하기 위해, 개발자의 경험적 판단으로 규칙기반(rule-base) 방법에 의존하여 특징의 주요 인자를 추출하는 알고리즘 개발 방법으로 시스템을 개발하였지만, 이러한 방법은 개발 기간이 길어지고, 제품과 결함에 따라 매번 주요 인자 추출 알고리즘을 개발해야하는 단점과 그에 따른 인식 성능 저하가 나타났다. 따라서 최근에는 결함 검출 및 분류를 위한 특징 추출을 스스로 할 수 있는 딥러닝 기술을 이용하여 인식 알고리즘을 개발하는 추세이다.
표면 결함을 검사하는 비전(vision) 시스템은 2D(2-dimensional; 2차원)의 영상을 이용하여 결함을 검사한다. 마찬가지로 내부 결함검사를 위한 CT도 2D의 영상이 층을 이루고 있는 3D(3-dimensional; 3차원) 데이터이기 때문에 2D 데이터 처리를 이용하여 결함을 검사 할 수 있다.
일반적으로 학습기법을 이용하여 결함을 검사할 때는 GT(Ground Truth) 데이터 또는 라벨 데이터(레이블 데이터; label data)로 불리는 영상에서 결함 부분을 표시한 데이터가 필요하다. 이러한 라벨링 작업은 시간이 매우 소모되고, 라벨링을 하는 검사자 간의 기준 차이도 발생한다. 또한 라벨링 시 정확한 결함 부분을 마킹(marking)하기가 어려워 라벨 데이터에 노이즈가 발생할 수 있다. 특히 3D의 경우는 하나의 제품이 이루고 있는 2D의 영상량이 매우 많아서 일일이 라벨링을 수행하는 작업이 특히 많이 소모된다는 문제가 있다.
본 발명에서는 딥러닝을 이용한 제품의 결함 검사 시스템을 제공하고자 한다.
본 발명에서는 시간 소요가 많은 라벨링(Labeling) 작업 없이 정상적인 제품의 구조 데이터만으로 학습이 이루어지는 결함 검사 시스템을 제공하고자 한다.
본 발명에서는 상술한 문제점을 극복하기 위해 마스킹 기법과 딥러닝을 이용하여 라벨링 작업이 없이도 결함을 검출할 수 있는 방법을 제공하고자 한다.
본 발명의 일 관점에 따라 제공되는 결함 검사 시스템은, 시간 소요가 많은 라벨링(Labeling) 작업 없이, 정상적인 제품의 구조 데이터만으로 학습이 이루어진다.
본 발명에 의해 제공되는 결함 검사 시스템은, 영상에서 특징추출 후 머신러닝(SVM, NN, Decision tree)으로 분류하는 결함 검출 기술이 아닌 딥러닝이 스스로 영상에서 결함의 특징을 추출하고 학습하는 기술이 적용된다.
또한 본 발명에 의해 제공되는 결함 검사 시스템은, 시간 소요가 많은 라벨링 작업과 없이, 정상적인 제품 구조 데이터만으로 학습이 이루어진다.
본 발명에 의해 제공되는 결함 검사 시스템은, 랜덤(random) 위치의 마스킹(masking) 방법을 통하여 제품 구조를 학습하여 결함을 검사하는 딥러닝 기반 결함 검사 기술을 이용한다.
본 발명의 일 관점에 따라 제공되는 결함 검사 방법은, 원본 영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 마스킹 영상들을 생성하는 단계, 상기 각각의 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계, 각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계, 및 상기 추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계를 포함할 수 있다.
이때, 상기 구조 추론부는 콘볼루션 레이어, 및 디콘볼루션 레이어를 포함하는 신경망이며, 상기 신경망은, 학습용 원본 영상의 임의의 영역을 임의의 마스크를 이용하여 소정의 값으로 매핑함으로써 학습용 마스킹 영상을 생성하는 단계, 상기 학습용 마스킹 영상을 상기 신경망에 입력하여 상기 신경망으로부터 재구성된 추론 영상을 획득하는 단계, 및 상기 추론 영상과 상기 학습용 원본 영상과의 차이를 감소시키도록 상기 신경망을 학습시키는 단계를 포함하는 학습방법에 의해 학습된 것일 수 있다.
이때, 상기 신경망은, 콘볼루션 레이어 및 디콘볼루션 레이어를 포함하며, 상기 콘볼루션 레이어로 이루어진 피쳐 추출부가 각각의 상기 마스킹 영상의 특징을 추출하도록 되어 있으며, 상기 추출된 특징은 상기 디콘볼루션 레이어로 구성된 파트에서 다시 상기 원본 영상의 크기로 재구성되도록 되어 있을 수 있다.
또는, 상기 신경망은, 콘볼루션 레이어 및 디콘볼루션 레이어를 포함하며, 상기 콘볼루션 레이어로 이루어진 피쳐 추출부가 상기 학습용 마스킹 영상의 특징을 추출하도록 되어 있으며, 상기 추출된 특징은 상기 디콘볼루션 레이어로 구성된 파트에서 다시 상기 학습용 원본 영상의 크기로 재구성되도록 되어 있을 수 있다.
이때, 상기 복수 개의 영역들의 형상과 크기는 서로 동일하며, 상기 복수 개의 영역들을 결합하면 상기 원본 영상을 복원할 수 있으며, 상기 복수 개의 영역들은 상기 원본 영상 내에서 서로 오버랩되지 않으며, 그리고 상기 원본 영상의 복수 개의 영역들을 각각 마스킹하기 위해 한 개의 마스크만이 이용될 수 있다.
또는, 상기 원본 영상의 복수 개의 영역들을 각각 마스킹하기 위해, 형상 또는 크기가 동일하지 않은 적어도 두 개의 마스크가 이용되며, 상기 복수 개의 영역들을 결합하면 상기 원본 영상을 복원할 수 있으며, 그리고 상기 복수 개의 영역들은 상기 원본 영상 내에서 서로 오버랩되지 않을 수 있다.
본 발명의 다른 관점에 따라 제공되는 결함 검사 방법은, 원본 영상 중 제1부분을 제1마스크를 이용하여 마스킹함으로써 상기 원본 영상으로부터 제1마스킹 영상을 생성하는 단계, 상기 제1마스킹 영상을 구조 추론부에 입력하여, 상기 구조 추론부로부터 상기 제1마스킹 영상에 대한 제1추론 영상을 획득하는 단계, 및 상기 제1추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 제1부분에 결함이 존재하는지 여부를 판단하는 단계를 포함할 수 있다.
이때, 상기 구조 추론부는 콘볼루션 레이어, 및 디콘볼루션 레이어를 포함하는 신경망이며, 상기 신경망은, 학습용 원본 영상의 임의의 영역을 임의의 마스크를 이용하여 소정의 값으로 매핑함으로써 학습용 마스킹 영상을 생성하는 단계, 상기 학습용 마스킹 영상을 상기 신경망에 입력하여 상기 신경망으로부터 재구성된 추론 영상을 획득하는 단계, 및 상기 추론 영상과 상기 학습용 원본 영상과의 차이를 감소시키도록 상기 신경망을 학습시키는 단계를 포함하는 학습방법에 의해 학습된 것일 수 있다.
이때, 상기 신경망은, 콘볼루션 레이어 및 디콘볼루션 레이어를 포함하며, 상기 콘볼루션 레이어로 이루어진 피쳐 추출부가 상기 제1마스킹 영상의 특징을 추출하도록 되어 있으며, 상기 추출된 특징은 상기 디콘볼루션 레이어로 구성된 파트에서 다시 상기 원본 영상의 크기로 재구성되도록 되어 있을 수 있다.
본 발명의 또 다른 관점에 따라 제공되는 결함 검사방법은, 3D 원본 영상을 구성하는 n개의 2차원 영상들 중 선택된 2차원 영상들을 1개의 확장된 2차원 영상으로 재구성함으로써 재구성된 원본 영상을 획득하는 단계, 상기 재구성된 원본 영상에서, 상기 선택된 2차원 영상들 중 제1 2차원 영상에 대응하는 서브영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 재구성된 마스킹 영상들을 생성하는 단계, 상기 각각의 재구성된 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 재구성된 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계, 각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계, 및 상기 3D 원본 영상 중 상기 제1 2차원 영상과 상기 추론 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계를 포함할 수 있다.
이때, 상기 구조 추론부는 콘볼루션 레이어, 및 디콘볼루션 레이어를 포함하는 신경망이며, 상기 신경망은, 학습용으로 제공된 재구성된 원본 영상 중 상기 서브영상의 임의의 영역을 임의의 마스크를 이용하여 소정의 값으로 매핑함으로써 학습을 위한 재구성된 마스킹 영상을 생성하는 단계, 상기 학습을 위한 재구성된 마스킹 영상을 상기 신경망에 입력하여 상기 신경망으로부터 추론 영상을 획득하는 단계, 및 상기 추론 영상과 상기 서브영상과의 차이를 감소시키도록 상기 신경망을 학습시키는 단계를 포함하는 학습방법에 의해 학습된 것일 수 있다.
본 발명의 일 관점에 따라 제공되는 결함 검사 장치는, 원본 영상을 획득하는 데이터 획득부, 및 처리부를 포함할 수 있다. 상기 처리부는, 원본 영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 마스킹 영상들을 생성하는 단계, 상기 각각의 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계, 각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계, 및 상기 추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계를 실행하도록 되어 있을 수 있다.
본 발명에 따르면 딥러닝을 이용한 제품의 결함 검사 시스템을 제공할 수 있다.
본 발명에 따르면, 딥러닝을 이용한 영상 분석 기술을 다양한 제조업 제품의 품질 진단, 결함 검사에 응용할 수 있다.
본 발명에 따르면, 마스킹 기법과 딥러닝을 이용하여, 시간 소요가 많은 라벨링 작업이 없이도 제품의 구조 데이터만으로 학습하여 결함을 검출할 수 있는 방법을 제공할 수 있다.
도 1은 본 발명의 일 실시예 따라 제공되는 기술의 개념도이다.
도 2는 본 발명의 일 실시예 따라 제공되는 기술의 개념도이다.
도 3은 본 발명의 일 실시예에 따라 인공지능 모델을 학습시키는 방법의 단계들을 순서도로 제시한 것이다.
도 4는 본 발명의 일 실시예에 따라 학습된 인공지능 모델을 이용하여 결함을 검사하는 방법의 단계들을 순서도로 제시한 것이다.
도 5는 본 발명의 일 실시예에 따라 3D 원본 영상에 존재하는 결함 피쳐를 찾아내는 방법을 설명하기 위한 개념도이다.
이하, 본 발명의 실시예를 첨부한 도면을 참고하여 설명한다. 그러나 본 발명은 본 명세서에서 설명하는 실시예에 한정되지 않으며 여러 가지 다른 형태로 구현될 수 있다. 본 명세서에서 사용되는 용어는 실시예의 이해를 돕기 위한 것이며, 본 발명의 범위를 한정하고자 의도된 것이 아니다. 또한, 이하에서 사용되는 단수 형태들은 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 형태들도 포함한다.
도 1 및 도 2는 본 발명의 일 실시예 따라 제공되는 기술의 개념도이다. 본 발명에 따라 제공되는 결함 검사 기술은 인공지능 모델을 학습하는 프로세스와 상기 학습된 인공지능 모델을 이용하여 결함을 검사하는 프로세스의 총 2가지 프로세스로 나누어 설명할 수 있다.
<인공지능 모델 학습>
이하, 도 1을 참조하여 설명한다.
도 1은 본 발명의 일 실시예에 따라 인공지능 모델인 구조 추론부(100)를 학습시키는 방법을 설명하기 위한 개념도이다.
본 발명의 일 실시예에 따라 제공되는 학습방법은 아래의 단계들을 포함할 수 있다.
도 1은 위에서 아래로 총 4개의 원본 영상 샘플들을 이용하여 학습을 진행하는 과정을 나타낸 것이다. 우선 도 1의 (a)를 참조하여 설명한다.
단계(S110)에서, 제품의 원본 영상(20)을 특정 마스크(10)를 이용하여 그 부분만 예컨대 '0'(zero)으로 매핑(mapping)하여 마스킹 영상(30)을 생성할 수 있다. 이때, 상기 원본 영상(20) 중 상기 특정 마스크(10)에 의해 상기 '0'으로 마스킹되는 부분에는 결함이 포함되어 있을 수도 있고 그렇지 않을 수도 있다.
도 1의 (a)에서 참조번호 59는 원본 영상(20)의 바운더리를 나타낸 것이고, 특정 마스크(10)은 상기 바운더리(59) 내에서 임의의 형상으로 임의의 위치를 차지할 수 있다.
단계(S120)에서, 구조 추론부(100) 중 콘볼루션 레이어(Convolution layer)로 이루어진 피쳐 추출(Feature extraction) 파트가, 상기 마스킹된 영상의 특징을 추출할 수 있다.
단계(S130)에서, 상기 추출된 특징은 상기 구조 추론부(100) 중 디콘볼루션(Deconvolution layer)로 구성된 파트에서 다시 원본 크기로 재구성되어 재구성된 출력 영상(40)으로서 출력될 수 있다.
단계(S140)에서, 상기 구조 추론부(100)의 출력 영상(40)과 상기 구조 추론부에 입력되는 상기 원본 영상(20)과의 차이가 최소가 되도록 상기 구조 추론부(100)를 학습시킬 수 있다. 즉 상기 특정 마스크의 내부를 예측하는 인공지능 모델로서 학습시킬 수 있다.
이때, 상기 특정 마스크(10)의 위치와 크기는 랜덤(random)하게 결정될 수 있다. 그리고 상기 특정 마스크(10)마스킹의 형태는, 예컨대 사각형, 원, 및 자유도형 등으로 자유롭게 설정 가능하다.
즉, 서로 다른 학습용 원본 영상을 학습할 때마다, 상기 학습용 원본 영상에 대하여 서로 다른 마스크에 따른 마스킹이 이루어질 수 있다.
도 1의 (a), 도 1의 (b), 도 1의 (c), 및 도 1의 (d)는 각각 서로 다른 원본 영상들을 이용하는 예를 나타낸 것이고, 이때 각각의 특정 마스크(10)의 형상 및 위치는 랜덤하게 결정될 수 있음을 이해할 수 있다.
<결함검사>
본 발명의 일 실시예에 따라 제공되는 결함 검사 방법에서는, 도 1에서 설명한 학습 프로세스를 통해 학습이 완료된 구조 추론부(100)에 테스트하고자 하는 원본 영상(120)을 입력할 수 있다.
구체적으로, 본 발명의 일 실시예에 따라 제공되는 결함 검사 방법은 다음의 단계들을 포함할 수 있다.
단계(S210)에서, 원본 영상(120)을 복수 개의 마스크들(11, 12, 13, 14)을 이용하여 그 부분만 미리 결정된 값으로 매핑하여 복수 개의 서로 다른 마스킹 영상들(131, 132, 133, 134)을 생성할 수 있다.
상기 복수 개의 마스크들은 그 위치만 서로 다를 뿐, 그 형상과 크기는 서로 동일할 수 있다. 상기 복수 개의 마스크들의 형상과 크기가 서로 동일한 경우에는 실질적으로 한 개의 마스크만 사용되는 것으로 간주할 수 있으며, 이때 상기 원본 영상(120)은 복수 개의 부분 영역으로 분할되고, 상기 복수 개의 부분 영역 각각이 상기 한 개의 마스크에 의해 마스킹되는 것으로 간주할 수도 있다.
바람직한 일 실시예에서, 상기 복수 개의 마스크들이 차지하는 영역들을 통합하면 원본 영상(120) 전체 영역을 커버할 수 있다.
바람직한 일 실시예에서, 상기 복수 개의 마스크들이 차지하는 영역들은 원본 영상(120) 내에서 서로 오버랩되지 않을 수 있다.
단계(S220)에서, 상기 복수 개의 서로 다른 마스킹 영상들(131, 132, 133, 134)을 각각 상기 학습이 완료된 구조 추론부(100)에 입력함으로써, 재구성된 복수 개의 출력 영상들(141, 142, 143, 144)을 출력할 수 있다.
단계(S230)에서, 상기 출력된 복수 개의 출력 영상들(141, 142, 143, 144) 각각에 대하여, 상기 각각의 출력 영상을 생성하기 위해 사용한 상기 마스크(11, 12, 13, 또는 14)에 의해 마스킹 된 영역들을 부분 추론 영상으로서 추출할 수 있다.
단계(S240)에서, 상기 추출된 복수 개의 부분 추론 영상들을 서로 결합하여 한 개의 추론 영상(150)을 생성할 수 있다.
단계(S250)에서, 상기 추론 영상(150)과 상기 원본 영상(120) 간의 차이를 나타내는 차분 영상(160)을 생성할 수 있다.
단계(S260)에서, 상기 차분 영상(160)을 기초로 상기 원본 영상(120)에 결함이 존재하는지 여부를 소정의 규칙에 따라 결정할 수 있다.
예컨대, 도 2의 예에서, 원본 영상(120)은 마스크의 크기를 고려하여 영역을 분할되었다. 예를 들어 크기가 원본 영상(120)의 크기가 100*100인 경우, 상기 원본 영상(120)을 50*50의 크기로 분할하여 4개의 부분 영역을 정의하고, 순서대로 첫 번째 부분 영역을 마스킹한 영역을 학습된 인공지능 모델인 상기 구조 추론부(100)에 입력하여 그 부분을 추론한다. 마지막 3개 부분도 같은 부분으로 추론한 후 추론된 영상 4개를 이어 붙여서 하나의 추론 영상(140)을 만든다. 상기 추론 영상(140)과 상기 원본 영상(120)과의 차이 영상(160)을 생성한다. 차이가 큰 부분이 결함인 것으로 판단될 수 있다.
만일 원본 영상(120)에 결함이 없을 때는 마스킹한 부분을 추론한 추론 영상(150)이 원본 영상(120)과 실질적으로 동일하게 되므로, 상기 추론 영상(140)과 상기 원본 영상(120)과의 차이는 실질적으로 존재하지 않게 된다.
만일 마스킹한 부분에 결함이 존재한다면, 상기 추론 영상(140)은 결함이 존재하지 않는 상태의 제품 구조를 추론한 결과물이기 때문에, 상기 추론 영상(140)와 상기 결함이 존재하는 입력 영상(120) 간에는 차이가 존재하게 된다. 이러한 차이점이 드러난 부분에 결함이 존재하는 것으로 판단될 수 있다.
<3D 원본 영상에 대한 결함 분석>
본 발명의 일 실시예에서 원본 영상이 3D로 주어지는 경우에는 제품 구조에 대한 추론 성능을 높이기 위해 학습 시 하나의 영상을 구조 추론부(100)로 입력하지 않고, 연속적인 2D 영상들을 구조 추론부(100)에 입력하고, 출력은 하나의 영상이 출력되게 할 수 있다.
이하, 도 5를 참조하여 설명한다.
도 5는 본 발명의 일 실시예에 따라 3D 원본 영상에 존재하는 결함 피쳐를 찾아내는 방법을 설명하기 위한 개념도이다.
구체적으로 설명하면, [가로, 세로]가 [c1, r1]의 크기를 갖는 2차원 이미지들(221, 222, 223, 224)이 n개가 모여 구성되는 3D 원본 영상(220)이 주어진 경우, 각각의 상기 2차원 이미지들은 서로 다른 채널로서 입력될 수 있다. 따라서 상기 3D 원본 영상(220)은 n개의 채널 이미지들로 구성된 것으로 간주할 수 있다.
단계(S310)에서, 3D 원본 영상(220)을 구성하는 n개의 2차원 영상들 중 선택된 n1 개의 2차원 영상들만을 선택하여 재구성한 '재구성된 원본 영상'(1220)을 생성할 수 있다(단, n1은 2 이상 n 이하의 자연수).
단계(S320)에서, 상기 재구성된 원본 영상(1220)에서, 상기 선택된 2차원 영상들 중 제1 2차원 영상(221)에 대응하는 서브영상(221)의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 재구성된 마스킹 영상들(331, 332, 333, 334)을 생성할 수 있다.
이때, 상기 재구성된 원본 영상(1220)에서, 상기 선택된 2차원 영상들 중 상기 제1 2차원 영상(221)을 제외한 다른 2차원 영상에 대해서는 마스킹을 전혀 하지 않을 수 있다.
예컨대, 상기 복수 개의 영역들이 총 nk 개인 경우, 상기 복수 개의 재구성된 마스킹 영상들 역시 총 nk개가 생성될 수 있다. 도 5에서는 nk=4인 예이다.
이렇게 생성된 각각의 재구성된 마스킹 영상 역시 [c1, r1] 크기의 2차원 영상들로 복수 개의 채널을 형성한 것일 수 있다.
단계(S330)에서, 상기 각각의 재구성된 마스킹 영상을 구조 추론부(100)에 입력하여, 상기 복수 개의 재구성된 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득할 수 있다.
여기서, 상기 각각의 구조 추론부(100)에서 출력되는 상기 각각의 출력 영상은 상기 제1 2차원 영상(221)과 동일한 크기를 갖는다. 즉, 상기 제1 2차원 영상(221)이 [c1, r1] 크기를 갖는다면, 상기 각각의 출력 영상도 [c1, r1] 크기를 갖는다.
단계(S340)에서, 각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상(150)을 생성할 수 있다.
여기서 상기 마스킹된 영역을 추출하기 위하여 각각의 상기 출력 영상을 상기 제1 2차원 영상(221)에 대응시킬 수 있다. 즉, 상기 출력 영상으로부터 추출되는 부분은, 상기 제1 2차원 영상(221)에서 마스킹된 영역에 대응하는 영역일 수 있다.
상기 추론 영상(150) 역시 상기 각각의 출력 영상으로부터 생성된 것이므로, 상기 각각의 출력 영상이 [c1, r1] 크기를 갖는다면, 상기 추론 영상 역시 [c1, r1] 크기를 갖는다.
단계(S350)에서, 상기 3D 원본 영상(220) 중 제1 2차원 영상(221)(즉, 상기 재구성된 원본 영상(1220) 중 상기 제1 2차원 영상(221))과 상기 추론 영상(150) 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단할 수 있다.
상술한 방법은, 다음과 같은 상황에서 유용하게 사용될 수 있다. 즉, 3차원 구조를 갖는 제품의 구조가 특정 디멘젼의 방향을 따라 급격히 변하지 않는 상황에 있어서, 이 제품에 존재하는 결함은 상기 특정 디멘젼의 방향을 따라 급격하게 변할 수 있다. 이 때, 상기 제품을 스캔하여 얻은 상기 3D 원본 영상(220)은, 상기 제품을 상기 특정 디멘젼을 따라 슬라이스하여 얻은 복수 개의 슬라이스 영상들로 구성된 것일 수 있다. 여기서, 결함이 존재하는 제1슬라이스 영상에 대한 결함 존재여부를 추론하는 방법의 성능을 높이기 위하여, 상기 제1슬라이스 영상의 앞/뒤 슬라이스 영상의 정보를 추가적으로 이용하는 것이 상기 실시예의 기본 사상이다.
상기 복수 개의 슬라이드 영상들은 연속적으로 획득될 수 있으며, 이러한 연속적인 영상의 입력에 의해 획득되는 정보를 x라고 표기하면, x = [x(0), x(1),x(2) ... ,x(n-1)]로 표현될 수 있다. 이때, x{k}는 k번째 슬라이스 영상이다(k는 0 이상 n 미만의 정수).
이때, 상기 3D 원본 영상(220)을 구성하는 총 n개의 2차원 영상(슬라이스 영상)들 중 n1 개의 2차원 영상들을 선택하기 위하여 자연수 값을 갖는 스트라이드(stride)를 설정할 수 있다(단, n1은 2 이상 n 이하의 자연수).
만일, 예컨대 상기 스트라이드가 1이면 n1=n이 성립하고, 상기 스트라이드가 2이면 n1=floor(n/2)이 성립한다. 스트라이드가 2 이상인 경우 총 n개의 2차원 영상들을 한 개씩 건너 띄면서 스킵(skip)하게 된다. 즉, n개의 복수 이미지들이 있을 때에 스트라이드를 1로 설정하면 모든 2차원 영상들을 이용하는 것이고, 스트라이드를 2로 설정하면 연속적인 2차원 영상들 중 하나 건너 하나씩 버린다는 개념이다.
이때, 상기 구조 추론부(100)는 콘볼루션 레이어, 및 디콘볼루션 레이어를 포함하는 신경망일 수 있다.
그리고 상기 신경망은, 학습용으로 제공된 재구성된 원본 영상 중 상기 서브영상의 임의의 영역을 임의의 마스크를 이용하여 소정의 값으로 매핑함으로써 학습을 위한 재구성된 마스킹 영상을 생성하는 단계(S410), 상기 학습을 위한 재구성된 마스킹 영상을 상기 신경망에 입력하여 상기 신경망으로부터 추론 영상을 획득하는 단계(S420). 및 상기 추론 영상과 상기 서브영상과의 차이를 감소시키도록 상기 신경망을 학습시키는 단계(S430)를 포함하는 학습방법에 의해 학습된 것일 수 있다.
본 발명의 다른 실시예에 따라 제공되는 결함 검사 장치는, 원본 영상을 획득하는 데이터 획득부, 및 처리부를 포함할 수 있다.
상기 처리부는, 원본 영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 마스킹 영상들을 생성하는 단계, 상기 각각의 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계, 각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계, 및 상기 추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계를 실행하도록 되어 있을 수 있다.
상기 결함 검사 장치는, 컴퓨팅 장치일 수 있으며, 상기 처리부는 프로그램 코드에 의해 동작하는 범용의 메인 프로세서일 수 있다. 또는 상기 처리부는 상기 결함 검사 방법을 실행하기 위해 설계된 전용의 하드웨어 가속기일 수도 있다. 하드웨어 가속기의 경우 상기 범용의 메인 프로세서와는 별도의 칩 또는 SoC로서 제공될 수도 있다.
본 발명에 따라 개발된 딥러닝을 활용한 결함 검사 기술은 다양한 제품의 내외부 결함 검사, 품질 정량화의 핵심 기술로 사용될 수 있다. 영상에서 특정 대상을 자동으로 검사하는 기술은 결함 검사뿐만 아니라, 비파괴 검사와 같은 진단 분야에도 사용 될 수 있다. 또한 스마트 팩토리(Smart Factory) 구현의 필수기술로, 생산 조업 조건에 따른 설비의 상태를 판정하고 설비 상태에 따른 제품의 품질을 예측하여 생산 조건을 최적화하는 기술에도 응용될 수 있다.
상술한 본 발명의 실시예들을 이용하여, 본 발명의 기술 분야에 속하는 자들은 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에 다양한 변경 및 수정을 용이하게 실시할 수 있을 것이다. 특허청구범위의 각 청구항의 내용은 본 명세서를 통해 이해할 수 있는 범위 내에서 인용관계가 없는 다른 청구항에 결합될 수 있다.

Claims (12)

  1. 원본 영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 마스킹 영상들을 생성하는 단계;
    상기 각각의 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계;
    각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계; 및
    상기 추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계;
    를 포함하는,
    결함 검사 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 구조 추론부는 콘볼루션 레이어, 및 디콘볼루션 레이어를 포함하는 신경망이며,
    상기 신경망은, 콘볼루션 레이어 및 디콘볼루션 레이어를 포함하며,
    상기 콘볼루션 레이어로 이루어진 피쳐 추출부가 각각의 상기 마스킹 영상의 특징을 추출하도록 되어 있으며,
    상기 추출된 특징은 상기 디콘볼루션 레이어로 구성된 파트에서 다시 상기 원본 영상의 크기로 재구성되도록 되어 있는,
    결함 검사 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 복수 개의 영역들의 형상과 크기는 서로 동일하며,
    상기 복수 개의 영역들을 결합하면 상기 원본 영상을 복원할 수 있으며,
    상기 복수 개의 영역들은 상기 원본 영상 내에서 서로 오버랩되지 않으며, 그리고
    상기 원본 영상의 복수 개의 영역들을 각각 마스킹하기 위해 한 개의 마스크만이 이용되는,
    결함 검사 방법.
  6. 제1항에 있어서,
    상기 원본 영상의 복수 개의 영역들을 각각 마스킹하기 위해, 형상 또는 크기가 동일하지 않은 적어도 두 개의 마스크가 이용되며,
    상기 복수 개의 영역들을 결합하면 상기 원본 영상을 복원할 수 있으며, 그리고
    상기 복수 개의 영역들은 상기 원본 영상 내에서 서로 오버랩되지 않는,
    결함 검사 방법.
  7. 원본 영상 중 제1부분을 제1마스크를 이용하여 마스킹함으로써 상기 원본 영상으로부터 제1마스킹 영상을 생성하는 단계;
    상기 제1마스킹 영상을 구조 추론부에 입력하여, 상기 구조 추론부로부터 상기 제1마스킹 영상에 대한 제1추론 영상을 획득하는 단계; 및
    상기 제1추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 제1부분에 결함이 존재하는지 여부를 판단하는 단계;
    를 포함하는,
    결함 검사 방법.
  8. 삭제
  9. 제7항에 있어서,
    상기 구조 추론부는 콘볼루션 레이어, 및 디콘볼루션 레이어를 포함하는 신경망이며,
    상기 신경망은, 콘볼루션 레이어 및 디콘볼루션 레이어를 포함하며,
    상기 콘볼루션 레이어로 이루어진 피쳐 추출부가 상기 제1마스킹 영상의 특징을 추출하도록 되어 있으며,
    상기 추출된 특징은 상기 디콘볼루션 레이어로 구성된 파트에서 다시 상기 원본 영상의 크기로 재구성되도록 되어 있는,
    결함 검사 방법.
  10. 3D 원본 영상을 구성하는 n개의 2차원 영상들 중 선택된 2차원 영상들을 1개의 확장된 2차원 영상으로 재구성함으로써 재구성된 원본 영상을 획득하는 단계;
    상기 재구성된 원본 영상에서, 상기 선택된 2차원 영상들 중 제1 2차원 영상에 대응하는 서브영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 재구성된 마스킹 영상들을 생성하는 단계;
    상기 각각의 재구성된 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 재구성된 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계;
    각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계; 및
    상기 3D 원본 영상 중 상기 제1 2차원 영상과 상기 추론 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계;
    를 포함하는,
    결함 검사 방법.
  11. 삭제
  12. 원본 영상을 획득하는 데이터 획득부; 및
    처리부;
    를 포함하며,
    상기 처리부는,
    원본 영상의 복수 개의 영역들을 각각 마스킹함으로써 복수 개의 마스킹 영상들을 생성하는 단계;
    상기 각각의 마스킹 영상을 구조 추론부에 입력하여, 상기 복수 개의 마스킹 영상들로부터 추론되는 복수 개의 출력 영상들을 획득하는 단계;
    각각의 상기 출력 영상으로부터 상기 각각의 출력 영상을 생성하기 위해 마스킹된 영역들을 추출하고, 복수 개의 상기 추출된 영역들을 서로 결합하여 한 개의 추론 영상을 생성하는 단계; 및
    상기 추론 영상과 상기 원본 영상 간의 차이를 기초로 상기 원본 영상에 결함이 존재하는지 여부를 판단하는 단계;
    를 실행하도록 되어 있는,
    결함 검사 장치.
KR1020200067732A 2020-06-04 2020-06-04 제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법 KR102437115B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200067732A KR102437115B1 (ko) 2020-06-04 2020-06-04 제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200067732A KR102437115B1 (ko) 2020-06-04 2020-06-04 제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20210150834A KR20210150834A (ko) 2021-12-13
KR102437115B1 true KR102437115B1 (ko) 2022-08-29

Family

ID=78832072

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200067732A KR102437115B1 (ko) 2020-06-04 2020-06-04 제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102437115B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11846930B1 (en) * 2022-08-03 2023-12-19 Industrial Video Solutions Inc. Systems and methods for monitoring and controlling industrial processes
CN116740062B (zh) * 2023-08-14 2023-10-27 菲特(天津)检测技术有限公司 基于不规则胶圈的缺陷检测方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013126117A (ja) 2011-12-15 2013-06-24 Ricoh Co Ltd 画像処理装置、画像形成装置、画像処理方法及び画像処理プログラム
JP2021515951A (ja) 2018-03-09 2021-06-24 プリシミット リミテッド ラベルデータ処理システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101421941B1 (ko) * 2012-09-21 2014-07-28 주식회사 씨케이앤비 결함 검사 장치
DE112016007498B4 (de) * 2016-12-06 2020-11-26 Mitsubishi Electric Corporation Untersuchungseinrichtung und untersuchungsverfahren
KR101992970B1 (ko) * 2017-10-16 2019-06-26 한국생산기술연구원 딥러닝과 노이즈 제거 기술을 이용한 표면 결함 검출 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013126117A (ja) 2011-12-15 2013-06-24 Ricoh Co Ltd 画像処理装置、画像形成装置、画像処理方法及び画像処理プログラム
JP2021515951A (ja) 2018-03-09 2021-06-24 プリシミット リミテッド ラベルデータ処理システム

Also Published As

Publication number Publication date
KR20210150834A (ko) 2021-12-13

Similar Documents

Publication Publication Date Title
CN110945528B (zh) 产生可用于检查半导体样品的训练集的方法及其系统
EP4280153A1 (en) Defect detection method, apparatus and system
JP7004145B2 (ja) 欠陥検査装置、欠陥検査方法、及びそのプログラム
EP3739513A1 (en) Surface defect identification method and apparatus
WO2019117065A1 (ja) データ生成装置、データ生成方法及びデータ生成プログラム
CN110189288A (zh) 生成可用于半导体样本的检查的训练集的方法和其系统
KR102437115B1 (ko) 제품 구조 예측 기술을 이용한 딥러닝 기반 결함 검사 장치 및 방법
US20220244194A1 (en) Automated inspection method for a manufactured article and system for performing same
CN116030048B (zh) 灯检机及其方法
JP2022027473A (ja) 半導体試料の検査に使用可能な訓練データの生成
US11410300B2 (en) Defect inspection device, defect inspection method, and storage medium
CN116468663A (zh) 一种基于改进YOLOv5的表面微小缺陷检测的方法
JP2020112483A (ja) 外観検査システム、計算モデル構築方法及び計算モデル構築プログラム
CN115937555A (zh) 一种基于标准化流模型的工业缺陷检测算法
KR102369293B1 (ko) 듀얼 딥러닝을 이용한 제품의 내부 결함 검사 시스템 및 방법
Hake et al. Damage detection for port infrastructure by means of machine-learning-algorithms
Dakak et al. Deep learning-based defect detection in industrial ct volumes of castings
García et al. A configuration approach for convolutional neural networks used for defect detection on surfaces
KR20220111214A (ko) 인공지능 기반 제품 결함 검사 방법, 장치 및 컴퓨터 프로그램
JP7475901B2 (ja) 試験片上の欠陥検出の方法およびそのシステム
KR20230036650A (ko) 영상 패치 기반의 불량 검출 시스템 및 방법
JP2001099625A (ja) パターン検査装置およびパターン検査方法
JP2021174194A (ja) 学習用データ処理装置、学習装置、学習用データ処理方法、およびプログラム
WO2022172470A1 (ja) 画像検査装置、画像検査方法及び学習済みモデル生成装置
JP7257470B2 (ja) 欠陥検査装置、欠陥検査方法および予測モデル生成方法

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant