Vai al contenuto

Impara a esportare nel formato TFLite Edge TPU da un modello YOLO11

Distribuire modelli di computer vision su dispositivi con potenza di calcolo limitata, come sistemi mobili o embedded, può essere complicato. L'utilizzo di un formato di modello ottimizzato per prestazioni più veloci semplifica il processo. Il formato di modello TensorFlow Lite Edge TPU o TFLite Edge TPU è progettato per utilizzare una potenza minima fornendo al contempo prestazioni elevate per le reti neurali.

La funzionalità di esportazione in formato TFLite Edge TPU consente di ottimizzare i modelli Ultralytics YOLO11 per un'inferenza ad alta velocità e a basso consumo energetico. In questa guida, ti accompagneremo nella conversione dei tuoi modelli nel formato TFLite Edge TPU, semplificando le prestazioni dei tuoi modelli su vari dispositivi mobili e embedded.

Perché Dovresti Esportare in TFLite Edge TPU?

L'esportazione di modelli in TensorFlow Edge TPU rende le attività di machine learning veloci ed efficienti. Questa tecnologia è adatta per applicazioni con potenza, risorse di calcolo e connettività limitate. L'Edge TPU è un acceleratore hardware di Google. Accelera i modelli TensorFlow Lite sui dispositivi edge. L'immagine seguente mostra un esempio del processo coinvolto.

TFLite Edge TPU

L'Edge TPU funziona con modelli quantizzati. La quantizzazione rende i modelli più piccoli e veloci senza perdere molta precisione. È ideale per le risorse limitate dell'edge computing, consentendo alle applicazioni di rispondere rapidamente riducendo la latenza e consentendo una rapida elaborazione dei dati in locale, senza dipendenza dal cloud. L'elaborazione locale mantiene inoltre i dati degli utenti privati e sicuri poiché non vengono inviati a un server remoto.

Caratteristiche Chiave di TFLite Edge TPU

Ecco le caratteristiche principali che rendono TFLite Edge TPU un'ottima scelta di formato di modello per gli sviluppatori:

  • Prestazioni ottimizzate su dispositivi edge: Il TFLite Edge TPU raggiunge prestazioni di rete neurale ad alta velocità attraverso la quantizzazione, l'ottimizzazione del modello, l'accelerazione hardware e l'ottimizzazione del compilatore. La sua architettura minimalista contribuisce alle sue dimensioni ridotte e all'efficienza dei costi.

  • Elevata velocità di elaborazione: TFLite Edge TPU combina l'accelerazione hardware specializzata e l'esecuzione runtime efficiente per ottenere un'elevata velocità di elaborazione. È adatto per la distribuzione di modelli di machine learning con severi requisiti di prestazioni su dispositivi edge.

  • Calcoli di matrici efficienti: TensorFlow Edge TPU è ottimizzato per le operazioni di matrici, che sono cruciali per i calcoli delle reti neurali. Questa efficienza è fondamentale nei modelli di machine learning, in particolare quelli che richiedono numerose e complesse moltiplicazioni e trasformazioni di matrici.

Opzioni di Distribuzione con TFLite Edge TPU

Prima di passare a come esportare i modelli YOLO11 nel formato TFLite Edge TPU, cerchiamo di capire dove vengono solitamente utilizzati i modelli TFLite Edge TPU.

TFLite Edge TPU offre varie opzioni di distribuzione per i modelli di machine learning, tra cui:

  • Distribuzione sul dispositivo: I modelli TensorFlow Edge TPU possono essere distribuiti direttamente su dispositivi mobili e embedded. La distribuzione sul dispositivo consente ai modelli di essere eseguiti direttamente sull'hardware, eliminando la necessità di connettività cloud.

  • Edge Computing con Cloud TensorFlow TPU: In scenari in cui i dispositivi edge hanno capacità di elaborazione limitate, TensorFlow Edge TPU può scaricare le attività di inferenza su server cloud dotati di TPU.

  • Distribuzione ibrida: Un approccio ibrido combina la distribuzione sul dispositivo e sul cloud e offre una soluzione versatile e scalabile per la distribuzione di modelli di machine learning. I vantaggi includono l'elaborazione sul dispositivo per risposte rapide e il cloud computing per calcoli più complessi.

Esportazione di Modelli YOLO11 in TFLite Edge TPU

Puoi espandere la compatibilità del modello e la flessibilità di distribuzione convertendo i modelli YOLO11 in TensorFlow Edge TPU.

Installazione

Per installare il pacchetto richiesto, esegui:

Installazione

# Install the required package for YOLO11
pip install ultralytics

Per istruzioni dettagliate e best practice relative al processo di installazione, consulta la nostra guida all'installazione di Ultralytics. Durante l'installazione dei pacchetti richiesti per YOLO11, in caso di difficoltà, consulta la nostra guida ai problemi comuni per soluzioni e suggerimenti.

Utilizzo

Tutti i modelli Ultralytics YOLO11 sono progettati per supportare l'export out-of-the-box, rendendo facile la loro integrazione nel tuo flusso di lavoro di deployment preferito. Puoi visualizzare l'elenco completo dei formati di export supportati e le opzioni di configurazione per scegliere la configurazione migliore per la tua applicazione.

Utilizzo

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

Argomenti di esportazione

Argomento Tipo Predefinito Descrizione
format str 'edgetpu' Formato di destinazione per il modello esportato, che definisce la compatibilità con vari ambienti di distribuzione.
imgsz int oppure tuple 640 Dimensione dell'immagine desiderata per l'input del modello. Può essere un numero intero per immagini quadrate o una tupla (height, width) per dimensioni specifiche.
device str None Specifica il dispositivo per l'esportazione: CPU (device=cpu).

Suggerimento

Assicurati di utilizzare una macchina x86 Linux quando esporti in EdgeTPU.

Per maggiori dettagli sul processo di esportazione, visita la pagina della documentazione di Ultralytics sull'esportazione.

Distribuzione di Modelli YOLO11 TFLite Edge TPU Esportati

Dopo aver esportato con successo i tuoi modelli Ultralytics YOLO11 in formato TFLite Edge TPU, ora puoi distribuirli. Il primo passo principale e consigliato per l'esecuzione di un modello TFLite Edge TPU è utilizzare il metodo YOLO("model_edgetpu.tflite"), come indicato nel precedente snippet di codice di utilizzo.

Tuttavia, per istruzioni approfondite sulla distribuzione dei tuoi modelli TFLite Edge TPU, dai un'occhiata alle seguenti risorse:

Riepilogo

In questa guida, abbiamo imparato come esportare i modelli Ultralytics YOLO11 nel formato TFLite Edge TPU. Seguendo i passaggi sopra menzionati, puoi aumentare la velocità e la potenza delle tue applicazioni di computer vision.

Per ulteriori dettagli sull'utilizzo, visita il sito web ufficiale di Edge TPU.

Inoltre, per maggiori informazioni su altre integrazioni di Ultralytics YOLO11, visita la nostra pagina della guida all'integrazione. Lì scoprirai risorse e approfondimenti preziosi.

FAQ

Come posso esportare un modello YOLO11 in formato TFLite Edge TPU?

Per esportare un modello YOLO11 nel formato TFLite Edge TPU, puoi seguire questi passaggi:

Utilizzo

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TFLite Edge TPU format
model.export(format="edgetpu")  # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Load the exported TFLite Edge TPU model
edgetpu_model = YOLO("yolo11n_full_integer_quant_edgetpu.tflite")

# Run inference
results = edgetpu_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TFLite Edge TPU format
yolo export model=yolo11n.pt format=edgetpu # creates 'yolo11n_full_integer_quant_edgetpu.tflite'

# Run inference with the exported model
yolo predict model=yolo11n_full_integer_quant_edgetpu.tflite source='https://ultralytics.com/images/bus.jpg'

Per dettagli completi sull'esportazione di modelli in altri formati, consulta la nostra guida all'esportazione.

Quali sono i vantaggi dell'esportazione di modelli YOLO11 in TFLite Edge TPU?

L'esportazione di modelli YOLO11 in TFLite Edge TPU offre diversi vantaggi:

  • Prestazioni ottimizzate: Ottieni prestazioni elevate della rete neurale con un consumo energetico minimo.
  • Latenza ridotta: Elaborazione rapida dei dati locali senza la necessità di dipendenza dal cloud.
  • Maggiore privacy: L'elaborazione locale mantiene i dati dell'utente privati e sicuri.

Questo lo rende ideale per le applicazioni nell'edge computing, dove i dispositivi hanno risorse energetiche e computazionali limitate. Scopri di più sul perché dovresti esportare.

Posso distribuire modelli TFLite Edge TPU su dispositivi mobili e embedded?

Sì, i modelli TensorFlow Lite Edge TPU possono essere implementati direttamente su dispositivi mobili e embedded. Questo approccio di implementazione consente ai modelli di essere eseguiti direttamente sull'hardware, offrendo un'inferenza più rapida ed efficiente. Per esempi di integrazione, consulta la nostra guida sull'implementazione di Coral Edge TPU su Raspberry Pi.

Quali sono alcuni casi d'uso comuni per i modelli TFLite Edge TPU?

I casi d'uso comuni per i modelli TFLite Edge TPU includono:

  • Telecamere intelligenti: Miglioramento dell'analisi di immagini e video in tempo reale.
  • Dispositivi IoT: Abilitazione della domotica e dell'automazione industriale.
  • Sanità: Accelerazione dell'imaging medico e della diagnostica.
  • Vendita al dettaglio: Miglioramento della gestione dell'inventario e dell'analisi del comportamento dei clienti.

Queste applicazioni beneficiano delle elevate prestazioni e del basso consumo energetico dei modelli TFLite Edge TPU. Scopri di più sugli scenari di utilizzo.

Come posso risolvere i problemi durante l'esportazione o la distribuzione di modelli TFLite Edge TPU?

Se riscontri problemi durante l'esportazione o l'implementazione di modelli TFLite Edge TPU, consulta la nostra guida ai problemi comuni per suggerimenti sulla risoluzione dei problemi. Questa guida tratta i problemi comuni e le soluzioni per aiutarti a garantire un funzionamento regolare. Per ulteriore supporto, visita il nostro Centro assistenza.



📅 Creato 1 anno fa ✏️ Aggiornato 4 mesi fa

Commenti