Procedural Synthetic Data Pipeline for Surface Scratch Detection
A procedural rendering pipeline utilizes BlenderProc to create extensive annotated synthetic training datasets aimed at detecting surface scratches. This pipeline allows for adjustable material appearances, various camera settings, and domain randomization, resulting in automatic annotations in COCO format. Four training methodologies—synthetic-only, real-only, mixed, and fine-tuning from synthetic weights—were assessed on two objects with distinct material characteristics, employing three lightweight detectors suitable for edge deployment: YOLOX, YOLO26, and LW-DETR. Results showed that fine-tuning from synthetic weights consistently surpassed real-only training, while mixed training successfully maintained performance when real data was limited.
Key facts
- The pipeline uses BlenderProc for rendering.
- Configurable material appearance, camera modes, and domain randomization are included.
- Annotations are in COCO format.
- Four training strategies were evaluated: synthetic-only, real-only, mixed, and fine-tuning from synthetic weights.
- Two objects with different material properties were used.
- Three detectors were tested: YOLOX, YOLO26, and LW-DETR.
- Fine-tuning from synthetic weights outperformed real-only training.
- Mixed training recovers performance under scarce real-data conditions.
Entities
—