Archive

Journal of Korea Robotics Society - Vol. 14 , No. 4

[ ARTICLE ]
Journal of Korea Robotics Society - Vol. 14, No. 4, pp. 293-300
Abbreviation: J. Korea Robot. Soc.
ISSN: 1975-6291 (Print) 2287-3961 (Online)
Print publication date Nov 2019
Received 7 May 2019 Revised 12 Aug 2019 Accepted 16 Sep 2019
DOI: https://doi.org/10.7746/jkros.2019.14.4.293

바닥 특징점을 사용하는 실내용 정밀 고속 자율 주행 로봇을 위한 싱글보드 컴퓨터 솔루션
김용년1 ; 서일홍

An Embedded Solution for Fast Navigation and Precise Positioning of Indoor Mobile Robots by Floor Features
Yong Nyeon Kim1 ; Il Hong Suh
1PhD student, Intelligent Robot Engineering, Hanyang University, Seoul, Korea (yn.kim@incorl.hanyang.ac.kr)
Professor, Corresponding author: Electronics and Computer Engineering, Hanyang University, Seoul, Korea (ihsuh@hanyang.ac.kr)


© Korea Robotics Society. All rights reserved.

Abstract

In this paper, an Embedded solution for fast navigation and precise positioning of mobile robots by floor features is introduced. Most of navigation systems tend to require high-performance computing unit and high quality sensor data. They can produce high accuracy navigation systems but have limited application due to their high cost. The introduced navigation system is designed to be a low cost solution for a wide range of applications such as toys, mobile service robots and education. The key design idea of the system is a simple localization approach using line features of the floor and delayed localization strategy using topological map. It differs from typical navigation approaches which usually use Simultaneous Localization and Mapping (SLAM) technique with high latency localization. This navigation system is implemented on single board Raspberry Pi B+ computer which has 1.4 GHz processor and Redone mobile robot which has maximum speed of 1.1 m/s.


Keywords: Navigation, Mobile Robot, Mono-Camera Navigation, Single Board Computer Navigation

1. 서 론

최근 기계학습 분야의 폭발적인 성장과 더불어 자율주행로 봇의 관심이 높아지고 있다. 물류산업 그리고 서비스산업등에 서 자율주행로봇의 적용가능성이 높게 평가 되어 다양한 글로 벌 기업들이 자율주행 시장에 참여하고 있다. 이런 흐름 속에 서 자율주행 기술 중 핵심 기술로 뽑히는 지도작성 기술의 연 구가 활발히 진행 되고 있다. 이런 연구들의 주요 기여는 정확 한 고해상도의 지도 제작에 있다. 다양한 실 환경 속에서 물리 적으로 정확한 지도를 만드는 연구들은 레이저나 라이더 센서 와 고사양의 컴퓨팅 유닛을 이용하고 있고 많은 성과를 이루 고 있다[1,2]. 이러한 연구들로 인해 자율주행로봇은 다양한 환 경에서 점점 더 강인해 지고 높은 주행 성공률을 가지게 해주 고 있다. 이러한 연구들이 공통적으로 가정하고 있는 것은 물 리적으로 정확하게 지도를 작성하면 성공적인 주행이 가능 하 다는 것이다. 이러한 가정과는 다른 관점으로, 본 논문에서는 물리적으로 실측과 다른 비정확한 경로추정과 지도를 이용한 고속 정밀 자율주행 시스템을 소개하고자 한다.

본 논문에서 제안 되는 방법은 사람이 어떤 지점을 이동할 때 사용하는 정보들을 최대한 유사하게 이용할 수 있도록 설계 되었다. 이것은 사람이 어떤 지점을 이동할 때 레이저나 라이더 와 같은 정확한 물리적인 정보 없이도 어떤 로봇보다 완벽한 주 행성능을 가지고 있다는 것에서 연구 동기를 얻은 것이다. 이때 핵심적으로 이용되는 정보라고 첫번째로 고려된 것은 영상 정 보이다.

영상 정보를 이용한 자율주행 기법은 지난 수년간 많은 연 구가 진행 되어 왔다[3-7]. 단안 카메라를 이용하거나 다수개의 카메라를 이용하는 시스템 그리고 어안렌즈를 사용하는 시 스템 등 다양한 영상 센서를 이용하여 활발한 연구가 진행되 었다. 이런 연구의 주요 기여 중 하나는 영상 데이터에서 추출 된 특징점을 이용하여 기하학적인 로봇의 위치를 최적화 하는 것이다[8]. 이러한 시스템을 이용하면 영상 정보를 이용하여 카메라 의 3차원 자세를 정확하게 추론 해 낼 수 있다. 뿐만 아니라 이 러한 특징점들로 이루어진 지도를 작성하여 지도 내에서 로 봇이 위치를 추론해 내어 주행 하는 것도 가능 하다. 이러한 시스템들의 공통된 핵심 기술은 2차원의 영상 정보를 정확한 3차원 위치 정보로 바꾸는 것이고, 이것은 장면과 장면 사이 의 3차원 움직임 차이에서 기인한 특징점 들의 2차원 움직임 을 관찰 하는 것에서부터 시작한다. 이렇게 2차원 속의 특징 점의 움직임을 관찰하고 그로부터 3차원 움직임을 추론해 내 기 때문에, 많은 연구들이 높은 주기의 센서데이터와 신뢰도 가 높은 고가의 센서를 사용하고 있다. 게다가 2차원 속의 특 징점은 정지상태여야 한다는 제약이 있기 때문에, 움직이는 물체에서 추출된 특징점을 따로 제거를 해주어야 한다[9]. 이 와 같은 방법은 2차원의 데이터를 이용하여 더 높은 차원의 결과물을 만들어야 하기 때문에(정확히는 6 자유도를 가지 는), 2차원 데이터의 신뢰도에 따라 결과물의 정확도가 크게 영향을 받을 뿐만 아니라 높은 계산량과 최적화 기법이 요구 된다. 게다가 2차원 데이터가 풍부하지 않은 상황, 예를 들어 보행자에 의한 센서 가려짐 또는 급격한 로봇 움직임, 이 발생 할 시 해당 시스템은 설계된 결과물을 만드는 것에 실패하고 만다. 사람이 사용하는 정보와 가장 유사한 정보인 영상 센서 를 폭넓은 응용분야에서 사용 하기 위해서는 위와 같이 높은 주기의 영상 정보 처리방법 과는 다른 새로운 방법으로의 시 도가 필요하다.

제안되는 시스템에서 영상 정보를 이용하는 것 다음으로 고려된 직관은 사람이 목적지로 이동하는 동안 정확한 측량치 를 사용하지 않는다는 것이다. 예를 들어 사람이 화장실로 이 동한다고 가정했을 때, 출발지점에서 화장실까지 몇 m인지 혹 은 정면으로부터 몇도 틀어졌는지 정밀하게 측량하며 이동하 지 않는다는 것이다. 이것은 사람이 목적지로 이동시 정확한 측량 지도를 이용하지 않는다는 것을 의미한다. 심지어 대략적 인 위치가 표시된 약도를 이용해도 목적지로 이동이 가능 하다 는 것 또한 정밀 지도의 필요성을 의심하게 하는 예시이다. 하 지만 최근 연구의 주요 기여 동향을 보면, 추론된 지도와 실측 된 지도와의 차이를 줄이는 것에 집중 되어 있다. 이러한 연구 분야들은 높은 성과들을 보여주고 있지만, 자율주행 시스템의 성능을 실측 지도에 가까운 지도제작 능력에 의존한다는 것은 사람이 가지고 있는 이동 능력과 근본적으로 다르다. 더욱이 이런 실측에 가까운 지도제작 방법들의 결과물이 실측 지도와 오차가 클 경우(loop closure 실패 등) 맵 제작 실패를 의미 하 기 때문에, 지도 작성시 여러 주의 사항이 수반 된다. 예를 들 어 지도 작성 중 동적 물체의 양이 시스템 설계 한계를 초과 하는 경우나 센서의 사양에 따른 측정값 한계를 넘는 공간의 경우 지도 작성에 실패 할 확률이 증가 하게 된다. 위에서 언 급한 내용들을 고려해 볼 때, 실측과 비슷한 정확한 지도 작성 방법과 다른 새로운 관점의 지도 작성 방법의 제안이 필요해 보인다.

본 논문에서는, 위에서 언급한 내용을 바탕으로, 자율주행 시 고려되어야 할 사항을 아래에 요약된 바와 같이 제시하려고 한다.

  • ∙ 영상 정보를 이용하되, 낮은 주기로 이용할 것
  • ∙ 정밀 지도 없이도 정밀 주행이 가능 할 것.
  • ∙ 시스템을 저가로 구성 할 것.

이러한 직관을 자율주행 시스템에 적용하기 위해, 본 논문 에서는, 단안 카메라를 사용 하여 등거리 간격으로 데이터를 취득하였으며 이는 매 시간 데이터를 취득하는 방식보다 상 대적으로 낮은 주기를 가지게 된다. 이때 상대적으로 부정확 한 휠 엔코더 정보를 이용하여 지도를 작성하고 누적된 에러 를 최적화 기법으로 해결 하지 않는다. 또한 저가형 싱글 보 드 컴퓨터를 이용하기 위해서 위치추정이 완료된 시점과 위 치추정 질의 시점을 고려한 지연위치추정 방법을 사용 하였 다. 이 같은 방법으로 구성된 시스템 [Fig. 1]은 기존 보고된 연구들의 주요 목표와는 다른 접근 방식이며 다른 특징을 가 진다. 싱글 보드 컴퓨터를 이용하는 많은 연구들은 드론 분야 에서 많이 이루어져 있다. 이러한 연구들의 주요 기여는 낮은 컴퓨팅 파워에서도 높은 주기로 계산 가능한 알고리즘을 만 들거나, 전역 지도를 작성하지 않는 맵리스 방식의 주행 방법 이라는 것이다[10-13]. 하지만 low-computing cost의 가벼운 알 고리즘은 성능이 상대적으로 떨어지거나 로봇의 속도가 빠 르지 않다는 것에서 실용적이지 않다. 본 논문에서 제안하는 방법은 높은 주기를 위해 계산 정밀도를 포기 하지 않고도 상 대적으로 고속으로 주행하는 방법을 제안하고 있으며, 전역 지도를 이용하기 때문에 특정 목적지로의 주행이 가능한 방 법이다.


[Fig. 1] 

The proposed navigation system is shown in this figure. The system uses webcam(a), mobile robot and single board computer(b) only




2. 본 론
2.1 자기 중심적 위상학 지도

본 논문이 제시하는 자기 중심적 위상학 지도 작성 방법은 등간격으로 위상학적 노드를 작성하도록 설계 되었다. 본 연 구에서 제시하는 위상학적 지도는 다른 연구에서 제시하는 것 처럼 정확한 물리적인 정보로 제작된 지도를 이용하여 계층 구조적인 장소를 구분 짓기 위함이 아니다[14]. 영상 하나를 하 나의 노드로 하는 위상학적 지도를 사용 하려고 한다[15]. 이런 위상학적 지도 방법을 이용하여 Loop Closure가 일어 날 경우 위상학적 연결 관계를 추가 하되 누적 에러를 최소화 하지 않 고 그대로 가지고 있는다. 이와 같은 방법은 작성된 지도가 자 기 중심적 좌표계를 쓰기 때문에 유효한 성능을 낼 수 있는데, 해당 내용은 노드를 정의 하면서부터 시작 하고자 한다. 제안 하는 시스템에서 하나의 노드 Ni은 영상 정보 Ii와 기하학적 상대 위치 연결정보 엣지 Ei를 포함하고 있다.

Ni={Ii,Ei}(1) 

이때 영상 정보 Ii는 추출된 직선 기술자(line descriptor) w를 포함하고 있다.

Ii={w1,,wn}(2) 

엣지 정보 Ei는 자기 자신 Ni과 그 외의 노드 사이의 연결정보 를 가지고 있으며 Δp로 표시한다.

Ei={Δpi,j,,Δpi,k}(3) 

만약 어떤 노드 NiNj가 엣지 정보 Ei={Δpi,j} 와 를 가지고 있다면, Ej={Δpj,k}는 아래와 같이 추론 될 수 있다.

Δpi,k=Δpi,j+Δpj,k(4) 

이때 Δp에는 에러가 포함 되어 있기 때문에, NiNk사이에 다양한 엣지 경로가 존재 한다고 하면, 어떤 경로를 따라 상대 경로를 구하는지에 따라 Δpi,k값이 달라 질 수 있다. 이런 상황 에서 경로가 길어 질수록 누적 에러가 커진다고 가정하면, 최 적의 Δpi,k* 는 최단 엣지 경로로 구해진 값으로 정의 된다. 이때 Δpi,k* 와 다른 경로로 구해진 Δpi,k사이에는 누적된 에러만큼 의 차이 ∈가 발생하게 되고 이것은 일반적으로 loop closure시 최소화 해야 하는 목적 함수가 되는 것이다.

=Δpi,k*Δpi,k(5) 

식 (5)의 예제는 [Fig. 2]에 나타내어져 있다.


[Fig. 2] 

This figure shows that the node Nk can be placed differently by which edge path is chosen



본 논문에서 제안 하는 방법은 위의 목적 함수 ∈를 최소화 하지 않는 것이다. 대부분의 다른 연구에서 하는 것처럼 ∈를 최소화 하여 실제와 비슷한 노드의 위치를 구하는 것이 아니 라는 의미이다. 대신 매번 현재 추정된 로봇 위치로부터 모든 노드로의 Δp*를 재추론 한다. 그렇기 때문에 모든 노드들은 절 대적인 위치를 가질 수 없고 로봇 자기 좌표계를 중심으로 매번 재정렬 된다. 로봇과 가까울수록, 노드 경로가 짧기 때문에, 적 은 에러를 가진 채 재배치 되며 로봇과 가장 먼 노드가 가장 많 은 에러를 가지게 된다. 이런 방법은 실측 된 지도와 비교할 수 없기 때문에, 지도작성 성공여부를 판단 할 필요가 없다. 이러 한 자기중심적 위상학 지도의 특성은 [Fig. 3]에 묘사 되어 있다.


[Fig. 3] 

The ego-metric topological map is presented. Each node has only relative motion between them and relocated by using shortest edge path from the robot



2.2 전역적 위치와 상대적인 자세 추론 방법
2.2.1 전역적 위치 추론을 위한 장소인식 기법

제안하는 시스템에서는 두가지 위치 추론 방법이 사용 되 는데, loop closure를 위한 전역 위치추론을 가능케 하는 영상 기반 장소인식기술[16,17]과 카메라의 기하학적 자세 정보를 이 용해 바닥에서 추출된 특징점을 분리해 내고 그를 이용한 상 대적인 자세 추론 방법이다. 최근 기계학습 분야에서 영상 정 보를 이용한 장소 인식과 주행을 위한 연구들이 진행 되어 높은 성능을 보여주고 있지만 아직은 싱글보드 컴퓨터에서 연산하 기에 고사양을 요구하는 경향이 있어 한계가 있다[18-21]. 손에 쥘 수 있는 모바일 기기 등에서 구동 가능한 Wifi 신호를 이용 한 전역 위치 추론 연구들도 보고되어 있다[22]. 하지만 제시하 는 시스템의 동기인 사람처럼 주행하는 것과는 거리가 있다.

구현된 장소인식 방법은 다양한 실내 사진에서 추출된 직선 기술자로 학습된 Vocabulary tree를 이용하고 있어 질의 응답 시 간이 빠르고 많은 연구에서 사용 되고 있는 Scale Invariant Feature Transform (SIFT)나 Speed-Up Robust Features (SURF) 에 비해서 높은 인식률을 보여주고 있다. 영상 센서에서 추출 된 영상은 가장 처음 장소 인식기를 통해 유사도가 계산 되고 그를 이용해 현재 관찰되는 영상과의 유사성을 확률 분포로 만들 수 있다.

p(w|Xt)(6) 

이때 w는 관찰된 직선기술자 이며 Xt는 로봇의 위치이다. 하지만 이러한 방법은 관찰된 영상과 지도상의 영상 사이의 어떤 기하학적인 자세정보를 계산 하지 않기 때문에 본 기법 에서는 노드 단위의 위치추론만 가능하다. 정밀 주행을 위해 서는 가장 가까운 노드를 추론해 낼 뿐만 아니라 노드와의 상 대적인 자세 차이까지도 추론해 낼 수 있어야 한다. 이것을 위 해 영상에서 추출된 기술자들 중 일부를 바닥에서 추출된 것 이라 가정하고 그를 이용한 자세 추론 방법을 아래 세션에서 설명 하려고 한다.

2.2.2 2차원 가정을 이용한 바닥 영역 구분 방법

많은 영상 기반 자율주행 시스템들은 6자유도를 가지는 로 봇의 자세를 정확하게 추론하는 것에 집중하고 있다. 하지만 제안하려는 시스템은 모바일 로봇은 3자유도를 가지는 2차원 공간에서 주행한다고 정의하고 있다. 이런 가정은 드론과 같 은 3차원 공간에서 이동하는 자율주행 로봇에서는 사용 할 수 없지만, 2차원의 3자유도만을 추론해 내면 되기 때문에 상대 적으로 적은 기술자 매칭쌍 들을 이용하더라도 상당히 강인한 결과를 추론해 낼 수 있다. 바닥을 보는 것과 비슷하게 천장에 서 추출된 특징점을 이용하는 연구들이 있다[23,24]. 이런 연구들 은 비교적 쉽고 강인하게 로봇의 움직임을 추론 할 수 있지만, 천장에서 추출되는 기술자의 특이성이 낮기 때문에 전방을 바 라보는 영상보다 전역위치 추론에서 어려움이 예상 된다.

영상에서 추출된 기술자 w를, 물리적인 공간에서의 바닥 으로 투영시키기 위해, 영상 속 위치를 (u, υ)라고 한다면 해 당 기술자의 실제 물리적인 위치 (x, y, z)와는 아래와 같은 관 계를 가진다.

s[uυ11/s]=[fx0cx00fycy000100001][r11r12r13t1r21r22r23t2r31r32r33t30001][xyz1](7) 

이때 카메라 내부 파라메터 K와 로봇중심좌표계와 카메라 좌표계와의 외부 파라메터 [R,t]는 미리 구할 수 있는 상수 임으로 M으로 표현 할 수 있고 좌항으로 이항해 풀이 하면,

sM1[uυ11/s]=[xyz1](8) 

과 같다. 이때 w가 바닥에서 추출되었다고 가정하면, 높이 요 소인 z를 0으로 두고 전개 해 볼 수 있다.

s[m11m12m13m14m21m22m23m24m31m32m33m34m41m42m43m44][uυ11/s]=[xy01](9) 

이때 3번째 행을 전개하면

sm31u+sm32υ+sm33+m34=0(10) 

과 같고 이를 s에 대해 전개 하면 아래와 같다.

s=m34m31u+m32υ+m33(11) 

이때 uυ는 영상 속에서 관측 되는 값 임으로, 해당 w가 바 닥에서 검출되었다면 단일 영상 속의 좌표 만을 가지고도 기 술자의 물리적인 위치를 추론 해 낼 수 있다. 이때의 기술자의 물리적인 위치 x, y는,

x=sm11u+sm12υ+sm13+m14(12) 

y=sm21u+sm22υ+sm23+m24(13) 

이다.

하지만 해당 기술자가 바닥에서 추출된 것인지를 확인해야 한 다. 그 방법 중 첫번째는 s > 0인지를 확인 하는 것이다. 만약 s < 0라면 영상 이미지 평면 안쪽에 기술자가 물리적으로 위치 하고 있다는 뜻 이고 s = 0 일때는 x, y가 무한대임을 의미 하므로 추출 불가능 하다 [Fig. 4]. 또한 실내 환경에서 많이 관찰 되는 수 직선을 강제적으로 바닥으로 투영할 경우 그의 연장선은 항상 좌표계의 특정 지점을 지나는데 그것은 아래에 설명 하려고 한다.


[Fig. 4] 

The ego-metric topological map is presented. Each node has only relative



식 (12)와 (13)을 살펴보면 xy는 각각 s를 변수로 두는 1 차 방정식의 해로 생각 할 수 있고, 식 (10)에서 z를 표기해 보면

[x1y1z1]=[f(u,υ)1s1+m14f(u,υ)2s1+m24f(u,υ)3s1+m34](14) 

가 된다. 이때 z = 0을 만족하는 s2을 이용하여 위 식을 다시 전개 하면 아래와 같다.

[x2y20]=[f(u,υ)1s2+m14f(u,υ)2s2+m24f(u,υ)3s2+m34](15) 

식 (14)와 식 (15)의 z를 제외한 두 점 (x1, y1)와 (x2, y2)을 지 나는 직선 방정식을 구해 보면,

(x2x1)(yy1)=(y2y1)(xx1)(16) 

가 되고 이를 전개 해 보면,

f(u,υ)(ym24)=f(u,υ)2(xm14)(17) 

가 되어 s1s2에 상관없이, 즉 모든 z1 값에 대해 항상 (m14,m24)을 지나는 직선 방정식을 얻게 된다. 이를 이용하 면 식 (14)의 좌표에서 높이만 다른 수직선에서 추출된 이미지 좌표 (u′, υ′)에 대한 식은 아래와 같다.

[x1y1z3]=[f(u,υ)1s3+m14f(u,υ)2s3+m24f(u,υ)3s3+m34](18) 

이때 식 (14)을 이용하면,

f(u,υ)1=f(u,υ)1s1s3f(u,υ)2=f(u,υ)2s1s3(19) 

를 얻게 되고 식 (18)로부터 전개된 직선방정식은

f(u,υ)1s1s3(ym24)=f(u,υ)2s1s3(xm14)(20) 

가 되고, 이는 식 (17)과 같다. 이것은 (x1, y1)의 서로 다른 높 이 z1z3에서 측정된 이미지 좌표 (u, υ)와 (u′, υ′ )를 바닥 에 투영한 두 점은 항상 식 (17)을 만족하는 직선상에 놓인다 는 것이다. 따라서 이미지상의 직선을 바닥으로 투영해 해당 직선이 (m14,m24)를 지난다면 수직선에서 추출된 직선일 수 있다 [Fig. 5]. 물론 연장선이 (m14,m24)을 지난다고 해서 수직 선에서 추출된 특징점 이라 단정 할 수는 없지만, 본 논문에서 는 해당 점을 지나는 모든 직선 성분을 수직선이라 가정 한다.


[Fig. 5] 

This example shows how a vertical line (red bar) is projected on the floor



위에서 기술된 두가지 방법을 이용하여 영상에서 추출된 직 선 선분 중 바닥에서 추출 가능하다고 여겨지는 직선 성분을 이 용하여 2차원 공간상에서 상대적인 자세 추론을 하려고 한다.

2.2.3 상대적인 자세 추정 방법

현재 관찰 되는 영상으로부터 추출된 바닥 직선 성분과 대 상이 되는 노드의 바닥 직선 성분을 이용하여 상대적인 자세 를 추론해 낸다. 이때 영상에서 추출되는 직선의 길이의 보장 성이 떨어 지기 때문에 바닥으로 투영 시 무한직선으로 확장 하여 자세를 추론한다 [Fig. 6]. 직선 매칭쌍은 직선 기술자를 이용하여 추론 하였다. 이런 방법은 로봇이 2차원 공간을 이동 한다고 가정 했기 때문에, 드론과 같은 3차원 움직임을 같은 응 용분야에서는 적용하기 힘들지만 2차원 공간에서 움직이는 분 야에 대해서는 효과적이다. 1개의 직선 매칭쌍 만으로도 2차원 공간에서의 3자유도 중에 2개의 자유도를 추론 할 수 있고 2개 이상의 매칭쌍을 이용하면 3자유도를 모두 추론 할 수 있다.


[Fig. 6] 

This example shows how the relative motion between query and reference is estimated by floor line. The matched lines(a) are extended to infinite line (b). And relative motion is estimated (c)



2.3 베이지안 추론을 통한 최종위치추론 방법

위 세션에서 설명된 전역적 위치 추론 방법과 상대적 위치 추론 방법을 이용해 베이지안 위치 추정을 시행 한다. 베이지 안 추론은 사전확률과 관측모델을 이용하여 사후확률을 추론 하는 방법으로 로봇의 사전위치와 움직임 모델, 관측 모델을 이용하여 현재 위치를 추종할 때 널리 사용 되고 있다. 우선 이전 시간 t-1에서의 로봇 위치 Xt-1를 사전확률분포 bel(Xt-1)로 정의 한다. 움직임 예측 모델은 이전 로봇의 위치 Xt-1와 휠 엔 코더로부터 측정된 로봇모션 ut을 이용하여 P(Xt|ut,Xt1) 와 같이 정의 하였다. 이때 전역 위치추정 관측 모델 식 (6)을 사용하 여 예상 위치 분포를 아래와 같이 계산 하였다.

bel¯(Xt)=ap(w|Xt)p(Xt|ut,Xt1)bel(Xt1)(21) 

이때 a는 정규화상수로써 사용 하였다. 위의 식에서 p(w|Xt ) 은 전역 지도에서 로봇의 위치를 빠르게 검색 할 수 있지만 로봇 의 자세 추정은 불가능 하다. 이를 보완하기 위해 bel(Xt )가 가 장 높은 상위 3개의 위치를 bel*(Xt )로 정의하고 해당 위치에 대해, [Fig. 6]과 같이, 상대적인 자세를 추정한다. 이때의 정합률 을 모델링한 p(ψ|Xt)을 사용 하여 최종 위치 추론을 하였다.

Bel(Xt)=ap(ψ|Xt)bel*(Xt)(22) 

2.4 고속 주행에 강인한 지연 위치추론

본 논문에서 제안하는 시스템은 싱글보드 컴퓨터로 구현 되 었고, 낮은 컴퓨팅 파워를 이용하고도 고속으로 주행 가능 하도 록 설계 되었다. 설명하려는 기법의 효과를 보기 위해 0.7 m/sec 로 주행하는 로봇이 식 (22)를 연산하는데 300 ms가 걸린다고 가정해 보자. 시작 시간 s에서 취득한 데이터를 이용하여 로봇 의 위치 p를 얻었고 그때의 시간을 e라고 하자. 만약 지연 위치 추론 기법없이 e시간에 로봇위치 p를 적용한다면 로봇은 해당 위치에서 이미 0.21 m 정도 벗어난 이후이다. 그렇기 때문에 로 봇은 해당 에러를 항상 가진 채 주행 해야 한다. 이러한 현상은 본 논문에서 제안하는 시스템이 고속주행과 저사양의 싱글보 드 컴퓨터를 목표로 하기 때문에 반드시 극복해야할 문제 이다.

이런 문제를 풀기 위해, 우선 시스템이 위치추론 질의를 시 작하는 시점의 로봇의 위치 ps가 기록 된다. 위 세션에서 기술 된 위치 추론 작업을 마치게 되면 그때의 로봇 위치 pe를 다시 기록 한다. 이때 두 위치의 차이를 Δps, e라 하고 위치 추정 기 법을 통해 수정된 위치를 ps ′ 라 한다면 응답이 끝난 시점의 수 정된 위치 pe ′ 는 이전 질의 시점의 로봇 위치로부터 수정치를 적용하여 아래와 같이 계산 한다.

pe=ps+Δps,e(23) 

이러한 방법을 통해, 로봇이 고속 주행을 할 시, 싱글보드의 느린 질의응답 속도가 시스템의 위치추론 정확도에 미치는 영 향을 최소화 한다.


3. 실험 및 결과

본 논문에서 제안하는 시스템은 c++로 개발 되었으며 일반적인 웹캠인 Logitech의 c920을 사용 하였다. 모바일 플랫폼은 최대선속도 1.1 m/s를 가지는 레드원 테크놀러지의 MRP-NRLAB 02 로봇을 사용하였으며, 컴퓨팅 유닛은 대략 $50 수준의 싱글보드 컴퓨터인 라즈베리파이 b+를 사용하였 다. 이 보드는 arm 계열의 1.4 Ghz quad-core A53 프로세서와 1 GB의 RAM을 가지고 있다. 로봇과 카메라의 칼리브레이션은 바닥에 놓인 체스보드를 사용하였으며 본 실험 구성에서 카메 라와 바닥의 높이는 33.4 cm로 측정 되었다. 실험 중 위 세션에 서 정의한 대로 분류된 직선들의 예제는 [Fig. 7]에서 보여지고 있다. 이렇게 분류된 직선들은 [Fig. 6]에서 예시로 보여지는 것처럼. 상대적인 자세를 추론하는데 이용 되었다.


[Fig. 7] 

This example shows how the line features are separated as vertical, s≤0 and floor. You can see the vertical lines are passing through a point and s≤0 lines are located behind the robot



실험은 한양대학교 IT/BT 3층, 한양대학교 FTC 3층, 한양 대학교 체육관 3층에서 진행 하였다 [Fig. 8]. 성능 검증을 위해 각 실험 장소의 임의의 지점에 4개의 목적지를 설정하였고, 해 당 목적지에 도착 시 에러와 목적지까지 이동한 평균속도를 10회씩 측정 하였다. 로봇의 최대 속도는 하드웨어의 한계치인 1.1 m/s로 주행하였으며, 회전 구간에서 감속 운행을 하기 때 문에 직선 구간이 길수록 높은 평균 속도로 측정 되었다. 최고 속도인 1.1 m/s는 상용화된 실내 주행용 로봇, Savioke의 Relay (0.7 m/s) LG의 AIRSTAR (1.0 m/s), 보다 고속이고 이런 시스 템이 싱글보드 컴퓨터로 구동 가능하는 하다는 점에서 의미가 있다. 대부분의 주행에서 [Table 1]에 표시된 평균보다 낮은 도 착 에러(Accuracy)를 가졌지만, 20 cm이상 크게 벗어나는 경우 가 각 환경 별로 2~3회씩 발생 하였다. 이는 주행 중 행인 또는 영상 블러링 등으로 인해 생긴 오인식 때문인 것으로 보인다.


[Fig. 8] 

The experimental environments are presented in this figure. 4 goals are marked as G1, G2, G3, and G4 in each environment, and the robot paths are shown as arrowed line. (a) is IT/BT building, (b) is FTC, and (c) is Gym



[Table 1] 

Experiment result




4. 결 론

본 논문에서 제안하는 시스템은 저가의 싱글보드 컴퓨터를 이 용하여 구현 되었으며 빠른 주기의 센서 데이터 없이 위상학적 지 도상의 노드 단위의 인식만으로도 충분히 고속의 정밀 주행이 가 능함을 보였다. 이는 기존의 많은 자율주행 연구들이 집중하고 있 는 방향과는 차이가 있고, 적은 가격으로 시스템을 구현 할 수 있다 는 점에서 다양한 응용 분야로의 진출가능성이 높다고 할 수 있겠다.

하지만 본 시스템은 단안 카메라의 위치 추정 성능을 강조 하기 위한 시스템으로, 목적지 도달 성능과 시간만을 측정하 였다. 정확한 외부 계측 장비로 모든 경로에 대해서 측정 한 것 이 아니기 때문에 시스템의 성능을 자세하게 측정하지 못했 다. 앞으로 보완 연구가 필요해 보인다.

실제 응용분야에 적용하기 위해서는 장애물을 감지하고 회 피하는 능력이 필요 할 것이다. 이는 단안 영상정보만으로는 한계가 있다. 단안 카메라에서 깊이 정보를 추출하기 위해서는 움직임 차이가 있는 두개의 영상을 비교하여 기하학적인 최적 화 기법을 이용해야 하는데, 이 방법을 본 연구의 목적과 같은 방향으로 설계 하기 위해서는 좀 더 연구가 필요해 보인다.


Acknowledgments

This project was supported by the Industrial Strategic Technology Development Program (10080638, 10083664) funded by the Ministry of Knowledge Economy (MKE, Korea)


References
1. D. Droeschel and S. Behnke, “Efficient Continuous-Time SLAM for 3D Lidar-Based Online Mapping,” 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, 2018.
2. W. Hess, D. Kohler, H. Rapp, and D. Andor, “Real-time loop closure in 2D LIDAR SLAM,” 2016 IEEE International Conference on Robotics and Automation (ICRA), Stockholm, Sweden, 2016.
3. M. R. U. Saputra, A. Markham, and N. Trigoni, “Visual SLAM and structure from motion in dynamic environments: A survey,” Journal ACM Computing Surveys (CSUR), vol. 51, no. 2, Jun., 2018.
4. Y. Lu, Z. Xue, and G.-S. Xia, “A survey on vision-based UAV navigation,” Geo-spatial Information Science, vol. 21, no. 1, pp. 21-32, 2018.
5. Y. Lin, F. Gao, W. Gao, T. Liu, W. Wu, Z. Yang, and S. Shen, “Autonomous aerial navigation using monocular visual‐inertial fusion,” Journal of Field Robotics, vol. 35, no. 1, pp. 23-51, 2018.
6. P. Cui, X. Gao, S. Zhu, and W. Shao, “Visual navigation using edge curve matching for pinpoint planetary landing,” Acta Astronautica, vol. 146, pp. 171-180, May, 2018.
7. T. Sayre-McCord, W. Guerra, A. Antonini, J. Arneberg, A. Brown, G. Cavalheiro, Y. Fang, and A. Gorodetsky, “Visualinertial navigation algorithm development using photorealistic camera simulation in the loop,” 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, 2018.
8. R. Mur-Artal, J. M. M. Montiel, and J. D. Tardos, “ORB-SLAM: a versatile and accurate monocular SLAM system,” IEEE Transactions on Robotics, vol. 31, no. 5, pp. 1147-1163, 2015.
9. M. Yazdi and T. Bouwmans, “New trends on moving object detection in video images captured by a moving camera: A survey,” Computer Science Review, vol. 28, pp. 157-177, May, 2018.
10. J. J. Lugo and A. Zell, “Framework for autonomous on-board navigation with the AR. Drone,” Journal of Intelligent & Robotic Systems, vol. 73, no. 1-4, pp. 401-412, Jan., 2014.
11. N. Jeong, H. Hwang, and E. T. Matson, “Evaluation of lowcost LiDAR sensor for application in indoor UAV navigation,” 2018 IEEE Sensors Applications Symposium (SAS), Seoul, South Korea, 2018.
12. L. Heng, L. Meier, P. Tanskanen, F. Fraundorfer, and M, Pollefeys, “Autonomous obstacle avoidance and maneuvering on a visionguided mav using on-board processing,” 2011 IEEE International Conference on Robotics and Automation, Shanghai, China, 2011.
13. A. Gongora and J. Gonzalez-Jimenez, “Enhancement of a commercial multicopter for research in autonomous navigation,” 2015 23rd Mediterranean Conference on Control and Automation (MED), Torremolinos, Spain, 2015.
14. F. Blochliger, M. Fehr, M. Dymczyk, T. Schneider, and R. Siegwart, “Topomap: Topological mapping and navigation based on visual slam maps,” 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, 2018.
15. D. W. Ko, Y. N. Kim, J. H. Lee, and I. H. Suh, “A scene-based dependable indoor navigation system,” 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Daejeon, South Korea, 2016.
16. J. H. Lee, G. Zhang, J. Lim, and I. H. Suh, “Place Recognition using Straight Lines for Vision-based SLAM,” 2013 IEEE International Conference on Robotics and Automation, pp. 3799-3806, Karlsruhe, Germany, 2013.
17. J. H. Lee, S. Lee, G. Zhang, J. Lim, W. K. Chung, and I. H. Suh, “Outdoor Place Recognition in Urban Environments using Straight Lines,” 2014 IEEE International Conference on Robotics and Automation (ICRA), Hong Kong, China, 2014.
18. Z. Chen, A. Jacobson, N. Sünderhauf, B. Upcroft, L. Liu, C. Shen, I. Reid, and M. Milford, “Deep learning features at scale for visual place recognition,” 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, Singapore, 2017.
19. C. Liang, Y. Tie, L. Qi, and C. Bi, “Deep ViDAR: CNN based 360° panoramic video system for outdoor robot visual navigation and SLAM,” Tenth International Conference on Digital Image Processing (ICDIP 2018), Vol. 10806, 2018.
20. Y. Zhu, R. Mottaghi, E. Kolve, J. J. Lim, A. Gupta, L. Fei-Fei, and A. Farhadi, “Target-driven visual navigation in indoor scenes using deep reinforcement learning,” 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, Singapore, 2017.
21. N. Smolyanskiy, A. Kamenev, J. Smith, and S. Birchfield, “Toward low-flying autonomous MAV trail navigation using deep neural networks for environmental awareness,” 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, Canada, 2017.
22. Y. Zhuang, Z. Syed, Y. Li, and N. El-Sheimy, “Evaluation of two WiFi positioning systems based on autonomous crowdsourcing of handheld devices for indoor navigation,” IEEE Transactions on Mobile Computing, vol. 15, no. 8, pp. 1982-1995, Aug., 2016.
23. W. Y. Jeong and K. M. Lee. “CV-SLAM: A new ceiling visionbased SLAM technique,” 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems, Edmonton, Alta, Canada, 2005.
24. C. Gamallo, M. Mucientes, and C. V. Regueiro, “Omnidirectional visual SLAM under severe occlusions,” Robotics and Autonomous Systems, vol. 65, pp. 76-87, Mar., 2015.

김 용 년

2012 한양대학교 응용물리학과(이학사)

2013~현재 한양대학교 지능형로봇학과 (석박통합과정)

관심분야: 자율주행, 경로계획

서 일 홍

1979 한국과학기술원 전자공학과(공학석사)

1982 한국과학기술원 전자공학과(공학박사)

1985~현재 한양대학교 융합전자공학부 교수

관심분야: 인공지능, 기계학습, 컴퓨터비젼