ml.preprocessing — ML előfeldolgozás¶
A ml.preprocessing modul a képek gépi tanulási modellekkel való használatra történő előfeldolgozásához tartalmaz osztályokat.
class Normalization – Kép-normalizálás¶
A Normalization objektum az image.Image objektumokat ndarray bemeneti tenzorokká alakítja a ml.Model.predict() használatához. A ml.Model objektum automatikusan létrehozza, amikor egy kép kerül átadásra a ml.Model.predict() függvénynek, de manuálisan is példányosítható a konverzió (skála, átlag/szórás, ROI) vezérléséhez.
- 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)¶
Létrehoz egy
Normalizationobjektumot.A
scaleaz értékek azon(min, max)tartománya, amelyet a lebegőpontos bemeneti tenzorok a normalizálás után elvárnak (pl.(0.0, 1.0)vagy(-1.0, 1.0)). Auint8ésint8bemeneti tenzorok esetén figyelmen kívül marad.A
meana csatornánkénti átlag(R, G, B), amelyet a skálázás után kivonunk a képből. A szürkeárnyalatos tenzorok esetén az átlag egyetlen luma értékre csökken a0.299*R + 0.587*G + 0.114*Bképlettel. Auint8ésint8bemeneti tenzorok esetén figyelmen kívül marad.A
stdeva csatornánkénti szórás(R, G, B), amellyel a képet az átlag kivonása után elosztjuk. A szürkeárnyalatos tenzorok esetén a szórás egyetlen luma értékre csökken a0.299*R + 0.587*G + 0.114*Bképlettel. Auint8ésint8bemeneti tenzorok esetén figyelmen kívül marad.A
roiegy opcionális(x, y, w, h)érdeklődési terület a bemeneti képen belül, amelyet ki kell vágni. HaNone, a teljes kép kerül felhasználásra. A kivágott terület középre igazítva, bilineárisan skálázva (a képarányt megőrizve fekete kitöltéssel) a modell bemeneti tenzorának méreteihez igazodik.- __call__(image: image.Image) Normalization¶
- __call__(buffer: bytearray, shape: tuple[int, int, int, int], dtype: int) None
Ha egyetlen
image.Imageargumentummal hívják meg, egy új, az adott képhez kötöttNormalizationobjektumot ad vissza. A kötött objektumot hívja meg belsőleg aml.Model.predict()a bemeneti tenzor feltöltéséhez. Ha az eredeti példányon nem volt beállítva aroi, az a teljes képméretre inicializálódik.Ha
(buffer, shape, dtype)paraméterekkel hívják meg, helyben feltölti abuffer-t a korábban kötött kép normalizált bemeneti tenzorával. Ashapeértékének(1, H, W, C)alakúnak kell lennie, ahol aCértéke1(szürkeárnyalatos) vagy3(RGB). Adtypeaz ulab numpy típuskódja (pl.ord('f')a float32-höz,ord('b')az int8-hoz,ord('B')a uint8-hoz). A lebegőpontos tenzorok alkalmazzák ascale,meanésstdevértékeket; az egész számú tenzorok közvetlenül kerülnek beírásra (azint8esetén egy eltolással).