NSTIGHT - Canonical tight NSG frame (for painless systems)

Usage

gt = nstight(g,shift,M)

Input parameters

g Cell array of window functions/filters
shift Vector of time/frequency shifts
M Number of frequency channels (vector/scalar)

Output parameters

gt Tight window functions

Description

Given a non-stationary Gabor frame specified by the windows g, shift parameters shift, and channel numbers M, nstight computes the canonical tight frame windows/filters gt by inverting the diagonal of the frame operator and applying the square root to the inverse to g. More explicitly,

\begin{equation*} gt\{n\} = \frac{ g\{n\} }{\sqrt{\sum_{l} M(l) |g\{l\}|^2} }. \end{equation*}

If g, shift, M specified a painless frame, i.e. \(|supp(g\{n\}) | \leq M(n)~\forall~n\) and

\begin{equation*} \sum_{n} M(n) |g\{n\}|^2 \simeq 1, \end{equation*}

the computation will result in a tight nonstationary Gabor frame. If g, shift, M specify a frame, but the first condition is violated, the result can be interpreted as a first approximation of the corresponding canonical tight frame.

Note, the time shifts corresponding to the tight window sequence is the same as the original shift sequence and as such already given.

If g, shift, M is a painless frame, the output can be used for analysis and perfect reconstruction of a signal using the nonstationary Gabor algorithms nsgt, nsigt.

References:

P. Balazs, M. Dörfler, F. Jaillet, N. Holighaus, and G. A. Velasco. Theory, implementation and applications of nonstationary Gabor Frames. J. Comput. Appl. Math., 236(6):1481-1496, 2011.