KR102487449B1 - 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버 - Google Patents

로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버 Download PDF

Info

Publication number
KR102487449B1
KR102487449B1 KR1020210169172A KR20210169172A KR102487449B1 KR 102487449 B1 KR102487449 B1 KR 102487449B1 KR 1020210169172 A KR1020210169172 A KR 1020210169172A KR 20210169172 A KR20210169172 A KR 20210169172A KR 102487449 B1 KR102487449 B1 KR 102487449B1
Authority
KR
South Korea
Prior art keywords
image
vehicle
data
information
local map
Prior art date
Application number
KR1020210169172A
Other languages
English (en)
Inventor
김호성
최종범
정규호
박정필
유재민
Original Assignee
포티투닷 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포티투닷 주식회사 filed Critical 포티투닷 주식회사
Application granted granted Critical
Publication of KR102487449B1 publication Critical patent/KR102487449B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • 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
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3602Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • 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
    • 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/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Traffic Control Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Navigation (AREA)
  • Processing Or Creating Images (AREA)
  • Instructional Devices (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 서버에 관한 기술로, 본 발명의 일 실시 예에 따르면, 로컬맵 제작을 위한 데이터-셋 어노테이션 방법에 있어서, 차량의 주행 중 수집되는 주행 데이터와 영상으로부터 영상 촬영의 시점의 위치값 및 자세 정보를 포함하는 제1 이미지를 획득하는 단계; 도로 정보에 관한 벡터 데이터를 포함하는 글로벌 맵 중 상기 제1 이미지의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러오는 단계; 상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하여 상기 제1 벡터맵의 벡터 데이터와 상응하도록 정합하는 단계; 및 상기 정합하는 단계에서 산출된 상기 제1 이미지의 위치 보정값 및 자세 보정값을 어노테이션 정보로 생성하는 단계;를 포함할 수 있다.

Description

로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버{METHOD FOR ANOTATING DATA-SET TO GENERATE LOCAL MAP AND SERVER PERFORMING THIS}
본 발명은 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버에 관한 기술이다.
기존 사람이 운전하는 차량은 사람이 주변을 인식하고 네비게이션의 안내 경로에 따라 운전을 하는 방식이었다면, 최근 자율주행 모빌리티 관련하여 차량이 스스로 주행 경로를 판단하기 위한 다수의 기술들이 개발되고 있다.
이때, 자율주행 모빌리티가 참조하는 것이 정밀 도로 지도라면, 이러한 정밀 도로 지도를 제작하기 위해서는 특수한 장비들이 필요하고 상당히 많은 리소스가 투입되어야 한다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명은 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버에 관한 개시를 제공한다.
본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 발명의 다른 과제 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시 예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명이 해결하고자 하는 과제 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.
본 개시의 제1 측면은, 로컬맵 제작을 위한 데이터-셋 어노테이션 방법에 있어서, 차량의 주행 중 수집되는 주행 데이터와 영상으로부터 영상 촬영의 시점의 위치값 및 자세 정보를 포함하는 제1 이미지를 획득하는 단계; 도로 정보에 관한 벡터 데이터를 포함하는 글로벌 맵 중 상기 제1 이미지의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러오는 단계; 상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하여 상기 제1 벡터맵의 벡터 데이터와 상응하도록 정합하는 단계; 및 상기 정합하는 단계에서 산출된 상기 제1 이미지의 위치 보정값 및 자세 보정값을 어노테이션 정보를 생성하는 단계;를 포함하는, 방법일 수 있다.
또한, 상기 제1 이미지를 획득하는 단계는, 상기 차량으로부터, 상기 차량이 GPS 신호에 기반하여 실시각 이동 측위(RTK, Real Time Kinematic) 방법으로 측정한 위치값과, 상기 차량에 부착된 다수의 센서로부터 센싱된 차량의 3축 방향 정보 및 3축에서의 회전각 데이터를 포함하는 자세 정보와, 상기 차량의 전방, 후방, 측면 중 적어도 하나 이상에 위치한 카메라로부터 촬영된 영상과, 만일 상기 카메라가 복수개 일 경우 상기 카메라의 차량내 위치에 따른 켈리브레이션 값을 같이 획득하는 단계;를 더 포함할 수 있다.
또한, 상기 제1 이미지를 획득하는 단계는, 상기 주행 데이터와 영상을 소정의 단위에 기초하여 위치값 및 자세 정보를 포함하는 복수개의 이미지로 추출하는 단계; 및 상기 복수개의 이미지 중 상기 위치값 또는 상기 자세 정보가 매칭되지 않은 이미지들을 제거하는 단계;를 더 포함할 수 있다.
또한, 상기 정합하는 단계는, 상기 제1 이미지의 위치값 및 자세 정보와, 상기 제1 벡터맵의 속성 정보를 비교함으로써 상기 제1 이미지에 대한 위치 보정값 및 자세 보정값을 산출하는 단계; 및 상기 제1 이미지에 상기 위치 보정값 및 상기 자세 보정값을 적용한 제2 이미지와 상기 제1 벡터맵을 정합하는 단계;를 포함할 수 있다.
또한, 상기 정합하는 단계는, 상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하는 단계; 상기 제1 벡터맵의 벡터 데이터를 상기 제1 이미지에 중첩적으로 표시하는 단계; 및 상기 제1 이미지의 형상 그룹과, 상기 제1 벡터맵의 벡터 데이터가 동일한 객체라고 판단되면 상기 제1 이미지와 상기 제1 벡터맵을 각각 로컬맵과 글로벌 맵을 매핑하기 위한 데이터-셋으로 라벨링하는 단계;를 더 포함할 수 있다.
또한, 상기 제1 이미지에 대한 수평 보정 후 중력 방향을 나타내는 가이드 선을 표시하는 단계;를 더 포함할 수 있다.
또한, 상기 제1 이미지 및 상기 제1 벡터맵의 정합이 실패하거나, 상기 제1 이미지와 상기 제1 벡터맵의 정합 결과 소정의 임계치 이상의 차이가 발생하는 경우, 상기 글로벌 맵에 대한 업데이트를 요청하는 단계;를 더 포함할 수 있다.
또한, 상기 제1 이미지에 상기 위치 보정값 및 상기 자세 보정값을 적용한 제2 이미지를 이용하여 버드아이뷰(BEV, Bird eye view) 이미지를 생성하는 단계를 더 포함할 수 있다.
또한, 상기 어노테이션 정보로 생성되는 자세 보정값으로부터, 해당 지점의 도로의 곡률, 경사 및 기울기 정보를 산출하는 단계; 및 상기 산출한 도로의 곡률, 경사 및 기울기 정보를 기초로 차량의 측위 보정을 위한 참조값으로 생성하는 단계;를 더 포함할 수 있다.
또한, 상기 어노테이션 정보는, 상기 제1 이미지의 위치 보정값 및 자세 보정값 중 적어도 하나 이상을 포함하고, 상기 위치 보정값은 위도값, 고도값, 경도값 중 적어도 하나에 대한 보정값이고, 상기 자세 보정값은 x 평면, y 평면, z 평면에 대한 롤(roll), 피치(pitch), 야(yaw) 중 적어도 하나에 대한 보정값일 수 있다.
또한, 로컬맵 제작을 위한 데이터-셋 어노테이션을 수행하는 서버에 있어서, 적어도 하나의 프로그램이 저장된 메모리; 및 상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고, 상기 프로세서는, 차량의 주행 중 수집되는 주행 데이터와 영상으로부터 영상 촬영의 시점의 위치값 및 자세 정보를 포함하는 제1 이미지를 획득하고, 도로 정보에 관한 벡터 데이터를 포함하는 글로벌맵 중 상기 제1 이미지의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러오고, 상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하여 상기 제1 벡터맵의 벡터 데이터와 상응하도록 정합하고, 상기 정합하는 단계에서 산출된 상기 제1 이미지의 위치 보정값 및 자세 보정값을 어노테이션 정보로 생성하는 것을 포함할 수 있다.
본 발명의 일 실시 예에 따르면, 기존의 정밀 도로 지도가 구축되지 않는 도로 환경에서도, 차량내 탑재된 로컬맵 제작 장치에 의해 자체적인 로컬맵 제작이 가능하다. 또한, 본 발명의 실시 예에 따라 로컬맵 제작을 위한 데이터-셋에 어노테이션 정보를 생성함으로써, 데이터-셋의 활용 영역을 넓히고, 글로벌 맵을 최신의 자료로 업데이트하는 것이 용이하다.
도 1은 본 발명의 일 실시예에 따른 로컬맵 제작 과정을 설명하는 예시적인 도면이다.
도 2는 크라우드 소싱 방식을 통한 로컬맵 제작 방식과, 엣지 단말에서의 로컬맵 제작 방식을 설명하는 예시도이다.
도 3은 본 발명의 다른 실시 예에 따른 로컬맵 제작 장치에서 데이터-셋 어노테이션을 생성하는 방법에 관해 설명하는 흐름도이다.
도 4는 본 발명의 일 실시 예에 따라 로컬맵 제작 장치가 영상을 정합하는 것을 설명하는 흐름도이다.
도 5는 차량에서 촬영한 전방 및 후방 영상을 나타내는 예시도이다.
도 6은 본 발명의 일 실시 예에 따른 로컬맵 제작을 위한 데이터-셋 생성 과정을 설명하는 예시도이다.
도 7은 본 발명의 일 실시 예에 따른 로컬맵 제작을 위한 데이터 전처리 과정을 설명하는 예시도이다.
도 8a 내지 도 8c는 본 발명의 일 실시 예에 따른 제1 이미지에 제1 벡터맵을 중첩적으로 표시한 것을 설명하는 일 예이다.
도 9a 내지 도 9c는 본 발명의 일 실시 예에 따른 제1 이미지에 대한 위치보정값 및 자세 보정값을 적용한 제2 이미지에 대해 설명하는 일 예이다.
도 10a는 본 발명의 일 실시 예에 따른 로컬맵 제작 장치에서 제2 이미지에 어노테이션 정보를 표시하는 방법에 관한 일 예이다.
도 10b는 차량의 자세 정보에 관한 이해를 돕기 위해, 3축 정보 및 3축에 대한 회전각 정보를 설명하는 예시적인 도면이다.
도 10c는 본 발명의 일 실시 예에 따른 로컬맵 제작 장치에서 버드아이뷰 이미지를 생성하는 일 예이다.
도 11은 본 발명의 일 실시예에 따른 제1 이미지와 제1 백터맵을 이용하여글로벌 맵을 업데이트하는 프로세스를 설명하는 일 예이다.
도 12는 본 발명의 일 실시예에 따른 로컬맵 제작 장치에서 위치 보정값 및 자세 보정값을 적용한 제2 이미지를 활용할 수 있는 영역에 관해 설명하는 일 예이다.
도 13은 본 발명의 일 실시 예에 따른 로컬맵에 기초한 라우팅 경로 결정 장치(200)에 관한 블록도이다.
도 14는 일 실시 예에 따른 로컬맵에 기초한 라우팅 경로 결정 장치(200)를 통해 라우팅 경로를 결정하는 방법에 관한 흐름도이다.
도 15는 본 발명의 일 실시 예에 따른 라우팅 경로 결정 과정을 설명하는 예시도이다.
도 16은 본 발명의 또 다른 실시 예에 따른 서버에 관한 구성도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다."매커니즘", "요소", "수단" 및 "구성"등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로써 한정되는 것은 아니다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
자율주행을 목표로 하는 차량은 실시간으로 주변 환경을 인식하고, 자율주행 차량에 적합한 맵을 기초로 적절한 운행 경로를 결정하는 것이 중요하다.
본 발명의 일 실시 예에 따르면 고해상도 맵을 미리 만들어놓고 이를 불러오는 방식이 아닌, 자율주행 차량에 탑재된 로컬맵 제작 장치를 통해 자율주행을 위한 데이터-셋을 수집하고 이를 기초로 로컬맵을 제작하는 것이 가능하다. 이때, 필요한 것이 로컬맵 제작 장치이며, 로컬맵 제작 장치는 차량의 촬영 영상을 실시간으로 해석하고, 차량의 주행 경로 설정에 필요한 데이터-셋을 선별 학습함으로써 실시간으로 로컬맵을 제작할 수 있다.
예를 들어, 글로벌 맵(Global map)이 일반적인 정밀 도로 지도 또는 경량화된 도로 지도라고 한다면, 여기서 로컬맵은 차량에서 촬영되는 영상을 해석하여 만들어지는 지역화된 지도(localized map)를 의미할 수 있다.
본 발명의 일 실시 예에 따르면, 로컬맵 제작 장치는 상용 차량에 탑재되어 실시간으로 영상을 획득하고 실시간으로 로컬맵을 제작하며, 서버와의 정보 교환을 통해 주변의 다른 차량 또는 서버에 기 수집된 소정의 맵(Prior map)을 추가적으로 획득할 수 있다. 일 예로, 여기서 소정의 맵(Prior map)은 이전에 제작되어 있는 지도를 의미할 수 있다. 이때 소정의 맵(Prior map)은 전술한 글로벌 맵이 될 수 있고, 또는 글로벌 맵 중 벡터 데이터들을 추출한 벡터맵이 될 수 있다.
한편, 로컬맵은 단순히 차량의 영상으로부터 획득한 주변 정보 이외에, 차량의 운행 중 주변에 있을 것으로 예측되는 주변 환경에 대한 정보를 포함할 수 있다. 예를 들어, 로컬맵의 각 데이터-셋에는 주변 환경에 대한 정보가 어노테이션 정보로 생성될 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 로컬맵 제작 과정을 설명하는 예시적인 도면이다. 로컬맵 제작 장치(100)는 차량으로부터 획득한 촬영 영상을 실시간으로 해석함으로써 로컬맵을 제작할 수 있다.
도 1의 가장 좌측 상단 이미지(10)를 참고하면, 도로를 주행중인 차량이 딥러닝 추론 모델을 통해 자기 차량의 운행중인 차선과, 주변 차량을 인식하는 것이 나타난다. 이때, 로컬맵 제작 장치(100)는 차량에 탑재되어 차량에서 획득된 정보들을 기초로 로컬맵을 제작할 수 있다.
도 1의 영상(11)은 차량에 탑재된 카메라가 촬영한 영상을 나타낸다. 그 다음, 로컬맵 제작 장치(100)는 영상 내 형상 그룹(feature class) 인식(12)을 통해 영상 내 포함된 객체들을 인식할 수 있다. 구체적으로, 로컬맵 제작 장치(100)는 도로 환경에 대한 몇가지 형상 그룹들을 지정하고, 딥러닝 추론 모델을 통해 객체들의 형상을 라벨링하여 소정의 형상 그룹들을 인식할 수 있다. 한편, 위와 같은 형상 그룹 인식은 주행 중인 차량에서 실시간으로 인식될 수 있다.
한편, 로컬맵 제작 장치(100)에는 소정의 맵(Prior map, 13) 정보가 입력될 수 있다. 이 경우, 로컬맵 제작 장치(100)는 영상(10)과 소정의 맵(13) 정보를 입력받아, 백본 네트워크(Backbone Network)를 통해 입력된 이미지들에 대한 형상을 세밀하게 분류하고, 이를 통해 형상 그룹 인식을 고도화할 수 있다. 백본 네트워크는 뉴렬 네트워크(Neural Network) 기반의 추론 모델로, 딥러닝 추론 모델의 일종일 수 있다.
도 1을 참고하면, 로컬맵 제작 장치(100)는 영상에서 인식한 형상 그룹들을 하이라이트로 중첩하여 표시한 중간 결과(14)를 출력할 수 있다. 이때, 중간 결과(14)는 로컬맵 제작 과정에서 도출되거나, 제작된 로컬맵의 결과물을 이용하는 방식으로도 도출될 수 있으며, 중간 결과(14)는 차량이 주행 경로를 설정하는데 활용될 수 있다.
로컬맵 제작 장치(100)는 차량의 영상으로부터 딥러닝 추론 모델을 통해 도출한 결과들을 기초로, 맵(map)과의 매핑을 통해 로컬맵(15)을 제작할 수 있다. 여기서, 로컬맵(15)은 차량에서 차량 주변의 형상 그룹들을 인식하여 생성된 지역화된 지도일 수 있다.
로컬맵 제작 장치(100) 는 차량의 전방 영상, 측면 영상, 및 후면 영상 중 적어도 하나 이상에 기초하여 특정 방향에서의 로컬맵을 생성하거나, 여러 방향의 영상들을 정합하여 버드아이뷰 시점의 로컬맵을 생성할 수 있다. 도 1의 로컬맵(15)은 버드아이뷰(BEV, Bird Eyes View) 시점의 지도로, 차량의 경로를 화살표로 표시하였다.한편, 그 외에도 로컬맵 제작 장치(100)가 생성한 로컬맵을 출력하는 실시예는 다양하게 있을 수 있으므로, 로컬맵(15)을 구현하는 방법은 도 1에 기재된 설명으로 한정되지 않는다.
전술한 바와 같이, 로컬맵 제작을 위해 다수의 데이터-셋이 필요하며, 데이터-셋의 양과 질이 좋을수록 고품질의 자율주행 경로 설정을 할 수 있다. 고품질 데이터-셋을 만들기 위해 다양한 방법들이 시도되고 있으며, 본 발명의 일 실시 예에 따르면 데이터-셋에 대한 어노테이션 정보를 생성함으로써 데이터-셋 수집,가공에 필요한 리소스를 보다 효율적으로 활용할 수 있다.
본 발명의 일 실시 예에 따르면, 로컬맵 제작 장치(100)는 단일 차량에 탑재될 수도 있고, 차량에서 수집된 정보들을 차량 외부의 서버에서 데이터들을 수집하여 전술한 것과 같은 로컬맵을 제작할 수 있다.
다른 실시 예에 따르면, 차량에는 로컬맵 제작 장치(100) 이외 주행 경로를 결정하기 위한 라우팅 경로 결정 장치(200)가 탑재될 수 있다. 여기서, 로컬맵 제작 장치(100) 또는 라우팅 경로 결정 장치(200)는 각 장치의 기능을 설명하는 명칭으로, 별도의 장치가 아닌 하나의 프로세서에 의해 구현될 수도 있다. 일 예로, 라우팅 경로 결정 장치(200)는 로컬맵에 기초하여 차량의 현재 위치로부터 차량의 주행 경로 상에 포함된 회전 지점을 연결하는 라우팅 경로를 결정할 수 있다. 본 발명의 다른 실시 예에 따른 라우팅 경로 결정 장치(200)는 실시간으로 파악되는 차량의 현재 위치, 차선 정보, 차선 이동 횟수 등을 기초로 회전 지점별 경로비용을 산출하기 때문에, 차량이 실제 주행 환경에서 차선 이동이 가능한 경우에만 해당 경로를 선택할 수 있도록 유도하여 차량 운행에 최적화된 경로를 제공할 수 있다. 관련하여, 도 13 내지 도 15를 통해 로컬맵 제작 장치(100)에서 생성한 로컬맵을 이용하여, 라우팅 경로 결정 장치(200)가 차량의 주행 경로를 결정하는 실시 예를 후술한다.
도 2는 크라우드 소싱 방식을 통한 로컬맵 제작 방식과, 엣지 단말에서의 로컬맵 제작 방식을 설명하는 예시도이다.
클라우드를 운영하는 서버(2000)가 추론 모델을 통해 중앙 집중식 연산을 처리한다면, 엣지 단말(edge terminal, 3000)은 분산된 추론 모델을 통해 이미지를 자체적으로 처리하되, 처리한 이미지를 클라우드를 통해 서버(2000)와 교환함으로서 서버(2000)와 엣지 단말(3000)간 협업을 통해 연산을 수행하는 단말(terminal)일 수 있다.
여기서, 엣지 단말(3000)은 입력된 이미지들을 자체적으로 연산 처리할 수 있는 추론 모델을 포함할 수 있다. 엣지 단말(3000)에서 추론 모델을 통해 도출한 데이터-셋은 클라우드를 운영하는 서버(2000)에 전달될 수 있다.
서버(2000)는 크라우드 소싱(crowdsourcing)방식으로 다수의 차량들로부터 데이터-셋을 수집할 수 있다. 예를 들어, 다수의 챠랑들이 이미지(또는 영상)들을 클라우드(Cloud)에 송출하면, 서버(2000)는 추론 모델을 통해 클라우드를 통해 수집된 데이터-셋에 대한 연산 처리를 수행할 수 있다. 이때, 서버(2000)는 로컬맵 제작을 위한 프로그램을 처리하기 위한 프로세서를 탑재할 수 있다. 서버(2000)에서 추론 모델을 통해 로컬맵을 제작하면, 제작된 로컬맵은 다시 클라우드로 송출되고, 다수의 차량들에 로컬맵이 배포될 수 있다.
일 예로, 로컬맵 제작 장치는 서버(2000), 또는 엣지 단말(3000)에서 로컬맵 제작을 위한 알고리즘을 수행하는 프로세서가 될 수 있다. 이하 로컬맵 제작 장치가 서버(2000) 또는 엣지 단말(3000)에서 동작할 수 있음을 전제로 이하 내용들을 설명한다.
도 3은 본 발명의 다른 실시 예에 따른 로컬맵 제작 장치(100)에서 데이터-셋 어노테이션을 생성하는 방법에 관해 설명하는 흐름도이다. 일 예로, 로컬맵 제작 장치(100)는 어노테이션 툴을 가지고 있을 수 있고, 이하 로컬맵 제작 장치(100)에서 상기 어노테이션 툴을 이용하여 데이터-셋을 어노테이션 하는 방법을 설명한다.
일 실시 예에 따르면, 차량에는 다수의 센서들 및 복수개의 카메라가 탑재되어 있을 수 있다. 차량에 탑재된 다수의 센서들은 차량의 주행 데이터를 수집하고, 차량에 탑재된 복수개의 카메라는 촬영 영상을 획득할 수 있다.
단계 1010에서, 로컬맵 제작 장치(100)는, 차량의 주행 중 수집되는 주행 데이터와 영상으로부터 영상 촬영의 시점의 위치값 및 자세 정보를 포함하는 제1 이미지를 획득(acquiring)할 수 있다.
일 예로, 로컬맵 제작 장치(100)는 복수개의 카메라로부터 캘리브레이션 값을 획득할 수 있다. 로컬맵 제작 장치(100)는 각각의 카메라가 촬영한 영상 및 로그 데이터를 저장할 수 있다. 여기서, 로그 데이터는 로스백(rosbag) 파일로 저장될 수 있다. 로컬맵 제작 장치(100)는 촬영 영상을 초당 몇 개의 이미지 프레임으로 추출할 지 설정할 수 있고, 이때 각 이미지에는 로스백 파일을 이용하여 각 이미지가 촬영될 때의 속성 정보, 예를 들어 각 이미지의 위치값, 자세 정보 등이 포함될 수 있다. 로컬맵 제작 장치(100)는 전술한 과정을 통해 촬영 영상 및 로스백 파일로부터 위치값 및 자세 정보를 포함하는 이미지를 추출할 수 있다.
여기서, 로컬맵 제작 장치(100)는 실시각 이동 측위(RTK, Real Time Kinematic) 방식으로 측정한 차량의 실시간 정밀 위치값을 이용할 수 있다. 구체적으로, 차량에 탑재된 GPS 센서가 GPS 신호를 수신하면, 실시각 이동 측위 방식에 기초하여 GPS 오차를 보정한 차량의 위치값(위도, 경도, 고도)을 측위할 수 있다. 이때, 차량의 위치값은 카메라가 영상을 촬영할 때의 위치값으로 속성 정보에 저장될 수 있다.
차량의 자세 정보는, 차량내 탑재된 다수의 센서들로부터 측정될 수 있다. 예를 들어, 차량에는 가속도 센서, 자이로 센서, 중력 센서 등이 탑재될 수 있으며, 차량의 자세 정보는 차량의 진행 방향, 중력 방향, 및 차량에 수평 방향에 대한 3개의 축과, 각 축에서의 회전값으로 표시될 수 있다.
예를 들어, 로컬맵 제작 장치(100)는 차량으로부터 차량이 GPS 신호에 기반하여 실시각 이동 측위(RTK, Real Time Kinematic) 방법으로 측정한 위치값과, 차량에 부착된 다수의 센서로부터 센싱된 차량의 3축 방향 정보 및 3축에서의 회전각 데이터를 포함하는 자세 정보와, 차량의 전방, 후방, 측면 중 적어도 하나 이상에 위치한 카메라로부터 촬영된 영상과, 만일 상기 카메라가 복수개 일 경우 상기 카메라의 차량내 위치에 따른 켈리브레이션 값을 같이 획득할 수 있다.
한편, 전술한 주행 데이터 및 촬영 영상은 차량으로부터 획득되지만, 로컬맵 제작 장치(100)는 항상 해당 차량에 탑재될 필요는 없으며, 차량으로부터 데이터를 전달받아 차량 외부의 서버에서 로컬맵을 제작할 수도 있다.
로컬맵 제작 장치(100)는 로-데이터(raw-data)로 주행데이터 및 촬영 영상을 획득하면, 로-데이터를 전처리함으로써 로컬맵 제작을 위한 입력 데이터로 가공할 수 있다.
단계 1020에서 로컬맵 제작 장치(100)는 도로 정보에 관한 벡터 데이터를 포함하는 글로벌 맵 중 상기 제1 이미지의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러올 수 있다.
예를 들어, 로컬맵 제작 장치(100)는 로컬맵 제작을 위해 촬영 영상을 복수개의 이미지로 추출할 수 있다. 촬영 영상은 초당 몇 개의 프레임의 이미지들로 구성되어 있으며, 로컬맵 제작 장치(100)는 시간 단위 또는 프레임 개수 단위로 소정의 기준에 따라 필요한 이미지들을 1차 필터링 하고, 여기서 필터링 후 이미지들을 제1 이미지라 칭할 수 있다. 이때, 각각의 제1 이미지에는 카메라가 해당 영상을 촬영할 때의 속성 정보가 기재되어 있을 수 있다. 예를 들어, 제1 이미지는 촬영 시간, 차량의 위치값, 차량의 자세정보 등이 속성 정보로 포함되어 있을 수 있다.
전술한 바와 같이 만일 차량내 복수개의 카메라가 각각 영상을 촬영하는 경우, 로컬맵 제작 장치(100)는 차량내 각 카메라가 배치된 위치값을 기초로 캘리브레이션 값을 획득하고, 여러대의 카메라에서 촬영한 영상으로부터 복수개의 이미지를 추출할 수 있다. 또한, 로컬맵 제작 장치(100)는 특정 시점에 수집한 다양한 각도의 이미지들의 지오메트리(geometry)를 일치시켜 이미지 등록(image registration)을 할 수 있다.
예를 들어, 로컬맵 제작 장치(100)에서 제1 이미지를 획득하는 단계는, 주행 데이터와 영상을 소정의 단위에 기초하여 위치값 및 자세 정보를 포함하는 복수개의 이미지로 추출하는 단계 및 상기 복수개의 이미지 중 상기 위치값 또는 상기 자세 정보가 매칭되지 않은 이미지들을 제거하는 단계를 포함할 수 있다.
로컬맵 제작 장치(100)에서 전술한 데이터 전처리 과정을 통해 필터링된 제1 이미지들은 글로벌 맵에서 추출된 제1 벡터맵들과 대응될 수 있다. 이를 위해, 글로벌 맵 중 제1 이미지에 대응하는 제1 벡터맵들을 필터링하는 과정 역시 필요할 수 있다.
일 예로, 자율주행 모빌리티를 위한 지도는 카메라를 통해 촬영한 영상을 이미지로써 저장하는 것보다, 이를 벡터화하여 필요한 정보만을 추출하여 저장하는 것이 더 장점이 많을 수 있다. 이를 위해, 로컬맵 제작 장치(100)는 글로벌 맵 자체가 아닌 글로벌 맵을 벡터 데이터로 변환함으로써 생성한 벡터 스페이스에 관한 정보를 포함하는 벡터맵으로 불러올 수 있다. 예를 들어, 벡터 맵은 차선 인식 결과로 벡터 스페이스 내 점과 점 사이를 연결함으로써 차선 라인을 표시할 수 있다.
한편, 로컬맵 제작 장치(100)는 차량내 탑재된 카메라에 기초하여 로컬맵을 실시간으로 제작할 수도 있지만, 다른 사용자가 기 제작해놓은 벡터 데이터를 포함하는 글로벌 맵을 불러올 수 있다면 이를 이용하여 해당 차량의 로컬맵 제작에 활용할 수 있다.
일 예로, 로컬맵 제작 장치(100)는 글로벌 맵에 포함된 수많은 벡터 데이터들 중 각 이미지 프레임에 포함된 차량의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러올 수 있다. 이때, 로컬맵 제작 장치(100)는 일정 가시 거리내 위치값을 기준으로 2차 필터링을 수행할 수 있다. 일 실시 예에 따르면 제1 벡터맵은 벡터 스페이스에 관한 정보를 추출한 고해상도 벡터맵 일 수 있다.
데이터-셋에 대한 전처리가 완료되면, 로컬맵 제작 장치(100)는 전처리가 완료된 데이터-셋을 이용하여 로컬맵 제작을 위한 과정을 진행할 수 있다.
단계 1030에서, 로컬맵 제작 장치(100)는 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하여 상기 제1 벡터맵의 벡터 데이터와 상응하도록 정합할 수 있다. 여기서, 형상 그룹은 제1 이미지 내 포함된 차선, 교차로, 신호등, 표지 등을 딥러닝 추론 모델을 이용하여 레이블(lable)한 것으로, 객체 인식을 보다 쉽게 하기 위해 정의된 그룹일 수 있다.
로컬맵 제작 장치(100)는 제1 이미지와 제1 백터맵을 정합하기에 앞서 제1 이미지에 대한 보정을 수행할 수 있다. 예를 들어, 제1 백터맵을 기준으로 제1 이미지를 제1 벡터맵에 정합하기 위해 제1 이미지의 위치 보정, 자세 보정을 수행할 수 있다.
도 4는 본 발명의 일 실시 예에 따라 로컬맵 제작 장치(100)에서 정합하는 단계를 설명하는 흐름도이다.
단계 1050에서, 로컬맵 제작 장치(100)는 제1 이미지의 위치값 및 자세 정보와, 제1 벡터맵의 속성 정보를 비교함으로써 제1 이미지에 대한 위치 보정값 및 자세 보정값을 산출할 수 있다. 예를 들어, 로컬맵 제작 장치(100)는 제1 이미지의 위치 보정값 및 자세 보정값 중 적어도 하나 이상을 어노테이션 정보로 생성할 수 있다. 여기서, 위치 보정값은 위도값, 고도값, 경도값 중 적어도 하나에 대한 보정값이고, 자세 보정값은 x 평면, y 평면, z 평면에 대한 롤(roll), 피치(pitch), 야(yaw) 중 적어도 하나에 대한 보정값일 수 있다.
일 예로, 로컬맵 제작 장치(100)는 제1 이미지의 위치값 및 제1 벡터맵의 위도값 및 경도값의 차이에 기초한 거리 정보를 산출하고, 산출한 거리 정보를 위치 보정값으로 산출할 수 있다.
다른 예로, 로컬맵 제작 장치(100)는 제1 이미지의 고도값과 제1 벡터맵의 고도값을 비교하여, 제1 이미지의 고도값을 제1 벡터맵의 고도값과 대응하도록 고도 보정값을 산출할 수 있다. 한편, 여기서 고도값은 차량내 중력 센서로부터 측정한 차량 고도값 또는 차량내 카메라로부터 캘리브레이션 값을 가져옴으로써 획득한 카메라 고도값 등이 있을 수 있다.
또한, 로컬맵 제작 장치(100)는 제1 이미지의 3축 방향 정보 및 3축 회전각 데이터를 조정하여 제1 벡터맵 내 벡터 방향에 상응하도록 자세 보정값을 산출할 수 있다. 여기서, 자세 정보는 x축, y축, z축의 3축과, 각 축에 대한 회전각 롤(roll), 피치(pitch), 야(yaw) 정보로 표시될 수 있다.
한편, 제1 이미지의 자세 정보는, 상기 제1 이미지를 촬영한 카메라가 탑재된 차량의 주행 데이터로부터 획득될 수 있다. 예를 들어, 차량의 주행 데이터는 차량내 가속도 센서로부터 센싱된 진행방향 정보, 자이로센서로부터 센싱된 차량의 기울기 정보, 중력 센서로부터 센싱된 차량의 중력 방향 정보 등을 포함할 수 있다. 유사하게, 제1 벡터맵에도 속성 정보로써 차량의 자세 정보가 포함되어 있을 수 있다. 차량의 자세 정보는 차량내 카메라의 배치 위치에 따라 캘리브레이션된 해당 이미지 촬영 시점의 자세 정보가 획득될 수 있다. 로컬맵 제작 장치(100)는 제1 이미지의 자세 정보와, 제1 벡터맵의 자세 정보를 비교하여 제1 이미지를 제1 벡터맵에 대응시키기 위한 자세 보정값을 산출할 수 있다.
단계 1060에서, 로컬맵 제작 장치(100)는 제1 이미지에 위치 보정값 및 자세 보정값을 적용하여 제1 이미지와 제1 벡터맵을 정합할 수 있다. 로컬맵 제작 장치(100)에서 제1 이미지에 대해 상기 제1 벡터맵과 대응하도록 위치 보정값 및 자세 보정값을 적용하면, 보정전 제1 이미지와 구별하기 위해 이를 제2 이미지라 칭할 수 있다.
이때, 로컬맵 제작 장치(100)는 제1 이미지에 대한 수평 보정 후 중력 방향 가이드 선을 표시하는 단계를 포함할 수 있다. 로컬맵 제작 장치(100)는 사용자에게 보정된 이미지를 제공하는 과정에서 사용자로 하여금 수평 보정이 된 상태인지 또는 얼마만큼 수평 보정이 필요한지에 대한 가이드를 제공할 수 있다.
다시 도 3을 참고하면, 단계1040에서 로컬맵 제작 장치(100)는 상기 정합하는 단계에서 산출된 제1 이미지의 위치 보정값 및 자세 보정값을 어노테이션 정보로 생성할 수 있다. 여기서, 어노테이션 정보는 데이터-셋에 첨부되는 주석으로 설명될 수 있으며, 로컬맵 제작 장치(100)는 데이터-셋에 관한 어노테이션 정보를 생성함으로써 해당 데이터-셋의 활용성을 높일 수 있다.
한편, 일 실시 예에 따르면, 로컬맵 제작 장치(100)는 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하고, 제1 벡터맵의 벡터 데이터를 제1 이미지에 중첩적으로 표시하고, 제1 이미지의 형상 그룹과, 제1 벡터맵의 벡터 데이터가 동일한 객체라고 판단되면 상기 제1 이미지와 상기 제1 벡터맵을 각각 로컬맵과 글로벌 맵을 매핑하기 위한 데이터-셋으로 라벨링할 수 있다. 여기서, 로컬맵 제작 장치(100)는 데이터-셋의 생성과 동시에 또는, 상기 데이터-셋에 대한 정합 과정을 통해 데이터-셋에 관한 어노테이션 정보를 생성할 수 있다. 여기서, 데이터-셋에 대한 어노테이션 정보는 라이브러리에 저장될 수 있다.
차량내 회득한 이미지가 각각 다른 시점에서 촬영된 영상일 경우 이를 데이터-셋으로 취합하여 로컬맵을 제작하기 위해서는, 영상 획득 시점의 차이로 인한 오류가 상당 부분 발생할 수 있다. 그러나, 본 발명의 일 실시 예에 따르면 이러한 데이터-셋의 정합 오류를 방지하고, 어노테이션 정보를 통해 데이터-셋의 활용성을 극대화할 수 있다.
만일 제1 이미지와 제1 벡터맵이 위와 같은 제1 이미지에 대한 보정 없이도 소정의 임계값 이하로 일치한다면, 로컬맵 제작 장치(100)는 로컬맵이 현재 최신 상태를 반영하고 있는 것을 인지할 수 있다.
한편, 로컬맵 제작 장치(100)는 상기 제1 이미지 및 상기 제1 벡터맵의 정합이 실패하거나, 상기 제1 이미지와 상기 제1 벡터맵의 정합 결과 소정의 임계치 이상의 차이가 발생하는 경우, 상기 글로벌맵에 대한 업데이트를 요청하는 단계를 포함할 수 있다.
또한, 로컬맵 제작 장치(100)는 제1 이미지에 위치 보정값 및 자세 보정값을 적용한 제2 이미지를 이용하여 버드아이뷰(BEV) 이미지를 생성할 수 있다.
또한, 로컬맵 제작 장치(100)는 상기 어노테이션 정보로 생성되는 자세 보정값으로부터, 해당 지점의 도로의 곡률, 경사 및 기울기 정보를 산출하고, 상기 산출한 도로의 곡률, 경사 및 기울기 정보를 기초로 차량의 측위 보정을 위한 참조값으로 생성할 수 있다.
또한, 로컬맵 제작 장치(100)가 이미 특정 차량 및 특정 차량에 배치된 카메라의 위치값 및 자세 정보를 어노테이션 정보로 가지고 있다면, 이후 로컬맵을 이용하는 차량으로서는 실시간 로컬맵 제작을 위해 전술한 로컬맵 제작이 전 과정을 수행할 필요 없이, 해당 차량에 대응하는 어노테이션 정보를 통해 위치 보정 및 자세 보정을 수행하고, 이를 차량의 로컬맵 제작에 활용할 수 있다. 이 경우, 차량에서 자체적으로 새로운 로컬맵을 제작하기 위해 필요한 연산을 상당 부분 줄일 수 있다.
도 5는 차량에서 촬영한 전방 및 후방 영상을 나타내는 예시도이다. 도 5를 참고하면, 장치(100)는 차량의 전방 카메라, 후면 카메라 또는 측면 카메라를 통해 다양한 시점의 촬영 영상을 획득할 수 있다.
도 5를 참고하면, 차량의 전방 영상(210), 후방 영상 1(220), 후방 영상 2(230) 등이 카메라로부터 수집될 수 있다.
한편, 차량내 카메라는 다수의 위치에 배치될 수 있다. 예를 들어, 차량은전방, 우측면, 좌측면뿐 아니라, 차량 내 각 면에 2개 이상의 카메라를 배치함으로써 8개의 카메라로부터 촬영 영상을 획득하거나, 그 이상의 카메라를 더 배치할 수도 있다.
도 6은 본 발명의 일 실시 예에 따른 로컬맵 제작을 위한 데이터-셋 취합 과정을 설명하는 예시도이다.
도 6을 참고하면, 로컬맵 제작 장치(100)는 차량에 탑재된 카메라의 위치로부터 캘리브레이션(320) 값을 획득하고, 복수개의 카메라로부터 촬영 영상(210,220, 230)을 획득할 수 있다. 또한, 로컬맵 제작 장치(100)는 획득한 촬영 영상(210, 220, 230)으로부터 추출한 이미지를 레지스트레이션(325)할 수 있다.
다른 측면에서, 로컬맵 제작 장치(100)는 차량에 포함된 다수의 GPS 센서, 가속도 센서, 자이로 센서 등으로부터 차량의 위치값, 자세 정보를 포함하는 주행 데이터(310)를 획득할 수 있다.
예를 들어, 차량에 탑재된 주행 데이터 처리 장치(미도시)는 GPS 센서가 GPS 신호를 수신하면, 차량 내에 GPS 신호를 기초로 보다 정밀한 RTK(Real-time kinematic positioning) 측위를 할 수 있다. RTK 측위는 기지국(base-station) 에서 보정 신호를 생성하여 실시간으로 위치를 알고자 하는 이동국(rover)에 전송함으로써 고정밀 측위를 구현하는 측위 방식이다. 주행 데이터 처리 장치는 RTK 측위 방식을 통해 차량의 위치값을 산출할 수 있다.
또한, 주행 데이터 처리 장치는 차량에 탑재된 가속도 센서, 자이로 센서 등으로부터 차량의 진행 방향을 기준으로 x축, y축, z축을 판단하고, 3개의 각 축으로부터 차량의 회전 각도를 산출함으로써 차량의 자세값을 획득할 수 있다. 일 예로, 주행 데이터 처리 장치는 차량의 자세값을 x축_Roll값, y축_Pitch값, z축_Yaw값 등으로 획득할 수 있다.
한편, 로컬맵 제작 장치(100)는 차량내 탑재될 수도 있지만, 차량으로부터수집한 데이터-셋을 기초로 차량 외부에 위치한 서버를 통해서 구현될 수도 있다. 본 발명은 이에 대해 제한하지 않으며, 차량의 주행 데이터는 다양한 소스로부터 획득될 수 있다.
로컬맵 제작 장치(100)는 이미지 레지스트레이션(325) 및 주행 데이터(310)를 획득하여, 로컬맵 제작을 위한 데이터-셋으로 수집(330), 데이터-셋 전처리(340), 데이터-셋 보정(350) 과정을 통해 어노테이션 정보를 생성(360)할 수 있다. 이때, 로컬맵 제작 장치는 소정의 맵의 일종인 고해상도 맵(HD map, 345) 등을 참조하여 데이터-셋에 대한 보정(350)을 수행할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 로컬맵 제작을 위한 데이터 전처리 과정을 설명하는 예시도이다. 일 예로 로컬맵 제작 장치(100)는 전방 이미지(410)로부터 시간당 몇 프레임을 가지는 소정의 이미지 프레임들을 추출할 수 있다.
도 4를 참고하면, 로컬맵 제작 장치(100)는 전방 이미지(410)로부터 초당 몇 개의 프레임의 이미지를 추출할 것인지 설정하여, 촬영 영상으로부터 초당 몇 개의 이미지 프레임(411, 412, 413, 414, 415)을 추출할 수 있다. 이때, 각 이미지 프레임에는 촬영 시간, 차량의 위치값, 차량의 자세정보 등이 속성 정보로 포함되어 있을 수 있다.
한편, 로컬맵 제작 장치(100)는 글로벌 맵(420)중 소정의 벡터 데이터를 포함하는 제1 벡터맵을 불러올수 있다(425). 이때, 로컬맵 제작 장치(100)는 1차 필터링을 통해 추출된 이미지 프레임 01(Frame 01, 411)의 위치값을 기초로 글로벌 맵(420) 중 상기 위치값과 소정의 거리 이내 교집합을 가지는 벡터맵을 추출할 수 있다.
이 때, 1차 및 2차 필터링 과정을 통해 추출된 이미지를 제1 이미지, 전술한 방법을 통해 추출된 벡터맵을 제1 벡터맵이라 정의할 수 있다. 로컬맵 제작 장치(100)에는 1차 필터링 및 2차 필터링을 수행함으로써 제1 이미지 및 제1 벡터맵을 선별할 수 있다.
도 8a 내지 도 8c는 본 발명의 일 실시 예에 따른 제1 이미지에 제1 벡터맵을 중첩적으로 표시한 것을 설명하는 일 예이다. 예를 들어, 로컬맵 제작 장치(100)는 카메라로부터 촬영된 영상, 또는 영상으로부터 추출한 이미지들에서 형상 그룹(feature class) 인식을 통해 이미지 내 포함된 차선, 방향 지시표, 교차로, 도로 표지 등을 인식할 수 있다.
도 8a를 참고하면, 로컬맵 제작 장치(100)는 전방을 촬영한 제1 이미지(510) 내에 차선(514, 517), 방향 지시표시(511, 512, 513), 정지선(518), 표지판(519) 등의 형상을 인식하고, 이를 벡터 데이터 형태로 제1 이미지(510)에 중첩적으로 표시할 수 있다. 여기서, 제1 벡터맵에는 위와 같은 벡터 데이터들이 포함되어 있을 수 있으며, 로컬맵 제작 장치(100)는 제1 이미지(510) 내에서 인식한 형상들에 대해 선, 박스 등의 형태로 하이라이트 표시를 할 수 있다.
도 8b를 참고하면, 로컬맵 제작 장치(100)는 차량에서 후방을 촬영한 제1 이미지(520) 내에 차선(521, 522, 523), 지형 경계선(524, 525) 등의 형상을 인식할 수 있다. 이때, 차선 및 지형 경계선 등은 기존의 라벨링된 형상 그룹으로서, 로컬맵 제작 장치(100)는 데이터-셋 학습을 통해 형상 그룹 인식 결과를 최적화할 수 있다.
도 8c를 참고하면, 로컬맵 제작 장치(100)는 차량에서 후방을 촬영한 제1 이미지(530) 내에 차선(531, 532, 533) 및 지형의 경계선(534, 535) 등의 형상을 인식할 수 있다. 로컬맵 제작 장치(100)는 형상 그룹에 대한 라벨링을 통해 위와 같은 형상 인식을 실시간으로 수행할 수 있다.
도 9a 내지 도 9c는 본 발명의 일 실시 예에 따른 위치 보정값 및 자세 보정값을 적용한 제2 이미지를 설명하는 일 예이다.
예를 들어, 차량내 탑재된 카메라가 영상을 촬영할 때에는 차량의 차체 높이, 카메라의 배치 위치 등에 따라, 중력 방향을 기준으로 소정의 고도에서 촬영한 촬영 영상이 획득된다. 이때, 다수의 차량에서 제작한 로컬맵을 획득하는 경우, 각 차량에 탑재된 카메라의 고도에 따라 약간 다른 시점에서 제작된 로컬맵이 획득될 수 있다. 본 발명의 일 실시 예에 따르면, 차량의 위치값 및 차량의 자세 정보를 보정해줌으로써, 표준화된 로컬맵 제작이 가능할 수 있다.
도 9a를 참고하면, 로컬맵 제작 장치(100)는 각 이미지 내에서 인식한 형상 그룹들 중 소정의 형상 그룹에 대해 위치 보정값 및 자세 보정값을 적용한 제2 이미지(610)를 생성할 수 있다.
일 예로, 로컬맵 제작 장치(100)는 촬영 영상을 복수개의 이미지 프레임으로 각각 저장하고, 복수개의 이미지 프레임들 중 공통으로 인식된 형상 그룹인 방향 지시 표시나, 신호등, 교통 표지판 등을 기준으로 제1 이미지와 제1 벡터맵을 비교할 수 있다. 이때, 로컬맵 제작 장치(100)는 제1 이미지 내 차선(611, 612, 613, 615, 617) 및 지형 경계선(616), 정지선(618) 등에 대해 제1 벡터맵과 정합하기 위한 위치 보정값 및 자세 보정값을 적용한 제2 이미지(610)을 생성할 수 있다.
도 9b를 참고하면, 로컬맵 제작 장치(100)는 차량의 후방 영상으로부터 추출된 제1 이미지 내에서 인식한 형상 그룹들 중 차선(621, 622, 623) 및 지형 경계선(624) 등에 대해 위치 보정값 및 자세 보정값을 적용한 제2 이미지(620)을 생성할 수 있다.
도 9c를 참고하면, 로컬맵 제작 장치(100)는 차량의 다른 측면의 후방 영상으로부터 추출된 제1 이미지 내에서 인식한 형상 그룹들 중 차선(631, 632, 633) 및 지형 경계선(634) 등에 대해 위치 보정값 및 자세 보정값을 적용한 제2 이미지(630)을 생성할 수 있다.
도 9a 내지 도 9c를 참고하면 로컬맵 제작 장치(100)는 소정의 형상 그룹들을 기준으로 제1 이미지와 제1 벡터맵을 정합하기 위한 위치 보정값 및 자세 보정값을 산출할 수 있고, 산출한 위치 보정값 및 자세 보정값을 적용하여 이를 제2 이미지 내 하이라이트하여 중첩적으로 표시할 수 있다.
도 10a는 본 발명의 일 실시 예에 따른 로컬맵 제작 장치(100)에서 제2 이미지에 어노테이션 정보를 표시하는 방법에 관한 일 예이다. 로컬맵 제작 장치(100)에서 제1 이미지에 대해 위치 보정 및 자세 보정 후의 이미지를 제2 이미지(710)라 정의하면, 제 2 이미지(710)에는 위치 보정 및 자세 보정을 위해 산출했던 위치 보정값 및 자세 보정값들이 어노테이션 정보(715)로 표시될 수 있다.
일 실시 예에 따라 도 10a을 참고하면 어노테이션 정보(715)는 차량의 자세 보정값에 해당하는 Roll:-0.XX, Pitch:0.0XX, Yaw: 120.X와, 수평 보정 적용여부(Horizontal position modified) 등의 정보를 포함할 수 있다.
한편, 어노테이션 정보(715)로 제2 이미지(710)에 표시되는 정보들은 다양할 수 있으며, 초기 설정에 따라 가변적인 정보가 될 수 있다. 본 발명에서는 어노테이션 정보(715)의 예시를 본 발명에 기재된 실시예로 한정하는 것은 아니며, 어노테이션 정보(715)에 관하여는 다양한 실시 예들이 있을 수 있다.
또한, 도 10a를 참고하면, 로컬맵 제작 장치(100)는 차량에 수평 보정을 수행하기 위한 중력 방향 가이드 선(711)을 제2 이미지에 중첩적으로 표시할 수 있다. 예를 들어 차량에 수평 보정이 제대로 되어 있지 않다면, 해당 차량에서 기울어진 영상을 촬영할 수 있고, 이는 로컬맵 제작을 위한 표준 데이터-셋으로 활용할 수 없을 수 있다. 본 발명의 일 실시 예에 따르면, 위와 같이 차량이 기울어진 상태에서 수집된 데이터도 차량의 자세 보정을 통해 적절한 가공을 거침으로써 로컬맵 제작을 위한 데이터-셋으로 재활용될 수 있다.
도 10b는 차량의 자세 정보에 관한 이해를 돕기 위해, 3축 정보 및 3축에 대한 회전각 정보를 설명하는 예시적인 도면이다. 차량의 진행 방향을 x축으로 놓았을 때, x축을 기준으로 차량이 기울어진 정도를 Roll값으로 표시할 수 있다. 또한, 차량의 진행 방향으로부터 수평 방향을 y축이라 할 때, 차량이 앞뒤로 흔들리는 정도를 회전각 Pitch값으로 표현할 수 있다. 또한, 차량에 적용되는 중력 방향을 z축이라 할 때, 차량이 z축을 기준으로 회전하는 정도를 회전각 Yaw값으로 표현할 수 있다. 차량의 자세 정보는 전술한 바와 같이 3축 및 3축에 대한 회전각으로 표시될 수 있다.
도 10c는 본 발명의 일 실시 예에 따른 로컬맵 제작 장치(100)에서 버드아이뷰(BEV) 이미지를 생성하는 것을 설명하는 일 예이다.
로컬맵 제작 장치(100)는 글로벌 맵을 다른 측면에서 표현한 버드아이뷰 이미지(730)를 생성할 수 있다. 여기서, 버드아이뷰는 도로 상황을 위에서 아래로 내려다보는 시점으로 생성된 이미지이며, 탑 뷰(Top view)라고도 불린다.
도 10c를 참고하면, 선택적 실시 예로, 버드아이뷰 이미지(730)에는 어노테이션 정보(735)가 중첩적으로 표시될 수 있다. 일 예로, 도 10c에서 표시한 어노테이션 정보(735)는 section: XXX, GPS: state 4, Modified: ??, Annotated: ?? 등의 정보를 포함할 수 있다.
한편, 본 발명에서 제시한 실시 예는 어디까지나 해당 내용을 설명하기 위한 일 예로써 참고되어야 하며, 어노테이션 정보(715)는 위에 기재된 정보 이외에 다른 정보들을 포함할 수 있다.
도 11은 본 발명의 일 실시예에 따른 제1 이미지와 제1 백터맵을 이용하여 글로벌 맵을 업데이트하는 프로세스를 설명하는 일 예이다. 로컬맵 제작 장치(100)는 다수의 차량으로부터 획득한 데이터-셋 및 데이터-셋에 대한 어노테이션 정보를 글로벌 맵에 계속 업데이트함으로써 로컬맵의 최신성을 유지할 수 있다.
도 11을 참고하면, 로컬맵 제작 장치(100)는 제1 이미지(810)와, 제1 벡터맵(820)를 비교하여 만일 양자가 소정의 임계값 이상으로 일치하는 경우 데이터-셋에 관한 어노테이션 정보를 수집할 수 있다(830).
반면, 로컬맵 제작 장치(100)는 제1 이미지(810)와 제1 백터맵(820)을 비교하여 양자가 소정의 임계값 이상으로 차이가 나는 경우, 글로벌 맵과 비교하여 현재 로컬맵에 포함된 도로 환경에 변화가 있음을 판단할 수 있고, 이를 글로벌 맵의 최신성을 판단하는 참조 자료로 이용할 수 있다. 이 과정에서 로컬맵 제작 장치(100)는 해당 글로벌 맵이 최신 자료가 아님을 확인할 수 있고, 해당 글로벌 맵을 업데이트하기 위한 프로세스를 진행할 수 있다.
도 12는 본 발명의 일 실시예에 따른 로컬맵 제작 장치(100)에서 위치 보정값 및 자세 보정값을 적용한 제2 이미지를 활용할 수 있는 영역에 관해 설명하는 일 예이다.
로컬맵 제작 장치(100)에서 제1 이미지(910)에 위치 보정 및 자세 보정을 적용함으로써 보정된 제2 이미지(930)는 여러 방면에서 활용될 수 있다.
도 12를 참고하면, 로컬맵 제작 장치(100)는 제1 이미지(910)에 위치 보정값 및 자세 보정값을 적용하여 자세 보정된 제2 이미지(930)를 획득할 수 있다. 이때, 제 2 이미지(930)는 데이터-셋에 관한 어노테이션 정보를 생성(940)하거나, 버드아이뷰 이미지를 생성(950)하거나, 차량의 측위 개선(960)을 위한 참고 자료로 활용될 수 있다.
도 13은 본 발명의 일 실시 예에 따른 로컬맵에 기초한 라우팅 경로 결정 장치(200)에 관한 블록도이다. 도 13을 참고하면, 로컬맵에 기초한 라우팅 경로 결정 장치(200)는 메모리(110), 통신부(130), 프로세서(150)을 포함할 수 있고, 차량에 탑재된 센서부(120)로부터 정보를 획득할 수 있다. 한편, 도 13에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 당해 기술분야의 통상의 기술자라면 이해할 수 있다.
메모리(110)는 장치(100)내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 프로세서(150)의 처리 및 제어를 위한 적어도 하나의 프로그램을 저장할 수 있다. 예를 들어, 메모리(110)는 프로세서(150)가 처리한 각종 라우팅 경로 결정값을 저장할 수 있다.
센서부(120)는 차량의 주변을 촬영하는 촬영 장치, GPS(Global Positioning System) 센서, 차량의 주행거리를 측정하기 위한 센서(예컨대, 차속계, 주행거리계, 가속도계 등) 또는 차량의 회전각을 측정하기 위한 센서(예컨대, 지자기센서, 자이로 센서 등)를 포함할 수 있다. 차량의 주변을 촬영하는 장치는 차량 외부의 환경을 기록하도록 구성되는 스틸 카메라 또는 비디오 카메라일 수 있다. 촬영 장치는 복수의 카메라들을 포함할 수 있고, 복수의 카메라들은 차량의 내부 및 외부 상의 복수의 위치들에 배치될 수 있다. 센서부(120)는 차량의 주변을 촬영하는 장치로부터 획득한 차량의 영상을 프로세서(150)로 전송할 수 있다.
한편, 차량내 카메라는 다수의 위치에 배치될 수 있다. 예를 들어, 차량은전방, 우측면, 좌측면뿐 아니라, 차량 내 각 면에 2개 이상의 카메라를 배치함으로써 8개의 카메라로부터 촬영 영상을 획득하거나, 그 이상의 카메라를 더 배치할 수도 있다.
통신부(130)는, 외부 서버 또는 외부 장치와 유선/무선 통신을 하게 하는 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(130)는, 근거리 통신부(미도시), 이동 통신부(미도시) 및 방송 수신부(미도시) 중 적어도 하나를 포함할 수 있다. 예를 들어, 통신부(130)는 센서부(120)의 GPS 센서가 수신한 GPS 신호를 프로세서(150)에 전달할 수 있다.
일 실시 예에 따르면, 프로세서(150)는 영상처리부(160), 경로비용 산출부(170), 경로 결정부(180)를 포함할 수 있다. 이하 도 14의 일 실시 예에 따른 로컬맵에 기초한 라우팅 경로 결정 장치(200)를 통해 라우팅 경로를 결정하는 방법에 관한 흐름도와 함께 해당 내용을 설명한다.
단계 2010에서, 프로세서(150)는 차량에 탑재된 카메라가 촬영한 촬영 영상을 획득할 수 있다. 예를 들어, 차량에는 다수의 센서들 및 복수개의 카메라가 탑재되어 있을 수 있다. 프로세서(150)는 센서부(120)로부터 수집되는 촬영 영상 및 차량의 주행 데이터를 획득할 수 있다.
단계 2020에서, 영상처리부(160)는 촬영 영상에 대한 영상 처리를 통해 차선 네트워크 정보 및 형상 그룹(feature class) 정보를 포함하는 로컬맵을 실시간으로 생성할 수 있다. 여기서, 형상 그룹은 제1 이미지 내 포함된 차선, 교차로, 신호등, 표지 등을 딥러닝 추론 모델을 이용하여 레이블(lable)한 것으로, 객체 인식을 보다 쉽게 하기 위해 정의된 그룹일 수 있다.
일 예로, 영상처리부(160)는 촬영 영상 중 소정의 기준에 따라 복수개의 이미지 프레임을 추출하고, 각 이미지 프레임에 포함된 차량의 위치 정보 및 여러 이미지 프레임에서 동일한 오브젝트로 인식되는 형상 그룹 정보들을 취합하여 각 이미지 프레임으로부터 로컬맵 생성을 위해 필요한 벡터 정보들을 추출할 수 있다.
일 예로, 영상처리부(160)는 전방을 촬영한 이미지 프레임 내에 차선, 방향 지시표시, 정지선, 표지판 등의 형상을 인식하고, 이를 벡터 데이터 형태로 이미지에 중첩적으로 표시할 수 있다. 여기서, 로컬맵은 전술한 바와 같이 영상으로부터 추출된 벡터 데이터들이 포함되어 있을 수 있으며, 영상처리부(160)는 이미지 내에서 인식한 형상들에 대해 선, 박스 등의 형태로 하이라이트 표시를 할 수 있다.
이때, 차선 및 지형 경계선 등은 기존의 라벨링된 형상 그룹으로서, 영상처리부(160)는 데이터-셋 학습을 통해 형상 그룹 인식 결과를 최적화할 수 있다.
또한, 영상처리부(160)는 추출한 벡터 정보들만을 수집하여 벡터 스페이스를 가지는 로컬맵을 생성할 수 있다. 여기서, 영상처리부(160)는 영상 또는 이미지 프레임을 제외한 벡터 정보들만을 수집함으로써 로컬맵을 위해 수집되는 데이터의 크기를 크게 줄일 수 있다.
또한, 영상처리부(160)는 버드아이뷰(BEV,Bird Eye View) 지도를 생성할 수 있다. 여기서, 영상처리부(160)는 도로 상황을 위에서 내려다보는 시점으로 바라보는 버드아이뷰(BEV,Bird Eye View) 지도를 생성할 수 있고, 이는 탑 뷰(Top view)라고 불릴 수도 있다.
단계 2030에서, 경로비용 산출부(170)는 로컬맵에 기초하여 차량의 현재 위치로부터 차량의 주행 경로 상에 포함된 회전 지점을 연결하는 라우팅 경로를 결정할 수 있다.
일 예로, 경로 산출부(170)는 로컬맵 중 형상 그룹(feature class) 정보를 식별하여 차량의 현재 주행 차선 및 교차로 구간을 인식하고, 차량의 주행 경로 상에 포함된 교차로 구간을 고려하여 차량의 회전 지점을 추출할 수 있다. 여기서, 회전 지점은 교차로 구간을 전후로 차량의 주행 경로를 연결하기 위한 각 노드이거나, 차량의 방향 전환이 이루어지는 각 노드일 수 있다. 예를 들어, 경로비용 산출부(170)는 차량에서 촬영한 전방 영상으로부터 전방 몇 백 미터까지의 차선 정보와, 차량의 주행 경로 상에 있는 회전 지점을 추출할 수 있다.
또한, 경로비용 산출부(170)는 차량의 현재 주행 차선을 기준으로 회전 지점까지의 거리와 차선 변경 정보를 이용하여 각 회전 지점에서의 경로 비용을 산출할 수 있다. 일 예로, 경로비용 산출부(170)는 차량의 현재 위치와 회전 지점까지의 거리(DistanceToTurn), 회전 지점까지 필요한 차선 이동 횟수(LaneMoveCount), 및 상기 차량의 주행 속도로부터 계산되는 차선 이동을 위한 평균 이동 거리(AvgLaneMoveLength)를 기초로 각 회전 지점에서의 경로비용을 산출할 수 있다.
이때, 주행하는 차량의 위치는 계속하여 변하기 때문에, 경로비용 산출부(170)는 차량의 현재 위치의 변화에 따라 상기 차량의 현재 위치와 회전 지점까지의 거리(DistanceToTurn)를 실시간으로 계산하여 경로 비용 산출에 이용할 수 있다.
또한, 경로비용 산출부(170)는 기 설정된 차선 이동을 위한 평균 이동 거리(AvgLaneMoveLength)에 차량의 현재 주행 속도를 대입하여 해당 차량에 필요한 차선 변경 거리를 산출하고, 차선 이동 횟수(LaneMoveCount)를 반영하여 차선 변경을 위한 경로비용을 산출할 수 있다.
여기서, 차선 이동을 위한 평균 이동 거리(AvgLaneMoveLenth)는 차량의 속도에 따라 동적으로 변경될 수 있다. 또한, 차량이 경로 결정부(180)에서 결정한 라우팅 경로를 주행하기 위해 적정한 시점에 차선을 변경하지 못하는 경우 등 도로에서 차량이 해당 회전 지점까지 도달하기까지의 경로 비용은 여러 요소들에 의해 영향을 받을 수 있다.
이러한 점을 반영하여, 본 발명의 일 실시 예에 따르면, 경로비용 산출부(170)는 차량의 현재 주행 차선을 기준으로 회전 지점까지의 거리를 실시간으로 산출하고, 차량의 주행 속도에 기초하여 차선 변경 정보를 동적으로 반영하여 각 회전 지점에서의 경로 비용을 산출할 수 있다.
경로 결정부(180)는 산출한 각 회전 지점에서의 경로비용을 기초로, 경로비용이 임계값 이상일 경우 해당 회전 지점 또는 해당 회전 지점을 통과하는 경로를 회피 경로로 설정할 수 있다. 이때, 경로 결정부(180)는 해당 회전 지점 또는 회피 도로에 회피 가중치를 부여함으로써 라우팅 경로를 결정할 수 있다.
경로 결정부(180)는 산출한 경로비용을 최소화하는 라우팅 경로를 최적의 라우팅 경로로 결정하고, 만일 상기 산출한 경로비용이 소정의 임계치 이상인 경우 상기 회전 지점에서의 회전 경로를 피하는 우회 경로를 재탐색할 수 있다. 예를 들어, 경로 결정부(180)는 차량의 주행 경로 상에 있는 각 회전 지점에서의 경로 비용을 산출한 결과를 이용하여, 차량의 전체 주행 경로 중 경로비용이 큰 회전 지점에 회피 가중치를 부여함으로써 차량 전체 주행 경로의 경로비용을 최소화하는 라우팅 경로를 결정할 수 있다.
한편, 해당 차량의 차선 변경 정보에 기초하여 산출한 경로 비용은 차량의 주행 편의성과 관련되며, 목적지까지의 최단 시간 또는 최단 거리 도달에 가중치를 부여하는 것과 트레이드 오프 관계에 있을 수 있다.
경로 결정부(180)는 인공신경망 모델을 이용하여 라우팅 경로 결정을 위한 복수개의 파라미터에 가중치를 설정하여 우선 순위를 부여할 수 있고, 하이퍼 파라미터 튜닝을 통해 파라미터 최적화를 수행할 수 있다.
이때, 경로 결정부(180)는 차량이 결정한 라우팅 경로를 벗어나는 경우, 차량의 주행 차선에 기초하여 라우팅 경로를 재탐색하는 것을 포함할 수 있다. 예를 들어, 차량의 위치는 실시간으로 변하기 때문에 차량의 위치 변화로 인해 경로비용 산출부(170)에서 산출한 경로비용이 달라질 수 있다. 이때, 경로 결정부(180)는 차량이 결정한 라우팅 경로를 벗어나는 경우 경로비용 산출부(170)를 통해 현재 주행 차선으로부터 가장 가까운 회전 지점에서의 경로비용을 재산출하고, 이를 기초로 차량의 라우팅 경로를 재탐색할 수 있다.
한편 기존의 차량 네비게이션 기술은 단지 최단의 주행 경로를 찾기 때문에 차량의 현재 위치로부터 회전 지점까지의 거리가 짧은 경우에도 무리하게 최단의 주행 경로를 안내하는 경우가 많았다.
이와 달리, 본 발명의 경로비용 산출부(160)는 실시간으로 파악되는 차량의 현재 위치, 차선 정보, 차선 이동 횟수 등을 기초로 회전 지점별 경로비용을 산출하기 때문에, 라우팅 경로 결정 장치(200)는 차량이 실제 주행 환경에서 차선 이동이 가능한 경우에만 해당 경로를 선택할 수 있도록 유도하여 차량 운행에 최적화된 경로를 제공할 수 있다.
이때, 경로 결정부(180)는 각 회전 지점에서 산출한 경로비용에 가중치를 부여하여 차량의 전체 주행 경로를 재탐색하고, 재탐색한 차량의 주행 경로를 지도 상의 네비게이션 경로와 비교함으로써 라우팅 경로의 적정성에 관해 판단하는 것을 더 포함할 수 있다.
예비적 실시 예로, 경로 결정부(180)는 차선 네트워크 정보를 포함하는 로컬맵이 실시간으로 생성되지 않거나 경로비용 산출을 위한 정보가 부족한 경우, 지도 상의 네비게이션 경로를 참조하여 라우팅 경로를 결정할 수 있다.
도 15은 본 발명의 일 실시 예에 따른 라우팅 경로 결정 과정을 설명하는 예시도이다. 도 5을 참고하면, 라우팅 경로 결정 장치(200)는 촬영 영상으로부터 초당 몇 프레임의 이미지를 추출할 것인지 설정하여, 촬영 영상으로부터 초당 몇 개의 이미지 프레임(210, 220, 230)을 추출할 수 있다.
장치(100)는 소정의 맵(Prior map, 2050) 정보를 참조하여 각 이미지 프레임에 대한 영상처리(2060)를 수행할 수 있다. 여기서, 영상 처리(2060)는 이미지 프레임에 포함된 차선 정보, 형상 그룹들을 인식하고, 인식한 형상 그룹들을 벡터 데이터로 추출하여 벡터 스페이스를 포함하는 로컬맵(2070)을 생성하는 것일 수 있다.
라우팅 경로 결정 장치(200)는 전술한 영상처리(2060)를 통해 생성된 실시간 로컬맵에 기초하여 차량의 주행 경로 상에 있는 회전 지점을 추출하고, 각 회전 지점에서의 경로비용을 산출(2080)할 수 있다. 또한, 라우팅 경로 결정 장치(200)는 산출한 경로비용에 기초하여 라우팅 경로(2090)를 결정할 수 있다.
한편, 본 발명에서 제시한 실시 예는 어디까지나 해당 내용을 설명하기 위한 일 예로써 참고되어야 하며, 라우팅 경로는 위에 기재된 정보 이외에 다른 정보들을 포함할 수 있다.
도 16은 본 발명의 또 다른 실시 예에 따른 서버에 관한 구성도이다.
일 예로, 로컬맵 제작을 위한 데이터 셋 어노테이션을 수행하는 서버(1100)는 프로세서(1110), 통신부(1120), DB(1130)를 포함할 수 있다. 도 16의 일 실시 예에 따른 서버(1100)에는 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 16에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 당해 기술분야의 통상의 기술자라면 이해할 수 있다.
본 발명의 일 실시 예에 따른 서버(1100)는 로컬맵 제작을 위한 데이터-셋 어노테이션을 수행하는 데 있어 네트워크를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다. 서버(1100)는 차량에 탑재된 장치들로부터 차량의 주행 데이터, 촬영 영상 등 적어도 하나의 데이터를 수신하고, 수신한 데이터에 기초하여 로컬맵 제작을 위한 데이터-셋 어노테이션을 수행할 수 있다.
프로세서(1110)는 서버(1100)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1110)는 DB(1130)에 저장된 프로그램들을 실행함으로써, 입력부(미도시), 디스플레이(미도시), 통신부(1120), DB(1130), 등을 전반적으로 제어할 수 있다. 프로세서(1110)는, DB(1130)에 저장된 프로그램들을 실행함으로써, 서버(1100)의 동작을 제어할 수 있다.
프로세서(1110)는 도 10 내지 도 11에서 상술한 로컬맵 제작을 위한 데이터-셋 어노테이션 방법의 동작 중 적어도 일부를 제어할 수 있다. 프로세서(1110)는 ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
또한, 프로세서(1110)는 로컬맵 지도를 구축하고 이를 DB(1130)에 저장할 수 있다. 일 예로, 서버(1100)의 프로세서(1110)는 크라우드 소싱 방식을 통하여 사용자로부터 로컬맵에 대한 정보 또는 로컬맵 업데이트에 관한 요청을 수신하고, 상기 업데이터 요청에 기초하여 로컬맵을 업데이트하는 것을 더 포함할 수 있다.
통신부(1120)는 외부 서버 또는 외부 장치와 유선/무선 통신을 하게하는 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(1120)는, 근거리 통신부(미도시), 이동 통신부(미도시) 및 방송 수신부(미도시) 중 적어도 하나를 포함할 수 있다.
DB(1130)는 서버(1100) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 프로세서(1110)의 처리 및 제어를 위한 프로그램을 저장할 수 있다.
DB(1130)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.
본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
하드웨어 장치로써 로컬맵 제작 장치(100)는 이동성을 가지는 전자 장치일 수 있다. 예를 들어, 장치(100)는 경량화된 장비로 차량에 탑재될 수 있다. 일 예로, 로컬맵 제작 장치(100)는 차량 내에 임베디드 되는 전자 장치일 수 있다. 또는 로컬맵 제작 장치(100)는 차량 생산 과정 이후 튜닝(tuning)을 통해 차량 내에 삽입되는 전자 장치일 수 있다.
일 실시예에 따르면, 본 개시의 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
따라서 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
1100: 서버
150, 1110: 프로세서
130, 1120: 통신부
110, 1130: 메모리
120: 센서부
11: 영상
13: 소정의 맵
15: 로컬맵
100: 로컬맵 제작 장치
200: 로컬맵에 기초한 라우팅 경로 결정 장치
160: 영상 처리부
170: 경로비용 산출부
180: 경로 결정부
310: 주행 데이터
345: 고해상도 맵
420: 글로벌 맵
810, 910: 제1 이미지
425, 820: 제1 벡터맵
920: 제2 이미지
715, 735: 어노테이션 정보
2000: 서버
3000: 엣지 단말

Claims (11)

  1. 로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법에 있어서,
    차량의 주행 중 수집되는 주행 데이터와 영상으로부터 영상 촬영의 시점의 위치값 및 자세 정보를 포함하는 제1 이미지를 획득하는 단계;
    도로 정보에 관한 벡터 데이터를 포함하는 글로벌 맵 중 상기 제1 이미지의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러오는 단계;
    상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하여 상기 제1 벡터맵의 벡터 데이터와 상응하도록 정합하는 단계; 및
    상기 정합하는 단계에서 산출된 상기 제1 이미지의 위치 보정값 및 자세 보정값을 어노테이션 정보로 생성하는 단계;를 포함하되,
    상기 제1 이미지를 획득하는 단계는,
    상기 차량으로부터 상기 차량이 GPS 신호에 기반하여 실시각 이동 측위(RTK, Real Time Kinematic) 방법으로 측정한 위치값과,
    상기 차량에 부착된 다수의 센서로부터 센싱된 상기 차량의 3축 방향 정보 및 3축에서의 회전각 데이터를 포함하는 자세 정보와,
    상기 차량의 전방, 후방, 측면 중 적어도 하나 이상에 위치한 카메라로부터 촬영된 영상과,
    만일 상기 카메라가 복수개 일 경우 상기 카메라의 상기 차량 내 위치에 따른 켈리브레이션 값을 같이 획득하는 단계; 를 더 포함하고,
    상기 제1 이미지를 획득하는 단계는,
    상기 주행 데이터와 상기 영상을 소정의 단위에 기초하여 상기 위치값 및 상기 자세 정보를 포함하는 복수개의 이미지로 추출하는 단계; 및
    상기 복수개의 이미지 중 상기 위치값 또는 상기 자세 정보가 매칭되지 않은 이미지들을 제거하는 단계; 를 더 포함하고,
    상기 정합하는 단계는,
    상기 제1 이미지의 상기 위치값 및 상기 자세 정보와, 상기 제1 벡터맵의 속성 정보를 비교함으로써 상기 제1 이미지에 대한 위치 보정값 및 자세 보정값을 산출하는 단계; 및
    상기 제1 이미지에 상기 위치 보정값 및 상기 자세 보정값을 적용한 제2 이미지와 상기 제1 벡터맵을 정합하는 단계; 를 포함하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 정합하는 단계는,
    상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하는 단계;
    상기 제1 벡터맵의 벡터 데이터를 상기 제1 이미지에 중첩적으로 표시하는 단계; 및
    상기 제1 이미지의 형상 그룹과, 상기 제1 벡터맵의 벡터 데이터가 동일한 객체라고 판단되면 상기 제1 이미지와 상기 제1 벡터맵을 각각 로컬맵과 글로벌 맵을 매핑하기 위한 데이터-셋으로 라벨링하는 단계; 를 더 포함하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  6. 제1항에 있어서,
    상기 제1 이미지에 대한 수평 보정 후 중력 방향을 나타내는 가이드 선을 표시하는 단계;를 더 포함하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  7. 제1항에 있어서,
    상기 제1 이미지 및 상기 제1 벡터맵의 정합이 실패하거나,
    상기 제1 이미지와 상기 제1 벡터맵의 정합 결과 소정의 임계치 이상의 차이가 발생하는 경우,
    상기 글로벌 맵에 대한 업데이트를 요청하는 단계;를 더 포함하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  8. 제1항에 있어서,
    상기 제1 이미지에 상기 위치 보정값 및 상기 자세 보정값을 적용한 제2 이미지를 이용하여 버드아이뷰(BEV, Bird eye view) 이미지를 생성하는 단계를 더 포함하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  9. 제1항에 있어서,
    상기 어노테이션 정보로 생성되는 자세 보정값으로부터, 해당 지점의 도로의 곡률, 경사 및 기울기 정보를 산출하는 단계; 및
    상기 산출한 도로의 곡률, 경사 및 기울기 정보를 기초로 차량의 측위 보정을 위한 참조값으로 생성하는 단계;를 더 포함하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  10. 제1항에 있어서,
    상기 어노테이션 정보는,
    상기 제1 이미지의 위치 보정값 및 자세 보정값 중 적어도 하나 이상을 포함하고,
    상기 위치 보정값은 위도값, 고도값, 경도값 중 적어도 하나에 대한 보정값이고,
    상기 자세 보정값은 x 평면, y 평면, z 평면에 대한 롤(roll), 피치(pitch), 야(yaw) 중 적어도 하나에 대한 보정값인,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 방법.
  11. 로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 서버에 있어서,
    적어도 하나의 프로그램이 저장된 메모리; 및
    상기 적어도 하나의 프로그램을 실행함으로써 연산을 수행하는 프로세서를 포함하고,
    상기 프로세서는,
    차량의 주행 중 수집되는 주행 데이터와 영상으로부터 영상 촬영의 시점의 위치값 및 자세 정보를 포함하는 제1 이미지를 획득하고,
    도로 정보에 관한 벡터 데이터를 포함하는 글로벌맵 중 상기 제1 이미지의 위치값으로부터 소정의 거리이내 위치값을 가지는 제1 벡터맵을 불러오고,
    상기 제1 이미지에 포함된 객체 정보들을 형상 그룹(feature class) 별로 구분하여 상기 제1 벡터맵의 벡터 데이터와 상응하도록 정합하고,
    상기 정합하는 단계에서 산출된 상기 제1 이미지의 위치 보정값 및 자세 보정값을 어노테이션 정보로 생성하는 것을 포함하고,
    상기 프로세서는,
    상기 차량으로부터 상기 차량이 GPS 신호에 기반하여 실시각 이동 측위(RTK, Real Time Kinematic) 방법으로 측정한 위치값과,
    상기 차량에 부착된 다수의 센서로부터 센싱된 상기 차량의 3축 방향 정보 및 3축에서의 회전각 데이터를 포함하는 자세 정보와,
    상기 차량의 전방, 후방, 측면 중 적어도 하나 이상에 위치한 카메라로부터 촬영된 영상과,
    만일 상기 카메라가 복수개 일 경우 상기 카메라의 상기 차량 내 위치에 따른 켈리브레이션 값을 같이 획득하며,
    상기 프로세서는,
    상기 주행 데이터와 상기 영상을 소정의 단위에 기초하여 상기 위치값 및 상기 자세 정보를 포함하는 복수개의 이미지로 추출하고,
    상기 복수개의 이미지 중 상기 위치값 또는 상기 자세 정보가 매칭되지 않은 이미지들을 제거하고,
    상기 프로세서는,
    상기 제1 이미지의 상기 위치값 및 상기 자세 정보와, 상기 제1 벡터맵의 속성 정보를 비교함으로써 상기 제1 이미지에 대한 위치 보정값 및 자세 보정값을 산출하고,
    상기 제1 이미지에 상기 위치 보정값 및 상기 자세 보정값을 적용한 제2 이미지와 상기 제1 벡터맵을 정합하는,
    로컬맵 제작을 위한 데이터-셋에 대한 어노테이션 정보를 생성하는 서버.
KR1020210169172A 2021-09-07 2021-11-30 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버 KR102487449B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210119292 2021-09-07
KR1020210119292 2021-09-07

Publications (1)

Publication Number Publication Date
KR102487449B1 true KR102487449B1 (ko) 2023-01-11

Family

ID=84892428

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020210167496A KR102487408B1 (ko) 2021-09-07 2021-11-29 로컬맵에 기초한 차량의 라우팅 경로 결정 장치, 방법 및 이를 기록한 기록매체
KR1020210169172A KR102487449B1 (ko) 2021-09-07 2021-11-30 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버
KR1020220077475A KR102517086B1 (ko) 2021-09-07 2022-06-24 뉴럴 네트워크 모델을 이용하여 차선 폴리라인을 생성하는 장치 및 방법
KR1020220077498A KR20230036511A (ko) 2021-09-07 2022-06-24 뉴럴 네트워크 모델을 이용하여 차선 폴리라인을 생성하는 장치 및 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020210167496A KR102487408B1 (ko) 2021-09-07 2021-11-29 로컬맵에 기초한 차량의 라우팅 경로 결정 장치, 방법 및 이를 기록한 기록매체

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020220077475A KR102517086B1 (ko) 2021-09-07 2022-06-24 뉴럴 네트워크 모델을 이용하여 차선 폴리라인을 생성하는 장치 및 방법
KR1020220077498A KR20230036511A (ko) 2021-09-07 2022-06-24 뉴럴 네트워크 모델을 이용하여 차선 폴리라인을 생성하는 장치 및 방법

Country Status (2)

Country Link
KR (4) KR102487408B1 (ko)
WO (1) WO2023038445A1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3982357B2 (ja) * 2002-07-24 2007-09-26 住友電気工業株式会社 画像変換システム及び画像処理装置
KR20140063266A (ko) * 2012-11-16 2014-05-27 한국건설기술연구원 실측자료를 이용한 도로 자동 도면화 방법
KR20140099671A (ko) * 2013-02-04 2014-08-13 서울시립대학교 산학협력단 영상기반 멀티센서 데이터를 이용한 차량의 위치자세 결정 방법 및 장치
KR102052114B1 (ko) * 2018-12-13 2019-12-04 한국도로공사 고정밀 전자지도 갱신을 위한 객체 변화 탐지 시스템 및 방법
KR102071418B1 (ko) * 2018-05-17 2020-01-30 에스케이텔레콤 주식회사 차량용 카메라 캘리브레이션 장치 및 방법
KR20210041969A (ko) * 2019-10-08 2021-04-16 에스케이텔레콤 주식회사 지도 매칭을 이용한 온라인 카메라 캘리브레이션 장치 및 방법
KR20210071584A (ko) * 2019-12-06 2021-06-16 팅크웨어(주) 위성 항법 시스템 측정 위치의 보정을 통해 위치를 판단하는 위치 측정 방법, 위치 측정 장치 및 이를 수행하는 전자 기기
KR20210081984A (ko) * 2019-12-24 2021-07-02 한국도로공사 정밀도로지도 갱신을 위한 객체 변화 탐지 시스템 및 그 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100678254B1 (ko) * 2004-11-08 2007-02-02 삼성전자주식회사 다중경로를 이용하여 경로를 안내하는 네비게이션 장치 및방법
KR100705140B1 (ko) * 2005-05-18 2007-04-09 현대자동차주식회사 교통 정보를 이용한 차량의 경로 탐색 방법
KR20140000488A (ko) * 2012-06-22 2014-01-03 현대모비스 주식회사 교차로 회전지점 안내방법 및 네비게이션 시스템
KR20180002249A (ko) * 2016-06-29 2018-01-08 쌍용자동차 주식회사 내비게이션에서 교차로 시설을 이용한 교차로 안내방법
KR102628654B1 (ko) * 2016-11-07 2024-01-24 삼성전자주식회사 차선을 표시하는 방법 및 장치
KR102618443B1 (ko) * 2016-12-09 2023-12-27 톰톰 글로벌 콘텐트 비.브이. 비디오 기반 위치결정 및 매핑을 위한 방법 및 시스템
KR20180068511A (ko) * 2016-12-14 2018-06-22 삼성전자주식회사 영상에 포함된 도로와 관련된 정보를 결정하는 뉴럴 네트워크를 학습시키는 학습 데이터를 생성하는 장치 및 방법
JP6929207B2 (ja) * 2017-11-24 2021-09-01 エヌ・ティ・ティ・コムウェア株式会社 道路画像処理装置、道路画像処理方法、道路画像処理プログラム、および、記録媒体
CN111209777A (zh) * 2018-11-21 2020-05-29 北京市商汤科技开发有限公司 车道线检测方法、装置、电子设备及可读存储介质
JP7359715B2 (ja) * 2020-02-14 2023-10-11 株式会社Soken 道路形状推定装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3982357B2 (ja) * 2002-07-24 2007-09-26 住友電気工業株式会社 画像変換システム及び画像処理装置
KR20140063266A (ko) * 2012-11-16 2014-05-27 한국건설기술연구원 실측자료를 이용한 도로 자동 도면화 방법
KR20140099671A (ko) * 2013-02-04 2014-08-13 서울시립대학교 산학협력단 영상기반 멀티센서 데이터를 이용한 차량의 위치자세 결정 방법 및 장치
KR102071418B1 (ko) * 2018-05-17 2020-01-30 에스케이텔레콤 주식회사 차량용 카메라 캘리브레이션 장치 및 방법
KR102052114B1 (ko) * 2018-12-13 2019-12-04 한국도로공사 고정밀 전자지도 갱신을 위한 객체 변화 탐지 시스템 및 방법
KR20210041969A (ko) * 2019-10-08 2021-04-16 에스케이텔레콤 주식회사 지도 매칭을 이용한 온라인 카메라 캘리브레이션 장치 및 방법
KR20210071584A (ko) * 2019-12-06 2021-06-16 팅크웨어(주) 위성 항법 시스템 측정 위치의 보정을 통해 위치를 판단하는 위치 측정 방법, 위치 측정 장치 및 이를 수행하는 전자 기기
KR20210081984A (ko) * 2019-12-24 2021-07-02 한국도로공사 정밀도로지도 갱신을 위한 객체 변화 탐지 시스템 및 그 방법

Also Published As

Publication number Publication date
KR102517086B1 (ko) 2023-04-04
KR102487408B1 (ko) 2023-01-12
WO2023038445A1 (ko) 2023-03-16
KR20230036510A (ko) 2023-03-14
KR20230036511A (ko) 2023-03-14

Similar Documents

Publication Publication Date Title
US10670416B2 (en) Traffic sign feature creation for high definition maps used for navigating autonomous vehicles
JP7020728B2 (ja) システム、方法およびプログラム
JP7432285B2 (ja) レーンマッピング及びナビゲーション
US10732004B2 (en) Method and apparatus for displaying virtual route
CN108362295B (zh) 车辆路径引导设备和方法
JP6595182B2 (ja) マッピング、位置特定、及び姿勢補正のためのシステム及び方法
JP5227065B2 (ja) 三次元機械地図、三次元機械地図生成装置、ナビゲーション装置及び自動運転装置
CN110388931A (zh) 将对象的二维边界框转换成自动驾驶车辆的三维位置的方法
US20210001891A1 (en) Training data generation for dynamic objects using high definition map data
US20200410702A1 (en) Image-based keypoint generation
CN111351502B (zh) 用于从透视图生成环境的俯视图的方法,装置和计算机程序产品
CN106197429A (zh) 一种多信息融合定位设备及系统
EP4246440A2 (en) Method and apparatus for localization based on images and map data
JP2020135874A (ja) ローカルセンシングベースの自律ナビゲーション、並びに関連するシステムおよび方法
CN112740268A (zh) 目标检测方法和装置
KR102610001B1 (ko) 자율 주행 차량 중의 센서 동기화 데이터 분석을 위한 시스템
KR102115004B1 (ko) 항공사진을 이용하여 3차원 지도를 생성하는 장치 및 방법
JP2014215205A (ja) 情報処理装置、サーバ装置、情報処理方法並びに情報処理システム及び情報処理プログラム
JP7460660B2 (ja) 航空写真を利用して三次元地図を生成する装置及びその方法
US20210407114A1 (en) Systems and methods for transferring map data between different maps
JP6723744B2 (ja) ナビ情報提供システム及びナビ情報提供装置
KR102487449B1 (ko) 로컬맵 제작을 위한 데이터-셋 어노테이션 방법 및 이를 수행하는 서버
CN108416044B (zh) 场景缩略图的生成方法、装置、电子设备及存储介质
JP2012099010A (ja) 画像処理装置及び画像処理プログラム
CN112559659B (zh) 电子地图的生成方法及设备、行驶数据的采集方法及设备

Legal Events

Date Code Title Description
GRNT Written decision to grant