KR20220026423A - 지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치 - Google Patents

지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치 Download PDF

Info

Publication number
KR20220026423A
KR20220026423A KR1020200107405A KR20200107405A KR20220026423A KR 20220026423 A KR20220026423 A KR 20220026423A KR 1020200107405 A KR1020200107405 A KR 1020200107405A KR 20200107405 A KR20200107405 A KR 20200107405A KR 20220026423 A KR20220026423 A KR 20220026423A
Authority
KR
South Korea
Prior art keywords
reconstruction
front image
planes
module
dimensional
Prior art date
Application number
KR1020200107405A
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 KR1020200107405A priority Critical patent/KR20220026423A/ko
Priority to CN202110637038.XA priority patent/CN114119652A/zh
Priority to US17/344,095 priority patent/US20220070433A1/en
Publication of KR20220026423A publication Critical patent/KR20220026423A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/579Depth or shape recovery from multiple images from motion
    • 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/207Image signal generators using stereoscopic image cameras using a single 2D image sensor
    • H04N13/221Image signal generators using stereoscopic image cameras using a single 2D image sensor using the relative movement between cameras and objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/207Analysis of motion for motion estimation over a hierarchy of resolutions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/0093Geometric image transformation in the plane of the image for image warping, i.e. transforming by individually repositioning each pixel
    • G06T3/18
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • 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/10016Video; Image sequence
    • 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/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2211/00Image generation
    • G06T2211/40Computed tomography
    • G06T2211/416Exact reconstruction

Abstract

3차원 재구성 장치가 개시된다. 본 개시의 기술적 사상의 일 측면에 따른 3차원 재구성 장치는, 3차원 재구성 수행 여부를 결정하기 위한 이벤트 트리거 모듈, 움직임 정보를 획득하기 위한 움직임 추정 모듈, 제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지를 수신하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하기 위한 재구성 모듈을 포함하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함할 수 있다.

Description

지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치{METHOD AND APPARATUS FOR THREE DIMESIONTAL RECONSTRUCTION OF PLANES PERPENDICULAR TO GROUND}
본 개시의 기술적 사상은 3차원 재구성 방법 및 장치에 관한 것으로, 자세하게는 지면에 수직인 평면들을 재구성하는 방법 및 장치에 관한 것이다.
이미지 센서(image sensor)를 사용하는 영상 촬영 장치는, 스마트 폰, PC, 감시용 카메라, 그리고 자율 주행 차량과 같은 다양한 전자 장치에 포함되거나, 하나의 독립된 전자 장치로 사용될 수 있다.
이미지 시퀀스의 2차원 관련성(correspondence)으로부터 3차원 좌표 정보를 추정하는 방법은 컴퓨터 비전(computer vision) 분야에서 중요한 요소 기술들 중 하나이다. 3차원 좌표 정보를 추정하는 방법 중 하나인 삼각 측량법(triangulation)은, 2차원의 특징점에 노이즈가 있는 경우, 추정된 3차원 좌표 정보가 부정확해질 수 있다. 이에 따라, 3차원의 특징점에 포함되는 노이즈의 영향을 줄이기 위한 여러 방법들이 제안되고 있다.
대표적인 기존 기술로서는 에피폴라(epipolar) 기하학에 기반하여 에피폴라 제약 조건(constraint)의 조건들을 사용하여 특징점들의 노이즈를 보정하는 방법이 있으며, 평면 위의 점들에 대하여 호모그래피를 사용하여 3차원 재구성 시, 3차원 좌표 정보의 정확도를 크게 향상시킨 기존 연구들이 있다.
본 개시의 기술적 사상의 일 측면은, 3차원 재구성 방법 및 장치에 관한 것으로, 지면에 수직인 평면들을 동시에 재구성함으로써 3차원 재구성 에러를 감소시키는 방법 및 장치를 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일 측면에 따른 3차원 재구성 장치는, 3차원 재구성 수행 여부를 결정하기 위한 이벤트 트리거 모듈, 움직임 정보를 획득하기 위한 움직임 추정 모듈, 제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지를 수신하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하기 위한 재구성 모듈을 포함하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함할 수 있다.
본 개시의 기술적 사상의 일 측면에 따른 3차원 재구성 방법은, 3차원 재구성 수행 여부를 결정하는 단계, 상기 수행 여부에 기반하여, 움직임 정보를 획득하는 단계, 수신한 제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하는 단계를 포함하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함할 수 있다.
본 개시의 기술적 사상의 일 측면에 따른 전자 장치는, 전방 이미지를 획득하기 위한 카메라 및 3차원 재구성 수행 여부를 결정하기 위한 이벤트 트리거 모듈, 움직임 정보를 획득하기 위한 움직임 추정 모듈, 제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지를 수신하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하기 위한 재구성 모듈을 포함하는 3차원 재구성 장치를 포함하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함할 수 있다.
본 개시의 예시적 실시예에 따른 장치 및 방법에 의하면, 지면에 수직인 적어도 하나 이상의 평면들에 포함된 특징점들을 동시에 3차원 재구성함으로써, 3차원 재구성 에러의 크기를 감소시킬 수 있다.
본 개시의 예시적 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 아니하며, 언급되지 아니한 다른 효과들은 이하의 기재로부터 본 개시의 예시적 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 개시의 예시적 실시예들을 실시함에 따른 의도하지 아니한 효과들 역시 본 개시의 예시적 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 3차원 재구성 장치의 블록도이다
도 2는 본 개시의 예시적 실시예에 따른 이미지 신호 프로세서의 블록도이다.
도 3은 픽셀 좌표계, 정규 좌표계, 및 카메라 좌표계의 예시이다.
도 4a는 본 개시의 예시적 실시예에 따른 3차원 재구성 장치의 움직임에 따른 프레임 변화의 예시이다.
도 4b는 본 개시의 예시적 실시예에 따른 특징점들이 변화하는 예시이다.
도 5는 본 개시의 예시적 실시예에 따른 3차원 재구성 장치의 동작 순서를도시하는 흐름도이다.
도 6은 본 개시의 예시적인 실시예들에 따른 전방 이미지의 예를 도시한다.
도 7은 본 개시의 예시적 실시예에 따른 3차원 재구성 에러가 개선되는 예를 도시하는 표이다.
도 8은 본 개시의 예시적 실시예에 따른 3차원 재구성을 수행한 결과를 도시하는 그래프이다.
도 9a 내지 도 9b는 본 개시의 예시적 실시예에 따른 지면에 수직인 평면들을 재구성하는 예를 도시한다.
도 10은 본 개시의 예시적 실시예에 따른 외부 파라미터를 추정하는 순서도이다.
도 11은 본 개시의 예시적 실시예에 따른 외부 파라미터의 에러가 개선되는 예를 도시하는 표이다.
이하, 본 개시의 다양한 실시 예가 첨부된 도면과 연관되어 기재된다.
도 1은 본 개시의 예시적 실시예에 따른 3차원 재구성 장치의 블록도이다.
도 1을 참조하면, 도 1을 참조하면, 3차원 재구성 장치(100)는 카메라(110) 및 이미지 신호 프로세서(image signal processor, ISP)(120)를 포함할 수 있다.
다양한 실시예들에 따라, 3차원 재구성 장치(100)는 전자 장치에 내장(embedded)되거나 또는 전자 장치로 구현될 수 있다. 전자 장치는 예를 들어, PC(personal computer), IoT (Internet of Things) 장치, 또는 휴대용 전자 기기로 구현될 수 있다. 휴대용 전자 기기는, 랩탑 컴퓨터, 이동 전화기, 스마트폰, 태블릿 PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라, 디지털 비디오 카메라, 오디오 장치, PMP(portable multimedia player), PND(personal navigation device), MP3 플레이어, 휴대용 게임 콘솔(handheld game console), e-북(e-book), 웨어러블 기기 등일 수 있다.
다양한 실시예들에 따라, 카메라(110)는 3차원 재구성 장치(100)에 임베디드되어, 3차원 재구성 장치(100)의 외부 환경을 인식할 수 있다. 카메라(110)는 전방 또는 여러 방향의 외부 환경에 대한 빛을 전기적 에너지로 변환하여 이미지를 생성하고, 이미지 신호 프로세서(120)에게 전달할 수 있다. 예를 들어, 카메라(110)는 핀홀(pinhole) 카메라에 상응할 수 있다.
다양한 실시예들에 따라, 카메라(110)는 내부 파라미터 및 외부 파라미터를 가질 수 있다. 상기 내부 파라미터는, 카메라(110) 자체의 내부적인 값으로, 초점 거리(focal length), 주점(principal point), 비대칭 계수(skew coefficient)를 포함할 수 있다. 상기 내부 파라미터에 관한 구체적인 설명은 후술하기로 한다. 전술한 실시예에서, 카메라(110)가 3차원 재구성 장치(100)에 포함되는 것을 기준으로 도시되었으나, 이에 제한되는 것은 아니다. 다양한 실시예들에 따라, 카메라(110)는 3차원 재구성 장치(100)와 별도의 회로로 구현되어, 3차원 재구성 장치(100)에게 전방 이미지만을 제공할 수도 있다.
다양한 실시예들에 따라, 이미지 신호 프로세서(120)는 카메라(110)로부터 획득한 이미지(이하, 전방 이미지)에 기초하여, 2차원 좌표들의 3차원 재구성을 수행할 수 있다. 일 실시예에 따라, 이미지 신호 프로세서(120)는 카메라(110)로부터 획득한 전방 이미지에 기초하여, 특징점들의 시퀀스에 기반하여 모션 벡터를 계산하고, 모션 벡터와 지면에 수직인 평면들의 법선 벡터 간에 동일 평면성(coplanarity) 및 SDP(semidefinite problem) 완화(relaxation)에 기반하여 특징점들의 3차원 좌표를 재구성할 수 있다.
도 2는 본 개시의 예시적 실시예에 따른 이미지 신호 프로세서의 블록도이다.
도 2를 참조하면, 이미지 신호 프로세서(120)는 이벤트 트리거 모듈(122), 움직임 추정 모듈(124), 3차원 재구성 모듈(126)를 포함할 수 있다.
이벤트 트리거 모듈(122)는 캘리브레이션 이벤트를 검출하고, 외부 파라미터를 추정할 것을 트리거할 수 있다.
일 실시예에 따라, 이미지 신호 프로세서(120)는 격자 무늬의 오브젝트를 관심 객체로 설정할 수 있다. 이미지 신호 프로세서(120)는 카메라(110)를 통해 획득한 이미지 내에서 격자 무늬를 포함하는 오브젝트를 검출한 경우, 상기 오브젝트가 캘리브레이션을 위한 격자 무늬를 포함하는 수직 평면인지 판단하고, 판단 결과에 따라 외부 파라미터를 추정할 것을 트리거할 수 있다.
다른 실시예에 따라, 3차원 재구성 장치(100)는 자율 주행(automotive driving)이 가능한 호스트 차량에 임베디드될 수 있다. 이 경우, 이미지 신호 프로세서(120)는 호스트 차량의 무선 통신 회로로부터 제어 신호를 수신함에 응답하여 3차원 재구성을 수행할 것을 트리거할 수 있다. 예를 들어, 상기 캘리브레이션을 위한 격자 무늬가 설치된 영역은, 주변을 통과하는 임의의 차량에게 3차원 재구성을 트리거하기 위한 무선 신호를 송신하기 위한 장치가 설치될 수 있다.
예를 들어, 상기 무선 신호는, 블루투스 기반의 비콘(beacon) 신호일 수 있다. 호스트 차량은 무선 통신 회로를 통해 비콘 신호를 수신하고, 이미지 신호 프로세서(120)에게 전달할 수 있다. 이미지 신호 프로세서(120)는 상기 비콘 신호를 수신한 경우, 캘리브레이션을 위한 격자 무늬가 호스트 차량의 주변에 존재하는 것을 식별하고, 외부 파라미터의 측정을 트리거할 수 있다. 즉, 상기 비콘 신호의 수신에 응답하여, 격자 무늬의 오브젝트를 포함하는 관심 영역의 추출을 수행할 수 있다.
다양한 실시예들에 따라, 이벤트 트리거 모듈(122)은 격자 무늬의 오브젝트가 적어도 둘 이상 검출됨에 응답하여 3차원 재구성을 수행할 것을 트리거할 수도 있다. 3차원 재구성 장치(100)는 지면에 수직인 평면들이 적어도 둘 이상인 경우에, 상기 적어도 둘 이상의 평면들을 동시에 3차원 재구성함으로써 상기 적어도 둘 이상의 평면들을 개별적으로 3차원 재구성할 때에 비하여 3차원 재구성 시 발생하는 에러를 감소시킬 수 있다.
다양한 실시예들에 따라, 움직임 추정 모듈(124)은 특징점을 추출하고, 특징점들의 변화에 기반하여 호스트 차량(200)의 모션 파라미터 및 모션 벡터를 추정할 수 있다.
상기 모션 파라미터는, 연속된 프레임 동안 얼마나 회전하였는지 나타내는 회전 매트릭스(rotation matrix), 및 얼마나 이동하였는지 나타내는 이동 벡터(translation vector)를 포함할 수 있다.
일 실시예에 따라, 움직임 추정 모듈(124)은 상기 격자 무늬의 오브젝트를 포함하는 평면이 지면에 수직인 제약 조건(constraint)을 이용하여, 특징점들의 변화에 기반하여 호스트 차량(200)의 모션 파라미터를 추정할 수 있다. 움직임 추정 모듈(124)은 특징점들의 시퀀스(sequence)에 기반하여 에센셜(essential) 매트릭스를 계산할 수 있고, 상기 에센셜 매트릭스를 디컴포지션(decomposition)함으로써 회전 매트릭스와 이동 벡터를 각각 계산할 수 있다. 움직임 추정 모듈(124)은 상기 에센셜 매트릭스를 디컴포지션하여 획득한 회전 매트릭스와 이동 벡터에 기반하여 모션 벡터를 획득할 수 있다.
다양한 실시예들에 따라, 3차원 재구성(3 dimensional reconstruction) 모듈(126)은 이미지 플레인의 2차원 좌표들을 카메라 좌표계 상의 3차원 좌표들로 변환할 수 있다. 3차원 재구성 모듈은 삼각 측량법(triangulation)에 기반하여 상기 3차원 좌표들을 변환할 수 있다. 삼각 측량법은 에피폴라(epipolar) 기하학에 기반하여 동일한 객체를 서로 다른 뷰(view)에서 바라보았을 때, 특징점들 간에 관계를 이용하는 것이다. 상기 재구성된 3차원 좌표들은, 카메라 좌표계의 3차원 좌표들에 상응할 수 있다.
일 실시예에 따라, 3차원 재구성 모듈(126)은 지면에 수직하는 적어도 둘 이상의 평면들을 동시에 3차원 재구성하기 위하여, QCQP 포뮬레이션(Quadratically Constrained Quadratic Program formulation)에 기반할 수 있다. 상기 QCQP 포뮬레이션은 비결정 난해(Non-Deterministic hard) 문제에 상응할 수 있다. 상기 비결정 난해 문제는 모든 경우의 수를 전부 확인해보는 방법 이외에는 정확한 답을 구할 수 없는 문제들을 지칭한다. 상기 비결정 난해 문제는, SDP 완화를 이용하여 최적화 또는 근사 값을 구함으로써 해결할 수 있다.
일 실시예에 따라, 3차원 재구성 모듈(126)은 SDP 완화에 기반하여 적어도 둘 이상의 평면들의 각각의 호모그래피를 획득할 수 있다. 3차원 재구성 모듈(126)은 상기 QCQP 포뮬레이션을 SDP로 치환하여 최적 값을 구할 수 있다. 상기 최적 값은 복수의 평면들 각각의 법선 벡터를 포함할 수 있다. 이후, 3차원 재구성 모듈(126)은 복수의 평면들 각각에 대하여 획득한 법선 벡터를 이용하여 호모그래피를 계산할 수 있다.
도 3은 픽셀 좌표계, 정규 좌표계, 및 카메라 좌표계의 예시이다.
도 3을 참조하면, 월드 좌표계(world coordinate)는 3차원 재구성 장치(100)의 외부 환경에 대응하는 실제 세계를 표현하기 위한 좌표계를 지칭할 수 있다. 다양한 실시예들에 따라, 3차원 재구성 장치(100)의 카메라(110)를 원점(origin)으로 설정하는 경우, 카메라 좌표계(camera coordinate)로 지칭될 수도 있다.
일 실시예에 따라, 카메라 좌표계 또는 차량 좌표계는 Xc축, Yc축 및 Zc축을 가질 수 있다. 예를 들어, 카메라 좌표계에서, Zc축은 카메라가 응시하는 정면(front) 방향에 대응될 수 있고, Xc축은 카메라(110)가 응시하는 방향을 기준으로 오른쪽(right) 방향에 대응될 수 있고, Zc축은 카메라(110)가 응시하는 방향을 기준으로 아래(down) 방향에 대응될 수 있다.
픽셀 좌표계(pixel coordinate)는 실제 세계(world)가 카메라(110)를 통해 투영(projection)되는 2차원 영역을 지칭할 수 있다. 픽셀 좌표계는 2차원의 영역이므로, 픽셀 단위로 구별되는 좌표계(coordinate)를 가질 수 있다. 예를 들어, 이미지 플레인의 좌측 상단을 원점(origin)으로 설정하는 경우, 우측 방향은 x축으로, 아래 방향은 y축으로 표현될 수 있다. 픽셀 좌표계의 x, y 성분은 각각 픽셀 단위를 가질 수 있다.
정규 좌표계(normalization coordinate)는 카메라(110)의 광학축(Zc 축)과의 교점을 원점으로 하는 좌표계를 지칭할 수 있다. 정규 좌표계는 상기 원점을 기준으로 우측 방향을 u축으로, 아래 방향을 v축으로 표현할 수 있다.
다양한 실시예들에 따라, 픽셀 좌표계와 정규 좌표계 간에 변환은 하기에 기반할 수 있다.
Figure pat00001
여기서, u, v는 정규 좌표계의 좌표 값, x, y는 픽셀 좌표계의 좌표 값, fx, fy는 초점 거리, cx, cy는 주점, skew_cfx는 비대칭 계수를 지칭할 수 있다.
상기 초점 거리는, 카메라(110)의 렌즈 중심과 이미지 센서와의 거리를 지칭하며, 픽셀 단위를 가질 수 있다. 상기 주점은, 카메라(110)의 렌즈 중심점의 수선과 이미지 센서가 교차하는 지점의 영상 좌표를 지칭할 수 있다. 상기 비대칭 계수는, 이미지 센서의 셀 어레이가 y축으로 얼마나 기울어졌는지 나타내는 값일 수 있다. 픽셀 좌표계는, 정규화에 기반하여 정규 좌표계로 변환됨으로써 내부 파라미터의 영향을 받지 않는 좌표계로 변환될 수 있다.
도 4a는 본 개시의 예시적 실시예에 따른 3차원 재구성 장치의 움직임에 따른 프레임 변화의 예시이고, 도 4b는 본 개시의 예시적 실시예에 따른 특징점들이 변화하는 예시이다.
도 4a는 격자 무늬의 오브젝트를 포함하는 평면은 지면에 수직이고, 3차원 재구성 장치(100)는 상기 평면을 향해 움직이는 상황을 예시적으로 표현할 수 있다. 즉, n-1번째 프레임에서 격자 무늬의 오브젝트는, n번째 프레임에서 크기가 증가될 수 있다.
도 4b는 격자 무늬 중 적어도 하나의 사각형을 형성하는 특징점들의 변화를 도시할 수 있다. 예를 들어, 제1 프레임에서 사각형을 형성하는 특징점들은 제1 포인트 내지 제4 포인트를 포함할 수 있고, 제1 포인트의 좌표는 (x1, y1), 제2 포인트의 좌표는 (x2, y2), 제3 포인트의 좌표는 (x3, y3), 및 제4 포인트의 좌표는 (x4, y4)일 수 있다. 제2 프레임에서 3차원 재구성 장치(100)이 전방으로 움직이고, 3차원 재구성 장치(100)의 전방에 상기 격자 무늬의 오브젝트가 지면과 수직인 평면 상에 배치되는 경우, 제1 포인트 내지 제4 포인트는 각각 외곽 방향으로 이동할 수 있다. 이동된 제1 포인트의 좌표는 (x'1, y'1), 이동된 제2 포인트의 좌표는 (x'2, y'2), 이동된 제3 포인트의 좌표는 (x'3, y'3), 및 이동된 제4 포인트의 좌표는 (x'4, y'4)일 수 있다.
도 5는 본 개시의 예시적 실시예에 따른 3차원 재구성 장치의 동작 순서를도시하는 흐름도이다.
동작 S110에서, 3차원 재구성 장치(100)는 이미지 프레임 내에서 관심 영역을 추출할 수 있다. 카메라(110)는 매 프레임마다 이미지를 획득하여 이미지 신호 프로세서(120)에게 전송하고, 이미지 신호 프로세서(120)는 상기 이미지가 미리 정의된 관심 영역을 포함하는지 스캐닝할 수 있다. 예를 들어, 관심 영역은 도 4a에 도시된 격자 무늬의 오브젝트, 건물 외벽에 배치된 사각형의 창문 등을 포함할 수 있다.
동작 S120에서, 3차원 재구성 장치(100)는 관심 영역 내에서 특징점들을 추출할 수 있다. 예를 들어, 상기 특징점들은 사각형을 형성하는 4개의 꼭지점들을 포함할 수 있다.
동작 S130에서, 3차원 재구성 장치(100)는 특징점들의 이동에 기반하여 모션 벡터를 획득할 수 있다. 도 5b를 함께 참조하면, 제1 포인트는 호스트 차량(200)이 주행함에 따라 좌표 (x1, y1)에서 좌표 (x'1, y'1)로 변경될 수 있다.
다양한 실시예들에 따라, 초점 거리, 주점, 비대칭 계수를 포함하는 카메라(110)의 내부 파라미터가 이미 알려진 값이라고 가정하면, 3차원 재구성 장치(100)는 제1 프레임 및 제2 프레임에서 특징점들을 각각 정규화(normalization)할 수 있다. 이후, 3차원 재구성 장치(100)는, 하기의 수학식 2에 기반하여 에센셜 매트릭스 E를 계산할 수 있다.
Figure pat00002
여기서, u, v는 제1 프레임의 정규 픽셀 좌표를, u', v'는 제2 프레임의 정규 픽셀 좌표를 지칭할 수 있다. 상기 수학식 2를 만족하는 에센셜 매트릭스 E는 아래와 같이 표기될 수 있다.
Figure pat00003
여기서, t는 이동 벡터(translation vector), R은 회전 매트릭스(rotation matrix)를 지칭하며, x 연산자는 외적(cross product)를 지칭할 수 있다. 즉, 3차원 재구성 장치(100)는 획득된 E를 회전 매트릭스와 이동 벡터로 디컴포지션(decomposition)함으로써 모션 파라미터를 획득할 수 있다. 3차원 재구성 장치(100)는 디컴포지션한 회전 매트릭스와 이동 벡터를 이용하여 3차원 재구성 장치(100)의 모션 벡터를 아래와 같이 계산할 수 있다.
Figure pat00004
동작 S140에서, 3차원 재구성 장치(100)는 모션 파라미터 및 삼각 측량에 기반하여 특징점들에 상응하는 카메라 좌표계의 3차원 좌표를 획득할 수 있다.
동작 S140에서, 3차원 재구성 장치(100)는 모션 벡터와 법선 벡터간에 동일 평면성에 기반하여 QCQP 포뮬레이션을 수행할 수 있다.
구체적으로, 제1 프레임과 제2 프레임 간에 호모그래피가 성립하는 경우, 특징점들의 관련성은 아래와 같이 표기될 수 있다.
Figure pat00005
xi,k는 제1 프레임에서 복수의 평면들 중 k번째 평면에 배치된 i번째 특징점을 지칭하며, x'i,k는 제2 프레임에서 k번째 평면에 배치된 i번째 특징점을 지칭할 수 있다. 또한, 지면에 수직인 평면이라는 제약 사항을 이용하면, k번째 평면에 적용되는 호모그래피 Hk는 아래와 같이 표기될 수 있다.
Figure pat00006
따라서, 수학식 5는 수학식 6을 이용하여 정리하면, 아래와 같이 표기될 수 있다.
Figure pat00007
수학식 7을 다시 정리하면 아래와 같이 표기할 수 있다.
Figure pat00008
Figure pat00009
연산자는 벡터 간에 외적(cross product)을 지칭하고, k번째 평면의 법선 벡터에 대한 최적화 문제는 아래와 같이 표기할 수 있다.
Figure pat00010
여기서,
Figure pat00011
이고,
Figure pat00012
을 각각 만족할 수 있다.
다양한 실시예들에 따라, 복수의 평면들은 지면에 수직하므로, 복수의 평면들 각각의 법선 벡터는 지면에 평행할 수 있다. 또한, 복수의 평면들의 법선 벡터들간에 외적을 수행하면 지면에 대한 법선 벡터가 되며, 이를 다시 모션 벡터와 내적하면 0이 될 수 있다. 상기 복수의 평면들에 대한 제약 사항인 동일 평면성(coplanarity)을 수학식으로 나타내면 아래와 같다.
Figure pat00013
최적화 문제를 QCQP 문제로 치환하기 위하여, 제약 조건을 다시 표기할 수있다. 연접 법선 벡터 w를 정의하면 아래와 같다.
Figure pat00014
상기 수학식 11을 이용하여 수학식 10의 동일 평면성(coplanarity)을 치환하면 아래와 같다.
Figure pat00015
여기서, Ck는 부분적으로 3x3의 제로 매트릭스(zero matrix)를 포함하는 3K의 컬럼, 3K의 로우를 가지는 대칭 블록 매트릭스(symmetric block matrix)를 지칭할 수 있다. 즉, Ck는 Cij의 3x3 매트릭스들의 집합이며, Ck 중 C1k, Ck1 부분 매트릭스는 0이 아닐 수 있다. Cij는 i번째 로우, j번째 컬럼의 부분 매트릭스를 지칭할 수 있다. C1k, Ck1을 각각 표기하면
Figure pat00016
,
Figure pat00017
에 상응할 수 있다.
다양한 실시예들에 따라, 수학식 10의 목적 함수를 최소화하는 최적화 문제를 치환하기 위하여, w의 차원을 1만큼 더 늘리는 경우, 아래와 같이 표기할 수 있다.
Figure pat00018
다양한 실시예들에 따라, 수학식 13을 이용하여 목적 함수에 대한 수학식 9와 제약 조건인 동일 평면성에 대한 수학식 10을 정리하면 아래와 같다.
Figure pat00019
여기서,
Figure pat00020
이고,
Figure pat00021
에 상응할 수 있다. 또한,
Figure pat00022
에 상응할 수 있다. 03K는 3Kx3K의 제로 매트릭스를 지칭할 수 있다.
최소 값을 찾아야 하는 목적 함수는 양의 준정부호 행렬(positive semidefinite matrix)의 2차 함수(quadratic function)로 치환되고, 제약 조건인 동일 평면성은 대칭 매트릭스들의 2차 식으로 치환되었으므로, 수학식 14는 QCQP로 포뮬레이션되었음을 알 수 있다.
동작 S150에서, 3차원 재구성 장치(100)는 SDP 완화에 기반하여 3차원 재구성을 수행할 수 있다.
QCQP를 SDP로 변경하고, 랭크(rank) 제약을 경감시키기 위하여, 아래의 치환이 사용될 수 있다.
Figure pat00023
X를 차원이 증가된 연접 법선 벡터와 상기 연접 법선 벡터의 전치 행렬(transpose)의 내적으로 치환하는 경우, 수학식 14의 QCQP는 아래와 같이 표기될 수 있다.
Figure pat00024
수학식 16의 랭크 제약을 제거함으로써, QCQP의 SDP 완화를 획득할 수 있고, SDP 완화는 아래와 같다.
Figure pat00025
다양한 실시예들에 따라, SDP는 컨벡스(convex) 최적화 문제에 포함되기 때문에, 로컬 최적 값을 구하더라도 로컬 최적 값이 글로벌 최적 값과 동일하다는 것이 보장될 수 있다.
상기 SDP의 최적 X가 계산된 경우, 차원이 증가된 연접 법선 벡터
Figure pat00026
를 획득할 수 있다.
Figure pat00027
는 복수의 평면들 각각의 법선 벡터들을 연접한 벡터이므로,
Figure pat00028
를 획득함으로써 복수의 평면들의 법선 벡터들을 각각 구할 수 있다.
다양한 실시예들에 따라, 3차원 재구성 장치(100)는 복수의 평면들의 법선 벡터들을 하기의 수학식에 적용하여 복수의 평면들의 호모그래피들을 각각 구할 수 있다. 구체적으로, 상기 수학식 5 및 수학식 6을 이용하여
Figure pat00029
를 구할 수 있다.
도 6은 본 개시의 예시적인 실시예들에 따른 전방 이미지의 예를 도시한다.
도 6을 참조하면, 카메라(110)는 4개의 평면들을 식별할 수 있다. 상기 4개의 평면들 각각은 지면에 수직하고, 격자 무늬의 오브젝트들을 포함하는 평면에 상응할 수 있다.
3차원 재구성 장치(100)는 상기 4개의 평면들에 포함되는 복수의 특징점들을 추출하고, 이미지 시퀀스에 따라 이동하는 특징점들에 기반하여 모션 벡터를 계산할 수 있다. 구체적으로, 3차원 재구성 장치(100)는 수학식 1을 이용하여, 제1 프레임 및 제2 프레임 각각의 특징점 좌표를 정규 좌표계로 변환하고, 제1 프레임 및 제2 프레임의 특징점 좌표들 간에 수학식 2를 만족하는 에센셜 매트릭스를 계산하고, 상기 에센셜 메트릭스를 디컴포지션하여 수학식 4에 따라 모션 벡터를 획득할 수 있다. 상기 모션 벡터는, 3차원 재구성 장치(100) 또는 카메라(110)의 움직임을 나타내기 위한 것으로, 도 6의 벡터 m에 상응할 수 있다.
3차원 재구성 장치(100)는 법선 벡터에 대한 최적화 문제를 QCQP로 치환하고, 이를 SDP 완화함으로써 복수의 평면들에 대한 법선 벡터를 동시에 계산할 수 있다. 도 6을 참조하면, 4개의 평면들에 대한 법선 벡터는 벡터 n1 내지 n4에 상응할 수 있다. 이후, 3차원 재구성 장치(100)는 복수의 평면들 각각에 대한 법선 벡터를 이용하여 호모그래피를 계산하고, 3차원의 카메라 좌표계 상에 대응되는 좌표로 변환할 수 있다.
도 7은 본 개시의 예시적 실시예에 따른 3차원 재구성 에러가 개선되는 예를 도시하는 표이다.
도 7을 참조하면, "Na
Figure pat00030
ve triangulation"은 종래의 3차원 재구성 방법에 관한 것으로, 특징점마다 개별적으로 3차원 재구성을 수행하는 방법(이하, 제1 방법)이며, "Planar reconstruction"은 하나의 평면에 배치된 복수의 특징점들을 동시에 3차원 재구성하는 방법(이하, 제2 방법)을 지칭한다.
도 7을 참조하면, 가우시안 픽셀 노이즈(Gaussian pixel noise)가 2차원 픽셀 좌표계에 인가되었으며, 표준 편차는 0.1부터 3까지 다양하게 설정되었다.
가우시안 픽셀 노이즈의 표준 편차가 0.1일 때, 거리 8미터 전방의 특징점들을 3차원 재구성한 결과 재구성 에러의 크기를 살펴보면, 제1 방법에 따라 특징점을 3차원 재구성한 경우, 재구성 에러의 크기는 "0.0157[m]"이고, 제2 방법에 따라 특징점을 3차원 재구성한 경우, 재구성 에러의 크기는 "0.0037[m]"이다. 즉, 가우시안 픽셀 노이즈를 포함하는 특징점들을 각각 개별적으로 3차원 재구성하는 경우, 재구성 에러의 크기가 크고, 동일 평면상에 배치된 복수의 특징점들을 동시에 재구성하는 경우, 재구성 에러가 개선됨을 알 수 있다.
다만, 도 5 내지 도 6에 따라 복수의 평면들을 동시에 3차원 재구성하는 경우, 복수의 평면들을 개별적으로 재구성하는 경우보다 에러의 크기가 더 감소하는 것을 알 수 있다. 예를 들어, 2개의 평면들을 동시에 3차원 재구성하는 경우, 에러의 크기는 "0.0032[m]", 4개의 평면들을 동시에 3차원 재구성하는 경우, 에러의 크기는 "0.0030[m]"임을 알 수 있다. 즉, 3차원 재구성 장치(100)는 동시에 재구성하는 평면들의 개수가 증가할수록 재구성 에러의 크기를 줄일 수 있다. 10미터 전방의 특징점을 재구성하거나, 표준편차가 큰 가우시안 픽셀 잡음의 경우, 재구성 에러의 크기가 증가할 것을 분명하나, 제1 방법 및 제2 방법에 따른 3차원 재구성보다 에러의 크기가 작고, 많은 평면들을 동시에 3차원 재구성할수록 에러의 크기가 감소될 수 있다는 점은 여전히 유효함을 알 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 3차원 재구성을 수행한 결과를 도시하는 그래프이다.
도 8을 참조하면, 제1 로우는 특징점들을 각각 재구성하는 제1 방법에 따라 복구한 3차원 좌표를 입체적으로 도시한 것이고, 제2 로우는, 하나의 평면에 포함된 복수의 특징점들을 동시에 재구성하는 제2 방법에 따라 복구한 3차원 좌표를 입체적으로 도시한 것이고, 제3 로우는, 복수의 평면들을 동시에 재구성하는 방법에 따라 복구한 3차원 좌표를 입체적으로 도시한 것이다.
제1 로우를 살펴보면, 3차원에서 재구성된 좌표들이 동일 평면성을 형성하지 못하는 것을 알 수 있다. 즉, 제1 방법에 따라 특징점마다 재구성하는 경우, 특징점마다 포함하는 노이즈의 크기가 모두 상이하여 재구성 에러의 크기가 크고, 동일 평면상에 배치되지 않을 수 있다.
제2 로우를 살펴보면, 3차원에서 재구성된 좌표들이 동일 평면성을 형성하나, 구부러진 평면의 형상으로 재구성된 것을 알 수 있다. 즉, 제2 방법에 따라 하나의 평면상에 존재하는 특징점들을 동시에 재구성하는 경우, 동일 평면에 배치되도록 재구성될 수는 있으나, 일정 크기의 재구성 에러를 포함하는 평면일 수 있다. 상기 제1 로우 및 제2 로우와 달리, 제3 로우는, 3차원에서 재구성된 좌표들이 하나의 평평한 평면 상에 배치되도록 재구성된 것을 알 수 있다.
도 9a 내지 도 9b는 본 개시의 예시적 실시예에 따른 지면에 수직인 평면들을 재구성하는 예를 도시한다.
다양한 실시예들에 따라, 3차원 재구성 장치(100)는 이미지 처리를 위한 추가적인 모듈들을 더 포함할 수 있다. 예를 들어, 3차원 재구성 장치(100)는 입력 이미지 또는 전방 이미지에서 각각의 면(surface)들을 분할(또는 구획)하기 위한 세그먼테이션(segmentation) 모듈, 및 지면과 수직을 이루는지 판단하기 위한 분류기(classifier)를 더 포함할 수 있다.
도 9a를 참조하면, 3차원 재구성 장치(100)는 건물의 외부를 촬영한 이미지를 입력 받을 수 있다. 건물과 같은 구조물은 지면과 수직하는 평면들의 조합으로 이루어질 수 있다. 예를 들어, 3차원 재구성 장치(100)는 건물 외벽에 존재하는 창문 형상 등을 관심 객체로 설정하여, 해당 관심 객체를 구성하는 특징점들을 추출할 수 있다. 3차원 재구성 장치(100)는 상기 특징점 및 세그먼테이션 모듈과 분류기 등에 기반하여 지면에 수직인 평면들을 식별하고, 상기 식별된 평면들을 동시에 3차원 재구성함으로써 3차원 재구성 에러의 크기를 유의미하게 감소시킬 수 있다. 이에 따라 3차원 복원 조감도의 정확도 역시 향상될 수 있을 것이다.
도 9b를 참조하면, 3차원 재구성 장치(100)는 건물의 내부를 촬영한 이미지를 입력 받을 수도 있다. 건물의 내부 구조물은 지면과 수직하는 평면들의 조합으로 구성될 수 있다. 예를 들어, 3차원 재구성 장치(100)는 지면에 수직하는 평면들을 포함할 가능성이 높은 객체들(예를 들어, 선반, 벽면, 냉장고 등의 가전제품 등등)을 관심 객체로 설정하고, 해당 관심 객체를 구성하는 특징점들을 추출할 수 있다. 3차원 재구성 장치(100)는 상기 특징점 및 세그먼테이션 모듈과 분류기를 이용하여 지면에 수직인 평면들을 식별하고, 상기 식별된 평면들을 동시에 3차원 재구성 함으로써 재구성 에러의 크기를 감소시킬 수 있다.
도 10은 본 개시의 예시적 실시예에 따른 외부 파라미터를 추정하는 순서도이다.
도 10을 참조하면, 동작 S210에서 3차원 재구성 장치(100)는 3차원 재구성된 좌표를 월드 좌표계로 변환할 수 있다. 상기 월드 좌표계는, 카메라(110)로부터 지면으로 수직 방향의 직선이 지면과 교차하는 점을 원점으로 할 수 있다.
일 실시예에 따라, 월드 좌표계는 Xw축, Yw축, 및 Zw축을 가질 수 있다. 예를 들어, 월드 좌표계의 Xw축은 3차원 재구성 장치(100)가 진행하는 방향에 대응될 수 있고, Zw축은 지면에 수직하는 방향에 대응될 수 있고, Yw축은 3차원 재구성 장치(100)의 진행 방향을 기준으로 왼쪽(left) 방향에 대응될 수 있다.
Figure pat00031
전술한 바와 같이, 특징점들은 지면에 수직인 평면 상에 배치되는 것을 특징으로 하는 바, 호모그래피(homography)가 성립하는 것을 알 수 있다. 상기
Figure pat00032
은 호모그래피의 회전 매트릭스이고,
Figure pat00033
는 호모그래피의 이동 벡터를 지칭하고, Xw는 차량 좌표계, Xc는 카메라 좌표계를 지칭할 수 있다. 또한,
Figure pat00034
는 피치 각도,
Figure pat00035
는 롤 각도,
Figure pat00036
는 요 각도, h는 카메라 높이의 변수(variable)를 각각 나타낸다. 상기 롤 각도, 요 각도, 피치 각도, 및 카메라 높이는 카메라(110)의 기하학적 포지션에 관한 것으로, 외부 파라미터로 지칭될 수 있다. 월드 좌표계, 카메라 좌표계 및 회전 변환을 나타내면 아래의 수학식들에 따라 표기될 수 있다.
Figure pat00037
Figure pat00038
Figure pat00039
여기서, 상기 회전 매트릭스는,
Figure pat00040
,
Figure pat00041
와 같이 간략하게 표기되었다. 여기서, 카메라 좌표계에서 원점 (0, 0, 0)은 월드 좌표계에서 카메라 높이만큼 수직 지점 (0, 0, h)에 상응하는 것을 수학식으로 나타내면 하기와 같다.
Figure pat00042
상기 수학식 22에 기반하여 이동 벡터를 나타내면 하기와 같다.
Figure pat00043
상기 r3는 회전 매트릭스의 3번째 컬럼(column)을 지칭할 수 있다.
동작 S220에서, 3차원 재구성 장치(100)는 특징점들의 관계를 이용하여 외부 파라미터를 추정할 수 있다. 전술한 바와 같이, 상기 특징점들은 지면에 수직인 평면 상에 배치되며, 특징점들이 형성하는 사각형의 높이(수직 길이)는 미리 정의된 것을 알 수 있다. 또한, 지면에 수직인 법선 상에 위치하는 특징점들은 Zw의 크기만 상이할 뿐, Xw, Yw의 값은 모두 동일한 것을 알 수 있다. 이 같은 특징점들 간에 제약(constraint) 관계를 도시하면 아래와 같을 수 있다.
Figure pat00044
Figure pat00045
Figure pat00046
상기 수학식 24는 월드 좌표계의 i번째 좌표의 x성분과 z번째 좌표의 x 성분의 차이는 제로(zero)인 특징을 다시 표기한 것이며, 상기 수학식 25는 월드 좌표계의 i번째 y성분과 z번째 좌표의 y성분의 차이가 제로(zero)인 특징을 다시 표기한 것이다. 수학식 26의
Figure pat00047
는 전술한 바와 같이 수직 길이로서, 미리 정의된 값일 수 있다.
상기 수학식 24 내지 수학식 26를 이용하면, 피치 각도(
Figure pat00048
) 및 롤 각도(
Figure pat00049
)는 각각 아래와 같이 표기될 수 있다.
Figure pat00050
Figure pat00051
확장 초점을 계산하여 요 각도(
Figure pat00052
)는 획득되었다고 가정하면, 수학식 27, 수학식 28를 통해 회전 매트릭스를 결정할 수 있다. 호모그래피의 특징을 이용하여, 카메라 높이를 추정하면 아래와 같을 수 있다.
Figure pat00053
다양한 실시예들에 따라, 3차원 재구성 장치(100)는 월드 좌표계의 3차원 좌표들 값을 획득하지 않고도, 픽셀 좌표계 상의 특징점들의 변화, 상기 변화에 기반한 모션 파라미터의 추정, 상기 모션 파라미터와 삼각 측량법에 따른 픽셀 좌표계의 특징점들을 카메라 좌표계의 3차원 좌표로 변환, 카메라 좌표계와 차량 좌표계의 변환 관계와 차량 좌표계의 특징점들의 제약에 기반하여 외부 파라미터를 추정할 수 있음을 알 수 있다. 또한, 카메라 좌표계의 3차원 좌표로 변환하는 과정에서도 지면에 수직하는 복수의 평면들을 동시에 재구성함으로써 3차원 재구성의 에러 크기를 감소시키고 정확도가 향상된 카메라 좌표계의 3차원 좌표들이 획득될 수 있다.
도 11은 본 개시의 예시적 실시예에 따른 외부 파라미터의 에러가 개선되는 예를 도시하는 표이다.
도 11을 참조하면, 가우시안 픽셀 노이즈(Gaussian pixel noise)가 2차원 픽셀 좌표계에 인가되었으며, 표준 편차는 0.1부터 3까지 다양하게 설정되었다.
가우시안 픽셀 노이즈의 표준 편차가 0.1일 때, 거리 8미터 전방의 특징점들을 3차원 재구성한 결과 재구성 에러의 크기를 살펴보면, 제1 방법에 따라 특징점을 3차원 재구성하고, 이에 기반하여 외부 파라미터를 측정했을 때, 외부 파라미터 에러의 크기는 피치 각도는 "0.9829[degree]", 롤 각도는 "0.2859[degree]", 카메라 높이는 "0.1413[m]"임을 알 수 있다.
제2 방법에 따라 특징점을 3차원 재구성한 경우, 재구성된 특징점들의 에러 크기가 감소되는 것은 전술한 바와 같다. 즉, 재구성 에러의 크기가 개선된 특징점들을 이용하여 외부 파라미터를 추정하는 경우, 외부 파라미터의 에러를 보다 개선할 수 있다. 도 11을 참조하면, 제2 방법에 따라 재구성한 특징점들에 기반한 외부 파라미터 에러의 크기는 피치 각도는 "0.6383[degree]", 롤 각도는 "0.2017[degree]", 카메라 높이는 "0.0917[m]"임을 알 수 있다. 즉, 동일 평면상에 배치된 복수의 특징점들을 동시에 재구성하는 경우, 재구성 에러가 개선되고, 에러가 감소된 특징점들에 기반한 외부 파라미터의 추정 에러 또한 개선됨을 알 수 있다.
이에 더하여, 도 5 내지 도 6에 따라 복수의 평면들을 동시에 3차원 재구성하는 경우, 복수의 평면들을 개별적으로 재구성하는 제2 방법보다 에러의 크기가 더 감소하는 것을 알 수 있다. 예를 들어, 4개의 평면들을 동시에 3차원 재구성하고, 외부 파라미터를 추정하는 경우, 외부 파라미터 에러의 크기는 피치 각도는 "0.0312[degree]", 롤 각도는 "0.1587[degree]", 카메라 높이는 "0.0045[m]"임을 알 수 있다. 즉, 3차원 재구성 장치(100)는 동시에 재구성하는 평면들의 개수가 증가할수록 재구성 에러의 크기를 줄일 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 3차원 재구성 수행 여부를 결정하기 위한 이벤트 트리거 모듈;
    움직임 정보를 획득하기 위한 움직임 추정 모듈;
    제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지를 수신하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하기 위한 재구성 모듈을 포함하고,
    상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함하는 것을 특징으로 하는 3차원 재구성 장치.
  2. 제1항에 있어서,
    상기 이벤트 트리거 모듈은,
    격자 무늬를 포함하는 형상이 상기 복수의 평면들에 각각 배치된 것을 식별함에 응답하여, 상기 움직임 추정 모듈을 활성화하는 것을 특징으로 하는 3차원 재구성 장치.
  3. 제2항에 있어서,
    상기 재구성 모듈은,
    움직임 추정 모듈에 의해 획득된 모션 벡터와 상기 복수의 평면들 각각의 법선 벡터의 동일 평면성(coplanarity)에 기반하여, 최적화 문제를 QCQP(Quadratically Constrained Quadratic Program)로 치환하는 것을 특징으로 하는 3차원 재구성 장치.
  4. 제3항에 있어서,
    상기 재구성 모듈은,
    상기 QCQP 치환된 최적화 문제를 SDP(semidefinite program)로 재치환하는 것을 특징으로 하는 3차원 재구성 장치.
  5. 제4항에 있어서,
    상기 재구성 모듈은,
    상기 SDP의 최적 해를 계산하고, 상기 최적 해에 기반하여 상기 복수의 평면들 각각에 상응하는 법선 벡터들을 동시에 획득하고, 상기 법선 벡터들에 기반하여 상기 복수의 평면들 각각에 상응하는 호모그래피들을 획득하는 것을 특징으로 하는 3차원 재구성 장치.
  6. 제5항에 있어서,
    상기 재구성 모듈은,
    상기 호모그래피들에 기반하여, 상기 복수의 평면들에 포함된 특징점들을 상기 3차원 좌표 값들로 변환하는 것을 특징으로 하는 3차원 재구성 장치.
  7. 제3항에 있어서,
    상기 움직임 추정 모듈은,
    상기 제1 전방 이미지에서 제1 특징점 그룹을 추출하고, 상기 제2 전방 이미지에서 제2 특징점 그룹을 추출하고, 상기 제1 특징점 그룹 및 상기 제2 특징점 그룹의 변화에 기반하여, 에센셜 매트릭스를 계산하고, 상기 에센셜 매트릭스에 기반하여, 회전 매트릭스 및 이동 벡터를 각각 획득하고, 상기 회전 매트릭스 및 상기 이동 벡터에 기반하여 모션 벡터를 획득하는 것을 특징으로 하는 3차원 재구성 장치.
  8. 제4항에 있어서,
    상기 SDP는 컨벡스 최적화(convex optimization)에 포함되는 것을 특징으로 하는 3차원 재구성 장치.
  9. 3차원 재구성 수행 여부를 결정하는 단계;
    상기 수행 여부에 기반하여, 움직임 정보를 획득하는 단계;
    수신한 제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하는 단계를 포함하고,
    상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함하는 것을 특징으로 하는 3차원 재구성 방법.
  10. 제9항에 있어서,
    상기 3차원 재구성 수행 여부를 결정하는 단계는,
    격자 무늬를 포함하는 형상이 상기 복수의 평면들에 각각 배치된 것을 식별하는 단계; 및
    상기 식별에 응답하여, 모션 벡터를 획득하는 단계를 더 포함하는 것을 특징으로 하는 3차원 재구성 방법.
  11. 제10항에 있어서,
    상기 획득된 모션 벡터와 상기 복수의 평면들 각각의 법선 벡터의 동일 평면성(coplanarity)에 기반하여, 최적화 문제를 QCQP(Quadratically Constrained Quadratic Program)로 치환하는 단계를 더 포함하는 것을 특징으로 하는 3차원 재구성 방법.
  12. 제11항에 있어서,
    상기 QCQP 치환된 최적화 문제를 SDP(semidefinite program)로 재치환하는 단계를 더 포함하는 것을 특징으로 하는 3차원 재구성 방법.
  13. 제12항에 있어서,
    상기 SDP의 최적 해를 계산하는 단계;
    상기 최적 해에 기반하여 상기 복수의 평면들 각각에 상응하는 법선 벡터들을 동시에 획득하는 단계; 및
    상기 법선 벡터들에 기반하여 상기 복수의 평면들 각각에 상응하는 호모그래피들을 획득하는 단계를 더 포함하는 것을 특징으로 하는 3차원 재구성 방법.
  14. 제13항에 있어서,
    상기 3차원 좌표 값들은, 상기 획득된 호모그래피들에 기반하여, 상기 복수의 평면들에 포함된 특징점들로부터 변환되는 것을 특징으로 하는 3차원 재구성 방법.
  15. 제11항에 있어서,
    상기 모션 벡터를 획득하는 단계는,
    상기 제1 전방 이미지에서 제1 특징점 그룹을 추출하고, 상기 제2 전방 이미지에서 제2 특징점 그룹을 추출하는 단계;
    상기 제1 특징점 그룹 및 상기 제2 특징점 그룹의 변화에 기반하여, 에센셜 매트릭스를 계산하는 단계;
    상기 에센셜 매트릭스에 기반하여, 회전 매트릭스 및 이동 벡터를 각각 획득하는 단계; 및
    상기 회전 매트릭스 및 상기 이동 벡터에 기반하여 상기 모션 벡터를 계산하는 단계를 포함하는 것을 특징으로 하는 3차원 재구성 방법.
  16. 제12항에 있어서,
    상기 SDP는 컨벡스 최적화(convex optimization)에 포함되는 것을 특징으로 하는 3차원 재구성 방법.
  17. 전방 이미지를 획득하기 위한 카메라; 및
    3차원 재구성 수행 여부를 결정하기 위한 이벤트 트리거 모듈, 움직임 정보를 획득하기 위한 움직임 추정 모듈, 제1 시점의 제1 전방 이미지 및 제2 시점의 제2 전방 이미지를 수신하고, 상기 제1 전방 이미지 및 상기 제2 전방 이미지에 기반하여 카메라 좌표계의 3차원 좌표 값들을 획득하기 위한 재구성 모듈을 포함하는 3차원 재구성 장치를 포함하고,
    상기 제1 전방 이미지 및 상기 제2 전방 이미지 각각은, 지면에 수직하고 복수의 특징점들을 각각 포함하는 복수의 평면들을 포함하는 것을 특징으로 하는 전자 장치.
  18. 제17항에 있어서,
    상기 이벤트 트리거 모듈은,
    격자 무늬를 포함하는 형상이 상기 복수의 평면들에 각각 배치된 것을 식별함에 응답하여, 상기 움직임 추정 모듈을 활성화하는 것을 특징으로 하는 전자 장치.
  19. 제18항에 있어서,
    상기 재구성 모듈은,
    움직임 추정 모듈에 의해 획득된 모션 벡터와 상기 복수의 평면들 각각의 법선 벡터의 동일 평면성(coplanarity)에 기반하여, 최적화 문제를 QCQP(Quadratically Constrained Quadratic Program)로 치환하는 것을 특징으로 하는 전자 장치.
  20. 제19항에 있어서,
    상기 재구성 모듈은,
    상기 QCQP 치환된 최적화 문제를 SDP(semidefinite program)로 재치환하는 것을 특징으로 하는 전자 장치.
KR1020200107405A 2020-08-25 2020-08-25 지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치 KR20220026423A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020200107405A KR20220026423A (ko) 2020-08-25 2020-08-25 지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치
CN202110637038.XA CN114119652A (zh) 2020-08-25 2021-06-08 用于三维重构的方法和装置以及电子设备
US17/344,095 US20220070433A1 (en) 2020-08-25 2021-06-10 Method and apparatus for 3d reconstruction of planes perpendicular to ground

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200107405A KR20220026423A (ko) 2020-08-25 2020-08-25 지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20220026423A true KR20220026423A (ko) 2022-03-04

Family

ID=80359047

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200107405A KR20220026423A (ko) 2020-08-25 2020-08-25 지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치

Country Status (3)

Country Link
US (1) US20220070433A1 (ko)
KR (1) KR20220026423A (ko)
CN (1) CN114119652A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113392909B (zh) * 2021-06-17 2022-12-27 深圳市睿联技术股份有限公司 数据处理方法、数据处理装置、终端及可读存储介质
CN117450955B (zh) * 2023-12-21 2024-03-19 成都信息工程大学 基于空间环形特征的薄型物体三维测量方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4169462B2 (ja) * 1999-08-26 2008-10-22 株式会社リコー 画像処理方法及び装置、デジタルカメラ、画像処理システム、並びに、画像処理プログラムを記録した記録媒体
US7747067B2 (en) * 2003-10-08 2010-06-29 Purdue Research Foundation System and method for three dimensional modeling
EP3179462B1 (en) * 2014-08-04 2018-10-31 Nissan Motor Co., Ltd Device and method for calculating a position of a vehicle
EP3174007A1 (en) * 2015-11-30 2017-05-31 Delphi Technologies, Inc. Method for calibrating the orientation of a camera mounted to a vehicle
EP3531376B1 (en) * 2018-02-21 2020-09-30 Ficosa Adas, S.L.U. Calibrating a camera of a vehicle
EP3861479A1 (en) * 2018-10-01 2021-08-11 Google LLC Method and device for detecting a vertical planar surface
US20230252667A1 (en) * 2022-02-08 2023-08-10 Ford Global Technologies, Llc Vehicle localization

Also Published As

Publication number Publication date
US20220070433A1 (en) 2022-03-03
CN114119652A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
US11668571B2 (en) Simultaneous localization and mapping (SLAM) using dual event cameras
US11455746B2 (en) System and methods for extrinsic calibration of cameras and diffractive optical elements
US10872227B2 (en) Automatic object recognition method and system thereof, shopping device and storage medium
US10307910B2 (en) Apparatus of recognizing position of mobile robot using search based correlative matching and method thereof
CN112444242B (zh) 一种位姿优化方法及装置
US20170154219A1 (en) Apparatus of recognizing position of mobile robot using direct tracking and method thereof
US9633281B2 (en) Point cloud matching method
CN112184811B (zh) 单目空间结构光系统结构校准方法及装置
CN112083403B (zh) 用于虚拟场景的定位追踪误差校正方法及系统
WO2021114776A1 (en) Object detection method, object detection device, terminal device, and medium
KR20220026422A (ko) 카메라 캘리브레이션 장치 및 이의 동작 방법
CN113361365B (zh) 定位方法和装置、设备及存储介质
US20220277580A1 (en) Hand posture estimation method and apparatus, and computer storage medium
KR20220026423A (ko) 지면에 수직인 평면들의 3차원 재구성을 위한 방법 및 장치
CN114761997A (zh) 目标检测方法、终端设备和介质
WO2023093739A1 (zh) 一种多视图三维重建的方法
CN113256718A (zh) 定位方法和装置、设备及存储介质
CN111161398A (zh) 一种图像生成方法、装置、设备及存储介质
CN114332125A (zh) 点云重建方法、装置、电子设备和存储介质
CN105809664B (zh) 生成三维图像的方法和装置
US20220375164A1 (en) Method and apparatus for three dimensional reconstruction, electronic device and storage medium
CN111145264A (zh) 多传感器的标定方法、装置及计算设备
CN109859313B (zh) 3d点云数据获取方法、装置、3d数据生成方法及系统
WO2021114775A1 (en) Object detection method, object detection device, terminal device, and medium
CN113269857A (zh) 坐标系关系获取方法及装置