v1.7.0¶
v1.7.0 introduce el módulo cpufreq (control de la frecuencia de la CPU / overclocking), el módulo os de MicroPython, el control de actualización / resolución del sensor térmico MLX, y la puesta en marcha inicial de la placa OpenMV Cam M7 (STM32F7). La firma de fir.init(), el manejo de fotogramas sobredimensionados y la calidad JPEG predeterminada cambiaron — lee los cambios incompatibles a continuación.
Aspectos destacados¶
cpufreq— consulta / ajusta la frecuencia de la CPU, con un ejemplo de overclocking.MLX térmico —
fir.init()acepta una tasa de actualización y una resolución de ADC.OpenMV Cam M7 — puesta en marcha inicial de la placa STM32F7.
Incompatible:
fir.init()ahora es solo por palabra clave, los fotogramas sobredimensionados se recortan automáticamente y la calidad JPEG predeterminada disminuyó — consulta los cambios incompatibles.
Nuevas características¶
cpufreq— se añadió el módulocpufreqconcpufreq.get_frequency()/cpufreq.set_frequency()y las constantesCPUFREQ_120MHZ/144/168/192/216MHZ, más un ejemplooverclocking.py.MLX / FIR —
fir.init()ahora acepta una tasa de actualización y una resolución de ADC, con los controlesrefresh/resolutioncorrespondientes para el sensor térmico MLX.
Otros cambios y mejoras¶
Se ajustó la región AGC/AEC del OV7725 (menos desenfoque por movimiento), se habilitó la barra de colores sólida del DSP para el OV7725 y se corrigió la transmisión del búfer de fotogramas (frame buffer) del IDE (sin fotogramas obsoletos / duplicados).
Correcciones de errores¶
Se corrigió un desbordamiento del tamaño de transferencia DCMI/DMA en
sensor.snapshot(), se depuró el manejo del desbordamiento del búfer de compresión JPEG, se mejoró la región operativa AEC/AGC del OV7725 para una mejor exposición/ganancia automática y se corrigieron los scripts de barra de colores / autodiagnóstico del OV7725.
Hardware y compatibilidad de placas¶
OpenMV Cam M7 (STM32F7 / OPENMV7) — compatibilidad inicial de placa y gestor de arranque (bootloader).
OpenMV 2 — el reloj del sensor se controla mediante la salida MCO.
Cambios incompatibles en la API¶
Rupturas de la API visibles para el usuario entre v1.6.0 y v1.7.0. Alcance: módulos C de Python en modules/ y bibliotecas de Python en scripts/libraries/.
Cada cambio está etiquetado con su impacto:
minor — API limitada; solo afecta a los scripts que la usaban.
behavior — misma API, resultados diferentes; vuelve a revisar los scripts ajustados.
Los cambios están agrupados por impacto en ese orden. Si solo quieres portar tu código, ve directamente a la lista de verificación de migración al final. Cada hash de commit enlaza a su diff en GitHub.
fir.init() ahora es solo por palabra clave (minor)¶
fir.init() se rediseñó para tomar argumentos por palabra clave (type= / refresh= / resolution=, refresh predeterminado 64 Hz, máximo 512 Hz) en lugar de argumentos posicionales. Actualiza las llamadas posicionales fir.init(...) a la forma por palabra clave.
Commits: 958c5b7f7
Los fotogramas sobredimensionados se recortan automáticamente a QVGA (behavior)¶
sensor.snapshot() ya no genera un error cuando el fotograma sin procesar supera el tamaño máximo de fotograma sin procesar de la placa — los fotogramas sin procesar sobredimensionados ahora se ventanan/recortan a QVGA en su lugar (solo el modo JPEG sin procesar sigue siendo rechazado). Elige un tamaño de fotograma compatible si dependías del error anterior.
El tamaño máximo de fotograma del OpenMV 2 se redujo a QVGA (behavior)¶
En el OpenMV 2, el tamaño máximo de fotograma de imagen integral / sin procesar / mancha (blob) se redujo de VGA a QVGA. Solicitar VGA para operaciones de escala de grises / RGB565 / mancha (blob) / imagen integral en el OpenMV 2 ahora recorta a QVGA — rediseña los scripts que dependían del procesamiento VGA en esa placa.
Commits: 7499062bd
Se redujo la calidad JPEG predeterminada (behavior)¶
La calidad JPEG predeterminada se redujo (predeterminada 50 → 35, con umbrales de submuestreo del IDE más bajos) para una transmisión más fiable. Los JPEG capturados/transmitidos tienen visiblemente menor calidad de forma predeterminada — pasa un quality explícito a image.compress() si necesitas la calidad anterior.
Commits: d9c8b1535
Lista de verificación de migración¶
Para una migración limpia a v1.7.0, el trabajo típico es:
Convierte las llamadas posicionales
fir.init(...)a la forma por palabra clave (el cambio de fir.init).Usa un tamaño de fotograma compatible en lugar de depender del antiguo error de fotograma sobredimensionado (el cambio de fotograma sobredimensionado), y rediseña el procesamiento VGA en el OpenMV 2 (el cambio de tamaño de fotograma del OpenMV 2).
Pasa un
qualityexplícito aimage.compress()si necesitas la calidad JPEG anterior (el cambio de calidad JPEG).
Todos los demás scripts funcionan sin cambios.