KR102219843B1 - Estimating location method and apparatus for autonomous driving - Google Patents
Estimating location method and apparatus for autonomous driving Download PDFInfo
- Publication number
- KR102219843B1 KR102219843B1 KR1020200149112A KR20200149112A KR102219843B1 KR 102219843 B1 KR102219843 B1 KR 102219843B1 KR 1020200149112 A KR1020200149112 A KR 1020200149112A KR 20200149112 A KR20200149112 A KR 20200149112A KR 102219843 B1 KR102219843 B1 KR 102219843B1
- Authority
- KR
- South Korea
- Prior art keywords
- location
- image
- map
- vehicle
- autonomous
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0248—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means in combination with a laser
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Estimation 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/02—Estimation 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/0088—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
- G05D1/0251—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/42—Image sensing, e.g. optical camera
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/62—Laser
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—Longitudinal speed
Abstract
Description
본 발명의 일 실시예는 자율주행을 위한 위치 추정 장치 및 방법에 관한 것으로, 보다 상세하게는 미리 저장된 3D 지도를 이용하여 라이다를 장착하지 않고 정밀한 위치 추정이 가능한 자율주행을 위한 위치 추정 장치 및 방법에 관한 것이다. An embodiment of the present invention relates to a location estimation apparatus and method for autonomous driving, and more particularly, a location estimation apparatus for autonomous driving capable of precise location estimation without installing a lidar using a pre-stored 3D map, and It's about how.
자율주행이란 운전자의 개입 없이 주변 환경을 인식하고, 주행 상황을 판단하여, 차량을 제어함으로써 스스로 주어진 목적지까지 주행하는 것을 말한다.Autonomous driving refers to driving to a given destination by controlling the vehicle by recognizing the surrounding environment, determining the driving situation, and controlling the vehicle without driver intervention.
최근 차량은 물론 모바일 로봇과 같은 소형 모빌리티 장치가 스마트 배송이나, 경비에 사용되면서 모빌리티 장치, 로봇 및 차량의 자율주행에 대한 수요가 늘게 되었다.Recently, as vehicles and small mobility devices such as mobile robots are used for smart delivery or security, the demand for mobility devices, robots, and autonomous driving of vehicles has increased.
자율주행에서 핵심적인 요소는 자신의 위치를 추정하는 것이며, 위치를 추정하는 방법에 대한 다양화 및 성능의 향상이 이루어졌다.A key element in autonomous driving is estimating one's own position, and diversification and performance improvement have been made in estimating the position.
기존에 자율주행을 구현하는 방법으로는 LiDAR나 카메라와 같은 장치를 사용하여, 사전에 지도를 작성하고 주행 시에 측정되는 센서데이터를 이용하여 지도 상에서 위치를 추정하거나, 정밀한 GPS 장치를 사용하여 위성 신호를 받아서 절대적인 위치를 추정하는 방법이 주로 사용되고 있다. As a method of implementing autonomous driving in the past, use a device such as a LiDAR or a camera to create a map in advance and estimate the location on the map using sensor data measured during driving, or use a precise GPS The method of estimating the absolute position by receiving a signal is mainly used.
모빌리티 장치, 로봇 및 차량들이 활용되는 라스트마일 배달, 경비 등의 분야에서는 자율주행이 가능한 모빌리티 장치, 로봇 및 차량을 사용함으로써 인간 대체 및 인건비 경감을 목표로 한다.In the fields of mobility devices, last mile delivery, and security where robots and vehicles are used, the goal is to replace humans and reduce labor costs by using mobility devices, robots and vehicles capable of autonomous driving.
따라서 모빌리티 장치의 자율주행 시스템의 운영비를 인건비 이하로 절감할 필요가 있으며, 이 경우 장치의 비용 대부분을 차지하는 자율주행 센서의 가격이 중요한 고려대상이 된다. 그러므로 상용화를 위해서는 비싼 센서를 이용하기 보다 값 싼 센서들을 활용하여 자율주행을 구현하고자 하는 요구가 있다. Therefore, it is necessary to reduce the operating cost of the mobility device autonomous driving system to less than labor cost, and in this case, the price of the autonomous driving sensor, which accounts for most of the cost of the device, becomes an important consideration. Therefore, for commercialization, there is a need to implement autonomous driving using inexpensive sensors rather than using expensive sensors.
그러나, 자율주행 시 안전과 직결되는 정확성은 협상할 수 있는 가치가 아니므로, 종래의 자율주행시스템에는 LiDAR나 고정밀 GPS를 활용해 왔다. 이러한 센서는 매우 고가의 장비이다. However, since accuracy directly related to safety in autonomous driving is not a negotiable value, LiDAR or high-precision GPS has been used in conventional autonomous driving systems. These sensors are very expensive equipment.
이에, 상대적으로 저렴한 카메라만을 활용하여 비교적 저렴한 자율주행 시스템을 구현하기 위한 시도가 있어왔다. 그러나, 카메라의 경우, 특징점을 추출하여 지도를 작성하여 위치를 추정할 때, 광량에 따라 매번 변화하는 추출 특징점으로 인하여 정확도가 떨어진다는 치명적인 문제점이 발생할 수 있다. Accordingly, there have been attempts to implement a relatively inexpensive autonomous driving system using only a relatively inexpensive camera. However, in the case of a camera, when estimating a location by extracting a feature point and creating a map, there may be a fatal problem that accuracy is degraded due to the extracted feature point that changes every time according to the amount of light.
본 발명은 상기의 문제점을 해결하기 위해 창안된 것으로서, 본 발명은 모빌리티 장치 및 로봇, 차량의 자율주행을 위한 위치 추정 방법을 카메라 기반에 여러 센서들 간의 데이터를 융합하여 저비용으로 정확한 위치 추정 방법 및 장치를 제공하고자 한다. The present invention was invented to solve the above problems, and the present invention is a method for estimating a location for autonomous driving of a mobility device, a robot, and a vehicle, and an accurate location estimation method at low cost by fusing data between various sensors on a camera basis, and I want to provide a device.
이를 위하여, 본 발명의 일 실시예에 따르면, 자율주행을 위한 위치 추정 방법은 자율주행 이동체에 탑재된 하나 이상의 카메라에 의해 촬영되는 영상 및 복수개의 센서로부터 획득되는 차량의 위치관련정보를 수집하는 단계; 수집된 영상 및 위치관련정보 및 미리 저장된 레이저 스캔 기반의 3D(dimensional) 지도에 기초하여 자율주행 이동체의 위치를 추정하는 단계; 및 미리 설정된 목표 위치 및 추정된 자율주행 이동체의 위치에 기초하여 주행경로를 설정하는 단계를 포함할 수 있다. To this end, according to an embodiment of the present invention, a method for estimating a location for autonomous driving includes the steps of collecting an image photographed by one or more cameras mounted on an autonomous vehicle and location-related information of a vehicle obtained from a plurality of sensors. ; Estimating the location of the autonomous vehicle based on the collected image and location-related information and a pre-stored laser scan-based 3D (dimensional) map; And setting a driving route based on the preset target position and the estimated position of the autonomous vehicle.
일 실시예에서, 위치관련정보는 차량의 각속도, 가속도, 속도 및 GPS 위치좌표를 포함할 수 있다. In one embodiment, the location-related information may include angular velocity, acceleration, velocity, and GPS position coordinates of the vehicle.
일 실시예에서, 3D(dimensional) 지도는 미리 저장된 레이저의 스캔에 의해 생성된 지도로부터 3D 특징점을 추출한 3D 특징점 지도인 것을 특징으로 한다. In one embodiment, the 3D (dimensional) map is characterized in that it is a 3D feature point map obtained by extracting 3D feature points from a map generated by scanning a pre-stored laser.
일 실시예에서, 상기 자율주행 이동체의 위치를 추정하는 단계는, 상기 카메라의 영상의 2D 이미지의 특징점들을 추출하는 단계; 및 상기 3D 특징점 지도에 추출된 2D 이미지의 특징점을 매칭시켜 포즈와 방향을 추정하는 단계를 포함할 수 있다. In one embodiment, the step of estimating the position of the autonomous vehicle may include extracting feature points of a 2D image of an image of the camera; And estimating a pose and a direction by matching the feature points of the extracted 2D image to the 3D feature point map.
일 실시예에서, 상기 특징점을 매칭시키는 단계는, 상기 3D 특징점 지도의 3D 특징점과 추출된 2D 이미지의 특징점 간의 거리를 최소화하는 기법을 채택하는 것을 특징으로 한다. In one embodiment, the step of matching the feature points is characterized by employing a technique for minimizing a distance between the 3D feature points of the 3D feature point map and the feature points of the extracted 2D image.
일 실시예에서, 상기 차량 위치관련정보를 수집하는 단계는, 상기 복수개의 센서의 센서 주기를 동기화 하는 단계를 포함하는 것을 특징으로 한다. In one embodiment, the collecting of the vehicle location related information includes synchronizing sensor periods of the plurality of sensors.
본 발명의 다른 실시예에 따른 자율주행을 위한 위치 추정 장치는 자율주행 이동체에 탑재된 하나 이상의 카메라에 의해 촬영되는 영상 및 복수개의 센서로부터 차량의 위치관련정보를 획득하는 정보 수신부; 레이저 스캔 기반의 3D(dimensional) 지도를 저장하는 저장부; 및 상기 3D 지도와 수집된 영상 및 위치관련정보에 기초하여 자율주행 이동체의 위치를 추정하여, 미리 설정된 목표 위치 및 추정된 자율주행 이동체의 위치에 기초하여 주행경로를 설정하는 제어부를 포함한다. According to another embodiment of the present invention, an apparatus for estimating a location for autonomous driving includes: an information receiving unit that acquires vehicle location-related information from a plurality of sensors and images captured by one or more cameras mounted on an autonomous vehicle; A storage unit for storing a laser scan-based 3D (dimensional) map; And a control unit for estimating the position of the autonomous vehicle based on the 3D map, the collected image and location-related information, and setting a driving route based on a preset target position and the estimated position of the autonomous vehicle.
일 실시예에서, 상기 제어부는 상기 카메라의 영상의 2D 이미지의 특징점들을 추출하고, 상기 3D 특징점 지도에 추출된 2D 이미지의 특징점을 매칭시켜 포즈와 방향을 추정하는 위치 추정 모듈; 및 미리 설정된 목표 위치 및 추정된 자율주행 이동체의 현재위치에 기초하여 주행경로를 설정하는 경로 설정모듈을 포함한다. In an embodiment, the controller includes: a position estimation module for estimating a pose and a direction by extracting feature points of a 2D image of the camera image and matching feature points of the extracted 2D image to the 3D feature point map; And a route setting module for setting a driving route based on the preset target position and the estimated current position of the autonomous vehicle.
일 실시예에서, 상기 위치 추정 모듈은, 상기 3D 특징점 지도의 3D 특징점과 추출된 2D 이미지의 특징점 간의 거리를 최소화하는 기법을 채택하는 것을 특징으로 한다. In one embodiment, the location estimation module is characterized by employing a technique of minimizing a distance between a 3D feature point of the 3D feature point map and a feature point of the extracted 2D image.
일 실시예에서, 상기 제어부는 복수개의 센서의 센서 주기를 동기화 하는 센서 동기화 모듈을 더 포함할 수 있다.In an embodiment, the control unit may further include a sensor synchronization module for synchronizing sensor periods of the plurality of sensors.
본 발명에 따르면, LiDAR나 정밀한 GPS와 같은 값 비싼 센서를 탑재하지 않고, 정밀한 위치 추정을 가능하게 한다.According to the present invention, it is possible to accurately estimate a location without mounting expensive sensors such as LiDAR or precise GPS.
도 1은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치의 구성을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 복수개의 센서를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치의 제어부의 구성을 개략적으로 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 자율주행 이동체의 위치를 방법을 설명하기 위한 부분 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치를 탑재한 이동체의 구성을 설명하기 위한 블록도이다.
도 7은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치를 탑재한 이동체의 주행을 설명하기 위한 도면이다. 1 is a diagram schematically showing the configuration of a position estimation apparatus for autonomous driving according to an embodiment of the present invention.
2 is a view showing a plurality of sensors according to an embodiment of the present invention.
3 is a diagram schematically showing the configuration of a control unit of a position estimation apparatus for autonomous driving according to an embodiment of the present invention.
4 is a flowchart illustrating a method of estimating a location for autonomous driving according to an embodiment of the present invention.
5 is a partial flow chart illustrating a method of positioning an autonomous moving object according to an embodiment of the present invention.
6 is a block diagram illustrating a configuration of a mobile body equipped with a position estimation apparatus for autonomous driving according to an embodiment of the present invention.
7 is a view for explaining the driving of a moving object equipped with a position estimation device for autonomous driving according to an embodiment of the present invention.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세하게 설명한다. 본 발명의 구성 및 그에 따른 작용 효과는 이하의 상세한 설명을 통해 명확하게 이해될 것이다. 본 발명의 상세한 설명에 앞서, 동일한 구성요소에 대해서는 다른 도면 상에 표시되더라도 가능한 동일한 부호로 표시하며, 공지된 구성에 대해서는 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 구체적인 설명은 생략하기로 함에 유의한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The configuration of the present invention and its effect will be clearly understood through the detailed description below. Note that prior to the detailed description of the present invention, the same components are denoted by the same reference numerals as possible even if they are displayed on different drawings, and a detailed description will be omitted when it is determined that the gist of the present invention may be obscure for known configurations. do.
도 1은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치의 구성을 개략적으로 나타낸 도면이고, 도 2는 본 발명의 일 실시예에 따른 복수개의 센서를 나타내는 도면이며, 도 3은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치의 제어부의 구성을 개략적으로 나타낸 도면이다. 1 is a diagram schematically showing a configuration of a position estimation apparatus for autonomous driving according to an embodiment of the present invention, FIG. 2 is a view showing a plurality of sensors according to an embodiment of the present invention, and FIG. A diagram schematically showing the configuration of a control unit of a position estimation apparatus for autonomous driving according to an embodiment of the present invention.
도 1에 도시된 바와 같이, 본 발명의 자율주행을 위한 위치 추정 장치(100)는 입력부(110), 정보 수신부(120), 제어부(140) 및 저장부(160)를 포함할 수 있다. As shown in FIG. 1, the
입력부(110)는 사용자의 입력 동작을 입력 신호로 변환하여 제어부(140)에게 송신한다. 입력부(110)는 예를 들어 키보드, 마우스, 터치스크린 상의 터치센서, 터치패드, 키패드, 음성 입력, 기타 현재, 과거에 가능하거나 미래에 가능해질 입력 처리 장치들로써 구현될 수 있다. 입력부(110)는 예를 들어 목적지 정보를 입력받아 제어부(140)에 전달한다. The
정보 수신부(120)는 자율주행 이동체에 탑재된 하나 이상의 카메라(10)에 의해 촬영되는 영상 및 복수개의 센서(20)로부터 차량의 위치관련정보를 획득한다. 정보 수신부(120)는 제어부(140)에 전달한다.The
여기서 차량의 위치관련정보는 카메라의 영상, 차량의 각속도, 가속도, 속도 및 GPS 위치좌표를 포함한다. Here, the vehicle location-related information includes an image of a camera, an angular velocity of the vehicle, acceleration, speed, and GPS position coordinates.
여기서 하나 이상의 카메라(10)는 한 쌍의 스테레오 영상 예를 들어, 좌측 영상과 우측 영상을 획득하기 위해 2개가 구비될 수 있다. 여기서 2개의 카메라라 함은 2개의 서로 다른 렌즈를 이용하여 2개의 시각에서 영상을 획득하는 것을 의미하는 것으로, 하나의 영상 획득 장치에 2개의 렌즈를 구비하여 2개의 영상을 획득하는 경우를 포함함은 물론이다. 이때, 카메라(10)는 기 설정된 관심 영역을 갖도록 장착될 수 있다. 여기서 관심 영역이란 자율주행 이동체에 구비된 카메라(10)를 이용하여 촬영하고자 하는 영역이 될 수 있다. 2개의 카메라의 관심 영역은 주행시 요구되는 화각의 영상 또는 전방위 영상을 촬영 가능하도록 광각을 갖는 렌즈를 채택할 수 있다. Here, at least one
다른 실시예에서, 하나 이상의 카메라(10)가 주행시 요구되는 화각의 영상 또는 전방위 영상을 생성하는 1개의 카메라가 구비될 수 있다. 여기서 1개의 카메라는 전방위 영상을 생성하기 위해 렌즈의 방향을 회전시킬 수 있다. In another embodiment, one camera may be provided that generates an image of an angle of view or an omnidirectional image required when the one or
이때, 카메라(10)는 기 설정된 관심 영역을 갖도록 장착될 수 있다. 여기서 관심 영역이란 자율주행 이동체에 구비된 카메라(10)를 이용하여 촬영하고자 하는 영역이 될 수 있다.In this case, the
도 2를 참조하면, 복수개의 센서(20)는 IMU(Inertial Measurement Unit; 21), GPS 모듈(22), 주행기록부(23)를 포함할 수 있다. Referring to FIG. 2, the plurality of
IMU(21)는 자율주행 로봇의 관성 정보 예컨대, 위치, 자세 등의 정보를 측정할 수 있다. 이러한 IMU(21)는 예컨대, 자이로 센서, 가속도 센서를 포함할 수 있다.The IMU 21 may measure inertial information of the autonomous driving robot, such as location and posture. The IMU 21 may include, for example, a gyro sensor and an acceleration sensor.
자이로 센서는 이동로봇의 각속도 정보를 수집한다. 자이로 센서는 3축 센서인 것이 바람직하다. 즉, 자이로 센서는 x축, y축, z축의 3축의 각속도 정보를 수집할 수 있다.The gyro sensor collects angular velocity information of the mobile robot. It is preferable that the gyro sensor is a 3-axis sensor. That is, the gyro sensor may collect angular velocity information of three axes of the x-axis, y-axis, and z-axis.
3축 자이로 센서에서 감지하는 x축, y축 및 z축의 3축의 각속도를 각각 롤(Roll), 피치(Pitch), 요(Yaw)라고 한다. 구체적으로 이동로봇이 x축을 중심으로 회전하는 것을 롤(Roll), y축을 중심으로 회전하는 것을 피치(Pitch), z축을 중심으로 회전하는 것을 요(Yaw)라고 한다. 본 발명에서 획득하고자 하는 3차원 각도 정보는 롤, 피치, 요를 의미한다.The angular velocities of the three axes of the x-axis, y-axis, and z-axis detected by the 3-axis gyro sensor are called Roll, Pitch, and Yaw, respectively. Specifically, rotation about the x-axis is called roll, rotation about the y-axis is called pitch, and rotation about the z-axis is called yaw. The three-dimensional angle information to be obtained in the present invention means a roll, a pitch, and a yaw.
가속도 센서는 중력가속도 및 자율주행 로봇의 이동에 의한 가속도를 측정한다. 가속도 센서는 자이로 센서와 마찬가지로 3축 센서인 것이 바람직하다. 즉, 가속도 센서는 x축, y축 및 z축의 3축에 관한 가속도 정보를 수집할 수 있다.The acceleration sensor measures the acceleration due to gravity acceleration and the movement of the autonomous robot. Like the gyro sensor, the acceleration sensor is preferably a 3-axis sensor. That is, the acceleration sensor may collect acceleration information about three axes of the x-axis, y-axis, and z-axis.
GPS 모듈(22)는 자율주행을 위한 위치 추정 장치의 현 위치를 인지하기 위해, 위치 추정 장치의 위치에 대한 정보를 취득하기 위해 사용된다.The
일 실시예에서, 위치 추정 장치(100)는 GPS 모듈(22)의 높은 정밀도를 요구하지 않는다. 예컨대 실외에서 단독으로 사용할 경우 -약 10m 이상의 오차를 가지는 GPS 모듈(22)을 채택할 수 있다. 여기서 오차 10 m는 일 예로서, 이에 한정되는 것은 아니다. In one embodiment, the
주행기록부(23)는 주행 날짜, 시간, 속도, 엔진회전수 등의 정보를 저장한다. The driving
다른 변형예에서, 통신모듈(미도시)을 더 포함할 수 있다. 통신모듈은 예컨대 3G, 4G, 5G 또는 LTE 등의 통신서비스를 위하여 기지국과 통신하기 위한 모듈로서, 기지국위 위치에 기반하여 자신의 대략적인 위치정보를 획득할 수 있다. In another modification, a communication module (not shown) may be further included. The communication module is a module for communicating with a base station for communication services such as 3G, 4G, 5G, or LTE, and may acquire approximate location information of itself based on a location on the base station.
다시 도 1을 참조하면, 제어부(140)는 자율주행을 위한 위치 추정 장치의 각 구성요소를 제어하여 자율주행을 위한 위치 정보를 생성한다. 제어부(140)의 각 구성요소는 상기의 기능들을 수행할 수 있는 하드웨어와 소프트웨어의 집합으로 구성된다. Referring back to FIG. 1, the
도 3을 참조하면, 제어부(140)는 기능에 따라, 위치 추정 모듈(142), 경로 설정 모듈(144) 및 센서 동기화 모듈(146)을 포함할 수 있다. Referring to FIG. 3, the
하지만, 제어부(140)의 각 구성은 반드시 물리적으로 다른 구성을 가질 필요는 없다. 제어부(140)의 각 구성은 하나의 프로세서로 구성되고 단지 소프트웨어적으로 분리되거나 실행 루틴이 구분되어 실행될 수도 있을 것이다. 즉, 제어부(140)의 각 구성은 단지 기능적으로 구분될 뿐, 동일한 하드웨어 상에서 실현될 수 있다.However, each component of the
위치 추정 모듈(142)은 상기 카메라의 영상의 2D(dimensional) 이미지의 특징점들을 추출하고, 3D 특징점 지도에 추출된 2D 이미지의 특징점을 매칭시켜 포즈(pose)와 방향(orientation)을 추정한다. 여기서 3D 특징점 지도는 미리 저장된 레이저의 스캔에 의해 생성된 3D 지도로부터 3D 특징점을 추출한 3D 특징점 지도이다. 다른 변형예에서는 3D 지도를 저장하지 않고 3D 특징점 지도만을 저장하여 메모리를 절약할 수 있다. The
위치 추정 모듈(142)은 포즈(pose)와 방향(orientation)을 추정을 위해 상기 3D 특징점 지도의 3D 특징점과 추출된 2D 이미지의 특징점 간의 거리를 최소화하는 기법을 채택할 수 있다. 거리를 최소화하는 기법의 예로는 최소제곱법이 있다. 최소제곱법은 널리 알려진 방법으로 상세한 설명은 생략한다. The
경로 설정 모듈(144)은 미리 설정된 목표 위치 및 추정된 자율주행 이동체의 현재위치에 기초하여 주행경로를 설정한다. 주행경로 설정은 미리 정해진 제1 주기에 따라 설정될 수 있으나, 주행 주의 구간 예를 들어, 코너, 사거리, 장애물 검출시 제1 주기보다 더 짧은 제2 주기에 따라 설정될 수 있다. 여기서 주행 주의 구간은 제어부(140)의 위치 추정 모듈(142)에 의해 설정될 수 있다. 위치 추정 모듈(142)은 설정된 주기를 경로 설정 모듈(144)에 전달한다. The
센서 동기화 모듈(146)은 복수개의 센서로부터 측정값을 수집하기 이전에 복수개의 센서의 센서 주기를 동기화한다. The
다시 도 1을 참조하면, 저장부(160)는 자율주행을 위한 위치 추정 장치가 위치 추정을 위해 필요한 정보를 저장하거나 데이터베이스화한다. 예를 들어, 저장부(160)는 Laser Scanned 지도 및/또는 3D 특징점 지도를 저장할 수 있다. Referring back to FIG. 1, the
또한, 저장부(160)는 제어부(140)의 요청에 따라 저장된 정보를 제어부(140)에 전달할 수 있다. In addition, the
이하에서 다른 실시예로써, 상술한 바와 같은 구성을 갖는 본 발명에 따른 자율주행을 위한 위치 추정 방법에 대해 도 4를 참조하여 상세히 설명한다.Hereinafter, as another embodiment, a method for estimating a location for autonomous driving according to the present invention having the configuration as described above will be described in detail with reference to FIG. 4.
도 4는 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 방법을 설명하기 위한 흐름도이고, 도 5는 본 발명의 일 실시예에 따른 자율주행 이동체의 위치를 방법을 설명하기 위한 부분 흐름도이다. 4 is a flowchart illustrating a method for estimating a location for autonomous driving according to an embodiment of the present invention, and FIG. 5 is a partial flow chart for explaining a method for positioning an autonomous moving object according to an embodiment of the present invention. .
도 4를 참조하면, 단계 S110에서, 자율주행을 위한 위치 추정 장치는 자율주행 이동체에 탑재된 하나 이상의 카메라에 의해 촬영되는 영상 및 복수개의 센서로부터 획득되는 차량의 위치관련정보를 수집한다. 여기서 복수개의 센서는 전술한 바와 같이, IMU, GPS 모듈, 주행기록부를 포함할 수 있다. 이상의 카메라와 GPS 모듈로부터 이산적으로 데이터 입력을 받고, 주행기록부 또는 IMU로부터는 연속적으로 데이터 입력을 받는다. 따라서, 카메라와 GPS 모듈의 데이터 획득 주기와 주행기록부 또는 IMU로부터의 데이터와 동기화를 수행하여야 한다. 센서 동기화는 널리 알려진 방법을 채택할 수 있다. Referring to FIG. 4, in step S110, the position estimation apparatus for autonomous driving collects an image photographed by one or more cameras mounted on an autonomous vehicle and location-related information of a vehicle obtained from a plurality of sensors. Here, the plurality of sensors may include an IMU, a GPS module, and a driving recorder, as described above. Discrete data input is received from the above camera and GPS module, and data input is continuously received from the driving recorder or IMU. Therefore, it is necessary to perform synchronization with the data acquisition period of the camera and the GPS module and data from the driving recorder or IMU. Sensor synchronization can adopt a widely known method.
단계 S120에서, 자율주행을 위한 위치 추정 장치는 수집된 영상 및 위치관련정보 및 미리 저장된 레이저 스캔 기반의 3D(dimensional) 지도에 기초하여 자율주행 이동체의 위치를 추정한다. In step S120, the position estimation apparatus for autonomous driving estimates the position of the autonomous moving object based on the collected image and position-related information and a pre-stored laser scan-based 3D (dimensional) map.
이하, 도 5를 참조하여 위치 추정방법을 상세히 설명한다. Hereinafter, a method of estimating a location will be described in detail with reference to FIG. 5.
단계 S121에서, 먼저, 복수개의 센서로부터 측정된 각각의 위치관련정보를 융합하여 초기 위치를 추정한다. In step S121, first, the initial position is estimated by fusing the respective position-related information measured from a plurality of sensors.
일 실시예에서, GPS 위치 정보, 즉, 대략의 경도 및 위도 정보를 획득하고 IMU의 자세 데이터를 이용해 정밀 좌표로 보정할 수 있다. In one embodiment, GPS location information, that is, approximate longitude and latitude information may be obtained and corrected to precise coordinates using the attitude data of the IMU.
각각의 위치관련정보를 융합(보정)하기 위해 칼만 필터 등의 필터 기반 알고리즘 또는 팩터 그래프를 이용할 수 있다. A filter-based algorithm such as a Kalman filter or a factor graph can be used to fuse (correct) each location-related information.
칼만필터는 측정한 측정 값의 오차를 상쇄시키기 위하여 상태변수의 최종 추정치를 구하는 방법으로서, 예측(Prediction)과 보정(Correction) 과정의 2단계로 구분된다. The Kalman filter is a method of obtaining a final estimate of a state variable in order to cancel the error of the measured value, and is divided into two steps: a prediction and a correction process.
간단히 설명하면, 먼저 센서들의 측정값에 기초하여 초기값을 선정한다.Briefly, first, an initial value is selected based on the measured values of the sensors.
그 다음에는 선정된 초기값에 대하여 추정값(Estimated value)과 오차 공분산(Error covariance)을 예측한다. Then, the estimated value and error covariance are predicted for the selected initial value.
그리고 상기의 예측된 추정값과 오차 공분산 값을 가지고 칼만 이득(Kalman gain)을 구한다.And Kalman gain is calculated using the predicted estimated value and error covariance value.
이렇게 칼만 이득이 계산되면, 상기 예측한 추정값의 실제 추정값을 계산하고, 이후 오차 공분산 값을 계산하게 된다. 이러한 각 센서의 융합에 의한 위치 추정방법은 출원번호 10-2018-0097319 등에도 개시된 바와 같이, 종래의 널리 알려진 기술이므로 상세한 설명은 생략한다. When the Kalman gain is calculated in this way, an actual estimated value of the predicted estimated value is calculated, and then an error covariance value is calculated. As disclosed in Application No. 10-2018-0097319, etc., the method of estimating the position by fusion of each of these sensors is a known technique in the related art, and thus a detailed description thereof will be omitted.
팩터 그래프를 사용하는 경우, 그래프를 활용하여 문제를 정의한다. 노드는 로봇의 포즈에 해당하고, 엣지(edge)는 노드 사이의 공간적 관계를 의미한다. 그리고, 그래프 기반의 위치 추정은 엣지를 통해 표현된 관계들 사이의 오차를 최소화하는 노드 설정, 즉 이동체의 포즈를 찾아가는 과정을 의미한다. 이 과정은 그래프 구성(Graph Construction)으로 불리는 프론트 엔드(Front end) 단계와 그래프 최적화로 불리는 백 엔드(back end) 단계로 구분된다. When using a factor graph, use the graph to define the problem. A node corresponds to the robot's pose, and an edge means a spatial relationship between nodes. In addition, the graph-based position estimation refers to a node setting that minimizes an error between relationships expressed through edges, that is, a process of finding a pose of a moving object. This process is divided into a front end stage called Graph Construction and a back end stage called Graph Optimization.
를 통해 얻은 현재 로봇의 상태와 측정된 와 실제 측정 사이의 오차 를 최소화하는 과정을 통해 로봇의 현재 상태 포즈를 추정하게 된다. 이러한 최소화과정은 하기의 수학식 1과 같이 나타낼 수 있다. The current robot status and measured And real measurements Error between The current state pose of the robot is estimated through the process of minimizing. This minimization process can be expressed as Equation 1 below.
[수학식 1][Equation 1]
이하에서 다른 실시예로써, 상술한 바와 같은 구성을 갖는 본 발명에 따른 자율주행을 위한 위치 추정 방법에 대해 도 4를 참조하여 상세히 설명한다.Hereinafter, as another embodiment, a method for estimating a location for autonomous driving according to the present invention having the configuration as described above will be described in detail with reference to FIG. 4.
도 4는 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 방법을 설명하기 위한 흐름도이고, 도 5는 본 발명의 일 실시예에 따른 자율주행 이동체의 위치를 방법을 설명하기 위한 부분 흐름도이다. 4 is a flowchart illustrating a method for estimating a location for autonomous driving according to an embodiment of the present invention, and FIG. 5 is a partial flow chart for explaining a method for positioning an autonomous moving object according to an embodiment of the present invention. .
도 4를 참조하면, 단계 S110에서, 자율주행을 위한 위치 추정 장치는 자율주행 이동체에 탑재된 하나 이상의 카메라에 의해 촬영되는 영상 및 복수개의 센서로부터 획득되는 차량의 위치관련정보를 수집한다. 여기서 복수개의 센서는 전술한 바와 같이, IMU, GPS 모듈, 주행기록부를 포함할 수 있다. 이상의 카메라와 GPS 모듈로부터 이산적으로 데이터 입력을 받고, 주행기록부 또는 IMU로부터는 연속적으로 데이터 입력을 받는다. 따라서, 카메라와 GPS 모듈의 데이터 획득 주기와 주행기록부 또는 IMU로부터의 데이터와 동기화를 수행하여야 한다. 센서 동기화는 널리 알려진 방법을 채택할 수 있다. Referring to FIG. 4, in step S110, the position estimation apparatus for autonomous driving collects an image photographed by one or more cameras mounted on an autonomous vehicle and location-related information of a vehicle obtained from a plurality of sensors. Here, the plurality of sensors may include an IMU, a GPS module, and a driving recorder, as described above. Discrete data input is received from the above camera and GPS module, and data input is continuously received from the driving recorder or IMU. Therefore, it is necessary to perform synchronization with the data acquisition period of the camera and the GPS module and data from the driving recorder or IMU. Sensor synchronization can adopt a widely known method.
단계 S120에서, 자율주행을 위한 위치 추정 장치는 수집된 영상 및 위치관련정보 및 미리 저장된 레이저 스캔 기반의 3D(dimensional) 지도에 기초하여 자율주행 이동체의 위치를 추정한다. In step S120, the position estimation apparatus for autonomous driving estimates the position of the autonomous moving object based on the collected image and position-related information and a pre-stored laser scan-based 3D (dimensional) map.
이하, 도 5를 참조하여 위치 추정방법을 상세히 설명한다. Hereinafter, a method of estimating a location will be described in detail with reference to FIG. 5.
단계 S121에서, 먼저, 복수개의 센서로부터 측정된 각각의 위치관련정보를 융합하여 초기 위치를 추정한다. In step S121, first, the initial position is estimated by fusing the respective position-related information measured from a plurality of sensors.
일 실시예에서, GPS 위치 정보, 즉, 대략의 경도 및 위도 정보를 획득하고 IMU의 자세 데이터를 이용해 정밀 좌표로 보정할 수 있다. In one embodiment, GPS location information, that is, approximate longitude and latitude information may be obtained and corrected to precise coordinates using the attitude data of the IMU.
각각의 위치관련정보를 융합(보정)하기 위해 칼만 필터 등의 필터 기반 알고리즘 또는 팩터 그래프를 이용할 수 있다. A filter-based algorithm such as a Kalman filter or a factor graph can be used to fuse (correct) each location-related information.
칼만필터는 측정한 측정 값의 오차를 상쇄시키기 위하여 상태변수의 최종 추정치를 구하는 방법으로서, 예측(Prediction)과 보정(Correction) 과정의 2단계로 구분된다. The Kalman filter is a method of obtaining a final estimate of a state variable in order to cancel the error of the measured value, and is divided into two steps: a prediction and a correction process.
간단히 설명하면, 먼저 센서들의 측정값에 기초하여 초기값을 선정한다.Briefly, first, an initial value is selected based on the measured values of the sensors.
그 다음에는 선정된 초기값에 대하여 추정값(Estimated value)과 오차 공분산(Error covariance)을 예측한다. Then, the estimated value and error covariance are predicted for the selected initial value.
그리고 상기의 예측된 추정값과 오차 공분산 값을 가지고 칼만 이득(Kalman gain)을 구한다.And Kalman gain is calculated using the predicted estimated value and error covariance value.
이렇게 칼만 이득이 계산되면, 상기 예측한 추정값의 실제 추정값을 계산하고, 이후 오차 공분산 값을 계산하게 된다. 이러한 각 센서의 융합에 의한 위치 추정방법은 출원번호 10-2018-0097319 등에도 개시된 바와 같이, 종래의 널리 알려진 기술이므로 상세한 설명은 생략한다. When the Kalman gain is calculated in this way, an actual estimated value of the predicted estimated value is calculated, and then an error covariance value is calculated. As disclosed in Application No. 10-2018-0097319, etc., the method of estimating the position by fusion of each of these sensors is a known technique in the related art, and thus a detailed description thereof will be omitted.
팩터 그래프를 사용하는 경우, 그래프를 활용하여 문제를 정의한다. 노드는 로봇의 포즈에 해당하고, 엣지(edge)는 노드 사이의 공간적 관계를 의미한다. 그리고, 그래프 기반의 위치 추정은 엣지를 통해 표현된 관계들 사이의 오차를 최소화하는 노드 설정, 즉 이동체의 포즈를 찾아가는 과정을 의미한다. 이 과정은 그래프 구성(Graph Construction)으로 불리는 프론트 엔드(Front end) 단계와 그래프 최적화로 불리는 백 엔드(back end) 단계로 구분된다. When using a factor graph, use the graph to define the problem. A node corresponds to the robot's pose, and an edge means a spatial relationship between nodes. In addition, the graph-based position estimation refers to a node setting that minimizes an error between relationships expressed through edges, that is, a process of finding a pose of a moving object. This process is divided into a front end stage called Graph Construction and a back end stage called Graph Optimization.
를 통해 얻은 현재 로봇의 상태와 측정된 와 실제 측정 사이의 오차 를 최소화하는 과정을 통해 로봇의 현재 상태 포즈를 추정하게 된다. 이러한 최소화과정은 하기의 수학식 1과 같이 나타낼 수 있다. The current robot status and measured And real measurements Error between The current state pose of the robot is estimated through the process of minimizing. This minimization process can be expressed as Equation 1 below.
[수학식 1][Equation 1]
위의 식으로 에러가 표현되며, 최대공산 접근 방식으로 이 문제를 해결하기 위해서는 모든 음의 로그 가능도(negative log likelihood) F(x)를 모든 측정에 대해서 최소화하는 Node 를 찾는 과정으로 요약할 수 있다. 이러한 음의 로그 가능도 F(x)는 하기의 수학식 2와 같이 나타낼 수 있다. The error is expressed by the above equation, and in order to solve this problem with the maximum likelihood approach, a node that minimizes all negative log likelihood F(x) for all measurements. It can be summarized as the process of finding. This negative log likelihood F(x) can be expressed as Equation 2 below.
[수학식 2][Equation 2]
음의 로그 가능도 F(x)를 모든 Measurement에 대해서 계산을 하기 위해서는 위의 식을 통해 구한다.To calculate the negative log likelihood F(x) for all measurements, use the above equation.
[수학식 3][Equation 3]
그리고 수학식 3을 통해서 F(x)를 최소화 하는 노드 x를 찾을 수 있다. And through Equation 3, a node x that minimizes F(x) can be found.
최소화하는 과정에서는 주로 가우스-뉴턴법이나 리브버크 마크워트(Levenberg-Marquardt) 알고리즘을 주로 사용한다. In the process of minimization, the Gauss-Newton method or the Levenberg-Marquardt algorithm is mainly used.
단계 S122에서, 카메라로부터 제공된 이미지를 전처리하여 왜곡을 보정한다. In step S122, the image provided from the camera is preprocessed to correct distortion.
단계 S123에서, 카메라의 2D 이미지로부터 2D 특징점을 추출한다. 이때 2D 특징점을 연결한 2D 특징점 면 또는 2D 특징점을 연결한 2D 특징점 선을 추출할 수도 있다. 여기서 특징점은 코너 즉 꼭지점 등을 포함할 수 있으나 이에 한정되는 것은 아니다. In step S123, 2D feature points are extracted from the 2D image of the camera. In this case, a 2D feature point plane connecting the 2D feature points or a 2D feature point line connecting the 2D feature points may be extracted. Here, the feature point may include a corner, that is, a vertex, but is not limited thereto.
단계 S124에서, 3D 지도로부터 추출된 3D 특징점을 연결한 3D 특징점 면 또는 3D 특징점을 연결한 3D 특징점 선과 단계 S123에서 추출한 2D 특징점 면 또는 2D 특징점 선을 매칭시킨다. 다른 변형예에서, 2D 특징점 선을 3D 특징점 선에 투사(projection)함으로써 매칭을 수행할 수 있다. In step S124, the 3D feature point planes connecting the 3D feature points extracted from the 3D map or the 3D feature point lines connecting the 3D feature points are matched with the 2D feature point planes or 2D feature point lines extracted in step S123. In another variation, matching may be performed by projecting the 2D feature point line onto the 3D feature point line.
단계 S125에서, 보정된 좌표에 기초하여 매칭된 2D 특징점과 3D 특징점 사이의 거리 최소화 과정을 통해 자세와 방향을 추정한다. In step S125, the posture and direction are estimated through the process of minimizing the distance between the matched 2D feature point and the 3D feature point based on the corrected coordinates.
이 때, 3D 특징점 지도 상에 존재하지 않지만, 2D 특징점 지도 상에서 인식되는 오브젝트는 장애물로 추정할 수 있다. 이와 같이 장애물이 추정되는 경우, 후술하는 바와 같이, 경로 설정 주기를 짧게 변경하거나, 장애물 등장을 출력할 수 있다. 이로써, 연결된 이동체는 장애물 등장에 대한 대응을 행할 수 있게 된다. 장애물 등장에 대한 대응은 클락션을 울리기, 속도 줄이기, 잠시 정차하기 등 중 어느 하나 이상을 포함할 수 있다. In this case, an object that does not exist on the 3D feature point map but is recognized on the 2D feature point map may be estimated as an obstacle. When the obstacle is estimated as described above, the path setting period may be changed shortly or the appearance of the obstacle may be output as will be described later. Thereby, the connected moving object can respond to the appearance of an obstacle. The response to the appearance of an obstacle may include any one or more of ringing a clock, reducing speed, and stopping for a while.
다시 도 4로 되돌아와서, 단계 S130에서, 미리 설정된 목표 위치 및 추정된 자율주행 이동체의 위치에 기초하여 주행경로를 설정한다. Returning to FIG. 4 again, in step S130, a driving route is set based on the preset target position and the estimated position of the autonomously moving object.
도 6은 본 발명의 일 실시예에 따른 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치를 탑재한 이동체의 구성을 설명하기 위한 블록도이고, 도 7은 본 발명의 일 실시예에 따른 자율주행을 위한 위치 추정 장치를 탑재한 이동체의 주행을 설명하기 위한 도면이다. 6 is a block diagram for explaining the configuration of a moving object equipped with a position estimation device for autonomous driving according to an embodiment of the present invention according to an embodiment of the present invention, and FIG. This is a view for explaining the driving of a mobile object equipped with a position estimation device for autonomous driving.
도 6 및 도 7을 참조하면, 자율주행을 위한 위치 추정 장치를 탑재한 이동체(이하 이동체라고 한다)는 하나 이상의 카메라(10), 복수개의 센서(20), 위치 추정 장치(100), 컨트롤러(200) 및 구동장치(300)를 포함할 수 있다. 상기 실시예에서 설명한 바와 같이, 하나 이상의 카메라(10) 및 복수개의 센서(20)는 위치 추정 장치(100)에게 정보를 전송하고, 위치 추정 장치(100)와 이동체(200)는 정보를 송수신할 수 있다. 또한, 컨트롤러(200)는 구동장치(300)에게 제어명령을 전송할 수 있다. 6 and 7, a moving object (hereinafter referred to as a moving object) equipped with a position estimation device for autonomous driving includes one or
카메라(10), 복수개의 센서(20), 위치 추정 장치(100)는 도 1에서 설명한 카메라(10), 복수개의 센서(20), 위치 추정 장치(100)와 동일하므로 상세한 설명은 생략한다. 다만, 위치 추정 장치(100)는 이동체가 목적지에 도착할 때까지 이산적으로 경로를 설정하여 컨트롤러(200)에 전달한다. The
다만, 도 7을 참조하면 1개의 카메라를 탑재한 예를 설명하고 있다. 이와 같이, 1개의 카메라만을 탑재한 경우, 위치 추정 장치(100) 또는 컨트롤러(200)는 카메라 렌즈의 방향을 회전시켜, 주행시 요구되는 필요 화각의 영상을 획득할 수 있다. 도 7을 참조하면, 실선으로 표시된 3D 지도 상에 점선으로 표시된 2D 영상이 매칭된 상태를 확인할 수 있다. However, referring to FIG. 7, an example in which one camera is mounted is described. As described above, when only one camera is mounted, the
컨트롤러(200)는 이동체의 각 구성요소를 제어하고, 특히 위치 추정 장치(100)로부터 설정된 경로를 수신하여 설정경로에 따라 구동장치(300)에 제어명령을 전송한다. The
컨트롤러(200)는 이동체가 목표 위치에 도달할 때까지 구동장치(300)를 제어하여 주행하고, 목적지에 도달하면 주행을 종료할 수 있다. The
구동장치(300)는 컨트롤러(200)의 제어명령에 따라 동력원, 바퀴, 조향장치, 브레이크 등을 포함하고, 이동체의 조향 및 속도를 제어한다. The
여기서 동력원은 전기 기반의 모터, 화석연료 기반의 엔진 등 이동체의 크기 및 기능에 따라 다양하게 채택될 수 있다. Here, the power source may be variously adopted according to the size and function of a moving body, such as an electric-based motor or a fossil fuel-based engine.
본 발명의 일 실시예에 따르면, 종래 자율주행 시스템의 센서들에 비해 비교적 저가의 여러 센서들을 채택하여, 센서들의 측정치의 융합을 통한 위치 추정과 사전 제작된 Laser Scanned 지도를 통해 위치 값을 최적화하는 과정을 통해서 LiDAR나 정밀한 GPS와 같은 값 비싼 센서들을 소형 모빌리티 장치에 직접적으로 사용하지 않고도 정밀한 위치 추정을 가능하게 한다.According to an embodiment of the present invention, by adopting several sensors that are relatively inexpensive compared to sensors of a conventional autonomous driving system, position estimation through the fusion of measured values of the sensors and optimizing the position value through a pre-made Laser Scanned map. Through the process, it enables precise position estimation without using expensive sensors such as LiDAR or precise GPS directly on small mobility devices.
여러 센서들에서 나오는 데이터들 및 Laser Scanned 지도를 이용하여 LiDAR를 사용한 위치 추정에서 사용 가능한 3D 정보(Point, line, Depth)를 활용하므로, Laser Scanner 센서를 사용하지 않지만, Laser Scanner 센서를 사용시의 장점(정확한 깊이 정보, 3D 특징점)을 얻을 수 있기에 자원을 절약할 수 있다. Since it uses 3D information (Point, Line, Depth) that can be used in position estimation using LiDAR using data from various sensors and laser scanned maps, it does not use a laser scanner sensor, but the advantage of using a laser scanner sensor Because (accurate depth information, 3D feature points) can be obtained, resources can be saved.
이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.At this time, it will be appreciated that each block of the flowchart diagrams and combinations of the flowchart diagrams may be executed by computer program instructions. Since these computer program instructions can be mounted on the processor of a general purpose computer, special purpose computer or other programmable data processing equipment, the instructions executed by the processor of the computer or other programmable data processing equipment are described in the flowchart block(s). It creates a means to perform functions. These computer program instructions can also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular way, so that the computer-usable or computer-readable memory It is also possible to produce an article of manufacture containing instruction means for performing the functions described in the flowchart block(s). Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operating steps are performed on a computer or other programmable data processing equipment to create a computer-executable process to create a computer or other programmable data processing equipment. It is also possible for instructions to perform processing equipment to provide steps for executing the functions described in the flowchart block(s).
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block may represent a module, segment, or part of code that contains one or more executable instructions for executing the specified logical function(s). In addition, it should be noted that in some alternative execution examples, functions mentioned in blocks may occur out of order. For example, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may sometimes be executed in reverse order depending on the corresponding function.
이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.In this case, the term'~ unit' used in the present embodiment means software or hardware components such as FPGA or ASIC, and'~ unit' performs certain roles. However,'~ part' is not limited to software or hardware. The'~ unit' may be configured to be in an addressable storage medium, or may be configured to reproduce one or more processors. Thus, as an example,'~ unit' refers to components such as software components, object-oriented software components, class components and task components, processes, functions, properties, and procedures. , Subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays, and variables. The components and functions provided in the'~ units' may be combined into a smaller number of elements and'~ units' or further separated into additional elements and'~ units'. In addition, components and'~ units' may be implemented to play one or more CPUs in a device or a security multimedia card.
본 명세서가 속하는 기술분야의 통상의 지식을 가진 자는 본 명세서가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 명세서의 범위는 상기 상세한 설명보다는 후술하는 특허청구의 범위에 의하여 나타내어지며, 특허청구의 범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 명세서의 범위에 포함되는 것으로 해석되어야 한다.Those of ordinary skill in the art to which the present specification pertains will appreciate that the present specification may be implemented in other specific forms without changing the technical spirit or essential features thereof. Therefore, it should be understood that the embodiments described above are illustrative and non-limiting in all respects. The scope of the present specification is indicated by the scope of the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and the concept of equivalents thereof are included in the scope of the present specification. It must be interpreted.
한편, 본 명세서와 도면에는 본 명세서의 바람직한 실시 예에 대하여 개시하였으며, 비록 특정 용어들이 사용되었으나, 이는 단지 본 명세서의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 명세서의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예 외에도 본 명세서의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 명세서가 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. Meanwhile, in the present specification and drawings, preferred embodiments of the present specification have been disclosed, and although specific terms are used, these are merely used in a general meaning to easily describe the technical content of the present specification and to aid understanding of the invention. It is not intended to limit the scope of the specification. In addition to the embodiments disclosed herein, it is apparent to those of ordinary skill in the art that other modified examples based on the technical idea of the present specification may be implemented.
100 : 위치 추정 장치
110 : 입력부
120 : 정보 수신부
140 : 제어부
142 : 위치 추정 모듈
144 : 경로 설정 모듈
146 : 센서 동기화 모듈
160 : 저장부100: position estimation device
110: input unit
120: information receiver
140: control unit
142: position estimation module
144: path setting module
146: sensor synchronization module
160: storage unit
Claims (12)
수집된 영상 및 위치관련정보 및 미리 저장된 레이저 스캔 기반의 3D(dimensional) 지도에 기초하여 자율주행 이동체의 위치를 추정하는 단계; 및
미리 설정된 목표 위치 및 추정된 자율주행 이동체의 위치에 기초하여 주행경로를 설정하는 단계
를 포함하고,
상기 3D(dimensional) 지도는 미리 저장된 레이저의 스캔에 의해 생성된 지도로부터 3D 특징점을 추출한 3D 특징점 지도이고,
상기 자율주행 이동체의 위치를 추정하는 단계는,
상기 카메라의 영상의 2D 이미지의 특징점들을 추출하는 단계; 및
상기 3D 특징점 지도에 추출된 2D 이미지의 특징점을 매칭시켜 포즈와 방향을 추정하는 단계
를 포함하 자율주행을 위한 위치 추정 방법. Collecting an image photographed by one or more cameras mounted on an autonomous vehicle and location-related information of a vehicle obtained from a plurality of sensors;
Estimating the location of the autonomous vehicle based on the collected image and location-related information and a pre-stored laser scan-based 3D (dimensional) map; And
Setting a driving route based on the preset target position and the estimated position of the autonomous vehicle
Including,
The 3D (dimensional) map is a 3D feature point map obtained by extracting 3D feature points from a map generated by scanning a pre-stored laser,
Estimating the position of the autonomous vehicle,
Extracting feature points of a 2D image of the camera image; And
Estimating a pose and direction by matching the feature points of the extracted 2D image to the 3D feature point map
Including a location estimation method for autonomous driving.
상기 위치관련정보는 차량의 각속도, 가속도, 속도 및 GPS 위치좌표를 포함하는 것을 특징으로 하는 자율주행을 위한 위치 추정 방법. The method of claim 1,
The location-related information includes an angular velocity, acceleration, velocity, and GPS position coordinates of the vehicle.
상기 특징점을 매칭시키는 단계는,
상기 3D 특징점 지도의 3D 특징점과 추출된 2D 이미지의 특징점 간의 거리를 최소화하는 기법을 채택하는 것을 특징으로 하는 자율주행을 위한 위치 추정 방법. The method of claim 1,
The step of matching the feature points,
A method for estimating a location for autonomous driving, characterized in that a technique for minimizing the distance between the 3D feature point of the 3D feature point map and the feature point of the extracted 2D image is adopted.
상기 차량 위치관련정보를 수집하는 단계는,
상기 복수개의 센서의 센서 주기를 동기화 하는 단계를 포함하는 것을 특징으로 하는 자율주행을 위한 위치 추정 방법. The method of claim 1,
The step of collecting the vehicle location related information,
And synchronizing sensor periods of the plurality of sensors.
레이저 스캔 기반의 3D(dimensional) 지도를 저장하는 저장부; 및
상기 3D 지도와 수집된 영상 및 위치관련정보에 기초하여 자율주행 이동체의 위치를 추정하여, 미리 설정된 목표 위치 및 추정된 자율주행 이동체의 위치에 기초하여 주행경로를 설정하는 제어부
를 포함하고,
상기 3D 지도는 미리 저장된 레이저의 스캔에 의해 생성된 지도로부터 3D 특징점을 추출한 3D 특징점 지도이고,
상기 제어부는
상기 카메라의 영상의 2D 이미지의 특징점들을 추출하고, 상기 3D 특징점 지도에 추출된 2D 이미지의 특징점을 매칭시켜 포즈와 방향을 추정하는 위치 추정 모듈; 및
미리 설정된 목표 위치 및 추정된 자율주행 이동체의 현재위치에 기초하여 주행경로를 설정하는 경로 설정모듈를 포함하는 자율주행을 위한 위치 추정 장치. An information receiving unit that acquires an image photographed by one or more cameras mounted on the autonomous vehicle and location-related information of the vehicle from a plurality of sensors;
A storage unit for storing a laser scan-based 3D (dimensional) map; And
A control unit that estimates the location of the autonomous vehicle based on the 3D map and the collected image and location-related information, and sets a driving route based on a preset target location and the estimated location of the autonomous vehicle.
Including,
The 3D map is a 3D feature point map obtained by extracting 3D feature points from a map generated by scanning a pre-stored laser,
The control unit
A position estimation module for estimating a pose and a direction by extracting feature points of the 2D image of the camera image and matching the feature points of the extracted 2D image to the 3D feature point map; And
A position estimation device for autonomous driving, comprising a path setting module that sets a driving route based on a preset target position and an estimated current position of the autonomous vehicle.
상기 위치관련정보는 차량의 각속도, 가속도, 속도 및 GPS 위치좌표를 포함하는 것을 특징으로 하는 자율주행을 위한 위치 추정 장치. The method of claim 7,
The location-related information includes an angular velocity, acceleration, velocity, and GPS position coordinates of the vehicle.
상기 위치 추정 모듈은,
상기 3D 특징점 지도의 3D 특징점과 추출된 2D 이미지의 특징점 간의 거리를 최소화하는 기법을 채택하는 것을 특징으로 하는 자율주행을 위한 위치 추정 장치. The method of claim 7,
The position estimation module,
A position estimation apparatus for autonomous driving, characterized in that it employs a technique for minimizing the distance between the 3D feature points of the 3D feature point map and the feature points of the extracted 2D image.
상기 제어부는
복수개의 센서의 센서 주기를 동기화 하는 센서 동기화 모듈
을 더 포함하는 것을 특징으로 하는 자율주행을 위한 위치 추정 장치.
The method of claim 7,
The control unit
Sensor synchronization module that synchronizes the sensor cycles of multiple sensors
Position estimation apparatus for autonomous driving, characterized in that it further comprises.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200149112A KR102219843B1 (en) | 2020-11-10 | 2020-11-10 | Estimating location method and apparatus for autonomous driving |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200149112A KR102219843B1 (en) | 2020-11-10 | 2020-11-10 | Estimating location method and apparatus for autonomous driving |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102219843B1 true KR102219843B1 (en) | 2021-02-25 |
Family
ID=74731028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200149112A KR102219843B1 (en) | 2020-11-10 | 2020-11-10 | Estimating location method and apparatus for autonomous driving |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102219843B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102342945B1 (en) * | 2021-03-31 | 2021-12-24 | (주)뉴빌리티 | Estimating location method and apparatus for autonomous driving with surround image |
WO2022201825A1 (en) * | 2021-03-26 | 2022-09-29 | ソニーグループ株式会社 | Information processing device, information processing method, and information processing system |
KR20230004178A (en) | 2021-06-30 | 2023-01-06 | 김배훈 | Camera backup system and method for autonomous vehicle |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180130671A (en) * | 2017-05-30 | 2018-12-10 | 현대모비스 주식회사 | Apparatus and method for controlling automatic driving using 3d grid map |
KR20200021688A (en) * | 2018-08-21 | 2020-03-02 | 강동완 | System and method for researching localization of autonomous vehicle |
-
2020
- 2020-11-10 KR KR1020200149112A patent/KR102219843B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180130671A (en) * | 2017-05-30 | 2018-12-10 | 현대모비스 주식회사 | Apparatus and method for controlling automatic driving using 3d grid map |
KR20200021688A (en) * | 2018-08-21 | 2020-03-02 | 강동완 | System and method for researching localization of autonomous vehicle |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022201825A1 (en) * | 2021-03-26 | 2022-09-29 | ソニーグループ株式会社 | Information processing device, information processing method, and information processing system |
KR102342945B1 (en) * | 2021-03-31 | 2021-12-24 | (주)뉴빌리티 | Estimating location method and apparatus for autonomous driving with surround image |
KR20230004178A (en) | 2021-06-30 | 2023-01-06 | 김배훈 | Camera backup system and method for autonomous vehicle |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11675084B2 (en) | Determining yaw error from map data, lasers, and cameras | |
KR102219843B1 (en) | Estimating location method and apparatus for autonomous driving | |
US11433880B2 (en) | In-vehicle processing apparatus | |
US10788830B2 (en) | Systems and methods for determining a vehicle position | |
US8213706B2 (en) | Method and system for real-time visual odometry | |
JP7082545B2 (en) | Information processing methods, information processing equipment and programs | |
US20220033076A1 (en) | System and method for tracking targets | |
EP3147629B1 (en) | Object detection device and object detection method | |
US20080319664A1 (en) | Navigation aid | |
KR101439921B1 (en) | Slam system for mobile robot based on vision sensor data and motion sensor data fusion | |
CN110207714B (en) | Method for determining vehicle pose, vehicle-mounted system and vehicle | |
CN113678079A (en) | Generating structured map data from vehicle sensors and camera arrays | |
JP2017090239A (en) | Information processing device, control method, program, and storage media | |
JP2022016908A (en) | Overhead image generation device, overhead image generation system and automatic parking device | |
JP5086824B2 (en) | TRACKING DEVICE AND TRACKING METHOD | |
CN113175925A (en) | Positioning and navigation system and method | |
KR101764222B1 (en) | System and method for high precise positioning | |
JP2021081272A (en) | Position estimating device and computer program for position estimation | |
CN112528719A (en) | Estimation device, estimation method, and storage medium | |
CN113011212A (en) | Image recognition method and device and vehicle | |
JP7265269B2 (en) | Map data correction method and correction program | |
KR100575108B1 (en) | Method of Docking Multiple Spacecrafts Using Vision Sensor | |
KR102212268B1 (en) | Localization system and means of transportation with the same and computing device for executing the same | |
KR20230064040A (en) | Vehicle position correction method and vehicle position correction device | |
KR20230075898A (en) | Method for collecting data through fusion of multiple platform and multiple sensor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |