KR20220081776A - Point cloud matching method and point cloud matching device - Google Patents
Point cloud matching method and point cloud matching device Download PDFInfo
- Publication number
- KR20220081776A KR20220081776A KR1020200171644A KR20200171644A KR20220081776A KR 20220081776 A KR20220081776 A KR 20220081776A KR 1020200171644 A KR1020200171644 A KR 1020200171644A KR 20200171644 A KR20200171644 A KR 20200171644A KR 20220081776 A KR20220081776 A KR 20220081776A
- Authority
- KR
- South Korea
- Prior art keywords
- point cloud
- points
- point
- source
- target
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 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 17
- 230000014509 gene expression Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000000694 effects 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
- 230000011218 segmentation 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 a point cloud matching method and 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 time point and the target point cloud and trajectory data obtained at a second time point after the first time point is received, overlapping points and noise for each of the source point cloud and the target point cloud are removed, and the driving trajectory obtained by the source point cloud and the target point cloud is divided into a plurality of sections based on the trajectory data so that the source point cloud and the target point cloud are plural. is divided into a source point cloud for each section and a target point cloud for each section belonging to each section of 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 a point cloud matching apparatus for constructing map data for a vehicle.
최근, 차량 등에서 경로 안내, 자동 주행 등의 서비스를 제공하기 위하여, 보다 정밀한 고정밀 지도 데이터가 요구되고 있다. 한편, 항공 사진을 이용한 지도 데이터 구축 방법은 센티미터(cm) 수준의 정밀도가 요구되는 고정밀 지도 데이터의 구축에 적합하지 않고, LIDAR(Light Detection And Ranging) 등이 고정밀 지도 데이터의 구축에 이용된다. 예를 들어, LIDAR 등을 이용하여 점군(Point Cloud)을 수 차례 수집하고, 수 차례 수집된 점군들을 정합함으로써 고정밀 지도 데이터가 구축될 수 있다.Recently, in order to provide services such as route guidance and automatic driving in vehicles, more precise and high-precision map data is required. On the other hand, the map data construction method using aerial photos is not suitable for the construction of high-precision map data requiring centimeter (cm) level precision, and LIDAR (Light Detection And Ranging) is used to build high-precision map data. For example, high-precision map data may be constructed by collecting a point cloud several times using LIDAR or the like and matching the collected point clouds several times.
다만, 점군들을 정합함에 있어서, 종래의 정합 방법은 주행 궤적의 전체에 대하여 점군들을 정합하므로, 주행 궤적의 시작 위치에서 멀어질수록 정합된 점군들의 위치 오차가 커지는 문제가 있다.However, in matching the point clouds, the conventional matching method matches the point clouds with respect to the entire driving trajectory, so 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.
본 발명의 일 목적은 보다 정확하게 소스 점군과 타겟 점군을 정합할 수 있는 점군 정합 방법을 제공하는 것이다.SUMMARY OF THE INVENTION 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-described 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 an object of the present invention, in the point cloud matching method of 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 time point and a second time point after the first time point The target point cloud and trajectory data obtained at a point in time are received, overlapping points and noise for each of the source point cloud and the target point cloud are removed, and the driving trajectory obtained by the source point cloud and the target point cloud 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 group for each section and a target point group for each section belonging to each of the plurality of sections, and the source points included in the source point group for each section and the Corresponding point pairs of target points included in the target point group for each section are determined, and the source point group for each section and the target point group 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 points.
일 실시예에서, 상기 다운샘플링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간이 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분되고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나가 제거될 수 있다.In an 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 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 may be removed so that one of 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, to perform the filtering, for a plurality of points of each of the source point cloud and the target point cloud, a predetermined number of neighboring points adjacent to each point are searched, and from each point to the neighboring points an average distance of distances is calculated, an average value and a standard deviation value of 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 an embodiment, to perform the filtering, for a plurality of points of each of the source point cloud and the target point cloud, neighboring points having a distance less than or equal to a predetermined distance from each point are searched for, and a minimum distance from the neighboring points A neighboring point plane having , is determined, a distance of each point is calculated from the neighboring point plane, and each point having the calculated distance equal to or greater than a reference distance may be removed.
일 실시예에서, 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 각각 분할하도록, 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들이 설정되고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들이 결정되며, 상기 복수의 수직 평면들 사이의 공간들이 상기 복수의 구간들로 결정되고, 상기 소스 점군이 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할되며, 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할될 수 있다.In an 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 a predetermined predetermined interval are set in is determined into a plurality of sections, the source point cloud is divided into the source point cloud for each section belonging to each of the plurality of sections, and the target point cloud is divided into the target point group for each section belonging to each of the plurality of sections have.
일 실시예에서, 상기 구간별 소스 점군에 포함된 상기 소스 점들과 상기 구간별 타겟 점군에 포함된 상기 타겟 점들의 대응점 쌍들을 결정하도록, 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점이 이웃점 쌍으로 결정되고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들이 상기 대응점 쌍들로 설정되며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거될 수 있다.In one embodiment, for each source point among the source points, the source point and the corresponding point pairs are determined 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; Among the target points, when a target point having a minimum distance from the source point is determined as a neighbor point pair, and one target point of the target points belongs to two or more neighbor point pairs among the neighbor point pairs, among the two or more neighbor point pairs The neighboring point pairs remaining by removing at least one may be set as the corresponding point pairs, and a corresponding point pair having a distance greater than or equal to a predetermined corresponding pair reference distance among the corresponding point pairs may be removed as an outlier corresponding point pair.
일 실시예에서, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하도록, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나가 회전 이동되고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나가 평행 이동될 수 있다.In an embodiment, at least one of the source point group for each section and the target point group for each section is rotationally moved to match the source point group for each section and the target point group for each section, and the source point group for each section and the target point group for each section At least one of them may be translated.
본 발명의 다른 목적을 달성하기 위하여, 본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치는, 제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 time point, and receives the source point cloud after the first time point. A point cloud preprocessing block for further receiving the target point cloud obtained at a second time point, and removing overlapping points and noise for each of the source point cloud and the target point group, receiving the locus data obtained at the second time point, and the trajectory Based on data, the driving trajectory obtained by the source point cloud and the target point cloud 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. Section division blocks to be divided respectively, 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 source for each section so that the sum of the distances of the corresponding point pairs is minimized and a point cloud matching block for each section for matching the point cloud with the target point cloud for each section.
일 실시예에서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(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 points.
일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거할 수 있다.In an embodiment, the point cloud preprocessing block divides, for each of the source point cloud and the target point cloud, a space in which each point cloud is located into a plurality of voxels having a size corresponding to an error range of the LIDAR device. and, when two or more points of each point group exist in one of the plurality of voxels, at least one of the two or more points may be removed so that one of 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 point for a plurality of points of each of the source point cloud and the target point cloud, and from each point to the adjacent points calculating an average distance of distances, calculating an average value and 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 Among the points, a point having the average distance greater than the reference distance may be removed.
일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며, 상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거할 수 있다.In an embodiment, the point cloud pre-processing block searches for neighboring points having a distance equal to or less than a predetermined distance from each point for a plurality of points of each of the source point cloud and the target point cloud, and a minimum distance from the neighboring points It is possible to determine a plane of adjacent points with , calculate the distance of each point from the plane of adjacent points, and remove each point having the calculated distance equal to or greater than a reference distance.
일 실시예에서, 상기 구간 분할 블록은, 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며, 상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고, 상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고, 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할할 수 있다.In one embodiment, the section division block sets a plurality of division points having a predetermined constant interval in the traveling trajectory from which the source point cloud and the target point cloud are obtained, 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 group is defined as the source point group for each section belonging to each of the plurality of sections. and dividing the target point group into the target point group for each section belonging to each of the plurality of sections.
일 실시예에서, 상기 구간별 점군 정합 블록은, 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거할 수 있다.In one embodiment, the point cloud matching block for each section 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 target point of the target points belongs to two or more pairs of neighbor points among the pairs of neighbor points, at least one of the two or more pairs of neighbor points is removed to set the remaining neighbor point pairs as the corresponding point pairs, and the corresponding point pairs A pair of corresponding points having a distance equal to or greater than a predetermined corresponding pair reference distance may be removed as an outlier corresponding point pair.
일 실시예에서, 상기 구간별 점군 정합 블록은, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시킬 수 있다.In an embodiment, the point cloud matching block for each section rotates at least one of the source point group for each section and the target point group for each section, and parallel moves at least one of the source point group for each section and the target point group for each section. 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 time point and the target obtained at a second time point after the first time point 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 the driving trajectory obtained by the source point cloud and the target point cloud based on the trajectory data is 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, respectively, and the source points included in the source point group for each section and the target point group for each section are included in the target point group for each section. Corresponding point pairs of the target points are determined, and the source point group 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 the point cloud registration is performed for each section, a position error of the matched point clouds is 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, a shaded section of a road may be restored, and a change in road facilities may be detected and updated.
다만, 본 발명의 효과는 상술한 효과에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the effects of the present invention are not limited to the above-described effects, and may be variously expanded without departing 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.
FIG. 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 a pair of neighboring points of a source point and a target point is determined.
7 is a diagram for describing an example of pairs of corresponding points between source points and target points.
FIG. 8 is a diagram for describing an example in which an outlier corresponding point pair is removed from among the corresponding point pairs.
9 is a view for explaining an example in which rotational movement and parallel movement are performed with respect to at least one of a source point group and a target point group.
10 is a block diagram illustrating a point cloud matching apparatus for matching a source point cloud and a target point cloud according to an embodiment of the present invention.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.With respect to the embodiments of the present invention disclosed in the text, specific structural or functional descriptions are only exemplified for the purpose of describing the embodiments of the present invention, and the embodiments of the present invention may be embodied in various forms and the text It should not be construed as being limited to the embodiments described in .
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can have various changes and can have various forms, specific embodiments are illustrated in the drawings and described in detail in the text. However, this is not intended to limit the present invention to the specific disclosed form, it 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, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The above terms may be used for the purpose of distinguishing one component from another component. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being “connected” or “connected” to another component, it is understood that it may be directly connected or connected to the other component, but other components may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that no other element is present in the middle. Other expressions describing the relationship between components, such as "between" and "immediately between" or "neighboring to" and "directly adjacent to", etc., should be interpreted similarly.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate that the described feature, number, step, operation, component, part, or a combination thereof exists, but one or more other features or numbers , it is to be understood that it does not preclude the possibility of the existence or addition of steps, operations, components, parts, or combinations thereof.
또한, 본문에 기재된 "~부" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, terms such as “~ unit” described in the text mean a unit for processing at least one function or operation, which may be implemented as hardware or software or a combination of hardware and software.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as meanings consistent with the context of the related art, and unless explicitly defined in the present application, they are not to be 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 the same 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 for each of the source point cloud and the target point cloud. , FIG. 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 cloud, and FIG. 4 is an example of noise filtering performed on each of the source point cloud and the 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, and FIG. 6 is a diagram for determining a pair of neighboring points between a source point and a target point It is a diagram for explaining an example, FIG. 7 is a diagram for explaining an example of pairs of corresponding points of source points and target points, and FIG. 8 is a diagram for explaining an example in which an outlier corresponding point pair is removed among the corresponding point pairs. , and FIG. 9 is a diagram for explaining an example in which rotational movement and parallel movement are performed with respect to at least one of a source point group and a target point group.
도 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 a point cloud matching method of matching a
소스 점군(110) 및 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거될 수 있다(S150). 일 실시예에서, 상기 중복점을 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 다운샘플링이 수행되고, 상기 노이즈를 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 필터링이 수행될 수 있다.Duplicate 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, a space in which each point cloud is located is divided into a plurality of voxels as shown in 210 of FIG. The overlapping
일 실시예에서, 도 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 an 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).For the source point group for each section and the target point group for each section, corresponding to each other belonging to each section, corresponding point pairs of 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 may be determined ( 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 corresponding point pair among the corresponding 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 the source points 813 , 814 , 815 and the target points 823 , 824 , 825 are Corresponding point pairs that are less than the corresponding pair reference distance are maintained as inlier corresponding point pairs, and the corresponding point pairs in which the distances between the source points 811 and 812 and the target points 821 and 822 are greater than or equal to the corresponding pair reference distance are outlier ( outlier) can be removed as a pair of corresponding points.
상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합될 수 있다(S180). 일 실시예에서, 상기 대응점 쌍들의 거리 합산이 최소가 되도록, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나에 대하여 회전 이동 및/또는 평행 이동이 수행될 수 있다.The source point group 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 (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 ,
이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 소스 점군(110) 및 타겟 점군(120)이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.As such, the point clouds matched for each section are merged, the
상술한 바와 같이, 본 발명의 실시예들에 따른 소스 점군(110)과 타겟 점군(120)을 정합하는 상기 점군 정합 방법에서, 소스 점군(110) 및 상기 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거되므로, 소스 점군(110) 및 상기 타겟 점군(120) 각각의 정확도가 향상될 수 있다. 또한, 본 발명의 실시예들에 따른 상기 점군 정합 방법에서, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 보다 정확한 고정밀 지도 데이터가 생성될 수 있다. 또한, 본 발명의 실시예들에 따른 상기 점군 정합 방법에서, 단일한 주행으로 획득된 점군이 아닌, 복수의 시점들에서의 (모바일 매핑 시스템이 탑재된 차량의) 복수의 주행들로 획득된 복수의 점군들(즉, 소스 점군(110) 및 타겟 점군(120))을 정합하여 상기 고정밀 지도 데이터가 생성되므로, 하나의 점군에 포함되지 않은 도로 음영 구간이 다른 점군에 의해 복원될 수 있고, 상기 복수의 시점들 사이에서의 도로 시설물(예를 들어, 차선, 횡단보도, 표지판 등)의 변화가 감지되며, 변화된 도로 시설물이 최신의 도로 시설물로 갱신될 수 있다.As described above, in the point cloud matching method of matching the
도 10은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치를 나타내는 블록도이다.10 is a block diagram illustrating a point cloud matching apparatus 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 point cloud matching block 1030 for each section may 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. For example, the point cloud matching block 1030 for each section determines, with respect to each source point among the source points, the source point and the target point having the minimum distance from the source point among the target points as a pair of neighboring points, When one target point of the target points belongs to two or more pairs of neighbor points among the pairs of neighbor points, at least one of the two or more pairs of neighbor points is removed to set the remaining neighbor point pairs as the corresponding point pairs, and the corresponding point pairs A pair of corresponding points having a distance equal to or greater than a predetermined corresponding pair reference distance may be removed as an outlier corresponding point pair.
또한, 구간별 점군 정합 블록(1030)은 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합할 수 있다. 예를 들어, 구간별 점군 정합 블록(1030)은 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시킴으로써, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합할 수 있다. 이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 상기 소스 점군 및 상기 타겟 점군이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.Also, the point cloud matching block 1030 for each section may match the source point group for each section and the target point group for each section such that the sum of the distances of the corresponding point pairs is minimized. For example, the point cloud matching block 1030 for each section rotates at least one of the source point group for each section and the target point group for each section, and parallel moves at least one of the source point group for each section and the target point group for each section. , the source point cloud for each section and the target point cloud for each section may be matched. In this way, the point clouds matched 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
이상, 본 발명의 실시예들에 따른 점군 정합 방법 및 점군 정합 장치에 대하여 도면을 참조하여 설명하였지만, 상기 설명은 예시적인 것으로서 본 발명의 기술적 사상을 벗어나지 않는 범위에서 해당 기술 분야에서 통상의 지식을 가진 자에 의하여 수정 및 변경될 수 있을 것이다.In the above, the point cloud matching method and the point cloud matching apparatus according to the embodiments of the present invention have been described with reference to the drawings, but the above description is exemplary and common knowledge in the technical field without departing from the technical spirit of the present invention. It may 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 within the scope 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: segmentation block
1030: Point cloud matching block by interval
1050: mobile mapping system
1060: lidar device
1070: trajectory collecting device
Claims (20)
제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터를 수신하는 단계;
상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 단계;
상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 단계;
상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하는 단계; 및
상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 단계를 포함하는 점군 정합 방법.In the point cloud matching method of matching a source point cloud and a target point cloud,
receiving the source point cloud obtained at a first time point and the target point cloud and trajectory data obtained at a second time point after the first time point;
removing overlapping points and noise for each of the source point cloud and the target point cloud;
Based on the trajectory data, the driving trajectory obtained by the source point cloud and the target point cloud is divided into a plurality of sections, and the source point cloud and the target point group are divided into the source point cloud and the target for each section belonging to each of the plurality of sections. dividing each into a point cloud;
determining pairs of corresponding points between source points included in the source point group for each section and target points included in the target point group for each section; and
and matching the source point cloud for each section and the target point cloud for each section such that the sum of the distances of the corresponding point pairs is minimized.
상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득되는 것을 특징으로 하는 점군 정합 방법.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 removing the overlapping points and the noise for each of the source point cloud and the target point cloud comprises:
and performing downsampling on each of the source point cloud and the target point cloud to remove the overlapping points.
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하는 단계; 및
상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 3, wherein the performing the downsampling comprises:
dividing a space in which 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; and
and when two or more points of each point group exist in one voxel of the plurality of voxels, removing at least one of the two or more points so that one of the two or more points remains. A point cloud matching method with
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 1, wherein removing the overlapping points and the noise for each of the source point cloud and the target point cloud 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 performing the filtering comprises:
searching for a predetermined number of neighboring points adjacent to each point for a plurality of points of each of the source point cloud and the target point cloud;
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 performing the filtering comprises:
searching for neighboring points having a distance equal to or less than a predetermined distance from each point with respect to a plurality of points of each of the source point cloud and the target point cloud;
determining a nearby point plane having a minimum distance from the nearby points;
calculating the distance of each point from the neighboring point plane; and
and removing each point where the calculated distance is equal to or greater than a reference distance.
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하는 단계;
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하는 단계;
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하는 단계;
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하는 단계; 및
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.According to claim 1, wherein the step of dividing the source point group and the target point group into the source point group for each section and the target point group for each section belonging to each of the plurality of sections, respectively,
setting a plurality of division points having predetermined constant intervals on the driving trajectory obtained by the source point cloud and the target point cloud;
determining a plurality of vertical planes perpendicular to a traveling direction of the traveling 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 the source point cloud 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.
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하는 단계;
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하는 단계; 및
상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.The method of claim 1, wherein the determining of 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 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;
when one target point of the target points belongs to two or more pairs of neighbor points among the pair of neighbor points, removing at least one of the two or more pairs of neighbor points to set the remaining pairs of neighbor points as the pair of corresponding points; and
and removing a corresponding point pair having a distance equal to or greater than a predetermined corresponding pair reference distance from among the corresponding point pairs as an outlier corresponding point pair.
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키는 단계; 및
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시키는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.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 at least one of the source point group for each section and the target point group for each section; and
and moving at least one of the source point group for each section and the target point group for each section in parallel.
제1 시점에 획득된 상기 소스 점군을 수신하고, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신하며, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 점군 전처리 블록;
상기 제2 시점에 획득된 궤적 데이터를 수신하고, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 구간 분할 블록; 및
상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하고, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 구간별 점군 정합 블록을 포함하는 점군 정합 장치.A point cloud matching device for matching a source point cloud and a target point cloud, comprising:
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;
Receive the trajectory data obtained at the second time point, divide the driving trajectory obtained by the source point cloud and the target point cloud into a plurality of sections based on the trajectory data to divide the source point cloud and the target point cloud into the plurality of sections a section division block for dividing each section into a source point cloud for each section and a target point cloud for each section belonging to each section; and
Corresponding point pairs of 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 are determined, and the source point group for each section and the target point group for each section are selected so that the sum of the distances of the corresponding point pairs is minimized. A point cloud matching device including a point cloud matching block for each section to be matched.
상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득되는 것을 특징으로 하는 점군 정합 장치.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 comprises:
The point cloud matching apparatus of claim 1, wherein downsampling is performed on each of the source point cloud and the target point cloud to remove the overlapping points.
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고,
상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거하는 것을 특징으로 하는 점군 정합 장치.The method of claim 13, wherein the point cloud preprocessing block comprises:
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 the lidar device,
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 is removed so that one of the two or more points remains. Device.
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein the point cloud preprocessing block comprises:
The point cloud matching apparatus, characterized in that filtering is performed 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 a plurality of points of each of the source point cloud and the target point cloud, search for a predetermined number of neighboring points adjacent to each point;
Calculate the average distance of the 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 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 a plurality of points of each of the source point cloud and the target point cloud, search for neighboring points having a distance equal to or less than a predetermined distance from each point;
determine a neighboring point plane having a minimum distance from the neighboring points,
calculating the distance of each point from the nearby point plane,
The point cloud matching device, characterized in that the calculated distance is greater than or equal to a reference distance is removed.
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고,
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며,
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고,
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고,
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 것을 특징으로 하는 점군 정합 장치.The method of claim 11, wherein the section division block comprises:
setting a plurality of division points having a predetermined constant interval in the driving trajectory obtained by the source point cloud and the target point cloud,
determining a plurality of vertical planes perpendicular to the traveling direction of the traveling 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 the source point cloud 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.
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고,
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 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, the source point and the target point having a minimum distance from the source point among the target points are determined as a pair of neighboring points,
If one target point of the target points belongs to two or more pairs of neighbor points among the pair of neighbor points, removing at least one of the two or more pairs of neighbor points to set the remaining pairs of neighbor points as the corresponding point pairs,
A point cloud matching apparatus, characterized in that, among the corresponding point pairs, a corresponding point pair having a distance equal to or greater than a predetermined corresponding 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 group for each section and the target point group for each section,
The point cloud matching device, characterized in that parallel movement of at least one of the source point group for each section and the target point group for each section.
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 true KR20220081776A (en) | 2022-06-16 |
KR102513683B1 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) |
Cited By (2)
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 |
KR102693469B1 (en) * | 2023-04-12 | 2024-08-09 | 주식회사 텔레칩스 | Method and apparatus for downsampling point cloud using variable filter |
Citations (8)
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 |
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 |
WO2017199141A1 (en) * | 2016-05-20 | 2017-11-23 | Nokia Usa Inc. | Point cloud matching method |
KR20190104304A (en) * | 2019-09-03 | 2019-09-09 | 주식회사 모빌테크 | Method for building map including point cloud using LiDAR |
KR20190114523A (en) * | 2018-03-30 | 2019-10-10 | 서울시립대학교 산학협력단 | Method, system and computer program for topographical change detection using LiDAR data |
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 |
-
2020
- 2020-12-09 KR KR1020200171644A patent/KR102513683B1/en active IP Right Grant
Patent Citations (8)
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 |
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 |
WO2017199141A1 (en) * | 2016-05-20 | 2017-11-23 | Nokia Usa Inc. | Point cloud matching method |
KR20190114523A (en) * | 2018-03-30 | 2019-10-10 | 서울시립대학교 산학협력단 | Method, system and computer program for topographical change detection using LiDAR data |
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 |
KR20190104304A (en) * | 2019-09-03 | 2019-09-09 | 주식회사 모빌테크 | Method for building map including point cloud using LiDAR |
Cited By (2)
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 |
KR102693469B1 (en) * | 2023-04-12 | 2024-08-09 | 주식회사 텔레칩스 | Method and apparatus for downsampling point cloud using variable filter |
Also Published As
Publication number | Publication date |
---|---|
KR102513683B1 (en) | 2023-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108765487B (en) | Method, device, equipment and computer readable storage medium for reconstructing three-dimensional scene | |
KR102338270B1 (en) | Method, apparatus, and computer readable storage medium for updating electronic map | |
EP3109842B1 (en) | Map-centric map matching method and apparatus | |
US10140527B2 (en) | Apparatus and method for recognizing driving lane of vehicle | |
US9978161B2 (en) | Supporting a creation of a representation of road geometry | |
US9384394B2 (en) | Method for generating accurate lane level maps | |
CN110412635A (en) | A kind of environment beacon support under GNSS/SINS/ vision tight integration method | |
KR102513683B1 (en) | Point cloud matching method and point cloud matching device | |
US20220398825A1 (en) | Method for generating 3d reference points in a map of a scene | |
Liebner et al. | Crowdsourced hd map patches based on road model inference and graph-based slam | |
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 | |
US20230351686A1 (en) | Method, device and system for cooperatively constructing point cloud map | |
CN112985404A (en) | Method, device, equipment and medium for generating crowdsourcing map of parking lot | |
CN113450455A (en) | Method, device and computer program product for generating a map of road links of a parking lot | |
KR20210086409A (en) | GPS error correction method by comparing 3D precision map in overlapping area | |
Meis et al. | A new method for robust far-distance road course estimation in advanced driver assistance systems | |
US11812342B2 (en) | Cellular-based navigation method | |
CN111664856A (en) | Vehicle initial positioning system and vehicle initial positioning method | |
WO2020118623A1 (en) | Method and system for generating an environment model for positioning | |
CN109074407A (en) | Multi-source data mapping method, related device and computer-readable storage medium | |
CN112037328A (en) | Method, device, equipment and storage medium for generating road edges in map | |
CN114440892B (en) | Self-positioning method based on topological map and odometer | |
JP7308772B2 (en) | DATA PROCESSING DEVICE, DATA PROCESSING METHOD AND DATA PROCESSING PROGRAM | |
Naumann et al. | Multi-drive road map generation on standardized high-velocity roads using low-cost sensor data |
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 |