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

๊ตฌ์„ฑ

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

์‹œ์ฒญํ•˜๊ธฐ: Ultralytics YOLO ๋งˆ์Šคํ„ฐํ•˜๊ธฐ: ๊ตฌ์„ฑ



Watch: ๋งˆ์Šคํ„ฐ๋ง Ultralytics YOLO : ๊ตฌ์„ฑ

Ultralytics ๋ช…๋ น์€ ๋‹ค์Œ ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:

์˜ˆ

yolo TASK MODE ARGS
from ultralytics import YOLO

# Load a YOLO model from a pre-trained weights file
model = YOLO("yolo11n.pt")

# Run MODE mode using the custom arguments ARGS (guess TASK)
model.MODE(ARGS)

Where:

๊ธฐ๋ณธ๊ฐ’ ARG ๊ฐ’์€ ์ด ํŽ˜์ด์ง€์— ์ •์˜๋˜์–ด ์žˆ์œผ๋ฉฐ cfg/defaults.yaml ํŒŒ์ผ.

์ž‘์—…

Ultralytics YOLO ๋ชจ๋ธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ์ปดํ“จํ„ฐ ๋น„์ „ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ๊ฐ์ง€: ๊ฐ์ฒด ๊ฐ์ง€: ์ด๋ฏธ์ง€ ๋˜๋Š” ๋น„๋””์˜ค ๋‚ด์˜ ๊ฐ์ฒด๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.
  • ์„ธ๊ทธ๋จผํŠธ: ์ธ์Šคํ„ด์Šค ๋ถ„ํ• ์€ ์ด๋ฏธ์ง€ ๋˜๋Š” ๋น„๋””์˜ค๋ฅผ ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐ์ฒด ๋˜๋Š” ํด๋ž˜์Šค์— ํ•ด๋‹นํ•˜๋Š” ์˜์—ญ์œผ๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค.
  • ๋ถ„๋ฅ˜: ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜๋Š” ์ž…๋ ฅ ์ด๋ฏธ์ง€์˜ ํด๋ž˜์Šค ๋ ˆ์ด๋ธ”์„ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค.
  • ํฌ์ฆˆ: ํฌ์ฆˆ ์ถ”์ •: ์ด๋ฏธ์ง€ ๋˜๋Š” ๋™์˜์ƒ์—์„œ ๊ฐ์ฒด๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ํ‚คํฌ์ธํŠธ๋ฅผ ์ถ”์ •ํ•ฉ๋‹ˆ๋‹ค.
  • OBB: ํšŒ์ „๋œ ๋ฐ”์šด๋”ฉ ๋ฐ•์Šค๋Š” ์œ„์„ฑ ๋˜๋Š” ์˜๋ฃŒ ์ด๋ฏธ์ง€์— ์ ํ•ฉํ•œ ํšŒ์ „๋œ ๋ฐ”์šด๋”ฉ ๋ฐ•์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ธ์ˆ˜ ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
task 'detect' YOLO ์ž‘์—…์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค: detect ์— ๋Œ€ํ•œ ๋ฌผ์ฒด ๊ฐ์ง€, segment ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ธ๋ถ„ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค, classify ๋ถ„๋ฅ˜๋ฅผ ์œ„ํ•ด, pose ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํฌ์ฆˆ๋ฅผ ์ถ”์ •ํ•˜๊ณ  obb ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์ž‘์—…์€ ์ด๋ฏธ์ง€ ๋ฐ ๋น„๋””์˜ค ๋ถ„์„์˜ ํŠน์ • ์ถœ๋ ฅ๊ณผ ๋ฌธ์ œ์— ๋งž๊ฒŒ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค.

์ž‘์—… ๊ฐ€์ด๋“œ

๋ชจ๋“œ

๊ฐ ๋ชจ๋ธ ์ˆ˜๋ช… ์ฃผ๊ธฐ์˜ ํŠน์ • ๋‹จ๊ณ„์— ๋งž๊ฒŒ ์„ค๊ณ„๋œ ๋‹ค์–‘ํ•œ ๋ชจ๋“œ๋กœ ์ž‘๋™ํ•˜๋Š” Ultralytics YOLO ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค:

  • ํ›ˆ๋ จ: ํ•™์Šต: ์‚ฌ์šฉ์ž ์ง€์ • ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ YOLO ๋ชจ๋ธ์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
  • Val: ํ•™์Šต๋œ YOLO ๋ชจ๋ธ์„ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ์ธก: ํ•™์Šต๋œ YOLO ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ ์ด๋ฏธ์ง€ ๋˜๋Š” ๋™์˜์ƒ์— ๋Œ€ํ•œ ์˜ˆ์ธก์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ๋‚ด๋ณด๋‚ด๊ธฐ: ๋‚ด๋ณด๋‚ด๊ธฐ: ๋ฐฐํฌ๋ฅผ ์œ„ํ•ด YOLO ๋ชจ๋ธ์„ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค.
  • ์ถ”์ : ์ถ”์ : YOLO ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ฐœ์ฒด๋ฅผ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฒค์น˜๋งˆํฌ: YOLO ๋‚ด๋ณด๋‚ด๊ธฐONNX, TensorRT ๋“ฑ)์˜ ์†๋„์™€ ์ •ํ™•๋„๋ฅผ ๋ฒค์น˜๋งˆํ‚นํ•˜์„ธ์š”.
์ธ์ˆ˜ ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
mode 'train' YOLO ๋ชจ๋ธ์˜ ์ž‘๋™ ๋ชจ๋“œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค: train ๋ชจ๋ธ ํŠธ๋ ˆ์ด๋‹์„ ์œ„ํ•ด val ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค, predict ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถ”๋ก ํ•ฉ๋‹ˆ๋‹ค, export ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐํฌ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค, track ๊ฐ์ฒด ์ถ”์ ์šฉ benchmark ์„ฑ๋Šฅ ํ‰๊ฐ€๋ฅผ ์œ„ํ•ด. ๊ฐ ๋ชจ๋“œ๋Š” ๊ฐœ๋ฐœ๋ถ€ํ„ฐ ๋ฐฐํฌ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๋‹จ๊ณ„๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“œ ๊ฐ€์ด๋“œ

์—ด์ฐจ ์„ค์ •

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

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
model str None ํ•™์Šตํ•  ๋ชจ๋ธ ํŒŒ์ผ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์˜ ๊ฒฝ๋กœ๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. .pt ์‚ฌ์ „ ํ•™์Šต๋œ ๋ชจ๋ธ ๋˜๋Š” .yaml ๊ตฌ์„ฑ ํŒŒ์ผ. ๋ชจ๋ธ ๊ตฌ์กฐ๋ฅผ ์ •์˜ํ•˜๊ฑฐ๋‚˜ ๊ฐ€์ค‘์น˜๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.
data str None ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ๊ฒฝ๋กœ(์˜ˆ:, coco8.yaml). ์ด ํŒŒ์ผ์—๋Š” ํŠธ๋ ˆ์ด๋‹ ๊ฒฝ๋กœ๋ฅผ ๋น„๋กฏํ•œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ณ„ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ์ดํ„ฐ, ํด๋ž˜์Šค ์ด๋ฆ„, ํด๋ž˜์Šค ์ˆ˜๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
epochs int 100 ์ด ํ›ˆ๋ จ ์—ํฌํฌ ์ˆ˜์ž…๋‹ˆ๋‹ค. ๊ฐ ์—ํฌํฌ๋Š” ์ „์ฒด ๋ฐ์ดํ„ฐ ์„ธํŠธ์— ๋Œ€ํ•œ ์ „์ฒด ํŒจ์Šค๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ด ๊ฐ’์„ ์กฐ์ •ํ•˜๋ฉด ํ•™์Šต ๊ธฐ๊ฐ„๊ณผ ๋ชจ๋ธ ์„ฑ๋Šฅ์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
time float None ์ตœ๋Œ€ ํ›ˆ๋ จ ์‹œ๊ฐ„(์‹œ๊ฐ„). ์„ค์ •ํ•˜๋ฉด ์ด ๊ฐ’์€ epochs ์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ์‹œ๊ฐ„ ํ›„์— ํŠธ๋ ˆ์ด๋‹์„ ์ž๋™์œผ๋กœ ์ค‘์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹œ๊ฐ„ ์ œ์•ฝ์ด ์žˆ๋Š” ๊ต์œก ์‹œ๋‚˜๋ฆฌ์˜ค์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
patience int 100 ํ›ˆ๋ จ์„ ์กฐ๊ธฐ ์ค‘๋‹จํ•˜๊ธฐ ์ „์— ๊ฒ€์ฆ ์ง€ํ‘œ์˜ ๊ฐœ์„  ์—†์ด ๊ธฐ๋‹ค๋ ค์•ผ ํ•˜๋Š” ์—ํฌํฌ ์ˆ˜์ž…๋‹ˆ๋‹ค. ์„ฑ๋Šฅ์ด ์ •์ฒด๋  ๋•Œ ํ›ˆ๋ จ์„ ์ค‘๋‹จํ•˜์—ฌ ๊ณผ์ ํ•ฉ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
batch int 16 ๋ฐฐ์น˜ ํฌ๊ธฐ์„ธ ๊ฐ€์ง€ ๋ชจ๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ์ •์ˆ˜๋กœ ์„ค์ •), batch=16), 60% GPU ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋ฅ ์˜ ์ž๋™ ๋ชจ๋“œ(batch=-1) ๋˜๋Š” ์ง€์ •๋œ ์‚ฌ์šฉ๋ฅ  ๋น„์œจ์˜ ์ž๋™ ๋ชจ๋“œ(batch=0.70).
imgsz int ๋˜๋Š” list 640 ํ•™์Šต์„ ์œ„ํ•œ ๋ชฉํ‘œ ์ด๋ฏธ์ง€ ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ด๋ฏธ์ง€๋Š” ๋ชจ๋ธ์— ์ž…๋ ฅ๋˜๊ธฐ ์ „์— ์ด ํฌ๊ธฐ๋กœ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ ์ •ํ™•๋„์™€ ๊ณ„์‚ฐ ๋ณต์žก๋„์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
save bool True ํ›ˆ๋ จ ์ฒดํฌํฌ์ธํŠธ์™€ ์ตœ์ข… ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ›ˆ๋ จ ๋˜๋Š” ๋ชจ๋ธ ๋ฐฐํฌ๋ฅผ ์žฌ๊ฐœํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
save_period int -1 ๋ชจ๋ธ ์ฒดํฌํฌ์ธํŠธ ์ €์žฅ ๋นˆ๋„(์—ํฌํฌ ๋‹จ์œ„๋กœ ์ง€์ •)์ž…๋‹ˆ๋‹ค. ๊ฐ’์ด -1์ด๋ฉด ์ด ๊ธฐ๋Šฅ์ด ๋น„ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค. ๊ธด ํ›ˆ๋ จ ์„ธ์…˜ ๋™์•ˆ ์ค‘๊ฐ„ ๋ชจ๋ธ์„ ์ €์žฅํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
cache bool False ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์ด๋ฏธ์ง€์˜ ์บ์‹ฑ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค(True/ram), ๋””์Šคํฌ(disk) ๋˜๋Š” ๋น„ํ™œ์„ฑํ™”(False). ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ๋Š˜๋ฆฌ๋Š” ๋Œ€์‹  ๋””์Šคํฌ I/O๋ฅผ ์ค„์—ฌ ํ›ˆ๋ จ ์†๋„๋ฅผ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
device int ๋˜๋Š” str ๋˜๋Š” list None ๊ต์œก์šฉ ๊ณ„์‚ฐ ์žฅ์น˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค: ๋‹จ์ผ GPU (device=0), ๋‹ค์ค‘ GPU(device=0,1), CPU (device=cpu) ๋˜๋Š” ์• ํ”Œ ์‹ค๋ฆฌ์ฝ˜์˜ ๊ฒฝ์šฐ MPS (device=mps).
workers int 8 ๋ฐ์ดํ„ฐ ๋กœ๋”ฉ์„ ์œ„ํ•œ ์›Œ์ปค ์Šค๋ ˆ๋“œ ์ˆ˜(๋‹น RANK ๋‹ค์ค‘GPU ํ›ˆ๋ จ์ธ ๊ฒฝ์šฐ). ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ ๋ฐ ๋ชจ๋ธ์— ๊ณต๊ธ‰ํ•˜๋Š” ์†๋„์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฉฐ, ํŠนํžˆ ๋‹ค์ค‘GPU ์„ค์ •์—์„œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
project str None ๊ต์œก ๊ฒฐ๊ณผ๋ฌผ์ด ์ €์žฅ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์‹คํ—˜์„ ์ฒด๊ณ„์ ์œผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
name str None ํŠธ๋ ˆ์ด๋‹ ์‹คํ–‰์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ํด๋” ๋‚ด์— ํŠธ๋ ˆ์ด๋‹ ๋กœ๊ทธ ๋ฐ ๊ฒฐ๊ณผ๋ฌผ์ด ์ €์žฅ๋˜๋Š” ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
exist_ok bool False True๋กœ ์„ค์ •ํ•˜๋ฉด ๊ธฐ์กด ํ”„๋กœ์ ํŠธ/์ด๋ฆ„ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋ฎ์–ด์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „ ๊ฒฐ๊ณผ๋ฌผ์„ ์ˆ˜๋™์œผ๋กœ ์ง€์šธ ํ•„์š” ์—†์ด ๋ฐ˜๋ณต์ ์ธ ์‹คํ—˜์„ ํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
pretrained bool ๋˜๋Š” str True ์‚ฌ์ „ ํ•™์Šต๋œ ๋ชจ๋ธ์—์„œ ํ•™์Šต์„ ์‹œ์ž‘ํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์ค‘์น˜๋ฅผ ๋กœ๋“œํ•  ํŠน์ • ๋ชจ๋ธ์— ๋Œ€ํ•œ ๋ถ€์šธ ๊ฐ’ ๋˜๋Š” ๋ฌธ์ž์—ด ๊ฒฝ๋กœ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•™์Šต ํšจ์œจ์„ฑ๊ณผ ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
optimizer str 'auto' ๊ต์œก์šฉ ์˜ตํ‹ฐ๋งˆ์ด์ € ์„ ํƒ. ์˜ต์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. SGD, Adam, AdamW, NAdam, RAdam, RMSProp ๋“ฑ ๋˜๋Š” auto ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ์ž๋™์œผ๋กœ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ปจ๋ฒ„์ „์Šค ์†๋„์™€ ์•ˆ์ •์„ฑ์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
seed int 0 ํŠธ๋ ˆ์ด๋‹์„ ์œ„ํ•œ ๋ฌด์ž‘์œ„ ์‹œ๋“œ๋ฅผ ์„ค์ •ํ•˜์—ฌ ๋™์ผํ•œ ๊ตฌ์„ฑ์œผ๋กœ ์‹คํ–‰ํ•  ๋•Œ ๊ฒฐ๊ณผ์˜ ์žฌํ˜„์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
deterministic bool True ๊ฒฐ์ •๋ก ์  ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ์„ ๊ฐ•์ œํ•˜์—ฌ ์žฌํ˜„์„ฑ์„ ๋ณด์žฅํ•˜์ง€๋งŒ ๋น„๊ฒฐ์ •๋ก ์  ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋Œ€ํ•œ ์ œํ•œ์œผ๋กœ ์ธํ•ด ์„ฑ๋Šฅ๊ณผ ์†๋„์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
single_cls bool False ํ›ˆ๋ จ ์ค‘์— ๋‹ค์ค‘ ํด๋ž˜์Šค ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ๋ชจ๋“  ํด๋ž˜์Šค๋ฅผ ๋‹จ์ผ ํด๋ž˜์Šค๋กœ ์ทจ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ง„ ๋ถ„๋ฅ˜ ์ž‘์—…์ด๋‚˜ ๋ถ„๋ฅ˜๋ณด๋‹ค๋Š” ๊ฐ์ฒด์˜ ์กด์žฌ ์—ฌ๋ถ€์— ์ดˆ์ ์„ ๋งž์ถœ ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
classes list[int] None ํ›ˆ๋ จํ•  ํด๋ž˜์Šค ID ๋ชฉ๋ก์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ต์œก ์ค‘์— ํŠน์ • ํด๋ž˜์Šค๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ณ  ์ง‘์ค‘ํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
rect bool False ์ง์‚ฌ๊ฐํ˜• ํ•™์Šต์„ ํ™œ์„ฑํ™”ํ•˜์—ฌ ๋ฐฐ์น˜ ๊ตฌ์„ฑ์„ ์ตœ์ ํ™”ํ•˜์—ฌ ํŒจ๋”ฉ์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค. ํšจ์œจ์„ฑ๊ณผ ์†๋„๋ฅผ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์ง€๋งŒ ๋ชจ๋ธ ์ •ํ™•๋„์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
multi_scale bool False ๊ต์œก ๊ทœ๋ชจ๋ฅผ ๋Š˜๋ฆฌ๊ฑฐ๋‚˜ ์ค„์—ฌ ๋ฉ€ํ‹ฐ์Šค์ผ€์ผ ๊ต์œก ๊ฐ€๋Šฅ imgsz ์ตœ๋Œ€ 0.5 ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์„ ์—ฌ๋Ÿฌ ๋ฒˆ ํ›ˆ๋ จํ•˜์—ฌ ์ •ํ™•๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค. imgsz ์ถ”๋ก ํ•˜๋Š” ๋™์•ˆ
cos_lr bool False ์ฝ”์‚ฌ์ธ ํ•™์Šต๋ฅ  ์Šค์ผ€์ค„๋Ÿฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ธฐ๊ฐ„๋ณ„ ์ฝ”์‚ฌ์ธ ๊ณก์„ ์— ๋”ฐ๋ผ ํ•™์Šต๋ฅ ์„ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋” ๋‚˜์€ ์ปจ๋ฒ„์ „์Šค๋ฅผ ์œ„ํ•ด ํ•™์Šต ์†๋„๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
close_mosaic int 10 ์™„๋ฃŒํ•˜๊ธฐ ์ „์— ํ›ˆ๋ จ์„ ์•ˆ์ •ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์ง€๋‚œ N๊ฐœ์˜ ์—ํฌํฌ์—์„œ ๋ชจ์ž์ดํฌ ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. 0์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ์ด ๊ธฐ๋Šฅ์ด ๋น„ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.
resume bool False ๋งˆ์ง€๋ง‰์œผ๋กœ ์ €์žฅํ•œ ์ฒดํฌํฌ์ธํŠธ๋ถ€ํ„ฐ ํ›ˆ๋ จ์„ ์žฌ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ ๊ฐ€์ค‘์น˜, ์ตœ์ ํ™” ์ƒํƒœ ๋ฐ ์—ํฌํฌ ์ˆ˜๋ฅผ ์ž๋™์œผ๋กœ ๋กœ๋“œํ•˜์—ฌ ํ›ˆ๋ จ์„ ์›ํ™œํ•˜๊ฒŒ ๊ณ„์†ํ•ฉ๋‹ˆ๋‹ค.
amp bool True ์ž๋™ ํ˜ผํ•ฉ ์ •๋ฐ€๋„ (AMP) ํ›ˆ๋ จ์„ ํ™œ์„ฑํ™”ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ด๊ณ  ์ •ํ™•๋„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์ตœ์†Œํ™”ํ•˜๋ฉด์„œ ํ›ˆ๋ จ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
fraction float 1.0 ํ•™์Šต์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ์ผ๋ถ€๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ „์ฒด ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ํ•˜์œ„ ์ง‘ํ•ฉ์— ๋Œ€ํ•œ ํ•™์Šต์„ ํ—ˆ์šฉํ•˜๋ฉฐ, ์‹คํ—˜์ด๋‚˜ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ œํ•œ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
profile bool False ํ›ˆ๋ จ ์ค‘์— ONNX ๋ฐ TensorRT ์†๋„๋ฅผ ํ”„๋กœํŒŒ์ผ๋งํ•˜์—ฌ ๋ชจ๋ธ ๋ฐฐํฌ๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
freeze int ๋˜๋Š” list None ๋ชจ๋ธ์˜ ์ฒ˜์Œ N๊ฐœ์˜ ๋ ˆ์ด์–ด ๋˜๋Š” ์ธ๋ฑ์Šค๋ณ„๋กœ ์ง€์ •๋œ ๋ ˆ์ด์–ด๋ฅผ ๊ณ ์ •ํ•˜์—ฌ ํ•™์Šต ๊ฐ€๋Šฅํ•œ ํŒŒ๋ผ๋ฏธํ„ฐ์˜ ์ˆ˜๋ฅผ ์ค„์ž…๋‹ˆ๋‹ค. ๋ฏธ์„ธ ์กฐ์ • ๋˜๋Š” ์ „์ด ํ•™์Šต์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
lr0 float 0.01 ์ดˆ๊ธฐ ํ•™์Šต๋ฅ (์˜ˆ SGD=1E-2, Adam=1E-3). ์ด ๊ฐ’์„ ์กฐ์ •ํ•˜๋Š” ๊ฒƒ์€ ์ตœ์ ํ™” ํ”„๋กœ์„ธ์Šค์—์„œ ๋งค์šฐ ์ค‘์š”ํ•˜๋ฉฐ, ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๋Š” ์†๋„์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.
lrf float 0.01 ์ดˆ๊ธฐ ํ•™์Šต๋ฅ ์˜ ์ผ๋ถ€๋ถ„์ธ ์ตœ์ข… ํ•™์Šต๋ฅ  = (lr0 * lrf), ์Šค์ผ€์ค„๋Ÿฌ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ๊ฐ„์— ๋”ฐ๋ฅธ ํ•™์Šต ์†๋„๋ฅผ ์กฐ์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
momentum float 0.937 SGD ๋˜๋Š” ์•„๋‹ด ์˜ตํ‹ฐ๋งˆ์ด์ €์šฉ ๋ฒ ํƒ€1์˜ ๋ชจ๋ฉ˜ํ…€ ๊ณ„์ˆ˜๋กœ, ํ˜„์žฌ ์—…๋ฐ์ดํŠธ์—์„œ ๊ณผ๊ฑฐ ๊ทธ๋ผ๋ฐ์ด์…˜์˜ ํ†ตํ•ฉ์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
weight_decay float 0.0005 L2 ์ •๊ทœํ™” ๊ธฐ๊ฐ„, ๊ณผ์ ํ•ฉ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํฐ ๊ฐ€์ค‘์น˜์— ๋ถˆ์ด์ต์„ ์ค๋‹ˆ๋‹ค.
warmup_epochs float 3.0 ํ•™์Šต ์†๋„ ์›Œ๋ฐ์—…์„ ์œ„ํ•œ ์—ํฌํฌ ์ˆ˜๋กœ, ํ•™์Šต ์†๋„๋ฅผ ๋‚ฎ์€ ๊ฐ’์—์„œ ์ดˆ๊ธฐ ํ•™์Šต ์†๋„๊นŒ์ง€ ์„œ์„œํžˆ ๋†’์—ฌ ์กฐ๊ธฐ์— ํ•™์Šต์„ ์•ˆ์ •ํ™”ํ•ฉ๋‹ˆ๋‹ค.
warmup_momentum float 0.8 ์›Œ๋ฐ์—… ๋‹จ๊ณ„์˜ ์ดˆ๊ธฐ ์šด๋™๋Ÿ‰์œผ๋กœ, ์›Œ๋ฐ์—… ๊ธฐ๊ฐ„ ๋™์•ˆ ์„ค์ •๋œ ์šด๋™๋Ÿ‰์— ์ ์ฐจ์ ์œผ๋กœ ์ ์‘ํ•ฉ๋‹ˆ๋‹ค.
warmup_bias_lr float 0.1 ์›Œ๋ฐ์—… ๋‹จ๊ณ„์—์„œ ๋ฐ”์ด์–ด์Šค ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ํ•™์Šต ์†๋„๋ฅผ ๋†’์—ฌ ์ดˆ๊ธฐ ๋‹จ๊ณ„์—์„œ ๋ชจ๋ธ ํ•™์Šต์„ ์•ˆ์ •ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
box float 7.5 ์†์‹ค ํ•จ์ˆ˜์—์„œ ๋ฐ•์Šค ์†์‹ค ์„ฑ๋ถ„์˜ ๊ฐ€์ค‘์น˜๋กœ, ๋ฐ”์šด๋”ฉ ๋ฐ•์Šค ์ขŒํ‘œ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์˜ˆ์ธกํ•˜๋Š” ๋ฐ ์–ผ๋งˆ๋‚˜ ์ค‘์ ์„ ๋‘๋Š”์ง€์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
cls float 0.5 ์ด ์†์‹ค ํ•จ์ˆ˜์—์„œ ๋ถ„๋ฅ˜ ์†์‹ค์˜ ๊ฐ€์ค‘์น˜๋กœ, ๋‹ค๋ฅธ ๊ตฌ์„ฑ ์š”์†Œ์— ๋น„ํ•ด ์ •ํ™•ํ•œ ํด๋ž˜์Šค ์˜ˆ์ธก์˜ ์ค‘์š”๋„์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
dfl float 1.5 ์„ธ๋ถ„ํ™”๋œ ๋ถ„๋ฅ˜๋ฅผ ์œ„ํ•ด ํŠน์ • YOLO ๋ฒ„์ „์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ถ„ํฌ ์ดˆ์  ์†์‹ค์˜ ๊ฐ€์ค‘์น˜์ž…๋‹ˆ๋‹ค.
pose float 12.0 ํฌ์ฆˆ ์ถ”์ •์„ ์œ„ํ•ด ํ•™์Šต๋œ ๋ชจ๋ธ์—์„œ ํฌ์ฆˆ ์†์‹ค์˜ ๊ฐ€์ค‘์น˜๋กœ, ํฌ์ฆˆ ํ‚คํฌ์ธํŠธ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์˜ˆ์ธกํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค.
kobj float 2.0 ํฌ์ฆˆ ์ถ”์ • ๋ชจ๋ธ์—์„œ ํ‚คํฌ์ธํŠธ ๊ฐ์ฒด์„ฑ ์†์‹ค์˜ ๊ฐ€์ค‘์น˜๋กœ, ๊ฐ์ง€ ์‹ ๋ขฐ๋„์™€ ํฌ์ฆˆ ์ •ํ™•๋„ ๊ฐ„์˜ ๊ท ํ˜•์„ ๋งž์ถฅ๋‹ˆ๋‹ค.
nbs int 64 ์†์‹ค ์ •๊ทœํ™”๋ฅผ ์œ„ํ•œ ๊ณต์นญ ๋ฐฐ์น˜ ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค.
overlap_mask bool True ํ•™์Šต์„ ์œ„ํ•ด ๊ฐœ์ฒด ๋งˆ์Šคํฌ๋ฅผ ํ•˜๋‚˜์˜ ๋งˆ์Šคํฌ๋กœ ๋ณ‘ํ•ฉํ• ์ง€, ์•„๋‹ˆ๋ฉด ๊ฐ ๊ฐœ์ฒด๋งˆ๋‹ค ๋ณ„๋„๋กœ ์œ ์ง€ํ• ์ง€ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ ๋ณ‘ํ•ฉํ•˜๋Š” ๋™์•ˆ ์ž‘์€ ๋งˆ์Šคํฌ๊ฐ€ ํฐ ๋งˆ์Šคํฌ ์œ„์— ๊ฒน์ณ์ง‘๋‹ˆ๋‹ค.
mask_ratio int 4 ์„ธ๋ถ„ํ™” ๋งˆ์Šคํฌ์˜ ๋‹ค์šด์ƒ˜ํ”Œ ๋น„์œจ๋กœ, ํ›ˆ๋ จ ์ค‘์— ์‚ฌ์šฉ๋˜๋Š” ๋งˆ์Šคํฌ์˜ ํ•ด์ƒ๋„์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
dropout float 0.0 ๋ถ„๋ฅ˜ ์ž‘์—…์˜ ์ •๊ทœํ™”๋ฅผ ์œ„ํ•œ ํƒˆ๋ฝ๋ฅ , ํ›ˆ๋ จ ์ค‘ ๋ฌด์ž‘์œ„๋กœ ๋‹จ์œ„๋ฅผ ์ƒ๋žตํ•˜์—ฌ ๊ณผ์ ํ•ฉ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
val bool True ํ›ˆ๋ จ ์ค‘ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ™œ์„ฑํ™”ํ•˜์—ฌ ๋ณ„๋„์˜ ๋ฐ์ดํ„ฐ ์„ธํŠธ์—์„œ ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ์ฃผ๊ธฐ์ ์œผ๋กœ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
plots bool False ํ•™์Šต ๋ฐ ๊ฒ€์ฆ ๋ฉ”ํŠธ๋ฆญ๊ณผ ์˜ˆ์ธก ์˜ˆ์ œ์˜ ํ”Œ๋กฏ์„ ์ƒ์„ฑํ•˜๊ณ  ์ €์žฅํ•˜์—ฌ ๋ชจ๋ธ ์„ฑ๋Šฅ ๋ฐ ํ•™์Šต ์ง„ํ–‰ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์‹œ๊ฐ์  ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋ฐฐ์น˜ ํฌ๊ธฐ ์„ค์ •์— ๋Œ€ํ•œ ์ฐธ๊ณ  ์‚ฌํ•ญ

๊ทธ๋ฆฌ๊ณ  batch ์ธ์ˆ˜๋Š” ์„ธ ๊ฐ€์ง€ ๊ตฌ์„ฑ ์˜ต์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

  • ๊ณ ์ • ๋ฐฐ์น˜ ํฌ๊ธฐ: ๋ฐฐ์น˜๋‹น ์ด๋ฏธ์ง€ ์ˆ˜๋ฅผ ์ •์ˆ˜๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ:, batch=16).
  • ์ž๋™ ๋ชจ๋“œ(60% GPU ๋ฉ”๋ชจ๋ฆฌ): ์‚ฌ์šฉ batch=-1 ๋ฅผ ํด๋ฆญํ•ด ์•ฝ 60%์˜ CUDA ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋ฅ ๋กœ ์ž๋™ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ๋ฅ  ๋น„์œจ์„ ์‚ฌ์šฉํ•œ ์ž๋™ ๋ชจ๋“œ: ๋ถ„์ˆ˜ ์„ค์ •(์˜ˆ:, batch=0.70)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ GPU ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์— ๋”ฐ๋ผ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์ฐจ ๊ฐ€์ด๋“œ

์˜ˆ์ธก ์„ค์ •

YOLO ๋ชจ๋ธ์˜ ์˜ˆ์ธก ์„ค์ •์—๋Š” ์ถ”๋ก  ์ค‘ ์„ฑ๋Šฅ, ์†๋„ ๋ฐ ์ •ํ™•๋„์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ ๋ฐ ๊ตฌ์„ฑ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ฃผ์š” ์„ค์ •์—๋Š” ์‹ ๋ขฐ๋„ ์ž„๊ณ„๊ฐ’, ๋น„์ตœ๋Œ€ ์–ต์ œ(NMS) ์ž„๊ณ„๊ฐ’, ํด๋ž˜์Šค ์ˆ˜๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ํฌ๊ธฐ, ํ˜•์‹, ๋งˆ์Šคํฌ์™€ ๊ฐ™์€ ๋ณด์กฐ ๊ธฐ๋Šฅ๋„ ์˜ˆ์ธก์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ์œ„ํ•ด์„œ๋Š” ์ด๋Ÿฌํ•œ ์„ค์ •์„ ์กฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

์ถ”๋ก  ์ธ์ˆ˜:

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
source str 'ultralytics/assets' ์ถ”๋ก ํ•  ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ, ๋™์˜์ƒ ํŒŒ์ผ, ๋””๋ ‰ํ† ๋ฆฌ, URL ๋˜๋Š” ์‹ค์‹œ๊ฐ„ ํ”ผ๋“œ์šฉ ๋””๋ฐ”์ด์Šค ID๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ํ˜•์‹๊ณผ ์†Œ์Šค๋ฅผ ์ง€์›ํ•˜๋ฏ€๋กœ ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ์ž…๋ ฅ์— ์œ ์—ฐํ•˜๊ฒŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
conf float 0.25 ํƒ์ง€์— ๋Œ€ํ•œ ์ตœ์†Œ ์‹ ๋ขฐ๋„ ์ž„๊ณ„๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ž„๊ณ„๊ฐ’๋ณด๋‹ค ๋‚ฎ์€ ์‹ ๋ขฐ๋„๋กœ ํƒ์ง€๋œ ๊ฐœ์ฒด๋Š” ๋ฌด์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ฐ’์„ ์กฐ์ •ํ•˜๋ฉด ์˜คํƒ์ง€๋ฅผ ์ค„์ด๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
iou float 0.7 ๋น„์ตœ๋Œ€ ์–ต์ œ(NMS)์— ๋Œ€ํ•œ ๊ต์ฐจ์  ์ดˆ๊ณผ (IoU) ์ž„๊ณ„๊ฐ’์ž…๋‹ˆ๋‹ค. ๊ฐ’์ด ๋‚ฎ์„์ˆ˜๋ก ์ค‘๋ณต๋˜๋Š” ์ƒ์ž๋ฅผ ์ œ๊ฑฐํ•˜์—ฌ ํƒ์ง€ ํšŸ์ˆ˜๊ฐ€ ์ค„์–ด๋“ค์–ด ์ค‘๋ณต์„ ์ค„์ด๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
imgsz int ๋˜๋Š” tuple 640 ์ถ”๋ก ํ•  ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ์ผ ์ •์ˆ˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 640 ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ •์‚ฌ๊ฐํ˜• ํฌ๊ธฐ ์กฐ์ • ๋˜๋Š” (๋†’์ด, ๋„ˆ๋น„) ํŠœํ”Œ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ ์ ˆํ•œ ํฌ๊ธฐ ์กฐ์ •์€ ๊ฐ์ง€์œจ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •ํ™•์„ฑ ์ฒ˜๋ฆฌ ์†๋„.
half bool False ์ •ํ™•๋„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์ตœ์†Œํ™”ํ•˜๋ฉด์„œ ์ง€์›๋˜๋Š” GPU์—์„œ ๋ชจ๋ธ ์ถ”๋ก  ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ๋Š” ๋ฐ˜์ •ํ™•๋„ (FP16) ์ถ”๋ก ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
device str None ์ถ”๋ก ํ•  ์žฅ์น˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ, cpu, cuda:0 ๋˜๋Š” 0). ์‚ฌ์šฉ์ž๊ฐ€ ๋ชจ๋ธ ์‹คํ–‰์„ ์œ„ํ•ด CPU, ํŠน์ • GPU, ๋˜๋Š” ๊ธฐํƒ€ ์ปดํ“จํŒ… ์žฅ์น˜ ์ค‘์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
batch int 1 ์ถ”๋ก ํ•  ๋ฐฐ์น˜ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์†Œ์Šค๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ์—๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋””๋ ‰ํ† ๋ฆฌ, ๋น„๋””์˜ค ํŒŒ์ผ ๋˜๋Š” .txt ํŒŒ์ผ). ๋ฐฐ์น˜ ํฌ๊ธฐ๊ฐ€ ํด์ˆ˜๋ก ์ฒ˜๋ฆฌ๋Ÿ‰์ด ์ฆ๊ฐ€ํ•˜์—ฌ ์ถ”๋ก ์— ํ•„์š”ํ•œ ์ด ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
max_det int 300 ์ด๋ฏธ์ง€๋‹น ํ—ˆ์šฉ๋˜๋Š” ์ตœ๋Œ€ ๊ฐ์ง€ ํšŸ์ˆ˜. ๋ชจ๋ธ์ด ํ•œ ๋ฒˆ์˜ ์ถ”๋ก ์—์„œ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ์ด ์˜ค๋ธŒ์ ํŠธ ์ˆ˜๋ฅผ ์ œํ•œํ•˜์—ฌ ๋ฐ€์ง‘๋œ ์žฅ๋ฉด์—์„œ ๊ณผ๋„ํ•œ ์ถœ๋ ฅ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
vid_stride int 1 ๋น„๋””์˜ค ์ž…๋ ฅ์˜ ํ”„๋ ˆ์ž„ ๋ณดํญ. ๋™์˜์ƒ์—์„œ ํ”„๋ ˆ์ž„์„ ๊ฑด๋„ˆ๋›ฐ์–ด ์‹œ๊ฐ„ ํ•ด์ƒ๋„๋ฅผ ํฌ์ƒํ•˜๋ฉด์„œ ์ฒ˜๋ฆฌ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ’์ด 1์ด๋ฉด ๋ชจ๋“  ํ”„๋ ˆ์ž„์„ ์ฒ˜๋ฆฌํ•˜๊ณ , ๊ฐ’์ด ํด์ˆ˜๋ก ํ”„๋ ˆ์ž„์„ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.
stream_buffer bool False ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์— ๋Œ€ํ•ด ์ˆ˜์‹  ํ”„๋ ˆ์ž„์„ ๋Œ€๊ธฐ์—ด์— ๋„ฃ์„์ง€ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ False๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ƒˆ ํ”„๋ ˆ์ž„์„ ์ˆ˜์šฉํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์กด ํ”„๋ ˆ์ž„์ด ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค(์‹ค์‹œ๊ฐ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ตœ์ ํ™”๋จ). ๋งŒ์•ฝ True๋Š” ์ƒˆ ํ”„๋ ˆ์ž„์„ ๋ฒ„ํผ์— ๋Œ€๊ธฐ์‹œ์ผœ ํ”„๋ ˆ์ž„์ด ๊ฑด๋„ˆ๋›ฐ์ง€ ์•Š๋„๋ก ํ•˜์ง€๋งŒ ์ถ”๋ก  FPS๊ฐ€ ์ŠคํŠธ๋ฆผ FPS๋ณด๋‹ค ๋‚ฎ์œผ๋ฉด ์ง€์—ฐ ์‹œ๊ฐ„์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
visualize bool False ์ถ”๋ก  ์ค‘์— ๋ชจ๋ธ ๊ธฐ๋Šฅ์˜ ์‹œ๊ฐํ™”๋ฅผ ํ™œ์„ฑํ™”ํ•˜์—ฌ ๋ชจ๋ธ์ด '๋ณด๊ณ  ์žˆ๋Š” ๊ฒƒ'์— ๋Œ€ํ•œ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋””๋ฒ„๊น… ๋ฐ ๋ชจ๋ธ ํ•ด์„์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
augment bool False ์˜ˆ์ธก์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์‹œ๊ฐ„ ์ฆ๊ฐ•(TTA)์„ ์ง€์›ํ•˜์—ฌ ์ถ”๋ก  ์†๋„๋ฅผ ํฌ์ƒํ•˜๋ฉด์„œ ํƒ์ง€ ๊ฒฌ๊ณ ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
agnostic_nms bool False ์„œ๋กœ ๋‹ค๋ฅธ ํด๋ž˜์Šค์˜ ๊ฒน์น˜๋Š” ์ƒ์ž๋ฅผ ๋ณ‘ํ•ฉํ•˜๋Š” ํด๋ž˜์Šค ๋ฌด๊ด€ NMS(Non-Maximum Suppression)๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ํด๋ž˜์Šค ์ค‘๋ณต์ด ์ผ๋ฐ˜์ ์ธ ๋‹ค์ค‘ ํด๋ž˜์Šค ํƒ์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
classes list[int] None ํด๋ž˜์Šค ID ์ง‘ํ•ฉ์œผ๋กœ ์˜ˆ์ธก์„ ํ•„ํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. ์ง€์ •๋œ ํด๋ž˜์Šค์— ์†ํ•˜๋Š” ํƒ์ง€๋งŒ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค. ๋‹ค์ค‘ ํด๋ž˜์Šค ํƒ์ง€ ์ž‘์—…์—์„œ ๊ด€๋ จ ๊ฐœ์ฒด์— ์ง‘์ค‘ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
retina_masks bool False ๊ณ ํ•ด์ƒ๋„ ๋ถ„ํ•  ๋งˆ์Šคํฌ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜ํ™˜๋œ ๋งˆ์Šคํฌ(masks.data)๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ์›๋ณธ ์ด๋ฏธ์ง€ ํฌ๊ธฐ์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ๋น„ํ™œ์„ฑํ™”ํ•˜๋ฉด ์ถ”๋ก  ์ค‘์— ์‚ฌ์šฉ๋˜๋Š” ์ด๋ฏธ์ง€ ํฌ๊ธฐ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
embed list[int] None ํŠน์ง• ๋ฒกํ„ฐ ๋˜๋Š” ์ž„๋ฒ ๋”ฉ์„ ์ถ”์ถœํ•  ๋ ˆ์ด์–ด๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ๋ง์ด๋‚˜ ์œ ์‚ฌ๋„ ๊ฒ€์ƒ‰๊ณผ ๊ฐ™์€ ๋‹ค์šด์ŠคํŠธ๋ฆผ ์ž‘์—…์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
project str None ์˜ˆ์ธก ์ถœ๋ ฅ์ด ์ €์žฅ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ์ด๋ฆ„(๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ). save ๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
name str None ์˜ˆ์ธก ์‹คํ–‰์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ์˜ˆ์ธก ์ถœ๋ ฅ์ด ์ €์žฅ๋˜๋Š” ํ”„๋กœ์ ํŠธ ํด๋” ๋‚ด์— ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. save ๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ๊ฐํ™” ์ธ์ˆ˜:

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
show bool False ๋งŒ์•ฝ True๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์ด๋ฏธ์ง€ ๋˜๋Š” ๋™์˜์ƒ์ด ์ฐฝ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ๋˜๋Š” ํ…Œ์ŠคํŠธ ์ค‘์— ์ฆ‰๊ฐ์ ์ธ ์‹œ๊ฐ์  ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์„ ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
save bool False or True ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์ด๋ฏธ์ง€๋‚˜ ๋™์˜์ƒ์„ ํŒŒ์ผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์„œํ™”, ์ถ”๊ฐ€ ๋ถ„์„ ๋˜๋Š” ๊ฒฐ๊ณผ ๊ณต์œ ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ CLI ์—์„œ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ True, Python ์—์„œ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ False์ž…๋‹ˆ๋‹ค.
save_frames bool False ๋™์˜์ƒ ์ฒ˜๋ฆฌ ์‹œ ๊ฐœ๋ณ„ ํ”„๋ ˆ์ž„์„ ์ด๋ฏธ์ง€๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ํ”„๋ ˆ์ž„์„ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜ ํ”„๋ ˆ์ž„๋ณ„๋กœ ์„ธ๋ถ€์ ์œผ๋กœ ๋ถ„์„ํ•  ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
save_txt bool False ํƒ์ง€ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์Œ ํ˜•์‹์— ๋”ฐ๋ผ ํ…์ŠคํŠธ ํŒŒ์ผ๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. [class] [x_center] [y_center] [width] [height] [confidence]. ๋‹ค๋ฅธ ๋ถ„์„ ๋„๊ตฌ์™€์˜ ํ†ตํ•ฉ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
save_conf bool False ์ €์žฅ๋œ ํ…์ŠคํŠธ ํŒŒ์ผ์— ์‹ ๋ขฐ๋„ ์ ์ˆ˜๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ํ›„์ฒ˜๋ฆฌ ๋ฐ ๋ถ„์„์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
save_crop bool False ํƒ์ง€๋œ ์ด๋ฏธ์ง€๋ฅผ ์ž˜๋ผ๋‚ธ ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ณด๊ฐ•, ๋ถ„์„ ๋˜๋Š” ํŠน์ • ๊ฐœ์ฒด์— ๋Œ€ํ•œ ์ง‘์ค‘ ๋ฐ์ดํ„ฐ ์„ธํŠธ ์ƒ์„ฑ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
show_labels bool True ์‹œ๊ฐ์  ์ถœ๋ ฅ์— ๊ฐ ๊ฐ์ง€ ํ•ญ๋ชฉ์— ๋Œ€ํ•œ ๋ ˆ์ด๋ธ”์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์ง€๋œ ๊ฐœ์ฒด์— ๋Œ€ํ•œ ์ฆ‰๊ฐ์ ์ธ ์ดํ•ด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
show_conf bool True ๊ฐ ํƒ์ง€์— ๋Œ€ํ•œ ์‹ ๋ขฐ๋„ ์ ์ˆ˜๋ฅผ ๋ผ๋ฒจ๊ณผ ํ•จ๊ป˜ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํƒ์ง€์— ๋Œ€ํ•œ ๋ชจ๋ธ์˜ ํ™•์‹ค์„ฑ์— ๋Œ€ํ•œ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
show_boxes bool True ๊ฐ์ง€๋œ ๊ฐœ์ฒด ์ฃผ์œ„์— ๊ฒฝ๊ณ„ ์ƒ์ž๋ฅผ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€ ๋˜๋Š” ๋น„๋””์˜ค ํ”„๋ ˆ์ž„์—์„œ ๋ฌผ์ฒด๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ์‹๋ณ„ํ•˜๊ณ  ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.
line_width None or int None ๊ฒฝ๊ณ„ ์ƒ์ž์˜ ์„  ๋„ˆ๋น„๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ None๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ด๋ฏธ์ง€ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์„  ๋„ˆ๋น„๊ฐ€ ์ž๋™์œผ๋กœ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค. ์„ ๋ช…๋„๋ฅผ ์œ„ํ•œ ์‹œ๊ฐ์  ์‚ฌ์šฉ์ž ์ง€์ • ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
font_size float None ์ฃผ์„์˜ ํ…์ŠคํŠธ ๊ธ€๊ผด ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•˜๋ฉด ์ด๋ฏธ์ง€ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์ž๋™์œผ๋กœ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค. None.
font str 'Arial.ttf' ์‹œ๊ฐํ™”์—์„œ ํ…์ŠคํŠธ ์ฃผ์„์„ ์œ„ํ•œ ๊ธ€๊ผด ์ด๋ฆ„ ๋˜๋Š” ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค.
pil bool False ์ด๋ฏธ์ง€๋ฅผ ๋„ ๋ฐฐ์—ด ๋Œ€์‹  PIL ์ด๋ฏธ์ง€ ๊ฐ์ฒด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
kpt_radius int 5 ํฌ์ฆˆ ์ถ”์ • ๊ฒฐ๊ณผ๋ฅผ ์‹œ๊ฐํ™”ํ•  ๋•Œ ํ‚คํฌ์ธํŠธ์˜ ๋ฐ˜๊ฒฝ์ž…๋‹ˆ๋‹ค.
kpt_line bool True ํฌ์ฆˆ ์ถ”์ •์„ ์‹œ๊ฐํ™”ํ•  ๋•Œ ํ‚คํฌ์ธํŠธ๋ฅผ ์„ ์œผ๋กœ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค.
masks bool True ์‹œ๊ฐํ™” ์ถœ๋ ฅ์— ์„ธ๋ถ„ํ™” ๋งˆ์Šคํฌ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
probs bool True ์‹œ๊ฐํ™”์— ๋ถ„๋ฅ˜ ํ™•๋ฅ ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
filename str None ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•  ๊ฒฝ๋กœ ๋ฐ ํŒŒ์ผ ์ด๋ฆ„ save=True.
color_mode str 'class' ์‹œ๊ฐํ™”์˜ ์ƒ‰์ƒ ์ง€์ • ๋ชจ๋“œ(์˜ˆ: '์ธ์Šคํ„ด์Šค' ๋˜๋Š” 'ํด๋ž˜์Šค')๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ธก ๊ฐ€์ด๋“œ

์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์„ค์ •

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

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
data str None ๋ฐ์ดํ„ฐ ์„ธํŠธ ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ:, coco8.yaml). ์ด ํŒŒ์ผ์—๋Š” ๋‹ค์Œ ๊ฒฝ๋กœ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ์ดํ„ฐ, ํด๋ž˜์Šค ์ด๋ฆ„, ํด๋ž˜์Šค ์ˆ˜๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
imgsz int 640 ์ž…๋ ฅ ์ด๋ฏธ์ง€์˜ ํฌ๊ธฐ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์ด๋ฏธ์ง€๋Š” ์ฒ˜๋ฆฌํ•˜๊ธฐ ์ „์— ์ด ํฌ๊ธฐ๋กœ ํฌ๊ธฐ๊ฐ€ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค.
batch int 16 ๋ฐฐ์น˜๋‹น ์ด๋ฏธ์ง€ ์ˆ˜๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ’์€ ์–‘์˜ ์ •์ˆ˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
save_json bool False ๋งŒ์•ฝ True๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ถ”๊ฐ€ ๋ถ„์„ ๋˜๋Š” ๋‹ค๋ฅธ ๋„๊ตฌ์™€์˜ ํ†ตํ•ฉ์„ ์œ„ํ•ด ๊ฒฐ๊ณผ๋ฅผ JSON ํŒŒ์ผ์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
save_hybrid bool False ๋งŒ์•ฝ True๋ฅผ ํด๋ฆญํ•˜๋ฉด ์›๋ณธ ์ฃผ์„๊ณผ ์ถ”๊ฐ€ ๋ชจ๋ธ ์˜ˆ์ธก์„ ๊ฒฐํ•ฉํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ฒ„์ „์˜ ๋ ˆ์ด๋ธ”์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ํƒ์ง€ ๋ชจ๋ธ์—์„œ๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
conf float 0.001 ํƒ์ง€์— ๋Œ€ํ•œ ์ตœ์†Œ ์‹ ๋ขฐ๋„ ์ž„๊ณ„๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ž„๊ณ„๊ฐ’ ๋ฏธ๋งŒ์˜ ์‹ ๋ขฐ๋„๋ฅผ ๊ฐ€์ง„ ํƒ์ง€๋Š” ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.
iou float 0.6 NMS(๋น„์ตœ๋Œ€ ์–ต์ œ)์— ๋Œ€ํ•œ IoU( ๊ต์ฐจ์  ์ดˆ๊ณผ ์—ฐํ•ฉ ) ์ž„๊ณ„๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ค‘๋ณต ํƒ์ง€๋ฅผ ์ค„์ด๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
max_det int 300 ์ด๋ฏธ์ง€๋‹น ์ตœ๋Œ€ ๊ฐ์ง€ ํšŸ์ˆ˜๋ฅผ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค. ๊ณผ๋„ํ•œ ๊ฐ์ง€๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ€์ง‘๋œ ์žฅ๋ฉด์—์„œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
half bool True ๋ฐ˜์ •๋ฐ€๋„ (FP16) ๊ณ„์‚ฐ์„ ์ง€์›ํ•˜์—ฌ ์ •ํ™•๋„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์ตœ์†Œํ™”ํ•˜๋ฉด์„œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ด๊ณ  ์ž ์žฌ์ ์œผ๋กœ ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
device str None ์œ ํšจ์„ฑ ๊ฒ€์‚ฌํ•  ์žฅ์น˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(cpu, cuda:0๋“ฑ). CPU ๋˜๋Š” GPU ๋ฆฌ์†Œ์Šค๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
dnn bool False ๋งŒ์•ฝ True๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OpenCV ONNX ๋ชจ๋ธ ์ถ”๋ก ์„ ์œ„ํ•œ DNN ๋ชจ๋“ˆ๋กœ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋Œ€์•ˆ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. PyTorch ์ถ”๋ก  ๋ฐฉ๋ฒ•.
plots bool False ๋กœ ์„ค์ •ํ•œ ๊ฒฝ์šฐ True๋Š” ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ์‹œ๊ฐ์ ์œผ๋กœ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์‹ค์ธก๊ฐ’๊ณผ ์˜ˆ์ธก๊ฐ’์„ ๋น„๊ตํ•œ ํ”Œ๋กฏ์„ ์ƒ์„ฑํ•˜๊ณ  ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
rect bool True ๋งŒ์•ฝ True๋Š” ์ผ๊ด„ ์ฒ˜๋ฆฌ์— ์ง์‚ฌ๊ฐํ˜• ์ถ”๋ก ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŒจ๋”ฉ์„ ์ค„์ด๊ณ  ์ž ์žฌ์ ์œผ๋กœ ์†๋„์™€ ํšจ์œจ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.
split str 'val' ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ถ„ํ• ์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค(val, test๋˜๋Š” train). ์„ฑ๋Šฅ ํ‰๊ฐ€๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์„ธ๊ทธ๋จผํŠธ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
project str None ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์ถœ๋ ฅ์ด ์ €์žฅ๋˜๋Š” ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
name str None ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์‹คํ–‰์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋กœ๊ทธ ๋ฐ ์ถœ๋ ฅ์ด ์ €์žฅ๋˜๋Š” ํ”„๋กœ์ ํŠธ ํด๋” ๋‚ด์— ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
verbose bool False ๋งŒ์•ฝ True๋ฅผ ํด๋ฆญํ•˜๋ฉด ํด๋ž˜์Šค๋ณ„ ๋ฉ”ํŠธ๋ฆญ ๋ฐ ์ถ”๊ฐ€ ๋””๋ฒ„๊น… ์ •๋ณด๋ฅผ ํฌํ•จํ•˜์—ฌ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ํ”„๋กœ์„ธ์Šค ์ค‘์— ์ž์„ธํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
save_txt bool False ๋งŒ์•ฝ True๋Š” ์ด๋ฏธ์ง€๋‹น ํ•˜๋‚˜์˜ ํŒŒ์ผ๋กœ ํƒ์ง€ ๊ฒฐ๊ณผ๋ฅผ ํ…์ŠคํŠธ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜์—ฌ ์ถ”๊ฐ€ ๋ถ„์„์ด๋‚˜ ์‚ฌ์šฉ์ž ์ง€์ • ํ›„์ฒ˜๋ฆฌ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
save_conf bool False ๋งŒ์•ฝ True๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ์ €์žฅ๋œ ํ…์ŠคํŠธ ํŒŒ์ผ์— ์‹ ๋ขฐ๋„ ๊ฐ’์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. save_txt ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋ถ„์„์— ํ•„์š”ํ•œ ๋” ์ž์„ธํ•œ ์ถœ๋ ฅ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
save_crop bool False ๋งŒ์•ฝ True๋Š” ๊ฐ์ง€๋œ ๊ฐ์ฒด์˜ ์ž˜๋ฆฐ ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•˜์—ฌ ์ง‘์ค‘๋œ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์‹œ๊ฐ์ ์œผ๋กœ ๊ฒ€์ฆํ•˜๋Š” ๋ฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
workers int 8 ๋ฐ์ดํ„ฐ ๋กœ๋“œ๋ฅผ ์œ„ํ•œ ์›Œ์ปค ์Šค๋ ˆ๋“œ ์ˆ˜์ž…๋‹ˆ๋‹ค. 0์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ๋ฉ”์ธ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์ผ๋ถ€ ํ™˜๊ฒฝ์—์„œ๋Š” ๋” ์•ˆ์ •์ ์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ์†๋„๊ฐ€ ๋Š๋ ค์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•˜๊ณ  ๊ณผ์ ํ•ฉ์„ ๊ฐ์ง€ํ•˜๊ณ  ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ์„ธ์‹ฌํ•œ ํŠœ๋‹๊ณผ ์‹คํ—˜์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

Val ๊ฐ€์ด๋“œ

๋‚ด๋ณด๋‚ด๊ธฐ ์„ค์ •

YOLO ๋ชจ๋ธ์˜ ๋‚ด๋ณด๋‚ด๊ธฐ ์„ค์ •์—๋Š” ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ชจ๋ธ์„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‚ด๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ๊ตฌ์„ฑ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„ค์ •์€ ์„ฑ๋Šฅ, ํฌ๊ธฐ ๋ฐ ํ˜ธํ™˜์„ฑ์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค. ์ฃผ์š” ์„ค์ •์—๋Š” ๋‚ด๋ณด๋‚ด๋Š” ํŒŒ์ผ ํ˜•์‹(์˜ˆ: ONNX, TensorFlow SavedModel), ๋Œ€์ƒ ์žฅ์น˜(์˜ˆ: CPU, GPU), ๋งˆ์Šคํฌ์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์˜ ์ž‘์—…๊ณผ ๋Œ€์ƒ ํ™˜๊ฒฝ์˜ ์ œ์•ฝ ์กฐ๊ฑด๋„ ๋‚ด๋ณด๋‚ด๊ธฐ ํ”„๋กœ์„ธ์Šค์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
format str 'torchscript' ๋‚ด๋ณด๋‚ธ ๋ชจ๋ธ์˜ ๋Œ€์ƒ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. 'onnx', 'torchscript', 'tensorflow'๋“ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๋ฐฐํฌ ํ™˜๊ฒฝ๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
imgsz int ๋˜๋Š” tuple 640 ๋ชจ๋ธ ์ž…๋ ฅ์— ์‚ฌ์šฉํ•  ์›ํ•˜๋Š” ์ด๋ฏธ์ง€ ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. ์ •์‚ฌ๊ฐํ˜• ์ด๋ฏธ์ง€์˜ ๊ฒฝ์šฐ ์ •์ˆ˜ ๋˜๋Š” ํŠœํ”Œ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (height, width) ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
keras bool False ์— ๋Œ€ํ•ด Keras ํ˜•์‹์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. TensorFlow SavedModel ๋กœ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•˜์—ฌ TensorFlow ์„œ๋น„์Šค ๋ฐ API์™€์˜ ํ˜ธํ™˜์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
optimize bool False TorchScript ์œผ๋กœ ๋‚ด๋ณด๋‚ผ ๋•Œ ๋ชจ๋ฐ”์ผ ์žฅ์น˜์— ๋Œ€ํ•œ ์ตœ์ ํ™”๋ฅผ ์ ์šฉํ•˜์—ฌ ๋ชจ๋ธ ํฌ๊ธฐ๋ฅผ ์ค„์ด๊ณ  ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
half bool False FP16(๋ฐ˜์ •๋ฐ€) ์–‘์žํ™”๋ฅผ ํ™œ์„ฑํ™”ํ•˜์—ฌ ๋ชจ๋ธ ํฌ๊ธฐ๋ฅผ ์ค„์ด๊ณ  ์ง€์›๋˜๋Š” ํ•˜๋“œ์›จ์–ด์—์„œ ์ถ”๋ก  ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
int8 bool False INT8 ์–‘์žํ™”๋ฅผ ํ™œ์„ฑํ™”ํ•˜์—ฌ ๋ชจ๋ธ์„ ๋”์šฑ ์••์ถ•ํ•˜๊ณ  ์ฃผ๋กœ ์—์ง€ ๋””๋ฐ”์ด์Šค์˜ ๊ฒฝ์šฐ ์ •ํ™•๋„ ์†์‹ค์„ ์ตœ์†Œํ™”ํ•˜๋ฉด์„œ ์ถ”๋ก  ์†๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค.
dynamic bool False ONNX, TensorRT ๋ฐ OpenVINO ๋‚ด๋ณด๋‚ด๊ธฐ์— ๋Œ€ํ•œ ๋™์  ์ž…๋ ฅ ํฌ๊ธฐ๋ฅผ ํ—ˆ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
simplify bool True ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ONNX ๋‚ด๋ณด๋‚ด๊ธฐ์— ๋Œ€ํ•œ ๋ชจ๋ธ ๊ทธ๋ž˜ํ”„๋ฅผ ๋‹จ์ˆœํ™”ํ•ฉ๋‹ˆ๋‹ค. onnxslim๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ฑ๋Šฅ๊ณผ ํ˜ธํ™˜์„ฑ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
opset int None ๋‹ค๋ฅธ ONNX ํŒŒ์„œ ๋ฐ ๋Ÿฐํƒ€์ž„๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด ONNX ์˜ต์…‹ ๋ฒ„์ „์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ง€์›๋˜๋Š” ์ตœ์‹  ๋ฒ„์ „์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
workspace float ๋˜๋Š” None None TensorRT ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ ์ตœ๋Œ€ ์ž‘์—… ๊ณต๊ฐ„ ํฌ๊ธฐ๋ฅผ GiB ๋‹จ์œ„๋กœ ์„ค์ •ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰๊ณผ ์„ฑ๋Šฅ์˜ ๊ท ํ˜•์„ ๋งž์ถฅ๋‹ˆ๋‹ค. None ๋ฅผ ํ†ตํ•ด ์ตœ๋Œ€ ์žฅ์น˜๊นŒ์ง€ TensorRT ๋กœ ์ž๋™ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
nms bool False ์ง€์›๋˜๋Š” ๊ฒฝ์šฐ ๋‚ด๋ณด๋‚ธ ๋ชจ๋ธ์— ๋น„์ตœ๋Œ€ ์–ต์ œ(NMS)๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ( ๋‚ด๋ณด๋‚ด๊ธฐ ํ˜•์‹ ์ฐธ์กฐ) ํƒ์ง€ ํ›„ ์ฒ˜๋ฆฌ ํšจ์œจ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
batch int 1 ๋‚ด๋ณด๋‚ด๊ธฐ ๋ชจ๋ธ ์ผ๊ด„ ์ถ”๋ก  ํฌ๊ธฐ ๋˜๋Š” ๋‚ด๋ณด๋‚ธ ๋ชจ๋ธ์ด ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ตœ๋Œ€ ์ด๋ฏธ์ง€ ์ˆ˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. predict ๋ชจ๋“œ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
device str None ๋‚ด๋ณด๋‚ผ ์žฅ์น˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค: GPU (device=0), CPU (device=cpu), ์• ํ”Œ ์‹ค๋ฆฌ์ฝ˜์˜ ๊ฒฝ์šฐ MPS (device=mps) ๋˜๋Š” DLA for NVIDIA Jetson(device=dla:0 ๋˜๋Š” device=dla:1).
data str 'coco8.yaml' ๊ฒฝ๋กœ ๋ฐ์ดํ„ฐ ์„ธํŠธ ๊ตฌ์„ฑ ํŒŒ์ผ(๊ธฐ๋ณธ๊ฐ’: coco8.yaml), ์ •๋Ÿ‰ํ™”์— ํ•„์ˆ˜์ ์ธ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

์„ธ์‹ฌํ•œ ๊ตฌ์„ฑ์„ ํ†ตํ•ด ๋‚ด๋ณด๋‚ธ ๋ชจ๋ธ์ด ์‚ฌ์šฉ ์‚ฌ๋ก€์— ์ตœ์ ํ™”๋˜๊ณ  ๋Œ€์ƒ ํ™˜๊ฒฝ์—์„œ ํšจ๊ณผ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๋ณด๋‚ด๊ธฐ ๊ฐ€์ด๋“œ

์†”๋ฃจ์…˜ ์„ค์ •

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

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
model str None Ultralytics YOLO ๋ชจ๋ธ ํŒŒ์ผ ๊ฒฝ๋กœ.
region list [(20, 400), (1260, 400)] ๊ณ„์‚ฐ ์˜์—ญ์„ ์ •์˜ํ•˜๋Š” ํฌ์ธํŠธ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค.
show_in bool True ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์— ์ธ ์นด์šดํŠธ๋ฅผ ํ‘œ์‹œํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์ œ์–ดํ•˜๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.
show_out bool True ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์— ์•„์›ƒ ์นด์šดํŠธ๋ฅผ ํ‘œ์‹œํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์ œ์–ดํ•˜๋Š” ํ”Œ๋ž˜๊ทธ์ž…๋‹ˆ๋‹ค.
analytics_type str line ๊ทธ๋ž˜ํ”„ ์œ ํ˜•, ์ฆ‰., line, bar, area๋˜๋Š” pie.
colormap int cv2.COLORMAP_JET ํžˆํŠธ๋งต์— ์‚ฌ์šฉํ•  ์ปฌ๋Ÿฌ๋งต์ž…๋‹ˆ๋‹ค.
json_file str None ๋ชจ๋“  ์ฃผ์ฐจ ์ขŒํ‘œ ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋œ JSON ํŒŒ์ผ์˜ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค.
up_angle float 145.0 '์œ„๋กœ' ํฌ์ฆˆ์— ๋Œ€ํ•œ ๊ฐ๋„ ์ž„๊ณ„๊ฐ’์ž…๋‹ˆ๋‹ค.
kpts list[int, int, int] [6, 8, 10] ์šด๋™ ๋ชจ๋‹ˆํ„ฐ๋ง์— ์‚ฌ์šฉ๋˜๋Š” ํ‚คํฌ์ธํŠธ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ‚คํฌ์ธํŠธ๋Š” ํŒ”๊ตฝํ˜€ํŽด๊ธฐ, ํ’€์—…, ์Šค์ฟผํŠธ, ๋ณต๊ทผ ์šด๋™๊ณผ ๊ฐ™์€ ์šด๋™์˜ ์–ด๊นจ, ํŒ”๊ฟˆ์น˜, ์†๋ชฉ ๋“ฑ์˜ ์‹ ์ฒด ๊ด€์ ˆ ๋˜๋Š” ๋ถ€์œ„์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.
down_angle float 90.0 '์•„๋ž˜' ํฌ์ฆˆ์— ๋Œ€ํ•œ ๊ฐ๋„ ์ž„๊ณ„๊ฐ’์ž…๋‹ˆ๋‹ค.
blur_ratio float 0.5 ํ๋ฆผ ๊ฐ•๋„์˜ ๋ฐฑ๋ถ„์œจ์„ ๋ฒ”์œ„ ๋‚ด ๊ฐ’์œผ๋กœ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. 0.1 - 1.0.
crop_dir str "cropped-detections" ์ž˜๋ฆฐ ๊ฐ์ง€๋ฅผ ์ €์žฅํ•  ๋””๋ ‰ํ„ฐ๋ฆฌ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
records int 5 ๋ณด์•ˆ ๊ฒฝ๋ณด ์‹œ์Šคํ…œ์œผ๋กœ ์ด๋ฉ”์ผ์„ ํŠธ๋ฆฌ๊ฑฐํ•˜๊ธฐ ์œ„ํ•œ ์ด ๊ฐ์ง€ ํšŸ์ˆ˜์ž…๋‹ˆ๋‹ค.
vision_point tuple[int, int] (50, 50) ๋น„์ „์•„์ด ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ์ฒด๋ฅผ ์ถ”์ ํ•˜๊ณ  ๊ฒฝ๋กœ๋ฅผ ๊ทธ๋ฆฌ๋Š” ์ง€์ ์ž…๋‹ˆ๋‹ค.
tracker str 'botsort.yaml' ์‚ฌ์šฉํ•  ์ถ”์  ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ, bytetrack.yaml ๋˜๋Š” botsort.yaml.
conf float 0.3 ํƒ์ง€ ์‹ ๋ขฐ ์ž„๊ณ„๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ’์ด ๋‚ฎ์„์ˆ˜๋ก ๋” ๋งŽ์€ ๊ฐœ์ฒด๋ฅผ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์˜คํƒ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
iou float 0.5 ์ค‘๋ณต ๊ฐ์ง€๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ธฐ ์œ„ํ•œ IoU(Intersection over Union) ์ž„๊ณ„๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
classes list None ํด๋ž˜์Šค ์ธ๋ฑ์Šค๋ณ„๋กœ ๊ฒฐ๊ณผ๋ฅผ ํ•„ํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด classes=[0, 2, 3] ์ง€์ •๋œ ํด๋ž˜์Šค๋งŒ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค.
verbose bool True ์ถ”์  ๊ฒฐ๊ณผ์˜ ํ‘œ์‹œ๋ฅผ ์ œ์–ดํ•˜์—ฌ ์ถ”์ ๋œ ๊ฐœ์ฒด์˜ ์‹œ๊ฐ์  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
device str None ์ถ”๋ก ํ•  ์žฅ์น˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ, cpu, cuda:0 ๋˜๋Š” 0). ์‚ฌ์šฉ์ž๊ฐ€ ๋ชจ๋ธ ์‹คํ–‰์„ ์œ„ํ•ด CPU, ํŠน์ • GPU, ๋˜๋Š” ๊ธฐํƒ€ ์ปดํ“จํŒ… ์žฅ์น˜ ์ค‘์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
show bool False ๋งŒ์•ฝ True๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์ด๋ฏธ์ง€ ๋˜๋Š” ๋™์˜์ƒ์ด ์ฐฝ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ๋˜๋Š” ํ…Œ์ŠคํŠธ ์ค‘์— ์ฆ‰๊ฐ์ ์ธ ์‹œ๊ฐ์  ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์„ ๋•Œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
line_width None or int None ๊ฒฝ๊ณ„ ์ƒ์ž์˜ ์„  ๋„ˆ๋น„๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ None๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ด๋ฏธ์ง€ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์„  ๋„ˆ๋น„๊ฐ€ ์ž๋™์œผ๋กœ ์กฐ์ •๋ฉ๋‹ˆ๋‹ค. ์„ ๋ช…๋„๋ฅผ ์œ„ํ•œ ์‹œ๊ฐ์  ์‚ฌ์šฉ์ž ์ง€์ • ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์†”๋ฃจ์…˜ ๊ฐ€์ด๋“œ

์ฆ๊ฐ• ์„ค์ •

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

์ธ์ˆ˜ ์œ ํ˜• ๊ธฐ๋ณธ๊ฐ’ ๋ฒ”์œ„ ์„ค๋ช…
hsv_h float 0.015 0.0 - 1.0 ์ด๋ฏธ์ง€์˜ ์ƒ‰์กฐ๋ฅผ ์ปฌ๋Ÿฌํ™˜์˜ ์ผ๋ถ€๋ถ„์œผ๋กœ ์กฐ์ •ํ•˜์—ฌ ์ƒ‰์ƒ ๊ฐ€๋ณ€์„ฑ์„ ๋„์ž…ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์กฐ๋ช… ์กฐ๊ฑด์—์„œ ๋ชจ๋ธ์„ ์ผ๋ฐ˜ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
hsv_s float 0.7 0.0 - 1.0 ์ด๋ฏธ์ง€์˜ ์ฑ„๋„๋ฅผ ์ผ๋ถ€ ๋ณ€๊ฒฝํ•˜์—ฌ ์ƒ‰์ƒ์˜ ๊ฐ•๋„์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ ์กฐ๊ฑด์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
hsv_v float 0.4 0.0 - 1.0 ์ด๋ฏธ์ง€์˜ ๊ฐ’(๋ฐ๊ธฐ)์„ ์ผ๋ถ€ ์ˆ˜์ •ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์กฐ๋ช… ์กฐ๊ฑด์—์„œ ๋ชจ๋ธ์ด ์ž˜ ์ž‘๋™ํ•˜๋„๋ก ๋•์Šต๋‹ˆ๋‹ค.
degrees float 0.0 -180 - +180 ์ง€์ •๋œ ๊ฐ๋„ ๋ฒ”์œ„ ๋‚ด์—์„œ ์ด๋ฏธ์ง€๋ฅผ ์ž„์˜๋กœ ํšŒ์ „ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๋ฐฉํ–ฅ์—์„œ ๋ฌผ์ฒด๋ฅผ ์ธ์‹ํ•˜๋Š” ๋ชจ๋ธ์˜ ๋Šฅ๋ ฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
translate float 0.1 0.0 - 1.0 ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ๊ฐ€๋กœ ๋ฐ ์„ธ๋กœ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ถ€๋ถ„์ ์œผ๋กœ ๋ณด์ด๋Š” ๋ฌผ์ฒด๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ํ•™์Šต์„ ๋•์Šต๋‹ˆ๋‹ค.
scale float 0.5 >=0.0 ๊ฒŒ์ธ ๊ณ„์ˆ˜์— ๋”ฐ๋ผ ์ด๋ฏธ์ง€์˜ ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•˜์—ฌ ์นด๋ฉ”๋ผ์—์„œ ๋‹ค์–‘ํ•œ ๊ฑฐ๋ฆฌ์— ์žˆ๋Š” ๋ฌผ์ฒด๋ฅผ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค.
shear float 0.0 -180 - +180 ์ด๋ฏธ์ง€๋ฅผ ์ง€์ •๋œ ๊ฐ๋„๋งŒํผ ์ž˜๋ผ๋‚ด์–ด ๋ฌผ์ฒด๋ฅผ ๋‹ค๋ฅธ ๊ฐ๋„์—์„œ ๋ณด๋Š” ํšจ๊ณผ๋ฅผ ๋ชจ๋ฐฉํ•ฉ๋‹ˆ๋‹ค.
perspective float 0.0 0.0 - 0.001 ์ด๋ฏธ์ง€์— ๋ฌด์ž‘์œ„ ์›๊ทผ ๋ณ€ํ™˜์„ ์ ์šฉํ•˜์—ฌ 3D ๊ณต๊ฐ„์—์„œ ๋ฌผ์ฒด๋ฅผ ์ดํ•ดํ•˜๋Š” ๋ชจ๋ธ์˜ ๋Šฅ๋ ฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
flipud float 0.0 0.0 - 1.0 ์ง€์ •๋œ ํ™•๋ฅ ๋กœ ์ด๋ฏธ์ง€๋ฅผ ๊ฑฐ๊พธ๋กœ ๋’ค์ง‘์–ด ์˜ค๋ธŒ์ ํŠธ์˜ ํŠน์„ฑ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๊ณ  ๋ฐ์ดํ„ฐ ๊ฐ€๋ณ€์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.
fliplr float 0.5 0.0 - 1.0 ์ง€์ •๋œ ํ™•๋ฅ ๋กœ ์ด๋ฏธ์ง€๋ฅผ ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋’ค์ง‘์–ด ๋Œ€์นญ ๊ฐœ์ฒด๋ฅผ ํ•™์Šตํ•˜๊ณ  ๋ฐ์ดํ„ฐ ์„ธํŠธ์˜ ๋‹ค์–‘์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
bgr float 0.0 0.0 - 1.0 ์ง€์ •๋œ ํ™•๋ฅ ๋กœ ์ด๋ฏธ์ง€ ์ฑ„๋„์„ RGB์—์„œ BGR๋กœ ์ „ํ™˜ํ•˜์—ฌ ์ž˜๋ชป๋œ ์ฑ„๋„ ์ˆœ์„œ์— ๋Œ€ํ•œ ๊ฒฌ๊ณ ์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
mosaic float 1.0 0.0 - 1.0 4๊ฐœ์˜ ํ›ˆ๋ จ ์ด๋ฏธ์ง€๋ฅผ ํ•˜๋‚˜๋กœ ๊ฒฐํ•ฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์žฅ๋ฉด ๊ตฌ์„ฑ๊ณผ ๋ฌผ์ฒด ์ƒํ˜ธ ์ž‘์šฉ์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ์žฅ๋ฉด ์ดํ•ด์— ๋งค์šฐ ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค.
mixup float 0.0 0.0 - 1.0 ๋‘ ์ด๋ฏธ์ง€์™€ ํ•ด๋‹น ๋ ˆ์ด๋ธ”์„ ํ˜ผํ•ฉํ•˜์—ฌ ํ•ฉ์„ฑ ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋ ˆ์ด๋ธ” ๋…ธ์ด์ฆˆ์™€ ์‹œ๊ฐ์  ๊ฐ€๋ณ€์„ฑ์„ ๋„์ž…ํ•˜์—ฌ ๋ชจ๋ธ์˜ ์ผ๋ฐ˜ํ™” ๋Šฅ๋ ฅ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
copy_paste float 0.0 0.0 - 1.0 ๊ฐ์ฒด ์ธ์Šคํ„ด์Šค๋ฅผ ๋Š˜๋ฆฌ๊ณ  ๊ฐ์ฒด ์˜คํด๋ฃจ์ „์„ ํ•™์Šตํ•˜๋Š” ๋ฐ ์œ ์šฉํ•œ ๊ฐ์ฒด๋ฅผ ์ด๋ฏธ์ง€ ์ „์ฒด์— ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์„ธ๋ถ„ํ™” ๋ ˆ์ด๋ธ”์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
copy_paste_mode str 'flip' - ์˜ ์˜ต์…˜ ์ค‘ ๋ณต์‚ฌ-๋ถ™์—ฌ๋„ฃ๊ธฐ ํ™•๋Œ€ ๋ฐฉ๋ฒ• ์„ ํƒ("flip", "mixup").
auto_augment str 'randaugment' - ๋ฏธ๋ฆฌ ์ •์˜๋œ ์ฆ๊ฐ• ์ •์ฑ…์„ ์ž๋™์œผ๋กœ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค(randaugment, autoaugment, augmix), ์‹œ๊ฐ์  ๊ธฐ๋Šฅ์„ ๋‹ค์–‘ํ™”ํ•˜์—ฌ ๋ถ„๋ฅ˜ ์ž‘์—…์— ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.
erasing float 0.4 0.0 - 0.9 ๋ถ„๋ฅ˜ ํ›ˆ๋ จ ์ค‘์— ์ด๋ฏธ์ง€์˜ ์ผ๋ถ€๋ฅผ ์ž„์˜๋กœ ์ง€์›Œ ๋ชจ๋ธ์ด ๋œ ๋ถ„๋ช…ํ•œ ํŠน์ง•์— ์ง‘์ค‘ํ•˜์—ฌ ์ธ์‹ํ•˜๋„๋ก ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค.
crop_fraction float 1.0 0.1 - 1.0 ๋ถ„๋ฅ˜ ์ด๋ฏธ์ง€๋ฅผ ์ผ๋ถ€ ํฌ๊ธฐ๋กœ ์ž˜๋ผ๋‚ด์–ด ์ค‘์‹ฌ ํŠน์ง•์„ ๊ฐ•์กฐํ•˜๊ณ  ๋ฌผ์ฒด ํฌ๊ธฐ์— ๋งž๊ฒŒ ์กฐ์ •ํ•˜์—ฌ ๋ฐฐ๊ฒฝ์˜ ์‚ฐ๋งŒํ•จ์„ ์ค„์ž…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์„ธํŠธ ๋ฐ ์ž‘์—… ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋„๋ก ์ด๋Ÿฌํ•œ ์„ค์ •์„ ์กฐ์ •ํ•˜์„ธ์š”. ๋‹ค์–‘ํ•œ ๊ฐ’์œผ๋กœ ์‹คํ—˜ํ•ด ๋ณด๋ฉด ์ตœ์ƒ์˜ ๋ชจ๋ธ ์„ฑ๋Šฅ์„ ์œ„ํ•œ ์ตœ์ ์˜ ์ฆ๊ฐ• ์ „๋žต์„ ์ฐพ๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋กœ๊น…, ์ฒดํฌํฌ์ธํŠธ ๋ฐ ํ”Œ๋กœํŒ… ์„ค์ •

๋กœ๊น…, ์ฒดํฌํฌ์ธํŠธ, ํ”Œ๋กœํŒ… ๋ฐ ํŒŒ์ผ ๊ด€๋ฆฌ๋Š” YOLO ๋ชจ๋ธ์„ ํ›ˆ๋ จํ•  ๋•Œ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค:

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

์ด๋Ÿฌํ•œ ์ธก๋ฉด์„ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋ฉด ์ง„ํ–‰ ์ƒํ™ฉ์„ ์ถ”์ ํ•˜๊ณ  ๋””๋ฒ„๊น… ๋ฐ ์ตœ์ ํ™”๋ฅผ ๋” ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ธ์ˆ˜ ๊ธฐ๋ณธ๊ฐ’ ์„ค๋ช…
project 'runs' ํŠธ๋ ˆ์ด๋‹ ์‹คํ–‰์„ ์ €์žฅํ•  ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์‹คํ–‰์€ ๋ณ„๋„์˜ ํ•˜์œ„ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
name 'exp' ์‹คํ—˜ ์ด๋ฆ„์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด YOLO ๊ฐ ์‹คํ–‰์— ๋Œ€ํ•ด ์ด ์ด๋ฆ„์„ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค(์˜ˆ exp, exp2)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฎ์–ด์“ฐ๊ธฐ๋ฅผ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
exist_ok False ๊ธฐ์กด ์‹คํ—˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๋ฎ์–ด์“ธ์ง€ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. True ๋ฎ์–ด์“ฐ๊ธฐ๋ฅผ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค; False ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
plots False ํŠธ๋ ˆ์ด๋‹ ๋ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ํ”Œ๋กฏ์˜ ์ƒ์„ฑ ๋ฐ ์ €์žฅ์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ์„ค์ • True ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์†์‹ค ๊ณก์„ ๊ณผ ๊ฐ™์€ ํ”Œ๋กฏ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค, ์ •๋ฐ€๋„-๋ฆฌ์ฝœ ๊ณก์„ , ์ƒ˜ํ”Œ ์˜ˆ์ธก์„ ํ†ตํ•ด ์„ฑ๋Šฅ์„ ์‹œ๊ฐ์ ์œผ๋กœ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
save False ํ›ˆ๋ จ ์ฒดํฌํฌ์ธํŠธ์™€ ์ตœ์ข… ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ค์ • True ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ธ ์ƒํƒœ๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ์ €์žฅํ•˜์—ฌ ๊ต์œก์„ ์žฌ๊ฐœํ•˜๊ฑฐ๋‚˜ ๋ชจ๋ธ์„ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๊ต์œก ์ค‘์— YOLO ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?

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

YOLO ๋ชจ๋ธ ์ •ํ™•๋„๋ฅผ ์œ„ํ•œ ์ฃผ์š” ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

์ •ํ™•๋„์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์ฃผ์š” ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  • ๋ฐฐ์น˜ ํฌ๊ธฐ(batch): ํฌ๊ธฐ๊ฐ€ ํด์ˆ˜๋ก ํ›ˆ๋ จ์ด ์•ˆ์ •ํ™”๋  ์ˆ˜ ์žˆ์ง€๋งŒ ๋” ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ํ•™์Šต๋ฅ  (lr0): ์š”๊ธˆ์ด ์ž‘์„์ˆ˜๋ก ๋ฏธ์„ธ ์กฐ์ •์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ˆ˜๋ ด ์†๋„๊ฐ€ ๋Š๋ ค์ง‘๋‹ˆ๋‹ค.
  • ๋ชจ๋ฉ˜ํ…€ (momentum): ๊ทธ๋ผ๋””์–ธํŠธ ๋ฒกํ„ฐ๋ฅผ ๊ฐ€์†ํ•˜์—ฌ ์ง„๋™์„ ๊ฐ์‡ ์‹œํ‚ต๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€ ํฌ๊ธฐ(imgsz): ํฌ๊ธฐ๊ฐ€ ํด์ˆ˜๋ก ์ •ํ™•๋„๋Š” ํ–ฅ์ƒ๋˜์ง€๋งŒ ๊ณ„์‚ฐ ๋ถ€ํ•˜๊ฐ€ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์„ธํŠธ์™€ ํ•˜๋“œ์›จ์–ด์— ๋”ฐ๋ผ ์ด๋ฅผ ์กฐ์ •ํ•˜์„ธ์š”. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ›ˆ๋ จ ์„ค์ •์—์„œ ํ™•์ธํ•˜์„ธ์š”.

YOLO ๋ชจ๋ธ ํ•™์Šต์„ ์œ„ํ•œ ํ•™์Šต๋ฅ ์€ ์–ด๋–ป๊ฒŒ ์„ค์ •ํ•˜๋‚˜์š”?

ํ•™์Šต ์†๋„(lr0)๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. 0.01 ๋˜๋Š” 0.001 ์— ๋Œ€ํ•œ ์•„๋‹ด ์˜ตํ‹ฐ๋งˆ์ด์ €. ๋ฉ”ํŠธ๋ฆญ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ํ•„์š”์— ๋”ฐ๋ผ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”์‚ฌ์ธ ํ•™์Šต๋ฅ  ์Šค์ผ€์ค„๋Ÿฌ(cos_lr) ๋˜๋Š” ์›Œ๋ฐ์—…(warmup_epochs, warmup_momentum). ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ธฐ์ฐจ ๊ฐ€์ด๋“œ.

YOLO ๋ชจ๋ธ์˜ ๊ธฐ๋ณธ ์ถ”๋ก  ์„ค์ •์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

๊ธฐ๋ณธ ์„ค์ •์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค:

  • ์‹ ๋ขฐ๋„ ์ž„๊ณ„๊ฐ’(conf=0.25): ํƒ์ง€์— ๋Œ€ํ•œ ์ตœ์†Œ ์‹ ๋ขฐ๋„.
  • IoU ์ž„๊ณ„๊ฐ’(iou=0.7): For ๋น„์ตœ๋Œ€ ์–ต์ œ(NMS).
  • ์ด๋ฏธ์ง€ ํฌ๊ธฐ(imgsz=640): ์ž…๋ ฅ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์žฅ์น˜ (device=None): CPU ๋˜๋Š” GPU ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

์ „์ฒด ๊ฐœ์š”๋Š” ์˜ˆ์ธก ์„ค์ • ๋ฐ ์˜ˆ์ธก ๊ฐ€์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

YOLO ๋ชจ๋ธ๊ณผ ํ˜ผํ•ฉ ์ •๋ฐ€ ๊ต์œก์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

ํ˜ผํ•ฉ ์ •๋ฐ€๋„ ๊ต์œก (amp=True)๋Š” ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ด๊ณ  FP16 ๋ฐ FP32๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ›ˆ๋ จ ์†๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค. ์ตœ์‹  GPU์— ์œ ๋ฆฌํ•˜๋ฉฐ, ํฐ ์ •ํ™•๋„ ์†์‹ค ์—†์ด ๋” ํฐ ๋ชจ๋ธ๊ณผ ๋” ๋น ๋ฅธ ๊ณ„์‚ฐ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ธฐ์ฐจ ๊ฐ€์ด๋“œ.

๐Ÿ“…1 ๋…„ ์ „ ์ƒ์„ฑ๋จ โœ๏ธ ์—…๋ฐ์ดํŠธ๋จ 0์ผ ์ „

๋Œ“๊ธ€