Kvantálás Matlabban
A kvantálás a szín- vagy intenzitástartományt osztja fel adott számú részre, így a kvantált képen csak adott számú intenzitás vagy szín érték szerepel. Ezek az értékek az egyes intervallumokat reprezentálják, amelyek lehetnek az intervallumok kezdő- vagy végpontjai, illetve centroidjai.
Az uniform kvantálást Matlabban nagyon könnyen elvégezhetjük, csupán egy osztást kell végrehajtanunk. Nézzünk egy példát amelyben az eredeti szürkeárnyalatos képet három intenzitásúra kvantáljuk.
>> img = imread('haz_auto_gray.jpg');
>> q = 3;
>> max_val = max(img(:));
>> divisor = max_val / (q-1);
>> quantized_img = (img(:,:) / divisor) * divisor;
>> imshow(quantized_img);
![]() |
![]() |
Eredeti (szürkeárnyalatos) kép | Kvantált kép három intenzitással |
A Matlabban van be van építve a Floyd-Steinberg-féle dithering algoritmus, amellyel a kvantált képet olyan módon terheljük zajjal, hogy vizálisan elmosódjanak az egyes sávok közötti különbségek, és folytonosnak lássuk az átmeneteket. Szürkeárnyalatos kép esetében egy bináris (féltúnusú) képet kapunk. A művelethet a dither() függvényt használjuk.
>> img = imread('haz_auto_gray.jpg');
>> bw = dither(img);
>> imshow(bw);
![]() |
![]() |
Eredeti (szürkeárnyalatos) kép | A Floyd-Steinberg-féle dithering algoritmus eredménye |