์ฝ˜ํ…์ธ ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

๋ชจ๋ธ ํ‰๊ฐ€ ๋ฐ ๋ฏธ์„ธ ์กฐ์ •์— ๋Œ€ํ•œ ํ†ต์ฐฐ๋ ฅ

์†Œ๊ฐœ

์ปดํ“จํ„ฐ ๋น„์ „ ๋ชจ๋ธ์„ ํ›ˆ๋ จํ•œ ํ›„์—๋Š” ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ๋ฐœํœ˜ํ•˜๋„๋ก ํ‰๊ฐ€ํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ํ›ˆ๋ จํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋Š” ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด ์ •ํ™•ํ•˜๊ณ  ํšจ์œจ์ ์ธ์ง€, ์ปดํ“จํ„ฐ ๋น„์ „ ํ”„๋กœ์ ํŠธ์˜ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•˜๊ณ  ๋ฏธ์„ธ ์กฐ์ •ํ•จ์œผ๋กœ์จ ์•ฝ์ ์„ ํŒŒ์•…ํ•˜๊ณ  ์ •ํ™•๋„๋ฅผ ๊ฐœ์„ ํ•˜๋ฉฐ ์ „๋ฐ˜์ ์ธ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ฐ€์ด๋“œ์—์„œ๋Š” ์ปดํ“จํ„ฐ ๋น„์ „ ํ”„๋กœ์ ํŠธ์˜ ์ด ๋‹จ๊ณ„์— ๋ณด๋‹ค ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ชจ๋ธ ํ‰๊ฐ€ ๋ฐ ๋ฏธ์„ธ ์กฐ์ •์— ๋Œ€ํ•œ ์ธ์‚ฌ์ดํŠธ๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ํ‰๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์„ ์ดํ•ดํ•˜๊ณ  ๋ฏธ์„ธ ์กฐ์ • ๊ธฐ์ˆ ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•˜์—ฌ ๋ชจ๋ธ์˜ ๊ธฐ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์ง€์‹์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”ํŠธ๋ฆญ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ ์„ฑ๋Šฅ ํ‰๊ฐ€

๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ํ‰๊ฐ€ํ•˜๋ฉด ๋ชจ๋ธ์ด ์–ผ๋งˆ๋‚˜ ํšจ๊ณผ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š”์ง€ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ์ง€ํ‘œ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„ฑ๋Šฅ ์ง€ํ‘œ๋Š” ๋ชจ๋ธ์ด ์˜๋„ํ•œ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ์„  ๋ฐฉํ–ฅ์„ ์ œ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ๋ช…ํ™•ํ•œ ์ˆ˜์น˜ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ์ฃผ์š” ์ง€ํ‘œ๋ฅผ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์‹ ๋ขฐ๋„ ์ ์ˆ˜

์‹ ๋ขฐ๋„ ์ ์ˆ˜๋Š” ๊ฐ์ง€๋œ ๊ฐœ์ฒด๊ฐ€ ํŠน์ • ํด๋ž˜์Šค์— ์†ํ•œ๋‹ค๋Š” ๋ชจ๋ธ์˜ ํ™•์‹ค์„ฑ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๋ฒ”์œ„๋Š” 0์—์„œ 1๊นŒ์ง€์ด๋ฉฐ ์ ์ˆ˜๊ฐ€ ๋†’์„์ˆ˜๋ก ์‹ ๋ขฐ๋„๊ฐ€ ๋†’๋‹ค๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์‹ ๋ขฐ๋„ ์ ์ˆ˜๋Š” ์˜ˆ์ธก์„ ํ•„ํ„ฐ๋งํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์‹ ๋ขฐ๋„ ์ ์ˆ˜๊ฐ€ ์ง€์ •๋œ ์ž„๊ณ„๊ฐ’์„ ์ดˆ๊ณผํ•˜๋Š” ๊ฒ€์ƒ‰๋งŒ ์œ ํšจํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.

๋น ๋ฅธ ํŒ: ์ถ”๋ก ์„ ์‹คํ–‰ํ•  ๋•Œ ์˜ˆ์ธก์ด ํ‘œ์‹œ๋˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ๋ชจ๋“  ํ•ญ๋ชฉ์„ ํ™•์ธํ–ˆ๋‹ค๋ฉด ์‹ ๋ขฐ๋„ ์ ์ˆ˜๋ฅผ ๋‚ฎ์ถฐ ๋ณด์„ธ์š”. ์ž„๊ณ„๊ฐ’์ด ๋„ˆ๋ฌด ๋†’์•„์„œ ๋ชจ๋ธ์ด ์œ ํšจํ•œ ์˜ˆ์ธก์„ ๋ฌด์‹œํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ ์ˆ˜๋ฅผ ๋‚ฎ์ถ”๋ฉด ๋ชจ๋ธ์ด ๋” ๋งŽ์€ ๊ฐ€๋Šฅ์„ฑ์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ ๋ชฉํ‘œ์— ๋ถ€ํ•ฉํ•˜์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ํ™•์ธํ•˜๊ณ  ๋ฏธ์„ธ ์กฐ์ • ๋ฐฉ๋ฒ•์„ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

์œ ๋‹ˆ์˜จ ์œ„์˜ ๊ต์ฐจ๋กœ

Intersection over Union(IoU)์€ ์˜ˆ์ธก๋œ ๊ฒฝ๊ณ„ ์ƒ์ž๊ฐ€ ์‹ค์ธก ๊ฒฝ๊ณ„ ์ƒ์ž์™€ ์–ผ๋งˆ๋‚˜ ์ž˜ ๊ฒน์น˜๋Š”์ง€๋ฅผ ์ธก์ •ํ•˜๋Š” ๊ฐ์ฒด ๊ฐ์ง€์˜ ๋ฉ”ํŠธ๋ฆญ์ž…๋‹ˆ๋‹ค. IoU ๊ฐ’์˜ ๋ฒ”์œ„๋Š” 0์—์„œ 1 ์‚ฌ์ด์ด๋ฉฐ, ์—ฌ๊ธฐ์„œ 1์€ ์™„๋ฒฝํ•œ ์ผ์น˜๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. IoU๋Š” ์˜ˆ์ธก๋œ ๊ฒฝ๊ณ„๊ฐ€ ์‹ค์ œ ๊ฐœ์ฒด ๊ฒฝ๊ณ„์™€ ์–ผ๋งˆ๋‚˜ ์ผ์น˜ํ•˜๋Š”์ง€๋ฅผ ์ธก์ •ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

์œ ๋‹ˆ์˜จ ๊ฐœ์š”๋ฅผ ํ†ตํ•œ ๊ต์ฐจ์ 

ํ‰๊ท  ํ‰๊ท  ์ •๋ฐ€๋„

ํ‰๊ท  ํ‰๊ท  ์ •๋ฐ€๋„(mAP)๋Š” ๋ฌผ์ฒด ๊ฐ์ง€ ๋ชจ๋ธ์ด ์–ผ๋งˆ๋‚˜ ์ž˜ ์ˆ˜ํ–‰๋˜๋Š”์ง€ ์ธก์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ฐ ๊ฐœ์ฒด ํด๋ž˜์Šค ๊ฐ์ง€์˜ ์ •๋ฐ€๋„๋ฅผ ์‚ดํŽด๋ณด๊ณ , ์ด๋Ÿฌํ•œ ์ ์ˆ˜์˜ ํ‰๊ท ์„ ๊ตฌํ•˜๊ณ , ๋ชจ๋ธ์ด ๊ฐœ์ฒด๋ฅผ ์–ผ๋งˆ๋‚˜ ์ •ํ™•ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๊ณ  ๋ถ„๋ฅ˜ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ณด์—ฌ์ฃผ๋Š” ์ „์ฒด ์ˆซ์ž๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋‘ ๊ฐ€์ง€ ํŠน์ • mAP ๋ฉ”ํŠธ๋ฆญ์— ์ง‘์ค‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

  • mAP@.5: 0.5์˜ ๋‹จ์ผ IoU(Intersection over Union) ์ž„๊ณ„๊ฐ’์—์„œ ํ‰๊ท  ์ •๋ฐ€๋„๋ฅผ ์ธก์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฉ”ํŠธ๋ฆญ์€ ๋ชจ๋ธ์ด ์ •ํ™•๋„ ์š”๊ตฌ ์‚ฌํ•ญ์ด ๋Š์Šจํ•œ ๊ฐ์ฒด๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์™„๋ฒฝํ•œ ๋ฐฐ์น˜๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š๊ณ  ๋ฌผ์ฒด๊ฐ€ ๋Œ€๋žต ์˜ฌ๋ฐ”๋ฅธ ์œ„์น˜์— ์žˆ๋Š”์ง€ ์—ฌ๋ถ€์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฌผ์ฒด๋ฅผ ์ž˜ ์ฐพ์•„๋‚ด๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
  • mAP@.5:.95: 0.5์—์„œ 0.95๊นŒ์ง€ 0.05 ๋‹จ์œ„๋กœ ์—ฌ๋Ÿฌ IoU ์ž„๊ณ„๊ฐ’์—์„œ ๊ณ„์‚ฐ๋œ mAP ๊ฐ’์˜ ํ‰๊ท ์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฉ”ํŠธ๋ฆญ์€ ๋” ์ƒ์„ธํ•˜๊ณ  ์—„๊ฒฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด ๋‹ค์–‘ํ•œ ์ˆ˜์ค€์˜ ์—„๊ฒฉํ•จ์—์„œ ์–ผ๋งˆ๋‚˜ ์ •ํ™•ํ•˜๊ฒŒ ๋ฌผ์ฒด๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ๋” ์ž์„ธํžˆ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํŠนํžˆ ์ •๋ฐ€ํ•œ ๋ฌผ์ฒด ๊ฐ์ง€๊ฐ€ ํ•„์š”ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ mAP ์ง€ํ‘œ๋กœ๋Š” 0.75์˜ ๋” ์—„๊ฒฉํ•œ IoU ์ž„๊ณ„๊ฐ’์„ ์‚ฌ์šฉํ•˜๋Š” mAP@0.75, ๋‹ค์–‘ํ•œ ํฌ๊ธฐ์˜ ์˜ค๋ธŒ์ ํŠธ์—์„œ ์ •๋ฐ€๋„๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” mAP@small, medium, large๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ‰๊ท  ์ •๋ฐ€๋„ ๊ฐœ์š”

ํ‰๊ฐ€ YOLOv8 ๋ชจ๋ธ ์„ฑ๋Šฅ

YOLOv8 ์—์„œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ YOLOv8 ์„ฑ๋Šฅ ์ง€ํ‘œ์™€ ์ด๋ฅผ ํ•ด์„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๋Š” ๊ฐ€์ด๋“œ๋„ ๊ผญ ์‚ดํŽด๋ณด์„ธ์š”.

์ผ๋ฐ˜์ ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ์งˆ๋ฌธ

๋‹น์‹ ์„ ํ‰๊ฐ€ํ•  ๋•Œ YOLOv8 ๋ชจ๋ธ, ๋ช‡ ๊ฐ€์ง€ ๋”ธ๊พน์งˆ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์ผ๋ฐ˜์ ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ์งˆ๋ฌธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์Œ์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ช‡ ๊ฐ€์ง€ ํŒ์ž…๋‹ˆ๋‹ค. YOLOv8 ๋ชจ๋ธ:

๊ฐ€๋ณ€ ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์ฒ˜๋ฆฌ

ํ‰๊ฐ€ YOLOv8 ๋‹ค์–‘ํ•œ ํฌ๊ธฐ์˜ ์ด๋ฏธ์ง€๊ฐ€ ์žˆ๋Š” ๋ชจ๋ธ์€ ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ์„ฑ๋Šฅ์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ rect=true validation ๋งค๊ฐœ ๋ณ€์ˆ˜, YOLOv8 ์˜์ƒ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๊ฐ ๋ฐฐ์น˜์— ๋Œ€ํ•œ ์‹ ๊ฒฝ๋ง์˜ ๋ณดํญ์„ ์กฐ์ •ํ•˜์—ฌ, ๋ชจ๋ธ์ด ๋‹จ์ผ ํฌ๊ธฐ๋กœ ๊ฐ•์ œํ•˜์ง€ ์•Š๊ณ  ์‚ฌ๊ฐํ˜• ์˜์ƒ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  imgsz ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์กฐ์ •์˜ ์ตœ๋Œ€ ์น˜์ˆ˜๋ฅผ ์„ค์ •ํ•˜๋ฉฐ, ๊ธฐ๋ณธ๊ฐ’์€ 640์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ์ตœ๋Œ€ ํฌ๊ธฐ์™€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ GPU ๋ฉ”๋ชจ๋ฆฌ์— ๋”ฐ๋ผ ์ด๋ฅผ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ฌ์ง€์–ด imgsz ์ง‘ํ•ฉ rect=true ๋ชจ๋ธ์ด ๋ณดํญ์„ ๋™์ ์œผ๋กœ ์กฐ์ •ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•ก์„ธ์Šค YOLOv8 ์šด์œจํ•™

๋‹น์‹ ์— ๋Œ€ํ•ด ๋” ๊นŠ์ด ์ดํ•ดํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด YOLOv8 ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ช‡ ์ค„์˜ ํŠน์ • ํ‰๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์— ์‰ฝ๊ฒŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Python ์ฝ”๋“œ. ์•„๋ž˜ ์ฝ”๋“œ ์Šค๋‹ˆํŽซ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋ธ์„ ๋กœ๋“œํ•˜๊ณ , ํ‰๊ฐ€๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ๋ชจ๋ธ์ด ์–ผ๋งˆ๋‚˜ ์ž˜ ์ˆ˜ํ–‰๋˜๊ณ  ์žˆ๋Š”์ง€ ๋ณด์—ฌ์ฃผ๋Š” ๋‹ค์–‘ํ•œ ๋ฉ”ํŠธ๋ฆญ์„ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฒ•

from ultralytics import YOLO

# Load the model
model = YOLO("yolov8n.pt")

# Run the evaluation
results = model.val(data="coco8.yaml")

# Print specific metrics
print("Class indices with average precision:", results.ap_class_index)
print("Average precision for all classes:", results.box.all_ap)
print("Average precision:", results.box.ap)
print("Average precision at IoU=0.50:", results.box.ap50)
print("Class indices for average precision:", results.box.ap_class_index)
print("Class-specific results:", results.box.class_result)
print("F1 score:", results.box.f1)
print("F1 score curve:", results.box.f1_curve)
print("Overall fitness score:", results.box.fitness)
print("Mean average precision:", results.box.map)
print("Mean average precision at IoU=0.50:", results.box.map50)
print("Mean average precision at IoU=0.75:", results.box.map75)
print("Mean average precision for different IoU thresholds:", results.box.maps)
print("Mean results for different metrics:", results.box.mean_results)
print("Mean precision:", results.box.mp)
print("Mean recall:", results.box.mr)
print("Precision:", results.box.p)
print("Precision curve:", results.box.p_curve)
print("Precision values:", results.box.prec_values)
print("Specific precision metrics:", results.box.px)
print("Recall:", results.box.r)
print("Recall curve:", results.box.r_curve)

results ๊ฐ์ฒด์—๋Š” ์ „์ฒ˜๋ฆฌ ์‹œ๊ฐ„, ์ถ”๋ก  ์‹œ๊ฐ„, ์†์‹ค ๋ฐ ์‚ฌํ›„ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„๊ณผ ๊ฐ™์€ ์†๋„ ์ง€ํ‘œ๋„ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฉ”ํŠธ๋ฆญ์„ ๋ถ„์„ํ•˜์—ฌ ๋‹ค์Œ์„ ๋ฏธ์„ธ ์กฐ์ •ํ•˜๊ณ  ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. YOLOv8 ๋” ๋‚˜์€ ์„ฑ๋Šฅ์„ ์œ„ํ•ด ๋ชจ๋ธ๋งํ•˜์—ฌ ํŠน์ • ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋” ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค.

๋ฏธ์„ธ ์กฐ์ •์€ ์–ด๋–ป๊ฒŒ ์ด๋ฃจ์–ด์ง€๋‚˜์š”?

๋ฏธ์„ธ ์กฐ์ •์—๋Š” ๋ฏธ๋ฆฌ ํ•™์Šต๋œ ๋ชจ๋ธ์„ ๊ฐ€์ ธ์™€์„œ ํŠน์ • ์ž‘์—… ๋˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์กฐ์ •ํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ ์žฌํ•™์Šต์ด๋ผ๊ณ ๋„ ํ•˜๋Š” ์ด ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ์€ ์‹ค์ œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์ ‘ํ•˜๊ฒŒ ๋  ํŠน์ • ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋” ์ž˜ ์ดํ•ดํ•˜๊ณ  ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ ์˜ ๊ฒฐ๊ณผ๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด ๋ชจ๋ธ ํ‰๊ฐ€์— ๋”ฐ๋ผ ๋ชจ๋ธ์„ ๋‹ค์‹œ ํ•™์Šต์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋ธ ๋ฏธ์„ธ ์กฐ์ •์„ ์œ„ํ•œ ํŒ

๋ชจ๋ธ์„ ๋ฏธ์„ธ ์กฐ์ •ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ๊ธฐ์ˆ ์— ์„ธ์‹ฌํ•œ ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ด๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ํ”„๋กœ์„ธ์Šค๋ฅผ ์•ˆ๋‚ดํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ํ•„์ˆ˜ ํŒ์ž…๋‹ˆ๋‹ค.

๋” ๋†’์€ ํ•™์Šต๋ฅ ๋กœ ์‹œ์ž‘

์ผ๋ฐ˜์ ์œผ๋กœ ์ดˆ๊ธฐ ํ›ˆ๋ จ Epoch ๋™์•ˆ ํ•™์Šต๋ฅ ์€ ๋‚ฎ๊ฒŒ ์‹œ์ž‘ํ•˜์—ฌ ํ›ˆ๋ จ ๊ณผ์ •์„ ์•ˆ์ •ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์ ์ง„์ ์œผ๋กœ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ชจ๋ธ์€ ์ด๋ฏธ ์ด์ „ ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ์ผ๋ถ€ ๊ธฐ๋Šฅ์„ ํ•™์Šตํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฆ‰์‹œ ๋” ๋†’์€ ํ•™์Šต๋ฅ ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ๋” ์œ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹น์‹ ์„ ํ‰๊ฐ€ํ•  ๋•Œ YOLOv8 ๋ชจ๋ธ, ๋‹น์‹ ์€ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค warmup_epochs validation ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ warmup_epochs=0 ํ•™์Šต๋ฅ ์ด ๋„ˆ๋ฌด ๋†’๊ฒŒ ์‹œ์ž‘๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋ฅผ ๋”ฐ๋ฅด๋ฉด ์ œ๊ณต๋œ ๊ฐ€์ค‘์น˜์—์„œ ํ•™์Šต์ด ๊ณ„์†๋˜์–ด ์ƒˆ ๋ฐ์ดํ„ฐ์˜ ๋‰˜์•™์Šค์— ๋งž๊ฒŒ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค.

์ž‘์€ ๋ฌผ์ฒด๋ฅผ ์œ„ํ•œ ์ด๋ฏธ์ง€ ํƒ€์ผ๋ง

์ด๋ฏธ์ง€ ๋ฐ”๋‘‘ํŒ์‹ ๋ฐฐ์—ด์€ ์ž‘์€ ๋ฌผ์ฒด์— ๋Œ€ํ•œ ๊ฐ์ง€ ์ •ํ™•๋„๋ฅผ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 1280x1280 ์ด๋ฏธ์ง€๋ฅผ ์—ฌ๋Ÿฌ 640x640 ์„ธ๊ทธ๋จผํŠธ๋กœ ๋ถ„ํ• ํ•˜๋Š” ๋“ฑ ๋” ํฐ ์ด๋ฏธ์ง€๋ฅผ ๋” ์ž‘์€ ์„ธ๊ทธ๋จผํŠธ๋กœ ๋‚˜๋ˆ„๋ฉด ์›๋ž˜ ํ•ด์ƒ๋„๋ฅผ ์œ ์ง€ํ•˜๊ณ  ๋ชจ๋ธ์ด ๊ณ ํ•ด์ƒ๋„ ์กฐ๊ฐ์—์„œ ํ•™์Šตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์‹œ YOLOv8๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋Ÿฌํ•œ ์ƒˆ ์„ธ๊ทธ๋จผํŠธ์— ๋Œ€ํ•œ ๋ผ๋ฒจ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ปค๋ฎค๋‹ˆํ‹ฐ์™€ ์†Œํ†ตํ•˜๊ธฐ

๋‹ค๋ฅธ ์ปดํ“จํ„ฐ ๋น„์ „ ์• ํ˜ธ๊ฐ€์™€ ์•„์ด๋””์–ด ๋ฐ ์งˆ๋ฌธ์„ ๊ณต์œ ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ์˜ ์žฅ์• ๋ฌผ์— ๋Œ€ํ•œ ์ฐฝ์˜์ ์ธ ์†”๋ฃจ์…˜์— ์˜๊ฐ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ํ•™์Šตํ•˜๊ณ , ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ , ์—ฐ๊ฒฐํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ํ›Œ๋ฅญํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

๋„์›€ ๋ฐ ์ง€์› ์ฐพ๊ธฐ

  • GitHub ์ด์Šˆ: YOLOv8 GitHub ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์‚ดํŽด๋ณด๊ณ  ์ด์Šˆ ํƒญ์„ ์‚ฌ์šฉํ•˜์—ฌ ์งˆ๋ฌธํ•˜๊ณ , ๋ฒ„๊ทธ๋ฅผ ์‹ ๊ณ ํ•˜๊ณ , ๊ธฐ๋Šฅ์„ ์ œ์•ˆํ•˜์„ธ์š”. ์ปค๋ฎค๋‹ˆํ‹ฐ์™€ ๊ด€๋ฆฌ์ž๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๋ชจ๋“  ๋ฌธ์ œ์— ๋Œ€ํ•ด ๋„์›€์„ ๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Ultralytics ๋””์Šค์ฝ”๋“œ ์„œ๋ฒ„: Ultralytics Discord ์„œ๋ฒ„์— ๊ฐ€์ž…ํ•˜์—ฌ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ๋ฐ ๊ฐœ๋ฐœ์ž์™€ ์†Œํ†ตํ•˜๊ณ , ์ง€์›์„ ๋ฐ›๊ณ , ์ง€์‹์„ ๊ณต์œ ํ•˜๊ณ , ์•„์ด๋””์–ด๋ฅผ ๋ธŒ๋ ˆ์ธ์Šคํ† ๋ฐํ•˜์„ธ์š”.

๊ณต์‹ ๋ฌธ์„œ

  • Ultralytics YOLOv8 ๋ฌธ์„œ: ๊ณต์‹ ๋ฌธ์„œ( YOLOv8 )์—์„œ ๋‹ค์–‘ํ•œ ์ปดํ“จํ„ฐ ๋น„์ „ ์ž‘์—…๊ณผ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์ข…ํ•ฉ์ ์ธ ๊ฐ€์ด๋“œ์™€ ์œ ์šฉํ•œ ์ธ์‚ฌ์ดํŠธ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.

์ตœ์ข… ์ƒ๊ฐ

์ปดํ“จํ„ฐ ๋น„์ „ ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•˜๊ณ  ๋ฏธ์„ธ ์กฐ์ •ํ•˜๋Š” ๊ฒƒ์€ ์„ฑ๊ณต์ ์ธ ๋ชจ๋ธ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ์ค‘์š”ํ•œ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋‹จ๊ณ„๋Š” ๋ชจ๋ธ์ด ์ •ํ™•ํ•˜๊ณ  ํšจ์œจ์ ์ด๋ฉฐ ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉํ•œ์ง€ ํ™•์ธํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ ์ตœ์ƒ์˜ ๋ชจ๋ธ์„ ํ•™์Šตํ•˜๊ธฐ ์œ„ํ•œ ํ•ต์‹ฌ์€ ์ง€์†์ ์ธ ์‹คํ—˜๊ณผ ํ•™์Šต์ž…๋‹ˆ๋‹ค. ์ฃผ์ €ํ•˜์ง€ ๋ง๊ณ  ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์กฐ์ •ํ•˜๊ณ , ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ์„ ์‹œ๋„ํ•˜๊ณ , ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ํƒ์ƒ‰ํ•˜์‹ญ์‹œ์˜ค. ๊ณ„์†ํ•ด์„œ ์‹คํ—˜ํ•˜๊ณ  ๊ฐ€๋Šฅ์„ฑ์˜ ๊ฒฝ๊ณ„๋ฅผ ๋„“ํžˆ์„ธ์š”!

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

YOLOv8 ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ํ‰๊ฐ€ํ•˜๊ธฐ ์œ„ํ•œ ์ฃผ์š” ์ง€ํ‘œ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

YOLOv8 ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ํ‰๊ฐ€ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์ง€ํ‘œ๋กœ๋Š” ์‹ ๋ขฐ๋„ ์ ์ˆ˜, IoU(Intersection over Union), ํ‰๊ท  ํ‰๊ท  ์ •๋ฐ€๋„(mAP)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ ๋ขฐ ์ ์ˆ˜๋Š” ๊ฐ์ง€๋œ ๊ฐ ๊ฐœ์ฒด ํด๋ž˜์Šค์— ๋Œ€ํ•œ ๋ชจ๋ธ์˜ ํ™•์‹ค์„ฑ์„ ์ธก์ •ํ•ฉ๋‹ˆ๋‹ค. IoU๋Š” ์˜ˆ์ธก๋œ ๋ฐ”์šด๋”ฉ ๋ฐ•์Šค๊ฐ€ ์‹ค์ธก ์ž๋ฃŒ์™€ ์–ผ๋งˆ๋‚˜ ์ž˜ ๊ฒน์น˜๋Š”์ง€๋ฅผ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ํ‰๊ท  ํ‰๊ท  ์ •๋ฐ€๋„(mAP)๋Š” ์—ฌ๋Ÿฌ ํด๋ž˜์Šค์— ๊ฑธ์ณ ์ •๋ฐ€๋„ ์ ์ˆ˜๋ฅผ ์ง‘๊ณ„ํ•˜๋ฉฐ, mAP@.5์™€ mAP@.5:.95 ๋Š” ๋‹ค์–‘ํ•œ IoU ์ž„๊ณ„๊ฐ’์— ๋Œ€ํ•œ ๋‘ ๊ฐ€์ง€ ์ผ๋ฐ˜์ ์ธ ์œ ํ˜•์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฉ”ํŠธ๋ฆญ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ YOLOv8 ์„ฑ๋Šฅ ๋ฉ”ํŠธ๋ฆญ ๊ฐ€์ด๋“œ์—์„œ ํ™•์ธํ•˜์„ธ์š”.

ํŠน์ • ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์— ๋งž๊ฒŒ ์‚ฌ์ „ ํ•™์Šต๋œ YOLOv8 ๋ชจ๋ธ์„ ๋ฏธ์„ธ ์กฐ์ •ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?

์‚ฌ์ „ ํ•™์Šต๋œ YOLOv8 ๋ชจ๋ธ์„ ๋ฏธ์„ธ ์กฐ์ •ํ•˜๋ ค๋ฉด ํŠน์ • ์ž‘์—… ๋˜๋Š” ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”ํŠธ๋ฆญ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์‹œ์ž‘ํ•œ ๋‹ค์Œ, ์ดˆ๊ธฐ ํ•™์Šต๋ฅ ์„ ๋” ๋†’๊ฒŒ ์„ค์ •ํ•˜์—ฌ warmup_epochs ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ 0์œผ๋กœ ์„ค์ •ํ•˜์—ฌ ์ฆ‰๊ฐ์ ์ธ ์•ˆ์ •์„ฑ์„ ํ™•๋ณดํ•˜์„ธ์š”. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. rect=true ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์ง€์นจ์€ ๋‹ค์Œ ์„น์…˜์„ ์ฐธ์กฐํ•˜์„ธ์š”. YOLOv8 ๋ชจ๋ธ ๋ฏธ์„ธ ์กฐ์ •.

YOLOv8 ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•  ๋•Œ ๊ฐ€๋ณ€ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?

ํ‰๊ฐ€ ์ค‘์— ๊ฐ€๋ณ€ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ ค๋ฉด rect=true ๋งค๊ฐœ๋ณ€์ˆ˜( YOLOv8)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๊ฐ ๋ฐฐ์น˜์— ๋Œ€ํ•œ ๋„คํŠธ์›Œํฌ์˜ ๋ณดํญ์„ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  imgsz ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์กฐ์ •์˜ ์ตœ๋Œ€ ์น˜์ˆ˜๋ฅผ ์„ค์ •ํ•˜๋ฉฐ ๊ธฐ๋ณธ๊ฐ’์€ 640์ž…๋‹ˆ๋‹ค. ์กฐ์ • imgsz ๋ฅผ ๋ฐ์ดํ„ฐ ์„ธํŠธ์™€ GPU ๋ฉ”๋ชจ๋ฆฌ์— ๋งž๊ฒŒ ์กฐ์ •ํ•˜์„ธ์š”. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ฐ€๋ณ€ ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์ฒ˜๋ฆฌ์— ๋Œ€ํ•œ ์„น์…˜.

YOLOv8 ๋ชจ๋ธ์˜ ํ‰๊ท  ์ •๋ฐ€๋„๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์–ด๋–ค ์‹ค์งˆ์ ์ธ ์กฐ์น˜๋ฅผ ์ทจํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

YOLOv8 ๋ชจ๋ธ์˜ ํ‰๊ท  ํ‰๊ท  ์ •๋ฐ€๋„(mAP)๋ฅผ ๊ฐœ์„ ํ•˜๋ ค๋ฉด ๋ช‡ ๊ฐ€์ง€ ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์ณ์•ผ ํ•ฉ๋‹ˆ๋‹ค:

  1. ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ์กฐ์ •ํ•˜๊ธฐ: ๋‹ค์–‘ํ•œ ํ•™์Šต ์†๋„, ๋ฐฐ์น˜ ํฌ๊ธฐ, ์ด๋ฏธ์ง€ ์ฆ๊ฐ•์„ ์‹คํ—˜ํ•ด ๋ณด์„ธ์š”.
  2. ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•: ๋ชจ์ž์ดํฌ ๋ฐ ๋ฏน์Šค์—…๊ณผ ๊ฐ™์€ ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ํ›ˆ๋ จ ์ƒ˜ํ”Œ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  3. ์ด๋ฏธ์ง€ ํƒ€์ผ๋ง: ํฐ ์ด๋ฏธ์ง€๋ฅผ ์ž‘์€ ํƒ€์ผ๋กœ ๋ถ„ํ• ํ•˜์—ฌ ์ž‘์€ ๋ฌผ์ฒด์— ๋Œ€ํ•œ ๊ฐ์ง€ ์ •ํ™•๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค. ๊ตฌ์ฒด์ ์ธ ์ „๋žต์€ ๋ชจ๋ธ ๋ฏธ์„ธ ์กฐ์ •์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๊ฐ€์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Python ์—์„œ YOLOv8 ๋ชจ๋ธ ํ‰๊ฐ€ ๋ฉ”ํŠธ๋ฆญ์— ์•ก์„ธ์Šคํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”?

๋‹ค์Œ ๋‹จ๊ณ„์— ๋”ฐ๋ผ Python ์„ ์‚ฌ์šฉํ•˜์—ฌ YOLOv8 ๋ชจ๋ธ ํ‰๊ฐ€ ์ง€ํ‘œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

์‚ฌ์šฉ๋ฒ•

from ultralytics import YOLO

# Load the model
model = YOLO("yolov8n.pt")

# Run the evaluation
results = model.val(data="coco8.yaml")

# Print specific metrics
print("Class indices with average precision:", results.ap_class_index)
print("Average precision for all classes:", results.box.all_ap)
print("Mean average precision at IoU=0.50:", results.box.map50)
print("Mean recall:", results.box.mr)

์ด๋Ÿฌํ•œ ๋ฉ”ํŠธ๋ฆญ์„ ๋ถ„์„ํ•˜๋ฉด YOLOv8 ๋ชจ๋ธ์„ ๋ฏธ์„ธ ์กฐ์ •ํ•˜๊ณ  ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๋” ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด YOLOv8 ๋ฉ”ํŠธ๋ฆญ์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.



์ƒ์„ฑ 2024-06-29, ์—…๋ฐ์ดํŠธ 2024-07-05
์ž‘์„ฑ์ž: glenn-jocher (1), Laughing-q (1), abirami-vina (1)

๋Œ“๊ธ€