clear,clc;
I=imread('imageRao.bmp');%读图
f=double(I);%将原图转为double型
[m,n]=size(I);%设定原图为m*n的矩阵
M=mean2(I);D=std2(I);%计算整体均值和方差
k1=0.4;
k2=0.02;
k3=0.4;
E=4.0;%k1,k2,k3,E为设定的阈值
Mloc=zeros(m,n);%设一个m*n的0矩阵,后面计算的3*3领域的均值放在此矩阵内
Dloc=zeros(m,n);%设一个m*n的0矩阵,后面计算的3*3领域的房车放在此矩阵内
for i=2:m-1
for j=2:n-1
Mloc(i,j)=(f(i-1,j-1)+f(i-1,j)+f(i-1,j+1)+f(i,j-1)+f(i,j)+f(i,j+1)...
+f(i+1,j-1)+f(i+1,j)+f(i+1,j+1))/9; %计算原图中3*3领域内的均值
Dloc(i,j)=((f(i-1,j-1)-Mloc(i,j))^2+(f(i-1,j)-Mloc(i,j))^2+(f(i-1,j+1)-Mloc(i,j))^2+...
(f(i,j-1)-Mloc(i,j))^2+(f(i,j+1)-Mloc(i,j))^2+(f(i+1,j-1)-Mloc(i,j))^2+...
(f(i+1,j)-Mloc(i,j))^2+(f(i+1,j+1)-Mloc(i,j))^2)^(1/2); %计算原图中3*3领域内的方差
end
end
g=zeros(m,n);%设定一个m*n的0矩阵,用于产生增强的图像
for i=1:m
for j=1:n
if (Mloc(i,j)<=k1*M) && (Dloc(i,j)>=k2*D) && (Dloc(i,j)<=k3*D)
g(i,j)=E*f(i,j);
%满足原图中3*3领域内的平均像素小于整体平均像素*阈值k1,
%且满足3*3领域内方差在阈值k2*整体平均方差与阈值k3*整体平均方差之间的像素,
%我们将这样的像素乘以阈值E,达到较暗部分增强的目的
else
g(i,j)=f(i,j);%不满足上述条件的像素将保持不变
end
end
end
I1=uint8(g);%将新图像转化为uint8型
subplot(1,2,1),imshow(I),title('原图');%显示原图
subplot(1,2,2),imshow(I1),title('增强图');%显示增强图
matlab钨丝图像局部增强
5星 · 超过95%的资源 需积分: 33 170 浏览量
2011-01-07
10:26:41
上传
评论 5
收藏 40KB RAR 举报
daxiong
- 粉丝: 0
- 资源: 1
最新资源
- 基于Matlab人脸肤色定理的教师人数统计+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab霍夫曼变换的表盘读数识别+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab火灾烟雾检测源码带GUI界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab的恶劣天气交通标志识别系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的霍夫曼变换的表盘示数识别+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab的车道线识别系统 +源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的教室人数统计系统带Gui界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB的教室人数统计系统带Gui界面+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于MATLAB 的霍夫曼变换答题卡识别源码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
- 基于Matlab+bp神经网络的神经网络汉字识别系统+源代码+全部数据+文档说明+详细注释+使用说明+截图(高分课程设计)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
- 3
- 4
前往页