Pro načtení obrázku still.tiff do Matlabu jsem použil následující příkazy:
im=imread('still.tiff'); im=double(im);Dále jsem postupoval podle zadání úloh na stránce ZSO.
Originál obrázku still.tiff |
function [imneg]=negativ(im) %Funkce vytvari negativ zadaneho obrazku % %>> imneg = negativ(im); max_int=max(im(:)); imneg=max_int - im;Negativní obrázek:
Pro oprahování obrázku jsem použil následující příkazy:
» a=[zeros(1,128), ones(1,128)*255]; » prah=a(im+1); » figure; imshow(prah,[]);Oprahovaný obrázek:
Pro zobrazení histogramu použiji funkci hist(im(:),255). Zobrazí se mi následující obrázek:
Pro spočítání kumulativního histogramu jsem vytvořil m-file 'kumhist.m':
function kh=kumhist(im) % Vypocet kumulativniho histogramu pro vstupni obrazek % % Pro zobrazeni je vhodne pouzit nasledujici prikazy ('im' je vstupni obrazek): % %>>kh=kumhist(im); %>>figure; bar(cumsum(hist(kh(:),256))); % h = hist(im(:),256); hc = cumsum(h); eq = 255/hc(end); hq = round(h*eq); hqc= cumsum(hq); hqc2=hqc-round(hq/2); kh = hqc2(im+1);Pro jeho spuštění a zobrazení výsledků slouží následující příkazy:
» kh=kumhist(im); » figure; bar(cumsum(hist(kh(:),256))); » figure; imshow(kh,[]);Výsledkem je obrázek po equalizaci a kumulativní histogram.