v3.1.0

A versão v3.1.0 introduz o módulo termopilha fir (MLX90620 / MLX90640 / AMG8833), depuração e descoberta IDE por WiFi via WINC1500, um firmware de webcam UVC, sensor.shutdown(), image.selective_search(), e os módulos uctypes e pyb.CAN. Alguns métodos de image foram removidos na OpenMV Cam M4 — consulte as alterações que quebram compatibilidade abaixo.

Destaques

  • Módulo fir — suporte a câmara térmica termopilha MLX90620 / MLX90640 / AMG8833.

  • WiFi IDE — depuração e programação por WiFi (WINC1500) com descoberta por broadcast UDP (sem IP fixo necessário).

  • Webcam UVC — um firmware USB Video Class para usar a câmara como webcam.

  • Novas APIssensor.shutdown(), image.selective_search(), e os módulos uctypes / pyb.CAN.

  • Alteração que quebra compatibilidade: image.mean() e image.morph() deixaram de estar disponíveis na OpenMV Cam M4 — consulte as alterações que quebram compatibilidade.

Novas funcionalidades

  • fir — adicionado o módulo termopilha com suporte MLX90620 / MLX90640 / AMG8833: fir.init(), fir.snapshot(), fir.read_ir(), fir.draw_ir() e as constantes FIR_MLX90640 / FIR_AMG8833, com exemplos de Thermopile-Shield por sensor.

  • WiFi IDE — programação/depuração por WiFi via WINC1500 com descoberta por broadcast UDP para que o OpenMV IDE possa localizar as câmaras automaticamente (o firmware lê as definições STA/AP a partir do IDE).

  • Webcam UVC — adicionado um firmware de webcam USB Video Class.

  • sensor.shutdown() — desligue a câmara via o pino PWDN.

  • image.selective_search() — retângulos de proposta de região, com um exemplo selective_search.py.

  • Módulos — ativado o módulo uctypes, reativado pyb.CAN, e ativados módulos MicroPython adicionais; adicionado um exemplo USB-HID e uma função para verificar se o IDE está ligado.

Outras alterações e melhorias

  • Adicionado um buffer de receção por socket para um socket WiFi recv mais fiável; os métodos matemáticos de image (top_hat / black_hat / negate / replace / add / sub / mul / div / min / max / difference / blend) estão agora por detrás de um flag de compilação IMLIB_ENABLE_MATH_OPS (ativado por padrão no firmware padrão).

Correções de erros

Processamento de imagem e câmara:

  • Corrigido image.save() que não fechava o ficheiro após escrever imagens brutas (gravações truncadas/corrompidas) e a configuração GPIO SPI do FLIR Lepton.

Sistema e conetividade:

  • Aplicada uma solução para a errata do SPI BUSY-flag do STM32F7 (2.11.2), corrigidos o intervalo de broadcast de depuração do WiFi IDE / limpeza de sockets / temporizador de depuração, a análise de inteiros do openmv.ini, e a latência flash do H7.

Hardware e suporte a placas

  • Sensores termopilha (FIR) MLX90620 / MLX90640 / AMG8833.

  • Webcam UVC — firmware USB Video Class.

  • WINC1500 — depuração e descoberta IDE por WiFi.

Alterações que quebram compatibilidade na API

Alterações visíveis pelo utilizador na API entre v3.0.0 e v3.1.0. Âmbito: módulos C Python em modules/ e bibliotecas Python em scripts/libraries/.

As alterações que quebram compatibilidade são alterações de comportamento limitadas à OpenMV Cam M4 — verifique novamente os scripts afetados. Cada hash de commit tem uma ligação para o seu diff no GitHub.

image.mean() / image.morph() removidos na OpenMV Cam M4 (comportamento)

Para caber na flash/RAM da OpenMV Cam M4 (OMV2), image.mean() e image.morph() foram excluídos da compilação nessa placa; chamá-los levanta agora um erro de «indisponível». Use um filtro diferente (por ex. image.median() / image.midpoint()) ou execute a filtragem por morfologia / média numa câmara mais recente (M7 / H7). As outras placas não são afetadas.

Commits: abe97a73b, 4e34b32ec

Lista de verificação de migração

Na OpenMV Cam M4, substitua image.mean() / image.morph() por outro filtro ou mova esse processamento para uma câmara M7 / H7 (a remoção dos métodos do M4). Todos os outros scripts funcionam sem alterações.