Darkflow: ์ž์ฒด ๋ฐ์ดํ„ฐ์…‹์˜ ๊ตฌ์กฐ๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•

์— ๋งŒ๋“  2017๋…„ 07์›” 18์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: thtrieu/darkflow

์šฐ์„  ํ›Œ๋ฅญํ•œ ์ž‘ํ’ˆ! ํ•ด๋‹น ์œ ํ˜•์˜ ํด๋”์— ๋ถ„๋ฅ˜๋œ ๋งŽ์€ ๊ตํ†ต ํ‘œ์ง€ ์ด๋ฏธ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ต์œก ์ˆ˜๋‹จ์„ ์œ„ํ•ด ์ด๋ฏธ์ง€๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  1. ์–ด๋–ป๊ฒŒ ์ฃผ์„์„ ๋‹ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ๋„๊ตฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๋ฏธ์ง€์™€ ์ฃผ์„์„ ์–ด๋””์— ๋ฐฐ์น˜ํ•ด์•ผํ•ฉ๋‹ˆ๊นŒ?
  2. ์ž์‹ ์˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ์— ๋Œ€ํ•œ ๊ต์œก ์„น์…˜์˜ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ž์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ธฐํ˜ธ์˜ ํด๋”๊ฐ€ ์•ฝ 105๊ฐœ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ํด๋ž˜์Šค๊ฐ€ 105์ด๊ณ  label.txt๋ฅผ 105๊ฐœ์˜ ์ด๋ฆ„์œผ๋กœ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์–ด๋””์—์„œ ์ƒˆ cfg ํŒŒ์ผ์„ ๋งŒ๋“ค ๋•Œ ๊ทธ๊ฒƒ์— ๋Œ€ํ•œ ๋ฌด๊ฒŒ๋ฅผ ์–ป์„ ๊ฒƒ์ธ๊ฐ€?

ํ๋ฆ„ --model cfg/tiny-yolo-voc-3c.cfg --load bin/tiny-yolo-voc.weights --train --์ฃผ์„ ๊ธฐ์ฐจ/์ฃผ์„ --๋ฐ์ดํ„ฐ ์„ธํŠธ ๊ธฐ์ฐจ/์ด๋ฏธ์ง€

์•„๋‹ˆ๋ฉด tiny-yolo-voc.weights๋ฅผ ํ†ตํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๊นŒ?

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

์•ˆ๋…•ํ•˜์„ธ์š” @merryHunter
์ด๋ฏธ์ง€ ํฌ๊ธฐ๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?
์ด๋ฏธ์ง€ ํฌ๊ธฐ ์ œํ•œ์ด ์žˆ๋‚˜์š”?

์‹ค์ œ๋กœ ์ƒ‰์ƒ์ด ์•ฝ๊ฐ„ ๋‹ค๋ฅธ ๊ฒƒ์„ ๊ฐ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ์ง€ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค(ํฌ๊ธฐ๊ฐ€ ๊ฝค ํฌ๊ณ  ์ƒ‰์ƒ์ด ๋งค์šฐ ์œ ์‚ฌํ•จ).
์—ฌ์ „ํžˆ YOLO๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์ƒ‰์ƒ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ์ด๋ฏธ์ง€๊ฐ€ ํ•„์š”ํ•˜๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๊นŒ?
์กฐ์–ธ์ด ํ•„์š”ํ•˜๋‹ค

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

์•ˆ๋…•ํ•˜์„ธ์š” @ManojPabani

  1. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ์„ ์‚ฌ์šฉํ•ด ๋ณด์‹ญ์‹œ์˜ค: https://github.com/tzutalin/labelImg
  2. ํŠœํ† ๋ฆฌ์–ผ์„ ๋”ฐ๋ผํ–ˆ๋‹ค๋ฉด ๋ชจ๋“  ์ด๋ฏธ์ง€์™€ ์ฃผ์„์ด ํ•˜๋‚˜์˜ ํด๋”์— ์ €์žฅ๋˜์–ด ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ๊ฐ€์ค‘์น˜๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด yolo ์›น์‚ฌ์ดํŠธ์—์„œ ๋‹ค์šด๋กœ๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋‹ค๋ฅธ ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฒ˜์Œ๋ถ€ํ„ฐ ํ›ˆ๋ จ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    # Completely initialize yolo-new and train it with ADAM optimizer
    flow --model cfg/yolo-new.cfg --train --trainer adam --annotation train/Annotations --dataset train/Images

์•ˆ๋…•ํ•˜์„ธ์š” @merryHunter
๋ช…๋ น์— ์—ฌ์ „ํžˆ ๋ ˆ์ด๋ธ” ๋งค๊ฐœ๋ณ€์ˆ˜(--label)๋ฅผ ๋„ฃ์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?
๊ทธ๋ฆฌ๊ณ 
ํ•œ ํ•™๊ธ‰์„ ๋Œ€ํ‘œํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•œ ๊ทธ๋ฆผ์˜ ์ˆ˜์— ๋Œ€ํ•œ ๊ณ ๋ ค๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š” @normansiboro
--label param์€ ๋‹น์‹ ์˜ ์‚ถ์„ ๋” ์‰ฝ๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ํ˜ผ๋™ํ•˜์ง€ ์•Š๋„๋ก ํ•ญ์ƒ ๋ ˆ์ด๋ธ” ๊ฒฝ๋กœ ํŒŒ์ผ์„ ๋ช…์‹œ์ ์œผ๋กœ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์ž์‹ ์˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ์— ๋Œ€ํ•ด ๊ธฐ๋ณธ labels.txt ๋˜๋Š” ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•˜๋Š” ํด๋ž˜์Šค๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์‚ฌ์ง„์˜ ๊ฒฝ์šฐ ๋„คํŠธ์›Œํฌ ๋ฐ ์ž…๋ ฅ ํฌ๊ธฐ, ์ด๋ฏธ์ง€ ํ’ˆ์งˆ์— ๋”ฐ๋ผ ๋งŽ์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ Pascal VOC๊ฐ€ ํด๋ž˜์Šค๋‹น ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์ƒ˜ํ”Œ์„ ํฌํ•จํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ฐฐ์šฐ๋ ค๋ฉด ๋ ˆ์ด๋ธ”์ด ์ง€์ •๋œ ์ตœ์†Œ 500๊ฐœ์˜ ์ƒ˜ํ”Œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” @merryHunter
์ด๋ฏธ์ง€ ํฌ๊ธฐ๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ?
์ด๋ฏธ์ง€ ํฌ๊ธฐ ์ œํ•œ์ด ์žˆ๋‚˜์š”?

์‹ค์ œ๋กœ ์ƒ‰์ƒ์ด ์•ฝ๊ฐ„ ๋‹ค๋ฅธ ๊ฒƒ์„ ๊ฐ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ์ง€ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค(ํฌ๊ธฐ๊ฐ€ ๊ฝค ํฌ๊ณ  ์ƒ‰์ƒ์ด ๋งค์šฐ ์œ ์‚ฌํ•จ).
์—ฌ์ „ํžˆ YOLO๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด ์ƒ‰์ƒ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ์ด๋ฏธ์ง€๊ฐ€ ํ•„์š”ํ•˜๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๊นŒ?
์กฐ์–ธ์ด ํ•„์š”ํ•˜๋‹ค

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