[3D CV] Marching Cubes
Marching cubes is a computer graphics algorithm, published in the 1987 SIGGRAPH, for extracting a polygonal mesh of an isosurface from a three-dimensional discrete scalar field (the elements of which are sometimes called voxels).
Marching Cubes ์๊ณ ๋ฆฌ์ฆ
Marching Cubes ์๊ณ ๋ฆฌ์ฆ์ 3์ฐจ์ ๊ฒฉ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์ isosurface๋ฅผ ์ถ์ถํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. Isosurface๋ ํน์ ์๊ณ๊ฐ์ ๊ฐ์ง๋ ์ ๋ค๋ก ๊ตฌ์ฑ๋ ํ๋ฉด์ ๋๋ค. ์ด ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ ๊ฒฉ์ ์ ์ ํ๋ธ๋ก ๊ฐ์ฃผํ๊ณ , ํ๋ธ์ ๊ฐ ๊ผญ์ง์ ์ด ์๊ณ๊ฐ๋ณด๋ค ๋์์ง ๋ฎ์์ง๋ฅผ ๊ธฐ์ค์ผ๋ก ํ๋ธ๋ฅผ ์ผ๊ฐํ์ผ๋ก ๋ถํ ํฉ๋๋ค.
์๊ณ ๋ฆฌ์ฆ์ ๋จ๊ณ
1) ํ๋ธ ๋ถํ : 3์ฐจ์ ๊ฒฉ์ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๋ธ(์ )๋ค๋ก ๋๋๋๋ค. ๊ฐ ํ๋ธ๋ 8๊ฐ์ ๊ผญ์ง์ ์ ๊ฐ์ง๋ฉฐ, ๊ฐ ๊ผญ์ง์ ์ ์ํ๋ง๋ ๋ฐ์ดํฐ ๊ฐ(์ค์นผ๋ผ ๊ฐ)์ ๊ฐ์ง๋๋ค.
2) ๊ผญ์ง์ ํ๊ฐ: ๊ฐ ํ๋ธ์ ๊ผญ์ง์ ์ด ์๊ณ๊ฐ๋ณด๋ค ํฐ์ง ์์์ง๋ฅผ ํ๊ฐํ์ฌ ์ด์ง ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. ์ด์ง ์ฝ๋๋ 8๋นํธ๋ก ํํ๋๋ฉฐ, ๊ฐ ๋นํธ๋ ๊ผญ์ง์ ์ ์ํ(์๊ณ๊ฐ๋ณด๋ค ํฐ์ง ์์์ง)๋ฅผ ๋ํ๋ ๋๋ค. ๊ฐ ๊ผญ์ง์ ์ ๊ฐ์ฒด์ ํฌํจ๋์ด ์๋์ง ์ฌ๋ถ์ ๋ฐ๋ผ 0 ๋๋ 1๋ก ํ์๋ฉ๋๋ค. ํฌํจ๋์ด ์์ผ๋ฉด 1, ํฌํจ๋์ง ์์ผ๋ฉด 0์ ๋๋ค.
3) ์ผ๊ฐํ ํจํด ๋งค์นญ: ๊ฐ ํ๋ธ์ 8๊ฐ์ ๊ผญ์ง์ ์ด ๋ ๊ฐ์ง ์ํ๋ฅผ ๊ฐ์ง ์ ์๊ธฐ ๋๋ฌธ์, ํ๋ธ๋ ์ด 2^8(=256)๊ฐ์ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ฐ์ง๋๋ค. ์ด์ง ์ฝ๋์ ๋ฐ๋ผ ๋ฏธ๋ฆฌ ์ ์๋ ์ผ๊ฐํ ํจํด์ ์ฐธ์กฐํ์ฌ ํ๋ธ ๋ด๋ถ์ isosurface๋ฅผ ํํํ๋ ์ผ๊ฐํ์ ์์ฑํฉ๋๋ค. ์ด 256๊ฐ์ง ๊ฒฝ์ฐ์ ์ ๊ฐ๊ฐ์ ๋ํด, ์ด๋ป๊ฒ ํ๋ฉด ๋ค๊ฐํ์ ๋ฐฐ์นํ ์ง ๋ฏธ๋ฆฌ ์ ์๋ ํ ์ด๋ธ์ด ์กด์ฌํฉ๋๋ค. ์ด ํ ์ด๋ธ์ ๊ฐ ๊ฒฝ์ฐ์ ์์ ๋ํด ํด๋นํ๋ ๋ค๊ฐํ์ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
4) ๋ณด๊ฐ: ํ๋ธ์ ๋ณ์ ๋ฐ๋ผ ์ ํ ๋ณด๊ฐ์ ํตํด ๊ผญ์ง์ ์ ์ ํํ ์์น๋ฅผ ๊ณ์ฐํ์ฌ ์ผ๊ฐํ์ ์ ์ ์ ๊ฒฐ์ ํฉ๋๋ค.
5) ์ผ๊ฐํ ์ฐ๊ฒฐ: ๊ฐ ํ๋ธ์์ ์์ฑ๋ ์ผ๊ฐํ๋ค์ ์ฐ๊ฒฐํ์ฌ ์ฐ์์ ์ธ ํ๋ฉด์ ํ์ฑํฉ๋๋ค.
ํ์ฉ ๋ฐฉ์
-
SDF (Signed Distance Fields): SDF๋ ์ ์ด ํ๋ฉด์ผ๋ก๋ถํฐ์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ํ๋ด๋ ํ๋์ ๋๋ค. Marching Cubes ์๊ณ ๋ฆฌ์ฆ์ SDF ๋ฐ์ดํฐ์์ isosurface๋ฅผ ์ถ์ถํ์ฌ 3D ๋ชจ๋ธ์ ์์ฑํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ์ ์์ง์์ ๋ฌผ์ฒด์ ์ถฉ๋ ๊ฐ์ง, 3D ๋ชจ๋ธ๋ง ์ํํธ์จ์ด์์ ๋ถ๋๋ฌ์ด ํ๋ฉด ์์ฑ ๋ฑ์ ํ์ฉ๋ฉ๋๋ค.
-
NeRF (Neural Radiance Fields): NeRF๋ ์ ๊ฒฝ๋ง์ ์ด์ฉํด 3D ์ฅ๋ฉด์ ๊ด์ ํ๋๋ฅผ ํ์ตํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ํ์ต๋ NeRF ๋ชจ๋ธ์์ ์ํ๋ง๋ 3์ฐจ์ ๋ฐ์ดํฐ๋ก๋ถํฐ isosurface๋ฅผ ์ถ์ถํ์ฌ ์ฅ๋ฉด์ 3D ๊ตฌ์กฐ๋ฅผ ์๊ฐํํ ์ ์์ต๋๋ค. Marching Cubes ์๊ณ ๋ฆฌ์ฆ์ ์ด๋ฌํ ๋ฐ์ดํฐ๋ก๋ถํฐ ๋ฉ์ฌ๋ฅผ ์์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
-
๋ฉ๋์ปฌ ์ด๋ฏธ์ง (CT, MRI): Marching Cubes ์๊ณ ๋ฆฌ์ฆ์ CT, MRI ๋ฐ์ดํฐ์์ ์ธ์ฒด ์ฅ๊ธฐ๋ ๊ตฌ์กฐ๋ฌผ์ 3D ๋ชจ๋ธ์ ์์ฑํ๋ ๋ฐ ๋๋ฆฌ ์ฌ์ฉ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์์ฌ๋ CT ์ค์บ ๋ฐ์ดํฐ๋ฅผ ํตํด ํ์์ ์ฅ๊ธฐ๋ฅผ 3D๋ก ์๊ฐํํ์ฌ ์์ ๊ณํ์ ์ธ์ฐ๊ฑฐ๋, ๋ณ๋ณ์ ์์น์ ํฌ๊ธฐ๋ฅผ ์ ํํ ํ์ ํ ์ ์์ต๋๋ค.
Marching Cube ์ฅ์
- ํจ์จ์ฑ: ์๊ณ ๋ฆฌ์ฆ์ด ๋น๊ต์ ๊ฐ๋จํ๊ณ , ๋ณ๋ ฌ ์ฒ๋ฆฌ์ ์ ํฉํฉ๋๋ค.
- ์ผ๊ด์ฑ: isosurface๊ฐ ์ฐ์์ ์ด๊ณ ๋งค๋๋ฌ์ด ํ๋ฉด์ ํ์ฑํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
Marching Cube ๋จ์
- ๊ตฌ๋ฉ ๋ฌธ์ : ํน์ ๊ฒฝ์ฐ์ ์๋ชป๋ ์ผ๊ฐํ ํจํด์ด ์ ํ๋์ด ๊ตฌ๋ฉ์ด ์๊ธธ ์ ์์ต๋๋ค.
- ์ ํ๋: ๋ณด๊ฐ ๊ณผ์ ์์ ์ ํ๋๊ฐ ๋จ์ด์ง ์ ์์ต๋๋ค.
Leave a comment