KR102317992B1 - 뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법 - Google Patents

뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법 Download PDF

Info

Publication number
KR102317992B1
KR102317992B1 KR1020210039597A KR20210039597A KR102317992B1 KR 102317992 B1 KR102317992 B1 KR 102317992B1 KR 1020210039597 A KR1020210039597 A KR 1020210039597A KR 20210039597 A KR20210039597 A KR 20210039597A KR 102317992 B1 KR102317992 B1 KR 102317992B1
Authority
KR
South Korea
Prior art keywords
image
defective
product
processor
neural network
Prior art date
Application number
KR1020210039597A
Other languages
English (en)
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 KR1020210039597A priority Critical patent/KR102317992B1/ko
Application granted granted Critical
Publication of KR102317992B1 publication Critical patent/KR102317992B1/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
    • G06T7/001Industrial image inspection using an image reference approach
    • G06K9/46
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • 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]

Landscapes

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

Abstract

뉴럴 네트워크를 이용한 제품 검사 방법 및 장치가 개시된다. 일 실시예에 따른 제품 검사 방법은, 제품의 이미지를 수신하는 단계와, 상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하는 단계와, 양품 이미지와 상기 이미지 간의 차이 맵(difference map)을 획득하는 단계와, 상기 차이 맵에 기초하여 추출한 상기 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 상기 제품의 불량 여부를 판단하는 단계를 포함한다.

Description

뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법{PRODUCT INSPECTION METHOD AND APPRATUS USING THE NEURAL NETWORK AND METHOD OF TRAINING PRODUCT INSPECTION APPRATUS}
실시예들은 뉴럴 네트워크를 이용한 제품 검사 방법 및 장치에 관한 것이다.
이상 탐지(anomaly detection)란 정상 샘플과 비정상 샘플을 구별해내는 문제를 의미한다. 다시 말해, 이상 탐지는 비정상 샘플이 정상 샘플과 얼마나 차이가 있는지를 구분하는 작업을 의미한다.
이상 탐지는 제조, 의료, 보안 등 다양한 분야에서 많이 사용되고 있다. 이상 탐지는 데이터 사용 여부에 따라 지도(supervised), 준 지도(semi-supervised) 및 비지도(unsupervised anomaly detection) 이상 탐지로 분류될 수 있다.
라벨링된 정상 샘플과 비정상 샘플의 데이터를 사용하여 학습하는 방법을 지도 이상 탐지(supervised anomaly detection)이라고 한다. 비정상 샘플이 부족한 클래스 임발란스(class-imbalance)의 경우 데이터를 사용하여 학습하는 방법을 비지도 이상 탐지(usupervised anomaly detection)라고 한다. 라벨링된 데이터와 라벨링 되어있지 않은 데이터를 사용하여 학습하는 방법을 준 지도 이상 탐지(semi-supervised anomaly detection)이라고 한다.
영상 정합(image registration)은 데이터를 하나의 좌표계로 변환하는 프로세스를 의미한다. 영상 정합은 컴퓨터 비전, 의료 영상, 위성 영상같은 데이터를 편집하고 분석할 때 주로 사용되며 서로 다른 데이터를 비교하거나 통합할 때 사용되는 기술이다.
다층 신경망 구조로 되어있는 딥러닝 알고리즘은 기존 룰 베이스 방식의 한계를 극복할 수 있다. 딥러닝 알고리즘은 주어진 데이터를 사전에 정의된 룰 기반의 비교뿐만 아니라, 양품 및 불량품 이미지에서 각각의 특징을 딥러닝 알고리즘 기반의 머신 비전 시스템 스스로가 찾아낼 수 있게 되었다.
즉, 기존의 불량 제품/부품 이미지와 조금 다르더라도 미리 학습된 분류모델로부터 추출된 특징을 바탕으로 불량 여부를 판단하기 때문에 룰 베이스보다 더 지능적이고 유연하고 범용적으로 판단할 수 있다.
산업용 비정상 탐지에서 미검률을 줄이는 것은 중요한 요소이며 기존 비정상 탐지는 미세한 결함을 구분하는데 한계가 있기 때문에 이를 극복하기 위한 방법이 필요하다.
실시예들은 뉴럴 네트워크를 이용한 제품 검사 기술을 제공할 수 있다. 다만, 기술적 과제는 상술한 기술적 과제들로 한정되는 것은 아니며, 또 다른 기술적 과제들이 존재할 수 있다.
일 실시예에 따른 제품 검사 방법은, 제품의 이미지를 수신하는 단계와, 상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하는 단계와, 양품 이미지와 상기 이미지 간의 차이 맵(difference map)을 획득하는 단계와, 상기 차이 맵에 기초하여 추출한 상기 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 상기 제품의 불량 여부를 판단하는 단계를 포함한다.
상기 양품 이미지를 생성하는 단계는, 상기 제1 뉴럴 네트워크에 기초하여 상기 이미지를 인코딩함으로써 제1 특징을 추출하는 단계와, 상기 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성하는 단계와, 상기 잠재 공간에 기초하여 디코딩을 수행함으로써 상기 양품 이미지를 생성하는 단계를 포함할 수 있다.
상기 양품 이미지를 생성하는 단계는, 상기 이미지를 GAN(Generative Adversarial Network)에 입력함으로써 상기 양품 이미지를 생성하는 단계를 포함할 수 있다.
상기 제품 검사 방법은, 상기 이미지에 기초하여 상기 양품 이미지를 정합하는 단계를 더 포함할 수 있다.
상기 정합하는 단계는, 상기 이미지 및 상기 양품 이미지로부터 제2 특징을 추출하는 단계와, 상기 제2 특징을 매칭하는 단계와, 매칭된 제2 특징에 기초하여 상기 양품 이미지를 변환함으로써 상기 양품 이미지를 정합하는 단계를 포함할 수 있다.
상기 차이 맵을 획득하는 단계는, 상기 양품 이미지의 픽셀 값으로부터 상기 이미지의 픽셀 값의 차이를 계산함으로써 상기 차이 맵을 획득하는 단계를 포함할 수 있다.
상기 불량 여부를 판단하는 단계는, 상기 차이 맵에 기초하여 상기 제품의 결함 영역을 추출하는 단계와, 상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지에 기초한 제1 손실을 계산하는 단계와, 상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산하는 단계와, 상기 제1 손실 및 상기 제2 손실에 기초하여 상기 불량 여부를 판단하는 단계를 포함할 수 있다.
상기 결함 영역을 추출하는 단계는, 상기 차이 맵을 복수의 패치로 분할하는 단계와, 상기 복수의 패치에 대하여 상기 양품 이미지와 상기 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산하는 단계와, 상기 복수의 패치 점수에 기초하여 상기 결함 영역을 추출하는 단계를 포함할 수 있다.
상기 복수의 패치 점수에 기초하여 상기 결함 영역을 추출하는 단계는, 상기 복수의 패치 중에서 패치 점수가 상기 복수의 패치 점수의 평균보다 높은 패치들을 상기 결함 영역으로 추출하는 단계를 포함할 수 있다.
일 실시예에 따른 제품 검사 장치는, 제품의 이미지를 수신하는 수신기와, 상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하고, 상기 양품 이미지와 상기 이미지 간의 차이 맵(difference map)을 획득하고, 상기 차이 맵에 기초하여 추출한 상기 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 상기 제품의 불량 여부를 판단하는 프로세서를 포함한다.
상기 프로세서는, 상기 제1 뉴럴 네트워크에 기초하여 상기 이미지를 인코딩함으로써 제1 특징을 추출하고, 상기 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성하고, 상기 잠재 공간에 기초하여 디코딩을 수행함으로써 상기 양품 이미지를 생성할 수 있다.
상기 프로세서는, 상기 이미지를 GAN(Generative Adversarial Network)에 입력함으로써 상기 양품 이미지를 생성할 수 있다.
상기 프로세서는, 상기 이미지에 기초하여 상기 양품 이미지를 정합할 수 있다.
상기 프로세서는, 상기 이미지 및 상기 양품 이미지로부터 제2 특징을 추출하고, 상기 제2 특징을 매칭하고, 매칭된 제2 특징에 기초하여 상기 양품 이미지를 변환함으로써 상기 양품 이미지를 정합할 수 있다.
상기 프로세서는, 상기 양품 이미지의 픽셀 값으로부터 상기 이미지의 픽셀 값의 차이를 계산함으로써 상기 차이 맵을 획득할 수 있다.
상기 프로세서는, 상기 차이 맵에 기초하여 상기 제품의 결함 영역을 추출하고, 상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지에 기초한 제1 손실을 계산하고, 상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산할 수 있다.
상기 프로세서는, 상기 차이 맵을 복수의 패치로 분할하고, 상기 복수의 패치에 대하여 상기 양품 이미지와 상기 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산하고, 상기 복수의 패치 점수에 기초하여 상기 결함 영역을 추출할 수 있다.
상기 프로세서는, 상기 복수의 패치 중에서 패치 점수가 상기 복수의 패치 점수의 평균보다 높은 패치들을 상기 결함 영역으로 추출할 수 있다.
일 실시예에 따른 제품 검사 장치 학습 방법은, 제품의 이미지를 수신하는 단계와, 상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하는 단계와, 상기 양품 이미지 및 상기 이미지로부터 복수의 학습 영역들을 추출하는 단계와, 상기 복수의 학습 영역들에 기초하여 상기 제1 뉴럴 네트워크에 관련된 제1 손실을 계산하는 단계와, 상기 복수의 학습 영역들에 기초한 제2 뉴럴 네트워크의 출력에 기초하여 제2 손실을 계산하는 단계와, 상기 제1 손실 및 상기 제2 손실에 기초하여 상기 제1 뉴럴 네트워크 및 상기 제2 뉴럴 네트워크를 학습시키는 단계를 포함한다.
상기 복수의 학습 영역들을 추출하는 단계는, 상기 양품 이미지 및 상기 이미지를 복수의 그리드로 분할하는 단계와, 상기 복수의 그리드 중에서 일부의 그리드들을 추출함으로써 상기 복수의 학습 영역들을 추출하는 단계를 포함할 수 있다.
도 1은 제품 검사 장치의 개략적인 블록도를 나타낸다.
도 2는 도 1에 도시된 제품 검사 장치의 동작을 설명하기 위한 도면이다.
도 3은 양품 이미지를 생성하는 과정을 나타낸다.
도 4는 이미지를 정합하는 과정을 나타낸다.
도 5는 차이 맵을 생성하는 과정을 나타낸다.
도 6a는 결함 영역을 추출하는 과정의 일 예를 나타낸다.
도 6b는 결함 영역을 추출하는 과정의 다른 예를 나타낸다.
도 6c는 결함 영역을 추출하는 과정의 또 다른 예를 나타낸다.
도 7은 학습 영역을 추출하는 과정을 나타낸다.
도 8은 제품의 결함을 판별하는 동작을 나타낸다.
도 9는 제품 검사 장치를 학습시키는 과정을 나타낸다.
도 10은 도 1에 도시된 제품 검사 장치의 동작의 흐름도를 나타낸다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
본 명세서에서의 모듈(module)은 본 명세서에서 설명되는 각 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 특정 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체, 예를 들어 프로세서 또는 마이크로 프로세서를 의미할 수 있다.
다시 말해, 모듈이란 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.
도 1은 제품 검사 장치의 개략적인 블록도를 나타낸다.
도 1을 참조하면, 제품 검사 장치(10)는 제품(product)의 이미지에 기초하여 제품을 검사할 수 있다. 제품 검사 장치(10)는 제품의 이미지(이하, 이미지 또는 원본 이미지라함)를 처리하여 제품의 불량을 검사할 수 있다.
제품은 생산 시설에서 임의의 원료를 사용하여 만들어진 물건을 의미할 수 있다. 이미지는 빛의 굴절이나 반사 등에 의하여 이루어진 물체의 상을 포함하는 것으로, 선이나 색채를 이용하여 사물의 형상을 나타낸 것을 의미할 수 있다. 예를 들어, 이미지는 컴퓨터가 처리할 수 있는 형태로 된 정보로 이루어질 수 있다.
제품의 이미지는 제품의 외관을 임의의 이미지 센서를 포함하는 이미지 획득 장치를 이용하여 측정되는 빛의 굴절이나 반사 등에 의하여 이루어진 제품의 상을 의미할 수 있다.
제품 검사 장치(10)는 제품의 불량을 검사하여 제품의 불량 검사 결과를 출력할 수 있다. 제품의 불량 검사 결과는 제품의 불량 여부에 관한 정보, 제품의 불량의 위치, 제품의 불량의 크기, 제품의 불량의 유형 등을 포함할 수 있다.
제품 검사 장치(10)는 제품의 이미지 또는 제품의 이미지를 이용한 학습데이터에 기초하여 제품을 검사할 수 있다. 제품 검사 장치(10)는 학습 데이터에 기초하여 뉴럴 네트워크를 학습시키고, 학습된 뉴럴 네트워크에 기초하여 제품을 검사함으로써 제품의 양품 또는 불량 여부를 판단(또는, 판별)할 수 있다.
뉴럴 네트워크(또는 인공 신경망)는 기계학습과 인지과학에서 생물학의 신경을 모방한 통계학적 학습 알고리즘을 포함할 수 있다. 뉴럴 네트워크는 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)이 학습을 통해 시냅스의 결합 세기를 변화시켜, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다.
뉴럴 네트워크의 뉴런은 가중치 또는 바이어스의 조합을 포함할 수 있다. 뉴럴 네트워크는 하나 이상의 뉴런 또는 노드로 구성된 하나 이상의 레이어(layer)를 포함할 수 있다. 뉴럴 네트워크는 뉴런의 가중치를 학습을 통해 변화시킴으로써 임의의 입력으로부터 예측하고자 하는 결과를 추론할 수 있다.
뉴럴 네트워크는 심층 뉴럴 네트워크 (Deep Neural Network)를 포함할 수 있다. 뉴럴 네트워크는 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), 퍼셉트론(perceptron), FF(Feed Forward), RBF(Radial Basis Network), DFF(Deep Feed Forward), LSTM(Long Short Term Memory), GRU(Gated Recurrent Unit), AE(Auto Encoder), VAE(Variational Auto Encoder), DAE(Denoising Auto Encoder), SAE(Sparse Auto Encoder), MC(Markov Chain), HN(Hopfield Network), BM(Boltzmann Machine), RBM(Restricted Boltzmann Machine), DBN(Depp Belief Network), DCN(Deep Convolutional Network), DN(Deconvolutional Network), DCIGN(Deep Convolutional Inverse Graphics Network), GAN(Generative Adversarial Network), LSM(Liquid State Machine), ELM(Extreme Learning Machine), ESN(Echo State Network), DRN(Deep Residual Network), DNC(Differentiable Neural Computer), NTM(Neural Turning Machine), CN(Capsule Network), KN(Kohonen Network) 및 AN(Attention Network)를 포함할 수 있다.
제품 검사 장치(10)는 뉴럴 네트워크를 이용하여 양품 이미지를 생성하고, 원본 이미지와 비교함으로써 결함 영역을 추출할 수 잇다. 제품 검사 장치(10)는 결함 영역을 이용하여 미세한 결함도 판별할 수 있다.
제품 검사 장치(10)는 다양한 이미지 복원 또는 생성 방법을 이용하여 양품 이미지를 생성하고, 원본 이미지와 비교하고, 양품 이미지와 원본 이미지가 어긋날 경우 이미지 정합을 통해 이미지 간의 차이를 정확하게 파악함으로써 제품 검사의 성능을 향상시킬 수 있다.
제품 검사 장치(10)는 수신기(100) 및 프로세서(200)를 포함한다. 제품 검사 장치(10)는 메모리(300)를 더 포함할 수 있다.
수신기(100)는 수신 인터페이스를 포함할 수 있다. 수신기(100)는 제품의 이미지를 수신할 수 있다. 수신기(100)는 외부 또는 메모리(300)로부터 제품의 이미지를 수신할 수 있다. 수신기(100)는 프로세서(200)로 제품의 이미지를 출력할 수 있다.
프로세서(200)는 메모리(300)에 저장된 데이터를 처리할 수 있다. 프로세서(200)는 메모리(300)에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(200)에 의해 유발된 인스트럭션(instruction)들을 실행할 수 있다.
"프로세서(200)"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다.
예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(200)는 별도의 연산기를 이용하여 뉴럴 네트워크 연산을 수행할 수 있다. 연산기는 가속기를 포함할 수 있다. 가속기는 뉴럴 네트워크 어플리케이션을 가속하기 위해 설계된 특수한 하드웨어 또는 컴퓨터 시스템을 의미할 수 있다.
가속기는 GPU(Graphics Processing Unit), NPU(Neural Processing Unit), FPGA(Field Programmable Gate Array), ASIC(Application Specific Integrated Circuit) 또는 AP(Application Processor)를 포함할 수 있다. 또한, 가속기는 가상 머신(Virtual Machine)와 같이 소프트웨어 컴퓨팅 환경으로 구현될 수도 있다.
프로세서(200)는 이미지를 제1 뉴럴 네트워크에 입력함으로써 제품의 양품 이미지를 생성할 수 있다. 양품 이미지는 입력된 이미지를 이용하여 양품처럼 복원하거나 양품과 같이 생성된 이미지를 의미할 수 있다.
프로세서(200)는 제1 뉴럴 네트워크에 기초하여 이미지를 인코딩함으로써 제1 특징을 추출할 수 있다. 프로세서(200)는 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성할 수 있다. 프로세서(200)는 잠재 공간에 기초하여 디코딩을 수행함으로써 양품 이미지를 생성할 수 있다.
또는, 프로세서(200)는 이미지를 GAN(Generative Adversarial Network)에 입력함으로써 양품 이미지를 생성할 수 있다.
실시예에 따라, 프로세서(200)는 인코딩 및 GAN 이외의 다른 이미지 생성 또는 복원 알고리즘을 이용하여 양품 이미지를 생성할 수 있다.
프로세서(200)는 이미지에 기초하여 양품 이미지를 정합할 수 있다. 프로세서(200)는 이미지 및 양품 이미지로부터 제2 특징을 추출할 수 있다. 프로세서(200)는 제2 특징을 매칭할 수 있다. 프로세서(200)는 매칭된 제2 특징에 기초하여 양품 이미지를 변환함으로써 양품 이미지를 정합할 수 있다.
프로세서(200)는 양품 이미지와 이미지 간의 차이 맵(difference map)을 획득할 수 있다. 프로세서(200)는 양품 이미지의 픽셀 값으로부터 이미지의 픽셀 값의 차이를 계산함으로써 차이 맵을 획득할 수 있다.
프로세서(200)는 차이 맵에 기초하여 추출한 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 제품의 불량 여부를 판단할 수 있다. 프로세서(200)는 차이 맵에 기초하여 제품의 결함 영역을 추출할 수 있다.
프로세서(200)는 차이 맵을 복수의 패치로 분할할 수 있다. 프로세서(200)는 복수의 패치에 대하여 양품 이미지와 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산할 수 있다.
프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역을 추출할 수 있다. 프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역을 추출할 수 있다. 프로세서(200)는 복수의 패치 중에서 패치 점수가 복수의 패치 점수의 평균보다 높은 패치들을 결함 영역으로 추출할 수 있다.
프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지에 기초한 제1 손실을 계산할 수 있다. 프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산할 수 있다.
프로세서(200)는 제1 손실 및 상기 제2 손실에 기초하여 불량 여부를 판단할 수 있다.
프로세서(200)는 이미지를 제1 뉴럴 네트워크에 입력함으로써 제품의 양품 이미지를 생성할 수 있다.
프로세서(200)는 양품 이미지 및 이미지로부터 복수의 학습 영역들을 추출할 수 있다. 프로세서(200)는 양품 이미지 및 이미지를 복수의 그리드로 분할할 수 있다. 프로세서(200)는 복수의 그리드 중에서 일부의 그리드들을 추출함으로써 복수의 학습 영역들을 추출할 수 있다.
프로세서(200)는 복수의 학습 영역들에 기초하여 제1 뉴럴 네트워크에 관련된 제1 손실을 계산할 수 있다. 복수의 학습 영역들에 기초한 제2 뉴럴 네트워크의 출력에 기초하여 제2 손실을 계산할 수 있다.
프로세서(200)는 제1 손실 및 제2 손실에 기초하여 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크를 학습시킬 수 있다.
메모리(300)는 프로세서(200)에 의해 실행가능한 인스트럭션들(또는 프로그램)을 저장할 수 있다. 예를 들어, 인스트럭션들은 프로세서의 동작 및/또는 프로세서의 각 구성의 동작을 실행하기 위한 인스트럭션들을 포함할 수 있다.
메모리(300)는 휘발성 메모리 장치 또는 불휘발성 메모리 장치로 구현될 수 있다.
휘발성 메모리 장치는 DRAM(dynamic random access memory), SRAM(static random access memory), T-RAM(thyristor RAM), Z-RAM(zero capacitor RAM), 또는 TTRAM(Twin Transistor RAM)으로 구현될 수 있다.
불휘발성 메모리 장치는 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시(flash) 메모리, MRAM(Magnetic RAM), 스핀전달토크 MRAM(Spin-Transfer Torque(STT)-MRAM), Conductive Bridging RAM(CBRAM), FeRAM(Ferroelectric RAM), PRAM(Phase change RAM), 저항 메모리(Resistive RAM(RRAM)), 나노 튜브 RRAM(Nanotube RRAM), 폴리머 RAM(Polymer RAM(PoRAM)), 나노 부유 게이트 메모리(Nano Floating Gate Memory(NFGM)), 홀로그래픽 메모리(holographic memory), 분자 전자 메모리 소자(Molecular Eelectronic Memory Device), 또는 절연 저항 변화 메모리(Insulator Resistance Change Memory)로 구현될 수 있다.
도 2는 도 1에 도시된 제품 검사 장치의 동작을 설명하기 위한 도면이다.
도 2를 참조하면, 수신기(예: 도 1의 수신기(100))는 제품의 이미지를 수신할 수 있다(210). 수신기(100)는 제품의 이미지를 프로세서(예: 도 1의 프로세서(200))로 출력할 수 있다.
프로세서(200)는 제품의 이미지를 제1 뉴럴 네트워크에 입력함으로써 제품의 양품 이미지를 생성할 수 있다(220). 제1 뉴럴 네트워크는 이미지 복원 모델을 포함할 수 있다.
제1 뉴럴 네트워크는 양품 이미지를 학습 데이터로 이용하여 학습될 수 있다. 제1 뉴럴 네트워크는 수신한 이미지가 양품인지 여부에 관계없이 수신한 이미지를 처리하여 수신한 제품 이미지에 대응하는 양품 이미지를 생성할 수 있다.
프로세서(200)는 제품의 이미지에 기초하여 새로운 양품 이미지를 생성하거나, 제품의 이미지를 복원함으로써 양품 이미지를 생성할 수 있다. 예를 들어, 프로세서(200)는 오토 인코더(auto-encoder) 또는, GAN(Generative Adversarial Network)을 이용하여 양품 이미지를 생성할 수 있다.
프로세서(200)는 제1 뉴럴 네트워크에 기초하여 이미지를 인코딩함으로써 제1 특징을 추출할 수 있다. 프로세서(200)는 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성할 수 있다. 프로세서(200)는 잠재 공간에 기초하여 디코딩을 수행함으로써 양품 이미지를 생성할 수 있다. 또는, 프로세서(200)는 이미지를 GAN에 입력함으로써 양품 이미지를 생성할 수 있다.
프로세서(200)는 이미지에 기초하여 양품 이미지를 정합할 수 있다(230). 이미지 정합 과정은 선택적으로 수행될 수 있다. 다시 말해, 이미지 정합 과정없이 제품 검사가 수행될 수 있다.
이미지 정합 과정은 생성된 양품 이미지와 제품의 원본 이미지를 비교하여 동일한 좌표계를 갖도록하는 과정을 포함할 수 있다. 프로세서(200)는 이미지 정합을 통해 생성된 양품 이미지와 제품의 원본 이미지 간의 좌표 차이를 줄일 수 있다.
프로세서(200)는 이미지 및 양품 이미지로부터 제2 특징을 추출할 수 있다. 프로세서(200)는 제2 특징을 매칭할 수 있다. 프로세서(200)는 매칭된 제2 특징에 기초하여 상기 양품 이미지를 변환함으로써 양품 이미지를 정합할 수 있다.
프로세서(200)는 양품 이미지와 이미지 간의 차이 맵(difference map)을 획득할 수 있다(240). 프로세서(200)는 양품 이미지의 픽셀 값으로부터 이미지의 픽셀 값의 차이를 계산함으로써 차이 맵을 획득할 수 있다. 다시 말해, 차이 맵은 원본 제품 이미지와 생성된 양품 이미지 간의 변화량을 나타낼 수 있다.
프로세서(200)는 차이 맵에 기초하여 추출한 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 제품의 불량 여부를 판단할 수 있다.
프로세서(200)는 차이 맵에 기초하여 제품의 결함 영역을 추출할 수 있다(250). 프로세서(200)는 제품의 이미지와 양품 이미지를 일정한 영역으로 분할함으로써 세분화된 분석을 수행할 수 있다. 예를 들어, 프로세서(200)는 이미지 또는 양품 이미지를 그리드(grid) 또는 패치(patch) 단위로 분할하고, 변화량이 큰 영역을 결함 영역으로 추출할 수 있다.
프로세서(200)는 차이 맵을 복수의 패치로 분할할 수 있다. 프로세서(200)는 복수의 패치에 대하여 양품 이미지와 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산할 수 있다.
프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역을 추출할 수 있다. 프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역을 추출할 수 있다. 프로세서(200)는 복수의 패치 중에서 패치 점수가 복수의 패치 점수의 평균보다 높은 패치들을 결함 영역으로 추출할 수 있다.
프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지에 기초한 제1 손실을 계산할 수 있다. 프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산할 수 있다.
프로세서(200)는 제1 손실 및 상기 제2 손실에 기초하여 불량 여부를 판단할 수 있다(260). 프로세서(200)는 차이 맵에서의 변화량에 기초하여 제품의 양품 또는 불량 여부를 판단할 수 있다. 예를 들어, 프로세서(200)는 차이 맵에서의 변화량이 미리 결정된 범위 이상인 경우 제품이 불량이라고 판단할 수 있다.
프로세서(200)는 제2 뉴럴 네트워크를 이용하여 제품의 양품 또는 불량을 판단할 수 있다. 예를 들어, 프로세서(200)는 SVM(Support Vector Machine) 알고리즘을 이용하여 제품의 양품 또는 불량을 판단할 수 있다.
도 3은 양품 이미지를 생성하는 과정을 나타낸다.
도 3을 참조하면, 프로세서(예: 도 1의 프로세서(200))는 이미지를 제1 뉴럴 네트워크에 입력함으로써 제품의 양품 이미지를 생성할 수 있다. 예를 들어, 프로세서(200)는 오토 인코더 방식을 이용하여 제품의 이미지를 복원하므로써 양품 이미지를 생성할 수 있다.
프로세서(200)는 인코더(310)를 통해 제1 뉴럴 네트워크에 기초하여 이미지를 인코딩함으로써 제1 특징을 추출할 수 있다. 프로세서(200)는 제1 특징을 압축함으로써 잠재 공간(latent space)(320)을 형성할 수 있다. 예를 들어, 프로세서(200)는 추출한 제1 특징 중에서 대표 특징만을 선택하여 잠재 공간(320)을 형성할 수 있다. 대표 특징은 양품과 관련된 특징을 포함할 수 있다.
프로세서(200)는 디코더(330)를 통해 잠재 공간(320)에 기초하여 디코딩을 수행함으로써 양품 이미지를 생성할 수 있다. 프로세서(200)는 잠재 공간에 내재된 대표 특징을 이용하여 복원을 수행함으로써 양품 이미지를 생성할 수 있다.
프로세서(200)는 제품의 이미지와 생성된 양품의 이미지의 차이를 계산함으로써 제품의 양품 또는 불량을 판단할 수 있다.
도 4는 이미지를 정합하는 과정을 나타낸다.
도 4를 참조하면, 프로세서(200)는 이미지에 기초하여 양품 이미지를 정합할 수 있다. 프로세서(200)는 정합을 통해 이미지와 양품 이미지 간의 좌표계를 일치시킬 수 있다.
프로세서(200)는 특징 기술을 수행하여 제2 특징을 추출할 수 있다(410). 프로세서(200)는 이미지 및 양품 이미지로부터 제2 특징을 추출할 수 있다. 예를 들어, 프로세서(200)는 BRIEF(Binary Robust Independent Elementary Features), BRIST(Binary Robust Invariant Scalable Keypoints) 또는 ORB(ORB(Oriented FAST and Rotated BRIEF) 방식을 이용하여 제2 특징을 추출할 수 있다.
프로세서(200)는 제2 특징을 매칭할 수 있다(430). 프로세서(200)는 제2 특징을 매칭하여 이미지 변환을 위한 정보를 획득할 수 있다. 예를 들어, 프로세서(200)는 브루트 포스(brute force), KNN(K-Nearest Neighbor) 또는 라디우스(radius) 방식을 이용하여 제2 특징을 매칭할 수 있다.
프로세서(200)는 매칭된 제2 특징에 기초하여 상기 양품 이미지를 변환함으로써 양품 이미지를 정합할 수 있다(450). 예를 들어, 프로세서(200)는 프로젝티브(projective), 아핀(affine), 닮음(similarity) 또는 유클리디안(euclidean) 변환 방식을 이용하여 양품 이미지의 좌표계를 변환함으로써 이미지와의 정합을 수행할 수 있다.
상술한 이미지 정합을 이용할 경우, 제1 뉴럴 네트워크를 이용한 이미지 생성에 있어서 복원률을 향상시킬 수 있다. 또한, 프로세서(200)는 결함으로 예측된 영역을 크롭(crop)하여 세밀한 결함을 검사할 수 있다
도 5는 차이 맵을 생성하는 과정을 나타낸다.
도 5를 참조하면, 프로세서(200)는 양품 이미지(510 또는 540)와 이미지(520 또는 550) 간의 차이 맵(530 또는 560)을 획득할 수 있다. 프로세서(200)는 양품 이미지(510 또는 540)의 픽셀 값으로부터 이미지(520 또는 550)의 픽셀 값의 차이를 계산함으로써 차이 맵(530 또는 560)을 획득할 수 있다.
정합 과정은 선택적으로 수행될 수 있다. 다시 말해, 정합 과정은 필요에 따라 수행되지 않을 수 있다. 예를 들어, 양품 이미지(510)와 제품 이미지(520)의 좌표계가 일치하는 경우에는 프로세서(200)는 정합 과정을 수행하지 않을 수 있다.
프로세서(200)는 상술한 정합 과정을 통해 차이 맵(530)에서 발생하는 불완전한 픽셀의 변화량을 감소시킬 수 있다. 프로세서(200)는 양품 이미지(510)를 상술한 정합을 통해 양품 이미지(540)로 변환할 수 있다.
도 5의 예시에서, 정합 전의 차이 맵(530)에는 클립의 외곽 부분의 차이가 도드라지지만, 프로세서(200)는 정합을 통해 클립의 외곽의 차이를 감소시키고, 결함 영역(예: 제품 이미지(520 또는 550)의 가운데 검은 점 부준)만이 선명한 차이를 가지도록 만들 수 있다.
도 6a는 결함 영역을 추출하는 과정의 일 예를 나타내고, 도 6b는 결함 영역을 추출하는 과정의 다른 예를 나타내고, 도 6c는 결함 영역을 추출하는 과정의 또 다른 예를 나타낸다.
도 6a 내지 도 6c를 참조하면, 프로세서(예: 도 1의 프로세서(200))는 차이 맵에 기초하여 추출한 제품의 결함 영역(610, 630, 650)을 제2 뉴럴 네트워크에 입력함으로써 제품의 불량 여부를 판단할 수 있다. 프로세서(200)는 차이 맵에 기초하여 제품의 결함 영역(610, 630, 650)을 추출할 수 있다.
프로세서(200)는 차이 맵을 복수의 패치로 분할할 수 있다. 프로세서(200)는 복수의 패치에 대하여 양품 이미지와 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산할 수 있다.
프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역(610, 630, 650)을 추출할 수 있다. 프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역(610, 630, 650)을 추출할 수 있다. 프로세서(200)는 복수의 패치 중에서 패치 점수가 복수의 패치 점수의 평균보다 높은 패치들을 결함 영역(610, 630, 650)으로 추출할 수 있다.
하나의 차이 맵은 복수의 그리드 또는 복수의 패치를 포함할 수 있다. 도 6a의 예시는 그리드가 이미지를 격자 형식으로 분할하는 모습을 나타낼 수 있다.
하나의 패치는 복수의 그리드를 포함할 수 있다. 도6b의 예시는 그리드로 나뉘어진 패치의 예시를 나타낼 수 있다. 패치의 개수는 이미지의 크기의 비율을 이용하여 정의될 수 있다. 예를 들어, 패치의 개수는 수학식 1을 이용하여 정의될 수 있다.
Figure 112021035868276-pat00001
여기서, n은 패치의 개수를 의미할 수 있고, width는 입력 이미지의 너비를 의미하고, height는 입력 이미지의 높이를 의미할 수 있다.
프로세서(200)는 각각의 패치에 대하여 이미지(또는, 원본 이미지)와 양품 이미지 간의 픽셀 값의 차이를 이용하여 패치 점수를 계산할 수 있다.
프로세서(200)는 전체 패치에 대한 패치 점수의 평균보다 높은 패치 점수를 갖는 패치들 중에서 연결된 패치들을 결함 패치로 정의할 수 있다.
프로세서(200)는 결함 패치를 결함 영역(610, 630, 650)으로 결정할 수 있다. 프로세서(200)는 결함 패치들의 최소 x, y 좌표를 획득하고, 최대 x, y 좌표를 획득할 수 있다. 프로세서(200)는 획득한 최소 x, y 좌표 및 최대 x, y 좌표를 이용하여 결함 영역(610, 630, 650)을 형성할 수 있다.
프로세서(200)는 결함 패치들의 최대 x 좌표에서 최소 x좌표를 뺌으로써 결함 영역의 너비를 획득하고, 결함 패치들의 최대 y 좌표에서 최소 y좌표를 뺌으로써 결함 영역의 높이를 획득할 수 있다. 도 6c의 예시는 x, y 좌표의 최소값을 이용하여 결함 영역의 너비 및 높이를 획득하는 과정을 나타낼 수 있다.
도 7은 학습 영역을 추출하는 과정을 나타낸다.
도 7을 참조하면, 프로세서(예: 도 1의 프로세서(200))는 양품 이미지 및 이미지로부터 복수의 학습 영역들을 추출할 수 있다. 프로세서(200)는 양품 이미지 및 이미지를 복수의 그리드로 분할할 수 있다. 프로세서(200)는 복수의 그리드 중에서 일부의 그리드들을 추출함으로써 복수의 학습 영역들을 추출할 수 있다.
프로세서(200)는 미리 설정된 그리드로 양품 이미지 또는 이미지를 분할할 수 있다. 프로세서(200)는 슬라이딩 윈도우(sliding window) 방식을 이용하여 학습 영역들을 추출할 수 있다(710). 예를 들어, 프로세서(200)는 그리드를 기준으로 1×1, 2×2, 3×3, 4×4 및 5×5 그리드의 크기를 갖는 학습 영역을 생성할 수 있다.
프로세서(200)는 영역 추출 프로세스를 통해 양품 이미지 또는 이미지를 미리 설정된 크기의 그리드를 이용하여 분할할 수 있다(720). 도 7의 예시는, 다양한 그리드 크기를 갖는 학습 영역의 추출 과정을 나타낼 수 있다. 도 7의 예시에서 학습 영역이 정사각형으로 표현되었지만, 실시예에 따라 학습 영역은 다각형 또는 임의의 도형의 형태를 가질 수 있다.
프로세서(200)는 미리 설정된 크기의 그리드를 이용하여 양품 이미지 또는 이미지를 분할함으로써 실제 추출된 학습 영역을 생성할 수 있다(730).
도 8은 제품의 결함을 판별하는 동작을 나타낸다.
도 8을 참조하면, 프로세서(예: 도 1의 프로세서(200))는 결함 영역을 이용하여 양품 이미지 및 이미지에 기초한 제1 손실을 계산할 수 있다. 프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산할 수 있다. 프로세서(200)는 제1 손실 및 상기 제2 손실에 기초하여 불량 여부를 판단할 수 있다.
프로세서(200)는 상술한 방법을 이용하여 차이 맵으로터 결함 영역을 추출하고, 차이 맵으로부터 검출된 좌표(810)를 이용하여 제1 손실을 계산할 수 있다. 차이 맵으로부터 검출된 좌표(810)는 결함 영역의 좌표를 의미할 수 있다.
프로세서(200)는 양품 이미지(820)에서 차이 맵으로부터 검출된 좌표(810)에 대응하는 영역을 획득하고, 이미지(830)(또는, 제품 이미지, 원본 이미지)로부터 차이 맵으로부터 검출된 좌표(810)에 대응하는 영역을 획득할 수 있다.
양품 이미지(820)에서 차이 맵으로부터 검출된 좌표(810)에 대응하는 영역은 도 8의 예시에서, 양품 이미지에서 결함으로 예측되는 영역(840)을 의미할 수 있고, 이미지(830)에서 차이 맵으로부터 검출된 좌표(810)에 대응하는 영역은 제품 이미지에서 결함으로 예측되는 영역(850)을 의미할 수 있다.
프로세서(200)는 양품 이미지에서 결함으로 예측되는 영역(840)과 제품 이미지에서 결함으로 예측되는 영역(850)을 이용하여 제1 손실을 계산할 수 있다. 예를 들어, 프로세서(200)는 제1 손실을 수학식 2를 이용하여 계산할 수 있다.
Figure 112021035868276-pat00002
여기서,
Figure 112021035868276-pat00003
는 제1 손실을 의미하고,
Figure 112021035868276-pat00004
는 이미지(또는, 원본 이미지, 제품 이미지)를 의미하고,
Figure 112021035868276-pat00005
는 양품 이미지를 의미할 수 있다. 제1 손실을 복원 손실(reconstruction loss)을 포함할 수 있다.
프로세서(200)는 제2 뉴럴 네트워크를 이용하여 이미지와 양품 이미지 사이의 특징을 비교할 수 있다. 예를 들어, 제2 뉴럴 네트워크는 판별기(discriminator)(860)를 포함할 수 있다.
프로세서(200)는 양품 이미지에서 결함으로 예측되는 영역(840)과 제품 이미지에서 결함으로 예측되는 영역(850)에 대한 판별기(860)의 출력에 기초하여 제2 손실을 계산할 수 있다. 예를 들어, 프로세서(200)는 수학식 3을 이용하여 제2 손실을 계산할 수 있다.
Figure 112021035868276-pat00006
여기서,
Figure 112021035868276-pat00007
는 제2 손실을 의미하고,
Figure 112021035868276-pat00008
는 양품 이미지에 대한 판별기(860)의 출력을 의미하고,
Figure 112021035868276-pat00009
는 이미지에 대한 판별기(860)의 출력을 의미할 수 있다. 제2 손실은 판별기 손실(discriminator loss)를 포함할 수 있다.
프로세서(200)는 제1 손실 및 제2 손실에 기초하여 최종 손실을 계산할 수 있다. 예를 들어, 프로세서(200)는 수학식 4를 이용하여 최종 손실을 계산할 수 있다.
Figure 112021035868276-pat00010
여기서,
Figure 112021035868276-pat00011
는 최종 손실을 의미하고,
Figure 112021035868276-pat00012
는 패치 점수의 중요도 관계를 제어하는 변수를 의미할 수 있다. 예를 들어,
Figure 112021035868276-pat00013
는 실험적으로 결정될 수 있다.
도 9는 제품 검사 장치를 학습시키는 과정을 나타낸다.
도 9를 참조하면, 프로세서(예: 도 1의 프로세서(200))는 복수의 학습 영역들에 기초하여 제1 뉴럴 네트워크에 관련된 제1 손실을 계산할 수 있다. 복수의 학습 영역들에 기초한 제2 뉴럴 네트워크의 출력에 기초하여 제2 손실을 계산할 수 있다.
프로세서(200)는 제1 손실 및 제2 손실에 기초하여 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크를 학습시킬 수 있다.
프로세서(200)는 도 7에서 설명한 것과 같은 방식으로 복수의 학습 영역을 생성할 수 있다. 다시 말해, 프로세서(200)는 슬라이딩 윈도우를 이용하여 2×2, 3×3, 4×4 및 5×5 그리드의 크기를 갖는 학습 영역을 생성할 수 있다.
프로세서(200)는 원본 이미지(910)에 대해서 학습 영역을 생성하고, 양품 이미지(920)에 대해서 학습 영역을 생성할 수 있다. 프로세서(200)는 생성된 학습 영역들에 대해서 리스케일(rescale)을 수행할 수 있다. 프로세서(200)는 리스케일을 수행함으로써 서로 다른 크기의 학습 영역을 뉴럴 네트워크의 입력 크기에 맞게 맞추어 줄 수 있다.
예를 들어, 프로세서(200)는 이미지(910)로부터 획득된 학습 영역(930)에 대해서 리스케일을 수행하고, 이미지(920)으로부터 획득된 학습 영역(940)에 대해서 리스케일을 수행할 수 있다.
프로세서(200)는 제1 손실 및 제2 손실에 기초하여 제1 뉴럴 네트워크 또는 제2 뉴럴 네트워크를 학습시킬 수 있다. 예를 들어, 프로세서(200)는 수학식 3과 같이 계산된 제2 손실이 최소가 되도록 가중치를 업데이트함으로써 판별기(950)를 학습시킬 수 있다.
도 10은 도 1에 도시된 제품 검사 장치의 동작의 흐름도를 나타낸다.
도 10을 참조하면, 수신기(예: 도 1의 수신기(100))는 제품의 이미지를 수신할 수 있다(1010).
프로세서(예: 도 1의 프로세서(200))는 이미지를 제1 뉴럴 네트워크에 입력함으로써 제품의 양품 이미지를 생성할 수 있다(1030). 프로세서(200)는 제1 뉴럴 네트워크에 기초하여 이미지를 인코딩함으로써 제1 특징을 추출할 수 있다. 프로세서(200)는 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성할 수 있다. 프로세서(200)는 잠재 공간에 기초하여 디코딩을 수행함으로써 양품 이미지를 생성할 수 있다.
또는, 프로세서(200)는 이미지를 GAN(Generative Adversarial Network)에 입력함으로써 양품 이미지를 생성할 수 있다.
프로세서(200)는 이미지에 기초하여 양품 이미지를 정합할 수 있다. 프로세서(200)는 이미지 및 양품 이미지로부터 제2 특징을 추출할 수 있다. 프로세서(200)는 제2 특징을 매칭할 수 있다. 프로세서(200)는 매칭된 제2 특징에 기초하여 양품 이미지를 변환함으로써 양품 이미지를 정합할 수 있다.
프로세서(200)는 양품 이미지와 이미지 간의 차이 맵(difference map)을 획득할 수 있다(1050). 프로세서(200)는 양품 이미지의 픽셀 값으로부터 이미지의 픽셀 값의 차이를 계산함으로써 차이 맵을 획득할 수 있다.
프로세서(200)는 차이 맵에 기초하여 추출한 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 제품의 불량 여부를 판단할 수 있다(1070). 프로세서(200)는 차이 맵에 기초하여 제품의 결함 영역을 추출할 수 있다.
프로세서(200)는 차이 맵을 복수의 패치로 분할할 수 있다. 프로세서(200)는 복수의 패치에 대하여 양품 이미지와 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산할 수 있다.
프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역을 추출할 수 있다. 프로세서(200)는 복수의 패치 점수에 기초하여 결함 영역을 추출할 수 있다. 프로세서(200)는 복수의 패치 중에서 패치 점수가 복수의 패치 점수의 평균보다 높은 패치들을 결함 영역으로 추출할 수 있다.
프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지에 기초한 제1 손실을 계산할 수 있다. 프로세서(200)는 결함 영역을 이용하여 양품 이미지 및 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산할 수 있다.
프로세서(200)는 제1 손실 및 상기 제2 손실에 기초하여 불량 여부를 판단할 수 있다.
프로세서(200)는 이미지를 제1 뉴럴 네트워크에 입력함으로써 제품의 양품 이미지를 생성할 수 있다.
프로세서(200)는 양품 이미지 및 이미지로부터 복수의 학습 영역들을 추출할 수 있다. 프로세서(200)는 양품 이미지 및 이미지를 복수의 그리드로 분할할 수 있다. 프로세서(200)는 복수의 그리드 중에서 일부의 그리드들을 추출함으로써 복수의 학습 영역들을 추출할 수 있다.
프로세서(200)는 복수의 학습 영역들에 기초하여 제1 뉴럴 네트워크에 관련된 제1 손실을 계산할 수 있다. 복수의 학습 영역들에 기초한 제2 뉴럴 네트워크의 출력에 기초하여 제2 손실을 계산할 수 있다.
프로세서(200)는 제1 손실 및 제2 손실에 기초하여 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크를 학습시킬 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 제품의 이미지를 수신하는 단계;
    상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하는 단계;
    상기 양품 이미지와 상기 이미지 간의 차이 맵(difference map)을 획득하는 단계; 및
    상기 차이 맵에 기초하여 추출한 상기 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 상기 제품의 불량 여부를 판단하는 단계
    를 포함하고,
    상기 불량 여부를 판단하는 단계는,
    상기 차이 맵에 기초하여 상기 제품의 결함 영역을 추출하는 단계;
    상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지에 기초한 제1 손실을 계산하는 단계;
    상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산하는 단계; 및
    상기 제1 손실 및 상기 제2 손실에 기초하여 상기 불량 여부를 판단하는 단계
    를 포함하는 제품 검사 방법.
  2. 제1항에 있어서,
    상기 양품 이미지를 생성하는 단계는,
    상기 제1 뉴럴 네트워크에 기초하여 상기 이미지를 인코딩함으로써 제1 특징을 추출하는 단계;
    상기 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성하는 단계; 및
    상기 잠재 공간에 기초하여 디코딩을 수행함으로써 상기 양품 이미지를 생성하는 단계
    를 포함하는 제품 검사 방법.
  3. 제1항에 있어서,
    상기 양품 이미지를 생성하는 단계는,
    상기 이미지를 GAN(Generative Adversarial Network)에 입력함으로써 상기 양품 이미지를 생성하는 단계
    를 포함하는 제품 검사 방법.
  4. 제1항에 있어서,
    상기 이미지에 기초하여 상기 양품 이미지를 정합하는 단계
    를 더 포함하는 제품 검사 방법.
  5. 제4항에 있어서,
    상기 정합하는 단계는,
    상기 이미지 및 상기 양품 이미지로부터 제2 특징을 추출하는 단계;
    상기 제2 특징을 매칭하는 단계; 및
    매칭된 제2 특징에 기초하여 상기 양품 이미지를 변환함으로써 상기 양품 이미지를 정합하는 단계
    를 포함하는 제품 검사 방법.
  6. 제1항에 있어서,
    상기 차이 맵을 획득하는 단계는,
    상기 양품 이미지의 픽셀 값으로부터 상기 이미지의 픽셀 값의 차이를 계산함으로써 상기 차이 맵을 획득하는 단계
    를 포함하는 제품 검사 방법.
  7. 삭제
  8. 제1항에 있어서,
    상기 결함 영역을 추출하는 단계는,
    상기 차이 맵을 복수의 패치로 분할하는 단계;
    상기 복수의 패치에 대하여 상기 양품 이미지와 상기 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산하는 단계; 및
    상기 복수의 패치 점수에 기초하여 상기 결함 영역을 추출하는 단계
    를 포함하는 제품 검사 방법.
  9. 제8항에 있어서,
    상기 복수의 패치 점수에 기초하여 상기 결함 영역을 추출하는 단계는,
    상기 복수의 패치 중에서 패치 점수가 상기 복수의 패치 점수의 평균보다 높은 패치들을 상기 결함 영역으로 추출하는 단계
    를 포함하는 제품 검사 방법.
  10. 제품의 이미지를 수신하는 수신기; 및
    상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하고,
    상기 양품 이미지와 상기 이미지 간의 차이 맵(difference map)을 획득하고,
    상기 차이 맵에 기초하여 추출한 상기 제품의 결함 영역을 제2 뉴럴 네트워크에 입력함으로써 상기 제품의 불량 여부를 판단하는 프로세서
    를 포함하고,
    상기 프로세서는,
    상기 차이 맵에 기초하여 상기 제품의 결함 영역을 추출하고,
    상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지에 기초한 제1 손실을 계산하고,
    상기 결함 영역을 이용하여 상기 양품 이미지 및 상기 이미지의 제2 뉴럴 네트워크의 출력에 기초한 제2 손실을 계산하는
    제품 검사 장치.
  11. 제10항에 있어서,
    상기 프로세서는,
    상기 제1 뉴럴 네트워크에 기초하여 상기 이미지를 인코딩함으로써 제1 특징을 추출하고,
    상기 제1 특징을 압축함으로써 잠재 공간(latent space)을 형성하고,
    상기 잠재 공간에 기초하여 디코딩을 수행함으로써 상기 양품 이미지를 생성하는
    제품 검사 장치.
  12. 제10항에 있어서,
    상기 프로세서는,
    상기 이미지를 GAN(Generative Adversarial Network)에 입력함으로써 상기 양품 이미지를 생성하는
    제품 검사 장치.
  13. 제10항에 있어서,
    상기 프로세서는,
    상기 이미지에 기초하여 상기 양품 이미지를 정합하는
    제품 검사 장치.
  14. 제11항에 있어서,
    상기 프로세서는,
    상기 이미지 및 상기 양품 이미지로부터 제2 특징을 추출하고,
    상기 제2 특징을 매칭하고,
    매칭된 제2 특징에 기초하여 상기 양품 이미지를 변환함으로써 상기 양품 이미지를 정합하는
    제품 검사 장치.
  15. 제14항에 있어서,
    상기 프로세서는,
    상기 양품 이미지의 픽셀 값으로부터 상기 이미지의 픽셀 값의 차이를 계산함으로써 상기 차이 맵을 획득하는
    제품 검사 장치.
  16. 삭제
  17. 제10항에 있어서,
    상기 프로세서는,
    상기 차이 맵을 복수의 패치로 분할하고,
    상기 복수의 패치에 대하여 상기 양품 이미지와 상기 이미지의 픽셀 값에 기초하여 복수의 패치 점수(patch score)를 계산하고,
    상기 복수의 패치 점수에 기초하여 상기 결함 영역을 추출하는
    제품 검사 장치.
  18. 제17항에 있어서,
    상기 프로세서는,
    상기 복수의 패치 중에서 패치 점수가 상기 복수의 패치 점수의 평균보다 높은 패치들을 상기 결함 영역으로 추출하는
    제품 검사 장치.
  19. 제품의 이미지를 수신하는 단계;
    상기 이미지를 제1 뉴럴 네트워크에 입력함으로써 상기 제품의 양품 이미지를 생성하는 단계;
    상기 양품 이미지 및 상기 이미지로부터 복수의 학습 영역들을 추출하는 단계;
    상기 복수의 학습 영역들에 기초하여 상기 제1 뉴럴 네트워크에 관련된 제1 손실을 계산하는 단계;
    상기 복수의 학습 영역들에 기초한 제2 뉴럴 네트워크의 출력에 기초하여 제2 손실을 계산하는 단계: 및
    상기 제1 손실 및 상기 제2 손실에 기초하여 상기 제1 뉴럴 네트워크 및 상기 제2 뉴럴 네트워크를 학습시키는 단계
    를 포함하는 제품 검사 장치 학습 방법.
  20. 제19항에 있어서,
    상기 복수의 학습 영역들을 추출하는 단계는,
    상기 양품 이미지 및 상기 이미지를 복수의 그리드로 분할하는 단계; 및
    상기 복수의 그리드 중에서 일부의 그리드들을 추출함으로써 상기 복수의 학습 영역들을 추출하는 단계
    를 포함하는 제품 검사 장치 학습 방법.
KR1020210039597A 2021-03-26 2021-03-26 뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법 KR102317992B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210039597A KR102317992B1 (ko) 2021-03-26 2021-03-26 뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210039597A KR102317992B1 (ko) 2021-03-26 2021-03-26 뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법

Publications (1)

Publication Number Publication Date
KR102317992B1 true KR102317992B1 (ko) 2021-10-28

Family

ID=78232508

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210039597A KR102317992B1 (ko) 2021-03-26 2021-03-26 뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법

Country Status (1)

Country Link
KR (1) KR102317992B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102479531B1 (ko) * 2022-06-23 2022-12-19 서울대학교산학협력단 사출성형 공정 불량 검출 모델 학습 방법 및 사출성형 공정의 레시피 최적화 방법
KR20230119839A (ko) * 2022-02-08 2023-08-16 주식회사 트윔 뉴럴 네트워크를 이용한 제품 검사 방법 및 장치
WO2023182794A1 (ko) * 2022-03-23 2023-09-28 주식회사 엘지경영개발원 검사 성능을 유지하기 위한 메모리 기반 비전 검사 장치 및 그 방법
KR102627233B1 (ko) * 2023-09-26 2024-01-23 (주) 웨다 영상 기반 이상 탐지 모델을 이용한 초고압 전선 외관 품질 검사 시스템
WO2024053948A1 (ko) * 2022-09-05 2024-03-14 서울대학교산학협력단 변환 모델 구축 장치 및 방법과 이를 이용한 이미지 매칭 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018048968A (ja) * 2016-09-23 2018-03-29 株式会社Screenホールディングス 検査装置および検査方法
KR20200039049A (ko) * 2018-10-02 2020-04-16 (주)지엘테크 외관불량 검사방법 및 외관불량 검사 시스템
KR102163519B1 (ko) * 2020-06-05 2020-10-07 주식회사 딥바이오 오토인코더 및 다중 인스턴스 학습을 통한 뉴럴 네트워크 학습 방법 및 이를 수행하는 컴퓨팅 시스템
KR20210010770A (ko) * 2019-07-19 2021-01-28 울산대학교 산학협력단 이미지의 특이 영역 분석 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018048968A (ja) * 2016-09-23 2018-03-29 株式会社Screenホールディングス 検査装置および検査方法
KR20200039049A (ko) * 2018-10-02 2020-04-16 (주)지엘테크 외관불량 검사방법 및 외관불량 검사 시스템
KR20210010770A (ko) * 2019-07-19 2021-01-28 울산대학교 산학협력단 이미지의 특이 영역 분석 방법 및 장치
KR102163519B1 (ko) * 2020-06-05 2020-10-07 주식회사 딥바이오 오토인코더 및 다중 인스턴스 학습을 통한 뉴럴 네트워크 학습 방법 및 이를 수행하는 컴퓨팅 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Unsupervised detection of lesions in brain MRI using constrained adversarial auto-encoders, Computer Science_Computer Vision and Pattern Recognition, 2018.06* *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230119839A (ko) * 2022-02-08 2023-08-16 주식회사 트윔 뉴럴 네트워크를 이용한 제품 검사 방법 및 장치
KR102611480B1 (ko) * 2022-02-08 2023-12-08 주식회사 트윔 뉴럴 네트워크를 이용한 제품 검사 방법 및 장치
WO2023182794A1 (ko) * 2022-03-23 2023-09-28 주식회사 엘지경영개발원 검사 성능을 유지하기 위한 메모리 기반 비전 검사 장치 및 그 방법
KR102479531B1 (ko) * 2022-06-23 2022-12-19 서울대학교산학협력단 사출성형 공정 불량 검출 모델 학습 방법 및 사출성형 공정의 레시피 최적화 방법
WO2024053948A1 (ko) * 2022-09-05 2024-03-14 서울대학교산학협력단 변환 모델 구축 장치 및 방법과 이를 이용한 이미지 매칭 장치 및 방법
KR102627233B1 (ko) * 2023-09-26 2024-01-23 (주) 웨다 영상 기반 이상 탐지 모델을 이용한 초고압 전선 외관 품질 검사 시스템

Similar Documents

Publication Publication Date Title
KR102317992B1 (ko) 뉴럴 네트워크를 이용한 제품 검사 방법, 장치 및 제품 검사 장치 학습 방법
US10318848B2 (en) Methods for object localization and image classification
Rachmatullah et al. Low resolution image fish classification using convolutional neural network
KR20200075704A (ko) 어노말리 디텍션
US20210319327A1 (en) Systems and methods for automated parsing of schematics
KR102506987B1 (ko) 슬라이딩 윈도우를 활용한 뉴럴 네트워크 기반의 이상 탐지 장치 및 방법
KR20240025578A (ko) 뉴럴 네트워크를 이용한 초분광 이미지 분류 방법 및 장치
Monis et al. Efficient net: Identification of crop insects using convolutional neural networks
US10580127B2 (en) Model generation apparatus, evaluation apparatus, model generation method, evaluation method, and storage medium
KR20240015120A (ko) 뉴럴 네트워크를 이용한 초분광 이미지의 시각화 방법 및 장치
US20230058341A1 (en) Neural network training method and apparatus using trend
KR20230150150A (ko) 초분광 영상 분석 딥러닝 모델을 위한 전처리 방법 및 장치
US20230029163A1 (en) Wafer map analysis system using neural network and method of analyzing wafer map using the same
KR20230085336A (ko) 필적 검증용 데이터 셋 구축 방법 및 이를 수행하는 장치
KR102633944B1 (ko) 3d 라이다 센서를 활용한 얼굴 인식 방법 및 장치
US11244198B2 (en) Input partitioning for deep learning of large image data
KR102302341B1 (ko) 자기지도 학습에 기반한 제품 검사 방법 및 장치
KR102611480B1 (ko) 뉴럴 네트워크를 이용한 제품 검사 방법 및 장치
KR20240064412A (ko) 결함 검출 방법 및 이를 수행하는 장치
Ma et al. STN: saliency-guided Transformer network for point-wise semantic segmentation of urban scenes
KR102506988B1 (ko) 이종 손실 함수를 이용하여 학습된 뉴럴 네트워크를 이용한 이상 검출 장치
KR102668317B1 (ko) 레이더 신호 처리를 이용한 객체 인식 시스템
KR102512625B1 (ko) 데이터 증강을 이용하여 결함 검사를 위한 학습 방법 및 이를 수행하는 장치
Coca et al. Asphalt crack identification experiments using convolution networks
KR20220048644A (ko) 뉴럴 네트워크 연산 방법 및 장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant