Shift matrix: Difference between revisions
en>ArthurBot m r2.6.3) (robot Adding: sl:Premaknjena matrika |
en>Addbot m Bot: Migrating 1 interwiki links, now provided by Wikidata on d:q7496248 |
||
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"> | |||
{{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 --> |
Revision as of 21:56, 23 March 2013
In signal processing, a polyphase matrix is a matrix whose elements are filter masks. It represents a filter bank as it is used in sub-band coders alias discrete wavelet transforms.[1]
If are two filters, then one level the traditional wavelet transform maps an input signal to two output signals , each of the half length:
Note, that the dot means polynomial multiplication; i.e., convolution and 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.
The arrows and denote left and right shifting, respectively. They shall have the same precedence like convolution, because they are in fact convolutions with a shifted discrete delta impulse.
The wavelet transformation reformulated to the split filters is:
This can be written as matrix-vector-multiplication
This matrix 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 filterbanks, multiwavelets, wavelet transforms based on fractional 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 theory and module theory. The following properties are explained for a 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 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.
By Cramer's rule the inverse of can be given immediately.
Orthogonality
Orthogonality means that the adjoint matrix is also the inverse matrix of . The adjoint matrix is the transposed matrix with adjoint filters.
It implies, that the Euclidean norm of the input signals is preserved. That is, the according wavelet transform is an isometry.
The orthogonality condition
can be written out
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.
For the polyphase matrix the Euclidean operator norm can be given explicitly using the Frobenius norm and the z transform :[2]
This is a special case of the matrix where the operator norm can be obtained via z transform and the spectral radius of a matrix or the according spectral norm.
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 addition matrices leads to the lifting scheme.[3] However, classical matrix decompositions like LU and QR decomposition cannot be applied immediately, because the filters form a ring with respect to convolution, not a field.
References
- ↑
20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.
My blog: http://www.primaboinca.com/view_profile.php?userid=5889534 - ↑ Template:Cite thesis
- ↑ Template:Cite article