Implementación de Correcciones en el Modelo TensorRT

Guía técnica de Q2BSTUDIO sobre fixes de modelos YOLO en TensorRT .engine: carga de nombres desde YAML, reescalado de máscaras a la resolución original y posprocesado de detección para producción.

3 sept 2025 • 5 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

TensorRT Engine Model Fixes Implementation describe la implementación de correcciones críticas para modelos YOLO en formato TensorRT .engine enfocadas en dos problemas habituales: nombres de clase que aparecen como índices y máscaras de segmentación que no se devuelven a la resolución original. Esta guía técnica, creada por Q2BSTUDIO, empresa especialista en software a medida, aplicaciones a medida, inteligencia artificial, ciberseguridad, servicios cloud AWS y Azure, automatización de procesos e inteligencia de negocio con Power BI, detalla cómo integrar estas mejoras en pipelines de visión por computador de alto rendimiento, clave para ia para empresas y equipos que despliegan agentes IA en producción.

Problema 1 Nombres de clase como índices. Al usar modelos TensorRT .engine, el atributo model.names puede no estar poblado correctamente y las predicciones muestran índices numéricos en lugar de nombres descriptivos como food_label, invoice o qr_code.

Problema 2 Desajuste de resolución de máscaras. Las máscaras de segmentación suelen devolverse en la resolución de entrada del modelo por ejemplo 640x640 en lugar de la resolución original de la imagen, generando desalineación respecto a los objetos reales del fotograma.

Solución 1 Carga de nombres de clase desde YAML archivo src/utils/config_loader.py. Características principales carga de nombres desde fastrtc-test/config/data.yml, creación de un mapeo completo de índices de clase a nombre humano, validación de la integridad del mapeo y mecanismos de respaldo si faltan campos o el YAML no es válido. Funciones clave load_class_names_from_yaml, get_class_name_safe y load_class_names_with_fallback que priorizan el nombre de clase del YAML y devuelven etiquetas seguras cuando el índice no existe.

Solución 2 Utilidades de resolución de máscaras archivo src/utils/mask_utils.py. Características principales redimensionado de máscaras desde la resolución de entrada del modelo a la resolución original del fotograma, soporte para distintos formatos binarios y flotantes, elección de interpolaciones óptimas y validación de dimensiones. Funciones clave resize_mask_to_original, calculate_mask_area y process_yolo_masks para producir máscaras alineadas y listas para métricas o renderizado.

Solución 3 Integración en el detector archivo src/core/detector.py. Se añade el parámetro class_config_path con valor por defecto fastrtc-test/config/data.yml. Cambios clave resolución de nombres de clase cargando el mapeo YAML durante la inicialización con prioridad sobre model.names y fallback seguro, además de un posprocesado que captura las dimensiones originales del fotograma y redimensiona las máscaras para mantener precisión geométrica y de área.

Formato del archivo de configuración YAML. El archivo fastrtc-test/config/data.yml debe incluir nc con el número de clases por ejemplo 113 y un array names con los nombres en el orden correcto de índices. Es recomendable documentar en comentarios los índices relevantes como food_label en 44, invoice en 55 y qr_code en 81 para facilitar auditorías.

Uso básico con un modelo TensorRT. Inicializa el detector con la ruta del .engine y el class_config_path, procesa el fotograma y verifica que las detecciones ya muestran nombres legibles y que mask_array coincide con la resolución del frame original. Para rutas personalizadas basta con indicar el camino al YAML al construir el detector.

Consideraciones de rendimiento. Carga de nombres impacto mínimo y carga única en la inicialización con consumo aproximado de 5 KB para 113 clases. Redimensionado de máscaras mediante interpolación bilineal optimizada en OpenCV con tiempos orientativos de 1 a 2 ms por máscara dependiendo de la diferencia de resolución y reserva temporal de memoria solo cuando cambia el tamaño. El sistema evita redimensionar si ya coincide la resolución.

Pruebas y validación. Ejecuta la batería de pruebas desde el directorio del proyecto por ejemplo cd fastrtc-test y después python test_tensorrt_fixes.py para validar estructura del YAML, carga y mapeo de clases, redimensionado de máscaras a múltiples resoluciones, integración del detector y comportamiento de fallback en escenarios de error controlado.

Gestión de errores. Carga de nombres maneja archivo inexistente, YAML mal formado o campos obligatorios ausentes y emite mensajes claros para diagnóstico. Procesamiento de máscaras maneja arreglos vacíos o inválidos, discrepancias de dimensión y aplica un retorno seguro en resolución del modelo con avisos de depuración.

Registro de depuración. Activa logging en nivel debug para ver mensajes como Uso de nombre desde config 44 a food_label o Redimensionada máscara de 640x640 a 1080x1920 área 150000. También es posible habilitar FASTRTC_DEBUG=true para una traza más detallada durante la ejecución.

Compatibilidad. Formatos admitidos incluye TensorRT .engine como objetivo principal, además de compatibilidad hacia atrás con PyTorch .pt y soporte esperado para ONNX .onnx. Resoluciones soportadas HD 1280x720, Full HD 1920x1080, 4K 3840x2160 y resoluciones personalizadas. Versiones YOLO soportadas YOLOv8 y YOLOv11 con cabeza de segmentación y modelos personalizados siempre que incluyan la configuración adecuada.

Solución de problemas. Si aparece Config file not found verifica la existencia de fastrtc-test/config/data.yml. Si se informa Class mapping empty valida la estructura YAML con una carga segura y revisa el número de clases nc. Si falla el redimensionado de máscaras confirma la instalación de OpenCV y su versión de compilación. En modo debug, inspecciona los registros para identificar índices fuera de rango o máscaras degeneradas.

Mejoras futuras. Aceleración de redimensionado de máscaras con CUDA, caché de máscaras redimensionadas para detecciones repetidas, soporte para máscaras poligonales y generación automática del archivo de configuración a partir de metadatos del modelo. Extensiones de configuración como múltiples archivos, actualización dinámica de nombres, jerarquía de clases y canalizaciones personalizadas de posprocesado.

Referencias de rendimiento observadas. De HD a Full HD con 5 máscaras alrededor de 2 ms y unos 5 MB adicionales. De Full HD a 4K con 10 máscaras alrededor de 8 ms y unos 20 MB. Desde la resolución del modelo a HD con 3 máscaras alrededor de 1 ms y unos 2 MB, medido en Intel i7 10700K con 32 GB de RAM. Los resultados variarán según GPU CPU y librerías.

Cómo encaja con Q2BSTUDIO. Integramos estas optimizaciones en soluciones de software a medida y aplicaciones a medida para visión artificial, MLOps y analítica, alineándolo con proyectos de ia para empresas, agentes IA y despliegues productivos en servicios cloud aws y azure. Si buscas un partner que te acompañe de extremo a extremo en inteligencia artificial consulta nuestro servicio de IA en la página de inteligencia artificial. Para productos multiplataforma robustos y escalables visita nuestra solución de software a medida y aplicaciones a medida. Nuestro equipo también cubre ciberseguridad, pentesting, servicios inteligencia de negocio y power bi para convertir datos y modelos en decisiones con impacto.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat