v3.6.5¶
v3.6.5 actualiza TensorFlow y ulab, mejora sustancialmente la cámara HM01B0 (resoluciones arbitrarias, QQVGA, recorte, set_auto_exposure() y una corrección anti-parpadeo), e incorpora el uso de SDRAM externa de la Portenta y soporte de placas de producción. Se eliminaron las herramientas/ejemplos heredados de entrenamiento de CMSIS-NN y se redujo el framebuffer de la OpenMV 4 Plus — lee los cambios incompatibles a continuación.
Aspectos destacados¶
HM01B0 — resoluciones arbitrarias, QQVGA, recorte y soporte de
set_auto_exposure(), además de una corrección de parpadeo de la exposición automática.TensorFlow / ulab actualizados a sus versiones más recientes.
Portenta — uso de SDRAM externa y archivos de placa de producción.
Correcciones — corrección de lente, calidad de imagen a bajas resoluciones, y una corrección del reloj de FPS.
Incompatible: se eliminaron las herramientas y ejemplos heredados de entrenamiento/conversión de CMSIS-NN y se redujo el framebuffer de la OpenMV 4 Plus — consulta los cambios incompatibles.
Nuevas funciones¶
HM01B0 — se añadió soporte de resolución arbitraria, QQVGA y stubs adicionales, recorte en el lado del sensor, y soporte de
sensor.set_auto_exposure().Lectura de Apriltag — se añadió un ejemplo de seguimiento de apriltag con control de lectura.
Otros cambios y mejoras¶
Se actualizaron TensorFlow y
ulaba sus versiones más recientes; se añadió el uso de SDRAM externa de la Portenta y archivos de placa de producción/CI; se limpiaron el controlador MT9V034 y las funciones de acceso al framebuffer.
Corrección de errores¶
Cámara e imagen:
Se corrigieron el parpadeo durante la exposición automática en el HM01B0, la corrección de lente, la calidad de imagen a resoluciones más bajas, la copia de línea del OV5640/JPEG (
dest_fb), el reloj de FPS, y la devolución de 0 cuandobppes negativo; se eliminó un volteo horizontal innecesario del HM01B0.
Hardware y compatibilidad con placas¶
HM01B0 — resoluciones arbitrarias, QQVGA y recorte.
Arduino Portenta H7 — SDRAM externa y archivos de placa de producción actualizados.
Cambios incompatibles en la API¶
Cambios de API visibles para el usuario entre v3.6.4 y v3.6.5. Alcance: módulos C de Python en modules/, bibliotecas de Python en scripts/libraries/, y las herramientas/ejemplos incluidos.
Cada cambio está etiquetado según su impacto:
behavior — misma API, resultados diferentes; vuelve a comprobar los scripts ajustados.
tooling — afecta a las herramientas de compilación/conversión o a los ejemplos incluidos, no a la API de Python del firmware.
Los cambios se agrupan por impacto en ese orden. Si solo quieres portar tu código, salta a la lista de comprobación de migración al final. Cada hash de commit enlaza a su diff en GitHub.
Framebuffer de la OpenMV 4 Plus reducido (behavior)¶
El framebuffer de la OpenMV 4 Plus se redujo a 20 MB (y se corrigió el tamaño del búfer de la OpenMV 2/3). Los scripts con memoria justa en la OpenMV 4 Plus que asignaban fotogramas/objetos muy grandes desde el framebuffer pueden ahora alcanzar los límites de asignación antes y deben volver a comprobarse.
Commits: 3a790a827
Herramientas y ejemplos heredados de CMSIS-NN eliminados (tooling)¶
Se eliminaron las herramientas heredadas de entrenamiento/conversión de modelos CMSIS-NN (nn_convert.py, nn_quantizer.py, los archivos de modelo LeNet/CIFAR/smile) y los scripts de ejemplo 25-Machine-Learning/nn_*.py. El módulo nn en sí sigue funcionando en esta versión (se elimina más tarde, en v3.9.0), pero las herramientas de generación de modelos CMSIS-NN ya no están — usa el flujo de trabajo de TensorFlow Lite (tf) en su lugar.
Commits: 588f79a62
Lista de comprobación de migración¶
Vuelve a comprobar las asignaciones grandes de framebuffer en la OpenMV 4 Plus frente al framebuffer reducido de 20 MB (el cambio del framebuffer), y mueve la generación de modelos CMSIS-NN al flujo de trabajo de TensorFlow Lite (la eliminación de las herramientas CMSIS-NN). Todos los demás scripts se ejecutan sin cambios.