Mkoas makes orientation arrays (oas), for a set of fingerprint image files. An oa can be thought of as a 28 (height) by 30 (width) array of real two-dimensional orientation vectors, each of which represents the local average ridge/valley orientation at one point of an equally-spaced rectangular grid; but, sometimes it is more convenient to think of an oa as a single 1680-dimensional real vector (1680 = 28 x 30 x 2). To make an oa from a fingerprint, mkoas uses the same sequence of preprocessing/feature-extraction routines that is used by the classifier demos pcasys and pcasysx. Mkoas causes each oa to be one row of the PCASYS "matrix" file that is its output.
Mkoas sets the values of its parameters as follows. First, it reads the default oas-production parms file pcasys/parms/oas.prs; then, it reads the file of default values of additional mkoas parms, pcasys/parms/mkoas.prs; finally, it reads the required user parms file, which is the argument (prsfile). Each time a parms file is read, its values override those set by previously read parms file(s), if any. See PARAMETER FILES, below, for a description of the difference between oas.prs and mkoas.prs.
Since the oas of a large set of fingerprints can turn out to be quite a large amount of data, it may be that the entire set of oas that are to be produced cannot exist as a single file, because of disk space limitations. If so, one should run several instances of mkoas, each producing a matrix file that is a subset of the required oas. To estimate output file size as a function of number of oas, note that each oa consists of 1680 single-precision floating-point numbers, and therefore it takes 1680 x 4 = 6720 bytes. Allow slightly more space, for header data contained in a matrix file.
A file containing parameters. To find out what the available parameters are, and as examples of the format of parameters files, consult the default files pcasys/parms/oas.prs and pcasys/parms/mkoas.prs. Each parameter is specified by having its name and value on a line; a pound sign indicates that the rest of its line is a comment.
Contains default values of the parameters that affect the making of orientation arrays (oas): these are the parms of the segmentor (sgmnt), the image enhancer (enhnc), the ridge-valley orientation finder (rors), the registration program (r92a), and the registration-implementing pixelwise orientations reaverager (rgar). The values used for these parms when making the oas used in optimizing the classifier should also be used when running the finished classifier.
Default settings in pcasys/parms/oas.prs
How many threshold-making factors to try.
Minimum allowed number of foreground (true) pixels.
Maximum allowed number of foreground (true) pixels.
Do this many erosions in foreground cleanup.
If 1, remove small blobs in foreground cleanup.
If 1, fill holes in rows, columns in foreground cleanup.
Cutting angle becomes zero if any foreground edge has fewer than this many pixels.
Threshold that tilted-rows-histogram must meet to find top-location for cutting.
Maximum allowed width of original raster.
Maximum allowed height of original raster.
Minimum threshold-making factor value.
Delta of threshold-making factor value.
If any of the three edges has slope differing by more than this from the average of the slopes, then cutting angle is set to zero.
High-frequency elements of FFT whose filter plane value is less than this value are discarded.
Low-frequency elements of FFT whose filter plane number is greater than this value are discarded.
Power spectrum is raised to this power before it is multiplied by the FFT output.
If the difference between the maximum and minimum slit-sums at a pixel is less than this, then this pixel makes no contribution to the histogram used to make the local average orientation.
If squared-length of a local-average orientation vector is less than this, then conversion of this vector to an angle for use by r92 just produces the special value 100., which means an undefined angle.
X coordinate of standard (median) core position.
Y coordinate of standard (median) core position. This is the standard registration point, to which the particular core point gets translated to implement registration.
Contains default values of additional parameters needed by mkoas, besides those appearing in pcasys/parms/oas.prs. Parameters without defaults values must appear in the users prsfile.
Default settings in pcasys/parms/mkoas.prs
Ascii (y) or binary (n) output?
Frequency of progress messages.
Overwrite an oas_file if it already exists?
The list of fingerprint images to make orientation arrays from.
The output file that is to be produced containing orientation arrays.