LINTRAN

Name

lintran -- runs a linear transform on a set of vectors.

Synopsis

lintran <vecsfile_in [vecsfile_in...] [>] <tranmat_file><nrows_use><vecsfile_out><vecsfile_out_desc><ascii_outfile><message_freq>

DESCRIPTION

Lintran runs a linear transform on a set of vectors and reduces the dimensionality of the feature vectors using the given basis set tranmat_file.

If several processors are available, it may be possible to save time, when transforming a large set of vectors. First, run several simultaneous instances of lintran, each instance transforming a subset of the vectors. Then, use stackms to combine the resulting output files, in the sense of stacking together the matrices. See the stackms man page.

OPTIONS

<vecsfile_in[vecsfile_in...]>

Input data file(s) in PCASYS "matrix" format, each consisting of a block of the vectors that are to be transformed. The input vectors are the rows. All input vectors must have the same number of elements, so the second dimensions of these files (if more than one file) must all be equal. (Usually the output of the mkoas command.)

<tranmat_file>

A PCASYS "matrix" file containing a transform matrix, some of whose rows are to be used (see next argument). The second dimension of the transform matrix must equal the second dimension of the file(s) of input vectors. (Usually the output of the eva_evt or mktran commands.)

<nrows_use>

How many (first) rows of the transform matrix are to be used. This is how many elements each output vector will have.

<vecsfile_out>

The output vectors, stacked together as a PCASYS "matrix" file, each vector being one row of the matrix.

<vecsfile_out_desc>

A string to be written into the output file as its description string. This string can be of any length, but must not contain embedded newline characters. If it contains spaces, tabs, or shell metacharacters that are not to be expanded, then it should be quoted. To leave the description empty, use '' (two single quotes, i.e. single-quoted empty string). To let lintran make a description (indicating that lintran was used, and listing the names of the file(s) of input vectors and of the transform matrix file), use - (hyphen).

<ascii_outfile>

If y, makes an ascii output file; if n, binary. Binary is recommended, unless the output file must be portable across different byte orders or floating-point formats.

<message_freq>

If a positive integer, then every this many vectors through each input file lintran writes a progress message to the standard output. If zero, no messages.

EXAMPLE(S)

From test/pcasys/execs/lintran/lintran.src:

% lintran ../mkoas/sv10.oas ../eva_evt/fv1-9.evt 128 sv10mlp.kls - n 100 Does transformation using a eigen-vector set made by the eva_evt command. Used by MLP classifier.

% lintran ../mkoas/sv10.oas ../mktran/fv1-9.opt 64 sv10pnn.kls - n 100 Does transformation using a set of eigen-vectors that were adjusted using the optrws and mktran commands. Used by the PNN classifier.

SEE ALSO

asc2bin (1A), bin2asc (1A), eva_evt (1A), mkoas (1A), mktran (1A), stackms (1A)

AUTHOR

NIST/ITL/DIV894/Image Group