compensation of delay after filtering

2 views (last 30 days)
SSG_newbiecoder
SSG_newbiecoder on 1 Feb 2018
Commented: SSG_newbiecoder on 1 Feb 2018
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 Comments
SSG_newbiecoder
SSG_newbiecoder on 1 Feb 2018
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');

Sign in to comment.

Answers (0)

Categories

Find more on Filter Banks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!