1. 程式人生 > >基於matlab的數字影象處理--對比度增強

基於matlab的數字影象處理--對比度增強

通過使用matlab將圖片的對比度提升。程式如下:
% 通過灰度直方圖的資料顯示該影象的灰度值整體偏高,影象過於明亮,
% 所以選用 γ > 1 的伽馬變換
% 降低影象的亮度,提升圖片的對比度。
clc
img1 = imread('einstein.tif'); % 讀入影象
imgdata = im2double(img1);

P1= 1 * (imgdata .^ 1.2);
P2= 1 * (imgdata .^ 1.4);
P3= 1 * (imgdata .^ 1.6);
P4= 1 * (imgdata .^ 1.8);
P5= 1 * (imgdata .^ 2.0);
img=mapminmax(imgdata, 0, 1);
figure
imhist(img);
title('灰度直方圖');

figure
subplot(2,3,1);
imshow(img1)
title('原始影象');
subplot(2,3,2);
imshow(P1)
title('伽馬變換:c=1,γ=1.2')
subplot(2,3,3);
imshow(P2)
title('伽馬變換:c=1,γ=1.4')
subplot(2,3,4);
imshow(P3)
title('伽馬變換:c=1,γ=1.6')
subplot(2,3,5);
imshow(P4)
title('伽馬變換:c=1,γ=1.8')
subplot(2,3,6);
imshow(P5)
title('伽馬變換:c=1,γ=2.0')

效果圖: