metadata
license: mit
base_model:
- Ultralytics/YOLO11
tags:
- printed-circuit-boards
library_name: ultralytics
model-index:
- name: ultralytics/yolo11
results:
- task:
type: image-segmentation
metrics:
- type: f1
value: 99.8%
name: F1 Score
- type: mAP50
value: 99.5%
name: mAP50
metrics:
- f1 - 99.8%
- mAP50 - 99.5%
PCB Detection
There are a lot of models for detecting components within a Printed Circuit Board (PCB), but not as many for detecting which pixels (if any) in an image contain the PCB itself. Being able to determine if and where a PCB is in an image is useful for calculating its size to estimate carbon footprint, as a preprocessing step for detecting components, to limit the amount of image more expensive PCB defect detection models have to process, and more.
Read more here.
Usage
- Download
the model weights
pip install ultralytics
- Run the model with
yolo task=segment mode=predict model=[path to model weights] source=[path to test image]
from the terminal or with Python:
from ultralytics import YOLO
model = YOLO('[path to model weights]')
results = model.predict('[path/to/test/image.jpg]')
Results
Segmentation
Dataset | Precision | Recall | F1 Score | mAP50 | mAP50-95 |
---|---|---|---|---|---|
Training | 100.0% | 23.2% | 37.7% | 39.4% | 39.1% |
Validation | 99.9% | 39.6% | 56.7% | 51.7% | 51.0% |
Test | 99.7% | 100% | 99.8% | 99.5% | 95.6% |
Object Detection
Dataset | Precision | Recall | F1 Score | mAP50 | mAP50-95 |
---|---|---|---|---|---|
Training | 100.0% | 23.2% | 37.7% | 39.4% | 39.3% |
Validation | 99.9% | 39.6% | 56.7% | 51.7% | 51.3% |
Test | 99.7% | 100% | 99.8% | 99.5% | 94.5% |