๋ณธ ํฌ์คํ ์์๋ Visual Localization์์ ํต์ฌ์ด ๋๋ ๊ธฐ์ ์ค ํ๋์ธ Structure From Motion (SfM) ์ ๋ํด ๋ค๋ฃฌ๋ค. SfM์ 2D ์ด๋ฏธ์ง๋ก๋ถํฐ 3D ๊ตฌ์กฐ์ ์นด๋ฉ๋ผ์ ์์น(pose)๋ฅผ ๋ณต์ํ๋ ๊ธฐ์ ๋ก, ์ฌ๋ฌ ์ฅ์ ์ด๋ฏธ์ง๋ง์ผ๋ก ์ฅ๋ฉด์ 3์ฐจ์ ๊ตฌ์กฐ๋ฅผ ์ฌ๊ตฌ์ฑํ ์ ์๋ค.
์ด ๊ธ์์๋ ๋ณต์กํ ์์ ์์ด, ๊ฐ ๋จ๊ณ์ ๋ชฉ์ ๊ณผ ์๋ฏธ์ ์ง์คํ์ฌ SfM์ ์ ์ฒด ํ์ดํ๋ผ์ธ์ ์๊ฐํ๊ณ ์ ํ๋ค.
SfM์ ์ผ๋ฐ์ ์ผ๋ก COLMAP๊ณผ ๊ฐ์ ๋๊ตฌ์์ ์ฌ์ฉ๋๋ฉฐ, COLMAP์ GUI๋ฅผ ์ ๊ณตํ๋ ๊ฐ๋ ฅํ SfM & MVS ํ์ดํ๋ผ์ธ์ด๋ค. ์ ๋ ฌ๋ ์ด๋ฏธ์ง๋ฟ ์๋๋ผ ์ ๋ ฌ๋์ง ์์ ์ฌ๋ฌ ๋ทฐ ์ด๋ฏธ์ง๋ค๋ง ์ ๋ ฅํด๋, ์๋์ผ๋ก ์นด๋ฉ๋ผ์ ์์น์ 3D ๊ตฌ์กฐ๋ฅผ ๋ณต์ํด์ค๋ค. ์ด๋ฌํ ํน์ฑ ๋๋ถ์ SfM์ Visual SLAM, AR/VR, ๋ก๋ณดํฑ์ค, ๋์งํธ ํธ์ ๋ฑ ๋ค์ํ ๊ณต๊ฐ ์ธ์ ์์ฉ์์ ๋๋ฆฌ ํ์ฉ๋๊ณ ์๋ค.
* SFM๊ณผ ์ ์ฌํ ์๊ณ ๋ฆฌ์ฆ?
SfM(Structure from Motion)๊ณผ ์ ์ฌํ ๊ธฐ์ ๋ก๋ SLAM(Simultaneous Localization and Mapping)๊ณผ Visual Odometry(VO)๊ฐ ์๋ค. ์ด ์ธ ๊ธฐ์ ์ ๋ชจ๋ ์ด๋ฏธ์ง ๋๋ ์ผ์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก 3D ๊ณต๊ฐ ์ ๋ณด๋ฅผ ๋ณต์ํ๊ณ ์นด๋ฉ๋ผ์ ์์ง์์ ์ถ์ ํ๋ค๋ ์ ์์ ๊ณตํต์ ์ด ์์ง๋ง, ์ฌ์ฉ ๋ชฉ์ ๊ณผ ๋์ ๋ฐฉ์์์ ์ฐจ์ด๊ฐ ์๋ค.
Visual Odometry๋ ์ฐ์๋ ์ด๋ฏธ์ง ๋๋ ์ผ์ ํ๋ ์ ์ฌ์ด์ ์๋์ ์ธ ์นด๋ฉ๋ผ ์ด๋(trajectory)์ ์ถ์ ํ๋ ๊ธฐ์ ์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก loop closure๋ ์ง๋ ์์ฑ(map building)์ ํฌํจํ์ง ์๋๋ค. SLAM์ VO์ loop closure ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋ ํํ๋ก, ์นด๋ฉ๋ผ์ ์์น๋ฅผ ์ถ์ ํ๋ฉด์ ๋์์ ํ๊ฒฝ์ 3D ์ง๋๊น์ง ํจ๊ป ๊ตฌ์ถํ๋ค. ์ฃผ๋ก ๋ก๋ด์ด๋ ์์จ์ฃผํ ์ฐจ๋, AR ๊ธฐ๊ธฐ ๋ฑ์์ ์ค์๊ฐ(real-time)์ผ๋ก ๋์ํ๋๋ก ์ค๊ณ๋์ด ์์ผ๋ฉฐ, ๊ฒฝ๋ํ๋ ์๊ณ ๋ฆฌ์ฆ์ด ์ ํธ๋๋ค. ๋ฐ๋ฉด SfM์ ์คํ๋ผ์ธ์์ ๋์ํ๋ ๋ฐฉ์์ผ๋ก, ์ค์๊ฐ์ฑ์ด ์๊ตฌ๋์ง ์๊ธฐ ๋๋ฌธ์ ์๋์ ์ผ๋ก ๋ ์ ๋ฐํ๊ณ ๊ณ์ฐ๋์ด ๋ง์ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค. ๋ค์์ ์ด๋ฏธ์ง์์ ์นด๋ฉ๋ผ ํฌ์ฆ์ 3D ํฌ์ธํธ๋ฅผ ํจ๊ป ๋ณต์ํ๋ฉฐ, ์ฃผ๋ก ์ ์ ์ธ ์ฅ๋ฉด์ 3D ๋ณต์์ ์ฌ์ฉ๋๋ค.
* COLMAP์ SFM ์ 2016๋ CVPR์ "Structure-from-Motion Revisited" ๋ ผ๋ฌธ์ ์ค๋ช ๋์ด ์์
SFM (Structure From Motion)
Structure from Motion(SfM)์ ๋์ผํ ์ฅ๋ฉด(Scene)์ ๋ค์ํ ์์ (viewpoint)์์ ์ดฌ์ํ multi-view ์ด๋ฏธ์ง๋ค์ ์ ๋ ฅ์ผ๋ก ๋ฐ์, ๊ฐ ์ด๋ฏธ์ง์ ์นด๋ฉ๋ผ ์์ธ(camera pose)์ 3D ๊ตฌ์กฐ(3D structure)๋ฅผ ๋ณต์ํ๋ ๊ธฐ์ ์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก SfM์ ๋ค์๊ณผ ๊ฐ์ ์ธ ๊ฐ์ง ์ฃผ์ ๋จ๊ณ๋ก ๊ตฌ์ฑ๋๋ค.
- Feature Detection and Extraction
๊ฐ ์ด๋ฏธ์ง์์ SIFT ๋ฑ์ ๋ก์ปฌ ๋์คํฌ๋ฆฝํฐ๋ฅผ ํตํด ํน์ง์ (feature point)์ ์ถ์ถํ๊ณ , ์ด๋ฌํ ํน์ง์ ์ด radiometric ๋ฐ geometric ๋ณํ์ ๊ฐ๊ฑดํ๋๋ก ํ๋ค. - Feature Matching and Geometric Verification
์๋ก ๋ค๋ฅธ ์ด๋ฏธ์ง ๊ฐ์ ๋์ผํ ํน์ง์ ์ ๋งค์นญํ๊ณ , Epipolar Geometry๋ฅผ ํ์ฉํ์ฌ ๊ธฐํํ์ ์ผ๋ก ์ ํจํ ๋งค์นญ์ธ์ง ๊ฒ์ฆํ๋ค. RANSAC ๋ฑ์ ์๊ณ ๋ฆฌ์ฆ์ด ์ด ๊ณผ์ ์์ ํ์ฉ๋๋ค. - Structure and Motion Reconstruction
์ด๊ธฐ ์ด๋ฏธ์ง ์์ผ๋ก reconstruction์ ์์ํ๊ณ , PnP ๋ฐ Triangulation์ ํตํด ์นด๋ฉ๋ผ ์์ธ์ 3D ํฌ์ธํธ๋ฅผ ์ ์ง์ ์ผ๋ก ์ถ์ ํ๋ค. ๋ง์ง๋ง์ผ๋ก Bundle Adjustment๋ก ์ ์ฒด ๊ตฌ์กฐ๋ฅผ ์ต์ ํํ๋ค.
์ด๋ฌํ SfM ํ์ดํ๋ผ์ธ์ COLMAP๊ณผ ๊ฐ์ GUI ๊ธฐ๋ฐ ํด์์ ์ ์ ๋ฆฌ๋ ํํ๋ก ์ ๊ณต๋๋ฉฐ, ์ ๋ ฌ๋์ง ์์ ๋ค์์ ์ด๋ฏธ์ง๋ค์ ์ ๋ ฅ์ผ๋ก ๋ฃ๊ธฐ๋ง ํด๋ ์๋์ผ๋ก ์นด๋ฉ๋ผ ํฌ์ฆ ์ถ์ + 3D ๊ตฌ์กฐ ๋ณต์์ด ๊ฐ๋ฅํ๋ค.
ํ์ง๋ง COLMAP์ reconstruction ์ฑ๋ฅ์ ๋์ด๊ธฐ ์ํด์๋ ๋ช ๊ฐ์ง ์กฐ๊ฑด์ ๊ณ ๋ คํด์ผ ํ๋ค. ๋ค์๊ณผ ๊ฐ์ ์์๋ค์ด ์ถฉ์กฑ๋์ง ์์ผ๋ฉด SfM ๊ฒฐ๊ณผ๋ฌผ์ ํ์ง์ด ๋ฎ์์ง๊ฑฐ๋, reconstruction ์์ฒด๊ฐ ์คํจํ ์ ์๋ค.
- Texture๊ฐ ์ถฉ๋ถํ ์๋ ์ด๋ฏธ์ง ์ฌ์ฉ
ํน์ง์ ์ถ์ถ๊ณผ ๋งค์นญ์ด ์ ๋๊ธฐ ์ํด์๋, ํ๋ฉด์ ๋ฐ๋ณต๋์ง ์๋ ์ถฉ๋ถํ ํ ์ค์ฒ(texture) ์ ๋ณด๊ฐ ํ์ํ๋ค. ๋จ์ํ๊ฑฐ๋ ๊ท ์ผํ ํ๋ฉด(์: ํฐ ๋ฒฝ, ํ๋ ๋ฑ)์ ํฌ์ธํธ๊ฐ ๊ฑฐ์ ์ถ์ถ๋์ง ์๊ธฐ ๋๋ฌธ์ 3D ๋ณต์์ด ์ด๋ ต๋ค. - ์ ์ฌํ ์กฐ๋ช
์กฐ๊ฑด ์ ์ง
์กฐ๋ช ์ด ๊ธ๊ฒฉํ ๋ค๋ฅด๋ฉด ๋์ผํ ๋ฌผ์ฒด๋ผ๋ ํน์ง์ ์ด ๋ค๋ฅด๊ฒ ์ถ์ถ๋์ด ๋งค์นญ์ด ์คํจํ ์ ์๋ค. ๊ฐ๋ฅํ ํ ์ ์ฌํ ๋ฐ๊ธฐ์ ๊ทธ๋ฆผ์ ์กฐ๊ฑด์์ ์ดฌ์๋ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค. - ์๊ฐ์ ์ผ๋ก ๋ง์ด ์ค์ฒฉ๋ ์ด๋ฏธ์ง ํ๋ณด
์๋ก ๋ค๋ฅธ ์ด๋ฏธ์ง๋ค์ด ์ถฉ๋ถํ ๊ฒน์น๋(=overlapping) ์์ญ์ ๊ฐ์ ธ์ผ, ๋์ผํ ํฌ์ธํธ์ ๋ํ robustํ ๋งค์นญ์ด ๊ฐ๋ฅํ๋ค. ์ฅ๋ฉด์ ์ค์ฒฉ๋๊ฐ reconstruction์ ํ์ง์ ์ข์ฐํ๋ค. - ๋ค์ํ ์์ (viewpoint)์์์ ์ด๋ฏธ์ง ํ๋ณด
๋จ์ํ ์นด๋ฉ๋ผ ์์น๋ง ๋ฐ๊พธ๊ธฐ๋ณด๋ค๋, ๋ค์ํ ๊ฐ๋์์ ์ดฌ์๋ ์ด๋ฏธ์ง๋ฅผ ํฌํจํด์ผ ๋ณด๋ค ์ ํํ๊ณ ์ ์ฒด์ ์ธ 3D ๊ตฌ์กฐ๋ฅผ ์ป์ ์ ์๋ค. ํนํ ๊ตฌ์กฐ์ ์ธ ๋ณต์์ด ๋ชฉ์ ์ผ ๊ฒฝ์ฐ wide baseline ์ด๋ฏธ์ง๊ฐ ํจ๊ณผ์ ์ด๋ค.
1. Correspondence Search
Structure from Motion(SfM)์ ์ฒซ ๋จ๊ณ๋ ์ฌ๋ฌ ์ด๋ฏธ์ง ๊ฐ์ ๊ณตํต๋ ์์ญ(Scene Overlap)์ ์ฐพ๋ Correspondence Search์ด๋ค. ์ด ๊ณผ์ ์ ๊ฒฐ๊ณผ๋ฌผ์ ๊ธฐํํ์ ์ผ๋ก ์ ํจ์ฑ์ด ๊ฒ์ฆ๋ ์ด๋ฏธ์ง ์(image pairs)๊ณผ, ๊ฐ ํน์ง์ ์ด ์ด๋ค ์ด๋ฏธ์ง์ ๊ด์ธก๋์๋์ง๋ฅผ ๋ํ๋ด๋ image projection graph์ด๋ค.
1.1. Feature Extraction
SfM์์๋ ๊ฐ ์ด๋ฏธ์ง์์ ๊ณ ์ ํ ๋ชจ์์ ์๋ณํ ์ ์์ด์ผ ํ๋ฉฐ, ์ด๋ ์ถ์ถ๋๋ ํน์ง์ ์ ๋ฐฉ์ฌ์ ๋ณํ(radiometric)์ ๊ธฐํํ์ ๋ณํ(geometric)์ ๋ถ๋ณ(invariant)ํด์ผ ํ๋ค.
์ด๋ฅผ ์ํด ์ผ๋ฐ์ ์ผ๋ก SIFT(Scale-Invariant Feature Transform)์ ๊ฐ์ ๊ฐ๋ ฅํ ๋ก์ปฌ ๋์คํฌ๋ฆฝํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ ์ด๋ฏธ์ง์์ feature๋ฅผ ์ถ์ถํ๋ค.
1.2. Matching
๊ฐ ์ด๋ฏธ์ง์์ ์ถ์ถํ ํน์ง์ ๋ค์ ๋น๊ตํ์ฌ ์๋ก ๊ฐ์ ๋ฌผ์ฒด์ ๋์ผํ ์์น๋ฅผ ๋ฐ๋ผ๋ณด๊ณ ์๋ ์ง์ ๋ค์ ์ฐพ๋๋ค. ์ด ๋จ๊ณ๋ ์ฃผ๋ก ์ธํ์ ์ ์ฌ์ฑ์ ๊ธฐ์ค์ผ๋ก ํ๋ฉฐ, ์์ง ๊ธฐํํ์ ์ธ ๊ฒ์ฆ์ ํฌํจ๋์ง ์๋๋ค. ๋ฐ๋ผ์ ์ด ๋จ๊ณ์์ ์๋ชป๋ ๋งค์นญ(outlier)๋ ๋ค์ ํฌํจ๋ ์ ์๋ค
1.3. Geometric Verification
๋งค์นญ๋ feature๋ค์ด ์ค์ ๋ก ๊ธฐํํ์ ์ผ๋ก ์ผ์นํ๋์ง๋ฅผ ๊ฒ์ฆํ๋ ๋จ๊ณ์ด๋ค. ์ด๋ Epipolar Geometry ๊ธฐ๋ฐ์ ๊ฒ์ฆ์ ํตํด ์ํ๋๋ค.
๋ ์ด๋ฏธ์ง ๊ฐ์ ์นด๋ฉ๋ผ ์์น์ ๋ฐฉํฅ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์, ๋์ผํ 3D ํฌ์ธํธ๊ฐ ๊ฐ ์ด๋ฏธ์ง ์์์ ๊ด์ธก๋๋ ๋ฐฉ์์ ์ผ์ ํ ์ ์ฝ ์กฐ๊ฑด์ ๋ฐ๋ฅธ๋ค. ์ด ์ ์ฝ์ ์ํ์ ์ผ๋ก ํํํ ๊ฒ์ด Fundamental Matrix (uncalibrated) ๋๋ Essential Matrix (calibrated)์ด๋ค.
์ด ๋งคํธ๋ฆญ์ค๋ฅผ ์ต์ํ์ ๋งค์นญ๋ ์ ๋ค๋ก๋ถํฐ ๊ณ์ฐํ๊ณ , ์ด ๊ณ์ฐ๋ ๋งคํธ๋ฆญ์ค๊ฐ ์ ์ฒด ๋งค์นญ์ ์ผ๋ง๋ ์ ์ค๋ช ํ๋์ง๋ฅผ ํ๋จํจ์ผ๋ก์จ, ๊ธฐํํ์ ์ผ๋ก ํ๋นํ ๋งค์นญ์ธ์ง ๊ฒ์ฆํ ์ ์๋ค.
์ค์ ๋งค์นญ๋ ํฌ์ธํธ ์ค์๋ ์ฌ์ ํ ๋ง์ outlier๊ฐ ์กด์ฌํ ์ ์๊ธฐ ๋๋ฌธ์, RANSAC(Random Sample Consensus)๊ณผ ๊ฐ์ robust estimation ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ค. RANSAC์ ๋ฌด์์๋ก ๋ฝ์ ์์์ ๋งค์นญ ์ ๋ค๋ก๋ถํฐ ์ฌ๋ฌ Essential/Fundamental matrix๋ฅผ ์ถ์ ํ๊ณ , ๊ฐ ํ๋ณด ๋ชจ๋ธ์ด ์ ์ฒด ๋งค์นญ์ ๋ํด ์ผ๋ง๋ ๋ง์ inlier๋ฅผ ํฌํจํ๋์ง๋ฅผ ํ๊ฐํ๋ค.
์ด ๊ณผ์ ์ ํตํด ๊ธฐํํ์ ์ผ๋ก ์ ํจํ image pair์ ๊ทธ ์ฌ์ด์ inlier correspondence, geometric relation์ ์ต์ข ์ ์ผ๋ก ํ๋ํ๋ค.
2. Incremental Reconstruction
์ด ๋จ๊ณ์์๋ ์์ ์ป์ ์ด๋ฏธ์ง ๊ฐ correspondence ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ์ค์ 3์ฐจ์ ๊ตฌ์กฐ๋ฅผ ๋ณต์ํ๋ค. ์ ๋ ฅ์ image projection graph, ์ถ๋ ฅ์ ๊ฐ ์ด๋ฏธ์ง์ ์นด๋ฉ๋ผ pose (์์น์ ๋ฐฉํฅ)์ scene์ 3D ํฌ์ธํธ๋ค์ด๋ค.
2.1. Initialization
SfM์ reconstruction์ ์ผ๋ฐ์ ์ผ๋ก 2-view reconstruction์ผ๋ก ์์ํ๋ค. ์ฒ์ ์์ํ ์ด๋ฏธ์ง ์์ ์ ์คํ ์ ํ๋์ด์ผ ํ๋ฉฐ, ์นด๋ฉ๋ผ ๊ฐ ์ค์ฒฉ์ด ์ถฉ๋ถํ๊ณ ํน์ง์ ๋งค์นญ์ด ํ๋ถํ image pair๋ฅผ ์ ํํ๋ ๊ฒ์ด ์ค์ํ๋ค. ์ด๊ธฐ reconstruction ์ฑ๋ฅ์ด ์ดํ ์ ์ฒด ๋ชจ๋ธ ํ์ง์ ํฐ ์ํฅ์ ๋ฏธ์น๊ธฐ ๋๋ฌธ์ด๋ค.
2.2. Image Registration
๊ธฐ์กด์ ๋ฑ๋ก๋ ์ด๋ฏธ์ง๋ค์ ๋ํด 3D ํฌ์ธํธ์์ ๋์ ๊ด๊ณ๊ฐ ์กด์ฌํ ๋, ์๋ก์ด ์ด๋ฏธ์ง๋ฅผ ๋ฑ๋กํ๊ธฐ ์ํด PnP(Perspective-n-Point) ๋ฌธ์ ๋ฅผ ํ๊ฒ ๋๋ค.
PnP๋ 3D ํฌ์ธํธ์ ํด๋น ์ด๋ฏธ์ง ๋ด์ 2D ๋์์ ์ด ์ฃผ์ด์ก์ ๋, ํด๋น ์ด๋ฏธ์ง์ ์นด๋ฉ๋ผ ํฌ์ฆ(camera pose: ์์น์ ๋ฐฉํฅ)๋ฅผ ์ถ์ ํ๋ ๋ฌธ์ ์ด๋ค. ํ์์ ๋ฐ๋ผ ์นด๋ฉ๋ผ ๋ด๋ถ ํ๋ผ๋ฏธํฐ(intrinsic parameters)๋ ๋์์ ์ถ์ ํ๋ค
2.3. Triangulation
๋์ผํ 3D ํฌ์ธํธ๋ฅผ ์๋ก ๋ค๋ฅธ ์นด๋ฉ๋ผ์์ ๊ด์ธกํ์ ๋ ์๊ธฐ๋ ๋ ๊ฐ์ ๊ด์ (ray)์, ์ด์์ ์ผ๋ก๋ ํ๋์ 3D ํฌ์ธํธ์์ ๊ต์ฐจํด์ผ ํ๋ค. ํ์ง๋ง ์ค์ ๊ด์ธก์๋ ์ก์์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ์ ํํ ๊ต์ฐจํ์ง ์๊ณ ์๊ฐ๋ฆฌ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
๋ฐ๋ผ์ ์ด ๋ ray๊ฐ ๊ฐ์ฅ ๊ฐ๊น๊ฒ ์ ๊ทผํ๋ ์ง์ ์ ์ผ๊ฐ์ธก๋(triangulation)ํ์ฌ, 3D ํฌ์ธํธ๋ฅผ ์ถ์ ํ๋ค. ์ด ๊ณผ์ ์ ๋ชจ๋ธ์ 3์ฐจ์ ๊ตฌ์กฐ๋ฅผ ์์ฑํ๊ณ , ์๋ก์ด ์ด๋ฏธ์ง ๋ฑ๋ก์ ์ํ ์ถ๊ฐ์ ์ธ 2D-3D correspondence๋ฅผ ์ ๊ณตํ๋ ํต์ฌ ๋จ๊ณ์ด๋ค.
2.4. Bundle Adjustment
๋ชจ๋ ์ด๋ฏธ์ง์ ํฌ์ฆ์ 3D ํฌ์ธํธ๋ฅผ globalํ๊ฒ ์ฌ์กฐ์ ํ์ฌ ์ต์ ํํ๋ ๊ณผ์ ์ด๋ค. ๋ชฉํ๋ ๊ฐ 3D ํฌ์ธํธ๋ฅผ projectionํ ์์น์ ์ค์ ์ด๋ฏธ์ง ์์ 2D ์์น ๊ฐ์ ์ฐจ์ด์ธ Reprojection Error๋ฅผ ์ต์ํํ๋ ๊ฒ์ด๋ค.
์ด ์ต์ ํ๋ ๋ค์์ ์นด๋ฉ๋ผ์ ํฌ์ธํธ ๊ฐ์ ๋ณต์กํ ๊ด๊ณ๋ฅผ ํฌํจํ๋ฉฐ, ์ผ๋ฐ์ ์ผ๋ก ๋น์ ํ ์ต์ ํ(non-linear optimization)์ธ Gauss-Newton ๋๋ Levenberg-Marquardt ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ํด๊ฒฐํ๋ค.
"Bundle"์ด๋ผ๋ ์ฉ์ด๋ ๊ฐ 3D ํฌ์ธํธ์์ ์ฌ๋ฌ ์นด๋ฉ๋ผ๋ฅผ ํฅํด ๋ป๋ ๊ด์ (rays)๋ค์ ๋ฌถ์ด ํํํ ๋ฐ์ ์ ๋ํ๋ค. ์ด ๊ณผ์ ์ ์ ์ฒด reconstruction์ ์ ๋ฐ๋๋ฅผ ํฅ์์ํค๋ ํต์ฌ ๋จ๊ณ์ด๋ฉฐ, ๋ณดํต ์ ์ฒด SfM ํ์ดํ๋ผ์ธ์์ ๊ฐ์ฅ ๊ณ์ฐ ๋น์ฉ์ด ํฌ๋ค.
3. Dense Reconstruction
์์ SfM ๋จ๊ณ์์๋ ์ฃผ๋ก ํน์ง์ ๊ธฐ๋ฐ์ sparse point cloud๋ฅผ ์์ฑํ๊ฒ ๋๋ค. ํ์ง๋ง ์ค์ ๋ก ํ์ฉ ๊ฐ๋ฅํ 3D ๋ชจ๋ธ์ ์ป๊ธฐ ์ํด์๋ ๋ ์ ๋ฐํ๊ณ ์กฐ๋ฐํ ๊ตฌ์กฐ๊ฐ ํ์ํ๋ค. ์ด๋ฅผ ์ํ ๋จ๊ณ๊ฐ Dense Reconstruction์ด๋ค.
3.1. Depth Map Estimation
๋ฑ๋ก๋ ๊ฐ ์ด๋ฏธ์ง์ ๋ํด ํด๋น ๋ทฐ์์์ depth map (๊น์ด ์ ๋ณด)์ ์ถ์ ํ๋ค. ์ด๋ stereo matching ๋๋ multi-view stereo(MVS) ๊ธฐ๋ฒ์ ํตํด ์ํ๋๋ค. ๊ฐ ํฝ์ ์ ๋ํด ๊ฐ์ฅ ์ ์ ํ depth ๊ฐ์ ์์ธกํ์ฌ, ๊ฐ ์ด๋ฏธ์ง์์ ๋ณผ ์ ์๋ 3์ฐจ์ ํฌ์ธํธ๋ฅผ ์ด์ดํ ์ถ์ ํ๋ ๊ฒ์ด๋ค.
3.2. Depth Fusion
์ฌ๋ฌ ์ด๋ฏธ์ง์์ ์ถ์ ๋ depth map์ ์๋ก ์ค๋ณต๋๋ ์์ญ์ ํฌํจํ๊ณ ์๋ค. ์ด๋ค ๊ฐ์ ์ ํฉ์ ์ํํด ์ผ๊ด๋ ํ๋์ 3D ํฌ์ธํธ ํด๋ผ์ฐ๋๋ฅผ ์์ฑํ๋ ๋จ๊ณ์ด๋ค. ๋ถํ์ค์ฑ์ด๋ ๋ ธ์ด์ฆ๋ฅผ ์ค์ด๊ธฐ ์ํด ๋ค์ํ filtering์ด๋ confidence-based weighting์ด ํ์ฉ๋๊ธฐ๋ ํ๋ค.
3.3. Surface Reconstruction
์ต์ข ์ ์ผ๋ก ์์ฑ๋ dense point cloud๋ฅผ ๊ธฐ๋ฐ์ผ๋ก, mesh ํํ์ ํ๋ฉด(surface)์ ๋ณต์ํ๋ค. ๋ํ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก๋ Poisson Surface Reconstruction์ด๋ Marching Cubes ๋ฑ์ด ์์ผ๋ฉฐ, ์ด๋ฅผ ํตํด ์ค์ ๋ชจ๋ธ๋ง ๋ฐ ์๊ฐํ์ ์ ํฉํ 3D ๋ฉ์ฌ ๊ตฌ์กฐ๋ฅผ ์ป์ ์ ์๋ค.
Dense Reconstruction์ ์ผ๋ฐ SfM์ ์ถ๋ ฅ์ ๋นํด ํจ์ฌ ๋ ์ธ๋ฐํ ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํ๊ธฐ ๋๋ฌธ์, ๊ณ ์ ๋ฐ 3D ๋ชจ๋ธ์ด ํ์ํ ๋ถ์ผ(AR/VR, ๋ก๋ณดํฑ์ค, ๋์งํธ ํธ์ ๋ฑ)์์ ํ์์ ์ธ ๊ณผ์ ์ด๋ค.
'๐ Fundamentals > 3D vision & Graphics' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[3D Vision] Marching Cubes: 3D ๋ณผ๋ฅจ ๋ฐ์ดํฐ๋ฅผ Mesh๋ก ๋ฐ๊พธ๋ ๋ฐฉ๋ฒ (0) | 2025.03.24 |
---|---|
[3D Vision] Point Cloud vs. Mesh: ์ฐจ์ด์ , ๋ณํ ๋ฐฉ๋ฒ (0) | 2025.03.12 |
[3D Vision] 3D ๋ฐ์ดํฐ ๊ตฌ์กฐ(Mesh, Point Cloud)์ ํฌ๋งท(OBJ, PLY, PCD) (0) | 2025.03.05 |
[CV] 3D Geometry ์ค๋ช (0) | 2022.04.04 |
[Graphics] 3D ๋ชจ๋ธ๋ง์ ์ํ OBJ & MTL ํ์ผ ๊ตฌ์กฐ์ PBR ์ฌ์ง ์ ๋ฆฌ (0) | 2022.04.04 |