v1.7.0¶
v1.7.0 introduce modulul cpufreq (controlul frecvenței CPU / overclocking), modulul MicroPython os, reîmprospătarea / controlul rezoluției senzorului termic MLX și prima inițializare a plăcii OpenMV Cam M7 (STM32F7). Semnătura fir.init(), gestionarea cadrelor supradimensionate și calitatea JPEG implicită s-au schimbat — citiți modificările incompatibile de mai jos.
Aspecte importante¶
modulul
cpufreq— interoghează / setează frecvența CPU, cu un exemplu de overclocking.MLX termic —
fir.init()acceptă o rată de reîmprospătare și o rezoluție ADC.OpenMV Cam M7 — prima inițializare a plăcii STM32F7.
Incompatibil:
fir.init()acceptă acum doar argumente cu cuvânt-cheie, cadrele supradimensionate se decupează automat, iar calitatea JPEG implicită a scăzut — vedeți modificările incompatibile.
Funcții noi¶
cpufreq— s-a adăugat modululcpufreqcucpufreq.get_frequency()/cpufreq.set_frequency()și constanteleCPUFREQ_120MHZ/144/168/192/216MHZ, plus un exempluoverclocking.py.MLX / FIR —
fir.init()acceptă acum o rată de reîmprospătare și o rezoluție ADC, cu controalerefresh/resolutioncorespunzătoare pentru senzorul termic MLX.
Alte modificări și îmbunătățiri¶
S-a ajustat regiunea AGC/AEC a OV7725 (mai puțin neclaritate de mișcare), s-a activat bara de culori solidă DSP pentru OV7725 și s-a remediat redarea în flux a tamponului de cadre (frame buffer) din IDE (fără cadre vechi / duplicate).
Remedieri de erori¶
S-a remediat o depășire a dimensiunii transferului DCMI/DMA în
sensor.snapshot(), s-a curățat gestionarea depășirii tamponului (buffer) de compresie JPEG, s-a îmbunătățit regiunea de operare AEC/AGC a OV7725 pentru o expunere/amplificare (gain) automată mai bună și s-au corectat scripturile de bară de culori / autotestare pentru OV7725.
Suport hardware și plăci¶
OpenMV Cam M7 (STM32F7 / OPENMV7) — suport inițial pentru placă și bootloader.
OpenMV 2 — ceasul senzorului acționat de ieșirea MCO.
Modificări incompatibile de API¶
Întreruperi de API vizibile pentru utilizator între v1.6.0 și v1.7.0. Domeniu: module C Python din modules/ și biblioteci Python din scripts/libraries/.
Fiecare modificare este etichetată cu impactul său:
minor — API restrâns; afectează doar scripturile care l-au folosit.
comportament — același API, rezultate diferite; reverificați scripturile ajustate.
Modificările sunt grupate după impact în această ordine. Dacă doriți doar să vă portați codul, săriți la lista de verificare pentru migrare de la final. Fiecare hash de commit are legătură către diff-ul său pe GitHub.
fir.init() acceptă acum doar cuvinte-cheie (minor)¶
fir.init() a fost reproiectată pentru a accepta argumente cu cuvânt-cheie (type= / refresh= / resolution=, refresh implicit 64 Hz, maxim 512 Hz) în loc de argumente poziționale. Actualizați apelurile poziționale fir.init(...) la forma cu cuvânt-cheie.
Commit-uri: 958c5b7f7
Cadrele supradimensionate se decupează automat la QVGA (comportament)¶
sensor.snapshot() nu mai generează o eroare când cadrul brut depășește dimensiunea maximă de cadru brut a plăcii — cadrele brute supradimensionate sunt acum încadrate/decupate la QVGA în schimb (doar cadrul brut în mod JPEG este încă respins). Alegeți o dimensiune de cadru acceptată dacă v-ați bazat pe eroarea anterioară.
Dimensiunea maximă de cadru a OpenMV 2 redusă la QVGA (comportament)¶
Pe OpenMV 2, dimensiunea maximă de cadru pentru imagine integrală / brut / blob a fost redusă de la VGA la QVGA. Solicitarea VGA pentru operații cu tonuri de gri / RGB565 / blob / imagine integrală pe OpenMV 2 se decupează acum la QVGA — reproiectați scripturile care depindeau de procesarea VGA pe acea placă.
Commit-uri: 7499062bd
Calitatea JPEG implicită redusă (comportament)¶
Calitatea JPEG implicită a fost redusă (implicit 50 → 35, cu praguri de subeșantionare IDE mai mici) pentru o redare în flux mai fiabilă. JPEG-urile capturate/transmise sunt vizibil de calitate mai scăzută în mod implicit — transmiteți o valoare explicită quality către image.compress() dacă aveți nevoie de calitatea anterioară.
Commit-uri: d9c8b1535
Listă de verificare pentru migrare¶
Pentru o portare curată la v1.7.0, lucrul tipic este:
Convertiți apelurile poziționale
fir.init(...)la forma cu cuvânt-cheie (modificarea fir.init).Folosiți o dimensiune de cadru acceptată în loc să vă bazați pe vechea eroare de cadru supradimensionat (modificarea cadrelor supradimensionate) și reproiectați procesarea VGA pe OpenMV 2 (modificarea dimensiunii de cadru a OpenMV 2).
Transmiteți o valoare explicită
qualitycătreimage.compress()dacă aveți nevoie de calitatea JPEG anterioară (modificarea calității JPEG).
Toate celelalte scripturi rulează nemodificate.