Openmvg: OpenMVG ํŒŒ์ดํ”„ ๋ผ์ธ ๋ฐ ์ด๋ฏธ์ง€ ์‹œํ€€์Šค๋ฅผ ์‚ฌ์šฉํ•œ ์žฌ๊ตฌ์„ฑ

์— ๋งŒ๋“  2014๋…„ 02์›” 11์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: openMVG/openMVG

ํŒŒ์ดํ”„ ๋ผ์ธ๊ณผ ์ƒ˜ํ”Œ์— ๋Œ€ํ•œ ์˜จ๋ผ์ธ ๋ฌธ์„œ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
๋‚˜๋Š” ์•„์ง๋„ ํ—ท๊ฐˆ ๋ฆฐ๋‹ค.
openMVG๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€ ์‹œํ€€์Šค (2 ๊ฐœ ์ด์ƒ)์—์„œ 3D ๋ชจ๋ธ์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

์นœ์• ํ•˜๋Š”,
ํƒ€์ผ๋Ÿฌ

question

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

I Tyler, OpenMVG๋Š” ๋‹ค์ค‘ ๋ทฐ ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ฐ•๋ ฅํ•œ ๊ตฌํ˜„์— ์ดˆ์ ์„ ๋งž์ถ˜ ์ปดํ“จํ„ฐ ๋น„์ „ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • 2 ๋ชจ์…˜ ํŒŒ์ดํ”„ ๋ผ์ธ์˜ ๊ตฌ์กฐ :

    • ๋ชจ์…˜ ์ฒด์ธ์˜ ์ฆ๋ถ„ ๊ตฌ์กฐ [ACSfM] _ (ACCV 2012),

    • ๋ชจ์…˜ ์ฒด์ธ์˜ ๊ธ€๋กœ๋ฒŒ ๊ตฌ์กฐ [GlobalACSfM] _ (ICCV 2013).

  • ์‹œ๊ฐํ™” ๋„๊ตฌ :

    • ํ’๋ชจ,

    • ํฌํ†  ๋ฉ”ํŠธ๋ฆญ / ๊ธฐํ•˜ํ•™์  ์ผ์น˜ ๋Œ€์‘,

    • ํŠน์ง• ํŠธ๋ž™.

  • ๊ธฐ์กด ๋‹ค์ค‘ ๋ทฐ ์Šคํ…Œ๋ ˆ์˜ค ๋น„์ „ ํŒŒ์ดํ”„ ๋ผ์ธ์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ :

    • [PMVS] _, CMPMVS.

  • ์ž์‹  ๋งŒ์˜ SfM ํŒŒ์ดํ”„ ๋ผ์ธ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋„๊ตฌ :

    • ๊ธฐํ•˜ํ•™์  ์†”๋ฒ„, ๊ฐ•๋ ฅํ•œ ์ถ”์ •๊ธฐ ...

์—ฌ๊ธฐ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด https://github.com/openMVG/openMVG/blob/LInfinityCV/docs/sphinx/rst/software/SfM/SfM.rst
OpenMVG๋Š” 3D ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ (๊ตฌ์กฐ)์™€ ์ผ๋ จ์˜ ๊ทธ๋ฆผ์˜ ์›€์ง์ž„์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ผ๋ถ€ ์‚ฌ์šฉ์ž์— ๋”ฐ๋ฅด๋ฉด openMVG SfM ์ฒด์ธ์€ ์ตœ๋Œ€ 1600 ๊ฐœ์˜ ์‚ฌ์ง„์— ์„ฑ๊ณต์ ์œผ๋กœ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

3D ๋ชจ๋ธ์„ ์ถ”๋ก ํ•˜๋ ค๋ฉด MVS Multiple View Stereo (PMVS, CMPMVS)๋ผ๊ณ ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ํ›„ ์ฒ˜๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. OpenMVG๋Š” ์ด๋Ÿฌํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ์— ๋Œ€ํ•ด ํ˜ธํ™˜ ๊ฐ€๋Šฅํ•œ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ค€๋น„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์— ๋‚ด๊ฐ€ ์—ฌ๊ธฐ์„œ ํ•œ ๊ฒƒ๊ณผ ๊ฐ™์€ ๋ชจ๋ธ์„ ์ƒ์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค : https://sketchfab.com/show/2cde608f89424a7786bdc751857f8dfd

Motion openMVG ์ฒด์ธ์˜ ๊ตฌ์กฐ๋Š” ์†๋„๊ฐ€ ์•„๋‹ˆ๋ผ ์ •ํ™•์„ฑ์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๋‹ค์Œ ๋Œ€์•ˆ๊ณผ ๋ฐ˜๋Œ€๋ฉ๋‹ˆ๋‹ค.

  • VisualSfM, Wu Changchang, "์šด๋™์—์„œ ์„ ํ˜• ์‹œ๊ฐ„ ์ฆ๋ถ„ ๊ตฌ์กฐ๋กœ", 3DV 2013
  • Bundler, Noah Snavely, Steven M. Seitz, Richard Szeliski. ์ธํ„ฐ๋„ท ์‚ฌ์ง„ ์ปฌ๋ ‰์…˜์—์„œ ์„ธ๊ณ„ ๋ชจ๋ธ๋ง. IJCV, 2007.
    OpenMVG๋Š” ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ดํ•ด, ์‹คํ–‰ ๋ฐ ์ˆ˜์ •ํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์ œ๊ณตํ•˜๊ณ ์žํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๋ณ€์ด ์™„๋ฃŒ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

I Tyler, OpenMVG๋Š” ๋‹ค์ค‘ ๋ทฐ ์ง€์˜ค๋ฉ”ํŠธ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ฐ•๋ ฅํ•œ ๊ตฌํ˜„์— ์ดˆ์ ์„ ๋งž์ถ˜ ์ปดํ“จํ„ฐ ๋น„์ „ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • 2 ๋ชจ์…˜ ํŒŒ์ดํ”„ ๋ผ์ธ์˜ ๊ตฌ์กฐ :

    • ๋ชจ์…˜ ์ฒด์ธ์˜ ์ฆ๋ถ„ ๊ตฌ์กฐ [ACSfM] _ (ACCV 2012),

    • ๋ชจ์…˜ ์ฒด์ธ์˜ ๊ธ€๋กœ๋ฒŒ ๊ตฌ์กฐ [GlobalACSfM] _ (ICCV 2013).

  • ์‹œ๊ฐํ™” ๋„๊ตฌ :

    • ํ’๋ชจ,

    • ํฌํ†  ๋ฉ”ํŠธ๋ฆญ / ๊ธฐํ•˜ํ•™์  ์ผ์น˜ ๋Œ€์‘,

    • ํŠน์ง• ํŠธ๋ž™.

  • ๊ธฐ์กด ๋‹ค์ค‘ ๋ทฐ ์Šคํ…Œ๋ ˆ์˜ค ๋น„์ „ ํŒŒ์ดํ”„ ๋ผ์ธ์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ :

    • [PMVS] _, CMPMVS.

  • ์ž์‹  ๋งŒ์˜ SfM ํŒŒ์ดํ”„ ๋ผ์ธ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋„๊ตฌ :

    • ๊ธฐํ•˜ํ•™์  ์†”๋ฒ„, ๊ฐ•๋ ฅํ•œ ์ถ”์ •๊ธฐ ...

์—ฌ๊ธฐ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด https://github.com/openMVG/openMVG/blob/LInfinityCV/docs/sphinx/rst/software/SfM/SfM.rst
OpenMVG๋Š” 3D ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ (๊ตฌ์กฐ)์™€ ์ผ๋ จ์˜ ๊ทธ๋ฆผ์˜ ์›€์ง์ž„์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ผ๋ถ€ ์‚ฌ์šฉ์ž์— ๋”ฐ๋ฅด๋ฉด openMVG SfM ์ฒด์ธ์€ ์ตœ๋Œ€ 1600 ๊ฐœ์˜ ์‚ฌ์ง„์— ์„ฑ๊ณต์ ์œผ๋กœ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

3D ๋ชจ๋ธ์„ ์ถ”๋ก ํ•˜๋ ค๋ฉด MVS Multiple View Stereo (PMVS, CMPMVS)๋ผ๊ณ ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ํ›„ ์ฒ˜๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. OpenMVG๋Š” ์ด๋Ÿฌํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ์— ๋Œ€ํ•ด ํ˜ธํ™˜ ๊ฐ€๋Šฅํ•œ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ค€๋น„๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์— ๋‚ด๊ฐ€ ์—ฌ๊ธฐ์„œ ํ•œ ๊ฒƒ๊ณผ ๊ฐ™์€ ๋ชจ๋ธ์„ ์ƒ์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค : https://sketchfab.com/show/2cde608f89424a7786bdc751857f8dfd

Motion openMVG ์ฒด์ธ์˜ ๊ตฌ์กฐ๋Š” ์†๋„๊ฐ€ ์•„๋‹ˆ๋ผ ์ •ํ™•์„ฑ์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๋‹ค์Œ ๋Œ€์•ˆ๊ณผ ๋ฐ˜๋Œ€๋ฉ๋‹ˆ๋‹ค.

  • VisualSfM, Wu Changchang, "์šด๋™์—์„œ ์„ ํ˜• ์‹œ๊ฐ„ ์ฆ๋ถ„ ๊ตฌ์กฐ๋กœ", 3DV 2013
  • Bundler, Noah Snavely, Steven M. Seitz, Richard Szeliski. ์ธํ„ฐ๋„ท ์‚ฌ์ง„ ์ปฌ๋ ‰์…˜์—์„œ ์„ธ๊ณ„ ๋ชจ๋ธ๋ง. IJCV, 2007.
    OpenMVG๋Š” ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ดํ•ด, ์‹คํ–‰ ๋ฐ ์ˆ˜์ •ํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์ œ๊ณตํ•˜๊ณ ์žํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๋ณ€์ด ์™„๋ฃŒ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

@pmoulon ์ž์„ธํ•œ ๋‹ต๋ณ€์„ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š”์ด ๋ถ„์•ผ์˜ tiro์ด๋ฏ€๋กœ OpenMVG๋ฅผ ์ฐธ์กฐ๋กœ ์‚ฌ์šฉํ•˜๋Š” 3D ์žฌ๊ตฌ์„ฑ ์ƒ˜ํ”Œ (C ++)์ด ์žˆ๋Š”์ง€ ๋ฌป๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

@fansays OpenMVG๋Š” C ++๋กœ ๋งŒ๋“ค์–ด์กŒ์Šต๋‹ˆ๋‹ค.
๋ช…๋ น ์ค„ ๋„๊ตฌ๋ฅผ ๋” ์‰ฝ๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ Python ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
์ž…๋ ฅ ์ด๋ฏธ์ง€ ๋””๋ ‰ํ† ๋ฆฌ์™€ ์ถœ๋ ฅ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ง€์ •ํ•˜๊ธฐ ๋งŒํ•˜๋ฉด๋˜๋Š” ์ œ๊ณต๋œ Python ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋จผ์ € ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์‰ฝ์Šต๋‹ˆ๋‹ค.
์ด์ง„ ํŒŒ์ผ์„ ์ง์ ‘ ์‚ฌ์šฉํ•˜์—ฌ ํ”Œ๋ ˆ์ดํ•˜๊ณ  ํŒŒ์ดํ”„ ๋ผ์ธ์„ ๋” ๋งŽ์ด ์ œ์–ด ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋งˆ์Šคํ„ฐํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰