找回密码
 注册
关于网站域名变更的通知
查看: 1280|回复: 2
打印 上一主题 下一主题

利用MATLAB实现线性空间滤波

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-3 09:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 haidaowang 于 2020-1-3 09:41 编辑
% g$ S% {# `! R3 m+ u) m& x6 y$ d; O- c: b! Y( M6 u
在MATLAB中使用imfilter()函数,即可实现线性空间滤波,将模板设置为全1矩阵,那么可以简单的实现均值滤波,程序如下:
3 E7 B# u" O1 X7 t; a0 g! q' K" ]2 Y$ `& h: W
close all;
# Z6 a& h+ @4 U# }& P5 i) V7 o8 Bclear all;  b0 K2 ]( Z% c1 o) d+ f( p* ~
clc;; y" ?: J* s7 `5 e
p = imread('ayst.jpg');
3 F' c. d% q4 [2 Ba1 = p(:,:,1);%只取彩色图像的R分量
4 h2 v5 P! J) U( E$ yJ=imresize(a1,[512,512]);%将图像压缩为512*512) P5 E9 Y' G' t3 r, K! f
figure,imshow(a1);
, v2 B) u$ F8 ]# D2 ffigure;- M7 C5 r2 F8 I8 s8 U% q
imshow(J);
, _; U/ [6 T! K6 t/ o. Pw = ones(31);* f% \# P5 A8 D& G3 U- k4 y; b
J = im2double(J);%空间滤波时,必须要使用浮点算法,因此先转变为浮点型,(0-255)将转变为(0.0-1.0)
" p, L3 N  N# Q+ rgd = imfilter(J,w);
  t# i6 ?, V& {* rgd = gd./(31*31);%均值滤波,要除以模板大小31*31
. O, J+ I; V# h/ Pfigure,imshow(gd,[]);
2 d1 P3 v6 f* X4 \+ ?, \
" v! v2 n/ G1 E% Y, s经过均值滤波之后,整幅图像变得更加模糊,并且,模板越大,图像越模糊。2 ~" P8 u9 v. ?$ A, O
1 x' c: O; d0 a' J) V/ |2 K) `

在matlab中进行图像的空间滤波时,需要将图像转变为固定像素值,用以下方法即可:

I=imread('wzz.jpg');# X  C0 P4 N. j+ Y2 H8 J( ]% N+ h
J=imresize(I,[256,256]);%将图像压缩或者扩展为256*256
$ |- i. |; {% A6 F' Z% rimshow(I);3 a% X* x  w( k# m' L  r1 \
figure;
  [) a  M3 u( Y6 Uimshow(J);


- L+ M+ n" J7 A) I4 Y! w5 C7 n& [& C$ f9 l5 A# y
5 `8 K* G, i  H, w7 W3 u9 r5 S
- Q& S+ [- q4 b$ v8 Q
) n' U9 ]4 B/ v8 S5 m. ~

该用户从未签到

推荐
发表于 2020-1-6 18:39 | 只看该作者
MATLAB尽然可以实现线性空间滤波

该用户从未签到

2#
发表于 2020-1-3 18:07 | 只看该作者
利用MATLAB实现线性空间滤波
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-5 19:26 , Processed in 0.109375 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表