KR20230052208A - 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템 - Google Patents

학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템 Download PDF

Info

Publication number
KR20230052208A
KR20230052208A KR1020220100621A KR20220100621A KR20230052208A KR 20230052208 A KR20230052208 A KR 20230052208A KR 1020220100621 A KR1020220100621 A KR 1020220100621A KR 20220100621 A KR20220100621 A KR 20220100621A KR 20230052208 A KR20230052208 A KR 20230052208A
Authority
KR
South Korea
Prior art keywords
bounding box
target
obtaining
target object
image
Prior art date
Application number
KR1020220100621A
Other languages
English (en)
Other versions
KR102639637B1 (ko
Inventor
강창범
김성웅
Original Assignee
주식회사 에너자이(ENERZAi)
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
Priority claimed from KR1020210134610A external-priority patent/KR102433287B1/ko
Application filed by 주식회사 에너자이(ENERZAi) filed Critical 주식회사 에너자이(ENERZAi)
Priority to KR1020220100621A priority Critical patent/KR102639637B1/ko
Priority to PCT/KR2022/015177 priority patent/WO2023063661A1/ko
Publication of KR20230052208A publication Critical patent/KR20230052208A/ko
Application granted granted Critical
Publication of KR102639637B1 publication Critical patent/KR102639637B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • 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/72Data preparation, e.g. statistical preprocessing of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10032Satellite or aerial image; Remote sensing
    • G06T2207/10044Radar image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

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

Abstract

본 출원의 일 실시예에 따른 학습 세트 생성 방법은, 제1 카메라로부터 촬영된 제1 영상과 제2 카메라로부터 촬영된 제2 영상을 획득하는 단계; 상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하는 단계; 상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제2 객체 정보를 획득하는 단계; 상기 제1 객체 정보 및 상기 제2 객체 정보에 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계; 상기 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계-상기 센싱 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-; 및 상기 센싱 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계;를 포함한다.

Description

학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템{METHOD FOR, DEVICE FOR, AND SYSTEM FOR GENERATING AN LEARNING SET}
본 출원은 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템에 관한 것이다. 구체적으로 본 출원은 레이더(Radar) 데이터 또는 라이더(Lidar) 데이터를 포함하는 센싱 데이터로부터 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템에 관한 것이다.
인공 지능 기술이 발전하면서 다양한 산업 분야에 이용되기 위한 인공 지능 모델에 대한 연구와 개발이 증가되고 있다. 특히 자동차 산업과 관련하여 다양한 센서(예컨대, 레이더 센서, 라이더 센서 등)를 이용하여 측정한 데이터에 기반하여 객체를 인식하고, 객체 인식 결과에 기반하여 자동차를 자동적으로 제어하는 인공 지능 모델에 대한 관심이 높아지고 있다.
인공 지능 모델을 훈련시키기 위하여 가장 어려우면서 중요한 작업 중 하나는 인공 지능 모델을 학습시키기 위한 학습 세트에 대한 라벨링 작업이다. 종래에는 레이더 센서 또는 라이더 센서로부터 획득된 센싱 데이터에 포함된 포인트 클라우드(point cloud)에 전문가가 수작업으로 객체 정보를 할당하거나 어노테이션(annotation)하는 방식을 채택하였다. 다만, 종래의 방식은 학습 세트를 준비하는 데 상당한 시간과 비용이 소요된다는 문제가 존재하였다. 또한, 레이더 센서는 센서의 특성 상 해상도(resolution)가 상대적으로 낮아 레이더 데이터에 포함된 포인트 클라우드에 기초하여 객체의 정확한 형태를 유추하기 어려워 라벨링 작업이 불가능하거나, 라벨링을 수작업으로 하더라도 정확도가 낮다는 제약이 존재하였다.
따라서, 센싱 데이터로부터 학습 세트를 자동적으로 생성하는 학습 세트 생성 방법, 장치 및 시스템의 개발이 요구된다.
본 발명이 해결하고자 하는 일 과제는, 레이더 센서 또는 라이더 센서로부터 획득한 센싱 데이터로부터 객체를 검출하는 신경망 모델을 훈련시키기 위한 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템을 제공하는 것이다.
본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 출원의 일 실시예에 따른 학습 세트 생성 방법은, 적어도 2 이상의 카메라에 대하여 캘리브레이션을 수행하는 단계; 제1 카메라로부터 촬영된 제1 영상과 제2 카메라로부터 촬영된 제2 영상을 획득하는 단계; 상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하는 단계; 상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제2 객체 정보를 획득하는 단계; 상기 제1 객체 정보 및 상기 제2 객체 정보에 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계; 상기 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계-상기 센싱 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-; 및 상기 센싱 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따른 학습 세트 생성 장치는, 제1 카메라, 제2 카메라 및 센서 중 적어도 하나와 통신하는 송수신부; 및 상기 제1 카메라 및 상기 제2 카메라를 통하여 영상 데이터를 획득하고, 상기 센서를 통하여 센싱 데이터를 획득하고, 상기 영상 데이터 및 상기 센싱 데이터에 기반하여 학습 세트를 생성하는 컨트롤러;를 포함하되, 상기 컨트롤러는, 상기 제1 카메라로부터 촬영된 제1 영상과 상기 제2 카메라로부터 촬영된 제2 영상을 획득하고, 상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하고, 상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보에 기초하여 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하고, 상기 대상 바운딩박스에 대응되는 센서 데이터-상기 센서 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-;를 획득하고, 상기 센서 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하도록 구성될 수 있다.
본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 출원의 실시예에 따른 학습 세트 생성 방법, 장치 및 시스템에 의하면, 센싱 데이터에 대한 라벨링 작업에 영상 데이터를 연계시킴으로써 학습 세트의 준비에 소요되는 시간 및 비용을 절약할 수 있다.
본 출원의 실시예에 따른 학습 세트 생성 방법, 장치 및 시스템에 의하면, 객체의 특성 정보 간의 유사도 또는 객체의 랜드마크를 이용하여 대상 객체와 관련된 바운딩박스를 획득함으로써, 보다 정교한 학습 세트를 생성할 수 있다.
본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 본 출원의 일 실시예에 따른 학습 세트 생성 시스템의 개략도이다.
도 2는 본 출원의 일 실시예에 따른 학습 세트 생성 시스템의 동작들을 나타낸 도면이다.
도 3은 본 출원의 일 실시예에 따라 학습 세트를 생성하는 방법을 나타낸 순서도이다.
도 4는 본 출원의 일 실시예에 따른 적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계를 구체화한 순서도이다.
도 5는 본 출원의 일 실시예에 따른 카메라의 내부 파라미터에 대한 캘리브레이션을 수행하는 단계를 구체화한 순서도이다.
도 6은 본 출원의 일 실시예에 따른 제1 캘리브레이션 기준 객체의 일 예를 도시한 도면이다.
도 7은 본 출원의 일 실시예에 따른 카메라의 외부 파라미터에 대한 캘리브레이션을 수행하는 단계를 구체화한 순서도이다.
도 8은 본 출원의 일 실시예에 따른 제2 캘리브레이션 기준 객체를 이용하여 카메라 캘리브레이션을 수행하는 일 양상을 도시한 도면이다.
도 9는 본 출원의 일 실시예에 따른 대상 바운딩박스를 획득하는 단계를 구체화한 순서도이다.
도 10은 본 출원의 일 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계를 구체화한 순서도이다.
도 11은 본 출원의 일 실시예에 따른 3차원의 대상 바운딩박스를 획득하는 일 양상을 도시한 도면이다.
도 12는 본 출원의 일 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계를 구체화한 순서도이다.
도 13은 본 출원의 일 실시예에 따른 3차원의 대상 바운딩박스를 결정하는 일 양상을 도시한 도면이다.
도 14는 본 출원의 다른 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계를 구체화한 순서도이다.
본 출원의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 출원은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.
명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명하며, 이에 대한 중복되는 설명은 생략하기로 한다.
본 출원과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 출원의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 이하의 실시예에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타낸 것으로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
어떤 실시예가 달리 구현 가능한 경우에 특정한 프로세스의 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 프로세스가 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.
이하의 실시예에서, 구성 요소 등이 연결되었다고 할 때, 구성 요소들이 직접적으로 연결된 경우뿐만 아니라 구성요소들 중간에 구성 요소들이 개재되어 간접적으로 연결된 경우도 포함한다.
예컨대, 본 명세서에서 구성 요소 등이 전기적으로 연결되었다고 할 때, 구성 요소 등이 직접 전기적으로 연결된 경우뿐만 아니라, 그 중간에 구성 요소 등이 개재되어 간접적으로 전기적 연결된 경우도 포함한다.
본 출원의 일 실시예에 따른 학습 세트 생성 방법은, 적어도 2 이상의 카메라에 대하여 캘리브레이션을 수행하는 단계; 제1 카메라로부터 촬영된 제1 영상과 제2 카메라로부터 촬영된 제2 영상을 획득하는 단계; 상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하는 단계; 상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제2 객체 정보를 획득하는 단계; 상기 제1 객체 정보 및 상기 제2 객체 정보에 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계; 상기 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계-상기 센싱 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-; 및 상기 센싱 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계는, 상기 제1 객체 정보에 포함된 제1 바운딩박스를 3차원 공간좌표에 리버스 투영(Revere project)하여 제1 투영 체적을 획득하는 단계; 상기 제2 객체 정보에 포함된 제2 바운딩박스를 3차원 공간좌표에 리버스 투영(Revere project)하여 제2 투영 체적을 획득하는 단계; 및 상기 제1 투영 체적 및 상기 제2 투영 체적에 기초하여 상기 제1 투영 체적과 상기 제2 투영 체적 간의 교차 체적을 획득하고, 상기 교차 체적에 기초하여 상기 대상 객체와 관련된 상기 대상 바운딩박스를 획득하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 대상 객체와 관련된 상기 대상 바운딩박스를 획득하는 단계는, 상기 제1 투영 체적을 구성하는 적어도 하나의 제1 평면을 획득하는 단계; 상기 제2 투영 체적을 구성하는 적어도 하나의 상기 제2 평면을 획득하는 단계; 및 상기 제1 평면 및 상기 제2 평면의 공통 평면을 획득하고, 상기 공통 평면에 기초하여 상기 대상 바운딩박스를 획득하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계는, 상기 제1 투영 체적 및 상기 제2 투영 체적에 기초하여 적어도 2 이상의 3차원의 임시 바운딩박스들을 획득하는 단계; 상기 제1 바운딩박스와 관련된 제1 특성 정보를 획득하는 단계; 상기 제2 바운딩박스와 관련된 제2 특성 정보를 획득하는 단계; 상기 제1 특성 정보와 상기 제2 특성 정보의 유사도에 기초하여 상기 임시 바운딩박스에 매칭 점수를 할당하는 단계; 및 상기 매칭 점수에 기초하여 상기 임시 바운딩박스들 중에서 상기 대상 바운딩박스를 결정하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계는, 상기 제1 객체 정보에 포함된 상기 대상 객체와 관련된 제1 셀 정보를 3차원 공간좌표에 투영하여 제1 투영 직선을 획득하는 단계; 상기 제2 객체 정보에 포함된 상기 대상 객체와 관련된 제2 셀 정보를 3차원 공간좌표에 투영하여 제1 투영 직선을 획득하는 단계; 및 상기 제1 투영 직선 및 상기 제2 투영 직선에 기초하여 상기 대상 객체와 관련된 3차원 대상 바운딩박스를 획득하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 제1 투영 직선 및 상기 제2 투영 직선에 기초하여 상기 대상 객체와 관련된 3차원 대상 바운딩박스를 획득하는 단계는, 상기 제1 투영 직선 및 상기 제2 투영 직선에 기초하여 제1 임시 바운딩박스 및 제2 임시 바운딩박스를 포함하는 적어도 2 이상의 3차원의 임시 바운딩박스들을 획득하는 단계; 상기 제1 투영 직선 및 상기 제2 투영 직선 간의 거리를 연산하는 단계; 상기 연산된 거리에 기초하여 상기 제1 임시 바운딩박스에 제1 점수 및 상기 제2 임시 바운딩박스에 제2 점수를 할당하는 단계; 및 상기 제1 점수 및 상기 제2 점수를 비교하여 상기 제1 임시 바운딩박스 및 상기 제2 임시 바운딩박스 중에서 적어도 하나를 대상 바운딩박스로 결정하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 적어도 2 이상의 카메라에 대하여 캘리브레이션을 수행하는 단계는, 적어도 2 이상의 카메라의 내부 파라미터의 캘리브레이션을 수행하는 단계를 포함하되, 상기 적어도 2 이상의 카메라의 내부 파라미터의 캘리브레이션을 수행하는 단계는, 상기 카메라를 통하여 제1 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계; 상기 이미지에 기초하여 상기 제1 캘리브레이션 기준 객체와 관련된 제1 픽셀 세트를 획득하는 단계; 상기 카메라의 좌표계 정보를 획득하는 단계; 및 상기 좌표계 정보 및 상기 제1 픽셀 세트에 기초하여 상기 카메라의 내부 파라미터(intrinsic parameter)를 보정하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 적어도 2 이상의 카메라에 대하여 캘리브레이션을 수행하는 단계는, 적어도 2 이상의 카메라의 외부 파라미터의 캘리브레이션을 수행하는 단계를 포함하되, 상기 적어도 2 이상의 카메라의 외부 파라미터의 캘리브레이션을 수행하는 단계는, 제2 캘리브레이션 기준 객체에 대한 기준 좌표 정보를 획득하는 단계-상기 기준 좌표 정보는 라이더 센서 및 레이더 센서 중 적어도 하나의 센서 기반 좌표계와 관련됨-; 상기 카메라를 통하여 상기 제2 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계; 상기 이미지에 기초하여 상기 제2 캘리브레이션 기준 객체와 관련된 제2 픽셀 세트를 획득하는 단계; 상기 기준 좌표 정보 및 상기 제2 픽셀 세트에 기초하여 좌표 쌍(pair)을 획득하는 단계; 및 상기 좌표 쌍에 기초하여 상기 카메라의 외부 파라미터에 대한 보정을 수행하는 단계;를 포함할 수 있다.
본 출원의 일 실시예에 따르면, 상기 학습 세트 생성 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공될 수 있다.
본 출원의 일 실시예에 따른 학습 세트 생성 장치는, 제1 카메라, 제2 카메라 및 센서 중 적어도 하나와 통신하는 송수신부; 및 상기 제1 카메라 및 상기 제2 카메라를 통하여 영상 데이터를 획득하고, 상기 센서를 통하여 센싱 데이터를 획득하고, 상기 영상 데이터 및 상기 센싱 데이터에 기반하여 학습 세트를 생성하는 컨트롤러;를 포함하되, 상기 컨트롤러는, 상기 제1 카메라로부터 촬영된 제1 영상과 상기 제2 카메라로부터 촬영된 제2 영상을 획득하고, 상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하고, 상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보에 기초하여 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하고, 상기 대상 바운딩박스에 대응되는 센서 데이터-상기 센서 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-;를 획득하고, 상기 센서 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하도록 구성될 수 있다.
이하에서는 도 1 내지 도 13을 참고하여 본 출원의 학습 세트 생성 방법, 학습 세트 생성 장치 및 학습 세트 생성 시스템에 관하여 설명한다.
도 1은 본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 개략도이다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)은 적어도 하나의 카메라(예컨대, 제1 카메라(110) 및 제2 카메라(120)), 센서(200) 및 서버(1000, 혹은 학습 세트 생성 장치)를 포함할 수 있다.
적어도 하나의 카메라는 대상 객체를 촬영한 영상을 획득하고, 임의의 송수신부를 통하여 영상을 서버(1000)로 송신할 수 있다. 일 예로, 제1 카메라(110)는 대상 객체에 대하여 제1 위치에 배치되어 제1 각도(혹은 제1 기울기)로 대상 객체와 관련된 제1 영상을 획득할 수 있다. 다른 예로, 제2 카메라(120)는 대상 객체에 대하여 제1 위치와는 상이한 제2 위치(또는 제1 위치와는 인접한 제2 위치)에 배치되어 제2 각도(혹은 제2 기울기)로 대상 객체와 관련된 제2 영상을 획득할 수 있다.
한편, 도 1에서는 학습 세트 생성 시스템(10)이 제1 카메라(110) 및 제2 카메라(120)를 포함하는 것으로 도시하였다. 다만 이는 설명의 편의를 위한 예시에 불과하며, 학습 세트 생성 시스템(10)은 임의의 적절한 수의 카메라를 포함하도록 구성될 수 있다. 예컨대, 학습 세트 생성 시스템(10)은 단일의 카메라를 포함할 수 있다. 다른 예를 들어, 학습 세트 생성 시스템(10)은 적어도 2 이상의 카메라를 포함할 수 있다.
센서(200)는 대상 객체와 관련된 센싱 데이터를 획득하고, 임의의 송수신부를 통하여 센싱 데이터를 서버(1000)로 송신할 수 있다. 일 예로, 센서(200)는 레이더 센서(Radar sensor) 및/또는 라이더 센서(Lidar sensor) 중 적어도 하나일 수 있다. 다만, 이는 예시에 불과하며, 센서(200)는 레이더 센서(Radar sensor) 및/또는 라이더 센서(Lidar sensor) 이외의 객체를 검출하기 위한 임의의 센서일 수 있다.
한편, 센서(200)는 대상 객체에 대하여 제3 위치에 배치되어 대상 객체에 대한 센싱 데이터를 획득할 수 있다. 여기서, 제3 위치는 제1 위치 및/또는 제2 위치와는 인접하거나 상이할 수 있다.
서버(1000) 혹은 학습 세트 생성 장치(이하에서는 서버(1000)로 지칭)는 송수신부(1100), 메모리(1200) 및 컨트롤러(1300)를 포함할 수 있다.
서버(1000)의 송수신부(1100)는 적어도 하나의 카메라(110, 120) 및 센서(200)를 포함한 임의의 외부 기기와 통신을 수행할 수 있다. 예컨대, 서버(1000)는, 송수신부(1100)를 통해, 적어도 하나의 카메라(110, 120)로부터 영상 데이터를 획득할 수 있다. 또한, 서버(1000)는 송수신부(1100)를 통해, 센서(200)로부터 센싱 데이터를 획득할 수 있다.
서버(1000)는, 송수신부(1100)를 통해 네트워크에 접속하여 각종 데이터를 송수신할 수 있다. 송수신부(1100)는 크게 유선 타입과 무선 타입을 포함할 수 있다. 유선 타입과 무선 타입은 각각의 장단점을 가지므로, 경우에 따라서 서버(1000)에는 유선 타입과 무선 타입이 동시에 마련될 수도 있다. 여기서, 무선 타입의 경우에는 주로 와이파이(Wi-Fi) 같은 WLAN(Wireless Local Area Network) 계열의 통신 방식을 이용할 수 있다. 또는, 무선 타입의 경우에는 셀룰러 통신, 예컨대, LTE, 5G 계열의 통신 방식을 이용할 수 있다. 다만, 무선 통신 프로토콜이 상술한 예시에 제한되는 것은 아니며, 임의의 적절한 무선 타입의 통신 방식을 이용하는 것도 가능하다. 유선 타입의 경우에는 LAN(Local Area Network)이나 USB(Universal Serial Bus) 통신이 대표적인 예이며 그 외의 다른 방식도 가능하다.
서버(1000)의 메모리(1200)는 각종 정보를 저장할 수 있다. 메모리(1200)에는 각종 데이터가 임시적으로 또는 반영구적으로 저장될 수 있다. 메모리(1200)의 예로는 하드 디스크(HDD: Hard Disk Drive), SSD(Solid State Drive), 플래쉬 메모리(flash memory), 롬(ROM: Read-Only Memory), 램(RAM: Random Access Memory) 등이 있을 수 있다. 메모리(1200)는 서버(1000)에 내장되는 형태나 탈부착 가능한 형태로 제공될 수 있다. 메모리(1200)에는 서버(1000)를 구동하기 위한 운용 프로그램(OS: Operating System)이나 서버(1000)의 각 구성을 동작시키기 위한 프로그램을 비롯해 서버(1000)의 동작에 필요한 각종 데이터가 저장될 수 있다.
컨트롤러(1300, 혹은 프로세서)는 서버(1000)의 전반적인 동작을 제어할 수 있다. 예컨대, 컨트롤러(1300)는 후술할 카메라(110, 120)의 내부 파라미터 또는 외부 파라미터를 캘리브레이션(calibration)하는 동작, 카메라(110, 120)로부터 영상을 획득하거나 센서(200)로부터 센싱 데이터를 획득하는 동작, 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 객체 정보를 획득하는 동작, 객체 정보에 기초하여 3차원의 대상 바운딩박스를 획득하는 동작, 및 대상 바운딩박스와 센싱 데이터에 기초하여 학습 세트를 생성하는 동작 등 서버(1000)의 전반적인 동작을 제어할 수 있다. 구체적으로 컨트롤러(1300)는 메모리(1200)로부터 서버(1000)의 전반적인 동작을 위한 프로그램을 로딩하여 실행할 수 있다. 컨트롤러(1300)는 하드웨어나 소프트웨어 또는 이들의 조합에 따라 AP(Application Processor), CPU(Central Processing Unit), MCU(Microcontroller Unit)나 이와 유사한 장치로 구현될 수 있다. 이때, 하드웨어적으로는 전기적 신호를 처리하여 제어 기능을 수행하는 전자 회로 형태로 제공될 수 있으며, 소프트웨어적으로는 하드웨어적 회로를 구동시키는 프로그램이나 코드 형태로 제공될 수 있다.
이하에서는 도 2 내지 도 13을 참고하여 본 출원의 실시예들에 따른 학습 세트 생성 시스템(10)의 동작을 구체적으로 서술한다.
도 2는 본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 동작들을 나타낸 도면이다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 적어도 하나의 카메라(예, 제1 카메라(110) 또는 제2 카메라(120))의 내부 파라미터 및/또는 외부 파라미터를 보정하는 동작을 수행할 수 있다.
일 예로, 서버(1000)는 적어도 하나의 카메라를 통하여 제1 캘리브레이션 기준 객체에 대한 이미지를 획득하고, 제1 캘리브레이션 기준 객체에 대한 이미지에 포함된 특징점에 기초하여 제1 캘리브레이션 기준 객체와 관련된 특징점의 픽셀 좌표 정보를 획득할 수 있다. 또한, 서버(1000)는 카메라의 좌표계 정보를 획득할 수 있다. 이때, 서버(1000)는 카메라의 좌표계 정보 및 제1 캘리브레이션 기준 객체와 관련된 픽셀 좌표 정보에 기초하여 적어도 하나의 카메라의 내부 파라미터를 보정하는 동작을 수행할 수 있다.
다른 예로, 서버(1000)는 제2 캘리브레이션 기준 객체에 대한 기준 좌표 정보를 획득할 수 있다. 여기서, 기준 좌표 정보란, 레이더(Radar) 센서 또는 라이더(Lidar) 센서 등을 포함하여 센서 기반 좌표계와 관련된 좌표 정보를 포괄하는 의미일 수 있다. 또한 서버(1000)는 적어도 하나의 카메라를 통하여 제2 캘리브레이션 기준 객체에 대한 이미지에 포함된 특징점을 획득하고, 제2 캘리브레이션 기준 객체와 관련된 특징점의 픽셀 좌표 정보를 획득할 수 있다. 또한, 서버(1000)는 기준 좌표 정보 및 픽셀 좌표 정보를 매칭시켜 좌표 쌍을 획득하고, 좌표 쌍에 기초하여 카메라의 외부 파라미터를 보정하는 동작을 수행할 수 있다.
카메라 캘리브레이션과 관련된 학습 세트 생성 시스템(10)의 동작에 대하여는 도 4 내지 도 8에서 구체적으로 서술한다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 적어도 하나의 카메라(예, 제1 카메라(110) 또는 제2 카메라(120))로부터 영상을 획득하거나 센서(200)로부터 센싱 데이터를 획득할 수 있다. 예컨대, 서버(1000)는 카메라를 통하여 대상 객체가 포함된 영상을 획득할 수 있다. 또한, 서버(1000)는 센서(200)를 통하여 대상 객체와 관련된 데이터를 측정한 센싱 데이터를 획득할 수 있다.
한편 도 2에서는 도시하지 않았으나, 본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 센서(200)를 통하여 프레임 정보(예, 프레임 수 정보, 프레임 시간 정보), 메타 정보 등을 포함한 임의의 데이터를 획득할 수 있다. 여기서, 서버(1000)는 프레임 정보, 메타 정보 등에 기초하여 센싱 데이터와 카메라를 통하여 획득한 영상 데이터 간의 싱크(sync)를 맞추는 동작을 수행할 수 있다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 카메라를 통하여 획득한 영상의 프레임별로 대상 객체를 검출(혹은 인식)하고, 대상 객체와 관련된 객체 정보를 획득하는 동작을 수행할 수 있다. 여기서, 대상 객체와 관련된 객체 정보는 대상 객체와 관련된 2차원의 바운딩박스에 대한 정보 및/또는 대상 객체의 랜드마크(예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발 등)에 대응되는 영상 정보(예, 영상 좌표 정보 등)를 포함하여 대상 객체와 관련된 임의의 영상 정보를 포함할 수 있다.
일 실시예에 따르면, 서버(1000)는 제1 카메라(110)로부터 획득한 제1 영상으로부터 대상 객체를 검출하고 대상 객체 검출 결과에 기초하여 대상 객체와 관련된 2차원의 제1 바운딩박스를 연산할 수 있다. 또한, 서버(1000)는 제2 카메라(120)로부터 획득한 제2 영상으로부터 대상 객체를 검출하고 대상 객체 검출 결과에 기초하여 대상 객체와 관련된 2차원의 제2 바운딩박스를 획득할 수 있다. 예컨대, 서버(1000)는 딥 러닝 기법(예컨대, yolo, yoloV3, ssd, Retinanet 등)을 활용하여 영상으로부터 대상 객체를 검출하고 대상 객체에 해당하는 영역의 마스크(mask)를 획득할 수 있다. 또한 서버(1000)는 마스크에 기초하여 대상 객체와 관련된 바운딩박스를 연산하는 동작을 수행할 수 있다. 다른 예로, 서버(1000)는 대상 객체 검출의 성능을 높이기 위한 임의의 기법을 활용할 수 있다. 예컨대, 서버(1000)는 객체 검출 기법에 칼만 필터(Kalman filter)를 추가한 Simple Online and Realtime Tracking(이하, SORT) 알고리즘을 활용하여 대상 객체 검출의 정확도를 높이고 사물의 위치를 추적하는 연산을 수행하도록 구현될 수 있다.
다른 실시예에 따르면, 서버(1000)는 제1 카메라(110)로부터 획득한 제1 영상으로부터 대상 객체를 검출하고, 검출된 대상 객체에 대하여 포즈 추정(pose estimation)을 수행하여 대상 객체의 랜드마크와 관련된 객체 정보(예, 제1 셀 정보)를 획득할 수 있다. 또한 서버(1000)는 제2 카메라(120)로부터 획득한 제2 영상으로부터 대상 객체를 검출하고, 검출된 대상 객체에 대하여 포즈 추정(pose estimation)을 수행하여 대상 객체의 랜드마크와 관련된 객체 정보(예, 제2 셀 정보)를 획득할 수 있다. 예컨대, 서버(1000)는 딥 러닝 기법(예, AlphaPose 등)을 활용하여 대상 객체와 관련된 2차원 바운딩박스 내에서 대상 객체의 랜드마크와 관련된 영상 정보를 추출할 수 있다.
다만 상술한 객체 검출 기법과 포즈 추정 기법은 예시에 불과하며, 서버(1000)는 임의의 적절한 방법을 활용하여 영상으로부터 대상 객체를 검출하도록 구현될 수 있을 것이다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 대상 객체와 관련된 객체 정보(예, 바운딩박스 또는 대상 객체의 랜드마크에 대응되는 영상 정보 등)에 기반하여 3차원의 대상 바운딩박스를 획득하는 동작을 수행할 수 있다.
일 예로, 서버(1000)는 제1 영상의 대상 객체와 관련된 제1 바운딩박스와 제2 영상의 대상 객체와 관련된 제2 바운딩박스에 기초하여 대상 객체와 관련된 3차원 대상 바운딩박스를 연산하는 동작을 수행할 수 있다. 구체적으로 서버(1000)는 제1 바운딩박스를 3차원 공간좌표에 리버스 투영하여 대상 객체와 관련된 제1 투영 체적을 획득할 수 있다. 또한, 서버(1000)는 제2 바운딩박스를 3차원 공간좌표에 리버스 투영하여 대상 객체와 관련된 제2 투영 체적을 획득할 수 있다. 이때, 서버(1000)는 제1 투영 체적과 제2 투영 체적에 기초하여 교차 체적(Intersection volume)을 획득하고, 교차 체적에 기반하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득할 수 있다.
다른 예로, 서버(1000)는 대상 객체의 랜드마크(예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발 등)에 대응되는 제1 영상의 셀 정보(예, 셀 좌표 등)와 제2 영상의 셀 정보(예, 셀 좌표 등)에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 연산하는 동작을 수행할 수 있다. 구체적으로 서버(1000)는 대상 객체의 랜드마크에 대응되는 제1 영상의 제1 셀 좌표를 3차원 공간좌표에 투영하여 제1 투영 직선을 획득할 수 있다. 또한 서버(1000)는 대상 객체의 랜드마크에 대응되는 제2 영상의 제2 셀 좌표를 3차원 공간좌표에 투영하여 제2 투영 직선을 획득할 수 있다. 이때, 서버(1000)는 제1 투영 직선과 제2 투영 직선 간의 교차점을 연산하고, 적어도 하나의 대상 객체의 랜드마크에 대응되는 교차점들(또는 제1 투영 직선과 제2 투영 직선에 대하여 가장 가까운 3차원 공간좌표)에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득할 수 있다.
대상 바운딩박스를 획득하는 동작에 대하여는 도 9 내지 도 14에서 보다 구체적으로 서술한다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 센서(2000)를 통하여 대상 객체와 관련된 3차원의 대상 바운딩박스에 대응되는 센싱 데이터를 획득할 수 있다. 이때, 서버(1000)는 대상 바운딩박스 및 센싱 데이터에 기초하여 센싱 데이터로부터 대상 객체와 관련된 3차원의 대상 바운딩박스를 출력하는 신경망 모델을 훈련시키기 위한 학습 세트를 생성하는 동작을 수행할 수 있다.
한편 도 2에서는 도시하지 않았으나, 본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)의 서버(1000)는 제1 카메라(110)로부터 획득한 제1 영상, 제2 카메라(120)로부터 획득한 제2 영상, 및/또는 센서(200)로부터 획득한 센싱 데이터 간의 싱크(sync)를 맞추는 동작을 수행할 수 있다.
일 예로, 서버(1000)는 제1 카메라(110) 또는 제2 카메라(120)로부터 웹으로 브로드캐스트(broadcast)한 영상을 읽음으로써, 제1 카메라(110)로부터 획득한 제1 영상과 제2 카메라(120)로부터 획득한 제2 영상 간의 싱크를 맞추도록 구현될 수 있다. 예컨대, 서버(1000)는 OBS studio 27을 활용하여 제1 영상과 제2 영상을 획득하고, 공통의 서버의 시간 기준으로 제1 영상과 제2 영상의 타임 싱크를 맞추도록 구현될 수 있다.
다른 예로, 서버(1000)는 전술한 바와 같이, 센서(200)를 통하여 프레임 정보(예, 프레임 수 정보, 프레임 시간 정보) 및/또는 메타 정보 등을 포함한 임의의 데이터를 획득할 수 있다. 이때, 서버(1000)는 센싱 데이터에 포함된 프레임 정보에 기초하여 영상 데이터와 센싱 데이터 간의 타임 싱크를 맞추도록 구현될 수 있다.
다만, 상술한 내용은 예시에 불과하며, 서버(1000)는 임의의 적절한 방법을 활용하여, 적어도 하나의 카메라로부터 획득한 영상 데이터와 센서로부터 획득한 센싱 데이터 간의 싱크를 맞추는 동작을 수행하도록 구현될 수 있다.
이하에서는 도 3 내지 도 13을 참고하여, 본 출원의 일 실시예에 따른 학습 세트 생성 방법에 대하여 구체적으로 서술한다.
도 3은 본 출원의 일 실시예에 따라 학습 세트를 생성하는 방법을 나타낸 순서도이다.
본 출원의 일 실시예에 따른 학습 세트를 생성하는 방법은, 적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계(S1000), 제1 카메라로부터 촬영된 제1 영상과 제2 카메라로부터 촬영된 제2 영상을 획득하는 단계(S2000), 제1 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 제1 객체 정보를 획득하는 단계(S3000), 제2 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 제2 객체 정보를 획득하는 단계(S4000), 제1 객체 정보 및 제2 객체 정보에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5000), 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계(S6000), 및 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계(S7000)를 포함할 수 있다.
적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계(S1000)에서는, 본 출원의 일 실시예에 따른 서버(1000)는 제1 카메라(110) 또는 제2 카메라(120) 각각의 내부 파라미터를 보정할 수 있다. 예컨대, 서버(1000)는 제1 캘리브레이션 기준 객체에 대한 이미지로부터 획득한 픽셀 좌표 정보 및 각 카메라의 좌표계 정보에 기초하여 카메라(110 혹은 120)의 내부 파라미터를 보정할 수 있다.
또한, 적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계(S1000)에서는, 서버(1000)는 제1 카메라(110) 또는 제2 카메라(120) 각각의 외부 파라미터를 보정할 수 있다. 예컨대, 서버(1000)는 제2 캘리브레이션 기준 객체에 대한 이미지로부터 획득한 픽셀 좌표 정보 및 센서(200)의 좌표계와 관련된 기준 좌표 정보에 기초하여 적어도 하나의 카메라(110 혹은 120)의 외부 파라미터를 보정할 수 있다. 여기서, 기준 좌표 정보란, 전술한 바와 같이 레이더(Radar) 센서 또는 라이더(Lidar) 센서의 좌표계와 관련된 정보를 포괄하는 의미일 수 있다.
이하에서는 도 4 내지 8을 참고하여 본 출원의 일 실시예에 따른 적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계(S1000)를 보다 구체적으로 설명하기로 한다.
도 4는 본 출원의 일 실시예에 따른 적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계(S1000)를 구체화한 순서도이다.
본 출원의 일 실시예에 따른 적어도 2 이상의 카메라의 캘리브레이션을 수행하는 단계(S1000)는 카메라의 내부 파라미터(intrinsic parameter)에 대한 캘리브레이션을 수행하는 단계(S1100) 및 카메라의 외부 파라미터(extrinsic parameter)에 대한 캘리브레이션을 수행하는 단계(S1200)를 포함할 수 있다.
카메라의 내부 파라미터(intrinsic parameter)에 대한 캘리브레이션을 수행하는 단계(S1100)에서는, 서버(1000)는 카메라를 통하여 획득한 이미지로부터 제1 기준 객체의 특징점과 관련된 픽셀 좌표 정보를 획득하고, 픽셀 좌표 정보에 기초하여 카메라의 내부 파라미터를 보정할 수 있다. 한편, 내부 파라미터(intrinsic parameter)는 초점 거리(focal length), 초점(principal point) 및 비대칭계수(skew coefficient) 중 적어도 하나를 포함할 수 있다.
도 5는 본 출원의 일 실시예에 따른 카메라의 내부 파라미터에 대한 캘리브레이션을 수행하는 단계(S1100)를 구체화한 순서도이다. 도 6은 본 출원의 일 실시예에 따른 제1 캘리브레이션 기준 객체의 일 예를 도시한 도면이다.
본 출원의 일 실시예에 따른 카메라의 내부 파라미터에 대한 캘리브레이션을 수행하는 단계(S1100)는, 카메라를 통하여 제1 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계(S1110), 이미지에 기초하여 제1 캘리브레이션 기준 객체와 관련된 제1 픽셀 세트를 획득하는 단계(S1120), 카메라의 좌표계 정보를 획득하는 단계(S1130), 및 카메라의 좌표계 정보 및 제1 픽셀 세트에 기초하여 카메라의 내부 파라미터를 보정하는 단계(S1140)를 포함할 수 있다.
카메라를 통하여 제1 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계(S1110)에서는, 서버(1000)는, 카메라(110 또는 120)를 통하여 제1 캘리브레이션 기준 객체와 관련된 이미지를 획득할 수 있다. 구체적으로 서버(1000)는 카메라(110 혹은 120)을 이용하여 다양한 각도에서 촬영하여 획득한 제1 캘리브레이션 기준 객체와 관련된 이미지를 획득할 수 있다. 일 예로, 제1 캘리브레이션 기준 객체는 체커보드(checkerboard)일 수 있다.
한편, 도 5에서는 도시하지 않았으나, 서버(1000)는 제1 캘리브레이션 기준 객체의 제1 특징점(예, 도 6의 P1)과 제2 특징점(예, 도 6의 P2) 사이의 실제 폭 정보를 획득할 수 있다.
이미지에 기초하여 제1 캘리브레이션 기준 객체와 관련된 제1 픽셀 세트를 획득하는 단계(S1120)에서는, 서버(1000)는 제1 캘리브레이션 기준 객체와 관련된 이미지로부터 제1 특징점(예, 도 6의 P1)에 대응되는 제1 픽셀과 제2 특징점(예, 도 6의 P2)에 대응되는 제2 픽셀을 검출할 수 있다. 또한, 서버(1000)는 제1 픽셀에 대응되는 픽셀 좌표 정보와 제2 픽셀에 대응되는 픽셀 좌표 정보를 포함하는 제1 픽셀 세트를 획득할 수 있다.
카메라의 좌표계 정보를 획득하는 단계(S1130)에서는, 서버(1000)는, 카메라 자체의 좌표계 정보를 획득할 수 있다.
좌표계 정보 및 제1 픽셀 세트에 기초하여 카메라의 내부 파라미터를 보정하는 단계(S1140)에서는, 서버(1000)는, 카메라 자체의 좌표계 정보 및 제1 캘리브레이션 기준 객체와 관련된 이미지로부터 획득한 제1 픽셀 세트에 기초하여 카메라의 내부 파라미터(예, 초점 거리, 초점, 비대칭 계수 등)을 보정할 수 있다. 구체적으로 서버(1000)는 제1 캘리브레이션 기준 객체의 제1 특징점(예, 도 6의 P1)에 대응되는 제1 픽셀에 대응되는 픽셀 좌표 정보와 제1 캘리브레이션 기준 객체의 제2 특징점(예, 도 6의 P2)에 대응되는 제2 픽셀에 대응되는 픽셀 좌표 정보에 기초하여 제1 픽셀과 제2 픽셀 사이의 폭을 연산할 수 있다. 이때, 서버(1000)는 제1 특징점(예, 도 6의 P1)과 제2 특징점(예, 도 6의 P2)의 실제 폭 정보와, 제1 픽셀과 제2 픽셀 간의 폭 정보에 기초하여, 카메라의 내부 파라미터(예, 초점 거리, 초점, 비대칭 계수 등)를 보정할 수 있다.
한편, 도 6에서는 제1 캘리브레이션 기준 객체에 포함된 제1 특징점(P1)과 제1 특징점(P1)에 인접한 제2 특징점(P2)을 중심으로 카메라의 내부 파라미터를 보정하는 내용을 중심으로 설명하였다. 다만, 도 6에 도시된 제1 특징점(P1)과 제2 특징점(P2)은 설명의 편의를 위한 예시에 불과하며, 서버(1000)는 제1 캘리브레이션 기준 객체에 포함된 임의의 특징 영역(예, 꼭지점, 선, 면 등)에 기초하여 카메라의 내부 파라미터를 보정하도록 구현될 수 있다.
또한, 도 6에서는 체커보드(checkerboard)를 중심으로 제1 캘리브레이션 기준 객체를 설명하였으나, 이는 예시에 불과하며 서버(1000)는 임의의 유형, 형태의 객체의 정보를 이용하여 카메라의 내부 파라미터를 보정할 수 있다.
카메라의 외부 파라미터(extrinsic parameter)에 대한 캘리브레이션을 수행하는 단계(S1200)에서는, 서버(1000)는 카메라를 통하여 획득한 이미지로부터 제2 기준 객체의 특징점과 관련된 픽셀 좌표 정보를 획득하고, 제2 기준 객체의 특징점과 관련되고 센서 기반 좌표계에 대한 기준 좌표 정보를 획득할 수 있다. 이때, 서버(1000)는 픽셀 좌표 정보와 기준 좌표 정보에 기초하여 카메라의 외부 파라미터를 보정할 수 있다. 한편, 외부 파라미터(extrinsic parameter)는 카메라 좌표계와 임의의 외부 좌표계 사이의 변환 관계와 관련된 임의의 파라미터를 포괄하는 의미로, 회전(rotation) 변환 또는 평행이동(translation) 변환과 관련된 파라미터를 포함할 수 있다.
도 7은 본 출원의 일 실시예에 따른 카메라의 외부 파라미터에 대한 캘리브레이션을 수행하는 단계(S1200)를 구체화한 순서도이다. 도 8은 본 출원의 일 실시예에 따른 제2 캘리브레이션 기준 객체를 이용하여 카메라 캘리브레이션을 수행하는 일 양상을 도시한 도면이다.
본 출원의 일 실시예에 따른 카메라의 외부 파라미터에 대한 캘리브레이션을 수행하는 단계(S1200)는, 제2 캘리브레이션 기준 객체에 대한 기준 좌표 정보를 획득하는 단계(S1210), 카메라를 통하여 제2 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계(S1220), 이미지에 기초하여 제2 캘리브레이션 기준 객체와 관련된 제2 픽셀 세트를 획득하는 단계(S1230), 기준 좌표 정보 및 제2 픽셀 세트에 기초하여 좌표 쌍(pair)을 획득하는 단계(S1240), 및 좌표 쌍에 기초하여 카메라의 외부 파라미터를 보정하는 단계(S1250)를 포함할 수 있다.
제2 캘리브레이션 기준 객체에 대한 기준 좌표 정보를 획득하는 단계(S1210)에서는, 서버(1000)는, 제2 캘리브레이션 기준 객체에 대한 기준 좌표 정보를 획득할 수 있다. 여기서, 기준 좌표 정보란, 레이더(Radar) 센서 또는 라이더(Lidar) 센서 등을 포함하여 센서 기반 좌표계와 관련된 좌표 정보를 포괄하는 의미일 수 있다. 구체적으로 센서(200)는 미리 결정된 센서 기반 좌표계의 특정 위치에 배치된 제2 캘리브레이션 기준 객체에 대한 센싱 데이터를 측정하고, 센싱 데이터를 서버(1000)로 송신할 수 있다.
이때, 서버(1000)는 제2 캘리브레이션 기준 객체가 위치하는 센서 기반 좌표계에 대한 좌표 정보와 제2 캘리브레이션 기준 객체의 정보(예, 실제 높이(h), 실제 너비(d) 및/또는 실제 폭(w))에 기초하여 제2 캘리브레이션 기준 객체의 임의의 특징점(예, 도 8의 제3 특징점(P3), 제4 특징점(P4) 등)의 센서 기반 좌표계에서의 기준 좌표 정보를 획득할 수 있다.
카메라를 통하여 제2 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계(S1220)에서는, 서버(1000)는, 카메라(110 또는 120)를 통하여 제2 캘리브레이션 기준 객체와 관련된 이미지를 획득할 수 있다. 구체적으로 서버(1000)는 카메라(110 혹은 120)을 이용하여 다양한 각도에서 촬영하여 획득한 제2 캘리브레이션 기준 객체와 관련된 이미지를 획득할 수 있다. 일 예로, 제2 캘리브레이션 기준 객체는 직육각형의 박스(Box)일 수 있다.
이미지에 기초하여 제2 캘리브레이션 기준 객체와 관련된 제2 픽셀 세트를 획득하는 단계(S1230)에서는, 서버(1000)는, 제2 캘리브레이션 기준 객체와 관련된 이미지로부터 제3 특징점(예, 도 8의 P3)에 대응되는 제3 픽셀과 제4 특징점(예, 도 8의 P4)에 대응되는 제4 픽셀을 검출할 수 있다. 또한, 서버(1000)는 제3 픽셀에 대응되는 픽셀 좌표 정보와 제4 픽셀에 대응되는 픽셀 좌표 정보를 포함하는 제2 픽셀 세트를 획득할 수 있다.
기준 좌표 정보 및 제2 픽셀 세트에 기초하여 좌표 쌍(pair)을 획득하는 단계(S1240)에서는, 서버(1000)는, 센서 기반 좌표계와 관련된 기준 좌표 정보 및 제3 픽셀에 대응되는 픽셀 좌표 정보와 제4 픽셀에 대응되는 픽셀 좌표 정보를 포함하는 제2 픽셀 세트에 기초하여 좌표 쌍(pair)을 획득할 수 있다. 예컨대, 서버(1000)는 제3 특징점(예, 도 8의 P3)의 센서 기반 좌표계와 관련된 기준 좌표 정보와 제3 픽셀에 대응되는 픽셀 좌표 정보가 연계된 제1 좌표 쌍(pair)을 획득할 수 있다. 다른 예로, 서버(1000)는 제4 특징점(예, 도 8의 P4)의 센서 좌표계와 관련된 기준 좌표 정보와 제4 픽셀에 대응되는 픽셀 좌표 정보가 연계된 제2 좌표 쌍(pair)을 획득할 수 있다.
좌표 쌍에 기초하여 카메라의 외부 파라미터를 보정하는 단계(S1250)에서는, 서버(1000)는 좌표 쌍에 기초하여 카메라의 외부 파라미터를 보정할 수 있다.
예를 들면, 서버(1000)는 제2 캘리브레이션 기준 객체의 실제 높이(h), 실제 너비(d) 및/또는 실제 폭(w)에 대한 정보를 획득할 수 있다. 혹은 서버(1000)는 센서 기반 좌표계와 관련된 기준 좌표 정보로부터 제2 캘리브레이션 기준 객체의 실제 높이(h), 실제 너비(d) 및/또는 실제 폭(w)에 대한 정보를 연산할 수 있다. 구체적으로 서버(1000)는 제2 캘리브레이션 기준 객체의 제3 특징점(예, 도 8의 P3)의 기준 좌표 정보와 제2 캘리브레이션 기준 객체의 제4 특징점(예, 도 8의 P4)의 기준 좌표 정보에 기초하여 제2 캘리브레이션 기준 객체의 실제 높이(h), 실제 너비(d) 및/또는 실제 폭(w)에 대한 정보를 연산할 수 있다.
또한, 서버(1000)는 제2 캘리브레이션 기준 객체의 제3 특징점(예, 도 8의 P3)에 대응되는 제3 픽셀에 해당하는 픽셀 좌표 정보와 제4 캘리브레이션 기준 객체의 제4 특징점(예, 도 8의 P4)에 대응되는 제4 픽셀에 해당하는 픽셀 좌표 정보에 기초하여 제3 픽셀과 제4 픽셀 사이의 거리를 연산할 수 있다.
이때, 서버(1000)는 센서 기반 좌표계와 관련된 제2 캘리브레이션 기준 객체의 실제 길이 정보, 및 이미지 기반의 픽셀 좌표 정보에 기반한 픽셀 간 거리 정보에 기초하여 카메라의 외부 파라미터를 보정할 수 있다. 구체적으로 좌표 쌍은 카메라를 통하여 획득한 이미지 기반의 픽셀 좌표 정보와 센서 기반 좌표계와 관련된 기준 좌표 정보를 포함하고 있기 때문에, 서버(1000)는 좌표 쌍에 기초하여 카메라 좌표계와 카메라 외부의 센서 좌표계 사이의 변환 관계와 관련된 카메라의 외부 파라미터를 보정할 수 있다.
한편 도 8에서는 제2 캘리브레이션 기준 객체에 포함된 제3 특징점(P3)과 제3 특징점(P3)에 인접한 제4 특징점(P4)를 중심으로 카메라의 외부 파라미터를 보정하는 내용을 중심으로 설명하였다. 다만, 도 8에 도시된 제3 특징점(P3)과 제4 특징점(P4)은 설명의 편의를 위한 예시에 불과하며, 서버(1000)는 제2 캘리브레이션 기준 객체에 포함된 임의의 기준 영역(예, 꼭지점, 선, 면 등)에 기초하여 카메라의 외부 파라미터를 보정하도록 구현될 수 있다.
또한, 도 8에서는 직육면체 형태의 제2 캘리브레이션 기준 객체를 중심으로 설명하였으나, 이는 예시에 불과하며 서버(1000)는 임의의 형태의 객체의 정보를 이용하여 카메라의 외부 파라미터를 보정하도록 구현될 수 있다.
또한, 도 2 내지 도 8에서는 카메라 캘리브레이션 동작이 서버(1000)에서 수행되는 것으로 서술하였으나, 이는 예시에 불과하며, 카메라 캘리브레이션 동작은 서버(1000)와는 별도의 외부 장치(혹은 외부 서버)에서 수행되도록 구성될 수 있다.
다시 도 3을 참고하면, 본 출원의 일 실시예에 따른 학습 세트 생성 방법은, 제1 카메라(110)로부터 촬영된 제1 영상과 제2 카메라(120)로부터 촬영된 제2 영상을 획득하는 단계(S2000), 제1 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 2차원의 제1 바운딩박스를 획득하는 단계(S3000), 제2 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 2차원의 제2 바운딩박스를 획득하는 단계(S4000), 제1 바운딩박스 및 제2 바운딩박스에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5000) 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계(S6000), 및 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계(S7000)를 포함할 수 있다.
제1 카메라로부터 촬영된 제1 영상과 제2 카메라로부터 촬영된 제2 영상을 획득하는 단계(S2000)에서는, 서버(1000)는 적어도 하나의 카메라로부터 영상을 획득할 수 있다. 일 예로, 서버(1000)는 대상 객체에 대하여 제1 위치에 위치하는 제1 카메라(110)를 통하여 대상 객체가 촬영된 제1 영상을 획득할 수 있다. 다른 예로, 서버(1000)는 대상 객체에 대하여 제2 위치에 위치하는 제2 카메라(120)를 통하여 대상 객체가 촬영된 제2 영상을 획득할 수 있다.
한편 전술한 바와 같이, 제1 영상과 제2 영상은 프레임별로 싱크가 맞춰진 영상일 수 있다. 예컨대, 서버(1000)는 제1 카메라(110)로부터 획득한 제1 영상, 제2 카메라(120)로부터 획득한 제2 영상, 및/또는 센서(200)로부터 획득한 센싱 데이터 간의 싱크(sync)를 맞추는 동작을 수행할 수 있으며, 도 3에서 도시된 S2000 단계의 제1 영상과 제2 영상은 프레임별로 싱크가 맞춰진 후의 영상들을 의미할 수 있다.
본 출원의 일 실시예에 따른 학습 세트 생성 방법은, 제1 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 제1 객체 정보를 획득하는 단계(S3000)를 포함할 수 있다. 제1 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 제1 객체 정보를 획득하는 단계(S3000)에서는, 서버(1000)는 제1 영상의 프레임별로 대상 객체를 검출하고, 대상 객체와 관련된 제1 객체 정보를 획득할 수 있다. 여기서 제1 객체 정보란, 제1 영상 내에서 검출된 대상 객체와 관련된 2차원의 바운딩박스 및/또는 대상 객체의 랜드마크(예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발 등)에 대응되는 영상 정보(예, 셀 좌표 등) 중 적어도 하나를 포함할 수 있다.
일 예로, 서버(1000)는 객체 검출(object detection)과 관련된 딥 러닝 기법(예, yolo, yoloV3, ssd, Retinanet 등)을 활용하여 제1 영상으로부터 대상 객체를 검출하고, 제1 영상 내의 대상 객체에 해당하는 영역의 마스크(mask)를 획득할 수 있다. 또한, 서버(1000)는 제1 영상의 마스크에 기초하여 대상 객체와 관련된 2차원의 제1 바운딩박스를 획득할 수 있다. 추가적으로 서버(1000)는 대상 객체 검출의 성능을 높이기 위한 임의의 기법을 활용할 수 있다. 예컨대, 서버(1000)는 객체 검출 기법에 칼만 필터(Kalman filter)를 추가한 Simple Online and Realtime Tracking(이하, SORT) 알고리즘을 활용하여 대상 객체 검출의 정확도를 높이고 사물의 위치를 추적하는 연산을 수행하도록 구현될 수 있다.
다른 예로, 서버(1000)는 포즈 추정(pose estimation)과 관련된 딥 러닝 기법(예, AlphaPose)을 활용하여 제1 영상으로부터 대상 객체의 랜드마크(예, 예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발 등)에 대응되는 제1 셀 정보(예, 셀 좌표 정보)를 획득할 수 있다. 구체적으로 서버(1000)는 제1 영상으로부터 검출된 대상 객체에 대하여 포즈 추정을 수행하여 대상 객체와 관련된 객체 정보로서 대상 객체의 랜드마크에 대응되는 제1 셀 정보를 획득할 수 있다.
다만 상술한 객체 검출 기법과 포즈 추정 기법은 예시에 불과하며, 서버(1000)는 임의의 적절한 방법을 활용하여 영상으로부터 대상 객체를 검출하도록 구현될 수 있을 것이다.
본 출원의 일 실시예에 따른 학습 세트 생성 방법은, 제2 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 제2 객체 정보를 획득하는 단계 (S4000)를 포함할 수 있다. 제2 영상으로부터 대상 객체를 인식하고 대상 객체와 관련된 제2 객체 정보를 획득하는 단계(S4000)에서는, 서버(1000)는 제2 영상의 프레임별로 대상 객체를 검출하고, 대상 객체와 관련된 제2 객체 정보를 획득할 수 있다. 여기서, 제2 객체 정보란, 제2 영상 내에서 검출된 대상 객체와 관련된 2차원의 바운딩박스 및/또는 대상 객체의 랜드마크(예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발 등)에 대응되는 영상 정보(예, 셀 좌표 등) 중 적어도 하나를 포함할 수 있다.
일 예로, 서버(1000)는 객체 검출(object detection)과 관련된 딥 러닝 기법(예, yolo, yoloV3, ssd, Retinanet 등)을 활용하여 제2 영상으로부터 대상 객체를 검출하고, 제2 영상 내의 대상 객체에 해당하는 영역의 마스크(mask)를 획득할 수 있다. 또한, 서버(1000)는 제2 영상의 마스크에 기초하여 대상 객체와 관련된 2차원의 제2 바운딩박스를 획득할 수 있다. 추가적으로 서버(1000)는 대상 객체 검출의 성능을 높이기 위한 임의의 기법을 활용할 수 있다. 예컨대, 서버(1000)는 객체 검출 기법에 칼만 필터(Kalman filter)를 추가한 Simple Online and Realtime Tracking(이하, SORT) 알고리즘을 활용하여 대상 객체 검출의 정확도를 높이고 사물의 위치를 추적하는 연산을 수행하도록 구현될 수 있다.
다른 예로, 서버(1000)는 포즈 추정(pose estimation)과 관련된 딥 러닝 기법(예, AlphaPose)을 활용하여 제2 영상으로부터 대상 객체의 랜드마크(예, 예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발 등)에 대응되는 제2 셀 정보(예, 셀 좌표 정보)를 획득할 수 있다. 구체적으로 서버(1000)는 제2 영상으로부터 검출된 대상 객체에 대하여 포즈 추정을 수행하여 대상 객체와 관련된 객체 정보로서 대상 객체의 랜드마크에 대응되는 제2 셀 정보를 획득할 수 있다.
다만 상술한 객체 검출 기법과 포즈 추정 기법은 예시에 불과하며, 서버(1000)는 임의의 적절한 방법을 활용하여 영상으로부터 대상 객체를 검출하도록 구현될 수 있을 것이다.
제1 객체 정보 및 제2 객체 정보에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5000)에서는, 서버(1000)는, 제1 영상으로부터 획득된 대상 객체와 관련된 제1 객체 정보 및 제2 영상으로부터 획득된 대상 객체와 관련된 제2 객체 정보로부터 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득할 수 있다.
일 예로, 서버(1000)는 제1 객체 정보에 포함된 제1 바운딩박스와 제2 객체 정보에 포함된 제2 바운딩박스 각각을 3차원 공간좌표에 리버스 투영(Reverse project)함으로써 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득할 수 있다. 다른 예로, 서버(1000)는 제1 객체 정보에 포함된 제1 셀 정보와 제2 객체 정보에 포함된 제2 셀 정보 각각을 3차원 공간좌표에 투영(Reverse project)함으로써 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득할 수 있다.
이하에서는 도 9 내지 도 14를 참고하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5000)를 보다 구체적으로 서술한다. 구체적으로 도 9 내지 도 13을 참고하여 2차원의 바운딩박스와 관련된 객체 정보에 기초하여 대상 바운딩박스를 획득하는 일 실시예를 서술하며, 도 14를 참고하여 대상 객체의 랜드마크와 관련된 객체 정보에 기초하여 대상 바운딩박스를 획득하는 다른 실시예를 서술한다.
도 9는 본 출원의 일 실시예에 따른 대상 바운딩박스를 획득하는 단계(S5000)를 구체화한 순서도이다. 본 출원의 일 실시예에 따른 대상 바운딩박스를 획득하는 단계(S5000)는 제1 객체 정보에 포함된 2차원의 제1 바운딩박스를 3차원 공간좌표에 리버스 투영하여 제1 투영 체적을 획득하는 단계(S5100), 제2 객체 정보에 포함된 2차원의 제2 바운딩박스를 3차원 공간좌표에 리버스 투영하여 제2 투영 체적을 획득하는 단계(S5200), 및 제1 투영 체적 및 제2 투영 체적에 기초하여 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계(S5300)를 포함할 수 있다.
제1 객체 정보에 포함된 2차원의 제1 바운딩박스를 3차원 공간좌표에 리버스 투영하여 제1 투영 체적을 획득하는 단계(S5100)에서는, 서버(1000)는 제1 영상에 포함된 대상 객체와 관련된 2차원의 제1 바운딩박스를 3차원 공간좌표에 리버스 투영하여 대상 객체와 관련된 제1 투영 체적을 획득할 수 있다. 구체적으로, 서버(1000)는 제1 카메라(110)의 내부 파라미터 및/또는 외부 파라미터를 이용하여 제1 바운딩박스를 3차원 공간좌표에 리버스 투영하여 제1 투영 체적을 획득할 수 있다.
제2 객체 정보에 포함된 2차원의 제2 바운딩박스를 3차원 공간좌표에 투영하여 제2 투영 체적을 획득하는 단계(S5200)에서는, 서버(1000)는 제2 영상에 포함된 대상 객체와 관련된 2차원의 제2 바운딩박스를 3차원 공간좌표에 리버스 투영하여 대상 객체와 관련된 제2 투영 체적을 연산할 수 있다. 구체적으로, 서버(1000)는 제2 카메라(120)의 내부 파라미터 및/또는 외부 파라미터를 이용하여 제2 바운딩박스를 3차원 공간좌표에 리버스 투영하여 제2 투영 체적을 획득할 수 있다.
제1 투영 체적 및 제2 투영 체적에 기초하여 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계(S5300)에서는, 서버(1000)는 제1 투영 체적 및 제2 투영 체적 간의 교차 체적(intersection volume)을 획득하고, 교차 체적(intersection volume)에 기반하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득할 수 있다.
이하에서는 도 10 및 도 11을 참고하여 본 출원의 일 실시예에 따른 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 방법에 대하여 구체적으로 서술한다.
도 10은 본 출원의 일 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계(S5300)를 구체화한 순서도이다. 도 11은 본 출원의 일 실시예에 따른 3차원의 대상 바운딩박스를 획득하는 일 양상을 도시한 도면이다.
본 출원의 일 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계(S5300)는 제1 투영 체적을 구성하는 적어도 하나의 제1 평면을 획득하는 단계(S5310), 제2 투영 체적을 구성하는 적어도 하나의 제2 평면을 획득하는 단계(S5312), 및 제1 평면 및 제2 평면의 공통 평면을 획득하고 공통 평면에 기초하여 대상 바운딩박스를 획득하는 단계(S5314)를 포함할 수 있다.
제1 투영 체적을 구성하는 적어도 하나의 제1 평면을 획득하는 단계(S5310)에서는, 서버(1000)는 제1 투영 체적을 구성하는 적어도 하나의 제1 평면을 획득할 수 있다. 구체적으로 서버(1000)는, 제1 투영 체적을 구성하는 제1 라인(예, 도 11의 m1) 및 제2 라인(예, 도 11의 m2)을 포함하는 제1 평면을 획득할 수 있다.
제2 투영 체적을 구성하는 적어도 하나의 제2 평면을 획득하는 단계(S5312)에서는, 서버(1000)는 제2 투영 체적을 구성하는 적어도 하나의 제2 평면을 획득할 수 있다. 구체적으로 서버(1000)는, 제2 투영 체적을 구성하는 제3 라인(예, 도 11의 l1) 및 제4 라인(예, 도 11의 l2)을 포함하는 제2 평면을 획득할 수 있다.
제1 평면 및 제2 평면의 공통 평면을 획득하고 공통 평면에 기초하여 대상 바운딩박스를 획득하는 단계(S5314)에서는, 서버(1000)는 제1 투영 체적을 구성하는 적어도 하나의 제1 평면과 제2 투영 체적을 구성하는 적어도 하나의 제2 평면 간의 공통 평면을 획득할 수 있다. 또한, 서버(1000)는 획득한 복수의 공통 평면들에 기초하여 제1 투영 체적과 제2 투영 체적 간의 교차 체적을 획득할 수 있다. 또한, 서버(1000)는 교차 체적에 기반하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 생성하도록 구현될 수 있다.
한편, 도 11에서는 제1 투영 체적과 제2 투영 체적 간의 교차 체적과 관련하여 제1 카메라(또는 제2 카메라)로부터 먼 위치에 대응되는 꼭지점(예, 도 11의 v1)을 포함하여 교차 체적을 생성하는 것으로 도시하였다. 다만 이는 예시에 불과하며, 서버(1000)는 카메라의 각도나 기울기(tilt)를 고려하여 제1 투영 체적과 제2 투영 체적 간의 교차 체적을 획득하도록 구현될 수 있다. 예컨대, 서버(1000)는, 제1 카메라(또는 제2 카메라)로부터 먼 위치에 대응되는 꼭지점(예, 도 11의 v1)는 보정하고 교차 체적을 생성하도록 구현될 수 있다. 구체적으로 서버(1000)는 특정 꼭지점(예, 도 11의 v1)은 제외하고 교차 체적을 생성하도록 구성될 수 있다.
한편, 제1 영상(또는 제2 영상)으로부터 획득한 바운딩박스가 복수개인 경우(즉, 각 영상에 대상 객체가 복수인 경우)에는 제1 영상으로부터 획득한 바운딩박스와 제2 영상으로부터 획득한 바운딩박스가 어떻게 매칭되는지 불분명한 경우가 존재할 수 있다.
본 출원의 일 실시예에 따른 서버(1000)는 각 영상으로부터 획득한 바운딩박스에 대응되는 투영 체적(혹은 대상 객체)과 관련된 특성 정보를 획득하고, 특성 정보 간의 유사도에 기초하여 3차원의 대상 바운딩박스를 획득하도록 구현될 수 있다. 구체적으로 서버(1000)는 제1 영상으로부터 획득한 제1 바운딩박스와 대응되는 제1 투영 체적(또는 대상 객체)과 관련된 제1 특성 정보 및 제2 영상으로부터 획득한 제2 바운딩박스와 대응되는 제2 투영 체적(또는 대상 객체)과 관련된 제2 특성 정보를 획득하고, 제1 특성 정보와 제2 특성 정보 간의 유사도에 기반하여 대상 바운딩박스를 획득할 수 있다.
이하에서는 도 12 및 도 13을 참고하여 본 출원의 일 실시예에 따른 대상 바운딩박스를 획득하는 내용에 대하여 보다 구체적으로 설명한다.
도 12는 본 출원의 일 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계(S5300)를 구체화한 순서도이다. 도 13은 본 출원의 일 실시예에 따른 3차원의 대상 바운딩박스를 결정하는 일 양상을 도시한 도면이다.
본 출원의 일 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계(S5300)는 제1 투영 체적 및 제2 투영 체적에 기초하여 3차원의 임시 바운딩박스들을 획득하는 단계(S5320), 제1 바운딩박스와 관련된 제1 특성 정보를 획득하는 단계(S5322), 제2 바운딩박스와 관련된 제2 특성 정보를 획득하는 단계(S5324), 제1 특성 정보와 제2 특성 정보의 유사도에 기초하여 임시 바운딩박스에 매칭 점수를 할당하는 단계(S5326), 및 매칭 점수에 기초하여 임시 바운딩박스들 중에서 대상 바운딩박스를 결정하는 단계(S5328)를 포함할 수 있다.
제1 투영 체적 및 제2 투영 체적에 기초하여 3차원의 임시 바운딩박스들을 획득하는 단계(S5320)에서는, 서버(1000)는, 제1 영상에 포함된 제1 대상객체와 관련된 2차원의 바운딩박스를 3차원 공간에 리버스 투영하여 투영체적을 획득할 수 있다. 또한, 서버(1000)는 제2 영상에 포함된 제1 대상객체와 관련된 2차원의 바운딩박스를 3차원 공간에 리버스 투영하여 투영체적을 획득할 수 있다. 또한, 서버(1000)는 제1 영상에 포함된 제2 대상객체와 관련된 2차원의 바운딩박스를 3차원 공간에 리버스 투영하여 투영체적을 획득할 수 있다. 또한, 서버(1000)는 제2 영상에 포함된 제2 대상객체와 관련된 2차원의 바운딩박스를 3차원 공간에 리버스 투영하여 투영체적을 획득할 수 있다.
이때, 서버(1000)는 제1 대상 객체와 관련된 투영 체적과 제2 대상 객체와 관련된 투영 체적 간의 조합에 따라 복수 개의 임시 바운딩박스를 생성할 수 있다. 예컨대, 서버(1000)는 제1 영상의 제1 대상 객체와 관련된 바운딩박스로부터 획득한 투영체적과 제2 영상의 제1 대상 객체와 관련된 바운딩박스로부터 획득한 투영체적에 기반하여 교차 체적을 연산하고, 획득된 교차 체적에 기반하여 3차원의 임시 바운딩박스(예, 도 13의 제1 임시 바운딩박스)를 획득할 수 있다. 또한, 서버(1000)는 제1 영상의 제1 대상 객체와 관련된 바운딩박스로부터 획득한 투영체적과 제2 영상의 제2 대상 객체와 관련된 바운딩박스로부터 획득한 투영체적에 기반하여 교차 체적을 연산하고, 획득된 교차 체적에 기반하여 3차원의 임시 바운딩박스(예, 도 13의 제2 임시 바운딩박스)를 획득할 수 있다.
다만, 생성된 복수 개의 임시 바운딩박스들 중에는 오차가 존재할 수 있다. 예컨대, 도 13에 도시된 제2 임시 바운딩박스는 제1 대상 객체로부터 획득된 투영 체적과 제2 대상 객체로부터 획득된 투영 체적 간의 교차 체적에 기반하여 획득된 임시 바운딩박스로, 상이한 대상 객체로부터 획득되었다는 오류가 존재할 수 있다.
따라서, 본 출원의 일 실시예에 따른 서버(1000)는 임시 바운딩박스들 중에서 대상 바운딩박스를 결정하도록 구현될 수 있다. 구체적으로, 서버(1000)는 투영 체적(또는 대상 객체)과 관련된 특성 정보들을 획득하고, 특성 정보 간의 유사도에 따라여 임시 바운딩박스에 대하여 매칭 점수를 부여하고, 매칭 점수에 기반하여 임시 바운딩박스 중에서 대상 바운딩박스를 결정하도록 구현될 수 있다. 여기서, 특성 정보란 투영 체적(또는 대상 객체)과 관련된 색 정보, 분포 정보 등을 포함하여 제1 바운딩박스와 제2 바운딩박스 간의 유사도 판별에 이용할 수 있는 임의의 정보를 포괄하는 의미일 수 있다. 또한 여기서 제1 바운딩박스는 제1 영상으로부터 획득된 임의의 바운딩박스를 포괄하는 의미일 수 있으며, 제2 바운딩박스는 제2 영상으로부터 획득된 임의의 바운딩박스를 포괄하는 의미일 수 있다.
제1 바운딩박스와 관련된 제1 특성 정보를 획득하는 단계(S5322)에서는, 서버(1000)는, 3차원의 임시 바운딩박스와 관련된 제1 바운딩박스에 대응되는 제1 투영 체적(또는 대상 객체)의 제1 특성 정보를 획득할 수 있다. 예컨대, 서버(1000)는 제1 임시 바운딩박스와 관련된 제1 바운딩박스(예컨대, 제1 영상의 제1 대상 객체에 대응되는 바운딩박스)와 대응되는 제1 대상 객체의 제1 특성 정보(예컨대, 제1 대상 객체의 색 정보)를 획득할 수 있다. 또한, 서버(1000)는 제2 임시 바운딩박스와 관련된 제1 바운딩박스(예컨대, 제1 영상의 제1 대상 객체에 대응되는 바운딩박스)와 대응되는 제1 대상 객체의 제1 특성 정보(예컨대, 제1 대상 객체의 색 정보)를 획득할 수 있다.
제2 바운딩박스와 관련된 제2 특성 정보를 획득하는 단계(S5324)에서는, 서버(1000)는, 3차원의 임시 바운딩박스와 관련된 제2 바운딩박스에 대응되는 제2 투영 체적(또는 대상 객체)의 제2 특성 정보를 획득할 수 있다. 예컨대, 서버(1000)는 제1 임시 바운딩박스와 관련된 제2 바운딩박스(예컨대, 제2 영상의 제1 대상 객체에 대응되는 바운딩박스)와 대응되는 제1 대상 객체의 제2 특성 정보(예컨대, 제1 대상 객체의 색 정보)를 획득할 수 있다. 또한, 서버(1000)는 제2 임시 바운딩박스와 관련된 제2 바운딩박스(예컨대, 제2 영상의 제2 대상 객체에 대응되는 바운딩박스)와 대응되는 제2 대상 객체의 제2 특성 정보(예컨대, 제2 대상 객체의 색 정보)를 획득할 수 있다.
일 예로, 서버(1000)는 각 바운딩박스에 대응되는 대상 객체와 관련된 특성 정보를 획득하는 데 로모(Local Maximal Occurrence, Lomo) 피처 기법을 활용할 수 있다. 로모 피처 기법은 다른 각도의 영상에서의 객체 식별을 위하여 객체의 특성, 예컨대 객체의 색을 중점적으로 고려하여 동일한 객체인지 여부를 판단할 수 있는 기법이다. 본 출원의 일 실시예에 따른 서버(1000)는 로모 피처 기법을 활용하여 매칭된 제1 바운딩박스와 제2 바운딩박스에 대응되는 대상 객체 간의 유사도를 판단할 수 있다.
제1 특성 정보와 제2 특성 정보의 유사도에 기초하여 임시 바운딩박스에 매칭 점수를 할당하는 단계(S5326)에서는, 서버(1000)는, 제1 영상으로부터 획득한 제1 투영 체적(또는 대상 객체)의 제1 특성 정보와 제2 영상으로부터 획득한 제2 투영 체적(또는 대상 객체)의 제2 특성 정보 간의 유사도에 기초하여 3차원의 임시 바운딩박스에 매칭 점수를 부여할 수 있다. 예컨대, 서버(1000)는 제1 임시 바운딩박스와 관련된 제1 영상의 제1 바운딩박스에 대응되는 제1 특성 정보(예, 색 정보)와 제1 임시 바운딩박스와 관련된 제2 영상의 제2 바운딩박스에 대응되는 제2 특성 정보(예, 색 정보) 간에 유사도에 기반하여 제1 임시 바운딩박스에 제1 점수를 부여할 수 있다. 다른 예를 들어, 서버(1000)는 제2 임시 바운딩박스와 관련된 제1 영상의 제1 바운딩박스에 대응되는 제1 특성 정보(예, 색 정보)와 제2 임시 바운딩박스와 관련된 제2 영상의 제2 바운딩박스에 대응되는 제2 특성 정보(예, 색 정보) 간에 유사도에 기반하여 제2 임시 바운딩박스에 제2 점수를 부여할 수 있다. 이때, 서버(1000)는 제1 영상의 제1 대상 객체에 대응되는 제1 바운딩박스와 제2 영상의 제1 대상 객체에 대응되는 제2 바운딩박스로부터 획득된 제1 임시 바운딩박스에 제2 임시 바운딩박스에 할당된 제2 점수에 비하여 상대적으로 높은 점수를 부여할 수 있다.
한편, 제2 임시 바운딩박스는 제1 영상의 제1 대상 객체에 대응되는 제1 바운딩박스와 제2 영상의 제2 대상 객체에 대응되는 제2 바운딩박스로부터 생성되었기 때문에, 특성 정보 간의 유사도가 제1 임시 바운딩박스의 경우보다 낮을 수 있다. 일 예로, 서버(1000)는 제2 임시 바운딩박스에 제1 임시 바운딩박스에 할당된 제1 점수보다 상대적으로 낮은 점수를 부여할 수 있다. 다른 예로, 서버(1000)는 제1 특성 정보와 제2 특성 정보 간의 유사도가 미리 결정된 기준보다 낮은 경우에는 미리 결정된 점수를 일률적으로 할당하여 해당 임시 바운딩박스를 대상 바운딩박스로 결정하지 않도록 구현될 수 있다.
본 출원의 일 실시예에 따른 서버(1000)는, 임시 바운딩박스에 매칭 점수를 할당하는데, 제1 특성 정보와 제2 특성 정보 간의 코사인 유사성(cosine similarity)을 활용할 수 있다. 코사인 유사성은 임의의 벡터 간의 유사성을 측정하는 방법 중 하나로, 코사인 유사성이 높을수록 임의의 벡터들이 서로 동일할 확률이 높음을 의미한다. 본 출원의 일 실시예에 따른 서버(1000)는, 제1 특성 정보와 제2 특성 정보 간의 코사인 유사성을 측정하고, 코사인 유사성에 기반하여 임시 바운딩박스에 매칭 점수를 부여할 수 있다. 다만, 이는 예시에 불과하며, 서버(1000)는 임의의 적절한 기법을 활용하여 제1 특성 정보와 제2 특성 정보 간의 유사도를 평가하고, 평가된 유사도에 기반하여 임시 바운딩박스에 매칭 점수를 부여하도록 구성될 수 있을 것이다.
매칭 점수에 기초하여 임시 바운딩박스들 중에서 대상 바운딩박스를 결정하는 단계(S5328)에서는, 서버(1000)는, 각 임시 바운딩박스의 매칭 점수에 기초하여 임시 바운딩박스들 중에서 대상 바운딩박스를 선택하거나 결정할 수 있다. 구체적으로 서버(1000)는, 임시 바운딩박스들의 매칭 점수를 비교하여 높은 점수를 할당 받은 임시 바운딩박스를 대상 바운딩박스로 결정할 수 있다. 이때, 또한, 서버(1000)는 Hungarian algorithm을 통해 임시 바운딩박스들 중에서 최적의 매칭 점수를 가지는 임시 바운딩박스를 대상 바운딩박스로 결정할 수 있다.
구체적으로 서버(1000)는 제1 임시 바운딩박스에 부여된 제1 점수와 제2 임시 바운딩박스에 부여된 제2 점수를 비교하여 제1 임시 바운딩박스와 제2 임시 바운딩박스 중에서 적어도 하나를 제1 대상 객체와 관련된 대상 바운딩박스로 결정할 수 있다. 예컨대, 도 13의 제1 임시 바운딩박스(즉, 제1 영상의 제1 대상 객체로부터 획득된 제1 바운딩박스 및 제2 영상의 제1 대상 객체로부터 획득된 제2 바운딩박스로부터 생성된 3차원의 임시 바운딩박스)는 도 13의 제2 임시 바운딩박스(즉, 제1 영상의 제1 대상 객체로부터 획득된 제1 바운딩박스 및 제2 영상의 제2 대상 객체로부터 획득된 제2 바운딩박스로부터 생성된 3차원의 바운딩박스)보다 높은 매칭 점수를 부여 받을 가능성이 높다. 이때, 서버(1000)는 제1 임시 바운딩박스에 부여된 제1 점수와 제2 임시 바운딩박스에 부여된 제2 점수를 비교하여 제1 임시 바운딩박스를 제1 대상 객체와 관련된 대상 바운딩박스로 결정할 수 있다.
이상에서는 제1 대상 객체와 관련된 대상 바운딩박스를 결정하는 내용을 중심으로 서술하였다. 다만 이는 설명의 편의를 위한 것이며, 제2 대상 객체와 관련된 대상 바운딩박스를 결정하는 내용에도 유추적용될 수 있다.
이하에서는 도 14를 참고하여 따른 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 다른 실시예를 구체적으로 서술한다. 도 14는 본 출원의 다른 실시예에 따른 대상 객체와 관련된 대상 바운딩박스를 획득하는 단계를 구체화한 순서도이다.
본 출원의 다른 실시예에 따른 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5000)는 제1 객체 정보에 포함된 대상 객체와 관련된 제1 셀 정보를 투영하여 제1 투영 직선을 획득하는 단계(S5400), 제2 객체 정보에 포함된 대상 객체와 관련된 제2 셀 정보를 투영하여 제2 투영 직선을 획득하는 단계(S5500), 및 제1 투영 직선 및 제2 투영 직선에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5600)을 포함할 수 있다.
제1 객체 정보에 포함된 대상 객체와 관련된 제1 셀 정보를 투영하여 제1 투영 직선을 획득하는 단계(S5400)에서는, 서버(1000)는 제1 객체 정보에 포함된 대상 객체의 랜드마크(예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발)에 대응되는 제1 셀 정보를 3차원 공간좌표에 투영하여 제1 투영 직선을 획득할 수 있다.
제2 객체 정보에 포함된 대상 객체와 관련된 제2 셀 정보를 투영하여 제2 투영 직선을 획득하는 단계(S5500)에서는, 서버(1000)는 제2 객체 정보에 포함된 대상 객체의 랜드마크(예, 눈, 코, 귀, 어깨, 팔꿈치, 손, 골반, 무릎, 발)에 대응되는 제2 셀 정보를 3차원 공간좌표에 투영하여 제2 투영 직선을 획득할 수 있다.
제1 투영 직선 및 제2 투영 직선에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계(S5600)에서는, 서버(1000)는 제1 투영 직선과 제2 투영 직선에 기초하여 대상 객체와 관련된 3차원의 대상 바운딩박스를 연산할 수 있다. 일 예로, 서버(1000)는 제1 투영 직선과 제2 투영 직선 간의 교차점이 존재하는 경우에는 제1 투영 직선과 제2 투영 직선 간의 교차점을 획득할 수 있다. 다른 예로, 서버(1000)는 제1 투영 직선과 제2 투영 직선 간의 교차점이 존재하지 않는 경우에는, 제1 투영 직선과 제2 투영 직선으로부터 가장 가까운 3차원 공간좌표 상의 좌표를 획득할 수 있다. 또한, 서버(1000)는 대상 객체와 관련된 복수의 랜드마크 각각에 대응되는 제1 투영 직선과 제2 투영 직선을 획득하고, 제1 투영 직선과 제2 투영 직선 간의 교차점(또는 제1 투영 직선과 제2 투영 직선에 대하여 가장 가까운 3차원 공간좌표 상의 좌표)를 획득할 수 있다.
이때, 서버(1000)는 대상 객체의 각 랜드마크에 대응되는 교차점(또는 제1 투영 직선과 제2 투영 직선에 대하여 가장 가까운 3차원 공간좌표 상의 좌표)들을 포함하는 3차원 상의 대상 바운딩박스를 획득할 수 있다. 이때, 대상 바운딩박스는 교차점들을 포함하는 임의의 형태(예, 직육면체)로 구현될 수 있다.
한편, 전술한 바와 같이, 제1 영상(또는 제2 영상)으로부터 획득한 랜드마크의 교차점들이 어떤 조합으로 매칭되는지 불분명한 경우가 발생할 수 있다. 구체적으로, 대상 객체에 대하여 복수의 3차원의 바운딩박스(예, 제1 임시 바운딩박스, 제2 임시 바운딩박스 등)가 획득되는 경우가 존재할 수 있다. 이때, 본 출원의 일 실시예에 따른 서버(1000)는 각 랜드마크에 대응되는 투영 직선 사이의 거리에 기반하여 복수의 바운딩박스(예, 제1 임시 바운딩박스, 제2 임시 바운딩박스 중에서 3차원의 대상 바운딩박스를 결정하도록 구현될 수 있다.
구체적으로 서버(1000)는 대상 객체의 각 랜드마크에 대응되는 제1 투영 직선과 제2 투영 직선 간의 거리를 연산하고, 제1 투영 직선과 제2 투영 직선 간의 거리에 기반하여 복수의 바운딩박스(예, 제1 임시 바운딩박스, 제2 임시 바운딩박스) 각각에 매칭 점수를 부여할 수 있다. 일 예로, 서버(1000)는 제1 임시 바운딩박스와 관련된 적어도 하나의 랜드마크에 대응되는 제1 투영 직선과 제2 투영 직선 간의 거리들의 평균값 및/또는 중간값 등을 포함한 거리 정보를 연산하고, 거리 정보에 기초하여 제1 임시 바운딩박스에 제1 점수를 부여할 수 있다. 다른 예로, 서버(1000)는 제2 임시 바운딩박스와 관련된 적어도 하나의 랜드마크에 대응되는 제1 투영 직선과 제2 투영 직선 간의 거리들의 평균값 및/또는 중간값 등을 포함한 거리 정보를 연산하고, 거리 정보에 기초하여 제2 임시 바운딩박스에 제2 점수를 부여할 수 있다. 예컨대, 서버(1000)는 제1 투영 직선과 제2 투영 직선 간의 거리들의 평균값 및/또는 중간값 등을 포함한 거리 정보가 작은 값을 포함할수록, 바운딩박스에 더 작은 값을 부여할 수 있다. 특히 서버(1000)는 제1 투영 직선과 제2 투영 직선이 교차하는 경우에는 대응되는 바운딩박스의 교차점에 대하여 0점을 부여할 수 있다.
이때, 서버(1000)는 제1 점수와 제2 점수를 비교하여 제1 임시 바운딩박스와 제2 임시 바운딩박스 중에서 적어도 하나를 대상 바운딩박스로 결정할 수 있다. 예컨대, 제1 점수와 제2 점수를 비교하여 더 낮은 점수를 가지는 임시 바운딩박스를 대상 바운딩박스로 결정할 수 있다. 또한, 서버(1000)는 Hungarian algorithm을 통해 제1 임시바운딩박스와 제2 임시 바운딩박스 중에서 최적의 매칭 점수를 가지는 바운딩박스를 대상 바운딩박스로 결정할 수 있다.
다만, 상술한 내용은 예시에 불과하며, 서버(1000)는 거리 정보가 작은 값을 포함할수록, 임시 바운딩박스에 더 높은 값을 부여하고, 더 높은 점수를 가지는 임시 바운딩박스를 대상 바운딩박스로 결정하도록 구현될 수 있을 것이다.
다시 도 3을 참고하면, 본 출원의 일 실시예에 따른 학습 세트를 생성하는 방법은 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계(S6000)를 포함할 수 있다. 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계(S6000)에서는, 서버(1000)는 대상 바운딩박스와 관련된 센싱 데이터(예컨대, 레이더 데이터 또는 라이더 데이터)를 획득할 수 있다. 여기서, 센싱 데이터는 센서(200)로부터 획득된 이미지 형태의 데이터를 포함할 수 있다. 또한, 서버(1000)는, 전술한 바와 같이, 센싱 데이터와 카메라를 통하여 획득된 영상 데이터 간의 싱크(sync)를 맞추는 동작을 수행할 수 있기 때문에, 서버(1000)는 프레임별로 대상 바운딩박스에 대응되는 센싱 데이터를 획득할 수 있다.
다시 도 3을 참고하면, 본 출원의 일 실시예에 따른 학습 세트를 생성하는 방법은 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계(S7000)를 포함할 수 있다. 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계(S7000)에서는, 서버(1000)는 적어도 하나의 카메라를 통하여 획득한 대상 객체와 관련된 대상 바운딩박스와 센싱 데이터에 기초하여 신경망 모델을 학습시키기 위한 학습 세트를 생성할 수 있다. 예컨대, 서버(1000)는 센싱 데이터(예컨대, 레이더 데이터 또는 라이더 데이터)에 기초하여 대상 객체와 관련된 대상 바운딩박스를 출력하는 신경망 모델을 학습시키기 위한 학습 세트를 생성할 수 있다.
한편 도 3에서는 도시하지 않았으나, 본 출원의 일 실시예에 따른 학습 세트를 생성하는 방법은 제1 카메라(110)로부터 획득한 제1 영상, 제2 카메라(120)로부터 획득한 제2 영상, 및/또는 센서(200)로부터 획득한 센싱 데이터 간의 싱크(sync)를 맞추는 단계를 더 포함할 수 있다.
일 예로, 서버(1000)는 제1 카메라(110) 또는 제2 카메라(120)로부터 웹으로 브로드캐스트(broadcast)한 영상을 읽음으로써, 제1 카메라(110)로부터 획득한 제1 영상과 제2 카메라(120)로부터 획득한 제2 영상 간의 싱크를 맞추도록 구현될 수 있다. 예컨대, 서버(1000)는 OBS studio 27을 활용하여 제1 영상과 제2 영상을 획득하고, 공통의 서버(1000)의 시간 기준으로 제1 영상과 제2 영상의 타임 싱크를 맞추도록 구현될 수 있다.
다른 예로, 서버(1000)는 전술한 바와 같이, 센서(200)를 통하여 프레임 정보(예, 프레임 수 정보, 프레임 시간 정보 등), 메타 정보 등을 포함한 임의의 데이터를 획득할 수 있다. 이때, 서버(1000)는 프레임 정보 및/또는 메타 정보에 기초하여 영상 데이터와 센싱 데이터 간의 타임 싱크를 맞추도록 구현될 수 있다.
다만, 상술한 내용은 예시에 불과하며, 서버(1000)는 임의의 적절한 방법을 활용하여, 적어도 하나의 카메라로부터 획득한 영상 데이터와 센서로부터 획득한 센싱 데이터 간의 싱크를 맞추는 동작을 수행하도록 구현될 수 있다.
본 출원의 일 실시예에 따라 획득된 학습 세트는 센싱 데이터(예, 레이더 데이터 또는 라이더 데이터)에 기반하여 센싱 데이터에 포함된 대상 객체를 검출하고 검출된 대상 객체에 대응되는 3차원의 대상 바운딩박스를 출력하는 신경망 모델을 학습시키는 데 이용될 수 있다. 구체적으로 학습 세트는 전술한 학습 세트 생성 방법을 통하여 획득된 영상 데이터에 기반한 대상 객체에 대응되는 3차원의 대상 바운딩박스와 센싱 데이터를 포함할 수 있다. 이때 신경망 모델은 센싱 데이터를 입력 받고, 대상 객체에 대응되는 3차원의 대상 바운딩박스를 출력값으로 출력하도록 신경망 모델에 포함된 적어도 하나의 노드의 파라미터가 갱신될 수 있다.
학습이 완료된 신경망 모델은 센싱 데이터(예컨대, 레이더 데이터 또는 라이다 데이터)를 수신하고, 센싱 데이터에 포함된 대상 객체와 관련된 대상 바운딩박스를 출력하도록 구성될 수 있다.
본 출원의 일 실시예에 따른 학습이 완료된 신경망 모델은 차량에 탑재된 센서(예컨대, 라이더 센서 또는 레이더 센서)로부터 획득된 센싱 데이터에 기초하여, 차량 외부의 대상 객체를 인식하거나 차량 내부의 대상 객체를 인식하는 분야에 적용될 수 있다. 또한, 본 출원의 일 실시예에 따른 학습이 완료된 신경망 모델은 가정 또는 요양원 등에서의 객체의 낙상 감지(fall detection)에 이용될 수 있다. 구체적으로 벽이나 천장 등 일정 위치에 센서를 설치하고, 학습이 완료된 신경망 모델을 이용하여 대상 객체(예, 사람)를 인식하고, 대상 객체의 높이의 변화율을 연산하여 대상 객체의 낙상을 감지할 수 있다. 다만, 이는 예시에 불과하며, 임의의 유형의 센싱 데이터에 기초하여 대상 객체를 검출하는 임의의 적절한 분야에 활용될 수 있을 것이다.
본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)은 센싱 데이터 기반한 객체 인식 신경망 모델을 학습시키기 위한 학습 세트를 카메라 기반의 영상 데이터로부터 검출한 객체 정보와 연계하여 자동적으로 라벨링하여 생성함으로써, 라벨링 작업에 소요되는 시간 및 비용을 상당히 절약하고 용이하게 학습 세트를 획득할 수 있다는 유리한 효과를 제공할 수 있다.
또한, 본 출원의 일 실시예에 따른 학습 세트 생성 시스템(10)은 카메라 기반의 영상 데이터로부터 대상 객체와 관련된 대상 바운딩박스를 연산함에 있어, 특성 정보 간의 유사도 또는 대상 객체의 랜드마크를 이용하여 대상 바운딩박스를 정교하게 생성함으로써 보다 퀄리티가 높은 학습 세트를 획득할 수 있다.
상술한 서버(1000)의 다양한 동작들은 서버(1000)의 메모리(1200)에 저장될 수 있으며, 서버(1000)의 컨트롤러(1300)는 메모리(1200)에 저장된 동작들을 수행하도록 제공될 수 있다.
이상에서 실시 형태들에 설명된 특징, 구조, 효과 등은 본 발명의 적어도 하나의 실시 형태에 포함되며, 반드시 하나의 실시 형태에만 한정되는 것은 아니다. 나아가, 각 실시 형태에서 예시된 특징, 구조, 효과 등은 실시 형태들이 속하는 분야의 통상의 지식을 가지는 자에 의해 다른 실시 형태들에 대해서도 조합 또는 변형되어 실시 가능하다. 따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
또한, 이상에서 실시 형태를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시 형태의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 즉, 실시 형태에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
10: 학습 세트 생성 시스템
110: 제1 카메라
120: 제2 카메라
200: 센서
1000: 서버

Claims (9)

  1. 객체를 검출하는 신경망 모델을 훈련시키기 위한 학습 세트를 생성하는 학습 세트 생성 장치가 센싱 데이터에 기초하여 객체를 검출하는 신경망 모델을 훈련시키기 위한 학습 세트를 생성하는 방법에 있어서, 상기 방법은,
    제1 카메라로부터 촬영된 제1 영상과 제2 카메라로부터 촬영된 제2 영상을 획득하는 단계;
    상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하는 단계;
    상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제2 객체 정보를 획득하는 단계;
    상기 제1 객체 정보 및 상기 제2 객체 정보에 기초하여 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계;
    상기 대상 바운딩박스에 대응되는 센싱 데이터를 획득하는 단계-상기 센싱 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-; 및
    상기 센싱 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하는 단계;를 포함하되,
    상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계는,
    상기 제1 객체 정보에 포함된 제1 바운딩박스를 3차원 공간좌표에 리버스 투영(Revere project)하여 제1 투영 체적을 획득하는 단계;
    상기 제2 객체 정보에 포함된 제2 바운딩박스를 3차원 공간좌표에 리버스 투영(Revere project)하여 제2 투영 체적을 획득하는 단계;
    상기 제1 투영 체적 및 상기 제2 투영 체적에 기초하여 상기 제1 투영 체적과 상기 제2 투영 체적 간의 교차 체적을 획득하고, 상기 교차 체적에 기초하여 적어도 2 이상의 3차원의 임시 바운딩박스들을 획득하는 단계;
    상기 제1 바운딩박스와 관련된 제1 특성 정보를 획득하는 단계;
    상기 제2 바운딩박스와 관련된 제2 특성 정보를 획득하는 단계;
    상기 제1 특성 정보와 상기 제2 특성 정보의 유사도에 기초하여 상기 임시 바운딩박스에 매칭 점수를 할당하는 단계; 및
    상기 매칭 점수에 기초하여 상기 임시 바운딩박스들 중에서 상기 대상 바운딩박스를 결정하는 단계;를 포함하는,
    학습 세트 생성 방법.
  2. 제1 항에 있어서,
    상기 제1 특성 정보는 상기 제1 바운딩박스와 관련된 색 정보에 관한 것이며, 상기 제2 특성 정보는 상기 제2 바운딩박스와 관련된 색 정보에 관한 것인,
    학습 세트 생성 방법.
  3. 제1 항에 있어서,
    상기 대상 객체와 관련된 상기 대상 바운딩박스를 획득하는 단계는,
    상기 제1 투영 체적을 구성하는 적어도 하나의 제1 평면을 획득하는 단계;
    상기 제2 투영 체적을 구성하는 적어도 하나의 제2 평면을 획득하는 단계; 및
    상기 제1 평면 및 상기 제2 평면의 공통 평면을 획득하고, 상기 공통 평면에 기초하여 상기 대상 바운딩박스를 획득하는 단계;를 포함하는,
    학습 세트 생성 방법.
  4. 제1 항에 있어서,
    상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하는 단계는,
    상기 제1 객체 정보에 포함된 상기 대상 객체와 관련된 제1 셀 정보를 3차원 공간좌표에 투영하여 제1 투영 직선을 획득하는 단계;
    상기 제2 객체 정보에 포함된 상기 대상 객체와 관련된 제2 셀 정보를 3차원 공간좌표에 투영하여 제2 투영 직선을 획득하는 단계; 및
    상기 제1 투영 직선 및 상기 제2 투영 직선에 기초하여 상기 대상 객체와 관련된 3차원 대상 바운딩박스를 획득하는 단계;를 포함하는,
    학습 세트 생성 방법.
  5. 제4 항에 있어서,
    상기 제1 투영 직선 및 상기 제2 투영 직선에 기초하여 상기 대상 객체와 관련된 3차원 대상 바운딩박스를 획득하는 단계는,
    상기 제1 투영 직선 및 상기 제2 투영 직선에 기초하여 제1 임시 바운딩박스 및 제2 임시 바운딩박스를 포함하는 적어도 2 이상의 3차원의 임시 바운딩박스들을 획득하는 단계;
    상기 제1 투영 직선 및 상기 제2 투영 직선 간의 거리를 연산하는 단계;
    상기 연산된 거리에 기초하여 상기 제1 임시 바운딩박스에 제1 점수 및 상기 제2 임시 바운딩박스에 제2 점수를 할당하는 단계; 및
    상기 제1 점수 및 상기 제2 점수를 비교하여 상기 제1 임시 바운딩박스 및 상기 제2 임시 바운딩박스 중에서 적어도 하나를 대상 바운딩박스로 결정하는 단계;를 포함하는,
    학습 세트 생성 방법.
  6. 제1 항에 있어서, 상기 방법은,
    상기 카메라를 통하여 제1 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계;
    상기 이미지에 기초하여 상기 제1 캘리브레이션 기준 객체와 관련된 제1 픽셀 세트를 획득하는 단계;
    상기 카메라의 좌표계 정보를 획득하는 단계; 및
    상기 좌표계 정보 및 상기 제1 픽셀 세트에 기초하여 상기 카메라의 내부 파라미터(intrinsic parameter)를 보정하는 단계;를 포함하는, 적어도 2 이상의 카메라에 대하여 캘리브레이션을 수행하는 단계를 더 포함하는,
    학습 세트 생성 방법.
  7. 제6 항에 있어서,
    상기 적어도 2 이상의 카메라에 대하여 캘리브레이션을 수행하는 단계는,
    적어도 2 이상의 카메라의 외부 파라미터의 캘리브레이션을 수행하는 단계를 포함하되,
    상기 적어도 2 이상의 카메라의 외부 파라미터의 캘리브레이션을 수행하는 단계는,
    제2 캘리브레이션 기준 객체에 대한 기준 좌표 정보를 획득하는 단계-상기 기준 좌표 정보는 라이더 센서 및 레이더 센서 중 적어도 하나의 센서 기반 좌표계와 관련됨-;
    상기 카메라를 통하여 상기 제2 캘리브레이션 기준 객체에 대한 이미지를 획득하는 단계;
    상기 이미지에 기초하여 상기 제2 캘리브레이션 기준 객체와 관련된 제2 픽셀 세트를 획득하는 단계;
    상기 기준 좌표 정보 및 상기 제2 픽셀 세트에 기초하여 좌표 쌍(pair)을 획득하는 단계; 및
    상기 좌표 쌍에 기초하여 상기 카메라의 외부 파라미터에 대한 보정을 수행하는 단계;를 포함하는,
    학습 세트 생성 방법.
  8. 컴퓨터에 제1 항 내지 제7 항 중 어느 하나의 항에 따른 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  9. 센싱 데이터에 기초하여 객체를 검출하는 신경망 모델을 훈련시키기 위한 학습 세트를 생성하는 학습 세트 생성 장치에 있어서,
    제1 카메라, 제2 카메라 및 센서 중 적어도 하나와 통신하는 송수신부; 및
    상기 제1 카메라 및 상기 제2 카메라를 통하여 영상 데이터를 획득하고, 상기 센서를 통하여 센싱 데이터를 획득하고, 상기 영상 데이터 및 상기 센싱 데이터에 기반하여 학습 세트를 생성하는 컨트롤러;를 포함하되,
    상기 컨트롤러는,
    상기 제1 카메라로부터 촬영된 제1 영상과 상기 제2 카메라로부터 촬영된 제2 영상을 획득하고, 상기 제1 영상으로부터 대상 객체를 인식하고 상기 대상 객체와 관련된 제1 객체 정보를 획득하고, 상기 제2 영상으로부터 상기 대상 객체를 인식하고 상기 대상 객체와 관련된 제2 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보에 기초하여 상기 대상 객체와 관련된 3차원의 대상 바운딩박스를 획득하고, 상기 대상 바운딩박스에 대응되는 센서 데이터-상기 센서 데이터는 라이더 센서 및 레이더 센서 중 적어도 하나를 통하여 획득됨-;를 획득하고, 상기 센서 데이터 및 상기 대상 바운딩박스에 기초하여, 상기 센싱 데이터에 포함된 객체를 검출하는 신경망 모델을 학습시키기 위한 학습 세트를 생성하도록 구성되되,
    상기 컨트롤러는,
    상기 제1 객체 정보에 포함된 제1 바운딩박스를 3차원 공간좌표에 리버스 투영(Revere project)하여 제1 투영 체적을 획득하고, 상기 제2 객체 정보에 포함된 제2 바운딩박스를 3차원 공간좌표에 리버스 투영(Revere project)하여 제2 투영 체적을 획득하고, 상기 제1 투영 체적 및 상기 제2 투영 체적에 기초하여 상기 제1 투영 체적과 상기 제2 투영 체적 간의 교차 체적을 획득하고, 상기 교차 체적에 기초하여 적어도 2 이상의 3차원의 임시 바운딩박스들을 획득하고, 상기 제1 바운딩박스와 관련된 제1 특성 정보를 획득하고, 상기 제2 바운딩박스와 관련된 제2 특성 정보를 획득하고, 상기 제1 특성 정보와 상기 제2 특성 정보의 유사도에 기초하여 상기 임시 바운딩박스에 매칭 점수를 할당하고, 상기 매칭 점수에 기초하여 상기 임시 바운딩박스들 중에서 상기 대상 바운딩박스를 결정하도록 구성되는,
    학습 세트 생성 장치.
KR1020220100621A 2021-10-12 2022-08-11 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템 KR102639637B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220100621A KR102639637B1 (ko) 2021-10-12 2022-08-11 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템
PCT/KR2022/015177 WO2023063661A1 (ko) 2021-10-12 2022-10-07 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210134610A KR102433287B1 (ko) 2021-10-12 2021-10-12 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템
KR1020220100621A KR102639637B1 (ko) 2021-10-12 2022-08-11 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210134610A Division KR102433287B1 (ko) 2021-10-12 2021-10-12 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템

Publications (2)

Publication Number Publication Date
KR20230052208A true KR20230052208A (ko) 2023-04-19
KR102639637B1 KR102639637B1 (ko) 2024-02-22

Family

ID=85988825

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220100621A KR102639637B1 (ko) 2021-10-12 2022-08-11 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템

Country Status (2)

Country Link
KR (1) KR102639637B1 (ko)
WO (1) WO2023063661A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116485917B (zh) * 2023-06-19 2023-09-22 擎翌(上海)智能科技有限公司 拍摄装置与雷达装置的联合标定方法、***、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200071960A (ko) * 2018-12-12 2020-06-22 충북대학교 산학협력단 카메라 및 라이다 센서 융합을 이용한 객체 검출 방법 및 그를 위한 장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8600192B2 (en) * 2010-12-08 2013-12-03 Cognex Corporation System and method for finding correspondence between cameras in a three-dimensional vision system
US10839234B2 (en) * 2018-09-12 2020-11-17 Tusimple, Inc. System and method for three-dimensional (3D) object detection
US11475589B2 (en) * 2020-04-03 2022-10-18 Fanuc Corporation 3D pose estimation by a 2D camera
KR102433287B1 (ko) * 2021-10-12 2022-08-18 주식회사 에너자이(ENERZAi) 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200071960A (ko) * 2018-12-12 2020-06-22 충북대학교 산학협력단 카메라 및 라이다 센서 융합을 이용한 객체 검출 방법 및 그를 위한 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Li, Peiliang, Xiaozhi Chen, and Shaojie Shen. Stereo R-CNN based 3D Object Detection for Autonomous Driving. arXiv preprint arXiv:1902.09738.(2019.02.) *

Also Published As

Publication number Publication date
WO2023063661A1 (ko) 2023-04-20
KR102639637B1 (ko) 2024-02-22

Similar Documents

Publication Publication Date Title
CN110568447B (zh) 视觉定位的方法、装置及计算机可读介质
CN104885098B (zh) 基于移动装置的文本检测及跟踪
Tamas et al. Targetless calibration of a lidar-perspective camera pair
US10438412B2 (en) Techniques to facilitate accurate real and virtual object positioning in displayed scenes
JP2016029564A (ja) 対象検出方法及び対象検出装置
US11488354B2 (en) Information processing apparatus and information processing method
JP6172432B2 (ja) 被写体識別装置、被写体識別方法および被写体識別プログラム
EP3905195A1 (en) Image depth determining method and living body identification method, circuit, device, and medium
US11232315B2 (en) Image depth determining method and living body identification method, circuit, device, and medium
JP2004235934A (ja) キャリブレーション処理装置、およびキャリブレーション処理方法、並びにコンピュータ・プログラム
JP2016170610A (ja) 三次元モデル処理装置およびカメラ校正システム
WO2021114777A1 (en) Target detection method, terminal device, and medium
CN114766042A (zh) 目标检测方法、装置、终端设备及介质
KR102639637B1 (ko) 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템
KR102433287B1 (ko) 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템
CN112802114A (zh) 多视觉传感器融合装置及其方法和电子设备
US11145048B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium for storing program
US20230306636A1 (en) Object three-dimensional localizations in images or videos
US10281265B2 (en) Method and system for scene scanning
JP7298687B2 (ja) 物体認識装置及び物体認識方法
CN116912417A (zh) 基于人脸三维重建的纹理贴图方法、装置、设备和存储介质
KR102540678B1 (ko) 카메라이미지를 이용하여 객체의 위치정보 출력을 보완하는 방법 및 그 시스템
Nakazawa et al. Calibration of multiple kinects with little overlap regions
JP2016170031A (ja) 三次元モデル処理装置およびカメラ校正システム
JP2021047516A (ja) 情報処理装置、座標変換システム、座標変換方法、及び座標変換プログラム

Legal Events

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