KR20210061069A - 3차원 객체를 표시하는 방법 및 장치 - Google Patents
3차원 객체를 표시하는 방법 및 장치 Download PDFInfo
- Publication number
- KR20210061069A KR20210061069A KR1020190148843A KR20190148843A KR20210061069A KR 20210061069 A KR20210061069 A KR 20210061069A KR 1020190148843 A KR1020190148843 A KR 1020190148843A KR 20190148843 A KR20190148843 A KR 20190148843A KR 20210061069 A KR20210061069 A KR 20210061069A
- Authority
- KR
- South Korea
- Prior art keywords
- road surface
- lane
- pitch angle
- driving
- image
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000008859 change Effects 0.000 claims abstract description 44
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 claims description 42
- 238000009499 grossing Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 230000002123 temporal effect Effects 0.000 claims description 6
- 238000009877 rendering Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 14
- 230000009466 transformation Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 240000004050 Pentaglottis sempervirens Species 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 235000012736 patent blue V Nutrition 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R1/00—Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles
- B60R1/001—Optical viewing arrangements; Real-time viewing arrangements for drivers or passengers using optical image capturing systems, e.g. cameras or video systems specially adapted for use in or on vehicles integrated in the windows, e.g. Fresnel lenses
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/20—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
- B60K35/21—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays
- B60K35/211—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays producing three-dimensional [3D] effects, e.g. stereoscopic images
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/20—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
- B60K35/28—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor characterised by the type of the output information, e.g. video entertainment or vehicle dynamics information; characterised by the purpose of the output information, e.g. for attracting the attention of the driver
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/60—Instruments characterised by their location or relative disposition in or on vehicles
-
- G06K9/00798—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- 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
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G06T5/002—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- 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
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/111—Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K2360/00—Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
- B60K2360/16—Type of output information
- B60K2360/176—Camera images
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K2360/00—Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
- B60K2360/16—Type of output information
- B60K2360/177—Augmented reality
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R2300/00—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
- B60R2300/20—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of display used
- B60R2300/205—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of display used using a head-up display
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R2300/00—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
- B60R2300/30—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
- B60R2300/307—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing virtually distinguishing relevant parts of a scene from the background of the scene
- B60R2300/308—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing virtually distinguishing relevant parts of a scene from the background of the scene by overlaying the real scene, e.g. through a head-up display on the windscreen
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R2300/00—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
- B60R2300/80—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the intended use of the viewing arrangement
- B60R2300/804—Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the intended use of the viewing arrangement for lane monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- 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
- G06T2207/30256—Lane; Road marking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/004—Annotating, labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2012—Colour editing, changing, or manipulating; Use of colour codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Architecture (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Abstract
일 실시예에 따른 3차원 객체를 표시하는 방법은 단일 카메라로부터 주행 영상을 획득하고, 주행 영상에 포함된 도로 표면의 차선의 곡률 변화를 기초로, 차선 마크들을 적어도 하나의 그룹으로 분류하며, 적어도 하나의 그룹 별로 단일 카메라와 도로 표면 사이의 경사도에 해당하는 피치 각도를 추정하여 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하고, 도로 표면의 3차원 정보를 기초로 도로 표면 위에 3차원 객체를 표시한다.
Description
아래의 실시예들은 3차원 객체를 표시하는 방법 및 장치에 관한 것이다.
첨단 운전자 보조 시스템(Advanced Driver Assistant System, ADAS) 및 자율 주행을 위한 정보를 생성하는 데에는 도로 표면의 3차원 정보가 이용될 수 있다. 도로 표면의 3차원 정보는 예를 들어, 스테레오 카메라를 이용하여 확보한 좌, 우 영상을 비교하여 디스패리티(disparity)를 산출하고, 이를 기초로 도로 표면을 포함하는 전 영역의 깊이 정보를 추정함으로써 구할 수 있다. 하지만, 단일 카메라를 사용하는 경우, 디스패리티를 산출하여 깊이 정보를 추정하기 어려우므로 도로 표면에 대한 3차원 정보를 획득하기 어렵다.
일 실시예에 따르면, 3차원 객체를 표시하는 방법은 단일 카메라로부터 주행 영상을 획득하는 단계; 상기 주행 영상에 포함된 도로 표면(road surface)의 차선(lane)의 곡률 변화를 기초로, 차선 마크들(lane marks)을 적어도 하나의 그룹(group)으로 분류하는 단계; 상기 적어도 하나의 그룹 별로 상기 단일 카메라와 상기 도로 표면 사이의 경사도에 해당하는 피치 각도(pitch angle)를 추정하는 단계; 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하는 단계; 및 상기 도로 표면의 3차원 정보를 기초로, 상기 도로 표면 위에 3차원 객체를 표시하는 단계를 포함한다.
상기 적어도 하나의 그룹으로 분류하는 단계는 상기 차선의 곡률 변화의 정도를 기초로 상기 차선 마크들을 그룹핑(grouping)하는 단계를 포함할 수 있다.
상기 적어도 하나의 그룹으로 분류하는 단계는 상기 차선의 곡률 변화의 정도와 기준 변화율을 비교하는 단계; 및 상기 비교 결과, 상기 차선에서 상기 곡률 변화 정도가 상기 기준 변화율보다 높은 지점을 기준으로 상기 차선 마크들을 복수의 그룹들로 분류하는 단계를 포함할 수 있다.
상기 적어도 하나의 그룹 각각은 상기 도로 표면에서 서로 구분되는 편평한 평면을 구성할 수 있다.
상기 도로 표면의 피치 각도를 추정하는 단계는 상기 주행 영상 중 상기 적어도 하나의 그룹 별 부분 영상을 상기 적어도 하나의 그룹 별 조감도(Bird-Eye-View) 영상으로 변환하는 단계; 및 상기 적어도 하나의 그룹 별 조감도 영상을 기초로, 상기 도로 표면의 피치 각도를 추정하는 단계를 포함할 수 있다.
상기 도로 표면의 피치 각도를 추정하는 단계는 상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들이 서로 평행하도록 하는 제1 조건 및 상기 차선 마크들의 길이가 서로 동일하도록 하는 제2 조건 중 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 추정하는 단계를 포함할 수 있다.
상기 도로 표면의 피치 각도로 추정하는 단계는 초기 피치 각도에 따라 상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들의 위치를 산출하는 단계; 상기 적어도 하나의 조건을 만족할 때까지 반복적으로 상기 피치 각도를 조절하는 단계; 및 상기 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 결정하는 단계를 포함할 수 있다.
상기 주행 영상은 시간의 흐름에 따른 영상 시퀀스들을 포함하고, 상기 도로 표면의 3차원 정보를 생성하는 단계는 상기 시간의 흐름에 따라, 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩(smoothing) 하는 단계; 및 상기 스무딩한 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하는 단계를 포함할 수 있다.
상기 스무딩하는 단계는 템포럴 필터(temporal filter)를 이용하여 상기 시간의 흐름에 따라 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩하는 단계를 포함할 수 있다.
상기 3차원 객체를 표시하는 단계는 상기 도로 표면의 3차원 정보를 반영한 3차원 도로 모델을 렌더링하는 단계; 및 상기 3차원 도로 모델에 3차원 객체를 표시하는 단계를 포함할 수 있다.
상기 3차원 객체를 표시하는 방법은 상기 주행 영상으로부터 주행 차로에 해당하는 상기 도로 표면의 차선들을 추출하는 단계; 및 상기 추출된 차선들의 곡률을 산출하는 단계를 더 포함할 수 있다.
상기 도로 표면의 차선들을 추출하는 단계는 상기 주행 영상으로부터 에지(edge)를 탐색함으로써 상기 주행 영상에 포함된 일정 길이 이상의 라인들을 검출하는 단계; 및 주행 방향을 기초로 상기 일정 길이 이상의 라인들을 그룹핑하여 상기 주행 차로에 해당하는 상기 도로 표면의 차선들을 추정하는 단계를 포함할 수 있다.
상기 3차원 객체를 표시하는 방법은 상기 주행 영상으로부터 상기 주행 차로의 좌, 우측 차선을 추출하는 단계; 및 상기 주행 차로의 좌, 우측 차선의 곡률들을 산출하는 단계를 더 포함할 수 있다.
상기 3차원 객체를 표시하는 방법은 상기 도로 표면의 3차원 정보를 출력하는 단계를 더 포함할 수 있다.
상기 주행 영상은 RGB 영상 및 그레이(gray) 영상 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 3차원 객체를 표시하는 장치는 단일 카메라로부터 주행 영상을 획득하는 통신 인터페이스; 상기 주행 영상에 포함된 도로 표면의 차선의 곡률 변화를 기초로, 차선 마크들을 적어도 하나의 그룹으로 분류하고, 상기 적어도 하나의 그룹 별로 상기 단일 카메라와 상기 도로 표면 사이의 경사도에 해당하는 피치 각도를 추정하며, 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하고, 상기 도로 표면의 3차원 정보를 기초로, 상기 도로 표면에 3차원 객체를 표현하는 프로세서; 및 상기 3차원 객체가 표현된 3차원 도로 모델을 표시하는 디스플레이를 포함한다.
상기 프로세서는 상기 차선의 곡률 변화의 정도를 기초로 상기 차선 마크들을 그룹핑할 수 있다.
상기 프로세서는 상기 차선의 곡률 변화의 정도와 기준 변화율을 비교하고, 상기 비교 결과, 상기 차선에서 상기 곡률 변화 정도가 상기 기준 변화율보다 높은 지점을 기준으로 상기 차선 마크들을 복수의 그룹들로 분류할 수 있다.
상기 적어도 하나의 그룹 각각은 상기 도로 표면에서 서로 구분되는 편평한 평면을 구성할 수 있다.
상기 프로세서는 상기 주행 영상 중 상기 적어도 하나의 그룹 별 부분 영상을 상기 적어도 하나의 그룹 별 조감도 영상으로 변환하고, 상기 적어도 하나의 그룹 별 조감도 영상을 기초로, 상기 도로 표면의 피치 각도를 추정할 수 있다.
상기 프로세서는 상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들이 서로 평행하도록 하는 제1 조건 및 상기 차선 마크들의 길이가 서로 동일하도록 하는 제2 조건 중 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 추정할 수 있다.
상기 프로세서는 초기 피치 각도에 따라 상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들의 위치를 산출하고, 상기 적어도 하나의 조건을 만족할 때까지 반복적으로 상기 피치 각도를 조절하고, 상기 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 결정할 수 있다.
상기 주행 영상은 시간의 흐름에 따른 영상 시퀀스들을 포함하고, 상기 프로세서는 상기 시간의 흐름에 따라, 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩하고, 상기 스무딩한 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성할 수 있다.
상기 프로세서는 템포럴 필터를 이용하여 상기 시간의 흐름에 따라 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩할 수 있다.
상기 프로세서는 상기 도로 표면의 3차원 정보를 반영한 3차원 도로 모델을 렌더링하고, 상기 3차원 도로 모델에 3차원 객체를 표현할 수 있다.
상기 프로세서는 상기 주행 영상으로부터 주행 차로에 해당하는 상기 도로 표면의 차선들을 추출하고, 상기 추출된 차선들의 곡률을 산출할 수 있다.
상기 프로세서는 상기 주행 영상으로부터 에지를 탐색함으로써 상기 주행 영상에 포함된 일정 길이 이상의 라인들을 검출하고, 주행 방향을 기초로 상기 일정 길이 이상의 라인들을 그룹핑하여 상기 주행 차로에 해당하는 상기 도로 표면의 차선들을 추정할 수 있다.
상기 프로세서는 상기 주행 영상으로부터 상기 주행 차로의 좌, 우측 차선을 추출하고, 상기 주행 차로의 좌, 우측 차선의 곡률들을 산출할 수 있다.
상기 통신 인터페이스는 상기 도로 표면의 3차원 정보를 출력할 수 있다.
도 1은 일 실시예에 따른 3차원 객체를 표시하는 방법을 나타낸 흐름도.
도 2는 일 실시예에 따른 주행 영상으로부터 도로 표면의 차선 마크들을 추출하는 방법을 설명하기 위한 도면.
도 3은 일 실시예에 따라 차선 마크들을 적어도 하나의 그룹으로 분류하는 방법을 설명하기 위한 도면.
도 4는 일 실시예들에 따라 피치 각도를 추정하는 방법을 설명하기 위한 도면.
도 5는 다른 실시예에 따라 피치 각도를 추정하는 방법을 설명하기 위한 도면.
도 6은 일 실시예에 따라 피치 각도를 스무딩하는 방법을 설명하기 위한 도면.
도 7은 일 실시예에 따라 도로 표면 위에 표시된 3차원 객체를 도시한 도면.
도 8 및 도 9는 실시예들에 따른 3차원 객체를 표시하는 장치의 블록도.
도 2는 일 실시예에 따른 주행 영상으로부터 도로 표면의 차선 마크들을 추출하는 방법을 설명하기 위한 도면.
도 3은 일 실시예에 따라 차선 마크들을 적어도 하나의 그룹으로 분류하는 방법을 설명하기 위한 도면.
도 4는 일 실시예들에 따라 피치 각도를 추정하는 방법을 설명하기 위한 도면.
도 5는 다른 실시예에 따라 피치 각도를 추정하는 방법을 설명하기 위한 도면.
도 6은 일 실시예에 따라 피치 각도를 스무딩하는 방법을 설명하기 위한 도면.
도 7은 일 실시예에 따라 도로 표면 위에 표시된 3차원 객체를 도시한 도면.
도 8 및 도 9는 실시예들에 따른 3차원 객체를 표시하는 장치의 블록도.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래의 실시예들은 스마트 차량 등의 증강 현실 내비게이션(Augmented Reality Navigation) 시스템 등에서 차선을 표시하거나, 자율 주행 차량의 조향을 돕기 위한 시각 정보를 생성하는 데에 활용될 수 있다. 또한, 실시예들은 차량 내 주행 보조 또는 완전 자율 주행을 위해 설치된 HUD(Head Up Display), 및 기타 디스플레이 등의 지능 시스템을 포함하는 기기에서 3차원 객체를 포함하는 시각 정보(Visual Information)를 표시하여 안전하고 쾌적한 주행을 돕는 데에 사용될 수 있다. 실시예들은 예를 들어, 자율 주행 자동차, 지능형 자동차, 스마트 폰, AR HUD(Augmented Reality Head Up Display ) 및 모바일 기기 등에 적용될 수 있다.
도 1은 일 실시예에 따른 3차원 객체를 표시하는 방법을 나타낸 흐름도이다. 도 1을 참조하면, 일 실시예에 따른 3차원 객체를 표시하는 장치(이하, '표시 장치')는 단일 카메라로부터 주행 영상을 획득한다(110). 주행 영상은 예를 들어, 아래의 도 2에 도시된 주행 영상(210)과 같이 차량, 차선, 연석, 인도, 주변 환경 등을 포함하는 도로 영상 및 도로 노면 영상 등을 포함할 수 있다. 주행 영상은 예를 들어, RGB 영상일 수도 있고, 그레이(gray) 영상일 수도 있다. 주행 영상은 예를 들어, 단일 프레임 영상일 수 있다. 또한, 주행 영상은 시간의 흐름에 따른 영상 시퀀스들을 포함할 수 있다.
표시 장치는 주행 차량의 전면에 장착된 단일 카메라를 통해 매 프레임(Frame)마다 하나 또는 복수 개의 주행 영상들을 획득할 수 있다. 이때, 단일 카메라의 캘리브레이션(Calibration) 정보는 미리 알고 있다고 가정한다.
표시 장치는 주행 영상에 포함된 도로 표면(road surface)의 차선(lane)의 곡률 변화를 기초로, 차선 마크들(lane marks)을 적어도 하나의 그룹(group)으로 분류한다(120). 여기서, '차선 마크(들)'은 차선을 표시하기 위한 마크 전체 또는 일부에 해당할 수 있다. 표시 장치는 예를 들어, 차선(들)의 곡률 변화의 정도를 기초로 차선 마크들을 그룹핑(grouping)할 수 있다.
단계(120)에 앞서, 표시 장치는 주행 영상으로부터 주행 차로에 해당하는 도로 표면의 차선들을 추출할 수 있다. 표시 장치는 예를 들어, 주행 영상으로부터 주행 차로의 좌, 우측 차선을 추출할 수 있다. 표시 장치는 예를 들어, 차선 마크들의 검출을 통해 차선들을 추출할 수도 있고, 또는 차선 확률 맵(Lane Probability Map)에 기초한 주행 영상의 픽셀 별 차선 확률에 따라 차선들을 추출할 수도 있다. 표시 장치가 도로 표면의 차선들을 추출하는 방법은 아래의 도 2를 참조하여 구체적으로 설명한다.
단계(120)에서, 표시 장치는 앞서 추출한 차선들의 곡률을 산출할 수 있다. 표시 장치는 예를 들어, 주행 차로를 구분하는 좌,우 차선들 및/또는 주행 차로 외부의 좌, 우 차선들의 곡률들을 산출할 수 있다. 표시 장치는 차선들의 곡률들의 변화 정도(예를 들어, 변화율)을 산출할 수 있다. 표시 장치는 차선들의 곡률 변화의 정도에 의해 직선 차선으로 간주할 수 있는 차선 마크 부분들을 하나의 그룹으로 분류할 수 있다. 표시 장치가 차선 마크들을 적어도 하나의 그룹으로 분류하는 방법은 아래의 도 3을 참조하여 구체적으로 설명한다.
표시 장치는 적어도 하나의 그룹 별로 단일 카메라와 도로 표면 사이의 경사도에 해당하는 피치 각도(pitch angle)를 추정한다(130). 예를 들어, 도로 표면은 국부적으로 변화가 크지 않으며, 도로의 진행 방향은 도로 표면의 각도 변화로 표현될 수 있다. 따라서, 일 실시예에서는 도로 표면의 피치 각도를 이용하여 도로 표면의 3차원 정보를 생성할 수 있다. 표시 장치는 예를 들어, 주행 영상 중 적어도 하나의 그룹 별 부분 영상을 적어도 하나의 그룹 별 조감도(Bird-Eye-View; BEV) 영상으로 변환할 수 있다. 표시 장치는 적어도 하나의 그룹 별 조감도 영상을 기초로, 도로 표면의 피치 각도를 추정할 수 있다. 표시 장치가 피치 각도를 추정하는 방법은 아래의 도 4 내지 5를 참조하여 구체적으로 설명한다.
표시 장치는 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 주행 영상에 포함된 도로 표면의 3차원 정보를 생성한다(140). 예를 들어, 주행 영상이 시간의 흐름에 따른 영상 시퀀스들을 포함하는 경우, 표시 장치는 시간의 흐름에 따라, 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩(smoothing)할 수 있다. 표시 장치가 피치 각도를 스무딩하는 방법은 아래의 도 6을 참조하여 구체적으로 설명한다. 표시 장치는 스무딩한 피치 각도를 이용하여 주행 영상에 포함된 도로 표면의 3차원 정보를 생성할 수 있다.
일 실시예에서, 차선 마크들의 그룹 각각은 평면으로 가정되므로 도로 표면의 3차원 정보 중 롤 각도(roll angle)은 제로('0')라고 볼 수 있다. 또한, 요우 각도(yaw angle)는 조감도 영상으로부터 획득될 수 있고, 피치 각도는 단계(130)를 통해 추정될 수 있다. 표시 장치는 롤 각도, 요우 각도, 및 피치 각도에 의해 도로 표면의 3차원 정보를 생성할 수 있다.
표시 장치는 도로 표면의 3차원 정보를 기초로, 도로 표면 위에 3차원 객체를 표시한다(150). 표시 장치가 도로 표면 위에 3차원 객체를 표시하는 방법은 아래의 도 7을 참조하여 구체적으로 설명한다.
이하, 본 명세서에서, '도로(road)'는 차량들이 다니는 길을 의미하며, 예를 들어, 고속도로, 국도, 지방도, 고속 국도, 자동차 전용 도로 등과 같은 다양한 유형의 도로를 포함할 수 있다. 도로는 하나 또는 다수 개의 차로를 포함할 수 있다.
'차로(lane)'는 도로 노면 상에 표시된 차선들을 통해 서로 구분되는 도로 공간에 해당할 수 있다. 이하에서, '주행 차로(driving lane)'는 다수 개의 차로 중 주행 차량이 주행 중인 차로, 다시 말해 주행 차량이 차지하고 이용 중인 차로 공간을 의미하는 것으로 이해될 수 있다. 하나의 차로는 해당 차로의 좌, 우 차선에 의해 다른 차로(들)와 구분될 수 있다.
'차선(lines)'은 예를 들어, 도로 노면 상에 흰색, 황색, 또는 하늘색으로 표시된 실선, 또는 점선 등 다양한 형태의 차선 마크(lane mark)로 이해될 수 있다. 차선 마크에 속하는 다양한 종류의 차선들에는 차로를 구분하는 차선 이외에도 지그재그 차선, 버스 전용 차선, 인도 구분선 등 다양한 차선들이 포함될 수 있다. 본 명세서에서는 차선들 중 하나의 차로를 구분하는 좌, 우 차선을 그 밖의 다른 차선들과 서로 구분하기 위해 '차로 경계선(lane boundary line)'이라 부를 수 있다.
또한, '주행 차량'은 도로 위를 주행 중인 차량들 중 자차를 의미하는 것으로서, 예를 들어, 자율 주행 차량, 첨단 운전자 지원 시스템(Advanced Driver Assistance System; ADAS)을 구비한 지능형 차량, 스마트 차량 등이 주행 차량에 해당할 수 있다.
도 2는 일 실시예에 따른 주행 영상으로부터 도로 표면의 차선 마크들을 추출하는 방법을 설명하기 위한 도면이다. 도 2를 참조하면, 일 실시예에 따른 표시 장치는 주행 영상(210) 내 에지(edge)를 탐색할 수 있다(220). 표시 장치는 예를 들어, 캐니 에지 검출(Canny edge detection) 방식 및 호프 변환(Hough Transformation) 방식 등을 이용하여 주행 영상(210) 내의 에지(들)를 탐색할 수 있다.
표시 장치는 단계(220)에서 탐색한 에지들 중 일정 길이 이상의 라인들을 검출할 수 있다(230). 여기서, 일정 길이는 예를 들어, 점선 차선의 길이 또는 이와 유사한 길이에 해당할 수 있다.
표시 장치는 단계(230)에서 검출한 일정 길이 이상의 라인들 중 특정 차선을 선별할 수 있다(240). 특정 차선은 예를 들어, 주행 차로의 좌, 우의 차로 경계선에 해당할 수 있다. 표시 장치는 예를 들어, 주행 방향을 기초로 일정 길이 이상의 라인들, 다시 말해 차선 마크들을 그룹핑하고, 그룹핑된 차선 마크들 중 에지 또는 차선 특징을 나타내는 특정 영역에서 특정 차선을 선별할 수 있다. 실시예에 따라서, 특정 영역에서 특정 차선이 선별되지 않은 경우, 표시 장치는 차선일 가능성이 가장 높은 후보 라인(들)을 예측함으로써 특정 차선을 선별할 수 있다.
표시 장치는 단계(240)에서 선별한 특정 차선에 대한 차선 피팅(line fitting)을 수행할 수 있다(250). 주행 차로의 차선 마크들을 실선일 수도 있고, 점선일 수도 있다. 예를 들어, 차선 마크들이 점선이거나, 또는 일부가 끊어져 있는 경우, 표시 장치는 점선 또는 끊어진 차선 마크들을 연결하여 하나의 직선 또는 곡선(curve)으로 피팅할 수 있다. 표시 장치는 특정 차선, 다시 말해 차로 경계선에 대한 차선 피팅을 수행할 수 있다.
예를 들어, 차선 마크들 중 일부가 방해물(obstacle)에 가려 안 보인다고 하자. 이 경우, 표시 장치는 예를 들어, 차로 폭, 차선을 제외한 차로 색, 보이는 부분의 일부 차선 등과 같이 알 수 있는 정보에 의해 차선을 예측할 수 있다. 표시 장치는 예측된 차선의 가능성(likelihood)에 의해 신뢰도 값(confidence value)을 추정하여 이후 도로 표면의 3차원 정보를 생성하는 데에 활용할 수 있다.
표시 장치는 단계(250)에서 차선 피팅된 특정 차선에 의해 도로 표면의 차선들을 분리할 수 있다(260).
표시 장치는 전술한 과정을 통해 영상(270)과 같이 도로 표면의 차선들(275)을 분리할 수 있다.
실시예에 따라서, 표시 장치는 예를 들어, 예를 들어, 도로 노면의 차선 마크들을 인식하도록 미리 학습된 컨볼루션 신경망(Convolution Neural Network; CNN), 심층 신경망(Deep Neural Network; DNN), 서포트 벡터 머신(Support Vector Machine) 등을 이용하여 주행 영상으로부터 다양한 차선들 또는 차선 마크들을 추출할 수 있다. 이때, 컨볼루션 신경망은 도로 노면 영상의 다양한 차선 마크들이 미리 학습된 것으로서, 영역 기반(Region-based) 컨볼루션 신경망일 수 있다. 컨볼루션 신경망은 예를 들어, 주행 영상에서 검출하고자 하는 차선, 차선 마크들의 바운딩 박스가 함께 판별되도록 학습된 것일 수 있다.
도 3은 일 실시예에 따라 차선 마크들을 적어도 하나의 그룹으로 분류하는 방법을 설명하기 위한 도면이다. 도 3을 참조하면, 그룹 1(Group 1)로 분류된 차선 마크들(311, 313) 및 그룹 2(Group 2)로 분류된 차선 마크들(331, 333)이 도시된다.
전술한 과정을 통해 분리된 차선(들)은 주행 차로를 구분하는 차로 경계선에 해당할 수 있다. 주행 차로는 예를 들어, 직선 구간일 수도 있고, 곡선 구간일 수도 있다. 표시 장치는 주행 차량이 주행하는 주행 차로의 좌, 우 차선의 곡률(curvature)을 고려하여 직선 구간 및 곡선 구간을 각각 구분함으로써 직선 구간 및 곡선 구간이 모두 직선의 차선 마크들로 표현되도록 할 수 있다.
예를 들어, 단일 카메라가 차량이 진행하는 정면 방향의 전면 영상을 촬영하도록 설치되었다고 가정하자. 이 경우, 촬영된 주행 영상 내 주행 차로의 좌,우 차선의 차선 마크들에서 같은 높이에 위치하는 차선 마크들은 서로 같은 깊이를 가진다고 예측할 수 있다. 따라서, 같은 높이에 위치하는 좌, 우 차선의 차선 마크들은 하나의 그룹으로 분리될 수 있다. 표시 장치는 좌측 차선의 곡률 변화 및 우측 차선의 곡률 변화를 모두 고려하여 차선 마크들을 그룹핑할 수 있다.
표시 장치는 예를 들어, 같은 높이에서 분리된 좌, 우 차선의 곡률 변화의 정도와 기준 변화율을 비교할 수 있다. 표시 장치는 기준 변화율과의 비교 결과, 좌, 우 차선에서 곡률 변화 정도가 기준 변화율보다 높은 지점을 기준으로 차선 마크들을 그룹들로 분류할 수 있다.
예를 들어, 도 3에 도시된 좌, 우 차선에서 곡률 변화 정도가 기준 변화율보다 높은 지점이 지점(340)과 지점(350)이라고 하자. 표시 장치는 지점(340)과 지점(350)을 기준으로 차선 마크들(311, 313)을 그룹 1(310)로 분류하고, 차선 마크들(331, 333)을 그룹 2(320)로 분류할 수 있다. 이때, 그룹 1(310)에 해당하는 도로 표면은 평행 사변형 형태의 편평한 평면을 구성할 수 있다. 또한, 그룹 2(330)에 해당하는 도로 표면은 그룹 1과 구분되는 평행 사변형 형태의 편평한 평면을 구성할 수 있다.
예를 들어, 주행 영상 내에서 분류되는 그룹이 하나라면, 주행 영상 내의 도로 표면은 전체가 하나의 편평한 평면으로 구성될 수 있다. 이와 달리, 주행 영상 내에서 분류되는 그룹들이 5개라면, 주행 영상 내의 도로 표면은 5개의 구간들로 분리될 수 있으며, 각 구간들에 대응하는 도로 표면의 곡률은 서로 다르다고 예측될 수 있다.
도 4는 일 실시예에 따라 피치 각도를 추정하는 방법을 설명하기 위한 도면이다. 도 4를 참조하면, 차선 마크들(415)이 표시된 부분 영상(410), 부분 영상(410)을 변환한 조감도 영상(420), 및 조감도 영상(430)에서 추정된 피치 각도에 의해 차선 마크들(415)의 위치가 조정된 영상(430)이 도시된다.
표시 장치는 주행 영상 중 적어도 하나의 그룹 별 부분 영상(410)을 조감도 영상(420)으로 변환할 수 있다. 이때, 조감도 영상(420)은 주행 영상 전체가 아니라 주행 영상 중 앞에서 분류된 하나의 그룹에 해당하는 부분 영상(410)을 변환한 것일 수 있다.
부분 영상(410)에서 차선 마크들(415)은 소실점을 향하여 모이는 형태로 표시될 수 있다. 이러한 부분 영상(410)을 조감도 영상(420)으로 변환하는 경우, 조감도 영상(420)에 표시되는 차선 마크들은 부분 영상(410)을 하늘에서 바라본 것과 같이 평행하게 나타날 수 있다. 하지만, 부분 영상(410)에서 도로 표면이 경사도를 갖는 경우, 해당 경사도에 의해 조감도 영상(420)에 표시되는 차선 마크들이 평행하지 않고, 일정 각도로 모이거나 벌어지는 형태로 나타날 수 있다. 일 실시예에서는 조감도 영상(420)에 표시되는 차선 마크들이 서로 평행하게 나타나도록 하는 각도를 찾을 수 있고, 해당 각도가 피치 각도에 해당할 수 있다.
예를 들어, 표시 장치는 예를 들어, 역원근 변환(Inverse Perspective Mapping; IPM) 기법을 이용하여 부분 영상(410)을 조감도 영상(420)으로 변환할 수 있다. 역원근 변환 기법은 원근 효과를 가진 부분 영상(410)에서 원근 효과를 제거하고 부분 영상(410) 평면의 위치 정보를 세계 좌표계(world coordinate)의 위치 정보로 변환시키는 것이다. 역원근 변환 기법에 의해 부분 영상(410) 평면의 위치 정보는 아래와 같이 세계 좌표계(world coordinate)의 위치 정보로 변환될 수 있다.
예를 들어, 주행 차량의 롤 각도 방향의 움직임이 없어 롤 값은 없다고 가정하자. 이 경우, 부분 영상(410) 평면에서의 요우 각도 및 피치 각도 는 및 와 같이 표현될 수 있다.
표시 장치는 부분 영상(410)의 세계 좌표계 에서 원근 효과를 제거하여 부분 영상(410) 평면의 위치 정보를 아래의 수학식 2와 같은 세계 좌표계의 위치 정보로 변환할 수 있다.
표시 장치는 예를 들어, 부분 영상(410)에 대응하는 바운딩 박스(bounding box)의 중심을 기준으로 역원근 변환을 적용하여 조감도 영상(420)을 획득할 수 있다. 실시예에 따라서, 표시 장치는 부분 영상(410)에서 배경 부분은 제외하고, 검출된 차선 마크들(415)에 대하여 역원근 변환을 적용함으로써 계산량을 감소시킬 수 있다.
실시예에 따라서, 표시 장치는 사전에 획득한 단일 카메라의 캘리브레이션 정보를 활용하여 역원근 변환을 수행함으로써 부분 영상(410)에 대응하는 조감도 영상(420)을 추정할 수도 있다. 단일 카메라의 캘리브레이션 정보는 예를 들어, 외부 파라미터(extrinsic parameter)일 수 있다.
표시 장치는 조감도 영상(420)을 기초로, 도로 표면의 피치 각도를 추정할 수 있다. 조감도 영상(420)은 도로 표면의 경사도( )에 따라 기준 위치가 달라질 수 있다. 따라서, 표시 장치는 부분 영상(410)을 조감도 영상(420)으로 변환했을 때, 부분 영상(410)에 표시된 차선 마크들(415), 다시 말해 동일 그룹 내에 포함된 좌, 우 차선 마크들(415)이 서로 평행하도록 하는 제1 조건 및 차선 마크들(415)의 길이가 서로 동일하도록 하는 제2 조건 중 적어도 하나의 조건을 만족하는 각도를 도로 표면의 피치 각도로 추정할 수 있다.
표시 장치는 예를 들어, 초기 피치 각도에 따라 적어도 하나의 그룹 별 조감도 영상(420)에 포함된 차선 마크들의 위치를 산출할 수 있다. 표시 장치는 조감도 영상(420)에 포함된 차선 마크들이 적어도 하나의 조건을 만족할 때까지 반복적으로 피치 각도를 조절할 수 있다. 표시 장치는 적어도 하나의 조건을 만족하는 피치 각도를 도로 표면의 피치 각도로 결정할 수 있다.
이때, 조감도 영상(420)에서 차선 마크들(415)이 전술한 조건을 만족하도록 하는 피치 각도를 반영한 경우, 조감도 영상(420)에 표시된 차선 마크들의 위치가 조정되어 영상(430)과 같이 차선 마크들이 서로 평행하게 나타날 수 있다.
도 5는 다른 실시예에 따라 피치 각도를 추정하는 방법을 설명하기 위한 도면이다. 도 5를 참조하면, 일 실시예에 따른 주행 영상(510) 및 조감도 영상(530)이 도시된다.
예를 들어, 일정 경사를 갖는 주행 도로의 주행 영상(510)에 표시된 차선 마크들(511,513,515)은 서로 팽행하지 않게 표현될 수 있다. 일 실시예에 따른 표시 장치는 주행 영상(510)을 전술한 역원근 변환 기법에 의해 변환하고, 피치 각도가 전술한 조건을 만족하도록 최적화하여 조감도 영상(530)을 생성할 수 있다 조감도 영상(530)에서 차선 마크들(531, 533, 535)이 서로 평행하게 나타난 것을 볼 수 있다.
이 때, 요우 각도는 별도로 보정해주지 않아도, 최적화된 피치 각도에 의해 추출된 차선 마크들(531, 533, 535)의 평행 조건에 영향을 주지 않는다.
Z를 반영하는 경우, 최적화된 피치 각도는 아래와 같이 계산될 수 있다.
예를 들어, 조감도 영상(530)에서 도로 표면의 차선 마크들(531, 533, 535)의 경사도를 로 정의하자. 이 경우, 표시 장치는 아래와 같은 수학식 3을 만족하도록 최적화를 수행하여 피치 각도를 추정할 수 있다.
표시 장치는 전술한 최적화를 통해 조감도 영상(530)으로 변환된 도로 표면의 3차원 정보 중 피치 각도를 추정할 수 있다.
도 6은 일 실시예에 따라 피치 각도를 스무딩하는 방법을 설명하기 위한 도면이다. 도 6을 참조하면, 시간의 흐름에 따라 변화되는 주행 영상에 대응하는 피치 각도들을 도시한 그래프(610) 및 주행 영상에서 변화되는 피치 각도들에 대응하여 변형된 조감도 영상들(620, 630, 640, 650)이 도시된다.
도 6에 도시된 조감도 영상들(620, 630, 640, 650)에서 볼 수 있듯이 시간의 흐름에 따라 추정되는 피치 각도의 값은 크게 변화될 수 있다. 따라서, 일 실시예에서는 시간의 흐름에 따라, 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩할 수 있다. 표시 장치는 예를 들어, 칼만 필터(Kalman Filter) 등과 같은 템포럴 필터(temporal filter)를 이용하여 시간의 흐름에 따라 적어도 하나의 그룹 별 도로 표면의 피치 각도에 대한 템포럴 노이즈(temporal noise)를 스무딩할 수 있다. 표시 장치는 스무딩한 피치 각도를 이용하여 주행 영상에 포함된 도로 표면의 3차원 정보를 생성할 수 있다.
도 7은 일 실시예에 따라 도로 표면 위에 표시된 3차원 객체를 도시한 도면이다. 도 7을 참조하면, 일 실시예에 따른 주행 영상(710)에 표시된 제한 속도 표시 객체(720), 차량 속도 표시 객체(730), 및 도로 경사 방향 표시 객체(740)가 도시된다.
일 실시예에서, 그룹들 각각은 평면으로 가정되므로, 도로 표면의 3차원 정보 중 롤 각도는 없다고 볼 수 있다. 또한, 요우 각도는 조감도 영상으로부터 획득될 수 있고, 피치 각도는 전술한 과정을 통해 추정될 수 있다.
표시 장치는 전술한 과정에서 획득한 도로 표면에 대한 피치 각도, 롤 각도, 및 요우 각도의 3차원 정보를 기초로, 도로 표면의 3차원 정보를 반영한 3차원 도로 모델을 렌더링하고, 3차원 도로 모델에 3차원 객체를 표시할 수 있다.
표시 장치는 주행 영상(710)의 도로 표면 위에 예를 들어, 제한 속도 표시 객체(720), 차량 속도 표시 객체(730), 및 도로 경사 방향 표시 객체(740) 등과 같은 3차원 객체를 표시할 수 있다. 표시 장치에 의해 주행 영상(710)의 도로 표면 위에 표시되는 3차원 객체는 반드시 이에 한정되지 않으며, 이 밖에도, 예를 들어, 보행자 객체, 타 차량 객체, 애완 동물 객체 등과 같이 다양한 3차원 객체들이 표시될 수 있다. 일 실시예에 따른 3차원 객체는 예를 들어, 증강 현실 객체 등과 같은 3차원 가상 객체일 수 있다.
표시 장치는 예를 들어, 도로 표면 위에 3차원 가상 객체를 오버레이(Overlay)하거나, 또는 도로 표면과 3차원 가상 객체가 인터랙션(Interaction) 되도록 할 수 있다.
도 8은 일 실시예에 따른 3차원 객체를 표시하는 장치의 블록도이다. 도 8을 참조하면, 일 실시예에 따른 표시 장치(800)는 모노 카메라(Mono Camera)(810), 카메라 프로세서(Camera Processor)(820), 프로세서(Processor)(830), 그래픽 프로세서(Graphics Processor)(840), 디스플레이(Display)(850), 및 메모리(memory)(860)를 포함할 수 있다. 카메라 프로세서(820), 프로세서(830), 그래픽 프로세서(840), 및 메모리(860)는 통신 버스(870)를 통해 서로 통신할 수 있다.
표시 장치(800)는 모노 카메라(810)를 통해 촬영된 주행 영상을 입력받아 주행 영상 내 도로 표면의 3차원 정보 및/또는 3차원 도로 모델을 출력할 수 있다.
모노 카메라(810)는 주행 영상을 촬영한다.
카메라 프로세서(820)는 예를 들어, 외부 파라미터 등과 같은 모노 카메라(810)의 캘리브레이션 정보를 활용하여 역원근 변환을 수행함으로써 주행 영상 중 적어도 하나의 그룹 별 부분 영상을 적어도 하나의 그룹 별 조감도 영상으로 변환할 수 있다.
프로세서(830)는 주행 영상에 포함된 도로 표면의 차선의 곡률 변화를 기초로, 차선 마크들을 적어도 하나의 그룹으로 분류할 수 있다. 프로세서(830)는 적어도 하나의 그룹 별 조감도 영상을 기초로, 도로 표면의 피치 각도를 추정할 수 있다. 프로세서(830)는 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 주행 영상에 포함된 도로 표면의 3차원 정보를 생성할 수 있다.
그래픽 프로세서(840)는 도로 표면의 3차원 정보를 반영한 3차원 도로 모델을 렌더링하고, 3차원 도로 모델에 3차원 객체를 표현할 수 있다.
디스플레이(850)는 3차원 객체가 표현된 3차원 도로 모델을 표시할 수 있다.
메모리(860)는 모노 카메라(810)에서 촬영된 주행 영상 이외에도, 카메라 프로세서(820), 프로세서(830), 및/또는 그래픽 프로세서(840)의 처리 과정에서 생성된 데이터 및 최종 결과물을 저장할 수 있다.
도 9는 다른 실시예에 따른 3차원 객체를 표시하는 장치의 블록도이다. 도 9를 참조하면, 일 실시예에 따른 표시 장치(900)는 단일 카메라(910), 통신 인터페이스(920), 프로세서(930), 및 디스플레이(940)를 포함한다. 표시 장치(900)는 메모리(950)를 더 포함할 수 있다. 단일 카메라(910), 통신 인터페이스(920), 프로세서(930), 디스플레이(940), 및 메모리(950)는 통신 버스(905)를 통해 서로 통신할 수 있다.
일 실시예에 따른 표시 장치(900)는 예를 들어, 자율 주행 자동차, 지능형 자동차, 스마트 폰 및 모바일 기기일 수 있다.
단일 카메라(910)는 주행 영상을 촬영한다.
통신 인터페이스(920)는 단일 카메라(910)로부터 주행 영상을 획득한다. 통신 인터페이스(920)는 프로세서(930)가 생성한 도로 표면의 3차원 정보를 출력할 수 있다.
프로세서(930)는 주행 영상에 포함된 도로 표면의 차선의 곡률 변화를 기초로, 차선 마크들을 적어도 하나의 그룹으로 분류한다. 프로세서(930)는 적어도 하나의 그룹 별로 단일 카메라(910)와 도로 표면 사이의 경사도에 해당하는 피치 각도를 추정한다. 프로세서(930)는 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 주행 영상에 포함된 도로 표면의 3차원 정보를 생성한다. 프로세서(930)는 도로 표면의 3차원 정보를 기초로, 도로 표면에 3차원 객체를 표현한다.
디스플레이(940)는 3차원 객체가 표현된 3차원 도로 모델을 표시한다. 디스플레이(940)는 예를 들어, AR HUD(Augmented Reality Head Up Display)일 수 있다.
메모리(950)는 주행 영상, 및/또는 3차원 객체가 표현된 3차원 도로 모델을 저장할 수 있다.
또한, 프로세서(930)는 도 1 내지 도 8을 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서(930)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(930)는 프로그램을 실행하고, 표시 장치(900)를 제어할 수 있다. 프로세서(930)에 의하여 실행되는 프로그램 코드는 메모리(950)에 저장될 수 있다.
메모리(950)는 상술한 프로세서(930)의 처리 과정에서 생성되는 다양한 정보들을 저장할 수 있다. 이 밖에도, 메모리(950)는 각종 데이터와 프로그램 등을 저장할 수 있다. 메모리(950)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(950)는 하드 디스크 등과 같은 대용량 저장 매체를 구비하여 각종 데이터를 저장할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
Claims (30)
- 단일 카메라로부터 주행 영상을 획득하는 단계;
상기 주행 영상에 포함된 도로 표면(road surface)의 차선(lane)의 곡률 변화를 기초로, 차선 마크들(lane marks)을 적어도 하나의 그룹(group)으로 분류하는 단계;
상기 적어도 하나의 그룹 별로 상기 단일 카메라와 상기 도로 표면 사이의 경사도에 해당하는 피치 각도(pitch angle)를 추정하는 단계;
상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하는 단계; 및
상기 도로 표면의 3차원 정보를 기초로, 상기 도로 표면 위에 3차원 객체를 표시하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 적어도 하나의 그룹으로 분류하는 단계는
상기 차선의 곡률 변화의 정도를 기초로 상기 차선 마크들을 그룹핑(grouping)하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 적어도 하나의 그룹으로 분류하는 단계는
상기 차선의 곡률 변화의 정도와 기준 변화율을 비교하는 단계; 및
상기 비교 결과, 상기 차선에서 상기 곡률 변화 정도가 상기 기준 변화율보다 높은 지점을 기준으로 상기 차선 마크들을 복수의 그룹들로 분류하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 적어도 하나의 그룹 각각은
상기 도로 표면에서 서로 구분되는 편평한 평면을 구성하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 도로 표면의 피치 각도를 추정하는 단계는
상기 주행 영상 중 상기 적어도 하나의 그룹 별 부분 영상을 상기 적어도 하나의 그룹 별 조감도(Bird-Eye-View) 영상으로 변환하는 단계; 및
상기 적어도 하나의 그룹 별 조감도 영상을 기초로, 상기 도로 표면의 피치 각도를 추정하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제5항에 있어서,
상기 도로 표면의 피치 각도를 추정하는 단계는
상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들이 서로 평행하도록 하는 제1 조건 및 상기 차선 마크들의 길이가 서로 동일하도록 하는 제2 조건 중 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 추정하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제6항에 있어서,
상기 도로 표면의 피치 각도로 추정하는 단계는
초기 피치 각도에 따라 상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들의 위치를 산출하는 단계;
상기 적어도 하나의 조건을 만족할 때까지 반복적으로 상기 피치 각도를 조절하는 단계; 및
상기 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 결정하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 주행 영상은 시간의 흐름에 따른 영상 시퀀스들을 포함하고,
상기 도로 표면의 3차원 정보를 생성하는 단계는
상기 시간의 흐름에 따라, 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩(smoothing)하는 단계; 및
상기 스무딩한 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제8항에 있어서,
상기 스무딩하는 단계는
템포럴 필터(temporal filter)를 이용하여 상기 시간의 흐름에 따라 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 3차원 객체를 표시하는 단계는
상기 도로 표면의 3차원 정보를 반영한 3차원 도로 모델을 렌더링하는 단계; 및
상기 3차원 도로 모델에 3차원 객체를 표시하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 주행 영상으로부터 주행 차로에 해당하는 상기 도로 표면의 차선들을 추출하는 단계; 및
상기 추출된 차선들의 곡률을 산출하는 단계
를 더 포함하는, 3차원 객체를 표시하는 방법. - 제11항에 있어서,
상기 도로 표면의 차선들을 추출하는 단계는
상기 주행 영상으로부터 에지(edge)를 탐색함으로써 상기 주행 영상에 포함된 일정 길이 이상의 라인들을 검출하는 단계; 및
주행 방향을 기초로 상기 일정 길이 이상의 라인들을 그룹핑하여 상기 주행 차로에 해당하는 상기 도로 표면의 차선들을 추정하는 단계
를 포함하는, 3차원 객체를 표시하는 방법. - 제11항에 있어서,
상기 주행 영상으로부터 상기 주행 차로의 좌, 우측 차선을 추출하는 단계; 및
상기 주행 차로의 좌, 우측 차선의 곡률들을 산출하는 단계
를 더 포함하는, 3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 도로 표면의 3차원 정보를 출력하는 단계
를 더 포함하는,
3차원 객체를 표시하는 방법. - 제1항에 있어서,
상기 주행 영상은
RGB 영상 및 그레이(gray) 영상 중 적어도 하나를 포함하는,
3차원 객체를 표시하는 방법. - 하드웨어와 결합되어 제1항 내지 제15항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능하 기록매체에 저장된 컴퓨터 프로그램.
- 단일 카메라로부터 주행 영상을 획득하는 통신 인터페이스;
상기 주행 영상에 포함된 도로 표면의 차선의 곡률 변화를 기초로, 차선 마크들을 적어도 하나의 그룹으로 분류하고, 상기 적어도 하나의 그룹 별로 상기 단일 카메라와 상기 도로 표면 사이의 경사도에 해당하는 피치 각도를 추정하며, 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하고, 상기 도로 표면의 3차원 정보를 기초로, 상기 도로 표면에 3차원 객체를 표현하는 프로세서; 및
상기 3차원 객체가 표현된 3차원 도로 모델을 표시하는 디스플레이
를 포함하는, 3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 프로세서는
상기 차선의 곡률 변화의 정도를 기초로 상기 차선 마크들을 그룹핑하는,
3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 프로세서는
상기 차선의 곡률 변화의 정도와 기준 변화율을 비교하고, 상기 비교 결과, 상기 차선에서 상기 곡률 변화 정도가 상기 기준 변화율보다 높은 지점을 기준으로 상기 차선 마크들을 복수의 그룹들로 분류하는,
3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 적어도 하나의 그룹 각각은
상기 도로 표면에서 서로 구분되는 편평한 평면을 구성하는, 3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 프로세서는
상기 주행 영상 중 상기 적어도 하나의 그룹 별 부분 영상을 상기 적어도 하나의 그룹 별 조감도 영상으로 변환하고, 상기 적어도 하나의 그룹 별 조감도 영상을 기초로, 상기 도로 표면의 피치 각도를 추정하는,
3차원 객체를 표시하는 장치. - 제21항에 있어서,
상기 프로세서는
상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들이 서로 평행하도록 하는 제1 조건 및 상기 차선 마크들의 길이가 서로 동일하도록 하는 제2 조건 중 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 추정하는,
3차원 객체를 표시하는 장치. - 제22항에 있어서,
상기 프로세서는
초기 피치 각도에 따라 상기 적어도 하나의 그룹 별 조감도 영상에 포함된 차선 마크들의 위치를 산출하고, 상기 적어도 하나의 조건을 만족할 때까지 반복적으로 상기 피치 각도를 조절하고, 상기 적어도 하나의 조건을 만족하는 피치 각도를 상기 도로 표면의 피치 각도로 결정하는,
3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 주행 영상은 시간의 흐름에 따른 영상 시퀀스들을 포함하고,
상기 프로세서는
상기 시간의 흐름에 따라, 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩하고, 상기 스무딩한 피치 각도를 이용하여 상기 주행 영상에 포함된 도로 표면의 3차원 정보를 생성하는,
3차원 객체를 표시하는 장치. - 제24항에 있어서,
상기 프로세서는
템포럴 필터를 이용하여 상기 시간의 흐름에 따라 상기 적어도 하나의 그룹 별 도로 표면의 피치 각도를 스무딩하는,
3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 프로세서는
상기 도로 표면의 3차원 정보를 반영한 3차원 도로 모델을 렌더링하고, 상기 3차원 도로 모델에 3차원 객체를 표현하는,
3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 프로세서는
상기 주행 영상으로부터 주행 차로에 해당하는 상기 도로 표면의 차선들을 추출하고, 상기 추출된 차선들의 곡률을 산출하는,
3차원 객체를 표시하는 장치. - 제27항에 있어서,
상기 프로세서는
상기 주행 영상으로부터 에지를 탐색함으로써 상기 주행 영상에 포함된 일정 길이 이상의 라인들을 검출하고, 주행 방향을 기초로 상기 일정 길이 이상의 라인들을 그룹핑하여 상기 주행 차로에 해당하는 상기 도로 표면의 차선들을 추정하는,
3차원 객체를 표시하는 장치. - 제27항에 있어서,
상기 프로세서는
상기 주행 영상으로부터 상기 주행 차로의 좌, 우측 차선을 추출하고, 상기 주행 차로의 좌, 우측 차선의 곡률들을 산출하는,
3차원 객체를 표시하는 장치. - 제17항에 있어서,
상기 통신 인터페이스는
상기 도로 표면의 3차원 정보를 출력하는,
3차원 객체를 표시하는 장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190148843A KR102667741B1 (ko) | 2019-11-19 | 2019-11-19 | 3차원 객체를 표시하는 방법 및 장치 |
US16/881,199 US11453337B2 (en) | 2019-11-19 | 2020-05-22 | Method and apparatus with three-dimensional object display |
EP20193738.0A EP3825904B1 (en) | 2019-11-19 | 2020-08-31 | Method and apparatus with three-dimensional object display |
CN202011213458.7A CN112907723A (zh) | 2019-11-19 | 2020-11-03 | 具有三维对象显示的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190148843A KR102667741B1 (ko) | 2019-11-19 | 2019-11-19 | 3차원 객체를 표시하는 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210061069A true KR20210061069A (ko) | 2021-05-27 |
KR102667741B1 KR102667741B1 (ko) | 2024-05-22 |
Family
ID=72292456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190148843A KR102667741B1 (ko) | 2019-11-19 | 2019-11-19 | 3차원 객체를 표시하는 방법 및 장치 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11453337B2 (ko) |
EP (1) | EP3825904B1 (ko) |
KR (1) | KR102667741B1 (ko) |
CN (1) | CN112907723A (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113942458A (zh) * | 2021-10-29 | 2022-01-18 | 禾多科技(北京)有限公司 | 用于车载摄像头调整系统的控制方法、装置、设备和介质 |
KR102598898B1 (ko) * | 2022-10-07 | 2023-11-06 | 주식회사 자동차공학연구소 | 가상 도로주행 공간의 설계 방법 및 가상 도로주행 공간의 설계 시스템 |
KR102695981B1 (ko) * | 2023-10-27 | 2024-08-16 | 주식회사 자동차공학연구소 | 가상 도로주행 사건의 설계 방법 및 가상 도로주행 사건의 설계 시스템 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112862899B (zh) * | 2021-02-07 | 2023-02-28 | 黑芝麻智能科技(重庆)有限公司 | 用于图像获取设备的外参标定方法、装置和系统 |
JP2022149449A (ja) * | 2021-03-25 | 2022-10-06 | 本田技研工業株式会社 | 車両用表示制御装置、車両用表示制御装置の制御方法、およびプログラム |
WO2022250468A1 (en) * | 2021-05-26 | 2022-12-01 | Samsung Electronics Co., Ltd. | Method and electronic device for 3d object detection using neural networks |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180067494A1 (en) * | 2016-09-02 | 2018-03-08 | Delphi Technologies, Inc. | Automated-vehicle 3d road-model and lane-marking definition system |
KR20190036844A (ko) * | 2017-09-28 | 2019-04-05 | 삼성전자주식회사 | 주행 차로를 식별하는 방법 및 장치 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3922194B2 (ja) * | 2003-03-11 | 2007-05-30 | 日産自動車株式会社 | 車線逸脱警報装置 |
KR100631082B1 (ko) | 2004-10-19 | 2006-10-02 | 주식회사 세인시스템 | 단일 카메라를 사용한 3차원 영상정보 획득방법 및 이를이용한 영상검지방법 |
WO2007096952A1 (ja) * | 2006-02-22 | 2007-08-30 | Navitime Japan Co., Ltd. | 地図表示システムおよび地図表示システムにおける地図表示方法ならびに地図表示装置およびプログラム |
JP2013123970A (ja) | 2011-12-14 | 2013-06-24 | Toshiba Corp | 表示装置 |
EP2926196A4 (en) | 2012-11-30 | 2016-08-24 | Thomson Licensing | METHOD AND SYSTEM FOR DETECTING A 3D IMAGE USING A SINGLE CAMERA |
CN103854008B (zh) | 2012-12-04 | 2019-10-18 | 株式会社理光 | 路面检测方法和装置 |
DE102014012285A1 (de) | 2014-08-22 | 2016-02-25 | Jenoptik Robot Gmbh | Verfahren und Achsenzähl-Vorrichtung zur berührungslosen Achsenzählung eines Fahrzeugs sowie Achsenzählsystem für den Straßenverkehr |
KR101634283B1 (ko) | 2015-12-18 | 2016-06-30 | 주식회사 싸인텔레콤 | 단일영상에서의 3차원 카메라교정을 통한 3차원 공간모델링 형성제어장치 및 방법 |
US10210402B2 (en) | 2016-03-15 | 2019-02-19 | Mobileye Vision Technologies Ltd. | Road plane output with lateral slope |
KR102404155B1 (ko) | 2016-09-28 | 2022-05-31 | 톰톰 글로벌 콘텐트 비.브이. | 위치파악 참조 데이터를 생성 및 사용하기 위한 방법 및 시스템 |
US10528802B2 (en) * | 2018-01-09 | 2020-01-07 | Futurewei Technologies, Inc. | Head pose and distraction estimation |
KR102675523B1 (ko) | 2018-09-28 | 2024-06-14 | 삼성전자주식회사 | 차로를 결정하는 방법 및 장치 |
-
2019
- 2019-11-19 KR KR1020190148843A patent/KR102667741B1/ko active IP Right Grant
-
2020
- 2020-05-22 US US16/881,199 patent/US11453337B2/en active Active
- 2020-08-31 EP EP20193738.0A patent/EP3825904B1/en active Active
- 2020-11-03 CN CN202011213458.7A patent/CN112907723A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180067494A1 (en) * | 2016-09-02 | 2018-03-08 | Delphi Technologies, Inc. | Automated-vehicle 3d road-model and lane-marking definition system |
KR20190036844A (ko) * | 2017-09-28 | 2019-04-05 | 삼성전자주식회사 | 주행 차로를 식별하는 방법 및 장치 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113942458A (zh) * | 2021-10-29 | 2022-01-18 | 禾多科技(北京)有限公司 | 用于车载摄像头调整系统的控制方法、装置、设备和介质 |
KR102598898B1 (ko) * | 2022-10-07 | 2023-11-06 | 주식회사 자동차공학연구소 | 가상 도로주행 공간의 설계 방법 및 가상 도로주행 공간의 설계 시스템 |
KR102695981B1 (ko) * | 2023-10-27 | 2024-08-16 | 주식회사 자동차공학연구소 | 가상 도로주행 사건의 설계 방법 및 가상 도로주행 사건의 설계 시스템 |
Also Published As
Publication number | Publication date |
---|---|
CN112907723A (zh) | 2021-06-04 |
KR102667741B1 (ko) | 2024-05-22 |
US11453337B2 (en) | 2022-09-27 |
EP3825904A1 (en) | 2021-05-26 |
US20210146839A1 (en) | 2021-05-20 |
EP3825904B1 (en) | 2024-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102667741B1 (ko) | 3차원 객체를 표시하는 방법 및 장치 | |
KR102541559B1 (ko) | 관심 객체를 검출하는 방법 및 장치 | |
JP7228652B2 (ja) | 物体検出装置、物体検出方法およびプログラム | |
KR102541561B1 (ko) | 차량의 주행을 위한 정보를 제공하는 방법 및 그 장치들 | |
KR102675523B1 (ko) | 차로를 결정하는 방법 및 장치 | |
KR102595897B1 (ko) | 차선 결정 방법 및 장치 | |
KR102267562B1 (ko) | 무인자동주차 기능 지원을 위한 장애물 및 주차구획 인식 장치 및 그 방법 | |
CN111874006B (zh) | 路线规划处理方法和装置 | |
US11338807B2 (en) | Dynamic distance estimation output generation based on monocular video | |
JP7301138B2 (ja) | ポットホール検出システム | |
KR102585219B1 (ko) | 차량 속도 제어 방법 및 장치 | |
KR102677513B1 (ko) | 소실점 검출을 위한 학습 방법, 소실점 검출 방법 및 장치 | |
JP2019517089A (ja) | 地面マーキングを認識するための画像処理方法、および地面マーキングを検出するためのシステム | |
US20200082182A1 (en) | Training data generating method for image processing, image processing method, and devices thereof | |
KR102519666B1 (ko) | 이미지 변환 장치 및 방법 | |
KR102633140B1 (ko) | 주행 정보를 결정하는 방법 및 장치 | |
KR20200060194A (ko) | 차선들의 깊이값을 예측하는 방법, 3차원 차선들을 출력하는 방법 및 그 장치 | |
CN111089597A (zh) | 基于图像和地图数据来定位的方法和装置 | |
KR102564856B1 (ko) | 차선을 검출하는 방법 및 장치 | |
JP7454685B2 (ja) | 車両走行路内のデブリの検出 | |
JP2023102768A (ja) | 道路地図生成システム及び使用方法 | |
CN114821517A (zh) | 用于学习神经网络以确定环境中车辆姿态的方法和系统 | |
Xiong et al. | A 3d estimation of structural road surface based on lane-line information | |
KR102119678B1 (ko) | 차선 검출 방법 및 그 방법을 수행하는 전자 장치 | |
KR20240048748A (ko) | 차선 정보를 결정하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |