*μλ£ μΆμ² : λ€ν¬νλ‘κ·Έλλ¨Έ
https://darkpgmr.tistory.com/category/%EC%98%81%EC%83%81%EC%B2%98%EB%A6%AC
Coordinate System (μ’νκ³)
μμ geometry μμλ μλ(3D), μΉ΄λ©λΌ(3D), μ κ·(2D), ν½μ (2D) 4κ°μ μ’νκ³κ° μ‘΄μ¬ν©λλ€.
- μλ μ’νκ³
κ°μ²΄μ μμΉλ₯Ό ννν λ κΈ°μ€μΌλ‘ μΌλ μ’νκ³λ‘ μΉ΄λ©λΌ μ’νκ³μ λ¨μλ₯Ό λ§μΆ°μΌ νκ³ μ(P)μ κ°μ΄ ννν μ μμ΅λλ€.
- μΉ΄λ©λΌ μ’νκ³
μΉ΄λ©λΌλ₯Ό κΈ°μ€μΌλ‘ ν μ’νκ³μ΄λ©°, μλ첨μ c λ₯Ό μ¬μ©νμ¬ μμ κ°μ΄ ννν©λλ€.
- ν½μ μ’νκ³
μμ μ’νκ³λΌκ³ λ λΆλ¦¬λ©° μ΄λ―Έμ§μ μΌμͺ½ μλ₯Ό μμ μΌλ‘ μ€λ₯Έμͺ½ λ°©ν₯μ x μ¦κ° λ°©ν₯, μλ λ°©ν₯μ y μ¦κ° λ°©ν₯μΌλ‘ ν©λλ€. ν½μ
μ’νκ³μ xμΆ, yμΆμ μν΄ κ²°μ λλ νλ©΄μ μ΄λ―Έμ§ νλ©΄μ΄λΌ λΆλ¦
λλ€.
κΈ°ννμ μΌλ‘ λ³Ό λ, 3D 곡κ°μμ μ P = (X,Y,Z)λ μΉ΄λ©λΌμ μ΄μ μ μ§λμ μ΄λ―Έμ§ νλ©΄μ ν μ pimg = (x, y)μ projectionλ©λλ€.
ν½μ μ’νκ³μ λ¨μλ ν½μ μ΄λ©°, μμ κ°μ΄ ννν μ μμ΅λλ€.
- μ κ· μ’νκ³
μ κ· μ’νκ³λ νΈμμ λμ λ κ°μμ μ’νκ³λ‘ μΉ΄λ©λΌ λ΄λΆ νλΌλ―Έν° μν₯μ μ κ±°ν μ’νκ³μ λ¨μλ₯Ό μ κ·νν μ’νκ³μ λλ€. μ¦, μΉ΄λ©λΌ μ΄μ κ³Όμ κ±°λ¦¬κ° 1μΈ κ°μμ μ΄λ―Έμ§ νλ©΄μ μ μνλ μ’νκ³μ λλ€.
μ κ· μ’νκ³λ ν½μ μ’νκ³μ ꡬλΆνκΈ° μν΄ u,vλ₯Ό μ¬μ©νκ³ , μΉ΄λ©λΌ λ΄λΆ νλΌλ―Έν°(K)λ₯Ό μλ©΄ μμ κ°μ΄ ν½μ μ’νμ μ κ· μ’νμμ λ³νμ΄ κ°λ₯ν©λλ€.
Homogenuous Coordinates
Homogenuous μ’νλ (x,y) μ’νλ₯Ό (x,y,1)λ‘ νννλ κ²μ λλ€. μΌλ°μ μΌλ‘ νννλ©΄ 0μ΄ μλ μμ wμ λν΄ (xw, yw, w)λ‘ νννλ κ²μ λλ€. μ¦, homogenuous μ’νκ³μμ μ€μΌμΌμ 무μλμ΄ (x,y)μ λν homogenuous μ’ν ννμ 무ννκ² μ‘΄μ¬ν©λλ€. 3Dμ κ²½μ° (X,Y,Z) -> (X,Y,Z,1) or (wX, wY, wZ, w)
μ΄λ¬ν Homogenuous μ’ν ννμ μ¬μ©νλ μ΄μ λ affine, projective λ³νμ νλμ λ¨μΌ νλ ¬λ‘ ννν μ μκΈ° λλ¬Έμ λλ€.
μΉ΄λ©λΌ μμμ 3D 곡κ°μ μλ μ λ€μ μ΄λ―Έμ§ νλ©΄μ projection μν¨ κ²μΌλ‘ μΉ΄λ©λΌ μ΄μ κ³Ό projection λ μ μ μ°κ²°νλ©΄ νλμ κΈ΄ projection rayκ° λμ΅λλ€. μ΄ μ μμ μλ λͺ¨λ μ λ€μ λͺ¨λ λμΌν μ΄λ―Έμ§ νλ©΄μ ν μ μΌλ‘ projection λ©λλ€. λ°λΌμ μ΄λ―Έμ§ νλ©΄μ ν μ (μ’ν)μ λν homogenuous μ’ν ννμ μ΄ μ μΌλ‘ projection λ μ μλ ray μμ λͺ¨λ μ λ€μ ν λ²μ νννλ λ°©λ²μ΄λΌκ³ λ³Ό μ μμ΅λλ€.
μ κ· μ΄λ―Έμ§ νλ©΄ μμ ν μ p' = (u, v)μ λν ν homogeneous μ’ν ννμ (u, v, 1)μΈλ°, μ p'μ μΉ΄λ©λΌ μ’νκ³λ‘ λ΄€μ λμ 3D μ’νλ (u, v, 1)μμ μ μ μμ΅λλ€. (μ κ· μ’νκ³μ΄λκΉ μΉ΄λ©λΌ μ΄μ κ³Όμ κ±°λ¦¬κ° 1)
μΉ΄λ©λΌ μ’νκ³ μ μ₯μμ 보면 ν¬μμ μμ μλ μ λ€μ 3D μ’νλ μΌλ°μ μΌλ‘ w(u, v, 1) = (wu, wv, w)κ° λκ³ μ΄λ (u, v)μ μΌλ°μ μΈ homogeneous μ’ν ννμ ν΄λΉν©λλ€. μ΄λ¬ν κ΄μ μμ homogeneous μ’ν (x, y, z)μμ (x/z, y/z)λ₯Ό ꡬνλ κ²μ projection, (u, v)λ₯Ό homogeneous μ’ν (wu, wv, w)λ‘ νννλ κ²μ inverse projection κ³Όμ μΌλ‘ λ³Ό μ μμ΅λλ€.
Homogeneous μ’ν ννμ λ€λ₯Έ ν μ₯μ μ 무νλμ μ μ μ ν μ’νλ‘ ννν μ μλ€λ κ²μΈλ°, (u, v) λ°©ν₯μΌλ‘ 무νλμ μ μ homogeneous μ’νλ‘ (u, v, 0)μΌλ‘ ννλ©λλ€.
2D Transformation
- Translation (ννμ΄λ)
- Rotation (1 DoF)
- Rigid (Euclidean) : Translation + Rotation (3 DoF)
- Similarity transformation : Rigid + scale λ³ν (4 DoF / Homogeneous μ’ν ννμ μ¬μ©νλ©΄ νλμ νλ ¬ λ³νμΌλ‘ ννκ°λ₯)
- Affine transformation : μ§μ , κΈΈμ΄(거리)μ λΉ, ννμ±μ΄ 보쑴 (6 DoF)
- Homography (Projective Transformation) (8 DoF)
μ΄λ€ planar surfaceκ° μλ‘ λ€λ₯Έ μΉ΄λ©λΌ μμΉμ λν΄ μ΄λ―Έμ§ Aμ μ΄λ―Έμ§ Bλ‘ ν¬μλμλ€λ©΄ μ΄λ―Έμ§ Aμ μ΄λ―Έμ§ Bμ κ΄κ³λ₯Ό homographyλ‘ ννν μ μμ΅λλ€. λλ¬Έμ homographyλ₯Ό planar homographyλΌκ³ λ λΆλ₯΄λ©°, homographyλ ν면물체μ 2D μ΄λ―Έμ§ λ³νκ΄κ³λ₯Ό μ€λͺ ν μ μλ κ°μ₯ μΌλ°μ μΈ λͺ¨λΈμ λλ€.
3D Transformation
νμ λ³ν R, ννμ΄λ t = [tx, ty, tz]Tλ₯Ό μ΄μ©ν μΌλ°μ μΈ 3D λ³νμ(rigid λ³ν)μ λ€μκ³Ό κ°μ΅λλ€.
Homogeneous μ’νλ₯Ό μ¬μ©νλ©΄ μλμ κ°μ΄ νμ λ³νκ³Ό ννμ΄λμ νλμ λ³ννλ ¬λ‘ ννν μ μμ΅λλ€.
μ’νμΆ λ³ν
μλ μ’νκ³μ μΉ΄λ©λΌ μ’νκ³ μ¬μ΄μ λ³νμ΄ μ’νμΆ λ³νμΌλ‘ μλμ’νκ³ μμμ μΉ΄λ©λΌ μ’νκ³μ μμ μ (Fx, Fy, Fz), μλμ’νκ³μ μ’νμΆμ μΉ΄λ©λΌ μ’νκ³ μ’νμΆμΌλ‘ νμ μν€λ νλ ¬μ Rμ΄λΌ νκ² μ΅λλ€.
μ΄ λ, μλ μ’νκ³μ μ (X, Y, Z)μ μΉ΄λ©λΌ μ’νκ³λ‘ λ΄€μ λμ μ’ν (Xc, Yc, Zc)λ λ€μκ³Ό κ°μ΄ ꡬν΄μ§λλ€. νμ λ³ν νλ ¬μ κ²½μ° RTR = I μ¦, R-1 = RTκ° μ±λ¦½νλ―λ‘ λ κ°μ§ μμ΄ λ€ κ°λ₯ν©λλ€. μΉ΄λ©λΌ μ’νκ³ μμ μ μ μλ μ’νκ³λ‘ λ°κΏ λμλ μ μμ μμΌλ‘ μ΄μ©νλ©΄ λ©λλ€.
Image Projection
μ΄μ μ§κΈκΉμ§μ λ΄μ©μ μ’ ν©νμ¬ 3D μλμ’νμμ 2D ν½μ μ’νλ‘μ λ³ν κ΄κ³, μ¦ μ΄λ―Έμ§κ° νμ±λλ κ³Όμ μ μ 리
Perspective Projection Transformation
3D μμ 2D λ‘μ projection transformation νλ ¬μ λλ€. μ κ·Έλ¦Όμ²λΌ μ κΈ°μ€μ μ μμ μΌλ‘ μ‘μ κ²½μ° 3μ°¨μ μμ μ Pλ₯Ό p'μΌλ‘ ν¬μμν€λ λ³ν νλ ¬μ λ€μκ³Ό κ°μ΄ μ£Όμ΄μ§λλ€.
μ¦, ν¬μνλ©΄μ΄ Zc = dμΌ κ²½μ° (Xc, Yc, Zc, 1)λ (Xc, Yc, Zc/d) = (d*Xc/Zc, d*Yc/Zc, 1)λ‘ ν¬μλ©λλ€ (sλ homogeneous μ’νννμ scale factorλ‘μ μ Pμ depthμ ν΄λΉ).
Image Projection Model
μλ μ’νκ³ μμ ν μ (X, Y, Z)λ₯Ό μ΄λ―Έμ§ νλ©΄(ν½μ μ’νκ³) μμ μ (x, y)λ‘ λ³νμν€λ νλ ¬μ HλΌ νλ©΄, κ·Έ κ΄κ³μμ λ€μκ³Ό κ°μ΅λλ€. (μλ -> μΉ΄λ©λΌ)
μ΄ λ, Hλ 3 × 4 νλ ¬λ‘μ λ€μκ³Ό κ°μ΄ λΆν΄νμ¬ ννν μ μμ΅λλ€.
[R|t]λ μλ μ’νκ³λ₯Ό μΉ΄λ©λΌ μ’νκ³λ‘ λ°κΎΈλ rigid λ³ν νλ ¬, Tpers(1)λ μΉ΄λ©λΌ μ’νκ³ μμ 3D μ’νλ₯Ό μ κ· μ΄μ§λ―Ένλ©΄(normalized image plane)μ ν¬μμν€λ νλ‘μ μ (projection) νλ ¬, Kλ μΉ΄λ©λΌ λ΄λΆ(intrinsic) νλΌλ―Έν° νλ ¬λ‘ μ κ· μ΄λ―Έμ§ μ’νλ₯Ό ν½μ μ’νλ‘ λ°κΎΈμ΄ μ€λλ€. Tpers(1)μ d = 1 μ¦, Zc = 1μΈ νλ©΄μΌλ‘μ ν¬μλ³νμ λ§ν©λλ€ (μ¦, normalized image planeμΌλ‘μ ν¬μ). sλhomogeneousμ’νννμscale factorλ‘μ μ (X, Y, Z)μdepthμ ν΄λΉ
ν¬μλ³ν Tpers(1)κ³Ό rigid λ³ν [R|t]λ₯Ό νλλ‘ ν©μΉλ©΄ λ€μκ³Ό κ°μ΄ μ’λ κ°λ¨ν ννμμ΄ λ©λλ€.
Epipolar Geometry
Epipolar geometryλ μ€ν λ μ€ λΉμ (stereo vision) μ¦, 2-view λΉμ μμμ κΈ°ννμΌλ‘ λμΌν μ¬λ¬Ό λλ μ₯λ©΄μ λν μμμ μλ‘ λ€λ₯Έ λ μ§μ μμ νλνμ λ, μμ Aμ μμ Bμ 맀μΉμλ€ μ¬μ΄μ κΈ°ννμ κ΄κ³
3D 곡κ°μμ ν μ Pκ° μμ Aμμλ pμ ν¬μλκ³ , μμ Bμμλ p'μ ν¬μλ λ, λ μΉ΄λ©λΌ μμ μ μλ μ κ³Ό μ΄λ―Έμ§ νλ©΄μ΄ λ§λλ μ e, e'μ epipole, ν¬μμ κ³Ό epipoleμ μλ μ§μ l, l'μ epiline (epipolar line)μ΄λΌ λΆλ¦ λλ€. Epilineμ 3μ°¨μμ μ Pμ λ μΉ΄λ©λΌ μμ μ μλ νλ©΄(epipolar plane)κ³Ό μ΄λ―Έμ§ νλ©΄κ³Όμ κ΅μ μΌλ‘λ λ³Ό μ μμ΅λλ€.
λ μΉ΄λ©λΌ μμΉ μ¬μ΄μ κΈ°ννμ κ΄κ³ [R|t]λ₯Ό μκ³ μμ Aμμμ μμμ’ν pλ₯Ό μκ³ μμ λ, μ PκΉμ§μ 거리(depth) μ 보λ₯Ό λͺ¨λ₯Έλ€λ©΄ μμμ’ν pλ‘λΆν° ν¬μλκΈ° μ μ 3μ°¨μ μ’ν Pλ₯Ό 볡μν μλ μμ΅λλ€. λ°λΌμ μ Pκ° μμ Bμ ν¬μλ μ’ν p' λ₯Ό μ μΌνκ² κ²°μ ν μ μμ΅λλ€. νμ§λ§ μ Pλ A μΉ΄λ©λΌμ μμ κ³Ό pλ₯Ό μλ μ§μ (ray) μμ μ‘΄μ¬νκΈ° λλ¬Έμ μ΄ μ§μ μ μμ Bμ ν¬μμν€λ©΄ μ p'μ΄ μ΄ ν¬μλ μ§μ μμ μμμ μ μ μμ΅λλ€. μ΄ ν¬μλ μ§μ μ΄ λ°λ‘ epiline l' μ λλ€.
μ 리νλ©΄, Aμ μμμ’ν pλ‘λΆν° λμλλ Bμ μμμ’ν p'μ μ μΌνκ² κ²°μ ν μλ μμ§λ§ p'μ΄ μ§λλ μ§μ μΈ epiline l'μ μ μΌνκ² κ²°μ ν μ μμ΅λλ€. (μ¦, Aμμμ p μ -> B μμμ epiline κ²°μ ). κ·Έλ¦¬κ³ ν μμμ’νλ‘λΆν° λ€λ₯Έ μμμμμ λμλλ epilineμ κ³μ°ν΄μ£Όλ λ³ννλ ¬μ΄ Fundamental Matrix, Essential Matrix μ λλ€. μ¦, μλ‘ λ€λ₯Έ λ μμ μμ μ°μ μμμ’νλ€ μ¬μ΄μλ Fundamental Matrix, Essential Matrixλ₯Ό 맀κ°λ‘ νλ λ³ν κ΄κ³κ° μ±λ¦½ν©λλ€.
Essential Matrix
λ μμ μ’ν pμ p' μ¬μ΄μλ λ€μ κ΄κ³λ₯Ό λ§μ‘±νλ νλ ¬μ΄ νμ μ‘΄μ¬νλ€λ κ²μ΄ epipolar geometryμ ν΅μ¬
Fundamental Matrix
μμ μ€λͺ ν Essential Matrixλ μ κ·νλ μ΄λ―Έμ§ νλ©΄μμμ λ§€μΉ μλ€ μ¬μ΄μ κΈ°ννμ κ΄κ³λ₯Ό μ€λͺ νλ νλ ¬μ λλ€. μ¦, μΉ΄λ©λΌ λ΄λΆ νλΌλ―Έν° νλ ¬μΈ Kκ° μ κ±°λ μ’νκ³μμμ λ³νκ΄κ³μ λλ€.
λ°λ©΄ fundamental matrixλ μΉ΄λ©λΌ νλΌλ―Έν°κΉμ§ ν¬ν¨ν λ μ΄λ―Έμ§μ μ€μ ν½μ (pixel) μ’ν μ¬μ΄μ κΈ°ννμ κ΄κ³λ₯Ό νννλ νλ ¬μ λλ€.
μμμ λ μ΄λ―Έμ§ A, Bμ λνμ¬, 맀μΉλλ ν½μ μ’ν pimg, pimg' μ¬μ΄μλ νμ λ€μκ³Ό κ°μ κ΄κ³λ₯Ό λ§μ‘±νλ νλ ¬ Fκ° μ‘΄μ¬νκ³ , μ΄λ¬ν νλ ¬ Fλ₯Ό fundamental matrixλΌ λΆλ¦ λλ€.
μ΄ λ, μ΄λ―Έμ§ Aμ λν μΉ΄λ©λΌ λ΄λΆ νλΌλ―Έν° νλ ¬μ K, μ΄λ―Έμ§ Bμ λν μΉ΄λ©λΌ νλ ¬μ K', μ΄λ―Έμ§ A, B μ¬μ΄μ essential matrixλ₯Ό EλΌ νλ©΄ fundamental matrix Fλ λ€μκ³Ό κ°μ΄ μ£Όμ΄μ§λλ€.
λ§μΌ μ΄λ―Έμ§ A, Bλ₯Ό λμΌν μΉ΄λ©λΌλ‘ 촬μνλ€λ©΄ μΉ΄λ©λΌ νλ ¬(K)μ΄ λμΌνκΈ° λλ¬Έμ λ€μκ³Ό κ°μ΄ μ’λ λ¨μνλ©λλ€
Triangulation
λ§μ§λ§μΌλ‘ triangulation (μΌκ°μΈ‘λλ²)μ λ μ΄λ―Έμ§ νλ©΄ μ¬μ΄μ κΈ°ννμ κ΄κ³κ° μ£Όμ΄μ§κ³ (μ¦, E λλ Fκ° μ£Όμ΄μ§κ³ ), λ μ΄λ―Έμ§ νλ©΄μμ 맀μΉμ p, p'μ΄ μ£Όμ΄μ§λ©΄ μ΄λ‘λΆν° μλμ 3D 곡κ°μ’ν Pλ₯Ό κ²°μ ν μ μλ€λ κ²μ λ§ν©λλ€. λ°λ‘ μ€ν λ μ€ λΉμ μμ 거리(depth)λ₯Ό ꡬν λ νλ μΌμ λλ€.
'π Theory > 3D vision & Graphics' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[CV] SFM (Structure From Motion) : μ°μλ 2D μ΄λ―Έμ§λ€λ‘ μΉ΄λ©λΌ ν¬μ¦μ 3D shape μ¬κ΅¬μ±νκΈ° (0) | 2022.06.05 |
---|---|
[Graphics] 3D modelμ material μμ± / obj, mtl νμΌ (0) | 2022.04.04 |