Autori: Yang Yuxue, Lin Weiyang, Wang Bo, Li Huiming
Per affrontare le sfide legate all'elevato costo computazionale e alla scarsa adattabilità in ambienti complessi durante il rilevamento di difetti su circuiti stampati (PCB) su dispositivi edge, viene proposto un sistema di rilevamento automatico leggero progettato per l'implementazione edge. Il sistema è basato sull'architettura YOLOv8n, che integra tecniche di apprendimento a trasferimento, pruning del modello e distillazione della conoscenza per ridurre significativamente la complessità del modello e migliorare l'adattabilità ad ambienti con campioni di piccole dimensioni e risorse limitate. Per gestire condizioni estreme nell'acquisizione video edge, come illuminazione variabile, vibrazioni del trasportatore, basso contrasto e occlusione dell'obiettivo, il sistema mantiene sia prestazioni che stabilità in tempo reale, dimostrando un'elevata robustezza. Esperimenti su un set di dati pubblico di difetti su PCB mostrano che il sistema proposto supera i modelli mainstream esistenti in termini di accuratezza di rilevamento e velocità di inferenza, dimostrando in particolare una robustezza superiore e un valore pratico negli scenari di rilevamento edge in tempo reale. Inoltre, un'interfaccia utente grafica (GUI) sviluppata utilizzando PySide6 verifica ulteriormente l'implementazione e la praticità del sistema in ambienti industriali, fornendo una soluzione efficace per ottenere un rilevamento della visione edge efficiente, stabile e a basso consumo con promettenti prospettive applicative.
Parole chiave: Internet delle cose (IoT); rilevamento di difetti PCB; visione artificiale; YOLOv8; dispositivo edge; PySide6
In quanto componente fondamentale e indispensabile dei prodotti elettronici, la qualità di fabbricazione dei circuiti stampati (PCB) influisce direttamente sulle prestazioni e sull'affidabilità operativa dell'intero sistema. Il rilevamento dei difetti sui PCB mira a identificare tempestivamente e accuratamente possibili difetti durante il processo di produzione, fungendo da fase chiave del controllo qualità nella produzione elettronica. Tuttavia, negli ambienti industriali pratici, i difetti sui PCB presentano caratteristiche complesse, come tipologie diverse, piccole dimensioni e distribuzioni spaziali incerte. I metodi di rilevamento tradizionali basati sull'ispezione manuale o sulla logica basata su regole sono soggettivi e limitati, il che li rende incapaci di soddisfare i moderni requisiti industriali di elevata precisione, efficienza e automazione.
Con il rapido progresso delle tecnologie di visione artificiale e deep learning, le reti neurali convoluzionali (CNN) progettate per il riconoscimento delle immagini hanno ottenuto un notevole successo nelle attività di rilevamento di oggetti, promuovendo la trasformazione del rilevamento di difetti su PCB dall'estrazione manuale di caratteristiche all'apprendimento intelligente di caratteristiche. Tuttavia, i modelli di deep learning tradizionali devono ancora affrontare due importanti sfide nell'implementazione industriale: (1) Per ottenere una maggiore accuratezza, i modelli tendono a diventare sempre più complessi, con conseguenti elevati costi computazionali e basse velocità di inferenza, che ostacolano il rilevamento in tempo reale su dispositivi edge con risorse limitate; (2) A causa della scarsità di campioni di addestramento specifici per i difetti su PCB, i modelli addestrati su piccoli set di dati sono soggetti a overfitting, riducendo così le prestazioni di generalizzazione. Inoltre, a differenza delle attività generali di rilevamento di oggetti, il rilevamento di difetti su PCB è caratterizzato da target a grana fine, deboli indizi semantici e forti interferenze da rumore di fondo, il che impone requisiti più rigorosi sulla robustezza del modello e sull'adattabilità all'implementazione.
To address these challenges, this study designs and implements a lightweight and highly robust PCB defect detection system for edge computing environments. Specifically, the system is built upon the YOLOv8n framework, leveraging its compact structure and efficient inference capability to significantly reduce computational costs. During model training, transfer learning is adopted to migrate visual features pre-trained on large-scale general datasets to the PCB defect detection task, alleviating the difficulty of small-sample learning. Furthermore, model pruning and knowledge distillation are introduced to optimize the detection model’s architecture, compress its parameter scale, and improve deployment efficiency and stability on edge devices. To tackle challenges such as variable lighting, motion blur, and frame loss in industrial video acquisition, the system integrates a robust frame preprocessing and frame-level prediction stabilization module, enhancing reliability from a system-level perspective. Finally, a graphical user interface (GUI) based on PySide6 is developed to provide an intuitive and user-friendly experience, simplifying the operation workflow.
The research presented in this paper offers a practical solution for PCB defect detection on resource-constrained edge computing devices and provides new insights into model lightweighting and robustness optimization under small-sample conditions.
Nel rilevamento dei difetti dei PCB, la scarsità di dati è un fattore chiave che limita le prestazioni del deep learning. A causa degli elevati costi di annotazione e della scarsità di dati sui difetti, ottenere una generalizzazione efficace con campioni di piccole dimensioni è diventato un obiettivo di ricerca importante.
Per mitigare questo problema, il transfer learning viene utilizzato per migrare le caratteristiche apprese da attività sorgente su larga scala all'attività di rilevamento del target, accelerando la convergenza e migliorando le prestazioni su campioni di piccole dimensioni. I modelli YOLO pre-addestrati su dataset di oggetti generali possono fungere da "modelli insegnanti" per guidare i "modelli studenti", migliorando il rilevamento di target con difetti di piccole dimensioni.

Figura 1. Principio dell'apprendimento per trasferimento
Adottiamo YOLOv8n, il membro più leggero della famiglia YOLOv8 [ 9 ] . Con circa 3,2×10 6 parametri e 8,7×10 9 FLOP, offre un'inferenza ad alta velocità adatta all'implementazione edge. Ulteriore efficienza e adattabilità sono ottenute tramite:
(1) Potatura strutturale: potare gli strati convoluzionali ridondanti e i canali nella rete YOLOv8n per ridurre i parametri e i calcoli.
(2) Distillazione della conoscenza: limitare il “modello studente” leggero attraverso la guida di un “modello insegnante” ad alte prestazioni, migliorando la precisione del rilevamento.
(3) Aumento dei dati: regolare i parametri di miglioramento nello spazio colore HSV per aumentare la diversità dei campioni e la robustezza del modello.
Come mostrato nella Figura 2, il processo di addestramento del modello include la preparazione dei dati, la configurazione degli iperparametri, l'addestramento e la valutazione del modello e l'ottimizzazione del pruning. Se le metriche di valutazione del modello non soddisfano le aspettative, i parametri vengono automaticamente regolati e l'addestramento e il pruning vengono ripetuti fino al raggiungimento di prestazioni di rilevamento soddisfacenti.

Figura 2 Processo di addestramento del modello
Per soddisfare i requisiti di facilità d'uso e praticità di implementazione in ambienti industriali reali, è stato progettato e implementato un sistema integrato di rilevamento dei difetti dei PCB utilizzando il framework PySide6. Il sistema supporta sia la modalità di input immagine che video, offrendo una forte interattività e un'esperienza utente intuitiva, adatta all'implementazione su dispositivi edge. L'interfaccia di sistema offre le seguenti funzionalità:
(1) Supporto per più sorgenti di input, tra cui singole immagini, cartelle di immagini batch e flussi video;
(2) Parametri di rilevamento personalizzabili (soglia di confidenza, soglia IoU) e opzioni di visualizzazione (mostra etichette di classe, livelli di confidenza, ecc.);
(3) Visualizzazione in tempo reale e archiviazione nel database dei risultati del rilevamento;
(4) Funzioni estese come il recupero dei record di rilevamento e la navigazione delle informazioni del riquadro di delimitazione.
Il processo di rilevamento del sistema include l'interazione con l'interfaccia utente, l'analisi della sorgente di input, la gestione del thread di rilevamento di immagini/video e l'aggiornamento dei risultati. Come mostrato in Figura 3, dopo che l'utente ha selezionato il tipo di input e impostato i parametri, il sistema avvia automaticamente il thread di elaborazione dell'immagine o del video corrispondente per eseguire il rilevamento fotogramma per fotogramma e visualizzare i risultati.
Gli eventi chiave del sistema includono eventi di comando di rilevamento, eventi di aggiornamento della destinazione, eventi di selezione dell'elenco di rilevamento ed eventi di gestione dei thread in background, come descritto nella Tabella 1.
Gli esperimenti utilizzano il set di dati PKU-Market-PCB rilasciato dall'Università di Pechino [ 10 ] . È generato sinteticamente con 1.386 immagini ad alta risoluzione e sei tipi di difetti: Missing_hole, Mouse_bite, Open_circuit, Short, Spur e Spurious_copper. I difetti tipici nel set di dati sono mostrati nella Figura 4.

Figura 3 Tempistica di rilevamento del sistema
Tabella 1. Eventi principali del sistema
| Evento | Tipo | Descrizione |
| Rilevamento | Clic | Avviare il thread di elaborazione delle immagini o il thread di elaborazione dei media in base al tipo di rilevamento. |
| Thread di elaborazione dei media | — | Leggere in sequenza le immagini, eseguire il rilevamento e aggiornare il risultato e l'elenco dei riquadri di delimitazione. |
| Thread di elaborazione delle immagini | — | Leggere in sequenza le immagini dall'elenco delle immagini, eseguire il rilevamento, aggiornare e visualizzare i risultati e l'elenco dei riquadri di delimitazione e rimuovere le immagini elaborate dall'elenco. |
| Oggetto di destinazione | Modifica | Visualizza il risultato del rilevamento del riquadro di delimitazione selezionato. |
| Lista | Clic | Visualizza il risultato del rilevamento del riquadro di delimitazione selezionato e mostra l'immagine di rilevamento corrispondente. |

Figura 4 Difetti tipici sulla superficie del PCB
Per garantire la validità scientifica e la robustezza dell'addestramento del modello, l'intero set di dati è stato suddiviso in set di addestramento, convalida e test in un rapporto 8:1:1. Nel set di addestramento, i target difettosi sono relativamente piccoli e distribuiti in modo sparso, aumentando la difficoltà di percezione e localizzazione di oggetti di piccole dimensioni e imponendo requisiti più elevati al sistema di rilevamento.

Figura 5. Informazioni sull'annotazione dei dati del set di addestramento
Per valutare in modo completo le prestazioni del modello di rilevamento dei difetti, vengono utilizzate le seguenti metriche di valutazione:
(1) Precisione: misura la proporzione di veri positivi tra tutti i positivi previsti, riflettendo la resistenza del modello ai falsi rilevamenti.
(2) Richiamo: misura la capacità del modello di identificare tutti i campioni veramente positivi, riflettendo la resistenza ai rilevamenti mancati.
(3) Punteggio F1: la media armonica di precisione e richiamo, che riflette la capacità di rilevamento complessiva del modello.
(4) mAP (precisione media media): la media della precisione media in tutte le classi, utilizzata per valutare le prestazioni complessive di classificazione e localizzazione del modello.
Le formule per calcolare Precisione, Richiamo, Punteggio F1 e mAP sono le seguenti:

TP rappresenta il numero di campioni positivi classificati correttamente; FP rappresenta il numero di campioni negativi classificati erroneamente come positivi; FN rappresenta il numero di campioni positivi classificati erroneamente come negativi; c è il numero totale di categorie di immagini; i è il numero di rilevamenti; e AP è l'accuratezza media di una singola categoria.
Il sistema di rilevamento funziona su una piattaforma Ubuntu 23.04 dotata di un processore Intel Core i5-11400F (12 thread), 16 GB di memoria e una GPU NVIDIA GeForce RTX 3060 (12 GB di VRAM). La piattaforma di distribuzione dell'inferenza utilizza Windows 10 con un processore Intel i7-6600U e 8 GB di memoria, mentre la distribuzione edge è implementata sulla scheda di sviluppo edge computing NLE-AI800 prodotta da Beijing Newland Era Technology Co., Ltd. Come mostrato nella Figura 6, l'interfaccia del sistema di rilevamento supporta sia input di immagini che video, fornendo vari parametri di rilevamento configurabili e la visualizzazione dei risultati in tempo reale.

Figura 6 Interfaccia del sistema di rilevamento dei difetti
(1) Rilevamento batch di immagini Il rilevamento batch è stato eseguito su una cartella denominata "img2video" contenente immagini di difetti. I risultati del rilevamento sono mostrati nella Figura 7. La cartella include 66 immagini di difetti e, scorrendole una alla volta, sono stati rilevati un totale di 269 difetti. Gli utenti possono visualizzare ciascun difetto facendo clic sulla voce corrispondente nell'elenco dei risultati, che evidenzia immediatamente il difetto nella finestra di visualizzazione delle immagini. La Figura 8 mostra come facendo clic sul 235° difetto rilevato (un foro mancante) il sistema possa individuare e visualizzare rapidamente la regione dell'immagine corrispondente.

Figura 7. Risultati del rilevamento delle cartelle batch
(2) Rilevamento del flusso video Il sistema supporta la modalità di rilevamento video fotogramma per fotogramma. Come mostrato nella Figura 9, è stato analizzato un video composto da 50 immagini difettose e sono stati identificati 282 difetti. Il sistema supporta anche la localizzazione dei difetti e il frame backtracking, rendendolo adatto a scenari di ispezione di qualità nei sistemi di telecamere delle linee di produzione.

Figura 8. Informazioni dettagliate sui risultati del rilevamento dei difetti dell'immagine

Figura 9. Risultati del rilevamento video
(3) Rilevamento di condizioni estreme Per valutare la robustezza del sistema in condizioni estreme, sono stati condotti test su immagini affette da "sfocatura", "occlusione" e "offset". Come mostrato nella Figura 10, il sistema ha identificato con successo la maggior parte dei difetti anche in queste condizioni difficili, indicando una forte adattabilità ambientale.
(4) Rilevamento dei dispositivi edge Come mostrato nella Figura 11, i risultati del rilevamento derivanti dall'implementazione dei dispositivi edge in contesti industriali reali dimostrano la capacità del sistema di identificare difetti tipici come cortocircuiti, circuiti aperti e fori mancanti. Il dispositivo raggiunge prestazioni in tempo reale mantenendo un'elevata precisione, verificando l'implementazione del modello proposto in scenari a basso consumo.
The image size was set to 1,280×720 pixels, the batch size to 8, the number of training epochs to 300, and the initial learning rate to 0.01. As shown in Table 2, training concluded at the 206th epoch, and the optimal result was achieved at the 106th epoch. The inference time was 11.5 ms. The model achieved an average Precision of 0.98, an average Recall of 0.961, and an average mAP of 0.982 across all defect classes. Performance on Spurious_copper was slightly weaker, while Missing_hole and Short were predicted more accurately.

Figure 10. Detection results under extreme conditions

Figure 11. Edge detection results
Model prediction results are shown in Table 3 and are broadly consistent with the training-stage outcomes. Figure 12 compares correctly labeled defect images (rows 1 and 2) with predicted defect images (rows 3 and 4). The visualizations indicate strong overall performance, though a few missed detections (e.g., row 3, image 2) and false detections (e.g., row 4, image 3) are present.
Precision and Recall are two key metrics for classification performance. Precision measures the proportion of true positives among predicted positives, while Recall measures the proportion of true positives correctly identified. Figure 13 shows how Precision, Recall, and F1-score vary with the confidence threshold. As seen in Figure 13(a), Precision increases with the threshold and reaches 1.0 across all classes at a threshold of 0.73; however, beyond this point Recall drops sharply. Based on the F1-score, a confidence threshold of 0.73 yields the best overall performance. The confusion matrix in Figure 14 visualizes predictions, showing strong overall performance but relatively weaker detection for classes with subtle inter-class differences (e.g., Spurious_copper and Spur).
Table 2 Model Training Results
| Defect Type | Total Images / pcs | Category Annotation Quantity | Precision | Recall | mAP@50 | mAP@50:95 |
| all | 66 | 280 | 0.980 | 0.961 | 0.982 | 0.563 |
| Missing_hole | 66 | 45 | 0.991 | 1.000 | 0.995 | 0.658 |
| Short | 66 | 45 | 0.999 | 1.000 | 0.995 | 0.562 |
| Mouse_bite | 66 | 49 | 1.000 | 0.938 | 0.992 | 0.593 |
| Spurious_copper | 66 | 43 | 0.940 | 0.953 | 0.985 | 0.477 |
| Open_circuit | 66 | 49 | 0.970 | 0.959 | 0.968 | 0.589 |
| Spur | 66 | 49 | 0.978 | 0.913 | 0.957 | 0.497 |
Table 3 Model Prediction Results
| Type | Total Images / pcs | Category Annotation Quantity | Precision | Recall | mAP@50 | mAP@50:95 |
| all | 66 | 280 | 0.967 | 0.968 | 0.982 | 0.565 |
| Missing_hole | 66 | 45 | 0.988 | 1.000 | 0.995 | 0.667 |
| Short | 66 | 45 | 0.993 | 1.000 | 0.995 | 0.563 |
| Mouse_bite | 66 | 49 | 0.979 | 0.939 | 0.992 | 0.586 |
| Spurious_copper | 66 | 43 | 0.917 | 0.953 | 0.986 | 0.479 |
| Open_circuit | 66 | 49 | 0.965 | 0.959 | 0.968 | 0.596 |
| Spur | 66 | 49 | 0.959 | 0.957 | 0.956 | 0.500 |
To further validate performance, the proposed model was compared against mainstream detectors on the public Peking University PCB defect dataset, with comparative data drawn from [11].As shown in Table 4, the proposed model achieves superior prediction accuracy and mean average precision (mAP) compared with the baselines.

Figure 12. Comparison between correctly labeled defect images and predicted defect images

Figure 13 System performance evaluation results

Figure 14. Visualization of evaluation results using the confusion matrix method
Tabella 4 Risultati sperimentali comparativi (%)
| Modello | Buco mancante | Morso di topo | circuito aperto | Corto | Sperone | Rame spurio | mappa |
| R-CNN più veloce | 91.7 | 78.2 | 80.6 | 84,8 | 74,8 | 85.1 | 82,5 |
| YOLOx | 99,5 | 91.2 | 92,5 | 90.1 | 86.3 | 94,4 | 92.3 |
| PCB-YOLO | 99,5 | 90.7 | 99,5 | 98,5 | 90,9 | 96.7 | 95,9 |
| FCM-YOLO | 99,5 | 98.1 | 98,9 | 97,8 | 97,4 | 98,5 | 98.3 |
| Modello proposto | 98,8 | 97,9 | 96,5 | 99,3 | 95,9 | 91.7 | 96.2 |
Per soddisfare la duplice esigenza di prestazioni in tempo reale e vincoli di risorse negli scenari di edge computing, questo articolo ha progettato e implementato un sistema leggero di rilevamento dei difetti dei PCB basato su YOLOv8n. Integrando tecniche di transfer learning, model pruning e knowledge distillation, il sistema riduce significativamente la complessità del modello e migliora le prestazioni di rilevamento in ambienti complessi e con campioni di piccole dimensioni. L'interfaccia utente grafica (GUI) sviluppata con PySide6 consente l'input e l'interazione multimodali sia per immagini che per video, offrendo un'eccellente adattabilità ingegneristica e flessibilità di implementazione.
Gli esperimenti condotti su un set di dati pubblico dimostrano che il modello proposto supera i metodi tradizionali esistenti in termini di accuratezza di rilevamento, velocità di inferenza e robustezza. Mantiene la stabilità anche in condizioni difficili come occlusione, sfocatura e vibrazioni del dispositivo. Gli esperimenti di implementazione su dispositivi edge reali confermano ulteriormente la fattibilità del sistema in condizioni di basso consumo e bassa latenza, evidenziandone il forte potenziale per applicazioni pratiche e future implementazioni.
Diritto d'autore libero