ml.preprocessing --- ML Preprocessing¶
Modul ml.preprocessing berisi kelas untuk praproses citra agar dapat digunakan dengan model machine learning.
class Normalization -- Image Normalization¶
Objek Normalization mengonversi objek image.Image menjadi tensor input ndarray untuk digunakan dengan ml.Model.predict(). Ini dibuat secara otomatis oleh objek ml.Model saat citra diteruskan ke ml.Model.predict(), tetapi dapat diinstansiasi secara manual untuk mengontrol konversi (skala, mean/stdev, ROI).
- 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)¶
Membuat objek
Normalization.scaleadalah rentang nilai(min, max)yang diharapkan oleh tensor input floating-point setelah normalisasi (misalnya(0.0, 1.0)atau(-1.0, 1.0)). Diabaikan untuk tensor inputuint8danint8.meanadalah mean per-saluran(R, G, B)yang dikurangkan dari citra setelah penskalaan. Untuk tensor skala abu-abu, mean direduksi menjadi nilai luma tunggal menggunakan0.299*R + 0.587*G + 0.114*B. Diabaikan untuk tensor inputuint8danint8.stdevadalah deviasi standar per-saluran(R, G, B)yang membagi citra setelah mean dikurangkan. Untuk tensor skala abu-abu, stdev direduksi menjadi nilai luma tunggal menggunakan0.299*R + 0.587*G + 0.114*B. Diabaikan untuk tensor inputuint8danint8.roiadalah wilayah yang diminati (ROI)(x, y, w, h)opsional dalam citra input untuk dipotong. JikaNone, seluruh citra digunakan. Wilayah yang dipotong dipusatkan, diskalakan secara bilinear (mempertahankan rasio aspek dengan padding hitam) ke dimensi tensor input model.- __call__(image: image.Image) Normalization¶
- __call__(buffer: bytearray, shape: tuple[int, int, int, int], dtype: int) None
Ketika dipanggil dengan satu argumen
image.Image, mengembalikan objekNormalizationbaru yang terikat pada citra tersebut. Objek yang terikat inilah yang dipanggil olehml.Model.predict()secara internal untuk mengisi tensor input. Jikaroitidak ditetapkan pada instance asli, ini diinisialisasi ke ukuran penuh citra.Ketika dipanggil dengan
(buffer, shape, dtype), mengisibuffersecara in-place dengan tensor input yang dinormalisasi untuk citra yang sebelumnya terikat.shapeharus berupa(1, H, W, C)denganCsama dengan1(skala abu-abu) atau3(RGB).dtypeadalah kode tipe numpy ulab (misalnyaord('f')untuk float32,ord('b')untuk int8,ord('B')untuk uint8). Tensor float menerapkanscale,mean, danstdev; tensor integer ditulis langsung (dengan offset untukint8).