KR20200047306A - 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 학습하는 방법 및 장치 그리고 이를 이용한 테스트 방법 및 장치 - Google Patents

다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 학습하는 방법 및 장치 그리고 이를 이용한 테스트 방법 및 장치 Download PDF

Info

Publication number
KR20200047306A
KR20200047306A KR1020190105485A KR20190105485A KR20200047306A KR 20200047306 A KR20200047306 A KR 20200047306A KR 1020190105485 A KR1020190105485 A KR 1020190105485A KR 20190105485 A KR20190105485 A KR 20190105485A KR 20200047306 A KR20200047306 A KR 20200047306A
Authority
KR
South Korea
Prior art keywords
learning
specific
class
category
box
Prior art date
Application number
KR1020190105485A
Other languages
English (en)
Other versions
KR102286760B1 (ko
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 주식회사 스트라드비젼
Publication of KR20200047306A publication Critical patent/KR20200047306A/ko
Application granted granted Critical
Publication of KR102286760B1 publication Critical patent/KR102286760B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24137Distances to cluster centroïds
    • G06K9/627
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/35Categorising the entire scene, e.g. birthday party or wedding scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Library & Information Science (AREA)
  • Medical Informatics (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

본 발명에서는 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 CNN을 학습하는 방법에 관한 것으로, 학습 장치가, (a) 객체 각각이 이에 해당하는 카테고리에 속하는 클래스과 객체에 대응되는 클래스로 주석이 달린 정보 각각에 대응될 때, 카테고리 별로 이미지 데이터를 각각 포함하는 학습용 데이터베이스와 카테고리 별 GT 라벨 세트를 구축하고 GT 라벨 세트가 이미지 데이터 세트에 대응하는 단계; (b) 학습용 데이터베이스 중 특정 클래스에 대응하는 특정 이미지 데이터 세트에 속하는 특정 이미지를 입력 이미지로 수신하고 특징 맵을 생성한 후, 특징 맵을 기초로 입력이미지에 포함되는 특정 객체에 대응하는 카테고리 별 분류 결과를 생성하는 단계; (c) 카테고리 별 로스를 이용하여 CNN의 파라미터를 학습하는 단계;를 포함하는 방법이 제공된다.

Description

다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 학습하는 방법 및 장치 그리고 이를 이용한 테스트 방법 및 장치{LEARNING METHOD AND LEARNING DEVICE USING MULTIPLE LABELED DATABASES WITH DIFFERENT LABEL SETS AND TESTING METHOD AND TESTING DEVICE USING THE SAME}
다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 CNN을 학습하는 방법에 관한 것으로; 보다 상세하게는, 상기 다른 라벨 세트를 가지는 복수의 라벨링된 상기 데이터베이스를 이용하여 상기 CNN을 학습하는 방법에 있어서, (a) (i) 카테고리 별로 복수의 객체의 복수의 클래스(class)에 대한 이미지를 분류하여 획득한 상기 카테고리 별 이미지 데이터 세트와, (ii) 상기 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 이미지 데이터 세트 각각에 포함된 상기 이미지 각각에 있는 상기 객체 각각을 확인하여, 상기 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 객체 각각에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 단계; (b) 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 이미지 데이터 세트에 속하는 적어도 하나의 특정 이미지를 적어도 하나의 입력 이미지로서 수신하고, 상기 입력 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 특징 맵을 생성한 후, 상기 특징 맵을 바탕으로 상기 입력 이미지에 포함된 적어도 하나의 특정 객체에 대응하는 분류(classification) 결과를 상기 카테고리 별로 생성하되, 상기 입력 이미지가 상기 특정 클래스에 대응하는 상기 특정 객체를 포함하는 단계; 및 (c) 상기 카테고리 별 상기 분류 결과와 이에 대응되는, 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 단계;를 포함하는 것을 특징으로 하는 방법 및 학습 장치, 이를 이용한 테스트 장치 및 테스트 장치에 관한 것이다.
딥러닝은 사물이나 데이터를 군집화하거나 분류하는 데 사용하는 기술이다. 예를 들어 컴퓨터는 사진만으로 개와 고양이를 구분하지 못한다. 하지만 사람은 아주 쉽게 구분할 수 있다. 이를 위해 '기계학습(Machine Learning)'이라는 방법이 고안됐다. 많은 데이터를 컴퓨터에 입력하고 비슷한 것끼리 분류하도록 하는 기술이다. 저장된 개 사진과 비슷한 사진이 입력되면, 이를 개 사진이라고 컴퓨터가 분류하도록 한 것이다.
데이터를 어떻게 분류할 것인가를 놓고 이미 많은 기계학습 알고리즘이 등장했다. '의사결정나무'나 '베이지안망', '서포트벡터머신(SVM)', '인공신경망' 등이 대표적이다. 이 중 딥러닝은 인공신경망의 후예다.
딥 컨벌루션 뉴럴 네트워크(Deep Convolutional Neural Networks; Deep CNN)는 딥 러닝 분야에서 일어난 놀라운 발전의 핵심이다. CNN은 글자 인식 문제를 풀기 위해 90년대에 이미 사용되었지만, 현재처럼 널리 쓰이게 된 것은 최근의 연구 결과 덕분이다. 이러한 딥 CNN은 2012년 ImageNet 이미지 분류 시합에서 다른 경쟁자들을 이기고 우승을 차지했다. 그리고 나서 컨벌루션 뉴럴 네트워크는 기계 학습(Machine Learning) 분야에서 매우 유용한 툴이 되었다.
도 1은 종래 기술에 따라 딥 CNN을 이용해 사진에서 획득하고자 하는 다양한 출력의 예를 나타낸다.
분류(Classification)는 사진에서 식별하고자 하는 클래스(class)의 종류, 예들 들어, 도 1에 도시된 바와 같이, 획득된 객체가 사람인지, 양인지, 개인지 종류를 식별하는 방법이며, 검출(Detection)은 모든 객체를 찾고, 찾은 객체를 바운딩 박스(Bounding Box)에 둘러싸인 형태로 표시하는 방법이고, 세그멘테이션(segmentation)은 사진에서 특정 객체의 영역을 다른 객체와 구분하는 방법이다. 최근 딥러닝(Deep learning) 기술이 각광을 받으면서 분류, 검출 및 세그멘테이션 기술도 딥러닝을 많이 사용한다.
도 2는 CNN을 이용한 검출 방법을 간략하게 나타낸 도이다.
도 2를 참조하면, 학습 장치는, 입력 이미지를 수신해, 복수의 컨벌루션 필터(또는 컨벌루션 레이어)를 통해 입력 이미지에 컨벌루션 연산을 여러 번 적용하여 적어도 하나의 특징 맵을 생성한다. 그런 다음, 학습 장치는, 특징 맵을 검출 레이어(detection layer)에 통과시켜 적어도 하나의 바운딩 박스를 생성하도록 한 후, 바운딩 박스를 필터링 레이어(filtering layer)에 통과시켜 최종 검출 결과를 생성한다. 그 후, 검출 결과와 이에 대응하는 GT(Ground Truth) 값을 참조해, 획득된 로스 값을 이용하여 백프로파게이션(backpropagation)을 수행하되, 이에 대응하는 GT 값은 사전에 사람이 주석을 달아놓은 값으로 검출기(학습 장치)로 하여금 검출 결과 값이 GT 값에 점점 가까워지도록 한 값이다.
이때, 학습된 검출기의 성능은 학습용 데이터베이스의 크기에 어느 정도 비례할 수 있다.
기존의 학습 방법에서는, 도 3에 도시된 바와 같이, 학습 프로세스에 사용할 이미지 데이터베이스에는 검출하고자 하는 모든 클래스에 대해 주석이 달린 복수의 GT 이미지가 저장된다.
그러나 이와 같은 기존의 방식으로는 기존의 클래스가 학습된 상태에서 '신호등', '교통 표지판'과 같이 새로운 클래스를 추가로 학습해야 하는 경우에 기존의 데이터베이스 내의 기존의 모든 트레이닝 이미지에 대해 새로운 클래스에 대응하는 객체를 모두 찾아 주석을 달아야 한다. 또한 기존의 트레이닝 이미지 외에 새로 추가되는 트레이닝 이미지에 대해서도 새로운 클래스뿐만 아니라 기존의 모든 클래스에 대해서 다시 주석 작업을 해야 해 학습 프로세스가 비효율적인 불편함이 존재하였다.
본 발명은 상술한 문제점을 모두 해결하는 것을 목적으로 한다.
또한, 본 발명은 새로 학습할 클래스가 추가되는 경우 효율적인 학습 방법을 제공하는 것을 다른 목적으로 한다.
또한, 본 발명은 기존에 학습된 파라미터를 훼손하지 않으며, 새로운 클래스에 대해 분리된 데이터베이스를 통해 학습 비용과 학습 시간을 줄이면서 새로운 클래스에 대한 학습을 별도로 추가할 수 있는 방법을 제공하는 것을 또 다른 목적으로 한다.
본 발명의 일 태양에 따르면, 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 CNN을 학습하는 방법에 있어서, (a) 학습 장치가, (i) 카테고리 별로 복수의 객체의 복수의 클래스(class)에 대한 이미지를 분류하여 획득한 상기 카테고리 별 이미지 데이터 세트와, (ii) 상기 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 이미지 데이터 세트 각각에 포함된 상기 이미지 각각에 있는 상기 객체 각각을 확인하여, 상기 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 객체 각각에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 단계; (b) 상기 학습 장치가, 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 이미지 데이터 세트에 속하는 적어도 하나의 특정 이미지를 적어도 하나의 입력 이미지로서 수신하고, 상기 입력 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 특징 맵을 생성한 후, 상기 특징 맵을 바탕으로 상기 입력 이미지에 포함된 적어도 하나의 특정 객체에 대응하는 분류(classification) 결과를 상기 카테고리 별로 생성하되, 상기 입력 이미지가 상기 특정 클래스에 대응하는 상기 특정 객체를 포함하는 단계; 및 (c) 상기 학습 장치가, 상기 카테고리 별 상기 분류 결과와 이에 대응되는, 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 단계;를 포함하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (c) 단계에서, 상기 학습 장치가, 상기 카테고리 별 상기 분류 결과와 이에 대응하는 상기 GT라벨 세트의 상기 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (i) 상기 학습 장치가, 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 학습 장치가, 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (b) 단계에서, 상기 학습 장치는 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하고, 상기 (c) 단계에서, 상기 학습 장치는, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (b) 단계에서, 상기 학습 장치는, 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하며, 상기 (c) 단계에서, 상기 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하고, 상기 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 분류 로스를 산출함으로써, (i) 상기 학습 장치가 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 학습 장치가 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며, 상기 (c) 단계에서, 상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, (i) 상기 카테고리 별 상기 분류 결과 중 상기 특정 클래스에 대한 상기 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과와 (ii) 이에 대응하는, 상기 특정 GT 라벨 세트 내의 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 소정의 임계치는 I.O.U(intersection over union)가 0.5 인 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (c) 단계에서, 상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (i) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (ii) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (a) 단계에서, 상기 제1 내지 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 학습 장치는, (i) 상기 새로운 클래스에 대한 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 방법이다.
본 발명의 또 다른 태양에 따르면, 테스트 이미지에 대한 CNN을 사용한 테스트(test) 방법에 있어서, (a) 학습 장치가, (I) (i) 카테고리 별로 복수의 학습용 객체의 복수의 클래스에 대한 트레이닝 이미지를 분류하여 획득한 상기 카테고리 별 학습용 이미지 데이터 세트와, (ii) 상기 학습용 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 학습용 이미지 데이터 세트 각각에 포함된 상기 트레이닝 이미지 각각에 있는 상기 학습용 객체 각각을 확인하여, 상기 학습용 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 학습용 객체 각각에 이에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 프로세스; (II) 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 학습용 이미지 데이터 세트에 속하는 적어도 하나의 특정 트레이닝 이미지를 수신하고, 상기 트레이닝 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 학습용 특징 맵을 생성한 후, 상기 획득된 학습용 특징 맵을 바탕으로 상기 트레이닝 이미지에 포함된 적어도 하나의 특정 학습용 객체에 대응하는 상기 카테고리 별 학습용 분류 결과를 생성하되, 상기 트레이닝 이미지가 상기 특정 학습용 클래스에 대응하는 상기 특정 학습용 객체를 포함하는 프로세스; 및 (III) 상기 카테고리 별 학습용 분류 결과와 이에 대응되는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 프로세스;를 수행한 상태에서, 테스트 장치가 적어도 하나의 테스트 이미지를 획득하는 단계 및 (b) 상기 테스트 장치가, 상기 CNN을 이용하여 상기 테스트 이미지 내에 포함된 적어도 하나의 테스트용 객체의 적어도 하나의 클래스에 대응되는 테스트용 분류 결과를 생성하는 단계;를 포함하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (III) 프로세스에서, 상기 학습 장치가, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가, 상기 학습용 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가, 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 학습 장치가 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과를 더 획득하고, 상기 (III) 프로세스에서, 상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 학습 장치는, 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과 값을 더 획득하며, 상기 (III) 프로세스에서, 상기 학습용 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하여, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여, 상기 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며, 상기 (III) 프로세스에서, 상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가 (i) 상기 카테고리 별 상기 학습용 분류 결과 중 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과와 (ii) 상기 특정 GT 라벨 세트 내의 이에 대응하는 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (III) 프로세스에서, 상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (III-1) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 학습용 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 방법이다.
일 실시예에서, 상기 (I) 단계에서, 상기 제1 내지 상기 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 학습 장치는, (i) 상기 새로운 클래스에 대한 학습용 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 학습용 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 방법이다.
본 발명의 또 다른 태양에 따르면, 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 CNN을 학습하는 학습 장치에 있어서, (i) 카테고리 별로 복수의 객체의 복수의 클래스(class)에 대한 이미지를 분류하여 획득한 상기 카테고리 별 이미지 데이터 세트와, (ii) 상기 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 이미지 데이터 세트 각각에 포함된 상기 이미지 각각에 있는 상기 객체 각각을 확인하여, 상기 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 객체 각각에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스인, 상기 학습용 제n 데이터베이스 중으로부터 특정 클래스에 대응되는 특정 이미지 세트에 속하는 적어도 하나의 특정 이미지를 적어도 하나의 입력 이미지로 수신하는 통신부; 및 (I) 상기 입력 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 특징 맵을 생성한 후, 상기 특징 맵을 바탕으로 상기 입력 이미지에 포함된 적어도 하나의 특정 객체에 대응하는 분류(classification) 결과를 상기 카테고리 별로 생성하되, 상기 입력 이미지가 상기 특정 클래스에 대응하는 상기 특정 객체를 포함하는 프로세스; 및 (II) 상기 카테고리 별 상기 분류 결과와 이에 대응되는, 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 프로세스;를 수행하는 프로세서를 포함하는 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 프로세서가, 상기 카테고리 별 상기 분류 결과와 이에 대응하는 상기 GT라벨 세트의 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (i) 상기 프로세서가, 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 프로세서가, 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 (I) 프로세스에서, 상기 프로세서는 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하고, 상기 (II) 프로세스에서, 상기 프로세서는, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 (I) 프로세스에서, 상기 프로세서는, 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하며, 상기 (II) 프로세스에서, 상기 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 프로세서가, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하고, 상기 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 분류 로스를 산출함으로써, (i) 상기 프로세서가 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 프로세서가 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며, 상기 (II) 프로세스에서, 상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 프로세서가, (i) 상기 카테고리 별 상기 분류 결과 중 상기 특정 클래스에 대한 상기 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과와 (ii) 이에 대응하는, 상기 특정 GT 라벨 세트 내의 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 소정의 임계치는 I.O.U(intersection over union)가 0.5 인 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (i) 상기 프로세서가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (ii) 상기 프로세서가 상기 특정 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 학습 장치이다.
일 실시예에서, 상기 제1 내지 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 프로세서가, (i) 상기 새로운 클래스에 대한 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 학습 장치이다.
본 발명의 또 다른 태양에 따르면, 테스트 이미지에 대한 CNN을 사용한 테스트(test) 장치에 있어서, 학습 장치가, (I) (i) 카테고리 별로 복수의 학습용 객체의 복수의 클래스에 대한 트레이닝 이미지를 분류하여 획득한 상기 카테고리 별 학습용 이미지 데이터 세트와, (ii) 상기 학습용 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 학습용 이미지 데이터 세트 각각에 포함된 상기 트레이닝 이미지 각각에 있는 상기 학습용 객체 각각을 확인하여, 상기 학습용 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 학습용 객체 각각에 이에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 프로세스; (II) 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 학습용 이미지 데이터 세트에 속하는 적어도 하나의 특정 트레이닝 이미지를 수신하고, 상기 트레이닝 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 학습용 특징 맵을 생성한 후, 상기 획득된 학습용 특징 맵을 바탕으로 상기 트레이닝 이미지에 포함된 적어도 하나의 특정 학습용 객체에 대응하는 상기 카테고리 별 학습용 분류 결과를 생성하되, 상기 트레이닝 이미지가 상기 특정 학습용 클래스에 대응하는 상기 특정 학습용 객체를 포함하는 프로세스; 및 (III) 상기 카테고리 별 학습용 분류 결과와 이에 대응되는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 프로세스;를 수행한 상태에서, 적어도 하나의 테스트 이미지를 획득하는 통신부; 및 상기 CNN을 이용하여 상기 테스트 이미지 내에 포함된 적어도 하나의 테스트용 객체의 적어도 하나의 클래스에 대응되는 테스트용 분류 결과를 생성하는 프로세스를 수행하는 프로세서;를 포함하는 것을 특징으로 하는 테스트 장치이다.
일 실시예에서, 상기 (III) 프로세스에서, 상기 학습 장치가, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가, 상기 학습용 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가, 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 테스트 장치이다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 학습 장치가 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과를 더 획득하고, 상기 (III) 프로세스에서, 상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 테스트 장치이다.
일 실시예에서, 상기 (II) 프로세스에서, 상기 학습 장치는, 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과 값을 더 획득하며, 상기 (III) 프로세스에서, 상기 학습용 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하여, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여, 상기 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며, 상기 (III) 프로세스에서, 상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가 (i) 상기 카테고리 별 상기 학습용 분류 결과 중 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과와 (ii) 상기 특정 GT 라벨 세트 내의 이에 대응하는 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 테스트 장치이다.
일 실시예에서, 상기 (III) 프로세스에서, 상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (III-1) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 학습용 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 테스트 장치이다.
일 실시예에서, 상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 테스트 장치이다.
일 실시예에서, 상기 (I) 프로세스에서, 상기 제1 내지 상기 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 학습 장치는, (i) 상기 새로운 클래스에 대한 학습용 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 학습용 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 테스트 장치이다.
본 발명에 따르면, 학습 장치가, 제공되는 카테고리 별로 분리된 학습 데이터베이스를 사용하기에, 새로 추가되는 클래스에 대한 이미지만 학습하고 클래스에 대해서만 주석 작업을 한 데이터베이스를 추가로 학습하면 충분하기 때문에 효율적인 학습 프로세스를 수행할 수 있는 효과가 있다.
또한 본 발명에 따르면, 새롭게 추가된 학습 데이터만 학습하더라도 기존에 학습된 CNN의 파라미터를 훼손하지 않고, 새로운 클래스를 검출할 수 있는 학습 능력을 효율적으로 얻을 수 있는 다른 효과가 있다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 “통상의 기술자”)에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 기존 기술에 따라 CNN을 통해 이미지에서 획득한 다양한 출력의 예를 나타낸다.
도 2는 기존 기술에 따라 CNN을 이용한 검출 방법을 간략하게 나타낸다.
도 3은 기존 기술에 따라 모든 클래스(class)에 대하여 주석 작업을 하여 만든 학습 데이터의 예를 나타낸다.
도 4는 본 발명에 따라 카테고리 별로 클래스를 분류하고 이미지 내 객체의 클래스에 대하여 주석 작업하여 형성된 카테고리 별 분리된 데이터베이스를 나타낸다.
도 5는 본 발명에 따른 분리된 데이터베이스를 이용한 학습 프로세스를 나타낸다.
도 6은 본 발명에 따른 학습 프로세스에서의 분류 결과를 생성하는 일 예를 나타낸다.
도 7은 본 발명에 따른 학습 프로세스에서의 분류 결과를 생성하는 다른 예를 나타낸다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다.
또한, 본 발명의 상세한 설명 및 청구항들에 걸쳐, “포함하다”라는 단어 및 그것의 변형은 다른 기술적 특징들, 부가물들, 구성요소들 또는 단계들을 제외하는 것으로 의도된 것이 아니다. 통상의 기술자에게 본 발명의 다른 목적들, 장점들 및 특성들이 일부는 본 설명서로부터, 그리고 일부는 본 발명의 실시로부터 드러날 것이다. 아래의 예시 및 도면은 실례로서 제공되며, 본 발명을 한정하는 것으로 의도된 것이 아니다.
더욱이 본 발명은 본 명세서에 표시된 실시예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
본 발명에서 언급하는 각종 이미지는 포장 또는 비포장 도로 관련 이미지를 포함할 수 있으며, 이 경우 도로 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니며, 본 발명에서 언급하는 각종 이미지는 도로와 상관 없는 이미지(가령, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내와 관련된 이미지)일 수도 있으며, 이 경우, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 4는 본 발명에 따라 카테고리 별로 이미지를 분류하고 카테고리 별 이미지 내의 객체 클래스에 대해 주석 작업을 하여 형성된 분리된 데이터베이스를 나타내며, 도 5는 본 발명에 따른 분리된 데이터베이스를 이용한 학습 프로세스를 나타낸다.
도 4를 참조하면, 본 발명에 따른 복수의 학습용 데이터베이스는 카테고리 별로 복수의 객체의 복수의 클래스에 대한 이미지를 분류하여 획득한 카테고리 별 이미지 데이터 세트를 포함한다. 이 카테고리 별 이미지 데이터 세트는, (i) 자동차, 사람, 이륜차 등의 클래스를 포함하는 카테고리의 이미지가 포함된 제1 이미지 데이터 세트, (ii) 교통 표지판, 신호등 등의 클래스를 포함하는 카테고리의 이미지가 포함된 제2 이미지 데이터 세트, 및 (iii) 개, 고양이, 사슴 등의 클래스를 포함하는 카테고리의 이미지가 포함된 제3 이미지 데이터 세트로 분류된다. 물론, 학습용 데이터베이스의 개수가 이에 한정되는 것은 아니다.
그리고 도 4의 카테고리 별 GT 라벨 세트는 사람이 직접 각각의 클래스마다 주석 작업을 수행한 라벨 이미지를 포함하고, 카테고리 별 이미지 데이터 세트에 대응되도록 GT 라벨 세트가 분류된다. 즉, 카테고리 별 GT 라벨 세트는, 각각의 이미지 데이터 세트에 포함된 각각의 이미지 내의 각각의 객체를 확인하여, 이에 대응하는 카테고리에 속한 클래스에 객체 각각이 대응되면 객체 각각에 대응하는 클래스로 주석이 달린 정보를 부여하여 생성된다. 이 때, GT 라벨 세트 각각은 이미지 데이트 세트 각각에 대응된다. 예를 들어, (i) 제1 이미지 데이터 세트에 속한 이미지의 경우, 자동차, 사람, 이륜차와 같은 클래스를 포함하는 카테고리에 속하는 클래스에만 주석 작업이 되어 있고, 나머지 카테고리의 클래스(예를 들어, 교통 표지판, 신호등, 개, 고양이, 사슴 등)에 대해서는 주석 작업이 되어 있지 않고, (ii) 제2 이미지 데이터 세트에 속한 이미지의 경우, 교통 표지판, 신호등과 같은 클래스를 포함하는 카테고리에 속한 클래스만 주석 작업이 되어 있고, 나머지 카테고리의 클래스(예를 들어, 자동차, 사람, 이륜차, 개, 고양이, 사슴 등)에 대해서는 주석 작업이 되어 있지 않고, (iii) 제3 이미지 데이터 세트에 속한 이미지의 경우, 개, 고양이, 사슴과 같은 클래스를 포함하는 카테고리에 속한 클래스만 주석 작업이 되어 있고, 나머지 카테고리의 클래스(예를 들어, 자동차, 사람, 이륜차, 교통 표지판, 신호등 등)에 대해서는 주석 작업이 되어 있지 않다. 즉, 이렇게 카테고리가 n 개 있다면 제1 내지 제n GT 라벨 세트가 필요하다. 이렇게 하여 카테고리 별 이미지 데이터 세트 및 이에 대응하는 카테고리 별 GT 라벨 세트는 카테고리 별로 제1 내지 제n 학습용 데이터베이스가 구축되는 것을 허용한다.
다른 실시예로, 특정 이미지에 대해서, 특정 카테고리에 속하는 클래스가 이에 대응하는 클래스 그 자체로 주석이 달리고, 나머지 카테고리에 대해서는 배경으로 주석 작업을 할 수 있을 것이다. 또한, 하나의 이미지에 대해서 n 개의 GT 라벨 세트를 생성하여, 카테고리 별로 n 개의 GT 라벨 세트를 분류할 수도 있을 것이다. 이 경우, 특정 카테고리의 특정 GT 라벨 세트에서는 특정 객체의 특정 클래스만 주석 작업이 되고, 나머지 카테고리의 GT 라벨 세트에서는 상기 특정 객체에 대해 배경으로 주석이 달려 카테고리 별 GT 라벨 세트가 형성될 것이다.
이러한 카테고리 별 GT 라벨 세트는 도 4의 우측에 보여지는 바와 같이 카테고리 별 클래스 주석 그룹에 대응될 것이다. 즉, (i) 자동차/사람/이륜차 데이터베이스(410) 내의 제1 이미지 데이터 세트에 대해서는 상기 주석(411)이 부여되고, (ii) 교통 표지판/신호등 데이터베이스(420) 내의 제2 이미지 데이터 세트에 대해서는 상기 주석(421)이 부여되고, (iii) 동물 데이터베이스(430) 내의 제3 이미지 데이터 세트에 대해서는 상기 주석(431)이 부여될 것이다.
자동차/사람/이륜차 카테고리, 교통 표지판/신호등 카테고리 및 개/고양이/사슴 카테고리의 기존의 클래스가 학습된 상태에서 제1 내지 제n 학습용 데이터베이스에 포함되는 기존의 클래스와는 다른 새로운 클래스에 대한 학습 요청이 수신되면, 학습 장치가, (i) 새로운 클래스에 대한 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1의 이미지 데이터 세트와 (ii) 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1의 GT 라벨 세트를 추가로 획득하여 새로운 제n+1 학습용 데이터베이스를 구축한다.
이하, 도 4에 도시된 학습용 데이터베이스를 이용하여 학습 프로세스를 수행하는 검출기의 프로세스는 도 5를 참조해 설명할 수 있다.
도 5를 참조하면, 본 발명에 따른 학습 방법은, 카테고리 별로 분리된 이미지 데이터 세트를 포함하는 학습용 데이터베이스를 구축하는 단계(S01), 특정 카테고리에 대응하는 특정 데이터베이스에서 선택된 입력 이미지에 컨벌루션 연산을 적용하여 특징 맵을 생성하는 단계(S02), 특징 맵을 바탕으로 입력 이미지에 포함되는 적어도 하나의 특정 객체에 대응하는 분류 결과를 카테고리 별로 생성하는 단계(S03), 특징 맵을 바탕으로 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 생성하는 단계(S04) 및 박스 결과와 카테고리 별 분류 결과를 이용하여 카테고리별 독립된 학습 프로세스를 통해 CNN의 적어도 하나의 파라미터를 최적화하는 단계(S05)를 포함한다.
구체적으로, S01단계에서 도 4에 도시된 바와 같이 카테고리 별로 제1 내지 제n 학습용 데이터베이스가 구축된다. 그런 다음, S02단계에서, 도 2에 도시된 바와 같이 입력 이미지가 CNN에 입력되어 특징 맵을 생성할 수 있다. 예를 들어, 특정 클래스에 대응하는 도 4의 교통 표지판/신호등 데이터베이스(420) 내의 특정 이미지 데이터 세트에 속하는 특정 이미지가 입력 이미지로 선택되는 경우가 있다. 이때 입력 이미지는 특정 클래스에 대응하는 특정 객체(예를 들어 신호등)를 포함하는 이미지이다. 그리고, 학습 장치는 이 입력 이미지를 받아, 복수의 컨벌루션 필터(또는 컨벌루션 레이어)를 통해 여러 번의 컨벌루션 연산을 수행하여 특징 맵을 생성한다.
S03단계에서, 입력 이미지에 포함된 특정 객체에 대응하는 분류 결과는 도 6에 도시된 바와 같이, 카테고리 별로 생성된다. 구체적으로 도 6에 도시된 바와 같이 교통 표지판/신호등 데이터베이스에서 선택한 입력 이미지이더라도, 객체 검출기는 자동차/사람/이륜차 데이터베이스에 대응하는 특정 GT 라벨 세트(620)와 비교를 위해 사용되는 특정 분류 결과 뿐만 아니라, (i) 동물 데이터베이스 및 교통 표지판/신호등 데이터베이스에 각각 대응하는 다른 GT 라벨 세트(610, 630)와 비교하기 위한 분류 결과도 같이 산출한다. 즉, 학습용 데이터베이스가 n개 있다면, 결과도 n 개의 GT 라벨 세트와의 비교를 위해 n개가 출력이 된다.
S04단계에서 특징 맵을 검출 레이어(Detection Layer)에 통과시켜 복수의 바운딩 박스를 얻고 이 바운딩 박스에 대한 정보를 필터링 레이어(Filtering Layer)에 통과시켜 박스 결과를 얻는다.
S05단계는 도 6 및 도 7을 참조하여 구체적으로 설명된다. 도 6은 본 발명에 따른 학습 프로세스에서의 카테고리 별 분류 결과를 생성하는 일 예를 나타내고, 도 7은 본 발명에 따른 CNN 학습 프로세스에서의 카테고리 별 분류 결과를 생성하는 다른 예를 나타낸다.
우선 도 6은 박스 결과 가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우이며, 도 7은 박스 결과가 GT 박스와 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우로, 각각 상이한 학습 프로세스를 거친다.
이때, 상기 소정의 임계치는 I.O.U (Intersection over Union)가 0.5 인 것으로 설정될 수 있다. 예를 들어, 박스 결과가 GT 박스와 70% 정도 겹쳐져 있다면, I.O.U 값은 70/(30+70+30) = 0.53 가 될 것이다.
도 6에 도시된 예는, 신호등을 학습하기 위해 입력 이미지를 입력했을 때, 박스 결과가 신호등을 제대로 검출한 경우이며, 도 7에 도시된 예는, 신호등을 학습하기 위해 입력 이미지를 입력했을 때 박스 결과가 신호등이 아닌 엉뚱한 물체(예를 들어 자동차)를 검출한 경우를 도시한다.
도 6은 신호등을 학습하기 위해 입력 이미지가 입력 되었을 때 박스 결과가 제대로 신호등을 검출한 경우를 나타내고, 도7은 신호등을 학습하기 위해 입력 이미지가 입력되었을 때 박스 결과가 신호등이 아닌 잘못된 객체(예를 들어 자동차)를 검출한 경우를 나타낸다.
박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우에는, 학습 장치가 박스 결과와 이에 대응하는 GT 박스를 참조하여 박스 로스를 산출하고, 분류 결과와 이에 대응하는 카테고리 별 GT 라벨 세트의 각각의 GT 값을 참조로 하여 분류 로스를 산출함으로써 백프로파게이션을 하여 CNN의 파라미터 학습을 수행한 결과, (i) 학습 장치가 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 특정 클래스로 판단하고, (ii) 학습 장치가 특정 클래스에 대한 주석 정보가 포함되지 않은 적어도 하나의 나머지 GT 라벨 세트에 대응하는 적어도 하나의 나머지 분류 결과를 배경으로 판단하게 된다.
예를 들어, 도 6에 도시된 바와 같이, 신호등을 학습하기 위해 입력 이미지를 입력했을 때, 자동차/사람/이륜차 데이터베이스에 대응하는 GT 라벨 세트(610)와 비교하기 위한 분류 결과가 사람으로 판단된다면, 자동차/사람/이륜차 데이터베이스에 대응하는 GT 라벨 세트(610)와 비교하는 분류 결과로는 신호등이 배경으로 인식되어야 하기 때문에, 이는 학습 장치가 잘못된 분류 결과를 낸 것으로 볼 수 있다. 따라서, 잘못된 분류 결과가 생성된 것으로 보고 분류 로스가 산출되며, 백프로파게이션을 수행하여 자동차/사람/이륜차 데이터베이스에 대응하는 GT 라벨 세트(610)와 비교하기 위한 분류 결과가 배경으로 인식될 확률이 높아지도록 한다.
그리고, 교통 표지판/신호등 데이터베이스에 대응하는 GT 라벨 세트(620)와 비교하기 위한 분류 결과가 신호등으로 판단되었다면, 이는 학습 장치가 제대로 분류 결과를 낸 것으로 볼 수 있다. 따라서, 맞는 분류 결과가 생성된 것으로 보고 분류 로스는 산출되지 않는다. 만일, 잘못된 분류 결과가 생성됐다면, 분류 로스를 산출하고 백프로파게이션을 수행하여 교통 표지판/신호등 데이터베이스에 대응하는 GT 라벨 세트(620)와 비교하기 위한 분류 결과가 신호등으로 인식될 확률이 높아지도록 한다.
또한, 동물 데이터베이스에 대응하는 GT 라벨 세트(630)와 비교하기 위한 분류 결과가 고양이로 판단되었다면, 동물 데이터베이스에 대응하는 GT 라벨 세트(630)와 비교하기 위한 분류 결과가 배경으로 인식되어야 하기 때문에, 이는 학습 장치가 잘못된 분류 결과를 낸 것으로 볼 수 있다. 따라서, 잘못된 분류 결과가 생성된 것으로 보고 분류 로스가 산출되며 백프로파게이션이 수행되어 동물 데이터베이스에 대응하는 GT 라벨 세트(630)와 비교하기 위한 분류 결과가 배경으로 인식될 확률이 높아지도록 한다.
한편, 도 7과 같이, 박스 결과가 GT 박스와 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우에는, 검출기가 특정 객체를 전혀 엉뚱한 위치에서 찾으려 시도하는 것으로 볼 수 있고, 상기 특정 객체가 아닌 다른 객체를 검출한 것으로 볼 수 있다. 예를 들어, 도7에서는 신호등 대신 자동차가 잘못 검출되었다. 이러한 경우, CNN에 의해 검출된 박스 결과 내 잘못된 객체의 클래스는 관심 대상이 아니다. 이 경우 CNN이 배경 영역을 특정 객체의 영역으로 잘못 예측한 것이기 때문에, 학습 장치가 클래스를 잘못 맞힌 것이다. 그러므로 CNN의 파라미터를 학습하기 위해 백프로파게이션을 수행하여 분류 결과가 배경으로 분류되도록 한다.
예를 들어, 도 7에 도시된 바와 같이, 신호등을 학습하기 위해 신호등/교통 표지판 데이터베이스에서 선택된 입력 이미지를 입력했을 때, 학습 장치가 리그레션을 통해 신호등의 위치를 검출해야 했다. 하지만 학습 장치가 자동차의 위치를 신호등의 위치로 잘못 검출했다면, 자동차의 위치를 신호등으로 잘못 검출한 것에 대한 패널티는 주지 않는 방향으로 학습 프로세스가 진행된다. 따라서 본 발명의 일 실시예에 따르면 도 7과 같이, 박스 결과가 GT 박스와 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우에는, 박스 결과와 GT 박스를 참조하여 박스 로스를 산출하여 상기 박스 로스를 바탕으로 백프로파게이션을 수행할 수도 있다. 다른 실시예에 따르면, 박스 결과가 GT 박스와 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우에는, 박스 로스를 산출을 하지 않을 수도 있다. 그리고 CNN이 검출한 영역은 올바른 클래스와 관련이 없지만 배경과 관련 있는 방향으로 학습 프로세스가 진행된다.
박스 결과가 GT 박스와 소정의 임계치 미만으로 겹치는 경우, 입력 이미지가 교통 표지판/신호등 데이터베이스 내의 이미지라면, CNN이 검출한 객체(예를 들어 자동차)가 교통 표지판/신호등 데이터베이스의 GT 라벨 세트(720)에서는 배경으로 취급되어야 하기 때문에, 교통 표지판/신호등 데이터베이스의 GT 라벨 세트(720)를 참조하여 분류 결과를 분류 GT와 비교하여 학습 프로세스를 수행한다. 즉, 리그레션 박스가 신호등을 검출해야 하는데, 자동차를 리그레션 박스가 잘못 검출하면, 교통 표지판/신호등 데이터베이스의 GT 라벨 세트(720)와 비교하기 위한 분류 결과는 배경으로 분류될 것이다. 그렇지만, 다른 GT 라벨 세트(710 및 730)를 참조할 경우, 학습 장치가 (객체가 자동차이지만) 이미지 내에 있는 객체가 무엇인지를 모르고, 이에 대응되는 GT 이미지도 찾지 못 한다. 그러므로 분류 로스가 산출되지 않고, 학습 프로세스가 수행되지 않는다. 이는, GT 라벨 세트(710 및 730)에 따라 교통 표지판/신호등 데이터베이스에서 선택된 이미지 내에서, 학습 장치가 자동차를 검출했을지라도, 이 객체가 무엇인지가 명확하지 않기에, 자동차/사람/이륜차 데이터베이스에서 선택된 다른 이미지를 사용하여 완료된 자동차 등을 인식하기 위한 기존의 학습 프로세스가 결과에 영향을 주지 않도록, 교통 표지판/신호등 데이터베이스의 GT 라벨 세트(710 및 730)를 이용하여 학습 프로세스가 수행되지 않는 대신, 교통 표지판/신호등 데이터베이스의 GT 라벨 세트(720)만 이용하여 학습 프로세스가 수행된다. 즉, 교통 표지판/신호등 데이터베이스의 GT 라벨 세트(720)를 참조하여 검출된 클래스가 배경으로 인식될 확률이 높아지도록 학습 프로세스가 수행된다.
도 7의 예를 바탕으로 박스 결과가 GT 박스와 소정의 임계치 미만으로 겹치는 경우의 학습 프로세스를 설명하면 다음과 같다. 교통 표지판/신호등 데이터베이스에서 선택된 특정 이미지 내의 영역을 검출한 결과가 신호등 영역으로 검출되지 않고 자동차 영역으로 검출되었다. 그 후, (i) 자동차/사람/이륜차 데이터베이스에 대응하는 GT 라벨 세트(710)와 비교하기 위한 분류 결과가 자동차일 확률이 가장 높고, (ii) 교통 표지판/신호등 데이터베이스에 대응하는 GT 라벨 세트(720)와 비교하기 위한 분류 결과가 교통 표지판일 확률이 가장 높고, (iii) 동물 데이터베이스에 대응하는 GT 라벨 세트(730)와 비교하기 위한 분류 결과가 배경일 확률이 가장 높다는 것을 학습 장치가 발견하였다.
우선, 자동차/사람/이륜차 데이터베이스에 대응하는 GT 라벨 세트(710)와 비교하기 위한 분류 결과가 자동차일 확률이 가장 높다고 검출한 것은 올바른 결과이다. 하지만, 교통 표지판/신호등 데이터베이스에서 선택된 특정 이미지 내의 자동차에 대한 GT 주석은 없다. 따라서, 학습 장치가 분류 결과가 자동차일 확률이 가장 높다고 올바르게 검출하더라도, 상기 특정 이미지에는 자동차에 대한 GT 주석이 없기 때문에 검출된 클래스가 자동차인지 아닌지 모르고, 자동차/사람/이륜차 데이터베이스 GT 세트에 대응하는 분류 결과는 학습 프로세스에 반영되지 못한다.
마찬가지로, 상기 특정 이미지가 교통 표지판/신호등 데이터베이스에서 선택된 이미지라면, 특정 이미지 내의 개, 고양이, 사슴에 대한 GT 주석이 없기 때문에 동물 데이터베이스에 대응하는 GT 라벨 세트(730)에 대해서도, CNN 학습 장치는, 검출된 클래스가 개, 고양이, 사슴인지 여부를 모르므로, 동물 데이터베이스 GT 세트에 대응하는 분류 결과도 학습 프로세스에 반영되지 못한다.
교통 표지판/신호등 데이터베이스에서 선택된 특정 이미지 내의 교통 표지판, 신호등에 대한 GT 주석만 있어, 교통 표지판 및 신호등이 아닌 나머지는 배경으로 취급하기 때문에 박스 결과가 교통 표지판/신호등이 아닌 것은 확실하다. 그러므로 이 정보는 학습 프로세스에 반영된다. 즉, 교통 표지판/신호등 데이터베이스에 대응하는 GT 라벨 세트(720)와 비교하기 위한 분류 결과로 교통 표지판이 검출된 것은 잘못된 것이며, 분류 결과는 배경으로 인식되어야 한다. 그런 이유로 분류 로스가 산출된다.
이를 통해 본 발명에 따른 학습 장치는, 카테고리 별로 분리된 학습용 데이터베이스를 사용함으로써, 새로 학습할 클래스가 추가되더라도 새로 추가되는 클래스에 대한 이미지만 추가로 학습하면 충분하기 때문에 효율적인 학습 프로세스가 수행될 수 있다. 그리고, 새롭게 추가된 학습 데이터만 학습하더라도 기존에 학습된 파라미터를 훼손하지 않고, 새로운 클래스를 검출할 수 있는 학습 능력을 얻을 수 있다.
학습 프로세스를 통해 학습 장치의 파라미터가 최적화되면, 최적화된 파라미터를 가지는 CNN을 포함하는 테스트 장치를 이용하여 실제 입력되는 테스트 이미지로부터 객체가 검출된다. 즉, 자율 주행 차량 등에서 획득된 도로 주행 이미지에서 적어도 하나의 객체에 대한 분류와 검출이 이루어질 수 있다.
본 발명 기술분야의 통상의 기술자에게 이해될 수 있는 바로서, 위에서 설명된 이미지, 예컨대 트레이닝 이미지, 테스트 이미지 등과 같은 이미지 데이터의 송수신이 학습 장치 및 테스트 장치의 통신부들에 의하여 이루어질 수 있으며, 특징 맵과 연산을 수행하기 위한 데이터가 학습 장치 및 테스트 장치의 프로세서(및/또는 메모리)에 의하여 보유/유지될 수 있고, 컨벌루션 연산, 디컨벌루션 연산, 로스 값 연산 과정이 주로 학습 장치 및 테스트 장치의 프로세서에 의하여 수행될 수 있으나, 본 발명이 이에 한정되지는 않을 것이다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (30)

  1. 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 CNN을 학습하는 방법에 있어서,
    (a) 학습 장치가, (i) 카테고리 별로 복수의 객체의 복수의 클래스(class)에 대한 이미지를 분류하여 획득한 상기 카테고리 별 이미지 데이터 세트와, (ii) 상기 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 이미지 데이터 세트 각각에 포함된 상기 이미지 각각에 있는 상기 객체 각각을 확인하여, 상기 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 객체 각각에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 단계;
    (b) 상기 학습 장치가, 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 이미지 데이터 세트에 속하는 적어도 하나의 특정 이미지를 적어도 하나의 입력 이미지로서 수신하고, 상기 입력 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 특징 맵을 생성한 후, 상기 특징 맵을 바탕으로 상기 입력 이미지에 포함된 적어도 하나의 특정 객체에 대응하는 분류(classification) 결과를 상기 카테고리 별로 생성하되, 상기 입력 이미지가 상기 특정 클래스에 대응하는 상기 특정 객체를 포함하는 단계; 및
    (c) 상기 학습 장치가, 상기 카테고리 별 상기 분류 결과와 이에 대응되는, 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  2. 제 1 항에 있어서,
    상기 (c) 단계에서,
    상기 학습 장치가, 상기 카테고리 별 상기 분류 결과와 이에 대응하는 상기 GT라벨 세트의 상기 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (i) 상기 학습 장치가, 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 학습 장치가, 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 방법.
  3. 제 2 항에 있어서,
    상기 (b) 단계에서,
    상기 학습 장치는 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하고,
    상기 (c) 단계에서,
    상기 학습 장치는, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서,
    상기 (b) 단계에서,
    상기 학습 장치는, 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하며,
    상기 (c) 단계에서,
    상기 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하고, 상기 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 분류 로스를 산출함으로써, (i) 상기 학습 장치가 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 학습 장치가 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며,
    상기 (c) 단계에서,
    상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, (i) 상기 카테고리 별 상기 분류 결과 중 상기 특정 클래스에 대한 상기 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과와 (ii) 이에 대응하는, 상기 특정 GT 라벨 세트 내의 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 방법.
  5. 제 4 항에 있어서,
    상기 소정의 임계치는 I.O.U(intersection over union)가 0.5 인 것을 특징으로 하는 방법.
  6. 제 4 항에 있어서,
    상기 (c) 단계에서,
    상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (i) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (ii) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 방법.
  7. 제 1 항에 있어서,
    상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 방법.
  8. 제 1 항에 있어서,
    상기 (a) 단계에서,
    상기 제1 내지 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 학습 장치는, (i) 상기 새로운 클래스에 대한 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 방법.
  9. 테스트 이미지에 대한 CNN을 사용한 테스트(test) 방법에 있어서,
    (a) 학습 장치가, (I) (i) 카테고리 별로 복수의 학습용 객체의 복수의 클래스에 대한 트레이닝 이미지를 분류하여 획득한 상기 카테고리 별 학습용 이미지 데이터 세트와, (ii) 상기 학습용 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 학습용 이미지 데이터 세트 각각에 포함된 상기 트레이닝 이미지 각각에 있는 상기 학습용 객체 각각을 확인하여, 상기 학습용 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 학습용 객체 각각에 이에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 프로세스; (II) 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 학습용 이미지 데이터 세트에 속하는 적어도 하나의 특정 트레이닝 이미지를 수신하고, 상기 트레이닝 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 학습용 특징 맵을 생성한 후, 상기 획득된 학습용 특징 맵을 바탕으로 상기 트레이닝 이미지에 포함된 적어도 하나의 특정 학습용 객체에 대응하는 상기 카테고리 별 학습용 분류 결과를 생성하되, 상기 트레이닝 이미지가 상기 특정 학습용 클래스에 대응하는 상기 특정 학습용 객체를 포함하는 프로세스; 및 (III) 상기 카테고리 별 학습용 분류 결과와 이에 대응되는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 프로세스;를 수행한 상태에서, 테스트 장치가 적어도 하나의 테스트 이미지를 획득하는 단계 및
    (b) 상기 테스트 장치가, 상기 CNN을 이용하여 상기 테스트 이미지 내에 포함된 적어도 하나의 테스트용 객체의 적어도 하나의 클래스에 대응되는 테스트용 분류 결과를 생성하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  10. 제 9 항에 있어서,
    상기 (III) 프로세스에서,
    상기 학습 장치가, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가, 상기 학습용 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가, 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 방법.
  11. 제 10 항에 있어서,
    상기 (II) 프로세스에서,
    상기 학습 장치가 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과를 더 획득하고,
    상기 (III) 프로세스에서,
    상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 방법.
  12. 제 9 항에 있어서,
    상기 (II) 프로세스에서,
    상기 학습 장치는, 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과 값을 더 획득하며,
    상기 (III) 프로세스에서,
    상기 학습용 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하여, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여, 상기 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며,
    상기 (III) 프로세스에서,
    상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가 (i) 상기 카테고리 별 상기 학습용 분류 결과 중 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과와 (ii) 상기 특정 GT 라벨 세트 내의 이에 대응하는 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 방법.
  13. 제 12 항에 있어서,
    상기 (III) 프로세스에서,
    상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (III-1) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 학습용 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 방법.
  14. 제 9 항에 있어서,
    상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 방법.
  15. 제 9 항에 있어서,
    상기 (I) 단계에서,
    상기 제1 내지 상기 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 학습 장치는, (i) 상기 새로운 클래스에 대한 학습용 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 학습용 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 방법.
  16. 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 CNN을 학습하는 학습 장치에 있어서,
    (i) 카테고리 별로 복수의 객체의 복수의 클래스(class)에 대한 이미지를 분류하여 획득한 상기 카테고리 별 이미지 데이터 세트와, (ii) 상기 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 이미지 데이터 세트 각각에 포함된 상기 이미지 각각에 있는 상기 객체 각각을 확인하여, 상기 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 객체 각각에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스인, 상기 학습용 제n 데이터베이스 중으로부터 특정 클래스에 대응되는 특정 이미지 세트에 속하는 적어도 하나의 특정 이미지를 적어도 하나의 입력 이미지로 수신하는 통신부; 및
    (I) 상기 입력 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 특징 맵을 생성한 후, 상기 특징 맵을 바탕으로 상기 입력 이미지에 포함된 적어도 하나의 특정 객체에 대응하는 분류(classification) 결과를 상기 카테고리 별로 생성하되, 상기 입력 이미지가 상기 특정 클래스에 대응하는 상기 특정 객체를 포함하는 프로세스; 및 (II) 상기 카테고리 별 상기 분류 결과와 이에 대응되는, 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 프로세스;를 수행하는 프로세서를 포함하는 것을 특징으로 하는 학습 장치.
  17. 제 16 항에 있어서,
    상기 (II) 프로세스에서,
    상기 프로세서가, 상기 카테고리 별 상기 분류 결과와 이에 대응하는 상기 GT라벨 세트의 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (i) 상기 프로세서가, 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 프로세서가, 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 학습 장치.
  18. 제 17 항에 있어서,
    상기 (I) 프로세스에서,
    상기 프로세서는 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하고,
    상기 (II) 프로세스에서,
    상기 프로세서는, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 학습 장치.
  19. 제 16 항에 있어서,
    상기 (I) 프로세스에서,
    상기 프로세서는, 상기 특정 객체의 검출 위치에 대한 정보를 나타내는 박스 결과를 더 획득하며,
    상기 (II) 프로세스에서,
    상기 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 프로세서가, 상기 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하고, 상기 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 분류 로스를 산출함으로써, (i) 상기 프로세서가 상기 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 분류 결과를 상기 특정 클래스로 결정하고, (ii) 상기 프로세서가 상기 특정 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 다른 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며,
    상기 (II) 프로세스에서,
    상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 프로세서가, (i) 상기 카테고리 별 상기 분류 결과 중 상기 특정 클래스에 대한 상기 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과와 (ii) 이에 대응하는, 상기 특정 GT 라벨 세트 내의 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 학습 장치.
  20. 제 19 항에 있어서,
    상기 소정의 임계치는 I.O.U(intersection over union)가 0.5 인 것을 특징으로 하는 학습 장치.
  21. 제 19 항에 있어서,
    상기 (II) 프로세스에서,
    상기 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (i) 상기 프로세서가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (ii) 상기 프로세서가 상기 특정 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 학습 장치.
  22. 제 16 항에 있어서,
    상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 학습 장치.
  23. 제 16 항에 있어서,
    상기 제1 내지 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 프로세서가, (i) 상기 새로운 클래스에 대한 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 학습 장치.
  24. 테스트 이미지에 대한 CNN을 사용한 테스트(test) 장치에 있어서,
    학습 장치가, (I) (i) 카테고리 별로 복수의 학습용 객체의 복수의 클래스에 대한 트레이닝 이미지를 분류하여 획득한 상기 카테고리 별 학습용 이미지 데이터 세트와, (ii) 상기 학습용 이미지 데이터 세트 각각에 대응되는 각각의 GT 라벨 세트로서, 상기 학습용 이미지 데이터 세트 각각에 포함된 상기 트레이닝 이미지 각각에 있는 상기 학습용 객체 각각을 확인하여, 상기 학습용 객체 각각이 이에 대응하는 카테고리에 속한 클래스에 대응하면 상기 학습용 객체 각각에 이에 대응하는 클래스인 것으로 주석이 달린 정보를 부여하여 생성된 상기 카테고리 별 상기 GT 라벨 세트를 각각 포함하는, 제1 내지 제n 학습용 데이터베이스를 구축하는 프로세스; (II) 상기 n 개의 학습용 데이터베이스 중에서 특정 클래스에 대응하는 특정 학습용 이미지 데이터 세트에 속하는 적어도 하나의 특정 트레이닝 이미지를 수신하고, 상기 트레이닝 이미지에 대하여 컨벌루션 연산을 적어도 한 번 적용하여 적어도 하나의 학습용 특징 맵을 생성한 후, 상기 획득된 학습용 특징 맵을 바탕으로 상기 트레이닝 이미지에 포함된 적어도 하나의 특정 학습용 객체에 대응하는 상기 카테고리 별 학습용 분류 결과를 생성하되, 상기 트레이닝 이미지가 상기 특정 학습용 클래스에 대응하는 상기 특정 학습용 객체를 포함하는 프로세스; 및 (III) 상기 카테고리 별 학습용 분류 결과와 이에 대응되는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 획득되는 상기 카테고리 별 로스를 사용하여 상기 CNN의 적어도 하나의 파라미터를 학습하는 프로세스;를 수행한 상태에서, 적어도 하나의 테스트 이미지를 획득하는 통신부; 및
    상기 CNN을 이용하여 상기 테스트 이미지 내에 포함된 적어도 하나의 테스트용 객체의 적어도 하나의 클래스에 대응되는 테스트용 분류 결과를 생성하는 프로세스를 수행하는 프로세서;
    를 포함하는 것을 특징으로 하는 테스트 장치.
  25. 제 24 항에 있어서,
    상기 (III) 프로세스에서,
    상기 학습 장치가, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여 상기 카테고리 별 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가, 상기 학습용 특정 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가, 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되는 것을 특징으로 하는 테스트 장치.
  26. 제 25 항에 있어서,
    상기 (II) 프로세스에서,
    상기 학습 장치가 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과를 더 획득하고,
    상기 (III) 프로세스에서,
    상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 더 산출하고, 이를 통해 백프로파게이션을 수행하는 것을 특징으로 하는 테스트 장치.
  27. 제 24 항에 있어서,
    상기 (II) 프로세스에서,
    상기 학습 장치는, 상기 특정 학습용 객체의 검출 위치에 대한 정보인 학습용 박스 결과 값을 더 획득하며,
    상기 (III) 프로세스에서,
    상기 학습용 박스 결과가 GT 박스와 소정의 임계치 이상으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가, 상기 학습용 박스 결과와 이에 대응하는 GT 박스를 참조로 하여 박스 로스를 산출하여, 상기 학습용 분류 결과와 이에 대응하는 상기 카테고리 별 상기 GT 라벨 세트의 GT 값을 참조로 하여, 상기 분류 로스를 산출함으로써, (III-1) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 특정 GT 라벨 세트에 대응되는 특정 학습용 분류 결과를 상기 특정 학습용 클래스로 결정하고, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 주석 정보가 포함되지 않는 적어도 하나의 다른 GT 라벨 세트에 대응되는 적어도 하나의 학습용 분류 결과를 배경으로 결정하도록, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되며,
    상기 (III) 프로세스에서,
    상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, 상기 학습 장치가 (i) 상기 카테고리 별 상기 학습용 분류 결과 중 상기 특정 학습용 클래스에 대한 주석 정보가 포함된 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과와 (ii) 상기 특정 GT 라벨 세트 내의 이에 대응하는 GT 값을 참조로 하여 얻어진 특정 분류 로스를 산출함으로써, 백프로파게이션을 수행하여 상기 CNN의 상기 파라미터가 학습되도록 하여, 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 하는 것을 특징으로 하는 테스트 장치.
  28. 제 27 항에 있어서,
    상기 (III) 프로세스에서,
    상기 학습용 박스 결과가 상기 GT 박스와 상기 소정의 임계치 미만으로 겹치는 것으로 판단되는 경우, (III-1) 상기 학습 장치가 상기 특정 클래스에 대한 상기 주석 정보가 포함되지 않는 상기 다른 GT 라벨 세트에 대응하는 상기 다른 학습용 분류 결과를 이용한 상기 백프로파게이션을 수행하지 않으며, (III-2) 상기 학습 장치가 상기 특정 학습용 클래스에 대한 상기 주석 정보가 포함되는 상기 특정 GT 라벨 세트에 대응되는 상기 특정 학습용 분류 결과가 상기 배경으로 분류되도록 상기 백프로파게이션을 수행하는 것을 특징으로 하는 테스트 장치.
  29. 제 24 항에 있어서,
    상기 GT 라벨 세트 각각 내에서 상기 카테고리 각각에 속한 적어도 하나의 클래스에만 그 클래스 자체인 것으로 주석이 달려 있고, 상기 GT 라벨 세트 각각에서 다른 카테고리 중 하나에 속한 적어도 하나의 클래스에는 상기 배경인 것으로 주석이 달려 있는 것을 특징으로 하는 테스트 장치.
  30. 제 24 항에 있어서,
    상기 (I) 프로세스에서,
    상기 제1 내지 상기 제n 학습용 데이터베이스에 포함되는 상기 클래스와는 다른 새로운 클래스를 분류하기 위한 상기 CNN에 대한 학습 요청이 수신되는 경우, 상기 학습 장치는, (i) 상기 새로운 클래스에 대한 학습용 객체가 포함된 새로운 이미지를 포함하는 새로운 제n+1 학습용 이미지 데이터 세트와 (ii) 상기 새로운 클래스에 대한 주석 정보가 부여된 새로운 제n+1 GT 라벨 세트를 추가로 더 획득하여, 새로운 제n+1 학습용 데이터베이스를 구축하는 것을 특징으로 하는 테스트 장치.
KR1020190105485A 2018-10-26 2019-08-27 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 학습하는 방법 및 장치 그리고 이를 이용한 테스트 방법 및 장치 KR102286760B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/171,811 US10474713B1 (en) 2018-10-26 2018-10-26 Learning method and learning device using multiple labeled databases with different label sets and testing method and testing device using the same
US16/171,811 2018-10-26

Publications (2)

Publication Number Publication Date
KR20200047306A true KR20200047306A (ko) 2020-05-07
KR102286760B1 KR102286760B1 (ko) 2021-08-09

Family

ID=67211569

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190105485A KR102286760B1 (ko) 2018-10-26 2019-08-27 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 학습하는 방법 및 장치 그리고 이를 이용한 테스트 방법 및 장치

Country Status (5)

Country Link
US (1) US10474713B1 (ko)
EP (1) EP3644237B1 (ko)
JP (1) JP6820030B2 (ko)
KR (1) KR102286760B1 (ko)
CN (1) CN111105010B (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102256409B1 (ko) * 2020-11-23 2021-05-25 주식회사 에이모 학습 데이터 세트를 생성하는 방법 및 학습 데이터 세트를 생성하기 위한 컴퓨터 장치
KR102301635B1 (ko) * 2021-02-04 2021-09-13 주식회사 에이모 인공지능 모델을 이용하여 바운딩 박스를 추론하는 방법 및 바운딩 박스를 추론하는 컴퓨터 장치
KR102401800B1 (ko) * 2021-10-28 2022-05-26 주식회사 오비고 오브젝트 실감 기술을 구현하기 위한 학습 방법과 체험 방법 및 이를 이용한 학습 장치와 체험 장치
KR20230076009A (ko) * 2021-11-23 2023-05-31 이인텔리전스 주식회사 차량 전방의 객체 및 차선에 대한 사용자 데이터 셋 생성 방법 및 장치
KR102572423B1 (ko) * 2023-03-07 2023-08-30 주식회사 에이모 인스턴스 레이어를 생성하는 방법 및 장치
US12093840B2 (en) 2022-01-03 2024-09-17 Si Analytics Co., Ltd. Method of training object prediction models using ambiguous labels

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108875821A (zh) * 2018-06-08 2018-11-23 Oppo广东移动通信有限公司 分类模型的训练方法和装置、移动终端、可读存储介质
US11537815B2 (en) * 2018-12-11 2022-12-27 Symbolcraft LLC Methods and systems that use incomplete training data to train machine-learning based systems
CN111008658B (zh) * 2019-11-30 2023-06-30 南京森林警察学院 一种基于监督式学习的警务人员学习分析系统
US11074507B1 (en) * 2020-05-22 2021-07-27 StradVision, Inc. Method for performing adjustable continual learning on deep neural network model by using selective deep generative replay module and device using the same
CN112800265B (zh) * 2021-02-01 2022-03-08 中国科学院空天信息创新研究院 一种基于无监督或弱监督方式的图像分割数据标注方法及系统
CN112906019B (zh) * 2021-02-04 2022-11-11 南京邮电大学 基于改进dcgan模型的流量数据生成方法、装置及系统
US11972574B2 (en) * 2021-03-15 2024-04-30 Dotter Co., Ltd. Deep learning based image segmentation method including biodegradable stent in intravascular optical tomography image
CN113836338B (zh) * 2021-07-21 2024-05-24 北京邮电大学 细粒度图像分类方法、装置、存储介质及终端
CN114154578B (zh) * 2021-12-02 2023-10-31 内蒙古工业大学 面向非平衡数据基于半监督分布式训练的任务识别方法
CN115130531B (zh) * 2022-01-24 2023-05-05 北京中科睿鉴科技有限公司 图像生成模型网络结构溯源方法
CN114428677B (zh) * 2022-01-28 2023-09-12 北京百度网讯科技有限公司 任务处理方法、处理装置、电子设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105938558B (zh) * 2015-03-06 2021-02-09 松下知识产权经营株式会社 学习方法
US9589210B1 (en) * 2015-08-26 2017-03-07 Digitalglobe, Inc. Broad area geospatial object detection using autogenerated deep learning models
US9767381B2 (en) * 2015-09-22 2017-09-19 Xerox Corporation Similarity-based detection of prominent objects using deep CNN pooling layers as features
WO2017151757A1 (en) * 2016-03-01 2017-09-08 The United States Of America, As Represented By The Secretary, Department Of Health And Human Services Recurrent neural feedback model for automated image annotation
US10282462B2 (en) * 2016-10-31 2019-05-07 Walmart Apollo, Llc Systems, method, and non-transitory computer-readable storage media for multi-modal product classification
JP2018097807A (ja) * 2016-12-16 2018-06-21 株式会社デンソーアイティーラボラトリ 学習装置
CN107220600B (zh) * 2017-05-17 2019-09-10 清华大学深圳研究生院 一种基于深度学习的图片生成方法及生成对抗网络
CN107909095A (zh) * 2017-11-07 2018-04-13 江苏大学 一种基于深度学习的图像识别方法
CN107967484B (zh) * 2017-11-14 2021-03-16 中国计量大学 一种基于多分辨率的图像分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Dong Li et al., "Progressive Representation Adaptation for Weakly Supervised Object Localization," arXiv:1710.04647v1 [cs.CV] (2017.10.12.)* *
Tao Chen et al., "S-CNN: Subcategory-Aware Convolutional Networks for Object Detection," IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 40, NO. 10, OCTOBER 2018 (2018.10.01.)* *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102256409B1 (ko) * 2020-11-23 2021-05-25 주식회사 에이모 학습 데이터 세트를 생성하는 방법 및 학습 데이터 세트를 생성하기 위한 컴퓨터 장치
KR102301635B1 (ko) * 2021-02-04 2021-09-13 주식회사 에이모 인공지능 모델을 이용하여 바운딩 박스를 추론하는 방법 및 바운딩 박스를 추론하는 컴퓨터 장치
KR102401800B1 (ko) * 2021-10-28 2022-05-26 주식회사 오비고 오브젝트 실감 기술을 구현하기 위한 학습 방법과 체험 방법 및 이를 이용한 학습 장치와 체험 장치
KR20230076009A (ko) * 2021-11-23 2023-05-31 이인텔리전스 주식회사 차량 전방의 객체 및 차선에 대한 사용자 데이터 셋 생성 방법 및 장치
US12093840B2 (en) 2022-01-03 2024-09-17 Si Analytics Co., Ltd. Method of training object prediction models using ambiguous labels
KR102572423B1 (ko) * 2023-03-07 2023-08-30 주식회사 에이모 인스턴스 레이어를 생성하는 방법 및 장치

Also Published As

Publication number Publication date
EP3644237B1 (en) 2024-08-07
CN111105010A (zh) 2020-05-05
US10474713B1 (en) 2019-11-12
JP2020068035A (ja) 2020-04-30
KR102286760B1 (ko) 2021-08-09
EP3644237A1 (en) 2020-04-29
EP3644237C0 (en) 2024-08-07
JP6820030B2 (ja) 2021-01-27
CN111105010B (zh) 2023-09-29

Similar Documents

Publication Publication Date Title
KR102286760B1 (ko) 다른 라벨 세트를 가지는 복수의 라벨링된 데이터베이스를 이용하여 학습하는 방법 및 장치 그리고 이를 이용한 테스트 방법 및 장치
JP6875021B2 (ja) 有用な学習データを取捨選別するためのcnn基盤の学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置
JP7195412B2 (ja) 道路の交差点の検証
KR20200027427A (ko) 차선 후보 픽셀의 분류를 통해 차선을 검출하는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
EP3686779B1 (en) Method and device for attention-based lane detection without post-processing by using lane mask and testing method and testing device using the same
KR20200094652A (ko) 자동 주차 시스템을 제공하기 위해 결정 지점 간의 관계 및 결정 지점에 대한 리그레션 결과를 이용하여 주차 공간을 검출하는 학습 방법 및 학습 장치, 그리고 이를 이용한 테스팅 방법 및 테스팅 장치
CN111008626B (zh) 基于r-cnn检测客体的方法和装置
KR20200027428A (ko) 에지 이미지를 이용하여 객체를 검출하는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
CN110889318B (zh) 利用cnn的车道检测方法和装置
US10551845B1 (en) Method and computing device for generating image data set to be used for hazard detection and learning method and learning device using the same
JP6980289B2 (ja) 車線モデルを利用して車線を検出し得る学習方法及び学習装置そしてこれを利用したテスト方法及びテスト装置{learning method, learning device for detecting lane using lane model and test method, test device using the same}
KR102301631B1 (ko) 협업 주행을 수행하는 자동차들로부터 획득된 주행 이미지들을 통합하는 방법 및 이를 이용한 주행 이미지 통합 장치
KR20200096114A (ko) 자율 주행 네트워크의 검출 프로세스를 검증하는 설명 가능한 인공지능을 사용하여 운전자에게 잠재적 위험 상황에 대해 경고함으로써 기능적 안전성을 제공하는 학습 방법 및 학습 장치, 그리고 이를 이용한 테스팅 방법 및 테스팅 장치
CN110879960A (zh) 生成卷积神经网络学习用图像数据集的方法及计算装置
Seo et al. Temporary traffic control device detection for road construction projects using deep learning application
CN110909588A (zh) 基于cnn的用于车道线检测的方法和装置
KR102313129B1 (ko) 자율 주행에 대한 논리적 근거를 제시하기 위하여, 관리자가 객체 검출기의 객체 검출 프로세스를 평가할 수 있도록 지원하는 방법 및 장치
Soares et al. On the Applicability of Deep Learning for Road Signal Recognition
CN116541715A (zh) 目标检测方法、模型的训练方法、目标检测系统及装置

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