Ultralytics YOLO27:

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.

TensorFlow GraphDef model serialization format

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.

TarefaYOLOv8YOLO11YOLO26
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:

Instalação
# Install the required package for YOLO26
pip install ultralytics

Para 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.

Exportaçã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'
Previsão
from ultralytics import YOLO

# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Validar
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#

ArgumentoTipoPredefiniçãoDescrição
formatstr'pb'Formato de destino do modelo exportado, que define a compatibilidade com vários ambientes de implementação.
imgszint ou tuple640Tamanho 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.
quantizeint ou strNoneExportação FP32 fixa. O GraphDef não suporta conversão de precisão FP16, INT8 ou W8A16 durante a exportação.
opsetintNoneEspecifica a versão do opset ONNX para o grafo ONNX intermédio. Se não for definida, utiliza a versão mais recente suportada.
batchint1Especifica 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.
devicestrNoneEspecifica 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çã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'
    
    # 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:

    1. 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.
    2. 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.
    3. 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:

    1. 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.
    2. 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.
    3. 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:

    Estes recursos devem ajudar-te a resolver a maioria dos problemas relacionados com a exportação e implementação de modelos YOLO26.

Comentários