6.20. Özet

Bu bölüm, bir işlemin yerleşik bir görüntü kitaplığı yöntemi olmadığında bir OpenMV uygulamasının başvurduğu numpy ve scipy parçalarını ele aldı:

  • Kavramlar – bir ndarray nesnesinin ne olduğu, sayısal iş için paketlenmiş tipli bir arabelleğin neden bir Python list nesnesini geride bıraktığı ve kameranın desteklediği dtype kümesi.

  • Şekil ve indeksleme – görünümler ile kopyalar, tahsissiz güncellemeler için dilim ataması, bir tanımlayıcı düzenlemesi olarak transpose().

  • Matematik – eleman bazlı işleçler, sin() gibi evrensel işlevler, yayın (broadcasting) kuralları, mean() gibi indirgemeler ve where() gibi seçim yardımcıları.

  • Doğrusal cebir – matris çarpımı için dot(), ters için inv() / det() ve daha fazla yapıya sahip problemler için numpy.linalg ile scipy.linalg altındaki ayrıştırmalar ve çözücüler.

  • Sinyal işlemefft(), dijital filtreleme için sosfilt() ve akışlı bir döngüde tahsissiz büyüklük spektrumları için spectrogram().

  • Eğriler ve integrasyoninterp(), polyfit() / polyval(), kısa FIR filtreleri için convolve(), örneklenmiş verilerin yamuk integrasyonu için trapz().

  • Çözücüler ve rastgele sayılar – bir Python çağrılabilirinin kuadratürü için scipy.integrate, kök bulma ve minimizasyon için scipy.optimize, istatistiksel özel işlevler için scipy.special ve sözde rastgele örnekleme için Generator.

  • Görüntüler – görüntü kitaplığının kapsamadığı nadir durumlar için to_ndarray() ve image.Image köprüsü.

  • Performans – küçük dtype’lar, önceden tahsis edilmiş arabellekler, yerinde işleçler, out= anahtar sözcükleri ve akışlı döngülerde boolean maske çalkalanmasına dikkat etmek.

Bu, kameranın geri kalanının yaslandığı genel sayısal işi kapsar. numpy, bir işlemin Image üzerinde yerleşik bir yöntemi olmadığında bir uygulamanın başvurduğu araç kutusudur – özel bir piksel dönüşümü, bir kalibrasyon çözümü, arabelleğe alınmış sesin bir FFT’si.