v2.8.0¶
v2.8.0 on massiivinen julkaisu. Se tuo käyttöön OpenMV Cam H7 -kortin (STM32H7), jossa on laitteistopohjainen JPEG-enkooderi sekä H7 ADC/DAC, valtavan image-API:n uudistuksen (piirron paksuus/täytöt, matemaattiset/binääriset operaatiot, monia uusia suodattimia, Otsu-kynnystys), MicroPython-säikeistyksen ja omv-versiomoduulin. Pythonin argumenttien jäsennysjärjestys lukittiin ja image.mask_ellipse() poistettiin — lue alla olevat rikkovat muutokset.
Kohokohdat¶
OpenMV Cam H7 — uusi STM32H7-kortti, jossa on laitteistopohjainen JPEG-enkooderi sekä H7 ADC / DAC.
image-uudistus — viivan paksuus, muotojen täytöt,draw_arrow()/draw_image(), täydet matemaattiset/binääriset operaatiot sekä monia uusia suodattimia.Otsu-kynnystys —
histogram.get_threshold()jaThreshold-olio.Säikeistys — MicroPythonin
_thread-tuki.omv-moduuli — versio- / korttitiedot.Rikkova: Pythonin positionaalisten argumenttien järjestys on nyt tiukka ja
image.mask_ellipse()poistettiin — katso rikkovat muutokset.
Uudet ominaisuudet¶
OpenMV Cam H7 — STM32H7-kortin tuki laitteistopohjaisella JPEG-enkooderilla, H7 ADC:llä ja H7 DAC:llä.
Piirto — lisätty viivan
thickness, muodonfill(suorakulmio / ympyrä), tekstinscale/ merkkivälistys,mono_space-avainsana funktioondraw_string(),image.draw_arrow()sekäimage.draw_image()(sprite- / maskipiirto).Matemaattiset operaatiot — lisätty
add(),sub(),mul(),div(),min(),max(),difference(),blend(),replace()(hmirror/vflip/mask-kera) sekäremove_shadows(); perusoperaatiot hyväksyvät nyt skalaari-/väriarvon, joka kohdistetaan kaikkiin pikseleihin.Binääri / morfologia — uusi binäärikuvatyyppi ja
binary(); viivaoperaatiot jaerode()/dilate()hyväksyvät maskeja; lisättyopen()/close()/top_hat()/black_hat().Suodattimet — lisätty
cartoon,flood_fill,bilateral,laplacian,blur/gaussian_blur-aliakset sekä adaptiivinen histogrammin tasoitus (histeq(adaptive=, clip_limit=, mask=)).Tilastot —
get_statistics()/get_histogram()hyväksyvät värikynnyslistan jainvert-parametrin; lisätty Otsuhistogram.get_threshold()jaThreshold-olio.CMSIS CNN — lisätty
image.classify_object()cnn.py-esimerkin kera (korvattunn-moduulilla versiossa v3.0.0).Säikeistys — otettu käyttöön MicroPythonin
_thread-moduuli.omv-moduuli — lisätty versiotiedot (version_string,arch,board_type,board_id); otettu käyttöönmachine-moduulin I2C4-väylä ja matematiikan erikoisfunktiot (erf,gamma, …); lisätty moottorisuoja-esimerkkejä ja monia uusia esimerkkiskriptejä.
Muut muutokset ja parannukset¶
H7:n sensorin ulkoinen kello laskettiin 48 MHz:iin (parempi kuvanlaatu, pienempi FPS); matala/korkea JPEG-laatu on nyt korttikohtaisesti konfiguroitavissa (ja hienosäädetty H7:lle); lisätty korttikohtainen
imlib_config.h-ominaisuuksien rajaus (kaikki kuvafunktiot pysyvät käytössä vakiolaiteohjelmistossa); päivitetty pakettiin sisältyvä MicroPython.
Korjatut virheet¶
Kuvankäsittely:
Korjattu
image.save()ilman tiedostopäätettä,gain_db/gain_db_ceiling-kartoitus OV2640:lle / OV7725:lle / OV9650:lle / MT9V034:lle, liiallinen vahvistus funktiossasharpen(), morfologinen reunakohina, nollalla jako kuvaoperaatiossa sekä pinon ylivuotokaatuminen liian suurella suodatinytimen koolla (nyt siisti virhe).
Järjestelmä:
Suojattu USB VCP -puskuri atomisella osiolla (sarjaliikenteen korruptio, #313), korjattu USB-yhteys Windowsissa, sisäisen flash-muistin tiedostojärjestelmän liittäminen jos SD-kortti epäonnistuu,
cpufreq-moduulinset_frequency()-funktion PLLP-arvo sekä käynnistyslataimen laiteohjelmiston flash-virhe.
Laitteisto- ja korttituki¶
OpenMV Cam H7 (STM32H7) — uusi kortti laitteistopohjaisella JPEG-enkooderilla sekä H7 ADC / DAC.
machine— otettu käyttöön I2C4-väylä.
Rikkovat API-muutokset¶
Käyttäjälle näkyvät API-muutokset versioiden v2.7.0 ja v2.8.0 välillä. Laajuus: Python C-moduulit hakemistossa modules/ ja Python-kirjastot hakemistossa scripts/libraries/.
Molemmat rikkovat muutokset ovat minor ja vaikuttavat vain skripteihin, jotka käyttivät kyseistä ominaisuutta. Jokainen commit-hash linkittää sen diffiin GitHubissa.
Pythonin positionaalisten argumenttien järjestys on nyt tiukka (minor)¶
Argumenttien jäsentäminen Python C-moduuleissa (image / sensor / fir / gif / lcd / mjpeg) lukee nyt positionaaliset argumentit ennen avainsanoja ja lukitsee positionaalisen järjestyksen. Yhdessä piirtomenetelmien uusien avainsana-argumenttien kanssa (draw_line() / draw_rectangle() / draw_circle() / draw_string() / draw_cross() / draw_keypoints() saivat thickness / fill / scale / size), koodin, joka välitti parametrit positionaalisesti väärässä järjestyksessä — tai välitti positionaalisen color-arvon jonkin uuden argumentin jälkeen — on käytettävä avainsana-argumentteja tai dokumentoitua positionaalista järjestystä.
image.mask_ellipse() poistettu (minor)¶
image.mask_ellipse() poistettiin. Sitä kutsuneiden skriptien on poistettava kutsu tai käytettävä sen sijaan eksplisiittistä ROI:ta / maskikuvaa.
Commits: d7159fba3
Siirtymälista¶
Välitä argumentit avainsanoilla (tai dokumentoidussa positionaalisessa järjestyksessä), erityisesti color piirtomenetelmissä (argumenttijärjestyksen muutos), ja poista image.mask_ellipse() -kutsut (mask_ellipse-poisto). Kaikki muut skriptit toimivat muuttumattomina.