Advanced
A Landmark Based Localization System using a Kinect Sensor
A Landmark Based Localization System using a Kinect Sensor
The Transactions of The Korean Institute of Electrical Engineers. 2014. Jan, 63(1): 99-107
Copyright © 2014, The Korean Institute of Electrical Engineers
  • Received : October 20, 2013
  • Accepted : December 03, 2013
  • Published : January 01, 2014
Download
PDF
e-PUB
PubReader
PPT
Export by style
Article
Author
Metrics
Cited by
TagCloud
About the Authors
귀 우 박
Dept. of Control and Robot Engineering, Chungbuk National University, Korea
정 근 채
Dept. of Control and Robot Engineering, Chungbuk National University, Korea
상 호 문
Division of Computer Technology, Yeungnam College of Science&technology, Korea
찬 식 박
Corresponding Author : Dept. of Control and Robot Engineering, Chungbuk National University, Korea E-mail :chansp@chungbuk.ac.kr

Abstract
In this paper, a landmark based localization system using a Kinect sensor is proposed and evaluated with the implemented system for precise and autonomous navigation of low cost robots. The proposed localization method finds the positions of landmark on the image plane and the depth value using color and depth images. The coordinates transforms are defined using the depth value. Using coordinate transformation, the position in the image plane is transformed to the position in the body frame. The ranges between the landmarks and the Kinect sensor are the norm of the landmark positions in body frame. The Kinect sensor position is computed using the tri-lateral whose inputs are the ranges and the known landmark positions. In addition, a new matching method using the pin hole model is proposed to reduce the mismatch between depth and color images. Furthermore, a height error compensation method using the relationship between the body frame and real world coordinates is proposed to reduce the effect of wrong leveling. The error analysis are also given to find out the effect of focal length, principal point and depth value to the range. The experiments using 2D bar code with the implemented system show that the position with less than 3cm error is obtained in enclosed space(3,500 mm ×3,000 mm ×2,500 mm ).
Keywords
1. 서 론
오늘날의 항법은 자동차, 스마트폰에서 위치정보 제공의 역할 뿐만 아니라 지능형 로봇, 자율이동자동차 등의 미래형 시스템의 자율항법에 필수적 요소가 되었다. 특히 정확한 자율항법을 위해서는 정확한 위치결정 시스템이 필요하다 [1] . 대표적인 위치결정 방법으로 위성을 활용한 GPS(Global Positioning System)가 많이 사용되고 있다. 그러나 GPS는 실내 환경에 적용되기 힘든 단점을 갖고 있다. 이 문제점을 해결하기 위해 실내에서 사용할 수 있는 많은 위치결정 기법이 연구되고 있다 [2] . 관성센서를 이용한 실내항법 기법은 별도의 시설 구축 없이 사용할 수 있다는 장점이 있으나 시간이 지남에 따라 증가하는 누적오차가 발생하는 단점이 있어 독립적으로 사용하기 어렵다. WiFi, Zibgee, RFID 등의 RF(Radio Frequency)를 이용한 기법의 경우 정확도가 낮고 주변 환경에 따라 변화가 심해 초음파, 적외선 등의 추가센서, 비콘, 노드 등의 별도의 시설이 필요한 단점이 있다 [2 - 4] . 반면, 영상을 기반으로 한 위치결정 방법은 연산 량이 많고 조도에 영향으로 실내에 한정된다는 단점이 있지만 영상으로부터 많은 공간정보를 얻을 수 있으며 상대적으로 가볍고 저가이며 저 전력 이라는 장점이 있어 실내 환경의 위치결정에 해결책으로 많이 연구되고 있다. 일반적으로 영상을 기반으로 한 위치결정 기법의 위치정확도는 10cm 내외로 다른 방식에 비해 상대적으로 정확하다 [3 - 5] .
영상을 이용한 위치결정 방법은 사용되는 카메라에 따라 단일영상, 구조광을 활용한 영상, 스테레오 영상, 전 방향 영상 등으로 나뉜다 [4 - 7] . 그 중 Microsoft의 키넥트 센서는 구조광을 활용한 대표적인 예로 초당 30프레임의 컬러영상과 깊이영상을 제공하여 실시간 동작이 가능하다. 키넥트 센서는 각을 이용하는 단일영상 보다 거리측정치의 정확도가 높으며 스테레오, 전 방향 영상 등에 비해 저렴한 가격으로 구성이 가능해 매우 실용적이다 [4 , 5] . 키넥트 센서를 이용해 구현된 위치결정 시스템을 로봇에 적용하면 경제적이며 정확한 자율항법을 수행하는 로봇을 구성할 수 있다.
본 논문에서는 경제적이며 정확한 자율항법을 수행하는 로봇 구현을 위한 위치결정 방법으로 키넥트 센서와 인공표식을 이용한 위치결정 기법을 제시하고 이를 실제 구현하여 검증한다. 제안하는 위치결정 방법은 먼저 키넥트 센서로 취득한 컬러영상과 깊이영상을 이용해 인공표식의 영상위에서 위치와 그 깊이정보를 구한다. 이 정보를 이용하여 좌표계간의 변환 행렬을 정의하고, 이를 이용하여 영상좌표계의 인공표식의 위치를 항체 좌표계로 변환한다. 항체좌표계에서의 위치 벡터의 크기로부터 항체와 인공표식간의 거리를 구하고, 최종적으로 삼각측량법을 적용하여 실세계 좌표계에서 항체의 위치를 구하는 과정을 소개한다. 이 과정에서 키넥트 센서의 컬러영상과 깊이영상 부정합으로 발생하는 거리측정오차를 핀홀(pinhole) 모델을 이용해 제거하는 기법을 제시한다. 또한 삼각측량법에서 지면과의 수평유지의 부정확함으로 인하여 발생하는 높이 오차를 영상에서 구한 높이로 보상하는 방법을 제안한다. 제안한 위치결정기법을 검증하기 위하여 실제 환경에 2D 바코드를 [8] 인공표식으로 구축하고 위치결정 실험을 수행한다. 키넥트 센서의 초점거리 (focal length), 주점(principal point) 및 깊이정보(depth) 오차가 거리측정치에 미치는 영향을 분석하고, 이 결과와 실험 결과를 비교하여 그 타당성을 검증한다.
2. 키넥트 센서와 인공표식을 이용한 위치결정 알고리즘
- 2.1 키넥트 센서와 인공표식을 이용한 위치결정 기법
Microsoft의 키넥트 센서는 적외선 방식의 구조광을 활용한 대표적인 3D 센서로 그림 1 과 같이 적외선 영사기, 적외선 카메라, RGB 카메라로 구성된다. 깊이영상은 적외선 영사기에서 조사한 적외선 패턴을 적외선 카메라로 읽어 패턴 매칭 방식으로 생성한다 [9 - 12] . 깊이영상만으로 물체를 분간 할 수 없어 RGB 카메라로부터 얻는 칼러영상을 동시에 이용하여 특정 픽셀의 깊이정보를 얻을 수 있다. 이 정보는 모션인식, 얼굴추적, 3D 재구성 등의 분야에 적극 활용되고 있다 [10 - 12] . 키넥트 센서의 두 영상을 이용해 실세계 좌표상의 위치를 구하기 위해서는 컬러영상의 픽셀위치와 그에 해당하는 깊이정보가 정확히 대응되어야 한다. 그러나 키넥트 센서를 구성하는 RGB 카메라와 적외선 카메라의 사양이 달라 두 영상이 정확히 대응되지 않는다. 그림 2 는 두 영상을 단순히 더하여 나타낸 것으로 두 영상 픽셀의 불 일치도를 확인할 수 있다. 그림 2 에서 체커보드판과 책상 다리를 보면 정확히 일치하지 않는 것을 볼 수 있으며, 이는 픽셀에 대응되는 정확한 깊이정보를 취득하기 위해서 컬러영상과 깊이영상의 정합(matching)이 필요함을 나타낸다.
PPT Slide
Lager Image
키넥트 센서의 구성 Fig. 1 Configuration of Kinect Sensor
PPT Slide
Lager Image
컬러영상과 깊이영상의 부정합 Fig. 2 Mismatch between depth and color
키넥트 센서의 깊이정보는 그림 3 과 같이 카메라 정면방향에 해당하는 값으로 측정범위는 일반모드(800mm ~ 4,000mm)와 근접모드(600mm ~ 3,000mm) 중에서 선택하여 사용할 수 있다. 깊이정보 오차는 측정 거리에 따라 증가하며 최대 ±25mm의 불규칙 오차가 발생한다고 알려져 있다 [9] . 실제로 키넥트 센서를 이용해 2,500mm떨어진 벽면에 대하여 구한 깊이영상을 그림 4 에 나타내었다. 그림에서 영상의 외곽일수록 오차가 크며 불규칙적으로 발생됨을 알 수 있다. 그림 일부 구간에서는 200mm이상의 오차가 발생되며 사양에서 제시한 ±25mm보다 큰 값을 보인다. 이는 키넥트 센서가 지면과 정확히 수평을 이루지 못해 발생되는 오차이며 이는 위치결정시 높이( Zw ) 오차를 발생시킨다. 실제 적용에서 틸트(tilt) 모터의 움직임으로 인하여 키넥트 센서의 수평을 유지하기가 쉽지 않으므로 본논문에서는 별도의 높이 보정기법을 적용하여 이 문제를 해결한다.
PPT Slide
Lager Image
깊이영상의 기하정보 Fig. 3 Geometry of depth image
PPT Slide
Lager Image
깊이영상 취득결과 Fig. 4 Mesh graph of depth image
깊이영상과 컬러영상의 부정합과 높이 오차 보상을 고려한 위치결정기법의 흐름은 그림 5 와 같다. 먼저 키넥트 센서를 이용해 컬러영상과 깊이영상을 USB로 취득한다. 취득한 깊이영상과 컬러영상을 핀홀 모델을 이용하여 정합하며 이 과정은 2.2절에서 자세히 나타낸다. 다음 단계에서는 컬러영상에서 2D 바코드 형태의 인공표식을 인식하고 인공표식의 ID를 추출한다. 인공표식 인식 및 ID 취득을 위한 많은 방법 공개되어 사용되고 있으며 본논문에서 대표적인 방법인 2D 바코드와 인식 함수를 이용하여 구현한다 [8] . 3개 이상의 표식이 취득되면 삼각측량법으로 항체의 위치를 구하고 최종적으로 높이 오차를 보정하여 정확한 위치를 구한다. 위치결정은 2.2절, 높이 오차 보정 기법은 2.3장에서 자세히 나타낸다.
PPT Slide
Lager Image
키넥트 센서와 인공표식을 이용한 위치결정 기법의 순서도 Fig. 5 Flow chart of localization system
- 2.2 컬러영상과 깊이영상 정합
키넥트 센서에서는 RGB 카메라 초점거리가 적외선 카메라의 초점거리보다 짧아 컬러영상이 깊이영상보다 더 넓은 범위의 영상을 취득한다. 두 영상의 정확한 정합을 위해서는 두 영상의 초점거리를 맞추어야 한다. 깊이영상의 범위를 넓혀 맞추기 위해서는 보간 기법이 추가로 필요하므로 본 논문에서는 컬러영상의 범위를 축소하여 깊이영상에 맞추는 방법을 사용한다. 제시한 정합방법은 두 카메라의 모델을 핀홀 카메라 모델로 정의하고 두 모델의 사이의 관계를 유도함으로써 컬러영상을 깊이영상의 초점거리에 맞춘다. 핀홀 카메라 모델 [15] 은 핀홀을 통해 들어온 영상이 영상평면에 거꾸로 맺히는 원리를 이용해 카메라의 변수를 모델링 하는 방법으로 3차원의 위치가 2차원의 영상에 투영되는 것을 표현한다. 핀홀 카메라 모델은 식(1)과 같이 카메라의 초점거리( fx , fy )와 주점( cx , cy )으로 구성되며 실세계 좌표계의 점 P =[ x y z ] T 와 영상평면 좌표계의 점 P =[ x y ′ 1] T p = HP 의 관계를 갖는다. 그림 6 에 이들 관계를 자세히 나타내었다.
PPT Slide
Lager Image
PPT Slide
Lager Image
핀홀카메라 모델 Fig. 6 Pinhole camera model
키넥트 센서의 깊이영상과 컬러영상의 핀홀 카메라 모델은 식(2)로 나타낼 수 있다. 식(2)는 3차원 위치 P 가 깊이영상 핀홀 모델의 Hd 와 컬러영상의 핀홀 모델의 Hc 에 의해 깊이영상위의 위치 pd 와 컬러영상위의 위치 pc 로 투영됨을 나타낸다. 식(2)로부터 두 모델의 관계는 식(3)과 같다. 식 (3)에 의해 컬러영상이 깊이영상에 맞춰지는 과정은 그림 7 에 나타내었다.
PPT Slide
Lager Image
PPT Slide
Lager Image
여기서 ( HcHd −1 ) −1 는 식(4)와 같다. ( fxd , fyd , cxd , cyd )은 깊이 영상의 초점거리와 주점이며 ( fxc , fyc , cxc , cyc )는 컬러영상의 초점거리와 주점이다. 키넥트 센서에서 RGB카메라와 적외선 카메라는 실제 2.5cm의 거리만큼 떨어져 있으며 이로 인해 두 영상을 정합했을 때 컬러영상이 왼쪽으로 이동한 형태의 오차로 나타난다. 이 오차는 cx 에 오프셋 B 를 추가하여 보상한다.
PPT Slide
Lager Image
PPT Slide
Lager Image
컬러영상 위치(pc)의 깊이영상 위치(pd)로 변환 Fig. 7 Position in depth is converted in the position in color
식(3)을 이용하여 두 영상을 정합하기 위해서는 먼저 교정(calibration)을 통해 각 영상의 초점거리와 주점를 구해야 한다. 본 논문에서는 Bouguet의 체커보드를 이용한 방법 [13] 을 이용하여 카메라 교정을 수행한다. 교정에서 구해진 각 영상의 초점거리와 주점을 식(4)에 대입하고, 식(3)을 이용하여 컬러영상의 모든 좌표를 깊이영상의 좌표로 변환한다. 표 1 에 20개의 체커패턴 영상과 Bouguet의 기법을 이용하여 구한 정합 전 컬러 영상과 깊이영상 초점거리와 주점과 이 값을 이용하여 정합을 수행하여 구한 정합 후 컬러영상의 초점거리와 주점을 나타내었다. 정합 후 컬러영상의 초점거리 값과 깊이영상의 초점거리 값의 차이가 약 3픽셀 이내로 허용 오차범위에 포함되는 결과를 얻었다. 정합 후 컬러영상의 cx 에 포함된 약 20픽셀가량의 오차는 오프셋( B )가 추가됨으로써 나타난 값이다. 그림 8 에 정합 후 컬러영상과 깊이영상의 단순 합을 나타내었으며, 그림 2 에서 맞지 않던 체커보드와 책상다리가 일치함을 나타낸다.
교정 결과Table 1 Result of calibration
PPT Slide
Lager Image
교정 결과 Table 1 Result of calibration
PPT Slide
Lager Image
컬러영상과 깊이영상의 정합결과 Fig. 8 Result of color and depth matching
- 2.3 항체의 위치결정
본 논문에서 사용된 좌표계를 그림 9 에 나타내었다. 그림에서 픽셀좌표계 { Xp , Yp }는 키넥트 센서로 부터 취득되는 영상의 좌표계로 좌측 상단이 원점이다. 취득된 영상의 원점을 주점만큼 이동시켜 평면의 중심을 원점으로 하는 영상 평면 좌표계 { Xi , Yi }를 정의한다. 또 영상 평면의 2차원 좌표를 3차원 좌표로 변환하기 위하여 키넥트 센서를 원점으로 정면방향의 Zc 축이 추가된 키넥트 센서좌표계 { Xc , Yc , Zc }를 정의한다. 키넥트 센서가 장착된 항체좌표계 { Xb , Yb , Zb }는 항체의 정면을 Xb , 좌우 방향을 Yb , 상하 방향을 Zb 로 정의한다. 항체의 실험 공간 내에서의 위치 표현하기 위한 실세계좌표계 { Xw , Yw , Zw }를 정의한다. 본 논문에서 구하고자 하는 항체의 위치는 실세계 좌표계 상의 항체 좌표계 원점의 위치를 의미한다. 항체의 자세는 Xb 축의 회전을 롤(Roll), Yb 축의 회전을 피치(Pitch), Zb 축의 회전을 요(Yaw)로 정의한다.
PPT Slide
Lager Image
위치결정 환경과 좌표계 Fig. 9 Setting the environment and coordinate
항체의 위치 결정은 삼각측량법 [1 - 2] 을 사용하며, 이를 위해서 세 개 이상의 인공표식의 위치와 인공표식과 키넥트 센서 사이의 거리가 필요하다. 인공표식의 위치는 설치과정에서 정확히 알 수 있으므로 거리 측정치가 필요하다. 인공표식과 키넥트 사이의 거리는 다음과 같이 구한다. 키넥트 센서는 정합된 컬러영상으로부터 인공표식을 인식하여 픽셀 좌표계상 위치 Mpn = [ Mxpn Mypn ] T 와 ID를 추출한다 [8] . 또한 깊이영상으로부터 위치 Mpn = [ Mxpn Mypn ] T 의 깊이정보 Dn 을 취득할 수 있다. 깊이정보, 초점거리 및 주점을 이용하여 식 (5)의 좌표변환 행렬들을 구한다.
PPT Slide
Lager Image
는 픽셀좌표계에서 영상평면좌표로의 변환이며, 좌측 상단에 존재하는 원점을 영상의 중앙으로 이동시킨다.
PPT Slide
Lager Image
은 영상평면 좌표계에서 키넥트 센서좌표계로의 변환으로 초점거리와 깊이정보의 비례관계( Dn : fx = Xc : Xi ) [15] 를 이용하여 2차원의 영상평면 좌표를 3차원의 키넥트 센서좌표로 변환한다. 이때 깊이정보 Dn 은 키넥트 센서좌표계의 Zc 축과 같다 [10] .
PPT Slide
Lager Image
은 키넥트 센서 좌표계에서 항체좌표계로의 변환으로 본 논문에서는 키넥트 센서는 항체의 중심에 설치되었다고 가정하고 회전만 고려한다.
PPT Slide
Lager Image
항체좌표계의 인공표식 위치 Mbn = [ Mxbn Mybn Mzbn ] T 는 픽셀좌표계의 인공표식의 위치 Mpn = [ Mxpn Mypn ] T 를 식(6)에 대입하여 얻을 수 있다.
PPT Slide
Lager Image
식 (6)으로 구해진 인공표식의 항체좌표계상의 위치벡터 Mbn = [ Mxbn Mybn Mzbn ] T 의 크기를 구하면 식(7)과 같이 키넥트 센서와 인공표식 간의 거리 측정치를 구할 수 있다.
PPT Slide
Lager Image
식(7)의 측정치와 알고 있는 인공표식 n 의 위치 Mwn = [ Mxwn Mywn Mzwn ] T 를 이용하여 실세계 좌표계에서의 키넥트 센서의 위치 Pw = [ Pxw Pyw Pzw ] T 를 구할 수 있다. 키넥트 센서와 인공표식 n 사이의 거리는 식(8)로 나타낼 수 있다. 식(8)을 선형화 기준점 Pw 0 = [ Pxw 0 Pyw 0 Pzw 0 ] T 에서 선형화하면 식(9)를 얻는다 [2] . 여기서 R 0n 은 인공표식 n 과 선형화 기준점 사이의 계산된 거리,
PPT Slide
Lager Image
는 선형화 기준점에서 인공표식 n 으로의 시선(Line Of Sight)벡터를 나타낸다. 선형화 기준점은 처음 계산에는 실내 공간의 중심으로 그 이후는 항체의 직전 위치로 둔다.
PPT Slide
Lager Image
PPT Slide
Lager Image
위치결정을 위해 n (≥3)개의 인공표식에 대하여 선형화된 식을 정리하면 식(10)이 되고 식(11)로 간단히 표현할 수 있다.
PPT Slide
Lager Image
PPT Slide
Lager Image
(11)에 최소자승법을 적용하면 (12)의 위치오차를 구할 수 있다 [2] . 구해진 위치오차 δPw 를 선형화 기준점 Pw 0 = [ Pxw 0 Pyw 0 Pzw 0 ] T 에 더하여 위치를 구할 수 있으며 위치오차 δPw 의 크기가 문턱치 이하로 작아질 때 까지 이 과정을 반복하여 최종 위치를 구한다.
PPT Slide
Lager Image
- 2.4 높이오차 보정
키넥트 센서를 이용한 위치결정 과정에서 키넥트 센서가 지면과 정확히 수평을 이루지 못해 발생되는 깊이정보 오차로 인해 높이 오차가 발생한다. 삼각측량법을 이용한 시스템에서 측정치의 배치에 따라 식 (12)의 행렬 ( HTH ) −1 가 불량행렬(ill-conditioned)이 되어 특이문제(singular problem)가 발생하여 오차가 증폭되어 나타날 수 있다. 인공표식의 높이가 모두 같은 경우 높이오차를 줄이기 위한 테일러 급수 설계 방법으로 보상 [14] 하는 기법이 소개되었다. 그러나 본 논문에서는 높이오차 발생의 원인이 인공표식의 배치 문제가 아니라 깊이정보 오차에 의해 발생한다. 따라서 항체의 높이를 보정하기위한 별도의 과정이 필요하다. 본 논문에서 제안하는 깊이정보 오차에 따른 고도오차를 보정하는 과정은 다음과 같다. 식(13)은 미리 알고 있는 실세계 좌표상의 인공표식 위치( Mwn )와 키넥트 센서를 이용해 취득한 인공표식의 항체좌표계상의 위치( Mbn ) 관계를 나타낸다.
PPT Slide
Lager Image
여기서
PPT Slide
Lager Image
는 실세계 좌표계와 항체좌표계 간의 관계를 나타내며 식(14)와 같이 수평면의 회전(𝜓)과 실세계 좌표에서 항체의 위치 Pw = [ Pxw Pyw Pzw ] T 만큼의 이동으로 나타난다.
PPT Slide
Lager Image
식(13)과 (14)로부터 다음을 얻는다.
PPT Slide
Lager Image
식(15)에서 Mzwn Mzbn 는 알고 있는 값이므로 Pzw = Mzwn Mzbn 를 이용하면 삼각측량법과 무관하게 높이를 계산할 수 있다. n 개의 인공표식에 따하여 각각 구해진 높이의 평균을 구하면 최종 높이 Pzw *를 구할 수 있다.
PPT Slide
Lager Image
최종적으로는 식(17)과 같이 삼각측량법으로 구한 높이 Pzw 와 식(16)으로 구한 높이 Pzw *의 가중 합으로 최종 높이를 결정한다. 이때 가중치 k 는 실험환경에 따라 결정되며 항체가 롤(roll)과 피치(pitch) 방향으로 진동이 없다면 k =1로 두는 것이 유리하다.
PPT Slide
Lager Image
3. 거리측정치 오차요소와 영향분석
키넥트 센서를 이용해 삼각측량법으로 위치를 추정하기 위해 필요한 정보는 인공표식과의 거리측정치 𝜌 n 과 인공표식의 위치 Mwn = [ Mxwn Mywn Mzwn ] T 이다. 이 중 인공표식의 실제위치는 미리 알고 있는 참값이므로 위치결정 정확도에 직접적으로 영향을 주는 요소는 거리측정치 오차다. 거리측정치는 인공표식의 픽셀좌표상의 위치와 깊이정보, 카메라모델의 매개변수로 계산되므로 거리측정치 오차를 발생시키는 주요 오차원인은 카메라 모델의 초점거리 오차, 주점 오차와 깊이정보 오차이다. 이 장에서는 거리측정치 오차영향을 분석하기 위해 초점거리, 주점, 깊이정보에 대하여 인공표식의 키넥트 좌표계상의 각 축의 위치에 발생하는 오차 식을 유도하여 그 영향을 분석한다.
- 3.1 초점거리 오차의 영향 분석
식(18)의 초점거리에 포함된 오차를 고려하여 초점거리가 거리측정치에 미치는 영향을 분석한다. 여기서
PPT Slide
Lager Image
,
PPT Slide
Lager Image
는 참 값을 δfx , δfy 는 초점거리 오차를 나타낸다.
PPT Slide
Lager Image
식(6)의 변환행렬에 오차가 포함된 초점거리를 대입하여 변환행렬을 구하고, 이를 이용하여 픽셀좌표상의 인공표식의 위치( xi , yi )를 키넥트 센서 좌표계 상의 위치( Xc , Yc , Zc )로 변환하면 식(19)가 된다.
PPT Slide
Lager Image
식(19)에서 Zc 는 초점거리 오차에 의해 영향을 받지 않음을 볼 수 있다. 일반적으로
PPT Slide
Lager Image
이므로
PPT Slide
Lager Image
,
PPT Slide
Lager Image
가 되며 이로부터 식(20)과 같이 오차( δXc , δYc , δZc )를 구할 수 있다.
PPT Slide
Lager Image
식(20)에서 Xc Yc 에 미치는 초점거리 오차영향은 인공표식의 깊이 값 D 이 작을수록, 인공표식의 영상평면위의 위치 ( xi , yi )가 원점에 가까울수록, 초점거리 값이 클수록 오차영향이 줄어든다. 즉 영상의 중심에 가까운 인공표식일수록, 카메라의 초점거리가 길수록, 교정을 잘 할수록 초점거리 오차에 의한 영향이 감소함을 알 수 있다.
- 3.2 주점 오차의 영향 분석
식(21)의 오차가 포함된 주점을 고려하여 이 오차가 거리 측정치에 미치는 영향을 분석하였다..
PPT Slide
Lager Image
앞에서와 같은 방법으로 식(6)에 식(21)을 대입하여 다음의 식(22)를 얻는다.
PPT Slide
Lager Image
각 축의 오차를 계산하면 식(23)과 같다.
PPT Slide
Lager Image
식 (23)에서 주점 오차는 초점거리 오차와 같이 Zc 에 영향을 주지 않는다. 각 축의 오차는 깊이정보 D 에 비례하고 초점 거리에 반비례하며 영상평면상의 인공표식 위치 ( xi , yi )와는 관계가 없음을 알 수 있다. 즉 카메라의 초점거리가 길수록, 교정을 잘 할수록 주점 오차에 의한 영향이 감소한다.
- 3.3 깊이정보 오차의 영향 분석
깊이정보의 오차를 고려하면 식(24)와 같다.
PPT Slide
Lager Image
오차가 추가된 깊이정보를 이용하여 카메라 좌표계의 위치로 변환하면 식(25)와 같다.
PPT Slide
Lager Image
각 축의 오차를 계산하면 식(26)과 같다.
PPT Slide
Lager Image
식(26)에서 깊이정보 오차는 Zc 에 직접 영향을 미침을 볼 수 있다. 반면 Xc Yc 에는 초점거리와 영상좌표의 비가 곱해지며 이 값은 언제나 1보다 작아 Zc 보다 적은 영향을 받는다. 영상의 중심에 가까울수록 깊이정보 오차의 영향이 0에 가까워진다.
4. 실험 및 검증
- 4.1 위치결정 실험
제안한 시스템의 위치결정 정확도를 검증하기 위해 알고리즘을 구현하고 실제 환경에서 실험하였다. 그림 10 과 같이 3,500 mm ×3,000 mm ×2,500 mm 공간의 벽에 총 72개의 인공표식을 부착하였다. 인공표식은 그림 11 의 2D 바코드를 사용했으며 공개된 2D 바코드 인식 함수 [8] 를 사용하였다. 2D 바코드는 각각 고유의 ID를 갖고 있으며 이미 저장되어 있는 실세계 좌표계상 위치정보와 대응되도록 하였다.
PPT Slide
Lager Image
실내 위치결정환경(좌), 인공표식 배치(우) Fig. 10 Environment of Indoor localization(lett), the placement of landmark(right)
PPT Slide
Lager Image
인공표식으로 사용된 2D바코드 Fig. 11 2D bar code that used as landmark
실험은 인공표식이 설치된 각각의 벽면을 바라보는 세 곳의 위치에서 항체가 정적인 상태일때 위치를 추정하였다. 각 위치에서 200프레임의 영상 획득하고 처리하였다. 각 프레임으로부터 거리측정치는 항상 3개 이상 취득되었다. 그림 12 에 세 곳에서 구한 위치와 알고 있는 실제위치 및 인식된 인공표식들의 위치를 나타내었다. 논문에서 제시한 위치결정기법을 적용하여 구한 위치와 알고 있는 위치의 차이의 평균과 표준편차를 표 2 에 나타내었다. 표에서 ( δPxw , δPyw , δPzw )는 식(13)의 삼각측량법으로 구한 위치이고, δPzw *는 식(16)의 높이 오차 보정기법을 적용한 결과이며, 보정기법에 의하여 높이 오차가 확연히 줄어듦을 확인할 수 있다. 각각의 위치에서 3cm 이내의 정확도로 위치를 구할 수 있다.
PPT Slide
Lager Image
위치결정 결과(왼쪽부터 위치 1, 2, 3) Fig. 12 Localization result(from the left 1, 2, 3)
위치결정 오차Table 2 Error of localization
PPT Slide
Lager Image
위치결정 오차 Table 2 Error of localization
- 4.2 오차해석의 타당성 검증
3장의 오차해석의 타당성을 검증하기 위하여 오차해석 결과와 실제 환경의 수치를 이용하여 거리측정치 오차 예측치를 계산하고 실험에서 실제 발생된 거리측정치의 오차와 비교한다. 실제 환경에서 발생할 수 있는 초점거리 오차에 따라 발생하는 거리측정치의 오차 범위는 다음과 같이 구할 수 있다. 초점거리는 표 1 의 정합 후 컬러영상의 값으로부터
PPT Slide
Lager Image
,
PPT Slide
Lager Image
으로 두었다. 또한 깊이정보 D는 4,000 mm , 실험공간의 크기는 3,500 mm ×3,000 mm ×2,500 mm , xi 는 320, yi 는 240으로 두었다. 이상의 조건에 대하여 식(20)으로부터 δXc 는 ±9.21 mm , δYc 는 ±6.86 mm 로 나타난다. 이를 고려하면 초점거리 오차에 의해 발생되는 거리측정치의 오차범위는 ±10.06 mm 이다.
주점 오차에 따라 발생하는 거리측정치의 오차 범위를 같은 방법으로 계산한다. 주점은 표 1 의 정합 후 컬러영상의 값으로부터
PPT Slide
Lager Image
,
PPT Slide
Lager Image
으로 두었다. 이상의 조건에 대하여 식(23)으로부터 δXc 는 ±28.49 mm , δYc 는 ±25.02 mm 로 나타난다. 이를 고려하면 주점오차에 의한 거리측정치의 오차범위는 ±33.29 mm 이다.
깊이정보 오차에 따라 발생하는 거리측정치의 오차 범위도 같은 방법으로 계산한다. δD =±25 mm 로 두면 식(26)으로부터 δXc 는 ±10.85 mm , δYc 는 ±8.11 mm , δZc 는 ±25 mm 로 나타난다. 이를 고려하면 깊이정보 오차에 의한 거리측정치의 오차범위는 ±23.77 mm 이다.
초점거리, 주점, 깊이정보의 오차의 합은 ±67.12 mm 이며 이 값은 거리측정치 오차의 예측 값이다. 그림 13 은 각각의 위치에서 취득한 인공표식의 거리측정치 오차를 나타낸 것이다. 측정된 거리측정치 오차는 위치 2에서 최대로 발생 했으며 그 값은 45 mm 이다. 이로부터 본 논문에서 제시한 오차해석과 실험이 일치함을 확인하였다.
PPT Slide
Lager Image
표식별 거리측정치 오차 Fig. 13 Missmatch Color and Depth Image
5. 결 론
본 논문에서는 키넥트 센서와 인공표식을 이용한 위치결정 시스템을 제안하였다. 인공표식의 위치와 인공표식까지의 거리 측정치에 삼각측량법을 적용하여 위치를 결정한다. 키넥트 센서의 컬러영상을 처리하여 인공표식을 인식하고, 저장된 인식된 인공표식의 위치를 추출한다. 키넥트 센서의 깊이영상을 처리하여 거리측정치를 구하였다. 이 과정에서 깊이영상과 컬러영상의 부정합을 해결하기 위한 핀홀 모델을 이용한 정합기법을 제시하고 적용하여 거리측정치 오차를 줄였다. 또한 키넥트 센서가 지면과 수평을 이루지 못하여 발생하는 높이오차의 영향을 줄이기 위하여 영상에서 실세계좌표와 항체좌표계의 관계로부터 새로운 높이 결정기법을 제안하였다. 추가로 거리측정치에 초점거리, 주점 및 깊이정보오차가 미치는 영향을 유도하고 분석하였다. 이로부터 초점거리가 길수록, 영상의 중심에 가까울수록, 교정을 잘 할수록 거리오차가 줄어듦을 확인하였다. 구현된 위치결정 시스템을 2D 바코드를 인공표식으로 구성한 실내 환경에서 실시한 실험결과 3개 이상의 인공표식이 존재할 때 3,500 mm ×3,000 mm ×2,500 mm 공간에서 3cm 이내의 정확도로 위치를 구할 수 있음을 확인하였다. 또한 오차해석의 결과가 실험과 일치함도 확인하였다. 이 결과로부터 키넥트 센서를 이용한 위치결정 시스템이 실내 환경에서 사용될 로봇에 효과적으로 적용될 수 있을 것으로 기대된다.
BIO
박 귀 우 (朴 貴 宇) 2013년 2월 충북대학교 전자공학과 졸업. 2013년 3월∼현재 충북대학교 제어로봇 공학과 석사과정. 관심분야는 영상기반항법, GPS신호생성기, SDR Tel : 043-261-3259 E-mail : zumbox@cbnu.ac.kr
채 정 근 (蔡 正 根) 2013년 2월 충북대학교 전자공학과 졸업. 2013년 3월∼현재 충북대학교 제어로봇 공학과 석사과정. 관심분야는 관성항법, 센서네트워크, 임베디드 시스템 Tel : 043-261-3259 E-mail : cjg0731@cbnu.ac.kr
문 상 호 (文 相 鎬) 1982년 경북대학교 전자공학과 졸업. 1984년 동 대학원 석사. 1998년 경상대학교 전자계산학과 박사. 1983년∼1995년 삼성종합기술원 연구원. 1995년∼현재 영남이공대학 교수. 관심분야는 컴퓨터그래픽스, 멀티미디어 Tel : 053-650-9653 E-mail : shmoon@ync.ac.kr
박 찬 식 (朴 贊 植) 1984년 서울대학교 제어계측공학과 졸업. 1986년 동 대학원 석사. 1997년 동 대학원 박사. 1987년∼1997년 삼성전자 연구원. 1997년~현재 충북대학교 교수. 관심분야는 GNSS, PNS, SDR, 미지정수 결정 알고리즘, 오차해석 Tel : 043-261-3259 E-mail : chansp@cbnu.ac.kr
References
BETKE Margrit , GURVITS Leonid 1997 "Mobile robot localization using landmarks" IEEE Transactions on Robotics and Automation 251 - 263
Park Chansik , Yim Jaegeol 2010 “A Performance Comparison of Positioning Methods Considering Measurement Noise” Journal of Institute of Control, Robotics and Systems 16 (12) 1176 - 1181    DOI : 10.5302/J.ICROS.2010.16.12.1176
KOYUNCU Hakan , YANG Shuang Hua 2010 "A survey of indoor positioning and object locating systems" IJCSNS International Journal of Computer Science and Network Security 10 (5) 121 - 128
Kim Jongrok , Lim Mee-Seub , Lim Joonhong 2011 “Omni Camera Vision-Based Localization for Mobile Robots Navigation Using Omni-Directional Images” Journal of Institute of Control, Robotics and Systems 17 (3) 206 - 210    DOI : 10.5302/J.ICROS.2011.17.3.206
Kim Youngsun , Ji Hyun-min , Hwang Dong-Hwan 2012 “Two-Dimensional Navigation Error for Geometry of Landmark in Line-Of-Sight Measurement Based Vision Navigation System ” The Transactions of The Korean Institute of Electrical Engineers 61 (3) 479 - 484    DOI : 10.5370/KIEE.2012.61.3.479
QI Yufei 2012 "A Performance Analysis of Vision-Based Robot Localization System" Lehigh University
Gao H. , Liu J. , Yu Y. , Y Li 2013 "Distance Measurement of Zooming Image for a Mobile Robot" International Journal of Control, Automation and System 11 (4) 782 - 789    DOI : 10.1007/s12555-012-9324-9
Open Robotics Blog http://blog.daum.net/pg365/
Khoshelham K. 2011 “Accuracy Analysis of Kinect Depth Data” International Archives of the Photogrammetry Remote Sensing and Spatial Information Sciences ISPRS Calgary 2010 Workshop Canada
Microsoft MSDN http://msdn.microsoft.com/en-us/ library/hh855347
OpenKinect http://openkinect.co.kr/
Wikipedia http://www.wikipedia.org/
JeanYvesBouguet http://www.vision.caltech.edu/ bouguetj/calib_doc
Kang Hee Won , Hwang Dong-Hwan , Park Chansik 2010 “TDOA Measurement Based Taylor Series Design Method Considering Height Error for Real-Time Locating Systems” Journal of Institute of Control, Robotics and Systems 16 (8) 804 - 809    DOI : 10.5302/J.ICROS.2010.16.8.804
Bradski Gray , Kaehler Adrian 2008 "Learning Opencv: Computer Vision with the Opencv" 495 - 511