Noticia Savant 0.2.7 ya fue liberado y llega con muchas características nuevas

Savant


Ejemplos de uso de Savant


Se dio a conocer el lanzamiento de la nueva versión de Savant 0.2.7 incluye varias correcciones de errores, cuatro demostraciones nuevas y otras mejoras, incluida documentación y evaluaciones comparativas.

Para quienes desconocen del marco, deben saber que este se encarga de todo el trabajo con GStreamer o FFmpeg, lo que permite concentrarse en crear canalizaciones de salida optimizadas mediante la sintaxis declarativa (YAML) y las funciones de Python.

Savant oculta todos los aspectos internos de Gstreamer al desarrollador y proporciona herramientas prácticas para implementar aplicaciones de IA de transmisión en la vida real. Utiliza el modelo estándar de Nvidia PeopleNet para detectar personas y sus rostros y sobre todo en lugares donde se aplican normas de privacidad, el framework permite el rastreo y desenfoque de los rostros

Principales novedades de Savant 0.2.7​


Esta nueva versión de Savant 0.2.7 presenta una serie de características importantes de las cuales se destaca la integración de Prometheus, con lo cual el adaptador de canalización y búfer ahora puede exportar métricas de ejecución a Prometheus y Grafana, mejorando la observabilidad y el monitoreo del desempeño y un modo de ejecución de «Sólo Compilación» en el cual los módulos ahora pueden compilar modelos inferidos por TRT sin ejecutar la canalización, lo que mejora la previsibilidad en la implementación de las tuberías.

También se ha implementado un adaptador de búfer, que implementa un búfer transaccional persistente en disco para los datos que viajan entre adaptadores y módulos, lo que permite el desarrollo de canalizaciones robustas y resistentes a ráfagas de tráfico.

Ademas de ello, Savant 0.2.7 ahora ofrece nuevas API’s, entre las cuales se destaca un controlador de «Apagado en PyFunc», la cual es una nueva API que facilita la gestión adecuada de las operaciones de cierre de tuberías para liberar recursos y notificar a sistemas externos sobre la terminación, y también la API de utilización de colas para PyFunc con la cual Savant permite agregar colas entre PyFuncs para implementar procesamiento paralelo y gestión de ráfagas de tráfico.

Por otro lado, también se destaca en Savant 0.2.7 la incorporación de cuatro nuevas demostraciones, que amplían las posibilidades y la versatilidad de la plataforma:

  1. Modelo de Detección RT-DETR: Esta demostración exhibe la aplicación del modelo de detección RT-DETR en tiempo real con Savant. Aunque este modelo puede ser un poco más lento que el YOLOV8 estándar, abre nuevas posibilidades para la visión por computadora en tiempo real, al estar basado en transformadores.
  2. Posprocesamiento basado en CuPy: Savant 0.2.7 introduce un acceso directo a tensores asignados a GPU y funciones mejoradas que convierten estos tensores entre diferentes formatos, como OpenCV GpuMat, PyTorch y CuPy. Esta mejora es especialmente útil para modelos que implican grandes tensores y posprocesamiento complejo.
  3. Integración de PyTorch: Savant demuestra ahora la integración de PyTorch en su canalización, permitiendo la ejecución de inferencia y posprocesamiento acelerados por GPU en Python puro sin transferencias excesivas entre CPU y GPU.
  4. Cuadros Delimitadores Orientados: La plataforma ahora admite cuadros delimitadores orientados, lo que facilita su uso en aplicaciones que requieren detección de objetos con ángulos de rotación.

De los demás características que se destacan de esta nueva versión:

  • Filtrado de cuadros en entrada y Salida: Savant ahora permite el filtrado de datos para evitar el procesamiento innecesario de fotogramas de vídeo.
  • Postprocesamiento del modelo en GPU: Savant permite el acceso directo a tensores de salida del modelo desde la memoria de la GPU, mejorando la eficiencia en el procesamiento de grandes tensores.
  • Funciones de representación de memoria de GPU: Se proporcionan funciones para la conversión eficiente de buffers de memoria entre diferentes formatos en la GPU.
  • Operaciones avanzadas de modificación de atributos de Objetos: Se han implementado nuevas operaciones que facilitan la modificación de atributos de objetos en Savant.

Por último y no menos importante, vale la pena mencionar que Savant 0.2.7 es la última versión de funciones de la rama 0.2.X. Las siguientes versiones de la rama 0.2.X serán versiones de mantenimiento y corrección de errores. El desarrollo de funciones cambia a la rama 0.3.X basada en DeepStream 6.4 y se menciona que no admitirá la familia Jetson Xavier porque Nvidia no los admite con DS 6.4.

Finalmente si estás interesado en poder conocer más al respecto sobre esta nueva versión, puedes consultar los detalles en el siguiente enlace.

Continúar leyendo...