|
|
Line 1: |
Line 1: |
| In [[signal processing]], a '''polyphase matrix''' is a matrix whose elements are [[linear filter|filter mask]]s. It represents a [[filter bank]] as it is used in [[sub-band coder]]s alias [[discrete wavelet transform]]s.<ref name="strang1997filterbanks">
| | Hello and welcome. My title is Irwin and I completely dig that name. In her expert life she is a payroll clerk but she's usually needed her own company. Years in the past he moved to North Dakota and his family members enjoys it. To gather badges is what her family and her enjoy.<br><br>my website std home test ([http://xrambo.com/user/NEme just click the next website]) |
| {{cite book
| |
| |first1=Gilbert|last1=Strang|author1-link=Gilbert Strang
| |
| |first2=Truong|last2=Nguyen
| |
| |title=Wavelets and Filter Banks
| |
| |publisher=Wellesley-Cambridge Press
| |
| |year=1997
| |
| |isbn=0-9614088-7-1
| |
| }}</ref>
| |
| | |
| If <math>\scriptstyle h,\, g</math> are two filters, then one level the traditional wavelet transform maps an input signal <math>\scriptstyle a_0</math> to two output signals <math>\scriptstyle a_1,\, d_1</math>, each of the half length:
| |
| :<math>\begin{align}
| |
| a_1 &= (h\cdot a_0) \downarrow 2 \\
| |
| d_1 &= (g\cdot a_0) \downarrow 2
| |
| \end{align}</math>
| |
| | |
| Note, that the dot means [[polynomial multiplication]]; i.e., [[convolution]] and <math>\scriptstyle\downarrow</math> means [[downsampling]].
| |
| | |
| If the above formula is implemented directly, you will compute values that are subsequently flushed by the down-sampling. You can avoid that by splitting the filters and the signal into even and odd indexed values before the transformation.
| |
| :<math>\begin{array}{rclcrcl}
| |
| h_{\mbox{e}} &=& h \downarrow 2 &\qquad& a_{0,\mbox{e}} &=& a_0 \downarrow 2 \\
| |
| h_{\mbox{o}} &=& (h \leftarrow 1) \downarrow 2 && a_{0,\mbox{o}} &=& (a_0 \leftarrow 1) \downarrow 2
| |
| \end{array}</math>
| |
| | |
| The arrows <math>\scriptstyle\leftarrow</math> and <math>\scriptstyle\rightarrow</math> denote left and right shifting, respectively. They shall have the same [[operator precedence|precedence]] like convolution, because they are in fact convolutions with a shifted discrete [[Kronecker delta|delta impulse]].
| |
| :<math>\delta = (\dots, 0, 0, \underset{0-\mbox{th position}}{1}, 0, 0, \dots)</math>
| |
| | |
| The wavelet transformation reformulated to the split filters is:
| |
| :<math>\begin{align}
| |
| a_1 &= h_{\mbox{e}}\cdot a_{0,\mbox{e}} +
| |
| h_{\mbox{o}}\cdot a_{0,\mbox{o}} \rightarrow 1 \\
| |
| d_1 &= g_{\mbox{e}}\cdot a_{0,\mbox{e}} +
| |
| g_{\mbox{o}}\cdot a_{0,\mbox{o}} \rightarrow 1
| |
| \end{align}</math>
| |
| | |
| This can be written as [[matrix multiplication|matrix-vector-multiplication]]
| |
| :<math>\begin{align}
| |
| P &= \begin{pmatrix}
| |
| h_{\mbox{e}} & h_{\mbox{o}} \rightarrow 1 \\
| |
| g_{\mbox{e}} & g_{\mbox{o}} \rightarrow 1
| |
| \end{pmatrix} \\
| |
| \begin{pmatrix} a_1 \\ d_1 \end{pmatrix} &= P \cdot
| |
| \begin{pmatrix}
| |
| a_{0,\mbox{e}} \\
| |
| a_{0,\mbox{o}}
| |
| \end{pmatrix}
| |
| \end{align}</math>
| |
| | |
| This matrix <math>\scriptstyle P</math> is the polyphase matrix.
| |
| | |
| Of course, a polyphase matrix can have any size, it need not to have square shape. That is, the principle scales well to any [[filterbank]]s, [[multiwavelet]]s, wavelet transforms based on fractional [[refinable function|refinements]].
| |
| | |
| == Properties ==
| |
| | |
| The representation of sub-band coding by the polyphase matrix is more than about write simplification. It allows the adaptation of many results from [[Matrix (mathematics)|matrix theory]] and [[module theory]]. The following properties are explained for a <math>\scriptstyle 2 \,\times\, 2</math> matrix, but they scale equally to higher dimensions.
| |
| | |
| === Invertibility/perfect reconstruction ===
| |
| | |
| The case that a polyphase matrix allows reconstruction of a processed signal from the filtered data, is called [[perfect reconstruction]] property. Mathematically this is equivalent to invertibility. According to the theorem of [[inverse matrix|invertibility]] of a matrix over a ring, the polyphase matrix is invertible if and only if the [[determinant]] of the polyphase matrix is a [[Kronecker delta]], which is zero everywhere except for one value.
| |
| :<math>\begin{align}
| |
| \det P &= h_{\mbox{e}} \cdot g_{\mbox{o}} - h_{\mbox{o}} \cdot g_{\mbox{e}} \\
| |
| \exists A\ A\cdot P &= I \iff \exists c\ \exists k\ \det P = c\cdot \delta \rightarrow k
| |
| \end{align}</math>
| |
| <!--
| |
| (\dots,0,0,\underset{i-\mbox{th position}}{c},0,0,\dots),
| |
| defined above
| |
| -->
| |
| | |
| By [[Cramer's rule]] the inverse of <math>\scriptstyle P</math> can be given immediately.
| |
| :<math>P^{-1}\cdot\det P =
| |
| \begin{pmatrix}
| |
| g_{\mbox{o}} \rightarrow 1 & - h_{\mbox{o}} \rightarrow 1 \\
| |
| -g_{\mbox{e}} & h_{\mbox{e}}
| |
| \end{pmatrix}
| |
| </math>
| |
| | |
| === Orthogonality ===
| |
| | |
| Orthogonality means that the [[adjoint matrix]] <math>\scriptstyle P^*</math> is also the inverse matrix of <math>\scriptstyle P</math>. The adjoint matrix is the [[transposed matrix]] with [[adjoint filter]]s.
| |
| :<math>P^* = \begin{pmatrix}
| |
| h_{\mbox{e}}^* & g_{\mbox{e}}^* \\
| |
| h_{\mbox{o}}^* \leftarrow 1 & g_{\mbox{o}}^* \leftarrow 1
| |
| \end{pmatrix}
| |
| </math>
| |
| | |
| It implies, that the [[Euclidean norm]] of the input signals is preserved. That is, the according wavelet transform is an [[isometry]].
| |
| :<math>||a_1||_2^2 + ||d_1||_2^2 = ||a_0||_2^2</math>
| |
| | |
| The orthogonality condition
| |
| :<math>P \cdot P^* = I</math>
| |
| | |
| can be written out
| |
| :<math>\begin{align}
| |
| h_{\mbox{e}}^* \cdot h_{\mbox{e}} + h_{\mbox{o}}^* \cdot h_{\mbox{o}} &= \delta \\
| |
| g_{\mbox{e}}^* \cdot g_{\mbox{e}} + g_{\mbox{o}}^* \cdot g_{\mbox{o}} &= \delta \\
| |
| h_{\mbox{e}}^* \cdot g_{\mbox{e}} + h_{\mbox{o}}^* \cdot g_{\mbox{o}} &= 0
| |
| \end{align}</math>
| |
| | |
| === Operator norm ===
| |
| | |
| For non-orthogonal polyphase matrices the question arises what Euclidean norms the output can assume. This can be bounded by the help of the [[operator norm]].
| |
| :<math>\forall x\ \|P\cdot x\|_2 \in \left[\|P^{-1}\|_2^{-1}\cdot\|x\|_2, \|P\|_2\cdot\|x\|_2\right]</math>
| |
| | |
| For the <math>\scriptstyle 2 \,\times\, 2</math> polyphase matrix the Euclidean operator norm can be given explicitly using the [[Frobenius norm]] <math>\scriptstyle\|\cdot\|_F</math> and the [[z transform]] <math>\scriptstyle Z</math>:<ref name="thielemann2001adaptivewavelet">
| |
| {{cite thesis
| |
| |first=Henning|last=Thielemann
| |
| |title=Adaptive construction of wavelets for image compression
| |
| |type=Diploma thesis
| |
| |publisher=Martin-Luther-Universität Halle-Wittenberg, Fachbereich Mathematik/Informatik
| |
| |year=2001
| |
| |url=http://edoc.bibliothek.uni-halle.de/servlets/DocumentServlet?id=2134
| |
| }}</ref>
| |
| :<math>\begin{align}
| |
| p(z) &= \frac{1}{2}\cdot \|Z P(z)\|_F^2 \\
| |
| q(z) &= \left|\det [Z P(z)]\right|^2 \\
| |
| \|P\|_2 &= \max\left\{\sqrt{p(z) + \sqrt{p(z)^2-q(z)}} : z\in\mathbb{C}\ \land\ |z| = 1\right\} \\
| |
| \|P^{-1}\|_2^{-1} &= \min\left\{\sqrt{p(z) - \sqrt{p(z)^2-q(z)}} : z\in\mathbb{C}\ \land\ |z| = 1\right\}
| |
| \end{align}</math>
| |
| | |
| This is a special case of the <math>n\times n</math> matrix where the operator norm can be obtained via [[z transform]] and the [[spectral radius]] of a matrix or the according [[spectral norm]].
| |
| :<math>\begin{align}
| |
| \|P\|_2
| |
| &= \sqrt{\max\left\{\lambda_{\mbox{max}}\left[Z P^*(z)\cdot Z P(z)\right] : z\in\mathbb{C}\ \land\ |z| = 1\right\}} \\
| |
| &= \max\left\{\|Z P(z)\|_2 : z\in\mathbb{C}\ \land\ |z| = 1\right\} \\
| |
| \|P^{-1}\|_2^{-1}
| |
| &= \sqrt{\min\left\{\lambda_{\mbox{min}}\left[Z P^*(z)\cdot Z P(z)\right] : z\in\mathbb{C}\ \land\ |z| = 1\right\}}
| |
| \end{align}</math>
| |
| | |
| A signal, where these bounds are assumed can be derived from the eigenvector corresponding to the maximizing and minimizing eigenvalue.
| |
| | |
| === Lifting scheme ===
| |
| | |
| The concept of the polyphase matrix allows [[matrix decomposition]]. For instance the decomposition into [[triangular matrix|addition matrices]] leads to the [[lifting scheme]].<ref name="sweldens1998liftingfactor">
| |
| {{cite article
| |
| |first1=Ingrid|last1=Daubechies|author1-link=Ingrid Daubechies
| |
| |first2=Wim|last2=Sweldens|author2-link=Wim Sweldens
| |
| |title=Factoring wavelet transforms into lifting steps
| |
| |journal=J. Fourier Anal. Appl.
| |
| |volume=4
| |
| |issue=3
| |
| |pages=245-267
| |
| |year=1998
| |
| |url=http://cm.bell-labs.com/who/wim/papers/factor/index.html
| |
| }}</ref> However, classical matrix decompositions like [[LU decomposition|LU]] and [[QR decomposition]] cannot be applied immediately, because the filters form a [[ring (algebra)|ring]] with respect to convolution, not a [[field (algebra)|field]].
| |
| | |
| == References ==
| |
| | |
| <references/>
| |
| | |
| [[Category:Wavelets]] <!-- it is central part of wavelet theory -->
| |
| [[Category:Digital signal processing]] <!-- but also of interest elsewhere -->
| |