KR102403166B1 - 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 - Google Patents

기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102403166B1
KR102403166B1 KR1020210128477A KR20210128477A KR102403166B1 KR 102403166 B1 KR102403166 B1 KR 102403166B1 KR 1020210128477 A KR1020210128477 A KR 1020210128477A KR 20210128477 A KR20210128477 A KR 20210128477A KR 102403166 B1 KR102403166 B1 KR 102403166B1
Authority
KR
South Korea
Prior art keywords
landmark
image
images
data
landmarks
Prior art date
Application number
KR1020210128477A
Other languages
English (en)
Inventor
박준형
Original Assignee
주식회사 인피닉
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 인피닉 filed Critical 주식회사 인피닉
Priority to KR1020210128477A priority Critical patent/KR102403166B1/ko
Application granted granted Critical
Priority to PCT/KR2022/007667 priority patent/WO2023054833A1/ko
Publication of KR102403166B1 publication Critical patent/KR102403166B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker

Abstract

본 발명은 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터를 증강시킬 수 있는 방법을 제안한다. 상기 방법은 학습 데이터 생성 장치가 인공지능(Artificial Intelligence, AI)의 기계 학습(machine learning)을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택하는 단계; 상기 학습 데이터 생성 장치가 상기 선택된 2D 이미지 내에 포함된 제1 랜드마크(landmark)를 식별하는 단계; 상기 학습 데이터 생성 장치가 사전에 구비된 랜드마크 풀(pool)로부터 상기 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택하는 단계; 및 상기 학습 데이터 생성 장치가 상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 상기 제2 랜드마크로 대체하는 단계를 포함할 수 있다. 이 경우, 상기 랜드마크는 상기 2D 이미지들에 포함된 제1 객체(object)와 제2 객체를 서로 구별되게 하는 객체 내의 일 영역이 될 수 있다.

Description

기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램{Data augmentation method for machine learning, and computer program recorded on record-medium for executing method therefor}
본 발명은 인공지능(Artificial Intelligence, AI) 기계 학습용 데이터의 수집에 관한 것이다. 보다 상세하게는, 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터를 증강시킬 수 있는 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램에 관한 것이다.
인공지능(AI)은 인간의 학습능력, 추론능력 및 지각능력 등의 일부 또는 전부를 컴퓨터 프로그램을 이용하여 인공적으로 구현하는 기술을 의미한다. 인공지능(AI)과 관련하여, 기계 학습(machine learning)은 다수의 파라미터로 구성된 모델을 이용하여 주어진 데이터로 파라미터를 최적화하는 학습을 의미한다. 이와 같은, 기계 학습은 학습용 데이터의 형태에서 따라, 지도 학습(supervised learning), 비지도 학습(unsupervised learning) 및 강화 학습(reinforcement learning)으로 구분된다.
일반적으로, 인공지능(AI) 기계 학습용 데이터의 설계는 데이터 구조의 설계, 데이터의 수집, 데이터의 정제, 데이터의 가공, 데이터의 확장 및 데이터의 검증 단계로 진행된다.
각각의 단계에서 대하여 보다 구체적으로 설명하면, 데이터 구조의 설계는 온톨로지(ontology) 정의, 분류 체계의 정의 등을 통해 이루어진다. 데이터의 수집은 직접 촬영, 웹 크롤링(web crawling) 또는 협회/전문 단체 등을 통해 데이터를 수집하여 이루어진다. 데이터 정제는 수집된 데이터 내에서 중복 데이터를 제거하고, 개인 정보 등을 비식별화하여 이루어진다. 데이터의 가공은 어노테이션(annotation)을 수행하고, 메타데이터(metadata)를 입력하여 이루어진다. 데이터의 확장은 온톨로지 매핑(mapping)을 수행하고, 필요에 따라 온톨로지를 보완하거나 확장하여 이루어진다. 그리고, 데이터의 검증은 다양한 검증 도구를 활용하여 설정된 목표 품질에 따른 유효성을 검증하여 이루어진다.
한편, 상술한 바와 같이, 기계 학습에 사용될 수 있는 영상 데이터의 일 부분은 직접 촬영을 통해 수집될 수 있다. 그러나, 카메라를 이용하여 연속적으로 직접 촬영하여 영상 데이터를 수집할 경우, 수집된 영상 데이터에는 현실세계의 통상적인 상황의 영상이 대부분 차지하게 되며, 예외적인 상황의 영상은 포함되지 않거나 극히 일부만 포함될 수 있다. 이와 같이, 특정 상황으로 편향된 데이터를 기반으로 인공지능(AI)을 기계 학습시킬 경우, 학습된 인공지능(AI)은 편향된 데이터에 의해 오버피팅(overfitting) 또는 언더피팅(underfitting) 되어 예외적인 상황에 목적한 성능을 발휘할 수 없게 된다.
예를 들어, 차량의 자율주행(automatic driving)을 위한 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터는 데이터 수집용 차량에 설치된 카메라를 통해 직접 촬영하여 수집될 수 있다. 이 경우, 데이터 수집용 차량에 설치된 카메라를 이용하여 직접 촬영된 영상 데이터에는 통상적인 차량 주행에 관한 영상이 대부분이며, 교통 사고의 발생, 교통 법규의 위반 등과 같이 예외적인 상황에 관한 영상은 포함되지 않거나 극히 일부만 포함될 수 있다. 이와 같이, 통상적인 차량 주행에 편향된 데이터를 기반으로 인공지능(AI)을 기계 학습시킬 경우, 학습된 인공지능(AI)은 교통 사고의 발생 상황 또는 교통 법규의 위반 상황 등과 같이 예외적인 상황에 적절하게 대응하지 못하게 된다.
따라서, 인공지능(AI)의 기계 학습용 데이터가 특정한 상황에 편향되지 않도록, 기계 학습용 데이터에 관한 분포의 균형을 통제할 필요성이 존재한다.
대한민국 공개특허공보 제10-2020-0042629호, ‘인공지능 학습을 위한 모바일 기기의 터치 기반 어노테이션과 이미지 생성 방법 및 그 장치’, (2020.04.24. 공개)
본 발명의 일 목적은 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터를 증강시킬 수 있는 방법을 제공하는 것이다.
본 발명의 다른 목적은 기계 학습에 사용될 수 있는 영상 데이터를 증강시킬 수 있는 방법을 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상술한 바와 같은 기술적 과제를 달성하기 위하여, 본 발명은 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터를 증강시킬 수 있는 방법을 제안한다. 상기 방법은 학습 데이터 생성 장치가 인공지능(Artificial Intelligence, AI)의 기계 학습(machine learning)을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택하는 단계; 상기 학습 데이터 생성 장치가 상기 선택된 2D 이미지 내에 포함된 제1 랜드마크(landmark)를 식별하는 단계; 상기 학습 데이터 생성 장치가 사전에 구비된 랜드마크 풀(pool)로부터 상기 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택하는 단계; 및 상기 학습 데이터 생성 장치가 상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 상기 제2 랜드마크로 대체하는 단계를 포함할 수 있다. 이 경우, 상기 랜드마크는 상기 2D 이미지들에 포함된 제1 객체(object)와 제2 객체를 서로 구별되게 하는 객체 내의 일 영역이 될 수 있다.
구체적으로, 상기 랜드마크 풀은 상기 2D 이미지들에 대한 어노테이션(annotation) 작업 결과물을 기반으로, 2D 이미지들 내에 포함된 랜드마크들을 유형별, 크기별 및 색상별로 분류한 집합일 수 있다.
한편, 상기 제1 랜드마크를 식별하는 단계는 상기 2D 이미지들로부터 추출된 샘플 2D 이미지들에 포함된 랜드마크의 유형을 식별하고, 상기 식별된 랜드마크의 유형별 분포의 편향(skewed)을 기준으로 상기 제1 랜드마크를 식별할 수 있다.
상기 제2 랜드마크를 선택하는 단계는 상기 랜드마크 풀에 포함된 랜드마크들 중에서, 상기 제1 랜드마크와 유형이 동일하나 상기 제1 랜드마크와 형상이 상이한 랜드마크를 상기 제2 랜드마크로 선택할 수 있다.
만약, 상기 제1 랜드마크와 유형이 동일하며 상기 제1 랜드마크와 형상이 상이한 랜드마크가 복수 개인 경우, 상기 제1 랜드마크가 포함된 객체 내에 존재하는 제3 랜드마크를 식별하고, 상기 복수 개의 랜드마크 중에서 상기 제3 랜드마크와의 조화 율(balance rate)이 최대인 하나의 랜드마크를 선택할 수 있다. 이 경우, 상기 조화 율은 유형, 크기 및 색상 중 하나 이상을 기준으로 랜드마크들 사이의 조화 정도를 수치적으로 산출할 수 있도록 사전에 구비된 조화 표(balance table)에 대하여, 상기 복수 개의 랜드마크 중 하나와 상기 제3 랜드마크를 매칭하여 산출될 수 있다.
상기 제2 랜드마크로 대체하는 단계는 상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 제거하고, 상기 2D 이미지 내의 다른 영역을 복제(clone)하여 상기 제1 랜드마크가 제거된 영역을 채운 후, 상기 2D 이미지 내에서 상기 제1 랜드마크가 제거된 영역 상에 상기 제2 랜드마크를 겹치게(overwrite)할 수 있다.
상기 제2 랜드마크로 대체하는 단계는 상기 제2 랜드마크를 겹치기 이전에, 상기 제2 랜드마크와 상기 제1 랜드마크의 평균 대비(contrast) 값이 서로 동일하도록, 상기 제2 랜드마크의 대비 값을 변경할 수 있다.
한편, 상기 제2 랜드마크로 대체하는 단계는 상기 제1 랜드마크의 경계선(boundary line)이 상기 제1 랜드마크를 포함하고 있는 객체의 경계선과 닿는(contact) 경우, 상기 선택된 2D 이미지를 복수 개의 소 영역으로 분할한 후 상기 제1 랜드마크가 포함된 소 영역과 상기 제2 랜드마크가 포함된 소 영역을 서로 교환할 수 있다.
예를 들어, 상기 제2 랜드마크로 대체하는 단계는 상기 2D 이미지를 객체 단위의 소영역으로 분할하고, 상기 제1 랜드마크가 포함된 객체의 소영역과 상기 제2 랜드마크가 포함된 객체의 소영역을 서로 교환한 후, 상기 제1 랜드마크가 포함된 객체 내에 존재하는 다른 랜드마크와 상기 제2 랜드마크가 포함된 객체 내에 존재하는 다른 랜드마크를 서로 교환할 수도 있다.
상술한 바와 같은 기술적 과제를 달성하기 위하여, 본 발명은 영상 데이터를 증강시킬 수 있는 방법을 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램을 제안한다. 상기 컴퓨터 프로그램은 메모리(memory); 송수신기(transceiver); 및 상기 메모리에 상주된 명령어를 처리하는 프로세서(processor)를 포함하여 구성된 컴퓨팅 장치와 결합될 수 있다. 그리고, 상기 컴퓨터 프로그램은 상기 프로세서가 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택하는 단계; 상기 프로세서가 상기 선택된 2D 이미지 내에 포함된 제1 랜드마크를 식별하는 단계; 상기 프로세서가 사전에 구비된 랜드마크 풀로부터 상기 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택하는 단계; 및 상기 프로세서가 상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 상기 제2 랜드마크로 대체하는 단계를 실행시키기 위하여, 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다.
기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 실시 예들에 따르면, 인공지능(AI)의 기계 학습에 사용할 수 있는 데이터의 개수를 크게 증가시킬 수 있게 된다. 특히, 기계 학습을 위해 수집된 2D 이미지가 특정 유형으로 편향되지 않도록 분포의 균형을 통제할 수 있게 된다. 결과적으로, 기계 학습된 인공지능(AI)은 오버피팅 또는 언더피팅 되지 않고 목적하는 효과를 발휘할 수 있게 된다.
본 발명의 효과들은 이상에서 언급한 효과로 제한되지 아니하며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 본 발명이 속한 기술분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 인공지능 학습 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 학습 데이터 생성 장치의 논리적 구성도이다.
도 3은 본 발명의 일 실시예에 따른 학습 데이터 생성 장치의 하드웨어 구성도이다.
도 4 및 도 5는 본 발명의 일 실시예에 따라 데이터를 증강시키는 과정을 설명하기 위한 예시도이다.
도 6 및 도 7은 본 발명의 일 실시예에 따라 데이터를 합성하는 과정을 설명하기 위한 예시도이다.
도 8은 본 발명의 일 실시예에 따라 학습 데이터를 생성하는 방법을 설명하기 위한 순서도이다.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "구성된다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다. 본 발명의 사상은 첨부된 도면 외에 모든 변경, 균등물 내지 대체물에 까지도 확장되는 것으로 해석되어야 한다.
상술한 바와 같이, 특정 상황으로 편향된 데이터를 기반으로 인공지능(AI)을 기계 학습시킬 경우, 학습된 인공지능(AI)은 편향된 데이터에 의해 오버피팅 또는 언더피팅 되어 예외적인 상황에 목적한 성능을 발휘할 수 없게 된다. 따라서, 인공지능(AI)의 기계 학습용 데이터가 특정한 상황에 편향되지 않도록, 기계 학습용 데이터에 관한 분포의 균형을 통제할 필요성이 존재한다.
이러한 요구에 부합하고자, 본 발명은 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터를 증강(augmentation)하거나 또는 합성(synthesis)할 수 있는 수단들을 제안하고자 한다.
도 1은 본 발명의 일 실시예에 따른 인공지능 학습 시스템의 구성도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 인공지능 학습 시스템은 다종의 학습 데이터 수집 장치(100), 학습 데이터 생성 장치(200), 다수의 어노테이션 장치(300) 및 인공지능 학습 장치(400)를 포함하여 구성될 수 있다.
이와 같은, 일 실시예에 따른 인공지능 학습 시스템의 구성 요소들은 기능적으로 구분되는 요소들을 나타낸 것에 불과하므로, 둘 이상의 구성 요소가 실제 물리적 환경에서는 서로 통합되어 구현되거나, 하나의 구성 요소가 실제 물리적 환경에서는 서로 분리되어 구현될 수 있을 것이다.
각각의 구성 요소에 대하여 설명하면, 학습 데이터 수집 장치(100)는 인공지능(AI)의 기계 학습에 사용될 수 있는 영상 데이터(즉, 2D 이미지)를 수집하는데 사용될 수 있는 장치이다.
이를 위한, 학습 데이터 수집 장치(100)는 특정한 종류의 장치로 제한되지 아니하고, 2D 이미지를 직접 촬영, 간접 촬영 또는 수집할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다.
예를 들어, 학습 데이터 수집 장치(100)에는 인위적인 제어에 의해 직접 촬영이 가능한 개인용 카메라, 차량에 고정 설치되어 차량의 주행 영상을 촬영하는 카메라, 반사되어 되돌아온 전자기파(electromagnetic wave)를 2차원으로 표현하는 레이더(radar), 일정한 지역의 관제에 사용되는 폐쇄 회로 텔레비전(Closed-Circuit TeleVision, CCTV) 및 적외선(infrared) 카메라 등이 포함될 수 있으며, 이에 한정되지 않는다. 또한, 학습 데이터 수집 장치(100)에 수집된 2D 이미지는 RGB(Red, Green, Blue) 이미지에 한정되지 않고, 무채색 스케일(gray scale), 단색 컬러(mono color) 이미지가 될 수도 있다.
다음 구성으로, 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)에 의해 수집된 2D 이미지를 기초로, 인공지능(AI)의 기계 학습에 사용될 수 있는 데이터를 설계, 정제, 가공 및 검증하는데 사용될 수 있는 장치이다.
특징적으로, 본 발명의 실시예들에 따른 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100)에 의해 수집된 2D 이미지들을 정제, 가공 및 검증함에 있어, 수집된 2D 이미지가 특정 유형으로 편향되지 않도록 분포의 균형을 통제할 수 있다.
이와 같은 특징을 가지는, 학습 데이터 생성 장치(200)는 학습 데이터 수집 장치(100), 어노테이션 장치(300) 및 인공지능 학습 장치(400)와 데이터를 송수신하고, 송수신된 데이터를 기초로 연산을 수행할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다. 예를 들어, 학습 데이터 생성 장치(200)는 데스크탑(desktop), 워크스테이션(workstation) 또는 서버(server)와 같은 고정식 컴퓨팅 장치 중 어느 하나가 될 수 있으나, 이에 한정되는 것은 아니다.
다음 구성으로, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)에 의해 배포된 2D 이미지들에 대하여, 어노테이션(annotation) 작업을 수행하는데 사용될 수 있는 로컬 컴퓨팅 장치이다. 이와 같은, 어노테이션 장치(300)의 전부 또는 일부는 어노테이션 작업자가 클라우딩 서비스(clouding service)를 통해 어노테이션 작업을 수행하는 장치가 될 수도 있다.
구체적으로, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)로부터 수신된 2D 이미지들 중에서 어노테이션 작업 대상이 되는 하나의 2D 이미지를 디스플레이에 출력할 수 있다.
어노테이션 장치(300)는 입출력장치를 통해 사용자로부터 입력된 신호에 따라 툴(tool)을 선택할 수 있다. 여기서, 툴은 2D 이미지 속에 포함되어 있는 하나 이상의 객체(object)를 특정하는 바운딩 박스를 설정하기 위한 도구이다.
어노테이션 장치(300)는 입출력장치를 통해 선택된 툴에 따른 좌표를 입력 받을 수 있다. 그리고, 어노테이션 장치(300)는 입력된 좌표를 기초로 바운딩 박스(bounding box)를 설정하여, 2D 이미지 속에 포함된 객체를 특정할 수 있다. 여기서, 바운딩 박스는 이미지 속에 포함된 객체들 중에서 인공지능(AI) 학습의 대상이 되는 객체를 특정하기 위한 영역이다. 이와 같은, 바운딩 박스는 사각형(rectangle) 또는 정육면체(cube)의 형상을 가질 수 있으며, 이에 한정되는 것은 아니다.
예를 들어, 어노테이션 장치(300)는 입출력장치를 통해 두 개의 좌표를 입력 받고, 입력된 두 좌표를 2D 이미지 내에서 좌상단 꼭지점(vertex)의 좌표와 우하단 꼭지점의 좌표로 가지는 사각형을 기초로 바운딩 박스를 설정하여, 2D 이미지 속에 포함된 객체를 특정할 수 있다. 이 경우, 두 개의 좌표는 사용자가 한 종류의 입력 신호를 두 번 입력(예들 들어, 마우스 클릭)하여 설정되거나, 사용자가 두 종류의 입력 신호를 한번씩 입력(예를 들어, 마우스 드래그)하여 설정될 수 있으나, 이에 한정되는 것은 아니다.
어노테이션 장치(300)는 입출력장치를 통해 사용자로부터 입력된 신호에 따라, 어노테이션 작업의 대상이 되는 2D 이미지 또는 특정된 객체에 대한 메타데이터(metadata)를 생성할 수 있다. 여기서, 메타데이터는 2D 이미지와, 해당 2D 이미지로부터 특정된 객체를 설명하기 위한 데이터이다. 이와 같은, 메타데이터에는 2D 이미지로부터 특정된 객체의 유형, 객체에 포함된 랜드마크(landmark), 객체가 화각에 의해 잘려진 비율, 객체가 다른 객체 또는 물체에 의해 가려진 비율, 객체의 트래킹 아이디, 이미지가 촬영된 시각, 이미지가 촬영된 날의 기상 조건 등이 포함될 수 있으며, 이에 한정되지 아니하고, 파일 크기, 이미지 크기, 저작권자, 해상도, 비트 값, 조리개 투과량, 노출 시간, ISO 감도, 초점 거리, 조리개 개방 수치, 화각, 화이트 밸런스, RGB 깊이, 클래스 명, 태그, 촬영 장소, 도로의 유형, 도로 표면 정보 또는 교통 체증 정보가 더 포함될 수도 있다.
어노테이션 장치(300)는 2D 이미지로부터 특정된 객체와, 생성된 메타데이터를 기초로, 어노테이션 작업 결과물을 생성할 수 있다. 이 경우, 어노테이션 작업 결과물을 JSON(Java Script Object Notation) 파일 형식을 가질 수 있으나, 이에 한정되는 것은 아니다. 그리고, 어노테이션 장치(300)는 생성된 어노테이션 작업 결과물을 학습 데이터 생성 장치(200)에 전송할 수 있다.
상술한 바와 같은 특징을 가지는, 어노테이션 장치(300)는 학습 데이터 생성 장치(200)와 데이터를 송수신하고, 송수신된 데이터를 기초로 연산을 수행할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다. 예를 들어, 어노테이션 장치(300)는 데스크탑, 워크스테이션 또는 서버와 같은 고정식 컴퓨팅 장치, 또는 스마트폰(smart phone), 랩탑(laptop), 태블릿(tablet), 패블릿(phablet), 휴대용 멀티미디어 재생장치(Portable Multimedia Player, PMP), 개인용 휴대 단말기(Personal Digital Assistants, PDA) 또는 전자책 단말기(E-book reader)과 같은 이동식 컴퓨팅 장치 중 어느 하나가 될 수 있다.
다음 구성으로, 인공지능 학습 장치(400)는 학습 데이터 생성 장치(200)에 의해 생성된 기계 학습용 데이터를 기초로 인공지능(AI)을 학습시키는데 사용될 수 있는 장치이다.
구체적으로, 인공지능 학습 장치(400)는 인공지능(AI)의 목적 달성을 위한 요구 사항을 학습 데이터 생성 장치(200)에 전송할 수 있다. 인공지능 학습 장치(400)는 학습 데이터 생성 장치(200)로부터 인공지능(AI) 학습용 데이터를 수신할 수 있다. 그리고, 인공지능 학습 장치(400)는 수신된 인공지능(AI) 학습용 데이터를 이용하여 인공지능(AI)을 기계 학습할 수 있다.
이와 같은, 인공지능 학습 장치(400)는 학습 데이터 생성 장치(200)와 데이터를 송수신하고, 송수신된 데이터를 이용하여 연산을 수행할 수 있는 장치라면 어떠한 장치라도 허용될 수 있다. 예를 들어, 인공지능 학습 장치(400)는 데스크탑, 워크스테이션 또는 서버와 같은 고정식 컴퓨팅 장치 중 어느 하나가 될 수 있으나, 이에 한정되는 것은 아니다.
지금까지 상술한 바와 같은, 다종의 학습 데이터 수집 장치(100), 학습 데이터 생성 장치(200), 다수의 어노테이션 장치(300) 및 인공지능 학습 장치(400)는 장치들 사이를 직접 연결하는 보안 회선, 공용 유선 통신망 또는 이동 통신망 중 하나 이상이 조합된 네트워크를 이용하여 데이터를 송수신할 수 있다.
예를 들어, 공용 유선 통신망에는 이더넷(ethernet), 디지털가입자선(x Digital Subscriber Line, xDSL), 광동축 혼합망(Hybrid Fiber Coax, HFC), 광가입자망(Fiber To The Home, FTTH)가 포함될 수 있으나, 이에 한정되는 것도 아니다. 그리고, 이동 통신망에는 코드 분할 다중 접속(Code Division Multiple Access, CDMA), 와이드 밴드 코드 분할 다중 접속(Wideband CDMA, WCDMA), 고속 패킷 접속(High Speed Packet Access, HSPA), 롱텀 에볼루션(Long Term Evolution, LTE), 5세대 이동통신(5th generation mobile telecommunication)가 포함될 수 있으나, 이에 한정되는 것은 아니다.
이하, 상술한 바와 같은 특징을 가지는 학습 데이터 생성 장치(200)의 구성에 대하여 보다 구체적으로 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 학습 데이터 생성 장치의 논리적 구성도이다.
도 2에 도시된 바와 같이, 학습 데이터 생성 장치(200)는 통신부(205), 입출력부(210), 저장부(215), 데이터 구조 설계부(220), 데이터 수집 및 정제부(225), 데이터 증강 및 합성부(230), 데이터 가공부(235) 및 학습 데이터 생성부(240)를 포함하여 구성될 수 있다.
이와 같은, 학습 데이터 생성 장치(200)의 구성 요소들은 기능적으로 구분되는 요소들을 나타낸 것에 불과하므로, 둘 이상의 구성 요소가 실제 물리적 환경에서는 서로 통합되어 구현되거나, 하나의 구성 요소가 실제 물리적 환경에서는 서로 분리되어 구현될 수 있을 것이다.
각각의 구성 요소에 대하여 설명하면, 통신부(205)는 학습 데이터 수집 장치(100), 어노테이션 장치(300) 및 인공지능 학습 장치(400) 중 하나 이상과 데이터를 송수신할 수 있다.
구체적으로, 통신부(205)는 학습 데이터 수집 장치(100)로부터 수집된 2D 이미지들을 수신할 수 있다. 여기서, 2D 이미지들은 인공지능(AI)을 기계 학습시키기 위하여, 직접 촬영, 간접 촬영 또는 다른 장치로부터 수집된 이미지들이 될 수 있다.
통신부(205)는 어노테이션 작업의 대상이 되는 복수 개의 2D 이미지들을 복수 개의 어노테이션 장치(200)에 배포 전송할 수 있다. 통신부(205)는 복수 개의 어노테이션 장치(300) 각각으로부터 어노테이션 작업 결과물을 수신할 수 있다.
그리고, 통신부(205)는 인공지능(AI) 학습용 데이터를 인공지능 학습 장치(300)에 전송할 수 있다.
다음 구성으로, 입출력부(210)는 사용자 인터페이스(UI)를 통해 사용자로부터 신호를 입력 받거나, 연산 결과를 외부로 출력할 수 있다.
구체적으로, 입출력부(210)는 사용자로부터 인공지능(AI) 학습을 위한 데이터 구조를 설계하기 위한 제어 신호를 입력 받을 수 있다. 입출력부(210)는 사용자로부터 복수 개의 어노테이션 장치(300)에 대하여 어노테이션 작업을 분배하기 위한 할당량 등을 입력 받을 수 있다.
입출력부(210)는 사용자로부터 증강의 대상이 되는 랜드마크(landmark)의 유형을 입력 받을 수 있다. 이 경우, 랜드마크는 2D 이미지들에 포함된 제1 객체와 제2 객체를 서로 구별되게 하는 객체 내의 일 영역이 될 수 있다. 예를 들어, 객체의 유형이 사람인 경우 랜드마크는 객체 내에서 사람의 신체가 포함된 영역이 될 수 있다. 객체의 유형이 차량인 경우 랜드마크는 차량의 부품이 포함된 영역이 될 수 있다.
그리고, 입출력부(210)는 사용자로부터 합성의 대상이 되는 2D 이미지를 선택하기 위한 환경 요인을 입력 받을 수 있다. 이 경우, 환경 요인에는 2D 이미지가 촬영된 위치, 기상 조건, 계절 또는 태양의 고도 등이 포함될 수 있으며, 이에 한정되지 않는다.
다음 구성으로, 저장부(215)는 학습 데이터 생성 장치(200)의 동작이 필요한 정보를 저장할 수 있다.
구체적으로, 저장부(215)는 학습 데이터 수집 장치(100)로부터 수신된 2D 이미지들을 저장할 수 있다. 저장부(215)는 어노테이션 장치(300)로부터 수신된 어노테이션 작업 결과물을 저장할 수 있다.
저장부(215)는 2D 이미지들에 대한 어노테이션 작업 결과물을 기반으로 2D 이미지들로부터 추출된 랜드마크의 집합인 랜드마크 풀(landmark pool)을 저장할 수 있다. 이 경우, 랜드마크 풀은 2D 이미지들 내에 포함된 랜드마크들을 유형별, 크기별 및 색상별로 분류한 집합이 될 수 있다.
그리고, 저장부(215)는 조화 표(balance table)을 저장할 수 있다. 이 경우, 조화 표는 랜드마크의 유형, 크기 및 생상 중 하나 이상을 기준으로 랜드마크들 사이의 조화 정도를 수치적으로 산출할 수 있는 표이다.
다음 구성으로, 데이터 구조 설계부(220)는 인공지능(AI)을 기계 학습시키기 위한 데이터 구조를 설계할 수 있다.
구체적으로, 데이터 구조 설계부(220)는 입출력부(110)를 통해 입력된 사용자의 제어 또는 인공지능 학습 장치(400)로부터 수신된 인공지능(AI)의 목적 달성을 위한 요구 사항을 기초로, 인공지능(AI)을 기계 학습시키기 위한 데이터 구조를 설계할 수 있다.
예를 들어, 데이터 구조 설계부(220)는 입력된 사용자의 제어 또는 요구 사항을 기초로, 인공지능(AI) 학습을 위한 온톨로지(ontology), 인공지능(AI) 학습을 위한 데이터의 분류 체계를 정의할 수 있다.
다음 구성으로, 데이터 수집 및 정제부(225)는 데이터 구조 설계부(220)에 의해 설계된 데이터 구조를 기초로, 인공지능(AI)을 기계 학습시키기 위한 데이터를 수집 및 정제할 수 있다.
구체적으로, 데이터 수집 및 정제부(225)는 통신부(205)를 통해 학습 데이터 수집 장치(100)로부터 2D 이미지들을 수신할 수 있다. 그러나, 이에 한정되지 아니하고, 데이터 수집 및 정제부(225)는 통신부(205)를 통해 웹 크롤링(crawling)을 수행하여 2D 이미지를 직접 수집하거나, 또는 2D 이미지를 보유하고 있는 외부 기관의 장치로부터 데이터를 다운로드할 수도 있다.
데이터 수집 및 정제부(225)는 수신된 2D 이미지들 중에서 중복되거나 또는 극히 유사한 이미지를 제거할 수 있다. 그리고, 데이터 수집 및 정제부(225)는 수집된 2D 이미지들에 포함된 개인정보를 비식별화(de-identification)할 수 있다.
다음 구성으로, 데이터 증강 및 합성부(230)는 데이터 수집 및 정제부(225)에 의해 수집 및 정제된 2D 이미지들 또는 데이터 가공부(235)에 의해 가공된 데이터를 기반으로, 2D 이미지를 증강하거나 또는 합성할 수 있다.
이와 같은, 데이터 증강 및 합성부(230)는 2D 이미지들을 증강 또는 합성을 선택적으로 수행할 수도 있으며, 증강 및 합성을 연속적으로 수행할 수도 있다.
우선적으로, 데이터 증강 및 합성부(230)가 수행하는 2D 이미지들의 증강에 대하여 설명하기로 한다.
데이터 증강 및 합성부(230)는 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택할 수 있다. 이 경우, 사전에 수집된 2D 이미지들은 데이터 수집 및 정제부(225)에 의해 수집 및 정제된 2D 이미지들이거나, 또는 데이터 가공부(235)에 의해 어노테이션 작업이 완료된 2D 이미지들이 될 수 있다. 또한, 선택된 2D 이미지는 데이터 증강의 대상이 되는 이미지가 될 수 있다.
데이터 증강 및 합성부(230)는 증강의 대상으로 선택된 2D 이미지 내에 포함된 제1 랜드마크를 식별할 수 있다. 이 경우, 제1 랜드마크는 수집된 2D 이미지들 내에 다수 포함되어 있어, 기계 학습된 인공지능(AI)이 오버피팅될 가능성이 있는 랜드마크에 해당될 수 있다.
이를 위하여, 데이터 증강 및 합성부(230)는 수집된 2D 이미지들로부터 사전에 설정된 샘플링(sampling) 주기에 따라, 샘플 2D 이미지들을 추출할 수 있다. 데이터 증강 및 합성부(230)는 추출된 샘플 2D 이미지들에 포함된 랜드마크의 유형을 식별할 수 있다. 데이터 증강 및 합성부(230)는 샘플 2D 이미지들로부터 식별된 랜드마크의 유형별 분포를 산출할 수 있다. 데이터 증강 및 합성부(230)는 산출된 유형별 분포가 편향(skewed)된 경우, 편향을 기준으로 제1 랜드마크를 식별할 수 있다.
다음으로, 데이터 증강 및 합성부(230)는 저장부(215)에 사전에 구비된 랜드마크 풀로부터 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택할 수 있다. 이 경우, 제2 랜드마크는 수집된 2D 이미지들 내에 희소 포함되어 있어, 기계 학습된 인공지능(AI)이 언더피팅될 가능성이 있는 랜드마크에 해당될 수 있다.
이를 위하여, 데이터 증강 및 합성부(230)는 랜드마크 풀에 포함된 랜드마크들 중에서, 제1 랜드마크와 유형이 동일하나 제1 랜드마크와 형상이 상이한 랜드마크를 제2 랜드마크로 선택할 수 있다. 즉, 데이터 증강 및 합성부(230)는 이미지 또는 객체 내의 흔한 랜드마크(즉, 제1 랜드마크)와 동종이며 상이한 희소 랜드마크(즉, 제2 랜드마크)를 선택할 수 있다.
만약, 랜드마크 풀에 포함된 랜드마크들 중에서 제1 랜드마크와 유형이 동일하며 제1 랜드마크와 형상이 상이한 랜드마크가 복수 개인 경우, 데이터 증강 및 합성부(230)는 제1 랜드마크가 포함된 객체(object) 내에 존재하는 제3 랜드마크를 선행적으로 식별할 수 있다. 데이터 증강 및 합성부(230)는 랜드마크 풀로부터 식별된 복수 개의 랜드마크 각각에 대하여, 객체로부터 식별된 제3 랜드마크와의 조화 율을 산출할 수 있다. 이 경우, 조화율은 저장부(215)에 저장된 조화 표에 대하여, 랜드마크 풀로부터 식별된 복수 개의 랜드마크 중 하나와 제3 랜드마크를 매칭하여 산출될 수 있다. 그리고, 데이터 증강 및 합성부(230)는 랜드마크 풀로부터 식별된 복수 개의 랜드마크 중에서 제3 랜드마크와의 조화 율이 최대인 하나의 랜드마크를 선택할 수 있다.
다음으로, 데이터 증강 및 합성부(230)는 증강의 대상으로 선택된 2D 이미지 내에서 제1 랜드마크를 제2 랜드마크로 대체할 수 있다. 특징적으로, 데이터 증강 및 합성부(230)는 랜드마크의 대체에 의해 2D 이미지 또는 객체가 부자연스럽게 변형되는 것을 방지할 수 있다.
이를 위하여, 데이터 증강 및 합성부(230)는 증강의 대상으로 선택된 2D 이미지 내에서 제1 랜드마크를 우선적으로 제거할 수 있다. 데이터 증강 및 합성부(230)는 제1 랜드마크가 제거된 2D 이미지 내의 다른 영역을 제1 랜드마크가 제거된 영역에 복제(clone)하여, 제1 랜드마크가 제거된 영역을 채울(fill) 수 있다. 그리고, 데이터 증강 및 합성부(230)는 2D 이미지 내에서 제1 랜드마크가 제거된 영역 상에 제2 랜드마크를 겹칠(overwrite) 수 있다.
또한, 데이터 증강 및 합성부(230)는 2D 이미지 상에 제2 랜드마크를 겹치기 이전에, 제2 랜드마크와 제1 랜드마크의 평균 대비(contrast) 값이 서로 동일해지도록 제2 랜드마크의 대비 값을 변경한 후, 2D 이미지 상에 제2 랜드마크를 겹칠 수도 있다.
한편, 데이터 증강 및 합성부(230)는 랜드마크의 대체에 의해 2D 이미지의 어노테이션 작업에 부정적인 영향이 미치는 것을 방지할 수 있다.
이를 위하여, 데이터 증강 및 합성부(230)는 제1 랜드마크의 경계선(boundary line)이 제1 랜드마크를 포함하고 있는 개체의 경계선과 닿는(contact)지 판단할 수 있다. 제1 랜드마크의 경계선(boundary line)이 제1 랜드마크를 포함하고 있는 개체의 경계선이 서로 닿는 경우, 데이터 증강 및 합성부(230)는 증강의 대상으로 선택된 2D 이미지를 복수 개의 소 영역으로 분할한 후, 제1 랜드마크가 포함된 소 영역과 제2 랜드마크가 포함된 소 영역을 서로 교환할 수 있다.
예를 들어, 데이터 증강 및 합성부(230)는 증강의 대상으로 선택된 2D 이미지를 객체 단위의 소 영역으로 분할할 수 있다. 데이터 증강 및 합성부(230)는 제1 랜드마크가 포함된 객체의 소 영역과 제2 랜드마크가 포함된 객체의 소 영역을 서로 교환할 수 있다. 그리고, 데이터 증강 및 합성부(230)는 제1 랜드마크가 포함된 객체 내에 존재하는 다른 랜드마크와 제2 랜드마크가 포함된 객체 내에 존재하는 다른 랜드마크를 서로 교환할 수도 있다.
이하, 데이터 증강 및 합성부(230)가 수행하는 2D 이미지들의 합성에 대하여 설명하기로 한다.
데이터 증강 및 합성부(230)는 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 2D 이미지 내에 포함된 객체의 유형을 기준으로 제1 2D 이미지를 선택할 수 있다. 이 경우, 사전에 수집된 2D 이미지들은 데이터 수집 및 정제부(225)에 의해 수집 및 정제된 2D 이미지들이거나, 또는 데이터 가공부(235)에 의해 어노테이션 작업이 완료된 2D 이미지들이 될 수 있다. 또한, 제1 2D 이미지는 수집된 2D 이미지들 내에 희소하게 포함된 객체, 또는 인공지능(AI)의 목적 달성을 위해 요구되는 객체를 포함하고 있는 이미지에 해당된다.
이를 위하여, 데이터 증강 및 합성부(230)는 2D 이미지들 중에서 사전에 설정된 요구 유형(type require)에 대응되는 객체를 사전에 설정된 요구 개수(required number) 이상 포함하고 있는 2D 이미지를 제1 2D 이미지로 선택할 수 있다.
만약, 요구 유형에 대응되는 객체를 요구 개수 이상 포함하고 있는 2D 이미지가 복수 개인 경우, 데이터 증강 및 합성부(230)는 요구 유형에 대응되는 유형의 객체의 잘린 비율(truncated rate)이 최소인 객체를 포함하고 있는 2D 이미지를 제1 2D 이미지로 선택할 수 있다.
다음으로, 데이터 증강 및 합성부(230)는 수집된 2D 이미지들 중에서 각각의 2D 이미지가 촬영된 시점의 환경 요인(environmental factor)을 기준으로 제2 2D 이미지를 선택할 수 있다. 이 경우, 제2 2D 이미지는 수집된 2D 이미지들 내에 희소하게 포함된 환경 요인, 또는 인공지능(AI)의 목적 달성을 위해 요구되는 환경 요인을 만족하는 이미지에 해당된다.
이를 위하여, 데이터 증강 및 합성부(230)는 2D 이미지의 EXIF(Exchangeable Image File Format) 속성 정보로부터, 각각의 2D 이미지가 촬영된 시점의 환경 요인을 식별할 수 있다. 또한, 데이터 증강 및 합성부(230)는 2D 이미지가 이미 어노테이션 작업이 수행된 2D 이미지에 해당되는 경우, 어노테이션 작업 결과물로부터 2D 이미지가 촬영된 시점의 환경 요인을 식별할 수도 있다.
그리고, 데이터 증강 및 합성부(230)는 제1 2D 이미지가 촬영된 위치와 GPS(Global Positioning System) 좌표가 동일한 위치에서 촬영된 2D 이미지들 중에서, 제1 2D 이미지가 촬영된 시점의 기상 조건(weather condition), 계절(season) 및 태양의 고도(elevation angle of the sun) 중 하나 이상이 상이한 2D 이미지를 제2 2D 이미지로 선택할 수 있다.
본 발명의 효과를 극대화하기 위하여, 데이터 증강 및 합성부(230)는 적외선 카메라에 의해 촬영된 IR 영상에 해당되는 제1 2D 이미지와 제2 2D 이미지를 선택할 수도 있다.
다음으로, 데이터 증강 및 합성부(230)는 제1 2D 이미지 내에 포함된 객체들을 추출하여 제2 2D 이미지에 합성할 수 있다. 특징적으로, 데이터 증강 및 합성부(230)는 제1 2D 이미지 내의 객체들과 제2 2D 이미지의 배경의 합성에 의해 2D 이미지가 부자연스럽게 변형되는 것을 방지할 수 있다.
이를 위하여, 데이터 증강 및 합성부(230)는 제1 2D 이미지와 제2 2D 이미지 각각의 엣지(edge)를 추출하고, 제1 2D 이미지의 엣지와 제2 2D 이미지의 엣지가 서로 대응되게 배치한 상태에서, 제1 2D 이미지 내에 포함된 객체들을 제2 2D 이미지에 합성할 수 있다.
데이터 증강 및 합성부(230)는 제2 2D 이미지 내에 포함된 객체의 전부 또는 일부를 우선적으로 제거할 수 있다. 데이터 증강 및 합성부(230)는 객체의 전부 또는 일부가 제거된 제2 2D 이미지 내의 다른 영역을 객체가 제거된 영역에 복제하여, 객체의 전부 또는 일부가 제거된 영역을 채울 수 있다. 그리고, 데이터 증강 및 합성부(230)는 제2 2D 이미지 상에 제1 2D 이미지의 객체들을 겹칠 수 있다.
또한, 데이터 증강 및 합성부(230)는 제1 2D 이미지의 객체들을 제2 2D 이미지에 겹치기 이전에, 제1 2D 이미지와 제2 2D 이미지의 평균 대비 값이 서로 동일해지도록 제1 2D 이미지 대비 값을 변경한 후, 제1 2D 이미지의 객체들을 제2 2D 이미지 상에 겹칠 수도 있다.
한편, 데이터 증강 및 합성부(230)는 제1 2D 이미지에 포함된 각 객체들을 넓이를 산출하고, 산출된 넓이가 사전에 설정된 임계 넓이보다 작은 객체들은 제2 2D 이미지 상에 겹치지 않을 수도 있다. 이는 인공지능(AI)의 기계 학습에 영향을 줄 수 없는 미세한 객체의 합성에 의해 2D 이미지가 부자연스러워지는 것을 방지하기 위함이다.
다음 구성으로, 데이터 가공부(235)는 데이터 수집 및 정제부(220)에 의해 수집 및 정제된 2D 이미지, 또는 데이터 증강 및 합성부(230)에 의해 증강 또는 합성으로 생성된 2D 이미지를 어노테이션 장치(300)에 배포하여 가공할 수 있다.
구체적으로, 데이터 가공부(235)는 데이터 수집 및 정제부(220)에 의해 수집 및 정제된 2D 이미지, 또는 데이터 증강 및 합성부(230)에 의해 증강 또는 합성으로 생성된 2D 이미지를 복수 개의 어노테이션 장치(300)들에 배포 전송할 수 있다.
그리고, 데이터 가공부(235)는 복수 개의 어노테이션 장치(300)들 각각으로부터 어노테이션 작업 결과물을 수신할 수 있다.
다음 구성으로, 학습 데이터 생성부(240)는 데이터 가공부(235)에 의해 가공된 데이터를 기초로, 인공지능(AI)의 기계 학습에 사용될 수 있는 데이터를 생성할 수 있다.
구체적으로, 학습 데이터 생성부(240)는 데이터 가공부(235)를 통해 복수 개의 어노테이션 장치(300)들에 의해 가공된 데이터를 패키징(packaging)하여 인공지능(AI) 학습용 데이터를 생성할 수 있다.
그리고, 학습 데이터 생성부(240)는 생성된 인공지능(AI) 학습용 데이터를 통신부(205)를 통해 인공지능 학습 장치(400)에 전송할 수 있다.
이하, 상술한 바와 같은 학습 데이터 생성 장치(200)의 논리적 구성요소를 구현하기 위한 하드웨어에 대하여 보다 구체적으로 설명한다.
도 3은 본 발명의 일 실시예에 따른 학습 데이터 생성 장치의 하드웨어 구성도이다.
도 3에 도시된 바와 같이, 학습 데이터 생성 장치(200)는 프로세서(Processor, 250), 메모리(Memory, 255), 송수신기(Transceiver, 260), 입출력장치(Input/output device, 265), 데이터 버스(Bus, 270) 및 스토리지(Storage, 275)를 포함하여 구성될 수 있다.
프로세서(250)는 메모리(255)에 상주된 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(280a)에 따른 명령어를 기초로, 학습 데이터 생성 장치(200)의 동작 및 기능을 구현할 수 있다. 메모리(255)에는 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(280a)가 상주(loading)될 수 있다. 송수신기(260)는 학습 데이터 수집 장치(100), 어노테이션 장치(300) 및 인공지능 학습 장치(400)와 데이터를 송수신할 수 있다. 입출력장치(265)는 학습 데이터 생성 장치(200)의 동작에 필요한 데이터를 입력 받고, 증강 또는 합성된 2D 이미지들, 어노테이션 작업 결과물을 출력할 수 있다. 데이터 버스(270)는 프로세서(250), 메모리(255), 송수신기(260), 입출력장치(265) 및 스토리지(275)와 연결되어, 각각의 구성 요소 사이가 서로 데이터를 전달하기 위한 이동 통로의 역할을 수행할 수 있다.
스토리지(275)는 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(280a)의 실행을 위해 필요한 애플리케이션 프로그래밍 인터페이스(Application Programming Interface, API), 라이브러리(library) 파일, 리소스(resource) 파일 등을 저장할 수 있다. 스토리지(275)는 본 발명의 실시예들에 따른 방법이 구현된 소프트웨어(280b)를 저장할 수 있다. 또한, 스토리지(275)는 본 발명의 실시예들에 따른 방법의 수행에 필요한 정보들을 저장할 수 있다.
본 발명의 일 실시예에 따르면, 메모리(255)에 상주되거나 또는 스토리지(275)에 저장된 데이터 증강 방법을 구현하기 위한 소프트웨어(280a, 280b)는 프로세서(250)가 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택하는 단계, 프로세서(250)가 선택된 2D 이미지 내에 포함된 제1 랜드마크를 식별하는 단계, 프로세서(250)가 사전에 구비된 랜드마크 풀로부터 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택하는 단계, 및 프로세서(250)가 선택된 2D 이미지 내에서 제1 랜드마크를 제2 랜드마크로 대체하는 단계를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다.
본 발명의 다른 실시예에 따르면, 메모리(255)에 상주되거나 또는 스토리지(275)에 저장된 데이터 합성 방법을 구현하기 위한 소프트웨어(280a, 280b)는 프로세서(250)가 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 2D 이미지에 포함된 객체의 유형을 기준으로 제1 2D 이미지를 선택하는 단계, 프로세서(250)가 2D 이미지들 중에서 각각의 2D 이미지가 촬영된 시점의 환경 요인을 기준으로 제2 2D 이미지를 선택하는 단계, 및 프로세서(250)가 제1 2D 이미지 내에 포함된 객체들을 추출하여 제2 2D 이미지에 합성하는 단계를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램이 될 수 있다.
보다 구체적으로, 프로세서(250)는 ASIC(Application-Specific Integrated Circuit), 다른 칩셋(chipset), 논리 회로 및/또는 데이터 처리 장치를 포함할 수 있다. 메모리(255)는 ROM(Read-Only Memory), RAM(Random Access Memory), 플래쉬 메모리, 메모리 카드, 저장 매체 및/또는 다른 저장 장치를 포함할 수 있다. 송수신기(260)는 유무선 신호를 처리하기 위한 베이스밴드 회로를 포함할 수 있다. 입출력장치(265)는 키보드(keyboard), 마우스(mouse), 및/또는 조이스틱(joystick) 등과 같은 입력 장치 및 액정표시장치(Liquid Crystal Display, LCD), 유기 발광 다이오드(Organic LED, OLED) 및/또는 능동형 유기 발광 다이오드(Active Matrix OLED, AMOLED) 등과 같은 영상 출력 장치 프린터(printer), 플로터(plotter) 등과 같은 인쇄 장치를 포함할 수 있다.
본 명세서에 포함된 실시 예가 소프트웨어로 구현될 경우, 상술한 방법은 상술한 기능을 수행하는 모듈(과정, 기능 등)로 구현될 수 있다. 모듈은 메모리(255)에 상주되고, 프로세서(250)에 의해 실행될 수 있다. 메모리(255)는 프로세서(250)의 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 프로세서(250)와 연결될 수 있다.
도 3에 도시된 각 구성요소는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의 일 실시예는 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
또한, 펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현되어, 다양한 컴퓨터 수단을 통하여 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한, 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이하, 상술한 바와 같은 본 발명의 다양한 실시예에 따른 인공지능 학습 시스템의 특징들에 대하여, 도면을 참조하여 구체적으로 설명하기로 한다.
도 4 및 도 5는 본 발명의 일 실시예에 따라 데이터를 증강시키는 과정을 설명하기 위한 예시도이다.
도 4 및 도 5에 도시된 바와 같이, 본 발명의 일 실시예에 따른 인공지능 학습 시스템의 학습 데이터 생성 장치(200)는 수집된 2D 이미지들을 증가할 수 있다.
구체적으로, 학습 데이터 생성 장치(200)는 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택할 수 있다. 이 경우, 선택된 2D 이미지는 데이터 증강의 대상이 되는 이미지가 될 수 있다.
학습 데이터 생성 장치(200)는 증강의 대상으로 선택된 2D 이미지 내에 포함된 랜드마크들(10a, 10b, 10c, 10d) 중에서 제1 랜드마크(10b)를 식별할 수 있다. 이 경우, 제1 랜드마크(10b)는 수집된 2D 이미지들 내에 다수 포함되어 있어, 기계 학습된 인공지능(AI)이 오버피팅될 가능성이 있는 랜드마크에 해당될 수 있다.
이를 위하여, 학습 데이터 생성 장치(200)는 샘플 2D 이미지들로부터 식별된 랜드마크의 유형별 분포가 편향된 경우, 편향을 기준으로 제1 랜드마크(10b)를 식별할 수 있다.
학습 데이터 생성 장치(200)는 사전에 구비된 랜드마크 풀로부터 제1 랜드마크(10b)의 유형에 대응하는 제2 랜드마크(20)를 선택할 수 있다. 이 경우, 제2 랜드마크(20)는 수집된 2D 이미지들 내에 희소 포함되어 있어, 기계 학습된 인공지능(AI)이 언더피팅될 가능성이 있는 랜드마크에 해당될 수 있다.
이를 위하여, 학습 데이터 생성 장치(200)는 랜드마크 풀에 포함된 랜드마크들 중에서, 제1 랜드마크(10b)와 유형이 동일하나 제1 랜드마크(10b)와 형상이 상이한 랜드마크를 제2 랜드마크(20)로 선택할 수 있다. 즉, 학습 데이터 생성 장치(200)는 이미지 또는 객체 내의 흔한 랜드마크(즉, 제1 랜드마크)와 동종이며 상이한 희소 랜드마크(즉, 제2 랜드마크)를 선택할 수 있다.
학습 데이터 생성 장치(200)는 증강의 대상으로 선택된 2D 이미지 내에서 제1 랜드마크(10b)를 제2 랜드마크(20)로 대체할 수 있다. 특징적으로, 학습 데이터 생성 장치(200)는 랜드마크의 대체에 의해 2D 이미지 또는 객체가 부자연스럽게 변형되는 것을 방지할 수 있다.
이를 위하여, 학습 데이터 생성 장치(200)는 증강의 대상으로 선택된 2D 이미지 내에서 제1 랜드마크(10b)를 우선적으로 제거한 후, 제1 랜드마크(10b)가 제거된 2D 이미지 내의 다른 영역을 제1 랜드마크(10b)가 제거된 영역에 복제(clone)하여 제1 랜드마크(10b)가 제거된 영역을 채우고, 2D 이미지 내에서 제1 랜드마크(10b)가 제거된 영역 상에 제2 랜드마크(20)를 겹칠 수 있다.
도 6 및 도 7은 본 발명의 일 실시예에 따라 데이터를 합성하는 과정을 설명하기 위한 예시도이다.
도 6 및 도 7에 도시된 바와 같이, 본 발명의 일 실시예에 따른 인공지능 학습 시스템의 학습 데이터 생성 장치(200)는 수집된 2D 이미지들을 합성할 수 있다.
구체적으로, 학습 데이터 생성 장치(200)는 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 2D 이미지 내에 포함된 객체(30)의 유형을 기준으로 제1 2D 이미지를 선택할 수 있다. 이 경우, 제1 2D 이미지는 수집된 2D 이미지들 내에 희소하게 포함된 객체(30), 또는 인공지능(AI)의 목적 달성을 위해 요구되는 객체(30)를 포함하고 있는 이미지에 해당된다.
이를 위하여, 학습 데이터 생성 장치(200)는 2D 이미지들 중에서 사전에 설정된 요구 유형(type require)에 대응되는 객체(30)를 사전에 설정된 요구 개수(required number) 이상 포함하고 있는 2D 이미지를 제1 2D 이미지로 선택할 수 있다.
학습 데이터 생성 장치(200)는 수집된 2D 이미지들 중에서 각각의 2D 이미지가 촬영된 시점의 환경 요인(40)을 기준으로 제2 2D 이미지를 선택할 수 있다. 이 경우, 제2 2D 이미지는 수집된 2D 이미지들 내에 희소하게 포함된 환경 요인(40), 또는 인공지능(AI)의 목적 달성을 위해 요구되는 환경 요인(40)을 만족하는 이미지에 해당된다.
이를 위하여, 학습 데이터 생성 장치(200)는 2D 이미지의 EXIF(Exchangeable Image File Format) 속성 정보로부터 각각의 2D 이미지가 촬영된 시점의 환경 요인을 식별하거나, 어노테이션 작업 결과물로부터 2D 이미지가 촬영된 시점의 환경 요인을 식별할 수도 있다.
그리고, 학습 데이터 생성 장치(200)는 제1 2D 이미지가 촬영된 위치와 GPS(Global Positioning System) 좌표가 동일한 위치에서 촬영된 2D 이미지들 중에서, 제1 2D 이미지가 촬영된 시점의 기상 조건(weather condition), 계절(season) 및 태양의 고도(elevation angle of the sun) 중 하나 이상이 상이한 2D 이미지를 제2 2D 이미지로 선택할 수 있다.
이 경우, 학습 데이터 생성 장치(200)가 선택한 제1 2D 이미지와 제2 2D 이미지는 적외선 카메라에 의해 촬영된 IR 영상에 해당될 수도 있다.
학습 데이터 생성 장치(200)는 제1 2D 이미지 내에 포함된 객체들(30)을 추출하여 제2 2D 이미지에 합성할 수 있다. 특징적으로, 학습 데이터 생성 장치(200)는 제1 2D 이미지 내의 객체들(30)과 제2 2D 이미지의 배경의 합성에 의해 2D 이미지가 부자연스럽게 변형되는 것을 방지할 수 있다.
이를 위하여, 학습 데이터 생성 장치(200)는 제1 2D 이미지와 제2 2D 이미지 각각의 엣지(edge)를 추출하고, 제1 2D 이미지의 엣지와 제2 2D 이미지의 엣지가 서로 대응되게 배치한 상태에서, 제1 2D 이미지 내에 포함된 객체들을 제2 2D 이미지에 합성할 수 있다.
상술한 바와 같은, 본 발명의 실시예들에 따른 학습 데이터 생성 장치(200)는 기본적으로 인공지능(AI)의 기계 학습에 사용할 수 있는 데이터의 개수를 크게 증가시킬 수 있게 된다. 특히, 기계 학습을 위해 수집된 2D 이미지가 특정 유형으로 편향되지 않도록 분포의 균형을 통제할 수 있게 되며, 결과적으로 기계 학습된 인공지능(AI)은 오버피팅 또는 언더피팅 되지 않고 목적하는 효과를 발휘할 수 있게 된다.
이하, 상술한 바와 같은 본 발명의 다양한 실시예에 따른 학습 데이터 생성 장치(200)의 동작에 대하여, 도면을 참조하여 구체적으로 설명하기로 한다.
도 8은 본 발명의 일 실시예에 따라 학습 데이터를 생성하는 방법을 설명하기 위한 순서도이다.
도 8을 참조하면, 본 발명의 일 실시예에 따른 학습 데이터 생성 장치(200)는 외부로부터 입력된 사용자의 제어 또는 인공지능 학습 장치(400)로부터 수신된 인공지능(AI)의 목적 달성을 위한 요구 사항을 기초로, 인공지능(AI)을 기계 학습시키기 위한 데이터 구조를 설계할 수 있다(S100).
학습 데이터 생성 장치(200)는 설계된 데이터 구조를 기초로, 학습 데이터 수집 장치(100)로부터 2D 이미지들을 수신할 수 있다(S200). 그러나, 이에 한정되지 아니하고, 학습 데이터 생성 장치(200)는 웹 크롤링을 수행하여 2D 이미지들을 직접 수집하거나, 또는 2D 이미지를 보유하고 있는 외부 기관의 장치로부터 데이터를 다운로드할 수도 있다.
학습 데이터 생성 장치(200)는 수신된 2D 이미지들 중에서 중복되거나 또는 극히 유사한 이미지를 제거하고, 2D 이미지들에 포함된 개인정보를 비식별화하여 데이터 정제를 수행할 수 있다(S300).
학습 데이터 생성 장치(200)는 수집 및 정제된 2D 이미지들, 또는 어노테이션 장치(300)들에 의해 기 가공된 데이터를 기반으로, 2D 이미지를 증강하거나 또는 합성할 수 있다(S400).
특징적으로, 학습 데이터 생성 장치(200)는 2D 이미지들을 증강 또는 합성을 선택적으로 수행할 수도 있으며, 증강 및 합성을 연속적으로 수행할 수도 있다. 학습 데이터 생성 장치(200)의 2D 이미지들의 증가 또는 합성 방법에 대한 구체적인 설명은 도 2 내지 도 7을 참조하여 설명한 바와 동일하므로, 중복하여 기재하지 않는다.
학습 데이터 생성 장치(200)는 수집 및 정제된 2D 이미지, 또는 증강 또는 합성으로 생성된 2D 이미지를 어노테이션 장치(300)에 배포하여 가공할 수 있다(S500).
학습 데이터 생성 장치(200)는 가공된 데이터를 패키징하여 인공지능(AI)의 기계 학습에 사용될 수 있는 데이터를 생성할 수 있다(S600).
그리고, 학습 데이터 생성 장치(200)는 생성된 인공지능(AI) 학습용 데이터를 인공지능 학습 장치(400)에 전송할 수 있다(S700).
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시예에 대하여 개시하였으나, 여기에 개시된 실시예 외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 선정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
학습 데이터 수집 장치: 100 학습 데이터 생성 장치: 200
어노테이션 장치: 300 인공지능 학습 장치: 400
통신부: 205 입출력부: 210
저장부: 215 데이터 구조 설계부: 220
데이터 수집 및 정제부: 225 데이터 증강 및 합성부: 230
데이터 가공부: 235 학습 데이터 생성부: 240

Claims (10)

  1. 학습 데이터 생성 장치가, 인공지능(Artificial Intelligence, AI)의 기계 학습(machine learning)을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택하는 단계;
    상기 학습 데이터 생성 장치가, 상기 선택된 2D 이미지 내에 포함된 제1 랜드마크(landmark)를 식별하는 단계;
    상기 학습 데이터 생성 장치가, 사전에 구비된 랜드마크 풀(pool)로부터 상기 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택하는 단계; 및
    상기 학습 데이터 생성 장치가, 상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 상기 제2 랜드마크로 대체하는 단계를 포함하되,
    상기 랜드마크는
    상기 2D 이미지들에 포함된 제1 객체(object)와 제2 객체를 서로 구별되게 하는 객체 내의 일 영역인 것을 특징으로 하고,
    상기 제1 랜드마크를 식별하는 단계는
    상기 2D 이미지들로부터 추출된 샘플 2D 이미지들에 포함된 랜드마크의 유형을 식별하고, 상기 식별된 랜드마크의 유형별 분포의 편향(skewed)을 기준으로 상기 제1 랜드마크를 식별하는 것을 특징으로 하며,
    상기 제2 랜드마크를 선택하는 단계는
    상기 랜드마크 풀에 포함된 랜드마크들 중에서, 상기 제1 랜드마크와 유형이 동일하나 상기 제1 랜드마크와 형상이 상이한 랜드마크를 상기 제2 랜드마크로 선택하는 것을 특징으로 하고,
    상기 제2 랜드마크를 선택하는 단계는
    상기 제1 랜드마크와 유형이 동일하며 상기 제1 랜드마크와 형상이 상이한 랜드마크가 복수 개인 경우, 상기 제1 랜드마크가 포함된 객체 내에 존재하는 제3 랜드마크를 식별하고, 상기 복수 개의 랜드마크 중에서 상기 제3 랜드마크와의 조화 율(balance rate)이 최대인 하나의 랜드마크를 선택하되,
    상기 조화 율은
    유형, 크기 및 색상 중 하나 이상을 기준으로 랜드마크들 사이의 조화 정도를 수치적으로 산출할 수 있도록 사전에 구비된 조화 표(balance table)에 대하여, 상기 복수 개의 랜드마크 중 하나와 상기 제3 랜드마크를 매칭하여 산출되는 것을 특징으로 하는, 데이터 증강 방법.
  2. 제1 항에 있어서, 상기 제2 랜드마크로 대체하는 단계는
    상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 제거하고, 상기 2D 이미지 내의 다른 영역을 복제(clone)하여 상기 제1 랜드마크가 제거된 영역을 채운 후, 상기 2D 이미지 내에서 상기 제1 랜드마크가 제거된 영역 상에 상기 제2 랜드마크를 겹치는(overwrite) 것을 특징으로 하는, 데이터 증강 방법.
  3. 제2 항에 있어서, 상기 제2 랜드마크로 대체하는 단계는
    상기 제2 랜드마크를 겹치기 이전에, 상기 제2 랜드마크와 상기 제1 랜드마크의 평균 대비(contrast) 값이 서로 동일하도록, 상기 제2 랜드마크의 대비 값을 변경하는 것을 특징으로 하는, 데이터 증강 방법.
  4. 제1 항에 있어서, 상기 제2 랜드마크로 대체하는 단계는
    상기 제1 랜드마크의 경계선(boundary line)이 상기 제1 랜드마크를 포함하고 있는 객체의 경계선과 닿는(contact) 경우, 상기 선택된 2D 이미지를 복수 개의 소 영역으로 분할한 후 상기 제1 랜드마크가 포함된 소 영역과 상기 제2 랜드마크가 포함된 소 영역을 서로 교환하는 것을 특징으로 하는, 데이터 증강 방법.
  5. 제1 항에 있어서, 상기 랜드마크 풀은
    상기 2D 이미지들에 대한 어노테이션(annotation) 작업 결과물을 기반으로, 2D 이미지들 내에 포함된 랜드마크들을 유형별, 크기별 및 색상별로 분류한 집합인 것을 특징으로 하는, 데이터 증강 방법.
  6. 메모리(memory);
    송수신기(transceiver); 및
    상기 메모리에 상주된 명령어를 처리하는 프로세서(processor)를 포함하여 구성된 컴퓨팅 장치와 결합되어,
    상기 프로세서가, 인공지능(AI)의 기계 학습을 위해 사전에 수집된 2D 이미지들 중에서 하나의 2D 이미지를 선택하는 단계;
    상기 프로세서가, 상기 선택된 2D 이미지 내에 포함된 제1 랜드마크를 식별하는 단계;
    상기 프로세서가, 사전에 구비된 랜드마크 풀로부터 상기 제1 랜드마크의 유형에 대응하는 제2 랜드마크를 선택하는 단계; 및
    상기 프로세서가, 상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 상기 제2 랜드마크로 대체하는 단계를 실행시키되,
    상기 랜드마크는
    상기 2D 이미지들에 포함된 제1 객체(object)와 제2 객체를 서로 구별되게 하는 객체 내의 일 영역인 것을 특징으로 하고,
    상기 제1 랜드마크를 식별하는 단계는
    상기 2D 이미지들로부터 추출된 샘플 2D 이미지들에 포함된 랜드마크의 유형을 식별하고, 상기 식별된 랜드마크의 유형별 분포의 편향(skewed)을 기준으로 상기 제1 랜드마크를 식별하는 것을 특징으로 하며,
    상기 제2 랜드마크를 선택하는 단계는
    상기 랜드마크 풀에 포함된 랜드마크들 중에서, 상기 제1 랜드마크와 유형이 동일하나 상기 제1 랜드마크와 형상이 상이한 랜드마크를 상기 제2 랜드마크로 선택하는 것을 특징으로 하고,
    상기 제2 랜드마크를 선택하는 단계는
    상기 제1 랜드마크와 유형이 동일하며 상기 제1 랜드마크와 형상이 상이한 랜드마크가 복수 개인 경우, 상기 제1 랜드마크가 포함된 객체 내에 존재하는 제3 랜드마크를 식별하고, 상기 복수 개의 랜드마크 중에서 상기 제3 랜드마크와의 조화 율(balance rate)이 최대인 하나의 랜드마크를 선택하되,
    상기 조화 율은
    유형, 크기 및 색상 중 하나 이상을 기준으로 랜드마크들 사이의 조화 정도를 수치적으로 산출할 수 있도록 사전에 구비된 조화 표(balance table)에 대하여, 상기 복수 개의 랜드마크 중 하나와 상기 제3 랜드마크를 매칭하여 산출되는 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
  7. 제6 항에 있어서, 상기 제2 랜드마크로 대체하는 단계는
    상기 선택된 2D 이미지 내에서 상기 제1 랜드마크를 제거하고, 상기 2D 이미지 내의 다른 영역을 복제(clone)하여 상기 제1 랜드마크가 제거된 영역을 채운 후, 상기 2D 이미지 내에서 상기 제1 랜드마크가 제거된 영역 상에 상기 제2 랜드마크를 겹치는(overwrite) 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
  8. 제7 항에 있어서, 상기 제2 랜드마크로 대체하는 단계는
    상기 제2 랜드마크를 겹치기 이전에, 상기 제2 랜드마크와 상기 제1 랜드마크의 평균 대비(contrast) 값이 서로 동일하도록, 상기 제2 랜드마크의 대비 값을 변경하는 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
  9. 제6 항에 있어서, 상기 제2 랜드마크로 대체하는 단계는
    상기 제1 랜드마크의 경계선(boundary line)이 상기 제1 랜드마크를 포함하고 있는 객체의 경계선과 닿는(contact) 경우, 상기 선택된 2D 이미지를 복수 개의 소 영역으로 분할한 후 상기 제1 랜드마크가 포함된 소 영역과 상기 제2 랜드마크가 포함된 소 영역을 서로 교환하는 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
  10. 제6 항에 있어서, 상기 랜드마크 풀은
    상기 2D 이미지들에 대한 어노테이션(annotation) 작업 결과물을 기반으로, 2D 이미지들 내에 포함된 랜드마크들을 유형별, 크기별 및 색상별로 분류한 집합인 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
KR1020210128477A 2021-09-29 2021-09-29 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 KR102403166B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210128477A KR102403166B1 (ko) 2021-09-29 2021-09-29 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
PCT/KR2022/007667 WO2023054833A1 (ko) 2021-09-29 2022-05-30 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210128477A KR102403166B1 (ko) 2021-09-29 2021-09-29 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR102403166B1 true KR102403166B1 (ko) 2022-05-30

Family

ID=81799925

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210128477A KR102403166B1 (ko) 2021-09-29 2021-09-29 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Country Status (2)

Country Link
KR (1) KR102403166B1 (ko)
WO (1) WO2023054833A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200005408A (ko) * 2018-07-06 2020-01-15 주식회사 메디웨일 안저 이미지 관리 장치 및 안저 이미지의 품질 판단 방법
KR20200042629A (ko) 2018-10-16 2020-04-24 주식회사 키센스 인공지능 학습을 위한 모바일 기기의 터치 기반 어노테이션과 이미지 생성 방법 및 그 장치
KR102170620B1 (ko) * 2019-05-10 2020-10-28 네이버 주식회사 지역적 특징을 가지는 분류기 학습을 위한 학습 데이터 생성 방법 및 그 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019198200A1 (ja) * 2018-04-12 2019-10-17 日本電気株式会社 学習用画像生成装置、学習用画像生成方法及びプログラム
KR102231794B1 (ko) * 2019-06-26 2021-03-25 유수연 인공지능을 이용하여 이미지의 객체를 제거하는 방법
KR20190110498A (ko) * 2019-09-10 2019-09-30 엘지전자 주식회사 영상 파일에서 불특정 인물의 얼굴 영역을 비식별화 처리하는 인공 지능 서버 및 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200005408A (ko) * 2018-07-06 2020-01-15 주식회사 메디웨일 안저 이미지 관리 장치 및 안저 이미지의 품질 판단 방법
KR20200042629A (ko) 2018-10-16 2020-04-24 주식회사 키센스 인공지능 학습을 위한 모바일 기기의 터치 기반 어노테이션과 이미지 생성 방법 및 그 장치
KR102170620B1 (ko) * 2019-05-10 2020-10-28 네이버 주식회사 지역적 특징을 가지는 분류기 학습을 위한 학습 데이터 생성 방법 및 그 시스템

Also Published As

Publication number Publication date
WO2023054833A1 (ko) 2023-04-06

Similar Documents

Publication Publication Date Title
US10726304B2 (en) Refining synthetic data with a generative adversarial network using auxiliary inputs
US10872420B2 (en) Electronic device and method for automatic human segmentation in image
KR102389998B1 (ko) 비식별 처리 방법 및 이를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102310613B1 (ko) 연속된 2d 이미지에서 객체 추적 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102403169B1 (ko) 이미지 분석을 통한 가이드 제공 방법 및 이를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102343056B1 (ko) 어노테이션을 위한 이미지의 데이터 로드를 감축시키는 방법
KR102356909B1 (ko) 인공지능 학습용 데이터의 객체를 지정하고 속성을 설정하는 어노테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102356910B1 (ko) 객체의 선제 검출 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102343059B1 (ko) 인공지능 기계 학습용 데이터 수집 시스템 및 이를 위한 장치
KR102310585B1 (ko) 용이하게 객체를 지정할 수 있는 어노테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102310612B1 (ko) 라이다 점군에서 특정된 객체 정보를 이용한 2d 이미지 객체 예측 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102313918B1 (ko) 3d 데이터와 2d 이미지의 동기화 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102310602B1 (ko) 다중 센서의 오차 보정 방법 및 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102403166B1 (ko) 기계 학습용 데이터 증강 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102395406B1 (ko) 기계 학습용 데이터 합성 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102313940B1 (ko) 연속된 3d 데이터에서 객체 추적 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102310601B1 (ko) 레이저 프리뷰를 이용한 학습 데이터 수집 방법 및 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102310608B1 (ko) 레이더 및 라이다를 기반으로 하는 자율주행 학습 데이터의 처리 방법 및 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102310604B1 (ko) 다중 센서에 의해 수집된 데이터의 처리 방법 및 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102343061B1 (ko) 개인정보 비식별 처리 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102313922B1 (ko) 연속되는 3d 점군 데이터의 품질 향상 방법
KR102439429B1 (ko) 객체 추출이 용이한 어노테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102403174B1 (ko) 중요도에 따른 데이터 정제 방법 및 이를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102395393B1 (ko) 센싱 환경 분석을 통한 가이드 제공 방법 및 이를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102485099B1 (ko) 메타 데이터를 이용한 데이터 정제 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Legal Events

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