Learn to Export to TFLite Edge TPU Format From YOLO11 Model
L'implementazione di modelli di computer vision su dispositivi con potenza di calcolo limitata, come i sistemi mobili o embedded, può essere complicata. L'utilizzo di un formato di modello ottimizzato per ottenere prestazioni più veloci semplifica il processo. Il formato di modello TensorFlow Lite Edge TPU o TFLite Edge TPU è stato progettato per consumare pochissima energia e offrire prestazioni elevate alle reti neurali.
The export to TFLite Edge TPU format feature allows you to optimize your Ultralytics YOLO11 models for high-speed and low-power inferencing. In this guide, we'll walk you through converting your models to the TFLite Edge TPU format, making it easier for your models to perform well on various mobile and embedded devices.
Perché dovresti esportare in TFLite Edge TPU?
Exporting models to TensorFlow Edge TPU makes machine learning tasks fast and efficient. This technology suits applications with limited power, computing resources, and connectivity. The Edge TPU is a hardware accelerator by Google. It speeds up TensorFlow Lite models on edge devices. The image below shows an example of the process involved.
The Edge TPU works with quantized models. Quantization makes models smaller and faster without losing much accuracy. It is ideal for the limited resources of edge computing, allowing applications to respond quickly by reducing latency and allowing for quick data processing locally, without cloud dependency. Local processing also keeps user data private and secure since it's not sent to a remote server.
Caratteristiche principali di TFLite Edge TPU
Ecco le caratteristiche principali che rendono TFLite Edge TPU un ottimo modello di formato per gli sviluppatori:
Prestazioni ottimizzate sui dispositivi Edge: TFLite Edge TPU raggiunge prestazioni di rete neurale ad alta velocità grazie alla quantizzazione, all'ottimizzazione del modello, all'accelerazione hardware e all'ottimizzazione del compilatore. La sua architettura minimalista contribuisce a ridurre le dimensioni e l'efficienza dei costi.
Elevato throughput computazionale: TFLite Edge TPU combina un'accelerazione hardware specializzata e un'esecuzione runtime efficiente per ottenere un elevato throughput di calcolo. È particolarmente adatto per l'implementazione di modelli di apprendimento automatico con requisiti di prestazioni rigorosi su dispositivi edge.
Efficient Matrix Computations: The TensorFlow Edge TPU is optimized for matrix operations, which are crucial for neural network computations. This efficiency is key in machine learning models, particularly those requiring numerous and complex matrix multiplications and transformations.
Opzioni di distribuzione con TFLite Edge TPU
Before we jump into how to export YOLO11 models to the TFLite Edge TPU format, let's understand where TFLite Edge TPU models are usually used.
TFLite Edge TPU offre diverse opzioni di implementazione per i modelli di apprendimento automatico, tra cui:
Distribuzione su dispositivo: TensorFlow I modelli di Edge TPU possono essere distribuiti direttamente su dispositivi mobili ed embedded. La distribuzione su dispositivo permette ai modelli di essere eseguiti direttamente sull'hardware, eliminando la necessità di connettersi al cloud.
Edge Computing con le TPU del cloud TensorFlow : In scenari in cui i dispositivi edge hanno capacità di elaborazione limitate, le TPU Edge di TensorFlow possono scaricare le attività di inferenza su server cloud dotati di TPU.
Hybrid Deployment: A hybrid approach combines on-device and cloud deployment and offers a versatile and scalable solution for deploying machine learning models. Advantages include on-device processing for quick responses and cloud computing for more complex computations.
Exporting YOLO11 Models to TFLite Edge TPU
You can expand model compatibility and deployment flexibility by converting YOLO11 models to TensorFlow Edge TPU.
Installazione
Per installare il pacchetto richiesto, esegui:
For detailed instructions and best practices related to the installation process, check our Ultralytics Installation guide. While installing the required packages for YOLO11, if you encounter any difficulties, consult our Common Issues guide for solutions and tips.
Utilizzo
Before diving into the usage instructions, it's important to note that while all Ultralytics YOLO11 models are available for exporting, you can ensure that the model you select supports export functionality here.
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 maggiori dettagli sulle opzioni di esportazione supportate, visita la pagina di documentazione diUltralytics sulle opzioni di distribuzione.
Deploying Exported YOLO11 TFLite Edge TPU Models
After successfully exporting your Ultralytics YOLO11 models to TFLite Edge TPU format, you can now deploy them. The primary and recommended first step for running a TFLite Edge TPU model is to use the YOLO("model_edgetpu.tflite") method, as outlined in the previous usage code snippet.
Tuttavia, per istruzioni approfondite sulla distribuzione dei modelli TFLite Edge TPU , consulta le seguenti risorse:
Coral Edge TPU on a Raspberry Pi with Ultralytics YOLO11: Discover how to integrate Coral Edge TPUs with Raspberry Pi for enhanced machine learning capabilities.
Esempi di codice: Accedi a esempi pratici di implementazione di TensorFlow Edge TPU per dare il via ai tuoi progetti.
Esegui l'inferenza sul bordo TPU con Python: Scopri come utilizzare l'API TensorFlow Lite Python per le applicazioni Edge TPU , comprese le linee guida per la configurazione e l'utilizzo.
Sommario
In this guide, we've learned how to export Ultralytics YOLO11 models to TFLite Edge TPU format. By following the steps mentioned above, you can increase the speed and power of your computer vision applications.
Per ulteriori dettagli sull'utilizzo, visita il sito ufficiale di Edge TPU .
Also, for more information on other Ultralytics YOLO11 integrations, please visit our integration guide page. There, you'll discover valuable resources and insights.
DOMANDE FREQUENTI
How do I export a YOLO11 model to TFLite Edge TPU format?
To export a YOLO11 model to TFLite Edge TPU format, you can follow these steps:
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 maggiori dettagli sull'esportazione dei modelli in altri formati, consulta la nostra guida all'esportazione.
What are the benefits of exporting YOLO11 models to TFLite Edge TPU?
Exporting YOLO11 models to TFLite Edge TPU offers several benefits:
- Prestazioni ottimizzate: Ottieni prestazioni di rete neurale ad alta velocità con un consumo energetico minimo.
- Latenza ridotta: Elaborazione rapida dei dati in locale senza la necessità di dipendere dal cloud.
- Maggiore privacy: L'elaborazione locale mantiene i dati dell'utente privati e sicuri.
This makes it ideal for applications in edge computing, where devices have limited power and computational resources. Learn more about why you should export.
Posso distribuire i modelli TFLite Edge TPU su dispositivi mobili ed embedded?
Sì, i modelli di TensorFlow Lite Edge TPU possono essere distribuiti direttamente su dispositivi mobili ed embedded. Questo approccio di distribuzione permette ai modelli di essere eseguiti direttamente sull'hardware, offrendo un'inferenza più veloce ed efficiente. Per esempi di integrazione, consulta la nostra guida sull'implementazione di Coral Edge TPU su Raspberry Pi.
Quali sono i casi d'uso più comuni dei modelli TFLite Edge TPU ?
I casi d'uso più comuni dei modelli TFLite Edge TPU includono:
- Telecamere intelligenti: Migliorare l'analisi delle immagini e dei video in tempo reale.
- Dispositivi IoT: Abilitare la casa intelligente e l'automazione industriale.
- Assistenza sanitaria: Accelerazione dell'imaging e della diagnostica medica.
- Vendita al dettaglio: Migliorare la gestione dell'inventario e l'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 dei modelli TFLite Edge TPU ?
Se riscontri dei problemi durante l'esportazione o la distribuzione dei modelli TFLite Edge TPU , consulta la nostra guida sui problemi comuni per trovare suggerimenti per la risoluzione dei problemi. Questa guida illustra i problemi e le soluzioni più comuni per aiutarti a garantire un funzionamento senza intoppi. Per ulteriore assistenza, visita il nostro Centro assistenza.