图像中值滤波代码(什么是图像的中值滤波法)
admin 发布:2022-12-19 16:47 129
本篇文章给大家谈谈图像中值滤波代码,以及什么是图像的中值滤波法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、怎样用MATLAB实现中值和均值滤波
- 2、基于MATLAB,对彩色图像进行中值滤波
- 3、彩色图像中值滤波matlab语言实现程序
- 4、在matlab中,中值滤波函数怎么编,求代码???
- 5、数字图象处理中值滤波matlab程序
- 6、MATLAB中值滤波图像处理
怎样用MATLAB实现中值和均值滤波
中值滤波楼上答了,5*5的均值滤波代码 w2=fspecial('average',[5 5]); %% 先定义一个滤波器 h=imfilter(a,w2,'replicate'); %%让图像通过滤波器 imshow(h); imwrite(h,'8.jpg');
均值滤波是
I=medfilt2(a,[3 3],'symmetric')
可以在matlab中查询medfilt函数的用法,本例是使用3*3的滤波器采用镜像边界法做均值滤波。
基于MATLAB,对彩色图像进行中值滤波
1、阅读图片,以pout.tif为例,加上盐和胡椒噪音。
2、分别建立3×3高斯滤波器模板和平均滤波器模板,并对经过噪声添加的图像进行滤波。显示原始图像,噪声图像和由高斯和平均模板过滤的图像。
3、图片结果如图所示。可以看出,平均模板滤波后的噪声非常明显。高斯模板滤波的噪声影响相对较小。
4、之后我们选择输入代码进行过滤,并显示处理后的图像。
5、中值滤波图像基本上不显示噪声的影响。效果如下。
彩色图像中值滤波matlab语言实现程序
I=imread('lena.bmp');
inf=imfinfo('lena.bmp')
figure,imshow(I)
X=grayslice(I,64);
imshow(X,pink(64))
load trees
figure,image(10,10,X)
imwrite(X,map,'trees.bmp');
imfinfo('trees.bmp')
figure,imshow(X,map)
BW=im2bw(X,map,0.6);
figure,imshow(BW)
I=imread('lena.bmp');
inf=imfinfo('lena.bmp')
figure,imshow(I)
X=grayslice(I,64);
figure,imshow(X,pink(64))
A=imread('lena.bmp');
imshow(A)
B=fftshift(fft2(A));
figure;
imshow(log(abs(B)),[8,10])
clc;
clear all;
I=imread('lena.tif');
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %用中值滤波,多维滤波,使用中心为-4,-8的拉普
% %拉斯滤波器,高斯低通滤波,拉普拉斯滤波器进行滤波处理
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure;%figure1
subplot(2,2,1);
imshow(I);
title('原始图像');
J=imnoise(I,'salt pepper',0.04);%加椒盐噪声
title('加椒盐噪声');
subplot(2,2,2);
imshow(J);
K=medfilt2(J,[4,4])%进行中值滤波;
subplot(2,2,3);
imshow(K);
title('进行中值滤波');
h=ones(3,3)/9;%多维滤波
w=h;
g=imfilter(I,w,'conv','replicate')
subplot(2,2,4);
imshow(g);
title('多维滤波');
%使用中心为-4,-8的拉普拉斯滤波器,
w4=[1 1 1;
1 -4 1;
1 1 1];
w8=[1 1 1;
1 -8 1;
1 1 1];
f=im2double(I);
g4=f-imfilter(f,w4,'replicate');
g8=f-imfilter(f,w8,'replicate');
imshow(f);
figure;%figure2
subplot(1,2,1);
imshow(g4);
title('中心为-4的拉普拉斯滤波');
subplot(1,2,2);
imshow(g8);
title('中心为-8的拉普拉斯滤波');
h3=fspecial('gaussian',[3,3],0.5);%高斯低通滤波
figure;%figure3
B4=filter2(h3,I);
subplot(1,2,1);
imshow(B4,[ ]);
title('高斯低通滤波');
h4=fspecial('laplacian',0);%使用拉普拉斯滤波器
B5=filter2(h4,I);
subplot(1,2,2);
imshow(B5,[ ]);
title('拉普拉斯滤波器');
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %从空域的角度进行亮度变换
% %把灰度等级是10-100的变化到10-255
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure;%figure4
subplot(2,2,1);
imshow(I);
title('原始图像');
J2=imadjust(I,[],[],0.5);% 增强低灰度级
subplot(2,2,2);
imshow(J2);
title('增强低灰度级');
J3=imadjust(I,[ ],[ ],2);%增强高灰度级
subplot(2,2,3);
imshow(J3);
title('增强高灰度级');
a1=100/255;%把灰度等级是10-100的变化到10-255
a2=255/255;
a3=10/255;
J2=imadjust(I,[a3,a1],[a3,a2],[]);
subplot(2,2,4);
imshow(J2);
title('把灰度等级是10-100的变化到10-255');
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %从频域的角度进行亮度变换
% %fft2
% %由于能量主要集中在低频部分
% %所以对低频进行处理可以得到理想的效果
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
I=imread('lena.tif');
up=0.5;%设置处理频率上限
down=0.09%%设置处理频率下限
figure;%figure5
subplot(421);
imshow(I);
title('原始图像');
f=double(I);
subplot(4,2,3);
imshow(log(abs(f)),[]);
title('unit8转化为double');
g=fft2(f);
g=fftshift(g);
subplot(4,2,5);
imshow(log(abs(g)),[]);
title('FFT2变化后的图像');
[M,N]=size(g);% 转换数据矩阵
y1=max(max(abs(g)));%求出最大频率
y2=min(min(abs(g)));%%求出最小频率
y3=(y1-y2)*up+y2;%设置滤波上限
y4=(y1-y2)*down+y2;%%设置滤波下限
for i=1:M
for j=1:N
if (abs(g(i,j))y4)
g(i,j)=g(i,j)^1.1;%对低频部分进行灰度增强
end
end
end
result=ifftshift(g);
J2=ifft2(result);
J3=uint8(abs(J2));
subplot(427);
imshow(J3,[ ]);
title('频域处理后的图像');
subplot(422)
imhist(I,64);
subplot(424)
imhist(f,64);
subplot(426)
imhist(g,64);
subplot(428)
imhist(J3,64);
在matlab中,中值滤波函数怎么编,求代码???
%中值滤波,以某点前n个点的中值作为该点的估计值
function y = zhongzhi(x,n) %x为列向量
m = length(x);
y = zeros(m,1);
for i = 1:n
y(i,1) = median(x(1:i,1:1));
end
for i = n+1:m
y(i,1) = median(x(i-n:i-1,1:1));
end
plot((1:m),x,'-b');hold on
plot((1:m),y,'-r')
数字图象处理中值滤波matlab程序
I=imread('Fig5.10(a).jpg');
J=imnoise(I,'salt pepper',0.02);
subplot(231),imshow(I);title('原图')
subplot(232),imshow(J);title('添加盐椒噪声')
k1=filter2(fspecial('average',3),J);
subplot(233),imshow(uint8(k1));title('均值滤波3*3模板平滑')
I=imread('Fig5.10(a).jpg');
J=imnoise(I,'salt pepper',0.02);
figure
subplot(231),imshow(I);title('原图')
subplot(232),imshow(J);title('添加盐椒噪声')
k1=medfilt2(J,[3 3]);
subplot(233),imshow(uint8(k1));title('中值滤波3*3模板平滑')
望采纳
MATLAB中值滤波图像处理
这句g=medfilt2(I);%中值滤波改成
g(:,:,1)=medfilt2(I(:,:,1));
g(:,:,2)=medfilt2(I(:,:,2));
g(:,:,3)=medfilt2(I(:,:,3));
其他不变
关于图像中值滤波代码和什么是图像的中值滤波法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-17做公司网页,做公司网页有什么简单的方法
- 05-17seo信息是什么,seo内容是什么意思
- 05-16设计师经常用的网站,设计师一般用什么网站
- 05-16seo网络推广技术,seo网络推广什么意思
- 05-16外包公司什么意思,外包公司什么意思缺点
- 05-15零基础学什么技术好,零基础学什么技术好开店
- 05-15网络维护是做什么的,网络维护是做什么的好学吗
- 05-14外链网站是什么,外链是啥
- 05-14网络推广员的工作内容和步骤,网络推广员的工作内容和步骤是什么
- 05-14交易链接大全,交易链接是什么意思
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接