logo
OpenMV
Camera domestica
Applicazioni
Negozio
AI
Canali di vendita
Supporto
OpenMVOpenMV
ScudiScudi
LenteLente
RoboticaRobotica
LibroLibro
VideoVideo
ScaricamentoScaricamento
DocumentiDocumenti
ForoForo
OpenMV.ioOpenMV.io
GithubGithub

Rilevamento dei punti obiettivo della rete neurale addestrata autonomamente tramite OpenMV – Riconoscimento dei segnali stradali in ambienti stradali reali

Nel campo della visione artificiale, l’intelligenza artificiale svolge due tipi di compiti molto comuni: la classificazione e il rilevamento degli oggetti.

Categoria:Determinare a quale categoria appartiene l’immagine, ad esempio se si tratta di un gatto o di un cane.

Rilevamento degli oggetti:Utilizzato per individuare la posizione, il numero e le dimensioni di più obiettivi diversi presenti nell’immagine.

Nei precedenti tutorial video abbiamo illustrato come utilizzare OpenMV4 Plus per addestrare in tempo reale una rete neurale finalizzata alla classificazione di diversi oggetti; tale rete è in grado di determinare in tempo reale se un’immagine presente nel campo visivo di OpenMV corrisponde a un determinato oggetto, ad esempio se un volto umano indossa una mascherina, ma non è in grado di fornire le coordinate della posizione del volto o della mascherina, né il numero complessivo di volti rilevati.

Poiché il rilevamento degli oggetti è molto più complesso e richiede una potenza di calcolo molto maggiore rispetto alla classificazione, tale funzionalità è estremamente rara nel campo dei microcontrollori. La MCU principale di OpenMV è lo STM32H7; attualmente abbiamo integrato su OpenMV una nuova funzionalità che consente l’esecuzione di compiti analoghi al rilevamento degli oggetti direttamente su microcontrollori, con prestazioni eccezionali.

交通标志识别教程-多个目标的识别

Oggi illustreremoAddestramento della rilevazione dei segnali stradali in un ambiente stradale reale, per rilevare i segnali stradali presenti sulle nostre strade realiad esempio divieto di suonare il clacson, divieto di sosta e limite di velocità di 80 km/h, anziché un ambiente di laboratorio privo di interferenze.

È possibile visualizzare l’intero contenuto del progetto all’indirizzo seguente, che include tutto il codice e i modelli: https://book.openmv.cc/project/traffic-sign.html

È noto che l’ambiente reale è estremamente complesso, in particolare quello stradale, con numerosi fattori di disturbo. Abbiamo acquisito immagini di segnaletica stradale nell’ambiente reale utilizzando dispositivi come smartphone e abbiamo addestrato il modello sul sito web online EdgeImpulse del nostro partner OpenMV, etichettando circa 270 immagini; il tempo di addestramento richiesto è stato di soli 10 minuti. L’accuratezza del modello addestrato, espressa come F1 score, raggiunge il 92 %, mentre il frame rate di esecuzione su OpenMV è pari a 10 fotogrammi al secondo, garantendo un funzionamento estremamente fluido e un’elevata accuratezza.

Gli utenti possono addestrare il sistema per rilevare qualsiasi oggetto desiderato, seguendo i nostri tutorial video: ad esempio numeri diversi, frutti diversi, segnali diversi, componenti diversi o anche qualsiasi altro oggetto irregolare specifico. È possibile ottenere il conteggio, le coordinate e il nome della categoria dell’oggetto rilevato.

Attenzione:Questo tutorial video illustra la funzione di rilevamento dei punti obiettivo basata su reti neurali, che è compatibile non solo con OpenMV4 H7 Plus, ma anche con OpenMV4 H7; infatti, i modelli addestrati di rilevamento dei punti obiettivo FOMO sono di dimensioni contenute, offrono ottime prestazioni e occupano soltanto alcune decine di kilobyte: pertanto, anche se la memoria operativa di OpenMV4 H7 è inferiore a quella di OpenMV4 H7 Plus, è comunque possibile addestrare un modello leggermente più piccolo da eseguire su OpenMV4.

Di seguito viene illustrato brevemente il principio:

La principale decisione progettuale relativa al rilevamento dei punti obiettivo FOMO su OpenMV si basa sull’idea che molti problemi di rilevamento oggetti non richiedono effettivamente le dimensioni degli oggetti, ma soltanto la loro posizione nell’immagine. Una volta nota la posizione degli oggetti, è possibile eseguire operazioni successive, ad esempio far muovere un veicolo controllato da OpenMV verso l’obiettivo rilevato, far atterrare un drone in un punto specifico o controllare un braccio robotico per afferrare un determinato oggetto.

Il modello FOMO è un modello appositamente progettato da EdgeImpulse per ambienti a microcontrollore; a differenza della rilevazione tradizionale di oggetti, esso è in grado di individuare soltanto la posizione e il numero di più oggetti, senza fornire le loro dimensioni specifiche.

Il principio fondamentale del modello FOMO è estremamente semplice e flessibile. Innanzitutto, l’immagine viene suddivisa in blocchi di 8×8 pixel ciascuno. Per un’immagine con risoluzione 96×96, si ottiene quindi una griglia di 12×12 celle; per un’immagine con risoluzione 360×360, si ottiene invece una griglia di 40×40 celle. Successivamente, la classificazione dell’immagine viene eseguita in modo indipendente su ciascuna cella.

Rispetto a YOLO V5 o MobileNet SSD, FOMO offre prestazioni significativamente migliori su un gran numero di piccoli oggetti. Il rilevamento dei punti obiettivo FOMO è 30 volte più veloce rispetto a MobileNet SSD.

Se gli oggetti da rilevare hanno dimensioni simili — ad esempio, se le dimensioni dei marker da identificare sono pressoché uniformi e non presentano differenze estreme tra un oggetto molto grande e uno molto piccolo — l’efficacia di FOMO risulta migliore.

OpenMV utilizza EdgeImpulse per addestrare online una rete neurale per il rilevamento di oggetti, suddiviso principalmente nei seguenti passaggi: acquisizione e caricamento del dataset di immagini, annotazione degli oggetti, addestramento, test del modello, distribuzione.

* Acquisizione di un dataset di immagini: acquisizione di immagini specifiche di oggetti presenti nell’ambiente reale in cui verrà effettuata l’identificazione. Le immagini vengono acquisite nello stesso ambiente in cui avverrà l’identificazione; pertanto, l’ambiente reale utilizzato per l’addestramento e quello reale utilizzato per il rilevamento sono sostanzialmente identici, ottenendo così risultati migliori.

* Obiettivo dell’annotazione: delimitare ciascun oggetto da rilevare nel nostro insieme di dati e associarlo correttamente al relativo nome, al fine di facilitare il successivo addestramento nonché il rilevamento della posizione e del nome degli oggetti.

* Modello di addestramento: una volta completata l’annotazione, il modello viene addestrato utilizzando i parametri della rete neurale convoluzionale progettati da noi.

* Modello di test: eseguiamo test sul modello addestrato; qualora i risultati non siano soddisfacenti, incrementiamo opportunamente il set di dati di addestramento o modificiamo i parametri di addestramento, quindi procediamo con un ulteriore addestramento fino a ottenere un modello soddisfacente.

* Distribuzione: è sufficiente copiare i file del modello addestrato sull’unità USB integrata di OpenMV per eseguirli.

Di seguito viene illustrato il processo specifico:

01. Raccolta e caricamento del dataset di immagini

I. Innanzitutto accediamo al sito web edgeimpulse.com, selezioniamo “Accedi”, inseriamo il nome del nuovo progetto e scegliamo “Immagini” → “Classifica più oggetti”

交通标志识别教程-新建项目.

Due. Selezionare l’immagine da caricare. Esistono diversi modi per ottenere il dataset relativo all’immagine:

1. Acquisizione in tempo reale di immagini tramite l’IDE OpenMV. Utilizzare lo strumento «Editor di dataset» integrato nell’IDE OpenMV per creare un nuovo dataset e acquisire immagini in tempo reale; per maggiori dettagli, consultare il nostro precedente tutorial video sulla classificazione degli oggetti e sul riconoscimento delle mascherine.

交通标志识别教程-.实时采集图像

2. Immagini scaricate da Internet o scattate direttamente con uno smartphone. È preferibile che corrispondano all’ambiente reale in cui verrà effettuata l’ispezione. Abbiamo preparato un insieme di quattro-cinquecento immagini di segnali stradali, tra cui divieto di sosta, divieto di fare rumore e limite di velocità a 80 km/h; ogni immagine è stata acquisita direttamente su strada reale. Questo dataset è disponibile per il download sul nostro repository GitHub e sul sito web della guida.

02. Obiettivi dell’annotazione

Per ogni categoria vengono caricati circa 100 immagini; una volta completato il caricamento, è necessario procedere all’annotazione delle immagini, indicando la posizione e la categoria degli oggetti da riconoscere.

交通标志识别教程-上传图片
交通标志识别教程-标记物体

03. Addestramento del modello

Impostare i parametri dell’addestramento progettuale, modificare la risoluzione in 128×128 e selezionare tutti i parametri predefiniti; quindi fare clic su Salva.

交通标志识别教程-训练模型1.

Generazione delle funzionalità: i tre colori rappresentano rispettivamente tre indicatori.

交通标志识别教程-训练模型2

Impostare i parametri per l’addestramento del rilevamento degli oggetti. Il numero predefinito di epoche di addestramento è 60, il tasso di apprendimento è 0,001 e la percentuale del set di validazione è il 20%. Selezionare l’opzione per l’aumento dei dati. Per il modello di apprendimento trasferito, è possibile scegliere come predefinito MobileNetV2 0,35 o MobileNetV2 0,1. (Nota: non è possibile utilizzare SSD, poiché SSD non è eseguibile su OpenMV.)

Selezionare Avvia addestramento. Al termine dell’addestramento, il modello di rete neurale ottenuto presenta un punteggio F1 pari al 91,2%; è possibile salvare la versione corrente.

交通标志识别教程-训练模型3

Selezionare l’archiviazione, inserire la descrizione e scegliere Salva.

交通标志识别教程-训练模型4

04. Distribuzione del modello

Esportare il file del modello addestrato. È sufficiente esportare la libreria; selezionare OpenMV e fare clic su Build per avviare la distribuzione ed esportazione del modello.

交通标志识别教程-部署模型1

Scaricherà automaticamente il modello che abbiamo esportato; qui è visualizzato il modello addestrato con le nostre 300 immagini, completando così l’intero processo di addestramento.

交通标志识别教程-部署模型2

05. Esecuzione del modello

Eseguire il modello su OpenMV:

Connettere OpenMV Plus, salvare i tre file addestrati nella memoria USB integrata di OpenMV e aprire il file ei_object_detection.py nell’IDE di OpenMV. Fare clic su Esegui; i risultati dell’esecuzione verranno visualizzati nel terminale seriale.

交通标志识别教程-运行模型1
交通标志识别教程-运行模型2

Questa funzione è eseguibile anche su OpenMV4. Poiché OpenMV4 non dispone di SDRAM esterna, la memoria disponibile è inferiore; pertanto, riducendo le dimensioni del modello, è possibile farlo funzionare su OpenMV4.

Esistono due metodi per ridurre le dimensioni del modello:

I. Ridurre la risoluzione di addestramento, passando da una risoluzione di 128×128 a una risoluzione di 96×96.

Due. Modificare il modello di apprendimento trasferito utilizzato, sostituendo MobileNetV2 0.35 con MobileNetV2 0.1.

Infine, è sufficiente caricare il nuovo file addestrato su OpenMV4 ed eseguirlo.

Questo conclude la nostra guida al rilevamento dei punti di interesse. Non vediamo l’ora di vedere i vostri risultati!

Articoli correlati

机房/配电房/单元门敞开识别

Sentinella AI basata su OpenMV: avviso automatico in caso di mancata chiusura di luoghi critici

Rileva automaticamente se la porta di un luogo critico rimane aperta per un periodo prolungato e ne fornisce tempestivamente un avviso.

越界识别

Allarme in caso di superamento dei confini da parte delle persone; OpenMV interpreta il «senso di sicurezza dei confini»

Rilevamento del superamento di persone o attrezzature oltre una linea di allerta virtuale.

占道经营识别

Arriva il «Sistema di gestione urbana basato sull’intelligenza artificiale»: sistema automatico di riconoscimento degli operatori commerciali che occupano abusivamente la strada, realizzato sulla piattaforma OpenMV

Riconoscimento automatico delle attività commerciali che occupano il suolo pubblico, per supportare la gestione quotidiana della città.

煤气罐违规摆放识别

Cilindri del gas posizionati in modo non sicuro? Utilizzare OpenMV per attivare automaticamente un avviso di pericolo

Rilevazione automatica delle posizioni non conformi di collocazione delle bombole del gas, al fine di identificare in anticipo i potenziali rischi per la sicurezza del gas.

绝缘手套佩戴识别

Lavoro sotto tensione senza guanti isolanti? OpenMV emette immediatamente un allarme!

Riconoscimento automatico dell’indossamento dei guanti isolanti da parte degli operatori, per supportare operazioni sicure.

铝板缺陷识别

Utilizzo della telecamera intelligente OpenMV per l’identificazione in tempo reale dei difetti sulla superficie delle lastre di alluminio

Riconoscimento in tempo reale di difetti quali graffi e ammaccature sulla superficie delle lamiere di alluminio, per supportare il controllo della qualità.

Categorie popolari

Lingua e regione
Copyright © 2025 星瞳科技SingTown
粤ICP备17045162号