Can't get a STABLE highpass filter with a 0.01 Hz cutoff frequency
8 ビュー (過去 30 日間)
古いコメントを表示
I have some strain data which has a very low frequency drift. The drift is for the most part linear. I need to be able to eliminate the drift. Using detrend is not a good solution for me as my real data (real strain) can have massive variations. These variations tend to be low frequency in general.
I would like to be able to use a highpass filter with a cutoff of around 0.01 Hz. Sampling frequency is 4000 Hz. I have used all possible combinations I could think of in the FDA tool, but none of them have turned out to be stable. I imagine I'm not the first one to need to filter out very low frequency drift while keeping real low frequency data (0.5 Hz and higher). Any advice?
Thanks a lot!
0 件のコメント
回答 (1 件)
Wayne King
2013 年 8 月 3 日
編集済み: Wayne King
2013 年 8 月 3 日
I can get a stable highpass design with the following
d = fdesign.highpass('Fst,Fp,Ast,Ap',0.1,0.2,40,1,4000);
Hd = design(d,'butter');
Then you just filter with
output = filter(Hd,input);
as just one example, but are you sure you need a highpass filter here? How about differencing the time series?
Try the first and second differences
output = diff(input);
or
output = diff(input,2);
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Digital Filter Design についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!