[go: up one dir, main page]

KR102361133B1 - 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치 - Google Patents

이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치 Download PDF

Info

Publication number
KR102361133B1
KR102361133B1 KR1020210126023A KR20210126023A KR102361133B1 KR 102361133 B1 KR102361133 B1 KR 102361133B1 KR 1020210126023 A KR1020210126023 A KR 1020210126023A KR 20210126023 A KR20210126023 A KR 20210126023A KR 102361133 B1 KR102361133 B1 KR 102361133B1
Authority
KR
South Korea
Prior art keywords
main
sub
distance
inverse
virtual
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020210126023A
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 주식회사 멀티플아이
Priority to KR1020210126023A priority Critical patent/KR102361133B1/ko
Application granted granted Critical
Publication of KR102361133B1 publication Critical patent/KR102361133B1/ko
Priority to US17/865,855 priority patent/US11704825B2/en
Priority to PCT/KR2022/010970 priority patent/WO2023048380A1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C3/00Measuring distances in line of sight; Optical rangefinders
    • G01C3/02Details
    • G01C3/06Use of electric means to obtain final indication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06T7/85Stereo camera calibration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/156Mixing image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • H04N5/225
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0092Image segmentation from stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Measurement Of Optical Distance (AREA)

Abstract

이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, (a) 제1 카메라 내지 제p 카메라 - 상기 제1 카메라 내지 상기 제p 카메라는 FOV(Field Of View)를 가지며 상기 제1 카메라 내지 상기 제p 카메라 각각의 FOV를 통해 이동체의 전방향(omni-direction)을 촬상함 - 가 상기 이동체에 상호 이격 배치된 상태에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 제1 이미지 내지 제p 이미지가 수신되면, 비전 장치가, 상기 제1 이미지 내지 상기 제p 이미지를 스윕 네트워크에 입력하여, 상기 스윕 네트워크로 하여금, 상기 제1 이미지 내지 상기 제p 이미지 상의 복수의 픽셀들을 소정의 메인 기준점을 기준으로 하여 형성되는 N개의 메인 가상 입체에 투영하여 복수의 메인 입체 이미지를 생성하도록 하고, 상기 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하도록 하는 단계; (b) 상기 비전 장치가, 상기 4차원 초기 코스트 볼륨을 복수의 3차원 컨벌루션 연산 레이어와 이에 대응되는 복수의 3차원 디컨벌루션 연산 레이어를 포함하는 코스트 볼륨 계산(cost volume computation) 네트워크에 입력하여 3차원 최종 메인 코스트 볼륨을 생성하는 단계; 및 (c) 상기 비전 장치가, (i) 상기 제1 카메라 내지 상기 제p 카메라 중 적어도 하나의 제k 카메라로부터 획득된 제k 이미지 상의 복수의 픽셀들을 소정의 제k 서브 기준점을 기준으로 하여 형성되는 M개의 제k 서브 가상 입체에 투영하여 복수의 제k 서브 입체 이미지를 생성하고, 상기 복수의 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치를 상기 소정의 메인 기준점에 따라 변환한 제k 3차원 픽셀 좌표를 획득하며, 상기 제k 3차원 픽셀 좌표를 상기 3차원 최종 메인 코스트 볼륨에 적용하여 제k 서브 코스트 요소를 획득하고, 상기 제k 서브 코스트 요소를 이용하여 제k 서브 코스트 볼륨을 생성하며, 상기 제k 서브 코스트 볼륨을 이용하여 상기 제k 카메라의 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 입체까지의 거리인 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 거리들에 대한 적어도 하나의 제k 서브 인버스 거리 인덱스들을 생성하고, 상기 제k 서브 인버스 거리 인덱스로부터 추출한 상기 제k 서브 인버스 거리로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 소정의 메인 기준점으로부터 상기 N개의 메인 가상 입체까지의 거리인 N개의 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 거리에 대한 적어도 하나의 메인 인버스 거리 인덱스를 생성하고, 상기 메인 인버스 거리 인덱스로부터 추출한 상기 메인 인버스 거리로부터 상기 N개의 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 N개의 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 단계;를 포함하는 방법 및 이를 이용한 비전 장치가 개시된다.

Description

이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치{METHOD FOR ACQUIRING DISTANCE TO AT LEAST ONE OBJECT LOCATED IN OMNI-DIRECTION OF VEHICLE AND VISION DEVICE USING THE SAME}
본 발명은 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치에 관한 것으로, 보다 상세하게는, 복수의 카메라에서 촬상된 복수의 이미지를 복수의 가상 입체에 투영한 결과를 이용함으로써 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치에 관한 것이다.
이동체, 가령, 자율주행차량이 원활하게 주행하기 위해서는 자율주행차량 주변에 위치하는 물체에 대한 거리 정보가 필요하다.
종래에는, 이러한 물체에 대한 거리 정보를 획득하기 위해서 LIDAR 센서, RADAR 센서, 카메라 등이 사용되었다.
하지만, LIDAR, RADAR 센서를 이용하는 방식은, 가격이 매우 비싸고, 소모 전력랑이 매우 크며, 측정 해상도가 낮다는 문제점 등을 갖고 있다.
따라서, 위와 같은 문제점을 극복하기 위해서 복수의 카메라를 활용하여 물체에 대한 거리 정보를 획득하는 방식이 이용되고 있는데, 종래에는 복수의 카메라의 위치를 참조로 하여 설정된 하나의 기준점을 기준으로 하여 물체에 대한 거리 정보를 획득하는 방식이 이용되고 있다.
도 1을 참조하여 이동체의 전방향에 위치한 물체에 대한 거리를 획득하는 종래 기술의 문제점에 대해 구체적으로 설명하면, 복수의 카메라의 위치가 참조되어 설정된 하나의 기준점(110)으로부터 특정 방향을 따라 10m 거리에 물체 A(가령, 사람)(210)가 위치하고, 20m 거리에 물체 B(가령, 특정 지점의 벽면)(220)가 위치한다고 할 때, 기준점에서는 물체 A(210)에 의해 가려져서 보이지 않는 특정 지점의 벽면 B(220)가, 제1 카메라의 위치(120-1) 및 제2 카메라의 위치(120-2)에서는 관측될 수 있다.
이와 같은 경우, 종래의 비전 장치는, 기준점으로부터 물체 A까지의 거리 정보 및 기준점으로부터 물체 B까지의 거리 정보 모두에 대해서 positive true response인 것으로 추정하게 된다.
이에 따라, 비전 장치는, 기준점으로부터 특정 방향에 위치하는 물체 A 및 물체 B 중, 더 가까이 위치하는 물체 A까지의 거리를 출력해야 함에도 불구하고, (i) A의 위치 및 B의 위치 사이의 임의의 지점까지의 거리를 출력하거나, (ii) 작은 물체인 A에 대응되는 거리 정보를 noise로 판단하고 B까지의 거리를 가장 가까운 물체까지의 거리로서 출력하는 문제가 발생할 수 있다.
따라서, 상기 문제점들을 해결하기 위한 개선 방안이 요구되는 실정이다.
본 발명은 상술한 문제점을 모두 해결하는 것을 그 목적으로 한다.
또한, 본 발명은 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 것을 다른 목적으로 한다.
또한, 본 발명은 복수의 카메라의 복수의 이미지로부터 획득되는 메인 코스트 볼륨을 이용하여 각각의 카메라별로 서브 코스트 볼륨을 생성하고, 각각의 카메라별 서브 코스트 볼륨을 이용하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 정확한 거리를 획득하는 것을 또 다른 목적으로 한다.
또한, 본 발명은 물체에 대한 거리 정보를 이용하여 세그멘테이션 결과의 정확도를 향상시키는 것을 또 다른 목적으로 한다.
상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한, 본 발명의 특징적인 구성은 하기와 같다.
본 발명의 일 태양에 따르면, 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, (a) 제1 카메라 내지 제p 카메라 - 상기 제1 카메라 내지 상기 제p 카메라는 FOV(Field Of View)를 가지며 상기 제1 카메라 내지 상기 제p 카메라 각각의 FOV를 통해 이동체의 전방향(omni-direction)을 촬상함 - 가 상기 이동체에 상호 이격 배치된 상태에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 제1 이미지 내지 제p 이미지가 수신되면, 비전 장치가, 상기 제1 이미지 내지 상기 제p 이미지를 스윕 네트워크에 입력하여, 상기 스윕 네트워크로 하여금, 상기 제1 이미지 내지 상기 제p 이미지 상의 복수의 픽셀들을 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체를 기준으로 하여 형성되는 N개의 메인 가상 입체에 투영하여 복수의 메인 입체 이미지를 생성하도록 하고, 상기 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하도록 하는 단계; (b) 상기 비전 장치가, 상기 4차원 초기 코스트 볼륨을 복수의 3차원 컨벌루션 연산 레이어와 이에 대응되는 복수의 3차원 디컨벌루션 연산 레이어를 포함하는 코스트 볼륨 계산(cost volume computation) 네트워크에 입력하여 3차원 최종 메인 코스트 볼륨을 생성하는 단계; 및 (c) 상기 비전 장치가, (i) 상기 제1 카메라 내지 상기 제p 카메라 중 적어도 하나의 제k 카메라로부터 획득된 제k 이미지 상의 복수의 픽셀들을 소정의 제k 서브 기준점을 기준으로 하여 형성되는 M개의 제k 서브 가상 입체에 투영하여 복수의 제k 서브 입체 이미지를 생성하고, 상기 복수의 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치를 상기 소정의 메인 기준점에 따라 변환한 제k 3차원 픽셀 좌표를 획득하며, 상기 제k 3차원 픽셀 좌표를 상기 3차원 최종 메인 코스트 볼륨에 적용하여 제k 서브 코스트 요소를 획득하고, 상기 제k 서브 코스트 요소를 이용하여 제k 서브 코스트 볼륨을 생성하며, 상기 제k 서브 코스트 볼륨을 이용하여 상기 제k 카메라의 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 입체까지의 거리인 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 거리에 대한 적어도 하나의 제k 서브 인버스 거리 인덱스를 생성하고, 상기 제k 서브 인버스 거리 인덱스로부터 추출한 상기 제k 서브 인버스 거리로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 소정의 메인 기준점 또는 상기 소정의 메인 기준 가상 입체로부터 상기 N개의 메인 가상 입체까지의 거리인 N개의 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 거리에 대한 적어도 하나의 메인 인버스 거리 인덱스를 생성하고, 상기 메인 인버스 거리 인덱스로부터 추출한 상기 메인 인버스 거리로부터 상기 N개의 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 N개의 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 단계;를 포함하는 방법이 개시된다.
일례로서, 상기 N개의 메인 가상 입체는, (i) 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제1 메인 기준점을 중심으로 하며, (ii) 상기 N개의 메인 이격 거리로서 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 각각을 반지름으로 하는 N개의 메인 가상 구에 해당하고, 상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며, 상기 (c) 단계에서, 상기 비전 장치가, (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 제1 메인 기준점으로부터 상기 N개의 메인 가상 구까지의 거리인 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 뎁스에 대한 적어도 하나의 메인 인버스 뎁스 인덱스를 생성하고, 상기 메인 인버스 뎁스 인덱스로부터 추출한 상기 메인 인버스 뎁스로부터 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 N개의 메인 가상 입체는, 상기 메인 기준 가상 입체 - 상기 메인 기준 가상 입체는, 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제2 메인 기준점을 중심으로 함 - 의 오소고널(orthogonal)한 세 개의 메인 기준 평면 각각으로부터 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리마다 각각 형성된 세 개의 메인 확장 평면을 포함하는 메인 확장 평면 세트 및 상기 메인 확장 평면 세트에 포함된 상기 세 개의 메인 확장 평면 사이를 연결하기 위한 메인 연결 곡면을 포함하는 N개의 메인 가상 라운디드 큐보이드(rounded cuboid)에 해당하고, 상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며, 상기 (c) 단계에서, 상기 비전 장치가, (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 N개의 메인 가상 라운디드 큐보이드 각각의 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 라디우스에 대한 메인 인버스 라디우스 인덱스를 생성하고, 상기 메인 인버스 라디우스 인덱스로부터 추출한 상기 메인 인버스 라디우스로부터 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 (a) 단계에서, 상기 비전 장치가, 상기 스윕 네트워크로 하여금, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 제i - 상기 i은 1 이상 N 이하의 정수임 - 메인 가상 라운디드 큐보이드 상의 특정 지점까지의 특정 거리 di을 계산하도록 하고, 상기 di을 참조하여 상기 제1 이미지 내지 상기 제p 이미지 상의 상기 복수의 픽셀들을 상기 제i 메인 가상 라운디드 큐보이드에 투영하도록 하되, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 상기 제i 메인 가상 라운디드 큐보이드 상의 상기 특정 지점까지의 상기 특정 거리 di는 하기 수식에 따라 결정되며, di = f(ri, θ, Ψ; w, h, l) 상기 수식에서, (i) 상기 ri은, 상기 메인 기준 가상 입체로부터 상기 제i 메인 가상 라운디드 큐보이드까지의 이격 거리이고, (ii) 상기 θ 및 Ψ 는, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점을 원점으로 하는 구면 좌표계에서 상기 메인 기준 가상 입체의 상기 제2 메인 기준점과 상기 특정 지점을 연결하는 가상 선분의 방위각 및 극각이며, (iii) 상기 w, h 및 l 각각은 상기 메인 기준 가상 입체의 서로 직교하는 제1 모서리, 제2 모서리 및 제3 모서리 각각의 길이에 대응되는 것을 특징으로 하는 방법이 개시된다.
일례로서, (d) 상기 비전 장치가, 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 단계;를 더 포함하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 비전 장치가, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 (a) 단계에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 상기 제1 이미지 내지 상기 제p 이미지가 수신되면, 상기 비전 장치가, 상기 제1 이미지 내지 상기 제p 이미지를 복수의 2차원 컨벌루션 레이어에 입력하여 상기 제1 이미지 내지 상기 제p 이미지에 대응되는 제1 특징 맵 내지 제p 특징 맵을 생성하고, 상기 제1 특징 맵 내지 상기 제p 특징 맵으로부터 상기 복수의 메인 입체 이미지를 생성하는 것을 특징으로 하는 방법이 개시된다.
일례로서, (e) 상기 2차원 컨벌루션 레이어 중 특정 2차원 컨벌루션 레이어로부터 상기 제k 이미지에 대응되는 제k 특징 맵이 획득되면, 상기 비전 장치가, 2차원 디컨벌루션 레이어를 포함하는 세그멘테이션 네트워크에 (i) 상기 제k 특징 맵 및 (ii) 상기 제k 서브 코스트 볼륨을 입력하여, 상기 세그멘테이션 네트워크로 하여금 상기 2차원 디컨벌루션 레이어를 통해 상기 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하도록 하는 단계;를 더 포함하는 것을 특징으로 하는 방법이 개시된다.
일례로서, (f) 상기 비전 장치가, (i) 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하고, (ii) 상기 제k 추정 세그멘테이션 결과 및 상기 제k 추정 세그멘테이션 결과에 대응되는 제k 그라운드 트루스 세그멘테이션 결과를 참조하여 생성한 적어도 하나의 세그멘테이션 로스를 이용한 엔드 투 엔드 방식으로 상기 세그멘테이션 네트워크를 학습하는 단계;를 더 포함하는 것을 특징으로 하는 방법이 개시된다.
일례로서, 상기 (f) 단계에서, 상기 비전 장치가, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 방법이 개시된다.
본 발명의 다른 태양에 따르면, 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 비전 장치에 있어서, 인스트럭션들을 저장하는 적어도 하나의 메모리; 및 상기 인스트럭션들을 실행하기 위해 구성된 적어도 하나의 프로세서를 포함하되, 상기 프로세서는, (1) 제1 카메라 내지 제p 카메라 - 상기 제1 카메라 내지 상기 제p 카메라는 FOV(Field Of View)를 가지며 상기 제1 카메라 내지 상기 제p 카메라 각각의 FOV를 통해 이동체의 전방향(omni-direction)을 촬상함 - 가 상기 이동체에 상호 이격 배치된 상태에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 제1 이미지 내지 제p 이미지가 수신되면, 상기 제1 이미지 내지 상기 제p 이미지를 스윕 네트워크에 입력하여, 상기 스윕 네트워크로 하여금, 상기 제1 이미지 내지 상기 제p 이미지 상의 복수의 픽셀들을 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체를 기준으로 하여 형성되는 N개의 메인 가상 입체에 투영하여 복수의 메인 입체 이미지를 생성하도록 하고, 상기 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하도록 하는 프로세스, (2) 상기 4차원 초기 코스트 볼륨을 복수의 3차원 컨벌루션 연산 레이어와 이에 대응되는 복수의 3차원 디컨벌루션 연산 레이어를 포함하는 코스트 볼륨 계산(cost volume computation) 네트워크에 입력하여 3차원 최종 메인 코스트 볼륨을 생성하는 프로세스 및 (3) (i) 상기 제1 카메라 내지 상기 제p 카메라 중 적어도 하나의 제k 카메라로부터 획득된 제k 이미지 상의 복수의 픽셀들을 소정의 제k 서브 기준점을 기준으로 하여 형성되는 M개의 제k 서브 가상 입체에 투영하여 복수의 제k 서브 입체 이미지를 생성하고, 상기 복수의 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치를 상기 소정의 메인 기준점에 따라 변환한 제k 3차원 픽셀 좌표를 획득하며, 상기 제k 3차원 픽셀 좌표를 상기 3차원 최종 메인 코스트 볼륨에 적용하여 제k 서브 코스트 요소를 획득하고, 상기 제k 서브 코스트 요소를 이용하여 제k 서브 코스트 볼륨을 생성하며, 상기 제k 서브 코스트 볼륨을 이용하여 상기 제k 카메라의 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 입체까지의 거리인 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 거리에 대한 적어도 하나의 제k 서브 인버스 거리 인덱스를 생성하고, 상기 제k 서브 인버스 거리 인덱스로부터 추출한 상기 제k 서브 인버스 거리로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체로부터 상기 N개의 메인 가상 입체까지의 거리인 N개의 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 거리에 대한 적어도 하나의 메인 인버스 거리 인덱스를 생성하고, 상기 메인 인버스 거리 인덱스로부터 추출한 상기 메인 인버스 거리로부터 상기 N개의 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 N개의 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 프로세스를 수행하는 비전 장치가 개시된다.
일례로서, 상기 N개의 메인 가상 입체는, (i) 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제1 메인 기준점을 중심으로 하며, (ii) 상기 N개의 메인 이격 거리로서 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 각각을 반지름으로 하는 N개의 메인 가상 구에 해당하고, 상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며, 상기 프로세서는, 상기 (3) 프로세스에서, (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 제1 메인 기준점으로부터 상기 N개의 메인 가상 구까지의 거리인 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 뎁스에 대한 적어도 하나의 메인 인버스 뎁스 인덱스를 생성하고, 상기 메인 인버스 뎁스 인덱스로부터 추출한 상기 메인 인버스 뎁스로부터 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, 상기 N개의 메인 가상 입체는, 상기 메인 기준 가상 입체 - 상기 메인 기준 가상 입체는, 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제2 메인 기준점을 중심으로 함 - 의 오소고널(orthogonal)한 세 개의 메인 기준 평면 각각으로부터 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리마다 각각 형성된 세 개의 메인 확장 평면을 포함하는 메인 확장 평면 세트 및 상기 메인 확장 평면 세트에 포함된 상기 세 개의 메인 확장 평면 사이를 연결하기 위한 메인 연결 곡면을 포함하는 N개의 메인 가상 라운디드 큐보이드(rounded cuboid)에 해당하고, 상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며, 상기 프로세서는, 상기 (3) 프로세스에서, (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 N개의 메인 가상 라운디드 큐보이드 각각의 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 라디우스에 대한 적어도 하나의 메인 인버스 라디우스 인덱스를 생성하고, 상기 메인 인버스 라디우스 인덱스로부터 추출한 상기 메인 인버스 라디우스로부터 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, 상기 프로세서는, 상기 (1) 프로세스에서, 상기 스윕 네트워크로 하여금, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 제i - 상기 i은 1 이상 N 이하의 정수임 - 메인 가상 라운디드 큐보이드 상의 특정 지점까지의 특정 거리 di을 계산하도록 하고, 상기 di을 참조하여 상기 제1 이미지 내지 상기 제p 이미지 상의 상기 복수의 픽셀들을 상기 제i 메인 가상 라운디드 큐보이드에 투영하도록 하되, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 상기 제i 메인 가상 라운디드 큐보이드 상의 상기 특정 지점까지의 상기 특정 거리 di는 하기 수식에 따라 결정되며, di = f(ri, θ, Ψ; w, h, l) 상기 수식에서, (i) 상기 ri은, 상기 메인 기준 가상 입체로부터 상기 제i 메인 가상 라운디드 큐보이드까지의 이격 거리이고, (ii) 상기 θ 및 Ψ 는, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점을 원점으로 하는 구면 좌표계에서 상기 메인 기준 가상 입체의 상기 제2 메인 기준점과 상기 특정 지점을 연결하는 가상 선분의 방위각 및 극각이며, (iii) 상기 w, h 및 l 각각은 상기 메인 기준 가상 입체의 서로 직교하는 제1 모서리, 제2 모서리 및 제3 모서리 각각의 길이에 대응되는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, (4) 상기 프로세서는, 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 프로세스를 더 수행하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, 상기 프로세서는, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, 상기 프로세서는, 상기 (1) 프로세스에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 상기 제1 이미지 내지 상기 제p 이미지가 수신되면, 상기 제1 이미지 내지 상기 제p 이미지를 복수의 2차원 컨벌루션 레이어에 입력하여 상기 제1 이미지 내지 상기 제p 이미지에 대응되는 제1 특징 맵 내지 제p 특징 맵을 생성하고, 상기 제1 특징 맵 내지 상기 제p 특징 맵으로부터 상기 복수의 메인 입체 이미지를 생성하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, (5) 상기 프로세서는, 상기 2차원 컨벌루션 레이어 중 특정 2차원 컨벌루션 레이어로부터 상기 제k 이미지에 대응되는 제k 특징 맵이 획득되면, 2차원 디컨벌루션 레이어를 포함하는 세그멘테이션 네트워크에 (i) 상기 제k 특징 맵 및 (ii) 상기 제k 서브 코스트 볼륨을 입력하여, 상기 세그멘테이션 네트워크로 하여금 상기 2차원 디컨벌루션 레이어를 통해 상기 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하도록 하는 프로세스를 더 수행하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, (6) 상기 프로세서는, (i) 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하고, (ii) 상기 제k 추정 세그멘테이션 결과 및 상기 제k 추정 세그멘테이션 결과에 대응되는 제k 그라운드 트루스 세그멘테이션 결과를 참조하여 생성한 적어도 하나의 세그멘테이션 로스를 이용한 엔드 투 엔드 방식으로 상기 세그멘테이션 네트워크를 학습하는 프로세스를 더 수행하는 것을 특징으로 하는 비전 장치가 개시된다.
일례로서, 상기 프로세서는, 상기 (6) 프로세스에서, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 비전 장치가 개시된다.
본 발명은 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 효과가 있다.
또한, 본 발명은 복수의 카메라의 복수의 이미지로부터 획득되는 메인 코스트 볼륨을 이용하여 각각의 카메라별로 서브 코스트 볼륨을 생성한 후, 각각의 카메라별 서브 코스트 볼륨을 이용하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 정확한 거리를 획득하는 효과가 있다.
또한, 본 발명은 물체에 대한 거리 정보를 이용하여 세그멘테이션 결과의 정확도를 향상시키는 효과가 있다.
본 발명의 실시예의 설명에 이용되기 위하여 첨부된 아래 도면들은 본 발명의 실시예들 중 단지 일부일 뿐이며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자(이하 "통상의 기술자")에게 있어서는 발명적 작업이 이루어짐 없이 이 도면들에 기초하여 다른 도면들이 얻어질 수 있다.
도 1은 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 종래 기술의 문제점을 설명하기 위한 것이며,
도 2는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 비전 장치를 개략적으로 도시한 것이며,
도 3은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 복수의 카메라가 이동체에 상호 이격 배치된 모습을 개략적으로 도시한 것이며,
도 4는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 복수의 카메라의 촬상 범위를 개략적으로 도시한 것이며,
도 5는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서 카메라 캘리브레이션을 수행하는 프로세스를 개략적으로 도시한 것이며,
도 6은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 이미지 투영 모델을 개략적으로 도시한 것이며,
도 7은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 이미지 투영 모델을 이용한 결과로서의 스테레오 이미지를 개략적으로 도시한 것이며,
도 8은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 카메라 자세 추정 알고리즘을 개략적으로 도시한 것이며,
도 9는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 메인 기준 가상 입체 및 메인 가상 라운디드 큐보이드를 개략적으로 도시한 것이며,
도 10a 내지 도 10g는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 메인 기준 가상 입체의 제2 메인 기준점으로부터 메인 가상 라운디드 큐보이드 상의 특정 지점까지의 특정 거리 di를 계산하는 방법을 개략적으로 도시한 것이며,
도 11은, 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 3차원 최종 메인 코스트 볼륨을 이용하여 제k 서브 코스트 볼륨을 생성하는 과정을 개략적으로 도시한 것이며,
도 12는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 물체에 대한 거리 정보를 출력하고 제k 카메라의 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하는 과정을 개략적으로 도시한 것이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명의 목적들, 기술적 해법들 및 장점들을 분명하게 하기 위하여 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 통상의 기술자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다.
또한, 본 발명의 상세한 설명 및 청구항들에 걸쳐, "포함하다"라는 단어 및 그것의 변형은 다른 기술적 특징들, 부가물들, 구성요소들 또는 단계들을 제외하는 것으로 의도된 것이 아니다. 통상의 기술자에게 본 발명의 다른 목적들, 장점들 및 특성들이 일부는 본 설명서로부터, 그리고 일부는 본 발명의 실시로부터 드러날 것이다. 아래의 예시 및 도면은 실례로서 제공되며, 본 발명을 한정하는 것으로 의도된 것이 아니다.
더욱이 본 발명은 본 명세서에 표시된 실시예들의 모든 가능한 조합들을 망라한다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 비전 장치(1000)를 개략적으로 도시한 것이다.
도 2를 참조하면, 비전 장치(1000)는 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하기 위한 인스트럭션들을 저장하는 메모리(1010)와 메모리(1010)에 저장된 인스트럭션들에 대응하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 프로세서(1020)를 포함할 수 있다. 이때, 비전 장치는 PC(Personal Computer), 모바일 컴퓨터 등을 포함할 수 있다.
구체적으로, 비전 장치는 전형적으로 컴퓨팅 장치(예컨대, 컴퓨터 프로세서, 메모리, 스토리지, 입력 장치 및 출력 장치, 기타 기존의 컴퓨팅 장치의 구성요소들을 포함할 수 있는 장치; 라우터, 스위치 등과 같은 전자 통신 장치; 네트워크 부착 스토리지(NAS) 및 스토리지 영역 네트워크(SAN)와 같은 전자 정보 스토리지 시스템)와 컴퓨터 소프트웨어(즉, 컴퓨팅 장치로 하여금 특정의 방식으로 기능하게 하는 인스트럭션들)의 조합을 이용하여 원하는 시스템 성능을 달성하는 것일 수 있다.
또한, 컴퓨팅 장치의 프로세서는 MPU(Micro Processing Unit) 또는 CPU(Central Processing Unit), 캐쉬 메모리(Cache Memory), 데이터 버스(Data Bus) 등의 하드웨어 구성을 포함할 수 있다. 또한, 컴퓨팅 장치는 운영체제, 특정 목적을 수행하는 애플리케이션의 소프트웨어 구성을 더 포함할 수도 있다.
그러나, 컴퓨팅 장치가 본 발명을 실시하기 위한 미디엄, 프로세서 및 메모리가 통합된 형태인 integrated 프로세서를 포함하는 경우를 배제하는 것은 아니다.
위와 같은 구성의 비전 장치(1000)가 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 프로세스에 대해 아래에서 설명하기로 한다.
먼저, 제1 카메라 내지 제p 카메라가 이동체에 상호 이격 배치된 상태에서, 제1 카메라 내지 제p 카메라에서 촬상된 제1 이미지 내지 제p 이미지가 수신될 수 있다.
이때, 제1 카메라 내지 제p 카메라에서 생성되는 제1 이미지 내지 제p 이미지는 비전 장치(1000)에 직접 전송될 수도 있으며, 별도의 장치(예를 들어, 중계기 등)를 통하여 전송될 수도 있다. 또한, 제1 이미지 내지 제p 이미지는 유선 통신 방식뿐만 아니라, 무선 통신 방식으로도 비전 장치(1000)로 전송될 수도 있다.
또한, 제1 카메라 내지 제p 카메라는 FOV(Field Of View)를 가지며 제1 카메라 내지 제p 카메라 각각의 FOV를 통해 이동체의 전방향(omni-direction)을 촬상할 수 있다.
일례로, 제1 카메라 내지 제p 카메라는 이동체의 이동 방향에 대한 사선 방향으로 배치될 수 있다. 여기서 사선 방향은 이동체의 이동 방향(예를 들어, 전방)에 대해서 좌측으로 대략 45도, -45도, 225도, -225도의 사선 방향일 수 있으며, 각각의 방향마다 카메라가 배치되어 총 4대의 카메라가 배치될 수 있다. 다만, 상술한 수치는 예시에 불가하며, 카메라의 개수, 카메라의 배치 방향 및 카메라의 화각이 상기 수치에 한정되는 것은 아니다.
이와 같이 카메라 각각은 넓은 시야각을 가지므로, 적은 수의 카메라, 가령, 4대의 카메라만으로도 이동체의 전방향(전방, 양 측면, 후면)에 대한 이미지 생성이 가능하다. 또한, 모든 방향에 대해서 적어도 두 대의 카메라가 동일한 영역을 오버랩하여 촬상하는바, 물체에 대한 거리 추정이 가능해진다. 복수의 카메라의 구체적인 배치 구조 및 그에 따른 효과에 대해서는 도 3 및 도 4를 참조하여 후술하기로 한다.
그리고, 위와 같이 배치된 제1 카메라 내지 제p 카메라로부터 제1 이미지 내지 제p 이미지가 수신되면, 비전 장치(1000)는, 수신된 이미지에 대한 이미지 처리를 수행할 수 있다. 일례로, 제1 카메라 내지 제p 카메라 중 적어도 일부는 어안 렌즈 카메라일 수 있는데, 이러한 어안 렌즈 카메라는, 일반적인 카메라의 이미지 왜곡 특성과는 다른 이미지 왜곡 특성을 갖는다. 따라서, 비전 장치(1000)는, 후술할 이미지 대응 쌍 추정 등을 더욱 효과적으로 수행하기 위해서, 수신된 이미지에 대해서 어안 렌즈 특유의 이미지 왜곡을 보상하는 프로세스를 먼저 수행할 수 있다.
예를 들어, 비전 장치(1000)는 복수의 카메라 간에 화각이 겹치는 영역은 평면 모델에 투영하고, 화각이 겹치지 않는 영역은 원통 모델에 투영하여 수신된 이미지에 대한 이미지 처리를 수행할 수 있다.
이때, 비전 장치(1000)는 평면 모델과 원통 모델을 부드럽게 이어지는 하이브리드 투영 모델을 이용하여 원통 모델에 투영된 이미지와 평면 모델에 투영된 이미지를 결합할 수 있다. 이에 대해서는 도 6을 참조하여 후술하기로 한다.
그리고, 비전 장치(1000)는, 수신된 복수의 이미지를 스테레오 정합하여 이동체 전방향에 위치한 적어도 하나의 물체에 대한 거리 정보를 획득할 수 있다.
이때, 비전 장치(1000)는, 물체에 대한 거리 정보를 획득하기 위해 수신된 이미지 원본을 이용할 수 있으나, 이에 한정되는 것은 아니다.
일례로, 비전 장치(1000)는, 합성 뉴럴 네트워크에 복수의 이미지를 입력하여 복수의 이미지에 대응되는 복수의 특징 맵을 생성하고, 복수의 특징 맵을 이용하여 이동체 전방향에 위치한 적어도 하나의 물체에 대한 거리 정보를 획득할 수도 있다. 이처럼, 이미지 원본이 아닌, 특징 맵을 이용하는 경우, 스테레오 정합 과정에서의 연산량을 줄일 수 있는 효과가 있다.
지금까지, 비전 장치(1000)가 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 프로세스에 대해 개략적으로 설명하였으며, 아래에서는 좀 더 구체적으로 설명하기로 한다.
도 3은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 제1 카메라 내지 제p 카메라가 이동체에 상호 이격 배치된 모습을 개략적으로 도시한 도면이고, 도 4는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 제1 카메라 내지 제p 카메라의 촬상 범위를 개략적으로 도시하는 도면이다.
도 3 및 도 4를 참조하면, 4대의 카메라(300_1, 300_2, 300_3, 300_4)가 이동체, 가령, 차량의 루프의 각 코너에 배치된 것을 확인할 수 있다.
예를 들어, 제1 카메라(300_1)는 차량 루프의 전면 영역 중 우측에 배치되어, 차량의 전면 및 우측 방향을 촬상할 수 있다.
또한, 제2 카메라(300_2)는 차량 루프의 전면 영역 중 좌측에 배치되어, 차량의 전면 및 좌측 방향을 촬상할 수 있다.
이 경우, 차량의 전면 방향에 대해서 제1 카메라(300_1) 및 제2 카메라(300_2)가 상호 오버랩하여 촬상을 수행하므로, 차량 전면 방향에 위치하는 물체에 대한 거리 추정이 가능하다.
또한, 제3 카메라(300_3)는 차량 루프의 후면 영역 중 좌측에 배치되어, 차량의 좌측 및 후면 방향을 촬상할 수 있다.
이 경우, 차량의 좌측에 대해서 제2 카메라(300_2) 및 제3 카메라(300_3)가 상호 오버랩하여 촬상을 수행하므로, 차량 좌측 방향에 위치하는 물체에 대한 거리 추정이 가능하다.
그리고 제4 카메라(300_4)는 차량 루프의 후면 영역 중 우측에 배치되어, 차량의 후면 및 우측 방향을 촬상할 수 있다.
이 경우, 차량의 후면 방향에 대해서 제3 카메라(300_3) 및 제4 카메라(300_4)가 상호 오버랩하여 촬상을 수행하므로, 차량 후면 방향에 위치하는 물체에 대한 거리 추정이 가능하다.
또한, 차량의 우측에 대해서 제4 카메라(300_4) 및 제1 카메라(300_1)가 상호 오버랩하여 촬상을 수행하므로, 차량 우측 방향에 위치하는 물체에 대한 거리 추정이 가능하다.
또한, 상술한 제1 카메라 내지 제4 카메라(300_1, 300_2, 300_3, 300_4)는 수평방향으로 넓은 화각(가령, 220도의 화각)을 갖고, 카메라 간 넓은 상호 이격 거리(가령, 80~100cm의 이격 거리)를 가지는 상태에서, 차량의 전면/좌측면/우측면/후면 각각에 대해서 상호 이격된 2대의 카메라가 촬상을 수행할 수 있다.
한편, 도 3 및 도 4를 통해 도시된 예에서는 제1 카메라 내지 제p 카메라가 차량의 루프에 배치되는 것으로 도시하고 설명하였지만, 이와 달리, 차량의 필러 등(예를 들어, A필러, C 필러)에 배치될 수도 있다. 또는 복수의 카메라 중 일부는 보닛(bonnet)이나 사이드미러에 배치될 수도 있다.
또한, 이상에서는 차량이 승용차인 것으로 도시하고 설명하였지만, 구현시에는 화물차 또는 다양한 산업용 차량이 이용될 수 있으며, 이러한 경우, 각 차량에서 해당 차량의 전방향을 측정하기 적합한 영역에 복수의 카메라가 배치될 수 있다.
또한, 바퀴로 동작하는 이동체뿐만 아니라, 캐터필러로 동작하는 이동체나 프로펠러로 동작하는 드론, 선박 등도 이동체에 해당될 수 있다.
또한, 위에서 설명한 카메라는, 일반적인 가시광선 영역의 이미지를 생성하는 것만으로 한정되지 않으며, 적외선 영역의 이미지를 생성할 수도 있다.
한편, 위와 같은 카메라로부터 수신된 이미지를 이용하여 물체에 대한 정확한 거리를 획득하기 위해서는, 먼저, 이동체에 배치된 카메라의 3차원 자세를 정확하게 추정할 필요가 있다.
따라서, 아래에서는 카메라 캘리브레이션을 수행하는 프로세스에 대해 설명하겠다.
도 5는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서 카메라 캘리브레이션을 수행하는 프로세스를 개략적으로 도시하고 있다.
일례로, 도 5의 좌측 그림에서 도시하는 바와 같이, 하나의 체커 보드가 두 카메라에 의해 동시에 촬상될 수 있도록 체커 보드를 배치한 상태에서, 두 카메라가 동시에 해당 체커 보드에 대한 촬상을 수행할 수 있다.
그리고, 도 5의 가운데 그림에서 도시하는 바와 같이, 비전 장치(1000)는 각 카메라의 출력 이미지에서 체커 보드가 위치하는 영역을 감지하고, 감지된 체커 보드 영역을 기초로 두 카메라에 대한 캘리브레이션을 수행할 수 있다. 예를 들어, 제2 카메라(500_2)를 기준으로 제1 카메라(500_1)를 캘리브레이션하고, 순차적으로 제2 카메라(500_2)를 기준으로 제3 카메라(500_3)를 캘리브레이션하고, 마지막으로 제2 카메라(500_2)를 기준으로 제4 카메라(500_4)를 캘리브레이션 할 수 있다.
또는, 4 방위(전면, 좌측, 우측, 뒤쪽)중 적어도 3곳 이상에 체커 보드를 배치하여 동시에 4개의 카메라(500_1, 500_2, 500_3, 500_4)에 대한 캘리브레이션을 수행할 수도 있다.
이때, 비전 장치(1000)는 체커 보드 영상의 코너 좌표에 대한 영상 간의 재투영 오차(re-projection error)를 최소화하도록 캘리브레이션을 수행할 수 있다.
일례로, 비전 장치(1000)는 각 카메라에 대해서 체커 보드와의 상대적 위치를 산출하고, 상대적 위치를 이용하여 복수의 카메라 각각의 외적 매개변수 및 내적 매개변수를 최적화하는 동작을 수행할 수 있다.
참고로, 외적 매개변수는, 복수의 카메라 간의 상대적 자세와 관련된 매개변수일 수 있으며, 내적 매개변수는 카메라 각각의 렌즈 파라미터와 관련된 매개변수일 수 있다.
최적화 연산에 대해 좀 더 구체적으로 설명하면, 격자 무늬를 가지는 체커 보드를 상호 이격 배치된 복수의 카메라 중 인접한 두 개의 카메라 사이에 배치하고 촬상을 수행하여 두 개의 카메라로부터 획득한 출력 영상으로부터 체커 보드 내의 코너 좌표를 각각 감지하고, 감지된 코너 좌표를 참조하여 출력 영상 간의 재투영 오차(re-projection error)를 최소화하도록 두 개의 카메라에 대한 특정 외적 매개변수와 특정 내적 매개변수를 최적화 프로세스를 반복 수행하여, 복수의 카메라 전체에 대하여 외적 매개변수와 내적 매개변수를 최적화하는 연산일 수 있다.
그리고, 상술한 캘리브레이션 프로세스가 수행됨으로써, 도 5의 우측 그림에서 도시하는 바와 같이, 복수의 카메라 각각에 대한 자세 정보가 산출될 수 있다.
좀 더 구체적으로 설명하면, 투영 함수(Π)가 3차원 좌표(X)를 정규화된 이미지 평면 상의 2차원 좌표(x)로 매핑한다고 할 때, 이를 수학식 1과 같이 표현할 수 있다.
[수학식 1]
Figure 112021109495544-pat00001
여기서, x는 2차원 좌표, X는 3차원 좌표, Φ는 카메라 렌즈의 고유 매개변수이다. 이때, 정규화된 이미지 좌표(x)는 아핀 변환(affine transformation)(A(x))에 의하여 픽셀 좌표로 변환될 수 있다.
또한, 아래 수학식 2에 따라, 체커 보드 영상의 코너 좌표에 대한 영상 간의 재투영 오차(re-projection error)가 최소화되도록 캘리브레이션이 수행될 수 있다.
[수학식 2]
Figure 112021109495544-pat00002
여기서, {(i, k)}는 i번째 카메라에서 체커 보드 위치(k)의 관측치 세트이고, Xp는 체커 보드 내의 코너 위치(p)의 좌표이고,
Figure 112021109495544-pat00003
는 i 번째 이미지 내의 Xp의 픽셀 좌표일 수 있다.
또한, 외적 매개변수는
Figure 112021109495544-pat00004
= (rT, tT)T 로 표현될 수 있다. 참고로, r은 축 각도 회전이고, t는 변환 벡터이다(r, t ∈ R 3).
또한, 강성 변환 행렬(M(
Figure 112021109495544-pat00005
))은 [R(r) t] 로 주어질 수 있다. 여기서, R(r)은 r에 대응되는 3 x 3 회전 행렬일 수 있다.
또한, i 번째 카메라의 체커 보드 이미지로부터, i 번째 카메라의 내적 매개변수는 Φi, Ai이고, 체커 보드에 대한 i 번째 카메라의 상대적 위치는 {
Figure 112021109495544-pat00006
i,k} 로 표현할 수 있다. 여기서 k는 캡처 인덱스이다.
또한, i 번째 카메라부터 j 번째 카메라까지의 상대적인 위치는 동시에 촬영된 한 쌍의 이미지 (i, k), (j, k)의 쌍으로부터
Figure 112021109495544-pat00007
로 계산될 수 있다. 여기서, *는 조성(composition) 연산이고, -1 은 인버스 연산이다.
또한, 리그 좌표 시스템에서 카메라 외부 파라미터를 {
Figure 112021109495544-pat00008
* i}로 변환한다면, 투영 함수는
Figure 112021109495544-pat00009
와 같이 표현할 수 있다.
또한, 외부 보정에 대해서, 모든 카메라 포즈({
Figure 112021109495544-pat00010
i}) 및 체커 보드의 포즈({
Figure 112021109495544-pat00011
k})가 초기화될 수 있다.
또한, 이와 같은 최적화 프로세스가 수행되기 위해 Ceres solver가 이용될 수 있다.
한편, 본 발명의 카메라에는, 광각의 FoV를 확보하기 위해 어안 렌즈 카메라가 사용될 수 있는데, 이러한 어안 렌즈 카메라들로부터 출력되는 어안 이미지 각각은 동일한 물체를 촬상했음에도 불구하고 렌즈 왜곡으로 인해 각각의 어안 이미지마다 동일한 물체가 상이하게 표현될 수 있다. 따라서, 서로 다른 카메라 간의 자세 정보가 이용되지 않을 경우, 이미지의 유사성을 통한 대응 쌍 추정이 어려울 수 있다.
이러한 문제점을 극복하기 위해, 본 발명의 일 실시예에 따르면, 서로 다른 카메라 간의 자세 정보를 획득하고, 자세 정보를 이용하여 서로 다른 어안 이미지의 왜곡을 효과적으로 바로잡을 수 있는 이미지 투영 모델을 이용함으로써 이미지 유사도에 기반하여 대응쌍을 용이하게 추정할 수 있다.
도 6은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 이미지 투영 모델을 개략적으로 도시하고 있다.
도 6을 참조하면, 모든 카메라의 3차원 위치를 가장 잘 나타내는 하나의 평면(rig-plane, 가령, xz 평면)(610)을 최소자승법을 통해 결정하고, 이후에 서로 다른 인접 카메라 간(inter-view)을 연결하는 선에 평행하고, rig-plane(810)에 수직인 평면(가령, xy 평면)(620)을 결정하고, 카메라 간의 화각이 겹치는 부분은 해당 평면 모델에 투영하여 왜곡을 보정하고, 화각이 겹치지 않는 부분은 해당 원통 모델에 투영하여 왜곡을 개선할 수 있다.
구체적으로, 복수 카메라에서 촬상된 복수의 이미지가 수신되면, 비전 장치(1000)는, 최소자승법을 이용하여 복수의 카메라를 포함하는 평면(rig-plane)을 결정하고, 복수의 카메라 중 인접한 두 개의 카메라 간을 연결하는 선(base-line)에 평행하고, 평면에 수직인 평면식을 구하고, 두 개의 카메라 간의 FOV가 겹치는 부분에서 촬상된 제1 이미지 부분을 평면식에 평행인 평면 모델에 투영하며, 두 개의 카메라 간의 FOV가 겹치지 않는 부분에서 촬상된 제2 이미지 부분은 평면식에 수직인 원통 모델에 투영하고, 평면 모델과 원통 모델을 결합하여 하이브리드 투영 모델을 생성하는 이미지 처리 프로세스를 반복 수행하여, 복수의 카메라에서 촬상된 복수의 이미지에 대한 이미지 처리를 수행하여 최적화 프로세스에 이용할 수 있다.
도 7은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 이미지 투영 모델을 이용한 결과로서의 스테레오 이미지를 개략적으로 도시한 도면이다.
도 7을 참조하면, 도 7의 하단의 두 이미지에 반영된 왜곡이 개선됨으로써 도 7의 상단과 같은 보정 이미지가 생성되었음을 확인할 수 있다.
한편, 기존의 자세 추정 방식은 단안 카메라 영상 내의 2차원 점과 실제 3차원 점의 대응 쌍을 알고 있는 경우에 동작 가능하다.
반면에, 본 발명의 비전 장치(1000)는, 다중 카메라 시스템에 적용된다는 점에서 기존의 자세 추정 방식과 다르며, 본 발명의 비전 장치(1000)에 적용될 수 있는 자세 추정 알고리즘에 대해서 도 8을 참조하여 설명한다.
도 8은 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 카메라 자세 추정 알고리즘을 설명하기 위한 도면이다.
도 8을 참조하면, 다중 카메라 시스템에서 2차원 영상 점과 실제 3차원 점의 대응 쌍 3개를 아는 경우, 이들의 확률적 분포를 고려하여 카메라의 자세를 추정할 수 있다는 것을 확인할 수 있다.
구체적으로, 비전 장치(1000)는, 이미지 처리를 수행한 다음, 복수의 카메라 중 특정 카메라를 선정하여 특정 카메라에 의해 촬상된 특정 이미지에 대응되는 2차원 영상 점과 실제 3차원 영상 점의 특정 대응 쌍 3개로 구성된 복수의 세트를 샘플링하고, 복수의 세트마다 특정 대응 쌍 3개를 참조로 하여 생성된 리그에 대한 리그 자세 정보를 복수의 카메라의 복수의 이미지로부터 관측된 복수의 대응 쌍에 적용하여 기하학적 정합성을 확인하고, 기설정된 임계치 이하의 오차를 가지는 복수의 대응 쌍의 개수가 가장 많은 특정 세트에 대응되는 특정 리그 자세 정보를 리그에 대한 최적화된 리그 자세 정보로 설정함으로써 제1 기하학적 오차를 최소화할 수 있다.
한편, 복수의 카메라들은 차량과 같은 이동체에 설치되어 동작하며, 차량의 떨림과 같은 원인으로 인해 카메라의 자세가 변경될 수 있다. 물체에 대한 거리 정보를 추정하는 데 있어서 카메라의 자세 정보가 이용된다는 점에서, 변경된 자세가 반영되지 않는 경우 최종 거리 추정 결과에는 오차가 발생할 수 있다.
따라서, 비전 장치(1000)는, 카메라의 변경된 자세를 반영하여 물체에 대한 거리를 추정하기 위하여, 카메라의 자세 및 환경 지도에 더불어, 카메라 간의 상대적 자세를 동시에 최적화하여 거리 추정의 안정성을 확보할 수 있다.
구체적으로, 복수의 카메라가 이동체 상에 위치한 리그에 상호 이격 배치된 상태에서, 비전 장치(1000)는, 리그에 대한 리그 자세 정보에 대응되는 복수의 카메라에 대한 카메라 자세 정보에 대한 제1 기하학적 오차, 이동체의 위치에 대한 환경 지도에 대응되는 3차원 위치점에 대한 제2 기하학적 오차, 및 카메라 간의 상대적 자세에 대한 정보를 포함하는 외적 매개변수에 대한 제3 기하학적 오차를 최소화하여 이동체의 움직임에 따른 카메라 자세 정보 변경을 추적하는 최적화 프로세스를 수행할 수 있다.
이처럼, 비전 장치(1000)는, 카메라 자세를 실시간으로 확인하여 카메라 자세 정보 변경을 추적할 수 있으므로, 이동체의 이동에 따라 거리 추정 성능이 저하되는 것을 방지할 수 있다.
위와 같은 최적화 과정이 수행된 상태에서, 비전 장치(1000)는, 제1 이미지 내지 제p 이미지를 스윕 네트워크에 입력하여, 스윕 네트워크로 하여금, 제1 이미지 내지 제p 이미지 상의 복수의 픽셀들을 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체를 기준으로 하여 형성되는 N개의 메인 가상 입체에 투영하여 복수의 메인 입체 이미지를 생성하도록 할 수 있다.
참고로, 앞서 설명한 바와 같이, 비전 장치(1000)는 (i) 제1 이미지 내지 제p 이미지를 스윕 네트워크에 입력하여 복수의 메인 입체 이미지를 생성하도록 할 수 있으나, 다른 실시예로서 (ii) 제1 이미지 내지 제p 이미지를 복수의 2차원 컨벌루션 레이어에 입력하여 제1 이미지 내지 제p 이미지에 대응되는 제1 특징 맵 내지 제p 특징 맵을 생성한 후, 제1 특징 맵 내지 제p 특징 맵을 스윕 네트워크에 입력하여, 스윕 네트워크로 하여금 복수의 메인 입체 이미지를 생성하도록 할 수도 있다.
일례로, N개의 메인 가상 입체는, (i) 제1 카메라 내지 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 소정의 메인 기준점으로서의 제1 메인 기준점을 중심으로 하며, (ii) N개의 메인 이격 거리로서 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 각각을 반지름으로 하는 N개의 메인 가상 구에 해당할 수 있다.
다른 예로, N개의 메인 가상 입체는, 메인 기준 가상 입체의 오소고널(orthogonal)한 세 개의 메인 기준 평면 각각으로부터 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리마다 각각 형성된 세 개의 메인 확장 평면을 포함하는 메인 확장 평면 세트 및 메인 확장 평면 세트에 포함된 세 개의 메인 확장 평면 사이를 연결하기 위한 메인 연결 곡면을 포함하는 N개의 메인 가상 라운디드 큐보이드(rounded cuboid)에 해당할 수 있다.
이때, 메인 기준 가상 입체는, 제1 카메라 내지 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 소정의 메인 기준점으로서의 제2 메인 기준점을 중심으로 할 수 있다.
또한, 메인 기준 가상 입체의 사이즈의 애스팩트 레이쇼(aspect ratio)는, 이동체의 구조의 애스팩트 레이쇼 또는 이동체에 외접하는 가상의 직육면체의 애스팩트 레이쇼를 참조로 하여 결정될 수 있다.
메인 기준 가상 입체 및 메인 가상 라운디드 큐보이드에 대해서는 도 9를 참조하여 구체적으로 설명하기로 한다.
도 9는 본 발명의 일 실시예에 따른 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서, 메인 기준 가상 입체(910) 및 메인 가상 라운디드 큐보이드(920)를 개략적으로 도시한 것이다.
참고로, 설명의 편의상, 도 9는 한 개의 메인 가상 라운디드 큐보이드를 도시하고 있으나, 복수의 가상 라운디드 큐보이드, 가령 N개의 메인 가상 라운디드 큐보이드를 배제하는 것은 아니다.
도 9를 참조하면, 메인 기준 가상 입체(910)는 직육면체일 수 있고, 메인 기준 가상 입체(910)의 세 개의 모서리는, 서로 직교하는 축 방향, 가령 x축, y축, z축 방향 각각에 대응될 수 있으며, 그 길이가 각각 w, h, l일 수 있다.
또한, N개의 메인 가상 라운디드 큐보이드 중 어느 하나의 메인 가상 라운디드 큐보이드(920)에 대해 예를 들어 설명하면, 메인 가상 라운디드 큐보이드(920)는, 메인 기준 가상 입체(910)의 오소고널한 세 개의 메인 기준 평면(가령, xy평면, yz평면 및 xz평면 각각에 평행한 세 종류의 평면) 각각으로부터 소정의 이격 거리(즉, 라디우스 r)만큼 이격되어 형성된 세 개의 확장 평면을 포함하는 메인 확장 평면 세트 및 메인 확장 평면 세트에 포함된 세 개의 메인 확장 평면 사이를 연결하기 위한 메인 연결 곡면을 포함할 수 있다.
가령, 메인 가상 라운디드 큐보이드는 (i) 메인 기준 가상 입체의 양 옆으로(즉, x축 방향으로) 소정의 이격 거리 r만큼 이격된 채로 형성된 제1 메인 확장 평면, (ii) 메인 기준 가상 입체의 앞뒤로(즉, z축 방향으로) 소정의 이격 거리 r만큼 이격된 채로 형성된 제2 메인 확장 평면, (iii) 메인 기준 가상 입체의 위아래로(즉, y축 방향으로) 소정의 이격 거리 r만큼 이격된 채로 형성된 제3 메인 확장 평면 및 (iv) 세 종류의 메인 확장 평면 사이를 연결하기 위해 형성된 메인 연결 곡면을 포함할 수 있다.
또한, 도 9에서, 메인 가상 라운디드 큐보이드(920)에 포함된 확장 평면 세트는, 메인 기준 가상 입체(910)의 세 개의 메인 기준 평면 각각으로부터 동일한 이격 거리 r만큼 이격된 메인 확장 평면을 포함하는 것으로 도시하고 있으나, 이에 한정되는 것은 아니다.
일례로, N개의 메인 가상 라운디드 큐보이드 중 제K 가상 라운디드 큐보이드는, 메인 기준 가상 입체의 메인 기준 평면인 제1 메인 기준 평면 내지 제3 메인 기준 평면 각각으로부터 제K_1 메인 이격 거리 내지 제K_3 메인 이격 거리 각각에 형성된 제K_1 메인 확장 평면 내지 제K_3 메인 확장 평면을 포함하는 제K 메인 확장 평면 세트 및 제K 메인 확장 평면 세트에 포함된 제K_1 메인 확장 평면 내지 제K_3 메인 확장 평면 사이를 연결하기 위한 제K 메인 연결 곡면을 포함할 수 있다. 이때, K는 1 이상 N 이하의 정수에 해당한다.
이때, 제K 메인 연결 곡면은, (i) 제K_1 메인 확장 평면 및 제K_2 메인 확장 평면 사이를 연결하는 제K_12 메인 연결 곡면, (ii) 제K_2 메인 확장 평면 및 제K_3 메인 확장 평면 사이를 연결하는 제K_23 메인 연결 곡면, (iii) 제K_1 메인 확장 평면 및 제K_3 메인 확장 평면 사이를 연결하는 제K_31 메인 연결 곡면 및 (iv) 제K_1 메인 확장 평면, 제K_2 메인 확장 평면 및 제K_3 메인 확장 평면 사이를 연결하는 제K_123 메인 연결 곡면을 포함할 수 있다.
한편, 아래에서는 도 10a 내지 도 10g를 참조하여, 본 발명의 일 실시예에 따른 비전 장치(1000)가 스윕 네트워크로 하여금 제1 이미지 내지 제p 이미지 상의 복수의 픽셀들을 제i 메인 가상 라운디드 큐보이드에 투영하도록 하기 위해 메인 기준 가상 입체의 제2 메인 기준점으로부터 제i 메인 가상 라운디드 큐보이드 상의 특정 지점까지의 특정 거리 di를 계산하는 방법에 대해서 설명하겠다.
참고로, 앞서 언급했듯이, 메인 가상 라운디드 큐보이드에 포함된 메인 확장 평면 세트는 메인 기준 가상 입체의 세 개의 메인 기준 평면 각각으로부터 각각 다른 이격 거리만큼 이격된 확장 평면을 포함할 수 있으나, 아래에서는 설명의 편의상, 제i 가상 라운디드 큐보이드는 메인 기준 가상 입체로부터 동일한 메인 이격 거리 ri 만큼 이격되었다고 가정하고 설명하기로 한다
먼저, 도 10a를 참조하면, 메인 기준 가상 입체의 제2 메인 기준점으로부터 제i 메인 가상 라운디드 큐보이드 상의 특정 지점 P까지의 특정 거리 di는 아래 수식에 따라 결정될 수 있다.
di = f(ri, θ, Ψ; w, h, l)
여기서, (i) ri은, 메인 기준 가상 입체로부터 제i 메인 가상 라운디드 큐보이드까지의 이격 거리이고, (ii) θ 및 Ψ 는, 메인 기준 가상 입체의 제2 메인 기준점을 원점으로 하는 구면 좌표계에서 메인 기준 가상 입체의 제2 메인 기준점과 특정 지점 P를 연결하는 가상 선분 OP의 방위각 및 극각이며, (iii) w, h 및 l 각각은 메인 기준 가상 입체의 서로 직교하는 제1 모서리, 제2 모서리 및 제3 모서리 각각의 길이에 대응된다.
참고로, 도 10a 및 후술할 도 10b 내지 도 10g에서는, 메인 기준 가상 입체의 제1 모서리의 길이 w, 제2 모서리의 길이 h 및 제3 모서리의 길이 l을 각각 이등분함으로써 형성되는 메인 기준 가상 입체의 일부분 및 제i 메인 가상 라운디드 큐보이드의 일부분만을 도시하고 있다. 즉, 도 10a 내지 도 10g에 도시된 메인 기준 가상 입체의 일부분은 x축, y축, z축 방향에 대응되는 메인 기준 가상 입체의 세개의 모서리의 길이가 각각 w’(=w/2), h’(=h/2), l’(=l/2)인 직육면체일 수 있다.
통상의 기술자는 메인 기준 가상 입체 및 제i 메인 가상 라운디드 큐보이드의 대칭되는 속성을 고려하여 도면에 도시되지 않은 부분에 대해서도 동일한 설명이 적용될 수 있다는 점을 쉽게 이해할 수 있을 것이다.
도 10a를 다시 참조하면, yz 평면에 평행한 제1 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_1 메인 확장 평면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
dxz = (w’ + ri)/cos(θ)
di = dxz / cosΨ
또한, 도 10b를 참조하면, xy 평면에 평행한 제2 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_2 메인 확장 평면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
dxz = (l’ + ri)/sin(θ)
di = dxz / cosΨ
또한, 도 10c를 참조하면, xz 평면에 평행한 제3 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_3 메인 확장 평면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
di = (h’ + ri)/sin(Ψ)
또한, 도 10d를 참조하면, (i) yz 평면에 평행한 제1 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_1 메인 확장 평면 및 (ii) xy 평면에 평행한 제2 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_2 메인 확장 평면을 연결하는 제i_12 메인 연결 곡면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
b = w’* cos(θ) + l’* sin(Ψ)
dxz =
Figure 112021109495544-pat00012
di = dxz / cos(Ψ)
또한, 도 10e를 참조하면, (i) yz 평면에 평행한 제1 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_1 메인 확장 평면 및 (ii) xz 평면에 평행한 제3 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_3 메인 확장 평면을 연결하는 제i_13 메인 연결 곡면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
a = cos(Ψ)2 + cos(θ)2 + sin(Ψ)2
b = w’* cos(Ψ) * cos(θ) + h’* sin(Ψ)
c = w’2 + h’2 - r2
di =
Figure 112021109495544-pat00013
또한, 도 10f를 참조하면, (i) xy 평면에 평행한 제2 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_2 메인 확장 평면 및 (ii) xz 평면에 평행한 제3 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_3 메인 확장 평면을 연결하는 제i_23 메인 연결 곡면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
a = cos(Ψ)2 + sin(θ)2 + sin(Ψ)2
b = l’* cos(Ψ) * sin(θ) + h’* sin(Ψ)
c = l’2 + h’2 - r2
di =
Figure 112021109495544-pat00014
또한, 도 10g를 참조하면, (i) yz 평면에 평행한 제1 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_1 메인 확장 평면, (ii) xy 평면에 평행한 제2 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_2 메인 확장 평면 및 (iii) xz 평면에 평행한 제3 메인 기준 평면으로부터 ri 만큼 이격된 제i 메인 가상 라운디드 큐보이드의 제i_3 메인 확장 평면을 연결하는 제i_123 메인 연결 곡면의 특정 지점 P와 제2 메인 기준점 O 사이의 거리 di는 아래 식을 통해 계산할 수 있다.
b = h’* sin(Ψ) * w’ * cos(Ψ) * cos(θ) + l’* cos(Ψ) * sin(θ)
c = h’2 + w’2 + l’2 - r2
di =
Figure 112021109495544-pat00015
한편, 제1 메인 기준점으로부터 제i 메인 가상 구 상의 특정 지점까지의 특정 거리는, 그 자체가 메인 가상 구의 반지름에 해당하므로, 구체적인 설명을 생략하기로 한다.
이처럼, 제1 이미지 내지 제p 이미지 상의 복수의 픽셀들이 N개의 메인 가상 입체에 투영됨으로써 복수의 메인 입체 이미지가 생성된 후, 비전 장치(1000)는, 스윕 네트워크로 하여금 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하도록 할 수 있다.
참고로, 구형 좌표 시스템에서의 p=(θ,Ψ) 방향은 직교좌표계에서 ρ(p)=
Figure 112021109495544-pat00016
로 나타낼 수 있다.
구체적으로, N개의 메인 가상 입체에 투영된 이미지 내의 각 픽셀은 (θ, Ψ)로 표현될 수 있다. 일례로, 이러한 이미지는 W*H 해상도를 가질 수 있고, 방위각 θ의 범위는 -π 내지 π일 수 있으며, 극각 Ψ의 범위는 -π/2 내지 π/2 일 수 있다.
또한, 소정의 메인 이격 거리 rn에 대해서 rn = 1/r n 이 성립할 수 있다. 이때, r n 은 메인 인버스 거리로서, (i) 메인 가상 구의 경우, 메인 인버스 뎁스를 나타내며, (ii) 메인 가상 라운디드 큐보이드의 경우 메인 인버스 라디우스를 나타낸다.
또한, N개의 메인 가상 입체는 메인 인버스 뎁스 또는 메인 인버스 라디우스가 균일하도록 샘플링될 수 있다.
예를 들어, 최소 메인 라디우스가 rmin일 때, n번째 메인 가상 라운디드 큐보이드에 대응되는 메인 인버스 라디우스 r n에 대해서 r n= n/rmin(N-1)이 성립할 수 있으며, n∈[0, 1, ..., N-1]일 수 있다.
또한, 리그 좌표 시스템에서 카메라 외부 파라미터를 {
Figure 112021109495544-pat00017
* i}로 변환한다면, 투영 함수는
Figure 112021109495544-pat00018
와 같이 표현할 수 있다.
위 설명을 바탕으로, 메인 가상 구에 투영된 메인 구 이미지의 픽셀값은 수학식 3에 따라 표현될 수 있다.
[수학식 3]
Si,n (p)= Iii(M(
Figure 112021109495544-pat00019
* i)[
Figure 112021109495544-pat00020
]))
한편, 메인 가상 라운디드 큐보이드에 투영된 메인 라운디드 큐보이드 이미지의 픽셀 값은 수학식 4에 따라 표현될 수 있다.
[수학식 4]
Si,n (p)= Iii(M(
Figure 112021109495544-pat00021
* i)[
Figure 112021109495544-pat00022
]))
이때, f(rn, θ, Ψ; w, h, l)는, 앞서 설명했듯, 메인 기준 가상 입체의 제2 메인 기준점으로부터 n번째 메인 가상 라운디드 큐보이드에 투영된 n번째 메인 라운디드 큐보이드 이미지 상의 특정 지점까지의 거리 dn를 나타낼 수 있다. 즉, dn= f(rn, θ, Ψ; w, h, l)가 될 수 있다.
여기서, Ii는 i번째 카메라에서 캡처된 이미지이다. 한편, 투영된 픽셀이 입력 영상의 가시 영역에 없다면, 추가적인 처리가 수행되지 않을 수 있다.
그리고, 스윕을 통해 복수의 이미지(또는 복수의 특징 맵)가 복수의 메인 가상 입체에 투영되는데, 복수의 특징 맵이 복수의 메인 가상 입체에 투영되는 경우 수학식 3 및 4 각각은 아래의 수학식 5 및 6으로 수정될 수 있다.
일례로, 복수의 특징 맵이 복수의 메인 가상 구에 투영되는 경우, 수학식 3은 수학식 5과 같이 기재될 수 있다.
[수학식 5]
Si(Ψ, θ, n, c)= Uc (
Figure 112021109495544-pat00023
Πi (p(θ, Ψ)/rn)
이와 유사하게, 복수의 특징 맵이 복수의 메인 가상 라운디드 큐보이드에 투영되는 경우, 수학식 4는 수학식 6과 같이 기재될 수 있다.
[수학식 6]
Si(Ψ, θ, n, c)= Uc (
Figure 112021109495544-pat00024
Πi (p(θ, Ψ)*f(r, θ, Ψ; w, h, l)))
그리고 코스트 볼륨 계산 단계에서는, 3차원 전방향 영역에 대한 물리적인 공간 정보를 포함하도록 변환하고, 병합 결과를 3D encoder-decoder에 반영하여 거리 지도를 생성할 수 있다.
구체적으로, 비전 장치(1000)는, 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하고, 4차원 초기 코스트 볼륨을 복수의 3차원 컨벌루션 연산 레이어와 이에 대응되는 복수의 3차원 디컨벌루션 연산 레이어를 포함하는 코스트 볼륨 계산(cost volume computation) 네트워크에 입력하여 3차원 최종 메인 코스트 볼륨을 생성할 수 있다.
이와 같이, 비전 장치(1000)는, 제1 카메라 내지 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 메인 기준점을 기준으로 하여 생성된 글로벌 코스트 볼륨, 즉 3차원 최종 메인 코스트 볼륨만을 이용하더라도 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득할 수 있다.
하지만, 앞서 언급한 바와 같이, 글로벌 코스트 볼륨만이 이용되어 획득되는 물체에 대한 거리는 다소 부정확할 수 있으므로, 비전 장치(1000)는, 물체에 대헌 더 정확한 거리를 획득하기 위하여, 각각의 카메라별 코스트 볼륨, 즉 로컬 코스트 볼륨도 같이 이용할 수 있다.
아래에서는 본 발명의 일 실시예에 따른 비전 장치(1000)가, 3차원 최종 메인 코스트 볼륨을 이용하여 로컬 코스트 볼륨, 즉, 서브 코스트 볼륨을 생성하는 방법에 대해 설명하기로 한다.
도 11을 참조하면, 복수의 파란색 구는 제1 메인 기준점 O를 중심으로 하는 복수의 메인 가상 구를 나타내며, 복수의 노란색 구는 제k 서브 기준점 O1을 중심으로 하는 제k 카메라에 대응되는 복수의 제k 서브 가상 구를 나타낸다.
본 발명의 일 실시예에 따른 비전 장치(1000)는, 제1 카메라 내지 제p 카메라 중 적어도 하나의 제k 카메라로부터 획득된 제k 이미지 상의 복수의 픽셀들을 소정의 제k 서브 기준점을 기준으로 하여 형성되는 M개의 제k 서브 가상 입체에 투영하여 복수의 제k 서브 입체 이미지를 생성할 수 있다.
이때, M개의 제k 서브 가상 입체는, (i) 제k 카메라의 제k 위치를 기준으로 설정된 소정의 제k 서브 기준점을 중심으로 하며, (ii) 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당할 수 있다.
그리고, 비전 장치(1000)는, 복수의 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치를 소정의 메인 기준점에 따라 변환함으로써 제k 3차원 픽셀 좌표를 획득하고, 제k 3차원 픽셀 좌표를 3차원 최종 메인 코스트 볼륨에 적용하여 제k 서브 코스트 요소를 획득하며, 제k 서브 코스트 요소를 이용하여 제k 서브 코스트 볼륨을 생성할 수 있다.
참고로, 설명의 편의상, 도 11은 메인 가상 입체로서 메인 가상 구를 도시하고 있으나, 이에 한정되는 것은 아니며, 메인 가상 라운디드 큐보이드가 메인 가상 입체일 수 있다.
아래에서는, 수학식 7 및 수학식 8을 참조하여 도 11의 제k 서브 코스트 볼륨(
Figure 112021109495544-pat00025
) 이 생성되는 과정을 구체적으로 설명하기로 한다.
[수학식 7]
Figure 112021109495544-pat00026
[수학식 8]
Figure 112021109495544-pat00027
수학식 7의
Figure 112021109495544-pat00028
(제k 카메라의 내부 파라미터에 대응됨)를 통해, 제k 카메라의 제k 이미지 상의 2차원 좌표 (x, y)가 3차원 ray
Figure 112021109495544-pat00029
로 매핑된다.
참고로, 수학식 8의
Figure 112021109495544-pat00030
은, M개의 제k 서브 가상 구 중에서, m번째 제k 서브 가상 구와 제k 서브 기준점(즉, 제k 카메라의 제k 위치를 기준으로 설정된 서브 기준점) 사이의 제k_m 서브 이격 거리를 나타내며, 수학식 8의
Figure 112021109495544-pat00031
은, 제k 위치를 기준으로 설정된 제k 카메라 좌표계에서 제k 서브 가상 구에 투영된 제k 서브 입체 이미지 상의 3차원 좌표를 나타낸다.
그리고, 수학식 8의
Figure 112021109495544-pat00032
을 통해, 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치가 제1 메인 기준점에 따라 제k 3차원 픽셀 좌표로 변환된다.
그리고, 수학식 8의
Figure 112021109495544-pat00033
을 통해, 제k 3차원 픽셀 좌표가 3차원 최종 메인 코스트 볼륨 C 에 적용됨으로써 제k 서브 코스트 요소
Figure 112021109495544-pat00034
가 획득되고, 제k 서브 코스트 요소가 이용되어 제k 카메라의 제k 서브 코스트 볼륨 I k 이 생성된다.
이때, 제k 3차원 픽셀 좌표에 대응되는 (θ, Ψ, n)의 정수 인덱스를 획득하기 위해 trilinear interpolation이 이용될 수 있다.
그리고, 비전 장치(1000)는, 제k 서브 코스트 볼륨을 이용하여 제k 카메라의 소정의 제k 서브 기준점으로부터 M개의 제k 서브 가상 입체까지의 거리인 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 거리에 대한 적어도 하나의 제k 서브 인버스 거리 인덱스를 생성하고, 제k 서브 인버스 거리 인덱스로부터 추출한 제k 서브 인버스 거리로부터 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나를 획득할 수 있다.
또한, 비전 장치(1000)는, 3차원 최종 메인 코스트 볼륨을 이용하여 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체로부터 N개의 메인 가상 입체까지의 거리인 N개의 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 거리에 대한 적어도 하나의 메인 인버스 거리 인덱스를 생성하고, 메인 인버스 거리 인덱스로부터 추출한 메인 인버스 거리로부터 N개의 메인 이격 거리 중 적어도 하나를 획득할 수 있다.
일례로, 메인 가상 입체가 메인 가상 구에 해당하는 경우, 비전 장치(1000)는, 3차원 최종 메인 코스트 볼륨을 이용하여 제1 메인 기준점으로부터 N개의 메인 가상 구까지의 거리인 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 뎁스에 대한 적어도 하나의 메인 인버스 뎁스 인덱스를 생성하고, 메인 인버스 뎁스 인덱스로부터 추출한 메인 인버스 뎁스로부터 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행할 수 있다.
다른 예로, 메인 가상 입체가 메인 가상 라운디드 큐보이드에 해당하는 경우, 비전 장치(1000)는, 3차원 최종 메인 코스트 볼륨을 이용하여 메인 기준 가상 입체로부터 N개의 메인 가상 라운디드 큐보이드까지의 거리인 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 라디우스에 대한 적어도 하나의 메인 인버스 라디우스 인덱스를 생성하고, 메인 인버스 라디우스 인덱스로부터 추출한 메인 인버스 라디우스로부터 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행할 수 있다.
아래에서는, 비전 장치(1000)가, 3차원 최종 메인 코스트 볼륨을 이용하여 메인 인버스 거리 인덱스를 생성하고, 메인 인버스 거리 인덱스를 이용하여 메인 이격 거리를 획득하는 방법에 대해 설명하기로 한다.
일례로, 비전 장치(1000)는, 구형 좌표 시스템의 각각의 방위각과 극각을 따라 3차원 최종 메인 코스트 볼륨을 정규화함으로써 메인 인버스 거리 인덱스, 가령, 메인 인버스 뎁스 인덱스 또는 메인 인버스 라디우스 인덱스를 생성할 수 있다.
메인 인버스 뎁스 인덱스 또는 메인 인버스 라디우스 인덱스(
Figure 112021109495544-pat00035
)는 아래와 같은 수학식 9로 계산될 수 있다.
[수학식 9]
Figure 112021109495544-pat00036
여기서, C 는 3차원 최종 메인 코스트 볼륨이다.
가령, n∈[0, 1, ..., N-1]인 상태에서, 메인 기준점으로부터 특정 물체가 위치하는 특정 방향(θ, Ψ)에는 총 N개의 메인 인버스 거리 인덱스들이 존재하게 되는데, 비전 장치(1000)가, N개의 메인 인버스 거리 인덱스들 중에서, 특정 물체의 위치에 대응되는 특정 메인 가상 입체까지의 거리에 대응되는 특정 메인 인버스 거리 인덱스를 획득하는 과정은 아래와 같다.
일례로, (i) 메인 가상 입체가 메인 가상 구일 때, 비전 장치(1000)가 상기 수학식 9에 따라 3차원 최종 메인 코스트 볼륨을 이용하여 생성한 메인 인버스 뎁스 인덱스(즉, 제1 메인 기준점으로부터 특정 방향 (θ, Ψ)에 위치하는 특정 물체까지의 거리에 대응되는 인덱스)의 값이 2인 경우, 이는 N개의 가상 구 중 3번째 메인 가상 구에 대응되므로, 3번째 메인 가상 구와 제1 메인 기준점의 이격 거리인 r2를 메인 이격 거리로서 획득하게 되며, (ii) 메인 가상 입체가 메인 가상 라운디드 큐보이드일 때, 비전 장치(1000)가 상기 수학식 9에 따라 3차원 최종 메인 코스트 볼륨을 이용하여 생성한 메인 인버스 라디우스 인덱스(즉, 제2 메인 기준점으로부터 특정 방향 (θ, Ψ)에 위치하는 물체까지의 거리에 대응되는 인덱스)의 값이 3인 경우, 이는 N개의 메인 가상 라운디드 큐보이드 중 4번째 메인 가상 라운디드 큐보이드에 대응되므로, 4번째 메인 가상 라운디드 큐보이드와 메인 기준 가상 입체의 이격 거리인 r3를 메인 이격 거리로서 획득하게 된다.
참고로, 제k 카메라에 대한 제k 서브 인버스 거리 인덱스(
Figure 112021109495544-pat00037
)는 아래 수학식 10에 따라 계산될 수 있으며, 제k 서브 인버스 거리 인덱스를 생성하는 방법은 메인 인버스 거리 인덱스를 생성하는 방법과 유사하므로, 중복되는 설명은 생략하기로 한다.
[수학식 10]
Figure 112021109495544-pat00038
참고로, I k 는 제k 서브 코스트 볼륨을 나타낸다.
그리고, 비전 장치(1000)는, (i) 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 중 적어도 하나 및 (ii) 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득할 수 있다.
참고로, 본 명세서에서, 거리를 획득하는 것의 의미는 (i) 메인 기준점으로부터 물체까지의 거리를 나타내는 메인 뎁스 맵 및 (ii) 서브 기준점으로부터 물체까지의 거리를 나타내는 서브 뎁스 맵을 획득하는 것을 의미할 수 있다.
가령, 이동체 주변에 A 물체가 존재하는 경우, 비전 장치(1000)는, (i) A 물체가 위치하는 방향에 대응되는 특정 메인 인버스 거리 인덱스를 생성하고, 특정 메인 인버스 거리 인덱스로부터 추출한 특정 메인 인버스 거리로부터 특정 메인 이격 거리를 획득하며, (ii) 적어도 하나의 카메라에 대한 적어도 하나의 특정 서브 인버스 거리 인덱스를 생성하고, 적어도 하나의 특정 서브 인버스 거리 인덱스로부터 추출한 적어도 하나의 특정 서브 인버스 거리로부터 적어도 하나의 특정 서브 이격 거리를 획득한 후, 특정 메인 이격 거리 및 적어도 하나의 서브 이격 거리를 참조하여 A 물체에 대한 거리를 획득할 수 있다.
한편, 비전 장치(1000)는, 더욱 정확한 인버스 거리 인덱스를 생성하기 위해 코스트 볼륨 계산 네트워크과 스윕 네트워크 중 적어도 일부를 학습할 수 있다.
일례로, 비전 장치(1000)는, (i) 제k 서브 인버스 거리 인덱스와 (ii) 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 적어도 하나의 서브 거리 로스를 획득하고, 서브 거리 로스를 이용하여 엔드 투 엔드 방식으로 코스트 볼륨 계산 네트워크 및 스윕 네트워크 중 적어도 일부를 학습할 수 있다.
구체적으로, 비전 장치(1000)는, 제k 그라운드 트루스 서브 인버스 거리 인덱스(
Figure 112021109495544-pat00039
) 및 제k 서브 인버스 거리 인덱스(
Figure 112021109495544-pat00040
)를 참조하여 수학식 11에 따라 서브 거리 로스를 획득할 수 있다.
[수학식 11]
Figure 112021109495544-pat00041
다른 예로, 비전 장치(1000)는, (i) 메인 인버스 거리 인덱스와 (ii) 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 적어도 하나의 메인 거리 로스를 획득하고, 아래의 수학식 12에 따라 메인 거리 로스를 추가로 이용하여 엔드 투 엔드 방식으로 코스트 볼륨 계산 네트워크 및 스윕 네트워크 중 적어도 일부를 학습할 수 있다.
[수학식 12]
Figure 112021109495544-pat00042
참고로, 수학식 12는 서브 거리 로스가 학습에 반영되는 정도를 조절하기 위해 서브 거리 로스에 가중치
Figure 112021109495544-pat00043
가 곱해지는 것을 나타내고 있으나, 이에 한정되는 것은 아니다.
가령, 메인 거리 로스에만 가중치
Figure 112021109495544-pat00044
가 곱해지거나, 메인 거리 로스 및 서브 거리 로스 모두에 가중치
Figure 112021109495544-pat00045
가 곱해질 수 있다. 또한, 메인 거리 로스 및 서브 거리 로스 모두에 가중치가 곱해지는 경우, 두 가중치는 서로 같거나 다르게 설정될 수 있다.
위와 같은 구성을 통해, 도 1에서 설명했던 종래 기술의 문제점을 해결할 수 있는데, 구체적으로는, 도 1의 물체 B가 true depth로 추정될 때, 이에 대한 penalty를 더 강하게 주는 방식으로 더 정확한 거리를 추정할 수 있게 된다.
한편, 아래에서는, 도 12를 참조하여 본 발명의 일 실시예에 따른 비전 장치(1000)가 (i) 물체에 대한 거리 정보를 출력하고, (ii) 제k 카메라의 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하는 과정을 설명하기로 한다.
먼저, 물체에 대한 거리 정보를 출력하는 과정에 대해 설명하면, 단항 특징 추출(Unary Feature Extraction) 프로세스, 스윕 프로세스, 코스트 볼륨 계산(Cost volume computation) 프로세스에 따라 3차원 최종 메인 코스트 볼륨(즉, 도 12에서의 Probability (cost) volume)이 생성되고, 3차원 최종 메인 코스트 볼륨으로부터 획득되는 제k 서브 코스트 볼륨 및 3차원 최종 메인 코스트 볼륨이 이용됨으로써 이동체의 전방향에 위치한 물체에 대한 거리가 획득될 수 있다.
일례로, 도 12의 단항 특징 추출 프로세스, 스윕 프로세스, 코스트 볼륨 계산 프로세스를 수행하는 각각의 세부 모델의 구조는 아래 표 1과 같다.
[표 1]
Figure 112021109495544-pat00046
또한, 제k 카메라의 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하는 과정에 대해 설명하면 아래와 같다.
참고로, 물체에 대한 거리 정보가 활용되면 세그멘테이션 결과의 정확도가 향상될 수 있다.
따라서, 본 발명의 일 실시예에 따른 비전 장치(1000)는, 세그멘테이션 네트워크(1100)로 하여금, 세그멘테이션 결과의 정확도를 향상시키기 위해 (i) 물체에 대한 거리 정보를 생성하기 위한 2차원 컨벌루션 레이어로부터 피처맵을 획득하고, (ii) 물체에 대한 거리 정보를 포함하는 코스트 볼륨(즉, 제k 서브 코스트 볼륨)을 활용하도록 할 수 있다.
일례로, 복수의 2차원 컨벌루션 레이어(도 12의 단항 특징 추출 프로세스의 2D CNN) 중 특정 2차원 컨벌루션 레이어로부터 제k 이미지에 대응되는 제k 특징 맵이 획득될 수 있다.
이때, 특정 2차원 컨벌루션 레이어는 복수의 2차원 컨벌루션 레이어의 마지막 컨벌루션 레이어일 수 있으나 이에 한정되는 것은 아니며, 복수의 2차원 컨벌루션 레이어의 중간에 위치하는 컨벌루션 레이어일 수도 있다.
그리고, 비전 장치(1000)는, 2차원 디컨벌루션 레이어를 포함하는 세그멘테이션 네트워크(1100)에 (i) 제k 특징 맵 및 (ii) 제k 서브 코스트 볼륨을 입력하여, 세그멘테이션 네트워크(1100)로 하여금 2차원 디컨벌루션 레이어(1130)를 통해 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하도록 할 수 있다.
이때, 세그멘테이션 네트워크(1100)는 Atrous Spatial Pyramid Pooling(ASPP) 레이어(1110) 및 conversion 모듈(1120)을 포함할 수도 있다.
구체적으로 설명하면, 비전 장치(1000)는, 세그멘테이션 네트워크(1100)로 하여금 (i) ASPP 레이어(1110)를 통해 Atrous convolution 연산 및 Spatial Pyramid pooling 연산을 제k 특징 맵에 적용하도록 함으로써 제1 중간 출력을 생성하도록 하고, (ii) conversion 모듈(1120)을 통해 제k 서브 코스트 볼륨(즉, 도 12의 resampled prob. volume)을 변환하여 제2 중간 출력을 생성하도록 하며, (iii) 2차원 디컨벌루션 레이어(1130)를 통해 제1 중간 출력 및 제2 중간 출력을 이용하여 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하도록 할 수 있다.
이때, conversion 모듈(1120)은, 제1 중간 출력의 채널 개수 등에 맞추어 제k 서브 코스트 볼륨을 제2 중간 출력으로 변환하기 위한 모듈일 수 있다.
또한, 제k 서브 코스트 볼륨이 변환된 제2 중간 출력은, 복수의 2차원 디컨벌루션 레이어(1130) 중 첫번째 디컨벌루션 레이어에 입력될 수 있지만, 이에 한정되는 것은 아니며, 복수의 2차원 디컨벌루션 레이어(1130)의 중간에 위치하는 디컨벌루션 레이어에 입력될 수도 있다.
그리고, 비전 장치(1000)는, 아래 수학식 13에 따라 (i) 제k 서브 인버스 거리 인덱스와 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 코스트 볼륨 계산 네트워크 및 스윕 네트워크 중 적어도 일부를 학습하고, (ii) 제k 추정 세그멘테이션 결과(
Figure 112021109495544-pat00047
) 및 제k 추정 세그멘테이션 결과에 대응되는 제k 그라운드 트루스 세그멘테이션 결과(
Figure 112021109495544-pat00048
)를 참조하여 생성한 적어도 하나의 세그멘테이션 로스를 이용한 엔드 투 엔드 방식으로 세그멘테이션 네트워크를 학습할 수 있다.
[수학식 13]
Figure 112021109495544-pat00049
참고로, 앞서 메인 거리 로스 및 서브 거리 로스에서 설명한 바와 유사하게, 세그멘테이션 로스가 세그멘테이션 학습에 반영되는 정도를 조절하기 위해 세그멘테이션 로스에 가중치 (가령,
Figure 112021109495544-pat00050
)가 곱해질 수 있다.
다른 예로, 비전 장치(1000)는, (i) 메인 거리 로스 및 서브 거리 로스를 이용하여 엔드 투 엔드 방식으로 코스트 볼륨 계산 네트워크 및 스윕 네트워크 중 적어도 일부를 학습하고, (ii) 적어도 하나의 세그멘테이션 로스를 이용한 엔드 투 엔드 방식으로 세그멘테이션 네트워크를 학습할 수도 있다.
이상과 같이 본 발명의 일 실시예에 따른 비전 장치(1000)는 적은 수의 카메라만으로도 이동체의 전방향에 대한 거리 정보 생성이 가능하다. 또한, 비전 장치(1000)는 다중 영상의 왜곡을 카메라 간의 기하학적 관계와 렌즈 왜곡 파라미터를 동시에 이용하여 보정할 수 있으므로, 카메라 간의 이미지 대응 쌍을 효과적으로 추정할 수 있다. 또한, 비전 장치(1000)는 카메라의 촬상 방향에 대한 오차를 실시간으로 보상할 수 있어, 성능 저하를 방지할 수 있다. 또한, 다양한 거리 후보군에 대한 샘플링이 유연해짐에 따라, 카메라 개수가 변동되더라도 물체에 대한 거리를 용이하게 획득할 수 있다. 또한, 비전 장치(1000)는, 각각의 카메라별 서브 거리 로스를 이용하여 복수의 2차원 컨벌루션 레이어, 코스트 볼륨 계산 네트워크 및 스윕 네트워크 중 적어도 일부를 학습함으로써 물체에 대한 거리를 더 정확하게 추정하고, 고해상도의 카메라별 뎁스 맵을 획득할 수 있다. 또한, 비전 장치(1000)는, 위와 같이 획득된 거리 정보를 이용하여 더 정확한 세그멘테이션 결과를 출력할 수 있다. 이와 유사하게, 비전 장치는, 세그멘테이션 결과를 이용하여 더 정확한 카메라별 뎁스 맵을 획득할 수도 있다.
이에 더해, 비전 장치(1000)는, 제1 이미지를 획득한 제1 카메라의 제1 렌즈 모델이 아닌, 제2 카메라의 제2 렌즈 모델에 대해서도 제1 이미지에 대응되는 뎁스 맵을 획득할 수 있으며, 이에 따라 visual positioning system을 위한 환경 지도가 용이하게 구축될 수 있다.
즉, 비전 장치(1000)는, 실제 촬상에 사용된 렌즈(가령, 어안 렌즈) 모델에 대응되는 형태의 서브 코스트 볼륨 및 거리가 아닌, 실제 촬상에 사용되지 않은 가상의 렌즈(가령, 일반적인 핀홀 렌즈 등) 모델에 대응되는 형태의 서브 코스트 볼륨 및 거리를 획득할 수도 있다.
또한, 이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.

Claims (20)

  1. 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법에 있어서,
    (a) 제1 카메라 내지 제p 카메라 - 상기 제1 카메라 내지 상기 제p 카메라는 FOV(Field Of View)를 가지며 상기 제1 카메라 내지 상기 제p 카메라 각각의 FOV를 통해 이동체의 전방향(omni-direction)을 촬상함 - 가 상기 이동체에 상호 이격 배치된 상태에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 제1 이미지 내지 제p 이미지가 수신되면, 비전 장치가, 상기 제1 이미지 내지 상기 제p 이미지를 스윕 네트워크에 입력하여, 상기 스윕 네트워크로 하여금, 상기 제1 이미지 내지 상기 제p 이미지 상의 복수의 픽셀들을 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체를 기준으로 하여 형성되는 N개의 메인 가상 입체에 투영하여 복수의 메인 입체 이미지를 생성하도록 하고, 상기 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하도록 하는 단계;
    (b) 상기 비전 장치가, 상기 4차원 초기 코스트 볼륨을 복수의 3차원 컨벌루션 연산 레이어와 이에 대응되는 복수의 3차원 디컨벌루션 연산 레이어를 포함하는 코스트 볼륨 계산(cost volume computation) 네트워크에 입력하여 3차원 최종 메인 코스트 볼륨을 생성하는 단계; 및
    (c) 상기 비전 장치가, (i) 상기 제1 카메라 내지 상기 제p 카메라 중 적어도 하나의 제k 카메라로부터 획득된 제k 이미지 상의 복수의 픽셀들을 소정의 제k 서브 기준점을 기준으로 하여 형성되는 M개의 제k 서브 가상 입체에 투영하여 복수의 제k 서브 입체 이미지를 생성하고, 상기 복수의 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치를 상기 소정의 메인 기준점에 따라 변환한 제k 3차원 픽셀 좌표를 획득하며, 상기 제k 3차원 픽셀 좌표를 상기 3차원 최종 메인 코스트 볼륨에 적용하여 제k 서브 코스트 요소를 획득하고, 상기 제k 서브 코스트 요소를 이용하여 제k 서브 코스트 볼륨을 생성하며, 상기 제k 서브 코스트 볼륨을 이용하여 상기 제k 카메라의 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 입체까지의 거리인 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 거리에 대한 적어도 하나의 제k 서브 인버스 거리 인덱스를 생성하고, 상기 제k 서브 인버스 거리 인덱스로부터 추출한 상기 제k 서브 인버스 거리로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 소정의 메인 기준점 또는 상기 소정의 메인 기준 가상 입체로부터 상기 N개의 메인 가상 입체까지의 거리인 N개의 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 거리에 대한 적어도 하나의 메인 인버스 거리 인덱스를 생성하고, 상기 메인 인버스 거리 인덱스로부터 추출한 상기 메인 인버스 거리로부터 상기 N개의 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 N개의 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 단계;
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 N개의 메인 가상 입체는, (i) 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제1 메인 기준점을 중심으로 하며, (ii) 상기 N개의 메인 이격 거리로서 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 각각을 반지름으로 하는 N개의 메인 가상 구에 해당하고,
    상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며,
    상기 (c) 단계에서,
    상기 비전 장치가, (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 제1 메인 기준점으로부터 상기 N개의 메인 가상 구까지의 거리인 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 뎁스에 대한 적어도 하나의 메인 인버스 뎁스 인덱스를 생성하고, 상기 메인 인버스 뎁스 인덱스로부터 추출한 상기 메인 인버스 뎁스로부터 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 N개의 메인 가상 입체는, 상기 메인 기준 가상 입체 - 상기 메인 기준 가상 입체는, 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제2 메인 기준점을 중심으로 함 - 의 오소고널(orthogonal)한 세 개의 메인 기준 평면 각각으로부터 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리마다 각각 형성된 세 개의 메인 확장 평면을 포함하는 메인 확장 평면 세트 및 상기 메인 확장 평면 세트에 포함된 상기 세 개의 메인 확장 평면 사이를 연결하기 위한 메인 연결 곡면을 포함하는 N개의 메인 가상 라운디드 큐보이드(rounded cuboid)에 해당하고,
    상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며,
    상기 (c) 단계에서,
    상기 비전 장치가, (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 N개의 메인 가상 라운디드 큐보이드 각각의 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 라디우스에 대한 메인 인버스 라디우스 인덱스를 생성하고, 상기 메인 인버스 라디우스 인덱스로부터 추출한 상기 메인 인버스 라디우스로부터 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 방법.
  4. 제3항에 있어서,
    상기 (a) 단계에서,
    상기 비전 장치가, 상기 스윕 네트워크로 하여금, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 제i - 상기 i은 1 이상 N 이하의 정수임 - 메인 가상 라운디드 큐보이드 상의 특정 지점까지의 특정 거리 di을 계산하도록 하고, 상기 di을 참조하여 상기 제1 이미지 내지 상기 제p 이미지 상의 상기 복수의 픽셀들을 상기 제i 메인 가상 라운디드 큐보이드에 투영하도록 하되,
    상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 상기 제i 메인 가상 라운디드 큐보이드 상의 상기 특정 지점까지의 상기 특정 거리 di는 하기 수식에 따라 결정되며,
    di = f(ri, θ, Ψ; w, h, l)
    상기 수식에서, (i) 상기 ri은, 상기 메인 기준 가상 입체로부터 상기 제i 메인 가상 라운디드 큐보이드까지의 이격 거리이고, (ii) 상기 θ 및 Ψ 는, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점을 원점으로 하는 구면 좌표계에서 상기 메인 기준 가상 입체의 상기 제2 메인 기준점과 상기 특정 지점을 연결하는 가상 선분의 방위각 및 극각이며, (iii) 상기 w, h 및 l 각각은 상기 메인 기준 가상 입체의 서로 직교하는 제1 모서리, 제2 모서리 및 제3 모서리 각각의 길이에 대응되는 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    (d) 상기 비전 장치가, 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 단계;
    를 더 포함하는 것을 특징으로 하는 방법.
  6. 제5항에 있어서,
    상기 비전 장치가, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 (a) 단계에서,
    상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 상기 제1 이미지 내지 상기 제p 이미지가 수신되면, 상기 비전 장치가, 상기 제1 이미지 내지 상기 제p 이미지를 복수의 2차원 컨벌루션 레이어에 입력하여 상기 제1 이미지 내지 상기 제p 이미지에 대응되는 제1 특징 맵 내지 제p 특징 맵을 생성하고, 상기 제1 특징 맵 내지 상기 제p 특징 맵으로부터 상기 복수의 메인 입체 이미지를 생성하는 것을 특징으로 하는 방법.
  8. 제7항에 있어서,
    (e) 상기 2차원 컨벌루션 레이어 중 특정 2차원 컨벌루션 레이어로부터 상기 제k 이미지에 대응되는 제k 특징 맵이 획득되면, 상기 비전 장치가, 2차원 디컨벌루션 레이어를 포함하는 세그멘테이션 네트워크에 (i) 상기 제k 특징 맵 및 (ii) 상기 제k 서브 코스트 볼륨을 입력하여, 상기 세그멘테이션 네트워크로 하여금 상기 2차원 디컨벌루션 레이어를 통해 상기 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하도록 하는 단계;
    를 더 포함하는 것을 특징으로 하는 방법.
  9. 제8항에 있어서,
    (f) 상기 비전 장치가, (i) 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하고, (ii) 상기 제k 추정 세그멘테이션 결과 및 상기 제k 추정 세그멘테이션 결과에 대응되는 제k 그라운드 트루스 세그멘테이션 결과를 참조하여 생성한 적어도 하나의 세그멘테이션 로스를 이용한 엔드 투 엔드 방식으로 상기 세그멘테이션 네트워크를 학습하는 단계;
    를 더 포함하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    상기 (f) 단계에서,
    상기 비전 장치가, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 방법.
  11. 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 비전 장치에 있어서,
    인스트럭션들을 저장하는 적어도 하나의 메모리; 및
    상기 인스트럭션들을 실행하기 위해 구성된 적어도 하나의 프로세서를 포함하되,
    상기 프로세서는, (1) 제1 카메라 내지 제p 카메라 - 상기 제1 카메라 내지 상기 제p 카메라는 FOV(Field Of View)를 가지며 상기 제1 카메라 내지 상기 제p 카메라 각각의 FOV를 통해 이동체의 전방향(omni-direction)을 촬상함 - 가 상기 이동체에 상호 이격 배치된 상태에서, 상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 제1 이미지 내지 제p 이미지가 수신되면, 상기 제1 이미지 내지 상기 제p 이미지를 스윕 네트워크에 입력하여, 상기 스윕 네트워크로 하여금, 상기 제1 이미지 내지 상기 제p 이미지 상의 복수의 픽셀들을 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체를 기준으로 하여 형성되는 N개의 메인 가상 입체에 투영하여 복수의 메인 입체 이미지를 생성하도록 하고, 상기 복수의 메인 입체 이미지에 3차원 컨캐터네이션(concatenation) 연산을 적용하여 4차원 초기 코스트 볼륨을 생성하도록 하는 프로세스, (2) 상기 4차원 초기 코스트 볼륨을 복수의 3차원 컨벌루션 연산 레이어와 이에 대응되는 복수의 3차원 디컨벌루션 연산 레이어를 포함하는 코스트 볼륨 계산(cost volume computation) 네트워크에 입력하여 3차원 최종 메인 코스트 볼륨을 생성하는 프로세스 및 (3) (i) 상기 제1 카메라 내지 상기 제p 카메라 중 적어도 하나의 제k 카메라로부터 획득된 제k 이미지 상의 복수의 픽셀들을 소정의 제k 서브 기준점을 기준으로 하여 형성되는 M개의 제k 서브 가상 입체에 투영하여 복수의 제k 서브 입체 이미지를 생성하고, 상기 복수의 제k 서브 입체 이미지 상의 픽셀들 각각에 대한 위치를 상기 소정의 메인 기준점에 따라 변환한 제k 3차원 픽셀 좌표를 획득하며, 상기 제k 3차원 픽셀 좌표를 상기 3차원 최종 메인 코스트 볼륨에 적용하여 제k 서브 코스트 요소를 획득하고, 상기 제k 서브 코스트 요소를 이용하여 제k 서브 코스트 볼륨을 생성하며, 상기 제k 서브 코스트 볼륨을 이용하여 상기 제k 카메라의 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 입체까지의 거리인 제k_1 서브 이격 거리 내지 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 거리에 대한 적어도 하나의 제k 서브 인버스 거리 인덱스를 생성하고, 상기 제k 서브 인버스 거리 인덱스로부터 추출한 상기 제k 서브 인버스 거리로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 소정의 메인 기준점 또는 소정의 메인 기준 가상 입체로부터 상기 N개의 메인 가상 입체까지의 거리인 N개의 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 거리에 대한 적어도 하나의 메인 인버스 거리 인덱스를 생성하고, 상기 메인 인버스 거리 인덱스로부터 추출한 상기 메인 인버스 거리로부터 상기 N개의 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 N개의 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 프로세스를 수행하는 비전 장치.
  12. 제11항에 있어서,
    상기 N개의 메인 가상 입체는, (i) 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제1 메인 기준점을 중심으로 하며, (ii) 상기 N개의 메인 이격 거리로서 제1_1 메인 이격 거리 내지 제1_N 메인 이격 거리 각각을 반지름으로 하는 N개의 메인 가상 구에 해당하고,
    상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며,
    상기 프로세서는,
    상기 (3) 프로세스에서,
    (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 제1 메인 기준점으로부터 상기 N개의 메인 가상 구까지의 거리인 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 뎁스에 대한 적어도 하나의 메인 인버스 뎁스 인덱스를 생성하고, 상기 메인 인버스 뎁스 인덱스로부터 추출한 상기 메인 인버스 뎁스로부터 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제1_1 메인 이격 거리 내지 상기 제1_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 비전 장치.
  13. 제11항에 있어서,
    상기 N개의 메인 가상 입체는, 상기 메인 기준 가상 입체 - 상기 메인 기준 가상 입체는, 상기 제1 카메라 내지 상기 제p 카메라 각각의 위치인 제1 위치 내지 제p 위치를 참조로 하여 설정된 상기 소정의 메인 기준점으로서의 제2 메인 기준점을 중심으로 함 - 의 오소고널(orthogonal)한 세 개의 메인 기준 평면 각각으로부터 제2_1 메인 이격 거리 내지 제2_N 메인 이격 거리마다 각각 형성된 세 개의 메인 확장 평면을 포함하는 메인 확장 평면 세트 및 상기 메인 확장 평면 세트에 포함된 상기 세 개의 메인 확장 평면 사이를 연결하기 위한 메인 연결 곡면을 포함하는 N개의 메인 가상 라운디드 큐보이드(rounded cuboid)에 해당하고,
    상기 M개의 제k 서브 가상 입체는, (i) 상기 제k 카메라의 제k 위치를 기준으로 설정된 상기 소정의 제k 서브 기준점을 중심으로 하며, (ii) 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 각각을 반지름으로 하는 M개의 제k 서브 가상 구에 해당하며,
    상기 프로세서는,
    상기 (3) 프로세스에서,
    (i) 상기 제k 서브 코스트 볼륨을 이용하여 상기 소정의 제k 서브 기준점으로부터 상기 M개의 제k 서브 가상 구까지의 거리인 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 제k 서브 인버스 뎁스에 대한 적어도 하나의 제k 서브 인버스 뎁스 인덱스를 생성하고, 상기 제k 서브 인버스 뎁스 인덱스로부터 추출한 상기 제k 서브 인버스 뎁스로부터 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 획득하는 프로세스 및 (ii) 상기 3차원 최종 메인 코스트 볼륨을 이용하여 상기 N개의 메인 가상 라운디드 큐보이드 각각의 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나에 대한 역수를 나타내는 적어도 하나의 메인 인버스 라디우스에 대한 적어도 하나의 메인 인버스 라디우스 인덱스를 생성하고, 상기 메인 인버스 라디우스 인덱스로부터 추출한 상기 메인 인버스 라디우스로부터 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나를 획득하는 프로세스를 수행한 후, 상기 제2_1 메인 이격 거리 내지 상기 제2_N 메인 이격 거리 중 적어도 하나 및 상기 제k_1 서브 이격 거리 내지 상기 제k_M 서브 이격 거리 중 적어도 하나를 참조하여 상기 이동체의 전방향에 위치한 상기 적어도 하나의 물체에 대한 거리를 획득하는 것을 특징으로 하는 비전 장치.
  14. 제13항에 있어서,
    상기 프로세서는,
    상기 (1) 프로세스에서,
    상기 스윕 네트워크로 하여금, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 제i - 상기 i은 1 이상 N 이하의 정수임 - 메인 가상 라운디드 큐보이드 상의 특정 지점까지의 특정 거리 di을 계산하도록 하고, 상기 di을 참조하여 상기 제1 이미지 내지 상기 제p 이미지 상의 상기 복수의 픽셀들을 상기 제i 메인 가상 라운디드 큐보이드에 투영하도록 하되,
    상기 메인 기준 가상 입체의 상기 제2 메인 기준점으로부터 상기 제i 메인 가상 라운디드 큐보이드 상의 상기 특정 지점까지의 상기 특정 거리 di는 하기 수식에 따라 결정되며,
    di = f(ri, θ, Ψ; w, h, l)
    상기 수식에서, (i) 상기 ri은, 상기 메인 기준 가상 입체로부터 상기 제i 메인 가상 라운디드 큐보이드까지의 이격 거리이고, (ii) 상기 θ 및 Ψ 는, 상기 메인 기준 가상 입체의 상기 제2 메인 기준점을 원점으로 하는 구면 좌표계에서 상기 메인 기준 가상 입체의 상기 제2 메인 기준점과 상기 특정 지점을 연결하는 가상 선분의 방위각 및 극각이며, (iii) 상기 w, h 및 l 각각은 상기 메인 기준 가상 입체의 서로 직교하는 제1 모서리, 제2 모서리 및 제3 모서리 각각의 길이에 대응되는 것을 특징으로 하는 비전 장치.
  15. 제11항에 있어서,
    상기 프로세서는, (4) 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 프로세스를 더 수행하는 것을 특징으로 하는 비전 장치.
  16. 제15항에 있어서,
    상기 프로세서는, 상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 비전 장치.
  17. 제11항에 있어서,
    상기 프로세서는,
    상기 (1) 프로세스에서,
    상기 제1 카메라 내지 상기 제p 카메라에서 촬상된 상기 제1 이미지 내지 상기 제p 이미지가 수신되면, 상기 제1 이미지 내지 상기 제p 이미지를 복수의 2차원 컨벌루션 레이어에 입력하여 상기 제1 이미지 내지 상기 제p 이미지에 대응되는 제1 특징 맵 내지 제p 특징 맵을 생성하고, 상기 제1 특징 맵 내지 상기 제p 특징 맵으로부터 상기 복수의 메인 입체 이미지를 생성하는 것을 특징으로 하는 비전 장치.
  18. 제17항에 있어서,
    상기 프로세서는, (5) 상기 2차원 컨벌루션 레이어 중 특정 2차원 컨벌루션 레이어로부터 상기 제k 이미지에 대응되는 제k 특징 맵이 획득되면, 2차원 디컨벌루션 레이어를 포함하는 세그멘테이션 네트워크에 (i) 상기 제k 특징 맵 및 (ii) 상기 제k 서브 코스트 볼륨을 입력하여, 상기 세그멘테이션 네트워크로 하여금 상기 2차원 디컨벌루션 레이어를 통해 상기 제k 이미지에 대응되는 제k 추정 세그멘테이션 결과를 출력하도록 하는 프로세스를 더 수행하는 것을 특징으로 하는 비전 장치.
  19. 제18항에 있어서,
    상기 프로세서는, (6) (i) 상기 제k 서브 인버스 거리 인덱스와 상기 제k 서브 인버스 거리 인덱스에 대응되는 제k 그라운드 트루스 서브 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 서브 거리 로스를 이용한 엔드 투 엔드 방식으로 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하고, (ii) 상기 제k 추정 세그멘테이션 결과 및 상기 제k 추정 세그멘테이션 결과에 대응되는 제k 그라운드 트루스 세그멘테이션 결과를 참조하여 생성한 적어도 하나의 세그멘테이션 로스를 이용한 엔드 투 엔드 방식으로 상기 세그멘테이션 네트워크를 학습하는 프로세스를 더 수행하는 것을 특징으로 하는 비전 장치.
  20. 제19항에 있어서,
    상기 프로세서는,
    상기 (6) 프로세스에서,
    상기 메인 인버스 거리 인덱스와 상기 메인 인버스 거리 인덱스에 대응되는 그라운드 트루스 메인 인버스 거리 인덱스를 참조하여 생성한 적어도 하나의 메인 거리 로스를 추가로 이용하여 상기 코스트 볼륨 계산 네트워크 및 상기 스윕 네트워크 중 적어도 일부를 학습하는 것을 특징으로 하는 비전 장치.
KR1020210126023A 2021-09-23 2021-09-23 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치 Active KR102361133B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210126023A KR102361133B1 (ko) 2021-09-23 2021-09-23 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치
US17/865,855 US11704825B2 (en) 2021-09-23 2022-07-15 Method for acquiring distance from moving body to at least one object located in any direction of moving body by utilizing camera-view depth map and image processing device using the same
PCT/KR2022/010970 WO2023048380A1 (ko) 2021-09-23 2022-07-26 카메라뷰 뎁스맵을 활용하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 이미지 처리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210126023A KR102361133B1 (ko) 2021-09-23 2021-09-23 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치

Publications (1)

Publication Number Publication Date
KR102361133B1 true KR102361133B1 (ko) 2022-02-14

Family

ID=80254166

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210126023A Active KR102361133B1 (ko) 2021-09-23 2021-09-23 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치

Country Status (3)

Country Link
US (1) US11704825B2 (ko)
KR (1) KR102361133B1 (ko)
WO (1) WO2023048380A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023048380A1 (ko) * 2021-09-23 2023-03-30 주식회사 멀티플아이 카메라뷰 뎁스맵을 활용하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 이미지 처리 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230158335A (ko) * 2022-05-11 2023-11-20 현대자동차주식회사 차량 및 그 제어 방법
CN117455927B (zh) * 2023-12-21 2024-03-15 万灵帮桥医疗器械(广州)有限责任公司 光斑阵列分割与光斑偏移量计算方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170017700A (ko) * 2015-08-07 2017-02-15 삼성전자주식회사 360도 3d 입체 영상을 생성하는 전자 장치 및 이의 방법
KR20210049581A (ko) * 2019-10-25 2021-05-06 주식회사 멀티플아이 이동체의 전방향에 대한 거리 취득 장치 및 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101915843B1 (ko) * 2016-06-29 2018-11-08 한국과학기술원 복굴절 매질을 이용한 영상 깊이 추정 방법 및 장치
US10467768B2 (en) * 2017-04-07 2019-11-05 Intel Corporation Optical flow estimation using 4-dimensional cost volume processing
US10957009B2 (en) * 2017-05-04 2021-03-23 Electronics And Telecommunications Research Institute Image processing apparatus and method
US11080590B2 (en) * 2018-03-21 2021-08-03 Nvidia Corporation Stereo depth estimation using deep neural networks
GB201807392D0 (en) * 2018-05-04 2018-06-20 Five Ai Ltd Method and image processing system for extracting depth information
US11237572B2 (en) * 2018-12-27 2022-02-01 Intel Corporation Collision avoidance system, depth imaging system, vehicle, map generator and methods thereof
US10839543B2 (en) * 2019-02-26 2020-11-17 Baidu Usa Llc Systems and methods for depth estimation using convolutional spatial propagation networks
KR20210025942A (ko) * 2019-08-28 2021-03-10 성균관대학교산학협력단 종단간 컨볼루셔널 뉴럴 네트워크를 이용한 스테레오 매칭 방법
GB202005538D0 (en) * 2020-04-16 2020-06-03 Five Ai Ltd Stereo depth estimation
KR102361133B1 (ko) * 2021-09-23 2022-02-14 주식회사 멀티플아이 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170017700A (ko) * 2015-08-07 2017-02-15 삼성전자주식회사 360도 3d 입체 영상을 생성하는 전자 장치 및 이의 방법
KR20210049581A (ko) * 2019-10-25 2021-05-06 주식회사 멀티플아이 이동체의 전방향에 대한 거리 취득 장치 및 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
End-to-End Learning for Omnidirectional Stereo Matching with Uncertainty Prior, IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020.05. *
ocalization and 3D Scene Perception for an Autonomous Vehicle with a Multi-camera System, arXiv:1809.05477v1.2018.09. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023048380A1 (ko) * 2021-09-23 2023-03-30 주식회사 멀티플아이 카메라뷰 뎁스맵을 활용하여 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 이미지 처리 장치

Also Published As

Publication number Publication date
US20230086983A1 (en) 2023-03-23
US11704825B2 (en) 2023-07-18
WO2023048380A1 (ko) 2023-03-30

Similar Documents

Publication Publication Date Title
Won et al. Sweepnet: Wide-baseline omnidirectional depth estimation
CN110853075B (zh) 一种基于稠密点云与合成视图的视觉跟踪定位方法
RU2713611C2 (ru) Способ моделирования трехмерного пространства
KR102295809B1 (ko) 이동체의 전방향에 대한 거리 취득 장치 및 방법
JP5991952B2 (ja) 周囲状況に対するカメラの姿勢を求めるための方法
JP5992184B2 (ja) 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム
KR102361133B1 (ko) 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치
US10878595B2 (en) Dual model for fisheye lens distortion and an algorithm for calibrating model parameters
Lagisetty et al. Object detection and obstacle avoidance for mobile robot using stereo camera
JP2023505891A (ja) 環境のトポグラフィを測定するための方法
Honegger et al. Embedded real-time multi-baseline stereo
CN112700486B (zh) 对图像中路面车道线的深度进行估计的方法及装置
US20200294269A1 (en) Calibrating cameras and computing point projections using non-central camera model involving axial viewpoint shift
Dimitrievski et al. Robust Matching of Occupancy Maps for Odometry in Autonomous Vehicles.
CN120266160A (zh) 基于神经网络的定位
KR102372298B1 (ko) 이동체의 전방향에 위치한 적어도 하나의 물체에 대한 거리를 획득하는 방법 및 이를 이용한 비전 장치
CN117111040A (zh) 基于lm算法的三维激光雷达与相机联合标定外参优化方法
JP2009186287A (ja) 平面パラメータ推定装置、平面パラメータ推定方法及び平面パラメータ推定プログラム
Ohnishi et al. Featureless robot navigation using optical flow
Raposo et al. Extrinsic calibration of multi-modal sensor arrangements with non-overlapping field-of-view
CN119832151A (zh) 开放式三维重建方法、自动深度定位方法、设备及机器人
CN113048985B (zh) 已知相对旋转角度条件下的像机相对运动估计方法
JP2005063012A (ja) 全方位カメラ運動と3次元情報の復元方法とその装置及びプログラム並びにこれを記録した記録媒体
Yaqoob et al. Performance evaluation of mobile stereonet for real time navigation in autonomous mobile robots
Huang et al. Wide-angle vision for road views

Legal Events

Date Code Title Description
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R14-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 5