compensation of delay after filtering

2 次查看(过去 30 天)
Hello, I have a doubt. It is not related to matlab but if anyone can help me it will be great. I have a signal x[n]. I'm applying a filter on it. After filtering, there is a certain amount of shift in the output towards left which I need to remove. How can I do this? Can I somehow tweak the filter coefficients to ensure that this delay gets compensated?
  5 个评论
SSG_newbiecoder
SSG_newbiecoder 2018-2-1
clc;clear all; close all;
A=[0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0];
plot(A),hold on;
Lo_D1=[1/8 3/8 3/8 1/8]; %%%LP filter coefficients
Hi_D1=[2 -2 0 0 ]; %%%Hp filter coefficients
[Approx1,Detail1] = swt(A,1,Lo_D1,Hi_D1);%%first level decomposition using atrous algorithm
CA1=Approx1(1,:);
CD1=Detail1(1,:);
plot(CD1);
shift1=(2.^(1))/2
shift_CD1=wshift(1,CD1,-shift1);
plot(shift_CD1,'k');
%
%
Lo_D2=[1/8 0 3/8 0 3/8 0 1/8 0];%%%LP filter coefficients for second level
Hi_D2=[0 0 2 0 -2 0 0 0]; %%%Hp filter coefficients for second level
[Approx2,Detail2] = swt(CA1,1,Lo_D2,Hi_D2);%%second level decomposition using atrous algorithm
CA2=Approx2(1,:);
CD2=Detail2(1,:);
% plot(CD2,'c');
shift2=(2.^(2))/2
shift_CD2=wshift(1,CD2,-shift2);
plot(shift_CD2,'m');

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Filter Banks 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by