%首先读取图片, 显示其灰度直方图:
I = imread('D:\Work\工作文档\读博\入学后\入门\笔记\Test.bmp') ; % 读取rgb图像
I = rgb2gray(I);
figure, imshow(I); %显示退化图像
figure, imhist(I); % 显示图像的灰度值直方图
%然后进行灰度级线性分段增强:
f0 = 0; g0 = 0;
fl = 20; g1 = 100;
f2 = 100; g2 = 180 ;
f3= 255; g3 = 255 ;
r1 = (g1 - g0) / (fl - f0);
bl = g0 - r1 * f0;
r2 = (g2 - g1) / (f2 - fl);
b2 = g1 - r2 * fl;
r3 = (g3 - g2) / (f3 - f2);
b3 = g2 - r3 * f2 ;
[m , n ] = size(I);
x2 = double(I); %变换矩阵中的每一个元素
for i = l : m
for j = l : n
f = x2( i , j);
g(i , j ) = 0 ;
if( f >= 0) & (f <= fl)
g(i, j) = r1 * f + bl;
else if(f >= fl) & (f <= f2)
g(i, j) = r2 * f + b2;
else if( f >= f2) & (f <= f3)
g(i, j) = r3 * f + b3;
end
end
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余1页未读,立即下载
- 1
- 2
前往页