KR102320814B1 - 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치 - Google Patents

실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치 Download PDF

Info

Publication number
KR102320814B1
KR102320814B1 KR1020200090336A KR20200090336A KR102320814B1 KR 102320814 B1 KR102320814 B1 KR 102320814B1 KR 1020200090336 A KR1020200090336 A KR 1020200090336A KR 20200090336 A KR20200090336 A KR 20200090336A KR 102320814 B1 KR102320814 B1 KR 102320814B1
Authority
KR
South Korea
Prior art keywords
image
sealer
neural network
electronic device
network model
Prior art date
Application number
KR1020200090336A
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 KR1020200090336A priority Critical patent/KR102320814B1/ko
Application granted granted Critical
Publication of KR102320814B1 publication Critical patent/KR102320814B1/ko

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/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
    • G06N3/0454
    • 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/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8887Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges based on image processing techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Image Analysis (AREA)

Abstract

본 개시는 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치에 관한 것이다. 전자 장치가 수행하는 실러의 도포 상태를 식별하는 방법은 상기 실러가 도포된 제품에 대한 제1 이미지를 획득하는 단계; 상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하는 단계; 및 상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계; 를 포함할 수 있다.

Description

실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치 {APPRATUS FOR IDENTIFYING STATUS OF SEALER APPLICATION AND METHOD THEREOF}
본 개시는 실러의 도포 상태를 식별하는 방법 및 장치에 관한 것이다. 보다 상세하게는 이미지 처리(image processing)를 통하여 실러의 도포 상태를 식별하는 방법 및 장치에 관한 것이다.
최근 제품 제조 공정이 자동화됨에 따라, 자동화된 제품 제조 공정을 통하여 생산된 제품의 결함 또는 자동화 공정에서 발생될 수 있는 설비의 결함을 검출하기 위한 기술들이 활발하게 연구되고 있다.
한편 인공 신경망(Artificial Neural Network)은 인공 뉴런들의 상호 연결된 집합들을 구현하기 위하여 컴퓨팅 기기 또는 컴퓨팅 기기에 의해서 수행되는 방법을 지칭할 수 있다. 인공 신경망의 일 실시 예로, 심층 신경망(Deep Neural Network) 또는 딥 러닝(Deep Learning)은 멀티 레이어 구조를 가질 수 있고, 레이어들 각각이 다수의 데이터에 따라 학습될 수 있다.
최근 인공 신경망 기술이 발달함에 따라, 인공 신경망 기술을 제품 검수에 활용하기 위한 연구 역시 활발하게 진행되고 있다. 인공 신경망 기술을 자동화 공정을 통하여 생산된 제품의 결함 검출에 이용하거나, 보안관련 시스템 등에 적용 함으로써, 비정상 제품이나, 보안성이 유지되지 않는 상태인, 이상(Anomaly) 상태를 검출하는 기술을 이상 검출(Anomaly Detection)이라고 한다.
그러나, 일반적으로 이상 검출 기술들은, 자동화된 제품 제조 공정에서 제품에 대한 정상 데이터 또는 비정상 데이터와 같은 학습 데이터를 확보하기 어려운 한계점이 있으며, 이러한 한계점으로 인한 식별 정확도가 낮은 문제점이 있었다. 따라서, 학습 데이터가 부족한 환경에서, 인공 지능 기술을 이용하여 제품의 상태를 정확하게 식별하기 위한 기술 개발이 요구되고 있다.
한국공개특허 제2019-0115484호
일 실시 예에 따르면, 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치가 제공될 수 있다.
또한, 일 실시 예에 따르면, 인공 신경망 모델을 이용하여 실러가 도포된 제품의 상태를 자동으로 식별할 수 있는 방법 및 장치가 제공될 수 있다.
상술한 기술적 과제를 달성하기 위한 본 개시의 일 실시 예에 따라, 전자 장치가 실러의 도포 상태를 식별하는 방법은 상기 실러가 도포된 제품에 대한 제1 이미지를 획득하는 단계; 상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하는 단계; 및 상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계; 를 포함할 수 있다.
일 실시 예에 의하면, 상기 제1 이미지를 획득하는 단계는 상기 전자 장치와 연결된 카메라로부터, 기 설정된 주기에 따라 상기 제1 이미지에 대한 이미지 정보를 획득함으로써, 상기 제1 이미지를 획득하는 단계; 를 포함할 수 있다.
일 실시 예에 의하면, 상기 방법은 상기 제1 이미지에서 식별된 실러의 도포 상태에 대한 정보 또는 상기 식별된 실러의 도포 상태에 정보에 기초하여 결정된 제어 정보를 상기 전자 장치와 연결된 상기 실러를 도포 하기 위한 외부 디바이스로 전송하는 단계; 를 더 포함할 수 있다.
또한, 상기 기술적 과제를 해결하기 위한 본 개시의 또 다른 실시 예에 따라, 실러의 도포 상태를 식별하는 전자 장치는, 네트워크 인터페이스; 하나 이상의 인스트럭션을 저장하는 메모리; 및 적어도 하나의 프로세서; 를 포함하고, 상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 실러가 도포된 제품에 대한 제1 이미지를 획득하고, 상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하고, 상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별할 수 있다.
일 실시 예에 의하면, 상기 프로세서는 상기 전자 장치와 연결된 카메라로부터, 상기 네트워크 인터페이스를 통하여, 기 설정된 주기에 따라 상기 제1 이미지에 대한 이미지 정보를 획득함으로써, 상기 제1 이미지를 획득할 수 있다.
또한, 상기 기술적 과제를 해결하기 위한 본 개시의 또 다른 실시 예에 따라, 실러가 도포된 제품에 대한 제1 이미지를 획득하는 단계; 상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 이진화된 이미지로 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하는 단계; 및 상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계; 를 포함하는, 실러의 도포 상태를 식별하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체가 제공될 수 있다.
도 1은 일 실시 예에 따른 실러의 도포 상태를 식별하는 과정을 개략적으로 설명하기 위한 도면이다.
도 2는 일 실시 일 실시 예에 따른 실러의 도포 상태를 식별하는 방법의 흐름도이다.
도 3은 일 실시 예에 따른 제1 신경망 모델을 이용하여 실러 영역을 검출하는 과정을 설명하기 위한 도면이다.
도 4는 일 실시 예에 따른 제1 신경망 모델의 구조를 설명하기 위한 도면이다.
도 5는 일 실시 예에 따른 제2 신경망 모델이 학습 데이터를 생성하는 과정을 설명하기 위한 도면이다.
도 6은 일 실시 예에 따라, 제1 신경망 모델을 학습하는 과정을 설명하기 위한 도면이다.
도 7은 일 실시 예에 따라 전자 장치가 제1 이미지 내 실러의 도포 상태를 식별하는 구체적인 방법을 설명하기 위한 도면이다.
도 8은 일 실시 예에 따라 전자 장치가 제1 이미지 내 실러의 도포 상태를 식별하는 과정을 설명하기 위한 도면이다.
도 9는 일 실시 예에 따른 전자 장치의 블록도이다.
도 10은 또 다른 실시 예에 따른 전자 장치의 블록도이다.
도 11은 일 실시 예에 따른 전자 장치와 연결되는 서버의 블록도이다.
도 12는 또 다른 실시 예에 따른 실러의 도포 상태를 식별하는 과정을 설명하기 위한 도면이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다.
본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시 예에 따른 실러의 도포 상태를 식별하는 과정을 개략적으로 설명하기 위한 도면이다.
일 실시 예에 의하면, 전자 장치(1000)는 실러(sealer)가 도포된 제품에 대한 제1 이미지(102)를 획득하고, 획득된 제1 이미지(102) 내 실러의 도포 상태를 식별할 수 있다. 예를 들어, 전자 장치(1000)는 실러가 도포된 제품에 대한 제1 이미지를 분석함으로써, 실러의 도포 여부, 도포된 실러의 단락 여부 또는 도포된 실러의 폭을 식별할 수 있다.
일 실시 예에 의하면, 전자 장치(1000)는 실러가 도포된 제품에 대한 제1 이미지(102)를 미리 학습된 제1 신경망 모델(104)에 입력함으로써, 제1 이미지(102) 중 실러가 도포됨으로써 형성되는 실러 영역에 대한 실러 영역 이미지(106)를 식별할 수 있다. 전자 장치(1000)는 제1 신경망 모델을 이용하여 제1 이미지(102)로부터 실러 영역 이미지(106)를 검출하고, 검출된 실러 영역 이미지로부터 실러 폭 측정 값(108)을 획득하며, 획득된 실러 폭 측정 값에 기초하여 실러의 도포 상태를 식별(110)할 수 있다.
일 실시 예에 의하면, 전자 장치(1000)는 제1 이미지 상 실러에 대한 도포 상태를 식별한 결과를 이용하여 실러 도포 상태 정보(112)를 결정하고, 결정된 실러 도포 상태 정보에 따라 전자 장치(1000)와 연결된 외부 디바이스를 제어하기 위한 제어 정보(114)를 결정할 수 있다. 일 실시 예에 의하면, 실러 도포 상태 정보(112)는 실러의 도포 여부를 나타내는 식별 값, 도포된 실러의 단락 여부를 나타내는 식별 값, 도포된 실러 폭의 측정 값 또는 측정된 실러의 폭이 미리 설정된 범위 내 인지 여부를 나타내는 식별 값을 포함할 수 있다.
전자 장치(1000)는 실러 도포 상태 정보(112)에 기초하여, 외부 디바이스(3000)를 제어하기 위한 제어 정보(114)를 결정할 수 있다. 일 실시 예에 의하면, 외부 디바이스(3000)는 카메라(122), 조명 디바이스(124), 실러 도포 디바이스(126) 또는 모니터링 디바이스(128) 중 적어도 하나를 포함할 수 있다. 카메라(122)는 전자 장치(1000)의 제어에 의하여, 실러가 도포된 제품에 대한 이미지를 미리 설정된 주기로 촬영할 수 있다. 카메라(122)는 획득한 이미지에 대한 정보를 미리 설정된 주기에 따라 전자 장치(1000)로 전송할 수 있다. 조명 디바이스(124)는 전자 장치(1000)의 제어에 의해, 전자 장치(1000) 또는 외부 디바이스(3000)가 동작하는 작업 공간의 조도를 제어할 수 있다.
실러 도포 디바이스(126)는 실러 저장부 또는 상기 실러 저장부에 저장된 실러를 소정의 압력으로 제품에 도포하기 위한 실러 배출부를 포함할 수 있다. 실러 도포 디바이스(126)는 전자 장치(1000)의 제어에 의하여 제품에 대한 실러 도포 속도 또는 실러의 도포 폭을 조절할 수 있다. 모니터링 디바이스(128)는 도포된 실러를 모니터링하기 위한 기타 전자 장치들을 포함할 수 있다.
또한, 일 실시 예에 의하면, 제어 정보(114)는 외부 디바이스(200)의 자세를 제어하기 위한 자세 제어 정보, 외부 디바이스의 카메라의 동작을 제어하기 위한 카메라 제어 정보, 실러 도포 디바이스(126)의 동작을 제어하기 위한 실러 도포 디바이스 제어 정보, 모니터링 디바이스(128)의 동작을 제어하기 위한 모니터링 디바이스 제어 정보를 포함할 수 있다. 전자 장치(1000)는 실러의 도포 상태를 실시간으로 식별하고, 식별된 실러의 도포 상태에 따라 결정되는 제어 정보를 외부 디바이스(3000)로 전송함으로써, 식별된 실러의 도포 상태에 따라 외부 디바이스(3000)를 효과적으로 제어할 수 있다.
일 실시 예에 의하면, 전자 장치(1000)가 이용하는 제1 신경망 모델은 제1 이미지가 입력되는 경우, 제1 이미지를 인코딩함으로써 제1 이미지의 이미지 특징들을 추출하는 인코더 및 상기 추출된 이미지 특징들을 디코딩(decoding)함으로써, 상기 디코딩된 이미지 특징에 따라 재구성된 이미지를 출력하는 디코더를 포함할 수 있다. 또한, 일 실시 예에 의하면, 제1 신경망 모델은, 실러가 도포된 제품에 대한 이미지가 입력되면, 이미지 내 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 이진화된 이미지로 출력할 수도 있다. 일 실시 예에 의하면, 전자 장치(1000)는 제1 신경망 모델 외에도, 기타 인공 지능 학습 알고리즘에 따라 학습됨으로써, 이미지 내 실러 영역을 식별할 수 있는 인공 지능 모델을 이용하여 실러 영역을 구분할 수도 있다.
일 실시 예에 의하면, 전자 장치(1000)가 이용하는 제1 신경망 모델은 인공 신경망(Artificial Neural Network)으로써, 생물학적 신경망에 착안된 컴퓨팅 시스템을 지칭할 수 있다. 인공 신경망 모델은 미리 정의된 조건에 따라 작업을 수행하는 고전적인 알고리즘과 달리, 다수의 샘플들을 고려함으로써 작업을 수행하는 것을 학습할 수 있다. 인공 신경망 모델은 인공 뉴런(neuron)들이 연결된 구조를 가질 수 있고, 뉴런들 간의 연결은 시냅스(synapse)로 지칭될 수 있다. 뉴런은 수신된 신호를 처리할 수 있고, 처리된 신호를 시냅스를 통해서 다른 뉴런에 전송할 수 있다. 뉴런의 출력은 액티베이션(activation)으로 지칭될 수 있고, 뉴런 및/또는 시냅스는 변동될 수 있는 가중치(weight)를 가질 수 있고, 가중치에 따라 뉴런에 의해 처리된 신호의 영향력이 증가하거나 감소할 수 있다.
예를 들어, 제1 신경망 모델(104)은 레이어들 및 상기 레이어들의 연결 강도에 관한 가중치들로 정의되는 복수의 블록들을 포함할 수 있다. 보다 상세하게는, 제1 신경망 모델 내 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values, weights)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공 신경망의 학습 결과에 의해 최적화될 수 있다.
예를 들어, 학습 과정 동안 인공지능 모델(예컨대 신경망 모델)에서 획득한 손실(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 수정 및 갱신될 수 있다. 본 개시에 따른 인공 신경망 모델은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다. 일 실시 예에 따른 제1 신경망 모델의 구체적인 구조는 후술하는 도 3 내지 4를 참조하여 보다 구체적으로 설명하기로 한다.
일 실시 예에 의하면, 전자 장치(1000)는 서버(2000)와 연결될 수 있다. 일 실시 예에 의하면, 전자 장치(1000)는 서버(2000)와 연동됨으로써, 이미지 내 실러의 도포 상태를 식별할 수도 있다. 서버(2000)는 네트워크를 통하여 전자 장치(1000)와 연결됨으로써, 전자 장치(1000)와 데이터를 송수신할 수 있는 기타 컴퓨팅 장치를 포함할 수 있다. 일 실시 예에 의하면, 서버(2000)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 통하여 전자 장치(1000)와 연결될 수 있다. 또한, 일 실시 예에 의하면, 서버(2000)는 도 1에 도시된 각 네트워크 구성 주체(예컨대 전자 장치 및 서버)가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망 자체를 포함할 수 도 있다.
도 2는 일 실시 일 실시 예에 따른 실러의 도포 상태를 식별하는 방법의 흐름도이다.
S210에서, 전자 장치(1000)는 실러가 도포된 제품에 대한 제1 이미지를 획득할 수 있다. 일 실시 예에 의하면, 전자 장치(1000)는 전자 장치(1000)와 연결된 카메라로부터, 네트워크 인터페이스를 통하여, 기 설정된 주기에 따라 제1 이미지에 대한 이미지 정보를 획득할 수 있고, 획득된 이미지 정보에 따른 제1 이미지를 획득할 수 있다.
S220에서, 전자 장치(1000)는 제1 신경망 모델을 이용하여 제1 이미지로부터 실러 영역을 검출할 수 있다. 예를 들어, 전자 장치(1000)는 실러가 도포된 제품에 대한 제1 이미지를 획득하면, 획득된 제1 이미지를 제1 신경망 모델에 입력할 수 있다. 제1 신경망 모델은, 이미지가 입력되면 실러 영역 및 실러 영역을 제외한 배경 영역을 구분할 수 있도록 미리 학습되는 신경망 모델로써, 제1 이미지가 입력되면, 제1 이미지로부터 실러 영역을 검출할 수 있다.
S230에서, 전자 장치(1000)는 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 제1 이미지 내 실러의 도포 상태를 식별할 수 있다. 예를 들어, 전자 장치(1000)는 제1 신경망 모델로부터 검출된 실러 영역에서, 실러 영역과 배경 영역을 구분하는 경계를 식별할 수 있다. 보다 상세하게는 전자 장치(1000)는 실러 영역 및 배경 영역을 구분하는 경계에 위치하는 픽셀의 위치 정보를 식별할 수 있다. 전자 장치(1000)는 실러 영역의 경계를 나타내는 픽셀들의 위치 정보에 기초하여, 제1 이미지 내 실러의 도포 상태를 식별한다.
일 실시 예에 의하면, 전자 장치(1000)는 실러 영역의 경계를 따라 소정의 가이드 박스들을 생성하고, 생성된 가이드 박스들을 미리 설정된 간격에 따라 배치하며, 배치된 가이드 박스들의 가로 길이 또는 세로 길이 중 적어도 하나의 평균 값을 식별함으로써, 제1 이미지 내 도포된 실러의 폭을 결정할 수 있다. 전자 장치(1000)는 결정된 실러의 폭을 기초로, 실러의 도포 상태를 식별할 수 있다.
도 2에는 도시되지 않았지만, 전자 장치(1000)는 제1 이미지로부터 식별된 실러의 도포 상태에 따라 실러의 도포 상태에 대한 정보를 결정할 수 있다. 일 실시 예에 의하면, 실러의 도포 상태에 대한 정보는 실러의 도포 상태가 정상인지 또는 비정상 상태인지 여부에 대한 정보를 포함할 수 있다. 전자 장치(1000)는 실러의 도포 상태에 대한 정보에 기초하여, 전자 장치(1000)에 연결된 외부 디바이스 (3000)를 제어하기 위한 제어 정보를 결정하고, 결정된 제어 정보를 전자 장치와 연결된 외부 디바이스(3000)로 전송할 수 있다.
도 3은 일 실시 예에 따른 제1 신경망 모델을 이용하여 실러 영역을 검출하는 과정을 설명하기 위한 도면이다.
도 3을 참조하여, 전자 장치(1000)가 실러 영역을 검출하기 위해 이용하는 제1 신경망 모델의 동작을 개략적으로 설명하기로 한다. 예를 들어, 전자 장치(1000)는 실러(Sealer)가 도포된 제품에 대한 제1 이미지들(310, 312)을 획득할 수 있다. 전자 장치(1000)는 획득된 제1 이미지들(310, 312)을 미리 학습된 제1 신경망 모델(314)에 입력할 수 있다.
일 실시 예에 의하면, 제1 신경망 모델(314)은 학습 데이터에 기초하여, 소정의 주기 동안 수정(refine) 및 갱신(update)된 가중치(316)들을 포함할 수 있다. 전자 장치(1000)는 수정 및 갱신된 가중치(316)에 따라 레이어들의 연결 강도가 결정되는 제1 신경망 모델을 이용하여, 제1 이미지(310, 312)로부터 실러 영역 이미지(322, 324)를 획득할 수 있다. 제1 신경망 모델(314)은 실러가 도포된 제품에 대한 이미지가 입력되면, 이미지로부터 실러 영역을 검출할 수 있다.
일 실시 예에 의하면, 실러 영역 이미지(322, 324)는 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 각각 이진화함으로써 생성되는 이진화 이미지일 수 있다. 일 실시 예에 의하면, 실러 영역 이미지(322, 324)에서, 실러 영역은 흰색 또는 배경 영역은 검은색으로 표시될 수 있다. 도 4를 참조하여 제1 신경망 모델의 구체적인 구조를 설명하기로 한다.
도 4는 일 실시 예에 따른 제1 신경망 모델의 구조를 설명하기 위한 도면이다.
제1 신경망 모델(314)은 제1 이미지가 입력되는 경우, 제1 이미지를 인코딩함으로써, 제1 이미지의 이미지 특징들을 추출하는 인코더 및 추출된 이미지 특징들을 디코딩함으로써, 상기 디코딩된 이미지 특징에 따라 재구성된 이미지를 출력하는 디코더를 포함할 수 있다. 일 실시 예에 의하면, 제1 신경망 모델은, 제1 이미지를 인코딩함으로써 생성되는 이미지 특징(feature)들을 디코더로 전달하기 위한 브릿지 블록(406)을 더 포함할 수 도 있다.
일 실시 예에 의하면, 제1 신경망 모델(314) 내의 인코더는 입력 레이어(402), 이미지로부터 고차원의 특징(feature)들을 추출하는 복수의 인코딩 블록들(412, 414, 416)을 포함할 수 있다. 각 인코딩 블록들(412, 414, 416)은, 제1 이미지가 입력되면, 입력된 제1 이미지를 고 차원(dimension)의 특징들로 변환할 수 있다. 예를 들어, 인코딩 블록으로 입력된 입력 이미지들은, 컨벌루션 레이어들을 거치면서, 고차원의 데이터를 가지는 소정의 이미지 특징들로 압축될 수 있다.
일 실시 예에 의하면, 인코딩 블록들(412, 414, 416)은 순서대로 적층된 컨벌루션 레이어(Conv), 배치 정규화 레이어(BN), ReLU활성화 함수, 컨벌루션 레이어(Conv) 또는 중합 레이어(Addition)중 적어도 하나를 포함할 수 있다. 일 실시 예에 의하면, 각 인코딩 블록들의 출력 값은, 대응되는 디코딩 블록들(422, 424, 426)의 입력 레이어에 배치된 결합(concatenate)레이어로, 이전 레벨의 디코딩 블록의 출력 값과 함께 입력될 수 있다.
일 실시 예에 의하면, 인코더(402) 내 인코딩 블록(416)의 출력 값은 브릿지 블록(406)으로 연결될 수 있다. 일 실시 예에 의하면, 브릿지 블록(406)은 인코더(402)에 포함될 수도 있지만, 인코더(402)외부에 위치할 수도 있다. 브릿지 블록(406)의 구성은 인코딩 블록들(412, 414, 416)의 구성에 대응될 수 있다. 그러나 또 다른 실시 예에 의하면, 브릿지 블록(406)은, 인코딩 블록들(412, 424, 426) 내 구성 중, 중합(addition) 레이어를 포함하지 않고, 컨벌루션 레이어(Conv), 배치 정규화 레이어(BN), ReLU활성화 함수 및 컨벌루션 레이어(Conv)를 포함할 수 도 있다. 브릿지 블록(406)은 인코더의 출력 값을 획득하고, 획득된 인코더의 출력 값을 고차원의 특징으로 변환하며, 이미지 특징들을 디코더(404)로 전달할 수 있다.
디코더(404)는 인코더로부터 추출된 이미지 특징들을 디코딩함으로써, 디코딩된 이미지 특징에 따라 재구성된 이미지를 출력할 수 있다. 일 실시 예에 의하면, 디코더(404)는 출력 블록(427) 및 이미지 특징이 입력되면, 입력된 이미지 특징들을 디코딩함으로써 이미지를 재구성하는 디코딩 블록들(422, 424, 426)을 포함할 수 있다. 예를 들어, 디코더(404)는 디코딩 블록들을 이용하여, 추출된 이미지 특징들을 입력 이미지에 대응되는 고차원의 이미지로 확장함으로써, 입력 이미지의 특징을 재구성할 수도 있다.
일 실시 예에 의하면, 디코딩 블록들(422, 424, 426)은 배치 정규화 레이어(BN), ReLU활성화 함수, 컨벌루션 레이어(Conv), 배치 정규화 레이어(BN), ReLU활성화 함수, 컨벌루션 레이어(Conv), 중합 레이어(Addion), 업 샘플링(Upsampling) 레이어중 적어도 하나를 포함할 수 있다. 일 실시 예에 의하면, 각 디코딩 블록들(422, 424, 426)은 대응되는 인코딩 블록들(412, 414, 416)의 출력 값 및 이전 레벨의 디코딩 블록의 출력 값이 결합된(concatenate) 값을 입력 받고, 이전 레벨의 디코딩 블록의 출력 값 및 대응되는 인코딩 블록의 출력 값이 결합된 값을 디코딩하며, 디코딩된 값을 다음 레벨의 디코딩 블록으로 전달할 수 있다. 디코더(404)내 디코딩 블록들은, 이전 레벨의 입력 데이터를 재구성하는 과정을 반복함으로써, 입력 데이터의 특징 중 중요한 정보만을 추출하도록 학습됨으로써, 실러 영역 이미지를 효과적으로 나타낼 수 있다.
출력 블록(427)은 출력(output) 레이어, 시그모이드 함수 레이어 및 컨벌루션 레이어를 포함할 수 있다. 출력 블록(427)은 디코더(404)에서 출력된 값을 기 설정된 레벨로 변환하고, 변환된 레벨의 값을 출력함으로써, 이미지들을 재구성할 수 있다.
도 5는 일 실시 예에 따른 제2 신경망 모델이 학습 데이터를 생성하는 과정을 설명하기 위한 도면이다.
일 실시 예에 의하면, 제1 신경망 모델은 실러가 도포된 제품을 촬영함으로써 획득되는, 제1 이미지와는 다른 제2 이미지 및 상기 제2 이미지가 입력되면, 상기 제2 이미지의 이미지 특징이 반영된 이미지를 출력하도록 학습된 제2 신경망 모델로부터 출력된 제3 이미지에 기초하여, 상기 제1 이미지를 획득하기 전에 미리 학습될 수 있다. 보다 상세하게는, 제1 신경망 모델은, 제2 이미지 및 제3 이미지를 라벨링함으로써 생성되는 라벨링된(labeled) 제2 이미지 및 라벨링된(labeled) 제3 이미지에 기초하여 학습될 수 있다.
일 실시 예에 의하면, 제1 이미지 및 제2 이미지는 실제 실러(sealer)가 도포된 제품들을 촬영함으로써 획득되는 이미지 데이터 베이스 등으로부터 획득되는 이미지일 수 있고, 제3 이미지는 제2 신경망 모델에 의하여 재구성된 이미지일 수 있다. 또한, 라벨링된 이미지들은, 이미지 내 픽셀이 실러 영역에 속하는지 또는 배경 영역에 속하는지 여부에 따라 제2 이미지 및 상기 제3 이미지 내 각 픽셀들을 라벨링함으로써 생성되는 이미지일 수 있다.
본 개시에 따른 전자 장치(1000)는 제1 신경망 모델을 학습시키기 위한 학습용 데이터로써, 실러가 도포된 제품에 대한 이미지 데이터가 부족한 문제점을 해결하기 위해, 제2 신경망 모델을 이용하여 학습용 이미지들을 생성할 수 있다. 일 실시 예에 의하면, 제2 신경망 모델은 비지도 인공지능 학습 알고리즘에 따라 학습될 수 있는 생성적 적대 신경망(Generative Adversarial Network, GAN)일 수 있다.
일 실시 예에 의하면, 제2 신경망 모델은, 이미지 생성 모델(504) 및 이미지 식별 모델(510)을 포함할 수 있다. 일 실시 예에 의하면, 이미지 생성 모델(504)은 잠재 공간(502)으로부터 획득되는 미리 설정된 랜덤 노이즈 변수에 기초하여, 제3 이미지(508)를 출력하도록 학습될 수 있다. 일 실시 예에 의하면, 이미지 생성 모델(504)은 이미지 식별 모델(510)과 함께, 이미지 생성 모델(504)에 대한 제1 제1 손실 함수 및 이미지 식별 모델(510)에 대한 제2 손실 함수를 최소화시키도록 학습될 수 있다.
이미지 식별 모델(510)은 이미지 생성 모델(504)에서 생성된 제3 이미지(508)가 실러가 도포된 제품을 촬영함으로써 획득된 이미지인지, 또는 상기 이미지 생성 모델(504)에서 생성된 이미지 인지 여부를 식별할 수 있다. 일 실시 예에 의하면, 이미지 식별 모델(510)은 이미지 생성 모델(504)이 생성한 이미지가 실제 이미지 데이터 베이스 상의 이미지로 식별될 경우, '진짜' 또는 '참' 임을 나타내는 식별 정보를 출력하고, 이미지 생성 모델(504)이 생성한 이미지가, 실제 이미지 데이터 베이스 상의 이미지가 아닌 것으로 식별될 경우, '가짜' 또는 '거짓'임을 나타내는 식별 정보를 출력할 수 있다.
일 실시 예에 의하면, 상술한 이미지 생성 모델(504)의 신경망 구조는 하기 표 1의 구조 파라미터(예컨대 Kernel Size, Resample, Output Shape)에 의해 정의될 수 있다.
Kernel size Resample Output Shape
Z - - 128
Linear - - 512x4x4
Residual block [3x3]x2 Up 512x8x8
Residual block [3x3]x2 Up 256x16x16
Residual block [3x3]x2 Up 128x32x32
Residual block [3x3]x2 Up 64x64x64
Conv, tanh 3x3 - 3x64x64
또한, 일 실시 예에 따른 이미지 식별 모델(510)의 내부 신경망 구조는 하기 표 2의 구조 파라미터(예컨대 Kernel Size, Resample, Output Shape)에 의해 정의될 수 있다.
Kernel size Resample Output Shape
Residual block [3x3]x2 Down 128x32x32
Residual block [3x3]x2 Down 256x16x16
Residual block [3x3]x2 Down 512x8x8
Residual block [3x3]x2 Down 512x4x4
ReLU, mean pool - - 512
Linear - - 1
일 실시 예에 의하면, 이미지 생성 모델(504)은 -1 내지 1 사이의 범위에 해당하는 랜덤 노이즈 변수를 이용하여 임의의 이미지를 생성하며 생성된 이미지를 이미지 식별 모델(510)로 전달하고, 이미지 식별 모델(510)의 출력 값을 피드백으로 획득할 수 있다. 이미지 생성 모델(504)은 이미지 식별 모델(510)과 함께, 이미지 생성 모델(504)에 대한 제1 손실 함수 및 이미지 식별 모델(510)에 대한 제2 손실 함수를 최소화하도록 이미지 식별 모델(510)과 서로 경쟁적으로 학습될 수 있다. 이미지 생성 모델(504)은 이미지 식별 모델과 서로 적대적으로 학습됨으로써, 이미지 식별 모델(510)이, 이미지 생성 모델(504)이 생성한 이미지들을 실제 제품에 대한 촬영 이미지들이 저장되는 이미지 데이터 베이스 상의 이미지로 식별하도록, 제3 이미지(508)를 생성할 수 있다.
본 개시에 따른 전자 장치(1000)는 이미지 데이터 베이스 상(예컨대 Image NET, MNIST 등) 이미지들 및 제2 신경망 모델로부터, 출력되는 상기 이미지 데이터 베이스 상의 이미지들의 이미지 특징이 반영된, 학습 이미지들에 기초하여 제1 신경망 모델을 학습시킴으로써, 제1 신경망 모델이 더 정확하게 실러 영역을 구분하도록 할 수 있다.
도 6은 일 실시 예에 따라, 제1 신경망 모델을 학습하는 과정을 설명하기 위한 도면이다.
일 실시 예에 의하면, 전자 장치(1000)는 이미지 데이터 베이스상의 제2 이미지 및 제2 신경망 모델을 이용하여 생성된 제3 이미지들을 학습 이미지(602, 612)로 결정할 수 있다. 전자 장치(1000)는 제2 이미지 및 제3 이미지들을 라벨링하고, 라벨링된 제2 이미지 및 라벨링된 제3 이미지들에 기초하여 제1 신경망 모델(622)을 학습시킬 수 있다.
보다 상세하게는, 전자 장치(1000)는 학습 이미지(602, 612)내 픽셀이 실러 영역에 속하는지 또는 배경 영역에 속하는지 여부에 따라, 학습 이미지(예컨대, 제2 이미지 또는 제3 이미지)내 각 픽셀들을 라벨링함으로써, 각 픽셀들이 어떤 영역에 속하는지 여부를 나타낼 수 있다. 전자 장치(1000)는 라벨링된 각 픽셀들을 포함하는, 라벨링된 제2 이미지 및 라벨링된 제3 이미지에 기초하여 제1 신경망 모델(622)을 학습시킬 수 있다. 일 실시 예에 의하면, 전자 장치(1000)가 제1 신경망 모델(622)을 학습시키는 과정은, 제1 신경망 모델(622) 내 레이어들 및 레이어들 간의 연결 강도에 관한 가중치(weight, 624)들을 수정 및 갱신하는 동작에 대응될 수 있다.
도 7은 일 실시 예에 따라 전자 장치가 제1 이미지 내 실러의 도포 상태를 식별하는 구체적인 방법을 설명하기 위한 도면이다.
S710에서, 전자 장치(1000)는 검출된 실러 영역의 경계에 부분에 위치하는 픽셀의 위치 정보를 식별할 수 있다. 예를 들어, 전자 장치(1000)는 제1 신경망 모델 내 디코더로부터, 이미지 특징에 기초하여 재구성된 픽셀들의 좌표를 식별할 수 있다. 또한, 일 실시 예에 의하면, 전자 장치(1000)는 제1 신경망 모델로부터 이진화된 실러 영역 이미지를 획득할 수도 있다. 전자 장치(1000)는 이진화된 실러 영역 이미지 내 픽셀 값의 변화량에 기초하여 실러 영역의 경계를 식별할 수 있고, 식별된 경계 부분에 위치하는 픽셀들의 위치 정보를 식별할 수도 있다.
S720에서, 전자 장치(1000)는 S710단계에서 식별된 픽셀들의 위치 정보에 기초하여, 실러 영역의 경계를 따라 미리 설정된 간격으로 적어도 하나의 가이드 박스들을 생성할 수 있다. 또 다른 실시 예에 의하면, 전자 장치(1000)는 검출된 실러 영역 이미지 내 실러 영역의 경계를 따라 소정의 간격으로 중첩되도록, 상기 적어도 하나의 가이드 박스들을 배치할 수도 있다.
S730에서, 전자 장치(1000)는 실러 영역의 경계를 따라 배치된 가이드 박스들을 구성하는 축 중, 실러가 도포되는 방향에 수직하는 축의 길이의 평균 값을 식별할 수 있다. 전자 장치(1000)는 실러가 도포되는 방향에 수직하는 축의 길이의 평균 값을, 현재 이미지 내 도포된 실러의 폭으로 결정할 수 있다.
S740에서, 전자 장치(1000)는 식별된 실러의 폭이 미리 설정된 범위 내 인지 여부에 기초하여 실러의 도포 상태를 식별할 수 있다. 예를 들어, 전자 장치(1000)는 S730단계에 따라 식별된 실러의 폭이 제1 임계치 보다 작은 경우, 이미지 내 실러의 도포가 단락 된 것으로 식별할 수 있다. 또 다른 실시 예에 의하면, 전자 장치(1000)는 식별된 실러의 폭이 제2 임계치 보다 큰 경우, 실러의 도포가 과 도포된 것으로 식별할 수 있다. 즉, 전자 장치(1000)는 이미지로부터 식별된 실러의 폭이 제1 임계치 보다 작거나, 제2 임계치 보다 큰 경우, 실러의 도포 상태를 비정상 상태로 식별할 수 있다. 반대로, 전자 장치(1000)는 이미지로부터 식별된 실러의 폭이 제1 임계치 보다 크거나, 제2 임계치 보다 작은 경우, 이미지 내 실러의 도포 상태를 정상 상태로 식별할 수 있다.
도 8은 일 실시 예에 따라 전자 장치가 제1 이미지 내 실러의 도포 상태를 식별하는 과정을 설명하기 위한 도면이다.
도 8에 도시된 화면(802)을 참조하면, 전자 장치(1000)가 제1 이미지를 제1 신경망 모델에 입력함으로써 획득한 실러 영역(812)을 포함하는 실러 영역 이미지가 도시된다. 일 실시 예에 의하면, 전자 장치(1000)는 미리 설정된 시간 동안 복수의 프레임 이미지들을 제1 신경망 모델에 입력함으로써, 실러 영역 이미지들에 대한 영상(Video)을 획득할 수도 있다.
전자 장치(1000)는 실러 영역 이미지가 식별된 화면(802)상에 미리 설정된 간격으로 중첩되는 적어도 하나의 가이드 박스들(814)을 생성하고, 생성된 가이드 박스들의 축 중, 실러가 도포되는 방향에 수직하는 방향의 축의 길이의 평균 값을 식별할 수 있다. 도 8에 도시된 화면 (804)을 참조하면, 전자 장치(1000)가 실러 영역 이미지가 식별된 화면(802)상에 생성한 적어도 하나의 가이드 박스들(814)들은 가이드 박스들을 구성하는 축으로써, 각각 가로 축 및 세로 축을 포함할 수 있다. 전자 장치(1000)는 가이드 박스들을 구성하는 축 중, 실러가 도포되는 방향에 수직하는 방향의 축(예컨대 세로축)을 실러의 폭으로 결정할 수 있다.
도 9는 일 실시 예에 따른 전자 장치의 블록도이다.
도 10은 또 다른 실시 예에 따른 전자 장치의 블록도이다.
일 실시 예에 의하면, 전자 장치(1000)는 프로세서(1300), 네트워크 인터페이스(1500) 및 메모리(1700)를 포함할 수 있다. 그러나 도시된 구성 요소가 모두 필수 구성요소인 것은 아니다. 도시된 구성 요소보다 많은 구성 요소에 의해 전자 장치(1000)가 구현될 수도 있고, 그 보다 적은 구성 요소에 의해서도 전자 장치(1000)가 구현될 수도 있다. 예를 들어, 도 10에서 도시된 바와 같이, 일 실시 예에 따른 전자 장치(1000)는 프로세서(1300), 네트워크 인터페이스(1500) 및 메모리(1700)외에, 사용자 입력 인터페이스(1100), 출력부(1200), 센싱부(1400) 및 A/V 입력부(1600)를 더 포함할 수도 있다.
사용자 입력 인터페이스(1100)는, 사용자가 전자 장치(1000)를 제어하기 위한 시퀀스를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력 인터페이스(1100)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다. 사용자 입력 인터페이스(1100)는 전자 장치(1000)가 디스플레이 상에 출력한 화면에 대한 사용자의 입력 시퀀스를 수신할 수 있다. 또한, 사용자 입력 인터페이스(1100)는 디스플레이를 터치하는 사용자의 터치 입력 또는 디스플레이상 그래픽 사용자 인터페이스를 통한 키 입력을 수신할 수도 있다.
출력부(1200)는, 오디오 신호 또는 비디오 신호의 출력을 위한 것으로, 이에는 디스플레이부(1210), 음향 출력부(1220) 등이 포함될 수 있다. 예를 들어, 디스플레이부(1210)는 제1 이미지로부터 식별된 실러 영역 이미지 또는 상기 실러 영역 이미지로부터 식별되는 실러 폭에 기초하여, 실러의 도포 상태를 나타내는 식별 결과에 대한 정보를 출력할 수 있다. 예를 들어, 디스플레이부(1210)는 이미지 내 실러의 도포 상태를 식별한 후, 실러의 도포 상태가 정상인지 비정상인지 여부에 대한 정보를 출력할 수도 있다.
음향 출력부(1220)는 통신부(1500)로부터 수신되거나 메모리(1700)에 저장된 오디오 데이터를 출력한다. 또한, 음향 출력부(1220)는 전자 장치(1000)에서 수행되는 기능과 관련된 음향 신호를 출력한다. 이러한 음향 출력부(1220)에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다. 또한, 일 실시예에 의하면, 음향 출력부(1220)는 전자 장치(1000)가 이미지 내 실러의 도포 상태가 비정상 상태로 식별함에 따라, 알림음 또는 경고음을 출력할 수 있다.
센싱부(1400)는, 지자기 센서(Magnetic sensor)(1410), 가속도 센서(Acceleration sensor)(1420), 온/습도 센서(1430), 적외선 센서(1440), 자이로스코프 센서(1450), 위치 센서(예컨대, GPS)(1460), 기압 센서(1470), 근접 센서(1480), 및 RGB 센서(illuminance sensor)(1490) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.
프로세서(1300)는, 통상적으로 전자 장치(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1300)는, 메모리(1700)에 저장된 프로그램들을 실행함으로써, 사용자 입력 인터페이스(1100), 출력부(1200), 센싱부(1400), 통신부(1500), A/V 입력부(1600), 및 메모리(1700) 등을 전반적으로 제어할 수 있다. 또한, 프로세서(1300)는 하나 또는 복수의 프로세서로 구성될 수 있고, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능(AI) 전용 프로세서일 수 있다. 일 실시 예에 의하면, 프로세서(1300)가 복수의 프로세서 또는 그래픽 전용 프로세서 또는 인공 지능 전용 프로세서로 구현될 때, 복수의 프로세서 또는 그래픽 전용 프로세서 또는 인공 지능 전용 프로세서 중 적어도 일부는 전자 장치(1000) 및 전자 장치(1000)와 연결된 다른 전자 장치 또는 서버에 탑재될 수도 있다.
일 실시 예에 의하면, 프로세서(1300)는 실러가 도포된 제품에 대한 제1 이미지를 획득하고, 상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하고, 상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별할 수 있다.
일 실시 예에 의하면, 프로세서(1300)는 전자 장치와 연결된 카메라로부터, 상기 네트워크 인터페이스를 통하여, 기 설정된 주기에 따라 상기 제1 이미지에 대한 이미지 정보를 획득함으로써, 상기 제1 이미지를 획득할 수 있다.
일 실시 예에 의하면, 프로세서(1300)는 검출된 실러 영역의 경계 부분에 위치하는 픽셀의 위치 정보를 식별하고, 상기 식별된 위치 정보에 기초하여 상기 실러 영역의 경계를 따라 미리 설정된 간격으로 적어도 하나의 가이드 박스를 생성하고, 상기 생성된 가이드 박스를 이용하여 상기 제1 이미지 내 실러의 도포 상태를 식별할 수 있다.
일 실시 예에 의하면, 프로세서(1300)는 상기 가이드 박스를 구성하는 축 중에서, 상기 실러가 도포되는 방향에 수직 하는 축의 길이의 평균 값을 상기 도포된 실러의 폭으로 결정하고, 상기 결정된 실러의 폭이 미리 설정된 범위 내인지 여부에 기초하여 상기 실러의 도포 상태를 식별할 수 있다.
일 실시 예에 의하면, 전자 장치(1000)는 전자 장치(1000)가 다른 장치(미도시) 및 서버(2000)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 다른 장치(미도시)는 전자 장치(1000)와 같은 컴퓨팅 장치이거나, 센싱 장치일 수 있으나, 이에 제한되지 않는다. 예를 들어, 네트워크 인터페이스(1500)는 근거리 통신부(1510), 이동 통신부(1520), 방송 수신부(1530)를 포함할 수 있다.
근거리 통신부(short-range wireless communication unit)(1510)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
이동 통신부(1520)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다. 방송 수신부(1530)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 전자 장치(1000)가 방송 수신부(1530)를 포함하지 않을 수도 있다.
일 실시 예에 의하면, 네트워크 인터페이스(1500)는 전자 장치(1000)와 연결된 외부 디바이스로부터 실러가 도포된 제품에 대한 제1 이미지를 수신할 수 있다. 또한, 네트워크 인터페이스(1500)는 검출된 실러 영역의 이미지에 대한 정보를 외부 디바이스(3000)로 전송할 수도 있다. 또한, 일 실시 예에 의하면, 네트워크 인터페이스(1500)는 전자 장치(1000)가 식별한 실러의 도포 상태를 나타내는 정보를 외부 디바이스(3000)로 전송할 수도 있다. 또 다른 실시 예에 의하면, 네트워크 인터페이스(1500)는 서버(2000)로부터 실러가 도포된 제품에 대한 제1 이미지들을 수신할 수 있고, 전자 장치(1000)가 식별한 제1 이미지 내 실러의 도포 상태를 나타내는 정보들을 서버(2000)로 전송할 수도 있다.
A/V(Audio/Video) 입력부(1600)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1610)와 마이크로폰(1620) 등이 포함될 수 있다. 카메라(1610)는 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해, 실러가 도포된 제품에 대한 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 프로세서(1300) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다.
마이크로폰(1620)은, 외부 디바이스 또는 사용자로부터 음향 신호를 수신할 수 있다. 마이크로폰(1620)은 사용자의 음성 입력을 수신할 수 있다. 마이크로폰(1620)은 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다.
메모리(1700)는, 프로세서(1300)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 전자 장치(1000)로 입력되거나 전자 장치(1000)로부터 출력되는 데이터를 저장할 수도 있다. 또한, 메모리(1700)는 전자 장치(1000)가 이미지로부터 실러 영역을 검출하기 위해 이용하는 제1 신경망 모델 및 상기 제1 신경망 모델을 학습함에 있어 학습 데이터를 생성하기 위한 제2 신경망 모델에 대한 정보를 저장할 수도 있다. 또한, 일 실시 예에 의하면, 메모리(1700)는 전자 장치(1000)가 학습용 이미지들을 라벨링함으로써 생성한 라벨링된 이미지들에 대한 정보를 더 저장할 수도 있다.
또한, 메모리(1700)는 상술한 제1 신경망 모델, 제2 신경망 모델, 제2 신경망 모델 내 이미지 생성 모델 및 이비지 판별 모델을 특정하기 위한 레이어들 및 레이어들 간의 가중치에 관한 정보를 더 저장할 수 있다. 예를 들면, 메모리(1700)는 학습된 신경망뿐만 아니라, 획득된 입력값에 기초하여 이미 생성된 신경망에 기초한 모델들이 수정되는 경우, 수정된 모델들의 레이어들, 레이어들 간의 가중치에 관한 정보를 더 저장할 수 있다.
메모리(1700)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
메모리(1700)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(1710), 터치 스크린 모듈(1720), 알림 모듈(1730) 등으로 분류될 수 있다.
UI 모듈(1710)은, 애플리케이션 별로 전자 장치(1000)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(1720)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 프로세서(1300)로 전달할 수 있다. 일부 실시예에 따른 터치 스크린 모듈(1720)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(1720)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.
알림 모듈(1730)은 전자 장치(1000)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다. 전자 장치(1000)에서 발생되는 이벤트의 예로는 호 신호 수신, 메시지 수신, 키 신호 입력, 일정 알림 등이 있다. 알림 모듈(1730)은 디스플레이부(1210)를 통해 비디오 신호 형태로 알림 신호를 출력할 수도 있고, 음향 출력부(1220)를 통해 오디오 신호 형태로 알림 신호를 출력할 수도 있고, 진동 모터(1230)를 통해 진동 신호 형태로 알림 신호를 출력할 수도 있다.
도 11은 일 실시 예에 따른 전자 장치와 연결되는 서버의 블록도이다.
서버(2000)는 네트워크 인터페이스(2100), 데이터 베이스(2200) 및 프로세서(2300)를 포함할 수 있다. 네트워크 인터페이스(2100)는 도 10에 도시된 전자 장치(1000)의 네트워크 인터페이스(1500)에 대응될 수 있다. 예를 들어, 네트워크 인터페이스(2100)는 전자 장치(1000)로부터 전자 장치(1000)가 식별한 실러의 도포 상태에 대한 정보, 전자 장치(1000)가 실러의 도포 상태에 대한 정보에 기초하여 결정한 제어 정보를 수신할 수 있다. 또한, 일 실시 예에 의하면, 네트워크 인터페이스(2100)는 서버(2000)가 판단한 제1 이미지 내 실러의 도포 상태에 대한 정보를 전자 장치(1000)로 전송할 수도 있다.
데이터 베이스(2200)는 도 10에 도시된 전자 장치(1000)의 메모리(1700)에 대응될 수 있다. 예를 들어, 데이터 베이스(2200)는 전자 장치(1000)로부터 수신된 학습 데이터, 상기 학습 데이터에 기초하여 학습되는 학습 모델에 대한 정보(예컨대 신경망 모델 레이어들 및 상기 레이어들의 연결 강도에 관한 가중치 값들)들을 저장할 수도 있다.
프로세서(2300)는 통상적으로 서버(2000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(2300)는, 서버(2000)의 DB(2200)에 저장된 프로그램들을 실행함으로써, DB(2200) 및 네트워크 인터페이스(2100) 등을 전반적으로 제어할 수 있다. 또한, 프로세서(2300)는 DB(2100)에 저장된 프로그램들을 실행함으로써, 도 1 내지 도10에서의 전자 장치(1000)의 동작의 일부를 수행할 수 있다. 예를 들어, 프로세서(2300)는 전자 장치 (1000)로부터 수신된 제2 이미지 또는 제3 이미지와 관련된 학습 데이터에 기초하여, 적어도 하나의 인공 지능 모델을 학습 시키고, 학습된 학습 모델을 이용하여 전자 장치로부터 수신된 제1 이미지에 대하여, 실러 영역을 식별할 수도 있다. 또한, 프로세서(2300)는 식별된 실러 영역에 대한 실러의 도포 상태를 결정하고, 결정된 실러의 도포 상태에 대한 정보를 네트워크 인터페이스(2100)를 통하여 전자 장치(1000)로 전송할 수도 있다.
도 12는 또 다른 실시 예에 따른 실러의 도포 상태를 식별하는 과정을 설명하기 위한 도면이다.
일 실시 예에 의하면, 실러의 도포 상태를 식별하는 방법은 전자 장치(1000) 및 외부 디바이스(3000)를 포함하는 실러 도포 시스템(4000)에 의해 수행될 수 있다. 예를 들어, S2402에서, 실러 도포 시스템(4000)내 전자 장치(1000)는 이미지 데이터 서버(2406)로부터 학습 이미지를 획득하거나, 학습 이미지들을 스스로 생성할 수 있다. 보다 상세하게는, S2408에서, 전자 장치(1000)는 이미지 데이터 서버(2406)로부터 학습용 이미지를 획득할 수 있다. S2410에서, 전자 장치(1000)는 획득된 학습용 이미지의 이미지 특징에 기초하여 학습용 이미지들을 생성할 수 있다. 전자 장치(1000)가 학습용 이미지들을 생성하는 구체적인 방법은 도 5에서 상술한 바에 대응될 수 있으므로 구체적인 설명은 생략하기로 한다.
S2404에서, 전자 장치(1000)는 딥 러닝 알고리즘에 기초하여 실러 도포 상태를 검사할 수 있다. 예를 들어, 전자 장치(1000)는 딥 러닝 모델(2412, 예컨대, 제1 신경망 모델)을 이용하여 제1 이미지 내에서 나타나는 실러의 도포 상태를 검사할 수 있다. 보다 상세하게는, S2414에서, 전자 장치(1000)는 딥 러닝 모델을 이용하여, 제1 이미지 내 실러의 도포 여부를 식별할 수 있다. S2416에서, 전자 장치(1000)는 딥 러닝 모델을 이용하여 제1 이미지 내 도포된 실러가 단락 되었는지 여부를 식별할 수 있다. S2418에서, 전자 장치(1000)는 딥 러닝 모델을 이용하여 제1 이미지 내 도포된 실러의 폭을 측정할 수도 있다.
일 실시 예에 의하면, 외부 디바이스(3000)는 전자 장치(1000)로부터 실러의 도포 상태에 대한 정보 및 상기 실러의 도포 상태에 대한 정보에 따라 결정된 제어 정보를 수신할 수 있다. 외부 디바이스(3000)는 전자 장치(1000)로부터 수신된 실러의 도포 상태에 대한 정보 및 제어 정보에 따라, 모니터링 시스템(2422)을 통하여, 실러 도포 장비 제어 시스템(2424) 및 카메라 및 조명 장치(2426)등을 제어할 수 있다. 보다 상세하게는, S2424에서, 외부 디바이스(3000)는 전자 장치(1000)로부터 수신된 실러의 도포 상태에 대한 정보 및 제어 정보에 기초하여 실러 도포 장비 제어 시스템(2424)을 제어할 수 있다. S2426에서, 외부 디바이스(3000)는 전자 장치(1000)로부터 수신된 실러의 도포 상태에 대한 정보 및 제어 정보에 기초하여, 카메라 및 조명 장치(2426)를 제어할 수 있다.
일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 개시를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
또한, 상기 일 실시 예에 다른 방법을 수행하도록 하는 프로그램이 저장된 기록매체를 포함하는 컴퓨터 프로그램 장치가 제공될 수 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상에서 본 개시의 실시예에 대하여 상세하게 설명하였지만 본 개시의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 개시의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 개시의 권리범위에 속한다.

Claims (20)

  1. 전자 장치가 실러의 도포 상태를 식별하는 방법에 있어서,
    상기 실러가 도포된 제품에 대한 제1 이미지를 획득하는 단계;
    상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하는 단계; 및
    상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계; 를 포함하고,
    상기 제1 신경망 모델은 상기 제1 이미지와는 다른 제2 이미지 및 상기 제2 이미지가 입력되면, 상기 제2 이미지의 이미지 특징이 반영된 이미지를 출력하도록 학습된 제2 신경망 모델로부터 출력된 제3 이미지에 기초하여 학습되고,
    상기 제2 신경망 모델은 기 설정된 랜덤 변수에 기초하여 상기 제3 이미지를 출력하도록 학습되는 이미지 생성 모델 및 상기 이미지 생성 모델에서 생성된 제3 이미지가 상기 실러가 도포된 제품을 촬영함으로써 획득된 이미지인지 또는 상기 이미지 생성 모델로부터 생성된 이미지 인지 여부를 식별하도록 상기 이미지 생성 모델과 함께 학습되는 이미지 식별 모델을 포함하는, 방법.
  2. 제1항에 있어서, 상기 제1 이미지를 획득하는 단계는
    상기 전자 장치와 연결된 카메라로부터, 기 설정된 주기에 따라 상기 제1 이미지에 대한 이미지 정보를 획득함으로써, 상기 제1 이미지를 획득하는 단계; 를 포함하는, 방법.
  3. 제1항에 있어서, 상기 제1 신경망 모델은
    상기 제1 이미지가 입력되는 경우, 상기 제1 이미지를 인코딩(encoding)함으로써, 상기 제1 이미지의 이미지 특징들을 추출하는 인코더 및 상기 추출된 이미지 특징들을 디코딩(decoding)함으로써, 상기 디코딩된 이미지 특징에 따라 재구성된 이미지를 출력하는 디코더를 포함하는 것을 특징으로 하는, 방법.
  4. 제1항에 있어서, 상기 제1 신경망 모델은,
    상기 제1 이미지를 획득하기 전에 미리 학습되는 것인, 방법.
  5. 제4항에 있어서, 상기 제1 신경망 모델은,
    이미지 내 픽셀이 상기 실러 영역에 속하는지 또는 상기 배경 영역에 속하는지 여부에 따라 상기 제2 이미지 및 상기 제3 이미지 내 각 픽셀들을 라벨링함으로써 생성되는 라벨링된 제2 이미지 및 라벨링된 제3 이미지에 기초하여, 미리 학습되는 것인, 방법.
  6. 삭제
  7. 제4항에 있어서,
    상기 이미지 생성 모델 및 상기 이미지 식별 모델은, 상기 제1 신경망 모델이 학습되기 전, 상기 이미지 생성 모델에 대한 제1 손실 함수 및 상기 이미지 식별 모델에 대한 제2 손실 함수가 최소화되도록, 학습되는 것인, 방법.
  8. 제1항에 있어서, 상기 실러의 도포 상태를 식별하는 단계는
    상기 검출된 실러 영역의 경계 부분에 위치하는 픽셀의 위치 정보를 식별하는 단계;
    상기 식별된 위치 정보에 기초하여 상기 실러 영역의 경계를 따라 미리 설정된 간격으로 적어도 하나의 가이드 박스를 생성하는 단계; 및
    상기 생성된 가이드 박스를 이용하여 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계; 를 포함하는, 방법.
  9. 제8항에 있어서, 상기 가이드 박스를 이용하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계는
    상기 가이드 박스를 구성하는 축 중에서, 상기 실러가 도포되는 방향에 수직 하는 축의 길이의 평균 값을 상기 도포된 실러의 폭으로 결정하는 단계; 및
    상기 결정된 실러의 폭이 미리 설정된 범위 내인지 여부에 기초하여 상기 실러의 도포 상태를 식별하는 단계; 를 포함하는, 방법.
  10. 제1항에 있어서, 상기 방법은
    상기 제1 이미지에서 식별된 실러의 도포 상태에 대한 정보 또는 상기 식별된 실러의 도포 상태에 정보에 기초하여 결정된 제어 정보를 상기 전자 장치와 연결된 상기 실러를 도포 하기 위한 외부 디바이스로 전송하는 단계; 를 더 포함하는, 방법.
  11. 실러의 도포 상태를 식별하는 전자 장치에 있어서,
    네트워크 인터페이스;
    하나 이상의 인스트럭션을 저장하는 메모리; 및
    적어도 하나의 프로세서; 를 포함하고,
    상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
    상기 실러가 도포된 제품에 대한 제1 이미지를 획득하고,
    상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하고,
    상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하고,
    상기 제1 신경망 모델은 상기 제1 이미지와는 다른 제2 이미지 및 상기 제2 이미지가 입력되면, 상기 제2 이미지의 이미지 특징이 반영된 이미지를 출력하도록 학습된 제2 신경망 모델로부터 출력된 제3 이미지에 기초하여 학습되고,
    상기 제2 신경망 모델은 기 설정된 랜덤 변수에 기초하여 상기 제3 이미지를 출력하도록 학습되는 이미지 생성 모델 및 상기 이미지 생성 모델에서 생성된 제3 이미지가 상기 실러가 도포된 제품을 촬영함으로써 획득된 이미지인지 또는 상기 이미지 생성 모델로부터 생성된 이미지 인지 여부를 식별하도록 상기 이미지 생성 모델과 함께 학습되는 이미지 식별 모델을 포함하는 것을 특징으로 하는, 전자 장치.
  12. 제11항에 있어서, 상기 프로세서는
    상기 전자 장치와 연결된 카메라로부터, 상기 네트워크 인터페이스를 통하여, 기 설정된 주기에 따라 상기 제1 이미지에 대한 이미지 정보를 획득함으로써, 상기 제1 이미지를 획득하는 것인, 전자 장치.
  13. 제11항에 있어서, 상기 제1 신경망 모델은
    상기 제1 이미지가 입력되는 경우, 상기 제1 이미지를 인코딩(encoding)함으로써, 상기 제1 이미지의 이미지 특징들을 추출하는 인코더 및 상기 추출된 이미지 특징들을 디코딩(decoding)함으로써, 상기 디코딩된 이미지 특징에 따라 재구성된 이미지를 출력하는 디코더를 포함하는 것을 특징으로 하는, 전자 장치.
  14. 제11항에 있어서, 상기 제1 신경망 모델은,
    실러가 도포된 제품을 촬영함으로써 획득되는, 제1 이미지와는 다른 제2 이미지 및 상기 제2 이미지가 입력되면, 상기 제2 이미지의 이미지 특징이 반영된 이미지를 출력하도록 학습된 제2 신경망 모델로부터 출력된 제3 이미지에 기초하여, 상기 제1 이미지를 획득하기 전에 미리 학습되는 것인, 전자 장치.
  15. 제14항에 있어서, 상기 제1 신경망 모델은,
    상기 제1 이미지를 획득하기 전에 미리 학습되는 것인, 전자 장치.
  16. 삭제
  17. 제14항에 있어서,
    상기 이미지 생성 모델 및 상기 이미지 식별 모델은, 상기 제1 신경망 모델이 학습되기 전, 상기 이미지 생성 모델에 대한 제1 손실 함수 및 상기 이미지 식별 모델에 대한 제2 손실 함수가 최소화되도록, 학습되는 것인, 전자 장치.
  18. 제11항에 있어서, 상기 프로세서는
    상기 검출된 실러 영역의 경계 부분에 위치하는 픽셀의 위치 정보를 식별하고,
    상기 식별된 위치 정보에 기초하여 상기 실러 영역의 경계를 따라 미리 설정된 간격으로 적어도 하나의 가이드 박스를 생성하고,
    상기 생성된 가이드 박스를 이용하여 상기 제1 이미지 내 실러의 도포 상태를 식별하는 것인, 전자 장치.
  19. 제18항에 있어서, 상기 프로세서는
    상기 가이드 박스를 구성하는 축 중에서, 상기 실러가 도포되는 방향에 수직 하는 축의 길이의 평균 값을 상기 도포된 실러의 폭으로 결정하고,
    상기 결정된 실러의 폭이 미리 설정된 범위 내인지 여부에 기초하여 상기 실러의 도포 상태를 식별하는, 전자 장치.
  20. 실러가 도포된 제품에 대한 제1 이미지를 획득하는 단계;
    상기 획득된 제1 이미지가 입력되면, 상기 제1 이미지 내에서 상기 실러가 도포됨으로써 형성되는 실러 영역 및 상기 실러 영역을 제외한 배경 영역을 구분하여 출력하는 제1 신경망 모델을 이용하여, 상기 제1 이미지로부터 상기 실러 영역을 검출하는 단계; 및
    상기 검출된 실러 영역의 경계를 나타내는 픽셀의 위치 정보에 기초하여, 상기 제1 이미지 내 실러의 도포 상태를 식별하는 단계; 를 포함하고,
    상기 제1 신경망 모델은 상기 제1 이미지와는 다른 제2 이미지 및 상기 제2 이미지가 입력되면, 상기 제2 이미지의 이미지 특징이 반영된 이미지를 출력하도록 학습된 제2 신경망 모델로부터 출력된 제3 이미지에 기초하여 학습되고,
    상기 제2 신경망 모델은 기 설정된 랜덤 변수에 기초하여 상기 제3 이미지를 출력하도록 학습되는 이미지 생성 모델 및 상기 이미지 생성 모델에서 생성된 제3 이미지가 상기 실러가 도포된 제품을 촬영함으로써 획득된 이미지인지 또는 상기 이미지 생성 모델로부터 생성된 이미지 인지 여부를 식별하도록 상기 이미지 생성 모델과 함께 학습되는 이미지 식별 모델을 포함하는 것을 특징으로 하는, 실러의 도포 상태를 식별하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020200090336A 2020-07-21 2020-07-21 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치 KR102320814B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200090336A KR102320814B1 (ko) 2020-07-21 2020-07-21 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200090336A KR102320814B1 (ko) 2020-07-21 2020-07-21 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치

Publications (1)

Publication Number Publication Date
KR102320814B1 true KR102320814B1 (ko) 2021-11-02

Family

ID=78476150

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200090336A KR102320814B1 (ko) 2020-07-21 2020-07-21 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치

Country Status (1)

Country Link
KR (1) KR102320814B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101640425B1 (ko) * 2016-04-11 2016-07-18 (주)디엠소프트 실러 도포 상태 검사 시스템 및 방법
KR101666798B1 (ko) * 2016-07-08 2016-10-24 (주)디엠소프트 비전 시스템을 이용한 지능형 실러 도포 장치 및 방법
JP6189127B2 (ja) * 2013-07-26 2017-08-30 新電元工業株式会社 はんだ付け検査装置、はんだ付け検査方法および電子部品
KR20190115484A (ko) 2018-03-12 2019-10-14 한국기술교육대학교 산학협력단 실러 도포 품질 검사 방법, 장치, 시스템, 및 컴퓨터 판독 가능 기록 매체
JP2020051982A (ja) * 2018-09-28 2020-04-02 Jfeテクノリサーチ株式会社 画像検査装置及び検査モデル構築システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6189127B2 (ja) * 2013-07-26 2017-08-30 新電元工業株式会社 はんだ付け検査装置、はんだ付け検査方法および電子部品
KR101640425B1 (ko) * 2016-04-11 2016-07-18 (주)디엠소프트 실러 도포 상태 검사 시스템 및 방법
KR101666798B1 (ko) * 2016-07-08 2016-10-24 (주)디엠소프트 비전 시스템을 이용한 지능형 실러 도포 장치 및 방법
KR20190115484A (ko) 2018-03-12 2019-10-14 한국기술교육대학교 산학협력단 실러 도포 품질 검사 방법, 장치, 시스템, 및 컴퓨터 판독 가능 기록 매체
JP2020051982A (ja) * 2018-09-28 2020-04-02 Jfeテクノリサーチ株式会社 画像検査装置及び検査モデル構築システム

Similar Documents

Publication Publication Date Title
US20190259284A1 (en) Pedestrian detection for vehicle driving assistance
US11222413B2 (en) Method for correcting image by device and device therefor
US11216935B2 (en) Vision inspection management method and system inspecting based on process data
US11670068B2 (en) Apparatus and method for processing image
US20200242402A1 (en) Method and apparatus for recognizing object
US11553178B2 (en) Method and electronic device for analyzing image
US11715190B2 (en) Inspection system, image discrimination system, discrimination system, discriminator generation system, and learning data generation device
US20240037712A1 (en) Image acquisition device and method of controlling the same
KR102420567B1 (ko) 음성 인식 장치 및 방법
US20230060936A1 (en) Method for identifying an audio signal
KR20230069892A (ko) 이상 온도를 나타내는 객체를 식별하는 방법 및 장치
KR102521313B1 (ko) 이미지 내 객체를 식별하는 신경망 모델을 학습하는 방법 및 장치
US11769047B2 (en) Artificial intelligence apparatus using a plurality of output layers and method for same
US20220084234A1 (en) Method and electronic device for identifying size of measurement target object
KR102320814B1 (ko) 실러의 도포 상태를 식별하는 방법 및 이를 수행하는 전자 장치
US10917721B1 (en) Device and method of performing automatic audio focusing on multiple objects
KR102246471B1 (ko) 이미지 내 동물의 코 영역을 검출하는 방법 및 장치
KR20190078222A (ko) 패션 상품을 추천하는 전자 장치, 서버 및 그 동작 방법
US20230065385A1 (en) Apparatus and method for anomaly detection
KR102465105B1 (ko) 열화상 복합 데이터를 이용한 ai 모델 기반 재난을 감지하는 방법 및 이를 수행하는 전자 장치
KR102440963B1 (ko) 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체
KR102215899B1 (ko) 매대에 진열된 상품을 식별하는 방법 및 이를 수행하는 전자 장치
US20190371268A1 (en) Electronic device and control method thereof
US20230169634A1 (en) Artificial intelligence device and method for generating training data
US20220301282A1 (en) Method for Analyzing Image Information Using Assigned Scalar Values

Legal Events

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