KR102513683B1 - Point cloud matching method and point cloud matching device - Google Patents
Point cloud matching method and point cloud matching device Download PDFInfo
- Publication number
- KR102513683B1 KR102513683B1 KR1020200171644A KR20200171644A KR102513683B1 KR 102513683 B1 KR102513683 B1 KR 102513683B1 KR 1020200171644 A KR1020200171644 A KR 1020200171644A KR 20200171644 A KR20200171644 A KR 20200171644A KR 102513683 B1 KR102513683 B1 KR 102513683B1
- Authority
- KR
- South Korea
- Prior art keywords
- point cloud
- point
- source
- points
- target
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000001914 filtration Methods 0.000 claims description 31
- 238000007781 pre-processing Methods 0.000 claims description 21
- 238000013507 mapping Methods 0.000 claims description 18
- 238000010586 diagram Methods 0.000 description 16
- 230000014509 gene expression Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3807—Creation or updating of map data characterised by the type of data
- G01C21/3815—Road data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3841—Data obtained from two or more sources, e.g. probe vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3848—Data obtained from both position sensors and additional sensors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G06T5/002—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Optical Radar Systems And Details Thereof (AREA)
- Image Processing (AREA)
Abstract
본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법 및 장치에 있어서, 제1 시점에 획득된 소스 점군과, 제1 시점 이후의 제2 시점에 획득된 타겟 점군 및 궤적 데이터가 수신되고, 소스 점군 및 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되며, 궤적 데이터에 기초하여 소스 점군 및 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 소스 점군 및 타겟 점군이 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할되고, 구간별 소스 점군에 포함된 소스 점들과 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정되며, 대응점 쌍들의 거리 합산이 최소가 되도록 구간별 소스 점군과 구간별 타겟 점군이 정합된다. 이에 따라, 소스 점군과 타겟 점군이 정확하게 정합되고, 보다 정확한 고정밀 지도데이터가 생성될 수 있다.In the point cloud matching method and apparatus for matching a source point cloud and a target point cloud according to embodiments of the present invention, a source point cloud obtained at a first point in time, a target point cloud and locus data obtained at a second point after the first point in time is received, duplicate points and noise for each of the source point cloud and the target point cloud are removed, and the driving trajectory from which the source point cloud and the target point cloud are obtained based on the locus data is divided into a plurality of sections to obtain a plurality of source point clouds and target point clouds. is divided into a source point group for each section and a target point group for each section belonging to each section of , and corresponding point pairs of source points included in the source point group for each section and target points included in the target point group for each section are determined, and the distance between the corresponding point pairs is determined. The source point cloud for each section and the target point cloud for each section are matched so that the summation is minimized. Accordingly, the source point cloud and the target point cloud are accurately matched, and more accurate high-precision map data can be generated.
Description
본 발명은 지도 데이터 구축 방법 및 장치에 관한 것으로서, 더욱 상세하게는 차량용 지도 데이터를 구축하기 위한 점군 정합 방법 및 점군 정합 장치에 관한 것이다.The present invention relates to a method and apparatus for constructing map data, and more particularly, to a point cloud matching method and apparatus for constructing vehicle map data.
최근, 차량 등에서 경로 안내, 자동 주행 등의 서비스를 제공하기 위하여, 보다 정밀한 고정밀 지도 데이터가 요구되고 있다. 한편, 항공 사진을 이용한 지도 데이터 구축 방법은 센티미터(cm) 수준의 정밀도가 요구되는 고정밀 지도 데이터의 구축에 적합하지 않고, LIDAR(Light Detection And Ranging) 등이 고정밀 지도 데이터의 구축에 이용된다. 예를 들어, LIDAR 등을 이용하여 점군(Point Cloud)을 수 차례 수집하고, 수 차례 수집된 점군들을 정합함으로써 고정밀 지도 데이터가 구축될 수 있다.Recently, in order to provide services such as route guidance and automatic driving in vehicles, etc., more precise and high-precision map data is required. On the other hand, the method of building map data using aerial photographs is not suitable for building high-precision map data that requires centimeter (cm) level precision, and LIDAR (Light Detection And Ranging) is used to build high-precision map data. For example, high-precision map data can be constructed by collecting point clouds several times using LIDAR or the like and matching the point clouds collected several times.
다만, 점군들을 정합함에 있어서, 종래의 정합 방법은 주행 궤적의 전체에 대하여 점군들을 정합하므로, 주행 궤적의 시작 위치에서 멀어질수록 정합된 점군들의 위치 오차가 커지는 문제가 있다.However, in matching the point clouds, since the conventional matching method matches the point clouds for the entire driving trajectory, there is a problem in that the position error of the matched point clouds increases as the distance from the starting position of the driving trajectory increases.
본 발명의 일 목적은 보다 정확하게 소스 점군과 타겟 점군을 정합할 수 있는 점군 정합 방법을 제공하는 것이다.One object of the present invention is to provide a point cloud matching method capable of more accurately matching a source point cloud and a target point cloud.
본 발명의 다른 목적은 보다 정확하게 소스 점군과 타겟 점군을 정합할 수 있는 점군 정합 장치를 제공하는 것이다.Another object of the present invention is to provide a point cloud matching device capable of more accurately matching a source point cloud and a target point cloud.
다만, 본 발명의 목적은 상술한 목적들로 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the object of the present invention is not limited to the above-mentioned objects, and may be expanded in various ways without departing from the spirit and scope of the present invention.
본 발명의 일 목적을 달성하기 위하여, 본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법에서, 제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터가 수신되고, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되며, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할되고, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정되며, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합된다.In order to achieve one object of the present invention, in a point cloud matching method for matching a source point cloud and a target point cloud according to embodiments of the present invention, the source point cloud obtained at a first point in time and a second point cloud obtained after the first point in time The target point cloud and trajectory data acquired at a viewpoint are received, overlapping points and noise for each of the source point cloud and the target point cloud are removed, and a driving trajectory from which the source point cloud and the target point cloud are obtained based on the trajectory data is divided into a plurality of sections so that the source point cloud and the target point cloud are divided into a source point cloud for each section and a target point cloud for each section belonging to each of the plurality of sections, and the source points included in the source point cloud for each section and the Corresponding point pairs of target points included in the target point cloud for each section are determined, and the source point cloud for each section and the target point cloud for each section are matched so that the sum of the distances of the corresponding point pairs is minimized.
일 실시예에서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고, 상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득될 수 있다.In one embodiment, each of the source point cloud and the target point cloud is obtained through a LiDaR device of a Mobile Mapping System (MMS), and the trajectory data is obtained through a trajectory collection device of the mobile mapping system can be obtained
일 실시예에서, 상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링이 수행될 수 있다.In an embodiment, downsampling may be performed on each of the source point cloud and the target point cloud to remove the overlapping point.
일 실시예에서, 상기 다운샘플링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간이 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분되고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나가 제거될 수 있다.In one embodiment, to perform the downsampling, for each of the source point cloud and the target point cloud, a space in which each point cloud is located is divided into a plurality of voxels having a size corresponding to an error range of a LIDAR device. When two or more points of each point group exist in one voxel among the plurality of voxels, at least one of the two or more points may be removed so that one point among the two or more points remains.
일 실시예에서, 상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링이 수행될 수 있다.In an embodiment, filtering may be performed on each of the source point cloud and the target point cloud to remove the noise.
일 실시예에서, 상기 필터링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들이 탐색되고, 상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리가 계산되며, 상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값이 계산되고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리가 결정되며, 상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점이 제거될 수 있다.In one embodiment, for a plurality of points of each of the source point group and the target point group, a predetermined number of neighboring points adjacent to each point are searched for to perform the filtering, and a distance from each point to the neighboring points is searched. An average distance of the distances is calculated, an average value and a standard deviation value for the average distances for the plurality of points are calculated, a reference distance is determined based on the average value and the standard deviation value, and the plurality of Among the points, a point having the average distance greater than the reference distance may be removed.
일 실시예에서, 상기 필터링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들이 탐색되고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면이 결정되며, 상기 인근점 평면으로부터 상기 각 점의 거리가 계산되고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점이 제거될 수 있다.In one embodiment, for a plurality of points of each of the source point group and the target point group, neighboring points having a distance less than or equal to a predetermined distance from each point are searched for to perform the filtering, and a minimum distance from the neighboring points is searched. A nearby point plane having is determined, a distance of each point from the nearby point plane is calculated, and each point having a calculated distance equal to or greater than a reference distance may be removed.
일 실시예에서, 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 각각 분할하도록, 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들이 설정되고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들이 결정되며, 상기 복수의 수직 평면들 사이의 공간들이 상기 복수의 구간들로 결정되고, 상기 소스 점군이 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할되며, 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할될 수 있다.In one embodiment, the driving trajectory from which the source point cloud and the target point cloud are obtained to divide the source point cloud and the target point cloud into the source point cloud for each section and the target point cloud for each section belonging to each of the plurality of sections, respectively A plurality of dividing points having predetermined intervals are set in, a plurality of vertical planes perpendicular to the traveling direction of the driving trajectory are determined at the plurality of dividing points, and the spaces between the plurality of vertical planes are It may be determined as a plurality of sections, the source point cloud may be divided into source point clouds for each section belonging to each of the plurality of sections, and the target point cloud may be divided into target point clouds for each section belonging to each of the plurality of sections. there is.
일 실시예에서, 상기 구간별 소스 점군에 포함된 상기 소스 점들과 상기 구간별 타겟 점군에 포함된 상기 타겟 점들의 대응점 쌍들을 결정하도록, 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점이 이웃점 쌍으로 결정되고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들이 상기 대응점 쌍들로 설정되며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거될 수 있다.In one embodiment, for each source point among the source points, to determine pairs of corresponding points between the source points included in the source point group for each section and the target points included in the target point group for each section, the source point; Among the target points, if a target point having the minimum distance from the source point is determined as a neighbor point pair, and one of the target points belongs to two or more of the neighbor point pairs, among the two or more neighbor point pairs The neighboring point pairs left by removing at least one of them are set as the corresponding point pairs, and among the corresponding point pairs, a corresponding point pair having a distance greater than or equal to a predetermined correspondence pair reference distance may be removed as an outlier corresponding point pair.
일 실시예에서, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하도록, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나가 회전 이동되고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나가 평행 이동될 수 있다.In an embodiment, at least one of the source point cloud for each section and the target point cloud for each section is rotated and moved to match the source point cloud for each section and the target point cloud for each section, and the source point cloud for each section and the target point cloud for each section At least one of them may be moved in parallel.
본 발명의 다른 목적을 달성하기 위하여, 본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치는, 제1 시점에 획득된 상기 소스 점군을 수신하고, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신하며, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 점군 전처리 블록, 상기 제2 시점에 획득된 궤적 데이터를 수신하고, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 구간 분할 블록, 및 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하고, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 구간별 점군 정합 블록을 포함한다.In order to achieve another object of the present invention, a point cloud matching apparatus for matching a source point cloud and a target point cloud according to embodiments of the present invention receives the source point cloud obtained at a first point in time, and A point cloud preprocessing block for further receiving the target point cloud obtained at a second point in time and removing duplicate points and noise for each of the source point cloud and the target point cloud; receiving locus data obtained at the second point in time; Based on the data, the driving trajectory from which the source point cloud and the target point cloud are obtained is divided into a plurality of sections, and the source point cloud and the target point cloud are divided into a source point cloud for each section and a target point cloud for each section belonging to each of the plurality of sections. A section division block to be divided, and corresponding point pairs of source points included in the source point cloud for each section and target points included in the target point cloud for each section are determined, and the source points for each section are determined such that the sum of the distances of the corresponding point pairs is minimized. A point cloud matching block for each section matching the point cloud with the target point cloud for each section is included.
일 실시예에서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고, 상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득될 수 있다.In one embodiment, each of the source point cloud and the target point cloud is obtained through a LiDaR device of a Mobile Mapping System (MMS), and the trajectory data is obtained through a trajectory collection device of the mobile mapping system can be obtained
일 실시예에서, 상기 점군 전처리 블록은, 상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행할 수 있다.In an embodiment, the point cloud preprocessing block may perform downsampling on each of the source point cloud and the target point cloud to remove the overlapping point.
일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거할 수 있다.In an embodiment, the point cloud preprocessing block divides a space where each point cloud is located into a plurality of voxels having a size corresponding to an error range of a LIDAR device, for each of the source point cloud and the target point cloud. In addition, when two or more points of each point group exist in one voxel of the plurality of voxels, at least one of the two or more points may be removed so that one point among the two or more points remains.
일 실시예에서, 상기 점군 전처리 블록은, 상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행할 수 있다.In an embodiment, the point cloud preprocessing block may perform filtering on each of the source point cloud and the target point cloud to remove the noise.
일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고, 상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며, 상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며, 상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거할 수 있다.In an embodiment, the point cloud preprocessing block searches for a predetermined number of neighboring points adjacent to each of a plurality of points of the source point group and the target point group, and from each point to the neighboring points. Calculate an average distance of the distances, calculate an average value and a standard deviation value for the average distances for the plurality of points, determine a reference distance based on the average value and the standard deviation value, and determine the plurality of points. Among the points, points having the average distance greater than the reference distance may be removed.
일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며, 상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거할 수 있다.In an embodiment, the point cloud preprocessing block searches for neighboring points having a distance less than or equal to a predetermined distance from each of the plurality of points of the source point group and the target point group, and a minimum distance from the neighboring points. Determines a nearby point plane having , calculates the distance of each point from the nearby point plane, and removes each point whose calculated distance is equal to or greater than the reference distance.
일 실시예에서, 상기 구간 분할 블록은, 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며, 상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고, 상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고, 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할할 수 있다.In one embodiment, the section division block sets a plurality of division points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained, and at the plurality of division points, the driving trajectory A plurality of vertical planes perpendicular to the traveling direction are determined, spaces between the plurality of vertical planes are determined as the plurality of sections, and the source point cloud is a source point cloud for each section belonging to each of the plurality of sections. segmentation, and the target point cloud may be divided into target point clouds for each section belonging to each of the plurality of sections.
일 실시예에서, 상기 구간별 점군 정합 블록은, 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거할 수 있다.In one embodiment, the section-by-section point cloud matching block determines, for each source point among the source points, the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points; When one of the target points belongs to two or more of the neighboring point pairs, at least one of the two or more neighboring point pairs is removed, and the remaining neighbor point pairs are set as the corresponding point pairs, and the corresponding point pairs Correspondence point pairs having a distance equal to or greater than a predetermined correspondence pair reference distance may be removed as outlier correspondence point pairs.
일 실시예에서, 상기 구간별 점군 정합 블록은, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시킬 수 있다.In an embodiment, the point cloud matching block for each section rotates at least one of the source point cloud for each section and the target point cloud for each section, and moves at least one of the source point cloud for each section and the target point cloud for each section in parallel. can
본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법 및 점군 정합 장치에서, 제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터가 수신되고, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되며, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할되고, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정되며, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합될 수 있다. 이에 따라, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 고정밀 지도 데이터가 생성될 수 있다. 또한, 복수의 점군들을 정합하여 고정밀 지도 데이터가 생성되므로, 도로 음영 구간이 복원되고, 도로 시설물의 변화가 감지 및 갱신될 수 있다.In the point cloud matching method and point cloud matching apparatus for matching a source point cloud and a target point cloud according to embodiments of the present invention, the source point cloud obtained at a first point in time and the target point obtained at a second point in time after the first point in time Point cloud and trajectory data are received, overlapping points and noise for each of the source point cloud and the target point cloud are removed, and driving trajectories from which the source point cloud and the target point cloud are obtained based on the trajectory data are divided into a plurality of sections By dividing, the source point cloud and the target point cloud are divided into a source point cloud for each section and a target point cloud for each section belonging to each of the plurality of sections, and the source points included in the source point cloud for each section and the target point cloud for each section are included. Corresponding point pairs of the corresponding target points are determined, and the source point cloud for each section and the target point group for each section may be matched so that the sum of the distances of the corresponding point pairs is minimized. Accordingly, since point cloud matching is performed section by section, position errors of matched point clouds are reduced, and high-precision map data can be generated. In addition, since high-precision map data is generated by matching a plurality of point clouds, road shaded sections can be restored and changes in road facilities can be detected and updated.
다만, 본 발명의 효과는 상술한 효과에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the effects of the present invention are not limited to the above-described effects, and may be variously extended within a range that does not deviate from the spirit and scope of the present invention.
도 1은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법을 나타내는 순서도이다.
도 2는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 다운샘플링의 일 예를 설명하기 위한 도면이다.
도 3은 소스 점군 및 타겟 점군 각각에 대하여 수행되는 SOR(Statistical Outlier Removal) 필터링의 일 예를 설명하기 위한 도면이다.
도 4는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 노이즈 필터링의 일 예를 설명하기 위한 도면이다.
도 5는 소스 점군 및 타겟 점군이 구간별 소스 점군 및 구간별 타겟 점군으로 분할되는 일 예를 설명하기 위한 도면이다.
도 6은 소스 점과 타겟 점의 이웃점 쌍이 결정되는 일 예를 설명하기 위한 도면이다.
도 7은 소스 점들과 타겟 점들의 대응점 쌍들의 일 예를 설명하기 위한 도면이다.
도 8은 대응점 쌍들 중 아웃라이어(outlier) 대응점 쌍이 제거되는 일 예를 설명하기 위한 도면이다.
도 9는 소스 점군 및 타겟 점군 중 적어도 하나에 대하여 회전 이동 및 평행 이동이 수행되는 일 예를 설명하기 위한 도면이다.
도 10은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치를 나타내는 블록도이다.1 is a flowchart illustrating a point cloud matching method for matching a source point cloud and a target point cloud according to an embodiment of the present invention.
2 is a diagram for explaining an example of downsampling performed on each of a source point cloud and a target point cloud.
3 is a diagram for explaining an example of Statistical Outlier Removal (SOR) filtering performed on each of a source point cloud and a target point cloud.
4 is a diagram for explaining an example of noise filtering performed on each of a source point cloud and a target point cloud.
5 is a diagram for explaining an example in which a source point cloud and a target point cloud are divided into a source point cloud for each section and a target point cloud for each section.
6 is a diagram for explaining an example in which pairs of neighboring points of a source point and a target point are determined.
7 is a diagram for explaining an example of corresponding point pairs of source points and target points.
8 is a diagram for explaining an example in which an outlier corresponding point pair among corresponding point pairs is removed.
9 is a diagram for explaining an example in which rotational movement and parallel movement are performed on at least one of a source point cloud and a target point cloud.
10 is a block diagram illustrating a point cloud matching device for matching a source point cloud and a target point cloud according to an embodiment of the present invention.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.For the embodiments of the present invention disclosed in the text, specific structural or functional descriptions are only exemplified for the purpose of explaining the embodiments of the present invention, and the embodiments of the present invention may be implemented in various forms and the text It should not be construed as being limited to the embodiments described above.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can have various changes and various forms, specific embodiments will be illustrated in the drawings and described in detail in the text. However, this is not intended to limit the present invention to a specific form disclosed, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.
제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제 2 구성 요소도 제1 구성 요소로 명명될 수 있다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms may be used for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first element may be termed a second element, and similarly, the second element may also be termed a first element.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when a component is referred to as “directly connected” or “directly connected” to another component, it should be understood that no other component exists in the middle. Other expressions describing the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to", etc., should be interpreted similarly.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "comprise" or "having" are intended to indicate that the described feature, number, step, operation, component, part, or combination thereof exists, but that one or more other features or numbers are present. However, it should be understood that it does not preclude the presence or addition of steps, operations, components, parts, or combinations thereof.
또한, 본문에 기재된 "~부" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, terms such as “~ unit” described in the text refer to a unit that processes at least one function or operation, which may be implemented by hardware or software or a combination of hardware and software.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in this application, they are not interpreted in an ideal or excessively formal meaning. .
이하, 첨부한 도면들을 참조하여, 본 발명의 실시예들을 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성 요소에 대해서는 동일하거나 유사한 참조 부호를 사용한다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the accompanying drawings. The same or similar reference numerals are used for like elements in the drawings.
도 1은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법을 나타내는 순서도이고, 도 2는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 다운샘플링의 일 예를 설명하기 위한 도면이며, 도 3은 소스 점군 및 타겟 점군 각각에 대하여 수행되는 SOR(Statistical Outlier Removal) 필터링의 일 예를 설명하기 위한 도면이고, 도 4는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 노이즈 필터링의 일 예를 설명하기 위한 도면이며, 도 5는 소스 점군 및 타겟 점군이 구간별 소스 점군 및 구간별 타겟 점군으로 분할되는 일 예를 설명하기 위한 도면이고, 도 6은 소스 점과 타겟 점의 이웃점 쌍이 결정되는 일 예를 설명하기 위한 도면이며, 도 7은 소스 점들과 타겟 점들의 대응점 쌍들의 일 예를 설명하기 위한 도면이고, 도 8은 대응점 쌍들 중 아웃라이어(outlier) 대응점 쌍이 제거되는 일 예를 설명하기 위한 도면이며, 도 9는 소스 점군 및 타겟 점군 중 적어도 하나에 대하여 회전 이동 및 평행 이동이 수행되는 일 예를 설명하기 위한 도면이다.1 is a flowchart illustrating a point cloud matching method for matching a source point cloud and a target point cloud according to an embodiment of the present invention, and FIG. 2 is a diagram for explaining an example of downsampling performed on each of the source point cloud and the target point cloud. 3 is a diagram for explaining an example of SOR (Statistical Outlier Removal) filtering performed on each of the source point cloud and the target point group, and FIG. 4 illustrates an example of noise filtering performed on each of the source point group and the target point group. 5 is a diagram for explaining an example in which a source point cloud and a target point cloud are divided into a source point cloud for each section and a target point cloud for each section, and FIG. 7 is a diagram for explaining an example of correspondence point pairs of source points and target points, and FIG. 8 is a diagram for explaining an example in which an outlier correspondence point pair among correspondence point pairs is removed. FIG. 9 is a diagram for explaining an example in which rotational movement and parallel movement are performed on at least one of a source point cloud and a target point cloud.
도 1을 참조하면, 소스 점군(110)과 타겟 점군(120)을 정합하는 점군 정합 방법에서, 제1 시점에 획득된 소스 점군(110)과, 상기 제1 시점 이후의 제2 시점에 획득된 타겟 점군(120) 및 궤적 데이터(130)가 수신될 수 있다(S140). 일 실시예에서, 소스 점군(110) 및 타겟 점군(120) 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고, 궤적 데이터(130)는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득될 수 있다. 예를 들어, 상기 라이다 장치는 벨로다인 라이다(Velodyne LiDAR), 에이치디엘-32 채널 라이다(HDL-32 channel LiDAR) 등일 수 있으나, 이에 한정되지 않는다. 또한, 예를 들어, 상기 궤적 수집 장치는 GPS(Global Positioning System), 및/또는 GNSS/INS(Global Navigation Satellite System/ Inertial Navigation System) 장치 등일 수 있으나, 이에 한정되지 않는다. 한편, 소스 점군(110)은 상기 모바일 매핑 시스템이 탑재된 차량이 상기 제1 시점에 주행 궤적을 따라 주행할 때 획득된 점군이고, 타겟 점군(120) 및 궤적 데이터(130)은 상기 모바일 매핑 시스템이 탑재된 차량이 상기 제1 시점 이후의 상기 제2 시점(예를 들어, 상기 제1 시점으로부터 몇 일, 몇 달 또는 몇 년 후의 시점)에 획득된 점군 및 궤적 데이터일 수 있다.Referring to FIG. 1 , in the point cloud matching method for matching a
소스 점군(110) 및 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거될 수 있다(S150). 일 실시예에서, 상기 중복점을 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 다운샘플링이 수행되고, 상기 노이즈를 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 필터링이 수행될 수 있다.Redundant points and noise for each of the
예를 들어, 상기 다운샘플링을 수행하도록, 도 2의 210에 도시된 바와 같이 각 점군이 위치하는 공간이 복수의 복셀(Voxel)들로 구분되고, 도 2의 220에 도시된 바와 같이 각 복셀의 중복점(230)이 하나의 점만이 남도록 제거될 수 있다. 즉, 상기 다운샘플링은 소스 점군(110) 및 타겟 점군(120) 각각에 대하여 수행되고, 각 점군이 위치하는 공간이 도 2의 210에 도시된 바와 같이 상기 라이다 장치의 오차 범위에 상응하는 크기를 가지는 상기 복수의 복셀(Voxel)들로 구분될 수 있다. 또한, 도 2의 220에 도시된 바와 같이, 각 복셀에 상기 각 점군의 2개 이상의 점들(230)이 존재하는 경우, 상기 2개 이상의 점들(230)이 상기 중복점으로 판단되고, 상기 2개 이상의 점들(230) 중 1개의 점이 남도록 2개 이상의 점들(230) 중 적어도 하나가 제거될 수 있다. 예를 들어, 상기 2개 이상의 점들(230) 중 각 복셀의 중심점에 근접한 1개의 점만이 남고, 나머지 점들이 제거될 수 있다. 한편, 상기 라이다 장치는 일정한 오차 범위를 가지고, 상기 오차 범위에 상응하는 크기를 가지는 각 복셀 내에 존재하는 2 이상의 점들(230)은 잘못 획득된 상기 중복점일 수 있고, 이러한 복셀을 이용한 다운샘플링을 통하여 상기 중복점이 제거될 수 있다.For example, in order to perform the downsampling, as shown in 210 of FIG. 2, the space in which each point cloud is located is divided into a plurality of voxels, and as shown in 220 of FIG.
일 실시예에서, 도 3에 도시된 바와 같이, 소스 점군(110) 및 타겟 점군(120) 각각의 상기 노이즈를 제거하도록, SOR(Statistical Outlier Removal) 필터링이 수행될 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 상기 SPR 필터링은 소스 점군(110) 및 타겟 점군(120) 각각에 대하여 수행되고, 각 점군의 복수의 점들(310, 320, 330, 340, 350, 360, 370)에 대하여, 각 점(310)에 인접한 미리 결정된 개수(도 3의 예에서 6개이나, 이에 한정되지 않음)의 인근점들(320, 330, 340, 350, 360, 370)이 탐색되고, 각 점(310)으로부터 인근점들(320, 330, 340, 350, 360, 370)까지의 거리들(d0, d1, d2, d3, d4, d5)의 평균 거리가 계산될 수 있다. 이와 같이 평균 거리는 점(310)의 평균 거리로 결정되고, 이러한 평균 거리는 각 점군의 모든 점군들에 대하여 결정될 수 있다. 또한, 상기 모든 점군들의 상기 평균 거리들에 대한 평균 값 및 표준 편차 값이 계산되고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리가 결정될 수 있다. 일 실시예에서, 상기 기준 거리는 상기 평균 값과, 상기 표준 편차 값의 N배(N은 0 이상의 실수)의 합으로 결정될 수 있다. 예를 들어, 상기 기준 거리는 상기 평균 값 및 상기 표준 편차 값의 합으로 결정될 수 있고, 이 경우, 상기 평균 거리들의 약 68%가 상기 기준 거리 이하일 수 있다. 다른 예에서, 상기 기준 거리는 상기 평균 값과 상기 표준 편차 값의 두 배의 합으로 결정될 수 있고, 이 경우, 상기 평균 거리들의 약 95%가 상기 기준 거리 이하일 수 있다. 또한, 각 점군의 모든 점군들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점이 제거될 수 있다. 이에 따라, 소스 점군(110) 및 타겟 점군(120) 각각에 대하여, 다른 점들로부터 멀리 떨어진 점은 잘못 획득된 노이즈로서 제거될 수 있다.In one embodiment, as shown in FIG. 3 , statistical outlier removal (SOR) filtering may be performed to remove the noise of each of the
다른 실시예에서, 도 4에 도시된 바와 같이, 소스 점군(110) 및 타겟 점군(120) 각각의 상기 노이즈를 제거하도록, 노이즈 필터링이 수행될 수 있다. 예를 들어, 도 4에 도시된 바와 같이, 상기 노이즈 필터링은 소스 점군(110) 및 타겟 점군(120) 각각에 대하여 수행되고, 각 점군의 복수의 점들(410, 420, 430, 440, 450, 460)에 대하여, 각 점(410)으로부터 미리 결정된 거리(도 4의 예에서 약 20 cm이나, 이에 한정되지 않음) 이하의 거리를 가지는 인근점들(420, 430, 440, 450, 460)이 탐색되고, 평면 피팅(fitting)을 수행하여 인근점들(420, 430, 440, 450, 460)로부터 최소 거리를 가지는 인근점 평면(470)이 결정될 수 있다. 또한, 인근점 평면(470)으로부터 각 점(410)의 거리가 계산되고, 상기 계산된 거리가 (실시예들에 따라 미리 결정된) 기준 거리 이상인 상기 각 점(410)이 제거될 수 있다. 한편, 이러한 인근점 탐색, 평면 피팅, 및 상기 기준 거리 이상의 점 제거는 각 점군의 모든 점군들에 대하여 수행될 수 있다. 이에 따라, 소스 점군(110) 및 타겟 점군(120) 각각에 대하여, 인근점 평면(470)으로부터 멀리 떨어진 점은 잘못 획득된 노이즈로서 제거될 수 있다.In another embodiment, as shown in FIG. 4 , noise filtering may be performed to remove the noise of each of the
소스 점군(110) 및 타겟 점군(120) 각각에 대하여, 실시예들에 따라, 도 3에 도시된 상기 SOR 필터링이 수행되거나, 도 4에 도시된 상기 노이즈 필터링이 수행되거나, 도 3에 도시된 상기 SOR 필터링 및 도 4에 도시된 상기 노이즈 필터링이 모두 수행될 수 있다.For each of the
궤적 데이터(130)에 기초하여 소스 점군(110) 및 타겟 점군(120)이 획득된 주행 궤적을 복수의 구간들로 분할하여 소스 점군(110) 및 타겟 점군(120)이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할될 수 있다(S160).Based on the
예를 들어, 도 5에 도시된 바와 같이, 상기 제1 시점에서 소스 점군(110)이 획득되고, 상기 제1 시점 후의 상기 제2 시점에서 획득된 타겟 점군(120)이 획득된 상기 주행 궤적, 즉 타겟 점군(120)이 나타내는 상기 주행 궤적에서 미리 결정된 일정한 간격(도 5의 예에서 약 100 m이나, 이에 한정되지 않음)을 가지는 복수의 분할 지점들(511, 512, 513, 514, 515, 516, 517, 518, 519)이 설정되고, 복수의 분할 지점들511, 512, 513, 514, 515, 516, 517, 518, 519)에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들(521, 522, 523, 514, 525, 526, 527, 528, 529)이 결정될 수 있다. 한편, 도 5에는 각 수직 평면이 설명의 편의상 선으로 표현되어 있으나, 각 수직 평면은 면일 수 있다. 복수의 수직 평면들(521, 522, 523, 514, 525, 526, 527, 528, 529) 사이의 공간들이 상기 복수의 구간들로 결정되고, 소스 점군(110)이 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할되고, 타겟 점군(120)이 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할될 수 있다. 이와 같이, 소스 점군(110) 및 타겟 점군(120)이 타겟 점군(120)이 나타내는 상기 주행 궤적을 따라 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 분할될 수 있다.For example, as shown in FIG. 5, the driving trajectory in which the
각 구간에 속하는 서로 대응되는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군에 대하여, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정될 수 있다(S170).Corresponding point pairs of source points included in the source point cloud for each section and target points included in the target point cloud for each section may be determined for the source point cloud for each section and the target point cloud for each section that correspond to each other belonging to each section ( S170).
예를 들어, 도 6에 도시된 바와 같이, 상기 구간별 소스 점군의 상기 소스 점들 중 각 소스 점(610)에 대하여, 소스 점(610)과, 상기 구간별 타겟 점군의 타겟 점들(621, 622, 623, 624, 625) 중 소스 점(610)으로부터 최소 거리를 가지는 타겟 점(621)이 이웃점 쌍으로 결정될 수 있다. 한편, 각 소스 점(610)에 대하여 상기 이웃점 쌍이 결정되므로, 단일한 타겟 점(621)이 2 이상의 이웃점 쌍들에 포함될 수 있다. 다른 이웃점 쌍에 포함되지 않는 타겟 점을 가지는 이웃점 쌍은 상기 대응점 쌍으로 설정될 수 있다. 한편, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들이 상기 대응점 쌍들로 설정될 수 있다. 이에 따라, 도 7에 도시된 바와 같이, 상기 대응점 쌍들은 중복되지 않는 소스 점들(711, 712, 713, 714, 715) 및 중복되지 않는 타겟 점들(721, 722, 723, 724, 725)을 포함할 수 있다.For example, as shown in FIG. 6 , for each
일 실시예에서, 상기 대응점 쌍들 중 아웃라이어(outlier) 대응점 쌍이 제거될 수 있다. 예를 들어, 도 8에 도시된 바와 같이, 대응 쌍 기준 거리가 실시예들에 따라 미리 결정되고, 소스 점들(813, 814, 815)과 타겟 점들(823, 824, 825) 사이의 거리들이 상기 대응 쌍 기준 거리 미만인 대응점 쌍들은 인라이어(Inlier) 대응점 쌍으로서 유지되고, 소스 점들(811, 812)과 타겟 점들(821, 822) 사이의 거리들이 상기 대응 쌍 기준 거리 이상인 대응점 쌍들은 아웃라이어(outlier) 대응점 쌍으로서 제거될 수 있다.In an embodiment, an outlier correspondence point pair among the correspondence point pairs may be removed. For example, as shown in FIG. 8 , a corresponding pair reference distance is predetermined according to embodiments, and the distances between source points 813, 814 and 815 and
상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합될 수 있다(S180). 일 실시예에서, 상기 대응점 쌍들의 거리 합산이 최소가 되도록, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나에 대하여 회전 이동 및/또는 평행 이동이 수행될 수 있다.The source point cloud for each section and the target point cloud for each section may be matched so that the sum of the distances of the corresponding point pairs is minimized (S180). In an embodiment, rotational movement and/or parallel movement may be performed on at least one of the source point group for each section and the target point group for each section so that the sum of the distances of the corresponding point pairs is minimized.
도 9의 예에서, 910은 상기 구간별 소스 점군을 나타내고, 930은 상기 구간별 타겟 점군을 나타낼 수 있다. 예를 들어, 도 9에 도시된 바와 같이, 구간별 타겟 점군(930)에 대하여 회전 이동이 수행됨으로써, 회전 이동된 구간별 타겟 점군(950)이 도출되고, 이어서 회전 이동된 구간별 타겟 점군(950)에 대하여 평행 이동이 수행되어 구간별 타겟 점군(930)이 구간별 소스 점군(910)에 근접하게 될 수 있다. 이에 따라, 정합된 구간별 소스 점군(910)과 구간별 타겟 점군(930)의 대응점 쌍들의 거리들의 합산이 최소화될 수 있다. 한편, 도 9에는 구간별 타겟 점군(930)이 구간별 소스 점군(910)에 근접하도록 회전 이동 및 평행 이동된 예가 도시되어 있으나, 다른 실시예에서, 구간별 소스 점군(910)이 구간별 타겟 점군(930)에 근접하도록 회전 이동 및 평행 이동될 수 있다.In the example of FIG. 9 , 910 may indicate the source point cloud for each section, and 930 may indicate the target point cloud for each section. For example, as shown in FIG. 9 , rotation is performed on the
이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 소스 점군(110) 및 타겟 점군(120)이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.In this way, the matched point clouds for each section are merged, the
상술한 바와 같이, 본 발명의 실시예들에 따른 소스 점군(110)과 타겟 점군(120)을 정합하는 상기 점군 정합 방법에서, 소스 점군(110) 및 상기 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거되므로, 소스 점군(110) 및 상기 타겟 점군(120) 각각의 정확도가 향상될 수 있다. 또한, 본 발명의 실시예들에 따른 상기 점군 정합 방법에서, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 보다 정확한 고정밀 지도 데이터가 생성될 수 있다. 또한, 본 발명의 실시예들에 따른 상기 점군 정합 방법에서, 단일한 주행으로 획득된 점군이 아닌, 복수의 시점들에서의 (모바일 매핑 시스템이 탑재된 차량의) 복수의 주행들로 획득된 복수의 점군들(즉, 소스 점군(110) 및 타겟 점군(120))을 정합하여 상기 고정밀 지도 데이터가 생성되므로, 하나의 점군에 포함되지 않은 도로 음영 구간이 다른 점군에 의해 복원될 수 있고, 상기 복수의 시점들 사이에서의 도로 시설물(예를 들어, 차선, 횡단보도, 표지판 등)의 변화가 감지되며, 변화된 도로 시설물이 최신의 도로 시설물로 갱신될 수 있다.As described above, in the point cloud matching method for matching the
도 10은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치를 나타내는 블록도이다.10 is a block diagram illustrating a point cloud matching device for matching a source point cloud and a target point cloud according to an embodiment of the present invention.
도 10을 참조하면, 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치(1000)는 점군 전처리 블록(1010), 구간 분할 블록(1020) 및 구간별 점군 정합 블록(1030)을 포함할 수 있다.Referring to FIG. 10 , a point
점군 전처리 블록(1010)은 모바일 매핑 시스템(1050)의 라이다 장치(1060)를 통하여 제1 시점에 획득된 상기 소스 점군을 수신하고, 모바일 매핑 시스템(1050)의 라이다 장치(1060)를 통하여 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신할 수 있다. 예를 들어, 라이다 장치(1060)는 벨로다인 라이다(Velodyne LiDAR), 에이치디엘-32 채널 라이다(HDL-32 channel LiDAR) 등일 수 있으나, 이에 한정되지 않는다.The point
점군 전처리 블록(1010)은 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거할 수 있다. 일 실시예에서, 점군 전처리 블록(1010)은, 상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행할 수 있다. 예를 들어, 점군 전처리 블록(1010)은, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치(1060)의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거할 수 있다. 또한, 일 실시예에서, 점군 전처리 블록(1010)은, 상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행할 수 있다. 일 예에서, 점군 전처리 블록(1010)은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고, 상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며, 상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며, 상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거할 수 있다. 이러한 필터링은 SOR(Statistical Outlier Removal) 필터링으로 불릴 수 있다. 다른 예에서, 점군 전처리 블록(1010)은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며, 상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거할 수 있다. 이러한 필터링은 노이즈 필터링으로 불릴 수 있다. 실시예들에 따라, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 상기 SOR 필터링이 수행되거나, 상기 노이즈 필터링이 수행되거나, 상기 SOR 필터링 및 상기 노이즈 필터링이 모두 수행될 수 있다.The point
구간 분할 블록(1020)은 모바일 매핑 시스템(1050)의 궤적 수집 장치(1070)를 통하여 상기 제2 시점에 획득된 궤적 데이터를 수신할 수 있다. 예를 들어, 궤적 수집 장치(1070)는 GPS(Global Positioning System), 및/또는 GNSS/INS(Global Navigation Satellite System/ Inertial Navigation System) 장치 등일 수 있으나, 이에 한정되지 않는다.The
구간 분할 블록(1020)은 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할할 수 있다. 예를 들어, 구간 분할 블록(1020)은 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며, 상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고, 상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고, 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할할 수 있다.The
구간별 점군 정합 블록(1030)은 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정할 수 있다. 예를 들어, 구간별 점군 정합 블록(1030)은 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거할 수 있다.The section-by-section point cloud matching block 1030 may determine corresponding point pairs of source points included in the section-by-section source point cloud and target points included in the section-by-section target point cloud. For example, the section-by-section point cloud matching block 1030 determines, for each source point among the source points, the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points; If one of the target points belongs to two or more of the neighboring point pairs, at least one of the two or more neighboring point pairs is removed, and the left neighbor point pairs are set as the corresponding point pairs, and the corresponding point pairs Correspondence point pairs having a distance equal to or greater than a predetermined correspondence pair reference distance may be removed as outlier correspondence point pairs.
또한, 구간별 점군 정합 블록(1030)은 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합할 수 있다. 예를 들어, 구간별 점군 정합 블록(1030)은 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시킴으로써, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합할 수 있다. 이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 상기 소스 점군 및 상기 타겟 점군이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.Also, the section-by-section point cloud matching block 1030 may match the section-by-section source point cloud and the section-by-section target point cloud so that the sum of the distances of the corresponding point pairs is minimized. For example, the section-by-section point cloud matching block 1030 rotationally moves at least one of the source point cloud for each section and the target point cloud for each section, and parallelly moves at least one of the source point cloud for each section and the target point cloud for each section. , the source point cloud for each section and the target point cloud for each section can be matched. In this way, the matched point clouds for each section are merged, the source point cloud and the target point cloud are matched with respect to the entire driving route, and high-precision map data can be generated.
상술한 바와 같이, 본 발명의 실시예들에 따른 상기 소스 점군과 상기 타겟 점군을 정합하는 점군 정합 장치(1000)에서, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되므로, 상기 소스 점군 및 상기 타겟 점군 각각의 정확도가 향상될 수 있다. 또한, 본 발명의 실시예들에 따른 점군 정합 장치(1000)에서, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 보다 정확한 고정밀 지도 데이터가 생성될 수 있다. 또한, 본 발명의 실시예들에 따른 점군 정합 장치(1000)에서, 단일한 주행으로 획득된 점군이 아닌, 복수의 시점들에서의 (모바일 매핑 시스템(1050)이 탑재된 차량의) 복수의 주행들로 획득된 복수의 점군들(즉, 상기 소스 점군 및 상기 타겟 점군)을 정합하여 상기 고정밀 지도 데이터가 생성되므로, 하나의 점군에 포함되지 않은 도로 음영 구간이 다른 점군에 의해 복원될 수 있고, 상기 복수의 시점들 사이에서의 도로 시설물(예를 들어, 차선, 횡단보도, 표지판 등)의 변화가 감지되며, 변화된 도로 시설물이 최신의 도로 시설물로 갱신될 수 있다.As described above, in the point
이상, 본 발명의 실시예들에 따른 점군 정합 방법 및 점군 정합 장치에 대하여 도면을 참조하여 설명하였지만, 상기 설명은 예시적인 것으로서 본 발명의 기술적 사상을 벗어나지 않는 범위에서 해당 기술 분야에서 통상의 지식을 가진 자에 의하여 수정 및 변경될 수 있을 것이다.Although the point cloud matching method and the point cloud matching device according to the embodiments of the present invention have been described above with reference to the drawings, the above description is exemplary and requires common knowledge in the related art to the extent that it does not deviate from the technical spirit of the present invention. It can be modified and changed by those who have it.
본 발명은 고정밀 지도 데이터를 구축하는 방법 및 장치에 적용될 수 있다. 이상에서는 본 발명의 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.The present invention can be applied to a method and apparatus for constructing high-precision map data. Although the above has been described with reference to the embodiments of the present invention, those skilled in the art can variously modify and change the present invention without departing from the spirit and scope of the present invention described in the claims below. You will understand that you can.
1000: 점군 정합 장치
1010: 점군 전처리 블록
1020: 구간 분할 블록
1030: 구간별 점군 정합 블록
1050: 모바일 매핑 시스템
1060: 라이다 장치
1070: 궤적 수집 장치1000: point cloud matching device
1010: point cloud preprocessing block
1020: Section division block
1030: Sectional point cloud matching block
1050: mobile mapping system
1060: lidar device
1070: trajectory collection device
Claims (20)
제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터를 수신하는 단계;
상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 단계;
상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 단계;
상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하는 단계; 및
상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 단계를 포함하고,
상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 각각 분할하는 단계는,
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하는 단계;
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하는 단계;
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하는 단계;
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하는 단계; 및
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.In the point cloud matching method for matching a source point cloud and a target point cloud,
receiving the source point cloud obtained at a first point in time and the target point cloud and trajectory data obtained at a second point after the first point in time;
removing overlapping points and noise from each of the source point cloud and the target point cloud;
Based on the locus data, the driving trajectory from which the source point cloud and the target point cloud are obtained is divided into a plurality of sections, and the source point cloud and the target point cloud are obtained by section-by-section source point cloud and section-by-section target Dividing each into point groups;
determining corresponding point pairs between source points included in the source point cloud for each section and target points included in the target point cloud for each section; and
matching the source point cloud for each section with the target point cloud for each section so that the sum of the distances of the pairs of corresponding points is minimized;
The step of dividing the source point cloud and the target point cloud into the source point cloud for each section and the target point cloud for each section belonging to each of the plurality of sections, respectively.
setting a plurality of dividing points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained;
determining a plurality of vertical planes perpendicular to a traveling direction of the driving trajectory at the plurality of dividing points;
determining spaces between the plurality of vertical planes as the plurality of sections;
dividing the source point cloud into source point clouds for each section belonging to each of the plurality of sections; and
and dividing the target point cloud into target point clouds for each section belonging to each of the plurality of sections.
상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득되는 것을 특징으로 하는 점군 정합 방법.The method of claim 1, wherein each of the source point cloud and the target point cloud is obtained through a LiDaR device of a Mobile Mapping System (MMS),
The point cloud matching method, characterized in that the trajectory data is obtained through a trajectory collecting device of the mobile mapping system.
상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 1 , wherein the removing of the overlapping point and the noise for each of the source point group and the target point group comprises:
and performing downsampling on each of the source point cloud and the target point cloud to remove the overlapping point.
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하는 단계; 및
상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 3, wherein the downsampling step comprises:
For each of the source point cloud and the target point cloud, dividing a space where each point cloud is located into a plurality of voxels having a size corresponding to an error range of a LIDAR device; and
and removing at least one of the two or more points so that one of the two or more points remains when two or more points of each point group exist in one voxel of the plurality of voxels. The point group matching method with .
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 1 , wherein the removing of the overlapping point and the noise for each of the source point group and the target point group comprises:
and performing filtering on each of the source point cloud and the target point cloud to remove the noise.
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하는 단계;
상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하는 단계;
상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하는 단계;
상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하는 단계; 및
상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 5, wherein the filtering step comprises:
searching for a predetermined number of nearby points adjacent to each point with respect to a plurality of points of each of the source point group and the target point group;
calculating an average distance of distances from each point to the neighboring points;
calculating an average value and a standard deviation value for the average distances for the plurality of points;
determining a reference distance based on the average value and the standard deviation value; and
and removing a point having the average distance greater than the reference distance from among the plurality of points.
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하는 단계;
상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하는 단계;
상기 인근점 평면으로부터 상기 각 점의 거리를 계산하는 단계; 및
상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 5, wherein the filtering step comprises:
searching for neighboring points having a distance less than or equal to a predetermined distance from each of the plurality of points of the source point group and the target point group;
determining a nearby point plane having a minimum distance from the neighboring points;
calculating the distance of each point from the nearby point plane; and
and removing each point having the calculated distance equal to or greater than the reference distance.
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하는 단계;
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하는 단계; 및
상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 1 , wherein the step of determining corresponding point pairs of the source points included in the source point cloud for each section and the target points included in the target point group for each section comprises:
determining, for each source point among the source points, the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points;
if one of the target points belongs to two or more of the neighboring point pairs, setting the neighboring point pairs left by removing at least one of the two or more neighboring point pairs as the corresponding point pairs; and
and removing corresponding-point pairs having a distance greater than or equal to a predetermined correspondence-pair reference distance among the corresponding-point pairs as outlier corresponding-point pairs.
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키는 단계; 및
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시키는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 1 , wherein the matching of the source point cloud for each section and the target point cloud for each section comprises:
rotating and moving at least one of the source point cloud for each section and the target point cloud for each section; and
and parallel-moving at least one of the source point cloud for each section and the target point cloud for each section.
제1 시점에 획득된 상기 소스 점군을 수신하고, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신하며, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 점군 전처리 블록;
상기 제2 시점에 획득된 궤적 데이터를 수신하고, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 구간 분할 블록; 및
상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하고, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 구간별 점군 정합 블록을 포함하고,
상기 구간 분할 블록은,
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고,
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며,
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고,
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고,
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 것을 특징으로 하는 점군 정합 장치.A point cloud matching device for matching a source point cloud and a target point cloud,
Receiving the source point cloud obtained at a first time point, further receiving the target point cloud obtained at a second time point after the first time point, and removing overlapping points and noise for each of the source point cloud and the target point cloud point cloud preprocessing block;
Trajectory data obtained at the second point in time is received, and based on the locus data, a driving trajectory from which the source point cloud and the target point cloud are obtained is divided into a plurality of sections to obtain the source point cloud and the target point cloud. a section dividing block that divides each section into a source point cloud and a target point group for each section belonging to each section; and
Corresponding point pairs of the source points included in the source point cloud for each section and the target points included in the target point cloud for each section are determined, and the source point group for each section and the target point cloud for each section are determined so that the sum of distances between the corresponding point pairs is minimized. Including a point cloud matching block for each section to be matched,
The section division block,
Setting a plurality of dividing points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained;
Determining a plurality of vertical planes perpendicular to the traveling direction of the driving trajectory at the plurality of dividing points;
determining spaces between the plurality of vertical planes as the plurality of sections;
Dividing the source point cloud into source point clouds for each section belonging to each of the plurality of sections;
and dividing the target point cloud into target point clouds for each section belonging to each of the plurality of sections.
상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득되는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein each of the source point cloud and the target point cloud is obtained through a LiDaR device of a Mobile Mapping System (MMS),
The point cloud matching device, characterized in that the trajectory data is obtained through a trajectory collecting device of the mobile mapping system.
상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행하는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein the point cloud preprocessing block,
wherein downsampling is performed on each of the source point cloud and the target point cloud to remove the overlapping point.
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고,
상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거하는 것을 특징으로 하는 점군 정합 장치.The method of claim 13, wherein the point cloud preprocessing block,
For each of the source point cloud and the target point cloud, the space where each point cloud is located is divided into a plurality of voxels having sizes corresponding to the error range of the LIDAR device,
When two or more points of each point group exist in one voxel among the plurality of voxels, at least one of the two or more points is removed so that one point among the two or more points remains. Device.
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein the point cloud preprocessing block,
and performing filtering on each of the source point cloud and the target point cloud to remove the noise.
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고,
상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며,
상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고,
상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며,
상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거하는 것을 특징으로 하는 점군 정합 장치.The method of claim 15, wherein the point cloud preprocessing block,
For each of the plurality of points of the source point group and the target point group, a predetermined number of neighboring points adjacent to each point are searched;
Calculate the average distance of the distances from each point to the neighboring points,
Calculate an average value and a standard deviation value for the average distances for the plurality of points;
determine a reference distance based on the mean value and the standard deviation value;
The point cloud matching device characterized in that removing a point having the average distance greater than the reference distance from among the plurality of points.
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고,
상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며,
상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고,
상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거하는 것을 특징으로 하는 점군 정합 장치.The method of claim 15, wherein the point cloud preprocessing block,
For each of the plurality of points of the source point group and the target point group, searching for neighboring points having a distance less than or equal to a predetermined distance from each point;
determining a nearby point plane having a minimum distance from the neighboring points;
Calculate the distance of each point from the nearby point plane;
The point cloud matching device characterized in that for removing each point having the calculated distance equal to or greater than the reference distance.
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고,
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하며,
상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거하는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein the point cloud matching block for each section comprises:
For each source point among the source points, determine the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points;
If one of the target points belongs to two or more pairs of neighboring points among the pairs of neighboring points, at least one of the two or more pairs of neighboring points is removed, and the remaining pairs of neighboring points are set as the pairs of corresponding points;
The point cloud matching device characterized in that, among the corresponding point pairs, a corresponding point pair having a distance greater than or equal to a predetermined correspondence pair reference distance is removed as an outlier corresponding point pair.
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고,
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시키는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein the point cloud matching block for each section comprises:
rotating and moving at least one of the source point cloud for each section and the target point cloud for each section;
The point cloud matching device characterized in that at least one of the source point cloud for each section and the target point cloud for each section is moved in parallel.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200171644A KR102513683B1 (en) | 2020-12-09 | 2020-12-09 | Point cloud matching method and point cloud matching device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200171644A KR102513683B1 (en) | 2020-12-09 | 2020-12-09 | Point cloud matching method and point cloud matching device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220081776A KR20220081776A (en) | 2022-06-16 |
KR102513683B1 true KR102513683B1 (en) | 2023-03-27 |
Family
ID=82217585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200171644A KR102513683B1 (en) | 2020-12-09 | 2020-12-09 | Point cloud matching method and point cloud matching device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102513683B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102616439B1 (en) * | 2022-10-27 | 2023-12-21 | 주식회사 모빌테크 | Method for Noise filtering through neighbourhood point and computer program recorded on record-medium for executing method therefor |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015125092A (en) * | 2013-12-27 | 2015-07-06 | 国際航業株式会社 | Consistency determination method of measurement result and consistency determination apparatus of measurement result |
WO2017199141A1 (en) | 2016-05-20 | 2017-11-23 | Nokia Usa Inc. | Point cloud matching method |
KR102050754B1 (en) | 2019-05-24 | 2020-01-08 | 한화시스템 주식회사 | Micro target detection method for 3d sensor system |
KR102083909B1 (en) | 2018-10-23 | 2020-03-04 | 주식회사 모빌테크 | Automatic extraction method for lane data information for autonomous driving vehicles based on point cloud map |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170083662A (en) * | 2016-01-08 | 2017-07-19 | 서울대학교산학협력단 | Map building apparatus being robust in sensor error |
KR20170100718A (en) * | 2016-02-25 | 2017-09-05 | 한국전자통신연구원 | Apparatus and method for registration of point cloud |
KR102078254B1 (en) * | 2018-03-30 | 2020-02-17 | 서울시립대학교 산학협력단 | Method, system and computer program for topographical change detection using LiDAR data |
KR102083911B1 (en) * | 2019-09-03 | 2020-03-04 | 주식회사 모빌테크 | Method for building map including point cloud using LiDAR |
-
2020
- 2020-12-09 KR KR1020200171644A patent/KR102513683B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015125092A (en) * | 2013-12-27 | 2015-07-06 | 国際航業株式会社 | Consistency determination method of measurement result and consistency determination apparatus of measurement result |
WO2017199141A1 (en) | 2016-05-20 | 2017-11-23 | Nokia Usa Inc. | Point cloud matching method |
KR102083909B1 (en) | 2018-10-23 | 2020-03-04 | 주식회사 모빌테크 | Automatic extraction method for lane data information for autonomous driving vehicles based on point cloud map |
KR102050754B1 (en) | 2019-05-24 | 2020-01-08 | 한화시스템 주식회사 | Micro target detection method for 3d sensor system |
Also Published As
Publication number | Publication date |
---|---|
KR20220081776A (en) | 2022-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108765487B (en) | Method, device, equipment and computer readable storage medium for reconstructing three-dimensional scene | |
US9978161B2 (en) | Supporting a creation of a representation of road geometry | |
CN111006655B (en) | Multi-scene autonomous navigation positioning method for airport inspection robot | |
CN113341397A (en) | Reflection value map construction method and device | |
EP3667236B1 (en) | A method of determining position data | |
CN111856521B (en) | Data processing method, device, electronic equipment and storage medium | |
WO2022052567A1 (en) | Vehicle positioning method and apparatus, vehicle, and storage medium | |
US9330484B2 (en) | Plane panorama location correction in three-dimensional mapping | |
US20220398856A1 (en) | Method for reconstruction of a feature in an environmental scene of a road | |
CN107917716B (en) | Fixed line navigation method, device, terminal and computer readable storage medium | |
KR20190038739A (en) | Method for detecting the changing point of road | |
CN112985404A (en) | Method, device, equipment and medium for generating crowdsourcing map of parking lot | |
KR102513683B1 (en) | Point cloud matching method and point cloud matching device | |
CN111060112A (en) | Vehicle track map matching method and system based on direction angle | |
CN112673280A (en) | Road detection method for a motor vehicle equipped with a LIDAR sensor | |
CN115135963A (en) | Method for generating 3D reference point in scene map | |
CN111664856B (en) | Vehicle initial positioning system and vehicle initial positioning method | |
WO2020118623A1 (en) | Method and system for generating an environment model for positioning | |
KR102291805B1 (en) | GPS error correction method by comparing 3D precision map in overlapping area | |
KR20190038740A (en) | Map matching method using reverse tracking map matching | |
CN112037328A (en) | Method, device, equipment and storage medium for generating road edges in map | |
WO2021048841A2 (en) | Cellular-based navigation method | |
CN114440892B (en) | Self-positioning method based on topological map and odometer | |
JP7308772B2 (en) | DATA PROCESSING DEVICE, DATA PROCESSING METHOD AND DATA PROCESSING PROGRAM | |
Altyntsev | Relative Adjustment of Mobile Laser Scanning Data in Different Scenes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |