Képtípusok átalakítása

Színes képből szürkeárnyalatos konverzió

Elsőként nézzük meg, hogy Matlabban hogyan történik a színes RGB képek szürkeárnyalatos konverziója. Ehhez az rgb2gray() függvényt használjuk.

Példa:

>> img = imread('szeder.jpg');
>> img_gray = rgb2gray(img);
>> imshow(img_gray);

 

A szürkeárnyalatos konverzió nem nehéz feladat. Magunk is könnyen írhatunk olyan kis programot, amely átalakítja az RGB képeket szürkeárnyalatossá. Ismeretes, hogy egy szürkeárnyalat a színkomponensek lineáris kombinációjaként áll elő. Többféle súlyozás létezik, de ezek a súlyok nem sokban különboznek egymástól. A vörös, a zöld, valamint a kék komponens súlya rendre 0.33, 056, 0.11 körüli érték.

Példa:

function gray = rgb2gray(image)
    img_size = size(image);
    gray = zeros(img_size(1), img_size(2), 'uint8');
    gray(:,:) = (uint8(image(:,:,1)* 0.33) ) +  (uint8(image(:,:,2) * 0.56) ) + (uint8(image(:,:,3) * 0.11));
end

 

Kép konverziója bináris képpé

A képek (legyen most szó színes vagy pedig szürkeárnyalatos képről) bináris képpé alakítását az im2bw() függvény végzi. A fenti szedret ábrázoló kép bináris változata a példakód alatt látszódik.

Példa:

>> img = imread('szeder.jpg');
>> img_bw = im2bw(img);
>> imshow(img_bw);