日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

IIR+双向滤波实现系统零相位相移_MATLAB仿真

發布時間:2025/3/15 windows 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IIR+双向滤波实现系统零相位相移_MATLAB仿真 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.雙向濾波實現零相移的思想

Matlab軟件有一個m文件filtfilt.m,可以實現零相位數字濾波。它先將輸入序列按順序濾波(forward filter),然后將所得結果逆轉后反向通過濾波器(reverse filter),再將所得結果逆轉后輸出(reverse output),即得精確零相位失真的輸出序列,為方便起見將這種濾波方法取名為FRR濾波。FRR濾波的原理可作如下推證:


2.Matlab仿真實驗結果

1.生成原始信號,并顯示相位

2.設計低通巴特沃茲濾波器,去除兩個高頻成分,保存低頻成分


3.原始序列第一次通過低通濾波器,觀察相位和幅度哪一個失真了!



我們會發現,經過IIR濾波器后,幅度幾乎沒有失真,而相位失真很嚴重!!!!

4.序列反轉,第二次經過低通濾波器,實現相位補償


相位確實得到了補償,IIR結合雙向濾波確實可以實現零相位相移問題!

3.Matlab核心源碼共享

%************************************************************************** % All Rights Reserved @Shenchunxu % Data:20161129 Tsinghua Univ. %************************************************************************** %雙向濾波法實現零相位 clear clc close all %% 生成一個信號**************************************************%% Fs = ; t = (0:1/Fs:1); %歸一化頻率設計 y = ; yreal =; %% 設計一個低通濾波器*********************************************%% fp=10/500;%通帶截止頻率 0.02 fs=30/500;%阻帶截止頻率 0.06 wp=3;%通帶最大衰減 ws=30;%阻帶最大衰減 [n,fc]=buttord(fp,fs,wp,ws); [b,a]=butter(n,fc); %% 將生成的信號通過低通濾波器**************************************%% z=filter(b,a,y); %% 對經過第一個濾波器后的信號序列反轉*******************************%% zf = fliplr(z); %% 反轉再通過濾波器***********************************************%% zfz = filter(b,a,zf);%對經過第一個濾波器后的信號序列 %% 對經過第二個濾波器后的信號序列反轉*******************************%%? zz = fliplr(zfz);%作為最后輸出?

總結

以上是生活随笔為你收集整理的IIR+双向滤波实现系统零相位相移_MATLAB仿真的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。