ml.postprocessing.edgeimpulse — Edge Impulse#

ml.postprocessing.edgeimpulse modülü, Edge Impulse modelleri için son işleme sınıfları içerir.

class Fomo – Fast Objects More Objects#

FOMO (Fast Objects More Objects) model çıktısı için son işleyici.

class ml.postprocessing.edgeimpulse.Fomo(threshold: float = 0.4, w_scale: float = 1.414214, h_scale: float = 1.414214, nms_threshold: float = 0.1, nms_sigma: float = 0.001)#

Bir FOMO son işleyicisi oluşturur.

threshold bir tespitin korunması için gereken minimum skor.

w_scale maksimum olmayan bastırma öncesinde ızgara hücresi genişliğine uygulanan yatay ölçek faktörü. Daha büyük değerler komşu hücrelerin tek bir tespite birleştirilmesine neden olur.

h_scale maksimum olmayan bastırma öncesinde ızgara hücresi yüksekliğine uygulanan dikey ölçek faktörü. Daha büyük değerler komşu hücrelerin tek bir tespite birleştirilmesine neden olur.

nms_threshold maksimum olmayan bastırmaya geçirilen IoU eşiği.

nms_sigma maksimum olmayan bastırmaya (soft-NMS) geçirilen sigma değeri.

__call__(model: ml.Model, inputs: list, outputs: list) → list#

Model, girdileri ve ham çıktılarıyla ml.Model.predict() tarafından çağrılır. Sınıf başına tespit listelerinden oluşan bir liste döndürür. Her tespit bir ((x, y, w, h), score) demetidir. Çıktıdaki her listenin konumu model çıktısındaki sınıf dizinine karşılık gelsin diye boş sınıf listeleri de dahil edilir. Hiçbir şey tespit edilmediğinde boş bir demet döndürür.

class YoloPro – YOLO Pro#

Edge Impulse YOLO Pro nesne tespiti model çıktısı için son işleyici. YOLO Pro modelleri, aday kutu başına xmin, ymin, xmax, ymax (girdiye göre normalize edilmiş) ve ardından sınıf başına bir skor vektörü içeren bir satır üretir. Böyle bir modelin eğitimi için YOLO Pro belgelerine bakın.

class ml.postprocessing.edgeimpulse.YoloPro(threshold: float = 0.6, nms_threshold: float = 0.1, nms_sigma: float = 0.1)#

Bir YOLO Pro son işleyicisi oluşturur.

threshold maksimum olmayan bastırmadan önce bir kutunun korunması için gereken minimum sınıf skoru.

nms_threshold maksimum olmayan bastırmaya geçirilen IoU eşiği.

nms_sigma maksimum olmayan bastırmaya (soft-NMS) geçirilen sigma değeri.

__call__(model: ml.Model, inputs: list, outputs: list) → list#

Model, girdileri ve ham çıktılarıyla ml.Model.predict() tarafından çağrılır. Sınıf başına tespit listelerinden oluşan bir liste döndürür. Her tespit, ROI koordinatlarında bir ((x, y, w, h), score) demetidir. Çıktıdaki her listenin konumu model çıktısındaki sınıf dizinine karşılık gelsin diye boş sınıf listeleri de dahil edilir. Hiçbir şey tespit edilmediğinde boş bir demet döndürür.

Örnek:

import csi
import ml
from ml.postprocessing.edgeimpulse import YoloPro

csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize(csi.VGA)

model = ml.Model("/rom/<model_file_name>", postprocess=YoloPro(threshold=0.4))

while True:
    img = csi0.snapshot()
    for i, detections in enumerate(model.predict([img])):
        for (x, y, w, h), score in detections:
            img.draw_rectangle(x, y, w, h)
            print(model.labels[i], score)