PCB ๊ฒฐํ•จ ๊ฒ€์ถœ ๋ชจ๋ธ (YOLO11s)

PCB(์ธ์‡„ํšŒ๋กœ๊ธฐํŒ) ์‚ฌ์ง„์—์„œ ๊ฒฐํ•จ 8์ข…์˜ ์œ„์น˜์™€ ์œ ํ˜•์„ ์ฐพ๋Š” YOLO11s ๊ฒ€์ถœ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. ๊ตญ๋ฆฝ์ฐฝ์›๋Œ€ AI Agent ํ•ด์ปคํ†ค TOPIC 01 ใ€Œ๋ถ€ํ’ˆ ๋ถˆ๋Ÿ‰ ์‚ฌ์ง„ ๋ถ„์„ AI Agentใ€์˜ ์‚ฌ์ง„ ๋ถ„์„ ๋‹จ๊ณ„(STEP 1) ์šฉ์œผ๋กœ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

YOLO11s object detector for 8 bare-PCB defect types, trained on a leakage-free re-split of a public Roboflow dataset.

ํด๋ž˜์Šค

id ํด๋ž˜์Šค ํ•œ๊ธ€๋ช… ์‹ฌ๊ฐ๋„(์ง€์‹๋ฒ ์ด์Šค)
0 falsecopper ์ž”์—ฌ ๋™๋ฐ• major
1 missinghole ํ™€ ๋ˆ„๋ฝ critical
2 mousebite ๋งˆ์šฐ์Šค๋ฐ”์ดํŠธ major
3 opencircuit ๋‹จ์„  critical
4 pinhole ํ•€ํ™€ minor
5 scratch ์Šคํฌ๋ž˜์น˜ minor
6 shortcircuit ๋‹จ๋ฝ critical
7 spur ์Šคํผ major

๊ฒฐํ•จ๋ณ„ ์›์ธ ํ›„๋ณดยท์กฐ์น˜ยทํŒ์ • ๊ธฐ์ค€๊ฐ’์€ defect_taxonomy.yaml ์— ์žˆ์Šต๋‹ˆ๋‹ค (์ผ๋ฐ˜ PCB ์ œ์กฐ ์ง€์‹ ๊ธฐ๋ฐ˜ ์ดˆ์•ˆ).

์„ฑ๋Šฅ (test 980์žฅ, ๊ฒฐํ•จ 5,082๊ฐœ)

ํ•™์Šตยท๊ฒ€์ฆ์— ์“ฐ์ง€ ์•Š์€ test ์„ธํŠธ์ด๋ฉฐ, ๊ฐ™์€ ์›๋ณธ ๋ณด๋“œ ์‚ฌ์ง„์˜ ์กฐ๊ฐ์ด ๋ถ„ํ• ์„ ๋„˜์ง€ ์•Š๋„๋ก ๋‚˜๋ˆˆ ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค.

ํด๋ž˜์Šค Precision Recall mAP50 mAP50-95
์ „์ฒด 0.911 0.868 0.886 0.474
falsecopper 0.993 0.958 0.981 0.580
missinghole 0.814 0.851 0.793 0.355
mousebite 0.972 0.890 0.920 0.508
opencircuit 0.939 0.835 0.893 0.474
pinhole 0.910 0.916 0.908 0.396
scratch 0.818 0.875 0.905 0.678
shortcircuit 0.869 0.765 0.797 0.340
spur 0.974 0.852 0.890 0.464
  • ๊ฒฐํ•จ๋ผ๋ฆฌ ํ—ท๊ฐˆ๋ฆฌ๋Š” ๊ฒฝ์šฐ๋Š” 3% ์ดํ•˜. ์˜ค๋ฅ˜ ๋Œ€๋ถ€๋ถ„์€ ๋†“์นจ(shortcircuit 12%, spur 8%).
  • val ์„ธํŠธ: mAP50 0.879.

test confusion matrix

์˜ˆ์‹œ (์™ผ์ชฝ ์ •๋‹ต ๋ผ๋ฒจ / ์˜ค๋ฅธ์ชฝ ์˜ˆ์ธก)

scratch shortcircuit

์‚ฌ์šฉ๋ฒ•

from huggingface_hub import hf_hub_download
from ultralytics import YOLO

path = hf_hub_download("rltjr/pcb-defect-yolo11s", "pcb-defect-yolo11s.pt")
model = YOLO(path)
results = model.predict("board.jpg", imgsz=640, conf=0.25)
results[0].show()

๋น„๊ณต๊ฐœ ์ €์žฅ์†Œ๋ผ๋ฉด ๋จผ์ € hf auth login ์œผ๋กœ ๋กœ๊ทธ์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ถŒ์žฅ ํŒ์ • ๊ทœ์น™ (์—์ด์ „ํŠธ์šฉ): ์‹ ๋ขฐ๋„ 0.25 ์ด์ƒ ๊ฒ€์ถœ ์—†์Œ โ†’ ์ •์ƒ, 0.25~0.5 ๋งŒ ์žˆ์Œ โ†’ ์žฌ๊ฒ€ ํ•„์š”, 0.5 ์ด์ƒ โ†’ ๋ถˆ๋Ÿ‰.

ํ•™์Šต ์ •๋ณด

ํ•ญ๋ชฉ ๊ฐ’
๊ธฐ๋ฐ˜ ๋ชจ๋ธ yolo11s.pt (COCO ์‚ฌ์ „ํ•™์Šต)
๋ฐ์ดํ„ฐ rltjr/pcb-defect-v2 train 7,693 / val 993 / test 980
์„ค์ • 100 epochs, imgsz 640, batch 8, ๊ทธ ์™ธ Ultralytics ๊ธฐ๋ณธ๊ฐ’
ํ™˜๊ฒฝ Ultralytics 8.4.177, PyTorch 2.14.1+cu126, GTX 1060 6GB, ์•ฝ 10.3์‹œ๊ฐ„

training curves

ํ•œ๊ณ„

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

๋ผ์ด์„ ์Šค ยท ์ถœ์ฒ˜

  • ๋ชจ๋ธ ๊ฐ€์ค‘์น˜: Ultralytics YOLO ๋กœ ํ•™์Šต โ†’ AGPL-3.0.
  • ํ•™์Šต ๋ฐ์ดํ„ฐ: Roboflow Universe bare-pcb-defects/obj-detection-pcb-defects-yolov8 v3 (CC BY 4.0) ๋ฅผ ์žฌ๋ถ„ํ• . ์› ๋ฐ์ดํ„ฐ๋Š” PKU-Market-PCB ๊ธฐ๋ฐ˜์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.
Downloads last month
24
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Dataset used to train rltjr/pcb-defect-yolo11s

Collection including rltjr/pcb-defect-yolo11s