KR20220081776A - Point cloud matching method and point cloud matching device - Google Patents

Point cloud matching method and point cloud matching device Download PDF

Info

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
Application number
KR1020200171644A
Other languages
Korean (ko)
Other versions
KR102513683B1 (en
Inventor
최원영
조윤수
Original Assignee
주식회사 맵퍼스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 맵퍼스 filed Critical 주식회사 맵퍼스
Priority to KR1020200171644A priority Critical patent/KR102513683B1/en
Publication of KR20220081776A publication Critical patent/KR20220081776A/en
Application granted granted Critical
Publication of KR102513683B1 publication Critical patent/KR102513683B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; 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/30Map- or contour-matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/3815Road data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3841Data obtained from two or more sources, e.g. probe vehicles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3833Creation or updating of map data characterised by the source of data
    • G01C21/3848Data obtained from both position sensors and additional sensors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G06T5/002
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range 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

점군 정합 방법 및 점군 정합 장치{POINT CLOUD MATCHING METHOD AND POINT CLOUD MATCHING DEVICE}Point cloud matching method and point cloud matching device

본 발명은 지도 데이터 구축 방법 및 장치에 관한 것으로서, 더욱 상세하게는 차량용 지도 데이터를 구축하기 위한 점군 정합 방법 및 점군 정합 장치에 관한 것이다.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 source point cloud 110 and a target point cloud 120 , a source point cloud 110 obtained at a first time point and a second time point obtained after the first time point The target point cloud 120 and trajectory data 130 may be received (S140). In one embodiment, each of the source point cloud 110 and the target point cloud 120 is obtained through a LiDaR device of a Mobile Mapping System (MMS), and the trajectory data 130 is the mobile mapping system. can be obtained through a trajectory collection device of For example, the lidar device may be a Velodyne LiDAR, a HDL-32 channel LiDAR, or the like, but is not limited thereto. Also, for example, the trajectory collecting device may be a Global Positioning System (GPS) and/or a Global Navigation Satellite System/Inertial Navigation System (GNSS/INS) device, but is not limited thereto. Meanwhile, the source point cloud 110 is a point cloud obtained when the vehicle equipped with the mobile mapping system drives along the driving trajectory at the first time point, and the target point cloud 120 and the trajectory data 130 are the mobile mapping system The on-board vehicle may be point cloud and trajectory data acquired at the second time point after the first time point (eg, several days, months, or years after the first time point).

소스 점군(110) 및 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거될 수 있다(S150). 일 실시예에서, 상기 중복점을 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 다운샘플링이 수행되고, 상기 노이즈를 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 필터링이 수행될 수 있다.Duplicate points and noise for each of the source point cloud 110 and the target point group 120 may be removed ( S150 ). In an embodiment, downsampling is performed on each of the source point cloud 110 and the target point cloud 120 to remove the overlapping points, and filtering is performed on each of the source point cloud 110 and the target point cloud 120 to remove the noise. can be performed.

예를 들어, 상기 다운샘플링을 수행하도록, 도 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 point 230 may be removed so that only one point remains. That is, the downsampling is performed for each of the source point cloud 110 and the target point cloud 120 , and the space in which each point cloud is located corresponds to the error range of the LIDAR device as shown in 210 of FIG. 2 . may be divided into the plurality of voxels having Also, as shown in 220 of FIG. 2 , when two or more points 230 of each point group exist in each voxel, the two or more points 230 are determined as the overlapping points, and the two or more points 230 are the overlapping points. At least one of the two or more points 230 may be removed so that one of the above points 230 remains. For example, only one point close to the center point of each voxel among the two or more points 230 may remain, and the remaining points may be removed. On the other hand, the lidar device has a certain error range, and two or more points 230 existing in each voxel having a size corresponding to the error range may be the erroneously obtained overlapping points, and downsampling using these voxels is performed. Through this, the overlapping point can be removed.

일 실시예에서, 도 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 source point cloud 110 and the target point group 120 . For example, as shown in FIG. 3 , the SPR filtering is performed on each of the source point cloud 110 and the target point cloud 120, and a plurality of points 310, 320, 330, 340, 350, For 360 and 370 , a predetermined number of adjacent points 320 , 330 , 340 , 350 , 360 , 370 adjacent to each point 310 (including but not limited to six in the example of FIG. 3 ) are is searched, and the average distance of the distances d0, d1, d2, d3, d4, d5 from each point 310 to the neighboring points 320, 330, 340, 350, 360, 370 can be calculated. . As such, the average distance is determined as the average distance of the points 310, and this average distance may be determined for all point clouds in each point group. Also, an average value and a standard deviation value for the average distances of all the point clouds may be calculated, and a reference distance may be determined based on the average value and the standard deviation value. In an embodiment, the reference distance may be determined as the sum of the average value and N times the standard deviation value (N is a real number equal to or greater than 0). For example, the reference distance may be determined as a sum of the average value and the standard deviation value. In this case, about 68% of the average distances may be equal to or less than the reference distance. In another example, the reference distance may be determined as a sum of two times the average value and the standard deviation value, and in this case, about 95% of the average distances may be equal to or less than the reference distance. Also, among all the point clouds of each point group, a point having the average distance greater than the reference distance may be removed. Accordingly, for each of the source point cloud 110 and the target point cloud 120 , points far from other points may be removed as erroneously acquired noise.

다른 실시예에서, 도 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 source point cloud 110 and the target point cloud 120 . For example, as shown in FIG. 4 , the noise filtering is performed on each of the source point cloud 110 and the target point cloud 120, and a plurality of points 410, 420, 430, 440, 450, For 460 , neighboring points 420 , 430 , 440 , 450 , 460 having a distance less than or equal to a predetermined distance (not limited to, but not limited to, about 20 cm in the example of FIG. 4 ) from each point 410 are A nearby point plane 470 having a minimum distance from the nearby points 420 , 430 , 440 , 450 and 460 may be determined by searching and performing plane fitting. Also, the distance of each point 410 from the neighboring point plane 470 may be calculated, and each point 410 for which the calculated distance is greater than or equal to a reference distance (predetermined according to embodiments) may be removed. Meanwhile, the neighboring point search, plane fitting, and removal of points greater than or equal to the reference distance may be performed for all point clouds of each point group. Accordingly, for each of the source point cloud 110 and the target point cloud 120 , a point far from the nearby point plane 470 may be removed as erroneously acquired noise.

소스 점군(110) 및 타겟 점군(120) 각각에 대하여, 실시예들에 따라, 도 3에 도시된 상기 SOR 필터링이 수행되거나, 도 4에 도시된 상기 노이즈 필터링이 수행되거나, 도 3에 도시된 상기 SOR 필터링 및 도 4에 도시된 상기 노이즈 필터링이 모두 수행될 수 있다.For each of the source point cloud 110 and the target point cloud 120 , the SOR filtering shown in FIG. 3 is performed, the noise filtering shown in FIG. 4 is performed, or the noise filtering shown in FIG. 3 is performed, according to embodiments. Both the SOR filtering and the noise filtering shown in FIG. 4 may be performed.

궤적 데이터(130)에 기초하여 소스 점군(110) 및 타겟 점군(120)이 획득된 주행 궤적을 복수의 구간들로 분할하여 소스 점군(110) 및 타겟 점군(120)이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할될 수 있다(S160).Based on the trajectory data 130 , the driving trajectory obtained by the source point cloud 110 and the target point cloud 120 is divided into a plurality of sections so that the source point cloud 110 and the target point cloud 120 are generated in each of the plurality of sections. It may be divided into a source point group for each section and a target point group for each section belonging to (S160).

예를 들어, 도 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 source point cloud 110 is obtained at the first time point and the target point cloud 120 obtained at the second time point after the first time point is obtained; That is, a plurality of dividing points 511, 512, 513, 514, 515 having a predetermined constant interval (about 100 m in the example of FIG. 5 , but not limited thereto) in the driving trajectory indicated by the target point cloud 120 , 516, 517, 518, 519) is set, and at a plurality of dividing points 511, 512, 513, 514, 515, 516, 517, 518, 519) a plurality of vertical planes perpendicular to the traveling direction of the driving trajectory (521, 522, 523, 514, 525, 526, 527, 528, 529) can be determined. Meanwhile, although each vertical plane is represented by a line in FIG. 5 for convenience of explanation, each vertical plane may be a plane. Spaces between the plurality of vertical planes 521 , 522 , 523 , 514 , 525 , 526 , 527 , 528 , 529 are determined as the plurality of sections, and the source point cloud 110 is located in each of the plurality of sections. It may be divided into the source point cloud for each section to which it belongs, and the target point group 120 may be divided into the target point group for each section belonging to each of the plurality of sections. In this way, the source point group 110 and the target point group 120 may be divided into the source point group for each section and the target point group for each section along the driving trajectory indicated by the target point group 120 .

각 구간에 속하는 서로 대응되는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군에 대하여, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정될 수 있다(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 source point 610 among the source points of the source point group for each section, a source point 610 and target points 621 and 622 of the target point group for each section , 623 , 624 , and 625 , a target point 621 having a minimum distance from the source point 610 may be determined as a pair of neighboring points. Meanwhile, since the neighbor point pair is determined for each source point 610 , a single target point 621 may be included in two or more neighbor point pairs. A neighbor point pair having a target point not included in other neighbor point pairs may be set as the corresponding point pair. On the other hand, when one target point of the target points belongs to two or more pairs of neighbor points among the pair of neighbor points, the pair of neighbor points left by removing at least one of the pairs of neighbor points may be set as the pairs of corresponding points. . Accordingly, as shown in FIG. 7 , the corresponding point pairs include non-overlapping source points 711 , 712 , 713 , 714 , 715 and non-overlapping target points 721 , 722 , 723 , 724 , 725 . can do.

일 실시예에서, 상기 대응점 쌍들 중 아웃라이어(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 , reference numeral 910 denotes a source point cloud for each section, and 930 denotes a target point group for each section. For example, as shown in FIG. 9 , as rotational movement is performed on the target point group 930 for each section, the rotationally moved target point group 950 for each section is derived, and then the rotationally moved target point group for each section ( Parallel movement is performed with respect to 950 , so that the target point group 930 for each section may come close to the source point group 910 for each section. Accordingly, the sum of the distances of the corresponding point pairs of the matched source point group 910 for each section and the target point group 930 for each section can be minimized. Meanwhile, in FIG. 9 , an example in which the target point group 930 for each section is rotated and moved in parallel to approximate the source point group 910 for each section is shown, but in another embodiment, the source point group for each section 910 is the target for each section It may be rotated and moved in parallel to approximate the point cloud 930 .

이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 소스 점군(110) 및 타겟 점군(120)이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.As such, the point clouds matched for each section are merged, the source point cloud 110 and the target point cloud 120 are matched with respect to the entire driving route, and high-precision map data can be generated.

상술한 바와 같이, 본 발명의 실시예들에 따른 소스 점군(110)과 타겟 점군(120)을 정합하는 상기 점군 정합 방법에서, 소스 점군(110) 및 상기 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거되므로, 소스 점군(110) 및 상기 타겟 점군(120) 각각의 정확도가 향상될 수 있다. 또한, 본 발명의 실시예들에 따른 상기 점군 정합 방법에서, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 보다 정확한 고정밀 지도 데이터가 생성될 수 있다. 또한, 본 발명의 실시예들에 따른 상기 점군 정합 방법에서, 단일한 주행으로 획득된 점군이 아닌, 복수의 시점들에서의 (모바일 매핑 시스템이 탑재된 차량의) 복수의 주행들로 획득된 복수의 점군들(즉, 소스 점군(110) 및 타겟 점군(120))을 정합하여 상기 고정밀 지도 데이터가 생성되므로, 하나의 점군에 포함되지 않은 도로 음영 구간이 다른 점군에 의해 복원될 수 있고, 상기 복수의 시점들 사이에서의 도로 시설물(예를 들어, 차선, 횡단보도, 표지판 등)의 변화가 감지되며, 변화된 도로 시설물이 최신의 도로 시설물로 갱신될 수 있다.As described above, in the point cloud matching method of matching the source point cloud 110 and the target point cloud 120 according to embodiments of the present invention, overlapping points for each of the source point cloud 110 and the target point cloud 120 and noise are removed, so that the accuracy of each of the source point cloud 110 and the target point group 120 may be improved. In addition, in the point cloud matching method according to the embodiments of the present invention, since the point cloud matching is performed for each section, a position error of the matched point clouds can be reduced, and more accurate high-precision map data can be generated. In addition, in the point cloud matching method according to embodiments of the present invention, a plurality of runs (of a vehicle equipped with a mobile mapping system) at a plurality of time points, not a point cloud obtained by a single run Since the high-precision map data is generated by matching the point clouds (that is, the source point cloud 110 and the target point cloud 120) of A change in road facilities (eg, lanes, crosswalks, signs, etc.) between a plurality of time points is detected, and the changed road facilities may be updated with the latest road facilities.

도 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 cloud matching apparatus 1000 for matching a source point cloud and a target point cloud according to an embodiment of the present invention includes a point cloud preprocessing block 1010 , a section division block 1020 , and a point cloud matching block 1030 for each section. may include

점군 전처리 블록(1010)은 모바일 매핑 시스템(1050)의 라이다 장치(1060)를 통하여 제1 시점에 획득된 상기 소스 점군을 수신하고, 모바일 매핑 시스템(1050)의 라이다 장치(1060)를 통하여 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신할 수 있다. 예를 들어, 라이다 장치(1060)는 벨로다인 라이다(Velodyne LiDAR), 에이치디엘-32 채널 라이다(HDL-32 channel LiDAR) 등일 수 있으나, 이에 한정되지 않는다.The point cloud preprocessing block 1010 receives the source point cloud obtained at a first time through the lidar device 1060 of the mobile mapping system 1050 and through the lidar device 1060 of the mobile mapping system 1050 . The target point cloud obtained at a second time point after the first time point may be further received. For example, the lidar device 1060 may be a Velodyne LiDAR, a HDL-32 channel LiDAR, or the like, but is not limited thereto.

점군 전처리 블록(1010)은 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거할 수 있다. 일 실시예에서, 점군 전처리 블록(1010)은, 상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행할 수 있다. 예를 들어, 점군 전처리 블록(1010)은, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치(1060)의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거할 수 있다. 또한, 일 실시예에서, 점군 전처리 블록(1010)은, 상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행할 수 있다. 일 예에서, 점군 전처리 블록(1010)은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고, 상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며, 상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며, 상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거할 수 있다. 이러한 필터링은 SOR(Statistical Outlier Removal) 필터링으로 불릴 수 있다. 다른 예에서, 점군 전처리 블록(1010)은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며, 상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거할 수 있다. 이러한 필터링은 노이즈 필터링으로 불릴 수 있다. 실시예들에 따라, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 상기 SOR 필터링이 수행되거나, 상기 노이즈 필터링이 수행되거나, 상기 SOR 필터링 및 상기 노이즈 필터링이 모두 수행될 수 있다.The point cloud preprocessing block 1010 may remove overlapping points and noise for each of the source point cloud and the target point cloud. In an embodiment, the point cloud preprocessing block 1010 may perform downsampling on each of the source point cloud and the target point cloud to remove the overlapping points. For example, in the point cloud preprocessing block 1010 , for each of the source point cloud and the target point cloud, a space in which each point cloud is located is configured by a plurality of voxels having a size corresponding to an error range of the lidar device 1060 . ), and 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 of the two or more points remains. can Also, in an embodiment, the point cloud preprocessing block 1010 may perform filtering on each of the source point cloud and the target point cloud to remove the noise. In one example, the point cloud preprocessing block 1010 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 neighboring points calculate an average distance of distances of , calculate an average value and 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 Among the points of , a point having the average distance greater than the reference distance may be removed. Such filtering may be referred to as Statistical Outlier Removal (SOR) filtering. In another example, the point cloud preprocessing block 1010 searches for neighboring points having a distance less than or equal to 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 A neighboring point plane having a distance may be determined, a distance of each point may be calculated from the neighboring point plane, and each point having the calculated distance equal to or greater than a reference distance may be removed. Such filtering may be referred to as noise filtering. In some embodiments, the SOR filtering may be performed, the noise filtering may be performed, or both the SOR filtering and the noise filtering may be performed on each of the source point cloud and the target point cloud.

구간 분할 블록(1020)은 모바일 매핑 시스템(1050)의 궤적 수집 장치(1070)를 통하여 상기 제2 시점에 획득된 궤적 데이터를 수신할 수 있다. 예를 들어, 궤적 수집 장치(1070)는 GPS(Global Positioning System), 및/또는 GNSS/INS(Global Navigation Satellite System/ Inertial Navigation System) 장치 등일 수 있으나, 이에 한정되지 않는다.The section division block 1020 may receive the trajectory data acquired at the second time point through the trajectory collecting device 1070 of the mobile mapping system 1050 . For example, the trajectory collecting device 1070 may be a Global Positioning System (GPS) and/or a Global Navigation Satellite System/Inertial Navigation System (GNSS/INS) device, but is not limited thereto.

구간 분할 블록(1020)은 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할할 수 있다. 예를 들어, 구간 분할 블록(1020)은 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며, 상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고, 상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고, 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할할 수 있다.The section division block 1020 divides the driving trajectory obtained by the source point cloud and the target point cloud into a plurality of sections based on the trajectory data, and divides the source point group and the target point group into a section belonging to each of the sections. It can be divided into a source point cloud for each and a target point cloud for each section, respectively. For example, the section division block 1020 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, and sets the driving trajectory at the plurality of division points. 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.

구간별 점군 정합 블록(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 cloud matching apparatus 1000 for matching the source point cloud and the target point cloud according to the embodiments of the present invention, overlapping points and noise for each of the source point cloud and the target point cloud are removed, so that the Accuracy of each of the source point cloud and the target point cloud may be improved. In addition, in the point cloud matching apparatus 1000 according to embodiments of the present invention, since point cloud matching is performed for each section, a position error of the matched point clouds is reduced, and more accurate high-precision map data can be generated. In addition, in the point cloud matching apparatus 1000 according to embodiments of the present invention, a plurality of runs (of a vehicle equipped with the mobile mapping system 1050 ) at a plurality of viewpoints, not a point cloud obtained through a single run Since the high-precision map data is generated by matching a plurality of point clouds (that is, the source point cloud and the target point cloud) obtained with A change in road facilities (eg, lanes, crosswalks, signs, etc.) between the plurality of time points is sensed, and the changed road facilities may be updated with the latest road facilities.

이상, 본 발명의 실시예들에 따른 점군 정합 방법 및 점군 정합 장치에 대하여 도면을 참조하여 설명하였지만, 상기 설명은 예시적인 것으로서 본 발명의 기술적 사상을 벗어나지 않는 범위에서 해당 기술 분야에서 통상의 지식을 가진 자에 의하여 수정 및 변경될 수 있을 것이다.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.
제1 항에 있어서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고,
상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득되는 것을 특징으로 하는 점군 정합 방법.
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.
제1 항에 있어서, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 상기 중복점 및 상기 노이즈를 제거하는 단계는,
상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
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.
제3 항에 있어서, 상기 다운샘플링을 수행하는 단계는,
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(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
제1 항에 있어서, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 상기 중복점 및 상기 노이즈를 제거하는 단계는,
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
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.
제5 항에 있어서, 상기 필터링을 수행하는 단계는,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하는 단계;
상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하는 단계;
상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하는 단계;
상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하는 단계; 및
상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
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.
제5 항에 있어서, 상기 필터링을 수행하는 단계는,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하는 단계;
상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하는 단계;
상기 인근점 평면으로부터 상기 각 점의 거리를 계산하는 단계; 및
상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
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.
제1 항에 있어서, 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 각각 분할하는 단계는,
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하는 단계;
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하는 단계;
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하는 단계;
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하는 단계; 및
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
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.
제1 항에 있어서, 상기 구간별 소스 점군에 포함된 상기 소스 점들과 상기 구간별 타겟 점군에 포함된 상기 타겟 점들의 대응점 쌍들을 결정하는 단계는,
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하는 단계;
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 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.
제1 항에 있어서, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 단계는,
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키는 단계; 및
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시키는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
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.
제11 항에 있어서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고,
상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득되는 것을 특징으로 하는 점군 정합 장치.
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.
제11 항에 있어서, 상기 점군 전처리 블록은,
상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행하는 것을 특징으로 하는 점군 정합 장치.
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.
제13 항에 있어서, 상기 점군 전처리 블록은,
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(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.
제11 항에 있어서, 상기 점군 전처리 블록은,
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 것을 특징으로 하는 점군 정합 장치.
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.
제15 항에 있어서, 상기 점군 전처리 블록은,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고,
상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며,
상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고,
상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며,
상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거하는 것을 특징으로 하는 점군 정합 장치.
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.
제15 항에 있어서, 상기 점군 전처리 블록은,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고,
상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며,
상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고,
상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거하는 것을 특징으로 하는 점군 정합 장치.
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.
제11 항에 있어서, 상기 구간 분할 블록은,
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고,
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며,
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고,
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고,
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 것을 특징으로 하는 점군 정합 장치.
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.
제11 항에 있어서, 상기 구간별 점군 정합 블록은,
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고,
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 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.
제11 항에 있어서, 상기 구간별 점군 정합 블록은,
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고,
상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시키는 것을 특징으로 하는 점군 정합 장치.
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.
KR1020200171644A 2020-12-09 2020-12-09 Point cloud matching method and point cloud matching device KR102513683B1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (8)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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