This is where navigation should be.

FRAME - Construct a new frame

Usage

F=frame(ftype,...);

Description

F=frame(ftype,...) constructs a new frame object F of type ftype. Arguments following ftype are specific to the type of frame chosen.

Time-frequency frames

frame('dgt',g,a,M) constructs a Gabor frame with window g, time-shift a and M channels. See the help on dgt for more information.

frame('dgtreal',g,a,M) constructs a Gabor frame for real-valued signals with window g, time-shift a and M channels. See the help on dgtreal for more information.

frame('dwilt',g,M) constructs a Wilson basis with window g and M channels. See the help on dwilt for more information.

frame('wmdct',g,M) constructs a windowed MDCT basis with window g and M channels. See the help on wmdct for more information.

frame('filterbank',g,a,M) constructs a filterbank with filters g, time-shifts of a and M channels. For the ease of implementation, it is necessary to specify M, even though it strictly speaking could be deduced from the size of the windows. See the help on filterbank for more information on the parameters. Similarly, you can construct a uniform filterbank by selecting 'ufilterbank', a positive-frequency filterbank by selecting 'filterbankreal' or a uniform positive-frequency filterbank by selecting 'ufilterbankreal'.

frame('nsdgt',g,a,M) constructs a non-stationary Gabor frame with filters g, time-shifts of a and M channels. See the help on nsdgt for more information on the parameters. Similarly, you can construct a uniform NSDGT by selecting 'unsdgt', an NSDGT for real-valued signals only by selecting 'nsdgtreal' or a uniform NSDGT for real-valued signals by selecting 'unsdgtreal'.

Wavelet frames

frame('fwt', w, J) constructs a wavelet frame with wavelet definition w and J number of filterbank iterations. Similarly, a redundant time invariant wavelet representation can be constructed by selecting 'ufwt'. See the help on fwt and ufwt for more information.

frame('wfbt', wt) constructs a wavelet filterbank tree defined by the wavelet filterbank tree definition wt. Similarly, an undecimated wavelet filterbank tree can be constructed by selecting 'uwfbt'. See the help on wfbt and uwfbt for more information.

frame('wpfbt', wt) constructs a wavelet packet filterbank tree defined by the wavelet filterbank tree definition wt. Similarly, an undecimated wavelet packet filterbank tree can be constructed by selecting 'uwpfbt'. See the help on wpfbt and uwpfbt for more information.

Pure frequency frames

frame('dft') constructs a basis where the analysis operator is the dft, and the synthesis operator is its inverse, idft. Completely similar to this, you can enter the name of any of the cosine or sine transforms dcti, dctii, dctiii, dctiv, dsti, dstii, dstiii or dstiv.

frame('reddft',red) constructs so called harmonic Parseval tight frame or redundant dft with redundancy red. The frame accepts any red, but frana will only work for signal lengths Ls for which the number of coefficients Ls*red is an integer.

frame('dftreal') constructs a normalized fftreal basis for real-valued signals of even length only. The basis is normalized to ensure that is it orthonormal.

Special / general frames

frame('gen',g) constructs a general frame with a synthesis matrix g. The frame atoms must be stored as column vectors in the matrix.

frame('identity') constructs the canonical orthonormal basis, meaning that all operators return their input as output, so it is the dummy operation.

Container frames

frame('fusion',w,F1,F2,...) constructs a fusion frame, which is the collection of the frames specified by F1, F2,... The vector w contains a weight for each frame. If w is a scalar, this weight will be applied to all the sub-frames.

frame('tensor',F1,F2,...) constructs a tensor product frame, where the frames F1, *F2,... are applied along the 1st, 2nd etc. dimensions. If you don't want any action along a specific dimension, use the identity frame along that dimension. Any remaining dimensions in the input signal are left alone.

Wrapper frames

Frames types in this section are "virtual". They serve as a wrapper for a different type of frame.

frame('erbletfb',fs,Ls,...) constructs an Erb-let filterbank frame for a given samp. frequency fs working with signals of length Ls. See erbfilters for a description of additional parameters as all parameters other than the frame type string 'erbletfb' are passed to it. NOTE: The resulting frame is defined only for a single signal length Ls. Shorter signals will be zero-padded, signals longer than Ls cannot be processed. The actual frame type is 'filterbank' or 'filterbankreal'.

frame('cqtfb',fs,fmin,fmax,bins,Ls,...) constructs a CQT filterbank frame for a given samp. frequency fs working with signals of length Ls. See cqtfilters for a description of other parameters. NOTE: The resulting frame is defined only for a single signal length Ls. Shorter signals will be zero-padded, signals longer than Ls cannot be processed. The actual frame type is 'filterbank' or 'filterbankreal'.

Examples

The following example creates a Modified Discrete Cosine Transform frame, analyses an input signal and plots the frame coefficients:

F=frame('wmdct','gauss',40);
c=frana(F,greasy);
plotframe(F,c,'dynrange',60);