KR102206314B1 - 처리 장치 및 처리 방법 - Google Patents

처리 장치 및 처리 방법 Download PDF

Info

Publication number
KR102206314B1
KR102206314B1 KR1020190124394A KR20190124394A KR102206314B1 KR 102206314 B1 KR102206314 B1 KR 102206314B1 KR 1020190124394 A KR1020190124394 A KR 1020190124394A KR 20190124394 A KR20190124394 A KR 20190124394A KR 102206314 B1 KR102206314 B1 KR 102206314B1
Authority
KR
South Korea
Prior art keywords
point
image
reference image
points
outlier
Prior art date
Application number
KR1020190124394A
Other languages
English (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 KR1020190124394A priority Critical patent/KR102206314B1/ko
Application granted granted Critical
Publication of KR102206314B1 publication Critical patent/KR102206314B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • G06T5/005
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • 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/10004Still image; Photographic image
    • G06T2207/10008Still image; Photographic image from scanner, fax or copier

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

처리 장치가 제공된다. 상기 처리 장치는 스캔 이미지를 획득하는 획득부; 상기 스캔 이미지를 기준 이미지와 비교하고, 상기 비교를 통해 매칭 포인트를 설정하는 설정부; 상기 매칭 포인트가 서로 불일치하는 아웃라이어(outlier)를 제거하는 제거부;를 포함할 수 있다.

Description

처리 장치 및 처리 방법{APPARATUS AND METHOD FOR PROCESSING OUTLIER}
본 발명은 로봇의 자기 위치 파악에 이용되는 처리 장치 및 처리 방법에 관한 것이다.
SLAM(Simultaneous Localization and Mapping) 기술은 로봇이 주변 환경으로부터 자신의 위치를 인식하는 필수적인 기술이다. SLAM은 단일 센서 활용 방식에서 여러 종류의 센서를 융합하여 강건성을 높이는 방향으로 발전하고 있다.
SLAM 기술은 실내 자율 주행 로봇, 실외 배송 로봇, 무인 항공기, 수중 탐사 로봇, 지하 탐사 로봇, 등 다양한 로봇 뿐만 아니라 AR/VR 등에도 널리 활용되고 있다.
최근에는 딥러닝 기반의 기술이 접목되어 다양한 환경에서 강인하게 동작하고, 저가의 센서를 활용한 솔루션 개발이 활발하게 진행되고 있다.
SLAM은 정적인 특징점을 매칭해야 하는데, 동적인 물체가 있다면 매칭이 잘못되어 엉뚱한 위치 보정 결과를 가져올 수 있다. 이를 극복하기 위해서 잘못된 매칭을 판별하고 제거하는 기술들이 개발되고 있다.
현재의 SLAM 연구는 3차원 점군 데이터로부터 벽면, 기둥, 문, 모서리, 표지판 등의 특징들을 딥러닝 기반의 강인한 인식을 통해 추출하고 활용하는 추세이다.
3차원 LiDAR는 SLAM 기술 적용에 핵심이 되는 센서이지만, 고가이기 때문에 기존에는 상용화에 저용하기 어려웠으나, 현재는 저가의 센서가 출시되고 비용이 내려가고 이어 3차원 LiDAR 거리 센서를 활용한 상용 제품 개발이 시도되고 있다.
한국등록특허공보 제1738750호에는 각도 측정 센서로부터 획득된 이동 기기의 각도 정보를 이용해서 그래프 구조 기반으로 이동 기기의 위치를 추정하는 기술이 나타나 있다.
한국등록특허공보 제1738750호
본 발명은 스캔 이미지를 비교하고 매칭 포인트를 선택하며 불일치 부분을 제거하는 ICP 아웃라이어 제거를 수행하는 처리 장치 및 처리 방법을 제공하기 위한 것이다.
본 발명의 처리 장치는 그래프 기반 SLAM(Simultaneous Localization and Mapping)용 처리 장치에 있어서, 스캔 이미지를 획득하는 획득부; 상기 스캔 이미지를 기준 이미지와 비교하고, 상기 비교를 통해 매칭 포인트를 설정하는 설정부; 상기 매칭 포인트가 서로 불일치하는 아웃라이어(outlier)를 제거하는 제거부;를 포함할 수 있다.
본 발명의 처리 방법은 스캔 이미지와 기준 이미지를 획득하는 획득 단계; 상기 스캔 이미지와 상기 기준 이미지의 매칭 포인트를 설정하는 설정 단계; 상기 매칭 포인트가 서로 불일치하는 아웃라이어를 설정하고, 상기 아웃라이어를 제거하는 제거 단계;를 포함할 수 있다.
본 발명의 처리 장치 및 처리 방법에 따르면, 아웃라이어의 제거를 통해 로봇이 자기 위치를 정확하게 파악할 수 있다.
도 1은 본 발명의 처리 장치를 나타낸 개략도이다.
도 2는 샘플 포인트에서 가장 가까운 점(포인트)을 찾는 과정을 나타내는 개략도이다.
도 3은 아웃라이어를 선택하고 제거하는 과정을 나타내는 개략도이다.
도 4는 일치점의 데이터에 병진 행렬 적용을 나타낸 개략도이다.
도 5는 노드 x_i에 대해 측정된 노드 x_j에 대한 프로세스 다이어그램을 나타낸 개략도이다.
도 6은 실험에 사용된 로봇을 나타낸 개략도이다.
도 7은 실험 환경을 나타낸 개략도이다.
도 8은 알고리즘 비교 I를 나타낸 개략도이다.
도 9는 알고리즘 비교 II를 나타낸 개략도이다.
도 10는 기존의 ICP 알고리즘과 ICP Outlier Rejection 알고리즘의 비교를 나타낸 개략도이다.
도 11은 기존의 ICP 알고리즘을 사용한 그래프 기반 SLAM의 결과를 나타낸 개략도이다.
도 12는 ICP Outlier Rejection 알고리즘을 이용한 그래프 기반 SLAM의 결과를 나타낸 개략도이다.
도 13은 그래프 최적화된 SLAM과 참조 맵의 결과를 나타낸 개략도이다.
도 14는 본 발명의 처리 방법을 나타낸 흐름도이다.
도 15는 본 발명의 실시예에 따른, 컴퓨팅 장치를 나타내는 도면이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 명세서에서, 동일한 구성요소에 대해서 중복된 설명은 생략한다.
또한 본 명세서에서, 어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어' 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에 본 명세서에서, 어떤 구성요소가 다른 구성요소에 '직접 연결되어' 있다거나 '직접 접속되어' 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
또한, 본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로써, 본 발명을 한정하려는 의도로 사용되는 것이 아니다.
또한 본 명세서에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다.
또한 본 명세서에서, '포함하다' 또는 '가지다' 등의 용어는 명세서에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품, 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐, 하나 또는 그 이상의 다른 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 할 것이다.
또한 본 명세서에서, '및/또는' 이라는 용어는 복수의 기재된 항목들의 조합 또는 복수의 기재된 항목들 중의 어느 항목을 포함한다. 본 명세서에서, 'A 또는 B'는, 'A', 'B', 또는 'A와 B 모두'를 포함할 수 있다.
또한 본 명세서에서, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략될 것이다.
도 1은 본 발명의 처리 장치를 나타낸 개략도이다.
주어진 환경에 대한 참조 지도는 자동 로봇을 제어하고 경로를 찾는 이동 로봇의 가장 중요한 요소 중 하나이다. SLAM(Simultaneous Localization and Mapping)은 동시에 지도를 만들고 지역화를 수행하여 주어진 환경에서 이동 로봇의 자율 이동을 돕는 기술이다. 그래프 기반 SLAM은 최근 솔루션이다. 그래프 기반 SLAM은 ICP(Iterative Closest Point)를 사용할 때 발생하는 프런트 엔드 처리 오류로 인해, 그래프 작성시 특정 문제에 직면할 수 있다. 로봇이 움직이면 환경 스캔 이미지 간의 편차가 매 스캔마다 나타난다. 따라서, 강력한 ICP 알고리즘을 위해 아웃라이어 제거 알고리즘을 사용하여 두 이미지의 매칭을 매칭시킬 필요가 있다.
본 발명의 처리 장치 및 처리 방법은 레이저 거리 측정기를 이용한 그래프 기판 SLAM을 위한 실용적인 ICP 아웃라이어 제거 기법을 제공할 수 있다.
모바일 로봇에는 주어진 작업에서 자동으로 작업하고 주어진 환경에서 적절한 경로를 찾을 수 있는 모든 로봇이 포함된다. 주어진 환경의 지도는 위치를 추정하고 자율적인 제어를 위해 주어진 환경에서 경로를 생성(경로 계획)하는데 사용될 수 있기 때문에,이동 로봇의 작동에 필수적이다. 이동 로봇이 작업할 환경의 지도를 작성하기위해 알려지지 않은 환경의 위치를 SLAM(Simultaneous Localization And Mapping)과 함께 환경 센서를 이용하여 생성될 수 있다.
SLAM에 사용되는 센서는 일반적으로 엔코더, LRF(레이저 거리 측정기),비전 센서, 음향 센서 등으로 구성될 수 있다. SLAM 알고리즘의 작동을 위해 엔코더의 데이터만으로 로봇의 위치를 설정할 경우 오류가 누적되어 환경 맵을 생성시키기에 충분하지 않다. 스캔-매칭 알고리즘은 에러를 최소화하기 위해 사용되며, 다양한 SLAM 알고리즘이 선택된 데이터를 최적화하는데 사용될 수 있다.
SLAM에는 온라인 SLAM과 전체 SLAM이라는 두 가지 문제가 있다.
Online-SLAM 문제는 매순간 로봇의 위치와 환경에 대한 정보를 추정하는 것과 관련된다. 이 문제를 해결하기 위해 EKF (Extended Kalman Filter)와 파티클 필터가 개발되었다. 모션과 모델이 비선형이기 때문에 EKF 필터에서는 업데이트 단계에서 선형화를 통해 솔루션을 얻는다. 파티클 필터는 샘플링,가중치 계산 및 리샘플링을 포함하는 샘플 기반 필터이다. 파티클은 공간 전체에 퍼지며 로붓의 가중치는 로봇의 모션 모델과 관측 모델을 기반으로 계산된다. 온라인 SLAM 문제는 높은 가중치를 갖는 것으로 선택된 입자가 3단계로 수렴하게 됨에 따라 해결될 수 있다.
Full-SLAM 문제는 로봇의 전체 궤도와 지도의 후방을 추정하는 것과 관련된다. 이 문제를 해결하기 위해 그래프 기반 SLAM이 제안되었다. 이 그래프 기반 SLAM에서 로봇과 지도의 총 궤도는 노드로 간주되며 온라인 SLAM 문제의 해는 최소 자승 오차 최소화를 통해 얻어진다. 그래프 기반 SLAM은 포즈 그래프 또는 특징 그래프를 최적화하여 로봇의 총 궤도 뿐만 아니라 총 표식 위치를 추정할 수 있다.
그래프 기반 SLAM은 프런트 엔드와 백 엔드로 구성된다.
백 엔드 프로세스를 통해 그래프가 최적화될 수 있다. 비선형 최적화 문제는 백 엔드 단계에서 해결될 수 있다.
비선형 최적화 문제에 대한 몇 가지 방법이 제안되었다. 가장자리(엣지, edge)는 노드 간의 강체 변환을 통한 선형화를 통해 구성될 수 있다. 최적의 포즈는 백 엔드 단계에서 엣지의 선형화를 통해 계산될 수 있다. 로봇의 자세와 맵의 노드로 엣지(edge)를 구성하는 데 사용할 수 있는 또 다른 방법이 있다. 최적의 자세는 로봇의 포즈 노드와 지도 노드 사이의 엣지를 제거하여 최종 위상의 역 보조 정리 방법을 사용하여 얻어질 수 있다. 그래프 최적화는 Gauss-Newton 방법을 사용하여 수행되며 스파스 매트릭스의 역함수는 sparse Cholesky 인수 분해를 사용하여 효율적으로 계산될 수 있다.
프론트 엔드 과정는 그래프의 생성 과정을 포함할 수 있다. 포즈 및 특성 그래프를 만들 때,각 노드는 로봇 또는 표식의 위치를 나타내며,각 노드는 노드 또는 베어링 데이터와 유클리드 거리 간의 변화된 이동거리 정보를 포함할 수 있다. 강체 변형에 대한 정보가 얻어지면 루프 폐쇄 감지 전략과 스캔 등록이 사용될 수 있다. 루프 클로징(Loop closing) 검출 전략은 루프 클로징 엣지에서 아웃라이어를 제거할 수 있다.
다양한 Gaussian 분포의 최대값만을 사용함으로써, 다양한 Gaussian 분포가 최대 혼합 근사에 수렴하게 된다. 그런 다음 프런트 엔드 단계에서 아웃라이어를 제거할 수 있다. 동적 공분산 스케일링 (Dynamic Covariance Scaling)을 사용함으로써,에러 인 엣지의 크기를 조정하여 견고한 결과를 얻을 수 있다. Classification Expectation Maximization(EM)은 알고리즘에 잘못된 포즈 그래프를 제공하여 발생하는 루프 클로징 엣지 문제를 해결하는 데 도움이 된다.
ICP 알고리즘은 대개 스캔 등록 방법에 적용된다. 매칭을 수행하기 위해 ICP 알고리즘은 포인트-투-포인트 매칭으로 가장 가까운 점을 찾은 다음 매트릭스의 여러 계산을 통해 가장 가까운 점으로부터의 레퍼런스 이미지로 이미지를 생성한다. 두 가지 시간 단계가 있는 두 개의 스캐닝 이미지는 이동 로봇의 움직임으로 인해 동일하지 않다. ICP 알고리즘이 일치하지 않는 서로 다른 단계의 두 스캐닝 이미지로 작동하는 경우 두 이미지 간의 불일치 지점을 찾을 수 있다. 이동 로붓이 가로 지르는 거리가 증가함에 따라,부정확한 매칭으로 인해 그래프 구성이 오류를 포함할 수 있다.
3D에서 ICP의 견고성은 point-to-plane 연관성과 같은 개념을 통합함으로써 개선될 수 있다.
그래프 최적화 프로세스는 잘못된 스캔 등록으로 인해 그래프 구성에서 로봇의 위치를 나타내는 노드 간의 강체 변형에 관한 잘못된 정보의 문제로 어려움을 겪을 수 있다. TrICP 기법은 N개의 포인트(점) 쌍을 갖는 변환 행렬을 계산하는데, 이 쌍은 오름차순으로 쌍을 이루는 점들의 거리의 제곱에 따라 배열된다. 이렇게 하면 스캔 일치가 더 강력해진다. 기존에 제안된 방법은 RANSAC 알고리즘을 사용하여 아웃라이어(Outliers)를 제거한다. 최근 방법은 지수 오차 함수를 사용하여 아웃라이어와 잡음을 처리할 수 있다.
본 발명에서는 두 개의 이미지에서 아웃라이어를 제거하여 일치하지 않는 두 스캔 이미지를 일치시키는 ICP 아웃라이어 제거 방법을 제안한다. 제안된 알고리즘은 아웃라이어를 제거함으로써 두 스캔 이미지를 빠르게 수렴시킬 수 있으며, 알고리즘에 의해 생성된 견고한 대응점 쌍으로 인해 알고리즘의 계산 반복 횟수를 적게하여 효율적으로 계산할 수 있다. 아웃라이어 제거 알고리즘이 그래프 구성에 사용될 때 ICP 알고리즘의 스캔 이미지에 의해 생성된 그래프 노드 간의 불일치 문제는 ICP 아웃라이어 제거기법으로 수정될 수 있다. 그래프 노드를 사용한 엣지 생성 프로세스가 향상되고 오류 계산 기술을 사용하여 스캔 매칭 알고리즘의 불일치 그래프 노드로 인한 루프 클로징에 의한 엣지 생성도 견고하게 고정될 수 있다. 제안된 아웃라이어 제거 방법은 두 스캔 이미지가 일치하지 않는 경우 지수 함수의 모델링을 통해 불일치 부분을 강력하게 제거할 수 있다. ICP에서 이동 로봇의 거리를 기반으로 그래프를 구성하고 최적화하는 그래프 기반 SLAM 알고리즘이 동시에 설명될 수 있다.
ICP 알고리즘은 이미지 처리에 사용되며, 모바일 로봇에 적용되므로 포인트-투-포인트 스캔 매칭은 스캔 매칭 알고리즘을 대표한다. ICP 스캔 매칭은 기준 이미지(도 2의 Reference scan)와 데이터 이미지(스캔 이미지, 도 2의 Scan input)의 두 이미지를 스캔하여 서로 일치시키는 작업이다. 유클리드 거리에 기초하여 기준 이미지로부터 데이터 이미지의 가장 가까운 점을 식별한다.
다음의 표 1은 전반적인 ICP 알고리즘(알고리즘 I)을 보여준다.
Figure 112019102536371-pat00001
알고리즘에 사용된 표기법은 다음과 같다.
소문자는 숫자값이고 대문자는 변환 행렬을 나타낸다. 굵게 표시된 단어는 참조 데이터 및 이미지 데이터와 같은 데이터 세트이다. 마지막으로 대문자로 된 단어는 서브 루틴이다. M은 참조 이미지이고 X는 참조 이미지와 일치하는 데이터 이미지이다. 참조 이미지와 데이터 이미지에 N개의 포인트가 있는 경우, 수학식 1(식 (1))을 계산하여 참조 이미지의 각 포인트가 데이터 이미지의 가장 가까운 포인트에 매치된다.
Figure 112019102536371-pat00002
K-d tree 알고리즘은 가장 가까운 거리를 식별하고 두 이미지 간의 점 매칭을 위해 사용된다. 표 1에서 In line 5, R은 회전 행렬이고 T는 병진 행렬이다. 회전 및 병진 행렬을 얻기 위해 SVD(Singular Value Decomposition)가 사용된다. 수학식 1(식 (1))과 같이 정의된 오류 함수는 회전 행렬을 얻는데 사용된다.
Figure 112019102536371-pat00003
식 (2)의 오차 함수는 최소가 되어야하고,N_X는 데이터 영상의 모든 점이며, k(i)는 가장 가까운 점이 두 영상(이미지)에서 검색될 때 두 영상에서 일치하는 점이다. 회전 맵을 사용하여 참조 맵의 포인트와 쌍을 이룬 스캔 매칭 포인트의 중심점을 얻은 다음 변환 매트릭스를 얻을 수 있다.
Figure 112019102536371-pat00004
일치점과 쌍을 이루는 참조 점의 중심점은 c_M이고, 수학식 3(식 (3))의 일치점의 중심점은 c_X이다. 각 점과 중심점 사이의 거리는 각각 M'와 D'로 정의된다.
SVD를 사용하려면 행렬 H를 먼저 정의한 다음 SVD를 수학식 4(식 (4))에 사용할 수 있다.
Figure 112019102536371-pat00005
회전 행렬 R은 수학식 5(식 (5))로 주어진다.
Figure 112019102536371-pat00006
행렬 R은 일치하는 데이터에 적용되고 변환 행렬은 수학식 6(식 (6))과 같이 얻어진다.
Figure 112019102536371-pat00007
변환된 스캔 이미지는 의사 코드의 line 6에 나타난 바와 같이 회전 및 변환 행렬을 사용하여 얻어진다. 알고리즘의 종료 조건은 오류값이 오류 임계값 미만이거나 반복이 끝에 도달하면 활성화된다(line 7 및 8 참조).
특히, 이동 로봇의 강체 변형을 위해 종래의 ICP를 사용하는 경우에, 이동 로봇의 스캔 센서로부터 얻은 스캔 이미지와 기준 이미지의 차이로부터 ICP의 가장 가까운 포인트를 찾을 때 대응 포인트 쌍이 실패하는 문제가 있다. 제안된 ICP 아웃라이어 제거는 두 스캔 이미지 간에 상당한 차이가 있는 경우에도 견고하게 사용될 수 있다.
하나의 연구는 TrICP를 사용하여 기존의 ICP를 두 개의 3D 이미지와 매칭을 수행함으로써 하나의 모델 형태를 개혁했다. TrICP는 Outlier Rejection 알고리즘을 사용하며 M개의 점 쌍을 가진 변환 행렬은 오름차순으로 쌍을 이루는 점들 사이의 거리의 제곱을 구한 후에 계산된다. 제안된 최근 방법은 아웃라이어와 잡음을 처리하기 위해 지수 함수를 모델링한다. 그러나 환경의 다른 스캐닝 데이터가 일치할 때,TrICP와 최근 방법은 두 개의 겹치는 데이터로 로컬 미니멈(local minimum)문제에 직면한다.
로컬 미니멈 문제를 해결하기 위해 아웃라이어 제거 함수를 모델링하는 아웃라이어 제거 방법을 제안한다. ICP 아웃라이어 제거는 그래프 기반 SLAM을 적용하여 환경 맵을 작성한다.
Figure 112019102536371-pat00008
알고리즘 II는 ICP 아웃라이어 제거 알고리즘 요약을 나타내며, 그 과정은 도 2, 도 3, 도 4에 나타나 있다.
도 2의 (a)는 두 스캔 이미지를 나타내고, (b)는 샘플 포인트에서 가장 가까운 점(포인트)을 찾는 과정을 나타낸다.
두 스캔 이미지는 도 2의 (a)와 도 3의 (b)에 나와 있으며,의사 코드에서 3 line부터 5 line까지의 과정을 보여준다. 각 점에서 가장 가까운 점을 찾는 방법은 ICP에서 사용된 K-d 트리 알고리즘의 방법과 동일할 수 있다.
도 3에서, (a)는 아웃라이어 선택 단계를 나타내고,(b)는 아웃라이어의 제거를 나타낸다.
도 3은 ICP 이상치 제거 알고리즘의 의사 코드에서 5 line부터 8 line까지의 과정을 보여준다.
전체 프로세스는 유클리드 거리를 사용하여 서로 쌍을 이루는 점 사이의 거리를 구한다. 거리가 임계값을 초과하면 알고리즘은 이를 아웃라이어로 선택하고 제거(거부)할 수 있다(도 3의 (b) 참조).
수학식 7(식 (7))에서 w_(i)에 오차 함수가 추가되어 아웃라이어를 제거한다. 각 점 쌍의 거리는 수학식(식 (8))에서 계산된다.
Figure 112019102536371-pat00009
Figure 112019102536371-pat00010
Figure 112019102536371-pat00011
Outlier Rejection 함수는 수학식 9(식 (9))와 같이 거리 임계값을 계산하기 위해 설정된다. α는 초기 점과 점 사이의 거리를 나타내는 파라미터로써 초기 매칭에서의 거리 임계값이다. β는 감쇠 상수이고 음의 값을 가지므로, 해당 점 쌍의 일치하지 않는 점을 거부하여 거리 임계값을 강하게 감소시킬 수 있다. 지수 아웃라이어 제거 기능은 로컬 미니멈을 효율적으로 극복할 수 있다. 반복 횟수가 증가함에 따라 오차 함수는 오차가 줄어드는 방향의 최적의 값으로 수렴할 수 있다.
Figure 112019102536371-pat00012
Figure 112019102536371-pat00013
거리 임계값과 d(i) 사이의 차이는 수학식 10(식 (10))과 같이 얻어진다. 수학식 11(식 (11))의 함수 w(i)는 s(i)가 양수인지 아닌지를 반영하는 이진값을 가진다.
다음 단계는 ICP 알고리즘과 동일하며 결과는 도 4와 같이 병진 행렬로 얻어진다. 이 프로세스는 두 스캔 이미지가 수렴되어 일치할 때까지 계속될 수 있다.
도 4는 일치점의 데이터에 병진 행렬 적용을 나타낸다.
오류 함수의 값이 오류 함수의 임계 값보다 낮으면 수렴 과정에서 반복이 종료된다. 다음으로,에러 함수로부터의 스캔 매칭이 성공했는지 여부를 알 수 있다. 알고리즘은 수학식 7(식 (7)) 또는
Figure 112019102536371-pat00014
에서 오류 함수의 값을 계산함으로써 스캔 이미지와 참조 이미지가 서로 일치하고 수렴 조건이 충족될 때 반복을 종료한다. 오류값을 적절하게 선택하고 오류 계산을 사용하여 임계값에 빨리 도달하면 알고리즘 반복 횟수를 줄여야 한다.
SLAM은 로봇의 위치 파악과 지도작성에 사용되는 알고리즘이다. 다양한 SLAM 알고리즘 중에서 그래프 기반 SLAM은 로봇의 위치를 하나의 노드로 묘사하고 두 노드 사이에 가장자리(엣지, edge)를 만든다.
알고리즘은 일치 프로세스에 대해 두 단계를 요구하며,하나는 구성된 그래프의 최적화이다.
도 5는 노드 x_i에 대해 측정된 노드 x_j에 대한 프로세스 다이어그램을 나타낸다.
도 5는 위치 xi로부터 위치 xj까지의 거리를 측정하기 위해 사용되는 프로세스를 도시한다. 위치 xi 및 xj는 노드라고 한다. <zij, Ωij>는 노드 xi에서 xj까지 측정된 차이와 공분산 행렬의 역함수이다. zij는 노드 xi에서 xj까지의 차이에 대한 예상 데이터이다. eij(xi, xj)는 수학식 12(식 (12))와 같이 측정 데이터와 추정 데이터의 차이에 대한 오차 함수로 정의된다.
Figure 112019102536371-pat00015
zij에 대한 로그 우도는 수학식 13(식 (13))에 주어진다.
Figure 112019102536371-pat00016
수학식 14(식 (14))는 에러 함수 eij(xi, xj)를 갖는 Fij(x)를 도시한다. Fij(x)는 수학식 13과 수학식 12로부터 얻어진다.
Figure 112019102536371-pat00017
로그 우도의 최대 확률에 대한 로봇의 위치를 얻기 위해 Gauss-Newton 방법을 사용하여 수학식 15(식 (15))에서 F(x)가 최소가 될 때 수학식 16(식 (16))의 값 x*가 위치가 된다.
Figure 112019102536371-pat00018
Figure 112019102536371-pat00019
추정된 위치는
Figure 112019102536371-pat00020
이고, 최적의 위치는 x*이며, 추정된 위치로부터 최적의 위치의 위치 변화는 Δx로 정의된다.
Figure 112019102536371-pat00021
, x*, Δx 사이의 관계는 수학식 17(식 (17))과 같다.
Figure 112019102536371-pat00022
테일러 확장은 수학식 17을 대입하여 수학식 18에 eij(
Figure 112019102536371-pat00023
)와 Δx를 주는 수학식 12에서 수행된다.
Figure 112019102536371-pat00024
여기서, Jij는 eij의 Jacobian 행렬이다. 수학식 20(식 (20))은 수학식 19(식 (19))를 대체하여 수학식 15로부터 얻어진다.
Figure 112019102536371-pat00025
Figure 112019102536371-pat00026
c = Σcij, b = Σbij, H = ΣHij는 각각 하나의 대문자로 표현된다.
Δx가 최소가 되면에 따라 수학식 21(식 (21)), 수학식 22(식 (22)), 수학식 23(식 23))은 다음과 같이 얻어진다.
Figure 112019102536371-pat00027
Figure 112019102536371-pat00028
Figure 112019102536371-pat00029
다음의 표 3에 나타난 알고리즘 III은 ICP 이상치 거부 요약을 사용하는 그래프 기반 SLAM을 나타낸다.
Figure 112019102536371-pat00030
X는 수학식 24(식 (24))를 사용하여 추정된 이동 로봇의 위치이다. 수학식 25(식 (25))는 노드 간의 측정 데이터와 ICP 아웃라이어 제거(Outlier Rejection)를 사용한 강체 변형을 나타낸다. 수학식 23은 강체 변형을 나타낸다.
Figure 112019102536371-pat00031
Figure 112019102536371-pat00032
in line 4의 오차 함수는 수학식 26(식 (26))에 의해 주어지며, Aij와 Bij는 수학식 27(식 (27))에 의해 주어진 오차 함수의 Jacobian 행렬이다.
Figure 112019102536371-pat00033
Figure 112019102536371-pat00034
행렬 H와 벡터 b는 수학식 22, 알고리즘 III의 line 5, line 6과 상관 관계가 있다. H와 b를 최적화하는 과정은 수학식 23, 알고리즘 III의 line 8, line 9에 나타나 있다.
도 6에서,(a)는 Robotnik의 RB-1 BASE를 나타내고,(b)는 SICK의 NAV350를 나타내고,(c)는 NAV350이 장착된 로봇을 나타낸다.
이 실험에서 사용 된 로봇은 Robotnik의 RB-1 BASE로, 크기는 500mm×500mm×251mm이다. 50kg의 적재 용량,4세대 인텔 i7 프로세서 및 8GB RAM이 특징이다. 최대 속도는 1.5m/s이며 로봇에 장착된 엔코더 센서를 사용하여 주행 거리 데이터를 측정할 수 있다. 로봇에 장착된 스캔 센서는 SICK의 레이저 거리 측정기(LRF)인 NAV350이며 최대 범위 250m 및 360°이며 분해능은 0.25°이다.
이 실험은 스캔 센서인 NAV350(도 6의 (c))이 장착된 로봇 RB-1 BASE를 사용하여 수행되었으며 이 로봇을 사용하여 주어진 환경에 대한 범위 데이터를 얻었다. 실험 환경을 도 7에 나타내었으며,원시 오도메트리와 범위 데이터는 인코더 센서와 LRF에서 각각 얻어졌다.
원시 데이터로 인코더에서 얻은 주행 기록 데이터는 초기 추정에 사용되며 ICP 또는 ICP 아웃라이어 제거 알고리즘에서 초기의 점을 변형시킬 때 사용하였다. 루프 클로징 프로세스는 로봇이 시작된 위치에서 돌아오는 로봇의 인식으로 정의된다. 노드의 서브맵이 계속 생성되고 참조 맵의 노드와 일치하는 서브맵의 노드가 일치 거리의 범위에 있는 경우 스캔 매칭 알고리즘이 수행된다. 오류값이 오류 임계값보다 작으면 같은 장소라고 인식하여 루프 클로징에 대한 엣지가 형성된다.
도 8은 알고리즘 비교 I를 나타내며,도 8에서,(a)는 비교 실시예의 ICP 알고리즘을 나타내고, (b)는 TrICP를 나타내고, (c)는 수학식 19에 기초한 기존 기법을 나타내고, (d)는 본 발명에서 제안된 ICP 아웃라이어 제거 알고리즘을 나타낸다.
도 9는 알고리즘 비교 II를 나타내며,도 9에서,(a)는 비교 실시예의 ICP 알고리즘을 나타내고, (b)는 TrICP를 나타내고,(c)는 기존 기법을 나타내고, (d)는 본 발명에서 제안된 ICP 아웃라이어 제거 알고리즘을 나타낸다.
스캔 매칭 프로세스의 결과와 관련하여 다른 ICP 방법과 본 발명에서 제안된 ICP 아웃라이어 제거 알고리즘을 비교한 결과를 도 8 및 도 9에 나타내었다.
제안된 ICP 이상치 제거 알고리즘은 기존의 ICP 알고리즘 및 최근 방법인 TrICP보다 더 정확한 결과를 가져오는 정확한 수렴을 달성한다는 것을 알 수 있다. 다른 ICP 방법은 지역 최소치에 해당한다. 대조적으로,제안된 ICP 아웃라이어 제거는 로컬 미니멈에 빠지지 않고 최적의 매칭값으로 수렴하였다.
도 10은 ICP 아웃라이어 제거 알고리즘이 아웃라이어를 제거하여 최적의 값으로 수렴하는 반면, 기존의 ICP 알고리즘은 로컬 미니멈 문제로 최적의 값으로 수렴을 달성하지 못했다는 것을 보여준다. 도 10는 기존의 ICP 알고리즘과 ICP 아웃라이어 제거 알고리즘의 비교를 보여주는 오류 (m) 수렴에 대한 그래프(40회 이상 반복 기록됨)를 나타낸다. 실선은 기존의 ICP 알고리즘의 오류 수렴을 나타내며, 점선은 제안된 ICP 아웃라이어 제거 알고리즘의 오류 수렴을 나타낸다.
Figure 112019102536371-pat00035
도 11은 기존의 ICP 알고리즘을 사용한 그래프 기반 SLAM의 결과를 나타낸다. 빨간색 선은 기존 ICP 알고리즘 주행 거리 정보를 사용하여 로봇 주행 거리를 최적화한 것을 나타낸다. 파란색 선은 일반적인 ICP 알고리즘을 사용하여 얻은 루프 닫는 루프클로징에 대한 엣지를 나타낸다. 검은색 선은 프런트 엔드에서 오류가 있는 맵을 나타낸다.
그래프는 ICP 아웃라이어 제거 알고리즘을 사용하여 구성되었다. 작성된 그래프는 그래프 최적화가 성공했는지 여부를 나타낸다.
도 11은 기존의 ICP 알고리즘으로 그래프를 구성한 후의 그래프 최적화 결과이다. 구식 ICP 알고리즘은 실패했다. 그래프 구성이 루프 클로징 엣지를 구성하는데 어려움을 겪었으므로 그래프 최적화가 실패했다.
도 12는 ICP 아웃라이어 제거 알고리즘을 이용한 그래프 기반 SLAM의 결과를 나타낸다. 빨간색 선은 기존 ICP 알고리즘 주행 거리 정보를 사용하여 로봇 주행 거리를 최적화한 것을 나타낸다. 파란색 선은 일반적인 ICP 알고리즘을 사용하여 얻은 루프 클로징 엣지을 나타낸다. 검은 선은 지도를 나타낸다.
도 12는 ICP 이상치 제거 알고리즘을 사용하여 그래프를 구성한 그래프 최적화 결과를 보여준다. 그래프는 394개의 노드와 1,523개의 엣지로 구성된다.
도 13은 그래프 최적화된 SLAM과 참조 맵의 결과를 보여준다. 기준 지도와 그래프 기반 SLAM을 사용하여 얻은 지도를 비교하면 높이가 11.9m이고 폭이 68.0m 인 것으로 나타났으며,기준 지도에서 0.15m와 0.1m의 오차가 각각 발생했다. 이 비교는 ICP 아웃라이어 제거 알고리즘을 사용한 그래프 기반 SLAM욜 사용한 그래프 구성이 성공적이었음을 보여준다.
잘못된 그래프 작성으로 인한 매핑 실패 문제를 해결하기 위해 ICP 아웃라이어 제거 제안한다. 스캔 매칭에 의해 얻어진 2개의 스캔 이미지 간에는 사소한 차이가 있지만, 아웃라이어 제거 알고리즘은 2개의 이미지를 강건하게 매칭한다는 것을 알 수 있다. 그래프 최적화 결과는 노드로부터의 루프 클로징 엣지 및 엣지의 구성이 그래프 구성 중에 ICP 아웃라이어 제거 알고리즘에 의해 견고하게 수행된다는 것을 증명한다. 그러나, ICP 아웃라이어 제거 알고리즘은 로봇이 회전하는 동안 일치하는 결과를 생성하기 위해 적절한 초기 추측을 필요로 한다. 본 발명과 관련하여, 수행된 현장 테스트 및 실험의 결과는 ICP 아웃라이어 제거 알고리즘이 강인한 결과를 얻을 수 있음을 보여준다.
이상에서 살펴본 각종 알고리즘을 자동으로 수행하기 위해 도 1에 도시된 처리 장치는 획득부, 설정부, 제거부, 조작부를 포함할 수 있다. 도 1에는 그래프 기반 SLAM(Simultaneous Localization and Mapping)용 처리 장치가 도시된다.
획득부는 스캔 이미지를 획득할 수 있다. 획득부는 레이저 거리 측정기 등의 각종 측정 수단으로부터 획득된 물리적 특성과 관련된 수치, 예를 들어 측정 수단과 측정 대상물 간의 거리, 각도 등을 입수하고, 물리적 특성 수치를 이용해서 스캔 이미지를 생성할 수 있다. 예를 들어, 획득부는 거리 측정 센서로부터 거리 정보를 획득하고, 거리 정보를 이용해서 스캔 이미지를 생성할 수 있다. 또는 획득부는 별도의 스캔 이미지 생성 수단으로부터 스캔 이미지를 전달받을 수 있다.
설정부는 스캔 이미지를 기준 이미지와 비교하고, 비교를 통해 매칭 포인트를 설정할 수 있다. 기준 이미지는 획득부를 통해 스캔 이미지와 함께 획득되거나 자체적으로 기저장된 상태에서 독출될 수 있다.
설정부는 스캔 이미지와 기준 이미지 중 어느 하나에 대해 샘플 포인트를 설정하고, 나머지 하나에서 샘플 포인트에 가장 가까운 특정 포인트를 설정할 수 있다. 이때, 매칭 포인트는 가장 가까운 관계에 있는 샘플 포인트와 특정 포인트를 지칭할 수 있다. 또는 매칭 포인트는 샘플 포인트에 가장 가까운 특정 포인트를 지칭할 수 있다. 도 2에서 샘플 포인트는 스캔 이미지에 설정되고 있으며, 해당 샘플 포인트에 가장 가까운 매칭 포인트가 기준 이미지에 설정되고 있다.
설정부는 샘플 포인트에 대해 가장 가가운 상대 포인트를 찾는 알고리즘을 이용해 스캔 이미지와 기준 이미지에서 서로 쌍을 이루는 매칭 포인트를 설정할 수 있다.
제거부는 매칭 포인트가 서로 불일치하는 아웃라이어(outlier)를 제거할 수 있다.
제거부에는 아웃라이어를 검출하는 검출 수단이 마련될 수 있다.
검출 수단은 스캔 이미지와 기준 이미지 중 어느 하나에서 선택된 샘플 포인트에 대해 비매칭되는 포인트가 스캔 이미지와 기준 이미지 중 나머지 하나에 존재하면, 비매칭되는 포인트를 아웃라이어로 설정할 수 있다. 비매칭 포인트의 대상은 단일의 샘플 포인트에 대해 존재하는 복수의 상대 포인트, 샘플 포인트에 대해 임계값을 초과하는 거리를 갖는 특정 포인트 등이 될 수 있다.
일 예로, 검출 수단은 스캔 이미지와 기준 이미지 중 어느 하나에서 선택된 샘플 포인트를 최단 거리로 하는 상대 포인트가 복수이면, 복수의 상대 포인트 중 적어도 하나를 아웃라이어로 설정할 수 있다.
이때, 복수의 상대 포인트 중 정상적인 매칭 포인트 바로 다음의 상대 포인트는 검출 수단에 의해 아웃라이어에서 배제되고 정상적인 매칭 포인트로 처리될 수 있다.
정상적인 매칭 포인트는 특정 샘플 포인트와 해당 특정 샘플 포인트에 대한 상대 포인트가 일대일로 대응되는 관계에 있는 포인트를 의미할 수 있다.
일 예로, 검출 수단은 유클리드 거리를 사용하여 매칭 관계에 있는 포인트 사이의 거리를 산출할 수 있다. 검출 수단은 산출된 거리가 임계값을 초과하는 특정 포인트를 아웃라이어로 설정할 수 있다. 이때, 해당 임계값은 각 매칭 포인트 간의 평균 거리보다 클 수 있다. 임계값을 초과하는 거리를 갖는 특정 포인트는 스캔 이미지와 기준 이미지를 서로 수렴시킬 때, 상대 포인트에 심각하게 어긋난 상태가 유지될 것이기 때문에, 아웃라이어로 설정할 이유가 충분하다.
조작부는 아웃라이어가 제거된 상태에서, 스캔 이미지와 기준 이미지를 일치시킬 수 있다.
조작부는 스캔 이미지와 기준 이미지가 수렴되어 서로 일치할 때까지 스캔 이미지와 기준 이미지 간의 일치점의 데이터에 병진 행렬을 적용할 수 있다. 병진 행렬의 적용을 통해 스캔 이미지와 기준 이미지는 서로 일치할 때까지 가까워질 수 있다. 이때, 모든 점이 서로 완전히 일치하기는 어려우며, 앞에서 살펴본 수학식에 근거해서 최대한 많은 점이 일치하는 지점에서 병진 행렬의 적용이 중지될 수 있다. 다시 말해, 조작부는 스캔 이미지와 기준 이미지에서 최대 개수의 포인트가 서로 일치할 때 상기 병진 행렬의 적용을 중지할 수 있다.
도 14는 본 발명의 처리 방법을 나타낸 흐름도이다.
도 14에 도시된 처리 방법은 도 1에 도시된 그래프 기반 SLAM(Simultaneous Localization and Mapping)용 처리 장치에 의해 수행될 수 있다.
본 발명의 처리 방법은 획득 단계(S 510), 설정 단계(S 520), 제거 단계(S 530)를 포함할 수 있다.
획득 단계(S 510)는 측정 수단, 측정 센서로부터 획득된 2개의 이미지, 구체적으로 스캔 이미지와 기준 이미지를 획득할 수 있다. 이때, 기준 이미지는 사전에 획득되어 저장 수단에 저장된 상태일 수도 있다. 물론, 기준 이미지는 스캔 이미지와 유사하게 측정 센서에 의해 새롭게 획득되어도 무방하다. 일 예로, 획득 단계(S 510)는 레이저 거리 측정기로부터 출력된 거리 정보를 이용해서 스캔 이미지 또는 기준 이미지를 생성할 수 있다.
설정 단계(S 520)는 스캔 이미지와 기준 이미지의 매칭 포인트를 설정할 수 있다.
제거 단계(S 530)는 매칭 포인트가 서로 불일치하는 아웃라이어를 설정하고, 아웃라이어를 제거할 수 있다. 제거 단계(S 530)는 스캔 이미지와 기준 이미지 중 어느 하나에서 선택된 샘플 포인트를 최단 거리의 포인트로 하는 상대 포인트가 복수이면, 복수의 상대 포인트 중 적어도 하나를 아웃라이어로 설정될 수 있다. 아웃라이어로 설정된 상대 포인트는 제거될 수 있다. 제거 단계(S 530)는 복수의 상대 포인트 중 정상적인 매칭 포인트 바로 다음의 상대 포인트를 아웃라이어에서 배제하고 정상적인 매칭 포인트로 처리할 수 있다. 정상적인 매칭 포인트로 처리된 상대 포인트는 제거되지 않고 병진 행렬의 적용 대상이 될 수 있다.
도 15는 본 발명의 실시예에 따른, 컴퓨팅 장치를 나타내는 도면이다. 도 15의 컴퓨팅 장치(TN100)는 본 명세서에서 기술된 장치(예, 처리 장치 등) 일 수 있다.
도 15의 실시예에서, 컴퓨팅 장치(TN100)는 적어도 하나의 프로세서(TN110), 송수신 장치(TN120), 및 메모리(TN130)를 포함할 수 있다. 또한, 컴퓨팅 장치(TN100)는 저장 장치(TN140), 입력 인터페이스 장치(TN150), 출력 인터페이스 장치(TN160) 등을 더 포함할 수 있다. 컴퓨팅 장치(TN100)에 포함된 구성 요소들은 버스(bus)(TN170)에 의해 연결되어 서로 통신을 수행할 수 있다.
프로세서(TN110)는 메모리(TN130) 및 저장 장치(TN140) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(TN110)는 중앙 처리 장치(CPU: central processing unit), 그래픽 처리 장치(GPU: graphics processing unit), 또는 본 발명의 실시예에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 프로세서(TN110)는 본 발명의 실시예와 관련하여 기술된 절차, 기능, 및 방법 등을 구현하도록 구성될 수 있다. 프로세서(TN110)는 컴퓨팅 장치(TN100)의 각 구성 요소를 제어할 수 있다.
메모리(TN130) 및 저장 장치(TN140) 각각은 프로세서(TN110)의 동작과 관련된 다양한 정보를 저장할 수 있다. 메모리(TN130) 및 저장 장치(TN140) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(TN130)는 읽기 전용 메모리(ROM: read only memory) 및 랜덤 액세스 메모리(RAM: random access memory) 중에서 적어도 하나로 구성될 수 있다.
송수신 장치(TN120)는 유선 신호 또는 무선 신호를 송신 또는 수신할 수 있다. 송수신 장치(TN120)는 네트워크에 연결되어 통신을 수행할 수 있다.
한편, 본 발명의 실시예는 지금까지 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 상술한 실시예의 기재로부터 본 발명이 속하는 기술 분야의 통상의 기술자라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 통상의 기술자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
110...획득부 130...설정부
150...제거부 170...조작부

Claims (15)

  1. 그래프 기반 SLAM(Simultaneous Localization and Mapping)용 처리 장치에 있어서,
    스캔 이미지를 획득하는 획득부;
    상기 스캔 이미지를 기준 이미지와 비교하고, 상기 비교를 통해 매칭 포인트를 설정하는 설정부;
    상기 매칭 포인트가 서로 불일치하는 아웃라이어(outlier)를 제거하는 제거부;를 포함하고,
    상기 아웃라이어를 검출하는 검출 수단이 마련되고,
    상기 검출 수단은 상기 스캔 이미지와 상기 기준 이미지 중 어느 하나에서 선택된 샘플 포인트를 최단 거리의 포인트로 하는 상대 포인트가 복수이면, 복수의 상대 포인트 중 적어도 하나를 상기 아웃라이어로 설정하며,
    상기 검출 수단은 상기 어느 하나의 선택된 샘플 포인트에 대한 복수의 상기 상대 포인트 중 정상적인 매칭 포인트 바로 다음의 상대 포인트를 상기 아웃라이어에서 배제하고 정상적인 매칭 포인트로 처리하는 처리 장치.
  2. 제1항에 있어서,
    상기 획득부는 거리 측정 센서로부터 거리 정보를 획득하고, 상기 거리 정보를 이용해서 상기 스캔 이미지를 생성하는 처리 장치.
  3. 제1항에 있어서,
    상기 설정부는 샘플 포인트에 대해 가장 가까운 상대 포인트를 찾는 알고리즘을 이용해 상기 스캔 이미지와 상기 기준 이미지에서 서로 쌍을 이루는 상기 매칭 포인트를 설정하는 처리 장치.
  4. 제1항에 있어서,
    상기 검출 수단은 상기 스캔 이미지와 상기 기준 이미지 중 어느 하나에서 선택된 샘플 포인트에 대해 비매칭되는 포인트가 상기 스캔 이미지와 상기 기준 이미지 중 나머지 하나에 존재하면, 상기 비매칭되는 포인트를 상기 아웃라이어로 설정하는 처리 장치.
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 검출 수단은 상기 정상적인 매칭 포인트로 처리된 상대 포인트를 제외한 나머지 모든 상대 포인트를 아웃라이어로 설정하고,
    상기 제거부는 상기 아웃라이어를 모두 제거하는 처리 장치.
  8. 제1항에 있어서,
    상기 검출 수단은 유클리드 거리를 사용하여 매칭 관계에 있는 포인트 사이의 거리를 산출하며,
    상기 검출 수단은 산출된 상기 거리가 임계값을 초과하는 특정 포인트를 상기 아웃라이어로 설정하는 처리 장치.
  9. 제1항에 있어서,
    상기 아웃라이어가 제거된 상태에서, 상기 스캔 이미지와 상기 기준 이미지를 일치시키는 조작부가 마련되고,
    상기 조작부는 상기 스캔 이미지와 상기 기준 이미지가 수렴되어 서로 일치할 때까지 상기 스캔 이미지와 상기 기준 이미지 간의 일치점의 데이터에 병진 행렬을 적용하는 처리 장치.
  10. 제9항에 있어서,
    상기 조작부는 상기 스캔 이미지와 상기 기준 이미지에서 최대 개수의 포인트가 서로 일치할 때 상기 병진 행렬의 적용을 중지하는 처리 장치.
  11. 제9항에 있어서,
    상기 조작부는 상기 스캔 이미지와 상기 기준 이미지를 서로 근접시켜 최대한 서로 일치시키고,
    로봇의 위치를 노드로 정의할 때,
    상기 조작부는 상기 스캔 이미지와 상기 기준 이미지가 서로 일치된 상태에서, 상기 스캔 이미지에 대한 노드와 상기 기준 이미지에 대한 노드를 이용해서 상기 로봇의 자기 위치를 산출하는 처리 장치.
  12. 그래프 기반 SLAM(Simultaneous Localization and Mapping)용 처리 장치에 의해 수행되는 처리 방법에 있어서,
    스캔 이미지와 기준 이미지를 획득하는 획득 단계;
    상기 스캔 이미지와 상기 기준 이미지의 매칭 포인트를 설정하는 설정 단계;
    상기 매칭 포인트가 서로 불일치하는 아웃라이어를 설정하고, 상기 아웃라이어를 제거하는 제거 단계;를 포함하고,
    상기 제거 단계는 상기 스캔 이미지와 상기 기준 이미지 중 어느 하나에서 선택된 샘플 포인트를 최단 거리의 포인트로 하는 상대 포인트가 복수이면, 복수의 상대 포인트 중 적어도 하나를 상기 아웃라이어로 설정하며,
    상기 제거 단계는 복수의 상기 상대 포인트 중 정상적인 매칭 포인트 바로 다음의 상대 포인트를 상기 아웃라이어에서 배제하고 정상적인 매칭 포인트로 처리하는 처리 방법.
  13. 제12항에 있어서,
    상기 획득 단계는 레이저 거리 측정기로부터 출력된 거리 정보를 이용해서 상기 스캔 이미지를 생성하는 처리 방법.
  14. 삭제
  15. 삭제
KR1020190124394A 2019-10-08 2019-10-08 처리 장치 및 처리 방법 KR102206314B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190124394A KR102206314B1 (ko) 2019-10-08 2019-10-08 처리 장치 및 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190124394A KR102206314B1 (ko) 2019-10-08 2019-10-08 처리 장치 및 처리 방법

Publications (1)

Publication Number Publication Date
KR102206314B1 true KR102206314B1 (ko) 2021-01-22

Family

ID=74307786

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190124394A KR102206314B1 (ko) 2019-10-08 2019-10-08 처리 장치 및 처리 방법

Country Status (1)

Country Link
KR (1) KR102206314B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170056672A (ko) * 2014-09-18 2017-05-23 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 표면 재구성에서의 자유 형태 변형의 사용
KR101738750B1 (ko) 2015-06-11 2017-05-24 한국과학기술원 실외 환경에서의 강인한 위치 인식 방법 및 장치
KR20180117879A (ko) * 2017-04-20 2018-10-30 한국과학기술원 그래프 구조 기반의 무인체 위치 추정 장치 및 그 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170056672A (ko) * 2014-09-18 2017-05-23 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 표면 재구성에서의 자유 형태 변형의 사용
KR101738750B1 (ko) 2015-06-11 2017-05-24 한국과학기술원 실외 환경에서의 강인한 위치 인식 방법 및 장치
KR20180117879A (ko) * 2017-04-20 2018-10-30 한국과학기술원 그래프 구조 기반의 무인체 위치 추정 장치 및 그 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Francois Pomerleau ET AL:"Comparing ICP variants on real-world data sets", Autonomous Robots, vol. 34, no. 3, pp. 133-148, 14 Feb. 2013(2013.02.14.) 1부.* *

Similar Documents

Publication Publication Date Title
Doherty et al. Multimodal semantic slam with probabilistic data association
CN112985416B (zh) 激光与视觉信息融合的鲁棒定位和建图方法及系统
Cox Blanche: Position estimation for an autonomous robot vehicle
Olson et al. Robust range-only beacon localization
Liang et al. Visual laser-SLAM in large-scale indoor environments
CN108332752B (zh) 机器人室内定位的方法及装置
Bosse ATLAS: a framework for large scale automated mapping and localization
CN112444246B (zh) 高精度的数字孪生场景中的激光融合定位方法
WO2007069724A1 (ja) 三次元形状データの位置合わせ方法と装置
Yap et al. SLAM in large indoor environments with low-cost, noisy, and sparse sonars
An et al. SLAM with salient line feature extraction in indoor environments
WO2019136613A1 (zh) 机器人室内定位的方法及装置
TWI772743B (zh) 資訊處理裝置以及移動機器人
WO2022110767A1 (zh) 定位与地图构建方法、装置、机器人及计算机存储介质
Burguera et al. Probabilistic sonar scan matching for robust localization
Sohn et al. An efficient localization algorithm based on vector matching for mobile robots using laser range finders
Donoso-Aguirre et al. Mobile robot localization using the Hausdorff distance
KR102206314B1 (ko) 처리 장치 및 처리 방법
Zikos et al. L-SLAM: Reduced dimensionality FastSLAM with unknown data association
WO2018085766A1 (en) Mobile network localization
US10572802B1 (en) Learning state-dependent sensor measurement models for localization
Pedrosa et al. A non-linear least squares approach to SLAM using a dynamic likelihood field
Choi et al. Metric SLAM in home environment with visual objects and sonar features
Tully et al. Hybrid localization using the hierarchical atlas
Spampinato et al. Deep learning localization with 2D range scanner

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant