tomwalters@0: .TH ACGRAM 1 "1 September 1993" tomwalters@0: tomwalters@0: .SH NAME tomwalters@0: acgram \- Autocorrelogram auditory image. tomwalters@0: tomwalters@0: .SH SYNTAX tomwalters@0: acgram [arguments] [file] tomwalters@0: tomwalters@0: tomwalters@0: .SH DESCRIPTION tomwalters@0: Short-time autocorrelation function applied to each row of input frames. tomwalters@0: Output frames consist of row-wise autocorrelation coefficients. tomwalters@0: The autocorrelation function (acf) is computed using the fft. Strictly tomwalters@0: speaking this generates an autocovariance function, but an optional tomwalters@0: normalization (dividing each coefficient by the zeroth coefficient) produces tomwalters@0: the autocorrelation function. tomwalters@0: tomwalters@0: The program expects to read an AIM header, and interprets input as one large tomwalters@0: frame in column-wise format (eg output from genbmm, gennap, etc.), to be tomwalters@0: divided into input frames, each to be processed as an autocorrelogram. tomwalters@0: A new header is constructed, and each autocorrelogram frame is output in tomwalters@0: row-wise format (eg as if output from gensai). tomwalters@0: tomwalters@0: The input is divided into frames according to the given options. tomwalters@0: The options 'start' and 'length' specify the input file. tomwalters@0: The special option value length=max specifies all the input file from tomwalters@0: the given start to its end. tomwalters@0: The options 'width' and 'frstep' specify the input frames. tomwalters@0: The width option is the framewidth of each input frame and the frstep tomwalters@0: option is the frameshift between input frames in the input file. tomwalters@0: The special option value width=max specifies the input framewidth as equal tomwalters@0: to the given input file length, (and if this is also 'max', then the tomwalters@0: input framewidth is the remainder of the input file). tomwalters@0: tomwalters@0: Most options in the input header are copied to the output header. tomwalters@0: This enables options which are needed for the eventual display tomwalters@0: to pass straight through. Some options are set so that they can override tomwalters@0: the input header. For example, the display option is set on to enable tomwalters@0: display even when input has display=off. The animate option can be set on tomwalters@0: even when the input has animate=off. tomwalters@0: Some parts of the header are changed for the output format: tomwalters@0: (frames, frameshift, framewidth, frameheight, framebytes). tomwalters@0: tomwalters@0: Each row of each input frame is padded with zeroes to the next tomwalters@0: power of 2 larger than either the original input framewidth or twice the tomwalters@0: max acf lag (whichever is the larger). tomwalters@0: If necessary, extra padding can be enforced using the (silent) padding option tomwalters@0: to add extra zeroes, padding to a larger power of 2. tomwalters@0: The amount of extra padding is 'exponential', expanding the basic size to: tomwalters@0: .nf tomwalters@0: ( framewidth + padding ) * 2**n tomwalters@0: tomwalters@0: where the padding option is n. tomwalters@0: .fi tomwalters@0: tomwalters@0: (n=0 by default, so that no extra padding is added. When n=1 then padding is tomwalters@0: added to double the size, and when n=2 the size is quadrupled, etc.). tomwalters@0: tomwalters@0: .SH EXAMPLES tomwalters@0: tomwalters@0: 1. Autocorrelogram of a NAP, animated and normalized, with max lag 16ms: tomwalters@0: tomwalters@0: gennap len=128ms output=stdout display=off file | acgram lag=16ms norm=on \ tomwalters@0: anim=on > file.sai tomwalters@0: tomwalters@0: gensai useprev=on headr=5 top=1000 file -(for landscape plot) tomwalters@0: tomwalters@0: genspl useprev=on headr=5 top=1000 pensize=2 file -(for spiral plot) tomwalters@0: tomwalters@0: 2. Autocorrelogram of an SAI: tomwalters@0: (gensai removes file.sai, so you must use some other name, eg foo.sai). tomwalters@0: tomwalters@0: gensai len=64 pwidth=64 nwidth=0 output=stdout display=off file | \ tomwalters@0: saitonap frame=3 | acgram lag=32ms frame=1 > foo.sai tomwalters@0: tomwalters@0: gensai useprev=on top=1000 headr=5 mag=2 foo tomwalters@0: tomwalters@0: tomwalters@0: .SH COPYRIGHT tomwalters@0: .LP tomwalters@0: Copyright (c) Applied Psychology Unit, Medical Research Council, 1995 tomwalters@0: .LP tomwalters@0: Permission to use, copy, modify, and distribute this software without fee tomwalters@0: is hereby granted for research purposes, provided that this copyright tomwalters@0: notice appears in all copies and in all supporting documentation, and that tomwalters@0: the software is not redistributed for any fee (except for a nominal tomwalters@0: shipping charge). Anyone wanting to incorporate all or part of this tomwalters@0: software in a commercial product must obtain a license from the Medical tomwalters@0: Research Council. tomwalters@0: .LP tomwalters@0: The MRC makes no representations about the suitability of this tomwalters@0: software for any purpose. It is provided "as is" without express or tomwalters@0: implied warranty. tomwalters@0: .LP tomwalters@0: THE MRC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, tomwalters@0: INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO tomwalters@0: EVENT SHALL THE A.P.U. BE LIABLE FOR ANY SPECIAL, INDIRECT OR tomwalters@0: CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF tomwalters@0: USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR tomwalters@0: OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR tomwalters@0: PERFORMANCE OF THIS SOFTWARE. tomwalters@0: tomwalters@0: tomwalters@0: