KR102638116B1 - 주차를 위한 차량 제어 방법 및 장치 - Google Patents

주차를 위한 차량 제어 방법 및 장치 Download PDF

Info

Publication number
KR102638116B1
KR102638116B1 KR1020210101399A KR20210101399A KR102638116B1 KR 102638116 B1 KR102638116 B1 KR 102638116B1 KR 1020210101399 A KR1020210101399 A KR 1020210101399A KR 20210101399 A KR20210101399 A KR 20210101399A KR 102638116 B1 KR102638116 B1 KR 102638116B1
Authority
KR
South Korea
Prior art keywords
vehicle
map
movement
generating
route
Prior art date
Application number
KR1020210101399A
Other languages
English (en)
Other versions
KR20230019643A (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 KR1020210101399A priority Critical patent/KR102638116B1/ko
Publication of KR20230019643A publication Critical patent/KR20230019643A/ko
Application granted granted Critical
Publication of KR102638116B1 publication Critical patent/KR102638116B1/ko

Links

Images

Classifications

    • 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/06Automatic manoeuvring for parking
    • 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/10Path keeping
    • 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/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/181Preparing for stopping
    • 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
    • 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/10Estimation 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 vehicle motion
    • 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
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • 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
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • 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
    • 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
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/04Vehicle stop

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Traffic Control Systems (AREA)

Abstract

주차를 위한 차량을 제어하기 위해 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하고, 복수의 프레임들에 기초하여 타겟 영역에 대한 맵을 생성하고, 차량의 운전자가 차량을 주행시킨 참조 경로를 맵 상에 저장하고, 카메라를 이용하여 현재 시각에서의 차량의 현재 위치를 맵 상에서 결정하고, 현재 위치 및 참조 경로에 기초하여 차량의 움직임을 제어할 수 있다.

Description

주차를 위한 차량 제어 방법 및 장치{APPRATUS AND METHOD FOR CONTROLLING VEHICLE FOR PARKING}
아래의 실시예들은, 주차를 하기 위해 차량을 제어하는 기술에 관한 것이다.
차량의 자율 주행의 레벨이 높아짐에 따라 차량이 자동으로 주차를 수행하는 기술들이 개발되고 있다. 예를 들어, 차량 주변에 설치된 기반 시설을 이용하여 차량이 주차 공간에 대한 정밀 맵을 수신하고, 정밀 맵에 기초하여 차량이 자율 주차를 수행하는 방식이 있을 수 있다. 이 방식은 차량 또는 운전자가 개입하여 정밀 맵을 생성하는 것은 아니며, 일반적으로 주차 공간을 운영하는 자에 의해 생성 및 제공될 수 있다. 이러한 방식은 정밀 맵을 사전에 생성해야 하는 과정이 필요하고, 정밀 맵 상의 정보에 운영자가 직접 라벨링 하는 과정이 필요하며, 주차 공간을 이용하고자 하는 차량이 정밀 맵을 수신하는 과정이 필요하다.
상기의 방식을 이용하기 위해, 차량에 정밀 맵을 제공하기 위한 기반 시설(infrastructure)이 필수적으로 요구된다. 즉, 정밀 맵을 이용하는 자율 주차 방식은 많은 비용이 요구된다.
일 실시예는 복수의 프레임들에 기초하여 사전에 생성된 맵에 기초하여 차량을 제어하는 방법 및 장치를 제공할 수 있다.
다른 일 실시예는 현재 시각에 대한 프레임에 기초하여 생성된 경로에 기초하여 차량을 제어하는 방법 및 장치를 제공할 수 있다.
일 실시예에 따른, 전자 장치에 의해 수행되는, 차량 제어 방법은, 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계, 상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계, 상기 차량의 운전자가 상기 차량을 주행시킨 참조 경로를 상기 맵 상에 저장하는 단계, 상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계, 및 상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 포함한다.
상기 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계는, 제1 시각에 대한 복수의 주변 영상들을 생성하는 단계, 및 상기 복수의 주변 영상들에 기초하여 상기 제1 시각에 대한 제1 조감 시점 영상을 생성하는 단계를 포함하고, 상기 복수의 프레임들은 상기 제1 조감 시점 영상을 포함할 수 있다.
상기 맵을 생성하는 단계는, 상기 복수의 프레임들의 각각으로부터 특징 포인트(feature point)들을 추출하는 단계, 및 상기 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 상기 맵을 생성하는 단계를 포함할 수 있다.
상기 차량의 운전자가 상기 차량을 주행시킨 참조 경로를 상기 맵 상에 저장하는 단계는, 상기 복수의 프레임들 중 제1 시각에 대한 제1 프레임 및 제2 시각에 대한 제2 프레임 간의 변화량이 미리 설정된 임계치를 초과하는지 여부를 결정하는 단계 - 상기 제1 프레임은 제1 키 프레임이고, 상기 제1 키 프레임에서의 상기 차량의 위치는 제1 위치임 -, 상기 변화량이 상기 임계치를 초과하는 경우 상기 제2 프레임을 제2 키 프레임으로 결정하는 단계, 및 상기 제2 프레임에서의 상기 차량의 제2 위치를 저장하는 단계를 포함하고, 상기 참조 경로는 상기 제1 위치 및 상기 제2 위치를 포함할 수 있다.
상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계는, 상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 타겟 경로를 생성하는 단계, 및 상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계는, 상기 타겟 경로로 상기 차량의 주행이 가능한 상황인지 여부를 결정하는 단계, 상기 타겟 경로로 상기 차량의 주행이 불가능한 상황인 경우, 상기 차량의 움직임을 정지시키는 단계, 미리 설정된 시간 동안 상기 주행이 불가능한 상황이 해소되었는지 여부를 결정하는 단계, 및 상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계는,
상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소되지 않는 경우, 상기 차량 주변에 주행 가능한 길을 식별하는 단계, 상기 식별된 길에 기초하여 상기 차량의 주행이 불가능한 상황을 회피하는 수정된 타겟 경로를 생성하는 단계, 및 상기 수정된 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계를 더 포함할 수 있다.
상기 참조 경로는 시작 위치 및 종료 위치를 포함하고, 상기 차량을 주차하기 위한 경로일 수 있다.
상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계는, 상기 차량의 위치가 상기 종료 위치의 주변인 경우, 주차 공간(parking slot)을 검출하는 단계, 및 상기 주차 공간 내에 상기 차량이 위치하도록 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 전자 장치는, 자율 주행 차량 또는 ADAS(Advanced Driver Assistance Systems)을 지원하는 차량에 탑재될 수 있다.
다른 일 측면에 따른, 차량을 제어하는 전자 장치는, 차량을 제어하는 프로그램을 수행하는 프로세서, 및 상기 프로그램을 저장하는 메모리를 포함하고, 상기 프로그램은, 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계, 상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계, 상기 차량의 운전자가 상기 차량을 주행시킨 참조 경로를 상기 맵 상에 저장하는 단계, 상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계, 및 상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 수행할 수 있다.
상기 전자 장치는, 상기 복수의 프레임들의 각각을 생성하기 위한 복수의 카메라들을 더 포함할 수 있다.
또 다른 일 측면에 따른, 전자 장치에 의해 수행되는, 차량 제어 방법은, 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계, 상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계 - 상기 타겟 영역에 대한 입구 위치 또는 출구 위치가 상기 맵 상에 지정됨 -, 상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계, 상기 현재 위치에 기초하여 상기 타겟 영역에 대한 탐험 경로를 생성하는 단계, 및 상기 탐험 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 포함한다.
상기 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계는, 제1 시각에 대한 복수의 주변 영상들을 생성하는 단계, 및 상기 복수의 주변 영상들에 기초하여 상기 제1 시각에 대한 제1 조감 시점 영상을 생성하는 단계를 포함하고, 상기 복수의 프레임들은 상기 제1 조감 시점 영상을 포함할 수 있다.
상기 맵을 생성하는 단계는, 상기 복수의 프레임들의 각각으로부터 특징 포인트(feature point)들을 추출하는 단계, 및 상기 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 상기 맵을 생성하는 단계를 포함할 수 있다.
상기 현재 위치에 기초하여 상기 타겟 영역에 대한 탐험 경로를 생성하는 단계는, 상기 타겟 영역 내의 하나 이상의 길들을 검출하는 단계, 및 상기 하나 이상의 길들에 기초하여 상기 탐험 경로를 생성하는 단계를 포함할 수 있다.
상기 탐험 경로가 폐루프가 되도록 상기 탐험 경로가 생성될 수 있다.
상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는, 상기 차량이 상기 탐험 경로로 주행하는 동안 주차 공간(parking slot)을 검출하는 단계, 및 타겟 주차 공간이 검출된 경우, 상기 타겟 주차 공간 내에 상기 차량이 위치하도록 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는, 검출된 주차 공간이 복수인 경우, 상기 차량의 현재 위치에 기초하여 복수의 주차 공간들 중 상기 타겟 주차 공간을 결정하는 단계를 더 포함할 수 있다.
상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는, 상기 탐험 경로로 상기 차량의 주행이 가능한 상황인지 여부를 결정하는 단계, 상기 타겟 경로로 상기 차량의 주행이 불가능한 상황인 경우, 상기 상황이 회피 경로의 생성이 요구되는 상황인지 여부를 결정하는 단계, 상기 상황이 회피 경로의 생성이 요구되는 상황이 아닌 경우, 상기 차량의 움직임을 정지시키는 단계, 미리 설정된 시간 동안 상기 주행이 불가능한 상황이 해소되었는지 여부를 결정하는 단계, 및 상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 상기 탐험 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는, 상기 상황이 회피 경로의 생성이 요구되는 상황인 경우, 상기 차량 주변에 주행 가능한 길을 식별하는 단계, 상기 식별된 길에 기초하여 상기 차량의 주행이 불가능한 상황을 회피하는 수정된 탐험 경로를 생성하는 단계, 및 상기 수정된 탐험 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계를 더 포함할 수 있다.
상기 차량 제어 방법은, 상기 차량이 주차된 상태에서 출차 명령을 수신하는 단계, 상기 출차 명령이 수신된 경우, 상기 맵에 기초하여 상기 차량의 주차 위치로부터 상기 입구 위치 또는 상기 출구 위치로의 출차 경로를 생성하는 단계, 및 상기 출자 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 더 포함할 수 있다.
상기 전자 장치는, 자율 주행 차량 또는 ADAS(Advanced Driver Assistance Systems)을 지원하는 차량에 탑재될 수 있다.
또 다른 일 측면에 따른, 차량을 제어하는 전자 장치는, 차량을 제어하는 프로그램을 수행하는 프로세서, 및 상기 프로그램을 저장하는 메모리를 포함하고, 상기 프로그램은, 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계, 상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계 - 상기 타겟 영역에 대한 입구 위치 및 출구 위치가 상기 맵 상에 지정됨 -, 상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계, 상기 현재 위치에 기초하여 상기 타겟 영역에 대한 탐험 경로를 생성하는 단계, 및 상기 탐험 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 수행한다.
상기 전자 장치는 상기 복수의 프레임들의 각각을 생성하기 위한 복수의 카메라들을 더 포함할 수 있다.
또 다른 일 측면에 따른, 전자 장치에 의해 수행되는, 차량 제어 방법은, 차량에 설치된 적어도 하나의 카메라를 이용하여 현재 시각에 대한 프레임을 생성하는 단계, 상기 프레임 내의 주차 공간(parking slot)을 검출하는 단계, 상기 프레임 내에 주차 공간이 검출되지 않은 경우, 상기 프레임에 기초하여 제1 경로를 생성하는 단계, 및 상기 제1 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 차량 제어 방법은, 상기 프레임 내의 타겟 주차 공간이 검출된 경우, 상기 프레임에 기초하여 상기 타겟 주차 공간으로의 주차 경로를 생성하는 단계, 및 상기 주차 경로에 기초하여 상기 타겟 주차 공간 내에 상기 차량이 위치하도록 상기 차량의 움직임을 제어하는 단계를 더 포함할 수 있다.
상기 제1 경로에 기초하여 차량의 움직임을 제어하는 단계는, 상기 차량이 상기 제1 경로로 주행하는 동안 주차 공간을 검출하는 단계, 및 타겟 주차 공간이 검출된 경우, 상기 타겟 주차 공간 내에 상기 차량이 위치하도록 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 제1 경로에 기초하여 차량의 움직임을 제어하는 단계는, 검출된 주차 공간이 복수인 경우, 상기 차량의 현재 위치에 기초하여 복수의 주차 공간들 중 상기 타겟 주차 공간을 결정하는 단계를 더 포함할 수 있다.
상기 제1 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계는, 상기 제1 경로로 상기 차량의 주행이 가능한 상황인지 여부를 결정하는 단계, 상기 제1 경로로 상기 차량의 주행이 불가능한 상황인 경우, 상기 상황이 회피 경로의 생성이 요구되는 상황인지 여부를 결정하는 단계, 상기 상황이 회피 경로의 생성이 요구되는 상황이 아닌 경우, 상기 차량의 움직임을 정지시키는 단계, 미리 설정된 시간 동안 상기 주행이 불가능한 상황이 해소되었는지 여부를 결정하는 단계, 및 상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 상기 제1 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계를 포함할 수 있다.
상기 제1 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계는, 상기 상황이 회피 경로의 생성이 요구되는 상황인 경우, 상기 차량 주변에 주행 가능한 길을 식별하는 단계, 상기 식별된 길에 기초하여 상기 차량의 주행이 불가능한 상황을 회피하는 임시 경로를 생성하는 단계, 및 상기 임시 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계를 더 포함할 수 있다.
상기 전자 장치는, 자율 주행 차량 또는 ADAS(Advanced Driver Assistance Systems)을 지원하는 차량에 탑재될 수 있다.
또 다른 일 측면에 따른, 차량을 제어하는 전자 장치는, 차량을 제어하는 프로그램을 수행하는 프로세서, 및 상기 프로그램을 저장하는 메모리를 포함하고, 상기 프로그램은, 차량에 설치된 적어도 하나의 카메라를 이용하여 현재 시각에 대한 프레임을 생성하는 단계, 상기 프레임 내의 주차 공간(parking slot)을 검출하는 단계, 상기 프레임 내에 주차 공간이 검출되지 않은 경우, 상기 프레임에 기초하여 제1 경로를 생성하는 단계, 및 상기 제1 경로에 기초하여 상기 차량의 움직임을 제어하는 단계를 수행한다.
또 다른 일 측면에 따른, 전자 장치에 의해 수행되는, 차량 제어 방법은, 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계, 상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계, 상기 차량의 운전자가 상기 차량을 주차시킨 주차 영역을 상기 맵 상에 저장하는 단계, 상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계, 및 상기 현재 위치 및 상기 주차 영역에 기초하여 상기 차량의 움직임을 제어하는 단계를 포함한다.
복수의 프레임들에 기초하여 사전에 생성된 맵에 기초하여 차량을 제어하는 방법 및 장치가 제공될 수 있다.
현재 시각에 대한 프레임에 기초하여 생성된 경로에 기초하여 차량을 제어하는 방법 및 장치가 제공될 수 있다.
도 1은 일 예에 따른 제한 조건들에 따라 주차 방식들을 분류하는 방법을 나타낸다.
도 2는 일 실시예에 따른 전자 장치의 구성도이다.
도 3는 일 실시예에 따른 메모리 파킹 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
도 4는 일 예에 따른 복수의 시각들에 대한 복수의 프레임들을 생성하는 방법의 흐름도이다.
도 5는 일 예에 따른 타겟 영역에 대한 맵을 생성하는 방법의 흐름도이다.
도 6은 일 예에 따른 포인트 클라우드 형태의 맵을 도시한다.
도 7은 일 예에 따른 참조 경로를 맵 상에 저장하는 방법의 흐름도이다.
도 8은 일 예에 따른 타겟 경로에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
도 9는 일 예에 따른 타겟 경로 상의 장애물에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
도 10은 일 예에 따른 장애물을 회피하도록 차량의 움직임을 제어하는 방법의 흐름도이다.
도 11은 일 예에 따른 검출된 주차 공간에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
도 12는 일 예에 따른 주차 공간 내에 차량을 위치시키기 위해 차량의 움직임을 제어하는 방법을 도시한다.
도 13은 일 실시예에 따른 제1 AVP 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
도 14는 일 예에 따른 탐험 경로를 생성하는 방법의 흐름도이다.
도 15는 일 예에 따른 폐루프가 되도록 탐험 경로를 결정하는 방법을 도시한다.
도 16은 일 예에 따른 탐험 경로의 주행 도중에 검출된 주차 공간에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
도 17은 일 예에 따른 검출된 주차 공간이 복수인 경우, 타겟 주차 공간을 결정하는 방법을 도시한다.
도 18은 일 예에 따른 출차 명령에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
도 19는 일 실시예에 따른 제2 AVP 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
도 20은 다른 일 실시예에 따른 메모리 파킹 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안 된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
또한, 실시 예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
어느 하나의 실시 예에 포함된 구성요소와, 공통적인 기능을 포함하는 구성요소는, 다른 실시 예에서 동일한 명칭을 사용하여 설명하기로 한다. 반대되는 기재가 없는 이상, 어느 하나의 실시 예에 기재한 설명은 다른 실시 예에도 적용될 수 있으며, 중복되는 범위에서 구체적인 설명은 생략하기로 한다.
도 1은 일 예에 따른 제한 조건들에 따라 주차 방식들을 분류하는 방법을 나타낸다.
본 명세서에서 설명하는 주차 방식에 대한 실시예들은 메모리 파킹 방식, 제1 AVP(auto valet parking) 방식, 및 제2 AVP 방식으로 명명될 수 있다. 예를 들어, 메모리 파킹 방식 및 제1 AVP 방식은 주차하고자 하는 영역(예: 주차장)에 대한 맵(map)의 생성이 사전에 요구되는 방식일 수 있고, 제2 AVP 방식은 맵의 생성이 사전에 요구되지 않는 방식일 수 있다. 추가적으로, 메모리 파킹 방식은 차량이 주차될 영역이 미리 설정되어 있는 방식일 수 있고, 제1 AVP 방식 및 제2 AVP 방식은 차량이 주차될 영역이 미리 설정되어 있지 않은 방식일 수 있다.
일 실시예에 따르면, 메모리 파킹 방식, 제1 AVP(auto valet parking) 방식, 및 제2 AVP 방식에서 생성 또는 갱신되는 맵은 라이더와 같은 비-시각적 센서를 이용하여 생성되는 것이 아닌, 카메라와 같은 시각적 센서를 이용하여 생성될 수 있다. 하나 이상의 카메라가 설치된 차량의 시스템은 카메라를 이용하여 주차하고자 하는 영역에 대한 맵을 생성할 수 있으므로, 라이더를 이용하는 주차 시스템에 비해 저렴한 비용으로 시스템 구현이 가능할 수 있다.
아래에서, 도 2 내지 도 19를 참조하여 카메라를 이용하여 동작하는, 메모리 파킹 방식, 제1 AVP(auto valet parking) 방식, 및 제2 AVP 방식에 대해 상세히 설명된다.
도 2는 일 실시예에 따른 전자 장치의 구성도이다.
일 측면에 따른, 전자 장치(200)는 통신부(210), 프로세서(220), 메모리(230) 및 카메라(240)를 포함한다. 전자 장치(200)는 차량 내에 포함될 수 있다. 예를 들어, 전자 장치(200)는 ECU(electronic control unit)와 같은 장치일 수 있다. 다른 예로, 전자 장치(200)는 ECU와 연결된 독립적인 장치일 수 있다.
통신부(210)는 프로세서(220), 메모리(230) 및 카메라(240)와 연결되어 데이터를 송수신한다. 통신부(210)는 외부의 다른 장치와 연결되어 데이터를 송수신할 수 있다. 이하에서 "A"를 송수신한다라는 표현은 "A를 나타내는 정보(information) 또는 데이터"를 송수신하는 것을 나타낼 수 있다.
통신부(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)는 프로그램(또는 어플리케이션, 소프트웨어)을 저장할 수 있다. 저장되는 프로그램은 차량을 제어할 수 있도록 코딩되어 프로세서(220)에 의해 실행 가능한 신텍스(syntax)들의 집합일 수 있다.
일 측면에 따르면, 메모리(230)는 하나 이상의 휘발성 메모리, 비휘발성 메모리 및 RAM(Random Access Memory), 플래시 메모리, 하드 디스크 드라이브 및 광학 디스크 드라이브를 포함할 수 있다.
메모리(230)는 전자 장치(200)를 동작 시키는 명령어 세트(예를 들어, 소프트웨어)를 저장한다. 전자 장치(200)를 동작 시키는 명령어 세트는 프로세서(220)에 의해 실행된다.
카메라(240)는 장면을 촬영함으로써 영상을 생성한다. 카메라(240)는 복수의 카메라들을 포함할 수 있다. 예를 들어, 복수의 카메라들은 차량의 전방, 후방, 좌측 및 우측에 각각 배치될 수 있다.
통신부(210), 프로세서(220), 메모리(230) 및 카메라(240)에 대해, 아래에서 도 3 내지 도 19를 참조하여 상세히 설명된다.
도 3는 일 실시예에 따른 메모리 파킹 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
아래의 단계들(310 내지 360)은 도 2를 참조하여 전술된 전자 장치(200)에 의해 수행된다.
일 실시예에 따르면, 단계들(310 내지 340)은 차량의 운전자(또는, 사용자)의 주행에 기초하여 타겟 영역에 대한 맵(map)을 사전에 생성하는 동작일 수 있다.
단계(310)에서, 전자 장치(200)는 차량에 설치된 적어도 하나의 카메라(예: 도 2의 카메라(240))를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성한다.
일 실시예에 따르면, 맵을 생성하기 위해 단일 카메라가 이용되는 경우, 단일 카메라에 의해 생성된 영상이 프레임으로 간주될 수 있다.
다른 일 실시예에 따르면, 차량에 복수의 카메라들이 설치된 경우, 카메라들은 제1 시각에 대한 복수의 장면들을 촬영함으로써 복수의 영상들을 생성할 수 있다. 예를 들어, 제1 시각에 대한 복수의 영상들이 제1 프레임으로 간주될 수 있다. 복수의 영상들이 동시(또는, 실질적으로 동시)에 촬영되는 경우에는 보다 많은 차량 주변의 정보들이 획득될 수 있다. 다른 예로, 복수의 영상들에 기초하여 조감 시점 영상을 생성함으로써 제1 시각에 대한 제1 프레임이 생성될 수 있다. 아래에서, 도 4를 참조하여 조감 시점 영상의 형태인 프레임을 생성하는 방법이 상세하게 설명된다.
단계(320)에서, 전자 장치(200)는 복수의 프레임들에 기초하여 타겟 영역(예: 주차장 또는 집 앞의 주차 영역)에 대한 맵을 생성한다.
일 실시예에 따르면, 맵은 SLAM(Simultaneous Localization And Mapping)에 기초하여 생성될 수 있다. 예를 들어, 시각적인 영상 정보에 기초하여 수행되는 VSLAM(visual SLAM)에 기초하여 맵이 생성될 수 있다. VSLAM에 기초하여 생성되는 맵은 포인트 클라우드(point cloud)의 형태로 구현될 수 있고, 맵 내의 포인트는 복수의 프레임들 각각의 특징 포인트(feature point)에 대응할 수 있다. 서로 다른 프레임들 또는 영상들에 포함된 특징 포인트들이라도 실제로 동일한 특징 포인트인 경우, 특징 포인트들이 서로 매칭되고, 이에 기초하여 맵이 생성될 수 있다.
운전자가 타겟 영역 내에 차량을 주행시킴으로써 타겟 영역 내의 특징 포인트들이 나타나는 맵이 생성될 수 있다.
단계(330)에서, 전자 장치(200)는 운전자가 차량을 주행시킨 참조 경로를 맵 상에 저장한다. 참조 경로는 시작 위치 및 종료 위치를 포함하고, 차량을 주차하기 위한 경로일 수 있다. 참조 경로는 SLAM 또는 VSLAM에 기초하여 생성될 수 있다. 참조 경로를 맵 상에 저장하는 방법에 대해 아래에서 도 7을 참조하여 상세히 설명된다.
단계(340)에서, 전자 장치(200)는 맵의 생성이 종료되었는지 여부를 결정한다. 예를 들어, 운전자가 원하는 영역에 차량을 주차하고 시스템을 종료한 경우 맵의 생성이 종료된 것으로 결정될 수 있다.
일 실시예에 따르면, 맵의 생성이 종료되지 않은 경우, 지속적으로 해당 시각에 대한 프레임이 생성되고, 생성된 프레임에 기초하여 맵 및 참조 경로가 지속적으로 갱신될 수 있다. 즉, 전술된 단계들(310 내지 330)이 반복적으로 수행될 수 있다.
일 실시예에 따르면, 단계들(350 내지 360)은 운전자의 개입 없이 전자 장치(200)에 의해 수행될 수 있다. 예를 들어, 전자 장치(200)가 운전자로부터 자율 주차의 명령을 수신한 경우 수행될 수 있다.
단계(350)에서, 전자 장치(200)는 적어도 하나의 카메라를 이용하여 현재 시각에서의 차량의 현재 위치를 맵 상에서 결정한다. 예를 들어, 전자 장치(200)는 카메라를 이용하여 현재 시각에 대한 영상(또는, 조감 시점 영상)을 생성하고, 영상 내의 특징 포인트를 검출하고, 검출된 특징 포인트에 대응하는 맵 상의 포인트를 결정함으로써 차량의 현재 위치를 결정할 수 있다.
일 실시예에 따르면, 사전에 생성된 맵과 현재 시각에서의 프레임에 기초하여 생성된 맵을 동기화함으로써, 현재 차량의 초기 위치가 사전에 생성된 맵 상에서 결정될 수 있다. 차량의 초기 위치가 결정된 이후에는, 차량이 이동하더라도 SLAM 또는 VSLAM을 이용하여 차량의 위치가 사전에 생성된 맵 상에서 결정될 수 있다.
단계(360)에서, 전자 장치(200)는 차량의 현재 위치 및 참조 경로에 기초하여 차량의 움직임을 제어한다. 예를 들어, 전자 장치(200)는 차량이 참조 경로를 따라 이동하도록 차량의 움직임을 제어할 수 있다. 최종적으로, 전자 장치(200)는 차량을 참조 경로에 따라 주차 영역에 주차할 수 있다. 주차 영역은 맵을 사전에 생성하기 위해 운전자가 차량을 직접 주차한 영역일 수 있다.
차량의 현재 위치 및 참조 경로에 기초하여 차량의 움직임을 제어하는 방법에 대해, 아래에서 도 8 내지 도 12를 참조하여 상세히 설명된다.
도 4는 일 예에 따른 복수의 시각들에 대한 복수의 프레임들을 생성하는 방법의 흐름도이다.
일 측면에 따르면, 도 3을 참조하여 전술된 단계(310)는 아래의 단계들(410 및 420)을 포함할 수 있다.
단계(410)에서, 전자 장치(200)는 제1 시각에 대한 복수의 주변 영상들을 생성한다. 예를 들어, 차량에 복수의 카메라들(전방, 후방, 우측, 좌측)이 설치된 경우, 복수의 카메라들의 각각은 복수의 주변 영상들이 생성할 수 있다. 복수의 주변 영상들은 모두 동일한(또는 실질적으로 동일한) 제1 시각에서의 차량의 주변 장면들을 나타낼 수 있다.
단계(420)에서, 전자 장치(200)는 복수의 주변 영상들에 기초하여 제1 시각에 대한 제1 조감 시점 영상을 생성한다. 예를 들어, 복수의 카메라들 간의 관계가 캘리브레이션되어 있다면, 전자 장치(200)는 복수의 주변 영상들 각각의 시점을 조감 시점으로 변경함으로써 부분 조감 시점 영상들을 생성하고, 생성된 부분 조감 시점 영상들을 병합으로써 제1 조감 시점 영상을 생성할 수 있다. 제1 조감 시점 영상은 제1 시각에 대한 제1 프레임으로 명명될 수 있다.
유사하게, 제1 시각과 상이한 시각인 제2 시각에서 생성된 복수의 주변 영상들에 기초하여 제2 조감 시점 영상이 생성될 수 있다. 맵이 생성되는 동안 조감 시점 영상들(또는, 프레임들)이 연속적으로 생성될 수 있다.
도 5는 일 예에 따른 타겟 영역에 대한 맵을 생성하는 방법의 흐름도이다.
일 측면에 따르면, 도 3을 참조하여 전술된 단계(320)는 아래의 단계들(510 및 520)을 포함할 수 있다.
단계(510)에서, 전자 장치(200)는 복수의 프레임들 각각으로부터 특징 포인트들을 추출할 수 있다. 예를 들어, 특징 포인트는 프레임의 영상 내에 존재하는 오브젝트의 특징일 수 있다. 특징 포인트는 오브젝트의 코너 포인트(corner point), 엣지(edge), 및 텍스쳐(texture) 등에 기초하여 결정될 수 있다.
단계(520)에서, 전자 장치(200)는 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 맵을 생성한다.
일 실시예에 따르면, 복수의 프레임들 각각으로부터 추출된 특징 포인트들이 매칭될 수 있다. 매칭된 특징 포인트들에 기초하여 포인트 클라우드가 생성될 수 있다. 예를 들어, 새로운 프레임으로부터 제1 특징 포인트 및 제2 특징 포인트들이 추출되고, 제1 특징 포인트가 기존의 특징 포인트들과 매칭되는 것으로 결정되고, 제2 특징 포인트가 기존의 특징 포인트들과 매칭되지 않는 것으로 결정된 경우, 제2 특징 포인트를 포인트 클라우드에 추가함으로써 포인트 클라우드를 갱신할 수 있다. 포인트 클라우드에 추가되는 제2 특징 포인트의 위치는 제1 특징 포인트 및 제2 특징 포인트 간의 위치 관계에 기초하여 결정될 수 있다.
포인트 클라우드가 계속적으로 갱신됨으로써 맵이 생성될 수 있다.
도 6은 일 예에 따른 포인트 클라우드 형태의 맵을 도시한다.
포인트 클라우드의 형태로 생성된 맵(600)은 타겟 영역에 대해 생성된 복수의 프레임들로부터 추출된 특징 포인트들을 포함한다.
일 실시예에 따르면, 맵(600) 상에 운전자가 차량을 주행시킨 참조 경로(610)가 저장될 수 있다. 참조 경로(610)를 맵(600) 상에 저장하는 방법에 대해, 아래에서 도 7을 참조하여 상세히 설명된다.
일 실시예에 따르면, 전자 장치(200)는 참조 경로(610)에 기초하여 차량이 자율 주행하도록 차량의 움직임을 제어할 수 있다. 전자 장치(200)는 차량의 자율 주행을 위해 SLAM 또는 VSLAM을 이용할 수 있다. 참조 경로(610)에 기초하여 차량이 자율 주행하도록 차량의 움직임을 제어하는 방법에 대해, 아래에서 도 8을 참조하여 상세히 설명된다.
도 7은 일 예에 따른 참조 경로를 맵 상에 저장하는 방법의 흐름도이다.
일 측면에 따르면, 도 3을 참조하여 전술된 단계(330)는 아래의 단계들(710 내지 730)을 포함할 수 있다.
단계(710)에서, 전자 장치(200)는 복수의 프레임들 중 제1 시각에 대한 제1 프레임 및 제2 시각에 대한 제2 프레임 간의 변화량이 미리 설정된 임계치를 초과하는지 여부를 결정한다. 프레임들 간의 변화량이 미리 설정된 임계치를 초과하는 것은 주요한 변화가 발생한 것으로 간주될 수 있다. 예를 들어, 제1 프레임 및 제2 프레임 간에 매칭되지 않는 특징 포인트들의 개수가 미리 설정된 개수를 초과하는 경우 프레임들 간의 변화량이 미리 설정된 임계치를 초과하는 것으로 결정될 수 있다. 다른 예로, 제1 프레임의 컬러 값의 평균 및 제2 프레임의 컬러 값의 평균 간의 차이가 미리 설정된 임계치를 초과하는지 여부가 결정될 수 있다.
단계(715)에서, 전자 장치(200)는 프레임들 간의 변화량이 미리 설정된 임계치를 초과하지 않는 경우, 제1 프레임과 비교되는 제2 프레임을 변경한다. 예를 들어, 제2 프레임이 제2 시각에 대응하는 경우, 변경도는 프레임은 제2 시각의 다음 시각인 제3 시각에 대한 제3 프레임일 수 있다.
제1 프레임과 비교되는 프레임이 변경된 경우, 단계(710)가 재수행될 수 있다. 예를 들어, 제1 프레임 및 제3 프레임 간의 변화량이 미리 설정된 임계치를 초과하는지 여부가 결정될 수 있다.
단계(720)에서, 전자 장치(200)는 프레임들 간의 변화량이 미리 설정된 임계치를 초과하는 경우, 제2 프레임을 키 프레임으로 결정한다. 제1 프레임이 먼저 키 프레임으로 결정된 경우, 제1 프레임은 제1 키 프레임이고, 제2 프레임은 제2 키 프레임으로 명명될 수 있다.
단계(730)에서, 전자 장치(200)는 제2 프레임에서의 차량의 위치를 맵 상에 저장한다. 키 프레임들 각각에서의 차량의 위치가 맵 상에 연속적으로 저장됨으로써 참조 경로가 저장될 수 있다.
도 8은 일 예에 따른 타겟 경로에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
일 측면에 따르면, 도 3을 참조하여 전술된 단계(360)는 아래의 단계들(810 내지 820)을 포함할 수 있다.
단계(810)에서, 전자 장치(200)는 차량의 현재 위치 및 참조 경로에 기초하여 차량의 타겟 경로를 생성할 수 있다. 예를 들어, 타겟 경로는 참조 경로를 따라가도록 생성될 수 있다. 타겟 경로는 현재 위치에서 일정 거리 떨어진 위치 까지만 생성될 수 있다. 즉, 타겟 경로는 참조 경로의 일부일 수 있다. 차량이 제1 타겟 경로를 주행한 후에, 제1 타겟 경로의 종료 위치(즉, 갱신된 현재 위치) 및 참조 경로에 기초하여 제2 타겟 경로가 생성될 수 있다.
단계(820)에서, 전자 장치(200)는 타겟 경로로 차량이 이동하도록 차량의 움직임을 제어한다. 예를 들어, 전자 장치(200)는 차량의 속도, 이동 방향 등을 제어함으로써 차량의 움직임을 제어할 수 있다.
일 실시예에 따르면, 제1 타겟 경로로 차량이 이동하도록 차량의 움직임이 제어될 수 있다. 차량이 제1 타겟 경로의 종료 위치에 도달하였으나, 제1 타겟 경로의 종료 위치가 참조 경로의 종료 위치가 아닌 경우, 단계(810)가 재 수행될 수 있다. 즉, 차량이 참조 경로의 종료 위치에 도달할 때까지 단계들(810 및 820)이 반복적으로 수행될 수 있다.
도 9는 일 예에 따른 타겟 경로 상의 장애물에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
일 측면에 따르면, 도 8을 참조하여 전술된 단계(820)는 아래의 단계들(910 내지 940)을 포함할 수 있다.
단계(910)에서, 전자 장치(200)는 타겟 경로로 차량의 주행이 가능한지 여부를 결정한다. 예를 들어, 타겟 경로 상에 장애물이 존재하는 경우 타겟 경로로 차량이 주행이 불가능한 것으로 결정될 수 있다. 다른 예로, 타겟 경로의 노면 상에 주행 금지 표시가 프린트된 경우 타겟 경로로 차량이 주행이 불가능한 것으로 결정될 수 있다.
일 실시예에 따르면, 전자 장치(200)는 카메라를 이용하여 촬영된 영상 내에 오브젝트를 검출함으로써 타겟 경로 상에 장애물이 존재하는지 여부를 결정할 수 있다. 예를 들어, 전자 장치(200)는 영상 내에 있는 오브젝트들을 의미 있는 단위인 세그먼트로 분할할 수 있다. 전자 장치(200)는 타겟 경로 상에 장애물로 분류되는 세그먼트가 존재하는지 여부를 결정할 수 있다. 세그멘테이션을 통해 차량이 주행할 수 있는 영역과 주행할 수 없는 영역이 구분될 수 있다.
일 실시예에 따르면, 전자 장치(200)는 미리 훈련된 신경망을 이용하여 영상 내의 오브젝트를 검출할 수 있다. 검출된 오브젝트가 바닥에 맞닿은 영상 내의 좌표에 기초하여 차량과 오브젝트 간의 실제 거리가 계산될 수 있다. 예를 들어, 미리 훈련된 신경망은 YOLO, JDET Net, Mobilenet v2 SSD 중 어느 하나에 기초할 수 있고, 기재된 실시예로 한정되지 않는다.
단계(920)에서, 전자 장치(200)는 타겟 경로로 차량의 주행이 불가능한 경우, 차량의 움직임을 정지한다.
단계(930)에서, 전자 장치(200)는 차량이 정지한 상태에서 미리 설정된 시간 동안 주행이 불가능한 상황이 해소되었는지 여부를 결정한다. 차량이 정지한 상태에서 미리 설정된 시간 동안 주행이 불가능한 상황이 해소되었는지 여부를 결정하는 이유는 일시적으로 다른 차량 또는 보행자가 타겟 경로의 일부를 지나갈 수 있기 때문이다.
미리 설정된 시간이 경과한 후에도 주행이 불가능한 상황이 해소되지 않은 경우에 대해서는, 아래에도 도 10을 참조하여 상세히 설명된다.
단계(940)에서, 전자 장치(200)는 미리 설정된 시간 내에 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 타겟 경로로 차량이 이동하도록 차량의 움직임을 제어한다.
도 10은 일 예에 따른 장애물을 회피하도록 차량의 움직임을 제어하는 방법의 흐름도이다.
도 9를 참조하여 전술된 단계(930)에서, 타겟 경로 상에 장애물이 존재하는 것으로 결정된 경우 아래의 단계들(1010 내지 1030)이 더 수행될 수 있다. 즉, 도 8을 참조하여 전술된 단계(820)는 도 9를 참조하여 전술된 단계들(910 내지 940)과 함께 단계들(1010 내지 1030)을 더 포함할 수 있다.
단계(1010)에서, 전자 장치(200)는 차량 주변에 주행 가능한 길을 식별한다. 예를 들어, 전자 장치(200)는 카메라를 이용하여 촬영된 영상을 세그멘테이션함으로써 차량이 주행할 수 있는 영역과 주행할 수 없는 영역을 구분할 수 있다. 영상의 세그멘테이션을 통해 차량이 주행 가능한 길이 식별될 수 있다.
일 실시예에 따르면, 차량이 주행 가능한 길이 식별되지 않는 경우 아래의 단계(1015)이 수행될 수 있다.
단계(1015)에서, 전자 장치(200)는 차량이 주행 가능한 길이 식별되지 않는 경우 사용자를 호출할 수 있다. 예를 들어, 사용자는 차량에 탑승하고 있는 사용자일 수 있다. 다른 예로, 사용자는 전자 장치(200)와 무선 통신으로 연결된 원격의 사용자일 수 있다.
단계(1020)에서, 전자 장치(200)는 식별된 길에 기초하여 장애물을 회피하는 수정된 타겟 경로를 생성한다.
단계(1030)에서, 전자 장치(200)는 수정된 타겟 경로로 차량이 이동하도록 차량의 움직임을 제어한다.
도 11은 일 예에 따른 검출된 주차 공간에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
일 측면에 따르면, 도 3을 참조하여 전술된 단계(360)는 아래의 단계들(1110 및 1120)을 포함할 수 있다.
단계(1110)에서, 전자 장치(200)는 차량의 위치가 종료 위치의 주변인 경우 주차 공간(parking slot)을 검출한다. 예를 들어, 전자 장치(200)는 미리 저장된 주차 공간 템플릿에 기초하여 주차 공간을 검출할 수 있다.
일 실시예에 따르면, 주차 공간을 검출하기 위해 미리 훈련된 신경망이 이용될 수 있다.
단계(1120)에서, 전자 장치(200)는 주차 공간 내에 차량이 위치하도록 차량의 움직임을 제어할 수 있다. 예를 들어, 전자 장치(200)는 차량의 위치 및 자세에 기초하여 주차 공간 내에 차량이 위치하도록 주차 경로를 생성하고, 주자 경로로 차량이 운행하도록 차량의 움직임을 제어할 수 있다.
도 12는 일 예에 따른 주차 공간 내에 차량을 위치시키기 위해 차량의 움직임을 제어하는 방법을 도시한다.
일 실시예에 따르면, 전자 장치(200)는 생성된 영상(1210)에 기초하여 운전자가 생성된 참조 경로(1220)에 대응하도록 타겟 경로(1230)(또는, 주차 경로)를 생성하고, 차량이 타겟 경로(1230)를 따라 주행하도록 차량의 움직임을 제어할 수 있다. 차량이 종료 위치(1222)에 도달한 경우, 차량의 자율 주차가 종료될 수 있다.
다른 일 실시예에 따르면, 전자 장치(200)는 차량의 현재 위치가 참조 경로(1220)의 종료 위치(1222)의 주변인 경우, 영상(1210)에 기초하여 주차 공간(1221)을 검출하고, 주차 공간(1221) 내에 차량이 위치하도록 차량의 움직임을 제어할 수 있다.
도 13은 일 실시예에 따른 제1 AVP 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
아래의 단계들(1310 내지 1360)은 도 2를 참조하여 전술된 전자 장치(200)에 의해 수행된다.
일 실시예에 따르면, 단계들(1310 내지 1330)은 차량의 운전자(또는, 사용자)의 주행에 기초하여 타겟 영역에 대한 맵을 사전에 생성하는 동작일 수 있다.
단계(1310)에서, 전자 장치(200)는 차량에 설치된 적어도 하나의 카메라(예: 도 2의 카메라(240))를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성한다. 예를 들어, 운전자가 차량을 직접 운행하는 동안 전자 장치(200)는 차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성할 수 있다. 운전자가 타겟 영역(예: 주차장) 내에서 차량을 운행할 수 있다.
복수의 시각들에 대한 복수의 프레임들을 생성하는 방법에 대한 설명은 도 3 및 도 4를 참조하여 전술된 단계(310)에 대한 설명이 유사하게 적용될 수 있으므로, 이하에서 생략한다.
단계(1320)에서, 전자 장치(200)는 복수의 프레임들에 기초하여 타겟 영역에 대한 맵을 생성한다. 예를 들어, 시각적인 영상 정보에 기초하여 수행되는 VSLAM에 기초하여 맵이 생성될 수 있다. VSLAM에 기초하여 생성되는 맵은 포인트 클라우드의 형태로 구현될 수 있고, 맵 내의 포인트는 복수의 프레임들 각각의 특징 포인트에 대응할 수 있다. 운전자가 타겟 영역 내에 차량을 주행시킴으로써 타겟 영역 내의 특징 포인트들이 나타나는 맵이 생성될 수 있다.
타겟 영역에 대한 맵을 생성하는 방법에 대한 설명은 도 5를 참조하여 전술된 단계(320)에 대한 설명이 유사하게 적용될 수 있으므로, 이하에서 생략한다.
일 실시예에 따르면, 단계(1310) 및 단계(1320)는 차량이 운행되는 경우에 반복적으로 수행될 수 있다. 예를 들어, 운전자가 직접 차량을 운행하거나 또는 차량이 자율 주행하는 경우에 단계(1310) 및 단계(1320)가 반복적으로 수행될 수 있다.
일 실시예에 따르면, 저장되어 있는 맵 내의 특징점들과 재수행된 단계(1310)에 의해 생성된 복수의 프레임들 내의 특징점 사이에 변화한 정보가 있는 경우, 단계(1320)에서 상기의 변화를 반영하도록 맵이 갱신될 수 있다.
단계(1330)에서, 전자 장치(200)는 맵의 생성이 종료되었는지 여부를 결정한다. 예를 들어, 운전자가 원하는 영역에 차량을 주차하고 시스템을 종료한 경우 맵의 생성이 종료된 것으로 결정될 수 있다.
일 실시예에 따르면, 맵의 생성이 종료되지 않은 경우, 지속적으로 해당 시각에 대한 프레임이 생성되고, 생성된 프레임에 기초하여 맵이 지속적으로 갱신될 수 있다. 즉, 전술된 단계들(1310 내지 1320)이 반복적으로 수행될 수 있다.
일 실시예에 따르면, 단계들(1340 내지 1360)은 운전자의 개입 없이 전자 장치(200)에 의해 수행될 수 있다. 예를 들어, 전자 장치(200)가 운전자로부터 자율 주차의 명령을 수신한 경우 수행될 수 있다.
단계(1340)에서, 전자 장치(200)는 적어도 하나의 카메라를 이용하여 현재 시각에서의 차량의 현재 위치를 맵 상에서 결정한다. 예를 들어, 전자 장치(200)는 카메라를 이용하여 현재 시각에 대한 영상(또는, 조감 시점 영상)을 생성하고, 영상 내의 특징 포인트를 검출하고, 검출된 특징 포인트에 대응하는 맵 상의 포인트를 결정함으로써 차량의 현재 위치를 결정할 수 있다.
일 실시예에 따르면, 사전에 생성된 맵과 현재 시각에서의 프레임에 기초하여 생성된 맵을 동기화함으로써, 현재 차량의 초기 위치가 사전에 생성된 맵 상에서 결정될 수 있다. 차량의 초기 위치가 결정된 이후에는, 차량이 이동하더라도 SLAM 또는 VSLAM을 이용하여 차량의 위치가 사전에 생성된 맵 상에서 결정될 수 있다.
단계(1350)에서, 전자 장치(200)는 차량의 현재 위치에 기초하여 타겟 영역에 대한 탐험 경로를 생성한다. 타겟 영역 내에 주차 위치가 사전에 지정되지 않았으므로, 전자 장치(200)는 타겟 영역을 탐험함으로써 주차가 가능한 영역을 찾아야한다. 주차가 가능한 영역을 찾기 위해, 전자 장치(200)는 타겟 영역에 대한 탐험 경로를 생성할 수 있다.
탐험 경로를 생성하기 위한 방법에 대해, 아래에서 도 14 및 도 15를 참조하여 상세히 설명된다.
단계(1360)에서, 전자 장치(200)는 탐험 경로에 기초하여 차량의 움직임을 제어한다. 예를 들어, 전자 장치(200)는 차량이 탐험 경로를 따라 이동하도록 차량의 움직임을 제어할 수 있다. 최종적으로, 전자 장치(200)는 탐험 경로에 기초하여 주차 공간이 검출된 경우, 검출된 주차 공간 내에 차량이 위치하도록 차량을 제어할 수 있다.
일 실시예에 따르면, 탐험 경로에 기초하여 차량의 움직임을 제어하기 위해, 전자 장치(200)는 현재의 상황이 탐험 경로로 차량의 주행이 가능한 상황인지 여부를 결정하고, 타겟 경로로 차량의 주행이 불가능한 상황인 경우, 상황이 회피 경로의 생성이 요구되는 상황인지 여부를 결정하고, 상황이 회피 경로의 생성이 요구되는 상황이 아닌 경우, 차량의 움직임을 정지시키고, 미리 설정된 시간 동안 주행이 불가능한 상황이 해소되었는지 여부를 결정하고, 미리 설정된 시간 내에 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 탐험 경로에 기초하여 차량의 움직임을 제어할 수 있다.
일 실시예에 따르면, 전자 장치(200)는 타겟 경로로 차량의 주행이 불가능한 상황이 회피 경로의 생성이 요구되는 상황인 경우, 차량 주변에 주행 가능한 길을 식별하고, 식별된 길에 기초하여 차량의 주행이 불가능한 상황을 회피하는 수정된 탐험 경로를 생성하고, 수정된 탐험 경로로 차량이 이동하도록 차량의 움직임을 제어할 수 있다.
일 실시예에 따르면, 탐험 경로 상에 장애물이 존재하는 경우 탐험 경로로 차량의 주행이 가능하지 않은 것으로 결정될 수 있다. 예를 들어, 장애물이 움직이는 차량 또는 보행자인 경우에는 일시적으로 장애물이 존재하는 것이므로, 회피 경로의 생성이 요구되지 않는 상황으로 결정될 수 있다. 다른 예로, 타겟 영역 내에 움직이는 차량이 많은 경우(즉, 혼잡한 경우) 회피 경로의 생성이 요구되지 않는 상황으로 결정될 수 있다. 또 다른 예로, 장애물이 이동 불가능한 오브젝트인 경우 회피 경로의 생성이 요구되는 상황으로 결정될 수 있다.
일 실시예에 따르면, 회피 경로의 생성이 요구되는 상황이지만, 회피 경로를 생성할 수 없는 경우, 전자 장치(200)는 사용자를 호출할 수 있다.
탐험 경로에 기초하여 차량의 움직임을 제어하는 방법에 대해, 아래에서 도 16 내지 도 17을 참조하여 상세히 설명된다.
도 14는 일 예에 따른 탐험 경로를 생성하는 방법의 흐름도이다.
일 측면에 따르면, 도 13을 참조하여 전술된 단계(1350)는 아래의 단계들(1410 및 1420)을 포함할 수 있다.
단계(1410)에서, 전자 장치(200)는 타겟 영역 내의 하나 이상의 길들을 검출한다. 하나 이상의 길들은 맵의 생성 과정에서 생성된 영상 또는 프레임의 세그멘테이션을 통해 미리 식별될 수 있다.
단계(1420)에서, 전자 장치(200)는 차량의 현재 위치 및 검출된 하나 이상의 길들에 기초하여 탐험 경로를 생성한다. 예를 들어, 탐험 경로는 타겟 영역 내의 길들의 일부를 주행하는 경로일 수 있다.
일 실시예에 따르면, 차량이 제1 탐험 경로를 주행하였음에도 불구하고 주차 공간이 검출되지 않은 경우, 제1 탐험 경로의 종료 위치 및 검출된 길들에 기초하여 제2 탐험 경로가 생성될 수 있다. 연속적으로 탐험 경로들이 생성되는 경우, 이전의 탐험 경로들에 기초하여 다음의 탐험 경로가 생성될 수 있다. 예를 들어, 생성된 탐험 경로들이 폐루프가 되도록 다음의 탐험 경로가 생성될 수 있다. 폐루프가 되도록 탐험 경로가 생성되는 방법에 대해, 아래에서 도 15를 참조하여 상세히 설명될 수 있다.
도 15는 일 예에 따른 폐루프가 되도록 탐험 경로를 결정하는 방법을 도시한다.
일 실시예에 따르면, 이전 탐험 경로(1510)의 종료 위치(1520)에 차량이 도달함으로써 탐험이 종료될 수 있다. 이전 탐험 경로(1510)에 의해서도 주차 공간이 검출되지 않은 경우, 새로운 탐험 경로가 생성될 수 있다. 예를 들어, 종료 위치(1520)에서 차량이 주행할 수 있는 제1 길(1531), 제2 길(1532) 및 제3 길(1533)이 식별될 수 있다. 전자 장치(300)는 제1 길(1531), 제2 길(1532) 및 제3 길(1533) 중 이전 탐험 경로(1510)와 함께 폐루프를 형성할 수 있는 제1 길(1531)에 기초하여 새로운 탐험 경로가 생성될 수 있다.
도 16은 일 예에 따른 탐험 경로의 주행 도중에 검출된 주차 공간에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
일 측면에 따르면, 도 13을 참조하여 전술된 단계(1360)는 아래의 단계들(1610 및 1620)을 포함할 수 있다.
단계(1610)에서, 전자 장치(200)는 차량이 탐험 경로로 주행하는 동안 주차 공간을 검출한다. 예를 들어, 차량의 주행 중에 생성되는 영상 또는 프레임에 기초하여 영상 또는 프레임 내의 주차 공간이 검출될 수 있다. 예를 들어, 전자 장치(200)는 미리 저장된 주차 공간 템플릿에 기초하여 주차 공간을 검출할 수 있다. 주차 공간을 검출하기 위해 미리 훈련된 신경망이 이용될 수 있다.
일 실시예에 따르면, 전자 장치(200)는 검출된 주차 공간이 복수인 경우, 차량의 현재 위치에 기초하여 복수의 주차 공간들 중 타겟 주차 공간을 결정할 수 있다. 예를 들어, 차량의 현재 위치와 가장 가까운 주차 공간이 타겟 주차 공간으로 결정될 수 있다.
차량이 탐험 경로로 주행하는 동안 주차 공간을 검출하는 방법에 대해, 아래에서 도 17을 참조하여 상세히 설명된다.
단계(1620)에서, 전자 장치(200)는 타겟 주차 공간이 검출된 경우 타겟 주차 공간 내에 차량이 위치하도록 차량의 움직임을 제어할 수 있다. 차량의 위치가 변할 때마다 주차 공간의 상대적인 위치도 변화하기 때문에 차량의, 이동에 따른 주차 경로를 생성하기 위해서는 주차 공간의 위치 변화가 지속적으로 모니터링되어야 할 수 있다. 예를 들어, 전자 장치(200)는 차량의 위치 및 자세에 기초하여 타겟 주차 공간 내에 차량이 위치하도록 주차 경로를 생성하고, 주자 경로로 차량이 운행하도록 차량의 움직임을 제어할 수 있다.
도 17은 일 예에 따른 검출된 주차 공간이 복수인 경우, 타겟 주차 공간을 결정하는 방법을 도시한다.
일 실시예에 따르면, 차량(1700)이 탐험 경로로 주행하는 도중에 복수의 주차 공간들(1710 내지 1730)이 검출될 수 있다. 전자 장치(200)는 복수의 주차 공간들(1710 내지 1730) 중 차량(1700)의 현재 위치로부터 가장 가까운 주차 공간(1710)을 타겟 주차 공간으로 결정할 수 있다.
최종적으로, 전자 장치(200)는 차량(1700)이 주차 공간(1710) 내에 위치하도록 차량(1700)의 움직임을 제어할 수 있다. 예를 들어, 전자 장치(200)는 현재 위치에서 주차 공간(1710)으로 이동하기 위한 주차 경로를 생성하고, 주차 경로에 기초하여 차량(1700)의 움직임을 제어할 수 있다.
도 18은 일 예에 따른 출차 명령에 기초하여 차량의 움직임을 제어하는 방법의 흐름도이다.
일 실시예에 따르면, 도 3을 참조하여 전술된 단계(1360)가 수행된 후, 아래의 단계들(1810 내지 1830)이 더 수행될 수 있다.
단계(1810)에서, 전자 장치(200)는 차량이 주차된 상태에서 출차 명령을 수신한다. 예를 들어, 전자 장치(200)는 통신부(210)를 통해 사용자 또는 운전자로부터 출차 명령을 수신할 수 있다. 출자 명령은 원격으로 차량으로 전송될 수 있다.
단계(1820)에서, 전자 장치(200)는 맵에 기초하여 차량의 주차 위치로부터 미리 설정된 입구 위치 또는 출구 위치로의 출차 경로를 생성한다.
단계(1830)에서, 전자 장치(200)는 출차 경로에 기초하여 차량의 움직임을 제어한다. 차량은 전자 장치(200)의 제어에 의해 목적지에 도달할 수 있다.
단계들(1810 내지 1830)이 도 13을 참조하여 전술된 단계(1360)가 수행된 후에 수행될 수 있는 것으로 설명되었으나, 단계들(1810 내지 1830)은 도 3을 참조하여 전술된 단계(360)가 수행된 후에 수행될 수 있고, 또한, 아래의 도19를 참조하여 후술될 단계(1950)이 수행된 후에 수행될 수 있다.
도 19는 일 실시예에 따른 제2 AVP 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
제2 AVP 방식은 전술된 메모리 파킹 방식 및 제1 AVP 방식과는 다르게 타겟 공간에 대한 맵을 사전에 생성하지 않는 방식이다.
제2 AVP 방식으로서의 차량의 움직임을 제어하기 위해 수행되는 아래의 단계들(1910 내지 1970)은 도 2를 참조하여 전술된 전자 장치(200)에 의해 수행된다.
단계(1910)에서, 전자 장치(200)는 차량에 설치된 적어도 하나의 카메라(예: 도 2의 카메라(240))를 이용하여 현재 시각에 대한 프레임을 생성한다. 생성되는 프레임은 조감 시점 영상일 수 있다.
단계(1920)에서, 전자 장치(200)는 프레임 내의 주차 공간을 검출한다. 예를 들어, 전자 장치(200)는 프레임에 기초하여 프레임 내의 주차 공간을 검출할 수 있다. 예를 들어, 전자 장치(200)는 미리 저장된 주차 공간 템플릿에 기초하여 주차 공간을 검출할 수 있다. 주차 공간을 검출하기 위해 미리 훈련된 신경망이 이용될 수 있다.
일 실시예에 따르면, 프레임 내에 주차 공간이 검출된 경우 아래의 단계(1960)가 수행되고, 프레임 내에 주차 공간이 검출되지 않은 경우 아래의 단계(1940)이 수행될 수 있다.
단계(1930)에서, 전자 장치(200)는 프레임에 기초하여 타겟 영역(예: 주차장)에 대한 맵을 갱신(또는 생성)한다.
도 3을 참조하여 전술된 단계(320) 및 도 13을 참조하여 전술된 단계(1320)에서 수행되는 맵의 생성(또는, 갱신)은 운전자가 타겟 영역을 주행하는 과정에서 수행되었으나, 단계(1930)에서 수행되는 맵의 생성은 차량이 자율 주차하는 과정에서 수행될 수 있다. 즉, 단계(1930)에서 수행되는 맵의 생성은 타겟 영역에 대한 사전 정보 없이 자율 주차가 수행되는 경우에 수행될 수 있다.
다만, 운전자가 주행하는 도중에 맵을 생성하는 것(단계(320) 및 단계(1320))과 차량이 자율 주행하는 도중에 맵을 생성하는 것(단계(1930))은 차이가 없으므로, 단계(1930)의 맵을 갱신하는 방법에 대한 설명은 단계(320) 및 단계(1320)에 대한 설명이 유사하게 적용될 수 있으므로, 이하에서 생략한다.
단계(1940)에서, 전자 장치(200)는 프레임 내에 주차 공간이 검출되지 않은 경우, 프레임에 기초하여 제1 경로를 생성한다. 예를 들어, 프레임의 세그멘테이션을 통해 차량이 주행할 수 있는 영역과 주행할 수 없는 영역이 구분될 수 있다. 생성된 맵 및 프레임의 세그멘테이션에 기초하여 제1 경로가 생성될 수 있다.
일 실시예에 따르면, 전자 장치(200)는 과거의 주행 경로와 생성되는 제1 경로가 가급적 폐루프를 형성하도록 제1 경로를 생성할 수 있다.
단계(1950)에서, 전자 장치(200)는 제1 경로에 기초하여 차량의 움직임을 제어한다. 예를 들어, 전자 장치(200)는 차량이 제1 경로를 따라 이동하도록 차량의 움직임을 제어할 수 있다.
일 실시예에 따르면, 제1 경로에 기초하여 차량의 움직임을 제어하기 위해, 전자 장치(200)는 현재의 상황이 제1 경로로 차량의 주행이 가능한 상황인지 여부를 결정하고, 타겟 경로로 차량의 주행이 불가능한 상황인 경우, 상황이 회피 경로의 생성이 요구되는 상황인지 여부를 결정하고, 상황이 회피 경로의 생성이 요구되는 상황이 아닌 경우, 차량의 움직임을 정지시키고, 미리 설정된 시간 동안 주행이 불가능한 상황이 해소되었는지 여부를 결정하고, 미리 설정된 시간 내에 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 제1 경로에 기초하여 차량의 움직임을 제어할 수 있다.
일 실시예에 따르면, 전자 장치(200)는 타겟 경로로 차량의 주행이 불가능한 상황이 회피 경로의 생성이 요구되는 상황인 경우, 차량 주변에 주행 가능한 길을 식별하고, 식별된 길에 기초하여 차량의 주행이 불가능한 상황을 회피하는 수정된 제1 경로를 생성하고, 수정된 제1 경로로 차량이 이동하도록 차량의 움직임을 제어할 수 있다.
일 실시예에 따르면, 제1 경로 상에 장애물이 존재하는 경우 제1 경로로 차량의 주행이 가능하지 않은 것으로 결정될 수 있다. 예를 들어, 장애물이 움직이는 차량 또는 보행자인 경우에는 일시적으로 장애물이 존재하는 것이므로, 회피 경로의 생성이 요구되지 않는 상황으로 결정될 수 있다. 다른 예로, 타겟 영역 내에 움직이는 차량이 많은 경우(즉, 혼잡한 경우) 회피 경로의 생성이 요구되지 않는 상황으로 결정될 수 있다. 또 다른 예로, 장애물이 이동 불가능한 오브젝트인 경우 회피 경로의 생성이 요구되는 상황으로 결정될 수 있다.
일 실시예에 따르면, 회피 경로의 생성이 요구되는 상황이지만, 회피 경로를 생성할 수 없는 경우, 전자 장치(200)는 사용자를 호출할 수 있다.
일 실시예에 따르면, 제1 경로에 기초하여 차량의 움직임을 제어하는 방법에 대한 설명은 도 8 내지 도 10을 참조하여 전술된 단계(820)에 대한 설명이 유사하게 적용될 수 있으므로 이하에서 생략한다.
일 실시예에 따르면, 차량이 제1 경로로 주행하는 동안 단계들(1910 내지 1930)이 반복적으로 수행될 수 있다.
단계(1960)에서, 전자 장치(200)는 프레임 내에 주차 공간이 검출된 경우, 타겟 주차 공간으로의 주차 경로를 생성한다.
일 실시예에 따르면, 전자 장치(200)는 검출된 주차 공간이 복수인 경우, 차량의 현재 위치에 기초하여 복수의 주차 공간들 중 타겟 주차 공간을 결정할 수 있다. 예를 들어, 차량의 현재 위치와 가장 가까운 주차 공간이 타겟 주차 공간으로 결정될 수 있다.
단계(1970)에서, 전자 장치(200)는 주차 경로에 기초하여 타겟 주차 공간 내에 차량이 위치하도록 차량의 움직임을 제어할 수 있다.
도 20은 다른 일 실시예에 따른 메모리 파킹 방식으로서의 차량의 움직임을 제어하는 방법의 흐름도이다.
도 3을 참조하여 전술된 메모리 파킹 방식과는 일부의 구성이 상이한 메모리 파킹 방식이 고려될 수 있다.
아래의 단계들(2010 내지 2060)은 도 2를 참조하여 전술된 전자 장치(200)에 의해 수행된다.
단계(2010)에서, 전자 장치(200)는 차량에 설치된 적어도 하나의 카메라(예: 도 2의 카메라(240))를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성한다. 단계(2010)에 대한 설명은 도 3 및 도 4를 참조하여 전술된 단계(310)에 대한 설명으로 대체될 수 있다.
단계(2020)에서, 전자 장치(200)는 복수의 프레임들에 기초하여 타겟 영역(예: 주차장 또는 집 앞의 주차 영역)에 대한 맵을 생성한다. 단계(2020)에 대한 설명은 도 3을 참조하여 전술된 단계(320)에 대한 설명으로 대체될 수 있다.
단계(2030)에서, 전자 장치(200)는 운전차가 차량을 주차시킨 주차 영역을 맵 상에 저장한다.
단계(2040)에서, 전자 장치(200)는 맵의 생성이 종료되었는지 여부를 결정한다. 예를 들어, 운전자가 원하는 주차 영역에 차량을 주차하고, 시스템을 종료한 경우 맵의 생성이 종료된 것으로 결정될 수 있다.
일 실시예에 따르면, 맵의 생성이 종료되지 않은 경우, 지속적으로 해당 시각에 대한 프레임이 생성되고, 생성된 프레임에 기초하여 맵 및 주차 영역이 지속적으로 갱신될 수 있다. 즉, 전술된 단계들(2010 내지 2030)이 반복적으로 수행될 수 있다. 저장되는 주차 영역은 복수 개일 수 있다.
일 실시예에 따르면, 단계들(2050 내지 2060)은 운전자의 개입 없이 전자 장치(200)에 의해 수행될 수 있다. 예를 들어, 전자 장치(200)가 운전자로부터 자율 주차의 명령을 수신한 경우 수행될 수 있다.
단계(2050)에서, 전자 장치(200)는 적어도 하나의 카메라를 이용하여 현재 시각에서의 차량의 현재 위치를 맵 상에서 결정한다. 예를 들어, 전자 장치(200)는 카메라를 이용하여 현재 시각에 대한 영상(또는, 조감 시점 영상)을 생성하고, 영상 내의 특징 포인트를 검출하고, 검출된 특징 포인트에 대응하는 맵 상의 포인트를 결정함으로써 차량의 현재 위치를 결정할 수 있다.
일 실시예에 따르면, 사전에 생성된 맵과 현재 시각에서의 프레임에 기초하여 생성된 맵을 동기화함으로써, 현재 차량의 초기 위치가 사전에 생성된 맵 상에서 결정될 수 있다. 차량의 초기 위치가 결정된 이후에는, 차량이 이동하더라도 SLAM 또는 VSLAM을 이용하여 차량의 위치가 사전에 생성된 맵 상에서 결정될 수 있다.
단계(2060)에서, 전자 장치(200)는 차량의 현재 위치 및 주차 영역에 기초하여 차량의 움직임을 제어한다. 예를 들어, 전자 장치(200)는 차량이 주차 영역으로 이동하도록 차량의 움직임을 제어할 수 있다.
일 실시 예에 따르면, 운전자 또는 사용자는 미리 저정된 복수의 주차 영역들 중 타겟 주차 영역을 선택할 수 있고, 전자 장치(200)는 선택된 타겟 주차 영역으로 이동하도록 차량의 이동 경로를 생성하고, 생성된 이동 경로로 차량이 이동하도록 차량의 움직임을 제어할 수 있다.
최종적으로, 전자 장치(200)는 차량을 주차 영역에 주차할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(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: 메모리
240: 카메라

Claims (37)

  1. 전자 장치에 의해 수행되는, 차량 제어 방법은,
    차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계;
    상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계;
    상기 차량의 운전자가 상기 차량을 주행시킨 참조 경로를 상기 맵 상에 저장하는 단계;
    상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계; 및
    상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계
    를 포함하고,
    상기 맵을 생성하는 단계는,
    상기 복수의 프레임들의 각각으로부터 특징 포인트(feature point)들을 추출하는 단계; 및
    상기 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 상기 맵을 생성하는 단계
    를 포함하는,
    차량 제어 방법.
  2. 제1항에 있어서,
    상기 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계는,
    제1 시각에 대한 복수의 주변 영상들을 생성하는 단계; 및
    상기 복수의 주변 영상들에 기초하여 상기 제1 시각에 대한 제1 조감 시점 영상을 생성하는 단계
    를 포함하고,
    상기 복수의 프레임들은 상기 제1 조감 시점 영상을 포함하는,
    차량 제어 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 차량의 운전자가 상기 차량을 주행시킨 참조 경로를 상기 맵 상에 저장하는 단계는,
    상기 복수의 프레임들 중 제1 시각에 대한 제1 프레임 및 제2 시각에 대한 제2 프레임 간의 변화량이 미리 설정된 임계치를 초과하는지 여부를 결정하는 단계 - 상기 제1 프레임은 제1 키 프레임이고, 상기 제1 키 프레임에서의 상기 차량의 위치는 제1 위치임 -;
    상기 변화량이 상기 임계치를 초과하는 경우 상기 제2 프레임을 제2 키 프레임으로 결정하는 단계; 및
    상기 제2 프레임에서의 상기 차량의 제2 위치를 저장하는 단계
    를 포함하고,
    상기 참조 경로는 상기 제1 위치 및 상기 제2 위치를 포함하는,
    차량 제어 방법.
  5. 제1항에 있어서,
    상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계는,
    상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 타겟 경로를 생성하는 단계; 및
    상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계
    를 포함하는,
    차량 제어 방법.
  6. 제5항에 있어서,
    상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계는,
    상기 타겟 경로로 상기 차량의 주행이 가능한 상황인지 여부를 결정하는 단계;
    상기 타겟 경로로 상기 차량의 주행이 불가능한 상황인 경우, 상기 차량의 움직임을 정지시키는 단계;
    미리 설정된 시간 동안 상기 주행이 불가능한 상황이 해소되었는지 여부를 결정하는 단계; 및
    상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계
    를 포함하는,
    차량 제어 방법.
  7. 제6항에 있어서,
    상기 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계는,
    상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소되지 않는 경우, 상기 차량 주변에 주행 가능한 길을 식별하는 단계;
    상기 식별된 길에 기초하여 상기 차량의 주행이 불가능한 상황을 회피하는 수정된 타겟 경로를 생성하는 단계; 및
    상기 수정된 타겟 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계
    를 더 포함하는,
    차량 제어 방법.
  8. 제1항에 있어서,
    상기 참조 경로는 시작 위치 및 종료 위치를 포함하고, 상기 차량을 주차하기 위한 경로인,
    차량 제어 방법.
  9. 제8항에 있어서,
    상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계는,
    상기 차량의 위치가 상기 종료 위치의 주변인 경우, 주차 공간(parking slot)을 검출하는 단계; 및
    상기 주차 공간 내에 상기 차량이 위치하도록 상기 차량의 움직임을 제어하는 단계
    를 포함하는,
    차량 제어 방법.
  10. 제1항에 있어서,
    상기 전자 장치는, 자율 주행 차량 또는 ADAS(Advanced Driver Assistance Systems)을 지원하는 차량에 탑재되는,
    차량 제어 방법.
  11. 제1항, 제2항, 제4항, 제5항, 제6항, 제7항, 제8항, 제9항, 및 10항 중 어느 한 항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
  12. 차량을 제어하는 전자 장치는,
    차량을 제어하는 프로그램을 수행하는 프로세서; 및
    상기 프로그램을 저장하는 메모리
    를 포함하고,
    상기 프로그램은,
    차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계;
    상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계;
    상기 차량의 운전자가 상기 차량을 주행시킨 참조 경로를 상기 맵 상에 저장하는 단계;
    상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계; 및
    상기 현재 위치 및 상기 참조 경로에 기초하여 상기 차량의 움직임을 제어하는 단계
    를 수행하고,
    상기 맵을 생성하는 단계는,
    상기 복수의 프레임들의 각각으로부터 특징 포인트(feature point)들을 추출하는 단계; 및
    상기 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 상기 맵을 생성하는 단계
    를 포함하는,
    전자 장치.
  13. 제12항에 있어서,
    상기 복수의 프레임들의 각각을 생성하기 위한 복수의 카메라들
    을 더 포함하는,
    전자 장치.
  14. 전자 장치에 의해 수행되는, 차량 제어 방법은,
    차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계;
    상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계 - 상기 타겟 영역에 대한 입구 위치 또는 출구 위치가 상기 맵 상에 지정됨 -;
    상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계;
    상기 현재 위치에 기초하여 상기 타겟 영역에 대한 탐험 경로를 생성하는 단계; 및
    상기 탐험 경로에 기초하여 상기 차량의 움직임을 제어하는 단계
    를 포함하고,
    상기 맵을 생성하는 단계는,
    상기 복수의 프레임들의 각각으로부터 특징 포인트(feature point)들을 추출하는 단계; 및
    상기 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 상기 맵을 생성하는 단계
    를 포함하는,
    차량 제어 방법.
  15. 제14항에 있어서,
    제14항에 있어서,
    상기 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계는,
    제1 시각에 대한 복수의 주변 영상들을 생성하는 단계; 및
    상기 복수의 주변 영상들에 기초하여 상기 제1 시각에 대한 제1 조감 시점 영상을 생성하는 단계
    를 포함하고,
    상기 복수의 프레임들은 상기 제1 조감 시점 영상을 포함하는,
    차량 제어 방법.
  16. 삭제
  17. 제14항에 있어서,
    상기 현재 위치에 기초하여 상기 타겟 영역에 대한 탐험 경로를 생성하는 단계는,
    상기 타겟 영역 내의 하나 이상의 길들을 검출하는 단계; 및
    상기 하나 이상의 길들에 기초하여 상기 탐험 경로를 생성하는 단계
    를 포함하는,
    차량 제어 방법.
  18. 제17항에 있어서,
    상기 탐험 경로가 폐루프가 되도록 상기 탐험 경로가 생성되는,
    차량 제어 방법.
  19. 제14항에 있어서,
    상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는,
    상기 차량이 상기 탐험 경로로 주행하는 동안 주차 공간(parking slot)을 검출하는 단계; 및
    타겟 주차 공간이 검출된 경우, 상기 타겟 주차 공간 내에 상기 차량이 위치하도록 상기 차량의 움직임을 제어하는 단계
    를 포함하는,
    차량 제어 방법.
  20. 제19항에 있어서,
    상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는,
    검출된 주차 공간이 복수인 경우, 상기 차량의 현재 위치에 기초하여 복수의 주차 공간들 중 상기 타겟 주차 공간을 결정하는 단계
    를 더 포함하는,
    차량 제어 방법.
  21. 제14항에 있어서,
    상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는,
    상기 탐험 경로로 상기 차량의 주행이 가능한 상황인지 여부를 결정하는 단계;
    상기 타겟 경로로 상기 차량의 주행이 불가능한 상황인 경우, 상기 상황이 회피 경로의 생성이 요구되는 상황인지 여부를 결정하는 단계;
    상기 상황이 회피 경로의 생성이 요구되는 상황이 아닌 경우, 상기 차량의 움직임을 정지시키는 단계;
    미리 설정된 시간 동안 상기 주행이 불가능한 상황이 해소되었는지 여부를 결정하는 단계; 및
    상기 미리 설정된 시간 내에 상기 차량의 주행이 불가능한 상황이 해소된 것으로 결정된 경우, 상기 탐험 경로에 기초하여 상기 차량의 움직임을 제어하는 단계
    를 포함하는,
    차량 제어 방법.
  22. 제21항에 있어서,
    상기 탐험 경로에 기초하여 차량의 움직임을 제어하는 단계는,
    상기 상황이 회피 경로의 생성이 요구되는 상황인 경우, 상기 차량 주변에 주행 가능한 길을 식별하는 단계;
    상기 식별된 길에 기초하여 상기 차량의 주행이 불가능한 상황을 회피하는 수정된 탐험 경로를 생성하는 단계; 및
    상기 수정된 탐험 경로로 상기 차량이 이동하도록 상기 차량의 움직임을 제어하는 단계
    를 더 포함하는,
    차량 제어 방법.
  23. 제14항에 있어서,
    상기 차량이 주차된 상태에서 출차 명령을 수신하는 단계;
    상기 출차 명령이 수신된 경우, 상기 맵에 기초하여 상기 차량의 주차 위치로부터 상기 입구 위치 또는 상기 출구 위치로의 출차 경로를 생성하는 단계; 및
    상기 출자 경로에 기초하여 상기 차량의 움직임을 제어하는 단계
    를 더 포함하는,
    차량 제어 방법.
  24. 제14항에 있어서,
    상기 전자 장치는, 자율 주행 차량 또는 ADAS(Advanced Driver Assistance Systems)을 지원하는 차량에 탑재되는,
    차량 제어 방법.
  25. 제14항, 제15항, 제17항, 제18항, 제19항, 제20항, 제21항, 제22항, 제23항, 및 제24항 중 어느 한 항의 방법을 수행하는 프로그램을 수록한 컴퓨터 판독 가능 기록 매체.
  26. 차량을 제어하는 전자 장치는,
    차량을 제어하는 프로그램을 수행하는 프로세서; 및
    상기 프로그램을 저장하는 메모리
    를 포함하고,
    상기 프로그램은,
    차량에 설치된 적어도 하나의 카메라를 이용하여 복수의 시각들에 대한 복수의 프레임들을 생성하는 단계;
    상기 복수의 프레임들에 기초하여 타겟 영역에 대한 맵(map)을 생성하는 단계 - 상기 타겟 영역에 대한 입구 위치 및 출구 위치가 상기 맵 상에 지정됨 -;
    상기 카메라를 이용하여 현재 시각에서의 상기 차량의 현재 위치를 상기 맵 상에서 결정하는 단계;
    상기 현재 위치에 기초하여 상기 타겟 영역에 대한 탐험 경로를 생성하는 단계; 및
    상기 탐험 경로에 기초하여 상기 차량의 움직임을 제어하는 단계
    를 수행하고,
    상기 맵을 생성하는 단계는,
    상기 복수의 프레임들의 각각으로부터 특징 포인트(feature point)들을 추출하는 단계; 및
    상기 특징 포인트들에 기초하여 포인트 클라우드의 형태로 구현되는 상기 맵을 생성하는 단계
    를 포함하는,
    전자 장치.
  27. 제26항에 있어서,
    상기 복수의 프레임들의 각각을 생성하기 위한 복수의 카메라들
    을 더 포함하는,
    전자 장치.
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
KR1020210101399A 2021-08-02 2021-08-02 주차를 위한 차량 제어 방법 및 장치 KR102638116B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210101399A KR102638116B1 (ko) 2021-08-02 2021-08-02 주차를 위한 차량 제어 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210101399A KR102638116B1 (ko) 2021-08-02 2021-08-02 주차를 위한 차량 제어 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20230019643A KR20230019643A (ko) 2023-02-09
KR102638116B1 true KR102638116B1 (ko) 2024-02-19

Family

ID=85224740

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210101399A KR102638116B1 (ko) 2021-08-02 2021-08-02 주차를 위한 차량 제어 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102638116B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118494512A (zh) * 2024-07-18 2024-08-16 零束科技有限公司 基于图像关键帧的泊车定位方法、泊车方法及泊车装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150128140A (ko) * 2014-05-08 2015-11-18 현대모비스 주식회사 어라운드 뷰 시스템
KR102251502B1 (ko) * 2019-04-25 2021-05-13 주식회사 멀티플아이 주차장에서의 자율 주행 방법 및 시스템
KR20200130883A (ko) * 2019-04-26 2020-11-23 현대모비스 주식회사 주차 지원 장치 및 방법
KR20210072213A (ko) * 2019-12-06 2021-06-17 현대자동차주식회사 주차 제어 장치, 그를 포함한 시스템 및 그 방법

Also Published As

Publication number Publication date
KR20230019643A (ko) 2023-02-09

Similar Documents

Publication Publication Date Title
JP7471045B2 (ja) 情報処理装置及び情報処理方法
EP3714345B1 (en) Object interaction prediction systems and methods for autonomous vehicles
US11693409B2 (en) Systems and methods for a scenario tagger for autonomous vehicles
JP7235247B2 (ja) 不確実性を検知しながらナビゲートするためのシステム及び方法
CN111788102B (zh) 用于跟踪交通灯的里程计系统和方法
US10618519B2 (en) Systems and methods for autonomous vehicle lane change control
US9459623B1 (en) Stop sign intersection decision system
US20200001779A1 (en) Method for communicating intent of an autonomous vehicle
KR102339776B1 (ko) 차량의 주행 제어 방법 및 장치
CN111727413A (zh) 用于访问来自其他车辆的补充感知数据的方法
CN110347145A (zh) 用于自动驾驶车辆的感知辅助
CN108089571A (zh) 用于预测无人驾驶车辆的车辆交通行为以做出驾驶决策的方法和系统
CN108139756A (zh) 为自动驾驶车辆构建周围环境以制定驾驶决策的方法和系统
US20240263946A1 (en) System and method for intersection management by an autonomous vehicle
US20220163972A1 (en) Methods and Systems for Autonomous Vehicle Motion Deviation
KR102581482B1 (ko) 차량의 자율 주행 컨트롤러의 동작 방법 및 장치
US20200066155A1 (en) Parking management systems and methods
KR102638116B1 (ko) 주차를 위한 차량 제어 방법 및 장치
JP7310656B2 (ja) 情報処理装置、情報処理方法及びシステム
US10654453B2 (en) Systems and methods for low-latency braking action for an autonomous vehicle
CN115050203B (zh) 地图生成装置以及车辆位置识别装置
EP4174611B1 (en) Mobile robot and a method for controlling the mobile robot
RU2800529C1 (ru) Мобильный робот и способ управления мобильным роботом
US11814068B2 (en) Automated driving system
JP7508270B2 (ja) 車両の走行支援方法および走行支援装置

Legal Events

Date Code Title Description
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