zoukankan      html  css  js  c++  java
  • Quadrature Mirror Filterbanks (QMF)

    Quadrature Mirror Filterbanks (QMF)
     
    Module by: Douglas L. Jones. E-mail the author 

    Figures is failed to load and please refer to the following link: 

    http://cnx.org/content/m12770/latest/


    Although the DFT filterbanks are widely used, there is a problem with aliasing in the decimated channels. At first glance, one might think that this is an insurmountable problem and must simply be accepted. Clearly, with FIR filters and maximal decimation, aliasing will occur. However, a simple example will show that it is possible to exactly cancel out aliasing under certain conditions!!! 
    Consider the following trivial filterbank system, with two channels. (Figure 1) 


    Figure 1








     Note x ˆ (n)=x(n)  with no error whatsoever, although clearly aliasing occurs in both channels! Note that the overall data rate is still the Nyquist rate, so there are clearly enough degrees of freedom available to reconstruct the data, if the filterbank is designed carefully. However, this isn't splitting the data into separate frequency bands, so one questions whether something other than this trivial example could work. 
    Let's consider a general two-channel filterbank, and try to determine conditions under which aliasing can be cancelled, and the signal can be reconstructed perfectly (Figure 2). 





    Figure 2








     Let's derive x ˆ (n) , using z-transforms, in terms of the components of this system. Recall (Figure 3) is equivalent to 
    Y(z)=H(z)X(z) 
     
    Y(ω)=H(ω)X(ω) 
     


    Figure 3








     and note that (Figure 4) is equivalent to 
    Y(z)=∑ m=−∞ ∞ x(m)z −(Lm) =x(z L ) 
     
    Y(ω)=X(Lω) 
     


    Figure 4








     and (Figure 5) is equivalent to 
    Y(z)=1 M  ∑ k=0 M−1 X(z 1 M   W k M ) 
     
    Y(ω)=1 M  ∑ k=0 M−1 X(ω M  +2πk M  ) 
     


    Figure 5








     Y(z)  is derived in the downsampler as follows: 
    Y(z)=∑ m=−∞ ∞ x(Mm)z −m  
     Let n=Mm  and m=n M   , then 
    Y(z)=∑ n=−∞ ∞ x(n)∑ p=−∞ ∞ δ(n−Mp)z −n M    
     
    Now 


    x(n)∑ p=−∞ ∞ δ(n−Mp)    = = =  IDFT[x(ω)∗2π M  ∑ k=0 M−1 δ(ω−2πk M  )] IDFT[2π M  ∑ k=0 M−1 X(ω−2πk M  )] 1 M  ∑ k=0 M−1 X(n)W −nk M ∣ ∣ ∣ ∣  W M =e −i2π M       
     (1) so 


    Y(z)    = = =  ∑ n=−∞ ∞ (1 M  ∑ k=0 M−1 x(n)W −nk M )z −n M    1 M  ∑ k=0 M−1 x(n)(W +k M z 1 M   ) −n  1 M  ∑ k=0 M−1 X(z 1 M   W k M )   
     (2) Armed with these results, let's determine X ˆ (z)⇔x ˆ (n) . (Figure 6) 


    Figure 6








     Note 
    U 1 (z)=X(z)H 0 (z) 
     
    U 2 (z)=1 2  ∑ k=0 1 X(z 1 2   e −i2πk 2   )H 0 (z 1 2   e −(iπk) )=1 2  X(z 1 2   )H 0 (z 1 2   )+1 2  X(−z 1 2   )H 0 (−z 1 2   ) 
     
    U 3 (z)=1 2  X(z)H 0 (z)+1 2  X(−z)H 0 (−z) 
     
    U 4 (z)=1 2  F 0 (z)H 0 (z)X(z)+1 2  F 0 (z)H 0 (−z)X(−z) 
     and 
    L 4 (z)=1 2  F 1 (z)H 1 (z)X(z)+1 2  F 1 (z)H 1 (−z)X(−z)=1 2  F 1 (z)H 1 (z)X(z)+1 2  F 1 (z)H 1 (−z)X(−z) 
     Finally then, 


    X ˆ (z)    = = =  U 4 (z)+L 4 (z) 1 2  (H 0 (z)F 0 (z)X(z)+H 0 (−z)F 0 (z)X(−z)+H 1 (z)F 1 (z)X(z)+H 1 (−z)F 1 (z)X(−z)) 1 2  (H 0 (z)F 0 (z)+H 1 (z)F 1 (z))X(z)+1 2  (H 0 (−z)F 0 (z)+H 1 (−z)F 1 (z))X(−z)   
     (3) Note that the X(−z)→X(ω+π)  corresponds to the aliasing terms! 
    There are four things we would like to have: 
    1.No aliasing distortion 2. No phase distortion (overall linear phase → simple time delay) 3.No amplitude distortion 4.FIR filters 
    No aliasing distortion


     By insisting that H 0 (−z)F 0 (z)+H 1 (−z)F 1 (z)=0 , the X(−z)  component of X ˆ (z)  can be removed, and all aliasing will be eliminated! There may be many choices for H 0  , H 1  , F 0  , F 1   that eliminate aliasing, but most research has focused on the choice 
    F 0 (z)=H 1 (−z):F 1 (z)=−H 0 (−z) 
     We will consider only this choice in the following discussion. 
    Phase distortion


     The transfer function of the filter bank, with aliasing cancelled, becomes T(z)=1 2  (H 0 (z)F 0 (z)+H 1 (z)F 1 (z)) , which with the above choice becomes T(z)=1 2  (H 0 (z)H 1 (−z)−H 1 (z)H 0 (−z)) . We would like T(z)  to correspond to a linear-phase filter to eliminate phase distortion: Call 
    P(z)=H 0 (z)H 1 (−z) 
     Note that 
    T(z)=1 2  (P(z)−P(−z)) 
     Note that P(−z)⇔(−1) n p(n) , and that if p(n)  is a linear-phase filter, (−1) n p(n)  is also (perhaps of the opposite symmetry). Also note that the sum of two linear-phase filters of the same symmetry (i.e., length of p(n)  must be odd) is also linear phase, so if p(n)  is an odd-length linear-phase filter, there will be no phase distortion. Also note that 
    Z -1 (p(z)−p(−z))=p(n)−(−1) n p(n)={2p(n)ifn is odd 0ifn is even   
     means p(n)=0 , when n  is even. If we choose h 0 (n)  and h 1 (n)  to be linear phase, p(n)  will also be linear phase. Thus by choosing h 0 (n)  and h 1 (n)  to be FIR linear phase, we eliminate phase distortion and get FIR filters as well (condition 4). 
    Amplitude distortion


     Assuming aliasing cancellation and elimination of phase distortion, we might also desire no amplitude distortion ( |T(ω)|=1 ). All of these conditions require 
    T(z)=1 2  (H 0 (z)H 1 (−z)−H 1 (z)H 0 (−z))=cz −D  
     where c  is some constant and D  is a linear phase delay. c=1  for |T(ω)|=1 . It can be shown by considering that the following can be satisfied! 
    T(z)=P(z)−P(−z)=2cz −D ⇔{2p(z)=2cδ(n−D)ifn is odd p(n)=anythingifn is even   
     Thus we require 
    P(z)=∑ n=0 N ′  p(2n)z −(2n) +z −D  
     Any factorization of a P(z)  of this form, P(z)=A(z)B(z)  can lead to a Perfect Reconstruction filter bank of the form 
    H 0 (z)=A(z) 
     
    H 1 (−z)=B(z) 
     [This result is attributed to Vetterli.] A well-known special case (Smith and Barnwell) 
    H 1 (z)=−(z −(2D)+1 H 0 (−z -1 )) 
     Design techniques exist for optimally choosing the coefficients of these filters, under all of these constraints. 


    Quadrature Mirror Filters
     
    H 1 (z)=H 0 (−z)⇔H 1 (ω)=H 0 (π+ω)=H ∗ 0 (π−ω) 
     (4) for real-valued filters. The frequency response is "mirrored" around ω=π 2   . This choice leads to T(z)=H 0  2 (z)−H 0  2 (−z) : it can be shown that this can be a perfect reconstruction system only if 
    H 0 (z)=c 0 z −(2n 0 ) +c 1 z −(2n 1 )  
     which isn't a very flexible choice of filters, and not a very good lowpass! The Smith and Barnwell approach is more commonly used today. 

  • 相关阅读:
    Objective-C学习笔记2013(Category 扩展(类目)/分类)(4)
    Objective-C学习笔记(static,self,super)
    Objective-C学习笔记2013(3)[NSArray]数组[在可变数组中,加用add减用remove]
    Objective-C学习笔记2013(2)[NSNumber]
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
    C语言学期总结
    第一次作业
  • 原文地址:https://www.cnblogs.com/tkppain/p/3123329.html
Copyright © 2011-2022 走看看