KR102513683B1 - 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
KR102513683B1
KR102513683B1 KR1020200171644A KR20200171644A KR102513683B1 KR 102513683 B1 KR102513683 B1 KR 102513683B1 KR 1020200171644 A KR1020200171644 A KR 1020200171644A KR 20200171644 A KR20200171644 A KR 20200171644A KR 102513683 B1 KR102513683 B1 KR 102513683B1
Authority
KR
South Korea
Prior art keywords
point cloud
point
source
points
target
Prior art date
Application number
KR1020200171644A
Other languages
Korean (ko)
Other versions
KR20220081776A (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 the point cloud matching method and apparatus for matching a source point cloud and a target point cloud according to embodiments of the present invention, a source point cloud obtained at a first point in time, a target point cloud and locus data obtained at a second point after the first point in time is received, duplicate points and noise for each of the source point cloud and the target point cloud are removed, and the driving trajectory from which the source point cloud and the target point cloud are obtained based on the locus data is divided into a plurality of sections to obtain a plurality of source point clouds and target point clouds. is divided into a source point group for each section and a target point group for each section belonging to each section of , and corresponding point pairs of source points included in the source point group for each section and target points included in the target point group for each section are determined, and the distance between the corresponding point pairs is determined. The source point cloud for each section and the target point cloud for each section are matched so that the summation is minimized. Accordingly, the source point cloud and the target point cloud are accurately matched, and more accurate high-precision map data can be generated.

Description

점군 정합 방법 및 점군 정합 장치{POINT CLOUD MATCHING METHOD AND POINT CLOUD MATCHING DEVICE}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 apparatus for constructing vehicle map data.

최근, 차량 등에서 경로 안내, 자동 주행 등의 서비스를 제공하기 위하여, 보다 정밀한 고정밀 지도 데이터가 요구되고 있다. 한편, 항공 사진을 이용한 지도 데이터 구축 방법은 센티미터(cm) 수준의 정밀도가 요구되는 고정밀 지도 데이터의 구축에 적합하지 않고, LIDAR(Light Detection And Ranging) 등이 고정밀 지도 데이터의 구축에 이용된다. 예를 들어, LIDAR 등을 이용하여 점군(Point Cloud)을 수 차례 수집하고, 수 차례 수집된 점군들을 정합함으로써 고정밀 지도 데이터가 구축될 수 있다.Recently, in order to provide services such as route guidance and automatic driving in vehicles, etc., more precise and high-precision map data is required. On the other hand, the method of building map data using aerial photographs is not suitable for building high-precision map data that requires centimeter (cm) level precision, and LIDAR (Light Detection And Ranging) is used to build high-precision map data. For example, high-precision map data can be constructed by collecting point clouds several times using LIDAR or the like and matching the point clouds collected several times.

다만, 점군들을 정합함에 있어서, 종래의 정합 방법은 주행 궤적의 전체에 대하여 점군들을 정합하므로, 주행 궤적의 시작 위치에서 멀어질수록 정합된 점군들의 위치 오차가 커지는 문제가 있다.However, in matching the point clouds, since the conventional matching method matches the point clouds for the entire driving trajectory, there is a problem in that the position error of the matched point clouds increases as the distance from the starting position of the driving trajectory increases.

본 발명의 일 목적은 보다 정확하게 소스 점군과 타겟 점군을 정합할 수 있는 점군 정합 방법을 제공하는 것이다.One object of the present invention is to provide a point cloud matching method capable of more accurately matching a source point cloud and a target point cloud.

본 발명의 다른 목적은 보다 정확하게 소스 점군과 타겟 점군을 정합할 수 있는 점군 정합 장치를 제공하는 것이다.Another object of the present invention is to provide a point cloud matching device capable of more accurately matching a source point cloud and a target point cloud.

다만, 본 발명의 목적은 상술한 목적들로 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the object of the present invention is not limited to the above-mentioned objects, and may be expanded in various ways without departing from the spirit and scope of the present invention.

본 발명의 일 목적을 달성하기 위하여, 본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법에서, 제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터가 수신되고, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되며, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할되고, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정되며, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합된다.In order to achieve one object of the present invention, in a point cloud matching method for matching a source point cloud and a target point cloud according to embodiments of the present invention, the source point cloud obtained at a first point in time and a second point cloud obtained after the first point in time The target point cloud and trajectory data acquired at a viewpoint are received, overlapping points and noise for each of the source point cloud and the target point cloud are removed, and a driving trajectory from which the source point cloud and the target point cloud are obtained based on the trajectory data is divided into a plurality of sections so that the source point cloud and the target point cloud are divided into a source point cloud for each section and a target point cloud for each section belonging to each of the plurality of sections, and the source points included in the source point cloud for each section and the Corresponding point pairs of target points included in the target point cloud for each section are determined, and the source point cloud for each section and the target point cloud for each section are matched so that the sum of the distances of the corresponding point pairs is minimized.

일 실시예에서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고, 상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득될 수 있다.In one embodiment, each of the source point cloud and the target point cloud is obtained through a LiDaR device of a Mobile Mapping System (MMS), and the trajectory data is obtained through a trajectory collection device of the mobile mapping system can be obtained

일 실시예에서, 상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링이 수행될 수 있다.In an embodiment, downsampling may be performed on each of the source point cloud and the target point cloud to remove the overlapping point.

일 실시예에서, 상기 다운샘플링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간이 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분되고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나가 제거될 수 있다.In one embodiment, to perform the downsampling, for each of the source point cloud and the target point cloud, a space in which each point cloud is located is divided into a plurality of voxels having a size corresponding to an error range of a LIDAR device. When two or more points of each point group exist in one voxel among the plurality of voxels, at least one of the two or more points may be removed so that one point among the two or more points remains.

일 실시예에서, 상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링이 수행될 수 있다.In an embodiment, filtering may be performed on each of the source point cloud and the target point cloud to remove the noise.

일 실시예에서, 상기 필터링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들이 탐색되고, 상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리가 계산되며, 상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값이 계산되고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리가 결정되며, 상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점이 제거될 수 있다.In one embodiment, for a plurality of points of each of the source point group and the target point group, a predetermined number of neighboring points adjacent to each point are searched for to perform the filtering, and a distance from each point to the neighboring points is searched. An average distance of the distances is calculated, an average value and a standard deviation value for the average distances for the plurality of points are calculated, a reference distance is determined based on the average value and the standard deviation value, and the plurality of Among the points, a point having the average distance greater than the reference distance may be removed.

일 실시예에서, 상기 필터링을 수행하도록, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들이 탐색되고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면이 결정되며, 상기 인근점 평면으로부터 상기 각 점의 거리가 계산되고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점이 제거될 수 있다.In one embodiment, for a plurality of points of each of the source point group and the target point group, neighboring points having a distance less than or equal to a predetermined distance from each point are searched for to perform the filtering, and a minimum distance from the neighboring points is searched. A nearby point plane having is determined, a distance of each point from the nearby point plane is calculated, and each point having a calculated distance equal to or greater than a reference distance may be removed.

일 실시예에서, 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 각각 분할하도록, 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들이 설정되고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들이 결정되며, 상기 복수의 수직 평면들 사이의 공간들이 상기 복수의 구간들로 결정되고, 상기 소스 점군이 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할되며, 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할될 수 있다.In one embodiment, the driving trajectory from which the source point cloud and the target point cloud are obtained to divide the source point cloud and the target point cloud into the source point cloud for each section and the target point cloud for each section belonging to each of the plurality of sections, respectively A plurality of dividing points having predetermined intervals are set in, a plurality of vertical planes perpendicular to the traveling direction of the driving trajectory are determined at the plurality of dividing points, and the spaces between the plurality of vertical planes are It may be determined as a plurality of sections, the source point cloud may be divided into source point clouds for each section belonging to each of the plurality of sections, and the target point cloud may be divided into target point clouds for each section belonging to each of the plurality of sections. there is.

일 실시예에서, 상기 구간별 소스 점군에 포함된 상기 소스 점들과 상기 구간별 타겟 점군에 포함된 상기 타겟 점들의 대응점 쌍들을 결정하도록, 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점이 이웃점 쌍으로 결정되고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들이 상기 대응점 쌍들로 설정되며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거될 수 있다.In one embodiment, for each source point among the source points, to determine pairs of corresponding points between the source points included in the source point group for each section and the target points included in the target point group for each section, the source point; Among the target points, if a target point having the minimum distance from the source point is determined as a neighbor point pair, and one of the target points belongs to two or more of the neighbor point pairs, among the two or more neighbor point pairs The neighboring point pairs left by removing at least one of them are set as the corresponding point pairs, and among the corresponding point pairs, a corresponding point pair having a distance greater than or equal to a predetermined correspondence pair reference distance may be removed as an outlier corresponding point pair.

일 실시예에서, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하도록, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나가 회전 이동되고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나가 평행 이동될 수 있다.In an embodiment, at least one of the source point cloud for each section and the target point cloud for each section is rotated and moved to match the source point cloud for each section and the target point cloud for each section, and the source point cloud for each section and the target point cloud for each section At least one of them may be moved in parallel.

본 발명의 다른 목적을 달성하기 위하여, 본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치는, 제1 시점에 획득된 상기 소스 점군을 수신하고, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신하며, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 점군 전처리 블록, 상기 제2 시점에 획득된 궤적 데이터를 수신하고, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 구간 분할 블록, 및 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하고, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 구간별 점군 정합 블록을 포함한다.In order to achieve another object of the present invention, a point cloud matching apparatus for matching a source point cloud and a target point cloud according to embodiments of the present invention receives the source point cloud obtained at a first point in time, and A point cloud preprocessing block for further receiving the target point cloud obtained at a second point in time and removing duplicate points and noise for each of the source point cloud and the target point cloud; receiving locus data obtained at the second point in time; Based on the data, the driving trajectory from which the source point cloud and the target point cloud are obtained is divided into a plurality of sections, and the source point cloud and the target point cloud are divided into a source point cloud for each section and a target point cloud for each section belonging to each of the plurality of sections. A section division block to be divided, and corresponding point pairs of source points included in the source point cloud for each section and target points included in the target point cloud for each section are determined, and the source points for each section are determined such that the sum of the distances of the corresponding point pairs is minimized. A point cloud matching block for each section matching the point cloud with the target point cloud for each section is included.

일 실시예에서, 상기 소스 점군 및 상기 타겟 점군 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고, 상기 궤적 데이터는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득될 수 있다.In one embodiment, each of the source point cloud and the target point cloud is obtained through a LiDaR device of a Mobile Mapping System (MMS), and the trajectory data is obtained through a trajectory collection device of the mobile mapping system can be obtained

일 실시예에서, 상기 점군 전처리 블록은, 상기 중복점을 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 다운샘플링을 수행할 수 있다.In an embodiment, the point cloud preprocessing block may perform downsampling on each of the source point cloud and the target point cloud to remove the overlapping point.

일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고, 상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거할 수 있다.In an embodiment, the point cloud preprocessing block divides a space where each point cloud is located into a plurality of voxels having a size corresponding to an error range of a LIDAR device, for each of the source point cloud and the target point cloud. In addition, when two or more points of each point group exist in one voxel of the plurality of voxels, at least one of the two or more points may be removed so that one point among the two or more points remains.

일 실시예에서, 상기 점군 전처리 블록은, 상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행할 수 있다.In an embodiment, the point cloud preprocessing block may perform filtering on each of the source point cloud and the target point cloud to remove the noise.

일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고, 상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며, 상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고, 상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며, 상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거할 수 있다.In an embodiment, the point cloud preprocessing block searches for a predetermined number of neighboring points adjacent to each of a plurality of points of the source point group and the target point group, and from each point to the neighboring points. Calculate an average distance of the distances, calculate an average value and a standard deviation value for the average distances for the plurality of points, determine a reference distance based on the average value and the standard deviation value, and determine the plurality of points. Among the points, points having the average distance greater than the reference distance may be removed.

일 실시예에서, 상기 점군 전처리 블록은, 상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고, 상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며, 상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고, 상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거할 수 있다.In an embodiment, the point cloud preprocessing block searches for neighboring points having a distance less than or equal to a predetermined distance from each of the plurality of points of the source point group and the target point group, and a minimum distance from the neighboring points. Determines a nearby point plane having , calculates the distance of each point from the nearby point plane, and removes each point whose calculated distance is equal to or greater than the reference distance.

일 실시예에서, 상기 구간 분할 블록은, 상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고, 상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며, 상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고, 상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고, 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할할 수 있다.In one embodiment, the section division block sets a plurality of division points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained, and at the plurality of division points, the driving trajectory A plurality of vertical planes perpendicular to the traveling direction are determined, spaces between the plurality of vertical planes are determined as the plurality of sections, and the source point cloud is a source point cloud for each section belonging to each of the plurality of sections. segmentation, and the target point cloud may be divided into target point clouds for each section belonging to each of the plurality of sections.

일 실시예에서, 상기 구간별 점군 정합 블록은, 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거할 수 있다.In one embodiment, the section-by-section point cloud matching block determines, for each source point among the source points, the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points; When one of the target points belongs to two or more of the neighboring point pairs, at least one of the two or more neighboring point pairs is removed, and the remaining neighbor point pairs are set as the corresponding point pairs, and the corresponding point pairs Correspondence point pairs having a distance equal to or greater than a predetermined correspondence pair reference distance may be removed as outlier correspondence point pairs.

일 실시예에서, 상기 구간별 점군 정합 블록은, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시킬 수 있다.In an embodiment, the point cloud matching block for each section rotates at least one of the source point cloud for each section and the target point cloud for each section, and moves at least one of the source point cloud for each section and the target point cloud for each section in parallel. can

본 발명의 실시예들에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법 및 점군 정합 장치에서, 제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터가 수신되고, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되며, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할되고, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정되며, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합될 수 있다. 이에 따라, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 고정밀 지도 데이터가 생성될 수 있다. 또한, 복수의 점군들을 정합하여 고정밀 지도 데이터가 생성되므로, 도로 음영 구간이 복원되고, 도로 시설물의 변화가 감지 및 갱신될 수 있다.In the point cloud matching method and point cloud matching apparatus for matching a source point cloud and a target point cloud according to embodiments of the present invention, the source point cloud obtained at a first point in time and the target point obtained at a second point in time after the first point in time Point cloud and trajectory data are received, overlapping points and noise for each of the source point cloud and the target point cloud are removed, and driving trajectories from which the source point cloud and the target point cloud are obtained based on the trajectory data are divided into a plurality of sections By dividing, the source point cloud and the target point cloud are divided into a source point cloud for each section and a target point cloud for each section belonging to each of the plurality of sections, and the source points included in the source point cloud for each section and the target point cloud for each section are included. Corresponding point pairs of the corresponding target points are determined, and the source point cloud for each section and the target point group for each section may be matched so that the sum of the distances of the corresponding point pairs is minimized. Accordingly, since point cloud matching is performed section by section, position errors of matched point clouds are reduced, and high-precision map data can be generated. In addition, since high-precision map data is generated by matching a plurality of point clouds, road shaded sections can be restored and changes in road facilities can be detected and updated.

다만, 본 발명의 효과는 상술한 효과에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the effects of the present invention are not limited to the above-described effects, and may be variously extended within a range that does not deviate from the spirit and scope of the present invention.

도 1은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법을 나타내는 순서도이다.
도 2는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 다운샘플링의 일 예를 설명하기 위한 도면이다.
도 3은 소스 점군 및 타겟 점군 각각에 대하여 수행되는 SOR(Statistical Outlier Removal) 필터링의 일 예를 설명하기 위한 도면이다.
도 4는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 노이즈 필터링의 일 예를 설명하기 위한 도면이다.
도 5는 소스 점군 및 타겟 점군이 구간별 소스 점군 및 구간별 타겟 점군으로 분할되는 일 예를 설명하기 위한 도면이다.
도 6은 소스 점과 타겟 점의 이웃점 쌍이 결정되는 일 예를 설명하기 위한 도면이다.
도 7은 소스 점들과 타겟 점들의 대응점 쌍들의 일 예를 설명하기 위한 도면이다.
도 8은 대응점 쌍들 중 아웃라이어(outlier) 대응점 쌍이 제거되는 일 예를 설명하기 위한 도면이다.
도 9는 소스 점군 및 타겟 점군 중 적어도 하나에 대하여 회전 이동 및 평행 이동이 수행되는 일 예를 설명하기 위한 도면이다.
도 10은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치를 나타내는 블록도이다.
1 is a flowchart illustrating a point cloud matching method for matching a source point cloud and a target point cloud according to an embodiment of the present invention.
2 is a diagram for explaining an example of downsampling performed on each of a source point cloud and a target point cloud.
3 is a diagram for explaining an example of Statistical Outlier Removal (SOR) filtering performed on each of a source point cloud and a target point cloud.
4 is a diagram for explaining an example of noise filtering performed on each of a source point cloud and a target point cloud.
5 is a diagram for explaining an example in which a source point cloud and a target point cloud are divided into a source point cloud for each section and a target point cloud for each section.
6 is a diagram for explaining an example in which pairs of neighboring points of a source point and a target point are determined.
7 is a diagram for explaining an example of corresponding point pairs of source points and target points.
8 is a diagram for explaining an example in which an outlier corresponding point pair among corresponding point pairs is removed.
9 is a diagram for explaining an example in which rotational movement and parallel movement are performed on at least one of a source point cloud and a target point cloud.
10 is a block diagram illustrating a point cloud matching device for matching a source point cloud and a target point cloud according to an embodiment of the present invention.

본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.For the embodiments of the present invention disclosed in the text, specific structural or functional descriptions are only exemplified for the purpose of explaining the embodiments of the present invention, and the embodiments of the present invention may be implemented in various forms and the text It should not be construed as being limited to the embodiments described above.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can have various changes and various forms, specific embodiments will be illustrated in the drawings and described in detail in the text. However, this is not intended to limit the present invention to a specific form disclosed, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제 2 구성 요소도 제1 구성 요소로 명명될 수 있다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms may be used for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first element may be termed a second element, and similarly, the second element may also be termed a first element.

어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when a component is referred to as “directly connected” or “directly connected” to another component, it should be understood that no other component exists in the middle. Other expressions describing the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to", etc., should be interpreted similarly.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, terms such as "comprise" or "having" are intended to indicate that the described feature, number, step, operation, component, part, or combination thereof exists, but that one or more other features or numbers are present. However, it should be understood that it does not preclude the presence or addition of steps, operations, components, parts, or combinations thereof.

또한, 본문에 기재된 "~부" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, terms such as “~ unit” described in the text refer to a unit that processes at least one function or operation, which may be implemented by hardware or software or a combination of hardware and software.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in this application, they are not interpreted in an ideal or excessively formal meaning. .

이하, 첨부한 도면들을 참조하여, 본 발명의 실시예들을 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성 요소에 대해서는 동일하거나 유사한 참조 부호를 사용한다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the accompanying drawings. The same or similar reference numerals are used for like elements in the drawings.

도 1은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 방법을 나타내는 순서도이고, 도 2는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 다운샘플링의 일 예를 설명하기 위한 도면이며, 도 3은 소스 점군 및 타겟 점군 각각에 대하여 수행되는 SOR(Statistical Outlier Removal) 필터링의 일 예를 설명하기 위한 도면이고, 도 4는 소스 점군 및 타겟 점군 각각에 대하여 수행되는 노이즈 필터링의 일 예를 설명하기 위한 도면이며, 도 5는 소스 점군 및 타겟 점군이 구간별 소스 점군 및 구간별 타겟 점군으로 분할되는 일 예를 설명하기 위한 도면이고, 도 6은 소스 점과 타겟 점의 이웃점 쌍이 결정되는 일 예를 설명하기 위한 도면이며, 도 7은 소스 점들과 타겟 점들의 대응점 쌍들의 일 예를 설명하기 위한 도면이고, 도 8은 대응점 쌍들 중 아웃라이어(outlier) 대응점 쌍이 제거되는 일 예를 설명하기 위한 도면이며, 도 9는 소스 점군 및 타겟 점군 중 적어도 하나에 대하여 회전 이동 및 평행 이동이 수행되는 일 예를 설명하기 위한 도면이다.1 is a flowchart illustrating a point cloud matching method for matching a source point cloud and a target point cloud according to an embodiment of the present invention, and FIG. 2 is a diagram for explaining an example of downsampling performed on each of the source point cloud and the target point cloud. 3 is a diagram for explaining an example of SOR (Statistical Outlier Removal) filtering performed on each of the source point cloud and the target point group, and FIG. 4 illustrates an example of noise filtering performed on each of the source point group and the target point group. 5 is a diagram for explaining an example in which a source point cloud and a target point cloud are divided into a source point cloud for each section and a target point cloud for each section, and FIG. 7 is a diagram for explaining an example of correspondence point pairs of source points and target points, and FIG. 8 is a diagram for explaining an example in which an outlier correspondence point pair among correspondence point pairs is removed. FIG. 9 is a diagram for explaining an example in which rotational movement and parallel movement are performed on at least one of a source point cloud and a target point cloud.

도 1을 참조하면, 소스 점군(110)과 타겟 점군(120)을 정합하는 점군 정합 방법에서, 제1 시점에 획득된 소스 점군(110)과, 상기 제1 시점 이후의 제2 시점에 획득된 타겟 점군(120) 및 궤적 데이터(130)가 수신될 수 있다(S140). 일 실시예에서, 소스 점군(110) 및 타겟 점군(120) 각각은 모바일 매핑 시스템(Mobile Mapping System; MMS)의 라이다(LiDaR) 장치를 통하여 획득되고, 궤적 데이터(130)는 상기 모바일 매핑 시스템의 궤적 수집 장치를 통하여 획득될 수 있다. 예를 들어, 상기 라이다 장치는 벨로다인 라이다(Velodyne LiDAR), 에이치디엘-32 채널 라이다(HDL-32 channel LiDAR) 등일 수 있으나, 이에 한정되지 않는다. 또한, 예를 들어, 상기 궤적 수집 장치는 GPS(Global Positioning System), 및/또는 GNSS/INS(Global Navigation Satellite System/ Inertial Navigation System) 장치 등일 수 있으나, 이에 한정되지 않는다. 한편, 소스 점군(110)은 상기 모바일 매핑 시스템이 탑재된 차량이 상기 제1 시점에 주행 궤적을 따라 주행할 때 획득된 점군이고, 타겟 점군(120) 및 궤적 데이터(130)은 상기 모바일 매핑 시스템이 탑재된 차량이 상기 제1 시점 이후의 상기 제2 시점(예를 들어, 상기 제1 시점으로부터 몇 일, 몇 달 또는 몇 년 후의 시점)에 획득된 점군 및 궤적 데이터일 수 있다.Referring to FIG. 1 , in the point cloud matching method for matching a source point cloud 110 and a target point cloud 120, a source point cloud 110 obtained at a first time point and a source point cloud 110 obtained at a second time point 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 It can be obtained through the trajectory collection device of For example, the lidar device may be a Velodyne LiDAR, an HDL-32 channel LiDAR, or the like, but is not limited thereto. Also, for example, the trajectory collection device may be a Global Positioning System (GPS) device, 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 travels along the driving trajectory at the first time point, and the target point cloud 120 and trajectory data 130 are the mobile mapping system The mounted vehicle may be point cloud and trajectory data obtained at the second point in time after the first point in time (eg, a point cloud several days, months, or years after the first point in time).

소스 점군(110) 및 타겟 점군(120) 각각에 대한 중복점 및 노이즈가 제거될 수 있다(S150). 일 실시예에서, 상기 중복점을 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 다운샘플링이 수행되고, 상기 노이즈를 제거하도록 소스 점군(110) 및 타겟 점군(120) 각각에 필터링이 수행될 수 있다.Redundant points and noise for each of the source point cloud 110 and the target point cloud 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, as shown in 210 of FIG. 2, the space in which each point cloud is located is divided into a plurality of voxels, and as shown in 220 of FIG. Duplicate points 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 where each point cloud is located has a size corresponding to the error range of the LIDAR device as shown in 210 in FIG. It can be divided into the plurality of voxels having . In addition, 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 to be the overlapping point, and the two or more points 230 are determined as overlapping points. At least one of the two or more dots 230 may be removed so that one of the dots 230 remains. For example, among the two or more points 230 , only one point close to the center point of each voxel may remain, and the remaining points may be removed. Meanwhile, the LIDAR device has a certain error range, and two or more points 230 present in each voxel having a size corresponding to the error range may be the erroneously acquired overlapping points, and downsampling using such a voxel 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 one 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 cloud 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, 360 and 370), a predetermined number of adjacent points 320, 330, 340, 350, 360, and 370 adjacent to each point 310 (six in the example of FIG. 3, but not limited thereto) are 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 may be calculated. . In this way, the average distance is determined as the average distance of the points 310, and this average distance can be determined for all point clouds of each point group. Also, an average value and a standard deviation value of the average distances of all the point groups may be calculated, and a reference distance may be determined based on the average value and the standard deviation value. In one embodiment, the reference distance may be determined as a sum of the average value and N times (N is a real number greater than or equal to 0) of the standard deviation value. For example, the reference distance may be determined as a sum of the average value and the standard deviation value, and in this case, about 68% of the average distances may be less than or equal to the reference distance. In another example, the reference distance may be determined as a sum of twice the average value and the standard deviation value, and in this case, about 95% of the average distances may be less than or equal to the reference distance. Also, among all point clouds of each point group, a point having the average distance greater than the reference distance may be removed. Accordingly, with respect to 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, 460), the neighboring points 420, 430, 440, 450, and 460 having a distance less than or equal to a predetermined distance (in the example of FIG. 4, but not limited to about 20 cm) from each point 410 are A nearby point plane 470 having a minimum distance from the neighboring 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 nearby point plane 470 is calculated, and each point 410 whose 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 point removal beyond the reference distance may be performed on all point clouds of each point group. Accordingly, with respect to each of the source point cloud 110 and the target point cloud 120, points far from the nearby point plane 470 can 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, according to embodiments, 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. Both the SOR filtering and the noise filtering shown in FIG. 4 may be performed.

궤적 데이터(130)에 기초하여 소스 점군(110) 및 타겟 점군(120)이 획득된 주행 궤적을 복수의 구간들로 분할하여 소스 점군(110) 및 타겟 점군(120)이 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할될 수 있다(S160).Based on the locus 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, and the source point cloud 110 and the target point cloud 120 are each of the plurality of sections. It can be divided into a source point cloud for each section and a target point cloud 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, 516, 517, 518, 519) are set, and a plurality of vertical planes perpendicular to the traveling direction of the driving trajectory at a plurality of dividing points 511, 512, 513, 514, 515, 516, 517, 518, 519) (521, 522, 523, 514, 525, 526, 527, 528, 529) can be determined. Meanwhile, in FIG. 5 , each vertical plane is represented by a line for convenience of description, but each vertical plane may be a plane. Spaces between the plurality of vertical planes 521, 522, 523, 514, 525, 526, 527, 528, and 529 are determined as the plurality of sections, and the source point cloud 110 is applied to each of the plurality of sections. The target point cloud 120 may be divided into the target point clouds for each section belonging to each of the plurality of sections. In this way, the source point cloud 110 and the target point cloud 120 may be divided into the source point cloud for each section and the target point cloud for each section along the driving trajectory indicated by the target point cloud 120 .

각 구간에 속하는 서로 대응되는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군에 대하여, 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들이 결정될 수 있다(S170).Corresponding point pairs of source points included in the source point cloud for each section and target points included in the target point cloud for each section may be determined for the source point cloud for each section and the target point cloud for each section that correspond to each other belonging to each section ( S170).

예를 들어, 도 6에 도시된 바와 같이, 상기 구간별 소스 점군의 상기 소스 점들 중 각 소스 점(610)에 대하여, 소스 점(610)과, 상기 구간별 타겟 점군의 타겟 점들(621, 622, 623, 624, 625) 중 소스 점(610)으로부터 최소 거리를 가지는 타겟 점(621)이 이웃점 쌍으로 결정될 수 있다. 한편, 각 소스 점(610)에 대하여 상기 이웃점 쌍이 결정되므로, 단일한 타겟 점(621)이 2 이상의 이웃점 쌍들에 포함될 수 있다. 다른 이웃점 쌍에 포함되지 않는 타겟 점을 가지는 이웃점 쌍은 상기 대응점 쌍으로 설정될 수 있다. 한편, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들이 상기 대응점 쌍들로 설정될 수 있다. 이에 따라, 도 7에 도시된 바와 같이, 상기 대응점 쌍들은 중복되지 않는 소스 점들(711, 712, 713, 714, 715) 및 중복되지 않는 타겟 점들(721, 722, 723, 724, 725)을 포함할 수 있다.For example, as shown in FIG. 6 , for each source point 610 among the source points of the source point group for each section, the source point 610 and the target points 621 and 622 of the target point group for each section , 623, 624, and 625, the target point 621 having the 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. Meanwhile, when one of the target points belongs to two or more pairs of neighbor points among the pairs of neighbor points, the pairs of neighbor points left by removing at least one of the two or more 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, and 715 and non-overlapping target points 721, 722, 723, 724, and 725. can do.

일 실시예에서, 상기 대응점 쌍들 중 아웃라이어(outlier) 대응점 쌍이 제거될 수 있다. 예를 들어, 도 8에 도시된 바와 같이, 대응 쌍 기준 거리가 실시예들에 따라 미리 결정되고, 소스 점들(813, 814, 815)과 타겟 점들(823, 824, 825) 사이의 거리들이 상기 대응 쌍 기준 거리 미만인 대응점 쌍들은 인라이어(Inlier) 대응점 쌍으로서 유지되고, 소스 점들(811, 812)과 타겟 점들(821, 822) 사이의 거리들이 상기 대응 쌍 기준 거리 이상인 대응점 쌍들은 아웃라이어(outlier) 대응점 쌍으로서 제거될 수 있다.In an embodiment, an outlier correspondence point pair among the correspondence point pairs may be removed. For example, as shown in FIG. 8 , a corresponding pair reference distance is predetermined according to embodiments, and the distances between source points 813, 814 and 815 and target points 823, 824 and 825 are Correspondence point pairs that are less than the correspondence pair reference distance are maintained as inlier correspondence point pairs, and correspondence point pairs whose distances between the source points 811 and 812 and the target points 821 and 822 are equal to or greater than the correspondence pair reference distance are outliers ( outliers) can be eliminated as pairs of correspondence points.

상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군이 정합될 수 있다(S180). 일 실시예에서, 상기 대응점 쌍들의 거리 합산이 최소가 되도록, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나에 대하여 회전 이동 및/또는 평행 이동이 수행될 수 있다.The source point cloud for each section and the target point cloud for each section may be matched so that the sum of the distances of the corresponding point pairs is minimized (S180). In an embodiment, rotational movement and/or parallel movement may be performed on at least one of the source point group for each section and the target point group for each section so that the sum of the distances of the corresponding point pairs is minimized.

도 9의 예에서, 910은 상기 구간별 소스 점군을 나타내고, 930은 상기 구간별 타겟 점군을 나타낼 수 있다. 예를 들어, 도 9에 도시된 바와 같이, 구간별 타겟 점군(930)에 대하여 회전 이동이 수행됨으로써, 회전 이동된 구간별 타겟 점군(950)이 도출되고, 이어서 회전 이동된 구간별 타겟 점군(950)에 대하여 평행 이동이 수행되어 구간별 타겟 점군(930)이 구간별 소스 점군(910)에 근접하게 될 수 있다. 이에 따라, 정합된 구간별 소스 점군(910)과 구간별 타겟 점군(930)의 대응점 쌍들의 거리들의 합산이 최소화될 수 있다. 한편, 도 9에는 구간별 타겟 점군(930)이 구간별 소스 점군(910)에 근접하도록 회전 이동 및 평행 이동된 예가 도시되어 있으나, 다른 실시예에서, 구간별 소스 점군(910)이 구간별 타겟 점군(930)에 근접하도록 회전 이동 및 평행 이동될 수 있다.In the example of FIG. 9 , 910 may indicate the source point cloud for each section, and 930 may indicate the target point cloud for each section. For example, as shown in FIG. 9 , rotation is performed on the target point cloud 930 for each section, so that the rotated target point cloud 950 for each section is derived, and then the rotated target point cloud for each section ( 950), the target point cloud 930 for each section may come closer to the source point cloud 910 for each section. Accordingly, the sum of the distances of pairs of corresponding points of the matched source point cloud 910 for each section and the target point cloud 930 for each section can be minimized. Meanwhile, FIG. 9 shows an example in which the target point cloud 930 for each section is rotated and moved in parallel so as to approach the source point cloud 910 for each section. However, in another embodiment, the source point cloud 910 for each section is It can be rotated and translated to approximate the point cloud 930 .

이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 소스 점군(110) 및 타겟 점군(120)이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.In this way, the matched point clouds 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 for 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 since the noise is removed, the accuracy of each of the source point cloud 110 and the target point cloud 120 can be improved. In addition, in the point cloud matching method according to embodiments of the present invention, since point cloud matching is performed section by section, position errors of matched point clouds are 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, rather than a point cloud obtained by a single driving, a plurality of points acquired by a plurality of driving (of a vehicle equipped with a mobile mapping system) at a plurality of viewpoints. Since the high-precision map data is generated by matching the point clouds of (i.e., the source point cloud 110 and the target point cloud 120), a road shadow section not included in one point cloud can be restored by another point cloud, and the Changes in road facilities (eg, lanes, crosswalks, signs, etc.) between a plurality of points of view may be detected, and the changed road facilities may be updated to the latest road facilities.

도 10은 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치를 나타내는 블록도이다.10 is a block diagram illustrating a point cloud matching device for matching a source point cloud and a target point cloud according to an embodiment of the present invention.

도 10을 참조하면, 본 발명의 실시예에 따른 소스 점군과 타겟 점군을 정합하는 점군 정합 장치(1000)는 점군 전처리 블록(1010), 구간 분할 블록(1020) 및 구간별 점군 정합 블록(1030)을 포함할 수 있다.Referring to FIG. 10 , a point 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 section-by-section point cloud matching block 1030. can 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 point in 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, an 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 plurality of voxels having a size corresponding to the error range of the LIDAR device 1060 are arranged in a space where each point cloud is located. ), and if 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 point among 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 of a plurality of points of the source point group and the target point group, and extends from each point to the neighboring points. Calculate an average distance of the distances of the plurality of points, calculate an average value and standard deviation values for the average distances for the plurality of points, determine a reference distance based on the average value and the standard deviation value, and determine the plurality of points. Among the points in , points 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 equal to or less than a predetermined distance from each of the plurality of points of the source point cloud and the target point cloud, and searches for a minimum distance from the neighboring points. A neighboring point plane having a distance may be determined, a distance of each point from the neighboring point plane may be calculated, and each point having a calculated distance greater than or equal to a reference distance may be removed. Such filtering may be referred to as noise filtering. According to 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 group and the target point group.

구간 분할 블록(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 trajectory data acquired at the second point in time through the trajectory collecting device 1070 of the mobile mapping system 1050 . For example, the trajectory collection device 1070 may be a Global Positioning System (GPS) device, 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 from which the source point cloud and the target point cloud are acquired into a plurality of sections based on the locus data, and divides the source point cloud and the target point cloud into sections belonging to each of the plurality of sections. It can be divided into a source point cloud for each segment and a target point cloud for each section. For example, the section division block 1020 sets a plurality of division points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained, and sets the plurality of division points of 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 cloud is a source point cloud for each section belonging to each of the plurality of sections. segmentation, and the target point cloud may be divided into target point clouds for each section belonging to each of the plurality of sections.

구간별 점군 정합 블록(1030)은 상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정할 수 있다. 예를 들어, 구간별 점군 정합 블록(1030)은 상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하고, 상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하며, 상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거할 수 있다.The section-by-section point cloud matching block 1030 may determine corresponding point pairs of source points included in the section-by-section source point cloud and target points included in the section-by-section target point cloud. For example, the section-by-section point cloud matching block 1030 determines, for each source point among the source points, the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points; If one of the target points belongs to two or more of the neighboring point pairs, at least one of the two or more neighboring point pairs is removed, and the left neighbor point pairs are set as the corresponding point pairs, and the corresponding point pairs Correspondence point pairs having a distance equal to or greater than a predetermined correspondence pair reference distance may be removed as outlier correspondence point pairs.

또한, 구간별 점군 정합 블록(1030)은 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합할 수 있다. 예를 들어, 구간별 점군 정합 블록(1030)은 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 회전 이동시키고, 상기 구간별 소스 점군 및 상기 구간별 타겟 점군 중 적어도 하나를 평행 이동시킴으로써, 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합할 수 있다. 이와 같이 구간별로 정합된 점군들이 병합되어, 전체 주행 경로에 대하여 상기 소스 점군 및 상기 타겟 점군이 정합되고, 고정밀 지도 데이터가 생성될 수 있다.Also, the section-by-section point cloud matching block 1030 may match the section-by-section source point cloud and the section-by-section target point cloud so that the sum of the distances of the corresponding point pairs is minimized. For example, the section-by-section point cloud matching block 1030 rotationally moves at least one of the source point cloud for each section and the target point cloud for each section, and parallelly moves at least one of the source point cloud for each section and the target point cloud for each section. , the source point cloud for each section and the target point cloud for each section can be matched. In this way, the matched point clouds for each section are merged, the source point cloud and the target point cloud are matched with respect to the entire driving route, and high-precision map data can be generated.

상술한 바와 같이, 본 발명의 실시예들에 따른 상기 소스 점군과 상기 타겟 점군을 정합하는 점군 정합 장치(1000)에서, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈가 제거되므로, 상기 소스 점군 및 상기 타겟 점군 각각의 정확도가 향상될 수 있다. 또한, 본 발명의 실시예들에 따른 점군 정합 장치(1000)에서, 점군 정합이 구간별로 수행되므로, 정합된 점군들의 위치 오차가 감소되고, 보다 정확한 고정밀 지도 데이터가 생성될 수 있다. 또한, 본 발명의 실시예들에 따른 점군 정합 장치(1000)에서, 단일한 주행으로 획득된 점군이 아닌, 복수의 시점들에서의 (모바일 매핑 시스템(1050)이 탑재된 차량의) 복수의 주행들로 획득된 복수의 점군들(즉, 상기 소스 점군 및 상기 타겟 점군)을 정합하여 상기 고정밀 지도 데이터가 생성되므로, 하나의 점군에 포함되지 않은 도로 음영 구간이 다른 점군에 의해 복원될 수 있고, 상기 복수의 시점들 사이에서의 도로 시설물(예를 들어, 차선, 횡단보도, 표지판 등)의 변화가 감지되며, 변화된 도로 시설물이 최신의 도로 시설물로 갱신될 수 있다.As described above, in the point cloud matching apparatus 1000 for matching the source point cloud and the target point cloud according to embodiments of the present invention, since duplicate points and noise for each of the source point cloud and the target point cloud are removed, 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 section by section, position errors of matched point clouds are 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 points (of a vehicle equipped with the mobile mapping system 1050) at a plurality of viewpoints, rather than a point cloud obtained by a single driving Since the high-precision map data is generated by matching a plurality of point clouds (i.e., the source point cloud and the target point cloud) acquired as Changes in road facilities (eg, lanes, crosswalks, signs, etc.) between the plurality of points of view may be detected, and the changed road facilities may be updated to the latest road facilities.

이상, 본 발명의 실시예들에 따른 점군 정합 방법 및 점군 정합 장치에 대하여 도면을 참조하여 설명하였지만, 상기 설명은 예시적인 것으로서 본 발명의 기술적 사상을 벗어나지 않는 범위에서 해당 기술 분야에서 통상의 지식을 가진 자에 의하여 수정 및 변경될 수 있을 것이다.Although the point cloud matching method and the point cloud matching device according to the embodiments of the present invention have been described above with reference to the drawings, the above description is exemplary and requires common knowledge in the related art to the extent that it does not deviate from the technical spirit of the present invention. It can be modified and changed by those who have it.

본 발명은 고정밀 지도 데이터를 구축하는 방법 및 장치에 적용될 수 있다. 이상에서는 본 발명의 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.The present invention can be applied to a method and apparatus for constructing high-precision map data. Although the above has been described with reference to the embodiments of the present invention, those skilled in the art can variously modify and change the present invention without departing from the spirit and scope of the present invention described in the claims below. You will understand that you can.

1000: 점군 정합 장치
1010: 점군 전처리 블록
1020: 구간 분할 블록
1030: 구간별 점군 정합 블록
1050: 모바일 매핑 시스템
1060: 라이다 장치
1070: 궤적 수집 장치
1000: point cloud matching device
1010: point cloud preprocessing block
1020: Section division block
1030: Sectional point cloud matching block
1050: mobile mapping system
1060: lidar device
1070: trajectory collection device

Claims (20)

소스 점군과 타겟 점군을 정합하는 점군 정합 방법에 있어서,
제1 시점에 획득된 상기 소스 점군과, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군 및 궤적 데이터를 수신하는 단계;
상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 단계;
상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 단계;
상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하는 단계; 및
상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 단계를 포함하고,
상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군 및 상기 구간별 타겟 점군으로 각각 분할하는 단계는,
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하는 단계;
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하는 단계;
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하는 단계;
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하는 단계; 및
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
In the point cloud matching method for matching a source point cloud and a target point cloud,
receiving the source point cloud obtained at a first point in time and the target point cloud and trajectory data obtained at a second point after the first point in time;
removing overlapping points and noise from each of the source point cloud and the target point cloud;
Based on the locus data, the driving trajectory from which the source point cloud and the target point cloud are obtained is divided into a plurality of sections, and the source point cloud and the target point cloud are obtained by section-by-section source point cloud and section-by-section target Dividing each into point groups;
determining corresponding point pairs between source points included in the source point cloud for each section and target points included in the target point cloud for each section; and
matching the source point cloud for each section with the target point cloud for each section so that the sum of the distances of the pairs of corresponding points is minimized;
The step of dividing the source point cloud and the target point cloud into the source point cloud for each section and the target point cloud for each section belonging to each of the plurality of sections, respectively.
setting a plurality of dividing points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained;
determining a plurality of vertical planes perpendicular to a traveling direction of the driving trajectory at the plurality of dividing points;
determining spaces between the plurality of vertical planes as the plurality of sections;
dividing the source point cloud into source point clouds for each section belonging to each of the plurality of sections; and
and dividing the target point cloud into target point clouds for each section belonging to each of the plurality of sections.
제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 the removing of the overlapping point and the noise for each of the source point group and the target point group comprises:
and performing downsampling on each of the source point cloud and the target point cloud to remove the overlapping point.
제3 항에 있어서, 상기 다운샘플링을 수행하는 단계는,
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하는 단계; 및
상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
The method of claim 3, wherein the downsampling step comprises:
For each of the source point cloud and the target point cloud, dividing a space where each point cloud is located into a plurality of voxels having a size corresponding to an error range of a LIDAR device; and
and removing at least one of the two or more points so that one of the two or more points remains when two or more points of each point group exist in one voxel of the plurality of voxels. The point group matching method with .
제1 항에 있어서, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 상기 중복점 및 상기 노이즈를 제거하는 단계는,
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
The method of claim 1 , wherein the removing of the overlapping point and the noise for each of the source point group and the target point group comprises:
and performing filtering on each of the source point cloud and the target point cloud to remove the noise.
제5 항에 있어서, 상기 필터링을 수행하는 단계는,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하는 단계;
상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하는 단계;
상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하는 단계;
상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하는 단계; 및
상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
The method of claim 5, wherein the filtering step comprises:
searching for a predetermined number of nearby points adjacent to each point with respect to a plurality of points of each of the source point group and the target point group;
calculating an average distance of distances from each point to the neighboring points;
calculating an average value and a standard deviation value for the average distances for the plurality of points;
determining a reference distance based on the average value and the standard deviation value; and
and removing a point having the average distance greater than the reference distance from among the plurality of points.
제5 항에 있어서, 상기 필터링을 수행하는 단계는,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하는 단계;
상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하는 단계;
상기 인근점 평면으로부터 상기 각 점의 거리를 계산하는 단계; 및
상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
The method of claim 5, wherein the filtering step comprises:
searching for neighboring points having a distance less than or equal to a predetermined distance from each of the plurality of points of the source point group and the target point group;
determining a nearby point plane having a minimum distance from the neighboring points;
calculating the distance of each point from the nearby point plane; and
and removing each point having the calculated distance equal to or greater than the reference distance.
삭제delete 제1 항에 있어서, 상기 구간별 소스 점군에 포함된 상기 소스 점들과 상기 구간별 타겟 점군에 포함된 상기 타겟 점들의 대응점 쌍들을 결정하는 단계는,
상기 소스 점들 중 각 소스 점에 대하여, 상기 소스 점과, 상기 타겟 점들 중 상기 소스 점으로부터 최소 거리를 가지는 타겟 점을 이웃점 쌍으로 결정하는 단계;
상기 타겟 점들 중 하나의 타겟 점이 상기 이웃점 쌍들 중 2 이상의 이웃점 쌍들에 속하는 경우, 상기 2 이상의 이웃점 쌍들 중 적어도 하나를 제거하여 남겨진 상기 이웃점 쌍들을 상기 대응점 쌍들로 설정하는 단계; 및
상기 대응점 쌍들 중 미리 결정된 대응 쌍 기준 거리 이상의 거리를 가지는 대응점 쌍을 아웃라이어(outlier) 대응점 쌍으로서 제거하는 단계를 포함하는 것을 특징으로 하는 점군 정합 방법.
The method of claim 1 , wherein the step of determining corresponding point pairs of the source points included in the source point cloud for each section and the target points included in the target point group for each section comprises:
determining, for each source point among the source points, the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points;
if one of the target points belongs to two or more of the neighboring point pairs, setting the neighboring point pairs left by removing at least one of the two or more neighboring point pairs as the corresponding point pairs; and
and removing corresponding-point pairs having a distance greater than or equal to a predetermined correspondence-pair reference distance among the corresponding-point pairs as outlier corresponding-point pairs.
제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 and moving at least one of the source point cloud for each section and the target point cloud for each section; and
and parallel-moving at least one of the source point cloud for each section and the target point cloud for each section.
소스 점군과 타겟 점군을 정합하는 점군 정합 장치에 있어서,
제1 시점에 획득된 상기 소스 점군을 수신하고, 상기 제1 시점 이후의 제2 시점에 획득된 상기 타겟 점군을 더욱 수신하며, 상기 소스 점군 및 상기 타겟 점군 각각에 대한 중복점 및 노이즈를 제거하는 점군 전처리 블록;
상기 제2 시점에 획득된 궤적 데이터를 수신하고, 상기 궤적 데이터에 기초하여 상기 소스 점군 및 상기 타겟 점군이 획득된 주행 궤적을 복수의 구간들로 분할하여 상기 소스 점군 및 상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 구간별 소스 점군 및 구간별 타겟 점군으로 각각 분할하는 구간 분할 블록; 및
상기 구간별 소스 점군에 포함된 소스 점들과 상기 구간별 타겟 점군에 포함된 타겟 점들의 대응점 쌍들을 결정하고, 상기 대응점 쌍들의 거리 합산이 최소가 되도록 상기 구간별 소스 점군과 상기 구간별 타겟 점군을 정합하는 구간별 점군 정합 블록을 포함하고,
상기 구간 분할 블록은,
상기 소스 점군 및 상기 타겟 점군이 획득된 상기 주행 궤적에서 미리 결정된 일정한 간격을 가지는 복수의 분할 지점들을 설정하고,
상기 복수의 분할 지점들에서 상기 주행 궤적의 진행 방향에 수직한 복수의 수직 평면들을 결정하며,
상기 복수의 수직 평면들 사이의 공간들을 상기 복수의 구간들로 결정하고,
상기 소스 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 소스 점군으로 분할하고,
상기 타겟 점군을 상기 복수의 구간들 각각에 속하는 상기 구간별 타겟 점군으로 분할하는 것을 특징으로 하는 점군 정합 장치.
A point cloud matching device for matching a source point cloud and a target point cloud,
Receiving the source point cloud obtained at a first time point, further receiving the target point cloud obtained at a second time point after the first time point, and removing overlapping points and noise for each of the source point cloud and the target point cloud point cloud preprocessing block;
Trajectory data obtained at the second point in time is received, and based on the locus data, a driving trajectory from which the source point cloud and the target point cloud are obtained is divided into a plurality of sections to obtain the source point cloud and the target point cloud. a section dividing block that divides each section into a source point cloud and a target point group for each section belonging to each section; and
Corresponding point pairs of the source points included in the source point cloud for each section and the target points included in the target point cloud for each section are determined, and the source point group for each section and the target point cloud for each section are determined so that the sum of distances between the corresponding point pairs is minimized. Including a point cloud matching block for each section to be matched,
The section division block,
Setting a plurality of dividing points having predetermined intervals in the driving trajectory from which the source point cloud and the target point cloud are obtained;
Determining a plurality of vertical planes perpendicular to the traveling direction of the driving trajectory at the plurality of dividing points;
determining spaces between the plurality of vertical planes as the plurality of sections;
Dividing the source point cloud into source point clouds for each section belonging to each of the plurality of sections;
and dividing the target point cloud into target point clouds for each section belonging to each of the plurality of sections.
제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,
wherein downsampling is performed on each of the source point cloud and the target point cloud to remove the overlapping point.
제13 항에 있어서, 상기 점군 전처리 블록은,
상기 소스 점군 및 상기 타겟 점군 각각에 대하여, 각 점군이 위치하는 공간을 라이다 장치의 오차 범위에 상응하는 크기를 가지는 복수의 복셀(Voxel)들로 구분하고,
상기 복수의 복셀들 중 하나의 복셀에 상기 각 점군의 2개 이상의 점들이 존재하는 경우, 상기 2개 이상의 점들 중 1개의 점이 남도록 상기 2개 이상의 점들 중 적어도 하나를 제거하는 것을 특징으로 하는 점군 정합 장치.
The method of claim 13, wherein the point cloud preprocessing block,
For each of the source point cloud and the target point cloud, the space where each point cloud is located is divided into a plurality of voxels having sizes corresponding to the error range of the LIDAR device,
When two or more points of each point group exist in one voxel among the plurality of voxels, at least one of the two or more points is removed so that one point among the two or more points remains. Device.
제11 항에 있어서, 상기 점군 전처리 블록은,
상기 노이즈를 제거하도록, 상기 소스 점군 및 상기 타겟 점군 각각에 필터링을 수행하는 것을 특징으로 하는 점군 정합 장치.
The method of claim 11, wherein the point cloud preprocessing block,
and performing filtering on each of the source point cloud and the target point cloud to remove the noise.
제15 항에 있어서, 상기 점군 전처리 블록은,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점에 인접한 미리 결정된 개수의 인근점들을 탐색하고,
상기 각 점으로부터 상기 인근점들까지의 거리들의 평균 거리를 계산하며,
상기 복수의 점들에 대한 상기 평균 거리들에 대한 평균 값 및 표준 편차 값을 계산하고,
상기 평균 값 및 상기 표준 편차 값에 기초하여 기준 거리를 결정하며,
상기 복수의 점들 중, 상기 기준 거리보다 큰 상기 평균 거리를 가지는 점을 제거하는 것을 특징으로 하는 점군 정합 장치.
The method of claim 15, wherein the point cloud preprocessing block,
For each of the plurality of points of the source point group and the target point group, a predetermined number of neighboring points adjacent to each point are searched;
Calculate the average distance of the distances from each point to the neighboring points,
Calculate an average value and a standard deviation value for the average distances for the plurality of points;
determine a reference distance based on the mean value and the standard deviation value;
The point cloud matching device characterized in that removing a point having the average distance greater than the reference distance from among the plurality of points.
제15 항에 있어서, 상기 점군 전처리 블록은,
상기 소스 점군 및 상기 타겟 점군 각각의 복수의 점들에 대하여, 각 점으로부터 미리 결정된 거리 이하의 거리를 가지는 인근점들을 탐색하고,
상기 인근점들로부터 최소 거리를 가지는 인근점 평면을 결정하며,
상기 인근점 평면으로부터 상기 각 점의 거리를 계산하고,
상기 계산된 거리가 기준 거리 이상인 상기 각 점을 제거하는 것을 특징으로 하는 점군 정합 장치.
The method of claim 15, wherein the point cloud preprocessing block,
For each of the plurality of points of the source point group and the target point group, searching for neighboring points having a distance less than or equal to a predetermined distance from each point;
determining a nearby point plane having a minimum distance from the neighboring points;
Calculate the distance of each point from the nearby point plane;
The point cloud matching device characterized in that for removing each point having the calculated distance equal to or greater than the reference distance.
삭제delete 제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, determine the source point and a target point having a minimum distance from the source point among the target points as a pair of neighboring points;
If one of the target points belongs to two or more pairs of neighboring points among the pairs of neighboring points, at least one of the two or more pairs of neighboring points is removed, and the remaining pairs of neighboring points are set as the pairs of corresponding points;
The point cloud matching device characterized in that, among the corresponding point pairs, a corresponding point pair having a distance greater than or equal to a predetermined correspondence pair reference distance is removed as an outlier corresponding point pair.
제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 cloud for each section and the target point cloud for each section;
The point cloud matching device characterized in that at least one of the source point cloud for each section and the target point cloud for each section is moved in parallel.
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 KR20220081776A (en) 2022-06-16
KR102513683B1 true KR102513683B1 (en) 2023-03-27

Family

ID=82217585

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200171644A KR102513683B1 (en) 2020-12-09 2020-12-09 Point cloud matching method and point cloud matching device

Country Status (1)

Country Link
KR (1) KR102513683B1 (en)

Families Citing this family (1)

* 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

Citations (4)

* 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
WO2017199141A1 (en) 2016-05-20 2017-11-23 Nokia Usa Inc. Point cloud matching method
KR102050754B1 (en) 2019-05-24 2020-01-08 한화시스템 주식회사 Micro target detection method for 3d sensor system
KR102083909B1 (en) 2018-10-23 2020-03-04 주식회사 모빌테크 Automatic extraction method for lane data information for autonomous driving vehicles based on point cloud map

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170083662A (en) * 2016-01-08 2017-07-19 서울대학교산학협력단 Map building apparatus being robust in sensor error
KR20170100718A (en) * 2016-02-25 2017-09-05 한국전자통신연구원 Apparatus and method for registration of point cloud
KR102078254B1 (en) * 2018-03-30 2020-02-17 서울시립대학교 산학협력단 Method, system and computer program for topographical change detection using LiDAR data
KR102083911B1 (en) * 2019-09-03 2020-03-04 주식회사 모빌테크 Method for building map including point cloud using LiDAR

Patent Citations (4)

* 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
WO2017199141A1 (en) 2016-05-20 2017-11-23 Nokia Usa Inc. Point cloud matching method
KR102083909B1 (en) 2018-10-23 2020-03-04 주식회사 모빌테크 Automatic extraction method for lane data information for autonomous driving vehicles based on point cloud map
KR102050754B1 (en) 2019-05-24 2020-01-08 한화시스템 주식회사 Micro target detection method for 3d sensor system

Also Published As

Publication number Publication date
KR20220081776A (en) 2022-06-16

Similar Documents

Publication Publication Date Title
CN108765487B (en) Method, device, equipment and computer readable storage medium for reconstructing three-dimensional scene
US9978161B2 (en) Supporting a creation of a representation of road geometry
CN111006655B (en) Multi-scene autonomous navigation positioning method for airport inspection robot
CN113341397A (en) Reflection value map construction method and device
EP3667236B1 (en) A method of determining position data
CN111856521B (en) Data processing method, device, electronic equipment and storage medium
WO2022052567A1 (en) Vehicle positioning method and apparatus, vehicle, and storage medium
US9330484B2 (en) Plane panorama location correction in three-dimensional mapping
US20220398856A1 (en) Method for reconstruction of a feature in an environmental scene of a road
CN107917716B (en) Fixed line navigation method, device, terminal and computer readable storage medium
KR20190038739A (en) Method for detecting the changing point of road
CN112985404A (en) Method, device, equipment and medium for generating crowdsourcing map of parking lot
KR102513683B1 (en) Point cloud matching method and point cloud matching device
CN111060112A (en) Vehicle track map matching method and system based on direction angle
CN112673280A (en) Road detection method for a motor vehicle equipped with a LIDAR sensor
CN115135963A (en) Method for generating 3D reference point in scene map
CN111664856B (en) Vehicle initial positioning system and vehicle initial positioning method
WO2020118623A1 (en) Method and system for generating an environment model for positioning
KR102291805B1 (en) GPS error correction method by comparing 3D precision map in overlapping area
KR20190038740A (en) Map matching method using reverse tracking map matching
CN112037328A (en) Method, device, equipment and storage medium for generating road edges in map
WO2021048841A2 (en) Cellular-based navigation method
CN114440892B (en) Self-positioning method based on topological map and odometer
JP7308772B2 (en) DATA PROCESSING DEVICE, DATA PROCESSING METHOD AND DATA PROCESSING PROGRAM
Altyntsev Relative Adjustment of Mobile Laser Scanning Data in Different Scenes

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant