v4.2.4

v4.2.4 zjednodušuje handshake s kamerou jediným příkazem get_state(), zrychluje živé zobrazení framebufferu přesunem výpočtu metriky zaostření JPEG mimo cestu vysílání a přidává zobrazení surových nekomprimovaných snímků pod cestou komprimovaného pixformatu. Toto vydání zůstává na základu Qt Creator 10.0.1 a přibaluje firmware OpenMV 4.5.9. Přibalené příklady April-Tags byly přepsány pro nové API AprilTag ve firmwaru; uživatelské skripty napsané proti starému API mohou vyžadovat aktualizaci.

Hlavní novinky

  • Jediný handshake get_state() na firmwaru, který jej podporuje, vyprázdní a dotáže se na tiskový a snímkový buffer kamery jediným příkazem a nahrazuje samostatné dotazování getTxBuffer/frameSizeDump.

  • Rychlejší živé zobrazení framebufferu přesouvá náročný výpočet metriky zaostření JPEG z cesty vysílání framebufferu do aktualizace histogramu.

  • Surové nekomprimované snímky (binary, grayscale8 a RGB565) lze nyní kromě JPEG přijímat a zobrazovat pod cestou komprimovaného pixformatu.

  • Přibalený firmware 4.5.9 pro všechny podporované desky, včetně aktualizovaných UVC binárek.

Nové funkce

  • Prohlížeč framebufferu nyní může kromě JPEG přijímat a zobrazovat surové nekomprimované snímky (binary, grayscale8 a RGB565) odeslané pod cestou komprimovaného pixformatu. Krok řádku binárních dat je zarovnán na 4 bajty. (cba5f5dda)

Další změny a vylepšení

  • IDE nyní vyprázdní a dotáže se na tiskový a snímkový buffer kamery jediným novým příkazem get_state() na firmwaru, který jej podporuje, namísto samostatného dotazování getTxBuffer/frameSizeDump, čímž zefektivňuje handshaky při připojení/odpojení/spuštění. Verzí podmíněná větev volá getState() a po dokončení frame-size a tx-buffer vyšle nový signál getStateDone(). (ce137a7b6, 0cf969bfd)

  • Živé zobrazení framebufferu je rychlejší, protože výpočet metriky zaostření JPEG byl přesunut z broadcastUpdate() do aktualizace histogramu, kde nyní běží na pixmapě zmenšené na šířku 160 px. Překreslování QCustomPlot nyní používá frontované překreslování. (9dbcd8875)

  • Všechny přibalené příklady AprilTag (find_apriltags, find_apriltags_3d_pose, find_apriltags_max_res, find_apriltags_w_lens_zoom, find_small_apriltags, příklady emulace pixy I2C/SPI/UART, modbus_apriltag, apriltag_tracking a RPC příklad popular_features_as_the_remote_device) byly aktualizovány na nové API AprilTag ve firmwaru pomocí přístupových vlastností a zjednodušeny. Přibalený příklad TensorFlow tf_object_detection.py nyní nastavuje ořez okna 240x240 pomocí sensor.set_windowing((240, 240)) a příklad Bluetooth BLE teploty (examples/10-Bluetooth/ble_temperature.py) byl odstraněn. (42a646b63)

Podpora platforem a nástrojů

  • Základ Qt Creator: 10.0.1.

  • Přibalený firmware OpenMV: aktualizován 4.5.8 -> 4.5.9 pro všechny podporované desky, včetně OPENMV2/3/4/4P/PT, OPENMV_RT1060 a ARDUINO_GIGA/NICLA_VISION/PORTENTA_H7/NANO_RP2040_CONNECT/NANO_33_BLE_SENSE, s aktualizovanými UVC binárkami. (42a646b63)

  • Verze OpenMV IDE: zvýšena 4.2.1 -> 4.2.4.

Změny narušující zpětnou kompatibilitu

Přibalené příklady April-Tags byly přepsány pro nové API AprilTag ve firmwaru: přístupy ke značkám jsou nyní vlastnosti (tag.rect, tag.cx, tag.cy, tag.rotation, tag.id, tag.name) namísto volání metod. Přibalený příklad find_apriltags.py nyní demonstruje pouze rodinu TAG36H11; jeho kód pro výběr více rodin (TAG16H5/TAG25H7/TAG25H9/TAG36H10/ARTOOLKIT) a pomocná funkce family_name() byly odstraněny. Uživatelské skripty napsané proti starému API AprilTag s voláním metod mohou vyžadovat aktualizaci pro firmware 4.5.9.