Export to TF.js Model Format From a YOLO11 Model Format
Deploying machine learning models directly in the browser or on Node.js can be tricky. You'll need to make sure your model format is optimized for faster performance so that the model can be used to run interactive applications locally on the user's device. The TensorFlow.js, or TF.js, model format is designed to use minimal power while delivering fast performance.
The 'export to TF.js model format' feature allows you to optimize your Ultralytics YOLO11 models for high-speed and locally-run object detection inference. In this guide, we'll walk you through converting your models to the TF.js format, making it easier for your models to perform well on various local browsers and Node.js applications.
Por que razão deves exportar para TF.js?
Exportar os teus modelos de aprendizagem automática para TensorFlow.js, desenvolvido pela equipa TensorFlow como parte do ecossistema TensorFlow mais vasto, oferece inúmeras vantagens para a implementação de aplicações de aprendizagem automática. Ajuda a melhorar a privacidade e a segurança do utilizador, mantendo os dados sensíveis no dispositivo. A imagem abaixo mostra a arquitetura do TensorFlow.js e a forma como os modelos de aprendizagem automática são convertidos e implementados nos navegadores Web e no Node.js.
Running models locally also reduces latency and provides a more responsive user experience. TensorFlow.js also comes with offline capabilities, allowing users to use your application even without an internet connection. TF.js is designed for efficient execution of complex models on devices with limited resources as it is engineered for scalability, with GPU acceleration support.
Principais características do TF.js
Eis as principais características que tornam o TF.js uma ferramenta poderosa para os programadores:
-
Suporte multiplataforma: TensorFlow.js pode ser utilizado em ambientes de browser e Node.js, proporcionando flexibilidade na implementação em diferentes plataformas. Permite que os programadores criem e implementem aplicações mais facilmente.
-
Suporte para vários back-ends: TensorFlow.js suporta vários back-ends para computação, incluindo CPU, WebGL para aceleração GPU , WebAssembly (WASM) para velocidade de execução quase nativa e WebGPU para capacidades avançadas de aprendizagem automática baseadas no browser.
-
Capacidades offline: Com o TensorFlow.js, os modelos podem ser executados no browser sem necessidade de uma ligação à Internet, tornando possível desenvolver aplicações que funcionam offline.
Opções de implementação com TensorFlow.js
Before we dive into the process of exporting YOLO11 models to the TF.js format, let's explore some typical deployment scenarios where this format is used.
TFO .js fornece uma gama de opções para implementar os teus modelos de aprendizagem automática:
-
Aplicações de ML no navegador: Podes criar aplicações Web que executam modelos de aprendizagem automática diretamente no browser. A necessidade de computação do lado do servidor é eliminada e a carga do servidor é reduzida.
-
Aplicações Node.js:: TensorFlow O .js também suporta a implantação em ambientes Node.js, permitindo o desenvolvimento de aplicativos de aprendizado de máquina no lado do servidor. É particularmente útil para aplicações que requerem o poder de processamento de um servidor ou o acesso a dados do lado do servidor.
-
Extensões do Chrome: Um cenário de implantação interessante é a criação de extensões do Chrome com TensorFlow.js. Por exemplo, pode desenvolver uma extensão que permita aos utilizadores clicar com o botão direito do rato numa imagem em qualquer página Web para a classificar utilizando um modelo de ML pré-treinado. TensorFlow O .js pode ser integrado nas experiências quotidianas de navegação na Web para fornecer informações imediatas ou aumentos baseados na aprendizagem automática.
Exporting YOLO11 Models to TensorFlow.js
You can expand model compatibility and deployment flexibility by converting YOLO11 models to TF.js.
Instalação
Para instalar o pacote necessário, executa:
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.
Utilização
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.
Utilização
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF.js format
model.export(format="tfjs") # creates '/yolo11n_web_model'
# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")
# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
Para obter mais detalhes sobre as opções de exportação suportadas, visita a página de documentaçãoUltralytics sobre opções de implementação.
Deploying Exported YOLO11 TensorFlow.js Models
Now that you have exported your YOLO11 model to the TF.js format, the next step is to deploy it. The primary and recommended first step for running a TF.js is to use the YOLO("./yolo11n_web_model")
method, as previously shown in the usage code snippet.
No entanto, para obter instruções detalhadas sobre como implantar seus modelos TF.js, dá uma olhada nos seguintes recursos:
-
Extensão do Chrome: Aqui está a documentação do programador sobre como implementar os teus modelos TF.js numa extensão do Chrome.
-
Executa TensorFlow.js em Node.js: Um post do blog TensorFlow sobre como executar TensorFlow.js diretamente no Node.js.
-
Implementando TensorFlow.js - Projeto Node na plataforma de nuvem: Um post do blog TensorFlow sobre a implantação de um modelo TensorFlow.js em uma plataforma de nuvem.
Resumo
In this guide, we learned how to export Ultralytics YOLO11 models to the TensorFlow.js format. By exporting to TF.js, you gain the flexibility to optimize, deploy, and scale your YOLO11 models on a wide range of platforms.
Para mais detalhes sobre a utilização, visita a documentação oficialTensorFlow.js.
For more information on integrating Ultralytics YOLO11 with other platforms and frameworks, don't forget to check out our integration guide page. It's packed with great resources to help you make the most of YOLO11 in your projects.
FAQ
How do I export Ultralytics YOLO11 models to TensorFlow.js format?
Exporting Ultralytics YOLO11 models to TensorFlow.js (TF.js) format is straightforward. You can follow these steps:
Utilização
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF.js format
model.export(format="tfjs") # creates '/yolo11n_web_model'
# Load the exported TF.js model
tfjs_model = YOLO("./yolo11n_web_model")
# Run inference
results = tfjs_model("https://ultralytics.com/images/bus.jpg")
Para obter mais detalhes sobre as opções de exportação suportadas, visita a página de documentaçãoUltralytics sobre opções de implementação.
Why should I export my YOLO11 models to TensorFlow.js?
Exporting YOLO11 models to TensorFlow.js offers several advantages, including:
- Execução local: Os modelos podem ser executados diretamente no browser ou no Node.js, reduzindo a latência e melhorando a experiência do utilizador.
- Suporte multiplataforma: TF.js suporta vários ambientes, permitindo flexibilidade na implantação.
- Capacidades offline: Permite que as aplicações funcionem sem uma ligação à Internet, garantindo fiabilidade e privacidade.
- GPU Aceleração: Aproveita o WebGL para a aceleração GPU , otimizando o desempenho em dispositivos com recursos limitados.
Para uma visão geral abrangente, vê as nossas Integrações com TensorFlow.js.
Como é que o TensorFlow.js beneficia as aplicações de aprendizagem automática baseadas no browser?
TensorFlow.js foi especificamente concebido para a execução eficiente de modelos de ML em browsers e ambientes Node.js. Eis como beneficia as aplicações baseadas no browser:
- Reduz a latência: Executa modelos de aprendizagem automática localmente, fornecendo resultados imediatos sem depender de cálculos do lado do servidor.
- Melhora a privacidade: Mantém os dados sensíveis no dispositivo do utilizador, minimizando os riscos de segurança.
- Permite a utilização offline: Os modelos podem funcionar sem uma ligação à Internet, garantindo uma funcionalidade consistente.
- Suporta vários backends: Oferece flexibilidade com backends como CPU, WebGL, WebAssembly (WASM) e WebGPU para diferentes necessidades computacionais.
Estás interessado em saber mais sobre TF.js? Consulta o guia oficial TensorFlow.js.
What are the key features of TensorFlow.js for deploying YOLO11 models?
As principais características do TensorFlow.js incluem:
- Suporte multiplataforma: TF.js pode ser utilizado tanto em navegadores Web como em Node.js, proporcionando uma grande flexibilidade de implementação.
- Vários backends: Suporta CPU, WebGL para aceleração GPU , WebAssembly (WASM) e WebGPU para operações avançadas.
- Capacidades offline: Os modelos podem ser executados diretamente no browser sem ligação à Internet, o que o torna ideal para o desenvolvimento de aplicações Web com capacidade de resposta.
Para cenários de implantação e informações mais detalhadas, consulte a nossa secção sobre Opções de implantação com TensorFlow.js.
Can I deploy a YOLO11 model on server-side Node.js applications using TensorFlow.js?
Yes, TensorFlow.js allows the deployment of YOLO11 models on Node.js environments. This enables server-side machine learning applications that benefit from the processing power of a server and access to server-side data. Typical use cases include real-time data processing and machine learning pipelines on backend servers.
Para começar a utilizar a implantação do Node.js, consulta o guia Executar TensorFlow.js no Node.js em TensorFlow.