Cómo exportar YOLO26 a TF GraphDef para su implementación#
Al implementar modelos de visión artificial de última generación, como YOLO26, en distintos entornos, puedes encontrarte con problemas de compatibilidad. TensorFlow GraphDef de Google, o TF GraphDef, ofrece una solución al proporcionar una representación serializada e independiente de la plataforma de tu modelo. Al usar el formato de modelo TF GraphDef, puedes implementar tu modelo YOLO26 en entornos donde quizá no esté disponible todo el ecosistema TensorFlow, como dispositivos móviles o hardware especializado.
En esta guía, te explicamos paso a paso cómo exportar tus modelos Ultralytics YOLO26 al formato de modelo TF GraphDef. Al convertir tu modelo, puedes simplificar la implementación y utilizar las capacidades de visión artificial de YOLO26 en una gama más amplia de aplicaciones y plataformas.
¿Por qué exportar a TF GraphDef?#
TF GraphDef es un potente componente del ecosistema TensorFlow desarrollado por Google. Se puede utilizar para optimizar e implementar modelos como YOLO26. Exportar a TF GraphDef te permite llevar modelos de la investigación a aplicaciones reales. Permite ejecutar modelos en entornos sin el framework TensorFlow completo.
El formato GraphDef representa el modelo como un grafo de cálculo serializado. Esto permite aplicar diversas técnicas de optimización, como la evaluación de constantes, la cuantización y las transformaciones de grafos. Estas optimizaciones garantizan una ejecución eficiente, un menor uso de memoria y una inferencia más rápida.
Los modelos GraphDef pueden utilizar aceleradores de hardware como GPU, TPU y chips de IA, lo que permite obtener mejoras de rendimiento significativas en el proceso de inferencia de YOLO26. El formato TF GraphDef crea un paquete autónomo que incluye el modelo y sus dependencias, lo que simplifica la implementación y la integración en distintos sistemas.
Características principales de los modelos TF GraphDef#
TF GraphDef ofrece funciones específicas para simplificar la implementación de modelos y su optimización.
Estas son sus características principales:
-
Serialización de modelos: TF GraphDef ofrece una forma de serializar y almacenar modelos TensorFlow en un formato independiente de la plataforma. Esta representación serializada permite cargar y ejecutar los modelos sin el código fuente original de Python, lo que facilita la implementación.
-
Optimización de grafos: TF GraphDef permite optimizar grafos de cálculo. Estas optimizaciones pueden mejorar el rendimiento al agilizar el flujo de ejecución, reducir las redundancias y adaptar las operaciones a hardware específico.
-
Flexibilidad de implementación: Los modelos exportados al formato GraphDef se pueden utilizar en distintos entornos, incluidos dispositivos con recursos limitados, navegadores web y sistemas con hardware especializado. Esto amplía las posibilidades de implementación de tus modelos TensorFlow.
-
Enfoque en producción: GraphDef está diseñado para implementaciones en producción. Admite una ejecución eficiente, funciones de serialización y optimizaciones adaptadas a casos de uso reales.
Opciones de implementación con TF GraphDef#
Antes de explicar el proceso para exportar modelos YOLO26 a TF GraphDef, veamos algunas situaciones habituales de implementación en las que se utiliza este formato.
Así puedes implementar modelos de forma eficiente con TF GraphDef en distintas plataformas.
-
TensorFlow Serving: Este framework está diseñado para implementar modelos TensorFlow en entornos de producción. TensorFlow Serving ofrece gestión de modelos, control de versiones y la infraestructura necesaria para servir modelos de forma eficiente a gran escala. Es una forma sencilla de integrar tus modelos basados en GraphDef en servicios web o API de producción.
-
Dispositivos móviles y embebidos: Con herramientas como LiteRT, puedes convertir modelos TF GraphDef a formatos optimizados para teléfonos inteligentes, tabletas y distintos dispositivos embebidos. Así puedes utilizar tus modelos para realizar inferencias en el propio dispositivo, donde la ejecución se lleva a cabo localmente y suele ofrecer mejoras de rendimiento y funcionamiento sin conexión.
-
Navegadores web: TensorFlow.js permite implementar modelos TF GraphDef directamente en navegadores web. Esto abre la puerta a aplicaciones de detección de objetos en tiempo real que se ejecutan en el lado del cliente y aprovechan las capacidades de YOLO26 mediante JavaScript.
-
Hardware especializado: La naturaleza independiente de la plataforma de TF GraphDef permite utilizarlo con hardware personalizado, como aceleradores y TPU (unidades de procesamiento tensorial). Estos dispositivos pueden ofrecer ventajas de rendimiento con modelos de cálculo intensivo.
Tareas compatibles#
La exportación a TF GraphDef es compatible con seis de las siete tareas de Ultralytics. La segmentación semántica y la estimación de profundidad solo están disponibles con YOLO26, la única familia que incluye esas cabezas. Se pueden exportar modelos de pose, pero actualmente no se admite la inferencia de Ultralytics GraphDef para ellos.
| Tarea | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Detectar | ✅ | ✅ | ✅ |
| Segmentar | ✅ | ✅ | ✅ |
| Semántica | ❌ | ❌ | ✅ |
| Profundidad | ❌ | ❌ | ✅ |
| Clasificar | ✅ | ✅ | ✅ |
| Pose | ✅ | ✅ | ✅ |
| OBB | ❌ | ❌ | ❌ |
Exportar modelos YOLO26 a TF GraphDef#
Puedes convertir tu modelo YOLO26 al formato TF GraphDef, compatible con distintos sistemas, para mejorar su rendimiento en varias plataformas.
Instalación#
Para instalar el paquete necesario, ejecuta:
# Install the required package for YOLO26
pip install ultralyticsPara obtener instrucciones detalladas y buenas prácticas relacionadas con el proceso de instalación, consulta nuestra guía de instalación de Ultralytics. Si tienes dificultades al instalar los paquetes necesarios para YOLO26, consulta nuestra guía sobre problemas habituales, donde encontrarás soluciones y consejos.
Uso#
Todos los modelos Ultralytics YOLO26 están diseñados para admitir la exportación desde el primer momento, lo que facilita su integración en el flujo de trabajo de implementación que prefieras. Puedes consultar la lista completa de formatos de exportación y opciones de configuración compatibles para elegir la configuración más adecuada para tu aplicación.
El formato TF GraphDef admite los modos Exportar, Predecir y Validar, aunque actualmente los modelos de pose solo admiten la exportación. Exporta tu modelo y, después, carga el modelo exportado para ejecutar inferencias o validar su precisión.
from ultralytics import YOLO
# Carga un modelo YOLO26
model = YOLO("yolo26n.pt")
# Exporta el modelo al formato TF GraphDef
model.export(format="pb") # crea 'yolo26n.pb'from ultralytics import YOLO
# Carga el modelo TF GraphDef exportado
model = YOLO("yolo26n.pb")
# Ejecutar inferencia
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Carga el modelo TF GraphDef exportado
model = YOLO("yolo26n.pb")
# Valida la precisión con el conjunto de datos COCO8
metrics = model.val(data="coco8.yaml")Argumentos de exportación#
| Argumento | Tipo | Predeterminado | Descripción |
|---|---|---|---|
format | str | 'pb' | Formato de destino del modelo exportado, que define su compatibilidad con distintos entornos de implementación. |
imgsz | int o tuple | 640 | Tamaño de imagen deseado para la entrada del modelo. Puede ser un número entero para imágenes cuadradas o una tupla (height, width) para dimensiones específicas. |
quantize | int o str | None | La exportación está fijada en FP32. GraphDef no admite la conversión de precisión FP16, INT8 ni W8A16 durante la exportación. |
opset | int | None | Especifica la versión del conjunto de operaciones de ONNX para el grafo ONNX intermedio. Si no se establece, se utiliza la última versión compatible. |
batch | int | 1 | Especifica el tamaño del lote de inferencia del modelo exportado o el número máximo de imágenes que el modelo exportado procesará simultáneamente en el modo predict. |
device | str | None | Especifica el dispositivo para la exportación: CPU (device=cpu) o MPS para Apple silicon (device=mps). |
Para obtener más información sobre el proceso de exportación, visita la página de documentación de Ultralytics sobre exportación.
Implementar modelos YOLO26 TF GraphDef exportados#
Una vez que hayas exportado tu modelo YOLO26 al formato TF GraphDef, el siguiente paso es implementarlo. El primer paso recomendado para ejecutar un modelo TF GraphDef es utilizar el método YOLO("model.pb"), como se muestra en el fragmento de código de uso anterior.
Para obtener más información sobre cómo implementar tus modelos TF GraphDef, consulta estos recursos:
-
TensorFlow Serving: Una guía sobre TensorFlow Serving que explica cómo implementar y servir modelos de aprendizaje automático de forma eficiente en entornos de producción.
-
TensorFlow Lite: Esta página describe cómo convertir modelos de aprendizaje automático a un formato optimizado para ejecutar inferencias en el dispositivo con TensorFlow Lite.
-
TensorFlow.js: Una guía de conversión de modelos que explica cómo convertir modelos TensorFlow o Keras al formato TensorFlow.js para utilizarlos en aplicaciones web.
Resumen#
En esta guía, hemos explicado cómo exportar modelos Ultralytics YOLO26 al formato TF GraphDef. De este modo, puedes implementar tus modelos YOLO26 optimizados con flexibilidad en distintos entornos.
Para obtener más información sobre el uso, consulta la documentación oficial de TF GraphDef.
Para obtener más información sobre la integración de Ultralytics YOLO26 con otras plataformas y frameworks, consulta nuestra página de guías de integración.
Preguntas frecuentes#
Los modelos Ultralytics YOLO26 se pueden exportar fácilmente al formato TensorFlow GraphDef (TF GraphDef). Este formato proporciona una representación serializada e independiente de la plataforma del modelo, ideal para implementarlo en distintos entornos, como dispositivos móviles y web. Sigue estos pasos para exportar un modelo YOLO26 a TF GraphDef:
Usofrom ultralytics import YOLO # Carga un modelo YOLO26 model = YOLO("yolo26n.pt") # Exporta el modelo al formato TF GraphDef model.export(format="pb") # crea 'yolo26n.pb' # Carga el modelo TF GraphDef exportado tf_graphdef_model = YOLO("yolo26n.pb") # Ejecutar inferencia results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")Para obtener más información sobre las distintas opciones de exportación, consulta la documentación de Ultralytics sobre la exportación de modelos.
Exportar modelos YOLO26 al formato TF GraphDef ofrece varias ventajas, entre ellas:
- Independencia de la plataforma: TF GraphDef proporciona un formato independiente de la plataforma, que permite implementar modelos en distintos entornos, incluidos dispositivos móviles y navegadores web.
- Optimizaciones: El formato permite aplicar varias optimizaciones, como la evaluación de constantes, la cuantización y las transformaciones de grafos, que mejoran la eficiencia de ejecución y reducen el uso de memoria.
- Aceleración por hardware: Los modelos en formato TF GraphDef pueden aprovechar aceleradores de hardware, como GPU, TPU y chips de IA, para mejorar el rendimiento.
Obtén más información sobre sus ventajas en la sección de TF GraphDef de nuestra documentación.
Ultralytics YOLO26 ofrece numerosas ventajas frente a otros modelos como YOLOv5 y YOLOv7. Estas son algunas de las principales:
- Rendimiento de vanguardia: YOLO26 ofrece una velocidad y una precisión excepcionales para la detección de objetos, la segmentación de instancias, la segmentación semántica y la clasificación en tiempo real.
- Facilidad de uso: Incluye una API fácil de usar para entrenar, validar, predecir y exportar modelos, accesible tanto para principiantes como para expertos.
- Amplia compatibilidad: Admite varios formatos de exportación, como ONNX, TensorRT, CoreML y TensorFlow, para ofrecer opciones de implementación versátiles.
Descubre más detalles en nuestra introducción a YOLO26.
Cuando hayas exportado un modelo YOLO26 al formato TF GraphDef, podrás implementarlo en distintas plataformas de hardware especializado. Estos son algunos escenarios habituales:
- TensorFlow Serving: Utiliza TensorFlow Serving para implementar modelos de forma escalable en entornos de producción. Admite la gestión de modelos y un servicio eficiente.
- Dispositivos móviles: Convierte los modelos TF GraphDef a TensorFlow Lite, optimizado para dispositivos móviles y embebidos, para habilitar la inferencia en el propio dispositivo.
- Navegadores web: Implementa modelos con TensorFlow.js para ejecutar inferencias en el lado del cliente en aplicaciones web.
- Aceleradores de IA: Aprovecha las TPU y los chips de IA personalizados para acelerar la inferencia.
Consulta la sección sobre opciones de implementación para obtener información detallada.
Ultralytics ofrece guías y recursos completos para solucionar problemas habituales al exportar modelos YOLO26. Si tienes problemas durante la instalación o la exportación del modelo, consulta:
- Guía de problemas habituales: Ofrece soluciones a los problemas más frecuentes.
- Guía de instalación: Instrucciones paso a paso para instalar los paquetes necesarios.
Estos recursos deberían ayudarte a resolver la mayoría de los problemas relacionados con la exportación y la implementación de modelos YOLO26.