KR20240066218A - 장면 뷰 이미지의 생성 장치 및 방법 - Google Patents
장면 뷰 이미지의 생성 장치 및 방법 Download PDFInfo
- Publication number
- KR20240066218A KR20240066218A KR1020220146425A KR20220146425A KR20240066218A KR 20240066218 A KR20240066218 A KR 20240066218A KR 1020220146425 A KR1020220146425 A KR 1020220146425A KR 20220146425 A KR20220146425 A KR 20220146425A KR 20240066218 A KR20240066218 A KR 20240066218A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- mesh
- vertices
- electronic devices
- moving object
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 11
- 230000033001 locomotion Effects 0.000 claims abstract description 76
- 238000006073 displacement reaction Methods 0.000 claims description 16
- 230000009466 transformation Effects 0.000 claims description 16
- 239000011159 matrix material Substances 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 2
- 238000005096 rolling process Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 102100034112 Alkyldihydroxyacetonephosphate synthase, peroxisomal Human genes 0.000 description 2
- 101000799143 Homo sapiens Alkyldihydroxyacetonephosphate synthase, peroxisomal Proteins 0.000 description 2
- 238000000848 angular dependent Auger electron spectroscopy Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 206010041349 Somnolence Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
- G06T3/067—Reshaping or unfolding 3D tree structures onto 2D planes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/18—Image warping, e.g. rearranging pixels individually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/215—Motion-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/50—Constructional details
- H04N23/54—Mounting of pick-up tubes, electronic image sensors, deviation or focusing coils
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Closed-Circuit Television Systems (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
일 실시예에 따른 전자 장치는 이동체(moving body)에 배치되고, 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성하는 카메라 센서를 포함할 수 있다. 전자 장치는 카메라 센서의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬 및 이동체의 모션을 이용하여 평면 메쉬를 획득할 수 있다. 전자 장치는 획득된 평면 메쉬에 기초하여 이미지 데이터로부터 장면 뷰 이미지를 생성할 수 있다.
Description
아래의 개시는 장면 뷰 이미지의 생성에 관한 것이다.
최근에는 운전의 안전성을 높이기 위해 지능형 운전자 보조 시스템(ADAS, Advanced Driver Assistance Systems)이 차량에 장착되고 있다. 이러한 ADAS은 차선이탈경고시스템(LDWS, Lane Departure Warning System), 전방추돌경보시스템(FCWS, Forward Collision Warning System), 운전자졸음방지(Driver Drowsiness Detection) 시스템, 보행자 감지(PD, Pedestrian Detection) 시스템, 교통표지인식(TSR, Traffic Sign Recognition) 시스템, 사각지대감시(BVM, Blind-spot View Monitoring) 시스템, 주변영상감시(SVM, Surround View Monitoring) 시스템 등을 포함한다.
SVM(Surround View Monitoring) 시스템이 적용된 차량은 어안 렌즈를 갖는 카메라 센서를 통해 캡처된 이미지를 이용하여 탑뷰 이미지를 제공할 수 있다.
일 실시예에 따른 전자 장치는, 이동체(moving body)에 배치되고, 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성하는 카메라 센서; 및 상기 카메라 센서의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬 및 상기 이동체의 모션을 이용하여 평면 메쉬 를 획득하고, 상기 획득된 평면 메쉬에 기초하여 상기 이미지 데이터로부터 장면 뷰 이미지를 생성하는 프로세서를 포함할 수 있다.
상기 프로세서는, 상기 이미지 데이터의 캡처를 위한 스캔 동안, 각 스캔 시점의 상기 이동체의 모션에 기초하여 상기 디폴트 메쉬에서 해당 스캔 시점의 스캔 라인에 대응하는 정점들을 조정함으로써 상기 평면 메쉬를 획득할 수 있다.
상기 이동체의 각 스캔 시점의 모션 및 기준 시점의 모션 간의 차이에 대응하는 변위(displacement)에 기초 하여 해당 스캔 시점의 스캔 라인에 대응하는 정점들을 이동시킴으로써 상기 평면 메쉬를 획득할 수 있다.
상기 프로세서는, 상기 이동체가 직선(straight line)으로 이동하는 경우, 상기 디폴트 메쉬에서 기준 시점(reference time point) 이후의 스캔 시점의 스캔 라인에 대응하는 정점들을 상기 이동체의 직선 이동(movement)에 대응하는 방향으로 이동시킴으로서 상기 평면 메쉬를 획득할 수 있다.
상기 프로세서는, 상기 이동체의 모션에 대응하는 강체 변환(Rigid Body Transformation)에 기초하여 획득된, 변환 행렬을 이용하여 상기 디폴트 메쉬에서 같은 스캔 시점의 정점들을 이동시킴으로써 상기 평면 메쉬를 획득할 수 있다.
상기 프로세서는, 상기 디폴트 메쉬에서 기준 시점의 정점들을 고정하고, 나머지 정점들을 상기 이동체의 모션에 기초하여 조정함으로써 상기 평면 메쉬를 획득할 수 있다.
상기 프로세서는, 상기 이미지 데이터의 이미지 픽셀들 및 상기 평면 메쉬의 정점들 간의 매핑 관계에 기초하여, 상기 이미지 데이터로부터 상기 장면 뷰 이미지를 생성할 수 있다.
상기 프로세서는, 상기 이미지 데이터에서 상기 평면 메쉬의 정점들에 매핑된 이미지 픽셀의 픽셀 값들에 기초하여, 상기 타겟 평면 중 상기 정점들의 위치 또는 주변 위치 중 적어도 하나에 대응하는 이미지 정보를 결정하고, 상기 결정된 이미지 정보에 기초하여 상기 장면 뷰 이미지를 생성할 수 있다.
상기 평면 메쉬에서 서로 인접한 정점들 중 적어도 두 정점들에 매핑된 이미지 픽셀들이 서로 같은 스캔 라인을 따라 위치될 수 있다.
상기 카메라 센서의 시야 범위 중 적어도 일부는, 상기 타겟 평면을 포함할 수 있다.
상기 평면 메쉬에 포함된 정점들은, 상기 카메라 센서의 시야 범위 중 상기 타겟 평면과 중첩하는 부분에 속하는 이미지 픽셀에 매핑될 수 있다.
상기 디폴트 메쉬의 정점들에 매칭된 이미지 픽셀들 중 서로 인접한 이미지 픽셀들은, 삼각형, 사각형, 또는 다각형을 형성할 수 있다.
상기 평면 메쉬의 정점들에 매핑된 이미지 픽셀들 중 같은 스캔 라인을 따르는 이미지 픽셀들은 등간격으로 이격될 수 있다.
상기 디폴트 메쉬의 정점들의 각각은, 상기 이동체를 기준으로 상기 카메라 센서의 위치에 기초하여, 해당 정점에 매핑된 이미지 픽셀에 대응하는 센싱 소자로부터 상기 카메라 센서의 원점을 향하는 방향을 따라 상기 타겟 평면으로 역투사된 위치에 배치될 수 있다.
상기 전자 장치는, 차량에 탑재되고, 상기 카메라 센서는, 상기 차량의 전면, 후면, 또는 측면 중 적어도 하나에 위치될 수 있다.
상기 프로세서는, 상기 생성된 장면 뷰 이미지로부터 도로 표식(road marking)을 식별할 수 있다.
상기 프로세서는, 뷰 포인트로부터 상기 타겟 평면 중 상기 카메라 센서의 시야각에 포함되는 적어도 일부 영역을 포함하는 뷰를 가지는 상기 장면 뷰 이미지를 생성할 수 있다.
상기 프로세서는, 상기 타겟 평면에서 상기 평면 메쉬 중 적어도 일부를 포함하는 영역을 상기 타겟 평면에 수직한 방향으로 바라보는 탑뷰 이미지(top-view image)를 상기 장면 뷰 이미지로서 생성하고, 디스플레이를 통해 상기 탑뷰 이미지를 출력할 수 있다.
일 실시예에 따른 프로세서로 구현되는 방법은, 이동체에 배치된 카메라 센서에서 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성하는 단계; 상기 카메라 센서의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬 및 상기 이동체의 모션을 이용하여 평면 메쉬를 획득하는 단계; 및 상기 획득된 평면 메쉬에 기초하여 상기 이미지 데이터로부터 장면 뷰 이미지를 생성하는 단계를 포함할 수 있다.
도 1은 일 실시예에 따른 롤링 셔터에 기반한 카메라 센서의 이미지 데이터 생성을 도시한다.
도 2는 일 실시예에 따른 이미지 데이터로부터 장면 뷰 이미지를 생성하는 동작을 설명하는 흐름도이다.
도 3 내지 도 5는 일 실시예에 따른 카메라 센서에 대한 메쉬의 구축을 설명한다.
도 6 내지 도 8은 일 실시예에 따라 이동체의 모션에 의해 조정된 평면 메쉬를 설명한다.
도 9 내지 도 11은 일 실시예에 따른 스캔 라인 별로 이동체의 모션이 디폴트 메쉬에 반영되는 예시를 도시한다.
도 12는 일 실시예에 따른 메쉬의 다른 예시를 설명한다.
도 13 내지 도 15는 일 실시예에 따른 평면 메쉬에 기초한 장면 뷰 이미지의 생성을 설명하는 도면이다.
도 16은 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.
도 2는 일 실시예에 따른 이미지 데이터로부터 장면 뷰 이미지를 생성하는 동작을 설명하는 흐름도이다.
도 3 내지 도 5는 일 실시예에 따른 카메라 센서에 대한 메쉬의 구축을 설명한다.
도 6 내지 도 8은 일 실시예에 따라 이동체의 모션에 의해 조정된 평면 메쉬를 설명한다.
도 9 내지 도 11은 일 실시예에 따른 스캔 라인 별로 이동체의 모션이 디폴트 메쉬에 반영되는 예시를 도시한다.
도 12는 일 실시예에 따른 메쉬의 다른 예시를 설명한다.
도 13 내지 도 15는 일 실시예에 따른 평면 메쉬에 기초한 장면 뷰 이미지의 생성을 설명하는 도면이다.
도 16은 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 일 실시예에 따른 롤링 셔터에 기반한 카메라 센서의 이미지 데이터 생성을 도시한다.
일 실시예에 따른 롤링 셔터에 기반한 카메라 센서(110)는 라인 단위(line by line)로 이미지 센서를 스캔(예: 롤링 다운(roll down))할 수 있다. 카메라 센서(110)는 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터(예: 원시 이미지 데이터(199)(raw image data))를 생성할 수 있다. 복수의 스캔 라인들을 순차적으로 선택하는 것에 기초한 이미지 데이터의 생성을, 카메라 센서(110)의 구성과 함께 후술한다.
카메라 센서(110)는 결상 광학 렌즈 및 이미지 센서를 포함할 수 있다.
결상 광학 렌즈(imaging optical lens)는 해당 렌즈의 시야각(113)에 대응하는 장면으로부터 수신되는 광선들을 이미지 센서에서 해당 렌즈에 의해 커버되는 센싱 소자들(예: 포토 다이오드(photodiode))에게 전달할 수 있다. 결상 광학 렌즈는 이미지 센서의 영역으로 광선들을 포커싱시킬 수 있다.
이미지 센서는 결상 광학 렌즈를 통과한 광선들을 센싱할 수 있다. 이미지 센서의 센싱 소자는 해당 센싱 소자에 도달한 광선의 세기(예: 밝기)를 감지할 수 있다. 예를 들어, 이미지 센서는 센싱 소자 어레이는 복수의 컬러 필터들이 배열된 컬러 필터 어레이 및 복수의 센싱 소자들이 배열된 어레이(예: 센싱 소자 어레이)를 포함할 수 있다. 컬러 필터는 미리 결정된 파장 대역(예: 적색 대역, 청색 대역, 및 녹색 대역)의 빛을 통과시킬 수 있다. 각 센싱 소자는 컬러 필터를 통과한 빛의 세기를 감지할 수 있다. 각 센싱 소자는 해당 컬러 필터에 의해 통과되는 파장 대역에 대응하는 색상의 세기 값(예: 해당 색상의 밝기)을 감지할 수 있다. 이미지 센서의 전술한 센싱 값들에 기초한 이미지 데이터를 원시 데이터(raw data) 또는 원시 이미지 데이터(raw image data)(199)라고 나타낼 수 있다. 원시 이미지 데이터(199)는 컬러 이미지로 디모자이킹(demosaic)하기 전의 데이터를 나타낼 수 있다. 컬러 필터 어레이가 베이어 패턴(Bayer pattern)을 가지는 경우, 원시 이미지 데이터(199)는 베이어 패턴 이미지(Bayer pattern image)일 수 있다.
일 실시예에 따르면 롤링 셔터에 따라 이미지 센서는 센싱 소자들을 라인 단위로 순차적으로 스캔할 수 있다. 예를 들어, 카메라 센서(110)는 스캔 라인(111)에 배열된 센싱 소자들의 센싱 값들을 결정함으로써 스캔 라인(111)을 스캔할 수 있다. 스캔 라인(111)은 이미지 센서에 의해 임의의 시점(time point)에서 스캔되는 센싱 소자들이 배열된 라인으로서, 예시적으로 이미지 센서의 일축(예: 세로축 또는 가로축)을 따르는 라인일 수 있다. 이미지 센서는 기준 시점(reference time point)부터 스캔 방향(예: 위로부터 아래를 향하는 방향)으로 스캔 라인들을 순차적으로 선택할 수 있다. 예를 들어, 이미지 센서의 일측(예: 위쪽)의 스캔 라인부터 타측(예: 아래쪽)의 스캔 라인이 순차적으로 선택될 수 있다. 스캔 라인(111)은 예시적으로 이미지의 행 라인(row line)(예: 가로 라인)으로 되었는데, 이로 한정하는 것은 아니고, 열 라인(column line)(예: 세로 라인)일 수도 있다. 이미지 센서는 시점(time point) 별 선택된 스캔 라인(111)에 대응하는 센싱 소자들의 센싱 값을 판독함으로써 원시 이미지 데이터(199)를 생성할 수 있다. 스캔 라인(111)이 진행함에 따라 원시 이미지 데이터(199)의 이미지 픽셀(예: 원시 이미지 픽셀)의 픽셀 값들이 라인 단위로 순차적으로 결정될 수 있다.
도 1에서는, 카메라 센서(110)가 일방향(119)으로 이동하고, 오브젝트(120)는 고정된 예시가 도시된다. 고정된 오브젝트(120)에 대해 카메라 센서(110)가 일방향(119)(예: 좌측)으로 이동하므로, 카메라 센서(110)를 기준으로 오브젝트(120)가 타방향(예: 우측)으로 이동하는 것처럼 캡처될 수 있다. 카메라 센서(110)는, 카메라 센서(110)의 시야각(113) 내에서 타방향으로 이동하는 오브젝트(120)를 캡처할 수 있다. 전술한 바와 같이, 롤링 셔터 기반 이미지 센서는 전체 센싱 영역을 한번에 캡처하지 못하고, 스캔 라인(111) 단위로 순차적으로 캡처할 수 있다.
카메라 센서(110)를 기준으로 오브젝트의 상대적인 이동에 대해 시점 별 스캔(130) 동안 이미지 데이터(190)의 이미지 픽셀 값들이 한줄씩 채워질 수 있다. 예를 들어, 기준 시점인 ① 시점에서는, 이미지 센서가 최상단의 스캔 라인에 대응하는 센싱 소자들의 센싱 값들을 스캔할 수 있다. 다시 말해, 원시 이미지 데이터(199)에서 최상단 라인(예: 최상단 행 라인)의 이미지 픽셀들의 픽셀 값들이 결정될 수 있다. 카메라 센서(110)는, ① 시점 이후, ② 시점 내지 ⑧ 시점까지 순차적으로 스캔 라인들을 스윕(sweep)할 수 있다. ② 시점에서는 ① 시점 대비 오브젝트(120)가 타방향으로 이동된 위치에서, ① 시점 대비 아래의 스캔 라인에 대응하는 이미지 픽셀 값들이 결정될 수 있다. 시간이 경과할수록, 오브젝트(120)가 이전 시점 대비 타방향으로 더 이동된 위치에서, 이전 시점 대비 더 아래의 스캔 라인에 대응하는 이미지 픽셀 값들이 결정될 수 있다. 따라서, 롤링 셔터 방식에서는, 카메라 센서(110)의 이동(또는 오브젝트(120)의 이동)으로 인해 오브젝트(120)(예: 직선 형태의 구조물)가 휘어진 것처럼 보이는, 원시 이미지 데이터(199)가 캡처될 수 있다. 전술한 바와 같이, 롤링 셔터 카메라는 원시 이미지 데이터(199)를 수직이나 수평으로 한 번에 한 줄씩 여러 시점들에 걸쳐서 스캔하기 때문에 왜곡이 발생할 수 있다. 아래 도 2에서는, 전술한 롤링 셔터 및 카메라 센서(110)의 이동으로 인한 원시 이미지 데이터(199)에서의 왜곡을 고려한 메쉬를 이용하여 장면 뷰 이미지를 생성하는 동작을 설명한다.
참고로, 본 명세서에서 이미지 데이터가 원시 이미지 데이터(199)이고, 이미지 픽셀은 원시 이미지 데이터(199)의 픽셀인 예시를 주로 설명한다. 카메라 센서(110)의 시야각(113)은 결상 광학 렌즈의 광학 사양(optical specification)(예: 초점 거리) 및 이미지 센서의 크기(예: 센싱 소자 어레이의 일축 길이)에 기초하여 결정될 수 있다.
도 2는 일 실시예에 따른 이미지 데이터로부터 장면 뷰 이미지를 생성하는 동작을 설명하는 흐름도이다.
단계(210)에서 전자 장치는 이동체에 배치된 카메라 센서에서 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성할 수 있다. 예를 들어, 카메라 센서는 도 1에서 전술된 롤링 셔터 카메라일 수 있다.
단계(220)에서 전자 장치는 카메라 센서의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬(default mesh) 및 이동체의 모션을 이용하여 평면 메쉬를 획득할 수 있다. 평면 메쉬(planar mesh)는 타겟 평면을 따라 위치되는 정점들을 포함하는 메쉬일 수 있다. 타겟 평면은 예시적으로 지면일 수 있으나, 이로 한정하는 것은 아니다. 도 1에서 전술한 바와 같이, 이미지 데이터는 캡처를 개시하는 기준 시점부터 캡처 완료 시점까지 카메라 센서의 이동에 의해 왜곡된 정보를 포함할 가능성이 있으므로, 평면 메쉬는 이러한 왜곡을 보정하기 위해 이동체의 모션에 따라 조정될 수 있다. 예시적으로, 평면 메쉬는, 이미지 데이터의 이미지 픽셀들이 나타내는 물리적 지점들의 배치 관계를 기준 시점의 카메라 센서의 위치를 기준으로 나타내는 것으로 해석될 수 있다.
평면 메쉬 중 이동체의 모션이 없는 경우(예: 이동체가 정지한 경우)의 메쉬를 디폴트 메쉬라고 나타낼 수 있다. 디폴트 메쉬는, 이미지 평면에 설정된 정점들(예: 이미지 정점들)이 타겟 평면으로 역투사(back-project)된 정점들을 갖는 메쉬를 나타낼 수 있다. 이미지 정점들로 구성된 메쉬를 이미지 메쉬라고 나타낼 수 있다. 이미지 메쉬는 카메라 센서의 센싱 소자들 중 같은 스캔 라인을 따라 배치된 센싱 소자들에 대응하는 이미지 픽셀 위치들에 대응하는 정점들을 포함하는 메쉬일 수 있다. 디폴트 메쉬는 전술한 이미지 메쉬가 카메라 파라미터를 이용하여 타겟 평면으로 역투사된 메쉬로도 해석될 수도 있다. 디폴트 메쉬는 이동체가 정지한 것을 가정한 상태의 메쉬이므로, 디폴트 메쉬의 결정에서 이동체의 모션은 배제될 수 있다. 이미지 메쉬의 이미지 정점들의 각각이, 이동체를 기준으로 카메라 센서의 위치, 및 해당 정점에 대응하는 이미지 픽셀로부터 카메라 센서의 원점을 향하는 뷰 방향(또는 광선(ray))에 기초하여 타겟 평면(예: 지면)으로 역투사(back projection)될 수 있다. 디폴트 메쉬 및 이미지 메쉬는 하기 도 4 및 도 5에서 설명한다.
일 실시예에 따르면, 평면 메쉬는 기준 시점을 기준으로 스캔 시점 별 이동체의 모션에 기초하여 개별 스캔 시점에 대해 보정된 위치를 갖는 정점들을 포함할 수 있다. 예를 들어, 전자 장치는 디폴트 메쉬의 정점들을 이동체의 모션에 기초하여 보정함으로써 변형된 메쉬를 평면 메쉬로서 획득할 수 있다. 전자 장치는 디폴트 메쉬에서 각 스캔 라인에 대응하는 정점들의 위치를 해당 스캔 라인의 스캔 시점의 이동체의 모션에 기초하여 조정함으로써 평면 메쉬를 결정할 수 있다. 평면 메쉬의 정점들은, 각 정점에 대응하는 픽셀을 스캔하는 스캔 시점(scan time point)에서 기준 시점 대비 이동체의 변화된 모션(예: 위치 또는 자세 변화)만큼 디폴트 메쉬의 정점들로부터 이동된 정점일 수 있다. 디폴트 메쉬의 변형에 기초한 평면 메쉬의 결정은 하기 도 7 및 도 8에서 설명한다.
참고로, 이미지 메쉬는 이미지 좌표계를 따르는 메쉬이고, 디폴트 메쉬 및 평면 메쉬는 월드 좌표계를 따르는 메쉬일 수 있다. 월드 좌표계는 물리적인 공간의 한 지점을 원점으로 하는 3차원 좌표계를 나타낼 수 있고, 본 명세서에서는 이동체(예: 차량)를 기준으로 타겟 평면(예: 지면)에 위치된 지점이 원점일 수 있다. 타겟 평면의 지점들은 월드 좌표계에서 Z축 값이 0인 지점들일 수 있다. 이동체가 이동하면, 월드 좌표계의 원점도 함께 이동할 수 있다. 이미지 좌표계(image coordinate system)는 이미지 평면의 한 지점(예: 이미지의 모서리에 대응하는 지점)을 원점으로 하고, 이미지의 일축(예: 가로축)을 x축, 타축(예: 세로축)을 y축으로 가지는 2차원 좌표계를 나타낼 수 있다.
단계(230)에서 전자 장치는 획득된 평면 메쉬에 기초하여 이미지 데이터로부터 장면 뷰 이미지를 생성할 수 있다. 전자 장치는 이동체의 모션에 기초하여 결정된 평면 메쉬 및 평면 메쉬의 정점 별로 매핑된 이미지 픽셀을 이용하여 장면 뷰 이미지(scene view image)를 렌더링할 수 있다. 장면 뷰 이미지는 장면 뷰에 대응하는 이미지를 나타낼 수 있다. 장면 뷰는 임의의 뷰 포인트로부터 타겟 평면 중 카메라 센서의 시야각에 포함되는 영역을 향하는 뷰를 나타낼 수 있다. 장면 뷰는 예를 들어, 이동체의 주변 영역을 타겟 평면으로부터 이격된 뷰 포인트(view point)에서 바라보는 탑뷰(top-view)를 포함할 수 있다. 장면 뷰의 시야 범위(FOV)는 임의로 설정되거나, 사용자에 의해 지정될 수 있다. 장면 뷰 이미지의 생성은 하기 도 13 내지 도 15에서 설명한다.
도 3 내지 도 5는 일 실시예에 따른 카메라 센서에 대한 메쉬의 구축을 설명한다.
단계(301)에서 카메라 캘리브레이션이 수행될 수 있다. 카메라 캘리브레이션은 카메라 또는 전자 장치의 제조 단계에서 수행될 수 있다. 예를 들어, 내부 파라미터 캘리브레이션(Intrinsic Calibration)은 카메라 제조 단계에서 수행될 수 있다. 외부 파라미터 캘리브레이션(Extrinsic Calibration)은 이동체(예: 차량)에 카메라가 장착된 이후에 차량 제조 공정에서 수행될 수 있다. 카메라 캘리브레이션을 통해 카메라 센서의 카메라 파라미터가 획득될 수 있다. 카메라 파라미터는 카메라 내부 파라미터 및 카메라 외부 파라미터를 포함할 수 있다. 카메라 내부 파라미터는 초점거리(focal length) 및 주점(principal point)를 포함할 수 있다. 카메라 외부 파라미터는 카메라 좌표계와 월드 좌표계 사이의 변환 관계를 설명하는 파라미터로서, 두 좌표계 사이의 회전(rotation) 및 평행이동(translation) 변환을 표현하는 파라미터일 수 있다. 카메라 좌표계는 카메라의 초점 또는 렌즈의 중심을 원점으로 하고, 카메라의 광학축을 z축으로 가지는 3차원 좌표계를 나타낼 수 있다. 전술한 카메라 파라미터를 이용하면, 월드 좌표계를 따르는 물리적인 지점(예: 타겟 평면 상의 지점)의 위치가 이미지 좌표계를 따르는 이미지 평면의 위치로 변환될 수 있다. 반대로, 카메라 파라미터를 이용하면 이미지 평면의 이미지 픽셀 위치가 월드 좌표계를 따르는 위치로 변환될 수도 있다.
단계(302)에서 디폴트 메쉬가 생성될 수 있다. 예를 들어, 단계(301)의 카메라 파라미터가 주어지면, 전자 장치가 디폴트 메쉬를 계산할 수도 있다. 다른 예를 들어, 별도 장치에 의해 디폴트 메쉬가 계산될 수도 있다. 디폴트 메쉬는 도 4 및 도 5에서 후술하는 바와 같이, 이미지 평면의 이미지 픽셀에 설정된 이미지 정점을 타겟 평면으로 역투사함으로써 구축될 수 있다.
도 4는 카메라 센서가 배치된 이동체의 정면도, 도 5는 상면도를 도시한다. 도 4 및 도 5에서는 이동체가 정지될 수 있다.
일 실시예에 따른 카메라 센서의 시야 범위(field of view, FOV)(411) 중 적어도 일부는, 타겟 평면(480)을 포함할 수 있다. 예를 들어, 카메라 센서(410)는 초광각 렌즈를 가질 수 있고, 어안(fisheye) 렌즈를 가질 수 있다. 도 4에서는 카메라 센서(410)의 시야 범위(411)로서 화각(angle of view)이 180도인 예시가 설명된다. 타겟 평면(480)은 예를 들어 지면일 수 있다. 또한, 전자 장치는, 차량에 탑재되고, 카메라 센서(410)는, 차량의 전면, 후면, 또는 측면 중 적어도 하나에 위치될 수 있다. 본 명세서에서는 카메라 센서(410)가 차량의 측면에 위치되는 예시를 주로 설명하나, 이로 한정하는 것은 아니다.
전술한 바와 같이, 카메라 센서(410)의 시야 범위(411)에 타겟 평면(480)이 포함되므로, 이미지 데이터의 적어도 일부 영역은 타겟 평면(480)에 대응할 수 있다. 일 실시예에 따르면 이미지 메쉬(421)의 이미지 정점은 이미지 데이터 중 타겟 평면(480)에 대응하는 영역 내의 이미지 픽셀들에 설정될 수 있다. 도 4를 참조하면 이미지 정점은 타겟 평면(480)으로 역투사될 수 있다. 예를 들어, 전자 장치는 하기 수학식 1과 같이 이미지 정점을 타겟 평면(480)으로 역투사할 수 있다.
전술한 수학식 1에서, 은 카메라 센서(410)의 위치를 나타낼 수 있다. 여기서, 카메라 위치는 월드 좌표계를 따르는 좌표로 표현될 수 있다. 은 이미지 픽셀(예: 이미지 메쉬(421)의 이미지 정점)로부터 카메라 센서(410)의 원점을 향하는 방향(예: 뷰 방향(view direction)(415) 또는 광선 방향(ray direction))을 나타낼 수 있다. 예를 들어, 전술한 이미지 픽셀에 대응하는 뷰 방향(415)은 카메라 내부 파라미터 및 카메라 외부 파라미터에 기초하여 결정될 수 있다. 예시적으로, 뷰 방향(415)을 카메라 관점에서 나타낸 광선 벡터(예: )는 카메라 좌표계를 따를 수 있고, 카메라 내부 파라미터에 기초하여 결정될 수 있다. 뷰 방향(415)을 나타내는 벡터()는 월드 좌표계를 따를 수 있고, 전술한 광선 벡터(예: ) 및 카메라 외부 파라미터 중 회전 행렬(Rotation Matrix)(예: R)에 기초하여 결정될 수 있다. 일 수 있다. 여기서, T는 트랜스포즈(transpose)를 나타낼 수 있다. 전술한 수학식 1의 pground는 카메라 위치 에서 출발한 뷰 방향(415) 에 대응하는 광선이 타겟 평면(480)(예: 월드 좌표계의 Z=0인 평면)에 도달하는 지점을 나타낼 수 있다. 는 이므로, Z축 값이 0이 되기 때문이다. pground는 타겟 평면(480)의 지점 으로 계산될 수 있다. Xp, Yp는 타겟 평면(480)에서 디폴트 메쉬(450)의 정점의 X축 위치 및 Y축 위치를 나타낼 수 있다.
전술한 수학식 1에 따른 역투사가 이미지 메쉬(421)의 이미지 정점들에 적용됨으로써, 디폴트 메쉬(450)의 정점들이 획득될 수 있다. 따라서, 디폴트 메쉬(450)의 정점들의 각각은, 이동체(490)를 기준으로 카메라 센서(410)의 위치에 기초하여, 해당 정점에 매핑된 이미지 픽셀에 대응하는 센싱 소자로부터 카메라 센서(410)의 원점을 향하는 방향을 따라 타겟 평면(480)으로 역투사된 위치에 배치될 수 있다.
도 5에서는 이미지 메쉬(421)의 이미지 정점들 및 디폴트 메쉬(450)의 정점들이 도시된다. 일 실시예에 따르면 평면 메쉬에서 서로 인접한 정점들 중 적어도 두 정점들에 매핑된 이미지 픽셀들(521)이 서로 같은 스캔 라인을 따라 위치될 수 있다. 예를 들어, 각 정점에 매핑된 이미지 픽셀은, 주변 정점들에 매핑된 이미지 픽셀들(521) 중 적어도 한 이미지 픽셀과 같은 스캔 라인을 따라 위치될 수 있다. 도 4에서 전술한 바와 같이, 평면 메쉬에 포함된 정점들은, 카메라 센서(410)의 시야 범위(411) 중 타겟 평면(480)과 중첩하는 부분에 속하는 이미지 픽셀에 매핑될 수 있다. 평면 메쉬의 정점들에 매핑된 이미지 픽셀들(521) 중 같은 스캔 라인을 따르는 이미지 픽셀들(521)은 등간격으로 이격될 수 있다. 이미지 메쉬(421)는 인접한 정점들끼리 다각형을 형성하도록 이미지 평면(420)의 픽셀들(예: 이미지 픽셀들(521))에 설정된 정점들을 포함할 수 있다.
도 5에서, 이미지 평면(420)에서 가로축으로 7개, 세로축으로 4개로서, 총 7×4 = 28개의 이미지 픽셀들(521)이 도시된다. 한 칸이 이미지 픽셀을 나타내고, 이미지 정점은 이미지 픽셀의 중심 위치로 설정될 수 있다. 도 5에 이미지 정점의 위치는 원(circle)으로 도시되고, 이미지 픽셀들(521)의 개수와 같은 총 28개의 이미지 정점들이 설정될 수 있다. 이미지 메쉬(421)는 28개의 이미지 정점들을 가로 엣지 및 세로 엣지로 연결함으로써 인접한 이미지 정점들끼리 사각형을 형성하도록 구성될 수 있다. 도 5에 도시된 바와 같이, 본 명세서에서 이미지 픽셀마다 이미지 정점들이 설정된 예시가 주로 설명되나, 이로 한정하는 것은 아니다. 하기 도 15에서는 이미지 정점들이 2개의 이미지 픽셀들만큼 이격되어 설정되는 예시가 설명된다.
카메라 센서(410)는 기준 시점(t0)부터 스캔 방향(529)(예: 아래 방향)으로 스캔 라인의 선택을 변경할 수 있다. 예를 들어, 카메라 센서(410)는 기준 시점(t0), 시점(t1), 시점(t2), 및 시점(t3)의 순서로 스캔라인들을 순차적으로 선택할 수 있다. 카메라 센서(410)는 선택된 스캔 라인에 대응하는 센싱 소자들의 센싱 값들을 획득함으로써 해당 스캔 라인의 이미지 픽셀들(521)의 픽셀 값들을 결정할 수 있다. 이미지 메쉬(421)에서 1번째 행의 스캔 라인에 대응하는 이미지 픽셀들(521)은 기준 시점(t0)에서 획득될 수 있다. 2번째 행의 스캔 라인에 대응하는 이미지 픽셀들(521)은 후속 시점(t1)에서 획득될 수 있다. 유사하게, 3번째 행 및 4번째 행의 스캔 라인에 대응하는 이미지 픽셀들(521)은 각각 시점들(t2, t3)에서 획득될 수 있다. 기준 시점(t0)이 가장 이른 시점(earliest time point), 시점(t3)이 마지막 시점(last time point)일 수 있다.
이미지 정점들이 설정된 이미지 픽셀들에는 이미지 평면(420)에서의 배치에 따른 위치 인덱스가 매핑될 수 있다. 위치 인덱스는 원점을 기준으로 2차원 정수 인덱스를 가질 수 있다. 예를 들어, 이미지 평면(420)의 최상단의 가장 좌측의 이미지 정점(525)이 원점이고, 위치 인덱스는 (0,0)일 수 있다. 이미지 정점(525)의 우측 정점의 위치 인덱스는 (1,0)일 수 있다. 유사하게, 1번째 행의 나머지 이미지 정점들의 위치 인덱스는 (2,0), (3,0), (4,0), (5,0), 및 (6,0)일 수 있다. 이미지 정점(525)의 아래 정점의 위치 인덱스는 (0,1)일 수 있다. 나머지 이미지 정점들의 위치 인덱스도 유사하게 매핑될 수 있다. 임의의 한 이미지 정점이 역투사된 정점은, 해당 이미지 정점과 같은 위치 인덱스를 가질 수 있다. 예를 들어, 디폴트 메쉬(450)에서 이미지 정점(525)이 역투사된 정점(555)의 위치 인덱스도 (0,0)일 수 있다. (0,1) 위치 인덱스, (1,0) 위치 인덱스, (1,1) 위치 인덱스, (6,2) 위치 인덱스, 및 (6,3) 위치 인덱스의 이미지 정점들 및 디폴트 메쉬(450)의 정점들 간의 매핑 관계도 참고를 위해 함께 도시된다. 예시적으로, 위치 인덱스는 하기 도 14 및 도 15에서 장면 뷰 이미지의 복원을 위해 사용될 수 있다.
디폴트 메쉬(450)의 정점들은 스캔 라인을 기준으로 그룹핑될 수 있다. 예를 들어, 이미지 메쉬(421) 중 같은 스캔 라인을 따르는 이미지 정점들로부터 역투사된, 정점들이 같은 그룹으로 분류될 수 있다. 기준 시점(t0)의 스캔 라인(528)을 따른 이미지 정점들이 역투사된 정점들은 같은 그룹(558)일 수 있다. 다시 말해, 같은 그룹(558)에 속하는 정점들은 같은 시점에 스캔된 이미지 픽셀들(521)에 매핑될 수 있다. 후술하겠으나, 같은 그룹(558)에 속하는 정점들은 같은 변위만큼 보정될 수 있다.
참고로, 비교 실시예에 따르면 월드 좌표계를 기준으로 그리드 형태의 메쉬가 설정될 수 있다. 비교 실시예에 따른 메쉬의 정점들은, 렌즈의 광학계(optical system)으로 인해, 이미지 평면(420)에서 카메라 센서(410)의 스캔 라인과 무관한 이미지 위치로 투사될 수 있다. 따라서 같은 스캔 라인을 따르는 정점들을 그룹핑하는 것이 어렵거나 불가능할 수 있다. 반면, 일 실시예에 따른 평면 메쉬의 정점들은 본질적으로 카메라 센서(410)에서 같은 스캔 라인을 따라 나열된 이미지 정점들이 역투사된 것이므로, 스캔 라인 별로 그룹핑될 수 있다. 일 실시예에 따른 디폴트 메쉬(450)의 정점들은 스캔 라인 단위로 그룹핑되므로, 스캔 라인 단위로 보정될 수 있다. 일 실시예에 따른 전자 장치는 스캔 시점 별 이동체(490)의 모션을 해당 시점의 스캔 라인에 대응하는 정점들에 적용함으로써 보정된 평면 메쉬를 획득할 수 있게 된다.
도 6 내지 도 8은 일 실시예에 따라 이동체의 모션에 의해 조정된 평면 메쉬를 설명한다.
단계(621)에서 전자 장치는 스캔 시점 별 이동체의 모션을 추정할 수 있다. 예를 들어, 전자 장치가 탑재된 이동체가 차량인 경우, 전자 장치는, 휠속(wheel Speed)과 조향각(steering wheel angle)을 이용한 추측항법(dead reckoning), GNSS(global navigation satellite system) 정보, IMU(Inertial Measurement Unit) 정보, 또는 SLAM(Simultaneous localization and mapping) 중 적어도 하나에 기초하여, 차량의 이동 및 회전을 포함하는 모션을 추정할 수 있다. 전자 장치는 스캔 시점 별로 해당 스캔 시점에서의 이동체(예: 차량)의 속도 및 요우잉 레이트(yaw rate)를 계산할 수 있다. 카메라 센서는 이동체에 고정되고, 이동체의 모션과 카메라 센서의 모션은 동일할 수 있다.
단계(622)에서 전자 장치는 스캔 시점 별 추정된 모션에 기초하여 디폴트 메쉬를 조정함으로써 평면 메쉬(780, 880)를 획득할 수 있다. 예를 들어, 전자 장치의 프로세서는 이미지 데이터의 캡처를 위한 스캔 동안, 각 스캔 시점의 이동체의 모션에 기초하여 디폴트 메쉬에서 해당 스캔 시점의 스캔 라인에 대응하는 정점들을 조정함으로써 평면 메쉬(780, 880)를 획득할 수 있다. 예를 들어, 전자 장치는 디폴트 메쉬에서 기준 시점의 정점들을 고정하고, 나머지 정점들을 이동체의 모션에 기초하여 조정함으로써 평면 메쉬(780, 880)를 획득할 수 있다.
전자 장치는 스캔 시점 별 이동체의 모션을 이용하여, 기준 시점 대비 각 스캔 시점에서의 모션 차이를 계산할 수 있다. 모션 차이는 이동체의 위치 차이 및 자세 차이를 포함할 수 있다. 도 7을 참조하면, 이동체가 이동 방향(792)을 따라 이동하는 경우, 이동체는 시점들(t0, t1, t2, t3)에서 개별적으로(respectively) 위치들(p0, p1, p2, p3)을 통과할 수 있다. 제1 위치(p0)에 있는 카메라 센서가 디폴트 메쉬 중 제1 그룹에 속하는 정점들(예: 제1 정점 그룹(781))의 영상 정보를 캡처함으로써 제1 시점(t0)의 스캔 라인의 이미지 픽셀들을 결정할 수 있다. 달리 말해, 제1 스캔 라인의 이미지 픽셀들은, 제1 정점 그룹(781)에 대응하는 물리적 지점들로부터 수신된 빛에 기초한 픽셀 값을 가질 수 있다. 제2 위치(p1)에 있는 카메라 센서가 제2 정점 그룹(782)의 영상 정보로 제2 시점(t1)의 스캔 라인의 이미지 픽셀들을 결정할 수 있다. 나머지 위치들(p2, p3)도 유사하게 제3 정점 그룹(783) 및 제4 정점 그룹(784)의 영상 정보로 시점들(t2, t3)의 스캔 라인들의 이미지 픽셀들을 결정할 수 있다. 제1 시점(t0)이 기준 시점인 경우, 제2 시점(t1), 제3 시점(t2), 및 제4 시점(t3)에서 영상 정보들은 기준 시점의 제1 정점 그룹(781) 대비 개별 시점에서의 모션 차이만큼 이동된 제2 정점 그룹(782), 제3 정점 그룹(783), 및 제4 정점 그룹(784)에서 캡처될 수 있다. 따라서, 전자 장치는 기준 시점 대비 각 스캔 시점에서의 모션 차이를 해당 스캔 시점에 대응하는 정점 그룹에 적용함으로써, 디폴트 메쉬를 보정할 수 있다. 도 7에는 디폴트 메쉬를 보정함으로써 생성된 평면 메쉬(780)이 도시된다.
일 실시예에 따르면, 전자 장치는 개별 시점에서의 모션을 이용하여, 기준 시점 대비 다른 시점에서의 모션 차이를 계산할 수 있다. 예를 들어, 전자 장치는 제1 시점(t0)에서의 이동체의 위치 및 자세 대비 다른 시점들(t1, t2, t3)에서의 모션 차이를 나타내는 변환 행렬 , , 를 계산할 수 있다. 모션 차이는 기준 시점 대비 각 스캔 시점에서의 상대적인 모션을 나타내는 정보로서, 이동체의 회전(rotation) 및 이동(translation)을 포함할 수 있다. 예를 들어, 이동체의 모션 차이는 RST(rotation-scale-translation) 행렬을 포함할 수 있다.
예를 들어, 전자 장치는 제k 시점(tk)에 대응하는 정점 그룹을 제1 시점(t0)으로부터 제k 시점(tk)까지의 모션 차이를 나타내는 변환 행렬 을 계산할 수 있다. 변환 행렬 는 이동체의 모션 차이에 대응하는 강체 변환을 표현한 행렬로도 해석될 수 있다. 전자 장치는 제k 시점(tk)에 대응하는 정점 그룹에 변환 행렬 을 하기 수학식 2와 같이 적용할 수 있다.
전술한 수학식 2에서 pground는 제k 시점(tk)에 대응하는 정점 그룹(예: 제k 정점 그룹)에 속하는 정점을 나타낼 수 있다. 전자 장치는 제k 정점 그룹에 속하는 정점들에 대해 전술한 수학식 2를 적용함으로써, 모션 차이만큼 이동된 정점들을 획득할 수 있다. 전자 장치는 각 스캔 시점 별 모션 차이만큼 이동된 정점 그룹들을 병합함으로써 디폴트 메쉬가 보정된 평면 메쉬(780)를 획득할 수 있다.
도 7에서는 이동체가 직선으로 이동하는 예시가 도시되었는데, 도 8은 이동체가 곡선(892)으로 이동하는 예시가 도시된다. 도 8에 도시된 바와 같이, 곡선(892) 이동시에도, 전자 장치는 기준 시점 대비 개별 스캔 시점에서의 모션 차이만큼 각 정점 그룹을 이동시킴으로써 평면 메쉬(880)를 결정할 수 있다.
일 실시예에 따른 전자 장치는 이동체의 각 스캔 시점의 모션 및 기준 시점의 모션 간의 차이에 대응하는 변위(displacement)에 기초하여 해당 스캔 시점의 스캔 라인에 대응하는 정점들을 이동시킴으로써 평면 메쉬(780, 880)를 획득할 수 있다. 예를 들어, 전자 장치는 전술한 수학식 2에 따른 모션 차이에 대응하는 변환 행렬을 해당 스캔 시점에 대응하는 정점들에 적용함으로써 모션 차이만큼 이동된 정점들을 획득할 수 있다. 전자 장치는 같은 정점 그룹에 속하는 정점들에 대해서는 같은 변환 행렬을 적용할 수 있다.
예를 들어, 도 7에 도시된 바와 같이, 이동체가 직선(straight line)으로 이동하는 경우, 전자 장치는 디폴트 메쉬에서 기준 시점(reference time point) 이후의 스캔 시점의 스캔 라인에 대응하는 정점들을 이동체의 직선 이동(movement)에 대응하는 방향으로 이동시킴으로서 평면 메쉬(780)를 획득할 수 있다. 도 7에 도시된 예시에서는 기준 시점이 스캔을 개시하는 시점(t0)이므로, 전자 장치는 나머지 후속 시점들(t1, t2, t3)에 대응하는 정점 그룹들을 이동체의 이동과 같은 방향으로 이동시킬 수 있다. 전자 장치는 디폴트 메쉬에서 같은 스캔 시점의 정점들을 서로 같은 방향(direction)으로 같은 거리(distance)만큼 이동시킴으로써 평면 메쉬(780)를 획득할 수 있다.
다른 예를 들어, 도 8에 도시된 바와 같이, 이동체의 이동이 회전을 포함하는 경우, 전자 장치는 디폴트 메쉬에서 같은 스캔 시점의 정점들을 강체 변환에 따른 변위들로 이동시킬 수 있다. 전자 장치는 이동체의 모션에 대응하는 강체 변환(Rigid Body Transformation)에 기초하여 획득된, 변환 행렬을 이용하여 디폴트 메쉬에서 같은 스캔 시점의 정점들을 이동시킴으로써 평면 메쉬(880)를 획득할 수 있다. 참고로, 이동체가 회전시에는, 같은 정점에 속하더라도 이동체의 회전의 중심이 되는 지점(예: 터닝 센터(turning center))으로부터 먼 정점은 가까운 정점보다 더 멀리 이동되고 더 많이 회전될 수 있다. 예시적으로, 이동체의 회전시, 같은 정점 그룹 내에서도 이동체의 회전 중심점으로부터 먼 지점에 적용되는 변위가 회전 중심점으로부터 가까운 지점에 적용되는 변위보다 클 수 있다.
도 9 내지 도 11은 일 실시예에 따른 스캔 라인 별로 이동체의 모션이 디폴트 메쉬에 반영되는 예시를 도시한다.
참고로, 도 9 내지 도 11에서는 간명한 설명을 위해, 디폴트 메쉬 및 해당 디폴트 메쉬에 적용될 예시적인 변위량만 도시되고, 디폴트 메쉬에 변위량이 적용된 평면 메쉬는 생략되었다.
도 9에서는 카메라 센서가 이미지 메쉬의 스캔라인들 중 최하단의 스캔 라인(928)의 이미지 정점들부터 스캔을 개시하는 예시가 도시된다. 이 경우, 스캔 방향(929)은 이미지 평면에서 아래로부터 위를 향하는 방향일 수 있다. 최하단 스캔 라인(928)의 이미지 정점들은 디폴트 메쉬 중 가장 안쪽의 정점 그룹(958)에 대응할 수 있다. 도 7 및 도 8에서는 기준 시점(t0)에 대응하는 정점 그룹이 디폴트 메쉬의 최외곽 그룹이었으나, 도 9에서는 가장 안쪽의 정점 그룹(958)일 수 있다. 전자 장치는 가장 안쪽의 정점 그룹(958)을 기준으로 나머지 정점 그룹들을 이동체의 이동(990)에 따른 각 스캔 시점에서의 모션 차이에 기초하여 보정할 수 있다. 도 9에서는 디폴트 메쉬 중 가장 바깥의 정점 그룹(예: 시점(t3)에 대응하는 정점 그룹)에 대해 적용될 변위량이 예시적으로 도시된다. 도 9에 도시된 디폴트 메쉬는 변위량이 적용되기 전 메쉬를 나타낼 수 있다. 전자 장치는 도 9에 도시된 변위량을 가장 바깥의 정점 그룹에 적용함으로써 평면 메쉬를 보정할 수 있다.
도 10은 이미지 메쉬의 스캔 라인들 중 중간의 스캔 라인(1028)이 기준 시점(t0)으로 설정된 예시가 도시된다. 전자 장치는 중간의 스캔 라인(1028)에 대응하는 정점 그룹(1058)을 기준으로 나머지 정점 그룹들을 조정할 수 있다. 도 7 및 도 8에서 설명된 바와 같이, 디폴트 메쉬에서 기준 시점(reference time point) 이후의 스캔 시점의 스캔 라인에 대응하는 정점들은 이동체의 이동(1090)과 같은 방향으로 이동될 수 있다. 반면 디폴트 메쉬에서 기준 시점(reference time point) 이후의 스캔 시점의 스캔 라인에 대응하는 정점들은 이동체의 이동(1090)과 반대 방향(1070)으로 이동될 수 있다. 도 10에 도시된 예시에서 전자 장치는 후속 시점들(t1, t2)에 대응하는 정점 그룹들을 이동체의 이동(1090)과 같은 방향으로 이동시키고, 이전 시점(t-1)에 대응하는 정점 그룹들을 반대 방향(1070)으로 이동시킬 수 있다. 도 10에서는 디폴트 메쉬 중 가장 안쪽의 정점 그룹(예: 시점(t-1)에 대응하는 정점 그룹) 및 가장 바깥의 정점 그룹(예: 시점(t2)에 대응하는 정점 그룹)에 대해 적용될 변위량이 예시적으로 도시된다. 도 10에 도시된 디폴트 메쉬는 변위량이 적용되기 전 메쉬를 나타낼 수 있다. 도 10에 도시된 바와 같이, 가장 안쪽의 정점 그룹(예: 시점(t-1)에 대응하는 정점 그룹) 및 가장 바깥의 정점 그룹(예: 시점(t2)에 대응하는 정점 그룹)에 대해 적용될 변위 방향은 서로에 대해 반대 방향일 수 있다.
도 11은 스캔 라인이 세로 라인인 예시가 도시된다. 도 7 및 도 8에서는 부채꼴과 유사한 형상의 디폴트 메쉬에서 호를 따라 정점들이 그룹핑되었으나, 도 11에서는 직선을 따라 정점들이 그룹핑될 수 있다. 카메라 센서는 세로 라인 단위로 일측의 스캔 라인(1127)부터 타측의 스캔 라인(1128)까지 순차적으로 스캔할 수 있다. 전자 장치는 스캔 라인(1127)에 대응하는 정점 그룹(1157)을 기준으로, 나머지 정점 그룹(1158)을 조정할 수 있다. 이동체의 이동(1190)에 따라 정점 그룹(1157)에 속하는 정점들이 전술한 바와 같이 해당 시점에서의 기준 시점 대비 모션 차이만큼 이동될 수 있다. 도 11에서는 디폴트 메쉬 중 시점(t7)에 대응하는 정점 그룹에 대해 적용될 변위량이 예시적으로 도시된다. 도 11에 도시된 디폴트 메쉬는 변위량이 적용되기 전 메쉬를 나타낼 수 있다.
도 12는 일 실시예에 따른 메쉬의 다른 예시를 설명한다.
도 7 및 도 8에서는 인접한 이미지 픽셀들이 사각형을 형성하는 예시가 설명되었으나, 이로 한정하는 것은 아니다. 일 실시예에 따르면, 디폴트 메쉬의 정점들에 매칭된 이미지 픽셀들 중 서로 인접한 이미지 픽셀들은, 삼각형, 사각형, 또는 다각형을 형성할 수 있다. 이 경우에도, 전자 장치는 기준 시점의 스캔 라인(1227)에 대응하는 정점 그룹(1257)을 기준으로 나머지 정점 그룹들을 조정할 수 있다.
일 실시예에 따른 전자 장치는 전술한 바와 같이 획득된 평면 메쉬에 기초하여, 장면 뷰 이미지를 렌더링함으로써, 롤링 셔터 왜곡이 보정된 장면 뷰 이미지를 아래와 같이 획득할 수 있다.
도 13 내지 도 15는 일 실시예에 따른 평면 메쉬에 기초한 장면 뷰 이미지의 생성을 설명하는 도면이다.
도 13은 장면 뷰 이미지를 생성하는 전자 장치가 탑재된 이동체의 정면도를 도시한다. 도 14는 해당 이동체의 상면도를 도시한다. 도 13을 참조하면 뷰 포인트는 타겟 평면(예: 지면)으로부터 이격된 지점이고 장면 뷰는 해당 뷰 포인트로부터 타겟 평면을 바라보는 탑뷰인 예시가 도시된다. 장면 뷰 이미지는 뷰 포인트에 위치되는 것으로 가정된 가상 카메라의 시야 범위(1391)에 대응하는 이미지일 수 있다. 도 14를 참조하면, 이동체가 직선 이동하는 동안 카메라 센서(예: 차량의 측면을 바라보게 설치된 카메라 센서)의 시야 범위 및 가상 카메라의 시야 범위(1391) 내에 오브젝트(1409)(예: 도로 표식)가 포함될 수 있다. 도 13 및 도 14에서는 어안 렌즈를 갖는 카메라 센서에 의해 촬영된 이미지 데이터에 나타나는 오브젝트(1409)의 형상과, 평면 메쉬(1330)가 도시된다.
일 실시예에 따르면 전자 장치는 뷰 포인트로부터 타겟 평면 중 카메라 센서의 시야각에 포함되는 적어도 일부 영역을 포함하는 뷰를 가지는 장면 뷰 이미지를 생성할 수 있다. 예를 들어, 전자 장치는 타겟 평면에서 평면 메쉬(1330) 중 적어도 일부를 포함하는 영역을 타겟 평면에 수직한 방향으로 바라보는 탑뷰 이미지(top-view image)를 장면 뷰 이미지로서 생성할 수 있다. 전자 장치는 디스플레이를 통해 탑뷰 이미지를 출력할 수 있다. 도 14에서는 탑뷰 이미지가 카메라 센서의 시야각에 포함된 부분을 나타내는 예시가 도시된다. 다만, 뷰 포인트 및 장면 뷰를 전술한 바로 한정하는 것은 아니고, 설계에 따라 달라질 수 있다. 또한, 전자 장치가 사용자 입력에 기초하여 뷰 포인트 또는 장면 뷰(예: 뷰 포인트에서 가상 카메라(1390)가 바라보는 방향에 따른 뷰) 중 적어도 하나를 변경할 수도 있다.
일 실시예에 따른 전자 장치는 평면 메쉬(1330)에 기초하여, 캡처된 이미지 데이터로부터 장면 뷰 이미지를 렌더링할 수 있다. 전자 장치는 평면 메쉬의 정점 좌표(예: 월드 좌표계를 따른 좌표) 및 이미지 픽셀의 위치 인덱스를 이용하여, GPU(graphic processing unit)에서 장면 뷰 화면 렌더링을 실시할 수 있다. 전자 장치는 생성된 평면 메쉬에 카메라 이미지(예: 이미지 데이터)의 픽셀 값들에 기초한 텍스쳐를 적용하고, 렌더링을 수행할 수 있다. 텍스쳐는 후술하는 바와 같이 평면 메쉬의 정점에 대응하는 이미지 메쉬의 이미지 정점(또는 이미지 픽셀)의 픽셀 값에 기초하여 결정될 수 있다. GPU는, 매핑 관계(예: 디폴트 메쉬의 정점들과 이미지 메쉬의 이미지 정점들 간의 관계)를 이용해 이미지 와핑(Warping)(예: 탑 뷰 화면 렌더링)을 수행할 수 있다.
예를 들어, 전자 장치는 이미지 데이터의 이미지 픽셀들 및 평면 메쉬(1330)의 정점들 간의 매핑 관계에 기초하여, 이미지 데이터로부터 장면 뷰 이미지를 생성할 수 있다. 전자 장치는 이미지 정점들이 설정된 이미지 픽셀들의 각각에 대응하는 정점을 나타내는 매핑 관계를 저장할 수 있다. 예를 들어, 도 4에서 전술한 바와 같이, 같은 지점에 대한 이미지 픽셀과 정점은, 같은 위치 인덱스를 가질 수 있다. 참고로, 도 14에서는 간명한 설명을 위해, 이미지 평면(1320)의 이미지 메쉬(1321) 및 이미지 메쉬(1321)의 이미지 정점만 도시되고, 이미지 픽셀들을 나타내는 칸(space)은 생략되었다. 이미지 정점들 중에서도 오브젝트(1409)를 나타내는 이미지 픽셀에 설정된 이미지 정점이 원으로 표기(mark)되었다. 카메라 센서가 어안 렌즈인 경우, 도 14에 도시된 바와 같이 이미지 데이터에서 렌즈의 광학 특성에 따라 휘어진 오브젝트가 캡처될 수 있다.
유사하게, 평면 메쉬(1330)의 정점들 중에서도 오브젝트(1409)에 대응하는 정점이 원으로 표기되었다.
예를 들어, 전자 장치는 전술한 장면 뷰에 기초하여, 장면 픽셀들(1491)의 타겟 평면에서의 위치들을 결정할 수 있다. 전자 장치는 장면 뷰 이미지를 위한 가상 카메라(1390)의 카메라 파라미터에 기초하여, 장면 픽셀들(1491)을 타겟 평면으로 역투사할 수 있다. 전자 장치는 이미지 데이터에서 평면 메쉬(1330)의 정점들에 매핑된 이미지 픽셀의 픽셀 값들에 기초하여, 타겟 평면 중 정점들의 위치 또는 주변 위치 중 적어도 하나에 대응하는 이미지 정보를 결정할 수 있다. 이미지 정보는 장면 뷰 이미지에 포함되는 장면 픽셀들(1491)의 각각의 픽셀 값(예: 장면 픽셀 값) 또는 픽셀 값들에 기초한 텍스쳐를 포함할 수 있다.
도 14를 참조하면, 제1 장면 픽셀(1430)은 평면 메쉬(1330) 중 제1 정점(1431), 제2 정점(1432, 및 제3 정점(1433)과 인접할 수 있다. 위치 인덱스를 참조하면, 제1 정점(1431), 제2 정점(1432), 및 제3 정점(1433)은 개별적으로 제1 이미지 픽셀(1401), 제2 이미지 픽셀(1402), 및 제3 이미지 픽셀(1403)에 대응할 수 있다. 따라서, 전자 장치는 제1 이미지 픽셀(1401), 제2 이미지 픽셀(1402), 및 제3 이미지 픽셀(1403)의 이미지 픽셀 값들을 이용하여 제1 장면 픽셀(1430)의 장면 픽셀 값으로 결정할 수 있다. 제2 장면 픽셀(1440)은 제4 정점(1441)과 타겟 평면 상에서 동일 또는 인접한 위치에 있을 수 있다. 제4 정점(1441)은 제4 이미지 픽셀(1404)에 대응하므로, 전자 장치는 제4 이미지 픽셀(1404)의 이미지 픽셀 값을 제2 장면 픽셀(1440)의 장면 픽셀 값으로 결정할 수 있다. 따라서 전자 장치는 결정된 이미지 정보에 기초하여 장면 뷰 이미지를 생성할 수 있다.
도 15는 일 실시예에 따른 평면 메쉬를 이용한 렌더링을 설명하는 도면이다. 도 15에서는 이미지 데이터의 이미지 픽셀들(1520) 중 일부 이미지 픽셀에 이미지 정점이 설정되는 예시가 도시된다. 예를 들어, 이미지 메쉬(1528)의 이미지 정점은 미리 결정된 간격(예: 2개의 이미지 픽셀들(1520)의 간격)만큼 이격될 수 있다. 이동체가 이동하는 상태에서 캡쳐된 이미지 데이터에 대해 탑뷰 이미지가 렌더링될 수 있다. 참고로, 카메라 센서가 어안 렌즈를 포함하는 경우, 도 15에 도시된 바와 같이 오브젝트(1509)가 휘어진 형상으로 이미지 데이터에서 캡처될 수 있다. 비교 실시예에 따라 전술한 이미지 데이터를 디폴트 메쉬(1570)를 이용하여 렌더링할 경우, 도 15에 도시된 바와 같이, 왜곡된 형상(1507)으로 오브젝트(1509)가 표현될 수 있다. 일 실시예에 따른 전자 장치는 이동체의 모션이 적용된 평면 메쉬(1580)를 이용하여 이미지 데이터로부터 탑뷰 이미지를 생성함으로써, 실제 형상(1508)으로 오브젝트(1509)를 표현할 수 있다.
도 16은 일 실시예에 따른 전자 장치의 구성을 도시한 블록도이다.
일 실시예에 따른 전자 장치(1600)는 프로세서(1610), 카메라 센서(1620), 디스플레이(1630), 및 메모리(1640)를 포함할 수 있다.
카메라 센서(1620)는, 이동체(moving body)에 배치될 수 있다. 카메라 센서(1620)는 이동체의 전면, 측면, 또는 후면 중 적어도 일면에 배치될 수 있다. 다만, 이로 한정하는 것은 아니고, 카메라 센서(1620)는 이동체의 상면 또는 하면에 배치될 수도 있다. 카메라 센서(1620)는 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성할 수 있다. 카메라 센서(1620)는 광각 렌즈를 가질 수 있으며, 예를 들어, 어안 렌즈를 가질 수 있다.
프로세서(1610)는 카메라 센서(1620)의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬 및 이동체의 모션을 이용하여 평면 메쉬를 획득할 수 있다. 프로세서(1610)는 획득된 평면 메쉬에 기초하여 이미지 데이터로부터 장면 뷰 이미지를 생성할 수 있다. 프로세서(1610)의 동작을 이로 한정하는 것은 아니고, 프로세서(1610)는 도 1 내지 도 15에서 전술된 동작들 중 적어도 일부를 순차적으로 또는 병렬적으로 수행할 수 있다.
디스플레이(1630)는 생성된 장면 뷰 이미지를 디스플레이(1630)할 수 있다. 디스플레이(1630)는 전술한 탑뷰 이미지를 통해 사용자(예: 운전자)에게 왜곡 없는 SVM(Surround View Monitor) 이미지를 제공할 수 있다. 다만, 이로 한정하는 것은 아니고, 디스플레이(1630)는 카메라 센서(1620)의 이미지 데이터에 기초하여 생성된 컬러 이미지를 디스플레이(1630)할 수도 있다.
메모리(1640)는 이미지 데이터, 디폴트 메쉬, 평면 메쉬, 또는 장면 뷰 이미지 중 적어도 하나를 저장할 수 있다. 메모리(1640)는 전술된 동작들을 수행하기 위해 요구되는 데이터를 저장할 수도 있다.
일 실시예에 따른 전자 장치(1600)는 생성된 장면 뷰 이미지로부터 도로 표식(road marking)을 식별할 수 있다. 예를 들어, 전자 장치(1600)는 장면 뷰 이미지(예: 탑뷰 이미지)로부터, 도로 표식을 인식할 수 있다. 도로 표식은, 도로 사용자들에게 정보를 전달하기 위해 글자 또는 기호를 도로 위에 그린 교통안전표지를 나타낼 수 있다. 도로 표식은 예를 들어 중앙선, 차로 경계선(lane line), 속도 제한, 유도선, 정지선, 횡단보도, 차로 변경, 및 진행방향을 나타내는 표식을 포함할 수 있다.
또한, 전자 장치(1600)는 도로 표식을 식별한 결과에 기초하여, 이동체의 움직임을 제어할 수도 있다. 예를 들어, 전자 장치(1600)는 도로 표식을 식별한 결과를 이용하여, 이동체(예: 차량)의 조향(steering), 속도, 또는 가속도 중 적어도 하나를 조정할 수 있다. 전자 장치(1600)는 자율주행차량으로 구현될 수 있다. 전자 장치(1600)는 도로 표식을 식별한 결과에 따라 도로 주행 계획을 수립하고, 실시할 수 있다.
참고로, 본 명세서에서, 전자 장치(1600)가 탑재되는 이동체가 차량인 예시를 주로 설명하였으나, 이로 한정하는 것은 아니다. 전자 장치(1600)는 항공기, 선박, 로봇, 드론, 또는 선박의 이동체에 탑재될 수도 있다.
예를 들어, 전자 장치(1600)는 타겟 평면(예: 지면)의 오브젝트를 식별할 수도 있다. 전자 장치(1600)가 로봇(예: 로봇 청소기 또는 드론)으로 구현되는 경우, 오브젝트는 작업의 대상이 되는 물체, 또는 장애물을 포함할 수 있다. 전자 장치(1600)는, 오브젝트를 식별한 결과에 기초하여, 작업 수행 계획 또는 작업 수행을 위한 경로 계획을 수립할 수 있다. 전자 장치(1600)는 수립된 계획을 실행할 수 있다.
전술한 바와 같이, 전자 장치(1600)는 이동체에 장착된 롤링 셔터 카메라 이미지에서 롤링 셔터로 인해 발생하는 왜곡을 제거하므로, 보다 정확한 오브젝트 인식을 수행할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 저장할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (20)
- 전자 장치에 있어서,
이동체(moving body)에 배치되고, 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성하는 카메라 센서; 및
상기 카메라 센서의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬 및 상기 이동체의 모션을 이용하여 평면 메쉬를 획득하고, 상기 획득된 평면 메쉬에 기초하여 상기 이미지 데이터로부터 장면 뷰 이미지를 생성하는 프로세서
를 포함하는 전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 이미지 데이터의 캡처를 위한 스캔 동안, 각 스캔 시점의 상기 이동체의 모션에 기초하여 상기 디폴트 메쉬에서 해당 스캔 시점의 스캔 라인에 대응하는 정점들을 조정함으로써 상기 평면 메쉬를 획득하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 이동체의 각 스캔 시점의 모션 및 기준 시점의 모션 간의 차이에 대응하는 변위(displacement)에 기초하여 해당 스캔 시점의 스캔 라인에 대응하는 정점들을 이동시킴으로써 상기 평면 메쉬를 획득하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 이동체가 직선(straight line)으로 이동하는 경우, 상기 디폴트 메쉬에서 기준 시점(reference time point) 이후의 스캔 시점의 스캔 라인에 대응하는 정점들을 상기 이동체의 직선 이동(movement)에 대응하는 방향으로 이동시킴으로서 상기 평면 메쉬를 획득하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 이동체의 모션에 대응하는 강체 변환(Rigid Body Transformation)에 기초하여 획득된, 변환 행렬을 이용하여 상기 디폴트 메쉬에서 같은 스캔 시점의 정점들을 이동시킴으로써 상기 평면 메쉬를 획득하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 디폴트 메쉬에서 기준 시점의 정점들을 고정하고, 나머지 정점들을 상기 이동체의 모션에 기초하여 조정함으로써 상기 평면 메쉬를 획득하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 이미지 데이터의 이미지 픽셀들 및 상기 평면 메쉬의 정점들 간의 매핑 관계에 기초하여, 상기 이미지 데이터로부터 상기 장면 뷰 이미지를 생성하는,
전자 장치. - 제7항에 있어서,
상기 프로세서는,
상기 이미지 데이터에서 상기 평면 메쉬의 정점들에 매핑된 이미지 픽셀의 픽셀 값들에 기초하여, 상기 타겟 평면 중 상기 정점들의 위치 또는 주변 위치 중 적어도 하나에 대응하는 이미지 정보를 결정하고,
상기 결정된 이미지 정보에 기초하여 상기 장면 뷰 이미지를 생성하는,
전자 장치. - 제1항에 있어서,
상기 평면 메쉬에서 서로 인접한 정점들 중 적어도 두 정점들에 매핑된 이미지 픽셀들이 서로 같은 스캔 라인을 따라 위치되는,
전자 장치. - 제1항에 있어서,
상기 카메라 센서의 시야 범위 중 적어도 일부는,
상기 타겟 평면을 포함하는,
전자 장치. - 제10항에 있어서,
상기 평면 메쉬에 포함된 정점들은,
상기 카메라 센서의 시야 범위 중 상기 타겟 평면과 중첩하는 부분에 속하는 이미지 픽셀에 매핑되는,
전자 장치. - 제1항에 있어서,
상기 디폴트 메쉬의 정점들에 매칭된 이미지 픽셀들 중 서로 인접한 이미지 픽셀들은,
삼각형, 사각형, 또는 다각형을 형성하는,
전자 장치. - 제1항에 있어서,
상기 평면 메쉬의 정점들에 매핑된 이미지 픽셀들 중 같은 스캔 라인을 따르는 이미지 픽셀들은 등간격으로 이격된,
전자 장치. - 제1항에 있어서,
상기 디폴트 메쉬의 정점들의 각각은,
상기 이동체를 기준으로 상기 카메라 센서의 위치에 기초하여, 해당 정점에 매핑된 이미지 픽셀에 대응하는 센싱 소자로부터 상기 카메라 센서의 원점을 향하는 방향을 따라 상기 타겟 평면으로 역투사된 위치에 배치되는,
전자 장치. - 제1항에 있어서,
상기 전자 장치는,
차량에 탑재되고,
상기 카메라 센서는,
상기 차량의 전면, 후면, 또는 측면 중 적어도 하나에 위치되는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 생성된 장면 뷰 이미지로부터 도로 표식(road marking)을 식별하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
뷰 포인트로부터 상기 타겟 평면 중 상기 카메라 센서의 시야각에 포함되는 적어도 일부 영역을 포함하는 뷰를 가지는 상기 장면 뷰 이미지를 생성하는,
전자 장치. - 제1항에 있어서,
상기 프로세서는,
상기 타겟 평면에서 상기 평면 메쉬 중 적어도 일부를 포함하는 영역을 상기 타겟 평면에 수직한 방향으로 바라보는 탑뷰 이미지(top-view image)를 상기 장면 뷰 이미지로서 생성하고,
디스플레이를 통해 상기 탑뷰 이미지를 출력하는,
전자 장치. - 프로세서로 구현되는 방법에 있어서,
이동체에 배치된 카메라 센서에서 복수의 스캔 라인들을 순차적으로 스캔함으로써 이미지 데이터를 생성하는 단계;
상기 카메라 센서의 스캔 라인을 따르는 이미지 픽셀들이 타겟 평면으로 역투사된 위치들에 대응하는 정점들에 기초한 디폴트 메쉬 및 상기 이동체의 모션을 이용하여 평면 메쉬를 획득하는 단계; 및
상기 획득된 평면 메쉬에 기초하여 상기 이미지 데이터로부터 장면 뷰 이미지를 생성하는 단계
를 포함하는 방법. - 제19항의 방법을 수행하기 위한 명령어를 포함하는 하나 이상의 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능 기록 매체.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220146425A KR20240066218A (ko) | 2022-11-04 | 2022-11-04 | 장면 뷰 이미지의 생성 장치 및 방법 |
US18/193,747 US20240153208A1 (en) | 2022-11-04 | 2023-03-31 | Device and method with scene view image generation |
EP23168976.1A EP4365819A1 (en) | 2022-11-04 | 2023-04-20 | Device and method with scene view image generation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220146425A KR20240066218A (ko) | 2022-11-04 | 2022-11-04 | 장면 뷰 이미지의 생성 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240066218A true KR20240066218A (ko) | 2024-05-14 |
Family
ID=86096099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220146425A KR20240066218A (ko) | 2022-11-04 | 2022-11-04 | 장면 뷰 이미지의 생성 장치 및 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240153208A1 (ko) |
EP (1) | EP4365819A1 (ko) |
KR (1) | KR20240066218A (ko) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10397481B2 (en) * | 2017-07-13 | 2019-08-27 | Qualcomm Incorporated | Stabilization and rolling shutter correction for omnidirectional image content |
WO2019079211A1 (en) * | 2017-10-19 | 2019-04-25 | DeepMap Inc. | LIDAR-CAMERA CALIBRATION TO GENERATE HIGH DEFINITION MAPS |
-
2022
- 2022-11-04 KR KR1020220146425A patent/KR20240066218A/ko unknown
-
2023
- 2023-03-31 US US18/193,747 patent/US20240153208A1/en active Pending
- 2023-04-20 EP EP23168976.1A patent/EP4365819A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4365819A1 (en) | 2024-05-08 |
US20240153208A1 (en) | 2024-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11039121B2 (en) | Calibration apparatus, chart for calibration, chart pattern generation apparatus, and calibration method | |
KR101265667B1 (ko) | 차량 주변 시각화를 위한 3차원 영상 합성장치 및 그 방법 | |
WO2021098608A1 (zh) | 传感器的标定方法、装置、系统、车辆、设备及存储介质 | |
KR101666959B1 (ko) | 카메라로부터 획득한 영상에 대한 자동보정기능을 구비한 영상처리장치 및 그 방법 | |
JP6192853B2 (ja) | 超音波深度検出を使用するオプティカルフロー画像化システム及び方法 | |
JP5455124B2 (ja) | カメラ姿勢パラメータ推定装置 | |
KR102707598B1 (ko) | 3차원 증강 현실을 위한 캘리브레이션 방법 및 그 장치 | |
CN112655024B (zh) | 一种图像标定方法及装置 | |
CN103065323B (zh) | 一种基于单应性变换矩阵的分段空间对准方法 | |
EP2860699A1 (en) | Technique for view synthesis | |
CN111024040A (zh) | 距离估计方法和设备 | |
US20190304130A1 (en) | Spatial positioning method, spatial positioning device, spatial positioning system and computer readable storage medium | |
CN113841384B (zh) | 校准装置,用于校准的图表和校准方法 | |
JP2006252473A (ja) | 障害物検出装置、キャリブレーション装置、キャリブレーション方法およびキャリブレーションプログラム | |
CN106846409A (zh) | 鱼眼相机的标定方法及装置 | |
KR102436730B1 (ko) | 가상 스크린의 파라미터 추정 방법 및 장치 | |
CN114549666B (zh) | 一种基于agv的环视图像拼接标定方法 | |
WO2018102990A1 (en) | System and method for rectifying a wide-angle image | |
Wientapper et al. | A camera-based calibration for automotive augmented reality head-up-displays | |
JP2023508501A (ja) | 3次元座標と2次元特徴点との関連付け | |
JP5715793B2 (ja) | 画像処理装置及び画像処理方法 | |
KR20230000585A (ko) | 센서 캘리브레이션 방법 및 장치 | |
TWI501193B (zh) | Computer graphics using AR technology. Image processing systems and methods | |
CN112802109B (zh) | 一种汽车鸟瞰全景图生成方法 | |
JP6854472B2 (ja) | 撮像装置、及び撮像方法 |