KR20220027202A - 객체 검출 방법 및 장치, 전자 기기 및 저장매체 - Google Patents

객체 검출 방법 및 장치, 전자 기기 및 저장매체 Download PDF

Info

Publication number
KR20220027202A
KR20220027202A KR1020227003199A KR20227003199A KR20220027202A KR 20220027202 A KR20220027202 A KR 20220027202A KR 1020227003199 A KR1020227003199 A KR 1020227003199A KR 20227003199 A KR20227003199 A KR 20227003199A KR 20220027202 A KR20220027202 A KR 20220027202A
Authority
KR
South Korea
Prior art keywords
point cloud
cloud data
frame
detection
box
Prior art date
Application number
KR1020227003199A
Other languages
English (en)
Inventor
후준 바오
시아오웨이 조우
지아밍 순
이밍 시에
시유 장
Original Assignee
저지앙 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 저지앙 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드 filed Critical 저지앙 센스타임 테크놀로지 디벨롭먼트 컴퍼니 리미티드
Publication of KR20220027202A publication Critical patent/KR20220027202A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • 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
    • G06N3/0454
    • 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
    • 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
    • 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
    • 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
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Abstract

본 발명은 객체 검출 방법 및 장치, 전자 기기 및 저장매체에 관한 것이며, 상기 방법은, 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계 - t는 1보다 큰 정수임 - ; 상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계 - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 를 포함하며, 상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것이다. 이와 같이, 복수 프레임의 포인트 클라우드 데이터를 통해 검출 박스를 예측하여, 객체 검출의 정확도를 향상시킬 수 있다.

Description

객체 검출 방법 및 장치, 전자 기기 및 저장매체
[관련 출원의 상호 참조]
본 발명은 출원번호가 202010738105.2이고 출원일자가 2020년 07월 28일인 중국 특허 출원을 기반으로 제출하며, 해당 중국 특허 출원의 우선권을 주장하며, 해당 중국 특허 출원의 전부 내용을 본 발명에 도입하여 참조로 한다.
본 발명은 컴퓨터 기술분야에 관한 것으로서, 특히 객체 검출 방법 및 장치, 전자 기기 및 저장매체에 관한 것이다.
객체 검출은 컴퓨터 비전에서 매우 중요한 작업으로, 센서의 입력 데이터를 통해, 시야 범위에서 객체(예를 들어, 사람 또는 물체)의 포즈, 스케일 등 정보를 추정할 수 있다. 관련 기술에서, 객체 검출 방법은 일반적으로 프레임 각각의 입력을 단독으로 처리하므로, 검출 정확도가 차하다.
본 발명은 객체 검출 기술적 방안을 제출한다.
본 발명의 일 측면에 따르면, 객체 검출 방법을 제공하며, 상기 방법은 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계 - t는 1보다 큰 정수임 - ; 상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계 - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 를 포함하며, 상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것이다. 이와 같이, 복수 프레임의 포인트 클라우드 데이터를 통해 검출 박스를 예측하여, 객체 검출의 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프에 따라, 상기 제t 프레임의 포인트 클라우드 데이터를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분하는 단계; 상기 제1 영역 및 상기 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계를 포함한다. 이와 같이, 객체 검출에 의해 처리되는 포인트 클라우드 데이터의 데이터 량을 감소할 수 있으며, 검출 속도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 방법은 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 획득하는 단계; 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 단계를 더 포함한다. 이와 같이, 제1 검출 결과를 더 수정하여, 제1 검출 결과의 정확도를 더 향상시킬 수 있다.
가능한 구현방식에서, 상기 방법은 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하는 단계를 더 포함한다. 이와 같이, 그전의 복수 프레임의 포인트 클라우드 데이터를 기반으로 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 예측하여, 예측의 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 방법은 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t-1 프레임의 포인트 클라우드 데이터에 따라, 상기 제t-1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하는 단계를 더 포함한다. 이와 같이, 그전의 복수 프레임의 포인트 클라우드 데이터를 기반으로 예측 확률 그래프를 업데이트하여, 객체가 나타나는 확률을 더 예측하여 최종적으로 얻어진 예측 확률 그래프의 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 제1 영역 및 상기 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는, 상기 제1 영역 및 상기 제3 영역의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제1 포인트 클라우드 특징을 얻는 단계; 상기 제1 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제2 후보 박스를 결정하는 단계; 각 제2 후보 박스의 신뢰도에 따라, 상기 제2 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하는 단계를 포함한다. 이와 같이, 샘플링된 포인트 클라우드 데이터를 특징 추출 네트워크에 입력하여 처리하여 제1 포인트 클라우드 특징을 얻으므로, 검출 속도를 더 향상시킬 수 있다.
가능한 구현방식에서, 상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계는, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 예측 후보 박스를 각각 확장하여, 각 객체의 제3 후보 박스를 결정하는 단계; 상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하는 단계; 상기 제1 후보 박스 및 상기 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터, 및 상기 제3 후보 박스 및 상기 제3 후보 박스가 위치하는 영역에 대응하는 제2 영역 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체에 대해 각각 후보 박스 융합을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 얻는 단계를 포함한다. 이와 같이, 제1 후보 박스에 매칭하는 확률을 향상시켜 검출 결과의 안정성을 향상시킬 수 있다.
가능한 구현방식에서, 상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하는 단계는, 각 제3 후보 박스와 각 제1 후보 박스 간의 IoU (Intersection over Union)를 각각 결정하는 단계; 제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스를 제1 후보 박스에 매칭되는 제3 후보 박스로 결정하는 단계; 제1 후보 박스에 매칭되는 제3 후보 박스에 대응하는 객체를 상기 제1 후보 박스에 대응하는 객체로 결정하는 단계를 포함한다. 이와 같이, IoU가 비교적 큰 후보 박스를 매칭되는 후보 박스로 결정하여, 예측 후보 박스의 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 각 제2 검출 결과는 객체의 제2 검출 박스를 포함하고, 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 단계는, 제1 객체의 검출 박스 집합을 결정하는 단계 - 상기 제1 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체이고, 상기 제1 객체의 검출 박스 집합은 상기 제1 객체가 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스, 및 상기 제1 객체가 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에서의 제1 검출 박스를 포함함 - ; 상기 제1 객체의 검출 박스 집합 중 어느 한 검출 박스에 대해, 상기 검출 박스 집합 중에서 상기 검출 박스와의 오차가 오차 임계치보다 작거나 같은 검출 박스를 상기 검출 박스의 내점 박스로 결정하는 단계; 상기 제1 객체의 검출 박스 집합 중에서 내점 박스 수가 제일 많은 제3 검출 박스를 결정하는 단계; 상기 제3 검출 박스 및 상기 제3 검출 박스의 모든 내점 박스를 융합하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 제1 객체의 제2 검출 박스를 결정하는 단계를 포함한다. 이와 같이, 더 풍부한 객체 정보를 검출할 수 있다.
가능한 구현방식에서, 상기 방법은 상기 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과, 및 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하는 단계를 더 포함한다. 이와 같이, 이전 프레임의 포인트 클라우드 데이터의 검출 결과를 통해, 다음 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태에 대한 예측을 구현할 수 있으며, 따라서 다음 프레임의 포인트 클라우드 데이터 중 객체에 대한 검출을 구현할 수 있다.
가능한 구현방식에서, 상기 방법은 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t 프레임의 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하는 단계를 더 포함한다. 이와 같이, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 얻어, 후속 처리 시 제t+1 프레임의 포인트 클라우드 데이터를 복수 개의 영역으로 구분하여, 객체 검출의 속도를 향상한다.
가능한 구현방식에서, 상기 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는, 상기 제t 프레임의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제2 포인트 클라우드 특징을 얻는 단계; 상기 제2 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제4 후보 박스를 결정하는 단계; 각 제4 후보 박스의 신뢰도에 따라, 상기 제4 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하는 단계를 포함한다. 이와 같이, 제t 프레임의 포인트 클라우드 데이터에 대해 영역 구분을 하지 않고 제t 프레임의 포인트 클라우드 데이터에 대한 객체 검출을 구현할 수 있다.
가능한 구현방식에서, 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 카테고리를 더 포함하고, 상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계는, 제2 객체의 제1 검출 박스가 위치하는 영역에 대응하는 제3 영역 포인트 클라우드 데이터에 따라, 상기 제2 객체를 분류하여 상기 제2 객체의 카테고리를 결정하는 단계 - 상기 제2 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체임 - 를 포함한다. 이와 같이, 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체에 대해, 해당 제2 객체의 제1 검출 박스를 통해, 제t 프레임의 포인트 클라우드 데이터 중에서 제1 검출 박스가 위치하는 영역에 대응하는 제3 영역 포인트 클라우드 데이터를 분할하는 것을 구현할 수 있으며, 이에 따라 높은 정확도로 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체에 대한 검출을 구현할 수 있다.
가능한 구현방식에서, 상기 객체 장면은 실내 장면을 포함하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체는 물체를 포함하며, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스는 3 차원 영역 박스를 포함한다.
본 발명의 일 측면에 따르면, 객체 검출 장치를 제공하며, 상기 장치는,
객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하도록 구성되는 제1 검출 모듈 - t는 1보다 큰 정수임 - ;
상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하도록 구성되는 제2 검출 모듈 - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 을 포함하며,
상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것이다.
가능한 구현방식에서, 상기 제1 검출 모듈은, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프에 따라, 상기 제t 프레임의 포인트 클라우드 데이터를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분하도록 구성되는 영역 구분 서브모듈; 상기 제1 영역 및 상기 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하도록 구성되는 제1 검출 서브모듈을 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 획득하고, 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 수정 모듈을 더 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하도록 구성되는 제1 운동 예측 모듈을 더 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t-1 프레임의 포인트 클라우드 데이터에 따라, 상기 제t-1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하도록 구성되는 제1 확률 그래프 업데이트 모듈을 더 포함한다.
가능한 구현방식에서, 상기 제1 검출 서브모듈은, 상기 제1 영역 및 상기 제3 영역의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제1 포인트 클라우드 특징을 얻고; 상기 제1 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제2 후보 박스를 결정하며; 각 제2 후보 박스의 신뢰도에 따라, 상기 제2 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하도록 구성된다.
가능한 구현방식에서, 상기 제2 검출 모듈은, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 예측 후보 박스를 각각 확장하여, 각 객체의 제3 후보 박스를 결정하도록 구성되는 후보 박스 확장 서브모듈; 상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하도록 구성되는 후보 박스 매칭 서브모듈; 상기 제1 후보 박스 및 상기 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터, 및 상기 제3 후보 박스 및 상기 제3 후보 박스가 위치하는 영역에 대응하는 제2 영역 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체에 대해 각각 후보 박스 융합을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 얻도록 구성되는 후보 박스 융합 서브모듈을 포함한다.
가능한 구현방식에서, 상기 후보 박스 매칭 서브모듈은, 각 제3 후보 박스와 각 제1 후보 박스 간의 IoU (Intersection over Union)를 각각 결정하고; 제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스를 제1 후보 박스에 매칭되는 제3 후보 박스로 결정하며; 제1 후보 박스에 매칭되는 제3 후보 박스에 대응하는 객체를 상기 제1 후보 박스에 대응하는 객체로 결정하도록 구성된다.
가능한 구현방식에서, 각 제2 검출 결과는 객체의 제2 검출 박스를 포함하고, 상기 수정 모듈은, 제1 객체의 검출 박스 집합을 결정하도록 구성되는 집합 결정 서브모듈 - 상기 제1 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체이고, 상기 제1 객체의 검출 박스 집합은 상기 제1 객체가 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스, 및 상기 제1 객체가 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에서의 제1 검출 박스를 포함함 - ; 상기 제1 객체의 검출 박스 집합 중 어느 한 검출 박스에 대해, 상기 검출 박스 집합 중에서 상기 검출 박스와의 오차가 오차 임계치보다 작거나 같은 검출 박스를 상기 검출 박스의 내점 박스로 결정하도록 구성되는 내점 박스 결정 서브모듈; 상기 제1 객체의 검출 박스 집합 중에서 내점 박스 수가 제일 많은 제3 검출 박스를 결정하도록 구성되는 검출 박스 선택 서브모듈; 상기 제3 검출 박스 및 상기 제3 검출 박스의 모든 내점 박스를 융합하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 제1 객체의 제2 검출 박스를 결정하도록 구성되는 내점 박스 융합 서브모듈을 포함한다.
가능한 구현방식에서, 상기 장치는 상기 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과, 및 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하도록 구성되는 제2 운동 예측 모듈을 더 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t 프레임의 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하도록 구성되는 제2 확률 그래프 업데이트 모듈을 더 포함한다.
가능한 구현방식에서, 상기 제1 검출 모듈은, 상기 제t 프레임의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제2 포인트 클라우드 특징을 얻도록 구성되는 특징 추출 서브모듈; 상기 제2 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제4 후보 박스를 결정하도록 구성되는 제2 검출 서브모듈; 각 제4 후보 박스의 신뢰도에 따라, 상기 제4 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하도록 구성되는 선택 서브모듈을 포함한다.
가능한 구현방식에서, 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 카테고리를 더 포함하고, 상기 제2 검출 모듈은, 제2 객체의 제1 검출 박스가 위치하는 영역에 대응하는 제3 영역 포인트 클라우드 데이터에 따라, 상기 제2 객체를 분류하여 상기 제2 객체의 카테고리를 결정하도록 구성되는 분류 서브모듈 - 상기 제2 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체임 - 을 포함한다.
가능한 구현방식에서, 상기 객체 장면은 실내 장면을 포함하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체는 물체를 포함하며, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스는 3 차원 영역 박스를 포함한다.
본 발명의 일 측면에 따르면, 전자 기기를 제공하며, 상기 전자 기기는 프로세서; 프로세서에 의해 실행 가능한 명령을 저장하도록 구성되는 메모리를 포함하며, 상기 프로세서는 상기 메모리에 저장된 명령을 호출하여 상술한 방법을 수행하도록 구성된다.
본 발명의 일 측면에 따르면, 프로세서에 의해 실행되면 상술한 방법을 구현하는 컴퓨터 프로그램 명령이 저장된 컴퓨터 판독가능한 저장매체를 제공한다.
본 발명의 실시예에 따르면, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 검출하고, 과거 검출 결과로 예측하여 얻어진 예측 후보 박스를 통해 제1 후보 박스를 수정하여, 제t 프레임의 포인트 클라우드 데이터의 검출 결과를 얻을 수 있으며, 이에 따라 객체 검출의 정확도를 향상시킬 수 있다.
이해할 것은, 이상의 일반적인 설명과 후술되는 세부 설명은 단지 예시적이고 해석적인 것이지 본 발명을 한정하는 것은 아니다. 본 발명의 다른 특징 및 측면은 이하 첨부 도면을 참조한 예시적인 실시예에 대한 상세한 설명에 따르면 명확해질 것이다.
여기서 첨부 도면은 명세서에 포함되어 본 명세서의 일부를 구성하며, 이러한 첨부 도면은 본 발명에 부합하는 실시예를 도시하며, 명세서와 함께 본 발명의 기술적 방안을 설명한다.
도 1A는 본 발명의 실시예에 따른 객체 검출 방법을 도시한 흐름도이다.
도 1B는 본 발명의 실시예에 따른 객체 검출 방법의 네트워크 아키텍처를 도시한 개략도이다.
도 2는 본 발명의 실시예에 따른 객체 검출 방법의 처리 과정을 도시한 개략도이다.
도 3a는 객체 장면의 이미지를 도시한 개략도이다.
도 3b는 객체의 검출 결과를 도시한 개략도이다.
도 4는 본 발명의 실시예에 따른 객체 검출 장치를 도시한 블록도이다.
도 5는 본 발명의 실시예에 따른 전자 기기를 도시한 블록도이다.
도 6은 본 발명의 실시예에 따른 전자 기기를 도시한 블록도이다.
이하 첨부도면을 참조하여 본 발명의 각종 예시적인 실시예, 특징 및 측면을 상세히 설명한다. 첨부도면에서 동일한 도면 부호는 기능이 동일하거나 유사한 소자를 나타낸다. 첨부도면에 실시예의 각종 측면을 도시하였으나 특별히 지적하지 않은 한 꼭 비례에 따라 첨부도면을 그린 것은 아니다.
여기서 전문 사용된 단어 '예시적인'은 '예, 실시예 또는 설명적으로 사용됨'을 의미한다. 여기서 '예시적'으로 설명된 어느 실시예도 꼭 다른 실시예보다 우수하거나 나은 것으로 해석되는 것은 아니다.
본 명세서에서 용어 ‘및/또는’은 관련된 대상의 관련 관계를 설명할 뿐이며, 3 가지 관계가 존재할 수 있음을 나타낸다. 예를 들어, A 및/또는 B는 A가 단독으로 존재, A와 B가 동시에 존재, B가 단독으로 존재하는 이 3 가지 경우를 나타낼 수 있다. 또한, 본 명세서에서 용어 '적어도 하나'는 복수 중 어느 하나 또는 복수 중 적어도 두 개의 임의의 조합을 나타낸다. 예를 들어, A, B, C 중 적어도 하나를 포함한다는 것은 A, B, C로 구성된 집합에서 선택된 임의의 하나 또는 복수 개의 요소를 포함하는 것을 나타낼 수 있다.
또한, 본 발명을 더 잘 설명하기 위하여, 아래의 구체적인 실시방식에서 많은 구체적인 세부를 제공하였다. 통상의 기술자는 일부 구체적인 세부가 없어도 본 발명을 실시할 수 있음을 이해해야 한다. 일부 실예에서, 통상의 기술자에게 잘 알려진 방법, 수단, 소자 및 회로는 본 발명의 요지를 돌출시키기 위하여 상세히 설명하지 않는다.
도 1A는 본 발명의 실시예에 따른 객체 검출 방법을 도시한 흐름도이며, 도 1A에 도시된 바와 같이, 상기 객체 검출 방법은 아래의 단계를 포함한다.
S11 단계에서, 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정한다.
본 발명의 실시예에서, t는 1보다 큰 정수이다.
S12 단계에서, 상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하며, 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함한다.
상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것이다.
가능한 구현방식에서, 상기 객체 검출 방법은 단말 기기 또는 서버 등 전자 기기에 의해 수행될 수 있다. 단말 기기는 사용자 기기(User Equipment, UE), 이동 기기, 사용자 단말기, 단말기, 휴대폰, 무선 전화, 개인 디지털 비서(Personal Digital Assistant, PDA), 핸드헬드형 기기, 컴퓨팅 기기, 차량용 기기, 웨어러블 기기 등일 수 있다. 상기 방법은 프로세서를 통해 메모리에 저장된 컴퓨터 판독가능한 명령을 호출하는 방식으로 구현될 수 있다. 또는, 상기 방법은 서버를 통해 수행될 수 있다.
예를 들어, 객체 장면은 쇼핑몰, 병원, 전시관 등 실내 장면을 포함할 수도 있고, 교통 중심, 도시 가도 등 실외 장면을 포함할 수도 있다. 객체 장면에는 물체, 표지물, 건물, 행인, 차량 등과 같은 다양한 유형의 객체가 포함될 수 있다. 본 발명은 객체 장면의 유형 및 객체의 카테고리에 대해 제한하지 않는다.
가능한 구현방식에서, 객체 장면 중 객체를 검출할 때, 센싱 기기를 통해 객체 장면의 센싱 데이터를 수집하여 센싱 데이터 중 객체를 분석할 수 있다. 3 차원 객체 검출을 수행하는 경우, 센싱 기기는 예를 들어 라이다, 적, 녹, 청 깊이(Red Green Blue-Depth, RGB-D) 수집 기기 등을 포함할 수 있고, 수집된 센싱 데이터는 포인트 클라우드 데이터, RGB-B 이미지 데이터 등을 포함할 수 있다. 본 발명은 센싱 기기의 유형 및 수집된 센싱 데이터의 구체적인 유형에 대해 제한하지 않는다.
가능한 구현방식에서, 객체 장면의 복수 프레임의 센싱 데이터를 연속적으로 수집하고, 전자 기기를 통해 각 프레임의 센싱 데이터에 대해 객체 검출을 차례로 수행할 수 있다. 센싱 데이터가 포인트 클라우드 데이터이면, 직접 처리할 수 있다. 센싱 데이터가 RGB-G 이미지 데이터이면, RGB-D 이미지 데이터를 역투영 변환하여 포인트 클라우드 데이터를 얻은 후 처리할 수 있다.
가능한 구현방식에서, 복수 프레임의 포인트 클라우드 데이터 중 제1 프레임에 대해, S11 단계에서 제1 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여 제1 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 얻고, S12 단계에서 제1 후보 박스를 직접 융합하여 제1 프레임의 포인트 클라우드 데이터의 객체의 제1 검출 박스를 얻을 수 있다.
가능한 구현방식에서, 복수 프레임의 포인트 클라우드 데이터 중 제t 프레임(t는 1보다 큰 정수임)에 대해, S11 단계에서 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 얻을 수 있다. 제1 후보 박스의 정보는 제1 후보 박스의 중심점 3 차원 좌표(x0, y0, z0), 길이, 폭, 높이 및 회전 각도 등 정보를 포함할 수 있다.
가능한 구현방식에서, 객체 검출 과정은 사전 훈련된 객체 검출 네트워크를 통해 구현될 수 있으며, 해당 객체 검출 네트워크는 예를 들어 컨볼루션 신경망(Convolutional Neural Networks, CNN) 및 지역 제안 네트워크(Region Proposal Network, RPN)를 포함할 수 있으며, 본 발명은 객체 검출 네트워크의 구체적인 네트워크 구성에 대해 제한하지 않는다.
가능한 구현방식에서, S11 단계 및 S12 단계 전에, 제t-1 프레임의 포인트 클라우드 데이터의 검출 결과를 얻은 후, 제t 프레임의 포인트 클라우드 데이터 전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라, 이전 t-1 개 프레임의 포인트 클라우드 데이터에서 이미 검출된 객체에 대해, 제t 프레임의 포인트 클라우드 데이터 중 위치를 예측하여, 이들 객체가 제t 프레임의 포인트 클라우드 데이터에서의 예측 후보 박스를 얻을 수 있다.
가능한 구현방식에서, S12 단계에서, 제t 프레임의 포인트 클라우드 데이터의 제1 후보 박스 및 예측 후보 박스에 따라, 각 제1 후보 박스에 대응하는 객체를 결정할 수 있다. 예를 들어, 각 제1 후보 박스와 각 예측 후보 박스의 IoU에 따라, 제1 후보 박스와 예측 후보 박스를 매칭한다. 매칭되는 예측 후보 박스가 존재하는 제1 후보 박스에 대해, 매칭되는 예측 후보 박스에 대응하는 객체를 해당 제1 후보 박스에 대응하는 객체로 결정한다. 매칭되는 예측 후보 박스가 존재하지 않는 제1 후보 박스에 대해, 해당 제1 후보 박스가 신규 객체에 대응하는 것으로 결정한다.
가능한 구현방식에서, 임의의 객체에 대해, 해당 객체의 제1 후보 박스 및 제1 후보 박스에 대응하는 영역 포인트 클라우드 데이터에 따라, 해당 객체의 예측 후보 박스 및 예측 후보 박스에 대응하는 영역 포인트 클라우드 데이터와 후보 박스 융합 처리를 수행하여, 객체의 실제 검출 박스(제1 검출 박스로 칭할 수 있음)를 결정할 수 있다.
가능한 구현방식에서, 후보 박스 융합은 사전 훈련된 융합 네트워크를 통해 구현될 수 있다. 즉, 객체의 제1 후보 박스 및 제1 후보 박스에 대응하는 영역 포인트 클라우드 데이터는 해당 객체의 예측 후보 박스 및 예측 후보 박스에 대응하는 영역 포인트 클라우드 데이터와 함께 융합 네트워크에 입력되어 처리되며, 객체의 제1 검출 박스가 출력된다. 해당 융합 네트워크는 예를 들어 영역 컨볼루션 신경망(Region Convolutional Neural Networks, RCNN)을 포함할 수 있으며, 본 발명은 융합 네트워크의 구체적인 네트워크 구성에 대해 제한하지 않는다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체를 처리한 후, 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 얻을 수 있으며, 해당 제1 검출 결과는 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 포함한다.
본 발명의 실시예에 따르면, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 검출하고, 과거 검출 결과로 예측하여 얻어진 예측 후보 박스를 통해 제1 후보 박스를 수정하여, 제t 프레임의 포인트 클라우드 데이터의 검출 결과를 얻을 수 있으며, 이에 따라 객체 검출의 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 S11 단계는,
상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프에 따라, 상기 제t 프레임의 포인트 클라우드 데이터를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분하는 단계;
상기 제t 프레임의 포인트 클라우드 데이터의 제1 영역 및 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계를 포함할 수 있다.
예를 들면, 제t-1 프레임의 포인트 클라우드 데이터의 검출 결과를 얻은 후, 이전 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라, 제t 프레임의 포인트 클라우드 데이터 중 객체에 대한 예측 후보 박스를 예측하여 얻을 수 있다. 해당 예측 후보 박스에 따라, 제t 프레임의 포인트 클라우드 데이터의 각 위치에서 객체가 나타나는 확률을 예측하여 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 얻을 수 있다.
가능한 구현방식에서, 제1 확률 임계치 및 제2 확률 임계치가 사전에 설정될 수 있으며, 제2 확률 임계치는 제1 확률 임계치보다 작다. 포인트 클라우드 데이터 중 임의의 위치에 대해, 해당 위치에 객체가 나타나는 확률이 제1 확률 임계치보다 크면, 해당 위치에 객체가 존재하는 것으로 간주될 수 있고; 해당 위치에 객체가 나타나는 확률이 제2 확률 임계치보다 작으면, 해당 위치에 객체가 존재하지 않는 것으로 간주될 수 있고; 해당 위치에 객체가 나타나는 확률이 제1 확률 임계치와 제2 확률 임계치 사이에 있으면, 해당 위치의 객체 존재 여부는 결정되지 않는다(예를 들어, 검출되지 않은 위치 또는 검출되었으나 객체의 존재 여부가 결정되지 않은 위치). 본 발명은 제1 확률 임계치 및 제2 확률 임계치의 구체적인 값에 대해 제한하지 않는다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프에 따라, 제1 확률 임계치 및 제2 확률 임계치를 기반으로, 제t 프레임의 포인트 클라우드 데이터를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분할 수 있다.
구분을 거친 후, 제2 영역에는 객체가 존재하지 않으며, 제2 영역의 포인트 클라우드 데이터에 대해 객체 검출을 수행하지 않을 수 있다. 즉, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 영역 및 제3 영역에 대해 객체 검출을 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정한다.
이러한 방식을 통해, 객체 검출에 의해 처리되는 포인트 클라우드 데이터의 데이터 량을 감소할 수 있으며, 검출 속도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 영역 및 제3 영역에 대해 객체 검출을 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는,
상기 제1 영역 및 상기 제3 영역의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제1 포인트 클라우드 특징을 얻는 단계;
상기 제1 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제2 후보 박스를 결정하는 단계;
각 제2 후보 박스의 신뢰도에 따라, 상기 제2 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하는 단계를 포함한다.
예를 들면, 제1 영역 및 제3 영역의 포인트 클라우드 데이터를 객체 검출 네트워크의 특징 추출 네트워크에 입력하여 특징 추출을 수행하여, 포인트 클라우드 데이터의 제1 포인트 클라우드 특징을 얻을 수 있다. 해당 특징 추출 네트워크는 예를 들어 복수의 컨볼루션 계층을 포함하며, 본 발명은 특징 추출 네트워크의 구성에 대해 제한하지 않는다.
가능한 구현방식에서, 특징 추출을 수행하기 전에, 제1 영역 및 제3 영역의 포인트 클라우드 데이터를 샘플링하여, 처리되는 데이터 량을 감소할 수도 있다. 예를 들어, 랜덤 샘플링을 통해, N 개 포인트를 가진 포인트 클라우드 데이터를 N/4 개 포인트를 가진 포인트 클라우드 데이터로 샘플링한다. 샘플링된 포인트 클라우드 데이터를 특징 추출 네트워크에 입력하여 처리하여 제1 포인트 클라우드 특징을 얻는다. 이러한 방식을 통해, 검출 속도를 더 향상시킬 수 있다.
가능한 구현방식에서, 제1 포인트 클라우드 특징을 객체 검출 네트워크의 지역 제안 네트워크(RPN)에 입력하여 처리하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제2 후보 박스를 얻을 수 있다.
가능한 구현방식에서, 제2 후보 박스의 수가 크면, 더 처리할 수 있다. 각 제2 후보 박스의 신뢰도에 따라, 예를 들어 비-최대 억제(Non-maximum suppression, NMS) 방식으로, 제2 후보 박스에서 기설정된 수의 제1 후보 박스를 결정할 수 있다. 해당 기설정된 수는 예를 들어 값이 50 개일 수 있으며, 본 발명은 이에 대해 제한하지 않는다.
이러한 방식을 통해, 후속 처리를 수행하도록, 포인트 클라우드 데이터에서 객체에 대응하는 후보 박스를 초보적으로 추정할 수 있다.
가능한 구현방식에서, S11 단계는,
상기 제t 프레임의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제2 포인트 클라우드 특징을 얻는 단계;
상기 제2 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제4 후보 박스를 결정하는 단계;
각 제4 후보 박스의 신뢰도에 따라, 상기 제4 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하는 단계를 포함한다.
예를 들면, 제t 프레임의 포인트 클라우드 데이터에 대해 영역을 구분하지 않고, 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 직접 수행할 수 있다. 제t 프레임의 포인트 클라우드 데이터를 객체 검출 네트워크의 특징 추출 네트워크에 입력하여 특징 추출을 수행하여, 제t 프레임의 포인트 클라우드 데이터의 제2 포인트 클라우드 특징을 얻을 수 있다. 해당 특징 추출 네트워크는 예를 들어 복수의 컨볼루션 계층을 포함하며, 본 발명은 특징 추출 네트워크의 구성에 대해 제한하지 않는다.
가능한 구현방식에서, 특징 추출을 수행하기 전에, 제t 프레임의 포인트 클라우드 데이터를 샘플링하여, 처리되는 데이터 량을 감소할 수도 있다. 예를 들어, 랜덤 샘플링을 통해, M 개 포인트를 가진 포인트 클라우드 데이터를 M/4 개 포인트를 가진 포인트 클라우드 데이터로 샘플링한다. 샘플링된 포인트 클라우드 데이터를 특징 추출 네트워크에 입력하여 처리하여 제2 포인트 클라우드 특징을 얻는다. 이러한 방식을 통해, 검출 속도를 더 향상시킬 수 있다.
가능한 구현방식에서, 제2 포인트 클라우드 특징을 객체 검출 네트워크의 지역 제안 네트워크(RPN)에 입력하여 처리하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 제4 후보 박스를 얻을 수 있다.
가능한 구현방식에서, 제4 후보 박스의 수가 크면, 더 처리할 수 있다. 각 제4 후보 박스의 신뢰도에 따라, 예를 들어 비-최대 억제(Non-maximum suppression, NMS) 방식으로, 제4 후보 박스에서 기설정된 수의 제1 후보 박스를 결정할 수 있다. 해당 기설정된 수는 예를 들어 값이 50 개일 수 있으며, 본 발명은 이에 대해 제한하지 않는다.
이러한 방식을 통해, 후속 처리를 수행하도록, 포인트 클라우드 데이터에서 객체에 대응하는 후보 박스를 초보적으로 추정할 수 있다.
가능한 구현방식에서, S12 단계는,
상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 예측 후보 박스를 각각 확장하여, 각 객체의 제3 후보 박스를 결정하는 단계;
상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하는 단계;
상기 제1 후보 박스 및 상기 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터, 및 상기 제3 후보 박스 및 상기 제3 후보 박스가 위치하는 영역에 대응하는 제2 영역 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체에 대해 각각 후보 박스 융합을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 얻는 단계를 포함한다.
예를 들면, 제t 프레임의 포인트 클라우드 데이터에 대해 예측을 수행할 때, 제t 프레임의 포인트 클라우드 데이터의 제1 영역 중 객체를 위해 모두 하나의 예측 후보 박스를 예측한다. 즉, 제1 영역 중 각 객체는 하나의 예측 후보 박스에 대응한다. S12 단계의 처리에서, 후보 박스 수를 증가하도록, 먼저 각 객체의 예측 후보 박스를 각각 확장할 수 있다.
가능한 구현방식에서, 객체가 제t 프레임의 포인트 클라우드 데이터에서의 예측 후보 박스에 따라, 객체의 포즈 및 스케일을 결정할 수 있다. 객체의 포즈 및 스케일의 확률 분포에 따라, 일정한 분산과 평균치로 샘플링하여, 해당 객체의 복수의 제3 후보 박스를 확장하여 얻을 수 있다. 이에 따라, 예측 후보 박스의 오차가 후속 처리에 대한 영향을 줄여, 제1 후보 박스에 매칭하는 확률을 향상시켜, 검출 결과의 안정성을 향상시키고 검출 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 제3 후보 박스와 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정할 수 있다. 해당 단계는,
각 제3 후보 박스와 각 제1 후보 박스 간의 IoU (Intersection over Union)를 각각 결정하는 단계;
제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스를 제1 후보 박스에 매칭되는 제3 후보 박스로 결정하는 단계;
제1 후보 박스에 매칭되는 제3 후보 박스에 대응하는 객체를 상기 제1 후보 박스에 대응하는 객체로 결정하는 단계를 포함할 수 있다.
다시 말하면, IoU를 통해 제3 후보 박스와 제1 후보 박스를 매칭할 수 있다. 각 제3 후보 박스와 각 제1 후보 박스 간의 IoU (Intersection-over-Union)를 각각 결정할 수 있다. IoU 임계치(예를 들어, 0.5)가 사전에 설정될 수 있다. 어느 한 제1 후보 박스에 대해, 해당 제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스가 존재하면, 해당 제3 후보 박스를 해당 제1 후보 박스에 매칭되는 후보 박스로 결정하고, 해당 제3 후보 박스에 대응하는 객체를 해당 제1 후보 박스에 대응하는 객체로 결정한다. 해당 제3 후보 박스에 대응하는 객체의 식별자(Identity Document, ID)를 해당 제1 후보 박스에 부여한다. 즉, 매칭되는 두 개의 후보 박스가 동일한 객체에 대응하는 것으로 간주한다.
가능한 구현방식에서, 어느 한 제1 후보 박스에 대해, 해당 제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스가 존재하지 않으면, 제1 후보 박스에 대응하는 객체를 그 전에 나타나지 않았던 신규 객체로 간주할 수 있다. 이 경우, 제1 후보 박스에 대응하는 객체에 신규 ID를 부여할 수 있다.
이러한 방식을 통해, 식별자가 동일한 객체의 후보 박스를 융합하도록, 각 제1 후보 박스에 대응하는 객체의 식별자를 결정할 수 있다.
가능한 구현방식에서, 상기 제1 후보 박스 및 상기 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터, 및 상기 제3 후보 박스 및 상기 제3 후보 박스가 위치하는 영역에 대응하는 제2 영역 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체에 대해 각각 후보 박스 융합을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 얻는 단계를 포함한다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체에 대해, 해당 객체가 제1 후보 박스 및 제3 후보 박스를 가지면, 제t 프레임의 포인트 클라우드 데이터에서 해당 객체의 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터를 분할하고, 해당 객체의 제3 후보 박스가 위치한 영역에 대응하는 제2 영역 포인트 클라우드 데이터를 분할할 수 있다. 해당 객체의 제1 후보 박스 및 제1 영역 포인트 클라우드 데이터, 제3 후보 박스 및 제2 영역 포인트 클라우드 데이터는 사전 훈련된 융합 네트워크에 입력되어 처리되며, 해당 객체의 제1 검출 박스가 출력된다. 해당 제1 검출 박스는 3 차원 영역 박스를 포함한다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체에 대해, 해당 객체가 제1 후보 박스만 가지면, 제t 프레임의 포인트 클라우드 데이터에서 해당 객체의 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터를 분할할 수 있다. 해당 객체의 제1 후보 박스 및 제1 영역 포인트 클라우드 데이터는 사전 훈련된 융합 네트워크에 입력되어 처리되며, 해당 객체의 제1 검출 박스가 출력된다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체에 대해 상술한 처리를 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체의 제1 검출 박스를 얻을 수 있다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체의 제1 검출 박스를 제t 프레임의 포인트 클라우드 데이터의 검출 결과(제1 검출 결과로 칭할 수 있음)로 할 수 있다. 또한, 제t 프레임의 포인트 클라우드 데이터의 검출 결과가 더 많은 컨텐츠를 포함하도록, 다른 처리(예를 들어, 객체를 분류)를 수행할 수도 있다. 본 발명은 이에 대해 제한하지 않는다.
이러한 방식을 통해, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체의 제1 검출 박스를 결정하여 제t 프레임의 포인트 클라우드 데이터 중 객체의 정확한 검출을 구현할 수 있다.
가능한 구현방식에서, 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 카테고리를 더 포함하고, S12 단계는,
제2 객체의 제1 검출 박스가 위치하는 영역에 대응하는 제3 영역 포인트 클라우드 데이터에 따라, 상기 제2 객체를 분류하여 상기 제2 객체의 카테고리를 결정하는 단계 - 상기 제2 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체임 - 를 포함한다.
예를 들면, S12 단계에서 제t 프레임의 포인트 클라우드 데이터 중 객체를 분류할 수 있다. 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체(제2 객체로 칭할 수 있음)에 대해, 해당 제2 객체의 제1 검출 박스에 따라, 제t 프레임의 포인트 클라우드 데이터에서 제1 검출 박스가 위치한 영역에 대응하는 제3 영역 포인트 클라우드 데이터를 분할할 수 있다.
가능한 구현방식에서, 해당 제3 영역 포인트 클라우드 데이터를 사전 훈련된 분류 네트워크에 입력하여 처리하여, 제2 객체가 해당되는 카테고리를 결정한다. 해당 분류 네트워크는 예를 들어 컨볼루션 계층, 완전연결층 등을 포함할 수 있으며, 본 발명은 분류 네트워크의 구체적인 네트워크 구성에 대해 제한하지 않는다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체에 대해 상술한 처리를 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체의 카테고리를 얻어, 객체의 카테고리를 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에 추가할 수 있다.
이러한 방식을 통해, 검출할 수 있는 객체 정보가 더욱 풍부하다.
S12 단계에서 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 얻은 후, 해당 제1 검출 결과를 그 전의 과거 검출 결과와 결합하여 제t 프레임의 포인트 클라우드 데이터의 검출 결과를 더 최적화할 수도 있다.
가능한 구현방식에서, 본 발명의 실시예에 따른 객체 검출 방법은 아래의 단계를 더 포함할 수 있다.
먼저, 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 획득한다. 다음, 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정한다.
다시 말하면, 이전 t-1 개 프레임의 포인트 클라우드 데이터는 이미 그 전의 처리에서 최종 검출 결과(제2 검출 결과로 칭할 수 있음)를 얻었고, 각 제2 검출 결과는 객체의 제2 검출 박스를 포함하며, 제t 프레임의 포인트 클라우드 데이터 중 객체는 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서 대응하는 제2 검출 박스가 존재할 수 있다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체에 대해, 이전 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 해당 객체의 제2 검출 박스가 존재하면, 해당 객체가 이전 t-1 개 프레임의 포인트 클라우드 데이터에서의 제2 검출 박스에 따라, 해당 객체가 제t 프레임의 포인트 클라우드 데이터에서의 제1 검출 박스를 수정하여, 수정된 검출 박스를 얻을 수 있으며, 제2 검출 박스로 칭한다.
가능한 구현방식에서, 이전 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 해당 객체의 제2 검출 박스가 존재하지 않으면, 해당 객체가 제t 프레임의 포인트 클라우드 데이터에서의 제1 검출 박스를 직접 제2 검출 박스로 한다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체에 대해 상술한 처리를 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체의 제2 검출 박스를 얻어, 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 얻을 수 있다.
이러한 방식을 통해, 객체 검출의 정확도를 더 향상시킬 수 있다.
가능한 구현방식에서, 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 단계는,
제1 객체의 검출 박스 집합을 결정하는 단계 - 상기 제1 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체이고, 상기 제1 객체의 검출 박스 집합은 상기 제1 객체가 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스, 및 상기 제1 객체가 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에서의 제1 검출 박스를 포함함 - ;
상기 제1 객체의 검출 박스 집합 중 어느 한 검출 박스에 대해, 상기 검출 박스 집합 중에서 상기 검출 박스와의 오차가 오차 임계치보다 작거나 같은 검출 박스를 상기 검출 박스의 내점 박스로 결정하는 단계;
상기 제1 객체의 검출 박스 집합 중에서 내점 박스 수가 제일 많은 제3 검출 박스를 결정하는 단계;
상기 제3 검출 박스 및 상기 제3 검출 박스의 모든 내점 박스를 융합하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 제1 객체의 제2 검출 박스를 결정하는 단계를 포함한다.
예를 들면, 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체(제1 객체로 칭함)에 대해, 해당 제1 객체의 검출 박스 집합을 획득할 수 있다. 해당 검출 박스 집합은 제1 객체가 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스, 및 제1 객체가 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에서의 제1 검출 박스를 포함한다.
가능한 구현방식에서, 제1 객체의 검출 박스 집합 중 어느 한 검출 박스에 대해, 검출 박스 집합 중 다른 검출 박스와 해당 검출 박스 간의 오차를 결정할 수 있다. 오차 임계치가 사전에 설정될 수 있으며, 해당 검출 박스와의 오차가 해당 오차 임계치보다 작거나 같은 검출 박스는 해당 검출 박스의 내점 박스로 결정될 수 있다. 반면, 해당 검출 박스와의 오차가 해당 오차 임계치보다 큰 검출 박스는 해당 검출 박스의 외점 박스로 결정될 수 있다. 본 발명은 오차 임계치의 구체적인 값에 대해 제한하지 않는다.
가능한 구현방식에서, 제1 객체의 검출 박스 집합 중에서 내점 박스 수가 제일 많은 제3 검출 박스를 결정하고, 해당 제3 검출 박스를 최초 추정된 검출 박스로 할 수 있다. 제3 검출 박스 및 제3 검출 박스의 모든 내점 박스에 대해 융합 최적화를 수행하여, 제1 객체의 위치 정보의 최적화 추정을 얻을 수 있다. 즉, 수정된 제2 검출 박스를 얻을 수 있다.
가능한 구현방식에서, 최소자승법으로 제3 검출 박스 및 제3 검출 박스의 모든 내점 박스에 대해 융합 최적화를 수행할 수도 있고, 칼만 필터링 방식으로 제3 검출 박스 및 제3 검출 박스의 모든 내점 박스에 대해 융합 최적화를 수행할 수도 있으며, 본 발명은 융합 최적화의 구체적인 방식에 대해 제한하지 않는다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체에 대해 상술한 처리를 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체의 제2 검출 박스를 얻어, 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 얻을 수 있다.
이러한 방식을 통해, 검출 결과를 그 전의 과거 검출 결과와 결합하여 제t 프레임의 포인트 클라우드 데이터의 검출 결과를 더욱 최적화하여, 객체 검출의 정확도를 향상시킬 수 있다.
가능한 구현방식에서, 상기 방법은
상기 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과, 및 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하는 단계를 더 포함한다.
예를 들면, 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 얻은 후, 과거 검출 결과에 따라 제t+1 프레임의 포인트 클라우드 데이터를 예측하여, 제t+1 프레임의 포인트 클라우드 데이터의 객체 검출을 도울 수 있다.
가능한 구현방식에서, 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체(제3 객체로 칭함)에 대해, 해당 제3 객체가 t 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스를 획득할 수 있다. 해당 제3 객체가 복수 개의 제2 검출 박스를 가지면, 인접한 프레임의 각 제2 검출 박스 간의 오차에 따라, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하여, 해당 제3 객체가 제t+1 프레임의 포인트 클라우드 데이터에서의 위치를 예측하고, 해당 제3 객체가 제t+1 프레임의 포인트 클라우드 데이터에서의 예측 후보 박스를 얻을 수 있다.
가능한 구현방식에서, 칼만 필터링 또는 최소자승법으로 운동 상태의 예측을 구현할 수 있으며, 본 발명은 이에 대해 제한하지 않는다.
가능한 구현방식에서, 해당 제3 객체가 하나의 제2 검출 박스만 가지면, 즉 제3 객체가 제t 프레임의 포인트 클라우드 데이터에서 새로 나타난 객체이면, 해당 제3 객체 부근의 다른 객체에 따라 예측하며, 다른 객체가 제t 프레임의 포인트 클라우드 데이터에서의 제2 검출 박스 및 제t+1 프레임의 포인트 클라우드 데이터에서의 예측 후보 박스 간의 오차를 통해, 해당 제3 객체가 제t+1 프레임의 포인트 클라우드 데이터에서의 예측 후보 박스를 예측하여 얻을 수 있다.
이에 따라, 제t 프레임의 포인트 클라우드 데이터 중 모든 객체를 예측하여, 제t+1 프레임의 포인트 클라우드 데이터의 기 검출 영역 중 모든 객체의 예측 후보 박스를 결정할 수 있다.
이러한 방식을 통해, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 얻어 제t+1 프레임의 포인트 클라우드 데이터의 객체 검출을 도울 수 있으며, 이에 따라 검출 정확도를 향상시킨다.
가능한 구현방식에서, 상기 방법은
상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스 및 제t 프레임의 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하는 단계를 더 포함한다.
예를 들면, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 얻은 후, 해당 예측 후보 박스 및 제t 프레임의 포인트 클라우드 데이터에 따라, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트할 수 있다. 즉, 객체가 제t 프레임의 포인트 클라우드 데이터에서의 위치 및 제t+1 프레임의 포인트 클라우드 데이터에서의 위치(예측 후보 박스)에 따라, 예측 확률 그래프 중 각 위치에 객체가 존재하는지 여부를 결정하고, 각 위치에서 객체가 나타날 확률을 업데이트하여, 제t+1 프레임의 포인트 클라우드 데이터에서 객체의 예측 확률 그래프를 얻는다.
이러한 방식을 통해, 후속 처리 시 제t+1 프레임의 포인트 클라우드 데이터를 복수 개의 영역으로 구분하도록, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 얻을 수 있으며, 이에 따라 객체 검출의 속도를 향상시킨다.
가능한 구현방식에서, 상기 방법은
상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하는 단계를 더 포함한다.
다시 말하면, 제t-1 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 얻은 후, 과거 검출 결과에 따라 제t 프레임의 포인트 클라우드 데이터를 예측하고, 제t 프레임의 포인트 클라우드 데이터의 객체 검출을 도울 수 있다. 제t-1 프레임의 포인트 클라우드 데이터 중 어느 한 객체에 대해, 해당 객체가 이전 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스를 획득하고, 제t 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하여, 해당 객체가 제t 프레임의 포인트 클라우드 데이터에서의 위치를 예측하여 얻고, 해당 객체가 제t 프레임의 포인트 클라우드 데이터에서의 예측 후보 박스를 얻을 수 있다. 해당 예측 과정은 제t+1 포인트 클라우드 데이터에 대한 예측 과정과 유사하므로, 여기서 더 중복하여 설명하지 않는다.
이러한 방식을 통해, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 얻어 제t 프레임의 포인트 클라우드 데이터의 객체 검출을 도울 수 있으며, 이에 따라 검출 정확도를 향상시킨다.
가능한 구현방식에서, 상기 방법은
제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t-1 프레임의 포인트 클라우드 데이터에 따라, 상기 제t-1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하는 단계를 더 포함한다.
다시 말하면, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 얻은 후, 해당 예측 후보 박스 및 제t-1 프레임의 포인트 클라우드 데이터에 따라, 제t-1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 얻을 수 있다. 해당 업데이트 과정은 제t+1 프레임의 포인트 클라우드 데이터의 예측 확률 그래프에 대한 업데이트 과정과 유사하므로, 여기서 더 중복하여 설명하지 않는다.
이러한 방식을 통해, 후속 처리 시 제t 프레임의 포인트 클라우드 데이터를 복수 개의 영역으로 구분하도록, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 얻을 수 있으며, 이에 따라 객체 검출의 속도를 향상시킨다.
본 발명의 실시예에서, 도 1B에 도시된 바와 같은 네트워크 아키텍처를 통해 재구성될 대상에 대한 3 차원 재구성을 구현할 수 있다. 도 1B는 본 발명의 실시예에 따른 객체 검출 방법의 네트워크 아키텍처를 도시한 개략도이며, 해당 네트워크 아키텍처는 사용자 단말기(201), 네트워크(202) 및 객체 검출 단말기(203)를 포함한다. 예시적인 응용을 지원하기 위하여, 사용자 단말기(201)와 객체 검출 단말기(203)가 네트워크(202)를 통해 통신 연결을 설정하고, 사용자 단말기(201)가 검출될 객체를 포함하는 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행해야 하는 경우, 먼저, 네트워크(202)를 통해, 객체 장면의 제t 프레임의 포인트 클라우드 데이터를 객체 검출 단말기(203)에 송신하고, 다음, 객체 검출 단말기(203)는 해당 객체의 검출 박스를 예측하여 제1 후보 박스를 얻으며, 마지막으로, 객체 검출 단말기(203)는 해당 제1 후보 박스를 통해 제t 프레임의 포인트 클라우드 데이터 중 객체에 대한 검출을 구현하여, 해당 객체의 검출 결과를 얻는다. 이와 같이, 복수 프레임의 포인트 클라우드 데이터를 통해 검출 박스를 예측하여, 객체 검출의 정확도를 향상시킬 수 있다.
도 2는 본 발명의 실시예에 따른 객체 검출 방법의 처리 과정을 도시한 개략도이다. 도 2에 도시된 바와 같이, 현재 프레임에 대해 객체 검출 처리를 수행하는 과정을 전단으로 칭하고, 과거 결과가 기록되어 있고 과거 결과에 따라 현재 프레임을 수정하고 다음 프레임을 예측하는 과정을 후단이라고 칭할 수 있으며, 후단의 처리는 객체 추적과 융합이라고 칭할 수도 있다. 여기서, 현재 프레임은 제t 프레임이다.
실예에서, 이전 제t-1 프레임의 전단 처리에서 제t-1 프레임의 포인트 클라우드 데이터의 제1 검출 결과(미도시)를 얻었고; 해당 제1 검출 결과를 이전 t-2 개 프레임의 과거 검출 결과와 관련시키고, 제t-1 프레임 후단의 단계 211 에서 칼만 필터링 또는 최소자승법으로 검출 박스의 융합 최적화를 수행하여 검출 결과의 수정을 구현하여, 제t-1 프레임의 포인트 클라우드 데이터의 제2 검출 결과(미도시)를 얻는다.
실예에서, 제t-1 프레임의 후단 처리에서, 이전 t-1 개 프레임의 과거 검출 결과에 따라, 제t 프레임 중 객체에 대해 운동 예측(212)을 수행하여, 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스(213)를 얻은 후, 예측 후보 박스(213) 및 제t-1 프레임의 포인트 클라우드 데이터(미도시)에 따라, 단계 214 에서 제t-1 프레임의 예측 확률 그래프를 업데이트하여 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프(215)을 얻어, 제t-1 프레임의 전반 처리 과정을 완료할 수 있다.
실예에서, 제t 프레임의 전단 처리에서, 예측 확률 그래프(215)에 따라, 상기 제t 프레임의 포인트 클라우드 데이터(221)를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분하여, 영역이 구분된 포인트 클라우드 데이터(222)를 얻을 수 있다. 포인트 클라우드 데이터(222)의 제1 영역 및 제3 영역을 객체 검출 네트워크(223)에 입력하여 객체 검출을 수행하면, 기설정된 수의 제1 후보 박스를 얻을 수 있다. 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스(213)를 제1 후보 박스에 매칭하여 각 제1 후보 박스에 대응하는 객체 식별자를 결정하여, 처리될 모든 후보 박스(224)를 얻는다(각 객체는 복수 개의 박스에 대응함). 객체의 모든 후보 박스(224) 및 후보 박스(224)에 대응하는 영역 포인트 클라우드 데이터를 융합 네트워크(225)에 입력하여 처리하여, 객체의 제1 검출 박스를 얻어(각 객체는 하나의 박스에 대응함), 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과(226)로 한다. 또한, 단계 227 에서 제1 검출 결과(226)를 이전 t-1 개 프레임의 과거 검출 결과와 관련시킬 수 있다.
실예에서, 제t 프레임의 후단 처리에서, 단계 231 에서, 칼만 필터링 또는 최소자승법으로 검출 박스의 융합 최적화를 수행하여 검출 결과의 수정을 구현하여, 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제2 검출 박스를 얻어 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과(230), 즉 최종 출력 결과로 할 수 있다.
실예에서, 제t 프레임의 후단 처리에서, 이전 t 개 프레임의 제2 검출 결과에 따라, 제t+1 프레임 중 객체에 대해 운동 예측(232)을 수행하여 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스(233)를 얻은 후, 예측 후보 박스(232) 및 제t 프레임의 포인트 클라우드 데이터(221)에 따라, 단계 234 에서 제t 프레임의 예측 확률 그래프(215)을 업데이트하여 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프(235)을 얻어, 제t 프레임의 전반 처리 과정을 완료할 수 있다.
도 3a는 객체 장면의 이미지를 도시한 개략도이다. 도 3b는 객체의 검출 결과를 도시한 개략도이다. 도 3a에 도시된 바와 같이, 객체 장면에는 복수 개의 의자가 포함되며, 의자는 검출될 객체로 될 수 있다. 도 3b에 도시된 바와 같이, 검출 박스(31)는 관련 기술의 단일 프레임 처리의 객체 검출 방법에 따라 얻어진 검출 결과이고, 검출 박스(32)는 객체의 실제 3 차원 이미지 박스이며, 검출 박스(33)는 본 발명의 실시예에 따른 객체 검출 방법에 따라 얻어진 검출 결과이다.
보다시피, 본 발명의 실시예에 따른 객체 검출 방법에 따라 얻어진 검출 결과의 정확도는 높다. 객체가 일부 가리워진 경우, 관련 기술의 검출 결과는 현저히 차해졌지만, 본 발명의 실시예에 따른 객체 검출 방법은 여전히 높은 정확도를 유지할 수 있다.
본 발명의 실시예에 따른 객체 검출 방법은, 객체 장면의 연속된 복수 프레임의 포인트 클라우드 데이터에 대해 3 차원 객체 검출을 수행하는 경우, 과거 검출 결과를 효과적으로 이용하여 3 차원 객체의 검출와 추적을 수행할 수 있으며; 과거 검출 결과를 통해 현재 프레임 중 객체의 후보 박스, 및 현재 프레임 중 기지 영역에서 3D 물체가 나타날 확률의 분포도를 예측하고, 현재 프레임의 객체 검출 과정에 피드백할 수 있으며; 현재 프레임은 객체 검출 시 예측된 확률분포도를 이용하여 영역을 구분할 수 있으며, 이에 따라 처리의 데이터 량을 감소하고, 객체 검출의 속도를 향상시키며; 예측된 후보 박스를 사전 박스로 이용하여, 각 프레임이 전체 장면에 대해 객체 검색을 수행하는 것을 피할 수 있을 뿐만아니라, 사전 박스에 따라 더 정확한 후보 박스를 얻어, 객체 검출의 정확도를 효과적으로 향상시키고, 검출 누락의 발생을 피할 수 있다.
본 발명의 실시예에 따른 객체 검출 방법은, 객체의 추적과 융합을 수행하여 각 3D 객체가 연속된 시간에서 모든 검출 박스를 모두 해당 3D 물체의 과거 검출 박스로 저장하고, 각 프레임에서 각 3D 객체의 모든 과거 검출 박스에 대해 각각 융합과 최적화를 수행하여 현재 프레임의 3D 객체의 위치의 최적화 추정을 획득할 수 있으며, 이에 따라 3D 검출 박스의 안정성을 효과적으로 향상시키고, 객체가 가리워지거나 절단될 때의 검출 오차를 감소하며, 객체 검출의 정확도 및 강건성을 현저히 향상시킬 수 있다.
본 발명의 실시예에 따른 객체 검출 방법은, 증강 현실(AR), 실내 내비게이션 등 응용 시나리오에 적용되어 3D 객체의 추정과 검출을 구현할 수 있다. 관련 기술의 처리 방식은 연속된 프레임에서 동일한 객체의 위치 정보의 관계를 감안하지 않고, 연속된 시간에서의 정보를 이용하지 않아, 3D 검출 박스의 지터를 쉽게 발생시킨다. 예를 들어, 실내 장면에서, 물체 스케일이 더 크므로, 검출 박스 지터 현상도 더 심하다. 반면, 본 발명의 실시예에 따른 객체 검출 방법은 연속된 프레임 내 위치 정보의 관계 및 연속된 시간에서의 정보를 이용하여, 더 안정적인 3D 검출 박스를 출력하고 검출 오차를 감소할 수 있다.
이해할 것은, 본 개시에 언급된 상술한 각 방법 실시예는 원리 논리를 위반하지 않는 한 서로 결합되어 결합된 실시예를 형성할 수 있으며, 편폭의 제한으로 인해 본 개시는 더 설명하지 않는다. 통상의 기술자는 구체적인 실시방식의 상술한 방법에서 각 단계의 구체적인 수행 순서가 그 기능 및 가능한 내재적 논리로 확정되어야 함을 이해할 수 있다.
또한, 본 발명은 객체 검출 장치, 전자 기기, 컴퓨터 판독 가능한 저장매체, 프로그램을 더 제공하며, 상술한 것은 모두 본 발명에서 제공된 어느 한 객체 검출 방법을 구현할 수 있으며, 상응한 기술적 방안 및 설명은 방법 부분의 상응한 기재를 참조하면 되며, 더 설명하지 않는다.
도 4는 본 발명의 실시예에 따른 객체 검출 장치를 도시한 블록도이며, 도 4에 도시된 바와 같이, 상기 장치는,
객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하도록 구성되는 제1 검출 모듈(41) - t는 1보다 큰 정수임 - ;
상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하도록 구성되는 제2 검출 모듈(42) - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 을 포함하며, 상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것이다.
가능한 구현방식에서, 상기 제1 검출 모듈은, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프에 따라, 상기 제t 프레임의 포인트 클라우드 데이터를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분하도록 구성되는 영역 구분 서브모듈; 상기 제1 영역 및 상기 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하도록 구성되는 제1 검출 서브모듈을 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 획득하고, 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 수정 모듈을 더 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하도록 구성되는 제1 운동 예측 모듈을 더 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t-1 프레임의 포인트 클라우드 데이터에 따라, 상기 제t-1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하도록 구성되는 제1 확률 그래프 업데이트 모듈을 더 포함한다.
가능한 구현방식에서, 상기 제1 검출 서브모듈은, 상기 제1 영역 및 상기 제3 영역의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제1 포인트 클라우드 특징을 얻고; 상기 제1 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제2 후보 박스를 결정하며; 각 제2 후보 박스의 신뢰도에 따라, 상기 제2 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하도록 구성된다.
가능한 구현방식에서, 상기 제2 검출 모듈은, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 예측 후보 박스를 각각 확장하여, 각 객체의 제3 후보 박스를 결정하도록 구성되는 후보 박스 확장 서브모듈; 상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하도록 구성되는 후보 박스 매칭 서브모듈; 상기 제1 후보 박스 및 상기 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터, 및 상기 제3 후보 박스 및 상기 제3 후보 박스가 위치하는 영역에 대응하는 제2 영역 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체에 대해 각각 후보 박스 융합을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 얻도록 구성되는 후보 박스 융합 서브모듈을 포함한다.
가능한 구현방식에서, 상기 후보 박스 매칭 서브모듈은, 각 제3 후보 박스와 각 제1 후보 박스 간의 IoU (Intersection over Union)를 각각 결정하고; 제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스를 제1 후보 박스에 매칭되는 제3 후보 박스로 결정하며; 제1 후보 박스에 매칭되는 제3 후보 박스에 대응하는 객체를 상기 제1 후보 박스에 대응하는 객체로 결정하도록 구성된다.
가능한 구현방식에서, 각 제2 검출 결과는 객체의 제2 검출 박스를 포함하고, 상기 수정 모듈은, 제1 객체의 검출 박스 집합을 결정하도록 구성되는 집합 결정 서브모듈 - 상기 제1 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체이고, 상기 제1 객체의 검출 박스 집합은 상기 제1 객체가 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스, 및 상기 제1 객체가 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에서의 제1 검출 박스를 포함함 - ; 상기 제1 객체의 검출 박스 집합 중 어느 한 검출 박스에 대해, 상기 검출 박스 집합 중에서 상기 검출 박스와의 오차가 오차 임계치보다 작거나 같은 검출 박스를 상기 검출 박스의 내점 박스로 결정하도록 구성되는 내점 박스 결정 서브모듈; 상기 제1 객체의 검출 박스 집합 중에서 내점 박스 수가 제일 많은 제3 검출 박스를 결정하도록 구성되는 검출 박스 선택 서브모듈; 상기 제3 검출 박스 및 상기 제3 검출 박스의 모든 내점 박스를 융합하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 제1 객체의 제2 검출 박스를 결정하도록 구성되는 내점 박스 융합 서브모듈을 포함한다.
가능한 구현방식에서, 상기 장치는 상기 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과, 및 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하도록 구성되는 제2 운동 예측 모듈을 더 포함한다.
가능한 구현방식에서, 상기 장치는 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t 프레임의 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하도록 구성되는 제2 확률 그래프 업데이트 모듈을 더 포함한다.
가능한 구현방식에서, 상기 제1 검출 모듈은, 상기 제t 프레임의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제2 포인트 클라우드 특징을 얻도록 구성되는 특징 추출 서브모듈; 상기 제2 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제4 후보 박스를 결정하도록 구성되는 제2 검출 서브모듈; 각 제4 후보 박스의 신뢰도에 따라, 상기 제4 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하도록 구성되는 선택 서브모듈을 포함한다.
가능한 구현방식에서, 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 카테고리를 더 포함하고, 상기 제2 검출 모듈은, 제2 객체의 제1 검출 박스가 위치하는 영역에 대응하는 제3 영역 포인트 클라우드 데이터에 따라, 상기 제2 객체를 분류하여 상기 제2 객체의 카테고리를 결정하도록 구성되는 분류 서브모듈 - 상기 제2 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체임 - 을 포함한다.
가능한 구현방식에서, 상기 객체 장면은 실내 장면을 포함하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체는 물체를 포함하며, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스는 3 차원 영역 박스를 포함한다.
일부 실시예에서, 본 발명의 실시예에 의해 제공된 장치에 구비된 기능 또는 포함된 모듈은 위의 방법 실시예에서 설명된 방법을 수행할 수 있으며, 그 구체적인 구현은 위의 방법 실시예의 설명을 참조하면 되며, 간결을 위하여, 여기서 더 설명하지 않는다.
본 발명의 실시예는 프로세서에 의해 실행되면 상술한 방법을 구현하는 컴퓨터 프로그램 명령이 저장된 컴퓨터 판독 가능한 저장매체를 더 제출한다. 컴퓨터 판독 가능한 저장매체는 비 휘발성 컴퓨터 판독 가능한 저장매체일 수 있다.
본 발명의 실시예는 전자 기기를 더 제출하며, 상기 전자 기기는 프로세서; 프로세서에 의해 실행 가능한 명령이 저장된 메모리를 포함하며, 상기 프로세서는 상기 메모리에 저장된 명령을 호출하여 상술한 방법을 수행하도록 구성된다.
본 발명의 실시예는 컴퓨터 판독 가능한 코드가 포함된 컴퓨터 프로그램 제품을 더 제공하며, 컴퓨터 판독 가능한 코드가 기기에서 실행되면, 기기 중 프로세서는 상술한 어느 한 실시예에 의해 제공된 객체 검출 방법의 명령을 실행한다.
본 발명의 실시예는 실행되면 컴퓨터가 상술한 어느 한 실시예에 의해 제공된 객체 검출 방법의 동작을 수행하도록 하는 컴퓨터 판독 가능한 명령을 저장하는 다른 컴퓨터 프로그램 제품을 더 제공한다.
전자 기기는 단말기, 서버 또는 다른 형태의 기기로 제공될 수 있다.
도 5는 본 발명의 실시예에 따른 전자 기기(800)를 도시한 블록도이다. 예를 들어, 전자 기기(800)는 휴대폰, 컴퓨터, 디지털 방송 단말기, 메시지 송수신 기기, 게임기, 태블릿 PC, 의료 기기, 운동기구, PDA 등 단말기일 수 있다.
도 5를 참조하면, 전자 기기(800)는 처리 컴포넌트(802), 메모리(804), 전원 컴포넌트(806), 멀티미디어 컴포넌트(808), 오디오 컴포넌트(810), 입력/출력(I/O)의 인터페이스(812), 센서 컴포넌트(814) 및 통신 컴포넌트(816) 중의 하나 또는 복수 개 컴포넌트를 포함할 수 있다.
처리 컴포넌트(802)는 일반적으로 디스플레이, 전화 호출, 데이터 통신, 카메라 동작 및 기록 동작과 관련된 동작과 같은 전자 기기(800)의 전반적인 동작을 제어한다. 처리 컴포넌트(802)는 상술한 방법의 전부 또는 일부 단계를 완료하도록 명령을 실행하는 하나 또는 복수 개의 프로세서(820)를 포함할 수 있다. 또한, 처리 컴포넌트(802)는 처리 컴포넌트(802)와 다른 컴포넌트 간의 상호작용을 용이하게 하기 위하여 하나 또는 복수 개의 모듈을 포함할 수 있다. 예를 들어, 처리 컴포넌트(802)는 멀티미디어 컴포넌트(808)와 처리 컴포넌트(802) 간의 상호작용을 용이하게 하기 위하여 멀티미디어 모듈을 포함할 수 있다.
메모리(804)는 전자 기기(800)에서의 동작을 지원하기 위하여 각종 유형의 데이터를 저장하도록 구성된다. 이러한 데이터의 실예는 전자 기기(800)에서 동작하는 임의의 애플리케이션 또는 방법의 명령, 연락처 데이터, 전화번호부 데이터, 메시지, 그림, 동영상 등을 포함한다. 메모리(804)는 정적 램(SRAM), 이이피롬(EEPROM), 이피롬(EPROM), 피롬(PROM), 롬(ROM), 자기저장장치, 플래시, 디스크 또는 광 디스크와 같은 임의의 유형의 휘발성 또는 비휘발성 저장 기기 또는 이들의 조합으로 구현될 수 있다.
전력 컴포넌트(806)는 전자 기기(800)의 각종 컴포넌트에 전력을 공급한다. 전원 컴포넌트(806)는 전원 관리 시스템, 하나 또는 복수 개의 전원, 및 전자 기기(800)를 위해 전력을 생성, 관리 및 할당하는 것과 관련된 다른 컴포넌트를 포함할 수 있다.
멀티미디어 컴포넌트(808)는 상기 전자 기기(800)와 사용자 사이의 하나의 출력 인터페이스를 제공하는 스크린을 포함한다. 일부 실시예에서, 스크린은 액정 표시 장치(LCD) 및 터치 패널(TP)을 포함할 수 있다. 스크린이 터치 패널을 포함하는 경우, 스크린은 사용자로부터의 입력 신호를 수신하도록 터치 스크린으로 구현될 수 있다. 터치 패널은 터치, 미끄럼 및 터치 패널 상의 제스처를 센싱하도록 하나 또는 복수 개의 터치 센서를 포함한다. 상기 터치 센서는 터치 또는 미끄럼 동작의 경계를 센싱할 뿐만 아니라, 상기 터치 또는 미끄럼 동작과 관련된 지속시간 및 압력도 검출할 수 있다. 일부 실시예에서, 멀티미디어 컴포넌트(808)는 하나의 전방 카메라 및/또는 후방 카메라를 포함한다. 전자 기기(800)가 촬영 모드 또는 비디오 모드와 같은 동작 모드인 경우, 전방 카메라 및/또는 후방 카메라는 외부의 멀티미디어 데이터를 수신할 수 있다. 전방 카메라 및 후방 카메라 각각은 하나의 고정된 광학 렌즈 시스템이거나 초점 및 광학 줌 능력을 구비할 수 있다.
오디오 컴포넌트(810)는 오디오 신호를 출력 및/또는 입력하도록 구성된다. 예를 들어, 오디오 컴포넌트(810)는 하나의 마이크로폰(MIC)을 포함하며, 전자 기기(800)가 호출 모드, 기록 모드 및 음성 식별 모드와 같은 동작 모드인 경우, 마이크로폰은 외부 오디오 신호를 수신하도록 구성된다. 수신된 오디오 신호는 또한 메모리(804)에 저장되거나 통신 컴포넌트(816)에 의해 송신될 수 있다. 일부 실시예에서, 오디오 컴포넌트(810)는 오디오 신호를 출력하는 하나의 스피커를 더 포함한다.
I/O 인터페이스(812)는 처리 컴포넌트(802)와 주변 장치 인터페이스 모듈 사이에 인터페이스를 제공하며, 상기 주변 장치 인터페이스 모듈은 키보드, 클릭 휠(click wheel), 버튼 등일 수 있다. 이러한 버튼은 홈페이지 버튼, 음량 버튼, 시작 버튼 및 잠금 버튼을 포함하나 이에 한정되지 않는다.
센서 컴포넌트(814)는 전자 기기(800)에 각 측면의 상태 평가를 제공하는 하나 또는 복수 개의 센서를 포함한다. 예를 들어, 센서 컴포넌트(814)는 전자 기기(800)의 온/오프 상태, 컴포넌트의 상대적 위치를 검출할 수 있다. 예를 들어, 상기 컴포넌트는 전자 기기(800)의 표시장치 및 키패드이다. 센서 컴포넌트(814)는 또한 전자 기기(800) 또는 전자 기기(800)의 한 컴포넌트의 위치 변화, 사용자와 전자 기기(800)의 접촉여부, 전자 기기(800)의 방위 또는 가속/감속 및 전자 기기(800)의 온도 변화를 센싱할 수도 있다. 센서 컴포넌트(814)는 아무런 물리적 접촉도 없이 부근 물체의 존재를 센싱하도록 구성되는 근접 센서를 포함할 수 있다. 센서 컴포넌트(814)는 금속 산화막 반도체(CMOS) 또는 전하 결합 소자(CCD) 이미지 센서와 같은 이미징 애플리케이션에서 사용되는 광 센서를 더 포함할 수 있다. 일부 실시예에서, 해당 센서 컴포넌트(814)는 가속도 센서, 자이로스코프 센서, 자기 센서, 압력 센서 또는 온도 센서를 더 포함할 수 있다.
통신 컴포넌트(816)는 전자 기기(800)와 다른 기기 간의 유선 또는 무선 방식의 통신을 용이하게 하도록 구성된다. 전자 기기(800)는 무선 네트워크(WiFi), 2 세대 이동 통신 기술(2G) 또는 3 세대 이동 통신 기술(3G), 또는 이들의 조합과 같은 통신 표준 기반 무선 네트워크에 접속할 수 있다. 예시적인 실시예에서, 통신 컴포넌트(816)는 방송 채널을 통해 외부 방송 관리 시스템으로부터의 방송 신호 또는 방송 관련 정보를 수신한다. 예시적인 실시예에서, 상기 통신 컴포넌트(816)는 근거리 무선 통신(NFC) 모듈을 더 포함하여 단거리 통신을 촉진할 수 있다. 예를 들어, NFC모듈은 무선 주파수 식별(RFID) 기술, 적외선 데이터 통신(IrDA) 기술, 초광대역(UWB) 기술, 블루투스(BT) 기술 및 다른 기술을 기반으로 구현될 수 있다.
예시적인 실시예에서, 전자 기기(800)는 하나 또는 복수 개 응용 주문형 집적회로(ASIC), 디지털 신호 프로세서(DSP), 디지털 신호 처리 장치(DSPD), 프로그래머블 논리 소자(PLD), 필드 프로그램 가능 게이트 어레이(FPGA), 컨트롤러, 마이크로 컨트롤러, 마이크로프로세서 또는 다른 전자소자로 구현되어 상술한 방법을 수행할 수 있다.
예시적인 실시예에서, 컴퓨터 프로그램 명령이 포함된 메모리(804)와 같은 비휘발성 컴퓨터 판독 가능한 저장매체가 더 제공되며, 상술한 컴퓨터 프로그램 명령은 전자 기기(800)의 프로세서(820)에 의해 실행되어 상술한 방법을 완성할 수 있다.
도 6은 본 발명의 실시예에 따른 전자 기기(1900)를 도시한 블록도이다. 예를 들어, 전자 기기(1900)는 서버로 제공될 수 있다. 도 6을 참조하면, 전자 기기(1900)는 처리 컴포넌트(1922)를 포함하며, 처리 컴포넌트(1922)는 하나 또는 복수 개의 프로세서, 및 메모리(1932)를 대표로 하는 메모리 자원을 더 포함한다. 메모리 자원은 처리 컴포넌트(1922)에 의해 실행될 수 있는 명령(예를 들어, 애플리케이션)을 저장한다. 메모리(1932)에 저장된 애플리케이션은 하나 또는 그 이상의 각각 한 세트의 명령에 대응하는 모듈을 포함할 수 있다. 또한, 처리 컴포넌트(1922)는 상술한 방법을 수행하기 위하여 명령을 실행하도록 구성된다.
전자 기기(1900)는 전자 기기(1900)의 전원 관리를 수행하도록 구성되는 하나의 전원 컴포넌트(1926), 전자 기기(1900)를 네트워크에 연결하도록 구성되는 하나의 유선 또는 무선 네트워크 인터페이스(1950), 및 하나의 입력 출력(I/O) 인터페이스(1958)를 더 포함할 수 있다. 전자 기기(1900)는 마이크로소프트 서버 운영 체제(Windows ServerTM), 애플사에서 내놓은 그래픽 사용자 인터페이스 운영 체제(Mac OS XTM), 다중 사용자 다중 프로세스 컴퓨터 운영 체제(UnixTM), 무료 및 오픈 소스 Unix-like 운영 체제(LinuxTM), 오픈 소스 Unix-like 운영 체제(FreeBSDTM) 등과 같은 메모리(1932)에 저장된 운영 체제를 기반으로 동작할 수 있다.
예시적인 실시예에서, 비휘발성 컴퓨터 판독 가능한 저장매체를 더 제공한다. 예를 들어 컴퓨터 프로그램 명령이 포함된 메모리(1932). 상술한 컴퓨터 프로그램 명령은 전자 기기(1900)의 처리 컴포넌트(1922)에 의해 실행되어 상술한 방법을 완성할 수 있다.
본 발명은 시스템, 방법 및/또는 컴퓨터 프로그램 제품일 수 있다. 컴퓨터 프로그램 제품은 프로세서가 본 발명의 각 측면을 구현하도록 하는 컴퓨터 판독 가능한 프로그램 명령이 로딩된 컴퓨터 판독 가능한 저장매체를 포함할 수 있다.
컴퓨터 판독 가능한 저장매체는 명령 실행 기기에 의해 사용되는 명령을 유지 및 저장할 수 있는 유형 기기일 수 있다. 컴퓨터 판독 가능한 저장매체는 예를 들어 전기적 저장 기기, 자기적 저장 기기, 광 저장 기기, 전자기 저장 기기, 반도체 저장 기기 또는 이들의 임의의 적절한 조합일 수 있으나 이에 한정되지 않는다. 컴퓨터 판독 가능한 저장매체의 더 구체적인 예(비 완전 리스트)는 휴대용 컴퓨터 디스크, 하드 디스크, 램(RAM), 롬(ROM), 이피롬(EPROM 또는 플래시), 정적 램(SRAM), 시디롬(CD-ROM), 디브이디(DVD), 메모리 스틱, 플로피 디스크, 명령이 저장된 펀치 카드 또는 홈 내 돌출 구조와 같은 기계적 인코딩 기기, 및 이들의 임의의 적절한 조합을 포함한다. 여기서 사용되는 컴퓨터 판독 가능한 저장매체는 무선 전파 또는 다른 자유롭게 전파되는 전자기파, 도파관 또는 다른 전송 매체를 통해 전파되는 전자기파(예를 들어, 광섬유 케이블을 통한 광 펄스), 또는 전선을 통해 전송되는 전기 신호와 같은 순간 신호 자체로 해석되지 않는다.
여기서 설명되는 컴퓨터 판독 가능한 프로그램 명령은 컴퓨터 판독 가능한 저장매체로부터 각 컴퓨팅/처리 기기에 다운로드되거나, 인터넷, 랜, 광역망 및/또는 무선망과 같은 네트워크를 통해 외부 컴퓨터 또는 외부 저장 기기에 다운로드될 수 있다. 네트워크는 구리 전송 케이블, 광섬유 전송, 무선 전송, 라우터, 방화벽, 스위치, 게이트웨이 컴퓨터 및 / 또는 에지 서버를 포함할 수 있다. 각 컴퓨팅/처리 기기 중의 네트워크 어댑터 카드 또는 네트워크 인터페이스는 네트워크로부터 컴퓨터 판독 가능한 프로그램 명령을 수신하고, 각 컴퓨팅/처리 기기 중의 컴퓨터 판독 가능한 저장매체에 저장하도록 컴퓨터 판독 가능한 프로그램 명령을 전달한다.
본 발명의 동작을 수행하기 위한 컴퓨터 프로그램 명령은 어셈블리 명령, 명령 세트 아키텍처 (ISA) 명령, 머신 명령, 머신 관련 명령, 마이크로 코드, 펌웨어 명령, 상태 설정 데이터, 또는 하나 또는 복수 개의 프로그래밍 언어의 임의의 조합으로 작성된 소스 코드 또는 객체 코드일 수 있다. 상기 프로그래밍 언어에는 Smalltalk, C ++ 등과 같은 객체 지향 프로그래밍 언어, 및 "C" 언어 또는 유사한 프로그래밍 언어와 같은 일반적인 절차적 프로그래밍 언어가 포함된다. 컴퓨터 판독 가능한 프로그램 명령은 완전히 사용자의 컴퓨터, 부분적으로 사용자의 컴퓨터에서, 독립된 소프트웨어 패키지로서, 부분적으로 사용자의 컴퓨터, 부분적으로 원격 컴퓨터 또는 완전히 원격 컴퓨터 또는 서버에서 실행될 수 있다. 원격 컴퓨터의 경우, 원격 컴퓨터는 랜(LAN) 또는 광역망(WAN)을 포함한 임의의 종류의 네트워크를 통해 사용자 컴퓨터에 연결되거나 외부 컴퓨터에 연결될 수 있다(예를 들어, 인터넷 서비스 공급자를 이용하여 인터넷을 통해 연결). 일부 실시예에서, 전자 회로는 컴퓨터 판독 가능한 프로그램 명령의 상태 정보를 이용하여 개성화 설정된다. 예를 들어, 프로그래머블 논리 회로, 현장 프로그래머블 게이트 어레이(FPGA) 또는 프로그램머블 논리 어레이 (PLA). 상기 전자 회로는 컴퓨터 판독 가능한 프로그램 명령을 실행하여 본 발명의 각 측면을 구현할 수 있다.
여기서 본 발명의 실시예에 따른 방법, 장치(시스템) 및 컴퓨터 프로그램 제품의 흐름도 및/또는 블록도를 참조하여 본 발명의 각 측면을 설명하였다. 이해할 것은, 흐름도 및/또는 블록도의 각 블록 및 흐름도 및/또는 블록도 중 각 블록의 조합은 모두 컴퓨터 판독 가능한 프로그램 명령에 의해 구현될 수 있다.
이러한 컴퓨터 판독 가능한 프로그램 명령은 범용 컴퓨터, 전용 컴퓨터 또는 다른 프로그램머블 데이터 처리 장치의 프로세서에 제공되어, 이러한 명령이 컴퓨터 또는 다른 프로그램머블 데이터 처리 장치의 프로세서에 의해 실행될 때 흐름도 및/또는 블록도 중 하나 또는 복수 개의 블록에 규정된 기능/동작을 구현하는 장치를 생성하도록 머신을 생성한다. 이러한 컴퓨터 판독 가능한 프로그램 명령은 컴퓨터 판독 가능한 저장매체에 저장될 수도 있다. 이러한 명령은 컴퓨터, 프로그램머블 데이터 처리 장치 및/또는 다른 기기가 특정의 방식으로 동작하도록 한다. 따라서, 명령이 저장된 컴퓨터 판독 가능한 매체는 흐름도 및/또는 블록도 중 하나 또는 복수 개의 블록에 규정된 기능/동작의 각 측면을 구현하는 명령을 포함하는 제품을 포함한다.
컴퓨터 판독 가능한 프로그램 명령은 또한 컴퓨터, 다른 프로그램머블 데이터 처리 장치 또는 다른 기기에 로딩되어, 컴퓨터로 구현되는 과정을 생성하기 위해 컴퓨터, 다른 프로그램머블 데이터 처리 장치 또는 다른 기기에서 일련의 동작 단계가 수행되도록 할 수 있다. 따라서, 컴퓨터, 다른 프로그램머블 데이터 처리 장치 또는 다른 기기에서 실행되는 명령은 흐름도 및/또는 블록도 중 하나 또는 복수 개의 블록에 규정된 기능/동작을 구현할 수 있다.
첨부 도면 중 흐름도 및 블록도는 본 발명의 복수 개의 실시예에 따른 시스템, 방법 및 컴퓨터 프로그램 제품의 가능한 구현의 아키텍처, 기능 및 동작을 도시하였다. 이점에서, 흐름도 또는 블록도 중 각 블록은 하나의 모듈, 프로그램 세그먼트 또는 명령의 일부를 나타낼 수 있다. 상기 모듈, 프로그램 세그먼트 또는 명령의 일부는 규정된 논리 기능을 구현하는 하나 또는 복수 개의 실행 가능한 명령을 포함한다. 일부 대안적인 구현에서, 블록에 표시된 기능은 또한 첨부 도면에 표시된 것과 다른 순서로 발생할 수있다. 예를 들어, 두 개의 연속적인 블록은 실제로 실질적으로 병렬로 실행될 수 있으며, 때로는 관련 기능에 따라 역순으로 실행될 수도 있다. 또한 주의할 것은, 블록도 및/또는 흐름도 중 각 블록, 및 블록도 및/또는 흐름도 중 블록의 조합은 규정된 기능 또는 동작을 수행하는 전용 하드웨어 기반 시스템으로, 또는 전용 하드웨어와 컴퓨터 명령의 조합으로 구현될 수 있다.
해당 컴퓨터 프로그램 제품은 구체적으로 하드웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있다. 선택적인 실시예에서, 상기 컴퓨터 프로그램 제품은 구체적으로 컴퓨터 저장매체로 구현된다. 다른 선택적인 실시예에서, 컴퓨터 프로그램 제품은 구체적으로 소프트웨어 개발 키트(Software Development Kit, SDK)와 같은 소프트웨어 제품으로 구현될 수 있다.
이상, 본 발명의 각 실시예를 설명했지만, 상술한 설명은 예시적이며, 철저하지 않으며, 개시된 각 실시예에 한정되지 않는다. 설명된 각 실시예의 범위 및 정신을 벗어나지 않으면서 많은 수정 및 변형이 통상의 기술자에게 명백할 것이다. 본 명세서에서 사용된 용어는 각 실시예의 원리, 실제 응용 또는 시장에서의 기술적 개선을 가장 잘 설명하거나 본 기술분야의 다른 통상의 기술자가 본 명세서에 개시된 각 실시예를 이해할 수 있도록 선택된다.
본 발명은 객체 검출 방법 및 장치, 전자 기기 및 저장매체에 관한 것이며, 상기 방법은, 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계 - t는 1보다 큰 정수임 - ; 상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계 - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 를 포함하며, 상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것이다.

Claims (17)

  1. 객체 검출 방법으로서,
    객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계 - t는 1보다 큰 정수임 - ;
    상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계 - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 를 포함하며,
    상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것인 것을 특징으로 하는 객체 검출 방법.
  2. 제1항에 있어서,
    상기 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는,
    상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프에 따라, 상기 제t 프레임의 포인트 클라우드 데이터를 객체가 존재하는 제1 영역, 객체가 존재하지 않는 제2 영역, 및 객체의 존재여부가 결정되지 않은 제3 영역으로 구분하는 단계;
    상기 제1 영역 및 상기 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계를 포함하는 것을 특징으로 하는 객체 검출 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 획득하는 단계;
    상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 단계를 더 포함하는 것을 특징으로 하는 객체 검출 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하는 단계를 더 포함하는 것을 특징으로 하는 객체 검출 방법.
  5. 제2항에 있어서,
    상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t-1 프레임의 포인트 클라우드 데이터에 따라, 상기 제t-1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하는 단계를 더 포함하는 것을 특징으로 하는 객체 검출 방법.
  6. 제2항 또는 제5항에 있어서,
    상기 제1 영역 및 상기 제3 영역에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는,
    상기 제1 영역 및 상기 제3 영역의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제1 포인트 클라우드 특징을 얻는 단계;
    상기 제1 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제2 후보 박스를 결정하는 단계;
    각 제2 후보 박스의 신뢰도에 따라, 상기 제2 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하는 단계를 포함하는 것을 특징으로 하는 객체 검출 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계는,
    상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 예측 후보 박스를 각각 확장하여, 각 객체의 제3 후보 박스를 결정하는 단계;
    상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하는 단계;
    상기 제1 후보 박스 및 상기 제1 후보 박스가 위치한 영역에 대응하는 제1 영역 포인트 클라우드 데이터, 및 상기 제3 후보 박스 및 상기 제3 후보 박스가 위치하는 영역에 대응하는 제2 영역 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체에 대해 각각 후보 박스 융합을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 각 객체의 제1 검출 박스를 얻는 단계를 포함하는 것을 특징으로 하는 객체 검출 방법.
  8. 제7항에 있어서,
    상기 제3 후보 박스와 상기 제1 후보 박스를 각각 매칭하여, 각 제1 후보 박스에 대응하는 객체를 결정하는 단계는,
    각 제3 후보 박스와 각 제1 후보 박스 간의 IoU (Intersection over Union)를 각각 결정하는 단계;
    제1 후보 박스와의 IoU가 IoU 임계치보다 크거나 같은 제3 후보 박스를 제1 후보 박스에 매칭되는 제3 후보 박스로 결정하는 단계;
    제1 후보 박스에 매칭되는 제3 후보 박스에 대응하는 객체를 상기 제1 후보 박스에 대응하는 객체로 결정하는 단계를 포함하는 것을 특징으로 하는 객체 검출 방법.
  9. 제3항에 있어서,
    각 제2 검출 결과는 객체의 제2 검출 박스를 포함하고,
    상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 수정하여, 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과를 결정하는 단계는,
    제1 객체의 검출 박스 집합을 결정하는 단계 - 상기 제1 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체이고, 상기 제1 객체의 검출 박스 집합은 상기 제1 객체가 상기 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과에서의 제2 검출 박스, 및 상기 제1 객체가 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과에서의 제1 검출 박스를 포함함 - ;
    상기 제1 객체의 검출 박스 집합 중 어느 한 검출 박스에 대해, 상기 검출 박스 집합 중에서 상기 검출 박스와의 오차가 오차 임계치보다 작거나 같은 검출 박스를 상기 검출 박스의 내점 박스로 결정하는 단계;
    상기 제1 객체의 검출 박스 집합 중에서 내점 박스 수가 제일 많은 제3 검출 박스를 결정하는 단계;
    상기 제3 검출 박스 및 상기 제3 검출 박스의 모든 내점 박스를 융합하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 제1 객체의 제2 검출 박스를 결정하는 단계를 포함하는 것을 특징으로 하는 객체 검출 방법.
  10. 제3항 또는 제9항에 있어서,
    상기 t-1 개 프레임의 포인트 클라우드 데이터의 제2 검출 결과, 및 상기 제t 프레임의 포인트 클라우드 데이터의 제2 검출 결과에 따라, 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 운동 상태를 예측하고, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스를 결정하는 단계를 더 포함하는 것을 특징으로 하는 객체 검출 방법.
  11. 제10항에 있어서,
    상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스, 및 제t 프레임의 포인트 클라우드 데이터에 따라, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 업데이트하여, 상기 제t+1 프레임의 포인트 클라우드 데이터 중 객체의 예측 확률 그래프를 결정하는 단계를 더 포함하는 것을 특징으로 하는 객체 검출 방법.
  12. 제1항에 있어서,
    상기 객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하는 단계는,
    상기 제t 프레임의 포인트 클라우드 데이터에 대해 특징 추출을 수행하여, 제2 포인트 클라우드 특징을 얻는 단계;
    상기 제2 포인트 클라우드 특징에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제4 후보 박스를 결정하는 단계;
    각 제4 후보 박스의 신뢰도에 따라, 상기 제4 후보 박스에서 기설정된 수의 제1 후보 박스를 결정하는 단계를 포함하는 것을 특징으로 하는 객체 검출 방법.
  13. 제1항 내지 제12항 중 어느 한 항에 있어서,
    상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 카테고리를 더 포함하고,
    상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하는 단계는,
    제2 객체의 제1 검출 박스가 위치하는 영역에 대응하는 제3 영역 포인트 클라우드 데이터에 따라, 상기 제2 객체를 분류하여 상기 제2 객체의 카테고리를 결정하는 단계 - 상기 제2 객체는 상기 제t 프레임의 포인트 클라우드 데이터 중 어느 한 객체임 - 를 포함하는 것을 특징으로 하는 객체 검출 방법.
  14. 제1항 내지 제13항 중 어느 한 항에 있어서,
    상기 객체 장면은 실내 장면을 포함하고, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체는 물체를 포함하며, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스는 3 차원 영역 박스를 포함하는 것을 특징으로 하는 객체 검출 방법.
  15. 객체 검출 장치로서,
    객체 장면의 제t 프레임의 포인트 클라우드 데이터에 대해 객체 검출을 수행하여, 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 후보 박스를 결정하도록 구성되는 제1 검출 모듈 - t는 1보다 큰 정수임 - ;
    상기 제t 프레임의 포인트 클라우드 데이터, 상기 제1 후보 박스 및 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 예측 후보 박스에 따라, 상기 제t 프레임의 포인트 클라우드 데이터의 제1 검출 결과를 결정하도록 구성되는 제2 검출 모듈 - 상기 제1 검출 결과는 상기 제t 프레임의 포인트 클라우드 데이터 중 객체의 제1 검출 박스를 포함함 - 을 포함하며,
    상기 예측 후보 박스는 상기 제t 프레임의 포인트 클라우드 데이터 이전의 t-1 개 프레임의 포인트 클라우드 데이터의 검출 결과에 따라 예측하여 얻어진 것인 것을 특징으로 하는 객체 검출 장치.
  16. 전자 기기로서,
    프로세서;
    프로세서가 실행 가능한 명령을 저장하는 메모리를 포함하되,
    상기 프로세서는 상기 메모리에 저장된 명령을 호출하여 제1항 내지 제14항 중 어느 한 항의 방법을 수행하도록 구성되는 것을 특징으로 하는 전자 기기.
  17. 컴퓨터 판독 가능한 저장매체로서,
    컴퓨터 프로그램 명령이 저장되고, 상기 컴퓨터 프로그램 명령은 프로세서에 의해 실행되면 제1항 내지 제14항 중 어느 한 항의 방법을 구현하는 것을 특징으로 하는 컴퓨터 판독 가능한 저장매체.
KR1020227003199A 2020-07-28 2021-03-01 객체 검출 방법 및 장치, 전자 기기 및 저장매체 KR20220027202A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010738105.2A CN111881827B (zh) 2020-07-28 2020-07-28 目标检测方法及装置、电子设备和存储介质
CN202010738105.2 2020-07-28
PCT/CN2021/078481 WO2022021872A1 (zh) 2020-07-28 2021-03-01 目标检测方法及装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
KR20220027202A true KR20220027202A (ko) 2022-03-07

Family

ID=73200364

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227003199A KR20220027202A (ko) 2020-07-28 2021-03-01 객체 검출 방법 및 장치, 전자 기기 및 저장매체

Country Status (5)

Country Link
JP (1) JP2022546201A (ko)
KR (1) KR20220027202A (ko)
CN (1) CN111881827B (ko)
TW (1) TWI758205B (ko)
WO (1) WO2022021872A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111881827B (zh) * 2020-07-28 2022-04-26 浙江商汤科技开发有限公司 目标检测方法及装置、电子设备和存储介质
CN112529943B (zh) * 2020-12-22 2024-01-16 深圳市优必选科技股份有限公司 一种物体检测方法、物体检测装置及智能设备
CN113420725B (zh) * 2021-08-20 2021-12-31 天津所托瑞安汽车科技有限公司 Bsd产品的漏报场景识别方法、设备、系统和存储介质
CN116052155A (zh) * 2021-10-27 2023-05-02 华为技术有限公司 一种点云数据处理方法及系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6559535B2 (ja) * 2015-10-22 2019-08-14 株式会社東芝 障害物マップ生成装置、その方法、及び、そのプログラム
EP3252658B1 (en) * 2016-05-30 2021-08-11 Kabushiki Kaisha Toshiba Information processing apparatus and information processing method
CN109188457B (zh) * 2018-09-07 2021-06-11 百度在线网络技术(北京)有限公司 物体检测框的生成方法、装置、设备、存储介质及车辆
CN109325967B (zh) * 2018-09-14 2023-04-07 腾讯科技(深圳)有限公司 目标跟踪方法、装置、介质以及设备
JP7052663B2 (ja) * 2018-09-26 2022-04-12 トヨタ自動車株式会社 物体検出装置、物体検出方法及び物体検出用コンピュータプログラム
CN109597087B (zh) * 2018-11-15 2022-07-01 天津大学 一种基于点云数据的3d目标检测方法
CN109684920B (zh) * 2018-11-19 2020-12-11 腾讯科技(深圳)有限公司 物体关键点的定位方法、图像处理方法、装置及存储介质
US11095900B2 (en) * 2018-12-19 2021-08-17 Sony Group Corporation Point cloud coding structure
CN110688905B (zh) * 2019-08-30 2023-04-18 中山大学 一种基于关键帧的三维物体检测与跟踪方法
CN110728210A (zh) * 2019-09-25 2020-01-24 上海交通大学 一种三维点云数据的半监督目标标注方法和系统
CN111427979B (zh) * 2020-01-15 2021-12-21 深圳市镭神智能系统有限公司 基于激光雷达的动态地图构建方法、系统及介质
CN111308993B (zh) * 2020-02-13 2022-04-01 青岛联合创智科技有限公司 一种基于单目视觉的人体目标跟随方法
CN111881827B (zh) * 2020-07-28 2022-04-26 浙江商汤科技开发有限公司 目标检测方法及装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN111881827B (zh) 2022-04-26
JP2022546201A (ja) 2022-11-04
TWI758205B (zh) 2022-03-11
TW202205139A (zh) 2022-02-01
CN111881827A (zh) 2020-11-03
WO2022021872A1 (zh) 2022-02-03

Similar Documents

Publication Publication Date Title
KR102593020B1 (ko) 이미지 처리 방법 및 장치, 전자 기기 및 기억 매체
CN109829501B (zh) 图像处理方法及装置、电子设备和存储介质
TWI766286B (zh) 圖像處理方法及圖像處理裝置、電子設備和電腦可讀儲存媒介
KR102436593B1 (ko) 이미지 처리 방법 및 장치, 전자 기기와 기억 매체
JP7171884B2 (ja) 歩行者認識方法及び装置
CN110287874B (zh) 目标追踪方法及装置、电子设备和存储介质
WO2021164469A1 (zh) 目标对象的检测方法、装置、设备和存储介质
KR20220027202A (ko) 객체 검출 방법 및 장치, 전자 기기 및 저장매체
WO2021051650A1 (zh) 人脸和人手关联检测方法及装置、电子设备和存储介质
US11301726B2 (en) Anchor determination method and apparatus, electronic device, and storage medium
WO2021051857A1 (zh) 目标对象匹配方法及装置、电子设备和存储介质
TWI767596B (zh) 場景深度和相機運動預測方法、電子設備和電腦可讀儲存介質
US11288531B2 (en) Image processing method and apparatus, electronic device, and storage medium
JP2022522551A (ja) 画像処理方法及び装置、電子機器並びに記憶媒体
CN111104920A (zh) 视频处理方法及装置、电子设备和存储介质
CN111680646B (zh) 动作检测方法及装置、电子设备和存储介质
US20220383517A1 (en) Method and device for target tracking, and storage medium
CN112906484A (zh) 一种视频帧处理方法及装置、电子设备和存储介质
WO2022141969A1 (zh) 图像分割方法及装置、电子设备、存储介质和程序
CN111832338A (zh) 对象检测方法及装置、电子设备和存储介质
WO2022110801A1 (zh) 数据处理方法及装置、电子设备和存储介质
CN113538519B (zh) 目标追踪方法及装置、电子设备和存储介质
CN113807369A (zh) 目标重识别方法及装置、电子设备和存储介质