Como exportar para TF GraphDef a partir do YOLO26 para implementação#
Ao implementar modelos de visão computacional de última geração, como o YOLO26, em diferentes ambientes, podes deparar-te com problemas de compatibilidade. O TensorFlow GraphDef da Google, ou TF GraphDef, oferece uma solução ao fornecer uma representação serializada e independente de plataforma do teu modelo. Ao utilizar o formato de modelo TF GraphDef, podes implementar o teu modelo YOLO26 em ambientes onde o ecossistema TensorFlow completo pode não estar disponível, como dispositivos móveis ou hardware especializado.
Neste guia, vamos explicar passo a passo como exportar os teus modelos Ultralytics YOLO26 para o formato de modelo TF GraphDef. Ao converteres o teu modelo, podes simplificar a implementação e utilizar as capacidades de visão computacional do YOLO26 numa gama mais ampla de aplicações e plataformas.
Por que deves exportar para TF GraphDef?#
TF GraphDef é um componente poderoso do ecossistema TensorFlow, desenvolvido pela Google. Pode ser utilizado para otimizar e implementar modelos como o YOLO26. Exportar para TF GraphDef permite passar os modelos da investigação para aplicações reais. Permite que os modelos sejam executados em ambientes sem a estrutura TensorFlow completa.
O formato GraphDef representa o modelo como um grafo de computação serializado. Isto permite várias técnicas de otimização, como dobragem de constantes, quantização e transformações do grafo. Estas otimizações garantem uma execução eficiente, menor utilização de memória e velocidades de inferência mais rápidas.
Os modelos GraphDef podem utilizar aceleradores de hardware, como GPUs, TPUs e chips de IA, desbloqueando ganhos de desempenho significativos para o pipeline de inferência do YOLO26. O formato TF GraphDef cria um pacote autónomo com o modelo e as suas dependências, simplificando a implementação e a integração em sistemas diversos.
Principais funcionalidades dos modelos TF GraphDef#
O TF GraphDef oferece funcionalidades distintas para simplificar a implementação de modelos e a otimização.
Vê as suas principais características:
-
Serialização do modelo: o TF GraphDef permite serializar e armazenar modelos TensorFlow num formato independente de plataforma. Esta representação serializada permite carregar e executar os teus modelos sem a base de código Python original, facilitando a implementação.
-
Otimização do grafo: o TF GraphDef permite otimizar grafos computacionais. Estas otimizações podem melhorar o desempenho ao simplificar o fluxo de execução, reduzir redundâncias e adaptar as operações a hardware específico.
-
Flexibilidade de implementação: os modelos exportados para o formato GraphDef podem ser utilizados em vários ambientes, incluindo dispositivos com recursos limitados, navegadores web e sistemas com hardware especializado. Isto abre possibilidades para uma implementação mais ampla dos teus modelos TensorFlow.
-
Foco na produção: o GraphDef foi concebido para implementações em produção. Suporta execução eficiente, funcionalidades de serialização e otimizações alinhadas com casos de utilização reais.
Opções de implementação com TF GraphDef#
Antes de avançarmos para o processo de exportação dos modelos YOLO26 para TF GraphDef, vejamos algumas situações típicas de implementação em que este formato é utilizado.
Vê como podes implementar eficientemente com TF GraphDef em várias plataformas.
-
TensorFlow Serving: esta estrutura foi concebida para implementar modelos TensorFlow em ambientes de produção. O TensorFlow Serving oferece gestão de modelos, controlo de versões e a infraestrutura necessária para servir modelos eficientemente em escala. É uma forma simples de integrar os teus modelos baseados em GraphDef em serviços web ou APIs de produção.
-
Dispositivos móveis e incorporados: com ferramentas como LiteRT, podes converter modelos TF GraphDef em formatos otimizados para smartphones, tablets e vários dispositivos incorporados. Os teus modelos podem então ser utilizados para inferência no dispositivo, com execução local, proporcionando frequentemente ganhos de desempenho e capacidades offline.
-
Navegadores web: o TensorFlow.js permite implementar modelos TF GraphDef diretamente em navegadores web. Abre caminho a aplicações de deteção de objetos em tempo real executadas no lado do cliente, utilizando as capacidades do YOLO26 através de JavaScript.
-
Hardware especializado: a natureza independente de plataforma do TF GraphDef permite utilizá-lo com hardware personalizado, como aceleradores e TPUs (Unidades de processamento tensorial). Estes dispositivos podem proporcionar vantagens de desempenho para modelos com elevada intensidade computacional.
Tarefas suportadas#
A exportação para TF GraphDef suporta seis das sete tarefas da Ultralytics. A segmentação semântica e a estimativa de profundidade estão disponíveis apenas com YOLO26, a única família que inclui essas cabeças. Os modelos de pose podem ser exportados, mas a inferência GraphDef da Ultralytics ainda não é suportada para eles.
| Tarefa | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Detetar | ✅ | ✅ | ✅ |
| Segmentar | ✅ | ✅ | ✅ |
| Semântica | ❌ | ❌ | ✅ |
| Profundidade | ❌ | ❌ | ✅ |
| Classificar | ✅ | ✅ | ✅ |
| Pose | ✅ | ✅ | ✅ |
| OBB | ❌ | ❌ | ❌ |
Exportar modelos YOLO26 para TF GraphDef#
Podes converter o teu modelo YOLO26 para o formato TF GraphDef, compatível com vários sistemas, para melhorar o seu desempenho em diferentes plataformas.
Instalação#
Para instalar o pacote necessário, executa:
# Install the required package for YOLO26
pip install ultralyticsPara obter instruções detalhadas e boas práticas relacionadas com o processo de instalação, consulte o nosso guia de instalação do Ultralytics. Ao instalar os pacotes necessários para YOLO26, se encontrar alguma dificuldade, consulte o nosso guia de problemas comuns para obter soluções e dicas.
Utilização#
Todos os modelos Ultralytics YOLO26 foram concebidos para suportar a exportação imediatamente, facilitando a sua integração no teu fluxo de trabalho de implementação preferido. Podes consultar a lista completa de formatos de exportação e opções de configuração compatíveis para escolher a melhor configuração para a tua aplicação.
O formato TF GraphDef suporta os modos Exportar, Prever e Validar, exceto no caso dos modelos de pose, que atualmente suportam apenas a exportação. Exporta o teu modelo e, em seguida, carrega o modelo exportado para executar a inferência ou validar a sua precisão.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Argumentos de Exportação#
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
format | str | 'pb' | Formato de destino do modelo exportado, que define a compatibilidade com vários ambientes de implementação. |
imgsz | int ou tuple | 640 | Tamanho de imagem pretendido para a entrada do modelo. Pode ser um número inteiro para imagens quadradas ou um tuplo (height, width) para dimensões específicas. |
quantize | int ou str | None | Exportação FP32 fixa. O GraphDef não suporta conversão de precisão FP16, INT8 ou W8A16 durante a exportação. |
opset | int | None | Especifica a versão do opset ONNX para o grafo ONNX intermédio. Se não for definida, utiliza a versão mais recente suportada. |
batch | int | 1 | Especifica o tamanho do lote de inferência do modelo exportado ou o número máximo de imagens que o modelo exportado processará em simultâneo no modo predict. |
device | str | None | Especifica o dispositivo para a exportação: CPU (device=cpu), MPS para Apple silicon (device=mps). |
Para obter mais detalhes sobre o processo de exportação, visita a página da documentação da Ultralytics sobre exportação.
Implementar modelos YOLO26 TF GraphDef exportados#
Depois de exportares o teu modelo YOLO26 para o formato TF GraphDef, o passo seguinte é a implementação. O primeiro passo principal e recomendado para executar um modelo TF GraphDef é utilizar o método YOLO("model.pb"), conforme mostrado anteriormente no excerto de código de utilização.
No entanto, para obteres mais informações sobre a implementação dos teus modelos TF GraphDef, consulta os seguintes recursos:
-
TensorFlow Serving: um guia sobre o TensorFlow Serving que ensina a implementar e servir modelos de aprendizagem automática eficientemente em ambientes de produção.
-
TensorFlow Lite: esta página descreve como converter modelos de aprendizagem automática num formato otimizado para inferência no dispositivo com TensorFlow Lite.
-
TensorFlow.js: um guia sobre conversão de modelos que ensina a converter modelos TensorFlow ou Keras para o formato TensorFlow.js, para utilização em aplicações web.
Resumo#
Neste guia, explorámos como exportar modelos Ultralytics YOLO26 para o formato TF GraphDef. Desta forma, podes implementar flexivelmente os teus modelos YOLO26 otimizados em diferentes ambientes.
Para obteres mais informações sobre a utilização, consulta a documentação oficial do TF GraphDef.
Para obteres mais informações sobre a integração do Ultralytics YOLO26 com outras plataformas e estruturas, consulta a nossa página do guia de integrações.
Perguntas frequentes#
Os modelos Ultralytics YOLO26 podem ser exportados facilmente para o formato TensorFlow GraphDef (TF GraphDef). Este formato fornece uma representação serializada e independente de plataforma do modelo, ideal para implementação em ambientes diversos, como dispositivos móveis e web. Para exportar um modelo YOLO26 para TF GraphDef, segue estes passos:
Utilizaçãofrom ultralytics import YOLO # Load a YOLO26 model model = YOLO("yolo26n.pt") # Export the model to TF GraphDef format model.export(format="pb") # creates 'yolo26n.pb' # Load the exported TF GraphDef model tf_graphdef_model = YOLO("yolo26n.pb") # Run inference results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")Para obteres mais informações sobre as diferentes opções de exportação, consulta a documentação da Ultralytics sobre exportação de modelos.
A exportação de modelos YOLO26 para o formato TF GraphDef oferece várias vantagens, incluindo:
- Independência de plataforma: o TF GraphDef fornece um formato independente de plataforma, permitindo implementar modelos em vários ambientes, incluindo dispositivos móveis e navegadores web.
- Otimizações: o formato permite várias otimizações, como dobragem de constantes, quantização e transformações do grafo, que melhoram a eficiência da execução e reduzem a utilização de memória.
- Aceleração de hardware: os modelos no formato TF GraphDef podem tirar partido de aceleradores de hardware, como GPUs, TPUs e chips de IA, para obter ganhos de desempenho.
Lê mais sobre as vantagens na secção TF GraphDef da nossa documentação.
O Ultralytics YOLO26 oferece inúmeras vantagens em comparação com outros modelos, como YOLOv5 e YOLOv7. Alguns dos principais benefícios incluem:
- Desempenho de última geração: o YOLO26 oferece velocidade e precisão excecionais para deteção de objetos, segmentação de instâncias, segmentação semântica e classificação em tempo real.
- Facilidade de utilização: inclui uma API intuitiva para treino, validação, previsão e exportação de modelos, tornando-o acessível tanto para principiantes como para especialistas.
- Ampla compatibilidade: suporta vários formatos de exportação, incluindo ONNX, TensorRT, CoreML e TensorFlow, para opções de implementação versáteis.
Explora mais detalhes na nossa introdução ao YOLO26.
Depois de exportares um modelo YOLO26 para o formato TF GraphDef, podes implementá-lo em várias plataformas de hardware especializado. Os cenários típicos de implementação incluem:
- TensorFlow Serving: utiliza o TensorFlow Serving para uma implementação de modelos escalável em ambientes de produção. Suporta a gestão de modelos e o serviço eficiente de modelos.
- Dispositivos móveis: converte modelos TF GraphDef para TensorFlow Lite, otimizado para dispositivos móveis e incorporados, permitindo a inferência no dispositivo.
- Navegadores web: implementa modelos utilizando TensorFlow.js para inferência no lado do cliente em aplicações web.
- Aceleradores de IA: tira partido de TPUs e chips de IA personalizados para acelerar a inferência.
Consulta a secção de opções de implementação para obteres informações detalhadas.
Para resolver problemas comuns relacionados com a exportação de modelos YOLO26, a Ultralytics disponibiliza guias e recursos abrangentes. Se encontrares problemas durante a instalação ou a exportação do modelo, consulta:
- Guia de problemas comuns: oferece soluções para problemas frequentes.
- Guia de instalação: instruções passo a passo para configurar os pacotes necessários.
Estes recursos devem ajudar-te a resolver a maioria dos problemas relacionados com a exportação e implementação de modelos YOLO26.