Mve: ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„

์— ๋งŒ๋“  2017๋…„ 10์›” 27์ผ  ยท  12์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: simonfuhrmann/mve

์•ˆ๋…•ํ•˜์„ธ์š”
scene2pset์˜ ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ๋ฅผ ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด MVE์—์„œ ๋นŒ๋“œํ•˜๋Š” ์‰ฌ์šด ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?
์ €๋Š” ๊นŠ์ด ๋งต ์žฌ๊ตฌ์„ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ฐœ๋ฐœ ์ค‘์ด๋ฉฐ ์ด ๋งต์„ MVE์— ๊ณต๊ธ‰ํ•˜์—ฌ ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์žฌ๊ตฌ์„ฑ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด dino ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ ๊ดœ์ฐฎ์ง€๋งŒ ์žฅ๋ฉด ์ขŒํ‘œ์— ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. scene2pset๊ณผ ํ•จ๊ป˜ bounding Box arg๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋นˆ ํ”Œ๋ผ์ด ํŒŒ์ผ์„ ์–ป์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋‚ด ํด๋ผ์šฐ๋“œ๊ฐ€ ์žฅ๋ฉด ์ขŒํ‘œ์— ์—†์Œ์„ ์˜๋ฏธํ•˜๋Š” ํฌ์ธํŠธ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ์ˆ˜์ •ํ•ฉ๋‹ˆ๊นŒ?

์ฐธ๊ณ : dmrecon์„ ์‚ฌ์šฉํ•ด๋„ ๊ฐ™์€ ์ผ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”

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

SfM ์žฌ๊ตฌ์„ฑ์€ 7์ฐจ์› ๋ชจํ˜ธ์„ฑ, ์ฆ‰ ์›๋ž˜์˜ ์‹ค์ œ ๊ฐ์ฒด์— ๋Œ€ํ•œ ์œ„์น˜, ๋ฐฉํ–ฅ ๋ฐ ํฌ๊ธฐ๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค. ์ด ๋ชจํ˜ธ์„ฑ์€ ์ฒซ ๋ฒˆ์งธ SfM ๋‹จ๊ณ„์—์„œ ์ž„์˜์˜ ๊ฒฐ์ •์„ ๋‚ด๋ฆผ์œผ๋กœ์จ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์žฌ๊ตฌ์„ฑ์€ "๊ธธ์„ ๋ฒ—์–ด๋‚œ" ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ด ๋ชจํ˜ธ์„ฑ๊ณผ ๊ด€๋ จํ•˜์—ฌ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

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

scene2pset ์•ฑ์€ ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„์˜ ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ๋ฅผ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค. ๋ณ€ํ™˜์ด ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. "Scene Inspect" ํƒญ์—์„œ UMVE์˜ ํฌ์ธํŠธ ํด๋ผ์šฐ๋“œ์™€ ์žฅ๋ฉด์„ ๋กœ๋“œํ•˜์—ฌ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•„๋‹ˆ์š”, ๊ทธ๋ ‡๊ฒŒ ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ UMVE ๋นŒ๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ scene2pset ์ถœ๋ ฅ์ž…๋‹ˆ๋‹ค.
screenshot from 2017-10-27 21 29 44

์ด๊ฒƒ์€ ๋ชจ๋“  ์ ์ด BB์— ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์žฅ๋ฉด ์ขŒํ‘œ์— ์—†์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

๊ฒฝ๊ณ„ ์ƒ์ž ๋˜๋Š” ๊ฒฝ๊ณ„ ์ƒ์ž๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์ž˜๋ชป๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. scene2pset ๋Š” ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„์—์„œ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค. UMVE์—๋Š” ์˜ฌ๋ฐ”๋ฅธ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ฐพ๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๊ฒฝ๊ณ„ ์ƒ์ž ์ƒ์„ฑ๊ธฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฝ๊ณ„ ์ƒ์ž๋Š” ๋‚ด ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์‹ค์ œ๋กœ ๋น„์ „์—์„œ ๋‚˜์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค.Middelburry, ๊ทธ๋ฆฌ๊ณ  ์ œ๊ฐ€ ์ด๊ฒƒ์„ ์–ธ๊ธ‰ํ•˜๋Š” ์ด์œ ๋Š” ์ œ๊ฐ€ ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด ์ œ ๊ฒฐ๊ณผ๋ฅผ Middlebury์— ๋ณด๋ƒˆ๊ณ  ๊ทธ๋“ค์€ ์ œ ํฌ์ธํŠธ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ์ขŒํ‘œ์— ์žˆ์ง€ ์•Š๋‹ค๊ณ  ๋งํ–ˆ๊ณ  ๊ทธ๋“ค์€ ์ œ๊ฒŒ ๊ฒฝ๊ณ„ ์ƒ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ์ „์„ฑ ๊ฒ€์‚ฌ๋ฅผ ์‹คํ–‰ํ•˜๋„๋ก ์š”์ฒญํ–ˆ๊ณ  ์œ„์˜ ์ด๋ฏธ์ง€๊ฐ€ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.
๋˜ํ•œ ๋ฌธ์ œ 358์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ๋‹ต๋ณ€์— ๋”ฐ๋ฅด๋ฉด: " ๋ชจ๋“  ๊ฒฐ๊ณผ๋Š” SfM์—์„œ ์ง€์‹œํ•œ ์ขŒํ‘œ๊ณ„์— ์žˆ์Šต๋‹ˆ๋‹ค. ํŠน์ • ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„๋ฅผ ์›ํ•˜๋ฉด ์ง์ ‘ ๋ณ€ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค." ํฌ์ธํŠธ๊ฐ€ ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„์— ์—†์Šต๋‹ˆ๋‹ค.

Middleburry ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ SfM์„ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๊ฒƒ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Middleburry๊ฐ€ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒƒ๊ณผ ์•„๋ฌด ๊ด€๋ จ์ด ์—†๋Š” ์ž„์˜์˜ ์žฅ๋ฉด ์ขŒํ‘œ๊ณ„๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด ์ž‘์—…์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

1) Middleburry ๋ฐ์ดํ„ฐ ์„ธํŠธ์— ์ง€์ •๋œ ์นด๋ฉ”๋ผ ๋‚ด์žฅ ๋ฐ ์™ธ์žฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ์ด๋ฅผ ๋ทฐ์— ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ meta.ini ํŒŒ์ผ์— ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.
2) ์‹ค์ œ๋กœ SfM์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  SfM ๊ธฐ๋Šฅ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ํ”ผ์ฒ˜๋ฅผ ๊ฐ์ง€, ์ผ์น˜, ์‚ผ๊ฐ ์ธก๋Ÿ‰ํ•œ ๋‹ค์Œ ์นด๋ฉ”๋ผ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ์ตœ์ ํ™”๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ๋ฅผ ์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊นŒ๋‹ค๋กœ์šด ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ์ง€๊ธˆ ๋‹น์žฅ์€ ์ด ์ •ํ™•ํ•œ ์‹œ๋‚˜๋ฆฌ์˜ค์— ๋Œ€ํ•œ ์ฝ”๋“œ๊ฐ€ ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
3) Middleburry corrdinate ์‹œ์Šคํ…œ์— ์žˆ๋Š” ๊ฒฐ๊ณผ ์žฅ๋ฉด์—์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์˜ค ์ข‹์•„, ์ด์ƒํ•˜๊ณ  ์ด XD ๋’ค์— ์žˆ๋Š” ๋…ผ๋ฆฌ๋ฅผ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ง์”€ํ•˜์‹ ๋Œ€๋กœ ํ•ด๋ณผ๊ป˜์š” 2๋‹จ๊ณ„๊ฐ€ ํž˜๋“œ์‹ค๊บผ์—์š” -_-

๋งˆ์ง€๋ง‰ ์งˆ๋ฌธ์ด๊ณ  ์ž ์„ ์ž๋Ÿฌ ๊ฐˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค x') : ์ด 2 arg = true๋กœ sfmrecon ์„ ์‹คํ–‰ํ•˜๋ฉด

  1. args.add_option('0', "๊ณ ์ • ๋‚ด์žฅ ํ•จ์ˆ˜", false, "์นด๋ฉ”๋ผ ๋‚ด์žฅ ํ•จ์ˆ˜ ์ตœ์ ํ™” ์•ˆ ํ•จ");

    1. args.add_option('0', "shared-intrinsics", false, "๋ชจ๋“  ์นด๋ฉ”๋ผ ๊ฐ„์— ๋‚ด์žฅ ๊ณต์œ ");

์ž‘๋™ํ• ๊นŒ์š”?

์•„๋‹ˆ์š”. ์™ธ๋ถ€ ์š”์†Œ๋„ ์ˆ˜์ •ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฆ๋ถ„ SfM ์ ‘๊ทผ ๋ฐฉ์‹์˜ ํŠน์„ฑ์ƒ ์™ธ๋ถ€ ์š”์†Œ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ์€ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด ๋‹จ๊ณ„์—์„œ ์ด์ƒํ•œ ์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? 1๋‹จ๊ณ„๋Š” ์ƒ๋‹นํžˆ ์ž๋ช…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ "์‹ค์ œ" ์นด๋ฉ”๋ผ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ SfM์ด ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋ณด๋‹ค ์šฐ์ˆ˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— Middleburry์—์„œ ์ œ๊ณตํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. MVS ๊ฐ€ ์ž‘๋™ํ•˜๋ ค๋ฉด SfM ํฌ์ธํŠธ๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— 2๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. SfM ํฌ์ธํŠธ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์€ MVS ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ด ๋‹จ๊ณ„๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ท€ํ•˜๊ฐ€ ์ œ๊ณตํ•œ ๋ชจ๋“  ๋‹ต๋ณ€์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ •๋ง ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
์ด์ƒํ•œ ๊ฒƒ์€ ๋‹จ๊ณ„๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ sfm ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์‹ค์ œ์™€ ๋‹ค๋ฅธ ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๋‚ด ์ž‘์—…์€ ํŠน๋ณ„ํžˆ _dmrecon_ ์ž‘์—…์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋‘ ๋ฒˆ์งธ ๋‹จ๊ณ„๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๊นŠ์ด์™€ ๋ฒ•์„ ์„ ์ถ”์ •ํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ๋Šฅ์„ ์‹œ๋“œ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋ž˜์„œ ์ด์Šˆ๊ธ€๋„ ๋งŽ์ด ์˜ฌ๋ฆฌ๊ณ  ์งˆ๋ฌธ๋„ ๋งŽ์ด ํ•˜๋Š”๊ตฐ์š” ^_^

SfM ์žฌ๊ตฌ์„ฑ์€ 7์ฐจ์› ๋ชจํ˜ธ์„ฑ, ์ฆ‰ ์›๋ž˜์˜ ์‹ค์ œ ๊ฐ์ฒด์— ๋Œ€ํ•œ ์œ„์น˜, ๋ฐฉํ–ฅ ๋ฐ ํฌ๊ธฐ๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค. ์ด ๋ชจํ˜ธ์„ฑ์€ ์ฒซ ๋ฒˆ์งธ SfM ๋‹จ๊ณ„์—์„œ ์ž„์˜์˜ ๊ฒฐ์ •์„ ๋‚ด๋ฆผ์œผ๋กœ์จ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์žฌ๊ตฌ์„ฑ์€ "๊ธธ์„ ๋ฒ—์–ด๋‚œ" ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ด ๋ชจํ˜ธ์„ฑ๊ณผ ๊ด€๋ จํ•˜์—ฌ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

์›ํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ๋„๊ตฌ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€๋ฅผ ์ฝ์–ด ์ฃผ์‹ญ์‹œ์˜ค.
https://github.com/simonfuhrmann/mve/wiki/Middlebury-Datasets

์ •๋ง ๊ณ ๋ง™์Šต๋‹ˆ๋‹ค ,

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

๊ด€๋ จ ๋ฌธ์ œ

daleydeng picture daleydeng  ยท  8์ฝ”๋ฉ˜ํŠธ

HelliceSaouli picture HelliceSaouli  ยท  14์ฝ”๋ฉ˜ํŠธ

Jus80687 picture Jus80687  ยท  11์ฝ”๋ฉ˜ํŠธ

MaxDidIt picture MaxDidIt  ยท  30์ฝ”๋ฉ˜ํŠธ

GustavoCamargoRL picture GustavoCamargoRL  ยท  13์ฝ”๋ฉ˜ํŠธ