v1.6.0¶
v1.6.0 aggiunge un modulo Time-of-Flight (tof), image.find_displacement() (flusso ottico tramite correlazione di fase FFT), un’API di pooling delle immagini, sensor.set_windowing() e opzioni di ricerca per image.find_template(). find_template() ora impone la sua ROI — leggi le modifiche incompatibili più sotto.
In evidenza¶
Modulo
tof— supporto per sensore di distanza Time-of-Flight.image.find_displacement()— correlazione di fase FFT (flusso ottico).Pooling —
midpoint_pool()/mean_pool()e le varianti con pooling.sensor.set_windowing()— windowing / binning del sensore, con nuove framesize a bassa risoluzione.find_template()— aggiunte le opzionistep/search(SEARCH_EX/SEARCH_DS) /roi.Incompatibile:
image.find_template()ora impone una ROI valida — vedi le modifiche incompatibili.
Nuove funzionalità¶
tof— aggiunto un modulo Time-of-Flight contof.init()/tof.deinit()/tof.read_frame()/tof.draw_frame()/tof.write_reg()(supporto per sensore ToF I2C).image.find_displacement()— aggiunto lo spostamento tramite correlazione di fase FFT (con subpixel e qualità del risultato), con un esempio di flusso ottico.Pooling — aggiunti
Image.midpoint_pool()/midpoint_pooled()/mean_pool()/mean_pooled().sensor.set_windowing((x, y, w, h))— windowing/binning del sensore, con le nuove framesizesensor.B40x30/B64x32/B64x64per il flusso ottico.image.find_template()— aggiunti gli argomenti keywordstep,search(image.SEARCH_EXdi default /image.SEARCH_DSricerca a diamante rapida) eroi.Image.copy_to_fb()— copia un’immagine nel framebuffer (con un offset(x, y)opzionale) e un esempiocopy2fb.py.
Altre modifiche e miglioramenti¶
La ricerca a diamante di
find_template()raffina il suo passo in modo più preciso (più accurata, più lenta); il binning si abilita automaticamente per le framesize superiori a VGA sull’OpenMV 2; lo zoom/scala automatico è disabilitato a VGA sull’OV7725.
Correzioni di bug¶
Corretti i calcoli dell’immagine integrale e dell’immagine integrale al quadrato (che influivano sull’accuratezza di Haar / feature / template-matching), la FFT 1D/2D e la correlazione di fase, e il ridimensionamento del framebuffer durante il pooling in place.
Hardware e supporto schede¶
Sensore di distanza Time-of-Flight (ToF) su I2C.
Nuove framesize a bassa risoluzione (
B40x30/B64x32/B64x64) per il flusso ottico.
Modifiche API incompatibili¶
Rotture dell’API visibili all’utente tra v1.5.0 e v1.6.0. Ambito: moduli C Python in modules/ e librerie Python in scripts/libraries/.
La modifica incompatibile è un cambiamento di comportamento (stessa API, risultato diverso) — ricontrolla gli script interessati. Ogni hash di commit rimanda al relativo diff su GitHub.
image.find_template() impone la sua ROI (comportamento)¶
image.find_template() ora valida la sua regione di interesse e solleva un’eccezione («Region of interest is bigger than image!») quando la ROI è assente/sovradimensionata o più piccola del template. Passa una roi=(x, y, w, h) valida che sia almeno della dimensione del template e che rientri nell’immagine.
Commit: a25e0c162
Checklist di migrazione¶
Passa una roi valida (≥ dimensione del template, all’interno dell’immagine) a image.find_template() (la modifica di find_template). Tutti gli altri script funzionano invariati.