v2.5.0#
v2.5.0 özellik açısından zengin bir görüntüleme sürümüdür: find_rects(), find_circles(), get_regression() (çizgi/regresyon uydurma), find_number() (LeNet rakamları), ImageWriter / ImageReader akış sınıfları, sensor.flush() / width() / height() ve pyb.RTC desteği ekler. Görüntü yükleme artık çerçeve arabelleği (frame buffer) destekli — aşağıdaki bozucu değişiklikleri okuyun.
Öne çıkanlar#
image.find_rects()— köşe çıkışlı dikdörtgen / dörtgen dedektörü.image.find_circles()— Hough çember tespiti.image.get_regression()— en küçük kareler ve sağlam (Theil-Sen) çizgi uydurma.image.find_number()— LeNet rakam tanıma.ImageWriter/ImageReader— görüntü akışlarını kaydedin ve yeniden oynatın.pyb.RTCdesteği, ayrıcasensor.flush()/sensor.width()/sensor.height().Bozucu: görüntü yükleme artık çerçeve arabelleği (frame buffer) destekli ve görüntü çok büyükse hata verir — bozucu değişikliklere bakın.
Yeni özellikler#
Öznitelik tespiti —
image.find_rects()(AprilTag dörtgen dedektörü;x/y/w/h/corners/magnitudeiçeren dikdörtgen nesneleri),image.find_circles()(Hough),image.get_regression()(en küçük kareler + Theil-Sen sağlam çizgi uydurma) veimage.find_number()(LeNet rakam tanıma) eklendi, her biri örnek betiklerle birlikte.Sonuç köşeleri — QR kodu / AprilTag / veri matrisi / barkod sonuç nesnelerine bir
cornersözniteliği eklendi.Görüntü akışları —
image_writer.py/image_reader.pyörnekleriyle birlikteimage.ImageWriter/image.ImageReadersınıfları (16 baytlık hizalanmış parça formatı) eklendi.Sensör —
sensor.flush()(anlık görüntü olmadan çerçeve arabelleğini IDE’ye gönderir) vesensor.width()/sensor.height()eklendi.pyb.RTC— birrtc.pyörneğiyle RTC desteği etkinleştirildi.Bir kedi yüzü Haar cascade ve bir Servo-Shield (PCA9685) örneği eklendi;
openmv-cascade.pyana makine aracı yeni OpenCV XML cascade formatı için destek kazandı.
Diğer değişiklikler ve iyileştirmeler#
Çerçeve arabelleği yeniden düzenlendi, böylece
copy_to_fbgörüntü metotları IDE önizlemesini günceller;HaarCascade()yolları artık baştaki bir/gerektirmez (yerleşik mi yoksa dosya mı olduğu otomatik tespit edilir); GIF/MJPEG kaydı artık VGA’yı (ve BAYER GIF’lerini) destekler; yerleşikREADME.txtgüncellendi veopenmv.infsürücü dosyası artık yeni bir dosya sisteminde oluşturulmuyor.
Hata düzeltmeleri#
Görüntüleme:
find_circles()oy biriktirme, bir ROI ileget_regression()rho ofseti ve bir bellek sızıntısı,find_lines()parça birleştirme,find_blobs()açı ortalaması ve varsayılan (en az kısıtlayıcı) renk sınırları, ORB anahtar nokta sıralama kararlılığı / tanımlayıcı sıralaması ve eşleşti bayrağı ile Haar cascade arabellekli yükleme (hizalanmamış okumalar) düzeltildi.
Sistem:
pybServo 3 (P9) etkinleştirildi (#256), RTC başlatma düzeltildi, UART karakter zaman aşımı artırıldı (#240) ve başlatılmamış sensör çerçeve arabelleği “etkin” bayrağı düzeltildi.
Donanım ve kart desteği#
Bozucu API değişiklikleri#
v2.4.1 ile v2.5.0 arasındaki kullanıcıya görünür API bozulmaları. Kapsam: modules/ içindeki Python C modülleri ve scripts/libraries/ içindeki Python kütüphaneleri.
Bozucu değişiklik bir davranış değişikliğidir (aynı API, farklı sonuç) — etkilenen betikleri yeniden kontrol edin. Her commit hash’i, GitHub üzerindeki diff’ine bağlanır.
Görüntü yükleme çerçeve arabelleği destekli (davranış)#
image.Image / görüntü yükleme artık yüklenen görüntüyü ana çerçeve arabelleğine kopyalar ve görüntü sığamayacak kadar büyükse bir istisna fırlatır. Önceden bir yığın (heap) arabelleğine başarılı olan yüklemeler artık başarısız olabilir — yüklenen görüntülerin çerçeve arabelleğine sığdığından emin olun (veya yeni hatayı ele alın).
Commit’ler: 87d53385a
Taşıma kontrol listesi#
Önceden yığın (heap) destekli görüntü yüklemelerine dayandığınız yerlerde, yüklenen görüntülerin çerçeve arabelleğine sığdığından emin olun (veya yeni “görüntü çok büyük” hatasını yakalayın) (görüntü yükleme değişikliği). Diğer tüm betikler değişmeden çalışır.