Ir para o conteúdo

Exportar para o Formato de Modelo TF.js a Partir de um Formato de Modelo YOLO11

Implantar modelos de aprendizado de máquina diretamente no navegador ou no Node.js pode ser complicado. Você precisará garantir que o formato do seu modelo seja otimizado para um desempenho mais rápido, para que o modelo possa ser usado para executar aplicativos interativos localmente no dispositivo do usuário. O formato de modelo TensorFlow.js, ou TF.js, foi projetado para usar o mínimo de energia, oferecendo desempenho rápido.

O recurso 'exportar para o formato de modelo TF.js' permite otimizar seus modelos Ultralytics YOLO11 para inferência de detecção de objetos de alta velocidade e executada localmente. Neste guia, vamos orientá-lo na conversão de seus modelos para o formato TF.js, facilitando o bom desempenho de seus modelos em vários navegadores locais e aplicativos Node.js.

Por que você deve exportar para TF.js?

Exportar seus modelos de aprendizado de máquina para TensorFlow.js, desenvolvido pela equipe do TensorFlow como parte do ecossistema mais amplo do TensorFlow, oferece inúmeras vantagens para a implantação de aplicações de aprendizado de máquina. Ajuda a melhorar a privacidade e a segurança do usuário, mantendo os dados confidenciais no dispositivo. A imagem abaixo mostra a arquitetura do TensorFlow.js e como os modelos de aprendizado de máquina são convertidos e implantados em navegadores da web e Node.js.

Arquitetura TF.js

Executar modelos localmente também reduz a latência e proporciona uma experiência de usuário mais responsiva. TensorFlow.js também vem com recursos offline, permitindo que os usuários usem seu aplicativo mesmo sem uma conexão com a Internet. TF.js foi projetado para a execução eficiente de modelos complexos em dispositivos com recursos limitados, pois foi projetado para escalabilidade, com suporte à aceleração de GPU.

Principais Características do TF.js

Aqui estão os principais recursos que tornam o TF.js uma ferramenta poderosa para desenvolvedores:

  • Suporte Multiplataforma: O TensorFlow.js pode ser usado em ambientes de browser e Node.js, proporcionando flexibilidade na implementação em diferentes plataformas. Permite que os desenvolvedores construam e implementem aplicações mais facilmente.

  • Suporte para Múltiplos Backends: TensorFlow.js suporta vários backends para computação, incluindo CPU, WebGL para aceleração de GPU, WebAssembly (WASM) para velocidade de execução quase nativa e WebGPU para recursos avançados de aprendizado de máquina baseados em navegador.

  • Capacidades Offline: Com o TensorFlow.js, os modelos podem ser executados no navegador sem a necessidade de uma conexão com a internet, tornando possível o desenvolvimento de aplicações que funcionem offline.

Opções de Implementação com TensorFlow.js

Antes de nos aprofundarmos no processo de exportação de modelos YOLO11 para o formato TF.js, vamos explorar alguns cenários de implementação típicos onde este formato é usado.

O TF.js oferece uma variedade de opções para implementar seus modelos de machine learning:

  • Aplicações de ML no Navegador: Você pode criar aplicações web que executam modelos de machine learning diretamente no navegador. A necessidade de computação do lado do servidor é eliminada e a carga do servidor é reduzida.

  • Aplicações Node.js: O TensorFlow.js também oferece suporte à implantação em ambientes Node.js, permitindo o desenvolvimento de aplicações de aprendizado de máquina do lado do servidor. É particularmente útil para aplicações que exigem o poder de processamento de um servidor ou 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, você pode desenvolver uma extensão que permite aos usuários clicar com o botão direito em uma imagem em qualquer página da web para classificá-la usando um modelo de ML pré-treinado. O TensorFlow.js pode ser integrado às experiências diárias de navegação na web para fornecer insights imediatos ou aumentos baseados em aprendizado de máquina.

Exportando Modelos YOLO11 para TensorFlow.js

Você pode expandir a compatibilidade do modelo e a flexibilidade de implantação convertendo modelos YOLO11 para TF.js.

Instalação

Para instalar o pacote necessário, execute:

Instalação

# Install the required package for YOLO11
pip install ultralytics

Para obter instruções detalhadas e melhores práticas relacionadas ao processo de instalação, consulte nosso guia de instalação do Ultralytics. Ao instalar os pacotes necessários para o YOLO11, se você encontrar alguma dificuldade, consulte nosso guia de problemas comuns para obter soluções e dicas.

Utilização

Todos os modelos Ultralytics YOLO11 são projetados para suportar a exportação, facilitando a integração em seu fluxo de trabalho de implantação preferido. Você pode visualizar a lista completa de formatos de exportação e opções de configuração suportados para escolher a melhor configuração para sua aplicação.

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")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs # creates '/yolo11n_web_model'

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

Argumentos de Exportação

Argumento Tipo Padrão Descrição
format str 'tfjs' Formato de destino para o modelo exportado, definindo a compatibilidade com vários ambientes de implementação.
imgsz int ou tuple 640 Tamanho de imagem desejado para a entrada do modelo. Pode ser um inteiro para imagens quadradas ou uma tupla (height, width) para dimensões específicas.
half bool False Ativa a quantização FP16 (meia precisão), reduzindo o tamanho do modelo e potencialmente acelerando a inferência em hardware suportado.
int8 bool False Ativa a quantização INT8, comprimindo ainda mais o modelo e acelerando a inferência com perda mínima de precisão, principalmente para dispositivos de borda.
nms bool False Adiciona a Supressão Não Máxima (NMS), essencial para um pós-processamento de detecção preciso e eficiente.
batch int 1 Especifica o tamanho do lote de inferência do modelo de exportação ou o número máximo de imagens que o modelo exportado processará simultaneamente em predict modo.
device str None Especifica o dispositivo para exportar: CPU (device=cpu), MPS para Apple silicon (device=mps).

Para mais detalhes sobre o processo de exportação, visite a página de documentação da Ultralytics sobre exportação.

Implantação de Modelos TensorFlow.js YOLO11 Exportados

Agora que você exportou seu modelo YOLO11 para o formato TF.js, o próximo passo é implementá-lo. A primeira etapa primária e recomendada para executar um modelo TF.js é usar o YOLO("./yolo11n_web_model") método, como mostrado anteriormente no trecho de código de uso.

No entanto, para obter instruções detalhadas sobre como implantar seus modelos TF.js, consulte os seguintes recursos:

Resumo

Neste guia, aprendemos como exportar modelos Ultralytics YOLO11 para o formato TensorFlow.js. Ao exportar para TF.js, você ganha a flexibilidade de otimizar, implantar e dimensionar seus modelos YOLO11 em uma ampla variedade de plataformas.

Para obter mais detalhes sobre o uso, visite a documentação oficial do TensorFlow.js.

Para obter mais informações sobre como integrar o Ultralytics YOLO11 com outras plataformas e frameworks, não se esqueça de consultar a nossa página do guia de integração. Ela está repleta de ótimos recursos para ajudá-lo a aproveitar ao máximo o YOLO11 em seus projetos.

FAQ

Como exportar modelos Ultralytics YOLO11 para o formato TensorFlow.js?

Exportar modelos Ultralytics YOLO11 para o formato TensorFlow.js (TF.js) é simples. Você pode seguir estes passos:

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")
# Export a YOLO11n PyTorch model to TF.js format
yolo export model=yolo11n.pt format=tfjs # creates '/yolo11n_web_model'

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

Para obter mais detalhes sobre as opções de exportação suportadas, visite a página de documentação da Ultralytics sobre opções de implementação.

Por que devo exportar meus modelos YOLO11 para TensorFlow.js?

Exportar modelos YOLO11 para TensorFlow.js oferece várias vantagens, incluindo:

  1. Execução Local: Os modelos podem ser executados diretamente no navegador ou no Node.js, reduzindo a latência e melhorando a experiência do usuário.
  2. Suporte Multiplataforma: O TF.js suporta vários ambientes, permitindo flexibilidade na implementação.
  3. Capacidades Offline: Permite que os aplicativos funcionem sem uma conexão com a internet, garantindo confiabilidade e privacidade.
  4. Aceleração por GPU: Utiliza WebGL para aceleração por GPU, otimizando o desempenho em dispositivos com recursos limitados.

Para uma visão geral completa, consulte nossas Integrações com TensorFlow.js.

Como o TensorFlow.js beneficia aplicações de aprendizado de máquina baseadas em navegador?

TensorFlow.js é especificamente projetado para a execução eficiente de modelos de ML em navegadores e ambientes Node.js. Veja como ele beneficia aplicações baseadas em navegador:

  • Reduz a Latência: Executa modelos de machine learning localmente, fornecendo resultados imediatos sem depender de computações do lado do servidor.
  • Melhora a Privacidade: Mantém os dados confidenciais no dispositivo do usuário, minimizando os riscos de segurança.
  • Permite o Uso Offline: Os modelos podem operar sem uma conexão com a internet, garantindo funcionalidade consistente.
  • Suporta Múltiplos Backends: Oferece flexibilidade com backends como CPU, WebGL, WebAssembly (WASM) e WebGPU para diferentes necessidades computacionais.

Tem interesse em saber mais sobre TF.js? Consulte o guia oficial do TensorFlow.js.

Quais são as principais características do TensorFlow.js para implementar modelos YOLO11?

As principais funcionalidades do TensorFlow.js incluem:

  • Suporte Multiplataforma: O TF.js pode ser usado tanto em navegadores web quanto em Node.js, proporcionando ampla flexibilidade de implementação.
  • Múltiplos Backends: Suporta CPU, WebGL para aceleração de GPU, WebAssembly (WASM) e WebGPU para operações avançadas.
  • Capacidades Offline: Os modelos podem ser executados diretamente no navegador sem conectividade com a internet, tornando-o ideal para o desenvolvimento de aplicações web responsivas.

Para cenários de implantação e informações mais detalhadas, consulte nossa seção sobre Opções de Implantação com TensorFlow.js.

Posso implementar um modelo YOLO11 em aplicações Node.js do lado do servidor usando TensorFlow.js?

Sim, o TensorFlow.js permite a implantação de modelos YOLO11 em ambientes Node.js. Isso possibilita aplicações de machine learning do lado do servidor que se beneficiam do poder de processamento de um servidor e do acesso a dados do lado do servidor. Os casos de uso típicos incluem processamento de dados em tempo real e pipelines de machine learning em servidores de backend.

Para começar a usar a implementação com Node.js, consulte o guia Executar TensorFlow.js no Node.js do TensorFlow.



📅 Criado há 1 ano ✏️ Atualizado há 3 meses

Comentários