KR102108854B1 - 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치 - Google Patents

딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치 Download PDF

Info

Publication number
KR102108854B1
KR102108854B1 KR1020180118856A KR20180118856A KR102108854B1 KR 102108854 B1 KR102108854 B1 KR 102108854B1 KR 1020180118856 A KR1020180118856 A KR 1020180118856A KR 20180118856 A KR20180118856 A KR 20180118856A KR 102108854 B1 KR102108854 B1 KR 102108854B1
Authority
KR
South Korea
Prior art keywords
feature map
input image
layer
object detection
processor
Prior art date
Application number
KR1020180118856A
Other languages
English (en)
Other versions
KR20200044171A (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 재단법인대구경북과학기술원
Priority to KR1020180118856A priority Critical patent/KR102108854B1/ko
Priority to PCT/KR2019/012699 priority patent/WO2020071701A1/ko
Priority to US17/282,468 priority patent/US11875553B2/en
Publication of KR20200044171A publication Critical patent/KR20200044171A/ko
Application granted granted Critical
Publication of KR102108854B1 publication Critical patent/KR102108854B1/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/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/7715Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace methods
    • 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/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • 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/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2137Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on criteria of topology preservation, e.g. multidimensional scaling or self-organising maps
    • 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
    • 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
    • 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/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration by the use of local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • 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
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box

Abstract

실시간 객체 검출 방법 및 장치가 개시된다. 일실시예에 따른 객체 검출 장치는 입력 영상을 수신하여, 입력 영상으로부터 제1 특징 맵을 추출하고, 제1 특징 맵에 기초하여, 입력 영상에 포함된 객체를 검출하고, 입력 영상으로부터 제1 특징 맵의 해상도보다 높은 해상도를 가지는 제2 특징 맵을 추출하고, 검출된 객체의 영역에 기초하여 제2 특징 맵으로부터 제3 특징 맵을 추출하고, 제1 특징 맵 및 제3 특징 맵에 기초하여 객체를 재 검출할 수 있다.

Description

딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치{REAL-TIME OBJECT DETECTION METHOD AND APPARATUS BY DEEP LEARNING NETWORK MODEL}
아래 실시예들은 컨볼루션 신경망의 처리 기술에 관한 것이다.
뉴럴 네트워크 기반의 딥러닝(deep learning) 기술은 다양한 분야에서 활용되고 있다. 예를 들어, 얼굴, 홍채, 음성 등을 인식하는 딥러닝 기반 생체 인식/인증 어플리케이션은 임베디드 단말(예를 들어, 스마트 폰)에 채용된다. 컨볼루션 신경망(Convolutional Neural Network; CNN)은 컨볼루션 연산을 활용하는 다 계층 신경망으로서, 딥러닝 기반 영상 및 음성 인식 분야에서 좋은 성능을 보여준다.
기존의 Faster-RCNN은 Region Proposal Network(RPN) 기반 객체 검출을 수행하지만, 회귀(regression) 모델과 분류(classification) 과정이 분리되어 있어 연산 속도가 느리다. 이를 개선하기 위해, Fully Convolutional Network(FCN) 구조를 통한 객체 검출 모델이 제안되었다. 이런 모델들은 일반적 성능이 우수한 VGG 네트워크와 같은 구조를 CNN 레이어로 고려하고 있다. 하지만, VGG 네트워크와 같은 구조는 콘볼루션 레이어가 증가할수록 작은 수신 필드(receptive field)에 대한 특징 정보가 감소하는 경향이 있어, 작은 객체 검출에 성능이 다소 떨어진다. 이에 따라, 최근 R-FCN과 DSSD 모델은 이를 보안 할 수 있는 잔여 네트워크(Residual Network)를 적용하여 성능을 개선하였다. 또한, 이런 기존 객체 검출 모델들은 객체 특징 정보의 표현력과 수용력을 높일 수 있는 다양한 멀티-스케일 특징(Multi-scale feature) 기법을 제안하여 객체의 다양한 모양 및 크기 변화에 대한 성능을 개선하고 있다. 하지만, 멀티-스케일 특징 기법의 경우에도 주행 환경에서 작은 객체 검출 등에 완벽한 성능을 보이고 있지는 못하고 있다.
또한, 최근 다양한 종류, 모양, 그리고 크기에 대한 정보 수용력과 표현력을 증가시킬 수 있는 ResNet과 SeNet 등과 같은 CNN 구조들이 제안되고 있지만, 추가적인 블록(block)의 추가로 인해 연산량이 증가하는 단점이 있다.
일실시예에 따른 CNN 기반 다중 객체 검출 모델은 저 연산으로 작은 receptive field의 정보에 대한 손실을 줄여 가려진 객체 및 작은 객체를 잘 검출할 수 있다. 일실시예에 따른 CNN 기반 다중 객체 검출 모델은 Anchor box를 사전 정의할 필요 없이 적은 연산량으로 고해상도의 특징 정보를 융합하고 이를 이용해 다양한 크기의 객체를 검출할 수 있다.
일실시예에 따른 실시간 객체 검출 방법은 입력 영상을 수신하여, 상기 입력 영상으로부터 제1 특징 맵을 고속 컨볼루션 망을 통한 입력 및 커널 사이의 고속 컨볼루션 연산을 수행하여, 상기 입력 영상으로부터 제1 특징 맵을 추출하는 단계; 상기 제1 특징 맵에 기초하여, 상기 입력 영상에 포함된 객체를 검출하는 단계; 상기 입력 영상으로부터, 상기 제1 특징 맵의 해상도보다 높은 해상도를 가지는 제2 특징 맵을 추출하는 단계; 상기 검출된 객체의 영역에 기초하여, 상기 제2 특징 맵으로부터 제3 특징 맵을 추출하는 단계; 및 상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 객체를 재 검출하는 단계를 포함한다.
일실시예에 따르면, 상기 제2 특징 맵을 추출하는 단계는 상기 입력 영상을 CNN에 인가하는 단계; 및 상기 CNN의 출력 레이어의 디멘션보다 큰 디멘션을 가지는 중간 레이어로부터, 상기 제2 특징 맵을 획득하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제3 특징 맵을 추출하는 단계는 상기 검출된 객체의 영역에 대응하는 바운딩 박스(bounding box) 내의 요소들을 샘플링하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 객체 영역을 재 검출하는 단계는 제1 특징 맵과 제3 특징 맵을 연쇄(concatenate)시키는 단계; 및 상기 객체의 검출 결과에 대응하는 복수의 필터들을 상기 연쇄된 특징 맵 적용하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 입력 영상으로부터 제1 특징 맵을 추출하는 단계는 상기 입력 영상을 CNN에 인가하는 단계; 및 상기 제1 특징 맵에 포함된 복수의 특징들에 대응하는 복수의 필터들을 상기 CNN의 출력에 적용하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 객체를 검출하는 단계는 상기 객체의 검출 결과에 대응하는 복수의 필터들을 상기 제1 특징 맵에 적용하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 객체를 재 검출하는 단계는 상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 입력 영상 내 상기 객체에 대응하는 후보 영역들을 검출하는 단계; 및 상기 후보 영역들에 기초하여 최종 검출 영역을 결정하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제1 특징 맵을 추출하는 신경망은 제1 레이어; 상기 제1 레이어와 연결되고, 상기 제1 레이어의 출력에 기초하여 미리 정해진 크기를 초과하는 수신 필드에 기반한 컨볼루션을 수행하는 제2 레이어; 및 상기 제1 레이어 및 상기 제2 레이어와 연결된 제3 레이어를 포함하고, 상기 제3 레이어에서, 상기 제1 레이어의 출력과 상기 제2 레이어의 출력의 집합(aggregation)이 수집되는, 컨볼루션 신경망을 포함할 수 있다.
일실시예에 따르면, 상기 제3 특징 맵을 추출하는 단계는 상기 제2 특징 맵에 포함된 복수의 채널들을 분할하는 단계; 상기 분할된 채널들에 기초하여, 요소 단위 연산(element-wise operation)을 수행함으로써, 집합된(aggregated) 제2 특징 맵을 생성하는 단계; 및 상기 검출된 객체의 영역에 기초하여, 상기 집합된 제2 특징 맵으로부터 상기 제3 특징 맵을 추출하는 단계를 포함할 수 있다.
일실시예에 따른 객체 검출 장치는 입력 영상을 수신하고, 상기 입력 영상으로부터 제1 특징 맵을 추출하고, 상기 제1 특징 맵에 기초하여, 상기 입력 영상에 포함된 객체를 검출하고, 상기 입력 영상으로부터, 상기 제1 특징 맵의 해상도보다 높은 해상도를 가지는 제2 특징 맵을 추출하고, 상기 검출된 객체의 영역에 기초하여, 상기 제2 특징 맵으로부터 제3 특징 맵을 추출하고, 상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 객체를 재 검출하는 프로세서를 포함한다.
도 1은 일실시예에 따른 객체 검출 장치를 설명하기 위한 도면이다.
도 2는 일실시예에 따른 객체 검출 장치의 예시도이다.
도 3은 일실시예에 따른 객체 검출 방법을 설명하기 위한 동작 흐름도이다.
도 4는 일실시예에 따른 AggNet block의 처리 동작을 설명하기 위한 도면이다.
도 5는 일실시예에 따른 Channel aggregation의 처리 동작을 설명하기 위한 도면이다.
도 6은 일실시예에 따른 객체 검출 장치의 구성의 예시도이다
도 7은 일실시예에 따른 객체 검출 결과의 예시도이다.
도 8은 일실시예에 따른 다중 객체 검출 모델을 설명하는 도면이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따른 객체 검출 장치를 설명하기 위한 도면이다.
도 1을 참조하면, 일실시예에 따른 객체 검출 장치는 특징 추출기(110), 제1 검출기(120), 샘플러(130), 및 제2 검출기(140)를 포함한다. 객체 검출 장치는 객체를 검출하는 장치로, 예를 들어 하나 또는 그 이상의 소프트웨어 모듈, 하나 또는 그 이상의 하드웨어 모듈, 또는 이들의 다양한 조합으로 구현될 수 있다.
특징 추출기(110)는 입력 영상으로부터 제1 특징 맵(115)을 추출한다. 입력 영상은 검출하고자 하는 객체를 포함하는 영상으로, 예를 들어 자동차, 보행자, 또는 자전거 등 미리 정의된 클래스의 객체(들)을 포함하는 영상일 수 있다. 입력 영상은 카메라에 의하여 획득될 수 있으며, 일 예로 차량의 주행 영상을 촬영하도록 배치된 카메라에 의하여 획득될 수 있다. 제1 특징 맵(115)은 입력 영상으로부터 추출되는 복수의 특징들을 포함할 수 있다. 복수의 특징들 각각은 2차원의 디멘션(예를 들어, 12 x 39)을 가질 수 있고, 제1 특징 맵(115)는 3차원의 디멘션(예를 들어, 12 x 39 x 500)을 가질 수 있다.
제1 검출기(120)는 제1 특징 맵으로부터 객체의 정보를 검출한다. 예를 들어, 제1 검출기는 검출 결과에 대응하는 바운딩 박스의 정보를 출력할 수 있다. 바운딩 박스는 검출하고자 하는 객체를 둘러싸는 다각형으로, 검출 결과는 바운딩 박스의 위치 정보 및 크기 정보를 포함할 수 있다. 예를 들어, 바운딩 박스가 직사각형인 경우, 바운딩 박스의 위치 정보는 직사각형의 한 모서리의 좌표를 포함할 수 있고, 바운딩 박스의 크기 정보는 직사각형의 너비 및 높이를 포함할 수 있다.
특징 추출기(110)는 입력 영상으로부터 제2 특징 맵(111)을 추출한다. 제2 특징 맵은 입력 영상으로부터 추출되는 복수의 특징들을 포함할 수 있다. 복수의 특징들 각각은 제1 특징 맵의 디멘션보다 큰 2차원의 디멘션(예를 들어, 48 x 156)을 가질 수 있고, 제2 특징 맵(111)은 3차원의 디멘션(예를 들어, 48 x 156 x 512)을 가질 수 있다.
특징 추출기는 복수의 레이어들을 포함할 수 있다. 예를 들어, 특징 추출기는 입력 레이어, 하나 또는 그 이상의 히든 레이어 및 출력 레이어를 포함할 수 있다. 특징 추출기는 출력 레이어의 디멘션보다 큰 디멘션의 히든 레이어를 포함할 수 있다. 이 경우, 특징 추출기는 출력 레이어의 디멘션보다 큰 디멘션의 히든 레이어를 이용하여 제2 특징 맵을 출력할 수 있다. 따라서 제2 특징 맵은 제1 특징 맵의 해상도보다 높은 해상도의 정보들을 포함할 수 있다. 히든 레이어는 컨볼루션 레이어를 포함할 수 있다.
샘플러(130)는 제2 특징 맵으로부터 제3 특징 맵(135)을 추출한다. 샘플러는 제1 검출기에 의하여 검출된 객체의 정보(예를 들어, 바운딩 박스)에 기초하여, 제2 특징 맵을 샘플링할 수 있다. 아래에서 후술하겠으나, 일 실시예에 따르면, 제2 특징 맵은 채널 집합(Channel aggregation)을 거친 이후에 샘플링될 수 있다.
샘플러의 동작 및 제2 특징 맵과 관련된 보다 상세한 사항은 도 2 및 도 5를 통하여 후술한다.
제2 검출기는 제1 특징 맵 및 제3 특징 맵으로부터 객체의 정보를 검출한다. 일 실시예에 따르면, 제1 특징 맵과 제3 특징 맵은 검출 과정을 거치기 이전에 연쇄(concatenate)될 수 있다.
제2 검출기는 제1 검출기가 이용하는 제1 특징 맵뿐 아니라, 제1 특징 맵의 해상도보다 높은 해상도의 제2 특징 맵을 더 이용하므로, 제2 검출기에 의하여 검출되는 객체의 신뢰도는 제1 검출기에 의하여 검출되는 객체의 신뢰도보다 높을 수 있다.
검출되는 객체는 복수의 정보들을 포함할 수 있다. 예를 들어, 미리 정의된 클래스의 객체(들) 중 어느 것에 해당하는지에 대한 정보, 객체가 배경 또는 전경에 해당하는지에 대한 정보, 위치 정보, 크기 정보, 또는 이들의 다양한 조합을 포함할 수 있다.
일실시예에 따른 CNN 기반 다중 객체 검출 모델은 저 연산으로 작은 수신 필드(receptive field)의 정보에 대한 손실을 줄임으로써, 가려진 객체 및 작은 객체를 효율적으로 검출할 수 있다. 일실시예에 따른 CNN 기반 다중 객체 검출 모델은 앵커 박스(Anchor box) 등의 블록이나 필터를 다양하게 사전 정의할 필요 없이, 적은 연산량으로 고해상도의 특징 정보를 융합함으로써 다양한 크기의 객체를 검출할 수 있다.
도 2는 일실시예에 따른 객체 검출 장치의 예시도이다.
도 2를 참조하면, 특징 추출기(110)는 CNN(210)과 복수 개의 필터들(220)을 포함할 수 있다. CNN은 컨볼루션 연산을 수행하도록 설계된 컨볼루션 레이어들을 포함할 수 있다. CNN을 구성하는 컨볼루션 레이어는 커널을 이용하여 입력과 연관된 컨볼루션 연산을 수행할 수 있다. 일 실시예에 따르면, 특징 추출기를 구성하는 CNN은 기존의 대표 모델인 ResNet50을 개선한 AggNet50일 수 있다. AggNet50과 관련된 보다 상세한 사항은 도 4를 통하여 후술한다.
특징 추출기를 구성하는 복수 개의 필터들은 500개의 1 x 1 컨볼루션 필터들에 해당할 수 있다. 제1 특징 맵(115)이 포함하는 복수의 특징들은 각각 2차원의 디멘션을 가질 수 있는데, 예를 들어 2차원의 디멘션이 12 x 39에 해당할 경우 500개의 1 x 1 컨볼루션 필터를 적용한 제1 특징 맵은 12 x 39 x 500의 디멘션을 가질 수 있다.
제1 검출기(120)는 복수 개의 필터들(230)로 구성될 수 있다. 필터의 개수는 얻고자 하는 객체의 정보에 따라 달라질 수 있다. 예를 들어, 얻고자 하는 정보가 {car, pedestrian, cyclist, foreground/background, x, y, width, height}일 경우(280), 제1 검출기는 8개의 1 x 1 컨볼루션 필터들로 구성될 수 있다. 이 경우, 12 x 39 x 8의 디멘션을 가지는 출력이 생성될 수 있다(235). 객체의 클래스가 n개인 경우, n+5개의 1 x 1 컨볼루션 필터들을 통하여, 12 x 39 x (n+5)의 디멘션을 가지는 검출 결과가 출력될 수 있다.
제2 특징 맵(111)은 제1 특징 맵의 해상도보다 높은 해상도의 정보들을 포함할 수 있다. 예를 들어, 제2 특징 맵이 포함하는 복수의 특징들은 각각 48 x 156의 디멘션을 가질 수 있다(211).
일 실시예에 따르면, 제2 특징 맵은 샘플링 이전에 채널 집합(Channel aggregation)(212)을 거칠 수 있다. 예를 들어, 48 x 156 x 512의 디멘션을 가지는 제2 특징 맵을 두 채널로 분할하고, 매칭되는 요소 단위로 곱함으로써 48 x 156 x 256의 디멘션을 가지는 새로운 특징 맵을 생성할 수 있다. 채널 집합을 위하여 채널을 분할하고, 요소 단위로 연산하는 방법은 다양하게 변형될 수 있으며, 채널 집합(Channel aggregation)과 관련된 보다 상세한 사항은 도 5를 통하여 후술한다.
샘플러(130, 240)는 제1 검출기에 의하여 검출된 객체의 정보를 바운딩 박스로 하여, 제2 특징 맵을 샘플링함으로써 제3 특징 맵을 추출할 수 있다. 예를 들어, 샘플러는 제1 특징 맵을 이용한 제1 검출기의 검출 결과에 포함된 셀(ceil) 별로 추정된 객체 영역을 상위 레이어인 제2 특징 맵에 매핑할 수 있다. 샘플러는 매핑된 영역을 복수의 그리드들로 분할(예를 들어, 가로와 세로를 각각 3등분하여 9개의 그리드로 분할)하고, 각 그리드마다 미리 정해진 위치(예를 들어, 중간 위치)의 값을 샘플 값으로 선택할 수 있다.
예를 들어, 제1 특징 맵의 디멘션이 12 x 39 x 500이고, 제2 특징 맵의 디멘션이 48 x 156 x 256일 경우, 각 셀(ceil)마다 256*9의 채널 값을 얻을 수 있으며, 12 x 39 x (256 x 9)의 디멘션을 가지는 제3 특징 맵(245)이 추출될 수 있다.
제1 특징 맵과 제3 특징 맵은 검출 과정을 거치기 이전에 연쇄(250)될 수 있다. 예를 들어, 제1 특징 맵이 12 x 39 x 500의 디멘션을 가지고, 제3 특징 맵이 12 x 39 x (256 x 9)의 디멘션을 가지는 경우, 연쇄에 의해 12 x 39 x (500 + 256 x 9)의 디멘션을 가지는 특징 맵(255)이 생성될 수 있다.
제2 검출기(140)는 복수 개의 필터들(260)로 구성될 수 있다. 필터의 개수는 얻고자 하는 객체의 정보에 따라 달라질 수 있다. 예를 들어, 얻고자 하는 정보가 {car, pedestrian, cyclist, foreground/background, x, y, width, height}일 경우(280), 제1 검출기는 8개의 1 x 1 컨볼루션 필터들로 구성될 수 있다. 이 경우, 12 x 39 x 8의 디멘션을 가지는 출력이 생성될 수 있다(235). 객체의 클래스가 n개인 경우, n+5개의 1 x 1 컨볼루션 필터들을 통하여, 12 x 39 x (n+5)의 디멘션을 가지는 검출 결과가 출력될 수 있다.
일 실시예에 따르면, 제2 검출기의 출력에 기초하여 후처리가 수행될 수 있다(150). 제2 검출기에 의하여 복수의 후보 영역들이 출력되는 경우, 복수의 후보 영역들에 기초하여 최종 검출 영역을 결정하는 후처리 동작이 수행될 수 있다. 예를 들어, 12 x 39의 각 셀(ceil)은 바운딩 박스의 정보를 포함할 수 있고, 각 셀에 의하여 지시되는 바운딩 박스들은 서로 중첩될 수 있다. 후처리기는 바운딩 박스가 객체를 포함할 확률에 기초하여 최종 검출 영역을 결정할 수 있다.
예를 들어, 후처리기는 NMS(Non-Maximum Suppression)(270) 기법을 이용하여 최종 검출 영역을 결정할 수 있다. 일 실시예에 따르면, 후처리기는 가장 높은 확률의 바운딩 박스와 일정 비율 이상 영역이 겹치는 바운딩 박스를 억제(suppression)함으로써, 최종 검출 영역을 결정할 수 있다. 최종 검출 영역은 하나 또는 그 이상의 바운딩 박스를 포함할 수 있다.
도 2에 도시된 필터 및 특징의 디멘션 등 스펙은 예시적인 사항에 불과하며, 실시예들을 구현하기 위한 스펙들은 다양하게 변형될 수 있다.
도 3은 일실시예에 따른 객체 검출 방법을 설명하기 위한 동작 흐름도이다.
도 3을 참조하면, 영상 입력 단계(310)에서 입력 영상이 수신된다. 특징 추출기에 인가하는 단계(320)에서 수신된 입력 영상이 특징 추출기로 인가되며, 이는 도 1의 특징 추출기(110)에 의하여 수행될 수 있다. 특징 추출기는 입력 영상으로부터 제1 특징 맵과 제2 특징 맵을 추출할 수 있다.
제1 검출기에 인가하는 단계(325)에서 제1 특징 맵이 제1 검출기로 인가되며, 이는 도 1의 제1 검출기(120)에 의하여 수행될 수 있다. 제1 검출기는 제1 특징 맵으로부터 객체의 정보를 검출할 수 있다.
샘플링하는 단계(330)에서 제2 특징 맵이 샘플러로 인가되며, 이는 도 1의 샘플러(130)에 의하여 수행될 수 있다. 샘플러는 제1 검출기에 의하여 검출된 객체의 정보를 바운딩 박스로 하여, 제2 특징 맵을 샘플링할 수 있다. 샘플러는 제2 특징 맵으로부터 제3 특징 맵을 추출할 수 있다.
제2 검출기에 인가하는 단계(340)에서 제3 특징 맵이 제2 검출기로 인가되며, 이는 도 2의 제2 검출기(140)에 의하여 수행될 수 있다. 제2 검출기는 제3 특징 맵으로부터 객체의 정보를 검출하고, 검출 결과를 출력할 수 있다(350).
도 4는 일실시예에 따른 AggNet 블록의 처리 동작을 설명하기 위한 도면이다.
일 실시예에 따르면, 레이어 단위의 집합을 통하여 수신 필드의 크기가 증가함에 따라 손실되는 정보를 보존하는 기술을 제공할 수 있다. 레이어 단위의 집합은 미리 정해진 크기(예를 들어, 1x1)를 초과하는 수신 필드에 기반한 컨볼루션의 이전 레이어와 이후 레이어 간의 집합을 포함할 수 있다.
예를 들어, 도 4를 참조하면, 일반적인 CNN 모델인 ResNet(410)을 변형한 AggNet(420)을 특징 추출기(110)의 모듈에 사용할 수 있다. AggNet은 ResNet의 3 x 3 컨볼루션 레이어의 이전 레이어와 3 x 3 컨볼루션 레이어의 이후 레이어를 집합(aggregation)하여 생성할 수 있다.
ResNet은 3 x 3 컨볼루션 레이어를 통과하면서 수신 필드(receptive field)의 크기가 증가하므로, 레이어의 개수가 증가할수록 정보의 손실이 발생하여 작은 크기의 객체를 검출하는 것이 어려워질 수 있다. 반면 AggNet은 3 x 3 컨볼루션 레이어를 통과하기 이전의 정보가 손실되지 않기 때문에, 작은 수신 필드(receptive field)에 대해서도 정보가 전달되도록 할 수 있어 정보의 손실을 방지하고 작은 크기의 객체를 검출할 수 있다.
도 5는 일실시예에 따른 채널 집합(Channel aggregation)의 처리 동작을 설명하기 위한 도면이다.
도 5를 참조하면, 채널 집합(Channel aggregation)(212)은 특징 맵을 복수의 채널로 분할하고, 분할된 채널들에 기초하여 요소 단위 연산(element-wise operation)을 수행함으로써, 집합된(aggregated) 특징 맵을 생성하는 일련의 동작이다. 예를 들어, 48 x 156 x 512의 디멘션을 가지는 특징 맵(510)을 두 개의 채널로 분할하고, 매칭되는 요소 단위로 곱함으로써(520), 48 x 156 x 256의 디멘션을 가지는 특징 맵을 생성할 수 있다(530). 실시예에 따라, 채널을 분할하는 방법 및 분할된 채널의 수는 다양하게 변경될 수 있다. 또한, 분할된 채널은 요소 단위의 곱셈을 통하여 집합되는 대신, 요소 단위의 덧셈 등 다른 연산을 이용하여 집합될 수 있다.
제2 특징 맵(111)에 대하여 곧바로 샘플링을 수행하는 대신, 채널 집합(Channel aggregation)을 거친 이후에 샘플링을 수행함으로써 특징이 강화될 수 있으며, 학습 단계에서 역-전파(back-propagation)을 수행할 때 채널 간 기울기가 집합(aggregation)되어 효과적인 학습이 이루어질 수 있다.
도 6은 일실시예에 따른 객체 검출 장치의 구성의 예시도이다.
도 6을 참조하면, 객체 검출 장치(601)는 프로세서(602) 및 메모리(603)를 포함할 수 있다. 프로세서(602)는 도 1 내지 도 5를 통하여 전술한 적어도 하나의 장치들을 포함하거나, 도 1 내지 도 5를 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 메모리(603)는 입력 영상들의 특성들 및 특징 맵들의 특성들 중 적어도 하나를 저장하거나 객체 검출 방법이 구현된 프로그램을 저장할 수 있다. 메모리(603)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
프로세서(602)는 프로그램을 실행하고, 객체 검출 장치(601)를 제어할 수 있다. 프로세서(602)에 의하여 실행되는 프로그램의 코드는 메모리(603)에 저장될 수 있다. 객체 검출 장치(601)는 입출력 장치를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다.
도 7은 일실시예에 따른 객체 검출 결과의 예시도이다.
도 7을 참조하면, 본 발명인 AggNet(420)을 기반으로 한 객체 검출 모델이 기존의 CNN 모델인 VGG16 또는 ResNet50을 기반으로 한 객체 검출 모델에 비하여 작은 객체를 더 잘 검출할 수 있다(710). 또한, AggNet을 기반으로 한 객체 검출 모델이 기존의 CNN 모델에 비하여 가려진 객체를 더 잘 검출할 수 있다(720).
도 8은 일실시예에 따른 다중 객체 검출 모델을 설명하는 도면이다.
다중 객체 검출을 위한 기존 기술들은 많은 연산량으로 인한 전력 소모량과 실시간성 등에 대한 시스템적 성능과 영상의 왜곡, 객체의 가려짐, 객체의 크기/모양 변화 등에 따른 문제를 해결하지 못한다.
본원발명은 기존 객체 검출 모델과 차별적인 구조를 적용함으로써, 전술한 문제를 해소할 수 있다.
첫째로, 기존의 객체 검출 모델은 다양한 객체의 크기/모양 변화에 강인한 성능을 확보하기 위해서 multi-scale template(Anchors)/feature 기법을 적용하였다. 하지만, 이는 많은 연산량 과 함께 객체의 특징 정보에 대한 손실이 있어 영상의 왜곡이나, 모양 변화에 대한 검출 성능 저하가 있을 수 있다. 이에 따라, 본원발명은 적은 연산으로 고해상도의 특징 정보를 추출하여 객체 검출 성능 향상시킬 수 있는 Rezoom Layer를 적용한다.
둘째로, 기존의 CNN 기반 객체 검출 모델은 layer의 깊이가 깊어 질수록 작은 객체의 특징 정보를 손실이 발생하여 작은 객체 검출을 어렵게 만들 수 있다. 이를 해결하기 위해서, 본원발명은 적은 receptive field의 정보에 대한 손실을 줄여 Occlusion/작은 객체를 잘 검출 할 수 있는 Simple Aggregation Network Block을 제안 한다.
CNN 기반 다중 객체 검출 모델
도 8은 제안하는 CNN 기반 다중 객체 검출 모델을 도시한다. CNN layer는 기존의 ResNet50에 Aggregation Network Block을 적용한 모델(AggNet50)로 입력 영상에 대한 CNN feature를 생성한다. Region proposal layer(RPL)에서는 CNN Layer의 마지막 Layer feature를 1x1 Convolution을 통해 Hidden feature를 생성하고, 다시 1x1 Convolution을 통해 cell(grid)별 객체 분류 정보와 영역을 대략적으로 추정한다. 그리고, Region refinement layer에서는 대략적인 추정된 객체 분류 정보와 영역을 기반으로 Rezoom feature을 생성하고 이를 이용하여 정확도 높은 객체 분류 정보와 영역을 추정한다.
객체 검출을 위한 Rezoom Layer
도 8과 같이, Rezoom Layer는 CNN layer(AggNet50)의 마지막 layer에 대해 1x1 Conv을 통해 Region proposal layer의 12x39x500 Hidden feature map을 생성한다. 생성된 Hidden feature map은 8개의 1x1 convolution filter들을 이용해 각 cell마다 예측된 객체 분류 확률(car, pedestrian, cyclist), Objectness(foreground/ background), 객체의 bound box(x, y, width, height)를 추정하는 12x39x8의 Detection output을 생성한다. 그리고, 객체 검출을 위한 고해상도의 feature를 얻기 CNN layer의 상위 feature layer (AggNet_Block2: 156x48x512)를 Channel aggregation 하여 48x156x256 feature맵을 생성 한 후 RPL에서 예측된 ceil별 객체 영역에 대해서 sampling 하여 12x39x(9x256) 의 Rezoomed feature를 생성한다. 여기서, sampling은 ceil별로 각각 추정된 객체 영역을 feature맵에 mapping 한 후 가로/세로 각각 3등분으로 9개의 grid로 분할하고 각 grid마다 중간 위치 값을 sample 값으로 선택하여, 각 ceil마다 9*256 채널 값을 획득 한다.
그리고, RRL에서는 RPL에서 획득한 Hidden feature와 Rezoomed feature를 concatenate하여 12x 39x(9x256+500)의 최종 객체 검출 feature를 추출 한 후 fully convolution을 통해 12x39x8의 각 ceil별 객체 분류/영역 정보를 추정한다. 최종적으로, 객체 분류/영역들은 추정된 분류/영역 정보에 대해 Non-Maximum suppression 과정을 통해 결정 된다.
Aggregate Network Layer
본원발명은 적은 receptive field의 정보에 대한 손실을 줄여 작은 객체를 검출 할 수 있도록 ResNet50의 residual block을 Aggregation Network block(AggNet block) 수정하여 CNN Layer에 적용하였다. 기존의 ResNet 모델에서 layer간 3x3 Convolution 결과로 receptive field가 증가하는데, 우리는 3x3 Convolution 결과를 이전 layer 와 Aggregation 하여 작은 receptive field의 특징 정보를 잘 전달할 수 있는 구조로 수정 하였다.
또한, Rezoomed Feature를 추출하기 위해서 단순 CNN의 상위 layer feature(AggNet_Block2) 를 sampling는 기존의 방법 대신, 상위 CNN layer feature을 channel기준으로 두 구역으로 나누고 두 구역에 매칭되는 channel별 element 단위로 곱한 channel aggregation feature를 구성하고, 이에 대한 sampling을 수행한다.
본원발명은 주행 환경에서 객체 가려짐/작은 객체를 효율적으로 검출할 수 있는 CNN 기반 실시간 객체 검출 모델을 제안한다. 제안한 객체 검출 모델은 기존의 ResNet50의 Residual-block을 Aggregation block으로 대처하고, 기존의 multi-scale anchors/feature 기법을 사용하는 대신에 Rezoom Layer를 고려함으로써 가려짐이나 작은 객체의 검출 성능을 효율적으로 향상시킬 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (18)

  1. 입력 영상을 수신하는 단계;
    상기 입력 영상으로부터 제1 특징 맵을 추출하는 단계;
    상기 제1 특징 맵에 기초하여, 상기 입력 영상에 포함된 객체를 검출하는 단계;
    상기 입력 영상으로부터, 상기 제1 특징 맵의 해상도보다 높은 해상도를 가지는 제2 특징 맵을 추출하는 단계;
    상기 검출된 객체의 영역에 기초하여, 상기 제2 특징 맵으로부터 제3 특징 맵을 추출하는 단계; 및
    상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 객체를 재 검출하는 단계
    를 포함하는, 객체 검출 방법.
  2. 제1항에 있어서,
    상기 제2 특징 맵을 추출하는 단계는
    상기 입력 영상을 CNN에 인가하는 단계; 및
    상기 CNN의 출력 레이어의 디멘션보다 큰 디멘션을 가지는 중간 레이어로부터, 상기 제2 특징 맵을 획득하는 단계
    를 포함하는, 객체 검출 방법.
  3. 제1항에 있어서,
    상기 제3 특징 맵을 추출하는 단계는
    상기 검출된 객체의 영역에 대응하는 바운딩 박스(bounding box) 내의 요소들을 샘플링하는 단계
    를 포함하는, 객체 검출 방법.
  4. 제1항에 있어서,
    상기 객체 영역을 재 검출하는 단계는
    제1 특징 맵과 제3 특징 맵을 연쇄(concatenate)시키는 단계; 및
    상기 객체의 검출 결과에 대응하는 복수의 필터들을 상기 연쇄된 특징 맵 적용하는 단계
    를 포함하는, 객체 검출 방법.
  5. 제1항에 있어서,
    상기 입력 영상으로부터 제1 특징 맵을 추출하는 단계는
    상기 입력 영상을 CNN에 인가하는 단계; 및
    상기 제1 특징 맵에 포함된 복수의 특징들에 대응하는 복수의 필터들을 상기 CNN의 출력에 적용하는 단계
    를 포함하는, 객체 검출 방법.
  6. 제1항에 있어서,
    상기 객체를 검출하는 단계는
    상기 객체의 검출 결과에 대응하는 복수의 필터들을 상기 제1 특징 맵에 적용하는 단계
    를 포함하는, 객체 검출 방법.
  7. 제1항에 있어서,
    상기 객체를 재 검출하는 단계는
    상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 입력 영상 내 상기 객체에 대응하는 후보 영역들을 검출하는 단계; 및
    상기 후보 영역들에 기초하여, 최종 검출 영역을 결정하는 단계
    를 포함하는, 객체 검출 방법.
  8. 제1항에 있어서,
    상기 제1 특징 맵을 추출하는 신경망은
    제1 레이어;
    상기 제1 레이어와 연결되고, 상기 제1 레이어의 출력에 기초하여 미리 정해진 크기를 초과하는 수신 필드에 기반한 컨볼루션을 수행하는 제2 레이어; 및
    상기 제1 레이어 및 상기 제2 레이어와 연결된 제3 레이어
    를 포함하고,
    상기 제3 레이어에서, 상기 제1 레이어의 출력과 상기 제2 레이어의 출력의 집합(aggregation)이 수집되는, 객체 검출 방법.
  9. 제1항에 있어서,
    상기 제3 특징 맵을 추출하는 단계는
    상기 제2 특징 맵에 포함된 복수의 채널들을 분할하는 단계;
    상기 분할된 채널들에 기초하여, 요소 단위 연산(element-wise operation)을 수행함으로써, 집합된(aggregated) 제2 특징 맵을 생성하는 단계; 및
    상기 검출된 객체의 영역에 기초하여, 상기 집합된 제2 특징 맵으로부터 상기 제3 특징 맵을 추출하는 단계
    를 포함하는, 객체 검출 방법.
  10. 하드웨어와 결합되어 제1항 내지 제9항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  11. 입력 영상을 수신하고,
    상기 입력 영상으로부터 제1 특징 맵을 추출하고,
    상기 제1 특징 맵에 기초하여, 상기 입력 영상에 포함된 객체를 검출하고,
    상기 입력 영상으로부터, 상기 제1 특징 맵의 해상도보다 높은 해상도를 가지는 제2 특징 맵을 추출하고,
    상기 검출된 객체의 영역에 기초하여, 상기 제2 특징 맵으로부터 제3 특징 맵을 추출하고,
    상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 객체를 재 검출하는 프로세서
    를 포함하는, 객체 검출 장치.
  12. 제11항에 있어서,
    상기 제2 특징 맵을 추출하는 프로세서는
    상기 입력 영상을 CNN에 인가하고,
    상기 CNN의 출력 레이어의 디멘션보다 큰 디멘션을 가지는 중간 레이어로부터, 상기 제2 특징 맵을 획득하는 프로세서
    를 포함하는, 객체 검출 장치.
  13. 제11항에 있어서,
    상기 제3 특징 맵을 추출하는 프로세서는
    상기 검출된 객체의 영역에 대응하는 바운딩 박스(bounding box) 내의 요소들을 샘플링하는 프로세서
    를 포함하는, 객체 검출 장치.
  14. 제11항에 있어서,
    상기 객체 영역을 재 검출하는 프로세서는
    제1 특징 맵과 제3 특징 맵을 연쇄(concatenate)시키고,
    상기 객체의 검출 결과에 대응하는 복수의 필터들을 상기 연쇄된 특징 맵 적용하는 프로세서
    를 포함하는, 객체 검출 장치.
  15. 제11항에 있어서,
    상기 입력 영상으로부터 제1 특징 맵을 추출하는 프로세서는
    상기 입력 영상을 CNN에 인가하고,
    상기 제1 특징 맵에 포함된 복수의 특징들에 대응하는 복수의 필터들을 상기 CNN의 출력에 적용하는 프로세서
    를 포함하는, 객체 검출 장치.
  16. 제11항에 있어서,
    상기 객체를 검출하는 프로세서는
    상기 객체의 검출 결과에 대응하는 복수의 필터들을 상기 제1 특징 맵에 적용하는 프로세서
    를 포함하는, 객체 검출 장치.
  17. 제11항에 있어서,
    상기 객체를 재 검출하는 프로세서는
    상기 제1 특징 맵 및 상기 제3 특징 맵에 기초하여, 상기 입력 영상 내 상기 객체에 대응하는 후보 영역들을 검출하고,
    상기 후보 영역들에 기초하여 최종 검출 영역을 결정하는 프로세서
    를 포함하는, 객체 검출 장치.
  18. 제11항에 있어서,
    상기 제3 특징 맵을 추출하는 프로세서는
    상기 제2 특징 맵에 포함된 복수의 채널들을 분할하고,
    상기 분할된 채널들에 기초하여, 요소 단위 연산(element-wise operation)을 수행함으로써, 집합된(aggregated) 제2 특징 맵을 생성하고,
    상기 검출된 객체의 영역에 기초하여, 상기 집합된 제2 특징 맵으로부터 상기 제3 특징 맵을 추출하는 프로세서
    를 포함하는, 객체 검출 장치.
KR1020180118856A 2018-10-05 2018-10-05 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치 KR102108854B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180118856A KR102108854B1 (ko) 2018-10-05 2018-10-05 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치
PCT/KR2019/012699 WO2020071701A1 (ko) 2018-10-05 2019-09-30 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치
US17/282,468 US11875553B2 (en) 2018-10-05 2019-09-30 Method and device for detecting object in real time by means of deep learning network model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180118856A KR102108854B1 (ko) 2018-10-05 2018-10-05 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200044171A KR20200044171A (ko) 2020-04-29
KR102108854B1 true KR102108854B1 (ko) 2020-05-12

Family

ID=70055937

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180118856A KR102108854B1 (ko) 2018-10-05 2018-10-05 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치

Country Status (3)

Country Link
US (1) US11875553B2 (ko)
KR (1) KR102108854B1 (ko)
WO (1) WO2020071701A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220079479A (ko) 2020-12-04 2022-06-13 주식회사 두원전자통신 심층 신경망 알고리즘 기반 객체 자동학습, 검증 및 배포에 의한 객체분석 정확도 향상을 위한 지능형 영상 분석 시스템
KR20230066936A (ko) 2021-11-08 2023-05-16 연세대학교 산학협력단 고해상도 영상의 다양한 객체를 검출하는 방법 및 장치

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102108854B1 (ko) * 2018-10-05 2020-05-12 재단법인대구경북과학기술원 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치
CN109801270B (zh) * 2018-12-29 2021-07-16 北京市商汤科技开发有限公司 锚点确定方法及装置、电子设备和存储介质
CN111582062B (zh) * 2020-04-21 2022-10-14 电子科技大学 一种基于YOLOv3的目标跟踪中的重检测方法
KR102416698B1 (ko) * 2020-06-03 2022-07-05 고려대학교 산학협력단 딥러닝 알고리즘 기반의 초음파 영상에서의 말초신경 자동 인식 및 신경 지표 측정 방법 및 장치
CN112070730A (zh) * 2020-08-27 2020-12-11 宁波市电力设计院有限公司 基于输电线路巡检图像的防震锤脱落检测方法
KR102270808B1 (ko) * 2020-09-15 2021-06-29 국민대학교산학협력단 무선 인공지능을 이용한 보이는 네트워크 제공 장치 및 방법
KR20220052620A (ko) 2020-10-21 2022-04-28 삼성전자주식회사 객체 추적 방법 및 이를 수행하는 장치
KR102512151B1 (ko) * 2020-11-20 2023-03-20 재단법인대구경북과학기술원 객체 검출 방법 및 장치
KR20220085082A (ko) 2020-12-14 2022-06-22 삼성디스플레이 주식회사 잔상 검출 장치 및 이를 포함하는 표시 장치
WO2022211409A1 (ko) * 2021-03-31 2022-10-06 현대자동차주식회사 특징맵 축소를 이용하는 머신 비전 데이터 코딩 장치 및 방법
KR102416066B1 (ko) * 2021-05-13 2022-07-06 유니셈 (주) 영상 매칭 시스템 및 방법
KR102590387B1 (ko) * 2021-12-28 2023-10-17 고려대학교 산학협력단 인공지능 기반의 근육 초음파를 이용한 수근관 증후군 진단 시스템 및 방법

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102120864B1 (ko) * 2013-11-06 2020-06-10 삼성전자주식회사 영상 처리 방법 및 장치
US9251431B2 (en) * 2014-05-30 2016-02-02 Apple Inc. Object-of-interest detection and recognition with split, full-resolution image processing pipeline
US10360494B2 (en) * 2016-11-30 2019-07-23 Altumview Systems Inc. Convolutional neural network (CNN) system based on resolution-limited small-scale CNN modules
CN108171103A (zh) * 2016-12-07 2018-06-15 北京三星通信技术研究有限公司 目标检测方法及装置
US11188794B2 (en) * 2017-08-10 2021-11-30 Intel Corporation Convolutional neural network framework using reverse connections and objectness priors for object detection
US11074711B1 (en) * 2018-06-15 2021-07-27 Bertec Corporation System for estimating a pose of one or more persons in a scene
KR102108854B1 (ko) * 2018-10-05 2020-05-12 재단법인대구경북과학기술원 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220079479A (ko) 2020-12-04 2022-06-13 주식회사 두원전자통신 심층 신경망 알고리즘 기반 객체 자동학습, 검증 및 배포에 의한 객체분석 정확도 향상을 위한 지능형 영상 분석 시스템
KR20230066936A (ko) 2021-11-08 2023-05-16 연세대학교 산학협력단 고해상도 영상의 다양한 객체를 검출하는 방법 및 장치

Also Published As

Publication number Publication date
WO2020071701A1 (ko) 2020-04-09
US20210383165A1 (en) 2021-12-09
KR20200044171A (ko) 2020-04-29
US11875553B2 (en) 2024-01-16

Similar Documents

Publication Publication Date Title
KR102108854B1 (ko) 딥러닝 네트워크 모델에 의한 실시간 객체 검출 방법 및 장치
CN109754064B (zh) 执行解卷积的神经网络的方法和装置
US10360465B2 (en) Liveness testing methods and apparatuses and image processing methods and apparatuses
TWI766201B (zh) 活體檢測方法、裝置以及儲存介質
US11386637B2 (en) Method and apparatus for detecting object
WO2017015390A1 (en) Deep multi-task learning framework for face detection, landmark localization, pose estimation, and gender recognition
US11227149B2 (en) Method and apparatus with liveness detection and object recognition
KR102476016B1 (ko) 안구 위치 정보 확정 방법 및 장치
KR102257897B1 (ko) 라이브니스 검사 방법과 장치,및 영상 처리 방법과 장치
US11232284B2 (en) Techniques for robust anti-spoofing in biometrics using polarization cues for NIR and visible wavelength band
CN114238904B (zh) 身份识别方法、双通道超分模型的训练方法及装置
JP2023507248A (ja) 物体検出および認識のためのシステムおよび方法
KR20200119384A (ko) 차량 번호판을 실시간으로 인식하는 장치 및 방법
KR102138747B1 (ko) 가로 글자와 세로 글자를 동시에 처리하기 위한 방법 및 시스템
KR20210108082A (ko) 위상 차를 이용하는 라이브니스 검출 방법 및 장치
WO2018058573A1 (zh) 对象检测方法、对象检测装置以及电子设备
KR101931271B1 (ko) 싱글 포워드 패스를 이용한 얼굴 인식 방법 및 이를 위한 장치
Said et al. Efficient and high‐performance pedestrian detector implementation for intelligent vehicles
US20220122341A1 (en) Target detection method and apparatus, electronic device, and computer storage medium
WO2021098346A1 (zh) 人体朝向检测方法、装置、电子设备和计算机存储介质
CN109961083B (zh) 用于将卷积神经网络应用于图像的方法和图像处理实体
KR102400316B1 (ko) 컨텍스트 정보 추출 방법 및 장치
CN115861675A (zh) 对象分类方法和设备
KR20220155882A (ko) 뉴럴 네트워크를 이용하는 데이터 처리 방법 및 장치
KR102547998B1 (ko) 동작 인식 방법 및 장치

Legal Events

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