KR102175289B1 - Method and apparatus for performing machine learning on image - Google Patents

Method and apparatus for performing machine learning on image Download PDF

Info

Publication number
KR102175289B1
KR102175289B1 KR1020180122116A KR20180122116A KR102175289B1 KR 102175289 B1 KR102175289 B1 KR 102175289B1 KR 1020180122116 A KR1020180122116 A KR 1020180122116A KR 20180122116 A KR20180122116 A KR 20180122116A KR 102175289 B1 KR102175289 B1 KR 102175289B1
Authority
KR
South Korea
Prior art keywords
input
learning
training
machine learning
images
Prior art date
Application number
KR1020180122116A
Other languages
Korean (ko)
Other versions
KR20200044227A (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 KR1020180122116A priority Critical patent/KR102175289B1/en
Publication of KR20200044227A publication Critical patent/KR20200044227A/en
Application granted granted Critical
Publication of KR102175289B1 publication Critical patent/KR102175289B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)

Abstract

복수의 이미지들에 대해 기계 학습을 수행하기 위한 방법은, 각각의 학습 이미지에 전처리를 수행한 후 적어도 일부의 영역에 레이블링(labeling)을 하는 단계, 상기 레이블링된 영역을 중심으로 각각의 학습 이미지에 대한 기계 학습을 수행하는 단계 및 상기 각각의 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 학습 결과를 색상으로 이용하여 시각화한 후 표시하는 단계를 포함한다.A method for performing machine learning on a plurality of images includes performing pre-processing on each training image and then labeling at least a portion of the area, focusing on the labeled area. And performing machine learning for each of the training images, and visualizing and displaying the learning results using colors as colors based on scores of pixels included in each of the training images.

Description

이미지에 대한 기계 학습을 수행하기 위한 방법 및 장치 {METHOD AND APPARATUS FOR PERFORMING MACHINE LEARNING ON IMAGE}Method and apparatus for performing machine learning on images {METHOD AND APPARATUS FOR PERFORMING MACHINE LEARNING ON IMAGE}

본 명세서에서 개시되는 실시예들은 복수의 이미지들에 대한 기계 학습을 수행하기 위한 방법 및 이를 수행하기 위한 장치에 관한 것이며, 특히 기계 학습과 관련된 전후처리를 수행하는 방법 및 이를 수행하기 위한 장치에 관한 것이다.The embodiments disclosed herein relate to a method for performing machine learning on a plurality of images and an apparatus for performing the same, and in particular, to a method for performing pre- and post-processing related to machine learning and an apparatus for performing the same. will be.

최근 AI 기술이 머신 비전 분야에 활용되면서 공장 자동화에 큰 기여를 하고 있다. 그런데, AI 기술을 머신 비전 분야에 활용하기 위해서는 제품상 결함의 존재 및 정도를 판단하거나 물품의 종류를 판단하기 위한 기준이 필요하고, 이러한 기준을 설정하기 위해 미리 물품을 촬영한 복수의 이미지들에 대해 기계 학습을 수행해야 한다. 예를 들어, 양품 또는 불량품을 촬영한 복수의 이미지들에 대해 기계 학습을 수행하거나, 또는 다양한 종류의 물품을 촬영한 복수의 이미지들에 대해 기계 학습을 수행할 수 있다.Recently, AI technology has been used in the machine vision field, making a great contribution to factory automation. However, in order to use AI technology in the machine vision field, a standard for determining the existence and degree of defects in the product or the type of product is required, and in order to establish such a standard, a plurality of images taken of the product in advance are Machine learning should be done for For example, machine learning may be performed on a plurality of images photographing good or defective products, or machine learning may be performed on a plurality of images photographing various types of goods.

사용자는 AI 학습 툴을 이용하여 복수의 이미지들에 대해서 기계 학습을 수행할 수 있는데, 현재 제공되는 AI 학습 툴들은 사용자가 직접 학습 결과를 파악하거나 학습 효과를 높이기 위한 방향으로 재학습을 수행하도록 하기에는 어려움이 있다.A user can perform machine learning on a plurality of images using an AI learning tool. Currently provided AI learning tools do not allow the user to directly grasp the learning result or perform relearning in a direction to increase the learning effect. There are difficulties.

관련하여 선행기술 문헌인 한국공개특허 제10-2018-0069452호에는 뉴럴 네트워크를 이용해 인식을 수행하는 방법이 개시되었으며, 특히 입력 데이터가 뉴럴 네트워크의 입력 레이어에 입력됨에 따라 뉴럴 네트워크의 히든 레이어로부터 생성된 특징 벡터를 획득하고, 특징 벡터 및 복수의 클러스터들을 이용하여 입력 데이터에 대한 인식 결과를 신뢰도를 결정하는 내용이 개시되었다.Relatedly, Korean Patent Publication No. 10-2018-0069452, a prior art document, discloses a method of performing recognition using a neural network. In particular, as input data is input to the input layer of the neural network, it is generated from the hidden layer of the neural network. Disclosed is a description of acquiring the generated feature vector and determining the reliability of a recognition result for input data using the feature vector and a plurality of clusters.

한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.On the other hand, the above-described background technology is technical information that the inventor possessed for derivation of the present invention or acquired during the derivation process of the present invention, and is not necessarily known to be publicly known before filing the present invention. .

본 명세서에서 개시되는 실시예들은, 복수의 이미지들에 대한 기계 학습을 수행하기 위한 AI 학습 툴에 있어서, 기계 학습과 관련된 전후처리를 통해 사용자가 쉽게 학습 결과를 파악하고 학습 효과를 높이기 위한 방향으로 재학습을 수행할 수 있도록 하는 AI 학습 툴을 제공하고자 한다.The embodiments disclosed herein are an AI learning tool for performing machine learning on a plurality of images, in a direction for a user to easily grasp the learning result and increase the learning effect through pre- and post-processing related to machine learning. We want to provide an AI learning tool that enables re-learning.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서 일 실시예에 따르면, 복수의 이미지들에 대해 기계 학습을 수행하기 위한 방법은, 각각의 학습 이미지에 전처리를 수행한 후 적어도 일부의 영역에 레이블링(labeling)을 하는 단계, 상기 레이블링된 영역을 중심으로 각각의 학습 이미지에 대한 기계 학습을 수행하는 단계 및 상기 각각의 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 학습 결과를 색상을 이용하여 시각화한 후 표시하는 단계를 포함할 수 있다.According to an embodiment as a technical means for achieving the above-described technical problem, a method for performing machine learning on a plurality of images includes performing pre-processing on each of the training images and then labeling at least some areas. ), performing machine learning on each learning image centering on the labeled area, and visualizing the learning result using color based on scores for pixels included in each learning image. It may include the step of displaying after.

다른 실시예에 따르면, 기계 학습 장치에서 복수의 이미지들에 대해 기계 학습을 수행하는 방법을 수행하기 위한 컴퓨터 프로그램으로서, 기계 학습을 수행하는 방법은, 각각의 학습 이미지에 전처리를 수행한 후 적어도 일부의 영역에 레이블링(labeling)을 하는 단계, 상기 레이블링된 영역을 중심으로 각각의 학습 이미지에 대한 기계 학습을 수행하는 단계 및 상기 각각의 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 학습 결과를 색상을 이용하여 시각화한 후 표시하는 단계를 포함할 수 있다.According to another embodiment, as a computer program for performing a method of performing machine learning on a plurality of images in a machine learning apparatus, the method of performing machine learning includes at least some of the preprocessing on each learning image. Labeling an area of, performing machine learning on each training image around the labeled area, and calculating a learning result based on scores for pixels included in each of the training images. Visualizing using colors and then displaying them may be included.

또 다른 실시예에 따르면, 기계 학습 장치에서 복수의 이미지들에 대해 기계 학습을 수행하는 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체로서, 기계 학습을 수행하는 방법은, 각각의 학습 이미지에 전처리를 수행한 후 적어도 일부의 영역에 레이블링(labeling)을 하는 단계, 상기 레이블링된 영역을 중심으로 각각의 학습 이미지에 대한 기계 학습을 수행하는 단계 및 상기 각각의 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 학습 결과를 색상을 이용하여 시각화한 후 표시하는 단계를 포함할 수 있다.According to another embodiment, as a computer-readable recording medium in which a program for performing a method of performing machine learning on a plurality of images in a machine learning device is recorded, the method of performing machine learning includes each learning image Labeling at least a portion of the area after performing preprocessing on the labeled area, performing machine learning on each training image centering on the labeled area, and pixels included in each training image It may include the step of visualizing the learning result using color based on the score for and then displaying it.

또 다른 실시예에 따르면, 기계 학습 장치는, 기계 학습과 관련된 조작 및 데이터 입력을 수신하고, 데이터 처리 결과를 표시하기 위한 입출력부, 기계 학습 수행을 위한 프로그램이 저장되는 저장부, 상기 프로그램을 실행함으로써 복수의 이미지들에 대한 기계 학습을 수행하는 제어부를 포함하며, 상기 제어부는, 각각의 학습 이미지에 전처리를 수행한 후 적어도 일부의 영역에 레이블링(labeling)을 하고, 상기 레이블링된 영역을 중심으로 각각의 학습 이미지에 대한 기계 학습을 수행한 후, 상기 각각의 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 학습 결과를 색상을 이용하여 시각화한 후 상기 입출력부를 통해 표시할 수 있다.According to another embodiment, the machine learning apparatus receives an operation and data input related to machine learning, an input/output unit for displaying data processing results, a storage unit storing a program for performing machine learning, and executing the program. And a control unit that performs machine learning on a plurality of images by performing preprocessing on each of the training images, and then labeling at least a portion of the region, and focusing on the labeled region. After machine learning is performed on each training image, a learning result may be visualized using colors based on scores for pixels included in each training image, and then displayed through the input/output unit.

전술한 과제 해결 수단 중 어느 하나에 의하면, 기계 학습을 수행하기 전에 학습의 대상이 되는 학습 이미지에 존재하는 결함이 드러나도록 전처리를 수행함으로써 학습 이미지상에 기계 학습을 위한 레이블링(labeling)을 쉽게 할 수 있도록 하는 효과를 기대할 수 있다.According to any one of the above-described problem solving means, it is possible to easily label the machine learning on the learning image by performing pre-processing so that the defects present in the learning image to be learned are exposed before machine learning is performed. You can expect the effect to make it possible.

또한, 전술한 과제 해결 수단 중 어느 하나에 의하면, 기계 학습을 수행한 결과를 색상을 이용하여 시각화한 후 표시함으로써 사용자는 쉽게 학습 결과를 파악하고, 어떤 학습 이미지가 학습에 방해가 되었는지 파악할 수 있다.In addition, according to any one of the above-described task solving means, the result of machine learning is visualized using colors and then displayed, so that the user can easily grasp the learning result and grasp which learning image interferes with the learning. .

또한, 전술한 과제 해결 수단 중 어느 하나에 의하면, 사용자는 색상을 이용하여 시각화되어 표시된 학습 결과에 기초하여 용이하게 학습 효과를 높이는 방향으로 재학습을 수행할 수 있다.In addition, according to any one of the above-described problem solving means, the user can perform relearning in a direction to increase the learning effect easily based on the learning result that is visualized and displayed using colors.

개시되는 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 개시되는 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained in the disclosed embodiments are not limited to the above-mentioned effects, and other effects not mentioned are obvious to those of ordinary skill in the art to which the embodiments disclosed from the following description belong. Can be understood.

도 1은 일 실시예에 따른 복수의 이미지들에 대한 기계 학습을 수행하기 위한 장치를 도시한 도면이다.
도 2는 일 실시예에 따른 복수의 이미지들에 대한 기계 학습을 수행하기 위한 방법을 설명하기 위한 순서도이다.
도 3은 도 2의 201 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.
도 4는 일 실시예에 따라 학습 이미지에 전처리를 수행하는 과정을 설명하기 위한 도면이다.
도 5는 도 2의 203 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.
도 6은 일 실시예에 따라 학습 이미지에 결함이 존재하는지 여부 및 결함의 정도를 색상을 이용하여 시각화한 후 표시한 화면이다.
도 7은 도 2의 204 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.
도 8은 도 2의 203 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.
도 9는 일 실시예에 따라 학습이 완료된 학습 이미지들을 클래스에 따라서 표시한 분포도를 표시한 화면이다.
도 10 은 도 2의 204 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.
1 is a diagram illustrating an apparatus for performing machine learning on a plurality of images according to an exemplary embodiment.
2 is a flowchart illustrating a method for performing machine learning on a plurality of images according to an exemplary embodiment.
FIG. 3 is a flow chart illustrating detailed steps included in step 201 of FIG. 2.
4 is a diagram for explaining a process of performing preprocessing on a training image according to an exemplary embodiment.
FIG. 5 is a flow chart illustrating detailed steps included in step 203 of FIG. 2.
6 is a screen displayed after visualizing whether or not a defect exists in a training image and a degree of the defect using colors according to an exemplary embodiment.
FIG. 7 is a flow chart illustrating detailed steps included in step 204 of FIG. 2.
8 is a flowchart illustrating detailed steps included in step 203 of FIG. 2.
9 is a screen showing a distribution map in which training images for which learning has been completed are displayed according to classes according to an exemplary embodiment.
FIG. 10 is a flow chart illustrating detailed steps included in step 204 of FIG. 2.

아래에서는 첨부한 도면을 참조하여 다양한 실시예들을 상세히 설명한다. 아래에서 설명되는 실시예들은 여러 가지 상이한 형태로 변형되어 실시될 수도 있다. 실시예들의 특징을 보다 명확히 설명하기 위하여, 이하의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서 자세한 설명은 생략하였다. 그리고, 도면에서 실시예들의 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, various embodiments will be described in detail with reference to the accompanying drawings. The embodiments described below may be modified and implemented in various different forms. In order to more clearly describe the features of the embodiments, detailed descriptions of matters widely known to those of ordinary skill in the art to which the following embodiments belong are omitted. In addition, parts not related to the description of the embodiments are omitted in the drawings, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 ‘직접적으로 연결’되어 있는 경우뿐 아니라, ‘그 중간에 다른 구성을 사이에 두고 연결’되어 있는 경우도 포함한다. 또한, 어떤 구성이 어떤 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들을 더 포함할 수도 있음을 의미한다.Throughout the specification, when a component is said to be "connected" with another component, this includes not only the case where it is'directly connected', but also the case where it is'connected with another element in the middle.' In addition, when a certain configuration "includes" a certain configuration, this means that other configurations may be further included rather than excluding other configurations, unless otherwise specified.

도 1은 일 실시예에 따른 복수의 이미지들에 대한 기계 학습을 수행하기 위한 기계 학습 장치를 도시한 도면이다. 일 실시예에 따르면, 기계 학습 장치(100)에는 AI 학습 툴이 설치되어 복수의 이미지들에 대한 기계 학습을 수행할 수 있고, 기계 학습 장치(100)는 AI 학습 툴의 조작 및 결과 확인을 위한 인터페이스를 제공할 수 있다.1 is a diagram illustrating a machine learning apparatus for performing machine learning on a plurality of images according to an exemplary embodiment. According to an embodiment, an AI learning tool is installed in the machine learning device 100 to perform machine learning on a plurality of images, and the machine learning device 100 is used to operate the AI learning tool and check results. Interface can be provided.

도 1을 참조하면, 일 실시예에 따른 기계 학습 장치(100)는 입출력부(110), 제어부(120) 및 저장부(130)를 포함할 수 있다.Referring to FIG. 1, the machine learning apparatus 100 according to an exemplary embodiment may include an input/output unit 110, a control unit 120, and a storage unit 130.

입출력부(110)는 사용자 입력 및 데이터 등을 수신하거나, 데이터 처리 결과를 화면으로 표시하기 위한 구성이다. 일 실시예에 따르면, 입출력부(110)는 키보드 및 마우스 등의 입력 장치들을 통해 사용자로부터 AI 학습 툴에 대한 조작 입력을 수신하고, AI 학습 툴을 이용하여 기계 학습을 수행한 결과를 화면에 표시할 수 있다.The input/output unit 110 is configured to receive user input and data, or to display data processing results on a screen. According to an embodiment, the input/output unit 110 receives an operation input for an AI learning tool from a user through input devices such as a keyboard and a mouse, and displays the result of machine learning on the screen using the AI learning tool. can do.

제어부(120)는 CPU 등과 같은 적어도 하나의 프로세서를 포함하는 구성으로서, 기계 학습 장치(100)의 전반적인 동작을 제어한다. 특히, 제어부(120)는 저장부(130)에 저장된 AI 학습 툴을 실행시킴으로써 복수의 학습 이미지들에 대한 기계 학습을 수행할 수 있다.The controller 120 is a component including at least one processor such as a CPU, and controls the overall operation of the machine learning apparatus 100. In particular, the control unit 120 may perform machine learning on a plurality of training images by executing the AI learning tool stored in the storage unit 130.

일 실시예에 따르면, 제어부(120)는 기계 학습을 수행하기 전 학습 이미지에 전처리를 수행할 수 있다. 학습 이미지에 존재하는 결함을 검출하기 위한 기계 학습을 수행함에 있어서, 결함이 존재하는 영역에 레이블링(labeling)을 하면 레이블링된 영역을 중심으로 학습을 수행하기 때문에 학습 효과를 높일 수 있다. 그런데, 학습 이미지에 존재하는 결함은 육안으로는 구분하기 힘든 경우가 많아 사용자가 레이블링을 수행함에 있어서 어려움을 겪을 수 있다. 제어부(120)는 이러한 문제점을 해결하기 위해 학습 이미지에 존재하는 결함이 잘 드러나도록 학습 이미지에 전처리를 수행하고, 전처리된 이미지를 입출력부(110)의 화면에 표시함으로써 사용자가 쉽게 레이블링을 수행하도록 할 수 있다.According to an embodiment, the controller 120 may perform preprocessing on a training image before performing machine learning. In performing machine learning for detecting defects in a training image, if labeling is performed on an area where defects exist, learning is performed around the labeled area, thereby enhancing a learning effect. However, since defects in the learning image are often difficult to distinguish with the naked eye, the user may have difficulty in performing labeling. In order to solve this problem, the controller 120 performs pre-processing on the training image so that defects present in the training image are clearly revealed, and displays the pre-processed image on the screen of the input/output unit 110 so that the user can easily perform labeling. can do.

이러한 전처리를 수행하기 위한 기능은 AI 학습 툴에 기본으로 구비될 수도 있고, 또는 플러그인(plug-in) 모듈 형태로 구현될 수도 있다.The function for performing such preprocessing may be provided in the AI learning tool by default, or may be implemented in the form of a plug-in module.

제어부(120)는 학습 이미지에 대한 학습이 요청되면, 자동으로 학습 이미지에 대한 전처리를 수행하여 화면에 표시하고, 전처리된 이미지상에 레이블링이 되면 레이블링된 영역을 학습 이미지의 원본에 적용한 후 원본 이미지에 대해 학습을 수행할 수 있다. 따라서, 사용자는 일일이 학습 이미지에 전처리를 수행한 후 AI 학습 툴에 입력하거나, 레이블링 후 전처리된 이미지를 제거하고 다시 원본 이미지를 AI 학습 툴에 입력하는 번거로움을 덜 수 있다.The controller 120 automatically performs preprocessing on the training image and displays it on the screen when a learning request for the training image is requested. When labeling is performed on the preprocessed image, the controller 120 applies the labeled area to the original training image, and then the original image. You can learn about Therefore, the user can reduce the hassle of inputting the pre-processed image to the AI learning tool after each pre-processing, or removing the pre-processed image after labeling and inputting the original image to the AI learning tool again.

일 실시예에 따르면, 제어부(120)는 학습 이미지에 대한 학습 결과를 색상을 이용하여 시각화한 후 입출력부(110)의 화면에 표시할 수 있다. 다시 말해, 제어부(120)는 기계 학습을 수행한 결과 얻은, 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 색상을 표시함으로써 학습 결과를 나타낼 수 있다.According to an embodiment, the controller 120 may visualize the learning result of the training image using color and then display it on the screen of the input/output unit 110. In other words, the controller 120 may indicate the learning result by displaying colors based on scores of pixels included in the training image obtained as a result of performing machine learning.

일 실시예에 따르면, 제어부(120)는 학습 이미지들상 결함의 존재 여부 및 결함의 정도를 히트 맵(heat map)으로 나타낼 수 있는데, 결함이 존재하는 학습 이미지는 정상인 학습 이미지와는 다른 색상으로 표시하고, 결함의 정도에 따라서 명도를 조절하는 방식으로 히트 맵을 표시할 수 있다. 예를 들어, 제어부(120)는 히트 맵상에서 정상인 학습 이미지를 녹색으로 표시한다면, 결함이 존재하는 학습 이미지는 적색으로 표시할 수 있으며, 결함의 정도가 높을수록 명도를 높게 하여 표시할 수 있다. 이때, 결함의 정도는 학습 이미지에 포함된 픽셀들의 스코어 값에 따라서 결정될 수 있다. 다만, 이와 같은 구체적인 표시 방법은 예시일 뿐이며 제어부(120)는 사용자가 학습 결과를 쉽게 인지할 수 있도록 다양한 색상과 명도로 히트 맵을 표시할 수 있다.According to an embodiment, the controller 120 may indicate whether or not a defect exists in the training images and the degree of the defect as a heat map, and the training image in which the defect exists is in a different color from the normal training image. The heat map can be displayed by displaying and adjusting the brightness according to the degree of defect. For example, if the control unit 120 displays a normal training image in green on the heat map, the training image in which a defect exists may be displayed in red, and the higher the degree of defect, the higher the brightness. In this case, the degree of defect may be determined according to score values of pixels included in the training image. However, such a specific display method is only an example, and the controller 120 may display the heat map with various colors and brightness so that the user can easily recognize the learning result.

사용자는 이와 같이 표시되는 히트 맵을 통해서 어떤 학습 이미지에 결함이 존재하는지, 또 그 결함의 정도는 어떠한지를 시각적으로 쉽게 파악할 수 있다. 또한, 사용자는 히트 맵을 통해 결함의 정도가 낮은 학습 이미지들만을 선별하여 재학습을 수행하도록 함으로써 학습 효과를 높일 수도 있다.Through the heat map displayed in this way, the user can easily visually grasp which learning image has a defect and what the degree of the defect is. In addition, the user may enhance the learning effect by selecting only learning images having a low degree of defect through the heat map and performing relearning.

일 실시예에 따르면, 제어부(120)는 학습 이미지들을 클래스에 따라서 분포도로 표시할 수도 있다. 이때, 학습 이미지의 클래스는 학습의 수행 결과에 따라서 분류되거나, 또는 미리 설정되어 있을 수도 있다. 또한, 각각의 학습 이미지는 대응되는 색상의 점으로 분포도에 표시될 수 있으며, 색상은 학습 이미지의 특성에 따라서 결정될 수 있다. 예를 들어, 제어부(120)는 학습 이미지에 포함된 픽셀의 스코어에 따라서, 학습 이미지에 대응되는 색상을 결정할 수 있다.According to an embodiment, the controller 120 may display the training images as a distribution chart according to classes. In this case, the class of the learning image may be classified according to the result of learning or may be preset. In addition, each learning image may be displayed on a distribution map as a dot of a corresponding color, and the color may be determined according to the characteristics of the learning image. For example, the controller 120 may determine a color corresponding to the training image according to the score of a pixel included in the training image.

사용자는 이와 같이 표시되는 분포도를 통해서 각각의 클래스에 포함되는 학습 이미지들을 확인할 수 있으며, 분포도에 표시된 점들의 색상을 통해서 동일 클래스에 포함된 학습 이미지들 중에서 특성이 상이한 학습 이미지가 존재하는지 여부를 쉽게 확인할 수 있다.The user can check the learning images included in each class through the distribution map displayed in this way, and easily check whether or not there are learning images with different characteristics among the learning images included in the same class through the colors of the dots displayed on the distribution map. I can confirm.

동일한 클래스 내에 특성이 서로 상이한 학습 이미지들이 존재하는 경우 학습 효과가 낮아질 수 있다. 따라서, 사용자는 분포도에 표시된 점들의 색상에 따라서 일부 학습 이미지들의 클래스를 변경한 후 재학습을 수행하도록 함으로써 학습 효과를 높일 수 있다.When learning images with different characteristics exist in the same class, the learning effect may be lowered. Accordingly, the user can increase the learning effect by performing re-learning after changing the classes of some of the learning images according to the colors of the dots displayed on the distribution map.

제어부(120)가 AI 학습 툴을 실행하여 학습 이미지에 대한 기계 학습을 수행하는 보다 자세한 내용은 아래에서 다른 도면들을 참조하여 설명하기로 한다.More details of performing machine learning on the training image by the controller 120 executing the AI learning tool will be described below with reference to other drawings.

저장부(130)에는 다양한 종류의 프로그램 및 데이터가 저장될 수 있다. 특히, 저장부(130)에는 학습 이미지에 대한 기계 학습을 수행하기 위한 AI 학습 툴이 저장될 수 있으며, 학습의 대상이 되는 복수의 학습 이미지들도 저장될 수 있다.Various types of programs and data may be stored in the storage unit 130. In particular, the storage unit 130 may store an AI learning tool for performing machine learning on the learning image, and may also store a plurality of learning images to be learned.

이하에서는 도 2 내지 도 10에 도시된 순서도 및 입출력부(110)에 표시되는 AI 학습 툴의 UI 화면을 참조하여, 기계 학습 장치(100)가 복수의 학습 이미지들에 대해 기계 학습을 수행하는 방법에 대해서 자세히 설명한다. 도 2 내지 도 10에 도시된 실시예들에 따른 기계 학습 수행 방법은 도 1에 도시된 기계 학습 장치(100)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 1에 도시된 기계 학습 장치(100)에 관하여 이상에서 기술한 내용은 도 2 내지 도 10에 도시된 실시예들에 따른 기계 학습 수행 방법에도 적용될 수 있다.Hereinafter, a method in which the machine learning apparatus 100 performs machine learning on a plurality of learning images with reference to the flow chart shown in FIGS. 2 to 10 and the UI screen of the AI learning tool displayed on the input/output unit 110 It will be described in detail. The method of performing machine learning according to the exemplary embodiments illustrated in FIGS. 2 to 10 includes steps processed in a time series by the machine learning apparatus 100 illustrated in FIG. 1. Accordingly, even if omitted below, the above description of the machine learning apparatus 100 illustrated in FIG. 1 may also be applied to the method of performing machine learning according to the embodiments illustrated in FIGS. 2 to 10.

도 2는 일 실시예에 따른 복수의 이미지들에 대한 기계 학습을 수행하기 위한 방법을 설명하기 위한 순서도이다.2 is a flowchart illustrating a method for performing machine learning on a plurality of images according to an exemplary embodiment.

도 2를 참조하면, 제어부(120)는 201 단계에서 학습 이미지에 전처리를 수행한 후 레이블링이 되면, 202 단계에서 레이블링된 영역을 중심으로 학습 이미지에 대한 기계 학습을 수행한다. 기계 학습의 수행시에는 일반적으로 알려진 인공신경망이 이용될 수 있다. 학습이 완료되면 제어부(120)는 학습 이미지에 포함된 픽셀들에 대한 스코어를 획득할 수 있다.Referring to FIG. 2, when labeling is performed after performing preprocessing on the training image in step 201, the controller 120 performs machine learning on the training image centering on the labeled area in step 202. In performing machine learning, a generally known artificial neural network may be used. When learning is completed, the controller 120 may acquire scores for pixels included in the training image.

제어부(120)는 203 단계에서 학습 이미지에 포함된 픽셀들에 대한 스코어에 기초하여 학습 결과를 색상을 이용하여 시각화한 후 화면에 표시한다. 학습 결과를 색상을 이용하여 시각화한다고 함은, 학습 결과 획득한 스코어에 따라서 색상을 결정하여 화면에 표시함으로써 사용자가 학습 결과를 시각적으로 쉽게 파악할 수 있도록 한다는 의미이다.In step 203, the controller 120 visualizes the learning result using colors based on the scores for the pixels included in the training image and then displays it on the screen. Visualizing the learning result using color means that the user can easily visually grasp the learning result by determining the color according to the score acquired as a result of learning and displaying it on the screen.

일 실시예에 따른 기계 학습 수행 방법은 203 단계에서 학습 결과를 표시함으로써 종료될 수도 있지만, 사용자의 피드백에 따라서 재학습을 수행하는 204 단계를 더 포함할 수도 있다.The method of performing machine learning according to an embodiment may be terminated by displaying the learning result in step 203, but may further include step 204 of performing relearning according to a user's feedback.

204 단계에서 제어부(120)는 표시된 색상에 기초한 사용자 피드백에 따라서 적어도 일부의 학습 이미지에 대한 재학습을 수행할 수 있다. 사용자는 203 단계에서 표시된 화면에 나타난 색상을 통해 학습이 잘 수행되었는지, 학습에 방해가 되는 요인은 없었는지 등을 파악할 수 있으며, 그에 따라 학습 효과를 더 높이기 위한 방향으로 재학습을 수행하도록 할 수도 있다. 이때, 사용자는 화면에 표시된 색상에 기초하여 피드백을 입력함으로써 재학습을 수행하도록 할 수 있고, 학습된 전체 이미지들 중에서 일부 이미지들에 대해서만 재학습을 수행하도록 할 수도 있다. 제어부(120)는 사용자의 피드백 입력을 반영하여 적어도 일부의 학습 이미지들에 대해서 재학습을 수행할 수 있다.In step 204, the controller 120 may perform relearning on at least some of the training images according to user feedback based on the displayed color. The user can determine whether the learning has been performed well, whether there are any factors that interfere with learning, etc. through the color displayed on the screen displayed in step 203, and accordingly, the relearning can be performed in a direction to further enhance the learning effect. have. In this case, the user may perform relearning by inputting feedback based on a color displayed on the screen, or may perform relearning only on some of the learned images. The controller 120 may perform relearning on at least some of the training images by reflecting the user's feedback input.

도 3은 도 2의 201 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.FIG. 3 is a flow chart illustrating detailed steps included in step 201 of FIG. 2.

도 3을 참조하면, 제어부(120)는 301 단계에서 학습 이미지에 포함된 결함 영역이 드러나도록 전처리를 수행하고, 전처리된 학습 이미지를 입출력부(110)의 화면에 표시한다.Referring to FIG. 3, in step 301, the controller 120 performs preprocessing so that the defective area included in the training image is exposed, and displays the preprocessed training image on the screen of the input/output unit 110.

학습 이미지에 전처리를 수행하는 과정에 대해서 도 4를 참조하여 설명한다. 도 4는 일 실시예에 따라 학습 이미지에 전처리를 수행하는 과정을 설명하기 위한 도면이다.A process of performing preprocessing on the training image will be described with reference to FIG. 4. 4 is a diagram for explaining a process of performing preprocessing on a training image according to an exemplary embodiment.

도 4를 참조하면, 원본 학습 이미지(410)상 결함이 존재하는 영역을 결함 영역(411)으로 표시했는데, 결함 영역(411) 내에 결함이 존재하는지 여부를 육안으로 판단하기 어렵다. 따라서, 사용자는 원본 학습 이미지(410)를 보고 결함 영역(411)을 찾아 레이블링을 수행하기가 어렵다.Referring to FIG. 4, an area in which a defect exists in the original training image 410 is indicated as a defect area 411, and it is difficult to determine whether or not a defect exists in the defect area 411 with the naked eye. Therefore, it is difficult for the user to perform labeling by looking at the original training image 410 and finding the defective area 411.

제어부(120)는 원본 학습 이미지(410)에 히스토그램 평활화(histogram equalization) 등과 같은 전처리를 수행함으로써 원본 학습 이미지(410)에 포함된 결함이 보다 잘 드러나도록 할 수 있다. 도 4를 참조하면, 전처리된 학습 이미지(420)상 결함 영역(421) 내에는 결함(422)이 존재함을 육안으로도 확인할 수 있다. 따라서, 제어부(120)는 사용자가 전처리된 학습 이미지(420)를 보고 레이블링을 할 수 있도록 전처리된 학습 이미지를 입출력부(110)의 화면에 표시한다.The control unit 120 may perform preprocessing such as histogram equalization on the original training image 410 so that the defects included in the original training image 410 are more clearly revealed. Referring to FIG. 4, it can be confirmed visually that a defect 422 exists in the defect area 421 on the preprocessed training image 420. Accordingly, the controller 120 displays the preprocessed training image on the screen of the input/output unit 110 so that the user can view and label the preprocessed training image 420.

다시 도 3으로 돌아와서, 제어부(120)는 302 단계에서 전처리된 학습 이미지가 표시된 화면을 통해 레이블링 입력을 수신하면, 303 단계에서 레이블링 입력을 원본 학습 이미지에 적용한 후 원본 학습 이미지에 대해 학습을 수행한다. 즉, 제어부(120)는 302 단계에서 전처리된 학습 이미지에 레이블링된 영역과 대응되는 원본 학습 이미지상 위치에 레이블링을 하고, 레이블링된 영역을 중심으로 원본 학습 이미지에 대한 학습을 수행한다.Returning to FIG. 3 again, when receiving the labeling input through the screen on which the preprocessed training image is displayed in step 302, the controller 120 applies the labeling input to the original training image in step 303 and then performs learning on the original training image. . That is, in step 302, the controller 120 labels a location on the original training image corresponding to the area labeled on the preprocessed training image, and performs learning on the original training image around the labeled area.

도 3에 도시된 실시예에 따르면, AI 학습 툴에 학습 이미지 원본을 입력하기만 하면, 제어부(120)가 자동으로 전처리를 수행하여 화면에 표시한 뒤 레이블링 입력을 수신하고, 레이블링 입력을 원본 학습 이미지에 적용한 후 학습을 수행함으로써 사용자가 일일이 전처리된 학습 이미지를 AI 학습 툴에 입력하거나, 전처리된 학습 이미지 제거 후 다시 원본 학습 이미지를 AI 학습 툴에 입력하여 학습을 수행할 필요가 없어 사용자 편의성이 향상되는 효과를 기대할 수 있다. 그리고, 이러한 전처리 기능은 AI 학습 툴에 기본으로 구비되거나, 또는 플러그인 모듈 형태로 구현될 수도 있다.According to the embodiment shown in FIG. 3, when the original training image is input to the AI learning tool, the controller 120 automatically performs preprocessing and displays it on the screen, receives the labeling input, and learns the original labeling input. By applying it to the image and then performing the learning, the user does not need to manually input the preprocessed training image into the AI learning tool, or remove the preprocessed training image and then enter the original training image into the AI learning tool again to perform learning. You can expect an improved effect. In addition, such a pre-processing function may be provided in the AI learning tool by default, or may be implemented in a plug-in module form.

도 5는 도 2의 203 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.FIG. 5 is a flow chart illustrating detailed steps included in step 203 of FIG. 2.

도 5를 참조하면, 501단계에서 제어부(120)는 각각의 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 일정 범위 이내의 스코어들을 선택할 수 있다. 예를 들어, 제어부(120)는 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 10%의 값을 갖는 스코어들을 선택할 수 있다.Referring to FIG. 5, in step 501, the controller 120 may select scores within an upper predetermined range among scores of pixels included in each training image. For example, the controller 120 may select scores having a top 10% value among scores of pixels included in the training image.

502 단계에서 제어부(120)는 선택된 스코어들을 기준 값과 비교하여 학습 이미지에 결함이 존재하는지 여부를 판단할 수 있다. 예를 들어, 제어부(120)는 선택된 스코어들의 평균 값이 기준 값보다 크다면 학습 이미지에 결함이 존재하는 것으로 판단할 수 있다. 또는, 제어부(120)는 선택된 스코어들 중 최소 값이 기준 값보다 크다면 학습 이미지에 결함이 존재하는 것으로 판단할 수도 있다. 이때, 기준 값은 학습 결과를 반영하여 설정 또는 변경되거나, 사용자에 의해 미리 설정될 수도 있다.In step 502, the controller 120 may determine whether a defect exists in the training image by comparing the selected scores with a reference value. For example, if the average value of the selected scores is greater than the reference value, the controller 120 may determine that a defect exists in the training image. Alternatively, if the minimum value among the selected scores is greater than the reference value, the controller 120 may determine that a defect exists in the training image. In this case, the reference value may be set or changed by reflecting the learning result, or may be set in advance by the user.

503 단계에서 제어부(120)는 결함이 존재하는 학습 이미지에 대해서는, 결함이 존재하지 않는 학습 이미지와 다른 색상으로 표시하고, 스코어의 값에 따라서 명도를 조절하여 히트 맵을 표시한다. 이에 따라, 결함이 존재하는 학습 이미지는 히트 맵상에 다른 색상으로 표시되어 확인이 쉬우며, 명도로 표현되는 결함의 정도 역시 히트 맵을 통해 쉽게 확인이 가능하다. 제어부(120)가 입출력부(110)의 화면을 통해 표시하는 히트 맵에 대해서 도 6을 참조하여 자세히 살펴보도록 한다.In step 503, the control unit 120 displays the learning image in which the defect exists in a different color from the learning image in which the defect does not exist, and adjusts the brightness according to the score value to display the heat map. Accordingly, the learning image in which the defect exists is displayed in a different color on the heat map so that it is easy to check, and the degree of the defect expressed by the brightness can also be easily confirmed through the heat map. A heat map displayed through the screen of the input/output unit 110 by the control unit 120 will be described in detail with reference to FIG. 6.

도 6은 일 실시예에 따라 학습 이미지에 결함이 존재하는지 여부 및 결함의 정도를 색상을 이용하여 시각화한 후 표시한 화면이다.6 is a screen displayed after visualizing whether or not a defect exists in a training image and a degree of the defect using colors according to an exemplary embodiment.

도 6을 참조하면, 전체 화면(600)의 제1 영역(610)에는 어느 하나의 학습 이미지에 대한 미리보기가 표시되고, 제2 영역(620)에는 결함의 존재 여부 및 정도를 표현한 히트 맵이 표시되었다.Referring to FIG. 6, a preview of any one training image is displayed in a first area 610 of the full screen 600, and a heat map expressing the existence and degree of defects is displayed in the second area 620. Was displayed.

제2 영역(620)에 표시된 사각형 형태의 단위 블록들은 각각 하나의 학습 이미지에 대응된다. 제2 영역(620)에 도시된 히트 맵에서는 결함을 포함하지 않는 정상의 학습 이미지는 녹색의 단위 블록으로 표현되었고, 결함을 포함하는 학습 이미지는 다른 색상의 단위 블록으로 표현되었다. 또한, 결함을 포함하는 학습 이미지는 결함의 정도에 따라서 명도가 조절되어 표현되었는데, 제2 영역(620)을 참조하면 다양한 명도를 갖는 블록들을 확인할 수 있다.Each of the rectangular unit blocks displayed in the second area 620 corresponds to one training image. In the heat map shown in the second area 620, a normal training image that does not contain a defect is expressed as a green unit block, and a training image including a defect is expressed as a unit block of a different color. In addition, the learning image including the defect was expressed by adjusting the brightness according to the degree of the defect. Referring to the second area 620, blocks having various brightnesses can be identified.

사용자는 제2 영역(620)의 히트 맵을 보고 결함을 포함하는 학습 이미지가 얼마나 존재하는지, 어떤 학습 이미지가 결함을 포함하는지, 각 학습 이미지에 포함된 결함의 정도는 어떠한지를 쉽게 파악할 수 있다. 예를 들어, 제2 영역(620)의 히트 맵에서 어느 하나의 단위 블록이 선택되면, 선택된 단위 블록에 대응되는 학습 이미지의 미리보기가 제1 영역(610)에 표시될 수도 있다.By viewing the heat map of the second area 620, the user can easily grasp how many training images including defects exist, which training images include defects, and what degree of defects are included in each training image. For example, when any one unit block is selected from the heat map of the second area 620, a preview of the training image corresponding to the selected unit block may be displayed on the first area 610.

또한, 사용자는 제2 영역(620)의 히트 맵을 보고 일부 학습 이미지들만을 선택하여 재학습을 요청할 수도 있다. 이에 대해서는 도 7을 참조하여 설명한다.In addition, the user may request relearning by viewing the heat map of the second area 620 and selecting only some training images. This will be described with reference to FIG. 7.

도 7은 도 2의 204 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.FIG. 7 is a flow chart illustrating detailed steps included in step 204 of FIG. 2.

도 7을 참조하면, 제어부(120)는 701 단계에서 사용자로부터 히트 맵 상에서 일정 기준 이하의 명도를 갖는 학습 이미지를 선택하는 입력을 수신하면, 702 단계에서는 선택된 학습 이미지들에 대한 재학습을 수행할 수 있다.Referring to FIG. 7, when receiving an input for selecting a training image having a brightness less than a certain standard on a heat map from a user in step 701, the controller 120 performs retraining on the selected training images in step 702. I can.

결함의 정도가 낮다고 판단된 학습 이미지는, 실제로는 결함을 포함하지 않음에도 오검출이 되었거나, 정상의 범주에 포함된다고 봐야할지 판단의 경계가 불명확한 경우가 있을 수 있다. 따라서, 결함의 정도가 낮다고 판단된 학습 이미지들에 대해서만 재학습을 수행하면 학습 효과를 높일 수 있다. 이를 위해, 사용자는 히트 맵상에서 일정 기준 이하의 명도를 갖는 학습 이미지만을 선택하여 재학습을 수행하도록 AI 학습 툴에 요청할 수 있다.A training image judged to have a low degree of defect may be erroneously detected even though it does not actually contain a defect, or the boundary of judgment may be unclear whether it should be considered to be included in the normal category. Therefore, it is possible to increase the learning effect by performing relearning only on learning images judged to have a low degree of defect. To this end, the user may request the AI learning tool to perform retraining by selecting only learning images having a brightness less than a certain standard on the heat map.

도 8은 도 2의 203 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.8 is a flowchart illustrating detailed steps included in step 203 of FIG. 2.

도 8을 참조하면, 801 단계에서 제어부(120)는 각각의 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 일정 범위 이내의 스코어들을 선택할 수 있다. 예를 들어, 제어부(120)는 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 10%의 값을 갖는 스코어들을 선택할 수 있다.Referring to FIG. 8, in step 801, the controller 120 may select scores within an upper predetermined range from among scores of pixels included in each training image. For example, the controller 120 may select scores having a top 10% value among scores of pixels included in the training image.

802 단계에서 제어부(120)는 선택된 스코어들에 따라서 각각의 학습 이미지에 대응되는 색상을 결정할 수 있다. 학습 이미지에 포함된 픽셀들의 스코어는 학습 이미지의 특성을 반영한다. 즉, 학습 이미지에 포함된 픽셀들의 스코어에 따라서, 학습 이미지에 포함된 물품의 종류가 달라지는 등 스코어는 학습 이미지를 분류하기 위한 기준으로 사용될 수 있다.In step 802, the controller 120 may determine a color corresponding to each training image according to the selected scores. The scores of pixels included in the training image reflect the characteristics of the training image. That is, the score may be used as a criterion for classifying the learning image, such as different types of items included in the learning image according to the scores of pixels included in the learning image.

따라서, 제어부(120)는 801 단계에서 선택된 스코어가 어느 범위에 해당되는지 확인하고, 확인된 범위에 대응되는 색상을 학습 이미지에 대응되는 색상으로서 결정할 수 있다. 이를 위해, 스코어 값의 범위를 둘 이상 설정하고, 각각의 범위에 대응되는 색상을 미리 설정할 수 있다.Accordingly, the controller 120 may check which range the score selected in step 801 falls into, and determine a color corresponding to the identified range as a color corresponding to the training image. To this end, two or more ranges of score values may be set, and colors corresponding to each range may be preset.

803 단계에서 제어부(120)는 학습 이미지를 분류하는 클래스에 따라서, 학습 이미지에 대해 결정된 색상으로 분포도를 표시한다. 이때, 학습 이미지의 클래스는 학습의 수행 결과에 따라서 분류되거나, 또는 미리 설정되어 있을 수도 있다. 즉, 제어부(120)는 학습 수행 결과 획득한 픽셀의 스코어에 따라서 학습 이미지의 클래스를 결정할 수동 있고, 또는 사용자가 학습 이미지를 AI 학습 툴에 입력할 때 학습 이미지의 클래스를 지정할 수도 있다.In step 803, the controller 120 displays a distribution map with a color determined for the training image according to the class for classifying the training image. In this case, the class of the learning image may be classified according to the result of learning or may be preset. That is, the control unit 120 may manually determine the class of the training image according to the score of the pixels acquired as a result of training, or may designate the class of the training image when the user inputs the training image to the AI learning tool.

제어부(120)가 학습 이미지들을 클래스에 따라서 분포도로 표시하는 방법에 대해서는 도 9을 참조하여 자세히 설명한다.A method in which the controller 120 displays the training images as a distribution map according to classes will be described in detail with reference to FIG. 9.

도 9는 일 실시예에 따라 학습이 완료된 학습 이미지들을 클래스에 따라서 표시한 분포도를 표시한 화면이다.9 is a screen showing a distribution map in which training images for which learning has been completed are displayed according to classes according to an exemplary embodiment.

도 9를 참조하면, 전체 화면(900)의 제1 영역(910)에는 어느 하나의 학습 이미지의 미리보기가 표시되고, 전체 화면(900)의 오른편에는 복수의 학습 이미지들에 대한 클래스에 따른 분포도가 표시되었다.Referring to FIG. 9, a preview of any one training image is displayed in a first area 910 of the full screen 900, and a distribution diagram of a plurality of training images according to classes on the right side of the full screen 900 Is displayed.

분포도에 표시된 점들은 각각 하나의 학습 이미지에 대응되며, 점들의 색상은 대응되는 학습 이미지의 특성에 따라서 결정될 수 있다. 학습 이미지의 특성에 따라서 색상을 결정하는 구체적인 방법은 앞서 도 8의 801 단계 및 802 단계에서 설명한 바 있다.Each of the points displayed on the distribution map corresponds to one learning image, and the color of the dots may be determined according to the characteristics of the corresponding learning image. A specific method of determining the color according to the characteristics of the training image has been described above in steps 801 and 802 of FIG. 8.

도 9를 참조하면, 학습 이미지들은 4개의 클래스로 분류되며, 클래스에 따라 서로 다른 위치에 점이 표시되어 학습 이미지의 분포 상태를 표현하고 있다. 즉, 학습 이미지에 대응되는 점들은 제1 클래스 영역(920), 제2 클래스 영역(930), 제3 클래스 영역(940) 및 제4 클래스 영역(950)에 나누어져 표시되어 있다.Referring to FIG. 9, training images are classified into four classes, and dots are displayed at different positions according to classes to represent the distribution state of the training images. That is, points corresponding to the training image are divided and displayed in the first class area 920, the second class area 930, the third class area 940, and the fourth class area 950.

도 9를 참조하면, 동일 클래스 영역에 표시된 점들은 대체로 동일한 색상을 가지는 것을 확인할 수 있다. 왜냐하면 동일 클래스에 포함되는 학습 이미지들은 유사한 특성을 가지 때문이다.Referring to FIG. 9, it can be seen that points displayed in the same class area have substantially the same color. This is because the learning images included in the same class have similar characteristics.

하지만, 제1 클래스 영역(920) 내의 제1 포인트(921)와, 제4 클래스 영역(950) 내의 제2 및 제3 포인트(951, 952)는 동일 클래스 영역 내 다른 점들과 다른 색상을 가지는 것을 확인할 수 있다. 이는 상기 제1 내지 제3 포인트들(921, 951, 952)에 대응되는 학습 이미지들은 동일 클래스 내 다른 학습 이미지들과 특성이 다름을 의미한다.However, the first point 921 in the first class area 920 and the second and third points 951 and 952 in the fourth class area 950 have different colors from other points in the same class area. I can confirm. This means that the learning images corresponding to the first to third points 921, 951, and 952 have different characteristics from other learning images in the same class.

동일 클래스 내에 서로 특성이 다른 학습 이미지가 포함된 상태에서 학습이 수행되었다면 학습에 방해가 되어 학습 결과에 부정적인 영향을 미쳤을 수 있다. 이러한 문제를 해결하기 위해 사용자는 도 9의 전체 화면(900)상에서 제1 내지 제3 포인트들(921, 951, 952)의 클래스를 변경하고 재학습을 수행하도록 할 수 있다. 이하에서는 도 10을 참조하여 학습 이미지들의 클래스를 변경하고 재학습을 수행하는 방법에 대해서 설명한다.If learning is performed while learning images with different characteristics are included in the same class, learning may have been impeded and negatively affected the learning outcome. In order to solve this problem, the user may change the class of the first to third points 921, 951, and 952 on the full screen 900 of FIG. 9 and perform relearning. Hereinafter, a method of changing a class of training images and performing retraining will be described with reference to FIG. 10.

도 10 은 도 2의 204 단계에 포함되는 세부 단계들을 설명하기 위한 순서도이다.FIG. 10 is a flow chart illustrating detailed steps included in step 204 of FIG. 2.

도 10을 참조하면, 제어부(120)는 1001 단계에서 사용자로부터 분포도에 표현된 색상에 기초하여 학습 이미지의 클래스를 변경하는 입력을 수신하면, 1002 단계에서 입력에 따라서 학습 이미지의 클래스를 변경한 후 재학습을 수행할 수 있다.Referring to FIG. 10, when receiving an input for changing the class of the training image based on the color expressed in the distribution map from the user in step 1001, the controller 120 changes the class of the training image according to the input in step 1002. Relearning can be performed.

예를 들어, 도 9에서 사용자는 제1 포인트(921)를 드래그 앤 드롭 방식으로 제1 클래스 영역(910)으로부터 제2 클래스 영역(930)으로 이동시킴으로써, 제1 포인트(921)에 대응되는 학습 이미지가 제2 클래스에 속하도록 변경할 수 있다. 이와 유사하게 사용자는 제2 및 제3 포인트들(951, 952)을 드래그 앤 드롭 방식으로 제4 클래스 영역(950)으로부터 제3 클래스 영역(940)으로 이동시킴으로써, 제2 및 제3 포인트들(951, 952)에 대응되는 학습 이미지들이 제3 클래스에 속하도록 변경할 수 있다.For example, in FIG. 9, the user moves the first point 921 from the first class area 910 to the second class area 930 in a drag-and-drop method, thereby learning corresponding to the first point 921 You can change the image to belong to the second class. Similarly, by moving the second and third points 951 and 952 from the fourth class area 950 to the third class area 940 in a drag-and-drop method, the second and third points ( The training images corresponding to 951 and 952) may be changed to belong to the third class.

이와 같이, 사용자는 분포도에 나타난 색상에 기초하여 학습 이미지들의 클래스를 변경하는 피드백 입력을 수행한 후, 변경된 클래스에 기초하여 다시 학습을 수행하도록 할 수 있다.In this way, the user may perform a feedback input for changing classes of training images based on the color shown in the distribution map, and then perform learning again based on the changed class.

이상에서 설명한 실시예들에 따를 경우, 복수의 이미지들에 대해 기계 학습을 수행함에 있어서, 학습 전 이미지에 전처리를 수행함으로써 쉽게 레이블링을 할 수 있다.According to the embodiments described above, when machine learning is performed on a plurality of images, labeling can be easily performed by performing preprocessing on the image before learning.

또한, 학습 결과를 색상을 이용하여 시각화한 후 표시함으로써, 사용자가 쉽게 학습 결과를 파악하고 학습 효과를 높이기 위한 방향으로 재학습을 수행하도록 할 수 있다.In addition, by visualizing the learning result using color and displaying it, the user can easily grasp the learning result and perform relearning in a direction to increase the learning effect.

이상의 실시예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.The term'~ unit' used in the above embodiments refers to software or hardware components such as field programmable gate array (FPGA) or ASIC, and the'~ unit' performs certain roles. However,'~ part' is not limited to software or hardware. The'~ unit' may be configured to be in an addressable storage medium, or may be configured to reproduce one or more processors. Thus, as an example,'~ unit' refers to components such as software components, object-oriented software components, class components and task components, processes, functions, properties, and procedures. , Subroutines, segments of program patent code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays, and variables.

구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.The components and functions provided in the'~ units' may be combined into a smaller number of elements and'~ units' or separated from the additional elements and'~ units'.

뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다.In addition, components and'~ units' may be implemented to play one or more CPUs in a device or a security multimedia card.

도 2 내지 도 10을 통해 설명된 실시예들에 따른 기계 학습 수행 방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다.The method of performing machine learning according to the embodiments described with reference to FIGS. 2 to 10 may be implemented in the form of a computer-readable medium storing instructions and data executable by a computer. In this case, the instructions and data may be stored in the form of a program code, and when executed by a processor, a predetermined program module may be generated to perform a predetermined operation. Further, the computer-readable medium may be any available medium that can be accessed by a computer, and includes both volatile and nonvolatile media, and removable and non-removable media. Further, the computer-readable medium may be a computer recording medium, which is volatile and non-volatile implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. It may include both volatile, removable and non-removable media. For example, the computer recording medium may be a magnetic storage medium such as an HDD and an SSD, an optical recording medium such as a CD, DVD, and Blu-ray disk, or a memory included in a server accessible through a network.

또한 도 2 내지 도 10을 통해 설명된 실시예들에 따른 기계 학습 수행 방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다.In addition, the method of performing machine learning according to the embodiments described with reference to FIGS. 2 to 10 may be implemented as a computer program (or computer program product) including instructions executable by a computer. The computer program includes programmable machine instructions processed by a processor, and may be implemented in a high-level programming language, an object-oriented programming language, an assembly language, or a machine language. . Further, the computer program may be recorded on a tangible computer-readable recording medium (eg, memory, hard disk, magnetic/optical medium, solid-state drive (SSD), etc.).

따라서 도 2 내지 도 10을 통해 설명된 실시예들에 따른 기계 학습 수행 방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다.Accordingly, the method of performing machine learning according to the embodiments described with reference to FIGS. 2 to 10 may be implemented by executing the computer program as described above by the computing device. The computing device may include at least some of a processor, a memory, a storage device, a high speed interface connected to the memory and a high speed expansion port, and a low speed interface connected to the low speed bus and the storage device. Each of these components is connected to each other using various buses and can be mounted on a common motherboard or in other suitable manner.

여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다.Here, the processor can process commands within the computing device. Such commands include, for example, to display graphic information for providing a GUI (Graphic User Interface) on an external input or output device, such as a display connected to a high-speed interface. Examples are instructions stored in memory or storage devices. As another embodiment, multiple processors and/or multiple buses may be utilized with multiple memories and memory types as appropriate. In addition, the processor may be implemented as a chipset formed by chips including a plurality of independent analog and/or digital processors.

또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다.The memory also stores information within the computing device. As an example, the memory may be composed of volatile memory units or a set of them. As another example, the memory may be composed of a nonvolatile memory unit or a set of them. Also, the memory may be another type of computer-readable medium such as a magnetic or optical disk.

그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다.In addition, the storage device may provide a large-capacity storage space to the computing device. The storage device may be a computer-readable medium or a configuration including such a medium, for example, devices in a storage area network (SAN) or other configurations, a floppy disk device, a hard disk device, an optical disk device, Or it may be a tape device, a flash memory, or another semiconductor memory device or device array similar thereto.

상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above-described embodiments are for illustrative purposes only, and those of ordinary skill in the art to which the above-described embodiments belong can easily transform into other specific forms without changing the technical idea or essential features of the above-described embodiments. You can understand. Therefore, it should be understood that the above-described embodiments are illustrative and non-limiting in all respects. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.

본 명세서를 통해 보호 받고자 하는 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태를 포함하는 것으로 해석되어야 한다.The scope to be protected through the present specification is indicated by the claims to be described later rather than the detailed description, and should be interpreted as including all changes or modified forms derived from the meaning and scope of the claims and the concept of equivalents thereof. .

100: 기계 학습 수행 장치 110: 입출력부
120: 제어부 130: 저장부
100: machine learning execution device 110: input/output unit
120: control unit 130: storage unit

Claims (16)

기계 학습 장치에 의해 수행되며, 복수의 이미지들에 대해 기계 학습을 수행하기 위한 방법에 있어서,
상기 기계 학습 장치의 제어부가 각각의 학습 이미지에 대해서 상기 각각의 학습 이미지에 포함된 결함이 드러나도록 전처리를 수행한 후 상기 전처리가 수행된 학습 이미지를 상기 기계 학습 장치의 입출력부에 표시하는 단계;
상기 입출력부를 통해 사용자로부터 상기 전처리된 학습 이미지에 대한 레이블링(labeling) 입력을 수신하면, 상기 제어부가 상기 레이블링 입력에 기초하여 각각의 학습 이미지에 대한 기계 학습을 수행하는 단계; 및
상기 제어부가 상기 기계 학습을 수행한 결과 상기 각각의 학습 이미지에 포함된 픽셀들에 대해서 획득한 스코어들 중에서 적어도 일부를 미리 설정된 기준 값과 비교하여 상기 각각의 학습 이미지에 결함이 존재하는지 여부를 판단하고, 결함의 존재 여부에 따라 상기 각각의 학습 이미지에 대응되는 색상을 결정하여 상기 입출력부에 표시하는 단계를 포함하는, 방법.
In a method for performing machine learning on a plurality of images, performed by a machine learning device,
Performing, by a control unit of the machine learning apparatus, preprocessing each learning image to reveal defects included in each of the learning images, and then displaying the preprocessed learning image on an input/output unit of the machine learning apparatus;
When a labeling input for the preprocessed training image is received from a user through the input/output unit, the controller performing machine learning for each training image based on the labeling input; And
As a result of the machine learning, the control unit compares at least some of the scores obtained for pixels included in each of the training images with a preset reference value to determine whether a defect exists in each of the training images. And determining a color corresponding to each of the training images according to the presence or absence of a defect and displaying the color on the input/output unit.
제1항에 있어서,
상기 입출력부를 통해 상기 사용자로부터 상기 표시된 학습 결과에 나타난 색상에 기초한 피드백 입력을 수신하면, 상기 제어부가 상기 피드백 입력을 반영하여 상기 복수의 학습 이미지들 중 적어도 일부의 이미지에 대한 재학습을 수행하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method of claim 1,
Upon receiving a feedback input based on the color shown in the displayed learning result from the user through the input/output unit, the control unit reflecting the feedback input to perform relearning on at least some of the plurality of training images The method further comprising a.
제1항에 있어서,
상기 기계 학습을 수행하는 단계는,
상기 제어부가 상기 수신한 레이블링 입력을 원본 학습 이미지에 적용하고, 원본 학습 이미지에 대해 학습을 수행하는 것을 특징으로 하는 방법.
The method of claim 1,
The step of performing the machine learning,
And the controller applies the received labeling input to the original training image and performs learning on the original training image.
제1항에 있어서,
상기 각각의 학습 이미지에 대응되는 색상을 결정하여 상기 입출력부에 표시하는 단계는,
상기 제어부가 상기 각각의 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 일정 범위 이내의 스코어들을 선택하는 단계;
상기 제어부가 상기 선택된 스코어들을 미리 설정된 기준 값과 비교하여 학습 이미지에 결함이 존재하는지 여부를 판단하는 단계; 및
결함이 존재한다고 판단되는 경우, 상기 제어부는 결함이 존재하지 않는 학습 이미지와 다른 색상을 선택하고, 상기 선택된 스코어의 값에 따라서 명도를 조절하여 히트 맵을 상기 입출력부에 표시하는 단계를 포함하는 것을 특징으로 하는 방법.
The method of claim 1,
The step of determining a color corresponding to each of the training images and displaying them on the input/output unit,
Selecting, by the controller, scores within an upper predetermined range from among scores of pixels included in each of the training images;
Determining, by the control unit, whether a defect exists in the training image by comparing the selected scores with a preset reference value; And
If it is determined that there is a defect, the control unit selects a color different from the training image in which the defect does not exist, adjusts brightness according to the value of the selected score, and displays a heat map on the input/output unit. How to characterize.
제4항에 있어서,
상기 입출력부를 통해 상기 사용자로부터 상기 히트 맵 상에서 일정 기준 이하의 명도를 갖는 학습 이미지를 선택하는 입력을 수신하면, 상기 제어부는 상기 선택된 학습 이미지들에 대해 재학습을 수행하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method of claim 4,
When receiving an input from the user through the input/output unit for selecting a learning image having a brightness less than a predetermined reference on the heat map, the control unit further comprises performing relearning on the selected learning images. How to do it.
제1항에 있어서,
상기 각각의 학습 이미지에 대응되는 색상을 결정하여 상기 입출력부에 표시하는 단계는,
상기 제어부가 상기 각각의 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 일정 범위 이내의 스코어들을 선택하는 단계;
상기 제어부가 상기 선택된 스코어들에 따라서 상기 각각의 학습 이미지에 대응되는 색상을 결정하는 단계; 및
상기 제어부가 학습 이미지를 분류하는 클래스에 따라서, 상기 각각의 학습 이미지에 대해 결정된 색상으로 분포도를 상기 입출력부에 표시하는 단계를 포함하는 것을 특징으로 하는 방법.
The method of claim 1,
The step of determining a color corresponding to each of the training images and displaying them on the input/output unit,
Selecting, by the controller, scores within an upper predetermined range from among scores of pixels included in each of the training images;
Determining, by the control unit, a color corresponding to each of the training images according to the selected scores; And
And displaying, on the input/output unit, a distribution map in a color determined for each of the training images, according to a class in which the control unit classifies the training images.
제6항에 있어서,
상기 입출력부를 통해 상기 사용자로부터 상기 분포도에 표현된 색상에 기초하여 학습 이미지의 클래스를 변경하는 입력을 수신하면, 상기 제어부는 상기 입력에 따라서 학습 이미지의 클래스를 변경한 후 재학습을 수행하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method of claim 6,
When receiving an input for changing the class of the training image based on the color expressed in the distribution map from the user through the input/output unit, the control unit performs the step of changing the class of the training image according to the input and then performing relearning. The method characterized in that it further comprises.
제1항에 기재된 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium on which a program for performing the method according to claim 1 is recorded. 기계 학습 장치에 의해 수행되며, 제1항에 기재된 방법을 수행하기 위해 매체에 저장된 컴퓨터 프로그램.A computer program performed by a machine learning device and stored on a medium for performing the method of claim 1. 기계 학습 장치에 있어서,
기계 학습과 관련된 조작 및 데이터 입력을 수신하고, 데이터 처리 결과를 표시하기 위한 입출력부;
기계 학습 수행을 위한 프로그램이 저장되는 저장부;
상기 프로그램을 실행함으로써 복수의 이미지들에 대한 기계 학습을 수행하는 제어부를 포함하며,
상기 제어부는, 각각의 학습 이미지에 대해서 상기 각각의 학습 이미지에 포함된 결함이 드러나도록 전처리를 수행한 후 상기 전처리가 수행된 학습 이미지를 상기 입출력부에 표시하고, 상기 입출력부를 통해 사용자로부터 상기 전처리된 학습 이미지에 대한 레이블링(labeling) 입력을 수신하면, 상기 레이블링 입력에 기초하여 각각의 학습 이미지에 대한 기계 학습을 수행한 후, 상기 기계 학습을 수행한 결과 상기 각각의 학습 이미지에 포함된 픽셀들에 대해서 획득한 스코어들 중에서 적어도 일부를 미리 설정된 기준 값과 비교하여 상기 각각의 학습 이미지에 결함이 존재하는지 여부를 판단하고, 결함의 존재 여부에 따라 상기 각각의 학습 이미지에 대응되는 색상을 결정하여 상기 입출력부를 통해 표시하는, 장치.
In the machine learning device,
An input/output unit for receiving an operation and data input related to machine learning, and displaying a data processing result;
A storage unit storing a program for performing machine learning;
And a control unit that performs machine learning on a plurality of images by executing the program,
The control unit performs pre-processing for each learning image to reveal defects included in each of the learning images, and then displays the pre-processed learning image to the input/output unit, and the pre-processing from the user through the input/output unit Upon receiving a labeling input for the acquired training image, after performing machine learning for each training image based on the labeling input, the pixels included in each training image as a result of performing the machine learning By comparing at least some of the scores obtained for the with respect to a preset reference value, it is determined whether or not a defect exists in each of the training images, and a color corresponding to each of the training images is determined according to whether or not a defect exists. Displaying through the input/output unit, the device.
제10항에 있어서,
상기 제어부는,
상기 표시된 학습 결과에 나타난 색상에 기초한 피드백 입력을 수신하면, 상기 피드백 입력을 반영하여 상기 복수의 학습 이미지들 중 적어도 일부의 이미지에 대한 재학습을 수행하는 것을 특징으로 하는 장치.
The method of claim 10,
The control unit,
When receiving a feedback input based on a color shown in the displayed learning result, relearning is performed on at least some of the plurality of training images by reflecting the feedback input.
제10항에 있어서,
상기 제어부는,
상기 기계 학습을 수행함에 있어서 상기 수신한 레이블링 입력을 원본 학습 이미지에 적용하고 원본 학습 이미지에 대해 학습을 수행하는 것을 특징으로 하는 장치.
The method of claim 10,
The control unit,
In performing the machine learning, the apparatus comprising: applying the received labeling input to an original training image and performing learning on the original training image.
제10항에 있어서,
상기 제어부는,
상기 각각의 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 일정 범위 이내의 스코어들을 선택하고, 상기 선택된 스코어들을 미리 설정된 기준 값과 비교하여 학습 이미지에 결함이 존재하는지 여부를 판단하며, 결함이 존재한다고 판단되면 결함이 존재하지 않는 학습 이미지와 다른 색상을 선택하고 상기 선택된 스코어의 값에 따라서 명도를 조절하여 히트 맵을 상기 입출력부를 통해 표시하는 것을 특징으로 하는 장치.
The method of claim 10,
The control unit,
Among the scores of pixels included in each of the training images, scores within a predetermined range are selected, and the selected scores are compared with a preset reference value to determine whether a defect exists in the training image, and that a defect exists. When it is determined, a color different from the training image in which the defect does not exist is selected, brightness is adjusted according to the value of the selected score, and the heat map is displayed through the input/output unit.
제13항에 있어서,
상기 제어부는,
상기 히트 맵 상에서 일정 기준 이하의 명도를 갖는 학습 이미지를 선택하는 입력을 수신하면, 상기 선택된 학습 이미지들에 대해 재학습을 수행하는 것을 특징으로 하는 장치.
The method of claim 13,
The control unit,
When receiving an input for selecting a training image having a brightness less than or equal to a predetermined reference on the heat map, retraining is performed on the selected training images.
제10항에 있어서,
상기 제어부는,
상기 각각의 학습 이미지에 포함된 픽셀들의 스코어들 중에서 상위 일정 범위 이내의 스코어들을 선택하고, 상기 선택된 스코어들에 따라서 상기 각각의 학습 이미지에 대응되는 색상을 결정한 후, 학습 이미지를 분류하는 클래스에 따라서 상기 각각의 학습 이미지에 대해 결정된 색상으로 분포도를 상기 입출력부를 통해 표시하는 것을 특징으로 하는 장치.
The method of claim 10,
The control unit,
After selecting scores within an upper predetermined range among the scores of pixels included in each of the training images, determining a color corresponding to each of the training images according to the selected scores, and then according to a class for classifying the training images. And displaying a distribution map in a color determined for each of the training images through the input/output unit.
제15항에 있어서,
상기 제어부는,
상기 분포도에 표현된 색상에 기초하여 학습 이미지의 클래스를 변경하는 입력을 수신하면, 상기 입력에 따라서 학습 이미지의 클래스를 변경한 후 재학습을 수행하는 것을 특징으로 하는 장치.
The method of claim 15,
The control unit,
When receiving an input for changing the class of the training image based on the color expressed in the distribution map, retraining is performed after changing the class of the training image according to the input.
KR1020180122116A 2018-10-12 2018-10-12 Method and apparatus for performing machine learning on image KR102175289B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180122116A KR102175289B1 (en) 2018-10-12 2018-10-12 Method and apparatus for performing machine learning on image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180122116A KR102175289B1 (en) 2018-10-12 2018-10-12 Method and apparatus for performing machine learning on image

Publications (2)

Publication Number Publication Date
KR20200044227A KR20200044227A (en) 2020-04-29
KR102175289B1 true KR102175289B1 (en) 2020-11-06

Family

ID=70466406

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180122116A KR102175289B1 (en) 2018-10-12 2018-10-12 Method and apparatus for performing machine learning on image

Country Status (1)

Country Link
KR (1) KR102175289B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102417531B1 (en) * 2020-07-08 2022-07-06 주식회사 메가젠임플란트 Apparatus for Generating Learning Data and Driving Method Thereof, and Computer Readable Recording Medium
KR102518913B1 (en) * 2022-12-14 2023-04-10 라온피플 주식회사 Method and apparatus for managing performance of artificial intelligence model

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000329685A (en) * 1999-05-24 2000-11-30 Horiba Ltd Apparatus and method for displaying blood cell sorting matrix diagram as well as recording medium with recorded blood cell sorting diagram display program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101208453B1 (en) * 2010-10-05 2012-12-05 순천향대학교 산학협력단 Method for detecting abnormal nozzle using self-sensing of piezo
KR20160096460A (en) * 2015-02-05 2016-08-16 삼성전자주식회사 Recognition system based on deep learning including a plurality of classfier and control method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000329685A (en) * 1999-05-24 2000-11-30 Horiba Ltd Apparatus and method for displaying blood cell sorting matrix diagram as well as recording medium with recorded blood cell sorting diagram display program

Also Published As

Publication number Publication date
KR20200044227A (en) 2020-04-29

Similar Documents

Publication Publication Date Title
US8860749B1 (en) Systems and methods for generating an icon
US20190139213A1 (en) Data generation apparatus, data generation method, and data generation program
KR102559021B1 (en) Apparatus and method for generating a defect image
JP2017211259A (en) Inspection device, inspection method and program
WO2015074521A1 (en) Devices and methods for positioning based on image detection
KR102175289B1 (en) Method and apparatus for performing machine learning on image
KR102486230B1 (en) Method and system for quality inspection of new product using deep learning
WO2018198233A1 (en) Learning device, image recognition device, learning method, and program
CA3139448A1 (en) Image correction method, device and system
CN116433634A (en) Industrial image anomaly detection method based on domain self-adaption
BR112021008735A2 (en) automatic real-time high dynamic range content analysis system
US20160125222A1 (en) System and method for identifying trees
KR102225099B1 (en) Apparatus and method for generating a defect image
CN113127349B (en) Software testing method and system
US20160078312A1 (en) Image processing method and apparatus using training dictionary
JP7336033B2 (en) Data augmentation-based matter analysis model learning device and method
KR102271418B1 (en) Method and system for auto training for product inspection
KR20200095767A (en) Method and apparatus for identifying object using multi- cameras
US11790509B2 (en) Method of building model of defect inspection for LED display
JP7362924B2 (en) Data augmentation-based spatial analysis model learning device and method
US11508143B2 (en) Automated salience assessment of pixel anomalies
KR20230089787A (en) Display Defect Detection System And Detection Method Of The Same
WO2020195958A1 (en) Learning method, determination method, program, learning system, learning data set generation method, and learning data set
KR102357729B1 (en) Method and apparatus for performing machine learning and test on plurality of images
JP2020003837A (en) Identification apparatus and identification method

Legal Events

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