v3.6.0

v3.6.0 brengt volledige OV5640 5 MP-cameraondersteuning met nieuwe hogeresolutie-framesizes (HD / FHD / QHD / QXGA / WQXGA), werkt de kern bij naar MicroPython 1.12, optimaliseert de software-JPEG-encoder en AprilTag- / lijndetectie sterk, voegt UVC (USB-video) toe op de OpenMV Cam H7 Plus, en ondersteunt QSPI-flashgeheugen tot 32 MB. Het gedrag van MicroPython en get_histogram() is gewijzigd — lees de ingrijpende wijzigingen hieronder.

Hoogtepunten

  • OV5640 5 MP — volledige cameradriver met nieuwe HD- / FHD- / QHD- / QXGA- / WQXGA- / WQXGA2-framesizes.

  • MicroPython 1.12 — de meegeleverde kern is bijgewerkt.

  • Snellere pijplijn — sterk geoptimaliseerde software-JPEG-codering, AprilTag-detectie, LSD-lijndetectie, histeq() en QR-code-decodering.

  • UVC op H7 Plus — de OpenMV Cam H7 Plus kan fungeren als een USB-videoapparaat.

  • Ingrijpend: het gedrag van MicroPython, de normalisatie van image.get_histogram() en de JPEG/grijswaarden-uitvoer van de OpenMV 3 zijn gewijzigd — zie de ingrijpende wijzigingen.

Nieuwe functies

  • OV5640 — volledige ondersteuning voor de OV5640 5 MP-camera toegevoegd (configuratie van de externe klok in de sensor-init) en de nieuwe sensor.HD / FHD / QHD / QXGA / WQXGA / WQXGA2-framesize-constanten.

  • TIM4 — vrijgemaakt zodat deze bruikbaar is vanuit MicroPython.

  • Een DAC-getimede-schrijfvoorbeeld toegevoegd (dac_write_timed.py) en dac_control.py hernoemd naar dac_write.py.

Overige wijzigingen en verbeteringen

  • De meegeleverde MicroPython bijgewerkt naar 1.12; de software-JPEG-encoder sterk geoptimaliseerd (VGA-pad, grijswaarden-/binaire paden, integer- in plaats van floating-point-wiskunde, geoptimaliseerde MCU-capture), LSD find_line_segments(), AprilTag-detectie, Image.histeq() en QR-code- / RGB-naar-grijs-conversie; QSPI-flashondersteuning toegevoegd voor chips tot 32 MB; het verouderde CMSIS-CNN cnn.py-voorbeeld verwijderd.

Bugfixes

Camera en beeldverwerking:

  • JPEG-coderingcorruptie bij HQQQVGA gerepareerd, binaire (1-bits) afbeelding → JPEG-compressie, een find_line_segments()-regressie (de NOTDEF niet-uitgelijnde controle opnieuw ingeschakeld) en kleine OV2640-driverproblemen.

Systeem en boot:

  • Zelftest- / bestandssysteemcorruptie gerepareerd (selftest.py draait nu vóór USB MSC wordt ingeschakeld, en USB MSC wordt bij een fatale fout ingeschakeld zodat de host het foutenlog kan lezen), de pyb.DAC write_timed(), de H7 machine.I2C-timings, het opnieuw inschakelen van F7-overdrive na stopmodus, en het rtc.wakeup()-interval van stop_mode.py.

Hardware- en boardondersteuning

  • OV5640 — volledige 5 MP-cameradriver met hogeresolutie-framesizes.

  • OpenMV Cam H7 Plus — UVC-ondersteuning (USB-video); het OPENMV4R-boardtarget is hernoemd naar OPENMV4P.

  • QSPI-flashgeheugen — chips tot 32 MB worden nu ondersteund.

Ingrijpende API-wijzigingen

Voor gebruikers zichtbare API-wijzigingen tussen v3.5.2 en v3.6.0. Reikwijdte: Python C-modules in modules/ en Python-bibliotheken in scripts/libraries/.

Alle drie de ingrijpende wijzigingen zijn gedragswijzigingen (dezelfde API, andere resultaten) — controleer de betrokken scripts opnieuw. Elke commit-hash linkt naar zijn diff op GitHub.

MicroPython bijgewerkt naar 1.12 (gedrag)

De meegeleverde MicroPython-kern is bijgewerkt naar 1.12. Het gedrag van de standaardbibliotheek en de taal volgt de upstream MicroPython 1.12; controleer scripts opnieuw die afhankelijk zijn van versiespecifiek micropython- / standaardmodulegedrag.

Commits: eafd431ea

image.get_histogram()-drempelwaardenormalisatie gewijzigd (gedrag)

image.get_histogram() (en get_statistics()) met kleurdrempelwaarden normaliseert nu op basis van het aantal gedrempelde pixels in plaats van het hele aandachtsgebied (ROI), en gebruikt floor in plaats van round voor de bin-indexering. Histogram-/statistiekwaarden voor gedrempelde aanroepen verschillen van eerdere releases — stem code die met absolute histogramwaarden vergeleek opnieuw af.

Commits: 7cf0f8089

OpenMV 3 JPEG/grijswaarden-uitvoer gewijzigd (gedrag)

Om flashgeheugen te besparen, is de YUV-opzoektabel van de OpenMV 3 (M7) uitgeschakeld, waardoor de pixelwaarden van de JPEG- en grijswaarden-uitvoer op de OpenMV 3 iets anders worden berekend. De uitvoer is nog steeds geldig, maar verschilt marginaal van eerdere releases; controleer pixel-exacte vergelijkingen op de OpenMV 3 opnieuw.

Commits: 0e4b46e41

Migratiechecklist

Valideer scripts die afhankelijk zijn van versiespecifiek MicroPython-gedrag opnieuw tegen 1.12 (de MicroPython-bump), stem code die met absolute get_histogram() / get_statistics()-waarden vergeleek opnieuw af bij gebruik van kleurdrempelwaarden (de histogramwijziging), en controleer pixel-exacte vergelijkingen op de OpenMV 3 opnieuw (de uitvoerwijziging op de OpenMV 3). Alle andere scripts draaien ongewijzigd.