v4.8.1¶
v4.8.1 temelji se na Qt Creatoru 14.0.2 i usredotočen je na novi visokopouzdani protokol kamere OpenMV V2, ugrađeni Code Profiler te tijek rada spremanja koji kameru drži montiranom umjesto da je izbacuje. Priloženi ugrađeni program (firmware) i potpuni skup primjera ažurirani su na 4.8.1. Nema prekida u skriptnom API-ju, no ponašanje kod kojeg spremanje više ne izbacuje uređaj te uklanjanje nekoliko serijskih zastavica pri pokretanju predstavljaju promjene tijeka rada vidljive korisniku.
Istaknuto¶
OpenMV Protocol V2 novi je visokopouzdani komunikacijski sloj kamere (
OMVCamera/OMVTransport/OMVDebug) s CRC32, sekvenciranjem, ACK/NAK, ponovnim slanjem, događajima i fragmentacijom. Automatski se dogovara pri povezivanju te upravlja resetiranjem, pokretanjem, strujanjem, izvršavanjem skripti i statistikom.Code Profiler novi je prozor (
Window>Show Code Profiler) koji s kamere dohvaća zapise profiliranja po funkciji i prikazuje pozive, min/maks/ukupne/prosječne mikrosekunde (μs), prosječne cikluse, postotak i brojače događaja u tablici koju je moguće sortirati.Spremanje na mjestu više ne izbacuje pogon kamere; IDE sada zapisuje
main.pyi ispire volumen na disk pa uređaj ostaje montiran.Detekcija više senzora prijavljuje svaku kameru na ploči, prikazanu u statusnoj traci kao
Sensors: X, Ys glavnim senzorom navedenim prvim.Dinamičko čitanje sličica ponovno izračunava najbolju razlučivost sirovog strujanja po formatu piksela i automatski prekonfigurira tok.
Priloženi ugrađeni program (firmware) i primjeri ažurirani su na 4.8.1 na svim pločama, uz dodavanje novih primjera za GenX320 event-kameru, TensorFlow ML, Alif OLED te LCD/Touch-LCD shield.
Nove značajke¶
Dodan je komunikacijski protokol OpenMV V2: potpuni transportni i transakcijski sloj s CRC32, sekvenciranjem, ACK/NAK, ponovnim slanjem, događajima i fragmentacijom, uz klasu
OMVCamerakoja se automatski dogovara pri povezivanju i integrirana je u serijski upravljački program (2fde9eb3f, fff1bf2ba, 8c41fcfad, 7fc7ed4bc, 84c3956af, 669039adf, a49259852, 07af1922a, 85f0c7c87, 5070cc213, e314459cc, e0367ca95, 0da2f79d0, 2b6fc9866, 534ecffbe).Dodan je prozor Code Profiler (
Window>Show Code Profiler) koji dohvaća zapise profiliranja po funkciji i prikazuje pozive, min/maks/ukupne/prosječne mikrosekunde (μs), prosječne cikluse, postotak i brojače događaja, razrješavajući adrese u simbole pomoću priloženog ELFIO ELF parsera (019d3cd2c, 57cd9e1cc).Dodan je dijaloški okvir Debug Protocol Settings koji prikazuje uživo System Info, Host Stats i Device Stats osvježavane svake sekunde, izlažući brzine dohvaćanja po kanalu te kombinirane naspram odvojenih kontrola dohvaćanja (5220a6125, 0da2f79d0).
Dodana je detekcija više senzora: ploča s više od jedne kamere prijavljuje sve njih u statusnoj traci kao
Sensors: X, Y, s glavnim senzorom prvim (cebc79ce7).Dodano je dinamičko čitanje sličica (zadano uključeno) koje ponovno izračunava najbolju razlučivost sirovog strujanja po formatu piksela (
BINARY,GRAY,RGB565,ARGB8,JPEG,PNG) i prekonfigurira tok (75c073bdb, 0da2f79d0).Dodano je dekodiranje međuspremnika slike za sirove formate piksela
BINARY(1-bpp mono) iARGB8(32-bitni alfa) pa se te vrste slika sada prikazuju u pregledniku (dabb82062).Na sustavu Windows, Connect sada pretražuje USB uređaje koje je operativni sustav označio kao problematične i upozorava popisom neispravnih uređaja koji mogu blokirati povezivanje (1a5beb081, 1b59cd78e).
Dodan je indikator registracije u statusnoj traci: zeleni gumb
Registeredili koraljniUnregisteredza povezanu kameru, na koji je moguće kliknuti za registraciju ploče (a8c98a4b9).Preglednik međuspremnika slike sada može prikazati centriranu tekstualnu poruku poslanu iz pokrenute skripte putem novog escape koda
FB_MESSAGEumjesto slike (530048201).Dodani su novi unosi u model-zoo: ST FastDepth modeli za procjenu dubine (224/256/320), ST model poze s točkama na glavi, modeli šake za detekciju dlana i točke na ruci te BlazeFace model za frontalnu detekciju lica (551668410, 4d64556d4, fadd6c4ed, b8277bb88, a8c98a4b9).
Dodana je skripta za samoispitivanje (kamera, IMU, ToF, WiFi, LAN) namijenjena samo tvorničkim build-ovima, koja je priložena i automatski se otvara pri pokretanju u tvorničkoj varijanti IDE-a (0db7fbbb0); RT1060 LAN dio testa trenutačno je onemogućen (48370d022).
Ostale promjene i poboljšanja¶
Spremanje na mjestu: spremanje skripte više ne izbacuje pogon kamere; IDE zapisuje
main.pyi ispire volumen na disk (FlushFileBuffersna sustavu Windows,syncfsna Linuxu,sync_volume_np/F_FULLFSYNCna macOS-u) pa uređaj ostaje montiran (1614c572f, 6928b51ea, 35ed53967).Akcije alatne trake kliknute dok je kamera zauzeta (onemogući međuspremnik slike, JPEG kompresija, spremi skriptu, konfiguriraj postavke) sada se stavljaju u red i automatski izvršavaju kad uređaj bude slobodan, umjesto prikazivanja dijaloga s pogreškom Busy (f4315f0a4).
Preglednik međuspremnika slike sada se zadano prilagođava prikazu pa se slika pri pokretanju automatski skalira na prozor, a okno izlaza serijskog terminala sada se pri pokretanju zadano prikazuje (f3ce4dc75).
Prevedeni modeli s nastavkom
.litesada se prepoznaju posvuda: u filtriranju i prikazu preglednika model-zoo, poravnanju ROMFS-a ugrađenog programa (firmware), a Vela/STEdge AI prevoditelji sada generiraju.liteizlaz (f3ce4dc75).Dijaloški okvir za prevođenje modela STEdge AI (N6) sada raščlanjuje i prijavljuje postotke iskorištenosti NPU RAM-a i hyperRAM-a te kopira premješteni izlaz mreže u datoteku koja odgovara nastavku modela (f3ce4dc75).
Preglednik model-zoo sada prikazuje stupac Size s veličinom datoteke i rasteže stupac s nazivom da stane, umjesto skrivanja veličine (f3ce4dc75).
Predložak nove skripte ažuriran je na novi API modula
csii zadano koristi VGA veličinu sličice, a priloženi primjer Hello World prebačen je s QVGA na VGA veličinu sličice (f3ce4dc75).Dijaloški okvir Convert Video prepisan je tako da koristi zajednički dijalog učitavača s obojanim izlazom, porukama o uspjehu/neuspjehu, gumbom OK za zatvaranje te jasnom pogreškom kada FFMPEG nije dostupan na platformi (f56efc7be).
Preglednik međuspremnika slike sada prikazuje treperavo upozorenje kada je
JPEG/PNGslika prevelika za međuspremnik i slanje, putem novog escape kodaFB_BUFFER_ERROR(fda826126).Ulazak u DFU pokretač (bootloader) sada prisiljava pokretač (bootloader) da ostane rezidentan na ugrađenom programu (firmware) s V2 protokolom, uz detekciju verzije koja se vraća na obični reset na starijim pokretačima (bootloader) (<1.0.2) koji bi se mogli zaglaviti kad ih se prisili (975857221).
Preimenovane su i reorganizirane ST mape modela za detekciju objekata (
st_yolo_lc_v1uyolo_lc,tiny_yolo_v2uyolo_v2,yolov8nmodeli osoba u obične datoteke imenovane prema veličini) te su uklonjene velike int8 varijantetiny_yolo_v2(34240cc3c).Serijsko vrijeme sada se podešava putem
protocolključeva za nadjačavanje usettings.jsonugrađenog programa (firmware) (overrideReadTimeout,overrideReadStallTimeout,overridePerCommandWaitte V2 ključevioverrideCRC/overrideSEQ/overrideACK) umjesto zastavica naredbenog retka pri pokretanju (019d8bf1d).Postavljeno je ograničenje duljine retka jezičnog poslužitelja za Python na 120 stupaca za flake8 i pycodestyle pa dugi retci više nisu označeni pri zadanih 79 (dabb82062).
Smanjen je priloženi skup modela strojnog učenja premještanjem Qualcomm zbirke modela i
google/mobilenet_v1umodels_unusedkako bi se smanjio instalacijski program (c44ddba20).
Ispravci grešaka¶
Dijaloški okviri napretka preuzimanja ugrađenog programa (firmware) i ažuriranja resursa učinjeni su otpornima na rušenje pomoću
QPointerzaštita pa više ne koriste izbrisani dijalog ako se zatvori usred preuzimanja (f3ce4dc75).Pretraživanje pogona sada nastavlja ponovno pretraživati dok se ne pronađe USB pogon kamere i briše zastarjele unose pogona pri prekidu veze, uklanjajući prethodni jednokratni trik s mjeračem vremena (a31d41b4e).
Nekoliko ispravaka povezivanja i serijske komunikacije: skriveni senzori (npr.
SoftCSI) više ne zatrpavaju prikazani tip senzora, Windows serijski keep-alive mjerač vremena sprječava USB zastoje, Start više ne pokreće ponovno već pokrenutu skriptu, a kanal kamere uredno se odspaja pri zatvaranju porta (a8e467be6).Prikaz profilera vratio je svoj odabir brojača PMU događaja po stupcu (izbornici događaja s potvrdnim okvirima) te spremljeno stanje brojača/zaglavlja koje je bilo privremeno onemogućeno (40c679e90).
Podrška za platforme i alate¶
Osnova Qt Creatora: 14.0.2.
Priloženi ugrađeni program (firmware): ažuriran s 4.7.0 na 4.8.1, uz ponovnu izgradnju ugrađenog programa (firmware) za OPENMV2/3/4/4P/PT, OPENMV_N6, OPENMV_AE3, OPENMV_RT1060 te ploče Arduino GIGA/Nicla Vision/Portenta H7 (2657818ca).
Ispravljeno je rukovanje verzijom protokola na macOS-u za ploče RT1062 i AE3 dijeljenjem višenaredbenog USB prijenosa na dijelove veličine
USBDBG_LENkoje te ploče mogu obraditi (6b9d5f842).Preuređen je priloženi paket Windows upravljačkih programa: dodane su potpisane
.cat/.infdatoteke upravljačkih programa po ploči (AE3, H7, H7Plus, M4, M7, N6, Pico/PT, RT1062), a CDC serijski upravljački programi premješteni su u novu mapuopenmvcdcs automatskim instalaterom temeljenim na dpinst-u (439557829, ba3b01bfb).Dodana je podrška za starije revizije MT9V032 senzora kamere registriranjem ID-ova senzora
0x1311i0x1312(uz postojeći0x1313) kaoMT9V0X2(eaaa624e3).
Promjene koje narušavaju kompatibilnost¶
Ovo izdanje nema prekida u skriptnom API-ju, no postoji nekoliko promjena tijeka rada vidljivih korisniku:
Spremanje skripte više ne izbacuje niti odmontira USB pogon kamere. IDE sada ispire međuspremnike volumena na mjestu pa uređaj ostaje montiran nakon spremanja.
Serijske zastavice pri pokretanju
-override_read_timeout(zadano 5000 ms),-override_read_stall_timeout(zadano 1000 ms) i-override_per_command_wait(zadano 1 ms, 2 ms na macOS-u) uklonjene su; serijsko vrijeme sada se konfigurira putemprotocolključeva za nadjačavanje usettings.jsonugrađenog programa (firmware) (019d8bf1d).Priloženi pokretači (bootloader) sada se isporučuju samo kao
.bin;.dfudatoteke ugrađenog programa (firmware) i pokretača (bootloader) po ploči uklonjene su.