Review: MONO-SLAM

Davison, A. J., Reid, I. D., Molton, N. D., & Stasse, O. (2007). MonoSLAM: Real-time single camera SLAM. IEEE transactions on pattern analysis and machine intelligence, 29(6), 1052-1067.

0. Introduction

์ง€๋‚œ 10๋…„๋™์•ˆ SLAM์„ ํฌํ•จํ•œ ์ž์œจ์ฃผํ–‰ ๋กœ๋ด‡ ๋‚ด๋น„๊ฒŒ์ด์…˜ ๋ถ„์•ผ๊ฐ€ ์ƒ๋‹นํ•œ ์ง„์ „์„ ๋ณด์˜€๋‹ค. ํ•˜์ง€๋งŒ ์นด๋ฉ”๋ผ ๋น„์ „ ์—ฐ๊ตฌ ๋˜ํ•œ ๊ฐ™์ด ์ง„ํ–‰๋์Œ์—๋„ ์—ฐ์‚ฐ ๋ถ€ํ•˜ ๋“ฑ์˜ ๋ฌธ์ œ๋กœ ๋ ˆ์ด์ €๋‚˜ ์†Œ๋‚˜์™€ ๊ฐ™์€ ๋‹ค๋ฅธ ์„ผ์„œ์—์„œ ๋” ๋งŽ์€ ์—ฐ๊ตฌ๊ฐ€ ์ง„ํ–‰ ๋˜์—ˆ๋‹ค.

์นด๋ฉ”๋ผ๋Š” ์ง๊ด€์ ์ด๋ฉฐ ์ •ํ™•ํ•˜๊ณ  ์ €๋ ดํ•˜๋ฉฐ, ์ž‘๋‹ค. ์ด๋Ÿฌํ•œ ์žฅ์ ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์นด๋ฉ”๋ผ๋Š” photometric ํšจ๊ณผ๋ฅผ ํ†ตํ•ด indirectlyํ•˜๊ฒŒ ์„ธ๊ณ„์˜ geometry๋ฅผ ์ธก์ •ํ•˜๊ณ  sparseํ•œ feature set๋ฅผ real-time์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š”๋ฐ ๋ช…ํ™•ํ•œ ํ•œ๊ณ„์ ์ด ์žˆ์—ˆ๋‹ค.

์ด ๋…ผ๋ฌธ์—์„œ๋Š” ๊ณ ์† ํ”„๋ ˆ์ž„(30Hz)์˜ real-time ์„ฑ๋Šฅ ๊ตฌํ˜„์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ๋‹ค. ์ด ์‹œ์Šคํ…œ์—์„  real-time ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ dynamic world์˜ ๋‹ค๋ฅธ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๋Š” loop์˜ ์ผ๋ถ€๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ์“ฐ์ธ๋‹ค.

dynamic world์˜ ๋‹ค๋ฅธ ๊ตฌ์„ฑ ์š”์†Œ?

๋‹ค์Œ ๋™์ž‘ ๋‹จ๊ณ„๋ฅผ ์ œ์–ด ํ•ด์•ผ ํ•˜๋Š” ๋กœ๋ด‡, ๋™์ž‘์— ๋Œ€ํ•œ visual feedback์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ ๋˜๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ž…๋ ฅ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ณ„์‚ฐ ๊ณผ์ • ๋“ฑ

์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ, ์‹ค์‹œ๊ฐ„์œผ๋กœ ์›€์ง์ด๋Š” ์นด๋ฉ”๋ผ์—์„œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ฆ‰๊ฐ์ ์ด๊ณ  ์“ธ๋ชจ์žˆ๋Š” ์ •๋ณด๋Š” ์„ธ์„ธํ•˜๊ฒŒ ์™„์„ฑ๋œ '์ตœ์ข… ๊ฒฐ๊ณผ ๋งต'์ด ์•„๋‹ˆ๋ผ, '์–ด๋””์— ์žˆ๋Š”์ง€'์ด๋‹ค. localization๊ณผ mapping์€ ๋ณต์ž‘ํ•˜๊ฒŒ ๊ฒฐํ•ฉ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ธฐ์กด SLAM ์—ฐ๊ตฌ๋ฅผ ํ†ตํ•ด ๋‘˜ ๊ด€๊ณ„๊ฐ€ ์œ ๊ธฐ์ ์ด๋ผ๋Š” ๊ฒƒ์ด ์•Œ๋ ค์ ธ ์žˆ์ง€๋งŒ, ์ด ์—ฐ๊ตฌ์—์„œ๋Š” localization์— ์ค‘์ ์„ ๋‘”๋‹ค. map์„ ๋ช…ํ™•ํžˆ ๊ตฌ์ถ•ํ•˜๊ธด ํ•˜์ง€๋งŒ, localization์„ ์œ„ํ•ด ์ตœ์ ํ™”๋œ landmark๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ sparse map ํ˜•ํƒœ๋กœ ๊ตฌ์ถ•ํ•œ๋‹ค.

๋˜ํ•œ real-time ์นด๋ฉ”๋ผ tracking ์‹œ๋‚˜๋ฆฌ์˜ค์—๋Š” ์ œํ•œ๋œ ํ™˜๊ฒฝ์—์„œ extended motion ๋ฐ looping motion์ด ํฌํ•จ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. (e.g. ํœด๋จธ๋…ธ์ด๋“œ๊ฐ€ ์ž‘์—…์„ ํ•˜๊ฑฐ๋‚˜, ๊ฐ€์ •์šฉ ๋กœ๋ด‡์ด ์ง‘์„ ์ฒญ์†Œํ•˜๋Š” ๊ฒฝ์šฐ) ground truth๋กœ ๋ถ€ํ„ฐ gradual drift๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” repeatable localization์€ ์ด๋Ÿฌํ•œ ๊ณณ์—์„œ ํ•„์ˆ˜์ ์ด๋ฉฐ, ์›€์ง์ด๋Š” ์นด๋ฉ”๋ผ๊ฐ€ ๋Œ์•„์˜ค์ง€ ์•Š๊ณ  ๊ณ„์†ํ•ด์„œ ์ƒˆ๋กœ์šด ์ง€์—ญ์„ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒฝ์šฐ๋ณด๋‹ค ํ›จ์”ฌ ๋” ์ค‘์š”ํ•˜๋‹ค. ์ด๋Ÿฌํ•œ ํ™˜๊ฒฝ์—์„œ ๋ฐ”๋กœ ์šฐ๋ฆฌ์˜ fully-probabilistic SLAM ์ ‘๊ทผ ๋ฐฉ์‹์ด ๊ทธ ์ž์ฒด๋กœ ์“ฐ์ธ๋‹ค. State-based ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ๋ฌดํ•œํžˆ ์ฐธ์กฐ๋  scene landmark์˜ persistent map์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๊ตฌ์„ฑํ•˜๊ณ  long-term drift๋ฅผ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด loop closure์„ ํ—ˆ์šฉํ•œ๋‹ค. persistent world map์„ ํ˜•์„ฑํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์นด๋ฉ”๋ผ ์›€์ง์ž„์ด ์ œํ•œ๋  ๊ฒฝ์šฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ processing requirement๊ฐ€ ์ œํ•œ๋˜๊ณ  ์ง€์†์ ์ธ real-time ์ž‘์—…์ด ์œ ์ง€๋  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค. [4]์™€ ๊ฐ™์€ tracking ์ ‘๊ทผ ๋ฐฉ์‹ ์—์„œ๋Š” ๋ˆ„์ ๋˜๋Š” ๊ณผ๊ฑฐ ํฌ์ฆˆ์˜ history์— matchingํ•˜์—ฌ loop-closing correction์„ ์ง„ํ–‰ ํ•œ๋‹ค.

[5], [6], [7] ํ•ต์‹ฌ ์š”์•ฝํ•˜์—ฌ ์—ฐ๊ด€ ์ง€์„ ๊ฒƒ

๋ณธ ์ž‘์—…์—์„œ ๊ทน๋ณตํ•ด์•ผ ํ–ˆ๋˜ ์ ์€ ๊ฐ€์žฅ ๋‹จ์ˆœํ•œ ๊ฒฝ์šฐ SLAM์— ํ•„์š”ํ•œ ํ•˜๋“œ์›จ์–ด๋ฅผ ์ปดํ“จํ„ฐ์— ์—ฐ๊ฒฐ๋œ mono ์นด๋ฉ”๋ผ๋กœ ๋‹จ์ˆœํ™”ํ•˜๊ณ  ์ด ์นด๋ฉ”๋ผ์˜ ์ž์œ ๋กœ์šด 3D ์›€์ง์ž„์— ๋Œ€ํ•ด ์ตœ์†Œํ•œ์˜ ๊ฐ€์ •์„ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ๋ช‡๋ช‡ ์ €์ž๋Š” ์šฐ๋ฆฌ์™€ ๋น„์Šทํ•œ ๋ชฉ์ ์„ ๊ฐ€์ง€๊ณ  ์‹ค์‹œ๊ฐ„ ์นด๋ฉ”๋ผ tracking ์‹œ์Šคํ…œ์„ ์ œ์‹œํ–ˆ๋‹ค. McLauchlan๊ณผ Murray [37]๋Š” sparse information filter framework๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›€์ง์ด๋Š” ์นด๋ฉ”๋ผ์—์„œ ๋™์‹œ ๊ตฌ์กฐ ๋ฐ ๋ชจ์…˜ ๋ณต๊ตฌ๋ฅผ ์œ„ํ•œ Variable State-Dimension Filter๋ฅผ ๋„์ž…ํ–ˆ์ง€๋งŒ long-term tracking ๋˜๋Š” loop closing์„ ๋ณด์—ฌ์ฃผ์ง€ ๋ชปํ–ˆ๋‹ค.

Chiuso et al. [38]์˜ ์—ฐ๊ตฌ๋Š” single Extended Kalman Filter๋ฅผ ์‚ฌ์šฉํ•œ ์ง€๋„ propagation ๋ฐ localization ๋ถˆํ™•์‹ค์„ฑ์„ ํฌํ•จํ•˜์—ฌ ์šฐ๋ฆฌ ์ž‘์—…๊ณผ ๋ช‡ ๊ฐ€์ง€ ์•„์ด๋””์–ด๋ฅผ ๊ณต์œ  ํ–ˆ์ง€๋งŒ ์ž‘์€ ์นด๋ฉ”๋ผ ์›€์ง์ž„์œผ๋กœ ์ž‘์€ ๋ฌผ์ฒด ๊ทธ๋ฃน์„ ์ถ”์ ํ•œ ๊ฒฐ๊ณผ๋Š” ์ œํ•œ์ ์ด์—ˆ๋‹ค. [38]์˜ ๋ฐฉ๋ฒ•์€ simple gradient descent feature tracking์„ ์‚ฌ์šฉํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— high acceleration๋™์•ˆ feature tracking์„ ํ•˜๊ฑฐ๋‚˜, periods of neglect ํ›„์— loop closingํ•˜๋Š”๋ฐ ์–ด๋ ค์›€์ด ์žˆ์—ˆ๋‹ค.

Nisteยดr et al. [39]๋Š” ์ˆœ๊ฐ„์ ์ธ ์›€์ง์ž„์„ ์ธ์ƒ์ ์œผ๋กœ ๋ณต๊ตฌ ํ•  ์ˆ˜ ์žˆ๋Š” ๋งŽ์€ point feature์˜ frame to frame ๋งค์นญ์˜ motion methodology์—์„œ standard structure์— ๊ธฐ๋ฐ˜ํ•œ real-time ์‹œ์Šคํ…œ์„ ์ œ์‹œํ–ˆ๋‹ค. ์ด๋•Œ, point feature๋“ค์€ ๋˜ ๋‹ค์‹œ period of neglect๋ฅผ ๊ฑฐ์น˜๋ฉด feature๋ฅผ ์ธ์‹ ํ•  ์ˆ˜ ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— AR๋˜๋Š” localization์—์„œ ๊ธ‰๊ฒฉํ•œ drift๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ๋ฐ–์— ์—†๋‹ค.

[39] ๋ถ€์—ฐ ์„ค๋ช…

2. Method

2.1 Probabilistic 3D Map

[11]์™€ ๊ฐ™์ด ์šฐ๋ฆฌ ๋ฐฉ์‹์˜ ํ•ต์‹ฌ ๊ฐœ๋…์€ ์นด๋ฉ”๋ผ์˜ state์™€ ๊ด€์‹ฌ ์˜์—ญ์˜ ๋ชจ๋“  feature๋“ค์— ๋Œ€ํ•œ current estimates์˜ snapshot์„ ๊ณ„์† ๋‚˜ํƒ€๋‚ด๋Š” probabilistic feature-based map์ด๋‹ค. ์ด๋Ÿฌํ•œ ์ถ”์ •, ๋งต์€ ์‹œ์Šคํ…œ ์‹œ์ž‘์‹œ ์ดˆ๊ธฐํ™”๋˜๊ณ  ์ž‘์—…์ด ๋๋‚  ๋•Œ๊นŒ์ง€ ์ง€์†๋˜์ง€๋งŒ Extended Kalman Filter์— ์˜ํ•ด ์—…๋ฐ์ดํŠธ๋จ์— ๋”ฐ๋ผ continuouslyํ•˜๊ณ  dynamicallyํ•˜๊ฒŒ ๋ฐœ๋‹ฌ๋œ๋‹ค. ์นด๋ฉ”๋ผ์™€ feature์— ๋Œ€ํ•œ probabilistic state estimates๋Š” camera motion ๋ฐ feature observation ์ค‘์— ์—…๋ฐ์ดํŠธ ๋œ๋‹ค. ์ƒˆ๋กœ์šด feature๊ฐ€ ๊ด€์ฐฐ๋˜๋ฉด ์ง€๋„๋Š” ์ƒˆ๋กœ์šด state๋กœ ํ™•๋Œ€๋˜๋ฉฐ ํ•„์š”ํ•œ ๊ฒฝ์šฐ feature๋ฅผ ์‚ญ์ œํ•œ๋‹ค.

๋งต์˜ probabilistic ํŠน์„ฑ์€ ์นด๋ฉ”๋ผ ๋ฐ feature์˜ state ํ‰๊ท  "best" estimates ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด๋Ÿฌํ•œ ๊ฐ’์—์„œ possible deviations์˜ ํฌ๊ธฐ๋ฅผ ์„ค๋ช…ํ•˜๋Š” 1์ฐจ uncertainty distribution์˜ ์‹œ๊ฐ„ ๊ฒฝ๊ณผ์— ๋”ฐ๋ฅธ propagation์— ์žˆ๋‹ค.

์ด ๋ฌธ์žฅ ์ดํ•ด ์•ˆ ๋จ

์ˆ˜ํ•™์ ์œผ๋กœ, ๋งต์€ state vector x'์™€ covariance matrix P๋กœ ํ‘œํ˜„๋œ๋‹ค. State vector x'๋Š” ์นด๋ฉ”๋ผ์™€ feature์˜ stacked state estimates๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ P๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ถ€๋ถ„ ํ–‰๋ ฌ ์š”์†Œ๋กœ ๋ถ„ํ•  ๋  ์ˆ˜ ์žˆ๋Š” ๋™์ผํ•œ ์ฐจ์›์˜ square matrix ์ด๋‹ค.

์ด๋ ‡๊ฒŒ ํ•ด์„œ ๋ชจ๋“  ๋งต parameter์— ๋Œ€ํ•œ ํ™•๋ฅ  ๋ถ„ํฌ๋Š” total state vector ์‚ฌ์ด์ฆˆ์™€ ๋™์ผํ•œ ์ฐจ์›์—์„œ single multivariate Gaussian distribution์œผ๋กœ ๊ทผ์‚ฌํ™”๋œ๋‹ค.

๋ช…์‹œ์ ์œผ๋กœ, ์นด๋ฉ”๋ผ์˜ state vector xv๋Š” ๊ณ ์ •๋œ world frame W ๋ฐ ์นด๋ฉ”๋ผ๊ฐ€ ์ „๋‹ฌํ•˜๋Š” "Robot" frame R์— ๋Œ€ํ•œ metric 3D position vector rW, orientation quaternion qrw, ์†๋„ ๋ฒกํ„ฐ vw ๋ฐ ๊ฐ์†๋„ ๋ฒกํ„ฐ wr๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๋‹ค.

์ด ๋…ผ๋ฌธ์—์„œ feature state yi๋Š” point features ์œ„์น˜์˜ 3D position vector์ด๋‹ค. ์นด๋ฉ”๋ผ์™€ feature geometry ๋ฐ coordinate frame์€ Fig. 3a.์— ์ •์˜๋˜์–ด ์žˆ๋‹ค.

Fig. 3a.

๋งต์˜ ์—ญํ• ์€ ์ „์ฒด ์žฅ๋ฉด ์„ค๋ช…์ด ์•„๋‹Œ real-time localization์ด๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ๊ณ ํ’ˆ์งˆ landmarks์˜ sparse set์„ ์žก๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. ์ด๋•Œ ์žฅ๋ฉด์€ rigidํ•˜๊ณ , ๊ฐ landmark๊ฐ€ stationary world feature๋ผ๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ๊ตฌ์ฒด์ ์œผ๋กœ, ๊ฐ landmark๋Š” 3D ๊ณต๊ฐ„์—์„œ localization์ด ์ž˜๋œ point feature๋ผ๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ์นด๋ฉ”๋ผ๋Š” ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด translation parameter์™€ rotation parameter๊ฐ€ ํ•„์š”ํ•œ rigid body๋กœ ๊ฐ€์ •๋˜๋ฉฐ linear velocity์™€ angular velocity์˜ ์ถ”์ •์น˜๋ฅผ ์œ ์ง€ํ•œ๋‹ค. (์ด๊ฒƒ์€ 3.4์ ˆ์—์„œ ์„ค๋ช…ํ•  motion dynamics๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ ์ค‘์š”ํ•˜๋‹ค.

๋งต์€ Fig. 1a์™€ ๊ฐ™์ด ๊ทธ๋ ค ์งˆ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ชจ๋“  geometric estimates๋Š” ๋ถˆํ™•์‹คํ•œ ๊ฒฝ๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํƒ€์›ํ˜• ์˜์—ญ(3๊ฐœ์˜ standard deviations์— ํ•ด๋‹น)์œผ๋กœ ๋‘˜๋Ÿฌ ์‹ธ์ธ ๊ฒƒ์œผ๋กœ ํ‘œํ˜„๋œ๋‹ค. ํ•˜์ง€๋งŒ, ๊ทธ๋ฆผ 1a๋Š” ๋‹ค์–‘ํ•œ ํƒ€์›ํ˜• ์˜์—ญ์ด ์ž ์žฌ์ ์œผ๋กœ ๋‹ค์–‘ํ•œ ๊ฐ๋„์™€ ์—ฐ๊ด€๋˜์–ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ค„ ์ˆ˜ ์—†๋‹ค. : sequential mapping์—์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐœ์ƒํ•˜๋Š” ์ƒํ™ฉ์€ ๊ณต๊ฐ„์ ์œผ๋กœ ๊ฐ€๊นŒ์šด feature๊ฐ€ ๊ทธ ์ฐจ์ด(์ƒ๋Œ€์  ์œ„์น˜)๊ฐ€ ๊ฝค ์ •ํ™• ์œ„์น˜ ์ถ”์ •์น˜๋ฅผ ๊ฐ€์ง€์ง€๋งŒ, world ์ขŒํ‘œ๊ณ„์— ๋Œ€ํ•œ ๊ทธ๋ฃน์˜ ์œ„์น˜๋Š” ๊ทธ๋ ‡์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด ์ƒํ™ฉ์€ off-diagonal ํ–‰๋ ฌ ๋ธ”๋ก์˜ 0์ด ์•„๋‹Œ ํ•ญ์— ์˜ํ•ด, ๋งต covariance matrix P์—์„œ ํ‘œํ˜„๋˜๋ฉฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ž‘๋™์— ์˜ํ•ด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐœ์ƒํ•œ ๊ฒƒ์ด๋‹ค.

ํ–‰๋ ฌ์‹ ์‚ดํŽด๋ณด๊ธฐ

๋งต representation์˜ ์ด ์‚ฌ์ด์ฆˆ๋Š” O(N2)๋ฅผ ๋”ฐ๋ฅธ๋‹ค. ์—ฌ๊ธฐ์„œ N์€ feature์˜ ์ˆ˜์ด๋ฉฐ ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ์ „์ฒด SLAM์•Œ๊ณ ๋ฆฌ์ฆ˜์€ O(N2)์˜ ๋ณต์žก๋„๋ฅผ ๊ฐ–๋Š”๋‹ค. ์šฐ๋ฆฌ ์—ฐ๊ตฌ์—์„œ real-time์œผ๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” feature์˜ ์ˆ˜๋Š” 30Hz ํ™˜๊ฒฝ์—์„œ ์•ฝ 100๊ฐœ ์ด๋‹ค.

์ด ์ž‘์—…์—์„œ ๋‹ค๋ฅธ ํ™•๋ฅ ์  ํ‘œํ˜„์„ ์‚ฌ์šฉํ•˜๋Š” ๋ณ€ํ™˜์ด ์•„๋‹Œ SLAM์— ๋Œ€ํ•œ standard single full covariance EKF ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š” ํฐ ์ด์œ ๊ฐ€ ์žˆ๋‹ค. ์ด ๋ฐฉ์‹ ๋•Œ๋ฌธ์— feature์„ ๋ฝ‘์•„๋‚ด๋Š” ํŒจํ„ด์ด [22], [25], [34] ๋“ฑ๊ณผ ๊ฝค ๋‹ค๋ฅธ๋‹ค. ํ•ด๋‹น ์—ฐ๊ตฌ ๋กœ๋ด‡๋“ค์€ loop ์ฃผ๋ณ€์˜ drift๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋‹จ๊ณ„์—์„œ ๋“œ๋ฌผ๊ฒŒ ์ด์ „์— ๋ณธ ์žฅ์†Œ๋กœ ๋Œ์•„์˜ฌ ๋•Œ๊นŒ์ง€ ํƒ์ƒ‰ ๊ฒฝ๋กœ๋ฅผ ๋”ฐ๋ผ ๋ณต๋„์™€ ์œ ์‚ฌํ•œ topologies๋ฅผ ํ†ตํ•ด ์ด๋™ํ•œ๋‹ค. ๋ถˆํ™•์‹คํ•œ pose-to-pose ๋ณ€ํ™˜์ด๋‚˜ submap ๋˜๋Š” ์œ ํ•œํ•œ ์ˆ˜์˜ ์ž ์žฌ์ ์œผ๋กœ ๋นˆ์•ฝํ•œ ์ด์‚ฐ trajectory ๊ฐ€์„ค ์„ธํŠธ์—์„œ ์„ ํƒํ•˜์—ฌ ๊ฝค ์ •ํ™•ํ•œ loop ์ฃผ๋ณ€์„ ๋ณด์ •ํ•˜๋Š”๋ฐ ์ž„์‹œ ๋ฐฉํŽธ์œผ๋กœ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ๋‹ค.

์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ, ์นด๋ฉ”๋ผ๊ฐ€ ์ œํ•œ๋œ ๊ณต๊ฐ„์„ ์ค‘์‹ฌ์œผ๋กœ 3D๋กœ ์›€์ง์ด๊ณ  ํšŒ์ „ํ•จ์— ๋”ฐ๋ผ ๊ฐœ๋ณ„ feature๋“ค์ด ๋‹ค์–‘ํ•œ ์ˆœ์„œ๋กœ ์‹œ์•ผ์— ๋“ค์–ด์™”๋‹ค ๋‚˜๊ฐ€๊ณ  ์นด๋ฉ”๋ผ๊ฐ€ ํšŒ์ „ํ•จ์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ depth์— ์žˆ๋Š” feature๋“ค์˜ ๋‹ค์–‘ํ•œ subset์ด ํ•จ๊ป˜ ํ‘œ์‹œ๋œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‹ค์–‘ํ•œ ํฌ๊ธฐ์˜ ์ƒํ˜ธ ์—ฐ๊ฒฐ๋œ ํŒจํ„ด loop๋Š” ์ •๊ธฐ์ ์œผ๋กœ close๋œ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ง€๋„์˜ ๋ถ€๋ถ„ ๊ฐ„์˜ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ด๊ธธ ์›ํ–ˆ๊ณ , ์•Œ๋ ค์ง„ method์˜ ํด๋ž˜์Šค ๋‚ด์—์„œ, single state vector์™€ covariance matrix ๋‚ด์—์„œ ์œ ์ง€๋˜๋Š” feature์˜ sparse map์„ ํ†ตํ•ด์„œ ๊ณ„์‚ฐํ–ˆ๋‹ค. 100๊ฐœ์˜ ์ž˜ ์„ ํƒ๋œ feature๋“ค์€ ์ง€๋„๋ฅผ ํ•œ ๋ฐฉ์˜ ๋งต์„ ๊ด€๋ฆฌํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ–ˆ๋‹ค.

2.2 Natural Visual Landmarks

Last updated

Was this helpful?