v1.6.0¶
v1.6.0 adiciona um módulo de Time-of-Flight (tof), image.find_displacement() (fluxo óptico por correlação de fase via FFT), uma API de pooling de imagem, sensor.set_windowing() e opções de busca de image.find_template(). find_template() agora impõe sua ROI — leia as mudanças incompatíveis abaixo.
Destaques¶
Módulo
tof— suporte a sensor de distância Time-of-Flight.image.find_displacement()— correlação de fase via FFT (fluxo óptico).Pooling —
midpoint_pool()/mean_pool()e variantes com pooling.sensor.set_windowing()— janelamento / binning do sensor, com novos framesizes de baixa resolução.find_template()— adicionadas as opçõesstep/search(SEARCH_EX/SEARCH_DS) /roi.Incompatível:
image.find_template()agora impõe uma ROI válida — veja as mudanças incompatíveis.
Novos recursos¶
tof— adicionado um módulo de Time-of-Flight comtof.init()/tof.deinit()/tof.read_frame()/tof.draw_frame()/tof.write_reg()(suporte a sensor ToF via I2C).image.find_displacement()— adicionado deslocamento por correlação de fase via FFT (com subpixel e qualidade do resultado), com um exemplo de fluxo óptico.Pooling — adicionados
Image.midpoint_pool()/midpoint_pooled()/mean_pool()/mean_pooled().sensor.set_windowing((x, y, w, h))— janelamento/binning do sensor, com novos framesizessensor.B40x30/B64x32/B64x64para fluxo óptico.image.find_template()— adicionados os argumentos nomeadosstep,search(image.SEARCH_EXpadrão /image.SEARCH_DSbusca rápida em diamante) eroi.Image.copy_to_fb()— copia uma imagem para o framebuffer (com um deslocamento(x, y)opcional) e um exemplocopy2fb.py.
Outras mudanças e melhorias¶
A busca em diamante de
find_template()refina seu passo com mais precisão (mais preciso, mais lento); o binning é habilitado automaticamente para framesizes acima de VGA no OpenMV 2; o zoom/escala automático é desabilitado em VGA na OV7725.
Correções de bugs¶
Corrigidos os cálculos da imagem integral e do quadrado da imagem integral (afetando a precisão de Haar / característica / template-matching), a FFT 1D/2D e a correlação de fase, e o pooling in-place que redimensionava o framebuffer.
Suporte de hardware e placas¶
Sensor de distância Time-of-Flight (ToF) via I2C.
Novos framesizes de baixa resolução (
B40x30/B64x32/B64x64) para fluxo óptico.
Mudanças incompatíveis na API¶
Quebras de API visíveis ao usuário entre a v1.5.0 e a v1.6.0. Escopo: C-modules Python em modules/ e bibliotecas Python em scripts/libraries/.
A mudança incompatível é uma mudança de comportamento (mesma API, resultado diferente) — reverifique os scripts afetados. Cada hash de commit aponta para o seu diff no GitHub.
image.find_template() impõe sua ROI (comportamento)¶
image.find_template() agora valida sua região de interesse e lança uma exceção (“Region of interest is bigger than image!”) quando a ROI está ausente/superdimensionada ou menor que o template. Passe um roi=(x, y, w, h) válido que tenha pelo menos o tamanho do template e caiba dentro da imagem.
Commits: a25e0c162
Checklist de migração¶
Passe um roi válido (≥ tamanho do template, dentro da imagem) para image.find_template() (a mudança no find_template). Todos os outros scripts rodam sem alterações.