KR20200019283A - 차선 검출 방법 및 그 방법을 수행하는 전자 장치 - Google Patents

차선 검출 방법 및 그 방법을 수행하는 전자 장치 Download PDF

Info

Publication number
KR20200019283A
KR20200019283A KR1020180092209A KR20180092209A KR20200019283A KR 20200019283 A KR20200019283 A KR 20200019283A KR 1020180092209 A KR1020180092209 A KR 1020180092209A KR 20180092209 A KR20180092209 A KR 20180092209A KR 20200019283 A KR20200019283 A KR 20200019283A
Authority
KR
South Korea
Prior art keywords
lane
detecting
bird
eye view
candidate
Prior art date
Application number
KR1020180092209A
Other languages
English (en)
Other versions
KR102119678B1 (ko
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 KR1020180092209A priority Critical patent/KR102119678B1/ko
Publication of KR20200019283A publication Critical patent/KR20200019283A/ko
Application granted granted Critical
Publication of KR102119678B1 publication Critical patent/KR102119678B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • G06K9/00798
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/02Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
    • B60W40/06Road conditions
    • B60W40/072Curvature of the road
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G06T3/0093
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • G06T5/002
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • 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/50Depth or shape recovery
    • G06T7/536Depth or shape recovery from perspective effects, e.g. by using vanishing points
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo, light or radio wave sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • B60W2420/42
    • 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/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30256Lane; Road marking

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Mathematical Physics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

촬영된 이미지 내의 차선을 검출하기 위한 방법 및 그 방법을 수행하는 전자 장치가 제공된다. 차선을 검출하기 위해, 카메라에 의해 촬영된 이미지를 수신하고, 이미지 내의 소실점(vanishing point)을 검출하며, 소실점 및 이미지에 기초하여 조감 시점 이미지를 생성하고, 조감 시점 이미지를 복수의 블록들로 분할하고, 복수의 블록들에 기초하여 조감 시점 이미지 내의 후보 차선을 검출하고, 후보 차선에 기초하여 조감 시점 이미지 내의 차선을 검출한다.

Description

차선 검출 방법 및 그 방법을 수행하는 전자 장치{LANE DETECTION METHOD AND ELECTRONIC DEVICE PERFORMING THE METHOD}
아래의 실시예들은 촬영된 이미지 내의 차선을 검출하는 기술에 관한 것으로 것으로, 보다 상세하게는 이미지 내의 블록에 기초하여 차선을 검출하는 기술에 관한 것이다.
자율 주행 차량은 주행 시 차량 주변의 환경을 인식하여, 주행 경로를 자체적으로 결정하며, 자체 동력을 이용하여 독립적으로 주행한다. 또한, ADAS(Advanced Driver Assistance Systems)는 운전자의 운전을 보조한다. 자율 주행 차량 및 ADAS는 주변의 상황을 인지하기 위해 센서를 이용할 수 있다. 예를 들어, 자율 주행 차량 및 ADAS는 차량의 전방을 촬영함으로써 이미지를 생성하고, 생성된 이미지 내의 차선을 검출할 수 있다.
일 실시예는 차선을 검출하는 방법 및 그 방법을 수행하는 전자 장치를 제공할 수 있다.
일 실시예는 이미지의 블록에 기초하여 차선을 검출하는 방법 및 그 방법을 수행하는 전자 장치를 제공할 수 있다.
일 측면에 따른, 이미지 내의 차선 검출 방법은, 카메라에 의해 촬영된 이미지를 수신하는 단계, 상기 이미지 내의 소실점(vanishing point)을 검출하는 단계, 상기 소실점 및 상기 이미지에 기초하여 조감 시점 이미지를 생성하는 단계, 상기 조감 시점 이미지를 복수의 블록들로 분할하는 단계, 상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계, 및 상기 후보 차선에 기초하여 상기 조감 시점 이미지 내의 차선을 검출하는 단계를 포함한다.
상기 조감 시점 이미지를 생성하는 단계는, 상기 이미지 중 상기 소실점의 위치의 하단 부분을 선택하는 단계, 및 미리 설정된 변환 공식을 이용하여 상기 하단 부분의 각 픽셀을 이동시킴으로써 상기 조감 시점 이미지를 생성하는 단계를 포함할 수 있다.
상기 후보 차선을 검출하는 단계는, 상기 조감 시점 이미지 내의 선(line)들을 검출하는 단계, 상기 선들 중 노이즈 선을 검출하는 단계, 상기 검출된 노이즈 선을 포함하는 블록을 제거하는 단계, 및 나머지 블록들에 기초하여 상기 후보 차선을 검출하는 단계를 포함할 수 있다.
상기 나머지 블록들에 기초하여 후보 차선을 검출하는 단계는, 상기 조감 시점 이미지의 하단에서 시작하는 시작 선을 검출하는 단계, 및 상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계를 포함할 수 있다.
상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는, 상기 시작 선의 외곽 픽셀로부터 일정 거리 내에 존재하는 선을 상기 시작 선에 포함시킴으로써 상기 후보 차선을 검출하는 단계를 포함할 수 있다.
상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는, 상기 후보 차선의 주변 영역을 제1 관심 영역으로 설정하는 단계, 및 상기 관심 영역에 기초하여 상기 후보 차선을 갱신하는 단계를 더 포함할 수 있다.
상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계는, 상기 후보 차선에 대한 곡률을 계산하는 단계, 및 상기 곡률에 기초하여 추가 후보 차선을 검출하는 단계를 더 포함할 수 있다.
상기 후보 차선의 곡률을 계산하는 단계는, 이전 이미지에 기초하여 계산된 이전 곡률에 기초하여 상기 후보 차선의 곡률을 계산하는 단계를 포함할 수 있다.
상기 차선의 곡률에 기초하여 상기 조감 시점 이미지 내의 차선을 검출하는 단계는, 상기 곡률에 기초하여 상기 조감 시점 이미지 내에 제2 관심 영역을 설정하는 단계, 및 상기 제2 관심 영역에 기초하여 상기 추가 후보 차선을 검출하는 단계를 포함할 수 있다.
다른 일 측면에 따른, 이미지 내의 차선을 검출하는 방법을 수행하는 전자 장치는, 이미지 내의 차선을 검출하는 프로그램이 기록된 메모리, 및 상기 프로그램을 수행하는 프로세서를 포함하고, 상기 프로그램은, 카메라에 의해 촬영된 이미지를 수신하는 단계, 상기 이미지 내의 소실점(vanishing point)을 검출하는 단계, 상기 소실점 및 상기 이미지에 기초하여 조감 시점 이미지를 생성하는 단계, 상기 조감 시점 이미지를 복수의 블록들로 분할하는 단계, 상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계, 및 상기 후보 차선에 기초하여 상기 조감 시점 이미지 내의 차선을 검출하는 단계를 수행한다.
상기 조감 시점 이미지를 생성하는 단계는, 상기 이미지 중 상기 소실점의 위치의 하단 부분을 선택하는 단계, 및 미리 설정된 변환 공식을 이용하여 상기 하단 부분의 각 픽셀을 이동시킴으로써 상기 조감 시점 이미지를 생성하는 단계를 포함할 수 있다.
상기 후보 차선을 검출하는 단계는, 상기 조감 시점 이미지 내의 선(line)들을 검출하는 단계, 상기 선들 중 노이즈 선을 검출하는 단계, 상기 검출된 노이즈 선을 포함하는 블록을 제거하는 단계, 및 나머지 블록들에 기초하여 상기 후보 차선을 검출하는 단계를 포함할 수 있다.
상기 나머지 블록들에 기초하여 후보 차선을 검출하는 단계는, 상기 조감 시점 이미지의 하단에서 시작하는 시작 선을 검출하는 단계, 및 상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계를 포함할 수 있다.
상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는, 상기 시작 선의 외곽 픽셀로부터 일정 거리 내에 존재하는 선을 상기 시작 선에 포함시킴으로써 상기 후보 차선을 검출하는 단계를 포함할 수 있다.
상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는, 상기 후보 차선의 주변 영역을 관심 영역으로 설정하는 단계, 및 상기 관심 영역에 기초하여 상기 후보 차선을 갱신하는 단계를 더 포함할 수 있다.
상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계는, 상기 후보 차선에 대한 곡률을 계산하는 단계, 상기 곡률에 기초하여 상기 조감 시점 이미지 내에 제2 관심 영역을 설정하는 단계, 및 상기 제2 관심 영역에 기초하여 추가 후보 차선을 검출하는 단계를 더 포함할 수 있다.
상기 전자 장치는 자율 주행 차량(autonomous vehicle)에 포함되고, 상기 자율 주행 차량은 상기 차선에 기초하여 상기 자율 주행 차량의 경로를 생성할 수 있다.
상기 전자 장치는 상기 자율 주행 차량의 ECU(electronic control unit)일 수 있다.
차선을 검출하는 방법 및 그 방법을 수행하는 전자 장치가 제공된다.
이미지 내의 블록에 기초하여 차선을 검출하는 방법 및 그 방법을 수행하는 전자 장치가 제공된다.
도 1은 일 예에 따른 자율 주행하는 차량을 도시한다.
도 2는 일 실시예에 따른 전자 장치를 도시한다.
도 3은 일 실시예에 따른 차선을 검출하는 방법을 도시한다.
도 4는 일 예에 따른 소실점 및 이미지에 기초하여 조감 시점 이미지를 생성하는 방법을 흐름도이다.
도 5는 일 예에 따른 조감 시점 이미지를 도시한다.
도 6은 일 예에 따른 조감 시점 이미지 내의 후보 차선을 검출하는 방법의 흐름도이다.
도 7은 일 예에 따른 복수의 블록들로 분할된 조감 시점 이미지를 도시한다.
도 8은 일 예에 따른 후보 차선을 검출하는 방법의 흐름도이다.
도 9는 일 예에 따른 후보 차선을 검출하는 방법을 도시한다.
도 10은 일 예에 따른 차선 후보의 중간점들 간의 기울기에 기초하여 후보 차선을 검출하는 방법의 흐름도이다.
도 11은 일 예에 따른 후보 차선을 갱신하는 방법의 흐름도이다.
도 12는 일 예에 따른 후보 차선 및 관심 영역을 도시한다.
도 13은 일 예에 따른 후보 차선에 대한 곡률을 계산하는 방법을 도시한다.
도 14는 일 예에 따른 추가 후보 차선을 검출하는 방법의 흐름도이다.
도 15는 일 예에 따른 추가 후보 차선을 검출하기 위해 설정된 제2 관심 영역을 도시한다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 예에 따른 자율 주행하는 차량을 도시한다.
자율 주행 차량(110)은 운전자로부터의 입력이 거의 없거나 또는 전혀 없는 상황에서도, 인지된 주행 환경에 따라서 자율 모드(autonomous mode)로 주행할 수 있다. 또한, ADAS(Advanced Driver Assistance Systems)는 운전자의 운전을 보조한다. 주행 환경은 차량에 부착 또는 설치된 하나 이상의 센서들을 통해 인지될 수 있다. 예를 들어, 하나 이상의 센서들은 카메라, 라이다(LIDAR), 레이더(RADAR) 및 음성 인식 센서들을 포함할 수 있고, 기재된 예들로 제한되는 것은 아니다. 주행 환경은 도로, 차선의 종류, 주변 차량의 유무, 근접한 차량과의 거리, 날씨, 장애물의 유무 등을 포함할 수 있고, 기재된 예들로 제한되는 것은 아니다.
차량(110)은 주행 환경을 인식하고, 주행 환경에 적합한 주행 경로를 생성한다. 주행 경로를 따라가도록 차량(110)은 차량(110)의 기계적인 요소들을 제어한다. 차량(110)은 주행 경로를 주기적으로 생성할 수 있다. 차량(110)은 주행 경로를 룰 기반 모델(rule based model)을 이용하여 생성할 수 있다. 예를 들어, 차량(110)이 반드시 지켜야 할 조건들이 미리 설정되어 있고, 차량(110)은 조건들을 만족하는 최적의 주행 경로를 생성할 수 있다. 예를 들어, 조건들 중 하나는 교통 법규를 준수하는 것일 수 있다.
일 측면에 따르면, 차량(110)은 교통 법규를 준수하기 위해 도로에 표시된 차선들(121, 122)을 검출한다. 예를 들어, 차량(110)은 카메라를 이용하여 차량(110)의 전방(120)을 촬영함으로써 이미지를 생성하고, 이미지 내의 차선(121, 122)을 검출한다. 아래에서 도 2 내지 도 15를 참조하여 이미지 내의 차선을 검출하는 방법이 상세히 설명된다.
도 2는 일 실시예에 따른 전자 장치를 도시한다.
일 측면에 따르면, 도 1을 참조하여 설명된 차량(110)에는 전자 장치(200)가 장착될 수 있다. 차량(110)은 자율 주행 차량 또는 ADAS 기능이 장착된 차량일 수 있다. 차량(110)은 검출된 차선에 기초하여 자율 주행 차량의 경로를 생성할 수 있고, 또는 ADAS 기능을 통해 운전자를 보조할 수 있다. 전자 장치(200)는 차량(110)의 주행 경로를 생성하고, 주행 경로를 따라가도록 차량(110)의 기계적인 요소들을 제어할 수 있다. 예를 들어, 전자 장치(200)는 시스템 온 칩(System-On-Chip; SOC)으로 구현될 수 있으나, 기재된 실시예로 한정되는 것은 아니다. 전자 장치(200)는 차량(110)의 ECU(electronic control unit)일 수 있다.
전자 장치(200)는 통신부(210), 프로세서(220) 및 메모리(230)를 포함한다.
통신부(210)는 프로세서(220) 및 메모리(230)와 연결된다. 통신부(210)는 전자 장치(200) 내의 회로망(circuitry)일 수 있다. 예를 들어, 통신부(210)는 내부 버스(internal bus) 및 외부 버스(external bus)를 포함할 수 있다. 다른 예로, 통신부(210)는 전자 장치(200)와 외부의 장치를 연결하는 요소일 수 있다. 통신부(210)는 인터페이스(interface)일 수 있다. 통신부(210)는 외부의 장치로부터 데이터를 수신하여, 프로세서(220) 및 메모리(230)에 데이터를 전송할 수 있다.
프로세서(220)는 통신부(210)가 수신한 데이터 및 메모리(230)의 데이터를 처리할 수 있다. "프로세서"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(220)는 메모리(예를 들어, 메모리(230))에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(220)에 의해 유발된 인스트럭션들을 실행할 수 있다.
메모리(230)는 통신부(210)가 수신한 데이터 및 프로세서(220)가 처리한 데이터를 저장할 수 있다. 예를 들어, 메모리(230)는 프로그램을 저장할 수 있다.
일 측면에 따르면, 메모리(230)는 하나 이상의 휘발성 메모리 및 비휘발성 메모리 등을 포함할 수 있다.
메모리(230)는 차선을 검출하는 명령어 세트(예를 들어, 소프트웨어)를 저장할 수 있다. 차선을 검출하는 명령어 세트는 프로세서(220)에 의해 실행될 수 있다. 프로세서(220)는 명령어 세트에 따라 차선을 검출할 수 있다.
아래에서 도 3 내지 도 14를 참조하여 통신부(210), 프로세서(220) 및 메모리(230)가 상세히 설명된다.
도 3은 일 실시예에 따른 차선을 검출하는 방법을 도시한다.
아래의 단계들(310 내지 360)은 도 2를 참조하여 전술된 전자 장치(200)에 의해 수행된다.
단계(310)에서, 전자 장치(200)는 촬영된 이미지를 수신한다. 예를 들어, 차량(110)은 차량(110)의 정면을 촬영하는 카메라를 포함할 수 있다. 전자 장치(200)는 카메라로부터 이미지를 수신할 수 있다. 이미지들이 카메라의 촬영 주기에 따라 연속적으로 생성되고, 생성된 이미지들은 전자 장치(200)로 전송될 수 있다.
일 측면에 따르면, 전자 장치(200)는 수신한 이미지를 후-처리할 수 있다. 예를 들어, 전자 장치(200)는 이미지 내의 엣지를 검출함으로써 엣지 이미지를 생성하고, 이후의 처리에서 엣지 이미지가 사용될 수 있다. 다른 예로, 전자 장치(200)는 이미지 내의 콘트라스트(contrast)를 조절함으로써 콘트라스트 이미지를 생성하고, 이후의 처리에서 콘트라스트 이미지가 사용될 수 있다.
단계(320)에서, 전자 장치(200)는 이미지 내의 소실점(vanishing point)을 계산한다. 이미지 내의 소실점의 좌표가 획득될 수 있다. 소실점을 계산하기 위해 다양한 방법들이 이용될 수 있고, 특별한 방법으로 한정되지 않는다.
단계(330)에서, 전자 장치(200)는 소실점 및 이미지에 기초하여 조감 시점 이미지(image of bird's eye view)를 생성한다. 조감 시점 이미지는 카메라가 촬영한 해당 장면을 위에서 내려다본 이미지일 수 있다. 조감 시점 이미지를 생성하는 방법에 대해, 아래에서 도 4 내지 도 5를 참조하여 상세히 설명한다.
단계(340)에서, 전자 장치(200)는 조감 시점 이미지를 복수의 블록들로 분할한다. 예를 들어, 조감 시점 이미지가 M x N 개의 블록들로 표현되도록 분할될 수 있다. 일 실시예에 따르면, 블록의 크기는 차선 검출 환경에 따라 달라질 수 있다. 예를 들어, 카메라의 화각, 수신되는 이미지의 해상도, 차선의 폭 등에 따라 정보의 정확성을 높이기 위해 블록의 크기가 작거나 커질 수 있다. 다른 일 실시예에 따르면, 블록의 크기는 수신되는 이미지의 해상도에 따라 달라질 수 있으며, 또한 차선 검출의 환경에 따라 달라질 있다. 예를 들어, 날씨가 좋지 않은 경우, 획득되는 정보의 정확성을 높이기 위해 크기가 작은 블록이 사용될 수 있다. 분할된 조감 시점 이미지에 대해 도 7을 참조하여 상세히 설명된다.
단계(350)에서, 전자 장치(200)는 복수의 블록들에 기초하여 조감 시점 이미지 내의 후보 차선을 검출한다. 후보 차선을 검출하는 방법에 대해, 아래에서 6 내지 13을 참조하여 상세히 설명된다.
단계(360)에서, 전자 장치(200)는 후보 차선에 기초하여 조감 시점 이미지 내의 차선을 검출한다. 예를 들어, 검출된 차선은 자율 주행 차량의 주행을 위한 경로를 생성하기 위해 이용될 수 있다. 다른 예로, 검출된 차선은 ADAS에 이용될 수 있다. 후보 차선에 기초하여 조감 시점 이미지 내의 차선을 검출하는 방법에 대해, 아래에서 도 10을 참조하여 상세히 설명된다.
기재된 단계들(310 내지 360)을 통해 차선을 검출하는 방법은 미리 설정된 변환 공식을 사용하여 딜레이 없이 실시간으로 조감 시점 이미지를 만들 수 있기 때문에 수신 이미지를 메모리에 저장할 필요가 없다. 또한, 실시간으로 소실점의 위치를 변경하여 조감 시점 이미지를 생성할 수 있다. 더 추가적으로, 조감 시점 이미지를 블록들을 분할하여 차선을 검출하는 방법은 노이즈 블록들을 제거한 후 차선을 검출하기 때문에 차선 검출의 정확도를 향상시킬 수 있다. 블록들 간의 연관성을 통해 직선 차선뿐만 아니라 곡선 차선도 용이하게 검출될 수 있다.
도 4는 일 예에 따른 소실점 및 이미지에 기초하여 조감 시점 이미지를 생성하는 방법을 흐름도이다.
도 3을 참조하여 전술된 단계(330)는 아래의 단계들(410 및 420)을 포함한다.
단계(410)에서, 전자 장치(200)는 이미지 중 소실점의 위치의 하단 부분을 선택한다. 이미지 중 소실점의 위치의 상단 부분이 선택에서 반드시 배제되는 것은 아니나, 하단 부분만을 선택하는 것이 메모리의 효율적인 사용 및 소요 시간의 측면에서 더 유용하다.
단계(420)에서, 전자 장치(200)는 미리 설정된 변환 공식을 이용하여 하단 부분의 각 픽셀을 이동시킴으로써 조감 시점 이미지를 생성한다. 미리 설정된 변환 공식은 아래의 [수학식 1]과 같다.
Figure pat00001
[수학식 1]에서, A는 이미지의 가로 넓이, 또는 가로의 픽셀들의 개수이고, 원래 이미지의 가로 넓이(또는 가로의 픽셀들의 개수) A가 조감 시점 이미지로 변환되었을 때 조감 시점 이미지의 하단의 가로 넓이 또는 가로의 픽셀들의 개수가 B이다. H는 이미지의 세로 높이, 또는 세로의 픽셀들의 개수이다. x2, y2는 이미지 내의 포인트 P2의 x 좌표 및 y 좌표이다. x1, y1는 이미지 내의 소실점 P1의 x 좌표 및 y 좌표이다. x5, y5는 포인트 P2에 대응하는 조감 시점 이미지 내의 포인트 P5의 x 좌표 및 y 좌표이다.
[수학식 1]과 같은 변환 공식을 사용하여 이미지를 실시간으로 조감 시점 이미지로 변환할 수 있다. 이에 따라, 이미지를 따로 저장해 놓을 필요가 없으므로 메모리의 사용량이 감소될 수 있다. 계산된 소실점의 위치를 변경함으로써 실시간으로 조감 시점 이미지가 생성될 수 있다.
도 5는 일 예에 따른 조감 시점 이미지를 도시한다.
이미지(510) 내의 소실점 P1(x1, y1)의 위치가 계산되고, 계산된 소실점 P1(x1, y1)의 위치에 기초하여 조감 시점 이미지(520)가 생성될 수 있다. x좌표를 기준으로, 이미지(510) 내의 소실점 P1(x1, y1)의 좌측에 위치한 포인트 P2(x2, y2)는 조감 시점 이미지(520)내의 포인트 P5(x5, y5)로 이동할 수 있다.
소실점의 위치는 재 계산될 수 있다. 소실점의 위치를 재 계산하는 방법에 대해, 아래에서 도 10을 참조하여 상세히 설명된다.
도 6은 일 예에 따른 조감 시점 이미지 내의 후보 차선을 검출하는 방법의 흐름도이다.
도 3을 참조하여 전술된 단계(350)는 아래의 단계들(610 내지 640)을 포함한다.
단계(610)에서, 전자 장치(200)는 조감 시점 이미지 내의 선(line)들을 검출한다. 예를 들어, 조감 시점 이미지 내에 산재되어 나타나는 선들이 검출될 수 있다. 선은 동일 또는 유사한 픽셀 값을 나타내는 픽셀들이 연속적으로 연결되어 있는 것을 의미한다.
단계(620)에서, 전자 장치(200)는 검출된 선들 중 노이즈 선(noise line)을 검출한다. 노이즈 선은 조감 시점 이미지 내에서 선으로 나타나지만 차선에 대응되지 않을 가능성이 높은 선을 의미한다. 이미지 내에 나타난 차량의 형태 또는 중앙 분리대 등이 조감 시점 이미지에서 선으로 나타날 수 있다. 예를 들어, x축을 기준으로, 미리 설정된 각도 미만으로 이어진(누워있는) 선은 노이즈로 분류될 수 있다. 다른 예로, 조감 시점 이미지의 블록 내부의 휘도 신호(Y)의 평균 값, 색차 신호(U, V)의 평균 값이 계산되고, 계산된 값 및 미리 설정된 값 간의 차이가 임계 값 이상인 경우, 상기의 블록은 노이즈 선을 포함하는 블록으로 분류될 수 있다.
단계(630)에서, 전자 장치(200)는 노이즈 선을 포함하는 블록을 조감 시점 이미지에서 제거한다. 노이즈로 검출된 블록들을 제거함으로써 차선 검출의 오류를 감소시킬 수 있다. 노이즈 블록들을 제거한 후 나머지 블록들 간의 연관성을 통해 직선 차선 또는 곡선 차선의 검출이 용이해질 수 있다.
단계(640)에서, 전자 장치(200)는 나머지 블록들에 기초하여 후보 차선(candidate lane)을 검출한다. 후보 차선을 검출하는 방법에 대해, 아래에서 도 7 내지 13을 참조하여 상세히 설명된다.
도 7은 일 예에 따른 복수의 블록들로 분할된 조감 시점 이미지를 도시한다.
조감 시점 이미지(700)는 M x N 개의 블록들로 분할된다. 조감 시점 이미지(700) 내에는 복수의 선들이 나타날 수 있다. 검출된 선들 중 노이즈 선(710)이 결정될 수 있다. 예를 들어, 노이즈 선(710)은 x축을 기준으로, 미리 설정된 각도 미만으로 이어진(누워있는) 선일 수 있다. 노이즈 선(710)을 포함하는 블록들(711 및 712)이 노이즈 블록들로 분류될 수 있다. 노이즈 블록으로 분류된 블록들(711 및 712)은 이후의 처리에서 제거될 수 있다.
도 8은 일 예에 따른 후보 차선을 검출하는 방법의 흐름도이다.
도 6을 참조하여 전술된 단계(640)는 아래의 단계들(810 및 820)을 포함한다.
단계(810)에서, 전자 장치(200)는 조감 시점 이미지의 하단에서 시작하는 시작 선(starting line)을 검출한다. 예를 들어, 조감 시점 이미지의 하단은 조감 시점 이미지의 가장 아래에 위치한 열(row)일 수 있다. 다른 예로, 조감 시점 이미지의 하단은 선이 존재하는 열들 중 가장 아래에 위치한 열일 수 있다.
단계(820)에서, 전자 장치(200)는 시작 선에 기초하여 후보 차선을 검출한다. 시작 선에 기초하여 후보 차선을 검출하는 방법에 대해, 아래에서 도 9를 참조하여 상세히 설명된다.
도 9는 일 예에 따른 후보 차선을 검출하는 방법을 도시한다.
전자 장치(200)는 조감 시점 이미지 내의 복수의 블록들 중 제1 블록(900)의 하단에서 시작하는 시작 포인트(901)를 검출한다. 제1 블록(900) 내의 포인트의 위치는 픽셀의 좌표일 수 있다. 예를 들어, 시작 포인트(901)와 연결된 포인트가 미리 설정된 개수 이상인 경우에 시작 포인트(901)가 유효하게 검출된다. 시작 포인트(901)와 연결된 포인트가 미리 설정된 개수 미만인 경우에 시작 포인트(901)가 유효하지 않을 것으로 취급된다.
유효한 시작 포인트(901)가 검출된 경우, 시작 포인트(901)와 인접한 포인트(902)가 연속적으로 검출된다. 포인트(903)와 인접한 포인트가 없고, 포인트(903) 및 포인트(911) 사이의 픽셀들(910)이 나타내는 거리가 미리 설정된 거리 이내인 경우, 픽셀(911)이 포인트(903)와 동일한 선(예를 들어, 시작 선) 내에 포함되는 것으로 간주될 수 있다. 즉, 시작 선의 외곽 픽셀로부터 일정 거리 내에 존재하는 선을 시작 선에 포함시킬 수 있다. 포인트들(901, 902, 903, 911)을 포함하는 시작 선이 후보 차선으로서 검출될 수 있다.
포인트(903) 및 포인트(911) 사이의 픽셀들(910)이 나타내는 거리가 미리 설정된 거리 이내인 경우인 경우에도, 포인트들(901 및 903) 간의 방향 벡터와 포인트들(903 및 911) 간의 방향 벡터가 동일 또는 유사하지 않는 경우(즉, 벡터들 간에 차이가 큰 경우)에는 포인트(911)는 포인트(903)와 동일한 선 내에 포함되지 않는다. 벡터들 간에 차이가 큰 경우에는 포인트들(903 및 911)이 서로 다른 선들에 각각 포함될 가능성이 크기 때문이다. 상기의 경우에는 포인트들(901, 902, 903)을 포함하는 시작 선이 후보 차선으로서 검출될 수 있다.
도 10은 일 예에 따른 차선 후보의 중간점들 간의 기울기에 기초하여 후보 차선을 검출하는 방법의 흐름도이다.
전자 장치(200)는 시작 선이 검출된 경우, 시작 선과 연결되는 차선을 포함할 수 있는 후보 블록을 결정한다. 예를 들어, 후보 블록을 시작 선을 포함하는 제1 블록(900)과 인접한 블록들 중 하나일 수 있다. 제1 블록(900)에 포함된 시작 선이 끝나는 픽셀의 좌표에 기초하여 후보 블록이 결정될 수 있다. 상기와 같은 방법을 연속적으로 이용하여 시작 선이 연장될 수 있다. 연장된 시작 선은 차선의 일부 일 수 있다.
일 측면에 따르면, 시작 선의 일부를 포함하는 블록의 중간점에 기초하여 후보 차선이 검출될 수 있다. 제1 블록에 포함된 차선의 중간점(P0), 제2 블록에 포함된 차선의 중간점(P1), 제3 블록에 포함된 차선의 중간점(P2), 제4 블록에 포함된 차선의 중간점(P3), 제5 블록에 포함된 차선의 중간점(P4), 제6 블록에 포함된 차선의 중간점(P5), 제7 블록에 포함된 차선의 중간점(P6), 제8 블록에 포함된 차선의 중간점(P7), 및 제9 블록에 포함된 차선의 중간점(P8)이 결정될 수 있다.
예를 들어, 중간점(P0) 및 중간점(P1) 간의 기울기, 중간점(P1) 및 중간점(P2) 간의 기울기, 중간점(P2) 및 중간점(P3) 간의 기울기, 중간점(P3) 및 중간점(P4) 간의 기울기, 중간점(P4) 및 중간점(P5) 간의 기울기, 중간점(P5) 및 중간점(P6) 간의 기울기, 중간점(P6) 및 중간점(P7) 간의 기울기, 중간점(P7) 및 중간점(P8) 간의 기울기, 중간점(P8) 및 중간점(P9) 간의 기울기를 이용하여 후보 차선이 검출될 수 있다. 상기의 기울기들의 변화 경향성을 이용하여 다음 차선이 위치할 위치를 예상하고, 예상된 위치에 기초하여 후보 차선을 검출할 수 있다.
다른 예로, 중간점(P0) 및 중간점(P1) 간의 기울기, 중간점(P0) 및 중간점(P2) 간의 기울기, 중간점(P0) 및 중간점(P3) 간의 기울기, 중간점(P0) 및 중간점(P4) 간의 기울기, 중간점(P0) 및 중간점(P5) 간의 기울기, 중간점(P0) 및 중간점(P6) 간의 기울기, 중간점(P0) 및 중간점(P7) 간의 기울기, 중간점(P0) 및 중간점(P8) 간의 기울기, 중간점(P0) 및 중간점(P9) 간의 기울기를 이용하여 후보 차선이 검출될 수 있다. 상기의 기울기들의 변화 경향성을 이용하여 다음 차선이 위치할 위치를 예상하고, 예상된 위치에 기초하여 후보 차선을 검출할 수 있다
다른 일 측면에 따르면, 전자 장치(200)는 이전 이미지에 대해 검출된 이전 차선에 기초하여 후보 차선을 검출할 수 있다. 예를 들어, 전자 장치(200)는 이전 차선과 시작 선과의 관계를 분석함으로써 시작 선과 연관된 후보 차선을 검출할 수 있다.
전자 장치(200)는 복수의 후보 차선을 검출하는 방법들을 조합하여 최종적인 후보 차선을 검출할 수 있고, 후보 차선을 검출하는 방법은 기재된 어느 하나의 방법으로 한정되지 않는다.
후보 차선이 검출된 경우, 후보 차선의 기울기에 기초하여 소실점이 재 계산될 수 있고, 재 계산된 소실점에 기초하여 조감 시점 이미지가 다시 생성되며, 다시 생성된 조감 시점 이미지에 기초하여 이미지 내의 후보 차선이 재 검출될 수 있다. 이전의 후보 차선과 재 검출된 후보 차선의 차이가 미리 설정된 값 이하인 경우, 재 검출된 후보 차선이 최종적인 차선으로 검출될 수 있다.
도 11은 일 예에 따른 후보 차선을 갱신하는 방법의 흐름도이다.
도 8을 참조하여 전술된 단계(820)는 아래의 단계들(1110 및 1120)을 포함한다.
단계(1110)에서, 전자 장치(200)는 후보 차선의 주변 영역을 관심 영역으로 설정한다. 예를 들어, x축을 기준으로, 후보 차선으로부터 일정 거리 내의 영역이 관심 영역으로 설정될 수 있다. 관심 영역은 후술될 제2 관심 영역과의 용어 상의 차이를 나타내기 위해 제1 관심 영역과 동일한 의미로 사용될 수 있다.
단계(1120)에서, 전자 장치(200)는 관심 영역에 기초하여 후보 차선을 갱신한다. 예를 들어, 기존의 후보 차선과 직접적으로 연결되지는 않았으나, 동일 또는 유사한 방향 벡터를 갖는 선을 후보 차선에 포함시킬 수 있다.
도 12는 일 예에 따른 후보 차선 및 관심 영역을 도시한다.
후보 차선(1210)에 기초하여 조감 시점 이미지(1200) 내에 관심 영역(1220)이 설정될 수 있다. 예를 들어, 관심 영역(1220)는 후보 차선(1210)을 좌측 및 우측으로 평행 이동시킴으로써 나타나는 영역일 수 있다.
도 13은 일 예에 따른 후보 차선에 대한 곡률을 계산하는 방법을 도시한다.
차선들은 유사한 곡률을 갖고 있기 때문에, 후보 차선(1310)의 곡률을 이용하여 후보 차선(1310)의 연장 차선 또는 다른 후보 차선이 검출될 수 있다.
후보 차선(1310)이 원의 일부로 가정된 경우, 이를 이용하여 조감 시점 이미지(1300) 내의 후보 차선(1310)의 곡률이 계산될 수 있다. 후보 차선(1310)의 시작 포인트(1311)와 끝 포인트(1312)를 잇는 선(1313)은 원의 현이 된다. 선(1313)의 1/2 지점에서 후보 차선(1310)과 수직으로 이어지는 선(1320)은 원의 중심을 지난다. 피타고라스의 정리를 이용하면 원의 중심 위치가 계산될 수 있다. 계산된 원의 중심 위치에 기초하여 원을 재구성하면 원의 곡률이 계산될 수 있다.
일 측면에 따르면, 이전 이미지에 기초하여 계산된 이전 곡률에 기초하여 현재 이미지에 대해 계산된 곡률이 보정될 수 있다. 이전 이미지와 현재 이미지 간의 시간 차이가 크지 않은 경우 이전 곡률과 현재 곡률 간의 차이도 크지 않을 수 있다. 급격하게 곡률이 변화하는 것을 방지하기 위해 가중치를 이용하여 현재 곡률이 보정될 수 있다. 예를 들어, 최신의 곡률일수록 높은 가중치가 할당될 수 있다.
도 14는 일 예에 따른 추가 후보 차선을 검출하는 방법의 흐름도이다.
일 측면에 따르면, 도 3을 참조하여 전술된 단계(350)는 아래의 단계들(1410 내지 1430)을 더 포함할 수 있다. 예를 들어, 단계(1410)는 도 6을 참조하여 전술된 단계(640)가 수행된 후 수행될 수 있다.
단계(1410)에서, 전자 장치(200)는 후보 차선에 대한 곡률을 계산한다.
단계(1420)에서, 전자 장치(200)는 계산된 곡률에 기초하여 조감 시점 이미지 내에 제2 관심 영역을 설정한다. 제2 관심 영역에 대해, 아래에서 도 15를 참조하여 상세히 설명된다.
단계(1430)에서, 전자 장치(200)는 제2 관심 영역에 기초하여 추가 후보 차선을 검출한다. 예를 들어, 추가 후보 차선이 후보 차선의 상단에서 검출되는 경우에는 후보 차선 및 추가 후보 차선은 동일한 차선으로 결정될 수 있다. 다른 예로, 추가 후보 차선이 후보 차선의 측면에서 검출되는 경우에는 후보 차선 및 추가 후보 차선은 서로 다른 차선들로 결정될 수 있다.
다른 일 측면에 따르면, 전자 장치(200)는 검출된 후보 차선 및 계산된 곡률에 기초하여 차선 모델을 선택할 수 있다. 후보 차선 및 선택된 차선 모델을 사용하여 추가 후보 차선이 검출될 수 있다.
도 15는 일 예에 따른 추가 후보 차선을 검출하기 위해 설정된 제2 관심 영역을 도시한다.
일 측면에 따르면, 제2 관심 영역(1510)이 계산된 곡률을 가지면서 후보 차선(1310)의 상단에 위치하도록 설정될 수 있다. 제2 관심 영역(1510) 내에서 추가 후보 차선이 검출될 수 있다. 제2 관심 영역(1510) 내에서 추가 후보 차선이 검출된 경우, 추가 후보 차선 및 후보 차선(1310)은 동일한 차선을 구성하는 것으로 결정될 수 있다.
다른 예로, 차량의 속도에 기초하여 제2 관심 영역(1510)의 곡률을 조정하고, 곡률이 조정된 제2 관심 영역(1510)이 설정될 수 있다. 차량의 속도가 낮을수록 곡률 변화 크기가 작을 수 있다.
도시되지는 않았으나, 다른 일 측면에 따르면, 제2 관심 영역이 계산된 곡률을 가지면서 후보 차선(1310)을 감싸도록 설정될 수 있다. 제2 관심 영역 내에서 추가 후보 차선이 검출될 수 있다. 제2 관심 영역 내에서 추가 후보 차선이 검출된 경우, 추가 후보 차선 및 후보 차선(1310)은 서로 다른 차선을 구성하는 것으로 결정될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
200: 전자 장치
210: 통신부
220: 프로세서
230: 메모리

Claims (19)

  1. 이미지 내의 차선 검출 방법에 있어서,
    카메라에 의해 촬영된 이미지를 수신하는 단계;
    상기 이미지 내의 소실점(vanishing point)을 계산하는 단계;
    상기 소실점 및 상기 이미지에 기초하여 조감 시점 이미지를 생성하는 단계;
    상기 조감 시점 이미지를 복수의 블록들로 분할하는 단계;
    상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계; 및
    상기 후보 차선에 기초하여 상기 조감 시점 이미지 내의 차선을 검출하는 단계
    를 포함하는,
    차선 검출 방법.
  2. 제1항에 있어서,
    상기 조감 시점 이미지를 생성하는 단계는,
    상기 이미지 중 상기 소실점의 위치의 하단 부분을 선택하는 단계; 및
    미리 설정된 변환 공식을 이용하여 상기 하단 부분의 각 픽셀을 이동시킴으로써 상기 조감 시점 이미지를 생성하는 단계
    를 포함하는,
    차선 검출 방법.
  3. 제1항에 있어서,
    상기 후보 차선을 검출하는 단계는,
    상기 조감 시점 이미지 내의 선(line)들을 검출하는 단계;
    상기 선들 중 노이즈 선을 검출하는 단계;
    상기 검출된 노이즈 선을 포함하는 블록을 제거하는 단계; 및
    나머지 블록들에 기초하여 상기 후보 차선을 검출하는 단계
    를 포함하는,
    차선 검출 방법.
  4. 제3항에 있어서,
    상기 나머지 블록들에 기초하여 후보 차선을 검출하는 단계는,
    상기 조감 시점 이미지의 하단에서 시작하는 시작 선을 검출하는 단계; 및
    상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계
    를 포함하는,
    차선 검출 방법.
  5. 제4항에 있어서,
    상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는,
    상기 시작 선의 외곽 픽셀로부터 일정 거리 내에 존재하는 선을 상기 시작 선에 포함시킴으로써 상기 후보 차선을 검출하는 단계
    를 포함하는,
    차선 검출 방법.
  6. 제5항에 있어서,
    상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는,
    상기 후보 차선의 주변 영역을 제1 관심 영역으로 설정하는 단계; 및
    상기 관심 영역에 기초하여 상기 후보 차선을 갱신하는 단계
    를 더 포함하는,
    차선 검출 방법.
  7. 제1항에 있어서,
    상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계는,
    상기 후보 차선에 대한 곡률을 계산하는 단계; 및
    상기 곡률에 기초하여 추가 후보 차선을 검출하는 단계
    를 더 포함하는,
    차선 검출 방법.
  8. 제7항에 있어서,
    상기 후보 차선의 곡률을 계산하는 단계는,
    이전 이미지에 기초하여 계산된 이전 곡률에 기초하여 상기 후보 차선의 곡률을 계산하는 단계
    를 포함하는,
    차선 검출 방법.
  9. 제7항에 있어서,
    상기 차선의 곡률에 기초하여 상기 조감 시점 이미지 내의 차선을 검출하는 단계는,
    상기 곡률에 기초하여 상기 조감 시점 이미지 내에 제2 관심 영역을 설정하는 단계; 및
    상기 제2 관심 영역에 기초하여 상기 추가 후보 차선을 검출하는 단계
    를 포함하는,
    차선 검출 방법.
  10. 제1항 내지 제9항 중 어느 한 항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체,
  11. 이미지 내의 차선을 검출하는 방법을 수행하는, 전자 장치는,
    이미지 내의 차선을 검출하는 프로그램이 기록된 메모리; 및
    상기 프로그램을 수행하는 프로세서
    를 포함하고,
    상기 프로그램은,
    카메라에 의해 촬영된 이미지를 수신하는 단계;
    상기 이미지 내의 소실점(vanishing point)을 검출하는 단계;
    상기 소실점 및 상기 이미지에 기초하여 조감 시점 이미지를 생성하는 단계;
    상기 조감 시점 이미지를 복수의 블록들로 분할하는 단계;
    상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계; 및
    상기 후보 차선에 기초하여 상기 조감 시점 이미지 내의 차선을 검출하는 단계
    를 수행하는,
    전자 장치.
  12. 제11항에 있어서,
    상기 조감 시점 이미지를 생성하는 단계는,
    상기 이미지 중 상기 소실점의 위치의 하단 부분을 선택하는 단계; 및
    미리 설정된 변환 공식을 이용하여 상기 하단 부분의 각 픽셀을 이동시킴으로써 상기 조감 시점 이미지를 생성하는 단계
    를 포함하는,
    전자 장치.
  13. 제11항에 있어서,
    상기 후보 차선을 검출하는 단계는,
    상기 조감 시점 이미지 내의 선(line)들을 검출하는 단계;
    상기 선들 중 노이즈 선을 검출하는 단계;
    상기 검출된 노이즈 선을 포함하는 블록을 제거하는 단계; 및
    나머지 블록들에 기초하여 상기 후보 차선을 검출하는 단계
    를 포함하는,
    전자 장치.
  14. 제13항에 있어서,
    상기 나머지 블록들에 기초하여 후보 차선을 검출하는 단계는,
    상기 조감 시점 이미지의 하단에서 시작하는 시작 선을 검출하는 단계; 및
    상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계
    를 포함하는,
    전자 장치.
  15. 제14항에 있어서,
    상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는,
    상기 시작 선의 외곽 픽셀로부터 일정 거리 내에 존재하는 선을 상기 시작 선에 포함시킴으로써 상기 후보 차선을 검출하는 단계
    를 포함하는,
    전자 장치.
  16. 제15항에 있어서,
    상기 시작 선에 기초하여 상기 후보 차선을 검출하는 단계는,
    상기 후보 차선의 주변 영역을 관심 영역으로 설정하는 단계; 및
    상기 관심 영역에 기초하여 상기 후보 차선을 갱신하는 단계
    를 더 포함하는,
    전자 장치.
  17. 제11항에 있어서,
    상기 복수의 블록들에 기초하여 상기 조감 시점 이미지 내의 후보 차선을 검출하는 단계는,
    상기 후보 차선에 대한 곡률을 계산하는 단계;
    상기 곡률에 기초하여 상기 조감 시점 이미지 내에 제2 관심 영역을 설정하는 단계; 및
    상기 제2 관심 영역에 기초하여 추가 후보 차선을 검출하는 단계
    를 더 포함하는,
    전자 장치.
  18. 제11항에 있어서,
    상기 전자 장치는 자율 주행 차량(autonomous vehicle)에 포함되고,
    상기 자율 주행 차량은 상기 차선에 기초하여 상기 자율 주행 차량의 경로를 생성하는,
    전자 장치.
  19. 제18항에 있어서,
    상기 전자 장치는 상기 자율 주행 차량의 ECU(electronic control unit)인,
    전자 장치.
KR1020180092209A 2018-08-08 2018-08-08 차선 검출 방법 및 그 방법을 수행하는 전자 장치 KR102119678B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180092209A KR102119678B1 (ko) 2018-08-08 2018-08-08 차선 검출 방법 및 그 방법을 수행하는 전자 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180092209A KR102119678B1 (ko) 2018-08-08 2018-08-08 차선 검출 방법 및 그 방법을 수행하는 전자 장치

Publications (2)

Publication Number Publication Date
KR20200019283A true KR20200019283A (ko) 2020-02-24
KR102119678B1 KR102119678B1 (ko) 2020-06-08

Family

ID=69637379

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180092209A KR102119678B1 (ko) 2018-08-08 2018-08-08 차선 검출 방법 및 그 방법을 수행하는 전자 장치

Country Status (1)

Country Link
KR (1) KR102119678B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140024681A (ko) * 2012-08-20 2014-03-03 하이브모션 주식회사 차선 인식 장치 및 그 방법
JP2014142866A (ja) * 2013-01-25 2014-08-07 Mega Chips Corp 車線識別装置および車線識別方法
KR20140148171A (ko) * 2013-06-21 2014-12-31 가천대학교 산학협력단 지능형 차량의 차선 검출방법
KR101583797B1 (ko) * 2015-03-04 2016-01-08 군산대학교산학협력단 탑뷰 이미지 변환을 적용한 차선 인식 장치 및 방법
KR20170016143A (ko) * 2015-08-03 2017-02-13 박대한 광계카메라를 이용한 차선 인식 시스템 및 방법
KR20180010487A (ko) * 2016-07-21 2018-01-31 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법
KR20180071552A (ko) * 2016-12-20 2018-06-28 전자부품연구원 카메라 기반 도로 곡률 추정을 위한 차선 검출 방법 및 시스템

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140024681A (ko) * 2012-08-20 2014-03-03 하이브모션 주식회사 차선 인식 장치 및 그 방법
JP2014142866A (ja) * 2013-01-25 2014-08-07 Mega Chips Corp 車線識別装置および車線識別方法
KR20140148171A (ko) * 2013-06-21 2014-12-31 가천대학교 산학협력단 지능형 차량의 차선 검출방법
KR101583797B1 (ko) * 2015-03-04 2016-01-08 군산대학교산학협력단 탑뷰 이미지 변환을 적용한 차선 인식 장치 및 방법
KR20170016143A (ko) * 2015-08-03 2017-02-13 박대한 광계카메라를 이용한 차선 인식 시스템 및 방법
KR20180010487A (ko) * 2016-07-21 2018-01-31 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법
KR20180071552A (ko) * 2016-12-20 2018-06-28 전자부품연구원 카메라 기반 도로 곡률 추정을 위한 차선 검출 방법 및 시스템

Also Published As

Publication number Publication date
KR102119678B1 (ko) 2020-06-08

Similar Documents

Publication Publication Date Title
JP4801821B2 (ja) 道路形状推定装置
JP6536064B2 (ja) 走行軌跡選定装置、走行軌跡選定方法
US20150367781A1 (en) Lane boundary estimation device and lane boundary estimation method
CN111178122B (zh) 道路场景中三维车道的检测及平面表示
US11341754B2 (en) Method and apparatus for auto calibration
KR102697448B1 (ko) 자율 주행 경로 생성 방법 및 그 장치
JP2019096072A (ja) 物体検出装置、物体検出方法およびプログラム
KR20200036335A (ko) 차로를 결정하는 방법 및 장치
KR102667741B1 (ko) 3차원 객체를 표시하는 방법 및 장치
KR102633140B1 (ko) 주행 정보를 결정하는 방법 및 장치
US11157753B2 (en) Road line detection device and road line detection method
KR102564856B1 (ko) 차선을 검출하는 방법 및 장치
CN108475471B (zh) 车辆判定装置、车辆判定方法和计算机可读的记录介质
JP2020095622A (ja) 画像処理装置および画像処理方法
JP7095559B2 (ja) 区画線検出装置及び区画線検出方法
JP6086424B2 (ja) 車載画像処理装置
CN113297881A (zh) 一种目标检测方法及相关装置
JP2016218539A (ja) 車両の走路認識装置
US20200193184A1 (en) Image processing device and image processing method
JP2014106739A (ja) 車載画像処理装置
JP6620175B2 (ja) 距離算出装置及び車両制御装置
JP6683245B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム、物体認識装置及び機器制御システム
CN111824163A (zh) 用于确定道路的曲线的方法和设备
KR102119678B1 (ko) 차선 검출 방법 및 그 방법을 수행하는 전자 장치
CN113705272A (zh) 可行驶区域检测方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant