欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

基于matlab的数字图像处理--对比度增强

程序员文章站 2024-03-08 09:06:05
...
通过使用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')

效果图:

基于matlab的数字图像处理--对比度增强