MCMC 방법을이용한자율주행차량의보행자탐지및추적방법 113 MCMC 방법을이용한자율주행차량의보행자탐지및추적방법 Pedestrian Detection and Tracking Method for Autonomous Navigation Vehicle using Markov chain Monte Carlo Algorithm 황중원 1, 김남훈 1, 윤정연 1, 김창환 Jungwon Hwang 1, Namhoon Kim 1, JeongYeon Yoon 1, ChangHwan Kim Abstract In this paper we propose the method that detects moving objects in autonomous navigation vehicle using LRF sensor data. Object detection and tracking methods are widely used in research area like safe-driving, safe-navigation of the autonomous vehicle. The proposed method consists of three steps: data segmentation, mobility classification and object tracking. In order to make the raw LRF sensor data to be useful, Occupancy grid is generated and the raw data is segmented according to its appearance. For classifying whether the object is moving or static, trajectory patterns are analysed. As the last step, Markov chain Monte Carlo (MCMC) method is used for tracking the object. Experimental results indicate that the proposed method can accurately detect moving objects. Keywords: Detection and Tracking of Moving Objects, Markov Chain Monte Carlo(MCMC) 1. 서론 1) 최근로봇이나차량이자율적으로주행하게하기위하여데이터를수집하고, 처리하고, 이를이용하여하드웨어를제어하는많은연구가진행되고있다. 그러한많은연구중에장애물을찾는것과관련된연구는매우기본적인연구이며중요한연구이다. 장애물을찾는방법은이용하는센서에따라레이저거리센서를이용하는방법과 [1-4] 카메라를이용하는방법 [5,6] 으로나눌수있다. 또한움직이는객체를찾는방법과 [1-6] 움직임을구분하지않고객체를찾는방법으로 [7] 나눌수있다. 본연구는여러연구주제중, 레이저거리 Received : Mar. 6. 2012; Reviewed : Mar. 22. 2012; Accepted : Apr. 20. 2012 This work was supported by the R&D program of the Korea Ministry of Knowledge and Economy (MKE) and the Korea Evaluation Institute of Industrial Technology (KEIT). (The Development of Low-cost Autonomous Navigation Systems for a Robot Vehicle in Urban Environment, 10035354) 교신저자 : 한국과학기술연구원책임연구원 1 한국과학기술연구원 센서만을이용하여움직이는객체를찾는방법에관한연구이다. 레이저센서를이용하여이동객체를찾는방법중, 가장대표적인방법은 C.C.Wang이제안한 SLAMMOT (SLAM with Moving Objects Tracking) 방법 [2] 이다. 이방법은 SLAM 방법에서정적인객체와동적인객체를구분하여, 이동차량의위치정보파악과 (Localization) 이동객체정보를모두찾아내는방법이다. 이방법은실시간으로정보를처리할수있는장점도가진다. 그러나정적정보를활용하기위한충분한데이터가없는경우즉, 이동객체가매우많은경우에는적용하기매우어렵다는단점을가진다. 본연구는위치정보를파악하는방법과이동객체를찾아내는방법을혼합하지아니하고, 파악된위치정보를사용하여이동객체를찾는방법을제안한다. 이를위하여 T. Mori가제안하는방법 [9] 인물체의이동궤적을이용하는방법을사용하여이동물체는찾는방법을제안한다.
114 로봇학회논문지제 7 권제 2 호 (2012. 6) 또한본논문에서제안하는방법의처리속도를향상시키기위하여물체를추적하는방법에 Markov chain Monte Carlo(MCMC) 알고리즘을이용하여계산복잡도를감소시키는방법을제안한다. 본논문의구성은다음과같다. 2장에서는객체모델을정의하고이를탐지하는방법을기술하며, 3장에서는객체의이동성을측정하는방법을제안한다. 4장에서는탐지된객체를추적하는방법을제안하고, 5장에서는실험결과를분석하고, 6장에서는결론을맺는다. 2. 객체모델 먼저, 이장에서는객체모델을형성하기위하여격자지도를생성하는방법과본연구에서제안하는보행자모델을제시한다. 2.1 격자지도생성 자율주행차량에서이동방향전방에있는객체를찾기위하여레이저거리센서 (Laser Range Finder: LRF) 데이터를사용한다. 거리데이터만을가지고객체를파악할경우, 계산복잡도가매우높고, 오류가많이발생할수있기때문에, 이를간소화하는작업이필요하다. 본연구에서는가장일반적인간소화방법으로, 격자지도를생성하는방법을제안한다. 격자지도를생성하기위한확률은수식 (1) 과같다. (1) 수식 (1) 에서 는격자지도의한격자를의미하고, 는그격자지도에들어온포인트의수, 는그격자지도에들어올수있는최대포인트의수를의미한다. 는다음과같다. ( 단, ) (2) 는레이저거리센서의각해상도를의미하고, 는차량의위치와격자 () 사이의거리를의미한다. 는상수이다. 거리 의임계치 ( ) 는센서의각해상도 () 에의해결정된다. 격자지도를생성하기위한확률이높을수록해당 격자는객체가있는것으로판단되고, 낮을수록객체가없는것으로판단하여격자지도를생성한다. 2.2 보행자모델일반적인주행차량의경우, 센서는차량의앞범퍼에해당되는곳에위치하게된다. 센서가낮은부분에위치하여있기때문에, 이러한센서로보행자를탐색할경우, 보행자의무릎보다조금높은위치를탐색하게된다. 이러한경우, 데이터가좌측, 우측발을각각탐색하게되고, 각발을서로다른이동객체로인식하게된다. 보행자의좌측, 우측발을각각탐색하게되면, 동적객체의움직임이일정하지않게된다. 이는객체를추적하는과정에있어오류를발생시키게되고, 움직임을파악하여회피주행을할경우에도오류를발생시킬수있다. 이러한이유로 Jae Hoon Lee [8] 은보행자의보행방법에따른보행자모델을만들고, 보행자모델을바탕으로보행모델을제안하였다. 그러나이방법은보행자의발이서로가려지는현상 (Occlusion) 이발생할경우적용하기매우어려울뿐만아니라, 레이저센서와보행자의다양한위치관계에따른많은데이터의변화를모두모델링하기매우어렵다. 또한이방법은소수의보행자의패턴에적용하기에는적합하나, 보행자수에비례하여계산량이많아지는단점을가진다. 센서가가진오차도무시할수없다. 센서와보행자사이에일정거리이상 ( 약 5m) 만떨어져도, 보행자를탐지하는센서의탐지각도도매우줄어들고, 데이터오차도많이발생하게된다. 본연구에서는이러한문제를해결하기위하여, 센서를통하여획득한데이터를분석하여, 기계학습방법을이용한객체분류방법을제안한다. 다양한장소에서다양한방법으로이동한보행자를추출한후, 이데이터를학습하고분류하는방법을제안한다. 분류및학습을하기위한데이터특징모델은다음과같다. (3) 은격자지도내에존재하는객체중, 번째객체의보행자모델을의미하고, 이는정규화된객체의크기 ( ), 정규화된모양 ( ), 속력 ( ), 방향 ( ) 의정보로구성된다. 보행자모델을만들기위하여그림
MCMC 방법을이용한자율주행차량의보행자탐지및추적방법 115 (a) (b) (c) 그림 1. 보행자모델및그생성과정의예. (a) 입력데이터, (b) 모폴로지알고리즘수행결과, (c) 속도및방향추출결과 1(b) 와같이격자지도를모폴로지 (Morphology) 알고리즘의닫기 (Closing) 방법을사용하여좌, 우측발이분리되지않고한개의객체로보일수있게처리한후, 그림 1(c) 와같이각객체의크기, 모양, 속도, 방향정보로벡터를구성한후, 이를분류기를사용하여분류한다. 3. 객체이동성판단 이동하는차량에장착된레이저센서를통하여데이터를획득할경우, 획득한데이터에서객체의이동성을파악하는작업이필요하다. 이를파악하지아니하고모든물체들을탐지및추적할경우, 실시간으로이를파악하기어려울정도로계산복잡도가증가하기때문이다. 본연구에서는객체의이동성을측정하기위하여물체의이동궤적을이용하는방법을제안한다. 물체의궤적을이용할경우, 차량의위치정보를같이활용하기때문에, 움직이는차량에서도동적객체와정적객체를효율적으로구분할수있는장점을가진다. 일반적으로동적장애물탐지연구방법들이가지는문제점으로, 동적장애물이차량과동일한속도로움직일경우, 이를동적장애물로탐지하기어렵다는문제를가진다. 그러나차량의위치정보와물체의궤적을함께사용하는본방법의경우, 이러한문제를해결할수있다. 이동궤적은그림 2의방법으로이동궤적을구하는방법을제시한다. 이방법을수식으로표현하면다음과같다. 는 번째시간에격자지도에서 의위치에있는물체의이동궤적을의미하고, 는스무딩필터 (4) 그림 2. 객체의이동궤적을구하는방법 (Smooth Filter) 를의미한다. 는 번째시간의격자지도를의미한다. 스무딩필터의파라미터는궤적값 (Trajectory Cost) 에따라부여되며, 이궤적값은궤적을합칠때, 영역이겹쳐지는정도를의미한다. 영역이합쳐지는정도 (Overlap Score) 는 Taketoshi Mori [9] 의방법과매우유사하나, 그는객체의주위격자만을고려하였고, 본방법은객체의이동속도에따라더많은격자를고려한다는점에서차이를가진다. 영역이합쳐지는정도를구하는방법은수식 (5) 와같다. (5) Taketoshi Mori 의연구방법은수식 (5) 의식에서,, 로계산하지만, 본방법은객체가움직이는속도에따라서 값을조절하는방법을사용하였다. 즉, 객체가움직이는속도가빠를경우, 값이증가하고, 반대의경우감소한다. 수식 (5) 에서 은겹치는격자의수를의미하고, 는상수로, 실험을통하여구한값을사용하였다. 수식 (4) 를이용하여추출한궤적을이용하여객체의이동성을측정하기위해, 객체의모습에서특징을추출하여이를분류기를사용하여구분하는방법을활용한다. 즉, 궤적과그안에위치하는현재객체의모습을바탕으로물체가이동하는물체인지정지하는물체인지를판단한다. 객체와궤적의모습을격자지도에형성한후, 수식 (6) 의방법으로그특징을구성한다.
116 로봇학회논문지제 7 권제 2 호 (2012. 6) (6) 번째시간에있는 번째객체의모델 ( ) 은객체와궤적의넓이 ( ), 종횡비 (Aspect Ratio, ), 둘레의길이 ( ), 궤적에대한객체의비율 ( ) 로이루어진다. (o : 객체, : 궤적 ) 이렇게구한객체의모델은이동성이있는객체, 이동성이없는객체로분류되며, 분류기를통하여이를분류한다. 4. 객체추적 객체 () 가이동성이있는객체로분류한뒤, 분류된객체를추적하는방법은아래수식 (7) 의사후확률을최대화시키는문제로생각할수있다. (7) 베이시안사후확률은다음과같이베이시안공식으로해석할수있다. (8) 즉, 사후확률은사전확률 (prior) 과우도 (likelihood) 로표현할수있다. 모든객체들이서로독립적이라고가정하면, 사전확률은각객체들의사전확률의곱으로정의할수있다. (9) 각객체는동일한시간에있는다른객체와독립적이고, 서로다른시간에있는객체와도독립적이기때문에, 사전확률은각객체가가지고있는모양, 크기정보를모두독립적으로반영한다. 본연구에서는각객체가가지고있는모양과크기정보만을이용하여사전확률로사용한다. 우도는객체와데이터간의물리적인거리차이를사용하였다. 즉, 객체에있는데이터와데이터와의거리가가까울수록우도값은커지고, 멀수록우도값은작아진다. 그러나단순히객체에있는데이터와입력으 로들어오는데이터와의거리만이용하였을경우, 센서에서생기는오차값과, 객체에포함되어있는다른데이터의값을반영하지않기때문에, 보행자객체모델의중심점과데이터와의거리사이의값은가우시안함수의형태로우도값을정의한다. 알고리즘 1. Markov chain Monte Carlo 입력값 : 출력값 : for =1 to sample with if U([0,1]) < if end end else 본연구에서는수식 (8) 을계산하기위한방법으로 Markov chain Monte Carlo(MCMC) 알고리즘을제안한다. 레이저데이터는연속적인데이터이지만주기적으로반복하는데이터가아니기때문에, MCMC 알고리즘을사용할수있는조건을만족한다. MCMC알고리즘은가장적합한분포 () 를추출할수있는방법으로, 본연구에서추출하고자하는분포는 이다. 이를계산하기위한가상코드를 [ 알고리즘 1] 에서제시한다. 5. 실험및결과 실외환경에서자율주행을하기위하여전동스쿠터시스템을구축하고, 레이저거리센서와 IMU 센서를이용하여데이터를획득하였다. 실험을위해사용한레이저거리센서는 SICK사의 LMS151 모델로, 전방 180 를 25Hz의속도로스캔이가능하다. 레이저거리센서의위치는그림 3과같이설치하였다. 상단의레이저센서는차량진행방향의노면정보를수집하고하단의레이저센서는보행자및장애물탐지에필요한데이터를수집하여스쿠터주변의환경을인식할수있게하였다. 격자지도를생성하기위해서사용한격자의사이즈는 10cm 10cm을사용하였고, 격자내에들어가는최대포인트의수를구하기위한파라미터 () 는 45,
MCMC 방법을이용한자율주행차량의보행자탐지및추적방법 117 그림 3. 자율주행차량각해상도는 5 로사용하였다. 보행자모델을학습하기위하여사용한파라미터의실험방법은다음과같다. 객체크기 ( ) 는은제안하는격자지도에서객체가차지하는격자의수를사용하였고, 정규화된모양 ( ) 은객체를포함하는최소포함사각형변의길이비율을사용하였다. 이와같이속도와방향의정보를사용하여, 총 4차원의모델데이터를사용하였다. 보행자모델을학습하기위한보행자는, 차량주행시차량의전방에서다양한방향, 다양한속도로이동한보행자의데이터약 500개를사용하였으며, 각모델의검증자료는 (Ground-Truth) 사람이직접추출한결과를사용하였고, 이를학습및분류하기위하여 SVM 분류기를사용하였다. 보행자탐지성능은, 전체 4689개의프레임내에존재하는모든객체 (40328개) 중에서보행자객체의수 (1639개) 보다 3배가량많은 5208개가검출되었다. 검출한보행자모델의궤적을추출하여최종적으로검출한움직이는보행자를총 1431개검출하여, 87.31% 의탐지율을보였다. 객체의이동성을추출하기위하여보행자모델의분류를위하여추출한약 500개의보행자모델에서약 400개의이동중인보행자정보를사용하여학습하였다. 또한궤적추출을위하여사용한프레임은현재프레임에서부터이전 10 프레임을사용하다. 보행자모델을학습및분류하기위하여 SVM 분류기를사용하였다. 실험은차량에장착되어있는 PC(Dual Core 2.3Ghz, 2GB RAM) 에서이루어졌으며, 수행속도는 최소 25Hz의결과를얻었다. 실험은이동객체탐지율과추적율을도출하였으며, 이를위해서자체제작한데이터베이스에서총4689개의프레임에서검증자료 (Ground-Truth) 를추출하여실험을진행하였다. 실험결과, 87.31% 의탐지율과 75% 의추적율의결과를보일수있었다. 실험을위해사용한탐지율은, 동적객체를올바로탐지한수를전체동적객체수로나눈값이고, 추적율은실제경로와일치하는정도가 80% 이상인궤적의비율을사용하였다. 그림 4는차량이움직일때, 올바르게탐지및추적한추적결과이다. 약 1초동안차량이움직이면서획득한데이터를바탕으로처리한결과를보여준다. 동심원의중앙이현재이동하고있는차량의위치이다. 보행자탐지결과는네모박스로표하였다. 그림 5는보행자를잘못인식한결과이다. 차량의이동방향전면에검출된보행자로인해, 후방에있는데이터에가려짐현상 (Occlusion) 이발생하여, 잘못된궤적을형성하고, 이에따른오인식이발생한경우이다. 본알고리즘은물체의이동궤적을사용함으로, 차량주행중에움직이는객체탐지에용이하나, 가려짐현상에약한단점을가진다. 실험에사용한검증자료에서는객체가나타나는순간부터객체로판단되지만, 본연구방법은어느정도이동한후그궤적을추출하여물체의이동성을판단하기때문에, 일정시간이흐른후에 ( 약 0.3초 ) 부터 (a) 이동객체탐지 (b) 0.3초후 (c) 0.6초후 (d) 1초후그림 4. 알고리즘수행결과 ( 보행자 : 노란네모박스로표시 )
118 로봇학회논문지제 7 권제 2 호 (2012. 6) 그림 5. 오인식동적객체를파악하게된다. 이로인하여탐지율이다소감소된다. 6. 결론본논문에서는자율주행차량의 LRF 센서데이터를이용하여주행방향에존재하는동적객체를탐지및추적하는방법을제안하였다. 이를위하여보행자모델을제시하였으며, 이보행자모델을 MCMC 알고리즘을활용하여추적하는방법을제안하였다. 또한, 실제자율주행차량에탑재한실험을통하여 87.31% 의탐지율과 75% 의추적율결과를도출하였다. 본연구방법은물체의이동궤적을이용하였기에, 주행차량의절대적, 상대적위치가매우정확하게추출되어야그이동궤적을정확하게추출할수있다는단점을가진다. 최근에는레이저센서데이터를이용하여이러한위치정보를추출하는것과 (SLAM) 장애물을찾는것을동시에진행하는연구가많이이루어지고있다. 본연구방법도, 이러한연구방향을반영하여, 레이저센서데이터를이용한위치정보추출방법을병합할경우, 더정확한처리결과를볼수있을것으로예상된다. 참고문헌 [1] Trung-Dung Vu and Olivier Aycard, Lased-based detection and tracking moving object using data-driven markov chain monte carlo, In IEEE International Conference on Robotics and Automation (ICRA), pp3800-3806, May, 2009. [2] C.C. Wang, Simultaneous Localization, Mapping and Moving Object Tracking. PhD thesis, Robotics Institute, Carnegie Mellon University, Pittsburgh, PA, April 2004. [3] A. Petrovskaya and S. Thrun, Model based vehicle tracking for autonomous driving in urban environments, In Proceedings of Robotics: Science and Systems IV, June 2008. [4] M. Darms, P. Rybski, and C. Urmson, Classification and tracking of dynamic objects with multiple sensors for autonomous driving in urban environments, Intelligent Vehicles Symposium, pp.1192-1202, June 2008. [5] Lee Jae-Yeong and Yu Wonpil, "Moving object tracking in driving environment", Ubiquitous Robots and Ambient Intelligence (URAI), pp. 139-141, Nov 2011. [6] S. Bota and S. Nedesvchi, "Multi-feature walking pedestrians detection for driving assistance systems.", Intelligent Transport Systems, Vol.2, No.2, pp.92-104, 2008. [7] Chung-Kyeom Kim, Young-Min Han, Byung-Hyu Bae and Jung-Ha Kim, "The research of path planning algorithm considering vehicle's turning radius for unmanned ground vehicle", International Conference on Control, Automation and Systems (ICCAS), pp. 754-756, 2011. [8] Jae Hoon Lee, Takashi Tsubouchi Kenjiro Yamamoto and Saku Egawa, People Tracking Using a Robot in Motion with Laser Range Finder, International Conference on Intelligent Robots and Systems, pp. 2936-2942, 2006. [9] T. Mori, Takahiro Sato, H. Noguchi, M. Shimosaka, R. Fukui and Tomomasa Sato, Moving Objects Detection and Classification Based on Trajectories of LRF Scan Data on a Grid Map, International Conference on Intelligent Robots and Systems, pp.2606-2611, 2010.
MCMC 방법을이용한자율주행차량의보행자탐지및추적방법 119 황중원 2006 경인교육대학교교육학과 ( 교육학학사 ) 2008 숭실대학교미디어학과 ( 공학석사 ) 2010 한양대학교전자컴퓨터통신공학과박사과정 ( 수료 ) 2011~ 현재한국과학기술연구원연구원관심분야 : Computer vision, Image processing 김창환 1993 한양대학교기계공학과 ( 공학사 ) 1995 한양대학교기계설계공학과 ( 공학석사 ) 2002 미국아이오와주립대기계공학과 ( 공학박사 ) 2004 미국노틀담대학교항공기계공학과박사후연구원 (Research Association) 2004~ 현재한국과학기술연구원책임연구원관심분야 : Robotics 김남훈 2006 고려대학교전기전자전파공학부 ( 공학사 ) 2009 KAIST 로봇공학학제전공 ( 공학석사 ) 2010~ 현재한국과학기술연구원연구원관심분야 : Robotics, Artificial Intelligence 윤정연 2009 경희대학교컴퓨터공학화 ( 공학사 ) 2010~ 현재한국과학기술연구원연구원관심분야 : Mobile Robot, HCI