v3.6.0

v3.6.0 tuo täyden tuen OV5640 5 MP -kameralle uusilla korkearesoluutioisilla framesizeilla (HD / FHD / QHD / QXGA / WQXGA), päivittää ytimen versioon MicroPython 1.12, optimoi voimakkaasti ohjelmistopohjaisen JPEG-enkooderin sekä AprilTag- / viivantunnistuksen, lisää UVC:n (USB-video) OpenMV Cam H7 Plussaan ja tukee QSPI-flash-muistia jopa 32 MB:iin asti. MicroPythonin toiminta ja get_histogram() muuttuivat — lue rikkovat muutokset alta.

Kohokohdat

  • OV5640 5 MP — täysi kameraohjain uusilla HD- / FHD- / QHD- / QXGA- / WQXGA- / WQXGA2-framesizeilla.

  • MicroPython 1.12 — mukana toimitettu ydin päivitettiin.

  • Nopeampi putki — voimakkaasti optimoitu ohjelmistopohjainen JPEG-enkoodaus, AprilTag-tunnistus, LSD-viivantunnistus, histeq() ja QR-koodien dekoodaus.

  • UVC H7 Plussassa — OpenMV Cam H7 Plus voi toimia USB-videolaitteena.

  • Rikkova: MicroPythonin toiminta, image.get_histogram()-normalisointi ja OpenMV 3:n JPEG/harmaasävytuloste muuttuivat — katso rikkovat muutokset.

Uudet ominaisuudet

  • OV5640 — lisättiin täysi tuki OV5640 5 MP -kameralle (ulkoisen kellon konfigurointi sensorin alustuksessa) sekä uudet sensor.HD- / FHD- / QHD- / QXGA- / WQXGA- / WQXGA2-framesizevakiot.

  • TIM4 — vapautettiin, jotta se on käytettävissä MicroPythonista.

  • Lisättiin DAC:n ajastetun kirjoituksen esimerkki (dac_write_timed.py) ja nimettiin dac_control.py uudelleen muotoon dac_write.py.

Muut muutokset ja parannukset

  • Päivitettiin mukana toimitettu MicroPython versioon 1.12; optimoitiin voimakkaasti ohjelmistopohjainen JPEG-enkooderi (VGA-polku, harmaasävy-/binääripolut, kokonaislukulaskenta liukulukulaskennan sijaan, optimoitu MCU-kaappaus), LSD find_line_segments(), AprilTag-tunnistus, Image.histeq() ja QR-koodin / RGB-to-gray-muunnos; lisättiin QSPI-flash-tuki jopa 32 MB:n piireille; poistettiin vanhentunut CMSIS-CNN cnn.py -esimerkki.

Korjaukset

Kamera ja kuvankäsittely:

  • Korjattiin JPEG-enkoodauksen korruptio HQQQVGA:ssa, binääri- (1-bittisen) kuvan → JPEG-pakkaus, find_line_segments()-regressio (otettiin NOTDEF-kohdistamattomuustarkistus uudelleen käyttöön) sekä pienet OV2640-ajurin ongelmat.

Järjestelmä ja käynnistys:

  • Korjattiin itsetestin / tiedostojärjestelmän korruptio (selftest.py ajetaan nyt ennen USB MSC:n käyttöönottoa, ja USB MSC otetaan käyttöön kohtalokkaan virheen yhteydessä, jotta isäntä voi lukea virhelokin), pyb.DAC:n write_timed(), H7:n machine.I2C-ajoitukset, F7:n overdriven uudelleenkäyttöönotto stop-tilan jälkeen sekä stop_mode.py:n rtc.wakeup()-väli.

Laitteisto- ja korttituki

  • OV5640 — täysi 5 MP -kameraohjain korkearesoluutioisilla framesizeilla.

  • OpenMV Cam H7 Plus — UVC- (USB-video) tuki; OPENMV4R-korttikohde nimettiin uudelleen muotoon OPENMV4P.

  • QSPI-flash — jopa 32 MB:n piirejä tuetaan nyt.

Rikkovat API-muutokset

Käyttäjälle näkyvät API-rikkoumat versioiden v3.5.2 ja v3.6.0 välillä. Laajuus: Python-C-moduulit hakemistossa modules/ ja Python-kirjastot hakemistossa scripts/libraries/.

Kaikki kolme rikkovaa muutosta ovat toiminnan muutoksia (sama API, eri tulos) — tarkista vaikutuksen alaiset skriptit uudelleen. Jokainen commit-hash linkittää diffiinsä GitHubissa.

MicroPython päivitetty versioon 1.12 (toiminta)

Mukana toimitettu MicroPython-ydin päivitettiin versioon 1.12. Vakiokirjaston ja kielen toiminta noudattaa ylävirran MicroPython 1.12:ta; tarkista uudelleen skriptit, jotka riippuvat versiokohtaisesta micropython- / vakiomoduulien toiminnasta.

Commitit: eafd431ea

image.get_histogram()-kynnysarvojen normalisointi muuttui (toiminta)

image.get_histogram() (ja get_statistics()) väri-kynnysarvoilla normalisoi nyt kynnystettyjen pikselien lukumäärän mukaan koko ROI:n sijaan ja käyttää lattiafunktiota pyöristyksen sijaan lokeroindeksoinnissa. Kynnystettyjen kutsujen histogrammi-/tilastoarvot poikkeavat aiemmista julkaisuista — viritä uudelleen koodi, joka vertasi absoluuttisiin histogrammiarvoihin.

Commitit: 7cf0f8089

OpenMV 3:n JPEG/harmaasävytuloste muuttui (toiminta)

Flash-muistin säästämiseksi OpenMV 3:n (M7) YUV-hakutaulukko poistettiin käytöstä, joten JPEG- ja harmaasävytulosteen pikseliarvot lasketaan OpenMV 3:ssa hieman eri tavalla. Tuloste on edelleen kelvollinen mutta poikkeaa marginaalisesti aiemmista julkaisuista; tarkista pikselintarkat vertailut uudelleen OpenMV 3:ssa.

Commitit: 0e4b46e41

Migraation tarkistuslista

Validoi uudelleen versiokohtaisesta MicroPython-toiminnasta riippuvat skriptit versiota 1.12 vasten (MicroPython-päivitys), viritä uudelleen koodi, joka vertasi absoluuttisiin get_histogram()- / get_statistics()-arvoihin väri-kynnysarvoja käytettäessä (histogrammimuutos), ja tarkista pikselintarkat vertailut uudelleen OpenMV 3:ssa (OpenMV 3:n tulostemuutos). Kaikki muut skriptit toimivat ennallaan.