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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
clear all;
' G  d3 W" H7 c3 V1 H4 x# U4 |/ B1 p3 ]+ N8 j$ D3 s
close all;
/ T& m; T5 e9 A. M5 Q* |# F- R% p! N  ^; ]- W* A' {* d/ Q
P=input('inputimage data:');
$ e3 k5 a' @7 r: q( r* a, t( m* @- W0 ?5 |$ W% C& A  W
d=size(P);
5 }0 w0 H( ]1 Z5 O8 u( [2 ~3 I
- l2 F# T) K/ m/ w, h0 Sif(d(3)>1), q: N4 i! b$ T" J# v- ~$ R4 G8 }

) i. g( y3 V! u9 }  p) H! ]1 z' X    P=rgb2gray(P);& S' z( G; z7 i2 W! s9 F
5 s- I1 v" D* K0 H; ]
end
; [2 V( Z7 e* X4 K! _# r0 P) ~' @- V0 N, F, J
subplot(131);imshow(P);3 q" p1 q" s% N6 d3 e& R

9 v( ^  |* P0 Z+ ~" \2 ytitle('原始图像');
9 C! {3 f& z" l. x; F+ O" E+ N1 M3 W& i* P" G2 ?7 X4 P) P
P1=imnoise(P,'salt& pepper',0.02);
7 s' c% Y) Y4 \& I9 X# ?8 v, [( X" t8 L( D8 I& B6 q8 Q
subplot(132)0 J8 O3 @+ W) C8 ]

! s( @. E$ Y0 K' d! O& V1 Gimshow (P1);4 W6 j7 L. }9 h3 {- k! x
6 m6 C. ]/ w" n- M/ K
title('加入椒盐噪声后的图像');2 d6 a% L1 u8 Y/ E: r
) Y& `, |9 g, b* J9 h" x5 E
f=double(P1);3 A* F: o) E/ [8 p' w  V
# c: }+ C# ^. Y, U& ?: j
g=fft2(f);%傅里叶变换
5 Q6 H* v, P; S% f  q, l9 I9 L! t0 o& l0 w* {1 T
g=fftshift(g);%转换数据矩阵fftshift是针对频域的,将FFT的DC分量移到频谱中心
; L) j# [, a8 y; z3 z即对频域的图像,
- s' l; [! c6 ^$ s& u. S% k+ a: |% T6 K, ~5 p5 X
[M,N]=size(g);
; W! r" q! r5 X, H+ C  `, f/ i4 A0 p! E
D0=input('inputnonnegative dhreshold D0=');
5 V- V) X" m* B( i
% h! Y& R2 H3 x' o& u) G9 T0 gn=input('input theorder of filtering n=');
. g& H0 I6 `, o
6 V. |$ O' J/ D/ Cn1=fix(M/2);* m: e2 t" u4 ~( }% i

7 W( u' }8 a! b+ D) v2 \n2= fix(N/2);, y/ C8 q' l8 h) h
9 Y: e  N9 n1 N! q/ d
for i=1:M
& }2 ?& G" o+ T0 V7 W$ M4 F9 b' J) Z+ S# f$ m8 f& Z0 ~& F
    for j=1:N
, @! |7 J& p+ J1 b: ~4 Y$ I' n1 A/ W8 \) E5 O# }$ X: [
        d=sqrt((i-n1)^2+(j-n2)^2);
, t* ]: D2 I7 G2 {0 f3 H) v2 M5 V: s  b! q
h=1/(1+(d/D0)^(2*n));
. g0 N4 N2 J! J% w& c* b. j( d3 g! z/ _" M% O
        result(i,j)=h*g(i,j);9 ]: g, M2 R, x* m8 {
! q: o: R- Z+ f
    end! Y8 w, ~+ L; q3 d0 }* Z& w
3 a* V' R$ }3 I9 ]0 h) |8 D( b6 w
end- W6 K  _- A, N' O% m

! G1 W8 h- S' I0 h; N, Lresult=ifftshift(result);# e: W5 c1 A* v8 R0 h% q, ?
2 |) Y' @# T5 Z
X2=ifft2(result);. R: \! _- U' }
( o5 d. c% e* i& u
X3=uint8(real(X2));
6 m8 s" r% H/ ]& t" ^5 a0 p- U: i7 E+ H, V8 [/ y4 I
subplot(133)
! S0 K: A# c6 t/ O" g$ k7 y# h0 b5 _
imshow (X3);
2 R1 @6 o/ P9 ~$ p. Z: _, p+ ^$ u$ ^1 _4 C
title('Butterworth低通滤波所得图像');
3 R, g9 r- p, [( P8 k: a$ w
) B& f# i& l7 b. B; i! f1 t) P' h2 x) d; q8 U
* _3 V& Y6 C" p" Y. Z' |- m

( V2 n( o- Y' f! H3 l% q  n* V. S! V) o5 ^* Y) v/ L. A" p  B

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-26 09:36 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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