ml.preprocessing — ML predobrada¶
Modul ml.preprocessing sadrži klase za predobradu slika za korištenje s modelima strojnog učenja.
klasa Normalization – Normalizacija slike¶
Objekt Normalization pretvara objekte image.Image u ndarray ulazne tenzore za korištenje s ml.Model.predict(). Automatski ga stvara objekt ml.Model kada se slika preda metodi ml.Model.predict(), ali se može instancirati i ručno radi kontrole pretvorbe (skala, srednja vrijednost/standardna devijacija, 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)¶
Stvara objekt
Normalization.scaleje raspon vrijednosti(min, max)koje ulazni tenzori s pomičnim zarezom očekuju nakon normalizacije (npr.(0.0, 1.0)ili(-1.0, 1.0)). Zanemaruje se zauint8iint8ulazne tenzore.meanje srednja vrijednost po kanalu(R, G, B)koja se oduzima od slike nakon skaliranja. Za tenzore sivih tonova srednja se vrijednost svodi na jednu vrijednost luminancije pomoću0.299*R + 0.587*G + 0.114*B. Zanemaruje se zauint8iint8ulazne tenzore.stdevje standardna devijacija po kanalu(R, G, B)kojom se slika dijeli nakon oduzimanja srednje vrijednosti. Za tenzore sivih tonova standardna se devijacija svodi na jednu vrijednost luminancije pomoću0.299*R + 0.587*G + 0.114*B. Zanemaruje se zauint8iint8ulazne tenzore.roije opcionalno područje interesa(x, y, w, h)unutar ulazne slike koje se izrezuje. Ako jeNone, koristi se cijela slika. Izrezano područje centrira se i bilinearno skalira (uz očuvanje omjera stranica s crnim ispunom) na dimenzije ulaznog tenzora modela.- __call__(image: image.Image) Normalization¶
- __call__(buffer: bytearray, shape: tuple[int, int, int, int], dtype: int) None
Kada se pozove s jednim argumentom
image.Image, vraća novi objektNormalizationvezan uz tu sliku. Vezani objekt je ono štoml.Model.predict()interno poziva radi popunjavanja ulaznog tenzora. Akoroinije bio postavljen na izvornoj instanci, inicijalizira se na punu veličinu slike.Kada se pozove s
(buffer, shape, dtype), popunjavabufferna mjestu normaliziranim ulaznim tenzorom za prethodno vezanu sliku.shapemora biti(1, H, W, C)sCjednakim1(sivi tonovi) ili3(RGB).dtypeje ulab numpy kod tipa (npr.ord('f')za float32,ord('b')za int8,ord('B')za uint8). Float tenzori primjenjujuscale,meanistdev; cjelobrojni tenzori zapisuju se izravno (uz pomak zaint8).