v3.6.3#
v3.6.3 povoluje TensorFlow na OpenMV 3 / F7, přidává podporu modelů uint8/int8/float32, přepíná termální senzory MLX90640/AMG8833 na hardwarové I2C, přidává histogramy rozdílu obrazu a offset korekce objektivu a přepracovává řízení readoutu. Konstanty nápověd modulu image byly přejmenovány a změnilo se škálování draw_image() — přečtěte si přelomové změny níže.
Hlavní novinky#
TensorFlow na OpenMV 3 / F7 —
tfpovolen na kamerách založených na F7, s podporou modelů uint8/int8/float32.Termální senzory — MLX90640 a AMG8833 přepnuty na hardwarové I2C s novým ovladačem MLX90640.
Zpracování obrazu — podpora rozdílu obrazu v
get_histogram()a offset korekce prolens_corr().draw_image — alfa palety v režimu stupňů šedi a přepracované řízení readoutu.
Přelomová změna: konstanty nápověd modulu
imagebyly přejmenovány a záporné škálovánídraw_image()bylo odstraněno — viz přelomové změny.
Nové funkce#
TensorFlow — povolen
tfna OpenMV 3 / F7 a aktualizován TensorFlow s podporou modelů uint8 / int8 / float32.get_histogram()— přidána schopnost rozdílu obrazu.lens_corr()— přidána offset korekce.draw_image()— alfa palety nyní fungují v (nebilineárním) režimu stupňů šedi, s bilineárně interpolovanými alfa paletami a centrováním obrazu; nový kód řízení readoutu.
Další změny a vylepšení#
Přepnuty MLX90640 a AMG8833 na hardwarové I2C (nový ovladač MLX90640, HW I2C v konfiguraci desky pro externí senzory, vyšší počet pokusů o readout MLX), povolen I2C fast-mode-plus na kamerách, které jej podporují, přidáno čtení/zápis bajtů přes cambus s I2C časováním a vynecháno aplikování alfa, když je 0, kvůli výkonu.
Opravy chyb#
Kamera a zpracování obrazu:
Opravena a zrychlena korekce otočení, chyba převodu Bayer-to-YCbCr u levé hrany a přidána oprava hran do
bayer_to_y()/bayer_to_binary().
Nástroje:
Opraveny chyby Python 2/3 a pořadí volání
get_statistics().
Přelomové změny API#
Uživatelsky viditelné přelomové změny API mezi v3.6.2 a v3.6.3. Rozsah: Python C-moduly v modules/ a Python knihovny v scripts/libraries/.
Každá změna je označena svým dopadem:
minor — úzké API; ovlivní pouze skripty, které jej používaly.
behavior — stejné API, jiné výsledky; znovu zkontrolujte vyladěné skripty.
Změny jsou seskupeny podle dopadu v tomto pořadí. Pokud chcete jen přenést svůj kód, přejděte na kontrolní seznam migrace na konci. Každý hash commitu odkazuje na svůj diff na GitHubu.
Konstanty nápověd modulu image přejmenovány (minor)#
Konstanty nápověd kreslení modulu image byly přejmenovány: image.INTERPOLATE_BILINEAR → image.IMAGE_HINT_BILINEAR a image.IMAGE_CENTER → image.IMAGE_HINT_CENTER. Skripty předávající staré názvy konstant do draw_image() musí použít nové názvy. (Tyto jsou znovu přejmenovány na image.BILINEAR / image.CENTER v v3.7.0.)
Commity: 8f8872537
Záporné škálování draw_image() odstraněno (behavior)#
image.draw_image() již nepodporuje záporné škálování a bod vzorkování textury byl přesunut do středu pixelu. Skripty, které se spoléhaly na záporné škálování pro překlopení obrazu během kreslení, jej musí překlopit jiným způsobem a výstup se může oproti dřívějšku posunout až o půl pixelu.
Commity: 7e83dbb92
Kontrolní seznam migrace#
Přejmenujte image.INTERPOLATE_BILINEAR / image.IMAGE_CENTER na image.IMAGE_HINT_BILINEAR / image.IMAGE_HINT_CENTER (přejmenování konstant nápověd) a nahraďte jakékoli záporné škálování draw_image() explicitním překlopením (změna škálování draw_image). Všechny ostatní skripty běží beze změny.