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.
thresholdbir tespitin korunması için gereken minimum skor.w_scalemaksimum 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_scalemaksimum 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_thresholdmaksimum olmayan bastırmaya geçirilen IoU eşiği.nms_sigmamaksimum 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.
thresholdmaksimum olmayan bastırmadan önce bir kutunun korunması için gereken minimum sınıf skoru.nms_thresholdmaksimum olmayan bastırmaya geçirilen IoU eşiği.nms_sigmamaksimum 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)