Como exportar para TF GraphDef a partir do YOLO11 para implantação
When you are deploying cutting-edge computer vision models, like YOLO11, in different environments, you might run into compatibility issues. Google's TensorFlow GraphDef, or TF GraphDef, offers a solution by providing a serialized, platform-independent representation of your model. Using the TF GraphDef model format, you can deploy your YOLO11 model in environments where the complete TensorFlow ecosystem may not be available, such as mobile devices or specialized hardware.
In this guide, we'll walk you step by step through how to export your Ultralytics YOLO11 models to the TF GraphDef model format. By converting your model, you can streamline deployment and use YOLO11's computer vision capabilities in a broader range of applications and platforms.
Por que razão deves exportar para TF GraphDef ?
TF GraphDef é um componente poderoso do ecossistema TensorFlow que foi desenvolvido por Google. Pode ser utilizado para otimizar e implementar modelos como o YOLO11. Exportar para TF GraphDef permite-nos passar os modelos da investigação para aplicações do mundo real. Permite que os modelos sejam executados em ambientes sem a estrutura completa do TensorFlow .
O formato GraphDef representa o modelo como um gráfico de computação serializado. Isto permite várias técnicas de otimização, como a dobragem de constantes, a quantização e as transformações de gráficos. Estas optimizações garantem uma execução eficiente, uma utilização reduzida da memória e velocidades de inferência mais rápidas.
GraphDef Os modelos YOLO11 podem utilizar aceleradores de hardware, como GPUs, TPUs e chips de IA, permitindo ganhos de desempenho significativos para o pipeline de inferência YOLO11. 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 diversos sistemas.
Principais características dos modelos TF GraphDef
TF GraphDef offers distinct features for streamlining model deployment and optimization.
Vê aqui as suas principais características:
Serialização de modelos: TF GraphDef fornece uma maneira de serializar e armazenar modelos TensorFlow em um formato independente de plataforma. Essa representação serializada permite carregar e executar seus modelos sem a base de código Python original, facilitando a implantação.
Otimização de gráficos: TF GraphDef permite a otimização de gráficos computacionais. Essas otimizações podem aumentar o desempenho, simplificando o fluxo de execução, reduzindo redundâncias e adaptando as operações para atender a um hardware específico.
Flexibilidade de implantação: Os modelos exportados para o formato GraphDef podem ser usados em vários ambientes, incluindo dispositivos com recursos limitados, navegadores da Web e sistemas com hardware especializado. Isto abre possibilidades para uma implementação mais ampla dos teus modelos TensorFlow .
Foco na produção: GraphDef foi concebido para a implementação na produção. Suporta execução eficiente, recursos de serialização e otimizações que se alinham com casos de uso do mundo real.
Opções de implantação com TF GraphDef
Antes de nos debruçarmos sobre o processo de exportação de modelos YOLO11 para TF GraphDef , vamos analisar algumas situações típicas de implementação em que este formato é utilizado.
Eis como podes implementar com TF GraphDef de forma eficiente em várias plataformas.
TensorFlow Servir: Esta estrutura foi concebida para implementar modelos TensorFlow em ambientes de produção. TensorFlow O Serving oferece gerenciamento de modelos, controle de versão e a infraestrutura para o fornecimento eficiente de modelos em escala. É uma maneira perfeita de integrar seus modelos baseados em GraphDef em serviços Web ou APIs de produção.
Dispositivos móveis e incorporados: Com ferramentas como TensorFlow Lite, podes converter modelos TF GraphDef em formatos optimizados para smartphones, tablets e vários dispositivos incorporados. Os teus modelos podem então ser utilizados para inferência no dispositivo, onde a execução é feita localmente, proporcionando frequentemente ganhos de desempenho e capacidades offline.
Web Browsers: TensorFlow.js enables the deployment of TF GraphDef models directly within web browsers. It paves the way for real-time object detection applications running on the client side, using the capabilities of YOLO11 through JavaScript.
Hardware especializado: TF A natureza agnóstica da plataforma doGraphDef permite-lhe utilizar hardware personalizado, como aceleradores e TPUs (Tensor Processing Units). Estes dispositivos podem proporcionar vantagens de desempenho para modelos computacionalmente intensivos.
Exportação de modelos YOLO11 para TF GraphDef
Podes converter o teu modelo de deteção de objectos YOLO11 para o formato TF GraphDef , que é compatível com vários sistemas, para melhorar o seu desempenho em várias plataformas.
Instalação
Para instalar o pacote necessário, executa:
Para obter instruções detalhadas e melhores práticas relacionadas com o processo de instalação, consulta o nosso guia de instalaçãoUltralytics . Durante a instalação dos pacotes necessários para o YOLO11, se tiveres alguma dificuldade, consulta o nosso guia de Problemas comuns para obteres soluções e dicas.
Utilização
Antes de mergulhar nas instruções de utilização, é importante notar que, embora todos os modelosUltralytics YOLO11 estejam disponíveis para exportação, podes garantir que o modelo que seleccionaste suporta a funcionalidade de exportação aqui.
Utilização
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo11n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")
# Run inference
results = tf_graphdef_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.
Implantação de modelos YOLO11 exportados TF GraphDef
Depois de exportar o modelo YOLO11 para o formato TF GraphDef , a próxima etapa é a implantação. O primeiro passo primário e recomendado para executar um modelo TF GraphDef é usar o método YOLO("model.pb"), como mostrado anteriormente no trecho de código de uso.
No entanto, para obter mais informações sobre a implementação dos modelos TF GraphDef , consulta os seguintes recursos:
TensorFlow Serving: A guide on TensorFlow Serving that teaches how to deploy and serve machine learning models efficiently in production environments.
TensorFlow Lite: Esta página descreve como converter modelos de aprendizagem automática num formato optimizado para inferência no dispositivo com TensorFlow Lite.
TensorFlow.js: Um guia sobre conversão de modelos que ensina como converter modelos TensorFlow ou Keras para o formato TensorFlow.js para utilização em aplicações Web.
Resumo
Neste guia, exploramos como exportar Ultralytics modelos YOLO11 para o formato TF GraphDef . Ao fazer isso, podes implementar de forma flexível os teus modelos YOLO11 optimizados em diferentes ambientes.
Para mais informações sobre a utilização, visita a documentação oficialTF GraphDef .
For more information on integrating Ultralytics YOLO11 with other platforms and frameworks, don't forget to check out our integration guide page. It has great resources and insights to help you make the most of YOLO11 in your projects.
FAQ
Como é que exporto um modelo YOLO11 para o formato TF GraphDef ?
Ultralytics Os modelos YOLO11 podem ser exportados para o formato TensorFlow GraphDef (TF GraphDef ) sem problemas. Esse formato fornece uma representação serializada e independente de plataforma do modelo, ideal para implantação em ambientes variados, como dispositivos móveis e Web. Para exportar um modelo YOLO11 para TF GraphDef , siga estas etapas:
Utilização
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo11n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo11n.pb")
# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")
Para mais informações sobre as diferentes opções de exportação, consulta a documentaçãoUltralytics sobre exportação de modelos.
Quais são as vantagens de utilizar TF GraphDef para a implementação do modelo YOLO11?
A exportação de modelos YOLO11 para o formato TF GraphDef oferece várias vantagens, incluindo:
- Independência da plataforma: TF GraphDef fornece um formato independente da plataforma, permitindo que os modelos sejam implantados em vários ambientes, incluindo navegadores móveis e da Web.
- Optimizações: O formato permite várias optimizações, como a dobragem de constantes, a quantização e as transformações de gráficos, que melhoram a eficiência da execução e reduzem a utilização de memória.
- Aceleração de hardware: Modelos no formato TF GraphDef podem aproveitar aceleradores de hardware como GPUs, TPUs e chips de IA para obter ganhos de desempenho.
Lê mais sobre as vantagens na secçãoTF GraphDef da nossa documentação.
Why should I use Ultralytics YOLO11 over other object detection models?
Ultralytics O YOLO11 oferece inúmeras vantagens em comparação com outros modelos como YOLOv5 e YOLOv7. Algumas das principais vantagens incluem:
- State-of-the-Art Performance: YOLO11 provides exceptional speed and accuracy for real-time object detection, segmentation, and classification.
- Facilidade de utilização: Apresenta uma API de fácil utilização para formação, validação, previsão e exportação de modelos, tornando-a 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.
Explore further details in our introduction to YOLO11.
Como posso implementar um modelo YOLO11 num hardware especializado utilizando TF GraphDef ?
Depois de um modelo YOLO11 ser exportado para o formato TF GraphDef , podes implementá-lo em várias plataformas de hardware especializadas. Os cenários típicos de implementação incluem:
- TensorFlow Servir: Utiliza o TensorFlow Serving para a implementação de modelos escaláveis em ambientes de produção. Suporta a gestão de modelos e o serviço eficiente.
- Dispositivos móveis: Converte os modelos TF GraphDef para TensorFlow Lite, optimizados para dispositivos móveis e incorporados, permitindo a inferência no dispositivo.
- Navegadores Web: Implementa modelos utilizando TensorFlow.js para inferência do lado do cliente em aplicações Web.
- Aceleradores de IA: Aproveita TPUs e chips de IA personalizados para inferência acelerada.
Consulta a secção de opções de implementação para obteres informações detalhadas.
Onde posso encontrar soluções para problemas comuns durante a exportação de modelos YOLO11?
Para solucionar problemas comuns com a exportação de modelos YOLO11, Ultralytics fornece guias e recursos abrangentes. Se tiveres problemas durante a instalação ou exportação de modelos, 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 do modelo YOLO11.