KR20200108609A - Learning-data enhancement device for machine learning model and method for learning-data enhancement - Google Patents

Learning-data enhancement device for machine learning model and method for learning-data enhancement Download PDF

Info

Publication number
KR20200108609A
KR20200108609A KR1020190027465A KR20190027465A KR20200108609A KR 20200108609 A KR20200108609 A KR 20200108609A KR 1020190027465 A KR1020190027465 A KR 1020190027465A KR 20190027465 A KR20190027465 A KR 20190027465A KR 20200108609 A KR20200108609 A KR 20200108609A
Authority
KR
South Korea
Prior art keywords
data
virtual
learning
image
learning data
Prior art date
Application number
KR1020190027465A
Other languages
Korean (ko)
Other versions
KR102220174B1 (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 KR1020190027465A priority Critical patent/KR102220174B1/en
Publication of KR20200108609A publication Critical patent/KR20200108609A/en
Application granted granted Critical
Publication of KR102220174B1 publication Critical patent/KR102220174B1/en

Links

Images

Classifications

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

Abstract

The present invention relates to a machine learning training data augmentation device capable of significantly increasing the amount of training images while maintaining the label information of original images, and an augmentation method thereof. According to an embodiment of the present invention, the machine learning training data augmentation device comprises: a raw data collection part for collecting a plurality of raw data; a training data generation part for generating a plurality of training data by performing labeling on at least one object included in the collected plurality of raw data; and a virtual training data generation part for generating at least one virtual training data by inserting at least one object included in at least one of the generated plurality of training data into at least any one of the remaining training data.

Description

머신러닝 학습 데이터 증강장치 및 증강방법 {Learning-data enhancement device for machine learning model and method for learning-data enhancement}{Learning-data enhancement device for machine learning model and method for learning-data enhancement}

본 발명은 머신러닝 학습 데이터 증강장치 및 증강방법에 관한 것으로, 보다 구체적으로는 원래 이미지의 레이블 정보를 그대로 유지하면서 학습 이미지의 양을 대폭 증가시킬 수 있는 머신러닝 학습 데이터 증강장치 및 증강방법에 관한 것이다.The present invention relates to a machine learning learning data augmentation device and augmentation method, and more specifically, to a machine learning learning data augmentation device and augmentation method capable of significantly increasing the amount of training images while maintaining the label information of the original image. will be.

머신러닝(machine learning)이란 데이터를 이용해서 컴퓨터를 학습시키는 방법론이다. 머신러닝은 크게 지도학습, 비지도학습, 강화학습으로 나눌 수 있다. 이 중 지도학습은 데이터에 대한 레이블(명시적인 정답)이 주어진 상태에서 컴퓨터를 학습시키는 방법이다. Machine learning is a methodology for learning computers using data. Machine learning can be largely divided into supervised learning, unsupervised learning, and reinforcement learning. Among them, supervised learning is a method of learning a computer while given a label (an explicit correct answer) for data.

통상적으로, 머신러닝 모델은 많은 양의 데이터로 학습될수록 그 성능이 좋아진다. 한편, 머신러닝 모델 중 하나인 합성곱 신경망 (CNN, Convolutional Neural Network)은 이미지 검출 분야에서 우수한 성능을 보이고 있다. CNN은 수십만 개의 매개변수를 가지고 있기 때문에 충분한 수의 학습 이미지로 학습되어야 한다. In general, machine learning models perform better as they are trained with a large amount of data. Meanwhile, a convolutional neural network (CNN), one of the machine learning models, shows excellent performance in the field of image detection. Since CNN has hundreds of thousands of parameters, it must be trained with a sufficient number of training images.

그러나 지도학습의 경우, 그 레이블을 사람이 일일이 지정해주어야 하므로 많은 양의 학습 데이터셋을 구축하기 어렵다. 한편, 컴퓨터 비전 분야에서는 수백만개의 레이블을 갖춘 공공 데이터셋이 존재하나, 건설 현장과 관련된 학습 데이터셋은 구하기 어렵다는 문제가 있다.However, in the case of supervised learning, it is difficult to construct a large amount of training datasets because the label must be assigned by a person. Meanwhile, in the field of computer vision, public datasets with millions of labels exist, but there is a problem that it is difficult to obtain learning datasets related to construction sites.

특히, 드론으로 촬영한 건설 현장 이미지는, 옥외에서 자연광에 노출되기 때문에 날씨, 시각 등에 따라 같은 지역을 촬영한 이미지라도 그 차이가 크고, 또한 드론이 지속적인 움직이며 촬영하기 때문에 많은 변수가 발생하여, 학습 데이터셋을 구축하기 어려운 문제가 있다.In particular, since the construction site image taken with a drone is exposed to natural light outdoors, the difference is large even if the image taken in the same area depending on the weather, time, etc., and since the drone is continuously moving and shooting, many variables arise. There is a difficult problem to build a training dataset.

한국등록특허 제10-1864286호Korean Patent Registration No. 10-1864286

본 발명은 원래 이미지의 레이블 정보를 그대로 유지하면서 학습 이미지의 양을 대폭 증가시킬 수 있는 머신러닝 학습 데이터 증강장치 및 증강방법을 제공하는 것을 목적으로 한다.An object of the present invention is to provide a machine learning learning data augmentation apparatus and augmentation method capable of significantly increasing the amount of training images while maintaining label information of the original image.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치는, 복수의 원시 데이터를 수집하는 원시 데이터 수집부; 수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성하는 학습 데이터 생성부; 및, 생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성하는 가상 학습 데이터 생성부를 포함한다.Machine learning learning data augmentation apparatus according to an embodiment of the present invention, the raw data collection unit for collecting a plurality of raw data; A learning data generator configured to generate a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data; And, at least one object included in at least one of the plurality of generated training data is inserted into at least one of the remaining training data to generate at least one or more virtual training data. Includes wealth.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 가상 학습 데이터 생성부는, 확률 정보에 기반하여 가상 학습 데이터에 삽입될 객체를 선택하는 객체 선택 모듈과, 적어도 어느 하나의 학습 데이터에서 적어도 어느 하나의 객체를 추출하고, 추출된 객체를 이진화하여 제1 이진 이미지를 생성하고, 생성된 제1 이진 이미지를 임의의 위치에 배치하여 가상 이미지를 생성하는 가상 이미지 생성 모듈과, 상기 가상 이미지 생성 모듈에서 생성된 가상 이미지를 학습 데이터에 삽입하여 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 모듈을 포함한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the virtual learning data generation unit includes an object selection module for selecting an object to be inserted into the virtual learning data based on probability information, and at least one of the learning data. A virtual image generation module for generating a virtual image by extracting at least one object, generating a first binary image by binarizing the extracted object, and placing the generated first binary image at an arbitrary location; and the virtual image And a virtual training data generation module that generates virtual training data by inserting the virtual image generated in the generation module into the training data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 객체 선택 모듈은, 상기 학습 데이터 생성부에 의해 생성된 복수의 학습 데이터 각각에 포함된 복수의 객체에 대해, 각각의 객체가 학습 데이터에 출현한 빈도를 카운팅하여 상대적으로 출현 빈도가 작은 객체가 가상 학습 데이터에 삽입될 확률이 높도록 객체를 선택하는 것을 특징으로 한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the object selection module learns each object for a plurality of objects included in each of the plurality of learning data generated by the learning data generation unit. It is characterized by counting the frequency of appearance in the data, and selecting an object such that an object having a relatively small appearance frequency has a high probability of being inserted into the virtual learning data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 가상 이미지 생성 모듈은, 상기 제1 이진 이미지의 상하좌우에 임의의 크기를 갖는 0 픽셀로 구성된 행렬을 삽입하여 상기 제1 이진 이미지가 원본 학습 데이터의 객체 크기와 같은 크기로 배치되도록 하는 것을 특징으로 한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the virtual image generation module inserts a matrix composed of 0 pixels having an arbitrary size in the top, bottom, left, and right of the first binary image to generate the first binary image. Is arranged in the same size as the object size of the original training data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 가상 학습 데이터 생성 모듈은, 상기 복수의 학습 데이터에서 임의의 학습 데이터를 배경 이미지로 사용하고, 상기 배경 이미지에서 객체 부분을 이진화한 제2 이진 이미지를 생성하며, 상기 제2 이진 이미지와 상기 가상 이미지를 중첩하여 누적 이진 이미지를 생성하는 것을 특징으로 한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the virtual learning data generation module uses arbitrary learning data from the plurality of learning data as a background image, and binarizes an object portion in the background image. A second binary image is generated, and a cumulative binary image is generated by overlapping the second binary image and the virtual image.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 가상 학습 데이터 생성 모듈은, 상기 누적 이진 이미지에서 객체들 간의 중첩되어 가려진 부분이 존재하는 지를 점검하는 가려짐 점검을 수행하는 것을 특징으로 한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the virtual learning data generation module performs an occlusion check to check whether there is an overlapping and obstructed portion between objects in the accumulated binary image. To do.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 학습 데이터 생성부에서 생성된 학습 데이터와 상기 가상 학습 데이터 생성부에서 생성된 가상 학습 데이터 중 적어도 어느 하나를 변형하여 변형 학습 데이터를 생성하는 학습 데이터 변형부를 더 포함할 수 있다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, transformed learning data is transformed by transforming at least one of the learning data generated by the learning data generation unit and the virtual learning data generated by the virtual learning data generation unit. It may further include a learning data transforming unit to generate.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 학습 데이터 변형부는, 상기 학습 데이터의 이미지 조도와 상기 가상 학습 데이터의 이미지의 조도 중 적어도 어느 하나를 변환하는 조도 변환 모듈을 포함한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the learning data transforming unit includes an illuminance conversion module for converting at least one of an image illuminance of the learning data and an image illuminance of the virtual learning data. .

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 학습 데이터 변형부는, 상기 학습 데이터의 이미지 품질과 상기 가상 학습 데이터의 이미지 품질 중 적어도 어느 하나를 변환하는 블러 처리 모듈을 포함한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the training data transforming unit includes a blur processing module for converting at least one of an image quality of the training data and an image quality of the virtual training data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치에 있어서, 상기 학습 데이터 변형부는, 상기 학습 데이터의 이미지 크기와 상기 가상 학습 데이터의 이미지 크기 중 적어도 어느 하나를 변환하는 크기 변환 모듈을 포함한다.In the machine learning learning data augmentation apparatus according to an embodiment of the present invention, the training data transforming unit includes a size conversion module that converts at least one of an image size of the training data and an image size of the virtual training data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법은, 복수의 원시 데이터를 수집하는 원시 데이터 수집 단계; 수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성하는 학습 데이터 생성 단계; 및, 생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 단계;를 포함한다.Machine learning learning data augmentation method according to an embodiment of the present invention, the raw data collection step of collecting a plurality of raw data; A learning data generation step of generating a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data; And, at least one object included in at least one of the plurality of generated training data is inserted into at least one of the remaining training data to generate at least one or more virtual training data. Step; includes.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 가상 학습 데이터 생성 단계는, 확률 정보에 기반하여 가상 학습 데이터에 삽입될 객체를 선택하는 객체 선택 단계와, 적어도 어느 하나의 학습 데이터에서 적어도 어느 하나의 객체를 추출하고, 추출된 객체를 이진화하여 제1 이진 이미지를 생성하고, 생성된 제1 이진 이미지를 임의의 위치에 배치하여 가상 이미지를 생성하는 가상 이미지 생성 단계와, 상기 가상 이미지 생성 단계에서 생성된 가상 이미지를 학습 데이터에 삽입하여 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 단계를 포함한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the generating of the virtual learning data includes an object selection step of selecting an object to be inserted into the virtual learning data based on probability information, and at least one learning data. A virtual image generation step of generating a virtual image by extracting at least one object from, binarizing the extracted object to generate a first binary image, and placing the generated first binary image at an arbitrary location, and the virtual And generating virtual training data by inserting the virtual image generated in the image generating step into the training data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 객체 선택 단계는, 상기 학습 데이터 생성 단계에 의해 생성된 복수의 학습 데이터 각각에 포함된 복수의 객체에 대해, 각각의 객체가 학습 데이터에 출현한 빈도를 카운팅하여 상대적으로 출현 빈도가 작은 객체가 가상 학습 데이터에 삽입될 확률이 높도록 객체를 선택하는 것을 특징으로 한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, in the object selection step, each object learns for a plurality of objects included in each of the plurality of learning data generated by the learning data generation step. It is characterized by counting the frequency of appearance in the data, and selecting an object such that an object having a relatively small appearance frequency has a high probability of being inserted into the virtual learning data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 가상 이미지 생성 단계는, 상기 제1 이진 이미지의 상하좌우에 임의의 크기를 갖는 0 픽셀로 구성된 행렬을 삽입하여 상기 제1 이진 이미지가 원본 학습 데이터의 객체 크기와 같은 크기로 배치되도록 하는 것을 특징으로 한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the step of generating the virtual image includes inserting a matrix composed of 0 pixels having an arbitrary size on the top, bottom, left, and right of the first binary image to generate the first binary image. Is arranged in the same size as the object size of the original training data.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 가상 학습 데이터 생성 단계는, 상기 복수의 학습 데이터에서 임의의 학습 데이터를 배경 이미지로 사용하고, 상기 배경 이미지에서 객체 부분을 이진화한 제2 이진 이미지를 생성하며, 상기 제2 이진 이미지와 상기 가상 이미지를 중첩하여 누적 이진 이미지를 생성하는 것을 특징으로 한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the step of generating the virtual learning data includes using arbitrary training data from the plurality of training data as a background image, and binarizing an object portion from the background image. A second binary image is generated, and a cumulative binary image is generated by overlapping the second binary image and the virtual image.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 가상 학습 데이터 생성 단계는, 상기 누적 이진 이미지에서 객체들 간의 중첩되어 가려진 부분이 존재하는 지를 점검하는 가려짐 점검을 수행하는 것을 특징으로 한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the step of generating the virtual learning data comprises performing an occlusion check to check whether an overlapping and obstructed portion exists between objects in the accumulated binary image. To do.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 학습 데이터 생성 단계에서 생성된 학습 데이터와 상기 가상 학습 데이터 생성 단계에서 생성된 가상 학습 데이터 중 적어도 어느 하나를 변형하여 변형 학습 데이터를 생성하는 학습 데이터 변형 단계를 더 포함할 수 있다.In the machine learning learning data augmentation method according to an embodiment of the present invention, transformed learning data is transformed by transforming at least one of the learning data generated in the learning data generation step and the virtual learning data generated in the virtual learning data generation step. It may further include transforming the training data to be generated.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 학습 데이터 변형 단계는, 상기 학습 데이터의 이미지 조도와 상기 가상 학습 데이터의 이미지의 조도 중 적어도 어느 하나를 변환하는 조도 변환 단계를 포함한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the transforming of the training data includes an illuminance conversion step of converting at least one of an image illuminance of the training data and an image illuminance of the virtual learning data. do.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 학습 데이터 변형 단계는, 상기 학습 데이터의 이미지 품질과 상기 가상 학습 데이터의 이미지 품질 중 적어도 어느 하나를 변환하는 블러 처리 단계를 포함한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the transforming of the training data includes a blur processing step of converting at least one of an image quality of the training data and an image quality of the virtual training data. .

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 학습 데이터 변형 단계는, 상기 학습 데이터의 이미지 크기와 상기 가상 학습 데이터의 이미지 크기 중 적어도 어느 하나를 변환하는 크기 변환 단계를 포함한다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the transforming of the training data includes a size conversion step of converting at least one of an image size of the training data and an image size of the virtual training data. .

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법에 있어서, 상기 원시 데이터는 드론에 의해 촬영된 건설 현장의 이미지일 수 있다.In the machine learning learning data augmentation method according to an embodiment of the present invention, the raw data may be an image of a construction site photographed by a drone.

본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법은, 하드웨어와 결합되어, 복수의 원시 데이터를 수집하는 원시 데이터 수집 단계; 수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성하는 학습 데이터 생성 단계; 및, 생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 단계;를 실행시키기 위하여 컴퓨터가 판독 가능한 기록매체에 저장된 컴퓨터 프로그램에 의해 실행될 수 있다.Machine learning learning data augmentation method according to an embodiment of the present invention, combined with hardware, raw data collecting step of collecting a plurality of raw data; A learning data generation step of generating a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data; And, at least one object included in at least one of the plurality of generated training data is inserted into at least one of the remaining training data to generate at least one or more virtual training data. In order to execute the step; it may be executed by a computer program stored in a computer-readable recording medium.

기타 본 발명의 다양한 측면에 따른 구현예들의 구체적인 사항은 이하의 상세한 설명에 포함되어 있다.Other specific details of embodiments according to various aspects of the present invention are included in the detailed description below.

본 발명의 실시 형태에 따르면, 원래 이미지(학습 데이터)의 레이블 정보를 그대로 유지하면서 학습 이미지(학습 데이터, 가상 학습 데이터)의 양을 대폭 증가시키기 때문에 사람이 일일이 레이블 작업을 수행하지 않고도 대량의 머신러닝 학습 데이터셋을 구성할 수 있는 효과가 있다.According to an embodiment of the present invention, since the amount of training images (learning data, virtual learning data) is significantly increased while maintaining the label information of the original image (learning data), a large number of machines It has the effect of constructing a running training dataset.

또한, 대량의 머신러닝 학습 데이터셋을 확보할 수 있게 됨에 따라, 드론으로 촬영한 이미지에서 건설 현장 자원을 높은 정확도로 인식할 수 있게 되어, 드론을 이용한 건설 현장 모니터링을 자동으로 수행할 수 있도록 한다. In addition, as it becomes possible to secure a large amount of machine learning learning datasets, it is possible to recognize construction site resources with high accuracy from images taken with drones, allowing construction site monitoring using drones to be performed automatically. .

또한, 원본 이미지의 레이블 정보는 그대로 유지하면서, 촬영시 촬영 수단에 발생하는 다양한 환경(조도 변화, 움직임 발생, 높이 변화)을 반영하여 원본 이미지를 변형한 변형 학습 데이터들(변형 학습 데이터셋)을 생성할 수 있다. 따라서, 일일이 모든 촬영 조건이 반영된 대량의 원본 이미지를 획득할 필요가 없으며, 모든 촬영 조건이 반영된 대량의 원본 이미지에 대해 작업자가 일일이 레이블 작업을 수행하지 않아도 학습 데이터셋을 구성할 수 있는 효과가 있다.In addition, while maintaining the label information of the original image, transforming learning data (transformation learning dataset) that transforms the original image by reflecting various environments (illumination change, movement occurrence, height change) occurring in the photographing means during shooting are used. Can be generated. Therefore, it is not necessary to acquire a large amount of original images in which all shooting conditions are reflected, and there is an effect that the training data set can be configured even if the operator does not manually label a large amount of original images in which all shooting conditions are reflected. .

도 1은 본 발명의 일 실시예에 따른 머신러닝 학습 데이터 증강장치가 도시된 블록도이다.
도 2는 본 발명의 일 실시예에 따른 머신러닝 학습 데이터 증강장치의 가상 학습 데이터 생성부가 도시된 블록도이다.
도 3은 가상 학습 데이터 생성부에서 가상 학습 데이터를 생성하는 과정이 도시된 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치가 도시된 블록도이다.
도 5는 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치의 학습 데이터 변형부가 도시된 블록도이다.
도 6은 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치를 이용하여 증가된 머신러닝 학습 데이터로 학습된 머신러닝 프로그램이 입력된 이미지로부터 객체를 인식한 결과를 예시하는 도면이다.
도 7은 본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법이 도시된 순서도이다.
1 is a block diagram illustrating an apparatus for enhancing machine learning learning data according to an embodiment of the present invention.
2 is a block diagram illustrating a virtual learning data generation unit of an apparatus for enhancing machine learning learning data according to an embodiment of the present invention.
3 is a flowchart illustrating a process of generating virtual learning data in a virtual learning data generator.
4 is a block diagram illustrating an apparatus for enhancing machine learning learning data according to another embodiment of the present invention.
5 is a block diagram illustrating a learning data transformation unit of an apparatus for enhancing machine learning learning data according to another embodiment of the present invention.
6 is a diagram illustrating a result of recognizing an object from an input image of a machine learning program learned with increased machine learning data using a machine learning data augmentation apparatus according to another embodiment of the present invention.
7 is a flowchart illustrating a method of augmenting machine learning learning data according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예를 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The present invention is intended to illustrate specific embodiments and to be described in detail in the detailed description, since various transformations can be applied and various embodiments can be provided. However, this is not intended to limit the present invention to a specific embodiment, it is to be understood to include all conversions, equivalents, and substitutes included in the spirit and scope of the present invention.

본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 발명에서, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 이하, 도면을 참조하여 본 발명의 실시예에 따른 머신러닝 학습 데이터 증강장치 및 증강방법을 설명한다.The terms used in the present invention are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present invention, terms such as'comprise' or'have' are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance. Hereinafter, a machine learning learning data augmentation apparatus and augmentation method according to an embodiment of the present invention will be described with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 머신러닝 학습 데이터 증강장치가 도시된 블록도이다. 도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 머신러닝 학습 데이터 증강장치는, 원시 데이터 수집부(100)와, 학습 데이터 생성부(200)와, 가상 학습 데이터 생성부(300)를 포함한다.1 is a block diagram illustrating an apparatus for enhancing machine learning learning data according to an embodiment of the present invention. As shown in Fig. 1, the machine learning learning data augmentation apparatus according to an embodiment of the present invention includes a raw data collection unit 100, a learning data generation unit 200, and a virtual learning data generation unit 300. Includes.

원시 데이터 수집부(100)는 머신러닝 학습 데이터의 데이터셋(data set) 생성에 필요한 복수의 원시 데이터(raw data)를 수집한다. 여기서 원시 데이터는 이미지를 포함하는 데이터이다. 예를 들어, 원시 데이터는 드론에 의해 촬영된 건설 현장의 다양한 이미지일 수 있다. 동일한 건설 현장을 촬영한 이미지일지라도 촬영 수단인 드론의 높이, 촬영 당시의 날씨 환경, 드론의 속도 등 여러 가지 요소에 의해 다양한 원시 데이터를 수집할 수 있다. 물론, 이에 한정되지 않지는 않는다.The raw data collection unit 100 collects a plurality of raw data necessary for generating a data set of machine learning learning data. Here, the raw data is data including an image. For example, the raw data may be various images of a construction site captured by a drone. Even with the image of the same construction site, various raw data can be collected depending on various factors such as the height of the drone, which is a means of shooting, the weather environment at the time of shooting, and the speed of the drone. Of course, it is not limited thereto.

학습 데이터 생성부(200)는 수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성한다. 학습 데이터 생성부(200)는 복수의 객체들에 대한 클래스를 정의한 후, 원시 데이터 수집부(100)에 의해 수집된 복수의 원시 데이터에 포함된 복수의 객체에 대해 정의된 클래스에 따라 클래스와 위치를 지정하는 레이블링 작업을 수행한다. 클래스는 객체에 대한 크기 정보를 포함한다. 여기서, 레이블링 작업시 위치 지정을 하는 이유는, 이미지 내에 위치한 객체들에 대해 각 객체가 어느 클래스에 속하고, 이미지 내에 어느 위치에 있는지 좌표와 크기 정보를 레이블링을 통해 저장하여 머신러닝 프로그램이 이미지를 분석할 때 어떤 객체가 어느 위치에 있는지 학습할 수 있도록 하기 위함이다.The training data generation unit 200 generates a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data. After defining classes for a plurality of objects, the learning data generator 200 defines classes and positions according to classes defined for a plurality of objects included in the plurality of raw data collected by the raw data collection unit 100. Perform labeling to specify The class contains size information about the object. Here, the reason for specifying the location during labeling is that each object belongs to which class and which position in the image is stored through labeling, and the machine learning program saves the image. It is to be able to learn which object is in which position when analyzing.

예를 들어, 학습 데이터 생성부(200)는 드론에 의해 촬영된 건설 현장의 다양한 이미지에서 복수의 객체, 즉, 건설 현장의 주요 자원(인부, 장비, 자재 등)들의 클래스를 정의한 후, 이미지 내 자원들의 클래스와 위치를 지정하는 레이블링 작업을 수행한다.For example, the learning data generation unit 200 defines a plurality of objects, that is, classes of major resources (workers, equipment, materials, etc.) of the construction site from various images of the construction site captured by the drone, and then Labeling that designates the class and location of resources is performed.

가상 학습 데이터 생성부(300)는 학습 데이터 생성부(200)에서 생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성한다. 예를 들어, 특정 장비 A가 포함된 학습 데이터에서 장비 A를 추출하고, 추출된 장비 A의 이미지를 장비 A가 포함되지 않은 학습 데이터에 삽입하여 가상 학습 데이터를 생성한다. 이와 관련하여 도 2 및 도 3을 참조하여 설명한다.The virtual learning data generation unit 300 transfers at least one object included in at least one of the plurality of training data generated by the training data generation unit 200 to at least one of the remaining training data. Insert to generate at least one virtual learning data. For example, the device A is extracted from the training data including the specific device A, and the extracted image of the device A is inserted into the training data that does not include the device A to generate virtual training data. This will be described with reference to FIGS. 2 and 3.

도 2는 본 발명의 일 실시예에 따른 머신러닝 학습 데이터 증강장치의 가상 학습 데이터 생성부가 도시된 블록도이고, 도 3은 가상 학습 데이터 생성부에서 가상 학습 데이터를 생성하는 과정이 도시된 흐름도이다. 도 2에 도시된 바와 같이, 가상 학습 데이터 생성부(300)는, 객체 선택 모듈(310)과, 가상 이미지 생성 모듈(320)과, 가상 학습 데이터 생성 모듈(330)을 포함한다.FIG. 2 is a block diagram illustrating a virtual learning data generation unit of an apparatus for enhancing machine learning learning data according to an embodiment of the present invention, and FIG. 3 is a flowchart illustrating a process of generating virtual learning data in the virtual learning data generation unit. . As shown in FIG. 2, the virtual learning data generation unit 300 includes an object selection module 310, a virtual image generation module 320, and a virtual learning data generation module 330.

객체 선택 모듈(310)은 확률 정보에 기반하여 가상 학습 데이터에 삽입될 객체를 선택한다. 객체 선택 모듈(310)은 학습 데이터 생성부(200)에 의해 생성된 복수의 학습 데이터(이하, ‘학습 데이터셋’이라고도 함) 각각에 포함된 복수의 객체에 대해, 각각의 객체가 학습 데이터셋에 출현한 빈도를 카운팅하여 상대적으로 출현 빈도가 작은 객체가 가상 학습 데이터에 삽입될 확률이 높도록 한다. 상대적으로 출현 빈도가 작은 객체를 포함하는 가상 학습 데이터를 보다 많이 생성하여, 해당 객체에 대한 머신러닝(machine learning)의 학습 능력을 향상시키고, 전체적으로 학습 데이터셋에 포함된 모든 객체에 대해 학습 능력을 향상시킬 수 있다.The object selection module 310 selects an object to be inserted into the virtual learning data based on probability information. The object selection module 310 includes, for a plurality of objects included in each of a plurality of learning data (hereinafter, also referred to as'learning data set') generated by the learning data generation unit 200, each object is a learning data set. The frequency of appearance in is counted so that the probability of inserting an object with a relatively small appearance frequency into the virtual learning data is high. By generating more virtual learning data including objects with relatively low frequency of occurrence, machine learning's learning ability for the object is improved, and the learning ability for all objects included in the training dataset as a whole is improved. Can be improved.

구체적으로, 객체 선택 모듈(310)은 다음 식 (1)을 이용하여 가상 학습 데이터에 삽입될 객체를 선택한다.Specifically, the object selection module 310 selects an object to be inserted into the virtual learning data using the following equation (1).

식 (1) :

Figure pat00001
Equation (1):
Figure pat00001

여기서, Pi는 i번째 클래스에 속하는 객체가 새롭게 배치될 확률이고, ni는 학습 데이터셋에서 i번째 클래스에 해당하는 객체의 총 개수를 의미한다. Here, P i is the probability that the object belonging to the i-th class will be newly arranged, and n i is the total number of objects corresponding to the i-th class in the training dataset.

객체 선택 모듈(310)에 의해 선택되는 객체는 어느 하나의 객체가 아니라, 학습 데이터셋에 포함된 모든 객체일 수 있으며, 선택된 어느 하나의 객체가 가상 학습 데이터에 삽입될 확률을 결정한다. 이때, 어느 하나의 가상 학습 데이터에 특정 객체가 이미 포함된 경우에는 해당 객체를 삽입하지 않는다.The object selected by the object selection module 310 may not be any one object, but may be all objects included in the learning dataset, and a probability of inserting any one selected object into the virtual learning data is determined. In this case, if a specific object is already included in any one of the virtual learning data, the corresponding object is not inserted.

가상 이미지 생성 모듈(320)은 적어도 어느 하나의 학습 데이터에서 적어도 어느 하나의 객체를 추출하고, 추출된 객체를 이진화하여 이진 이미지를 생성하고, 생성된 이진 이미지를 임의의 위치에 배치하여 가상 이미지를 생성한다.The virtual image generation module 320 extracts at least one object from at least one learning data, generates a binary image by binarizing the extracted object, and places the generated binary image at an arbitrary location to generate a virtual image. Generate.

예를 들어, 도 3을 참조하면, 학습 데이터셋에 포함된 어느 하나의 학습 데이터에서 레이블 데이터를 이용하여 객체를 포함하는 부분(A1, B1)을 잘라내고, 객체 부분(O1, O2)과 객체 이외의 부분이 구분되도록 객체 부분에 0의 값을 갖는 픽셀(여백)을 삽입하여 이진 이미지(A2, B2)를 생성한다. 여기서, 레이블 데이터에는 이미지 내 객체들에 대한 클래스와 위치, 형태 정보들이 저장되어있기 때문에 객체에 해당하는 부분을 잘라내고 가상 이미지를 생성하는 과정을 자동화할 수 있다. 만약, 레이블 데이터가 없는 이미지를 사용하면 작업자가 다시 직접 레이블링을 하고 작업해야하는 번거로움이 있기 때문에 레이블 데이터를 이미 가지고 있는 이미지들을 사용하는 것이 바람직하다. For example, referring to FIG. 3, a part (A1, B1) including an object is cut out from any one of the training data included in the training data set using label data, and the object part (O1, O2) and the object Binary images A2 and B2 are generated by inserting a pixel (margin) having a value of 0 in the object part so that the other parts are distinguished. Here, since the label data stores class, location, and shape information for objects in the image, the process of cutting out a part corresponding to the object and creating a virtual image can be automated. If an image without label data is used, it is desirable to use images that already have label data because the operator has to manually label and work again.

생성된 이진 이미지(A2, B2)를 임의의 위치에 배치하여 가상 이미지(A3, B3)를 생성한다. 이때, 이진 이미지(A2, B2)의 상하좌우에 임의의 크기를 갖는 0 픽셀로만 구성된 행렬을 삽입하여 이진 이미지(A2, B2)가 원본 학습 데이터의 객체 크기와 같은 크기로 배치되도록 할 수 있다.The generated binary images (A2, B2) are placed in an arbitrary position to generate virtual images (A3, B3). At this time, a matrix composed of only 0 pixels having an arbitrary size is inserted in the upper, lower, left, and right sides of the binary images A2 and B2 so that the binary images A2 and B2 are arranged in the same size as the object size of the original training data.

가상 학습 데이터 생성 모듈(330)은 가상 이미지 생성 모듈(320)에서 생성된 가상 이미지를 학습 데이터에 삽입하여 가상 학습 데이터를 생성한다. The virtual learning data generation module 330 inserts the virtual image generated by the virtual image generation module 320 into the training data to generate virtual training data.

가상 학습 데이터 생성 모듈(330)은 학습 데이터셋에서 임의의 학습 데이터를 선택하고, 선택된 학습 데이터를 배경 이미지(C1)로 사용한다. 배경 이미지(C1)에서 객체(C11, C21)에 해당하는 부분을 이진화하여 이진 이미지(C2)를 생성한다. 생성된 이진 이미지(C2)와 가상 이미지 생성 모듈(320)에서 생성된 가상 이미지(A3, B3)를 중첩하여 누적 이진 이미지(C3)를 생성한다.The virtual training data generation module 330 selects random training data from the training data set, and uses the selected training data as a background image C1. A binary image C2 is generated by binarizing a portion of the background image C1 corresponding to the objects C11 and C21. The generated binary image C2 and the virtual images A3 and B3 generated by the virtual image generation module 320 are overlapped to generate the accumulated binary image C3.

이때, 누적 이진 이미지(C3) 생성시, 객체(O1, O2)의 크기를 리사이징(resizing)한다. 즉, 특정 객체의 길이, 높이 중 큰 값을 1로 가정하고 학습 데이터셋에서 특정 객체가 포함되어 있는 이미지들을 추출한 후, 각 이미지 별로 특정 객체와 특정 객체가 아닌 각 객체 간의 상대적인 크기의 비율을 객체의 길이, 높이 중 큰 값 기준으로 계산한 후, 추출된 모든 이미지에서 이 값을 평균하여 리사이징 테이블을 생성한다. 누적 이진 이미지(C3) 생성시 리사이징 테이블을 참조하여 객체(O1, O2)의 크기를 리사이징(resizing)하여 누적 이진 이미지(C3) 내의 객체들의 크기가 실제 크기와 유사하도록 한다.At this time, when generating the accumulated binary image C3, the sizes of the objects O1 and O2 are resized. That is, the larger of the length and height of a specific object is assumed to be 1, and images containing a specific object are extracted from the training dataset, the ratio of the relative size between a specific object and each object other than a specific object for each image After calculating based on the larger of the length and height of, the resizing table is created by averaging these values from all extracted images. When generating the accumulated binary image C3, the sizes of the objects O1 and O2 are resized by referring to the resizing table so that the sizes of the objects in the accumulated binary image C3 are similar to the actual size.

한편, 가상 이미지(A3, B3)에서 객체(O1, O2)는 임의의 위치에 배치된 것이므로, 이진 이미지(C2)와 가상 이미지(A3, B3)를 중첩할 때, 겹쳐서 객체의 적어도 일부가 가려질 수 있다. 따라서, 가상 학습 데이터 생성 모듈(330)은 생성된 누적 이진 이미지(C3)에서 객체들 간의 중첩되어 가려진 부분이 존재하는 지를 점검한다. (가려짐 점검) On the other hand, in the virtual images (A3, B3), the objects (O1, O2) are arranged in arbitrary positions, so when overlapping the binary image (C2) and the virtual images (A3, B3), at least part of the object is hidden by overlapping. I can lose. Accordingly, the virtual learning data generation module 330 checks whether there is an overlapping and obscured portion between objects in the generated accumulated binary image C3. (Occlusion check)

만약, 가려짐 검검에서 가려진 부분이 존재하는 것으로 확인되면, 가상 학습 데이터 생성 모듈(330)은 가상 이미지 생성 모듈(320)에 피드백한다. 이를 피드백 받은 가상 이미지 생성 모듈(320)은 이진 이미지(A2, B2)를 재배치하여 재차 가상 이미지를 생성한다. 가려짐 점검을 통과할 때까지 이러한 과정은 반복될 수 있다.If it is confirmed that the occluded portion exists in the occlusion inspection, the virtual learning data generation module 330 feeds back the virtual image generation module 320. The virtual image generation module 320 receiving this feedback rearranges the binary images A2 and B2 to generate a virtual image again. This process can be repeated until it passes the occlusion check.

가려짐 점검을 통과하면, 가상 학습 데이터 생성 모듈(330)은 누적 이진 이미지(C3)에 객체(O1, O2) 이미지의 픽셀을 삽입한다. 이 때, 배경 부분은 배경 이미지(C)가 삽입되고, 객체(O1, O2) 이미지와 배경 이미지(C)가 합성되어 가상 학습 데이터를 구성한다.Upon passing the occlusion check, the virtual learning data generation module 330 inserts pixels of the images of the objects O1 and O2 into the accumulated binary image C3. At this time, the background image C is inserted into the background portion, and the object (O1, O2) images and the background image (C) are combined to form virtual learning data.

이상에서, 가상 학습 데이터 생성시, 삽입되는 객체(O1, O2)의 레이블 정보는 그대로 보존되므로, 머신러닝의 학습에는 지장이 없다.In the above, when the virtual learning data is generated, the label information of the inserted objects O1 and O2 is preserved as it is, so there is no obstacle to machine learning learning.

상기와 같은 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치는, 원래 이미지(학습 데이터)의 레이블 정보를 그대로 유지하면서 학습 이미지(학습 데이터, 가상 학습 데이터)의 양을 대폭 증가시키기 때문에 사람이 일일이 레이블 작업을 수행하지 않고도 대량의 머신러닝 학습 데이터셋을 구성할 수 있는 효과가 있다.The machine learning learning data augmentation apparatus according to another embodiment of the present invention as described above greatly increases the amount of learning images (learning data, virtual learning data) while maintaining the label information of the original image (learning data). This has the effect of being able to construct a large number of machine learning training datasets without performing labeling tasks.

또한, 대량의 머신러닝 학습 데이터셋을 확보할 수 있게 됨에 따라, 드론으로 촬영한 이미지에서 건설 현장 자원을 높은 정확도로 인식할 수 있게 되어, 드론을 이용한 건설 현장 모니터링을 자동으로 수행할 수 있도록 한다. 물론, 이에 한정되지 않고 모니터링이 필요한 다양한 작업 환경에 적용될 수 있다.In addition, as it becomes possible to secure a large amount of machine learning learning datasets, it is possible to recognize construction site resources with high accuracy from images taken with drones, allowing construction site monitoring using drones to be performed automatically. . Of course, it is not limited thereto and can be applied to various work environments requiring monitoring.

다음으로, 도 4 및 도 5를 참조하여 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치를 설명한다. 도 4는 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치가 도시된 블록도이고, 도 5는 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치의 학습 데이터 변형부가 도시된 블록도이다.Next, a machine learning learning data augmentation apparatus according to another embodiment of the present invention will be described with reference to FIGS. 4 and 5. FIG. 4 is a block diagram illustrating a machine learning learning data augmentation apparatus according to another embodiment of the present invention, and FIG. 5 is a block diagram showing a learning data transformation unit of a machine learning learning data augmentation apparatus according to another embodiment of the present invention. to be.

도 4에 도시된 바와 같이, 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치는, 원시 데이터 수집부(100)와, 학습 데이터 생성부(200)와, 가상 학습 데이터 생성부(300)와, 학습 데이터 변형부(400)를 포함한다.As shown in FIG. 4, a machine learning learning data augmentation apparatus according to another embodiment of the present invention includes a raw data collection unit 100, a learning data generation unit 200, and a virtual learning data generation unit 300. And, it includes a learning data transforming unit 400.

본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치에서 원시 데이터 수집부(100)와 학습 데이터 생성부(200)와 가상 학습 데이터 생성부(300)는 전술한 일 실시예와 실질적으로 동일하므로 반복 설명은 생략한다.In the machine learning learning data augmentation apparatus according to another embodiment of the present invention, the raw data collection unit 100, the learning data generation unit 200, and the virtual learning data generation unit 300 are substantially the same as in the above-described embodiment. Repeated description is omitted.

학습 데이터 변형부(400)는 학습 데이터 생성부(200)에서 생성된 학습 데이터와 가상 학습 데이터 생성부(300)에서 생성된 가상 학습 데이터 중 적어도 어느 하나를 변형하여 변형 학습 데이터를 생성한다.The training data transforming unit 400 transforms at least one of the training data generated by the training data generating unit 200 and the virtual training data generated by the virtual training data generating unit 300 to generate transformed training data.

학습 데이터 변형부(400)는 학습 데이터, 가상 학습 데이터의 이미지 조도, 블러 이미지, 이미지 크기를 인위적으로 변형하여 변형 학습 데이터를 생성한다. 이를 위해 학습 데이터 변형부(400)는 조도 변환 모듈(410)과 블러 처리 모듈(420)과 크기 변환 모듈(430)을 포함한다.The training data transforming unit 400 artificially transforms the training data, the image illuminance of the virtual training data, the blur image, and the image size to generate transformed training data. To this end, the training data transforming unit 400 includes an illuminance conversion module 410, a blur processing module 420, and a size conversion module 430.

조도 변환 모듈(410)은 이미지 강도 변화(Intensity variation)를 이용하여 학습 데이터와 가상 학습 데이터의 이미지(이하, ‘원본 이미지’라고도 함)의 조도를 변환한다. 구체적으로 조도 변환 모듈(410)은 원본 이미지의 모든 픽셀에 같은 값을 더하거나 빼서 조도가 변환된 변형 학습 데이터를 생성한다.The illuminance conversion module 410 converts the illuminance of the training data and the image of the virtual training data (hereinafter, also referred to as “original image”) using image intensity variation. Specifically, the illuminance conversion module 410 generates transformed learning data in which illuminance is converted by adding or subtracting the same value to all pixels of the original image.

예를 들어, 드론에 의해 촬영된 동일한 건설 현장 이미지일지라도 자연광 노출에 따른 조도 변화가 발생한다. 조도 변환 모듈(410)은 이러한 조도 변화를 학습 데이터와 가상 학습 데이터에 반영한 학습 데이터셋을 구성하도록 하고, 이를 이용하여 머신러닝의 학습시킴으로써, 다양한 조도를 갖는 건설 현장 이미지에서 다양한 객체를 검출할 수 있도록 할 수 있다.For example, even with the same construction site image taken by a drone, a change in illumination occurs due to exposure to natural light. The illuminance conversion module 410 configures a learning dataset that reflects the change in illuminance in the learning data and the virtual learning data, and by learning machine learning using this, it is possible to detect various objects from images of construction sites having various illuminances. I can do it.

블러 처리 모듈(420)은 원본 이미지의 품질을 변화시켜서 변형 학습 데이터를 생성한다. 구체적으로 블러 처리 모듈(420)은 원본 이미지에 가우시안 필터(Gaussian filter)를 적용하여 인위적으로 원본 이미지에 블러 이미지(blurred image) 처리하여 변형 학습 데이터를 생성한다. The blur processing module 420 generates transformed learning data by changing the quality of the original image. Specifically, the blur processing module 420 applies a Gaussian filter to the original image and artificially processes a blurred image on the original image to generate transformed learning data.

예를 들어, 드론에 의해 촬영된 동일한 건설 현장 이미지일지라도 속도 변화 또는 외력에 의한 진동 발생 등과 같은 드론의 움직임에 따른 품질 변화가 발생한다. 블러 처리 모듈(420)은 이러한 품질 변화를 학습 데이터와 가상 학습 데이터에 반영한 학습 데이터셋을 구성하도록 하고, 이를 이용하여 머신러닝의 학습시킴으로써, 다양한 품질을 갖는 건설 현장 이미지에서 다양한 객체를 검출할 수 있도록 할 수 있다. For example, even in the same construction site image captured by the drone, quality changes according to the movement of the drone, such as speed change or vibration due to external force, occur. The blur processing module 420 configures a training dataset that reflects this quality change in the training data and the virtual training data, and uses this to learn machine learning, thereby detecting various objects from images of construction sites having various qualities. Can be.

크기 변환 모듈(430)은 원본 이미지의 크기를 변화시켜서 변형 학습 데이터를 생성한다. 구체적으로 크기 변환 모듈(430)은 원본 이미지의 가로 세로 비율(aspect ratio)를 유지하면서 원본 이미지의 크기를 축소 또는 확대하여 변형 학습 데이터를 생성한다. The size conversion module 430 generates transformed learning data by changing the size of the original image. Specifically, the size conversion module 430 generates transformation learning data by reducing or expanding the size of the original image while maintaining the aspect ratio of the original image.

예를 들어, 드론에 의해 촬영된 동일한 건설 현장 이미지일지라도 드론의 비행 높이에 따라 객체 크기가 변화된다. 크기 변환 모듈(430)은 이러한 드론의 비행 높이에 따른 객체 크기 변화를 학습 데이터와 가상 학습 데이터에 반영한 학습 데이터셋을 구성하도록 하고, 이를 이용하여 머신러닝의 학습시킴으로써, 드론의 비행 높이에 관계없이 건설 현장 이미지에서 다양한 객체를 검출할 수 있도록 할 수 있다.For example, even with the same construction site image taken by the drone, the object size changes according to the flying height of the drone. The size conversion module 430 configures a learning dataset in which the object size change according to the flight height of the drone is reflected in the training data and the virtual learning data, and by learning machine learning using this, regardless of the flying height of the drone. Various objects can be detected in the construction site image.

조도 변환 모듈(410), 블러 처리 모듈(420), 크기 변환 모듈(430)이 원본 이미지를 변형하더라도 이미지 내의 객체 위치는 변함이 없기 때문에 원본 이미지의 레이블 정보는 그대로 보존된다.Even if the illumination conversion module 410, the blur processing module 420, and the size conversion module 430 deform the original image, the position of the object in the image remains unchanged, so the label information of the original image is preserved as it is.

도 6에는 증강된 머신러닝 학습 데이터로 학습된 머신러닝 프로그램이 입력된 이미지로부터 객체를 인식한 결과가 예시되어 있다.6 illustrates a result of recognizing an object from an input image by a machine learning program trained with augmented machine learning learning data.

상기와 같은, 본 발명의 다른 실시예에 따른 머신러닝 학습 데이터 증강장치는, 원본 이미지의 레이블 정보는 그대로 유지하면서, 촬영시 촬영 수단에 발생하는 다양한 환경(조도 변화, 움직임 발생, 높이 변화)을 반영하여 원본 이미지를 변형한 변형 학습 데이터들(변형 학습 데이터셋)을 생성할 수 있다. 따라서, 일일이 모든 촬영 조건이 반영된 대량의 원본 이미지를 획득할 필요가 없으며, 또한, 모든 촬영 조건이 반영된 대량의 원본 이미지에 대해 작업자가 일일이 레이블 작업을 수행하지 않아도 학습 데이터셋을 구성할 수 있는 효과가 있다.As described above, the machine learning learning data augmentation apparatus according to another embodiment of the present invention maintains the label information of the original image as it is, while maintaining various environments (illumination change, movement occurrence, height change) occurring in the photographing means during shooting. It is possible to generate transformed learning data (transformed learning datasets) in which the original image is transformed by reflecting. Therefore, it is not necessary to acquire a large amount of original images that reflect all the shooting conditions, and also, the training data set can be configured without the operator performing labeling for a large amount of original images that reflect all shooting conditions. There is.

다음으로, 도 7을 참조하여 본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법을 설명한다. 도 7은 본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법이 도시된 순서도이다.Next, a machine learning learning data augmentation method according to an embodiment of the present invention will be described with reference to FIG. 7. 7 is a flowchart illustrating a method of augmenting machine learning learning data according to an embodiment of the present invention.

도 7에 도시된 바와 같이, 본 발명의 실시예에 따른 머신러닝 학습 데이터 증강방법은, 원시 데이터 수집 단계(S100), 학습 데이터 생성 단계(S200), 가상 학습 데이터 생성 단계(S300), 변형 학습 데이터 생성 단계(S400)를 포함한다.As shown in Figure 7, the machine learning learning data augmentation method according to an embodiment of the present invention includes a raw data collection step (S100), a learning data generation step (S200), a virtual learning data generation step (S300), and transformation learning. It includes a data generation step (S400).

원시 데이터 수집 단계(S100)에서는, 머신러닝 학습 데이터의 데이터셋(data set) 생성에 필요한 복수의 원시 데이터(raw data)를 수집한다. 여기서 원시 데이터는 이미지를 포함하는 데이터이다. 예를 들어, 원시 데이터는 드론에 의해 촬영된 건설 현장의 다양한 이미지일 수 있다. In the raw data collection step (S100), a plurality of raw data necessary for generating a data set of machine learning training data is collected. Here, the raw data is data including an image. For example, the raw data may be various images of a construction site captured by a drone.

학습 데이터 생성 단계(S200)에서는, 수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성한다. In the learning data generation step (S200), a plurality of training data is generated by labeling at least one or more objects included in the collected plurality of raw data.

가상 학습 데이터 생성 단계(S300)에서는, 생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성한다.In the virtual learning data generation step (S300), at least one object included in at least one of the plurality of generated training data is inserted into at least one of the remaining training data to perform at least one virtual learning. Generate data.

가상 학습 데이터 생성 단계(S300)는 객체 선택 단계(S310)와, 가상 이미지 생성 단계(S320)와, 가상 학습 데이터 생성 단계(S330)를 포함한다.The virtual learning data generation step (S300) includes an object selection step (S310), a virtual image generation step (S320), and a virtual learning data generation step (S330).

객체 선택 단계(S310)는 확률 정보에 기반하여 가상 학습 데이터에 삽입될 객체를 선택한다. 객체 선택 단계(S310)는 학습 데이터 생성 단계(S200)에서 생성된 복수의 학습 데이터 각각에 포함된 복수의 객체에 대해, 각각의 객체가 출현한 빈도를 카운팅하여 상대적으로 출현 빈도가 작은 객체가 가상 학습 데이터에 삽입될 확률이 높도록 한다.In the object selection step S310, an object to be inserted into the virtual learning data is selected based on probability information. In the object selection step (S310), for a plurality of objects included in each of the plurality of training data generated in the training data generation step (S200), the frequency of occurrence of each object is counted, and an object with a relatively small appearance frequency is virtual. The probability of being inserted into the training data is high.

구체적으로, 객체 선택 단계(S310)는 다음 식 (1)을 이용하여 가상 학습 데이터에 삽입될 객체를 선택한다.Specifically, in the object selection step S310, an object to be inserted into the virtual learning data is selected using the following equation (1).

식 (1) :

Figure pat00002
Equation (1):
Figure pat00002

여기서, Pi는 i번째 클래스에 속하는 객체가 새롭게 배치될 확률이고, ni는 학습 데이터셋에서 i번째 클래스에 해당하는 객체의 총 개수를 의미한다. Here, P i is the probability that the object belonging to the i-th class will be newly arranged, and n i is the total number of objects corresponding to the i-th class in the training dataset.

가상 이미지 생성 단계(S320)는 적어도 어느 하나의 학습 데이터에서 적어도 어느 하나의 객체를 추출하고, 추출된 객체를 이진화하여 이진 이미지를 생성하고, 생성된 이진 이미지를 임의의 위치에 배치하여 가상 이미지를 생성한다.In the virtual image generation step (S320), at least one object is extracted from the at least one learning data, the extracted object is binarized to generate a binary image, and the generated binary image is placed in an arbitrary position to generate a virtual image. Generate.

예를 들어, 도 3을 참조하면, 학습 데이터셋에 포함된 어느 하나의 학습 데이터에서 레이블 데이터를 이용하여 객체를 포함하는 부분(A1, B1)을 잘라내고, 객체 부분(O1, O2)과 객체 이외의 부분이 구분되도록 객체 부분에 0의 값을 갖는 픽셀(여백)을 삽입하여 이진 이미지(A2, B2)를 생성한다. 생성된 이진 이미지(A2, B2)를 임의의 위치에 배치하여 가상 이미지(A3, B3)를 생성한다. 이때, 이진 이미지(A2, B2)의 상하좌우에 임의의 크기를 갖는 0 픽셀로만 구성된 행렬을 삽입하여 이진 이미지(A2, B2)가 원본 학습 데이터의 객체 크기와 같은 크기로 배치되도록 할 수 있다.For example, referring to FIG. 3, a part (A1, B1) including an object is cut out from any one of the training data included in the training data set using label data, and the object part (O1, O2) and the object Binary images A2 and B2 are generated by inserting a pixel (margin) having a value of 0 in the object part so that the other parts are distinguished. The generated binary images (A2, B2) are placed in an arbitrary position to generate virtual images (A3, B3). At this time, a matrix composed of only 0 pixels having an arbitrary size is inserted in the upper, lower, left, and right sides of the binary images A2 and B2 so that the binary images A2 and B2 are arranged in the same size as the object size of the original training data.

가상 학습 데이터 생성 단계(S330)는 가상 이미지를 학습 데이터에 삽입하여 가상 학습 데이터를 생성한다. 가상 학습 데이터 생성 단계(S330)는 학습 데이터셋에서 임의의 학습 데이터를 선택하고, 선택된 학습 데이터를 배경 이미지(C1)로 사용한다. 배경 이미지(C1)에서 객체(C11, C21)에 해당하는 부분을 이진화하여 이진 이미지(C2)를 생성한다. 생성된 이진 이미지(C2)와 가상 이미지 생성 단계(S320)에서 생성된 가상 이미지(A3, B3)를 중첩하여 누적 이진 이미지(C3)를 생성한다. 이때, 누적 이진 이미지(C3) 생성시, 전술한 리사이징 테이블을 참조하여 객체(O1, O2)의 크기를 리사이징(resizing)하여 누적 이진 이미지(C3) 내의 객체들의 크기가 실제 크기와 유사하도록 한다.In the step of generating virtual learning data (S330), virtual learning data is generated by inserting a virtual image into the learning data. In the virtual learning data generation step (S330), random training data is selected from the training data set, and the selected training data is used as a background image C1. A binary image C2 is generated by binarizing the portions of the background image C1 corresponding to the objects C11 and C21. The generated binary image C2 and the virtual images A3 and B3 generated in the virtual image generation step S320 are overlapped to generate a cumulative binary image C3. At this time, when generating the accumulated binary image C3, the sizes of the objects O1 and O2 are resized with reference to the resizing table so that the sizes of the objects in the accumulated binary image C3 are similar to the actual size.

또한, 가상 학습 데이터 생성 단계(S330)는 생성된 누적 이진 이미지(C3)에서 객체들 간의 중첩되어 가려진 부분이 존재하는 지를 점검한다. (가려짐 점검)In addition, in the virtual learning data generation step (S330), it is checked whether there is an overlapping and obscured part between objects in the generated accumulated binary image C3. (Occlusion check)

만약, 가려짐 검검에서 가려진 부분이 존재하는 것으로 확인되면, 가상 이미지 생성 단계(S320)로 돌아가서 이진 이미지(A2, B2)를 재배치하여 재차 가상 이미지를 생성한다. 가려짐 점검을 통과할 때까지 이러한 과정은 반복될 수 있다.If it is confirmed that the occluded portion exists in the occlusion inspection, the process returns to the virtual image generation step S320 and the binary images A2 and B2 are rearranged to generate a virtual image again. This process can be repeated until it passes the occlusion check.

가려짐 점검을 통과하면, 가상 학습 데이터 생성 단계(S330)는 누적 이진 이미지(C3)에 객체(O1, O2) 이미지의 픽셀을 삽입한다. 이 때, 배경 부분은 배경 이미지(C)가 삽입되고, 객체(O1, O2) 이미지와 배경 이미지(C)가 합성되어 가상 학습 데이터를 구성한다.After passing the occlusion check, the virtual learning data generation step (S330) inserts the pixels of the images of the objects O1 and O2 into the accumulated binary image C3. At this time, the background image C is inserted into the background portion, and the object (O1, O2) images and the background image (C) are combined to form virtual learning data.

변형 학습 데이터 생성 단계(S400)에서는, 학습 데이터 생성 단계(S200)에서 생성된 학습 데이터와 가상 학습 데이터 생성 단계(S300)에서 생성된 가상 학습 데이터 중 적어도 어느 하나를 변형하여 변형 학습 데이터를 생성한다.In the transformed learning data generating step (S400), transformed training data is generated by transforming at least one of the training data generated in the training data generating step S200 and the virtual training data generated in the virtual training data generating step S300. .

변형 학습 데이터 생성 단계(S400)는 학습 데이터, 가상 학습 데이터의 이미지 조도, 블러 이미지, 이미지 크기를 인위적으로 변형하여 변형 학습 데이터를 생성한다. 이를 위해 변형 학습 데이터 생성 단계(S400)는 조도 변환 단계(S410)과 블러 처리 단계(S420)과 크기 변환 단계(S430)을 포함한다. 각 단계(S410 ~ S430)는 일련의 순서를 규정하는 단계가 아니며, 각각의 단계는 순서에 관계없이 수행될 수 있다.In the transformed learning data generation step (S400), transformed training data is generated by artificially transforming the training data, the image illuminance of the virtual training data, the blur image, and the image size. To this end, the transformed learning data generating step (S400) includes an illuminance conversion step (S410), a blur processing step (S420), and a size conversion step (S430). Each step (S410 to S430) is not a step defining a sequence of steps, and each step may be performed regardless of the sequence.

조도 변환 단계(S410)은 이미지 강도 변화(Intensity variation)를 이용하여 학습 데이터와 가상 학습 데이터의 이미지(이하, ‘원본 이미지’라고도 함)의 조도를 변환한다. 구체적으로 조도 변환 단계(S410)은 원본 이미지의 모든 픽셀에 같은 값을 더하거나 빼서 조도가 변환된 변형 학습 데이터를 생성한다.In the illuminance conversion step S410, the illuminance of the training data and the image of the virtual training data (hereinafter, also referred to as “original image”) is converted by using an image intensity variation. Specifically, in the illuminance conversion step S410, the transformed learning data in which the illuminance is converted is generated by adding or subtracting the same value to all pixels of the original image.

블러 처리 단계(S420)은 원본 이미지의 품질을 변화시켜서 변형 학습 데이터를 생성한다. 구체적으로 블러 처리 단계(S420)은 원본 이미지에 가우시안 필터(Gaussian filter)를 적용하여 인위적으로 원본 이미지에 블러 이미지(blurred image) 처리하여 변형 학습 데이터를 생성한다. In the blur processing step S420, transformed learning data is generated by changing the quality of the original image. Specifically, in the blur processing step S420, a Gaussian filter is applied to the original image to artificially process a blurred image on the original image to generate transformed learning data.

크기 변환 단계(S430)은 원본 이미지의 크기를 변화시켜서 변형 학습 데이터를 생성한다. 구체적으로 크기 변환 단계(S430)은 원본 이미지의 가로 세로 비율(aspect ratio)를 유지하면서 원본 이미지의 크기를 축소 또는 확대하여 변형 학습 데이터를 생성한다. In the size conversion step S430, transformed learning data is generated by changing the size of the original image. Specifically, in the size conversion step S430, the size of the original image is reduced or enlarged while maintaining the aspect ratio of the original image to generate transformed learning data.

조도 변환 단계(S410), 블러 처리 단계(S420), 크기 변환 단계(S430)이 원본 이미지를 변형하더라도 이미지 내의 객체 위치는 변함이 없기 때문에 원본 이미지의 레이블 정보는 그대로 보존된다.Even if the illuminance conversion step S410, the blur processing step S420, and the size conversion step S430 deform the original image, the position of the object in the image remains unchanged, so the label information of the original image is preserved as it is.

이상, 본 발명의 일 실시예에 대하여 설명하였으나, 해당 기술 분야에서 통상의 지식을 가진 자라면 특허청구범위에 기재된 본 발명의 사상으로부터 벗어나지 않는 범위 내에서, 구성 요소의 부가, 변경, 삭제 또는 추가 등에 의해 본 발명을 다양하게 수정 및 변경시킬 수 있을 것이며, 이 또한 본 발명의 권리범위 내에 포함된다고 할 것이다.As described above, one embodiment of the present invention has been described, but those of ordinary skill in the relevant technical field add, change, delete or add components within the scope not departing from the spirit of the present invention described in the claims. Various modifications and changes can be made to the present invention by means of the like, and it will be said that this is also included within the scope of the present invention.

100: 원시 데이터 수집부 200: 학습 데이터 생성부
300: 가상 학습 데이터 생성부 310: 객체 선택 모듈
320: 가상 이미지 생성 모듈 330: 가상 학습 데이터 생성 모듈
400: 학습 데이터 변형부
100: raw data collection unit 200: training data generation unit
300: virtual learning data generation unit 310: object selection module
320: virtual image generation module 330: virtual training data generation module
400: training data transformation unit

Claims (22)

복수의 원시 데이터를 수집하는 원시 데이터 수집부;
수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성하는 학습 데이터 생성부; 및,
생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성하는 가상 학습 데이터 생성부;를 포함하는 머신러닝 학습 데이터 증강장치.
A raw data collection unit for collecting a plurality of raw data;
A learning data generator configured to generate a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data; And,
A virtual learning data generator for generating at least one or more virtual learning data by inserting at least one object included in at least one of the generated learning data into at least one of the remaining learning data; Machine learning learning data augmentation device comprising a.
청구항 1에 있어서, 상기 가상 학습 데이터 생성부는,
확률 정보에 기반하여 가상 학습 데이터에 삽입될 객체를 선택하는 객체 선택 모듈과,
적어도 어느 하나의 학습 데이터에서 적어도 어느 하나의 객체를 추출하고, 추출된 객체를 이진화하여 제1 이진 이미지를 생성하고, 생성된 제1 이진 이미지를 임의의 위치에 배치하여 가상 이미지를 생성하는 가상 이미지 생성 모듈과,
상기 가상 이미지 생성 모듈에서 생성된 가상 이미지를 학습 데이터에 삽입하여 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 모듈을 포함하는 머신러닝 학습 데이터 증강장치.
The method of claim 1, wherein the virtual learning data generation unit,
An object selection module that selects an object to be inserted into the virtual learning data based on probability information,
A virtual image that extracts at least one object from at least one training data, generates a first binary image by binarizing the extracted object, and creates a virtual image by placing the generated first binary image at an arbitrary location Generation module,
Machine learning learning data augmentation apparatus comprising a virtual learning data generation module for generating virtual learning data by inserting the virtual image generated by the virtual image generation module into the training data.
청구항 2에 있어서, 상기 객체 선택 모듈은,
상기 학습 데이터 생성부에 의해 생성된 복수의 학습 데이터 각각에 포함된 복수의 객체에 대해, 각각의 객체가 학습 데이터에 출현한 빈도를 카운팅하여 상대적으로 출현 빈도가 작은 객체가 가상 학습 데이터에 삽입될 확률이 높도록 객체를 선택하는 것을 특징으로 하는 머신러닝 학습 데이터 증강장치.
The method of claim 2, wherein the object selection module,
For a plurality of objects included in each of the plurality of learning data generated by the learning data generation unit, the frequency of each object appearing in the learning data is counted, and an object having a relatively small appearance frequency is inserted into the virtual learning data. Machine learning learning data augmentation device, characterized in that selecting an object to have a high probability.
청구항 2에 있어서, 상기 가상 이미지 생성 모듈은,
상기 제1 이진 이미지의 상하좌우에 임의의 크기를 갖는 0 픽셀로 구성된 행렬을 삽입하여 상기 제1 이진 이미지가 원본 학습 데이터의 객체 크기와 같은 크기로 배치되도록 하는 것을 특징으로 하는 머신러닝 학습 데이터 증강장치.
The method of claim 2, wherein the virtual image generation module,
Machine learning learning data augmentation, characterized in that the first binary image is arranged to have the same size as the object size of the original training data by inserting a matrix composed of 0 pixels having an arbitrary size on the top, bottom, left, and right of the first binary image Device.
청구항 2에 있어서, 상기 가상 학습 데이터 생성 모듈은,
상기 복수의 학습 데이터에서 임의의 학습 데이터를 배경 이미지로 사용하고, 상기 배경 이미지에서 객체 부분을 이진화한 제2 이진 이미지를 생성하며, 상기 제2 이진 이미지와 상기 가상 이미지를 중첩하여 누적 이진 이미지를 생성하는 것을 특징으로 하는 머신러닝 학습 데이터 증강장치.
The method of claim 2, wherein the virtual learning data generation module,
Using random training data from the plurality of training data as a background image, generating a second binary image obtained by binarizing an object portion from the background image, and overlapping the second binary image with the virtual image to obtain a cumulative binary image. Machine learning learning data augmentation device, characterized in that to generate.
청구항 5에 있어서, 상기 가상 학습 데이터 생성 모듈은,
상기 누적 이진 이미지에서 객체들 간의 중첩되어 가려진 부분이 존재하는 지를 점검하는 가려짐 점검을 수행하는 것을 특징으로 하는 머신러닝 학습 데이터 증강장치.
The method of claim 5, wherein the virtual learning data generation module,
A machine learning learning data augmentation apparatus, characterized in that performing an occlusion check to check whether an overlapping and obstructed portion exists between objects in the accumulated binary image.
청구항 1에 있어서,
상기 학습 데이터 생성부에서 생성된 학습 데이터와 상기 가상 학습 데이터 생성부에서 생성된 가상 학습 데이터 중 적어도 어느 하나를 변형하여 변형 학습 데이터를 생성하는 학습 데이터 변형부를 더 포함하는 머신러닝 학습 데이터 증강장치.
The method according to claim 1,
Machine learning learning data augmentation apparatus further comprising a learning data transforming unit for generating transformed learning data by transforming at least one of the training data generated by the training data generation unit and the virtual training data generated by the virtual training data generation unit.
청구항 7에 있어서, 상기 학습 데이터 변형부는,
상기 학습 데이터의 이미지 조도와 상기 가상 학습 데이터의 이미지의 조도 중 적어도 어느 하나를 변환하는 조도 변환 모듈을 포함하는 머신러닝 학습 데이터 증강장치.
The method of claim 7, wherein the learning data transforming unit,
Machine learning learning data augmentation apparatus comprising an illuminance conversion module for converting at least one of the image illuminance of the training data and the image illuminance of the virtual learning data.
청구항 7에 있어서, 상기 학습 데이터 변형부는,
상기 학습 데이터의 이미지 품질과 상기 가상 학습 데이터의 이미지 품질 중 적어도 어느 하나를 변환하는 블러 처리 모듈을 포함하는 머신러닝 학습 데이터 증강장치.
The method of claim 7, wherein the learning data transforming unit,
Machine learning learning data augmentation device comprising a blur processing module for converting at least one of the image quality of the training data and the image quality of the virtual training data.
청구항 7에 있어서, 상기 학습 데이터 변형부는,
상기 학습 데이터의 이미지 크기와 상기 가상 학습 데이터의 이미지 크기 중 적어도 어느 하나를 변환하는 크기 변환 모듈을 포함하는 머신러닝 학습 데이터 증강장치.
The method of claim 7, wherein the learning data transforming unit,
Machine learning learning data augmentation apparatus comprising a size conversion module for converting at least one of the image size of the training data and the image size of the virtual training data.
복수의 원시 데이터를 수집하는 원시 데이터 수집 단계;
수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성하는 학습 데이터 생성 단계; 및,
생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 단계;를 포함하는 머신러닝 학습 데이터 증강방법.
A raw data collection step of collecting a plurality of raw data;
A learning data generation step of generating a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data; And,
Generating at least one virtual learning data by inserting at least one object included in at least one of the plurality of generated learning data into at least one of the remaining learning data to generate at least one virtual learning data; Machine learning learning data augmentation method comprising a.
청구항 11에 있어서, 상기 가상 학습 데이터 생성 단계는,
확률 정보에 기반하여 가상 학습 데이터에 삽입될 객체를 선택하는 객체 선택 단계와,
적어도 어느 하나의 학습 데이터에서 적어도 어느 하나의 객체를 추출하고, 추출된 객체를 이진화하여 제1 이진 이미지를 생성하고, 생성된 제1 이진 이미지를 임의의 위치에 배치하여 가상 이미지를 생성하는 가상 이미지 생성 단계와,
상기 가상 이미지 생성 단계에서 생성된 가상 이미지를 학습 데이터에 삽입하여 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 단계을 포함하는 머신러닝 학습 데이터 증강방법.
The method of claim 11, wherein the step of generating the virtual learning data,
An object selection step of selecting an object to be inserted into the virtual learning data based on probability information, and
A virtual image that extracts at least one object from at least one training data, generates a first binary image by binarizing the extracted object, and creates a virtual image by placing the generated first binary image at an arbitrary location With the generation stage,
And generating virtual learning data by inserting the virtual image generated in the virtual image generating step into the training data.
청구항 12에 있어서, 상기 객체 선택 단계는,
상기 학습 데이터 생성 단계에 의해 생성된 복수의 학습 데이터 각각에 포함된 복수의 객체에 대해, 각각의 객체가 학습 데이터에 출현한 빈도를 카운팅하여 상대적으로 출현 빈도가 작은 객체가 가상 학습 데이터에 삽입될 확률이 높도록 객체를 선택하는 것을 특징으로 하는 머신러닝 학습 데이터 증강방법.
The method of claim 12, wherein the object selection step,
For a plurality of objects included in each of the plurality of training data generated by the training data generation step, an object with a relatively small appearance frequency is to be inserted into the virtual learning data by counting the frequency at which each object appears in the training data. Machine learning learning data augmentation method, characterized in that the object is selected to have a high probability.
청구항 12에 있어서, 상기 가상 이미지 생성 단계는,
상기 제1 이진 이미지의 상하좌우에 임의의 크기를 갖는 0 픽셀로 구성된 행렬을 삽입하여 상기 제1 이진 이미지가 원본 학습 데이터의 객체 크기와 같은 크기로 배치되도록 하는 것을 특징으로 하는 머신러닝 학습 데이터 증강방법.
The method of claim 12, wherein the step of generating the virtual image,
Machine learning learning data augmentation, characterized in that the first binary image is arranged to have the same size as the object size of the original training data by inserting a matrix composed of 0 pixels having an arbitrary size on the top, bottom, left, and right of the first binary image Way.
청구항 12에 있어서, 상기 가상 학습 데이터 생성 단계는,
상기 복수의 학습 데이터에서 임의의 학습 데이터를 배경 이미지로 사용하고, 상기 배경 이미지에서 객체 부분을 이진화한 제2 이진 이미지를 생성하며, 상기 제2 이진 이미지와 상기 가상 이미지를 중첩하여 누적 이진 이미지를 생성하는 것을 특징으로 하는 머신러닝 학습 데이터 증강방법.
The method of claim 12, wherein the step of generating the virtual learning data,
Using random training data from the plurality of training data as a background image, generating a second binary image obtained by binarizing an object portion from the background image, and overlapping the second binary image with the virtual image to obtain a cumulative binary image. Machine learning learning data augmentation method, characterized in that to generate.
청구항 15에 있어서, 상기 가상 학습 데이터 생성 단계는,
상기 누적 이진 이미지에서 객체들 간의 중첩되어 가려진 부분이 존재하는 지를 점검하는 가려짐 점검을 수행하는 것을 특징으로 하는 머신러닝 학습 데이터 증강방법.
The method of claim 15, wherein the step of generating the virtual learning data,
A method of augmenting machine learning learning data, characterized in that performing an occlusion check to check whether an overlapping and obstructed portion exists between objects in the accumulated binary image.
청구항 11에 있어서,
상기 학습 데이터 생성 단계에서 생성된 학습 데이터와 상기 가상 학습 데이터 생성 단계에서 생성된 가상 학습 데이터 중 적어도 어느 하나를 변형하여 변형 학습 데이터를 생성하는 학습 데이터 변형 단계를 더 포함하는 머신러닝 학습 데이터 증강방법.
The method of claim 11,
Machine learning learning data augmentation method further comprising a training data transformation step of generating transformed training data by transforming at least one of the training data generated in the training data generating step and the virtual training data generated in the virtual training data generating step .
청구항 17에 있어서, 상기 학습 데이터 변형 단계는,
상기 학습 데이터의 이미지 조도와 상기 가상 학습 데이터의 이미지의 조도 중 적어도 어느 하나를 변환하는 조도 변환 단계를 포함하는 머신러닝 학습 데이터 증강방법.
The method of claim 17, wherein the training data transformation step,
And converting at least one of an image illuminance of the training data and an image illuminance of the virtual training data.
청구항 17에 있어서, 상기 학습 데이터 변형 단계는,
상기 학습 데이터의 이미지 품질과 상기 가상 학습 데이터의 이미지 품질 중 적어도 어느 하나를 변환하는 블러 처리 단계를 포함하는 머신러닝 학습 데이터 증강방법.
The method of claim 17, wherein the training data transformation step,
And a blur processing step of converting at least one of an image quality of the training data and an image quality of the virtual training data.
청구항 17에 있어서, 상기 학습 데이터 변형 단계는,
상기 학습 데이터의 이미지 크기와 상기 가상 학습 데이터의 이미지 크기 중 적어도 어느 하나를 변환하는 크기 변환 단계를 포함하는 머신러닝 학습 데이터 증강방법.
The method of claim 17, wherein the training data transformation step,
And a size conversion step of converting at least one of an image size of the training data and an image size of the virtual training data.
청구항 11 내지 청구항 20 중 어느 한 항에 있어서,
상기 원시 데이터는 드론에 의해 촬영된 건설 현장의 이미지인 것을 특징으로 하는 머신러닝 학습 데이터 증강방법.
The method according to any one of claims 11 to 20,
The raw data is a machine learning learning data augmentation method, characterized in that the image of a construction site taken by a drone.
하드웨어와 결합되어,
복수의 원시 데이터를 수집하는 원시 데이터 수집 단계;
수집된 복수의 원시 데이터에 포함된 적어도 하나 이상의 객체에 대해 레이블링을 수행하여 복수의 학습 데이터를 생성하는 학습 데이터 생성 단계; 및,
생성된 복수의 학습 데이터 중 적어도 어느 하나의 학습 데이터에 포함된 적어도 어느 하나의 객체를 나머지 학습 데이터 중 적어도 어느 하나의 학습 데이터에 삽입하여 적어도 하나 이상의 가상 학습 데이터를 생성하는 가상 학습 데이터 생성 단계;를 실행시키기 위하여 컴퓨터가 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
Combined with hardware,
A raw data collection step of collecting a plurality of raw data;
A learning data generation step of generating a plurality of training data by labeling at least one or more objects included in the collected plurality of raw data; And,
Generating at least one virtual learning data by inserting at least one object included in at least one of the plurality of generated learning data into at least one of the remaining learning data to generate at least one virtual learning data; A computer program stored in a recording medium readable by a computer to execute.
KR1020190027465A 2019-03-11 2019-03-11 Learning-data enhancement device for machine learning model and method for learning-data enhancement KR102220174B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190027465A KR102220174B1 (en) 2019-03-11 2019-03-11 Learning-data enhancement device for machine learning model and method for learning-data enhancement

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190027465A KR102220174B1 (en) 2019-03-11 2019-03-11 Learning-data enhancement device for machine learning model and method for learning-data enhancement

Publications (2)

Publication Number Publication Date
KR20200108609A true KR20200108609A (en) 2020-09-21
KR102220174B1 KR102220174B1 (en) 2021-02-24

Family

ID=72708102

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190027465A KR102220174B1 (en) 2019-03-11 2019-03-11 Learning-data enhancement device for machine learning model and method for learning-data enhancement

Country Status (1)

Country Link
KR (1) KR102220174B1 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113917938A (en) * 2021-10-08 2022-01-11 北京京航计算通讯研究所 Aircraft attitude control data enhancement and model training method under small sample condition
KR102384009B1 (en) * 2020-12-28 2022-04-08 주식회사 마크애니 Learning data augmentation method and apparatus by composing object and background
KR102393801B1 (en) * 2021-12-27 2022-05-03 주식회사 딥노이드 Apparatus for generating training data through background synthesis and method therefor
KR102395406B1 (en) * 2021-09-29 2022-05-10 주식회사 인피닉 Data synthesis method for machine learning, and computer program recorded on record-medium for executing method therefor
KR20220073242A (en) * 2020-11-26 2022-06-03 한국전력공사 Apparatus for constructing learning data for machine learning of power facilities and metho thereof
KR20220081520A (en) * 2020-12-09 2022-06-16 청주대학교 산학협력단 Method and apparatus for configuring learning data set in object recognition
KR102419738B1 (en) * 2021-08-31 2022-07-12 주식회사 별하늘친구 Method for generate image data for stain inspection learning using artificial intelligence
WO2022158718A1 (en) * 2021-01-22 2022-07-28 삼성전자주식회사 Electronic device and control method therefor
KR102445556B1 (en) * 2021-06-10 2022-09-21 주식회사 에이투마인드 Method of generating virtual data and device of generating thereof
KR20220135890A (en) * 2021-03-31 2022-10-07 한국전자기술연구원 Method and system for collecting virtual environment-based data for artificial intelligence object recognition model
KR20230030259A (en) * 2021-08-25 2023-03-06 금오공과대학교 산학협력단 Deep learning-based data augmentation method for product defect detection learning
KR102613341B1 (en) * 2023-06-27 2023-12-14 한국철도기술연구원 Method and device for reading cargo improved through augmentation of training data based on deep learning
CN113917938B (en) * 2021-10-08 2024-04-19 北京京航计算通讯研究所 Aircraft attitude control data enhancement and model training method under small sample condition

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101864286B1 (en) 2017-11-10 2018-07-04 주식회사 한컴엠디에스 Method and apparatus for using machine learning algorithm
KR101886754B1 (en) * 2017-05-04 2018-09-10 국방과학연구소 Apparatus and method for generating a learning image for machine learning
JP2019028876A (en) * 2017-08-02 2019-02-21 株式会社ディジタルメディアプロフェッショナル Device and method of generating teacher data for machine learning
KR102033136B1 (en) * 2019-04-03 2019-10-16 주식회사 루닛 Method for machine learning based on semi-supervised learning and apparatus thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101886754B1 (en) * 2017-05-04 2018-09-10 국방과학연구소 Apparatus and method for generating a learning image for machine learning
JP2019028876A (en) * 2017-08-02 2019-02-21 株式会社ディジタルメディアプロフェッショナル Device and method of generating teacher data for machine learning
KR101864286B1 (en) 2017-11-10 2018-07-04 주식회사 한컴엠디에스 Method and apparatus for using machine learning algorithm
KR102033136B1 (en) * 2019-04-03 2019-10-16 주식회사 루닛 Method for machine learning based on semi-supervised learning and apparatus thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Global and Local Consistent Age Generative Adversarial Networks", arXiv:1801.08390v1 [cs.CV], 25 Jan 2018. *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220073242A (en) * 2020-11-26 2022-06-03 한국전력공사 Apparatus for constructing learning data for machine learning of power facilities and metho thereof
KR20220081520A (en) * 2020-12-09 2022-06-16 청주대학교 산학협력단 Method and apparatus for configuring learning data set in object recognition
KR102384009B1 (en) * 2020-12-28 2022-04-08 주식회사 마크애니 Learning data augmentation method and apparatus by composing object and background
WO2022158718A1 (en) * 2021-01-22 2022-07-28 삼성전자주식회사 Electronic device and control method therefor
KR20220135890A (en) * 2021-03-31 2022-10-07 한국전자기술연구원 Method and system for collecting virtual environment-based data for artificial intelligence object recognition model
KR102445556B1 (en) * 2021-06-10 2022-09-21 주식회사 에이투마인드 Method of generating virtual data and device of generating thereof
KR20230030259A (en) * 2021-08-25 2023-03-06 금오공과대학교 산학협력단 Deep learning-based data augmentation method for product defect detection learning
KR102419738B1 (en) * 2021-08-31 2022-07-12 주식회사 별하늘친구 Method for generate image data for stain inspection learning using artificial intelligence
KR102395406B1 (en) * 2021-09-29 2022-05-10 주식회사 인피닉 Data synthesis method for machine learning, and computer program recorded on record-medium for executing method therefor
CN113917938A (en) * 2021-10-08 2022-01-11 北京京航计算通讯研究所 Aircraft attitude control data enhancement and model training method under small sample condition
CN113917938B (en) * 2021-10-08 2024-04-19 北京京航计算通讯研究所 Aircraft attitude control data enhancement and model training method under small sample condition
KR102393801B1 (en) * 2021-12-27 2022-05-03 주식회사 딥노이드 Apparatus for generating training data through background synthesis and method therefor
KR102613341B1 (en) * 2023-06-27 2023-12-14 한국철도기술연구원 Method and device for reading cargo improved through augmentation of training data based on deep learning

Also Published As

Publication number Publication date
KR102220174B1 (en) 2021-02-24

Similar Documents

Publication Publication Date Title
KR102220174B1 (en) Learning-data enhancement device for machine learning model and method for learning-data enhancement
CN110008956B (en) Invoice key information positioning method, invoice key information positioning device, computer equipment and storage medium
JP2020508531A (en) Image quality evaluation method and image quality evaluation system
CN111767962B (en) One-stage target detection method, system and device based on generation countermeasure network
CN103946866A (en) Text detection using multi-layer connected components with histograms
CN111401293B (en) Gesture recognition method based on Head lightweight Mask scanning R-CNN
CN109472193A (en) Method for detecting human face and device
KR101996371B1 (en) System and method for creating caption for image and computer program for the same
CN110349167A (en) A kind of image instance dividing method and device
US20190073538A1 (en) Method and system for classifying objects from a stream of images
WO2020230244A1 (en) Training method, training program, and training device
US11915465B2 (en) Apparatus and methods for converting lineless tables into lined tables using generative adversarial networks
CN112508000B (en) Method and equipment for generating OCR image recognition model training data
US20210117686A1 (en) Methods and systems for customized image and video analysis
Mirani et al. Object Recognition in Different Lighting Conditions at Various Angles by Deep Learning Method
CN116052193B (en) RPA interface dynamic form picking and matching method and system
CN115546824B (en) Taboo picture identification method, apparatus and storage medium
KR102026280B1 (en) Method and system for scene text detection using deep learning
CN113505780A (en) Two-dimensional code-based intelligent detection maintenance method and equipment
CN112232390A (en) Method and system for identifying high-pixel large image
US20130080137A1 (en) Conversion method and system
CN115565201B (en) Taboo picture identification method, apparatus and storage medium
Castillo et al. Object detection in digital documents based on machine learning algorithms
CN115080051B (en) GUI code automatic generation method based on computer vision
Nallapati et al. Identification of Deepfakes using Strategic Models and Architectures

Legal Events

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