๋™์ผํ•œ ์žฅ๋ฉด(scene)์„ ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์ง€์ ์—์„œ ์ดฌ์˜ํ•œ ์˜์ƒ์˜ ๊ธฐํ•˜ํ•™์  ๊ด€๊ณ„, epipolar ๊ธฐํ•˜ํ•™ ์ •๋ฆฌ

Epipolar Geometry

Epipolar geometry๋Š” ๋™์ผํ•œ ์‚ฌ๋ฌผ ๋˜๋Š” ์žฅ๋ฉด์— ๋Œ€ํ•œ ์˜์ƒ์„ ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์ง€์ ์—์„œ ํš๋“ํ–ˆ์„ ๋•Œ, ์˜์ƒ A์™€ ์˜์ƒ B์˜ ๋งค์นญ์Œ๋“คย ์‚ฌ์ด์˜ ๊ธฐํ•˜ํ•™์  ๊ด€๊ณ„๋ฅผ ๋‹ค๋ฃจ๋Š” ๊ฒƒ

+full

1. Epipolar ๊ธฐ๋ณธ ๊ฐœ๋…

1.1. epipole & epiline

  • 3์ฐจ์› ๊ณต๊ฐ„์ƒ์˜ ํ•œ ์  ๊ฐ€ ์˜์ƒ ์—์„œ๋Š” ๊ฐ€ ํˆฌ์˜๋˜๊ณ , ์˜์ƒ ์—์„œ๋Š” ์— ํˆฌ์˜๋  ๋•Œ, ๋‘ ์นด๋ฉ”๋ผ ์›์ ์„ ์ž‡๋Š” ์„ ๊ณผ ์ด๋ฏธ์ง€ํ‰๋ฉด์ด ๋งŒ๋‚˜๋Š” ์  ์„ epipole์ด๋ผ ๋ถ€๋ฆ„
  • ๊ณผ ๊ฐ ์ด๋ฏธ์ง€ํ‰๋ฉด์˜ ํˆฌ์˜์ ()์„ ์ž‡๋Š” ์ง์„  ์„ epiline (๋˜๋Š” epipolar line) ์ด๋ผ ํ•จ

1.2. epipolar ์„ฑ์งˆ

  • ์‹ค์ œ ์ขŒํ‘œ ๋Š” ์ด๋ฏธ์ง€ ์— ๋กœ ํˆฌ์˜๋˜๋ฉด์„œ ๊นŠ์ด(Depth)์ •๋ณด๋ฅผ ์†์‹คํ•˜๊ฒŒ๋˜๋ฉฐ, ์ด๋ฏธ์ง€ B์—์„œ ํˆฌ์˜๋œ ๋Š” ๋ฐ˜๋“œ์‹œ epiline ์œ„์— ์กด์žฌํ•  ๊ฒƒ ์ž„
  • ๋ชจ๋“  epiline์€ epipole์„ ํ†ต๊ณผํ•จ
  • ์˜ ์˜์ƒ์ขŒํ‘œ ๋กœ๋ถ€ํ„ฐ ๋Œ€์‘๋˜๋Š” ์˜ ์˜์ƒ์ขŒํ‘œ ์„ ์œ ์ผํ•˜๊ฒŒ ๊ฒฐ์ •ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ์ด ์ง€๋‚˜๋Š” ์ง์„ ์ธ epiline ์€ ์œ ์ผํ•˜๊ฒŒ ๊ฒฐ์ •ํ• ์ˆ˜ ์žˆ์Œ
  • epipole ๊ณผ epiline์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Fundamental Matrix์™€ Essential Matrix๊ฐ€ ํ•„์š”ํ•จ

2. Essential Matrix

์ž„์˜์˜ ๋‘ ์ง€์ ์—์„œ ์ฐ์€ ์˜์ƒ์˜ ๋งค์นญ์ ๋“ค์€ ํ•ญ์ƒ ๊ด€๊ณ„์ง€์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด ๋•Œ ๊ด€๊ณ„์‹์„ epipolar constraint(๋˜๋Š” essential constraint)๋ผ ํ•˜๊ณ , ์ด 3x3 ํ–‰๋ ฌ E๋ฅผ Essential Matrix๋ผ ๋ถ€๋ฆ„ camera intrinsic paramete๊ฐ€ ๊ณ ๋ ค๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ(= intrinsic parameter๊ฐ€ ๋‹จ์œ„ํ–‰๋ ฌ)๋ฅผ ๊ฐ€์ •

2.1. epipolar constraint

  • ๋Š” 3x3์˜ Essential Matrix

2.2. Essential Matrix ์œ ๋„

  • ์ž„์˜์˜ ๋‘ ์นด๋ฉ”๋ผ ์ขŒํ‘œ์ถ• ์‚ฌ์ด์˜ ๊ด€๊ณ„๋ฅผ ํšŒ์ „, ํ‰ํ–‰์ด๋™์— ์˜ํ•ด ๊ด€๊ณ„์ง€์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, 3x3 ํšŒ์ „ํ–‰๋ ฌ , 3x1 ํ‰ํ–‰์ด๋™ ๋ฒกํ„ฐ๋ฅผ ๋ผ ํ–ˆ์„ ๋•Œ, ์™ธ๋ถ€ ๊ณต๊ฐ„์ƒ์˜ ํ•œ ์ ์„ ๋‘ ์นด๋ฉ”๋ผ ์ขŒํ‘œ๊ณ„์—์„œ์˜ ๊ด€๊ณ„๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ํ‘œํ˜„ํ•จ (๋Š” A์นด๋ฉ”๋ผ ์ขŒํ‘œ๊ณ„, ์€ B์นด๋ฉ”๋ผ ์ขŒํ‘œ๊ณ„)
  • ์ด ๋•Œ, essential matrix E๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜ํ•˜๋ฉด
  • ๋‹ค์Œ์„ ๋งŒ์กฑํ•จ

3. Fundamental Matrix

Essential Matrix๊ฐ€ ์ •๊ทœํ™”๋œ ์ด๋ฏธ์ง€ ํ‰๋ฉด์—์„œ์˜ ๋งค์นญ ์Œ๋“ค ์‚ฌ์ด์˜ ๊ธฐํ•˜ํ•™์  ๊ด€๊ณ„๋ฅผ ์„ค๋ช…ํ•˜๋Š” ํ–‰๋ ฌ์ด๋ผ๋ฉด, Funcamental Matrix๋Š” ์นด๋ฉ”๋ผ ํŒŒ๋ผ๋ฏธํ„ฐ๊นŒ์ง€ ํฌํ•จํ•œ ๋‘ ์ด๋ฏธ์ง€์˜ ์‹ค์ œ ํ”ฝ์…€(pixel) ์ขŒํ‘œ ์‚ฌ์ด์˜ ๊ธฐํ•˜ํ•™์  ๊ด€๊ณ„๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ํ–‰๋ ฌ (Essential Matrix์—์„œ ์นด๋ฉ”๋ผ intrinsic parameter(=K matrix)๋ฅผ ๋ชจ๋‘ ๊ฐ™์ด ๊ณ ๋ คํ•˜๋Š” matrix)

3.1. Fundamental Matrix ์œ ๋„

  • ์ž„์˜์˜ ๋‘ ์ด๋ฏธ์ง€ A, B์— ๋Œ€ํ•˜์—ฌ, ๋งค์นญ๋˜๋Š” ํ”ฝ์…€ ์ขŒํ‘œ , ์‚ฌ์ด์—๋Š” ํ•ญ์ƒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ด€๊ณ„๋ฅผ ๋งŒ์กฑํ•˜๋Š” ํ–‰๋ ฌ F๊ฐ€ ์กด์žฌํ•˜๊ณ , ์ด๋Ÿฌํ•œ ํ–‰๋ ฌ F๋ฅผ fundamental matrix๋ผ ๋ถ€๋ฆ„
  • ์ด ๋•Œ, ์ด๋ฏธ์ง€ A์— ๋Œ€ํ•œ ์นด๋ฉ”๋ผ ๋‚ด๋ถ€ ํŒŒ๋ผ๋ฏธํ„ฐ ํ–‰๋ ฌ์„ , ์ด๋ฏธ์ง€ B์— ๋Œ€ํ•œ ์นด๋ฉ”๋ผ ํ–‰๋ ฌ์„ , ์ด๋ฏธ์ง€ A, B ์‚ฌ์ด์˜ essential matrix๋ฅผ ๋ผ ํ•˜๋ฉด funamental matrix ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฃผ์–ด์ง

4. OpenCV ๊ด€๋ จ ํ•จ์ˆ˜

  • findFundamentalMat():ย ๋‘ ์ด๋ฏธ์ง€ ์‚ฌ์ด์˜ fundamental matrix๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๋ฐ˜ํ™˜. ์ž…๋ ฅ์œผ๋กœ๋Š” 8์Œ ์ด์ƒ์˜ ๋งค์นญ ์ด๋ฏธ์ง€ ์ขŒํ‘œ์Œ์„ ์ž…๋ ฅ
  • findEssentialMat(): ๋‘ ์ด๋ฏธ์ง€ ์‚ฌ์ด์˜ essential matrix๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๋ฐ˜ํ™˜. ์ž…๋ ฅํ•  ๋‚ด์šฉ์€ 5์Œ ์ด์ƒ์˜ ๋งค์นญ ์ด๋ฏธ์ง€ ์ขŒํ‘œ์Œ๊ณผ ์นด๋ฉ”๋ผ ํŒŒ๋ผ๋ฏธํ„ฐ(์ดˆ์ ๊ฑฐ๋ฆฌ, ์ฃผ์ ). ๋‚ด๋ถ€์ ์œผ๋กœ 5-point ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉ. ์ด๋ฏธ์ง€ ์ขŒํ‘œ๋กœ๋Š” normalized ์ขŒํ‘œ๊ฐ€ ์•„๋‹Œ ํ”ฝ์…€ ์ขŒํ‘œ๋ฅผ ์ž…๋ ฅ
  • decomposeEssentialMat(): ์ž…๋ ฅ essential matrix๋กœ๋ถ€ํ„ฐ ํšŒ์ „๋ณ€ํ™˜ R, ํ‰ํ–‰์ด๋™ t๋ฅผ ์ถ”์ถœํ•ด ์คŒ. ๊ฐ€๋Šฅํ•œ 4๊ฐ€์ง€ ์กฐํ•ฉ์˜ [R|t]๋ฅผ ๋ฐ˜ํ™˜
  • recoverPose(): ์ž…๋ ฅ๋œ essential matrix์™€ ๋‘ ์ด๋ฏธ์ง€์—์„œ์˜ ๋งค์นญ์Œ์œผ๋กœ๋ถ€ํ„ฐ ๋‘ ์ด๋ฏธ์ง€์˜ ์ƒ๋Œ€์ ์ธ [R|t] ๊ด€๊ณ„๋ฅผ ์ถ”์ถœํ•ด ์คŒ. decomposeEssentialMat()์ด [R|t]๋ฅผ ์œ ์ผํ•˜๊ฒŒ ๊ฒฐ์ •ํ•˜์ง€ ๋ชปํ•˜๊ณ  ํ•ด๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐ˜๋ฉด, recoverPose()๋Š” ๋ถ€๊ฐ€์ ์ธ ๊ธฐํ•˜ํ•™์  ์กฐ๊ฑด ๊ฒ€์‚ฌ๋ฅผ ํ†ตํ•ด [R|t]๋ฅผ ์œ ์ผํ•˜๊ฒŒ ๊ฒฐ์ •ํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•ด ์คŒ

5. ํ”„๋กœ์ ํŠธ


์ฐธ๊ณ 


Prev: (Image Geometry) 5. ์ด๋ฏธ์ง€ ํˆฌ์˜