%% Bildkontrast
% 1.
mrImage = imread('MRIHead.png');
% 2.
figure, imshow(mrImage);
% 4.
imContrast = imageContrast(mrImage);
fprintf('Kontrast (Quellbild): %f\n', imContrast);
%% Bildglaettung mit lokalen Masken
% 1.
filterSize = [3, 5];
% 2.
for i = filterSize
% 2.a)
h_mean = ones(i, i) / (i * i);
% 2.b)
imageMean = imfilter(mrImage, h_mean);
% 2.c)
tmp = pascal(i, 2);
vector = abs(tmp(:, 1));
h_gauss = vector * transpose(vector);
h_gauss = h_gauss / sum(sum(h_gauss));
% 2.d)
imageGauss = imfilter(mrImage, h_gauss);
% 2.e)
figure;
subplot(1, 2, 1), imshow(imageMean);
subplot(1, 2, 2), imshow(imageGauss);
% 2.f)
contrast_mean = imageContrast(imageMean);
contrast_gauss = imageContrast(imageGauss);
fprintf('Kontrast mean_%ix%i: %f\n', i, i, contrast_mean);
fprintf('Kontrast gauss_%ix%i: %f\n', i, i, contrast_gauss);
end
% 3.
% Je groesser der Filter gewaehlt ist, desto unschaerfer ist auch das
% Bild, da mehr Bildpixel in die Filterung einbezogen werden (dies
% entspricht folglich den Erwartungen). Ausserdem sorg der gleitende
% Mittelwert fuer mehr Unschaerfe als der Gauss-Filter, da bei dem
% Gauss-Filter der eigentliche Pixel eine viel hoehere Gewichtung beim
% Filtern hat, als die umliegenden Pixel (und je weiter weg, desto
% geringer ist die Gewichtung). Das Ergebnis ist somit wie erwartet.
% 4.
% Ja. Je geringer der Kontrast ist, desto unschaerfer ist auch das Bild.
Comments