KR102319541B1 - 객체의 종횡비나 스케일에 따라 모드를 전환할 수 있는 r-cnn 기반의 감시에 사용되는 객체 검출기의 학습 방법 및 테스트 방법, 이를 이용한 학습 장치 및 테스트 장치 - Google Patents

객체의 종횡비나 스케일에 따라 모드를 전환할 수 있는 r-cnn 기반의 감시에 사용되는 객체 검출기의 학습 방법 및 테스트 방법, 이를 이용한 학습 장치 및 테스트 장치 Download PDF

Info

Publication number
KR102319541B1
KR102319541B1 KR1020190119509A KR20190119509A KR102319541B1 KR 102319541 B1 KR102319541 B1 KR 102319541B1 KR 1020190119509 A KR1020190119509 A KR 1020190119509A KR 20190119509 A KR20190119509 A KR 20190119509A KR 102319541 B1 KR102319541 B1 KR 102319541B1
Authority
KR
South Korea
Prior art keywords
roi
learning
test
pooling
layer
Prior art date
Application number
KR1020190119509A
Other languages
English (en)
Other versions
KR20200092844A (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 KR20200092844A publication Critical patent/KR20200092844A/ko
Application granted granted Critical
Publication of KR102319541B1 publication Critical patent/KR102319541B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06K9/00624
    • 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
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4046Scaling the whole image or part thereof using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/759Region-based matching
    • 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/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • 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/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural 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/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle

Landscapes

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

Abstract

본 발명은 R-CNN (Region-based Convolutional Neural Network) 기반의 객체 검출기(Object Detector)를 학습하는 방법에 관한 것으로, 신호등을 포함하는 객체의 종횡비와 스케일은 객체 검출기로부터의 거리, 객체의 형태 등과 같은 특성에 따라 결정될 수 있으며, 학습 방법은 학습장치가, RPN으로 하여금 ROI 후보를 생성하도록 하는 단계; 풀링 레이어로 하여금 특징 벡터를 출력하도록 하는 단계; 백프로파게이션을 통해 FC 레이어 및 컨볼루션 레이어를 학습하는 단계;를 포함하는 것을 특징으로 하며, 본 방법에서 풀링 프로세스는 레이더, 라이다(Lidar) 또는 다른 센서를 통해 획득된 거리 정보 및 객체 정보를 이용하여 객체의 실제 비율과 실제 크기에 따라 수행될 수 있으며, 학습 방법 및 테스트 방법은 특정 위치에서 동일한 관점에서 비슷한 크기를 가지므로 감시에 사용될 수 있는 것을 특징으로 하는 방법이 제공된다.

Description

객체의 종횡비나 스케일에 따라 모드를 전환할 수 있는 R-CNN 기반의 감시에 사용되는 객체 검출기의 학습 방법 및 테스트 방법, 이를 이용한 학습 장치 및 테스트 장치{LEARNING METHOD AND TESTING METHOD OF OBJECT DETECTOR TO BE USED FOR SURVEILLANCE BASED ON R-CNN CAPABLE OF CONVERTING MODES ACCORDING TO ASPECT RATIOS OR SCALES OF OBJECTS, AND LEARNING DEVICE AND TESTING DEVICE USING THE SAME}
본 발명은 R-CNN(Region-based Convolutional Neural Network) 기반의 객체 검출기(Object Detector)를 학습하는 방법에 관한 것으로, 보다 상세하게는, 상기 R-CNN(Region-based Convolutional Neural Network) 기반의 상기 객체 검출기(Object Detector)를 학습하는 방법에 있어서, (a) 학습 장치가, 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 객체가 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 하는 단계; (b) 상기 학습 장치가, (i) 상기 ROI 프로포잘 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 특징 맵 상에서 상기 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 특징 벡터를 이용하여 상기 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보 및 각각의 객체 리그레션 정보를 출력하도록 하는 단계; 및 (c) 상기 학습 장치가, 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 객체 클래스 정보와 상기 각각의 객체 리그레션 정보, 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 단계;를 포함하는 것을 특징으로 하는 학습 방법, 테스트 방법과, 이를 이용한 학습 장치 및 테스트 장치에 관한 것이다.
머신러닝에 있어서, CNN 또는 ConvNet(Convolutional Neural Network)은 비주얼 이미지를 분석하는데 성공적으로 적용되는 딥 피드 포워드 인공 신경 회로망(Deep, Feed-Forward Artificial Neural Network)의 한 클래스(Class)이다.
도 1은 종래의 R-CNN을 이용한 객체 검출기의 테스트 방법을 개략적으로 나타낸다.
먼저, 도 1에 도시된 바와 같은 테스트 장치는 RGB 이미지(101)를 획득하여 컨볼루션 블록에 포함된 적어도 하나의 컨볼루션 레이어(102), 즉 컨볼루션 필터에 입력시킨다. 컨볼루션 레이어를 통과함에 따라 RGB 이미지는 너비, 높이가 줄어들지만 채널 수는 증가한다.
다음으로, 테스트 장치는 특징 맵(103)을 학습된 RPN(Region Proposal Network)(104)에 통과시켜 ROI(105)를 생성하고, 풀링 레이어(106)로 하여금 특징 맵 상에서 ROI(105)에 대응되는 영역에 맥스 풀링(Max Pooling) 연산 또는 평균 풀링(Average Pooling) 연산 중 어느 하나를 적용하여 상기 영역에 포함된 픽셀 데이터를 리사이즈 시키고, 상기 리사이즈된 특징 맵을 참조하여 특징 벡터를 출력한다.
다음으로, 테스트 장치는 특징 벡터를 학습된 FC(Fully Connected) 레이어(108)로 입력하여 분류(Classification) 등의 작업을 통해 입력된 RGB 이미지 상에서 객체의 종류를 결정하고, FC 레이어를 이용하여 입력된 RGB 이미지 상에서 바운딩 박스를 생성할 수 있다.
이러한 종래의 R-CNN을 이용하여 객체를 검출하는 방법에 따라 앵커 박스를 사용하여 ROI 프로포잘을 획득한다. 여기서, 객체는 크기와 형태가 다양하기 때문에 이를 잘 찾기 위해서 앵커 박스는 다양한 스케일(Scale)과 종횡비(Aspect Ratio)를 갖는다.
그러나, 풀링 레이어가 특징 맵을 풀링하는 과정에서 다양한 객체의 크기와 형태를 고려하지 못하고 단일 스케일과 단일 종횡비로만 풀링 연산이 수행되는 문제점이 있다. 그러므로 이 같은 방법은 객체를 정확하게 검출할 수 없다.
본 발명은 상술한 문제점을 모두 해결하는 것을 그 목적으로 한다.
본 발명은 객체의 크기와 형태에 관계없이 정확히 검출할 수 있는 R-CNN 기반의 객체 검출기를 제공하는 것을 다른 목적으로 한다.
본 발명은 종래에 비하여 연산량의 증가나 연산 속도의 감소 없이 보다 정확한 객체 검출이 가능한 R-CNN 기반의 객체 검출기를 제공하는 것을 또 다른 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한, 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 태양에 따르면, R-CNN(Region-based Convolutional Neural Network) 기반의 객체 검출기(Object Detector)를 학습하는 방법에 있어서, (a) 학습 장치가, 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 객체가 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 하는 단계; (b) 상기 학습 장치가, (i) 상기 ROI 프로포잘 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 특징 맵 상에서 상기 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 특징 벡터를 이용하여 상기 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보 및 각각의 객체 리그레션 정보를 출력하도록 하는 단계; 및 (c) 상기 학습 장치가, 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 객체 클래스 정보와 상기 각각의 객체 리그레션 정보, 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 단계;를 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치가, RPN 로스 레이어로 하여금 (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 해당하는 각각의 ROI GT를 참조하여, 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 산출하도록 하며, 상기 학습 장치는, 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 수행해 상기 RPN을 학습하는 것을 특징으로 한다.
일 실시예에서, 상기 학습 장치가, (i) 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션과, (ii) 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 별개로 수행하는 것을 특징으로 한다.
일 실시예에서, 상기 (a) 단계 이전에, 상기 학습 장치가, (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 객체의 형상에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 한다.
본 발명의 다른 태양에 따르면, R-CNN 기반의 객체 검출기를 테스트하는 방법에 있어서, (a) 학습 장치가 (I) 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 학습용 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 학습용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 학습용 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 학습용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 학습용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 학습용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 학습용 ROI 후보를 학습용 ROI 프로포잘로 출력하도록 하는 프로세스; (II) (i) 상기 학습용 ROI 프로포잘 생성에 사용된 각각의 특정 학습용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 학습용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 학습용 특징 맵 상에서 상기 학습용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 학습용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 학습용 특징 벡터를 이용하여 상기 각각의 학습용 ROI 프로포잘에 대응되는 각각의 학습용 객체 클래스 정보 및 각각의 학습용 객체 리그레션 정보를 출력하도록 하는 프로세스; (III) 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 학습용 객체 클래스 정보, 상기 각각의 학습용 객체 리그레션 정보 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 프로세스;를 수행한 상태에서, 테스트 장치가, 상기 컨볼루션 레이어로 하여금 적어도 하나의 테스트 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 테스트용 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 테스트용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 테스트용 앵커 박스를 사용하여 상기 테스트 이미지 내에서 적어도 하나의 테스트용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 테스트용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 테스트용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 테스트용 ROI 후보를 테스트용 ROI 프로포잘로 출력하도록 하는 단계; (b) 상기 테스트 장치가, (i) 상기 테스트용 ROI 프로포잘 생성에 사용된 각각의 특정 테스트용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 테스트용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 테스트용 특징 맵 상에서 상기 테스트용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 테스트용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 상기 각각의 FC 레이어로 하여금 상기 각각의 테스트용 특징 벡터를 이용하여 상기 각각의 테스트용 ROI 프로포잘에 대응되는 각각의 테스트용 객체 클래스 정보 및 각각의 테스트용 객체 리그레션 정보를 출력하도록 하는 단계;를 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 (I) 프로세스 이전에, 상기 학습 장치가, (i) 상기 학습용 ROI 후보의 학습용 ROI 클래스 정보 및 학습용 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 테스트용 객체의 형상에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 한다.
본 발명의 또 다른 태양에 따르면, R-CNN(Region-based Convolutional Neural Network) 기반의 객체 검출기(Object Detector)를 학습하는 학습 장치에 있어서, 인스트럭션(Instruction)을 저장하는 적어도 하나의 메모리; 및 (I) 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 객체가 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 하는 프로세스, (II) (i) 상기 ROI 프로포잘 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 특징 맵 상에서 상기 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 특징 벡터를 이용하여 상기 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보 및 각각의 객체 리그레션 정보를 출력하도록 하는 프로세스 및 (III) 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 객체 클래스 정보와 상기 각각의 객체 리그레션 정보, 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 프로세스를 수행하기 위한 상기 인스트럭션을 실행하도록 구성된 적어도 하나의 프로세서;를 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 프로세서는, RPN 로스 레이어로 하여금 (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 해당하는 각각의 ROI GT를 참조하여, 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 산출하도록 하며, 상기 프로세서는, 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 수행해 상기 RPN을 학습하는 것을 특징으로 한다.
일 실시예에서, 상기 프로세서는, (i) 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션과, (ii) 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 별개로 수행하는 것을 특징으로 한다.
일 실시예에서, 상기 (I) 프로세스 이전에, 상기 프로세서는, (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 객체의 형상에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 한다.
본 발명의 또 다른 태양에 따르면, R-CNN 기반의 객체 검출기를 테스트하는 테스트 장치에 있어서, 인스트럭션(Instruction)을 저장하는 적어도 하나의 메모리; 및 (I) 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 학습용 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 학습용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 학습용 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 학습용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 학습용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 학습용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 학습용 ROI 후보를 학습용 ROI 프로포잘로 출력하도록 하는 프로세스; (II) (i) 상기 학습용 ROI 프로포잘 생성에 사용된 각각의 특정 학습용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 학습용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 학습용 특징 맵 상에서 상기 학습용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 학습용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 학습용 특징 벡터를 이용하여 상기 각각의 학습용 ROI 프로포잘에 대응되는 각각의 학습용 객체 클래스 정보 및 각각의 학습용 객체 리그레션 정보를 출력하도록 하는 프로세스; (III) 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 학습용 객체 클래스 정보, 상기 각각의 학습용 객체 리그레션 정보 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 프로세스;를 수행한 상태에서, (1) 상기 컨볼루션 레이어로 하여금 적어도 하나의 테스트 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 테스트용 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 테스트용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 테스트용 앵커 박스를 사용하여 상기 테스트 이미지 내에서 적어도 하나의 테스트용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 테스트용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 테스트용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 테스트용 ROI 후보를 테스트용 ROI 프로포잘로 출력하도록 하는 프로세스 및 (2) (i) 상기 테스트용 ROI 프로포잘 생성에 사용된 각각의 특정 테스트용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 테스트용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 테스트용 특징 맵 상에서 상기 테스트용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 테스트용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 상기 각각의 FC 레이어로 하여금 상기 각각의 테스트용 특징 벡터를 이용하여 상기 각각의 테스트용 ROI 프로포잘에 대응되는 각각의 테스트용 객체 클래스 정보 및 각각의 테스트용 객체 리그레션 정보를 출력하도록 하는 프로세스를 수행하는 인스트럭션을 수행하도록 설정된 적어도 하나의 프로세서;를 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 (I) 프로세스 이전에, 상기 학습 장치가, (i) 상기 학습용 ROI 후보의 학습용 ROI 클래스 정보 및 학습용 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 테스트용 객체의 형상에 대응되는 것을 특징으로 한다.
일 실시예에서, 상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 한다.
이 외에도, 본 발명의 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명은 종래의 기술에 비해, R-CNN 기반의 객체 검출기에서 ROI 프로포잘에 사용된 앵커 박스의 정보에 따라 특징 맵 상의 영역을 풀링함으로써 객체를 보다 정확하게 검출할 수 있는 효과가 있다.
또한, 본 발명은 종래의 기술에 비해, R-CNN 기반의 객체 검출기에서 ROI 프로포잘에 사용된 앵커 박스의 정보에 따라 특징 맵 상의 영역을 풀링함으로써 객체의 형태와 크기에 관계없이 객체를 보다 정확하게 검출할 수 있는 다른 효과가 있다.
또한, 본 발명은 R-CNN 기반의 객체 검출기에서 종래와 동일한 개수의 ROI 프로포잘을 사용하므로 종래의 기술과 비교해 연산량의 증가나 연산 속도의 감소 없이 보다 정확하게 객체를 검출할 수 있는 또 다른 효과가 있다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 "통상의 기술자")에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 종래의 기술에 따른 R-CNN 기반의 객체 검출기의 테스트 장치를 개략적으로 도시한 것이고,
도 2는 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기를 학습하는 학습 장치를 개략적으로 도시한 것이고,
도 3은 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기를 학습하는 방법을 개략적으로 도시한 것이고,
도 4는 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기에서 RPN에서의 앵커 박스를 개략적으로 도시한 것이고,
도 5는 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기를 테스트 하는 테스트 장치를 개략적으로 도시한 것이고,
도 6은 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기를 테스트하는 방법을 개략적으로 도시한 것이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다.
또한, 본 발명의 상세한 설명 및 청구항들에 걸쳐, "포함하다"라는 단어 및 그것의 변형은 다른 기술적 특징들, 부가물들, 구성요소들 또는 단계들을 제외하는 것으로 의도된 것이 아니다. 통상의 기술자에게 본 발명의 다른 목적들, 장점들 및 특성들이 일부는 본 설명서로부터, 그리고 일부는 본 발명의 실시로부터 드러날 것이다. 아래의 예시 및 도면은 실례로서 제공되며, 본 발명을 한정하는 것으로 의도된 것이 아니다.
본 발명에서 언급하는 각종 이미지는 포장 또는 비포장 도로 관련 이미지를 포함할 수 있으며, 이 경우 도로 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니며, 본 발명에서 언급하는 각종 이미지는 도로와 상관 없는 이미지(가령, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내와 관련된 이미지)일 수도 있으며, 이 경우, 비포장도로, 골목길, 공터, 바다, 호수, 강, 산, 숲, 사막, 하늘, 실내 환경에서 등장할 수 있는 물체(가령, 자동차, 사람, 동물, 식물, 물건, 건물, 비행기나 드론과 같은 비행체, 기타 장애물)를 상정할 수 있을 것이나, 반드시 이에 한정되는 것은 아니다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기를 학습하는 학습 장치(100)를 개략적으로 도시한 것으로, 도 2를 참조하면, 학습 장치(100)는 통신부(110)와 프로세서(120)를 포함할 수 있다.
또한, 학습 장치는 다음의 프로세스를 수행하기 위한 컴퓨터 판독 가능한 인스트럭션(Instruction)을 저장할 수 있는 메모리(115)를 더 포함할 수 있다. 일 실시예에 따르면, 프로세서, 메모리, 매체 등은 통합 프로세서(Integrated Processor)로 통합될 수 있다.
먼저, 통신부(110)는 적어도 하나의 트레이닝 이미지를 수신할 수 있다.
이때, 트레이닝 이미지는 데이터베이스(130)에 저장되어 있을 수 있으며, 데이터베이스(130)에는 트레이닝 이미지에 포함되는 각각의 객체에 대한 클래스 정보 및 위치 정보에 대한 GT(Ground Truth)가 저장되어 있을 수 있다.
프로세서(120)는 적어도 하나의 컨볼루션 레이어로 하여금 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 하며, RPN으로 하여금 (i) 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 트레이닝 이미지 내에서 적어도 하나의 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI 후보를 생성하도록 하고, (ii) 객체가 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 한다. 이 때, 앞서 언급한 "확률이 높은"이란 표현은 각각의 확률이 기설정된 임계치 이상이란 의미일 수 있다. 그리고, 프로세서(120)는 (i) ROI 프로포잘 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 ROI 프로포잘을 입력하고, (ii) 각각의 풀링 레이어로 하여금 특징 맵 상에서 ROI 프로포잘에 대응되는 영역을 특징 맵에 대응하는 풀링 사이즈로 풀링하도록 하여 이에 대응하는 특징 벡터를 출력하도록 하며, (iii) 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 각각의 특징 벡터를 이용하여 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보 및 각각의 객체 리그레션 정보를 출력하도록 한다. 이후, 프로세서(120)는 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 각각의 객체 클래스 정보, 각각의 객체 리그레션 정보 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 각각의 FC 레이어 및 컨볼루션 레이어를 학습할 수 있다.
또한, 학습 장치(100)는 RPN 로스 레이어로 하여금 (i) ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 대응하는 각각의 ROI GT를 참조하여 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 산출하도록 한다. 이후, 학습 장치는 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 수행하여 RPN을 학습할 수 있다.
여기서, 학습 장치(100)는 (i) 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 이용한 백프로파게이션과 (ii) 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 개별적으로 수행할 수 있다.
본 발명의 일 실시예에 따른 학습 장치(100)는 컴퓨팅 장치로서, 프로세서를 탑재하여 연산 능력을 갖춘 장치라면 얼마든지 본 발명에 따른 학습 장치(100)로서 채택될 수 있다. 또한, 도 2에서는 하나의 학습 장치(100)만을 나타내었으나, 이에 한정되지 않으며, 학습 장치는 복수 개로 나뉘어 역할을 수행할 수도 있다.
이와 같이 구성된 본 발명의 일 실시예에 따른 학습 장치(100)를 이용하여 R-CNN 기반의 객체 검출기를 학습하는 방법을 도 3을 참조하여 설명하면 다음과 같다.
먼저, 트레이닝 이미지가 입력되면, 학습 장치(100)가, 적어도 하나의 컨볼루션 레이어(121)로 하여금 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 한다. 이때, 컨볼루션 레이어(121)는 트레이닝 이미지에 대하여 순차적으로 컨볼루션 연산을 적용하기 위하여 복수 개의 컨벌루션 유닛(Convolutional Unit)을 포함할 수 있다.
그리고, 학습 장치(100)는 RPN(122)으로 하여금 (i) 특징 맵 상에서 스케일과 종횡비 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 트레이닝 이미지 내에서 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI 후보를 생성하도록 하고, (ii) 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 한다.
일 예로, 도 4를 참조하면, 앵커 박스는 스케일(S1, S2, S3)과 종횡비(AR1, AR2, AR3)에 의해 9개가 정의될 수 있으나, 이에 한정되지 않으며, 스케일과 종횡비의 조합에 의해 다양한 개수가 정의될 수 있다. 그리고, 학습 장치(100)는 기설정된 사이즈의 슬라이딩 윈도우를 특징 맵 상에서 이동시키며 이동되는 슬라이딩 윈도우의 위치 각각에 대응되는 특징 맵 상의 영역 각각에 대하여 컨볼루션 연산을 적어도 한 번 적용하여 기설정된 크기의 특징 맵을 생성하도록 한다. 그리고 생성된 특징 맵을 ROI 분류 레이어와 ROI 리그레션 레이어로 입력한다. 이때, 도 4에 나타난 특징 맵은 각각의 특징을 포함한다. 그리고, 학습 장치(100)는 ROI 분류로 하여금 이동되는 슬라이딩 윈도우의 중심 각각을 참조하여 결정된 앵커 박스 각각에 대한 ROI 클래스 정보를 출력하도록 하며, ROI 리그레션 레이어로 하여금 이동되는 슬라이딩 윈도우의 중심 각각을 참조하여 결정된 앵커 박스 각각에 대한 ROI 리그레션 정보를 출력하도록 한다. 이후, 학습 장치(100)는 ROI 클래스 정보와 ROI 리그레션 정보를 참조하여 IOU(Intersection Over Union)가 기설정된 제1 값 이상이며, 각각의 이동되는 슬라이딩 윈도우 영역에서 가장 높은 IOU를 가지는 특정 앵커 박스 각각을 ROI 후보로 선택한다. 이때, IOU는 포지티브 GT(Positive GT)를 이용해 산출될 수 있다. 한편, 학습 장치(100)는 IOU가 기설정된 제2 값 이하인 다른 앵커 박스에 대해서는 논포지티브(Non-Positive) 앵커로 간주할 수 있다.
다음으로, 학습 장치(100)는 ROI 프로포잘 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어(123-1, 123-2, …, 123-n)를 확인한다.
이때, 각각의 풀링 사이즈는 특정 앵커 박스의 종횡비나, 특정 앵커 박스의 스케일에 대응되도록 할 수 있다. 또한, 각각의 풀링 사이즈는 검출하고자 하는 객체의 형상에 대응되도록 할 수 있다. 이에 더하여, 각각의 풀링 사이즈는 특정 앵커 박스 각각의 사이즈에 대응되도록 할 수 있다. 이때, 특정 앵커 박스 각각의 사이즈는 종횡비와 스케일의 조합에 결정될 수 있다.
일 예로, 도 4를 참조하면, 각각의 풀링 사이즈를 특정 앵커 박스의 종횡비에 대응되도록 할 경우에는, 풀링 사이즈는 (i) (종횡비: AR1, 스케일: S1) 앵커 박스의 사이즈, (종횡비: AR2, 스케일: S1) 앵커 박스의 사이즈, 및 (종횡비: AR3, 스케일: S1) 앵커 박스의 사이즈로 하거나, (ii) (종횡비: AR1, 스케일: S2) 앵커 박스의 사이즈, (종횡비: AR2, 스케일: S2) 앵커 박스의 사이즈, 및 (종횡비: AR3, 스케일: S2) 앵커 박스의 사이즈로 하거나, (iii) (종횡비: AR1, 스케일: S3) 앵커 박스의 사이즈, (종횡비: AR2, 스케일: S3) 앵커 박스의 사이즈, 및 (종횡비: AR3, 스케일: S3) 앵커 박스의 사이즈로 설정할 수 있다. 만약, (i) (종횡비: AR1, 스케일: S1) 앵커 박스의 사이즈, (종횡비: AR2, 스케일: S1) 앵커 박스의 사이즈, 및 (종횡비: AR3, 스케일: S1) 앵커 박스의 사이즈를 각각의 풀링 사이즈로 하였을 경우, 다른 스케일(S2, S3)의 각각의 앵커 박스는 스케일에 관계없이 해당 종횡비에 대응하는 풀링 사이즈 각각에 대응되도록 설정할 수 있다. 즉, (AR1, S2) 앵커 박스와 (AR1, S3) 앵커 박스의 각각의 풀링 사이즈는 (AR1, S1) 앵커 박스의 풀링 사이즈로 설정할 수 있으며, (AR2, S2) 앵커 박스와 (AR2, S3) 앵커 박스의 각각의 풀링 사이즈는 (AR2, S1) 앵커 박스의 풀링 사이즈로 설정할 수 있으며, (AR3, S2) 앵커 박스와 (AR3, S3) 앵커 박스의 각각의 풀링 사이즈는 (AR3, S1) 앵커 박스의 풀링 사이즈로 설정할 수 있다.
그리고, 각각의 풀링 사이즈를 특정 앵커 박스의 스케일에 대응되도록 설정할 경우에는, 풀링 사이즈는 (i) (AR1, S1) 앵커 박스의 사이즈, (AR1, S2) 앵커 박스의 사이즈, 및 (AR1, S3) 앵커 박스의 사이즈로 하거나, (ii) (AR2, S1) 앵커 박스의 사이즈, (AR2, S2) 앵커 박스의 사이즈, 및 (AR2, S2) 앵커 박스의 사이즈로 하거나, (iii) (AR3, S1) 앵커 박스의 사이즈, (AR3, S2) 앵커 박스의 사이즈, 및 (AR3, S3) 앵커 박스의 사이즈로 설정할 수 있다.
또한, 각각의 풀링 사이즈를 특정 앵커 박스의 종횡비와 스케일에 같이 대응되도록 할 경우에는, 풀링 사이즈는 (AR1, S1) 앵커 박스의 사이즈, (AR2, S2) 앵커 박스의 사이즈, 및 (AR3, S3) 앵커 박스의 사이즈로 설정할 수도 있다.
이에 더하여, 각각의 풀링 사이즈를 앵커 박스 각각의 사이즈에 대응되도록 할 수 있다. 즉, 종횡비가 각각 1, 1/2, 2이며, 스케일이 각각 1, 2, 3일 경우를 예를 들면, 각각의 앵커 박스의 사이즈는 1x1, 2x1, 1x2, 2x2, 4x2, 2x4, 3x3, 6x3, 3x6이 될 수 있으며, 각각의 풀링 사이즈를 각각의 앵커 박스의 사이즈와 같게 설정할 수 있다.
하지만, 앵커 박스에 대응하는 상기 풀링 사이즈의 설정은 단지 예시적으로 설명한 것일 뿐, 본 발명은 이에 한정되지 않으며, 다양한 요소의 다양한 조합에 의해 풀링 사이즈를 설정할 수 있다.
그리고, 학습 장치(100)는 ROI 프로포잘을 각각의 풀링 사이즈에 대응되는 풀링 레이어(123-1, 123-2, …, 123-n)에 각각 입력하여 각각의 풀링 레이어(123-1, 123-2, …, 123-n)로 하여금 특징 맵 상에서 ROI 프로포잘에 대응되는 영역을 특징 맵에 대응하는 풀링 사이즈로 풀링하여 이에 대응하는 특징 벡터를 출력한다.
다음으로, 학습 장치(100)는 각각의 풀링 레이어(123-1, 123-2, …, 123-n)에 대응되는 각각의 FC 레이어(124-1, 124-2, …, 124-n)로 하여금 각각의 특징 벡터를 이용하여 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보(125-1, 125-2, …, 125-n) 및 각각의 객체 리그레션 정보(126-1, 126-2, …, 126-n)를 출력하도록 한다.
다음으로, 학습 장치(100)는 각각의 FC 레이어(124-1, 124-2, …, 124-n)에 대응되는 각각의 객체 로스 레이어(127-1, 127-2, …, 127-n)로 하여금 각각의 객체 클래스 정보(125-1, 125-2, …, 125-n), 각각의 객체 리그레션 정보(126-1, 126-2, …, 126-n) 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 각각의 FC 레이어(124-1, 124-2, …, 124-n) 및 컨볼루션 레이어(121)를 학습할 수 있다.
일 예로, 학습 장치(100)는 제1 객체 로스 레이어(127-1)에 대응되는 제1 객체 클래스 로스와 제1 객체 리그레션 로스를 이용한 백프로파게이션을 통해 제1 FC 레이어(124-1)와 컨볼루션 레이어(121)을 학습하고, 제2 객체 로스 레이어(127-2)에 대응되는 제2 객체 클래스 로스와 제2 객체 리그레션 로스를 이용한 백프로파게이션을 통해 제2 FC 레이어(124-2)와 컨볼루션 레이어(121)을 학습한다. 같은 방법에 의해 학습 장치(100)는 제n 로스 레이어(127-n)에 대응되는 제n 객체 클래스 로스와 제n 객체 리그레션 로스를 이용한 백프로파게이션을 통해 제n FC 레이어(124-n)과 컨볼루션 레이어(121)을 학습한다.
또한, 학습 장치(100)는 RPN(122)에 대응되는 RPN 로스 레이어(128)로 하여금 (i) 각각의 ROI 후보의 ROI 리그레션 정보 및 ROI 클래스 정보와 (ii) 이에 대응하는 각각의 ROI GT를 참조하여 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 산출하도록 하며, 학습 장치(100)는 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 수행해 RPN(122)을 학습하도록 할 수 있다. 여기서, 학습 장치(100)는 (i) 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 이용한 백프로파게이션과 (ii) 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 개별적으로 수행한다. 또한, 학습 장치(100)는 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 RPN(122)를 미리 학습한 상태일 수 있다.
도 5는 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기를 테스트하는 테스트 장치(200)를 개략적으로 도시한 것으로, 도 5를 참조하면, 테스트 장치(200)는 통신부(210)와 프로세서(220)를 포함할 수 있다.
또한, 테스트 장치는 다음의 프로세스를 수행하기 위한 컴퓨터 판독 가능한 인스트럭션(Instruction)을 저장할 수 있는 메모리(115)를 더 포함할 수 있다. 일 실시예에 따르면, 프로세서, 메모리, 매체 등은 통합 프로세서(Integrated Processor)로 통합될 수 있다.
먼저, 통신부(210)는 적어도 하나의 테스트 이미지를 획득할 수 있다.
이때, 본 발명의 일 실시예에 따른 R-CNN 기반의 객체 검출기는 도 2 내지 도 4를 참조하여 설명한 학습 방법에 의해 미리 학습된 상태일 수 있다.
참고로, 도 5에서 테스트 장치의 참조 번호 221, 222, 223, 224, 225 및 226는 도 3에서 학습 장치의 참조 번호 121, 122, 123, 124, 125 및 126가 가리키는 부분과 동일한 부분을 나타낸다. 또한, 이하의 설명에서 혼동을 피하기 위해 "학습용"이란 문구는 앞서 설명한 학습 프로세스와 관련된 용어에 대해 추가되고, "테스트용"이란 문구는 테스트 프로세스와 관련된 용어에 대해 추가된다.
즉, (I) 학습 장치(100)가 적어도 하나의 컨볼루션 레이어(221)로 하여금 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 학습용 특징 맵을 출력하도록 하며, RPN(222)으로 하여금 (i) 학습용 특징맵 상에서 스케일과 종횡비 중 적어도 일부에 의해 구별되는 복수의 학습용 앵커 박스를 사용하여 트레이닝 이미지 내에서 적어도 하나의 학습용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 학습용 ROI 후보 영역을 생성하도록 하고, (ii) 학습용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 학습용 ROI 후보 학습용 ROI 프로포잘로 출력하도록 하며, (II) 학습 장치(100)가 (i) 학습용 ROI 프로포잘 생성에 사용된 각각의 특정 학습용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어(223-1, 223-2, …, 223-n)에 학습용 ROI 프로포잘을 각각 입력하여, (ii) 각각의 풀링 레이어(223-1, 223-2, …, 223-n)로 하여금 학습용 특징 맵 상에서 학습용 ROI 프로포잘에 대응되는 영역을 학습용 특징 맵에 대응하는 풀링 사이즈로 풀링하여 이에 대응하는 학습용 특징 벡터를 출력하도록 하며, (iii) 각각의 풀링 레이어(223-1, 223-2, …, 223-n)에 대응되는 각각의 FC 레이어(224-1, 224-2, …, 224-n)로 하여금 각각의 학습용 특징 벡터를 이용하여 각각의 학습용 ROI 프로포잘에 대응되는 각각의 학습용 객체 클래스 정보(225-1, 225-2, …, 225-n) 및 각각의 학습용 객체 리그레션 정보(226-1, 226-2, …, 226-n)를 출력하도록 하고, (III) 학습 장치(100)가 각각의 FC 레이어(224-1, 224-2, …, 224-n)에 대응되는 각각의 객체 로스 레이어(127-1, 127-2, …, 127-n)로 하여금 각각의 학습용 객체 클래스 정보(225-1, 225-2, …, 225-n), 학습용 객체 리그레션 정보(226-1, 226-2, …, 226-n) 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 각각의 FC 레이어(224-1, 224-2, …, 224-n) 및 컨볼루션 레이어(221)를 학습한 상태일 수 있다.
프로세서(220)는 (I) 컨볼루션 레이어(221)로 하여금 적어도 하나의 테스트 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 테스트용 특징 맵을 출력하도록 하며, RPN(222)으로 하여금 (i) 테스트용 특징 맵 상에서 스케일과 종횡비 중 적어도 일부에 의해 구별되는 복수의 테스트용 앵커 박스를 사용하여 테스트 이미지 내에서 적어도 하나의 테스트용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 테스트용 ROI 후보를 생성하도록 하고, (ii) 테스트용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 테스트용 ROI 후보를 테스트용 ROI 프로포잘로 출력하도록 하는 제1 프로세스와, (II) (i) 테스트용 ROI 프로포잘 생성에 사용된 각각의 특정 테스트용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어(223-1, 223-2, …, 223-n)에 테스트용 ROI 프로포잘을 입력하여 (ii) 각각의 풀링 레이어(223-1, 223-2, …, 223-n)로 하여금 테스트용 특징 맵 상에서 테스트용 ROI 프로포잘에 대응되는 영역을 테스트용 특징 맵에 대응하는 풀링 사이즈로 풀링하여 각각의 테스트용 특징 벡터를 출력하도록 하며, (iii) 각각의 풀링 레이어(223-1, 223-2, …, 223-n)에 대응되는 각각의 FC 레이어(224-1, 224-2, …, 224-n)로 하여금 각각의 테스트용 특징 벡터를 이용하여 각각의 테스트용 ROI 프로포잘에 대응되는 각각의 테스트용 객체 클래스 정보(225-1, 225-2, …, 225-n) 및 각각의 테스트용 객체 리그레션 정보(226-1, 226-2, …, 226-n)을 출력하도록 하는 제2 프로세스를 수행할 수 있다.
이때, 본 발명의 일 실시예에 따른 테스트 장치(200)는 컴퓨팅 장치로서, 프로세서를 탑재하여 연산 능력을 갖춘 장치라면 얼마든지 본 발명에 따른 테스트 장치(200)로서 채택될 수 있다. 또한, 도 5에서는 하나의 테스트 장치(200)만을 나타내었으나, 이에 한정되지 않으며, 테스트 장치는 복수 개로 나뉘어 역할을 수행할 수도 있다.
본 발명의 일 실시예에 따른 테스트 장치(200)를 이용하여 R-CNN 기반의 객체 검출기를 테스트하는 방법을 도 6을 참조하여 설명하면 다음과 같다. 이하의 설명에서, 학습 방법으로부터 용이하게 이해 가능한 부분에 대해서는 상세한 설명을 생략하기로 한다.
먼저, 도 2 내지 도 4를 참조하여 설명한 학습 방법에 의해 컨볼루션 레이어(221), RPN(222) 및 각각의 FC 레이어(224-1, 224-2, …, 224-n)가 학습된 상태에서, 적어도 하나의 테스트 이미지가 입력되면, 테스트 장치(200)가, 컨볼루션 레이어(221)로 하여금 테스트 이미지에 대해 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 테스트용 특징 맵을 출력하도록 한다. 이때, 컨볼루션 레이어(221)는 테스트 이미지에 대해 순차적으로 컨볼루션 연산을 적용하기 위하여 복수 개의 컨벌루션 유닛으로 구성될 수 있다.
그리고, 테스트 장치(200)는 RPN(222)으로 하여금 (i) 테스트용 특징 맵 상에서 스케일과 종횡비 중 적어도 일부에 의해 구별되는 복수의 테스트용 앵커 박스를 사용하여 테스트 이미지 내에서 적어도 하나의 테스트용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 테스트용 ROI 후보를 생성하도록 하고, (ii) 테스트용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 테스트용 ROI를 테스트용 ROI 프로포잘로 출력하도록 한다.
다음으로, 테스트 장치(200)는 테스트용 ROI 프로포잘 생성에 사용된 각각의 특정 테스트용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어(223-1, 223-2, …, 223-n)를 확인한다.
이때, 각각의 풀링 사이즈는 특정 앵커 박스의 종횡비나 특정 앵커 박스의 스케일에 대응되도록 할 수 있다. 또한, 각각의 풀링 사이즈는 검출하고자 하는 객체의 형상에 대응되거나 특정 앵커 박스의 각각의 크기에 대응되도록 할 수 있다.
그리고, 테스트 장치(200)는 각각의 풀링 사이즈에 대응되는 각각의 풀링 레이어(223-1, 223-2, …, 223-n)에 테스트용 ROI 프로포잘을 입력하여 각각의 풀링 레이어(223-1, 223-2, …, 223-n)로 하여금 테스트용 특징 맵 상에서 테스트용 ROI 프로포잘에 대응되는 영역을 테스트용 특징 맵에 대응하는 풀링 사이즈로 풀링하여 각각의 테스트용 특징 벡터를 출력하도록 한다.
다음으로, 테스트 장치(200)는 각각의 풀링 레이어(223-1, 223-2, …, 223-n)에 대응되는 각각의 FC 레이어(224-1, 224-2, …, 224-n)로 하여금 각각의 테스트용 특징 벡터를 이용하여 각각의 테스트용 ROI 프로포잘에 대응되는 각각의 테스트용 객체 클래스 정보(225-1, 225-2, …, 225-n) 및 각각의 테스트용 객체 리그레션 정보(226-1, 226-2, …, 226-n)를 출력함으로써 테스트 이미지 내에 위치하는 테스트용 객체를 검출할 수 있도록 한다.
R-CNN은 객체의 종횡비나 스케일에 따라 모드를 전환할 수 있다. 신호등을 포함하는 객체의 종횡비와 스케일은 객체 검출기로부터의 거리, 객체의 형태 등과 같은 특성에 따라 결정될 수 있다. 본 발명에 따른 풀링 프로세스는 레이더, 라이다(Lidar) 또는 다른 센서를 통해 획득된 거리 정보 및 객체 정보를 이용하여 객체의 실제 비율과 실제 크기에 따라 수행될 수 있다. 또한, 학습 방법 및 테스트 방법은 특정 위치에서 동일한 관점에서 비슷한 크기를 가지므로 감시에 사용될 수 있다.
본 발명 기술분야의 통상의 기술자에게 이해될 수 있는 바로서, 위에서 설명된 이미지, 예컨대 트레이닝 이미지, 테스트 이미지와 같은 이미지 데이터의 송수신이 학습 장치 및 테스트 장치의 통신부들에 의하여 이루어질 수 있으며, 특징 맵과 연산을 수행하기 위한 데이터가 학습 장치 및 테스트 장치의 프로세서(및/또는 메모리)에 의하여 보유/유지될 수 있고, 컨벌루션 연산, 디컨벌루션 연산, 로스 값 연산 과정이 주로 학습 장치 및 테스트 장치의 프로세서에 의하여 수행될 수 있으나, 본 발명이 이에 한정되지는 않을 것이다.
또한, 이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
100: 학습 장치,
200: 테스트 장치,
110, 210: 통신부,
120, 220: 프로세서,
130: 데이터베이스

Claims (28)

  1. R-CNN(Region-based Convolutional Neural Network) 기반의 객체 검출기(Object Detector)를 학습하는 방법에 있어서,
    (a) 학습 장치가, 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 객체가 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 하는 단계;
    (b) 상기 학습 장치가, (i) 상기 ROI 프로포잘의 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 특징 맵 상에서 상기 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 특징 벡터를 이용하여 상기 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보 및 각각의 객체 리그레션 정보를 출력하도록 하는 단계; 및
    (c) 상기 학습 장치가, 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 객체 클래스 정보와 상기 각각의 객체 리그레션 정보, 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 단계;
    를 포함하는 것을 특징으로 하는 방법.
  2. 제 1 항에 있어서,
    상기 학습 장치가, RPN 로스 레이어로 하여금 (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 해당하는 각각의 ROI GT를 참조하여, 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 산출하도록 하며,
    상기 학습 장치는, 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 수행해 상기 RPN을 학습하는 것을 특징으로 하는 방법.
  3. 제 2 항에 있어서,
    상기 학습 장치가,
    (i) 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션과, (ii) 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 별개로 수행하는 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서,
    상기 (a) 단계 이전에,
    상기 학습 장치가, (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 하는 방법.
  5. 제 1 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 하는 방법.
  6. 제 1 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 하는 방법.
  7. 제 1 항에 있어서,
    상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 객체의 형상에 대응되는 것을 특징으로 하는 방법.
  8. 제 1 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 하는 방법.
  9. R-CNN 기반의 객체 검출기를 테스트하는 방법에 있어서,
    (a) 학습 장치가 (I) 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 학습용 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 학습용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 학습용 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 학습용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 학습용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 학습용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 학습용 ROI 후보를 학습용 ROI 프로포잘로 출력하도록 하는 프로세스; (II) (i) 상기 학습용 ROI 프로포잘의 생성에 사용된 각각의 특정 학습용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 학습용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 학습용 특징 맵 상에서 상기 학습용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 학습용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 학습용 특징 벡터를 이용하여 상기 각각의 학습용 ROI 프로포잘에 대응되는 각각의 학습용 객체 클래스 정보 및 각각의 학습용 객체 리그레션 정보를 출력하도록 하는 프로세스; (III) 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 학습용 객체 클래스 정보, 상기 각각의 학습용 객체 리그레션 정보 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 프로세스;를 수행한 상태에서, 테스트 장치가, 상기 컨볼루션 레이어로 하여금 적어도 하나의 테스트 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 테스트용 특징 맵을 출력하도록 하며, 상기 RPN(Region Proposal Network)으로 하여금 (i) 상기 테스트용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 테스트용 앵커 박스를 사용하여 상기 테스트 이미지 내에서 적어도 하나의 테스트용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 테스트용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 테스트용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 테스트용 ROI 후보를 테스트용 ROI 프로포잘로 출력하도록 하는 단계;
    (b) 상기 테스트 장치가, (i) 상기 테스트용 ROI 프로포잘 생성에 사용된 각각의 특정 테스트용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 테스트용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 테스트용 특징 맵 상에서 상기 테스트용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 테스트용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 상기 각각의 FC 레이어로 하여금 상기 각각의 테스트용 특징 벡터를 이용하여 상기 각각의 테스트용 ROI 프로포잘에 대응되는 각각의 테스트용 객체 클래스 정보 및 각각의 테스트용 객체 리그레션 정보를 출력하도록 하는 단계;
    를 포함하는 것을 특징으로 하는 테스트 방법.
  10. 제 9 항에 있어서,
    상기 (I) 프로세스 이전에,
    상기 학습 장치가, (i) 상기 학습용 ROI 후보의 학습용 ROI 클래스 정보 및 학습용 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 하는 테스트 방법.
  11. 제 9 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 하는 테스트 방법.
  12. 제 9 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 하는 테스트 방법.
  13. 제 9 항에 있어서,
    상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 테스트용 객체의 형상에 대응되는 것을 특징으로 하는 테스트 방법.
  14. 제 9 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 하는 테스트 방법.
  15. R-CNN(Region-based Convolutional Neural Network) 기반의 객체 검출기(Object Detector)를 학습하는 학습 장치에 있어서,
    인스트럭션(Instruction)을 저장하는 적어도 하나의 메모리; 및
    (I) 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 객체가 위치하는 것으로 판단되는 확률이 높은 특정 ROI 후보를 ROI 프로포잘로 출력하도록 하는 프로세스, (II) (i) 상기 ROI 프로포잘의 생성에 사용된 각각의 특정 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 특징 맵 상에서 상기 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 특징 벡터를 이용하여 상기 각각의 ROI 프로포잘에 대응되는 각각의 객체 클래스 정보 및 각각의 객체 리그레션 정보를 출력하도록 하는 프로세스 및 (III) 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 객체 클래스 정보와 상기 각각의 객체 리그레션 정보, 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 프로세스를 수행하기 위한 상기 인스트럭션을 실행하도록 구성된 적어도 하나의 프로세서;
    를 포함하는 것을 특징으로 하는 학습 장치.
  16. 제 15 항에 있어서,
    상기 프로세서는, RPN 로스 레이어로 하여금 (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 해당하는 각각의 ROI GT를 참조하여, 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 산출하도록 하며,
    상기 프로세서는, 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 수행해 상기 RPN을 학습하는 것을 특징으로 하는 학습 장치.
  17. 제 16 항에 있어서,
    상기 프로세서는,
    (i) 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션과, (ii) 상기 각각의 ROI 클래스 로스와 상기 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 별개로 수행하는 것을 특징으로 하는 학습 장치.
  18. 제 15 항에 있어서,
    상기 (I) 프로세스 이전에,
    상기 프로세서는, (i) 상기 ROI 후보의 ROI 클래스 정보 및 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 하는 학습 장치.
  19. 제 15 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 하는 학습 장치.
  20. 제 15 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 하는 학습 장치.
  21. 제 15 항에 있어서,
    상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 객체의 형상에 대응되는 것을 특징으로 하는 학습 장치.
  22. 제 15 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 하는 학습 장치.
  23. R-CNN 기반의 객체 검출기를 테스트하는 테스트 장치에 있어서,
    인스트럭션(Instruction)을 저장하는 적어도 하나의 메모리; 및
    (I) 적어도 하나의 컨볼루션 레이어로 하여금 적어도 하나의 트레이닝 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 학습용 특징 맵을 출력하도록 하며, RPN(Region Proposal Network)으로 하여금 (i) 상기 학습용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 복수의 학습용 앵커 박스를 사용하여 상기 트레이닝 이미지 내에서 적어도 하나의 학습용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 학습용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 학습용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 학습용 ROI 후보를 학습용 ROI 프로포잘로 출력하도록 하는 프로세스; (II) (i) 상기 학습용 ROI 프로포잘의 생성에 사용된 각각의 특정 학습용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 학습용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 학습용 특징 맵 상에서 상기 학습용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 학습용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 각각의 FC 레이어로 하여금 상기 각각의 학습용 특징 벡터를 이용하여 상기 각각의 학습용 ROI 프로포잘에 대응되는 각각의 학습용 객체 클래스 정보 및 각각의 학습용 객체 리그레션 정보를 출력하도록 하는 프로세스; (III) 상기 각각의 FC 레이어에 대응되는 각각의 객체 로스 레이어로 하여금 상기 각각의 학습용 객체 클래스 정보, 상기 각각의 학습용 객체 리그레션 정보 및 이에 대응하는 각각의 객체 GT를 참조하여 각각의 객체 클래스 로스와 각각의 객체 리그레션 로스를 산출하도록 함으로써, 상기 각각의 객체 클래스 로스와 상기 각각의 객체 리그레션 로스를 이용한 백프로파게이션을 통해 상기 각각의 FC 레이어 및 상기 컨볼루션 레이어를 학습하는 프로세스;를 수행한 상태에서, (1) 상기 컨볼루션 레이어로 하여금 적어도 하나의 테스트 이미지에 대하여 컨볼루션 연산을 적어도 한 번 적용하도록 하여 적어도 하나의 테스트용 특징 맵을 출력하도록 하며, 상기 RPN(Region Proposal Network)으로 하여금 (i) 상기 테스트용 특징 맵 상에서 스케일과 종횡비(Aspect Ratio) 중 적어도 일부에 의해 구별되는 테스트용 앵커 박스를 사용하여 상기 테스트 이미지 내에서 적어도 하나의 테스트용 객체가 위치하는 것으로 추정되는 후보 영역에 대응되는 테스트용 ROI(Region of Interest) 후보를 생성하도록 하고, (ii) 상기 테스트용 객체가 위치하는 것으로 판단되는 확률이 높은 특정 테스트용 ROI 후보를 테스트용 ROI 프로포잘로 출력하도록 하는 프로세스 및 (2) (i) 상기 테스트용 ROI 프로포잘 생성에 사용된 각각의 특정 테스트용 앵커 박스에 대응하여 설정된 각각의 풀링 사이즈에 대응하는 각각의 풀링 레이어에 상기 테스트용 ROI 프로포잘을 입력하고, (ii) 상기 각각의 풀링 레이어로 하여금 이에 대응하는 풀링 사이즈에 따라 상기 테스트용 특징 맵 상에서 상기 테스트용 ROI 프로포잘에 대응되는 영역을 풀링하도록 하여, 이에 대응하는 테스트용 특징 벡터를 출력하도록 하며, (iii) 상기 각각의 풀링 레이어에 대응되는 상기 각각의 FC 레이어로 하여금 상기 각각의 테스트용 특징 벡터를 이용하여 상기 각각의 테스트용 ROI 프로포잘에 대응되는 각각의 테스트용 객체 클래스 정보 및 각각의 테스트용 객체 리그레션 정보를 출력하도록 하는 프로세스를 수행하는 인스트럭션을 수행하도록 설정된 적어도 하나의 프로세서;
    를 포함하는 것을 특징으로 하는 테스트 장치.
  24. 제 23 항에 있어서,
    상기 (I) 프로세스 이전에,
    상기 프로세서는, (i) 상기 학습용 ROI 후보의 학습용 ROI 클래스 정보 및 학습용 ROI 리그레션 정보와 (ii) 이에 대응하는 ROI GT 각각을 참조하여 산출된 각각의 ROI 클래스 로스와 각각의 ROI 리그레션 로스를 이용한 백프로파게이션을 통해 상기 RPN을 학습하는 프로세스를 완료한 상태인 것을 특징으로 하는 테스트 장치.
  25. 제 23 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 종횡비에 대응되는 것을 특징으로 하는 테스트 장치.
  26. 제 23 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스의 상기 스케일에 대응되는 것을 특징으로 하는 테스트 장치.
  27. 제 23 항에 있어서,
    상기 각각의 풀링 사이즈는, 검출하고자 하는 상기 테스트용 객체의 형상에 대응되는 것을 특징으로 하는 테스트 장치.
  28. 제 23 항에 있어서,
    상기 각각의 풀링 사이즈는, 상기 특정 테스트용 앵커 박스 각각의 사이즈에 대응되는 것을 특징으로 하는 테스트 장치.
KR1020190119509A 2019-01-25 2019-09-27 객체의 종횡비나 스케일에 따라 모드를 전환할 수 있는 r-cnn 기반의 감시에 사용되는 객체 검출기의 학습 방법 및 테스트 방법, 이를 이용한 학습 장치 및 테스트 장치 KR102319541B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/258,079 2019-01-25
US16/258,079 US10410120B1 (en) 2019-01-25 2019-01-25 Learning method and testing method of object detector to be used for surveillance based on R-CNN capable of converting modes according to aspect ratios or scales of objects, and learning device and testing device using the same

Publications (2)

Publication Number Publication Date
KR20200092844A KR20200092844A (ko) 2020-08-04
KR102319541B1 true KR102319541B1 (ko) 2021-11-01

Family

ID=67845113

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190119509A KR102319541B1 (ko) 2019-01-25 2019-09-27 객체의 종횡비나 스케일에 따라 모드를 전환할 수 있는 r-cnn 기반의 감시에 사용되는 객체 검출기의 학습 방법 및 테스트 방법, 이를 이용한 학습 장치 및 테스트 장치

Country Status (5)

Country Link
US (1) US10410120B1 (ko)
EP (1) EP3686777A1 (ko)
JP (1) JP7109091B2 (ko)
KR (1) KR102319541B1 (ko)
CN (1) CN111488871B (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111291587A (zh) * 2018-12-06 2020-06-16 深圳光启空间技术有限公司 一种基于密集人群的行人检测方法、存储介质及处理器
US10713815B1 (en) * 2019-01-31 2020-07-14 StradVision, Inc. Method and device for supporting administrators to processes of object detectors to provide logical driving
KR20220148245A (ko) 2020-03-04 2022-11-04 구글 엘엘씨 스트리밍 시퀀스 모델에 대한 일관성 예측
US10970598B1 (en) * 2020-05-13 2021-04-06 StradVision, Inc. Learning method and learning device for training an object detection network by using attention maps and testing method and testing device using the same
CN111753137B (zh) * 2020-06-29 2022-05-03 四川长虹电器股份有限公司 一种基于语音特征的视频搜索方法
KR102497640B1 (ko) * 2020-08-25 2023-02-08 한국과학기술원 이미지의 객체 감지 및 분류 방법 및 시스템
CN112150462B (zh) * 2020-10-22 2023-12-22 北京百度网讯科技有限公司 确定目标锚点的方法、装置、设备以及存储介质
GB2602631A (en) * 2021-01-05 2022-07-13 Nissan Motor Mfg Uk Limited Traffic light detection and classification
CN112346056B (zh) * 2021-01-11 2021-03-26 长沙理工大学 多脉冲雷达信号的分辨性特征融合提取方法及识别方法
CN113762109B (zh) 2021-08-23 2023-11-07 北京百度网讯科技有限公司 一种文字定位模型的训练方法及文字定位方法
WO2023058999A1 (ko) * 2021-10-08 2023-04-13 고려대학교 산학협력단 관심객체 검출장치, 방법 및 이를 위한 컴퓨터 판독가능 프로그램
CN114104980B (zh) * 2021-10-15 2023-06-02 福建电子口岸股份有限公司 一种基于ai与视觉结合的岸桥安全作业控制方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170124415A1 (en) 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Subcategory-aware convolutional neural networks for object detection
US20170206431A1 (en) 2016-01-20 2017-07-20 Microsoft Technology Licensing, Llc Object detection and classification in images

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3204888A4 (en) * 2014-10-09 2017-10-04 Microsoft Technology Licensing, LLC Spatial pyramid pooling networks for image processing
US9524450B2 (en) * 2015-03-04 2016-12-20 Accenture Global Services Limited Digital image processing using convolutional neural networks
US20170124409A1 (en) * 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
WO2017106645A1 (en) * 2015-12-18 2017-06-22 The Regents Of The University Of California Interpretation and quantification of emergency features on head computed tomography
US10032067B2 (en) * 2016-05-28 2018-07-24 Samsung Electronics Co., Ltd. System and method for a unified architecture multi-task deep learning machine for object recognition
US10354362B2 (en) * 2016-09-08 2019-07-16 Carnegie Mellon University Methods and software for detecting objects in images using a multiscale fast region-based convolutional neural network
US10621747B2 (en) * 2016-11-15 2020-04-14 Magic Leap, Inc. Deep learning system for cuboid detection
CN106599939A (zh) * 2016-12-30 2017-04-26 深圳市唯特视科技有限公司 一种基于区域卷积神经网络的实时目标检测方法
CN107451602A (zh) * 2017-07-06 2017-12-08 浙江工业大学 一种基于深度学习的果蔬检测方法
US10049323B1 (en) * 2017-10-13 2018-08-14 StradVision, Inc. Method and device for performing activation and convolution operation at the same time and learning method and learning device for the same
CN108109160A (zh) * 2017-11-16 2018-06-01 浙江工业大学 一种基于深度学习的免交互式GrabCut舌体分割方法
CN108052881A (zh) * 2017-11-30 2018-05-18 华中科技大学 一种实时检测施工现场图像中多类实体对象的方法及设备
KR102585216B1 (ko) * 2017-12-14 2023-10-05 삼성전자주식회사 영상 인식 방법 및 그 장치
CN108875577A (zh) * 2018-05-11 2018-11-23 深圳市易成自动驾驶技术有限公司 目标检测方法、装置及计算机可读存储介质
US10547823B2 (en) * 2018-09-25 2020-01-28 Intel Corporation View interpolation of multi-camera array images with flow estimation and image super resolution using deep learning

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170124415A1 (en) 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Subcategory-aware convolutional neural networks for object detection
US20170206431A1 (en) 2016-01-20 2017-07-20 Microsoft Technology Licensing, Llc Object detection and classification in images

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Feature Pyramid Networks for Object Detection", arXiv:1612.03144v2[cs.CV], 2017.04.19.
"ML-LocNet: Improving Object Localization with Multi-view Learning Network", 15th European Conference on Computer Vision, 2018.09.14.

Also Published As

Publication number Publication date
KR20200092844A (ko) 2020-08-04
CN111488871A (zh) 2020-08-04
US10410120B1 (en) 2019-09-10
CN111488871B (zh) 2023-08-04
EP3686777A1 (en) 2020-07-29
JP2020119522A (ja) 2020-08-06
JP7109091B2 (ja) 2022-07-29

Similar Documents

Publication Publication Date Title
KR102319541B1 (ko) 객체의 종횡비나 스케일에 따라 모드를 전환할 수 있는 r-cnn 기반의 감시에 사용되는 객체 검출기의 학습 방법 및 테스트 방법, 이를 이용한 학습 장치 및 테스트 장치
KR102373456B1 (ko) 자동 주차 시스템을 제공하기 위해 결정 지점 간의 관계 및 결정 지점에 대한 리그레션 결과를 이용하여 주차 공간을 검출하는 학습 방법 및 학습 장치, 그리고 이를 이용한 테스팅 방법 및 테스팅 장치
KR102337376B1 (ko) 레인 마스크(Lane Mask)를 사용하여 후처리 없이 입력 이미지에 포함된 하나 이상의 차선을 검출하는 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
US10509987B1 (en) Learning method and learning device for object detector based on reconfigurable network for optimizing customers' requirements such as key performance index using target object estimating network and target object merging network, and testing method and testing device using the same
KR102313113B1 (ko) R-cnn 기반 객체 검출기의 학습 방법과 테스팅 방법, 및 이를 이용한 학습 장치와 테스팅 장치
KR20200027427A (ko) 차선 후보 픽셀의 분류를 통해 차선을 검출하는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
US10430691B1 (en) Learning method and learning device for object detector based on CNN, adaptable to customers' requirements such as key performance index, using target object merging network and target region estimating network, and testing method and testing device using the same to be used for multi-camera or surround view monitoring
KR102279376B1 (ko) CNN(Convolutional Neural Network)을 사용하여 차선을 검출하기 위한 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR102309708B1 (ko) 인스턴스 세그멘테이션을 이용한 객체의 자세에 따라 모드를 전환할 수 있는 cnn 기반의 수도-3d 바운딩 박스를 검출하는 방법 및 이를 이용한 장치
KR102320995B1 (ko) 객체의 스케일에 따라 모드 전환이 가능한 cnn 기반의 감시용 객체 검출기의 학습 방법 및 학습 장치, 이를 이용한 테스트 방법 및 테스트 장치
US10410352B1 (en) Learning method and learning device for improving segmentation performance to be used for detecting events including pedestrian event, vehicle event, falling event and fallen event using edge loss and test method and test device using the same
KR102279388B1 (ko) 차선 모델을 이용하여 차선을 검출할 수 있는 학습 방법 및 학습 장치 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR102301631B1 (ko) 협업 주행을 수행하는 자동차들로부터 획득된 주행 이미지들을 통합하는 방법 및 이를 이용한 주행 이미지 통합 장치
US10423860B1 (en) Learning method and learning device for object detector based on CNN to be used for multi-camera or surround view monitoring using image concatenation and target object merging network, and testing method and testing device using the same
US10402692B1 (en) Learning method and learning device for fluctuation-robust object detector based on CNN using target object estimating network adaptable to customers' requirements such as key performance index, and testing device using the same
KR102372685B1 (ko) Non-RGB 포맷을 가지는 이미지의 객체에 대한 객체 디텍션 학습에 사용될 수 있도록, 사이클 GAN을 사용하여 RGB 트레이닝 이미지 세트를 Non-RGB 트레이닝 이미지 세트로 변환하여, 컴퓨팅 부하 및 재활용 데이터를 현저하게 감소시킬 수 있는 학습 방법 및 학습 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치
KR102337367B1 (ko) 원거리 검출 또는 군사 목적을 위해, 이미지 컨캐터네이션을 이용한, cnn 기반의 하드웨어 최적화가 가능한 객체 검출기를 학습하는 방법 및 학습 장치, 이를 이용한 테스팅 방법 및 테스팅 장치
KR102320985B1 (ko) 멀티 카메라 시스템 내의 더블 임베딩 구성을 이용하여 도로 이용자 이벤트를 검출하기 위해 이용될 세그먼테이션 성능 향상을 위한 학습 방법 및 학습 장치 그리고 이를 이용한 테스팅 방법 및 테스팅 장치
EP3690725A1 (en) Method and device for seamless parameter switch by using location-specific algorithm selection to achieve optimized autonomous driving in each of regions
KR102314524B1 (ko) 자율 주행 상황에서 장애물 검출을 위한 cnn 학습용 이미지 데이터 세트의 생성 방법 및 컴퓨팅 장치
JP2020038669A (ja) 複数のビデオフレームを利用してcnnのパラメータを最適化するための学習方法及び学習装置、そしてこれを利用したテスト方法及びテスト装置
KR102309712B1 (ko) 객체의 조건에 따라 모드를 전환할 수 있는 CNN 기반으로 군사 목적, 스마트폰 또는 가상 주행에 사용되는 수도(Pseudo)-3D 바운딩 박스를 검출하는 방법 및 이를 이용한 장치
KR20200095357A (ko) 비최대값 억제를 학습하는 병합 네트워크를 이용한 이종 센서 융합을 위한 학습 방법 및 학습 장치
KR102325025B1 (ko) 자율주행 차량 레벨4를 충족하기 위해 영역의 클래스에 따라 모드를 전환하기 위하여 그리드 생성기를 이용하는 뉴럴 네트워크 연산 방법 및 이를 이용한 장치
KR102313129B1 (ko) 자율 주행에 대한 논리적 근거를 제시하기 위하여, 관리자가 객체 검출기의 객체 검출 프로세스를 평가할 수 있도록 지원하는 방법 및 장치

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