资源简介
针对图像中亮度暗的部分进行增强,而其他部分保持不变,参考冈萨雷斯图像处理钨丝图像处理的例子写出的程序,对图像进行增强,达到了很好的效果。
代码片段和文件信息
clearclc;
I=imread(‘imageRao.bmp‘);%读图
f=double(I);%将原图转为double型
[mn]=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(mn);%设一个m*n的0矩阵,后面计算的3*3领域的均值放在此矩阵内
Dloc=zeros(mn);%设一个m*n的0矩阵,后面计算的3*3领域的房车放在此矩阵内
for i=2:m-1
for j=2:n-1
Mloc(ij)=(f(i-1j-1)+f(i-1j)+f(i-1j+1)+f(ij-1)+f(ij)+f(ij+1)...
+f(i+1j-1)+f(i+1j)+f(i+1j+1))/9; %计算原图中3*3领域内的均值
Dloc(ij)=((f(i-1j-1)-Mloc(ij))^2+(f(i-1j)-Mloc(ij))^2+(f(i-1j+1)-Mloc(ij))^2+...
(f(ij-1)-Mloc(ij))^2+(f(ij+1)-Mloc(ij))^2+(f(i+1j-1)-Mloc(ij))^2+...
(f(i+1j)-Mloc(ij))^2+(f(i+1j+1)-Mloc(ij))^2)^(1/2); %计算原图中3*3领域内的方差
end
end
g=zeros(mn);%设定一个m*n的0矩阵,用于产生增强的图像
for i=1:m
for j=1:n
if (Mloc(ij)<=k1*M) && (Dloc(ij)>=k2*D) && (Dloc(ij)<=k3*D)
g(ij)=E*f(ij);
%满足原图中3*3领域内的平均像素小于整体平均像素*阈值k1,
%且满足3*3领域内方差在阈值k2*整体平均方差与阈值k3*整体平均方差之间的像素,
%我们将这样的像素乘以阈值E,达到较暗部分
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 76174 2010-12-09 11:29 imageRao.bmp
文件 1433 2010-12-27 12:24 zengqiang.m
----------- --------- ---------- ----- ----
77607 2
相关资源
- 化学计量学方法及MATLAB实现
- MATLAB Neural Network Toolbox官方教程
- Inverse Synthetic Aperture Radar Imaging with
- matlab GUI设计
- 雷达压制干扰matlab程序
- 系统辨识,使用者的理论
- MATLAB仿真林飞、杜欣编著.pdf
- 基于HMM的语音识别MATLAB代码
- 关于均衡的MATLAB程序合集
- 数字滤波器的MATLAB与FPGA实现代码
- 滑模变结构控制MATLAB仿真 第3版 基本
- Matlab火焰烟雾检测(GUI)
- 帧间差分法matlab
- Matlab MPT工具箱 MPT3.2.1 (2019更新 稳
- 《模式识别与智能计算的MATLAB实现》
- 基于sift和SVM算法实现的手势识别 MA
- 数字图像处理第三版冈萨雷斯英文附
- 《精通MATLAB图像处理》全书pdf高清完
- 斯坦福机器学习公开课CS229讲义作业及
- MATLAB神经网络30个案例分析(高清版)
-
微网运行控制simuli
nk仿真,包含逆变 - MATLAB数据分析方法
- MATLAB图像处理:能力提高与应用案例
- MATLAB.Programming.for.Engineers.5th.Edition_2
- 卷积神经网络的matlab程序
- MATLAB优化算法案例分析与应用_进阶篇
- 精通MATLAB数字图像处理与识别书本代
- 冈萨雷斯数字图像处理MATLAB版图片及
- 人脸识别 MATLAB代码
- MNIST手写字体识别CNN+BP两种实现-Matl
评论
共有 条评论