v4.2.4

v4.2.4 stroomlijnt de camera-handshake met één enkele get_state()-opdracht, versnelt de live framebufferweergave door de berekening van de JPEG-focusmetriek van het broadcastpad af te halen, en voegt weergave van ruwe ongecomprimeerde frames toe onder het gecomprimeerde pixformat-pad. Deze release blijft op de Qt Creator 10.0.1-basis en bevat OpenMV-firmware 4.5.9. De meegeleverde AprilTags-voorbeelden zijn herschreven voor de nieuwe firmware-AprilTag-API; gebruikersscripts die op basis van de oude API zijn geschreven, moeten mogelijk worden bijgewerkt.

Hoogtepunten

  • Een enkele get_state()-handshake leegt en bevraagt de print- en framebuffers van de camera met één opdracht op firmware die dit ondersteunt, ter vervanging van afzonderlijke getTxBuffer/frameSizeDump-polling.

  • Snellere live framebufferweergave haalt de dure berekening van de JPEG-focusmetriek uit het framebuffer-broadcastpad en verplaatst deze naar de histogram-update.

  • Ruwe ongecomprimeerde frames (binair, grayscale8 en RGB565) kunnen nu naast JPEG worden ontvangen en weergegeven onder het gecomprimeerde pixformat-pad.

  • Meegeleverde firmware 4.5.9 voor alle ondersteunde boards, inclusief vernieuwde UVC-binaries.

Nieuwe functies

  • De framebuffer-viewer kan nu naast JPEG ook ruwe ongecomprimeerde frames (binair, grayscale8 en RGB565) ontvangen en weergeven die onder het gecomprimeerde pixformat-pad worden verzonden. De rij-stride voor binaire frames is uitgelijnd op 4 bytes. (cba5f5dda)

Overige wijzigingen en verbeteringen

  • De IDE leegt en bevraagt de print- en framebuffers van de camera nu met één nieuwe get_state()-opdracht op firmware die dit ondersteunt, in plaats van afzonderlijke getTxBuffer/frameSizeDump-polling, waardoor connect/disconnect/start-handshakes efficiënter worden. Een versie-afhankelijke vertakking roept getState() aan en zendt een nieuw getStateDone()-signaal uit bij voltooiing van frame-size en tx-buffer. (ce137a7b6, 0cf969bfd)

  • De live framebufferweergave is sneller omdat de berekening van de JPEG-focusmetriek uit broadcastUpdate() is verplaatst naar de histogram-update, waar deze nu draait op een pixmap die is verkleind tot 160px breed. QCustomPlot-replots gebruiken nu replotting in de wachtrij. (9dbcd8875)

  • Alle meegeleverde AprilTag-voorbeelden (find_apriltags, find_apriltags_3d_pose, find_apriltags_max_res, find_apriltags_w_lens_zoom, find_small_apriltags, de pixy I2C/SPI/UART-emulatievoorbeelden, modbus_apriltag, apriltag_tracking en het RPC-voorbeeld popular_features_as_the_remote_device) zijn bijgewerkt naar de nieuwe firmware-AprilTag-API met property-accessors en vereenvoudigd. Het meegeleverde TensorFlow-voorbeeld tf_object_detection.py stelt nu een 240x240 windowing-uitsnede in via sensor.set_windowing((240, 240)), en het Bluetooth BLE-temperatuurvoorbeeld (examples/10-Bluetooth/ble_temperature.py) is verwijderd. (42a646b63)

Platform- en toolondersteuning

  • Qt Creator-basis: 10.0.1.

  • Meegeleverde OpenMV-firmware: bijgewerkt van 4.5.8 -> 4.5.9 voor alle ondersteunde boards, inclusief OPENMV2/3/4/4P/PT, OPENMV_RT1060 en ARDUINO_GIGA/NICLA_VISION/PORTENTA_H7/NANO_RP2040_CONNECT/NANO_33_BLE_SENSE, met vernieuwde UVC-binaries. (42a646b63)

  • OpenMV IDE-versie: verhoogd van 4.2.1 -> 4.2.4.

Breaking changes

De meegeleverde AprilTags-voorbeelden zijn herschreven voor de nieuwe firmware-AprilTag-API: tag-accessors zijn nu properties (tag.rect, tag.cx, tag.cy, tag.rotation, tag.id, tag.name) in plaats van methodeaanroepen. Het meegeleverde voorbeeld find_apriltags.py demonstreert nu alleen de TAG36H11-familie; de code voor multi-familieselectie (TAG16H5/TAG25H7/TAG25H9/TAG36H10/ARTOOLKIT) en de family_name()-hulpfunctie zijn verwijderd. Gebruikersscripts die op basis van de oude methode-aanroep-AprilTag-API zijn geschreven, moeten mogelijk worden bijgewerkt om overeen te komen met firmware 4.5.9.