KR20210119133A - 딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇 - Google Patents

딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇 Download PDF

Info

Publication number
KR20210119133A
KR20210119133A KR1020200035622A KR20200035622A KR20210119133A KR 20210119133 A KR20210119133 A KR 20210119133A KR 1020200035622 A KR1020200035622 A KR 1020200035622A KR 20200035622 A KR20200035622 A KR 20200035622A KR 20210119133 A KR20210119133 A KR 20210119133A
Authority
KR
South Korea
Prior art keywords
posture
processing unit
mobile robot
initial
image sensor
Prior art date
Application number
KR1020200035622A
Other languages
English (en)
Other versions
KR102352088B1 (ko
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 KR1020200035622A priority Critical patent/KR102352088B1/ko
Publication of KR20210119133A publication Critical patent/KR20210119133A/ko
Application granted granted Critical
Publication of KR102352088B1 publication Critical patent/KR102352088B1/ko

Links

Images

Classifications

    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

Abstract

본 실시예들은 이미지 기반의 자세 회귀 모델을 이용하여 추정된 카메라 자세 정보를 거리 측정 센서의 초기 자세 정보로 변환하고 전체 영역이 아닌 초기 자세 정보의 주변 영역으로부터 파티클 필터 모델을 통해 위치를 인식하여, 로봇이 충돌 또는 다른 물체에 의해 임의의 위치로 이동되어 위치 인식에 실패한 상황에서도 초기 위치를 다시 설정하여 재 위치 인식(Re-localization)을 신속하게 수행할 수 있는 이동 로봇을 제공한다.

Description

딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇 {Mobile Robot and 3D Global Position Recognition Apparatus Using Pose Estimation Based on Deep Learning}
본 실시예가 속하는 기술 분야는 이미지와 클라우드 포인트를 처리하는 위치 인식 장치 및 이동 로봇에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
대부분의 라이다(LiDAR) 기반 전역 위치 인식 방식에서 초기 위치를 얻기 위해서 다른 센서를 사용하게 한다. 주로 GPS(Global Positioning System)를 많이 사용하지만 실내, 고층 건물 사이와 같이 GPS 음영 지역이 많은 도심 환경에서는 GPS를 사용할 수 없는 문제가 있다.
한국등록특허공보 제10-2029850호 (2019.10.01.) 한국공개특허공보 제10-2019-0131207호 (2019.11.26.) 한국등록특허공보 제10-1538775호 (2015.07.16.) 한국등록특허공보 제10-1107735호 (2012.01.12.)
본 발명의 실시예들은 이미지 기반의 자세 회귀 모델을 이용하여 추정된 카메라 자세 정보를 거리 측정 센서의 초기 자세 정보로 변환하고 전체 영역이 아닌 초기 자세 정보의 주변 영역으로부터 파티클 필터 모델을 통해 위치를 인식하여, 로봇이 충돌 또는 다른 물체에 의해 임의의 위치로 이동되어 위치 인식에 실패한 상황에서도 초기 위치를 다시 설정하여 재 위치 인식(Re-localization)을 신속하게 수행하는 데 주된 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
본 실시예의 일 측면에 의하면, 이동 로봇에 있어서, 이미지를 획득하는 이미지 센서, 포인트 클라우드를 획득하는 거리 측정 센서, 상기 이미지와 상기 포인트 클라우드를 처리하여 지도에서 상기 이동 로봇의 위치를 출력하는 처리부, 및 상기 지도에 따라 상기 이동 로봇을 이동시키는 이동 장치를 포함하며, 상기 처리부는 상기 이미지로부터 컨볼루션 레이어를 포함하는 자세 회귀 모델을 이용하여 상기 이미지 센서의 자세를 추정하고, 상기 처리부는 상기 이미지 센서의 자세를 상기 거리 측정 센서의 초기 자세로 변환하고, 상기 처리부는 상기 지도의 전체 영역이 아닌 상기 초기 자세의 주변 값을 이용하여 초기 파티클을 설정하고 파티클 필터 모델을 통해 상기 이동 로봇의 위치를 인식하는 것을 특징으로 하는 이동 로봇을 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 이미지 기반의 자세 회귀 모델을 이용하여 추정된 카메라 자세 정보를 거리 측정 센서의 초기 자세 정보로 변환하고 전체 영역이 아닌 초기 자세 정보의 주변 영역으로부터 파티클 필터 모델을 통해 위치를 인식하여, 로봇이 충돌 또는 다른 물체에 의해 임의의 위치로 이동되어 위치 인식에 실패한 상황에서도 초기 위치를 다시 설정하여 재 위치 인식(Re-localization)을 신속하게 수행할 수 있는 효과가 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇을 예시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 이동 로봇이 자세 추정하는 동작 및 재 위치 인식 동작을 예시한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 이동 로봇이 다양한 표현 형식의 6 자유도 자세 표현에 따른 데이터 변환 동작을 예시한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 이동 로봇의 자세 회귀 모델을 예시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 이동 로봇이 노이즈 샘플링하는 동작을 예시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 이동 로봇이 변환한 초기 파티클 집합을 예시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 이동 로봇이 처리하는 지도의 포인트와 파티클에 대응하는 센서의 측정치에 따른 확률을 예시한 도면이다.
도 8은 본 발명의 일 실시예에 따른 이동 로봇이 생성한 3차원 지도를 예시한 도면이다.
도 9는 본 발명의 일 실시예에 따른 이동 로봇이 획득한 이미지를 예시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 이동 로봇의 자세 회귀 모델이 출력한 자세를 예시한 도면이다.
도 11은 본 발명의 일 실시예에 따른 이동 로봇의 파티클 필터 모델이 출력한 자세를 예시한 도면이다.
도 12는 본 발명의 일 실시예에 따른 이동 로봇이 임의의 위치로 이동된 상태에서 재 위치 인식을 수행한 위치 결과의 오차를 예시한 도면이다.
이하, 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하고, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 이동 로봇을 예시한 블록도이다.
이동 로봇(100)은 이미지 센서(110), 거리 측정 센서(120), 처리부(130), 및 이동 장치(140)를 포함한다.
이미지 센서(110)는 주변 환경으로부터 이미지를 획득한다. 이미지 센서(110)는 카메라 렌즈를 통해서 들어온 광의 세기를 전기 신호로 변환하는 반도체이다.
거리 측정 센서(120)는 주변 환경으로부터 포인트 클라우드를 획득한다. 거리 측정 센서(120)는 광을 방출하고 반사된 광이 돌아오는 시간 및 세기를 측정하여 포인트 클라우드를 수집한다.
처리부(130)는 이미지와 포인트 클라우드를 처리하여 지도에서 이동 로봇의 위치를 출력한다. 처리부(130)는 프로세서 등으로 구현될 수 있다.
이동 장치(140)는 지도에 따라 이동 로봇을 이동시키는 장치이다. 이동 장치(140)는 바퀴, 레일, 다리, 날개, 프로펠러 등으로 구현될 수 있으며, 지상 또는 공중을 이동할 수 있다.
처리부(130)는 3차원 전역 위치 인식 장치에 해당한다.
3차원 전역 위치 인식 장치에 포함된 구성요소들은 장치 내부의 소프트웨어적인 모듈 또는 하드웨어적인 모듈을 연결하는 통신 경로에 연결되어 상호 간에 유기적으로 동작한다. 이러한 구성요소들은 하나 이상의 통신 버스 또는 신호선을 이용하여 통신한다.
3차원 전역 위치 인식 장치는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 장치는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다. 또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System on Chip, SoC)으로 구현될 수 있다.
3차원 전역 위치 인식 장치는 하드웨어적 요소가 마련된 컴퓨팅 디바이스 또는 서버에 소프트웨어, 하드웨어, 또는 이들의 조합하는 형태로 탑재될 수 있다. 컴퓨팅 디바이스 또는 서버는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 포함한 다양한 장치를 의미할 수 있다.
3차원 전역 위치 인식 장치는 추정된 카메라의 절대 자세를 미리 계산된 외부 캘리브레이션을 이용하여 라이다 위치로 변환한다. 라이다 위치 주변에서 파티클을 샘플링하여 MCL(Monte Carlo localization)의 초기화를 진행한다. 초기화를 위해 리 대수(Lie Algebra)를 이용하여 3D 강체 모션(Rigid Motion)의 매니폴드(Manifold)의 탄젠트 공간(Tangent Space)에서 파티클 샘플링이 이뤄진다. 정확한 초기 상태 예측으로 MCL의 초기화를 했으므로 이후 MCL에서 빠르게 파티클이 수렴되어 손쉽게 위치를 결정할 수 있다.
3차원 전역 위치 인식 장치는 카메라 정보를 이용한 초기화가 필요한 상황은 위치인식이 실패한 경우 또는 강제로 로봇을 임의의 위치로 이동시키는 로봇 키드냅(Kidnap) 상황이 발생하면, 이러한 상황의 발생 여부를 감지한 후 파티클을 다시 초기화하는 재 위치 인식(Re-localization)을 수행한다.
도 2는 본 발명의 일 실시예에 따른 이동 로봇이 자세 추정하는 동작 및 재 위치 인식 동작을 예시한 흐름도이다.
본 실시예에 따른 이동 로봇은 로봇이 충돌 또는 다른 물체에 의해 임의의 위치로 이동되어 위치 인식에 실패한 상황에서도 초기 위치를 다시 설정하여 재 위치 인식(Re-localization)을 신속하게 수행할 수 있다.
단계 S210에서 처리부는 이미지 센서로부터 이미지를 획득한다.
단계 S220에서 처리부는 거리 측정 센서로부터 포인트 클라우드를 획득한다.
단계 S230에서 처리부는 이미지로부터 컨볼루션 레이어를 포함하는 자세 회귀 모델을 이용하여 이미지 센서의 자세를 추정한다.
단계 S240에서 처리부는 이미지 센서의 자세를 거리 측정 센서의 초기 자세로 변환한다.
단계 S250에서 처리부는 지도의 전체 영역이 아닌 초기 자세의 주변 값을 이용하여 초기 파티클을 설정하고 파티클 필터 모델을 통해 이동 로봇의 위치를 인식한다.
단계 S260에서 처리부는 이동 로봇이 임의의 위치로 이동된 키드냅 상태에 해당하는지 여부를 판단한다. 임의의 위치로 이동된 상태에 해당하면, 이미지 센서의 자세를 거리 측정 센서의 초기 자세로 변환하는 단계(S240)와 지도의 전체 영역이 아닌 초기 자세의 주변 값을 이용하여 초기 파티클을 설정하고 파티클 필터 모델을 통해 이동 로봇의 위치를 인식하는 단계(S250)를 다시 수행한다. 임의의 위치로 이동된 상태에 해당하지 않으면 6 자유도 자세를 출력한다.
처리부는 (i) 자세 회귀 모델이 출력한 이미지 센서의 자세를 변환한 거리 측정 센서의 자세 및 (ii) 파티클 필터 모델이 예측한 이미지 센서의 자세를 비교한 결과에 따라, 이미지 센서의 자세를 거리 측정 센서의 초기 자세로 다시 변환하고 초기 파티클을 다시 설정하여 재 위치 인식(Re-localization)을 수행한다.
도 3은 본 발명의 일 실시예에 따른 이동 로봇이 다양한 표현 형식의 6 자유도 자세 표현에 따른 데이터 변환 동작을 예시한 흐름도이다.
이미지 센서의 자세 및 거리 측정 센서의 자세는 6 자유도 자세에 해당한다. 6 자유도 자세 표현 형식은 쿼터니언 표현, 변환 행렬 표현, 트위스트 좌표 표현으로 표현될 수 있다.
Figure pat00001
쿼터니언 표현은 3차원의 위치 정보(p)와 4차원의 방향을 나타내는 쿼터니언 정보(q)를 포함한다.
Figure pat00002
변환 행렬 표현은 회전 행렬(R)과 3차원의 이송 벡터(p)를 포함하는 4X4 행렬이다.
Figure pat00003
트위스트 좌표 표현은 트위스트 축을 중심으로 3차원의 이송의 회전 버전(v)과 3차원의 축-각 표현(w)을 포함한다.
트위스트 좌표 표현은 벡터 공간에 해당하고, 변환 행렬 표현은 벡터 공간이 아닌 매니폴드 공간에 해당한다.
센서 자세를 나타내는 유클리드 그룹 SE(3)은 유클리드 공간의 등거리 변환들로 구성된 리 군(Lie Group)이다. 유클리드 그룹 SE(3)은 벡터 공간이 아닌 매니폴드 공간에 해당한다. 매니폴드 공간은 대역적으로 위상 공간(Topological Space)이고 국소적으로 유클리드 공간이다.
처리부는 파티클 샘플링을 유클리드 그룹 SE(3)에서 수행하는게 곤란하여 벡터 공간인 트위스트 좌표 공간에서 수행하므로, 샘플링을 위해 자세의 표현 형식을 변환할 필요가 있다.
단계 S310에서 자세 회귀 모델은 이미지 센서의 자세를 쿼터니언 표현으로 출력한다.
단계 S320에서 처리부는 쿼터니언 표현의 이미지 센서의 자세를 변환 행렬 표현으로 1차 변환한다.
단계 S330에서 처리부는 변환 행렬 표현의 이미지 센서의 자세를 매핑하여 변환 행렬 표현의 거리 측정 센서의 자세로 2차 변환한다.
단계 S340에서 처리부는 변환 행렬 표현의 거리 측정 센서의 자세를 트위스트 좌표 표현으로 3차 변환한다.
단계 S350에서 처리부는 트위스트 좌표 표현의 거리 측정 센서의 자세를 기준으로 주변 값을 이용하여 노이즈를 샘플링하여 초기 파티클로 설정한다.
단계 S360에서 처리부는 초기 파티클을 변환 행렬 표현으로 역변환한다. 처리부는 변환 행렬 표현의 초기 파티클을 이용하여 파티클 필터 모델을 통해 이동 로봇의 위치를 인식한다.
도 4는 본 발명의 일 실시예에 따른 이동 로봇의 자세 회귀 모델을 예시한 도면이다.
이동 로봇은 CNN(Convolutional Neural Network) 기반의 자세 회귀(Pose Regression) 모델을 사용한다. CNN 기반의 자세 회귀 모델은 이미지를 이용한 시각적 외양(Visual Appearance) 기반 방식이며 단일 이미지만으로도 센서의 절대적인 6 자유도 자세를 추정할 수 있다.
자세 회귀 모델은 이미지를 포함하는 훈련 집합을 생성하고 해당 이미지가 취득되었을 때의 센서 자세를 출력한다. 훈련 집합을 이용하여 심층 컨볼루션 신경망(Deep Convolutional Neural Network)을 훈련시킨다. 추정하고자 하는 자세는 3차원 위치(position)와 방향(orientation) 정보를 나타내는 쿼터니언(Quaternion)로 이루어져 있다.
도 4를 참조하면, 심층 컨벌루션 신경망의 구조는 미리 훈련된 네트워크 모델을 센서 자세 추정하도록 수정하여 사용할 수 있다. 예컨대, GoogLeNet은 22개의 컨벌루션 레이어와 9개의 인셉션 모듈(Inception Module)을 포함한다. GoogLeNet은 영상 인식과 같은 분류(Classification) 작업 수행에 많이 사용되는데 위치 재인식을 수행하기 위해 다음과 같은 변화가 필요하다. 분류를 하는 풀리 커넥티드(Fully-connected) 레이어를 회귀(Regression)을 수행하는 레이어로 수정한다. 기존 GoogLeNet에 존재하는 3개의 소프트맥스(Softmax) 분류기를 아핀 회귀자(Affine Regressor)로 대체한다. 학습 단계에서 이런 중간 단계의 아핀 회귀자 (Affine Regressor)에 대한 손실(Loss)를 포함하며 테스트 단계에서는 제일 마지막의 회귀자(Regressor)만 사용한다. 이러한 구조는 이미지에 맞는 자세 회귀자(Pose Regressor)를 학습시키기 위해 수학식 4의 유클리드 손실을 사용한다.
Figure pat00004
β는 위치 오차와 방향 오차의 중요도를 결정시키는 스케일 요소(Scale Factor)로서 위치와 방향 중 학습에 영향을 끼치는 정도를 결정한다. β가 큰 값일수록 방향 성분 오차의 중요도가 증가한다. 이렇게 학습된 네트워크에 테스트 영상을 입력하면 자세 회귀자(Pose Regressor)의 결과로 카메라 센서의 절대 자세가 수학식 5와 같이 생성된다.
Figure pat00005
MCL에서 사용되는 파티클 집합을 초기화한다. 파티클의 초기화는 카메라 자세 주변에서 가우시안 분포에 따라 샘플링한다. 센서 자세를 나타내는 SE(3) 군은 벡터 공간이 아닌 매니폴드 구조이다.
처리부는 파티클 샘플링을 트위스트 좌표 공간 내에서 수행한다. 자세 회귀 모델로부터 추정된 초기 자세는 수학식 6 내지 수학식 9를 이용하여 트위스트 좌표축으로 변환된다.
Figure pat00006
Mquat ->SE(3)은 쿼터니언 표현에서 변환 행렬 표현으로 변환하는 매핑 모델이다. 매핑 모델을 통해 6 자유도 자세 표현 간에 상호 변환이 가능하다.
처리부는 변환 행렬 표현의 이미지 센서의 자세를 매핑 모델 TCL을 이용하여 변환 행렬 표현의 거리 측정 센서의 자세로 변환한다.
Figure pat00007
TCL은 변환 행렬 표현의 이미지 센서의 자세를 변환 행렬 표현의 거리 측정 센서의 자세로 변환하는 매핑 모델이다.
카메라와 라이다 센서가 설치된 본체에서 미리 캘리브레이션을 통해 계산된 외부 파라미터(Extrinsic Parameter)를 통해 각 센서의 자세를 변환한다. 이종 센서 간의 캘리브레이션은 coarse-to-fine 전략을 사용한다. 정해진 모양과 크기의 인공 특징점을 이종 센서에서 동시에 검출하고 정합시켜 정합 오차를 적게 만드는 변환 행렬을 반복을 통해 도출한다. 두 센서 간 측정값의 변환은 수학식 8과 같이 표현된다.
Figure pat00008
TCL은 카메라와 라이다 간의 강체 변환 행렬(Rigid Body Transformation)이며, Special Euclidean group SE(3)에 속한다. [x y z 1]T 및 [u v 1]T은 각각 라이다로부터 얻은 3차원 공간 포인트와 이와 매칭된 이미지 평면의 좌표를 동차 좌표(Homogeneous Coordinates)로 표현한 것이다.
처리부는 수학식 9를 이용하여 변환 행렬 표현의 거리 측정 센서의 자세를 트위스트 좌표 표현으로 변환한다.
Figure pat00009
도 5는 본 발명의 일 실시예에 따른 이동 로봇이 노이즈 샘플링하는 동작을 예시한 도면이다. 도 6은 본 발명의 일 실시예에 따른 이동 로봇이 변환한 초기 파티클 집합을 예시한 도면이다.
처리부에서는 생성된 초기 자세값 주변으로 가우시안 분포에 따라 노이즈
Figure pat00010
를 샘플링하고 수학식 10과 같이 쉽게 파티클을 초기화시킬 수 있다. 샘플
Figure pat00011
는 가우시안 분포를 따르며
Figure pat00012
는 공분산 행렬을 의미한다.
Figure pat00013
처리부는 생성된 초기 파티클 집합을 변환 행렬 표현으로 역변환한다.
CNN 구조를 사용하는 학습 기반 위치 재인식은 현재 영상을 입력으로 받아 해당 영상이 취득된 센서의 자세를 출력으로 제공한다. 현재 영상의 추정에 이전 결과값이 사용되지 않아 종종 큰 오차를 보여준다.
처리부는 3차원 라이다 정보를 사용하여 파티클 필터를 갱신한다. MCL에서 사용하는 파티클 필터는 수학식 11과 같은 파티클 집합을 갖는다.
Figure pat00014
j는 파티클 인덱스이며, NP는 총 파티클의 수를 의미한다. t 시간에서의 각 파티클은 로봇의 6 자유도 자세
Figure pat00015
및 가중치
Figure pat00016
를 포함한다.
파티클 필터는 모션 모델에 따라 다음 단계에서의 파티클의 상태를 결정하는 예측(Prediction) 단계, 측정치에 따라 파티클의 중요도를 결정하는 정정(Correction) 단계, 및 리샘플링(Resampling) 단계를 수행한다. 리샘플링은 파티클의 중요도에 따라 다음 단계의 파티클을 확률적으로 뽑는다.
모션 모델은 수학식 12와 같이 표현된다.
Figure pat00017
모션 모델은 이동 제어 입력
Figure pat00018
이 주어졌을 때, 현재 상태
Figure pat00019
의 확률을 이전 스텝의 상태
Figure pat00020
로부터 표현한다. 모션 모델에서 사용되는 이동 제어 입력은 로봇의 휠 오도메트리 값이다.
Figure pat00021
는 노이즈이다.
도 7은 본 발명의 일 실시예에 따른 이동 로봇이 처리하는 지도의 포인트와 파티클에 대응하는 센서의 측정치에 따른 확률을 예시한 도면이다. 지도의 포인트와 파티클에 대응하는 센서의 측정치에 따른 확률은 수학식 13과 같이 표현된다.
Figure pat00022
σ는 라이다 센서 노이즈의 표준 편차이다.
이렇게 예측된 파티클의 평가는 미리 구축된 지도와 현재 라이다 센서 측정치와의 비교를 통해 결정한다.
처리부는 로봇 키드냅 발생 여부를 판단하여 발생 되었다고 판단되는 경우에 재 위치 인식을 수행한다. 로봇 키드냅 상황은 라이다의 위치 인식 결과와 추정된 카메라 자세의 차이를 통해 감지한다. 라이다의 위치 인식 결과는 수학식 14와 같이 표현되고, 추정된 카메라 자세는 수학식 15와 같이 표현된다.
Figure pat00023
Figure pat00024
센서 자세의 차이는 두 가지 기준으로 측정 가능하다. 첫 번째는 이송 위치(Translation) 차이이고 두 번째는 방향(Orientation) 차이이다. 이송 위치 및 방향의 차이는 수학식 16과 같이 표현된다.
Figure pat00025
처리부는 두 차이를 모두 고려하여 일정 시간 동안 지속적으로 차이가 발생하면 로봇 키드냅 상황으로 간주한다.
Figure pat00026
로봇 키드냅 상황이 발생되면 위치 인식을 위한 MCL을 초기화시킨다.
도 8은 본 발명의 일 실시예에 따른 이동 로봇이 생성한 3차원 지도를 예시한 도면이고, 도 9는 본 발명의 일 실시예에 따른 이동 로봇이 획득한 이미지를 예시한 도면이고, 도 10은 본 발명의 일 실시예에 따른 이동 로봇의 자세 회귀 모델이 출력한 자세를 예시한 도면이고, 도 11은 본 발명의 일 실시예에 따른 이동 로봇의 파티클 필터 모델이 출력한 자세를 예시한 도면이다.
도 12는 본 발명의 일 실시예에 따른 이동 로봇이 임의의 위치로 이동된 상태에서 재 위치 인식을 수행한 위치 결과의 오차를 예시한 도면이다.
시뮬레이션을 수행한 결과, 본 실시예에 따른 이동 로봇은 이미지 기반의 자세 회귀 모델을 이용하여 추정된 카메라 자세 정보를 거리 측정 센서의 초기 자세 정보로 변환하고 전체 영역이 아닌 초기 자세 정보의 주변 영역으로부터 파티클 필터 모델을 통해 위치를 인식하여, 로봇이 충돌 또는 다른 물체에 의해 임의의 위치로 이동되어 위치 인식에 실패한 상황에서도 초기 위치를 다시 설정하여 재 위치 인식(Re-localization)을 신속하게 수행할 수 있음을 확인하였다.
도 2 및 도 3에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 2 및 도 3에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록 매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (5)

  1. 이동 로봇에 있어서,
    이미지를 획득하는 이미지 센서;
    포인트 클라우드를 획득하는 거리 측정 센서;
    상기 이미지와 상기 포인트 클라우드를 처리하여 지도에서 상기 이동 로봇의 위치를 출력하는 처리부; 및
    상기 지도에 따라 상기 이동 로봇을 이동시키는 이동 장치를 포함하며,
    상기 처리부는 상기 이미지로부터 컨볼루션 레이어를 포함하는 자세 회귀 모델을 이용하여 상기 이미지 센서의 자세를 추정하고,
    상기 처리부는 상기 이미지 센서의 자세를 상기 거리 측정 센서의 초기 자세로 변환하고,
    상기 처리부는 상기 지도의 전체 영역이 아닌 상기 초기 자세의 주변 값을 이용하여 초기 파티클을 설정하고 파티클 필터 모델을 통해 상기 이동 로봇의 위치를 인식하는 것을 특징으로 하는 이동 로봇.
  2. 제1항에 있어서,
    상기 자세 회귀 모델은 상기 이미지 센서의 자세를 쿼터니언 표현으로 출력하고,
    상기 처리부는 상기 쿼터니언 표현의 상기 이미지 센서의 자세를 변환 행렬 표현으로 1차 변환하고,
    상기 처리부는 상기 변환 행렬 표현의 상기 이미지 센서의 자세를 매핑하여 상기 변환 행렬 표현의 상기 거리 측정 센서의 자세로 2차 변환하는 것을 특징으로 하는 이동 로봇.
  3. 제2항에 있어서,
    상기 처리부는 상기 변환 행렬 표현의 상기 거리 측정 센서의 자세를 트위스트 좌표 표현으로 3차 변환하고,
    상기 처리부는 상기 트위스트 좌표 표현의 상기 거리 측정 센서의 자세를 기준으로 주변 값을 이용하여 노이즈를 샘플링하여 상기 초기 파티클로 설정하고,
    상기 처리부는 상기 초기 파티클을 상기 변환 행렬 표현으로 역변환하는 것을 특징으로 하는 이동 로봇.
  4. 제3항에 있어서,
    상기 이미지 센서의 자세 및 상기 거리 측정 센서의 자세는 6 자유도 자세에 해당하고,
    상기 쿼터니언 표현은 3차원의 위치 정보와 4차원의 방향을 나타내는 쿼터니언 정보를 포함하고,
    상기 변환 행렬 표현은 회전 행렬과 3차원의 이송 벡터를 포함하는 4X4 행렬이고,
    상기 트위스트 좌표 표현은 트위스트 축을 중심으로 3차원의 이송의 회전 버전과 3차원의 축-각 표현을 포함하며,
    상기 트위스트 좌표 표현은 벡터 공간에 해당하고, 상기 변환 행렬 표현은 상기 벡터 공간이 아닌 매니폴드 공간에 해당하는 것을 특징으로 하는 이동 로봇.
  5. 제1항에 있어서,
    상기 처리부는 (i) 상기 자세 회귀 모델이 출력한 상기 이미지 센서의 자세를 변환한 상기 거리 측정 센서의 자세 및 (ii) 상기 파티클 필터 모델이 예측한 상기 이미지 센서의 자세를 비교한 결과에 따라, 상기 이미지 센서의 자세를 상기 거리 측정 센서의 초기 자세로 다시 변환하고 상기 초기 파티클을 다시 설정하여 재 위치 인식(Re-localization)을 수행하는 것을 특징으로 하는 이동 로봇.
KR1020200035622A 2020-03-24 2020-03-24 딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇 KR102352088B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200035622A KR102352088B1 (ko) 2020-03-24 2020-03-24 딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200035622A KR102352088B1 (ko) 2020-03-24 2020-03-24 딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇

Publications (2)

Publication Number Publication Date
KR20210119133A true KR20210119133A (ko) 2021-10-05
KR102352088B1 KR102352088B1 (ko) 2022-01-14

Family

ID=78077847

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200035622A KR102352088B1 (ko) 2020-03-24 2020-03-24 딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇

Country Status (1)

Country Link
KR (1) KR102352088B1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101107735B1 (ko) 2010-02-26 2012-01-20 서울대학교산학협력단 카메라 포즈 결정 방법
KR20130085316A (ko) * 2012-01-19 2013-07-29 한국전자통신연구원 원거리 사람 식별을 위한 다중 카메라 기반의 얼굴영상 획득 장치
KR101538775B1 (ko) 2008-09-12 2015-07-30 삼성전자 주식회사 전방 영상을 이용한 위치 인식 장치 및 방법
KR20180061696A (ko) * 2016-11-30 2018-06-08 연세대학교 산학협력단 파티클 간에 지도를 공유하는 이동체의 위치 추정 및 지도 작성 방법 및 장치
KR102029850B1 (ko) 2019-03-28 2019-10-08 세종대학교 산학협력단 카메라와 라이다 센서를 이용한 객체 검출 장치 및 그 방법
KR20190131207A (ko) 2018-05-16 2019-11-26 한양대학교 산학협력단 센서 품질 저하에 강인한 딥러닝 기반 카메라, 라이더 센서 융합 인지 방법 및 시스템
JP2019211364A (ja) * 2018-06-06 2019-12-12 全国農業協同組合連合会 動物体の体重推定装置及び体重推定方法
KR20200030738A (ko) * 2018-09-13 2020-03-23 주식회사 케이티 이동 로봇 및 이의 위치 인식 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101538775B1 (ko) 2008-09-12 2015-07-30 삼성전자 주식회사 전방 영상을 이용한 위치 인식 장치 및 방법
KR101107735B1 (ko) 2010-02-26 2012-01-20 서울대학교산학협력단 카메라 포즈 결정 방법
KR20130085316A (ko) * 2012-01-19 2013-07-29 한국전자통신연구원 원거리 사람 식별을 위한 다중 카메라 기반의 얼굴영상 획득 장치
KR20180061696A (ko) * 2016-11-30 2018-06-08 연세대학교 산학협력단 파티클 간에 지도를 공유하는 이동체의 위치 추정 및 지도 작성 방법 및 장치
KR20190131207A (ko) 2018-05-16 2019-11-26 한양대학교 산학협력단 센서 품질 저하에 강인한 딥러닝 기반 카메라, 라이더 센서 융합 인지 방법 및 시스템
JP2019211364A (ja) * 2018-06-06 2019-12-12 全国農業協同組合連合会 動物体の体重推定装置及び体重推定方法
KR20200030738A (ko) * 2018-09-13 2020-03-23 주식회사 케이티 이동 로봇 및 이의 위치 인식 방법
KR102029850B1 (ko) 2019-03-28 2019-10-08 세종대학교 산학협력단 카메라와 라이다 센서를 이용한 객체 검출 장치 및 그 방법

Also Published As

Publication number Publication date
KR102352088B1 (ko) 2022-01-14

Similar Documents

Publication Publication Date Title
JP6842520B2 (ja) 物体検出方法、装置、機器、記憶媒体及び車両
Zhou et al. T-loam: truncated least squares lidar-only odometry and mapping in real time
CN108332758B (zh) 一种移动机器人的走廊识别方法及装置
US20140198951A1 (en) Image processing apparatus and image processing method
WO2022017131A1 (zh) 点云数据的处理方法、智能行驶控制方法及装置
CN108332752B (zh) 机器人室内定位的方法及装置
CN111862201A (zh) 一种基于深度学习的空间非合作目标相对位姿估计方法
WO2019196476A1 (zh) 基于激光传感器生成地图
KR20210001068A (ko) 캘리브레이션 방법
CN112731371B (zh) 一种激光雷达与视觉融合的集成化目标跟踪系统及方法
CN113743385A (zh) 一种无人船水面目标检测方法、装置及无人船
CN116229408A (zh) 一种图像信息与激光雷达点云信息融合的目标识别方法
Shen et al. Object detection deployed on uavs for oblique images by fusing imu information
Wang et al. 3D-LIDAR based branch estimation and intersection location for autonomous vehicles
JP7034746B2 (ja) 特徴表現装置、それを含む認識システム、及び特徴表現プログラム
CN114595738A (zh) 为识别模型生成训练数据的方法和生成识别模型的方法
Jindal et al. Bollard segmentation and position estimation from lidar point cloud for autonomous mooring
JP2017167974A (ja) 推定装置、方法及びプログラム
KR102352088B1 (ko) 딥러닝 기반의 자세 추정을 이용한 3차원 전역 위치 인식 장치 및 이동 로봇
CN114972492A (zh) 一种基于鸟瞰图的位姿确定方法、设备和计算机存储介质
Liu et al. Research on security of key algorithms in intelligent driving system
CN117115252A (zh) 一种基于视觉的仿生扑翼无人机空间位姿估计方法
AU2020317303B2 (en) Information processing device, data generation method, and program
Mount et al. Automatic coverage selection for surface-based visual localization
CN113781563B (zh) 一种基于深度学习的移动机器人回环检测方法

Legal Events

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