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

基于matlab的Butterworth低通滤波程序分享

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
clear all;
6 ?/ h6 z3 ?9 C. j5 Z1 h
' Q2 Z8 W& C- p& c0 D: E/ f# U$ n% _close all;
0 m- k; K: L6 [0 F: C* {/ N& y" ~/ \! O
P=input('inputimage data:');
$ D0 ~; F! }+ d/ x; k6 z% n  A4 ]; i  Z# ^5 `
d=size(P);" x% ]2 r/ s1 ~; {; _

4 `; _* [3 c7 |5 j/ H! c2 Iif(d(3)>1)
; ^$ V+ z- \$ u7 v4 n, U6 O' U1 p2 {9 h! t, k4 _' Y
    P=rgb2gray(P);, Y; E8 x5 b, ]9 H/ f4 h% H! Y! c
: |- h0 R( R/ R$ j7 C
end
" G2 O; G( k9 c: ^3 F
- i5 b6 z! {: Y5 H4 @subplot(131);imshow(P);9 M' x' J6 J6 {9 N8 J6 _) U
6 x. X  |, s, i  }) ], C
title('原始图像');9 z9 p2 y* O. I% \* q
/ e4 _, J  `/ S
P1=imnoise(P,'salt& pepper',0.02);
$ V/ }& s" v% X, S4 U5 z, F4 a4 _- V6 g2 k9 l; x/ F9 y
subplot(132)
" h5 E; o; i4 H  n* }0 E' L, \- J4 {
imshow (P1);
# u3 |2 Z$ h/ Y' j) }& f0 B2 i' j* c( b, l
title('加入椒盐噪声后的图像');
5 D# k. O  x7 T: h1 e& M- c- Z' Z, u9 r3 ~
f=double(P1);& P" x" j: p) A! L
+ k+ a8 ^/ M' ^* R
g=fft2(f);%傅里叶变换# I& r5 P7 o: D+ C: p; ?( c5 C
& Q! N% l5 q/ m, y+ h0 A( N, d
g=fftshift(g);%转换数据矩阵fftshift是针对频域的,将FFT的DC分量移到频谱中心
4 l" W  C7 o3 p" S1 t& A即对频域的图像,
3 n. X9 c! u2 C" F" ]1 O" n! `
: ]0 k, m2 t2 M( l9 n0 j6 U- q [M,N]=size(g);
/ j5 Y  L0 x4 ^! r1 {; Z9 e( T1 q$ v
D0=input('inputnonnegative dhreshold D0=');
& N; Q9 A7 D8 ^* n& q. e# _7 b+ \) |+ P
n=input('input theorder of filtering n=');
4 o, ^5 [9 j, Q$ ~5 C
* U! _, g& W# P# F6 Q/ w- Jn1=fix(M/2);# \$ ~) k" D4 w
6 R( ?& d6 ?" G' e6 ~/ d
n2= fix(N/2);
, f$ k% s* I2 R. ?3 L0 b1 k9 b
% S  j7 k: w( F& O4 l1 n0 ^, Efor i=1:M& I) i7 j- E& s0 h1 _& S
6 n  b4 s+ s  l' \* d% q
    for j=1:N! T( y0 ~( E6 E: q* O

0 X/ R1 ]. u( B  W5 I        d=sqrt((i-n1)^2+(j-n2)^2);
3 u& q/ c( [% f: T/ E
! }% V  i; n' j" W$ _2 Ah=1/(1+(d/D0)^(2*n));
! m& @0 h9 ?' M4 K+ p* a
8 Q& O! l, V& ?* q. Y! n        result(i,j)=h*g(i,j);7 a; S7 `1 \9 {# r% @. v
: c/ J! \1 c( ~
    end
6 N! c& o- j$ M6 V" M+ D6 Q- e, A# ]4 r; X5 F" k
end
8 v' E9 b. e4 a! h  B- F2 `0 m" x  O2 \; s* |8 I- d4 w+ o
result=ifftshift(result);
; c& t: e) z2 Y, F! ]8 F. G" U  i: W8 g) p( u
X2=ifft2(result);6 }3 P" o. S3 ^' t3 E% S/ Q+ P/ k6 I
5 Q5 o1 P9 z0 C% J/ G
X3=uint8(real(X2));
6 a# X  O; _* x; \3 I' [& t
' `- ]2 K6 ^* k: `- E& c( p& s6 csubplot(133)( b7 N& V+ ]$ t) a2 e8 {+ G# B

. P* V  W9 R, f0 x" {imshow (X3);
" W  p; g. u% I
6 L9 a; h9 f/ ?title('Butterworth低通滤波所得图像');
9 O0 y" K/ g6 u8 S; i
, O) W/ n6 t3 y$ C) A9 e$ G
) P" B- d9 ]) d5 @8 e; i
: H! `  R5 Q/ \' ]  \8 u8 \2 M$ J& p, N

: {. z" R) I1 H/ J" A

该用户从未签到

2#
发表于 2020-7-8 17:40 | 只看该作者
基于matlab的Butterworth低通滤波程序
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 14:30 , Processed in 0.156250 second(s), 24 queries , Gzip On.

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

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

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