KR20230138314A - 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법 - Google Patents

제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법 Download PDF

Info

Publication number
KR20230138314A
KR20230138314A KR1020220036221A KR20220036221A KR20230138314A KR 20230138314 A KR20230138314 A KR 20230138314A KR 1020220036221 A KR1020220036221 A KR 1020220036221A KR 20220036221 A KR20220036221 A KR 20220036221A KR 20230138314 A KR20230138314 A KR 20230138314A
Authority
KR
South Korea
Prior art keywords
normal
product image
product
abnormal
belonging
Prior art date
Application number
KR1020220036221A
Other languages
English (en)
Inventor
김상윤
강병준
고영산
현지호
김승환
Original Assignee
주식회사 Lg 경영개발원
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 주식회사 Lg 경영개발원 filed Critical 주식회사 Lg 경영개발원
Priority to KR1020220036221A priority Critical patent/KR20230138314A/ko
Priority to PCT/KR2023/003768 priority patent/WO2023182795A1/ko
Publication of KR20230138314A publication Critical patent/KR20230138314A/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • 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)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)

Abstract

본 개시의 실시 예에 따른 인 공 지능 장치는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 저장하는 메모리, 동일 분류에 속하는 제품 이미지의 표현 벡터(Representation Vector)가 가까워지도록 하고, 서로 다른 분류에 속하는 제품 이미지의의 표현 벡터가 서로 멀어지도록 특징 추출 모델에 대한 대조 학습(Contrastive Leaning)을 시키는 러닝 프로세서 및 상기 대조 학습된 특징 추출 모델에 상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 입력하여 적어도 하나의 정상 제품 이미지의 패치 단위별 임베딩 벡터(embedding vector)를 획득하고, 상기 획득한 패치 단위별 임베딩 벡터의 정규 분포를 획득하는 프로세서를 포함한다.

Description

제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법{AN ARTIFICIAL INTELLIGENCE APPARATUS FOR DETECTING DEFECTIVE PRODUCTS BASED ON PRODUCT IMAGES AND METHOD THEREOF}
본 개시는 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법에 관한 것이다. 구체적으로, 생산되는 제품을 촬영한 이미지를 기초로 불량을 판별하여 제품이 양품인지 또는 불량인지를 판별할 수 있는 인공 지능 장치 및 그 방법에 관한 것이다.
제품을 생산하는 경우 제품 생산 과정에서 생산되는 제품에 대한 불량여부를 검사하는 절차를 거친다.
제품 불량여부를 검사하는 경우 육안 검사 방식이 사용될 수도 있다. 육안 검사 방식은 생산 설비에서 공정의 속도에 맞춰 작업자가 각종 보조 장치들을 이용하여 제품의 불량 여부를 검사하는 방식이다. 그러나, 육안 검사 방식은 작업자의 숙련도, 집중도 및 피로도에 따라서 정확성 또는 효율성이 달라지는 문제점이 있다.
최근 육안 검사 방식의 문제점을 해결하기 위하여 제품 생산 과정에 제품의 불량 여부를 검출할 수 있는 비전 검사 시스템이 도입되고 있다.
비전 검사 시스템은 제품에 대한 이미지를 기초로 제품의 불량 여부를 판별할 수 있는 시스템이다.
그러나, 비점 검사 시스템을 구축하기 위해 정상 제품에 대한 이미지 및 불량 제품에 대한 이미지들이 필요하다. 그러나, 실제 제품 생산 현장에서는 제품 생산 불량률이 낮다. 따라서, 정상 제품에 대한 이미지를 많이 구할 수 있으나, 불량 제품에 대한 이미지를 구하기가 어려운 문제가 있다.
따라서, 불량 제품에 대한 이미지를 구하기 어려운 문제를 해결하여 비전 검사 시스템을 구축할 수 있는 기술이 필요한 실정이다.
본 개시는 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다.
본 개시는 정상 제품의 이미지 데이터를 이용하여 다량이 학습 데이터를 구축하여 인공 신경망을 학습시켜 제품에 대한 정상과 불량을 판별할 수 있는 인공 지능 장치 및 그 방법을 제공하는 것을 목적으로 한다.
본 개시는 제품 생산 과정에서 획득하는 제품의 이미지를 기반으로 정상 제품과 불량 제품을 자동으로 판별할 수 있는 인공 지능 장치 및 그 방법을 제공하는 것을 목적으로 한다.
본 개시의 실시 예에 따른 인공 지능 장치는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 저장하는 메모리, 동일 분류에 속하는 제품 이미지의 표현 벡터(Representation Vector)가 가까워지도록 하고, 서로 다른 분류에 속하는 제품 이미지의의 표현 벡터가 서로 멀어지도록 특징 추출 모델에 대한 대조 학습(Contrastive Leaning)을 시키는 러닝 프로세서 및 대조 학습된 특징 추출 모델에 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 입력하여 적어도 하나의 정상 제품 이미지의 패치 단위별 임베딩 벡터(embedding vector)를 획득하고, 획득한 패치 단위별 임베딩 벡터의 정규 분포를 획득하는 프로세서를 포함한다.
또한, 본 개시의 실시 예에 따른 인공 지능 장치는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 밝기 변경, 컬러 변경, 명암 변경, 회전 및 리스케일 중 적어도 하나를 적용하여 정상 분류에 속하는 정상 제품 이미지를 생성하는 프로세서를 포함한다.
또한, 본 개시의 실시 예에 따른 인공 지능 장치는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 컷 아웃(Cut-Out), 컷 페이스트(Cut-Pate) 및 노이즈 추가 중 적어도 하나를 적용하여 비정상 분류에 속하는 비정상 제품 이미지를 생성하는 프로세서를 포함한다.
또한, 본 개시의 실시 예에 따른 인공 지능 장치는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 중첩하여 비정상 분류에 속하는 비정상 제품 이미지를 생성하는 프로세서를 포함한다.
또한, 본 개시의 실시 예에 따른 인공 지능 장치는 대조 손실(Contrastive Loss)기반의 손실함수를 기초로 특징 추출 모델에 대한 대조 학습을 시키는 러닝 프로세서를 포함한다.
또한, 본 개시의 실시 예에 따른 인공 지능 장치는 검사 대상이 되는 제품에 대한 검사 제품 이미지를 획득하고, 검사 제품 이미지를 특징 추출 모델에 입력하여 특징 추출 모델로부터 검사 제품 이미지의 패치 단위별 임베딩 벡터를 획득하고, 검사 제품 이미지의 패치 단위별 임베딩 벡터와 패치 단위별 정규 분포 사이의 거리를 획득하고, 거리 값에 따라 검사 대상이 되는 제품이 정상 제품인지 불량 제품인지 여부를 판별하는 프로세서를 포함한다.
또한, 본 개시의 실시 예에 따른 불량 제품 감지 방법은 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 저장하는 단계, 동일 분류에 속하는 제품 이미지의 표현 벡터(Representation Vector)가 가까워지도록 하고, 서로 다른 분류에 속하는 제품 이미지의의 표현 벡터가 서로 멀어지도록 특징 추출 모델에 대한 대조 학습(Contrastive Leaning)을 시키는 단계, 대조 학습된 특징 추출 모델에 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 입력하여 적어도 하나의 정상 제품 이미지의 패치 단위별 임베딩 벡터(embedding vector)를 획득하는 단계 및 획득한 패치 단위별 임베딩 벡터의 정규 분포를 획득하는 단계를 포함한다.
또한, 본 개시의 실시 예에 따른 불량 제품 감지 방법은 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 밝기 변경, 컬러 변경, 명암 변경, 회전 및 리스케일 중 적어도 하나를 적용하여 정상 분류에 속하는 정상 제품 이미지를 생성하는 단계를 포함한다.
또한, 본 개시의 실시 예에 따른 불량 제품 감지 방법은 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 컷 아웃(Cut-Out), 컷 페이스트(Cut-Pate) 및 노이즈 추가 중 적어도 하나를 적용하여 비정상 분류에 속하는 비정상 제품 이미지를 생성하는 단계를 포함한다.
또한, 본 개시의 실시 예에 따른 불량 제품 감지 방법은 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 중첩하여 비정상 분류에 속하는 비정상 제품 이미지를 생성하는 단계를 포함한다.
또한, 본 개시의 실시 예에 따른 불량 제품 감지 방법은 대조 손실(Contrastive Loss)기반의 손실함수를 기초로 특징 추출 모델에 대한 대조 학습을 시키는 단계를 포함한다.
또한, 본 개시의 실시 예에 따른 불량 제품 감지 방법은 검사 대상이 되는 제품에 대한 검사 제품 이미지를 획득하는 단계, 검사 제품 이미지를 특징 추출 모델에 입력하여 특징 추출 모델로부터 검사 제품 이미지의 패치 단위별 임베딩 벡터를 획득하는 단계, 검사 제품 이미지의 패치 단위별 임베딩 벡터와 패치 단위별 정규 분포 사이의 거리를 획득하는 단계 및 거리 값에 따라 검사 대상이 되는 제품이 정상 제품인지 불량 제품인지 여부를 판별하는 단계를 더 포함한다.
본 개시의 실시 예에 따르면, 인공 지능 장치는 정상 제품의 이미지 데이터를 이용하여 다량이 학습 데이터를 구축하여 인공 신경망을 학습시켜 제품에 대한 정상과 불량을 판별할 수 있다.
본 개시의 실시 예에 따르면, 인공 지능 장치는 제품 생산 과정에서 획득하는 제품의 이미지를 기반으로 정상 제품과 불량 제품을 자동으로 판별할 수 있다.
도 1은 본 개시의 일 실시 예에 따른 인공 지능 장치를 나타낸다.
도 2는 본 개시의 일 실시 예에 따른 인공 지능 서버를 나타낸다.
도 3은 본 개시의 일 실시 예에 따른 인공 지능 장치의 동작 방법을 설명하기 위한 순서도이다.
도 4는 본 개시의 일 실시 예에 따른 학습용 데이터를 증가시키는 방법을 설명하기 위한 순서도이다.
도 5는 본 개시의 일 실시 예에 따른 제품 이미지를 획득하는 방법을 설명하기 위한 도면이다.
도 6는 본 개시의 일 실시 예에 따른 정상 제품 이미지 생성하는 방법을 설명하기 위한 도면이다.
도 7은 본 개시의 일 실시 예에 따른 비정상 제품 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 8은 본 개시의 일 실시 예에 따른 비정상 제품 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시 예에 따른 특징 추출 모델을 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시 예에 따른 패치 단위별 임베딩 벡터를 획득하는 방법을 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시 예에 따른 불량 제품 판별 방법을 설명하기 위한 순서도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 개시의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
<인공 지능(AI: Artificial Intelligence)>
인공 지능은 인공적인 지능 또는 이를 만들 수 있는 방법론을 연구하는 분야를 의미하며, 머신 러닝(기계 학습, Machine Learning)은 인공 지능 분야에서 다루는 다양한 문제를 정의하고 그것을 해결하는 방법론을 연구하는 분야를 의미한다. 머신 러닝은 어떠한 작업에 대하여 꾸준한 경험을 통해 그 작업에 대한 성능을 높이는 알고리즘으로 정의하기도 한다.
인공 신경망(ANN: Artificial Neural Network)은 머신 러닝에서 사용되는 모델로써, 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)들로 구성되는, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공 신경망은 다른 레이어의 뉴런들 사이의 연결 패턴, 모델 파라미터를 갱신하는 학습 과정, 출력값을 생성하는 활성화 함수(Activation Function)에 의해 정의될 수 있다.
인공 신경망은 입력층(Input Layer), 출력층(Output Layer), 그리고 선택적으로 하나 이상의 은닉층(Hidden Layer)를 포함할 수 있다. 각 층은 하나 이상의 뉴런을 포함하고, 인공 신경망은 뉴런과 뉴런을 연결하는 시냅스를 포함할 수 있다. 인공 신경망에서 각 뉴런은 시냅스를 통해 입력되는 입력 신호들, 가중치, 편향에 대한 활성 함수의 함숫값을 출력할 수 있다.
모델 파라미터는 학습을 통해 결정되는 파라미터를 의미하며, 시냅스 연결의 가중치와 뉴런의 편향 등이 포함된다. 그리고, 하이퍼파라미터는 머신 러닝 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 학습률(Learning Rate), 반복 횟수, 미니 배치 크기, 초기화 함수 등이 포함된다.
인공 신경망의 학습의 목적은 손실 함수를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공 신경망의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다.
머신 러닝은 학습 방식에 따라 지도 학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning)으로 분류할 수 있다.
지도 학습은 학습 데이터에 대한 레이블(label)이 주어진 상태에서 인공 신경망을 학습시키는 방법을 의미하며, 레이블이란 학습 데이터가 인공 신경망에 입력되는 경우 인공 신경망이 추론해 내야 하는 정답(또는 결과 값)을 의미할 수 있다. 비지도 학습은 학습 데이터에 대한 레이블이 주어지지 않는 상태에서 인공 신경망을 학습시키는 방법을 의미할 수 있다. 강화 학습은 어떤 환경 안에서 정의된 에이전트가 각 상태에서 누적 보상을 최대화하는 행동 혹은 행동 순서를 선택하도록 학습시키는 학습 방법을 의미할 수 있다.
인공 신경망 중에서 복수의 은닉층을 포함하는 심층 신경망(DNN: Deep Neural Network)으로 구현되는 머신 러닝을 딥 러닝(심층 학습, Deep Learning)이라 부르기도 하며, 딥 러닝은 머신 러닝의 일부이다. 이하에서, 머신 러닝은 딥 러닝을 포함하는 의미로 사용된다.
도 1은 본 개시의 일 실시 예에 따른 인공 지능 장치를 나타낸다.
인공 지능(AI) 장치(100)는 TV, 프로젝터, 휴대폰, 스마트폰, 데스크탑 컴퓨터, 노트북, 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 태블릿 PC, 웨어러블 장치, 셋톱박스(STB), DMB 수신기, 라디오, 세탁기, 냉장고, 데스크탑 컴퓨터, 디지털 사이니지, 로봇, 차량 등과 같은, 고정형 기기 또는 이동 가능한 기기 등으로 구현될 수 있다.
도 1을 참조하면, 단말기(100)는 통신부(110), 입력부(120), 러닝 프로세서(130), 센싱부(140), 출력부(150), 메모리(170) 및 프로세서(180) 등을 포함할 수 있다.
통신부(110)는 유무선 통신 기술을 이용하여 다른 AI 장치(100a 내지 100e)나 AI 서버(200) 등의 외부 장치들과 데이터를 송수신할 수 있다. 예컨대, 통신부(110)는 외부 장치들과 센서 정보, 사용자 입력, 학습 모델, 제어 신호 등을 송수신할 수 있다.
이때, 통신부(110)가 이용하는 통신 기술에는 GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), LTE(Long Term Evolution), 5G, WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), 블루투스(Bluetooth??), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), ZigBee, NFC(Near Field Communication) 등이 있다.
입력부(120)는 다양한 종류의 데이터를 획득할 수 있다.
이때, 입력부(120)는 영상 신호 입력을 위한 카메라, 오디오 신호를 수신하기 위한 마이크로폰, 사용자로부터 정보를 입력 받기 위한 사용자 입력부 등을 포함할 수 있다. 여기서, 카메라나 마이크로폰을 센서로 취급하여, 카메라나 마이크로폰으로부터 획득한 신호를 센싱 데이터 또는 센서 정보라고 할 수도 있다.
입력부(120)는 모델 학습을 위한 학습 데이터 및 학습 모델을 이용하여 출력을 획득할 때 사용될 입력 데이터 등을 획득할 수 있다. 입력부(120)는 가공되지 않은 입력 데이터를 획득할 수도 있으며, 이 경우 프로세서(180) 또는 러닝 프로세서(130)는 입력 데이터에 대하여 전처리로써 입력 특징점(input feature)을 추출할 수 있다.
러닝 프로세서(130)는 학습 데이터를 이용하여 인공 신경망으로 구성된 모델을 학습시킬 수 있다. 여기서, 학습된 인공 신경망을 학습 모델이라 칭할 수 있다. 학습 모델은 학습 데이터가 아닌 새로운 입력 데이터에 대하여 결과 값을 추론해 내는데 사용될 수 있고, 추론된 값은 어떠한 동작을 수행하기 위한 판단의 기초로 이용될 수 있다.
이때, 러닝 프로세서(130)는 AI 서버(200)의 러닝 프로세서(240)과 함께 AI 프로세싱을 수행할 수 있다.
이때, 러닝 프로세서(130)는 AI 장치(100)에 통합되거나 구현된 메모리를 포함할 수 있다. 또는, 러닝 프로세서(130)는 메모리(170), AI 장치(100)에 직접 결합된 외부 메모리 또는 외부 장치에서 유지되는 메모리를 사용하여 구현될 수도 있다.
센싱부(140)는 다양한 센서들을 이용하여 AI 장치(100) 내부 정보, AI 장치(100)의 주변 환경 정보 및 사용자 정보 중 적어도 하나를 획득할 수 있다.
이때, 센싱부(140)에 포함되는 센서에는 근접 센서, 조도 센서, 가속도 센서, 자기 센서, 자이로 센서, 관성 센서, RGB 센서, IR 센서, 지문 인식 센서, 초음파 센서, 광 센서, 마이크로폰, 라이다, 레이더 등이 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시킬 수 있다.
이때, 출력부(150)에는 시각 정보를 출력하는 디스플레이부, 청각 정보를 출력하는 스피커, 촉각 정보를 출력하는 햅틱 모듈 등이 포함될 수 있다.
메모리(170)는 AI 장치(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 예컨대, 메모리(170)는 입력부(120)에서 획득한 입력 데이터, 학습 데이터, 학습 모델, 학습 히스토리 등을 저장할 수 있다.
프로세서(180)는 데이터 분석 알고리즘 또는 머신 러닝 알고리즘을 사용하여 결정되거나 생성된 정보에 기초하여, AI 장치(100)의 적어도 하나의 실행 가능한 동작을 결정할 수 있다. 그리고, 프로세서(180)는 AI 장치(100)의 구성 요소들을 제어하여 결정된 동작을 수행할 수 있다.
이를 위해, 프로세서(180)는 러닝 프로세서(130) 또는 메모리(170)의 데이터를 요청, 검색, 수신 또는 활용할 수 있고, 상기 적어도 하나의 실행 가능한 동작 중 예측되는 동작이나, 바람직한 것으로 판단되는 동작을 실행하도록 AI 장치(100)의 구성 요소들을 제어할 수 있다.
이때, 프로세서(180)는 결정된 동작을 수행하기 위하여 외부 장치의 연계가 필요한 경우, 해당 외부 장치를 제어하기 위한 제어 신호를 생성하고, 생성한 제어 신호를 해당 외부 장치에 전송할 수 있다.
프로세서(180)는 사용자 입력에 대하여 의도 정보를 획득하고, 획득한 의도 정보에 기초하여 사용자의 요구 사항을 결정할 수 있다.
이때, 프로세서(180)은 영상 입력을 학습한 이미지 특징 추출 네트워크를 통해 이미지 특징에 대한 패치 단위별 임베딩 벡터(embedding vector)를 추출하고 이를 정상 제품의 패치 단위별 임베딩 벡터의 정규 분포와 비교하는 것을 통해 이미지를 분류 및 판정(양품 또는 불량) 할 수 있다.
이때, 상기 이미지 분류 및 판정 엔진 중에서 적어도 하나 이상은 적어도 일부가 머신 러닝 알고리즘에 따라 학습된 인공 신경망으로 구성될 수 있다. 그리고, 상기 이미지 분류 및 판정 엔진 중에서 적어도 하나 이상은 러닝 프로세서(130)에 의해 학습된 것이나, AI 서버(200)의 러닝 프로세서(240)에 의해 학습된 것이거나, 또는 이들의 분산 처리에 의해 학습된 것일 수 있다.
프로세서(180)는 AI 장치(100)의 동작 내용이나 동작에 대한 사용자의 피드백 등을 포함하는 이력 정보를 수집하여 메모리(170) 또는 러닝 프로세서(130)에 저장하거나, AI 서버(200) 등의 외부 장치에 전송할 수 있다. 수집된 이력 정보는 학습 모델을 갱신하는데 이용될 수 있다.
프로세서(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, AI 장치(100)의 구성 요소들 중 적어도 일부를 제어할 수 있다. 나아가, 프로세서(180)는 상기 응용 프로그램의 구동을 위하여, AI 장치(100)에 포함된 구성 요소들 중 둘 이상을 서로 조합하여 동작시킬 수 있다.
도 2는 본 개시의 일 실시 예에 따른 인공 지능 서버를 나타낸다.
도 2를 참조하면, 인공 지능 서버(200)는 머신 러닝 알고리즘을 이용하여 인공 신경망을 학습시키거나 학습된 인공 신경망을 이용하는 장치를 의미할 수 있다. 여기서, AI 서버(200)는 복수의 서버들로 구성되어 분산 처리를 수행할 수도 있고, 5G 네트워크로 정의될 수 있다. 이때, AI 서버(200)는 AI 장치(100)의 일부의 구성으로 포함되어, AI 프로세싱 중 적어도 일부를 함께 수행할 수도 있다.
AI 서버(200)는 통신부(210), 메모리(230), 러닝 프로세서(240) 및 프로세서(260) 등을 포함할 수 있다.
통신부(210)는 AI 장치(100) 등의 외부 장치와 데이터를 송수신할 수 있다.
메모리(230)는 모델 저장부(231)를 포함할 수 있다. 모델 저장부(231)는 러닝 프로세서(240)을 통하여 학습 중인 또는 학습된 모델(또는 인공 신경망, 231a)을 저장할 수 있다.
러닝 프로세서(240)는 학습 데이터를 이용하여 인공 신경망(231a)을 학습시킬 수 있다. 학습 모델은 인공 신경망의 AI 서버(200)에 탑재된 상태에서 이용되거나, AI 장치(100) 등의 외부 장치에 탑재되어 이용될 수도 있다.
학습 모델은 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 학습 모델의 일부 또는 전부가 소프트웨어로 구현되는 경우 학습 모델을 구성하는 하나 이상의 명령어(instruction)는 메모리(230)에 저장될 수 있다.
프로세서(260)는 학습 모델을 이용하여 새로운 입력 데이터에 대하여 결과 값을 추론하고, 추론한 결과 값에 기초한 응답이나 제어 명령을 생성할 수 있다.
도 3은 본 개시의 일 실시 예에 따른 인공 지능 장치의 동작 방법을 설명하기 위한 순서도이다.
도 3을 참고하면, 인공 지능 장치(100)의 프로세서(180)는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 메모리(170)에 저장할 수 있다(S301).
프로세서(180) 정상 분류(positive class)에 속하는 정상 제품 이미지를 학습용 데이터로 획득하고 메모리(170)에 저장할 수 있다. 정상 제품 이미지는 생산되는 제품 중 불량이 없는 정상 제품을 촬영한 이미지를 의미할 수 있다. 한편, 프로세서(180)는 비정상 분류에 속하는 정상 제품 이미지를 학습용 데이터로 획득하고 메모리(170)에 저장할 수 있다. 비정상 제품 이미지는 생산되는 제품 중 불량인 비정상 제품을 촬영한 이미지를 의미할 수 있다. 한편, 프로세서(180)는 학습용 데이터를 증가시키기 위하여 정상 분류에 속하는 정상 제품 이미지 및 비정상 분류에 속하는 정상 제품 이미지 각각을 기초로 정상 제품 이미지 및 비정상 제품 이미지를 생성할 수 있다.
도 4는 본 개시의 일 실시 예에 따른 학습용 데이터를 증가시키는 방법을 설명하기 위한 순서도이다.
프로세서(180)는 정상 분류에 속하는 정상 제품 이미지 또는 비정상 분류에속하는 비정상 제품 이미지를 획득할 수 있다(S401).
한편, 정상 제품 이미지 또는 비정상 제품 이미지는 제품을 촬영한 전체 이미지에서 소정의 크기에 해당하는 부분 이미지일 수 있다.
도 5는 본 개시의 일 실시 예에 따른 제품 이미지를 획득하는 방법을 설명하기 위한 도면이다.
도 5를 참고하면, 프로세서(180)는 제품을 촬영한 전체 제품 이미지(501)에서 소정의 크기에 해당하는 부분 이미지(502)를 획득할 수 있다.
예를 들어, 프로세서(180)는 전체 제품 이미지(501)의 각 부분을 순회하면서 소정의 크기에 해당하는 부분 이미지(502)를 획득할 수 있다.
제품을 촬영한 전체 제품 이미지(501)가 정상 또는 비정상 제품에 대한 이미지인 경우, 프로세서(180)는 각각의 부분 이미지(402)를 정상 또는 비정상 제품 이미지로서 획득할 수 있다.
한편, 도 4를 참고하면, 프로세서(180)는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 변형하여 정상 분류에 속하는 정상 제품 이미지를 생성할 수 있다(S402).
학습 데이터를 구축하기 위하여 생산되는 제품에 대한 정상 제품 이미지를 획득하는 경우 획득할 수 있는 정상 제품 이미지의 수가 제한적일 수 있고, 또한 주변 환경 조건으로 인해 변형될 수 있는 이미지의 특성을 반영하지 못하여 이미지의 다양성이 부족할 수 있다. 따라서, 프로세서(180)는 정상 제품 이미지에 대한 소정의 변형을 적용하여 정상 분류에 속하는 정상 제품 이미지를 추가로 생성함으로써 정상 분류에 속하는 정상 제품 이미지의 수 증가시킬 수 있다.
예를 들어, 프로세서(180)는 정상 제품 이미지에 대하여 밝기 변경, 컬러 변경, 명암 변경, 회전 및 리스케일 중 적어도 하나를 적용하여 상기 정상 분류에 속하는 정상 제품 이미지를 증가시킬 수 있다.
도 6는 본 개시의 일 실시 예에 따른 정상 제품 이미지 생성하는 방법을 설명하기 위한 도면이다.
도 6을 참고하면, 프로세서(180)는 정상 분류에 속하는 정상 제품 이미지들(600)을 증가시킬 수 있다. 프로세서(180)는 기존에 정상 분류에 속하는 정상 제품 이미지(601)에 대하여 밝기를 밝게 변경하여 정상 제품 이미지(601)에 비해 밝은 정상 제품 이미지(602)를 생성할 수 있다. 또한, 프로세서(180)는 기존에 정상 제품 이미지(601)에 대하여 회전을 적용하여 정상 제품 이미지(601)가 소정의 각도로 회전된 정상 제품 이미지(603)를 생성할 수 있다.
한편, 도 4를 참고하면, 프로세서(180)는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 변형하여 비정상 분류에 속하는 비정상 제품 이미지를 생성할 수 있다(S403).
생산 과정의 불량률이 낮은 것이 일반적이고 불량의 원인은 매우 다양하기 때문에 비정상 제품 이미지를 획득하기가 어려운 문제가 있다. 따라서, 프로세서(180)는 정상 분류에 속하는 정상 제품 이미지를 변형하여 비정상 분류에 속하는 비정상 변형 이미지를 생성할 수 있다.
예를 들어, 프로세서(180)는 정상 분류에 속하는 정상 제품 이미지에 대하여 컷 아웃(Cut-Out), 컷 페이스트(Cut-Pate) 및 노이즈 추가 중 적어도 하나를 적용하여 비정상 분류에 속하는 비정상 변형 이미지를 생성할 수 있다.
도 7은 본 개시의 일 실시 예에 따른 비정상 제품 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 7을 참고하면, 프로세서(180)는 정상 분류에 속하는 정상 제품 이미지(601)에 대하여 소정의 이미지 부분을 컷 아웃(Cut-Out)하여 비정상 분류(700)에 속하는 비정상 변형 이미지(701)를 생성할 수 있다. 또한, 프로세서(180)는 정상 분류에 속하는 정상 제품 이미지(601)에 대하여 소정의 이미지 부분을 컷 페이스트(Cut-Pate)하여 비정상 분류(700)에 속하는 비정상 변형 이미지(702)를 생성할 수 있다.
한편, 도 4를 참고하면, 프로세서(180)는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지와 비정상 분류에 속하는 비정상 제품 이미지를 중첩하여 비정상 분류에 속하는 비정상 제품 이미지를 생성할 수 있다(S404).
예를 들어, 프로세서(180)는 제품 생산 과정에서 발생한 불량 제품에 대한 이미지인 비정상 제품 이미지에 대하여 정상 제품 이미지를 중첩시켜 정상 제품 이미지에 가까운 비정상 제품 이미지를 생성할 수 있다.
도 8은 본 개시의 일 실시 예에 따른 비정상 제품 이미지를 생성하는 방법을 설명하기 위한 도면이다.
도 8을 참고하면, 프로세서(180)는 정상 제품 이미지(801)와 비정상 제품 이미지(802)를 중첩하여 비정상 제품 이미지(803)를 생성할 수 있다.
이 경우, 프로세서(180)은 정상 제품 이미지(801)과 비정상 제품 이미지(802)에 가중치 합(Weighted Sum)을 적용하여 중첩할 수 있다. 즉, 정상 제품 이미지에(801)에 ω(0≤ω≤1)값을 곱하고 비정상 제품 이미지(802)에 (1-ω)값을 곱한 후 두 이미지를 합산하는 방식으로 중첩한 이미지를 만들 수 있다.
따라서, 프로세서(180)는 중첩된 이미지에의 정상 제품 이미지의 특징을 감소시켜 비정상 분류에 속할 수 있도록 할 수 있다.
한편, 다시 도 3을 참고하면, 러닝 프로세서(130)는 특징 추출 모델을 대조 학습시킬 수 있다(S302).
러닝 프로세서(130)는 동일 분류에 속하는 제품 이미지의 표현 벡터(Representation Vector)가 서로 가까워지도록 하고, 서로 다른 분류에 속하는 제품 이미지의의 표현 벡터가 서로 멀어지도록 특징 추출 모델에 대한 대조 학습(Contrastive Leaning)을 시킬 수 있다.
한편, 러닝 프로세서(130)는 정상 분류에 속하는 적어도 하나의 정상 제품 이미지, 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 특징 추출 모델에 입력하고, 특징 추출 모델로부터 출력되는 동일 분류에 속하는 적어도 하나의 제품 이미지 간의 표현 벡터 간의 거리가 가까워지고, 서로 다른 분류에 속하는 제품 이미지의 표현 벡터 간의 거리가 멀어지도록 특징 추출 모델을 대조 학습(Contrastive Learning)시킬 수 있다. 여기서, 정상 분류에 속하는 정상 제품 이미지 및 비정상 분류에 속하는 비정상 제품 이미지는 상기 내용과 같이 도 4의 실시 예로 생성한 이미지일 수 있다.
한편, 특징 추출 모델은 소정의 이미지 데이터를 입력받고 입력된 소정의 이미지 데이터에 대한 표현 벡터를 출력하는 인공 신경망 모델일 수 있다. 예를 들어, 특징 추출 모델은 합성곱 신경망 (CNN, Convolutional Neural Network)일 수 있다.
한편, 러닝 프로세서(130)는 대조 손실(Contrastive Loss)기반의 손실함수를 기초로 상기 특징 추출 모델에 대한 대조 학습을 시킬 수 있다.
대조 손실(Contrastive Loss)기반의 손실함수는 다음과 같을 수 있다.
x+는 정상 분류에 속하는 정상 제품 이미지를 의미한다. 또한, x-는 비정상 분류에 속하는 비정상 제품 이미지를 의미한다.
또한, z()함수는 표현 벡터를 출력하는 함수이고, sim()함수는 표현벡터 간 유사도를 측정하는 함수이다. Τ는 온도 하이퍼 파라미터(Temperature hyper-parameter)이다.
도 9는 본 개시의 일 실시 예에 따른 특징 추출 모델을 설명하기 위한 도면이다.
도 9를 참고하면, 러닝 프로세서(130)는 서로 다른 분류에 속하는 제품 이미지(901, 902)를 특징 추출 모델(903)에 각각 입력하여, 특징 추출 모델(902)로부터 출력되는 정상 제품 이미지(901)의 제1 표현 벡터(904) 및 비정상 제품 이미지(902의 제1 표현 벡터(905)가 서로 멀어지도록 대조 손실기반의 손실함수(906)를 기반으로 대조 학습시킬 수 있다. 여기서, 정상 제품 이미지(901) 및 비정상 제품 이미지(902)는 상기 내용과 같이 도 4의 실시 예로 생성한 이미지일 수 있다.
한편, 다시 도 3을 참고하면, 프로세서(180)는 학습된 특징 추출 모델을 기초로 정상 제품 이미지의 패치 단위별 임베딩 벡터를 획득할 수 있다(S303).
프로세서(180)는 대조 학습된 특징 추출 모델에 정상 분류에 속하는 적어도 하나 이상의 정상 제품 이미지를 입력하여, 적어도 하나 이상의 정상 제품 이미지의 패치 단위별 임베딩 벡터(embedding vector)를 획득할 수 있다.
도 10은 본 개시의 일 실시 예에 따른 패치 단위별 임베딩 벡터를 획득하는 방법을 설명하기 위한 도면이다.
도 10을 참고하면, 프로세서(180)는 정상 분류에 속하는 N개의 정상 제품 이미지(1001)를 특징 추출 모델(1003)에 입력할 수 있다.
정상 제품 이미지(1001)는 W(폭)*H(높이)의 크기를 가질 수 있다.
프로세서(180)는 정상 제품 이미지(1001)의 패치 단위(1002)별 임베딩 벡터(1004)를 특징 추출 모델(1003)로부터 획득할 수 있다.
각각의 패치 단위(1002)는 정상 제품 이미지(1001)에서의 위치 값을 기준으로 소정의 크기를 갖는 분할된 이미지 단위일수 있다. 이 경우, 패치 단위별 임베딩 벡터는 로 정의될 수 있으며, N개의 정상 제품 이미지들에 대한 패치 단위별 임베딩 벡터 세트는로 정의될 수 있다.
한편, 다시 도 3을 참고하면, 프로세서(180)는 패치 단위별 임베딩 벡터의 정규분포를 획득할 수 있다(S304).
프로세서(180)는 적어도 하나의 패치 단위별 임베딩 벡터 각각에 대하여 패치 단위별 가우시안 분포를 획득할 수 있다.
도 10을 참고하면, 프로세서(180)는 N개의 정상 제품 이미지(1001)들에 대하여 패치 단위별 임베딩 벡터 세트를 기초로 가우시안 분포 (1005)를 획득할 수 있다. 이 경우, 는 N개의 정상 제품 이미지(1001)들의 패치 단위별 임베딩 벡터 세트 의 표본 평균(sample mean)이고, 는 표본 공분산(sample covariance)이다.
한편, 표본 공분산(sample covariance) 는 다음과 같은 수학식으로 계산될 수 있다.
여기서, 은 표본 공분산(sample covariance) 행렬 을 풀랭크(full rank)하고 가역(invertible)으로 만들기 위한 정규화 변수(regularization term)이다.
프로세서(180)는 패치 단위(i, j)별 임베딩 벡터의 정규 분포인 가우시안 분포(1006)를 획득할 수 있다.
한편, 프로세서(180)는 대조 학습된 특징 추출 모델 및 정규 분포를 이용하여 검사 대상 제품이 정상 제품인지 불량 제품인지 여부를 판별할 수 있다.
도 11은 본 개시의 일 실시 예에 따른 불량 제품 판별 방법을 설명하기 위한 순서도이다.
프로세서(180)는 검사 대상이 되는 제품에 대한 검사 제품 이미지를 획득할 수 있다(S1101). 검사 제품 이미지는 제품의 생산 과정 또는 검수 과정에서 카메라 등을 이용해 촬영된 이미지일 수 있다. 검사 제품 이미지는 메모리(170)에 저장된 이미지이거나 통신부(110)를 통해 외부 장치로부터 수신되어 저장된 이미지일 수 있다.
프로세서(180)는 획득한 검사 제품 이미지를 특징 추출 모델에 입력하고, 특징 추출 모델로부터 검사 제품 이미지의 패치 단위별 임베딩 벡터를 획득할 수 있다(S1102).
또한, 프로세서(180)는 획득한 검사 제품 이미지의 패치 단위별 임베딩 벡터와 패치 단위별 정규 분포 사이의 거리를 획득할 수 있다(S1103).
프로세서(180)는 다음과 수학식에 의해 거리 값을 획득할 수 있다.
이 경우, 는 획득한 검사 제품 이미지의 패치 단위별 임베딩 벡터이고, 는 상기 도 10의 실시 예에서 설명한 정상 제품 이미지로부터 획득한 패치 단위별 가우시안 분포 값일 수 있다.
프로세서(180)는 획득한 거리에 따라 검사 대상이 되는 제품이 정상 제품인지 불량 제품인지 여부를 판별할 수 있다(S1105).
프로세서(180)는 거리가 소정의 불량 기준 값 이하인 경우 정상 제품으로 판별할 수 있다(S1106). 패치 단위별 가우시안 분포는 정상 제품 이미지로부터 추정한 분포로 검사 대상 이미지의 패치 단위별 임베딩 벡터와의 거리 값이 작을수록 정상 제품일 확률이 높기 때문이다.
한편, 프로세서(180)는 거리가 소정의 불량 기준 값을 초과하는 경우 불량 제품으로 판별할 수 있다(S1107).
본 개시의 일실시예에 의하면, 전술한 방법은, 프로그램이 기록된 매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 프로세서가 읽을 수 있는 매체의 예로는, ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있다.

Claims (12)

  1. 인공 지능 장치에 있어서,
    정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 저장하는 메모리;
    동일 분류에 속하는 제품 이미지의 표현 벡터(Representation Vector)가 가까워지도록 하고, 서로 다른 분류에 속하는 제품 이미지의의 표현 벡터가 서로 멀어지도록 특징 추출 모델에 대한 대조 학습(Contrastive Leaning)을 시키는 러닝 프로세서; 및
    상기 대조 학습된 특징 추출 모델에 상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 입력하여 적어도 하나의 정상 제품 이미지의 패치 단위별 임베딩 벡터(embedding vector)를 획득하고, 상기 획득한 패치 단위별 임베딩 벡터의 정규 분포를 획득하는 프로세서를 포함하는,
    인공 지능 장치.
  2. 제1 항에 있어서,
    상기 프로세서는,
    상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 밝기 변경, 컬러 변경, 명암 변경, 회전 및 리스케일 중 적어도 하나를 적용하여 상기 정상 분류에 속하는 정상 제품 이미지를 생성하는,
    인공 지능 장치.
  3. 제1 항에 있어서,
    상기 프로세서는,
    상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 컷 아웃(Cut-Out), 컷 페이스트(Cut-Pate) 및 노이즈 추가 중 적어도 하나를 적용하여 상기 비정상 분류에 속하는 비정상 제품 이미지를 생성하는,
    인공 지능 장치.
  4. 제1 항에 있어서,
    상기 프로세서는,
    상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 중첩하여 상기 비정상 분류에 속하는 비정상 제품 이미지를 생성하는,
    인공 지능 장치.
  5. 제1 항에 있어서,
    상기 러닝 프로세서는,
    대조 손실(Contrastive Loss)기반의 손실함수를 기초로 상기 특징 추출 모델에 대한 대조 학습을 시키는,
    인공 지능 장치.
  6. 제1 항에 있어서,
    상기 프로세서는,
    검사 대상이 되는 제품에 대한 검사 제품 이미지를 획득하고, 상기 검사 제품 이미지를 상기 특징 추출 모델에 입력하여 상기 특징 추출 모델로부터 상기 검사 제품 이미지의 패치 단위별 임베딩 벡터를 획득하고, 상기 검사 제품 이미지의 패치 단위별 임베딩 벡터와 상기 패치 단위별 정규 분포 사이의 거리를 획득하고, 상기 거리 값에 따라 상기 검사 대상이 되는 제품이 정상 제품인지 불량 제품인지 여부를 판별하는,
    인공 지능 장치.
  7. 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 저장하는 단계;
    동일 분류에 속하는 제품 이미지의 표현 벡터(Representation Vector)가 가까워지도록 하고, 서로 다른 분류에 속하는 제품 이미지의의 표현 벡터가 서로 멀어지도록 특징 추출 모델에 대한 대조 학습(Contrastive Leaning)을 시키는 단계;
    상기 대조 학습된 특징 추출 모델에 상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지를 입력하여 적어도 하나의 정상 제품 이미지의 패치 단위별 임베딩 벡터(embedding vector)를 획득하는 단계; 및
    상기 획득한 패치 단위별 임베딩 벡터의 정규 분포를 획득하는 단계를 포함하는,
    불량 제품 감지 방법.
  8. 제7 항에 있어서,
    상기 제품 이미지를 저장하는 단계는,
    상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 밝기 변경, 컬러 변경, 명암 변경, 회전 및 리스케일 중 적어도 하나를 적용하여 상기 정상 분류에 속하는 정상 제품 이미지를 생성하는 단계를 포함하는,
    불량 제품 감지 방법.
  9. 제7 항에 있어서,
    상기 제품 이미지를 저장하는 단계는,
    상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지에 대하여 컷 아웃(Cut-Out), 컷 페이스트(Cut-Pate) 및 노이즈 추가 중 적어도 하나를 적용하여 상기 비정상 분류에 속하는 비정상 제품 이미지를 생성하는 단계를 포함하는,
    불량 제품 감지 방법.
  10. 제7 항에 있어서,
    상기 제품 이미지를 저장하는 단계는,
    상기 정상 분류에 속하는 적어도 하나의 정상 제품 이미지 및 비정상 분류에 속하는 적어도 하나의 비정상 제품 이미지를 중첩하여 상기 비정상 분류에 속하는 비정상 제품 이미지를 생성하는 단계를 포함하는,
    불량 제품 감지 방법.
  11. 제7 항에 있어서,
    상기 대조 학습을 시키는 단계는,
    대조 손실(Contrastive Loss)기반의 손실함수를 기초로 상기 특징 추출 모델에 대한 대조 학습을 시키는 단계를 포함하는,
    불량 제품 감지 방법.
  12. 제7 항에 있어서,
    검사 대상이 되는 제품에 대한 검사 제품 이미지를 획득하는 단계;
    상기 검사 제품 이미지를 상기 특징 추출 모델에 입력하여 상기 특징 추출 모델로부터 상기 검사 제품 이미지의 패치 단위별 임베딩 벡터를 획득하는 단계;
    상기 검사 제품 이미지의 패치 단위별 임베딩 벡터와 상기 패치 단위별 정규 분포 사이의 거리를 획득하는 단계 및
    상기 거리 값에 따라 상기 검사 대상이 되는 제품이 정상 제품인지 불량 제품인지 여부를 판별하는 단계를 더 포함하는,
    불량 제품 감지 방법.
KR1020220036221A 2022-03-23 2022-03-23 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법 KR20230138314A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220036221A KR20230138314A (ko) 2022-03-23 2022-03-23 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법
PCT/KR2023/003768 WO2023182795A1 (ko) 2022-03-23 2023-03-22 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220036221A KR20230138314A (ko) 2022-03-23 2022-03-23 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR20230138314A true KR20230138314A (ko) 2023-10-05

Family

ID=88101824

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220036221A KR20230138314A (ko) 2022-03-23 2022-03-23 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법

Country Status (2)

Country Link
KR (1) KR20230138314A (ko)
WO (1) WO2023182795A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008129714A (ja) * 2006-11-17 2008-06-05 Univ Of Tsukuba 異常検知方法、異常検知装置及び異常検知用プログラム並びに学習モデル生成方法
KR20210057518A (ko) * 2019-11-12 2021-05-21 라온피플 주식회사 불량 이미지 생성 장치 및 방법
JP2023523726A (ja) * 2020-04-21 2023-06-07 グーグル エルエルシー 複数のポジティブ例を用いた教師あり対照学習
JP2021174456A (ja) * 2020-04-30 2021-11-01 ボッシュ株式会社 異常判定方法及び異常判定装置
JP2022037623A (ja) * 2020-08-25 2022-03-09 株式会社Ye Digital 異常検知方法、異常検知装置および異常検知プログラム

Also Published As

Publication number Publication date
WO2023182795A1 (ko) 2023-09-28

Similar Documents

Publication Publication Date Title
US11216694B2 (en) Method and apparatus for recognizing object
US11170201B2 (en) Method and apparatus for recognizing object
US20180268292A1 (en) Learning efficient object detection models with knowledge distillation
US11776092B2 (en) Color restoration method and apparatus
US11651214B2 (en) Multimodal data learning method and device
US11900645B2 (en) Systems and methods for modeling and controlling physical dynamical systems using artificial intelligence
CN111670357A (zh) 视觉检查管理方法和视觉检查系统
US20190228294A1 (en) Method and system for processing neural network model using plurality of electronic devices
US11458624B2 (en) Control server and method for controlling robot using artificial neural network, and robot implementing the same
CN112650868B (zh) 图像检索方法、装置及存储介质
US11433548B2 (en) Robot system and control method thereof
US11500370B2 (en) System for predictive maintenance using generative adversarial networks for failure prediction
US20220366244A1 (en) Modeling Human Behavior in Work Environment Using Neural Networks
JP2022078310A (ja) 画像分類モデル生成方法、装置、電子機器、記憶媒体、コンピュータプログラム、路側装置およびクラウド制御プラットフォーム
KR20210015531A (ko) 뉴럴 네트워크 모델을 업데이트하는 방법 및 시스템
KR20230069892A (ko) 이상 온도를 나타내는 객체를 식별하는 방법 및 장치
US11430137B2 (en) Electronic device and control method therefor
US11203116B2 (en) System and method for predicting robotic tasks with deep learning
KR20230138314A (ko) 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법
KR102651974B1 (ko) 웨이퍼 비전검사 장치 및 방법
KR20230138335A (ko) 제품 이미지를 기반으로 불량 제품을 감지하는 인공 지능 장치 및 그 방법
US20240153262A1 (en) Device for managing a visual saliency model and control method thereof
KR20230109937A (ko) 제품 이미지 패턴 군집화를 기반한 비전검사 인공지능 장치 및 그 방법
KR102564075B1 (ko) Rfid 기반 입출고 재고 관리 솔루션 제공 방법, 장치 및 시스템
US20240160929A1 (en) Device for training and managing a visual scene graph model and control method thereof