资源简介
matlab图像去噪 滤波 锐化 边缘检测案例,包括详细的代码资料和讲解注释
代码片段和文件信息
%% 学习目标:一个图像处理的经典综合案例
clear;clc;close all
%% 读取图像
I=imread(‘1.jpg‘);
try
I=rgb2gray(I); %如果是RGB图像,则转化为灰度图
end
%% 添加噪声
I=imnoise(I‘salt & pepper‘0.04); % 叠加密度为0.04的椒盐噪声
figure
imshow(I)
title(‘原图‘)
%% 图像去噪
I=medfilt2(I[2 4]); %采用二维中值滤波函数对图像滤波
figure
imshow(I)
title(‘去噪之后的图像‘)
%% 图像锐化
[MN]=size(I); % 计算图像尺寸
f=double(I); % 数据类型转换,MATLAB不支持图像的无符号整型的计算
g=fft2(f); % 二维傅立叶变换,得到频域信息
g=fftshift(g); % 0频率移到(M/2N/2)处
n=2; % 二阶巴特沃斯滤波器
D0=3; % 巴特沃斯滤波器的D0,D0越大,保留的高频信号就越少(对于不同的图片,可以自行调节,以便得到好的效果)
for i=1:M
for j=1:N
D=sqrt((i-M/2)^2+(j-N/2)^2); %计算离0频率(M/2N/2)的距离
h=1/(1+(D0/D)^(2*n)); %计算传递函数的值
output(ij)=h*g(ij); %高通滤波之后(ij)处的值
end
end
result=ifftshift(output); %与g=fftshift(g)对应,还原回去
I=ifft2(result); %傅里叶反变换
I=uint8(real(I)); %得到滤波之后的图像(锐化之后的图像)
figure
imshow(I) %滤波后图像显示
title(‘锐化之后的图像‘)
%% 直方图均衡化处理
I=histeq(I); %得到直方图均衡化之后的图像
figure
imshow(I)
title(‘直方图均衡之后的图像‘)
%% 边缘检测
I1=edge(I‘prewitt‘);
I2=edge(I‘roberts‘);
I3=edge(I‘sobel‘);
figure
imshow(I1)
title(‘prewitt边缘检测之后的图像‘)
figure
imshow(I2)
title(‘roberts边缘检测之后的图像‘)
figure
imshow(I3)
title(‘sobel边缘检测之后的图像‘)
%%
%% QQ:1960009019
%% 微信:13299109228
%% 微信公众号:大仙一品堂
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5551 2017-06-07 10:50 8 图像去噪 滤波 锐化 边缘检测程序\1.jpg
文件 1775 2019-10-11 15:28 8 图像去噪 滤波 锐化 边缘检测程序\chengxu.m
目录 0 2018-03-20 09:37 8 图像去噪 滤波 锐化 边缘检测程序\
- 上一篇:基于SIMUli
nk仿真的BUCK电路 - 下一篇:双馈风力发电机PID控制变桨程序
相关资源
-
基于SIMUli
nk仿真的BUCK电路 - OFDM系统仿真
- 用matlab读取nc文件
- 微穿孔板吸声系数MATLAB仿真代码
- 基于MATLAB模板匹配的车牌识别
- 前向回归法,求解特征选择 matlab
- 毫米波信道模型
-
DFIG simuli
nk - matlab三次B样条曲面
- zw_16QAM信号调制解调Matlab仿真.zip
- zw_Matlab多旅行商实验.zip
- zw_52372580SINS-MatlabImplement.zip
- 风电储能并网发电系统
- matlab加速度积分为速度、位移
- 电动汽车充电负荷预测
- 概率论与数理统计-matlab 验证泊松定理
- 三相锁相环
- 计算粒度分布
- path_integral.m
- 复杂网络中无向无权图的最短路径m
- MATLAB车牌识别汽车车牌数字模板
- matlab计算包含非期望产出的sbm模型代
-
simuli
nk的boost升压电路仿真 - pareto排序程序
- 运用Matlab调用OpenDss运行代码
- JPDA算法Matlab代码
- 电子测量-数据误差处理
- matlab贝叶斯分类(2)-10折10次交叉验
- 基于MATLAB的音乐信号处理
- 灰色预测模型
评论
共有 条评论