Theoretical and Computational Aspects Numerical Harmonic Group under the supervision of Prof. Dr. Hans Georg Feichtinger 30 Oct 2012
Outline 1 2 3 4 5 6 7
DFT/ idft Discrete Given an input signal f of length L, the DFT of f is a vector F of the same length L, with elements: F (k) := L f(n)e 2πi(k 1)(n 1)/L, 1 k L (1.1) n=1 Inverse Discrete The inverse DFT is given by: f(n) = 1 L L F (k)e 2πi(k 1)(n 1)/L, 1 n L (1.2) k=1
Fundamental Operators Translation For x Z L we define the translation operator T x by: (T x f)(t) := f(mod(t x, L)) (1.3) Modulation For ω Z L we define the modulation operator M ω by: (M ω f)(t) := e 2πiωt/L f(t) (1.4) Note: T x is also called a Time shift, and M ω a Frequency shift. T x M ω and M ω T x are called Time-Frequency shifts.
Translation, Modulation In MATLAB T x = rot(eye(l), x) M ω = diag(exp(2 pi i ω (1 : L)/L)) Figure: Translation Figure: Modulation
Fundamental Operators II Involution The involution is defined by: f (x) := f( x) (1.5) Convolution The convolution of two vectors f, g of length L is the vector f g defined by: (f g)(x) := L f(y)g(x y) (1.6) y=1
Convolution Figure: Random signal Figure: Result after convolution
Fundamental Operators III Inner Product The inner product of two vectors f and g of length L is defined as: f, g := L f(k)g(k) (1.7) k=1
Short Time STFT The discrete STFT of a vector f with respect to a window vector g is given as: (V g f)(x, ω) := f, M ω T x g, x, ω Z L (1.8) Spectrogram The spectrogram of f with respect to a window function g satisfying g 2 = 1 is defined to be: SP EC g f(x, ω) := V g f(x, ω) 2 (1.9) Note(s): The spectrogram non-negative, covariant and energy-preserving.
Spectrograms Figure: Spectrogram 1 Figure: Spectrogram 2
Frames Definition A finite sequence {g 1, g 2,..., g N } of vectors g j of length L is a frame if A, B > 0 such that: A L f(k) 2 k=1 N f, g j 2 B j=1 for all vectors f of length L. L f(k) 2, (2.1) k=1 Note(s): Any two constants A, B satisfying (2.1) are called f rame bounds. We must have N > L elements in the sequence {g j } j=1,n in order to obtain a frame.
Operator Definition For any subset {g j : j J} the analysis operator C is given by Cf = { f, g j : j J} (2.2) Note(s): C is also called coefficient operator. In MATLAB: C = [g 1 ; g 2 ;... g J ].
Synthesis Operator Definition The synthesis operator D is defined for a finite sequence c = (c j ) j J by Dc = j J Note(s): D is also called reconstruction operator. In MATLAB: D = C. c j g j (2.3)
Frame Operator Definition The frame operator S is defined by Sf = j J Note(s): In MATLAB: S = C C = DD. f, g j g j (2.4)
Dual Frame Definition If {g j : j J} is a frame with frame bounds A, B > 0, then { S 1 g j : j J } is a frame with frame bounds B 1, A 1 > 0, the so-called dual frame. Note(s): Every f has non-orthogonal expansions: f = f, S 1 g j gj = f, g j S 1 g j (2.5) j J j J
Definition Definition A lattice Λ Z 2 L is a subgroup of Z2 L. Any lattice can be written in the form Λ = AZ 2 L, where A is an invertible 2 2-matrix over Z L. in Z 2 L can be described as: Λ = {(x, y) Z 2 L (x, y) = (ak + dl, ck + bl), (k, l) Z 2 L} (3.1) with a, b, c, d N and ( ) a d A = (3.2) c b
Separability Separable A lattice Λ = az L bz L Z 2 L, for a, b N is called a separable or product lattice. If Λ is separable then there exists a generating matrix of Λ which is diagonal: ( ) a 0 A = (3.3) 0 b Non-separable The generating matrix of any (non-separable) lattice can be expressed in the form: ( ) a 0 A =, (3.4) s b where s N.
Spyc Figure: Separable lattice Figure: Quincux lattice
Indexing and generating lattices Matrix representation Index storage Parameter representation L,a,b,s LTFAT parameters: L,a,M,lt Generating lattices Separable lattices Non-separable lattices Information on LTFAT tollbox
Subgroups Counting Problem For a given size N and redundancy red, how many lattices are there? Separable Say that the divisors of N red are {p 1, p 2,..., p n }. The number of separable lattices of redundancy red is n. Examples For L = 480, red = 1.5, there are 10 separable lattices. For L = 480, red = 2, there are 20 separable lattices.
Subgroups II Non-separable Say N = j pa j j and N red = K = j pb j j. Clearly 0 b j 2a j, j. Then we have: s K (N) = n j=1 s b p j (p a n { j j ) = p b+1 1 p 1, 0 b a p 2a b+1 1 j j=1 p 1, a b 2a Examples For L = 480, red = 1.5, there are 176 non-separable lattices. For L = 480, red = 2, there are 724 non-separable lattices.
Adjoint Lattice Notation For λ = (x, ω) Z 2 L we typically write π(λ) = T x M ω, λ = (x, ω) (3.5) Definition For any lattice Λ Z 2 L we define the adjoint lattice Λo as Λ o = { λ o Z 2 L : π(λ o )π(λ) = π(λ)π(λ o ), λ Λ } (3.6) Applications Janssen representation/test
Spyc II Figure: Λ and Λ o
Gaussian window Definition Let be the Gaussian on R. Properties Normalized: ϕ(x) = 2 1/4 e πx2 (4.1) ϕ 2 = 1 (4.2) Minimizes the uncertainty principle/ provides the optimal resolution in the time-frequency plane.
Modified Gaussians Stretched Gaussian windows Stretching operators In practice: ϕ α (x) Rotated Gaussian windows Rotation operators Via Hermite functions Eigenfunctions of the transform
Modified Gaussians II Figure: Stretched Gaussian Figure: Stretched and Rotated Gaussian
Dual Definition If {g j : j J} is a frame with frame operator S, then γ = S 1 g is called the canonical dual window. Figure: Dual for a = 20, b = 16 Figure: Dual for a = 10, b = 32
Clarifications Schematically the time-frequency analysis of a signal consists of three distinct steps: A. : Given a signal or image f, its STFT V g f with respect to a suitable window is computed. B. Processing: V g f(x, ω) is transformed into some new function F (x, ω). C. Synthesis: The processed signal or image is then reconstructed using the modified inversion formula: h = λ Λ F (λ)π(λ)γ (5.1) with respect to a suitable synthesis window γ
Concrete example - Digital image compression Method Given an input 2D signal( image) f, decompose it into simple parts( RGB/Y C b C r ). For each component, compute a 2D DFT. Truncate the higher frequencies. Reconstruct. Example
Quality Criteria - Frame Bounds Recall the definition of a frame A finite sequence {g 1, g 2,..., g N } of vectors g j of length L is a frame if A, B > 0 such that: A L f(k) 2 k=1 N f, g j 2 B j=1 for all vectors f of length L. L f(k) 2, k=1 Quality of a frame The ratio B/A is a good indicator of how well a vector can be reconstructed using (2.5).
Quality Criteria - CN of Frame Operator Frame operator The Frame operator plays a central role in the synthesis of the signal, either via (2.5) or in computing the canonical dual window for (5.1). Either way, the inverse of the frame operator is required in the reconstruction. Condition number The condition number is a good indicator of the invertibility of the Frame operator. 2-norm
Geometric Criteria Description How to arrange 2-dimensional balls in R 2 in the most economical way. Packing problem Each point of R 2 may not belong to more than one ball. Covering problem Each point of R 2 belong to at least one ball. Lattice Packing/Covering A packing/covering is a lattice packing/covering for Λ if it is of the form (B x (0) + λ) λ Λ Criteria Let r be the radius for the densest packing and R be the radius for the thinnest covering. Then q = vol(b R )/vol(b r ) is an indicator of the quality of the system G(Λ, g 0 ).
Packing/Covering I Figure: Circles, Sep. Lattice
Packing/Covering II Figure: Circles, Hex. Lattice
Packing/Covering III Figure: Circles, Sep. Lattice Figure: Ellipses, Sep. Lattice
Quality Criteria - Janssen Test Definition Given a lattice Λ and a window function g, the Janssen sum is defined as: s(λ, g) := λ Λ o V g g(λ) (5.2) Explanation If g is properly normalized, i.e. g = 1, then V g g(0) = 1. If s(λ, g) < 2, the system has good properties.
Other Quality Criteria CN of the dual window S 0 norm of the dual window Composite quality criteria 1-norm of the STFT
End note Equivalence of Quality criteria? Figure: Comparison of criteria
Optimal Quality Criteria? Efficient computation of dual windows? Efficiency of non-separable lattices?
I would like to thank: Prof. Dr. Hans Georg Feichtinger Dr. Maurice de Gosson Christoph Wiesmeyr Markus Faulhuber Peter Sondegaard Everyone in the audience: Thank you!
References Hans G. Feichtinger, Ole Christensen, Stephan Paukner. Gabor for Imaging. In Handbook of Mathematical Methods in Imaging, Springer Berlin, Vol.3 p.1271-1307, 2011. K. Gröchenig. Foundations of Time-Frequency. Appl. Numer. Harmon. Anal. Birkhäuser Boston, Boston, MA, 2001. J.H. Conway, N.J.A. Sloane. Sphere Packings, and Groups, Springer, 1999. Chuanming Zong. Simultaneous Packing and Covering in the Euclidean Plane, Monatsh. Math. 134, 247-255, 2002. Hans G. Feichtinger, Thomas Strohmer, Ole Christensen. A Group-theoretical Approach. Opt. Eng., Vol.34 p.1697 1704, 1995. H. G. Feichtinger, N. Kaiblinger. 2D-Gabor analysis based on 1D algorithms. In Proc. OEAGM-97 (Hallstatt, Austria), 1997. H. G. Feichtinger, W. Kozek, P. Prinz, and T. Strohmer. On multidimensional non-separable Gabor expansions. In Proc. SPIE: Wavelet Applications in Signal and Image Processing IV, August 1996. Stephan Paukner. Foundations of Gabor for Image Processing, Nov 2007. A.J.E.M. Janssen. Gabor representation of generalized functions. J. Math. Anal. Appl., 83:377-394, October 1981. D. Gabor. Theory of communication. J. IEE, 93(26):429-457, 1946.