ml.preprocessing — ML Ön İşleme

ml.preprocessing modülü, görüntüleri makine öğrenmesi modelleriyle kullanmak üzere ön işlemek için sınıflar içerir.

class Normalization – Görüntü Normalizasyonu

Normalization nesnesi, ml.Model.predict() ile kullanılmak üzere image.Image nesnelerini ndarray girdi tensörlerine dönüştürür. ml.Model.predict() öğesine bir görüntü geçirildiğinde ml.Model nesnesi tarafından otomatik olarak oluşturulur, ancak dönüşümü (ölçek, ortalama/standart sapma, ROI) denetlemek için elle örneklendirilebilir.

class ml.preprocessing.Normalization(scale: tuple[float, float] = (0.0, 1.0), mean: tuple[float, float, float] = (0.0, 0.0, 0.0), stdev: tuple[float, float, float] = (1.0, 1.0, 1.0), roi: tuple[int, int, int, int] = None)

Bir Normalization nesnesi oluşturur.

scale, kayan noktalı girdi tensörlerinin normalizasyondan sonra beklediği (min, max) değer aralığıdır (örn. (0.0, 1.0) veya (-1.0, 1.0)). uint8 ve int8 girdi tensörleri için yoksayılır.

mean, ölçeklemeden sonra görüntüden çıkarılan kanal başına ortalama (R, G, B) değeridir. Gri tonlama tensörleri için ortalama, 0.299*R + 0.587*G + 0.114*B kullanılarak tek bir luma değerine indirgenir. uint8 ve int8 girdi tensörleri için yoksayılır.

stdev, ortalama çıkarıldıktan sonra görüntünün bölündüğü kanal başına standart sapma (R, G, B) değeridir. Gri tonlama tensörleri için standart sapma, 0.299*R + 0.587*G + 0.114*B kullanılarak tek bir luma değerine indirgenir. uint8 ve int8 girdi tensörleri için yoksayılır.

roi, girdi görüntüsü içinde kırpılacak isteğe bağlı bir (x, y, w, h) ilgi bölgesidir (ROI). None ise, tüm görüntü kullanılır. Kırpılan bölge ortalanır ve modelin girdi tensörü boyutlarına çift doğrusal olarak ölçeklenir (en boy oranı korunarak siyah dolgu eklenir).

__call__(image: image.Image) Normalization
__call__(buffer: bytearray, shape: tuple[int, int, int, int], dtype: int) None

Tek bir image.Image argümanıyla çağrıldığında, o görüntüye bağlı yeni bir Normalization nesnesi döndürür. Bağlı nesne, ml.Model.predict() öğesinin girdi tensörünü doldurmak için dahili olarak çağırdığı nesnedir. Orijinal örnekte roi ayarlanmamışsa, tam görüntü boyutuna ilklendirilir.

(buffer, shape, dtype) ile çağrıldığında, buffer öğesini önceden bağlanmış görüntü için normalize edilmiş girdi tensörüyle yerinde doldurur. shape, C değeri 1 (gri tonlama) veya 3 (RGB) olacak şekilde (1, H, W, C) olmalıdır. dtype, ulab numpy tür kodudur (örn. float32 için ord('f'), int8 için ord('b'), uint8 için ord('B')). Float tensörler scale, mean ve stdev uygular; tam sayı tensörleri doğrudan yazılır (int8 için bir ofset ile).