필터 지우기
필터 지우기

2nd Order Digital Butterworth filter

조회 수: 28 (최근 30일)
Aman
Aman 2012년 3월 26일
Hi Guys,
I need help designing a 2nd order low pass Butterworth filter with a frequency cut off of 12 Hz that is to be bi-directionally filtering the data.
How do I go about designing a filter like this in Matlab?
I realize there is a function 'butter' to design a lowpass filter, but was kind of confused on applying it to my matrix that has about 9 columns and 30,000 rows, and I need to apply the filter for every row.
Thanks for your help in advance!
  댓글 수: 4
Jan
Jan 2012년 3월 26일
I'm sure "9 columns and 30'000 rows" mean "columns of length 9 and rows of length 30'000".
Aman
Aman 2012년 3월 26일
yes I meant 9X30000 matrix

댓글을 달려면 로그인하십시오.

답변 (1개)

Jan
Jan 2012년 3월 26일
[B, A] = butter(2, 12 / (Freq * 0.5), 'high');
filtered = transpose(filtfilt(B, A, transpose(Signal)));
Freq is the frequency of your signal. If you need a low-pass filter change the 'high'. See help butter on demand.
  댓글 수: 3
Honglei Chen
Honglei Chen 2012년 3월 26일
Designing the filter is independent to your signal. Once the filter is designed, you can filter your signal using filter function, such as filter(B,A,Signal)
Aman
Aman 2012년 3월 26일
ah ok that makes much more sense, thank you

댓글을 달려면 로그인하십시오.

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by