v1.0.0-beta¶
v1.0.0-beta on OpenMV-laiteohjelmiston ensimmäinen (beeta-)julkaisu — OpenMV Cam -kameran ensimmäinen julkinen versio. Se luo perustan, jolle kaikki sittemmin rakentuu: MicroPython-skriptausajoympäristö STM32F4-pohjaisessa OpenMV Cam -kamerassa, kameran sensor-rajapinta, image-konenäkökirjasto ja OpenMV IDE reaaliaikaista kehitystä varten. Ensimmäisenä julkaisuna siitä ei ole mitään, mistä siirtyä — tämä merkintä tiivistää, mitä ensimmäisessä laiteohjelmistossa toimitettiin.
Kohokohdat¶
MicroPython OpenMV Cam -kamerassa — suorita Python-skriptejä kamerassa USB:n yli interaktiivisella REPL:llä ja IDE:n virheenkorjausrajapinnalla.
Kameran kuvankaappaus —
sensor-moduuli: määritä pikseliformaatti / resoluutio / kehysnopeus ja kaappaa kehyksiäsnapshot()-kutsulla.Konenäkö —
image-kirjasto: värillisten blobien tunnistus, piirtäminen, suodattimet, mallisovitus, Haar-kaskadiin perustuva kasvojentunnistus ja avainpisteet.OpenMV IDE — työpöytä-IDE, jossa on reaaliaikainen kehyspuskurin katselin, koodieditori ja IDE:n sisäinen laiteohjelmistopäivitys.
Laitteisto — alkuperäinen OpenMV Cam (STM32F4) OmniVision OV9650 / OV2640 -kameroilla sekä SD-kortti- ja WiFi-shield-tuella.
Uudet ominaisuudet¶
Skriptaus ja moduulit:
MicroPython-ajoympäristö laiteohjelmiston pohjana, kamerassa tapahtuvalla skriptin suorituksella USB-virheenkorjausrajapinnan yli ja interaktiivisella REPL:llä.
sensor-moduuli —set_pixformat()/set_framesize()/set_framerate(), vahvistuskaton / kirkkauden / kontrastin / vahvistuksen säätimet,reset(),snapshot()sekä vaakapeilaus / pystykääntö — sekä sensori- ja resoluutiovakiot.image-konenäkömoduuli (imlib), joka tarjoaa kuvaobjektit (Python-puskuriprotokollalla) ja alla olevan kuvankäsittelypinnan.time- /clock-moduuli ajanottoa ja FPS-mittausta varten.Varhaiset oheislaitemoduulit —
led(RGB-LED),spi,gpio(nastojen I/O ulkoisen keskeytyksen rekisteröinnillä),uart, laitteistopohjainenrng, systick-ajastin sekäfile/selecttiedostojärjestelmälle.Verkkoyhteydet moduulien
socket/wlan(CC3000 WiFi) kautta,lcd-näyttöajuri,mlx90620-lämpösensorimoduuli ja AVI/MJPEG-videotallennus.
Kuvankäsittely:
Kameran kehykset kaapattuna dynaamisesti varattuun kehyspuskuriin.
Värillisten blobien tunnistus (flood-fill) ja LAB/XYZ-väriavaruuden kynnystäminen (RGB↔LAB-muunnostauluilla).
Piirtoprimitiivit (viiva, merkkijono/fontti, ympyrä), suodattimet (eroosio / dilaatio / mediaani / käänteistys / binäärimuunnos / kynnystäminen), kuvan skaalaus (bilineaarinen), aliosakuvan poiminta, blit ja alfasekoitus.
Mallisovitus (mallin tallennuksella/latauksella), Viola-Jones Haar-kaskadiin perustuva kasvojen/objektien tunnistus (ladattavat kaskadit + OpenCV-kaskadimuunnin), LBP-kaskadi ja silmäntunnistin, FAST / SURF / FREAK -avainpisteiden tunnistus ja kuvaajien sovitus, integraalikuvat ja liikkeentunnistus.
JPEG-pakkaus (laadunhallinnalla), PPM / PGM / PNG / raakakuvan tallennus ja AVI/MJPEG-videopakkaus.
IDE ja työkalut:
OpenMV IDE -työpöytäsovellus — reaaliaikainen kehyspuskurin katselin FPS-näytöllä, koodieditori (avaa / uusi / tallenna / tallenna nimellä, viimeisimmät tiedostot, mukana toimitettu Esimerkit-valikko), yhdistä / nollaa / automaattinen yhdistäminen sekä asetusten lataus/tallennus.
IDE:n sisäinen laiteohjelmistopäivitys DFU:n yli, puhtaasti Python-pohjainen
pydfu-apuohjelma ja USB-komento käynnistyslataimeen pakottamiseksi;openmv.py-isäntäkirjasto/-protokolla; erillinen kehyspuskurin katselin ja kaskadityökalu; sekä Linuxin udev-säännöt.
Muut muutokset ja parannukset¶
Mukana toimitetut esimerkkiskriptit: blobien tunnistus, kasvojentunnistus / -seuranta, SURF / avainpisteet, mallisovitus, LCD, kehyspuskurin katselin, blit, MJPEG-suoratoistin, AVI-tallennus, echo-palvelin, FPS sekä JPEG- / kuvankirjoitusdemot.
Laitteisto- ja korttituki¶
OpenMV Cam — STM32F4xx (STM32F407 / F429) varhaisissa laitteistoversioissa, CMSIS + STM32:n oheislaite-/Cube HAL:lla ja CMSIS-DSP:llä.
Kamerat — OmniVision OV9650 ja OV2640 (SCCB/I2C, säätimen ohjaus) sensorin HAL:n kautta, sekä MLX90620 lämpö-IR-sensori; resoluutiot QQCIF/QCIF:stä aina SVGA/UXGA:han asti, jopa 30 FPS:n nopeudella.
Tallennus / liitettävyys — SD-kortti (SPI ja SDIO) FatFS:llä, sisäinen flash-tiedostojärjestelmä, SDRAM (kehyspuskuri SDRAM:ssa), USB OTG FS (virheenkorjaus + DFU), CC3000 WiFi (WiFi- / BLE-shieldit), IR-LED sekä ohjelmisto-/laitteistopohjainen I2C ja DMA-ohjattu SPI.
Rikkovat API-muutokset¶
Ei mitään. v1.0.0-beta on OpenMV-laiteohjelmiston ensimmäinen (beeta-)julkaisu — aiempaa julkaisua, jonka yhteensopivuuden se voisi rikkoa, ei ole. Myöhemmät julkaisut dokumentoivat rikkovat muutoksensa edeltäjäänsä verrattuna; katso loput muutoslokista.