ISO/IEC 15415:2004(E)
6
© ISO/IEC 2004 – All rights reserved
For the analysis of the scan reflectance profiles, the number of scans should be ten, or the height of the
symbol divided by the measuring aperture. If this quotient is less than ten scans should be approximately
evenly spaced over the height of the symbol. For example, in a twenty-row symbol the ten scans might be
performed in alternate rows. In a two-row symbol, up to five scans might be performed in each row, at different
positions in the height of the bars. The symbology specification may give more specific guidance on the
selection of the scans to be used.
To identify bars and spaces, a Global Threshold for each scan has to be determined. Global Threshold shall
be equal in reflectance to (R
max
+ R
min
) / 2, where the values R
max
and R
min
are respectively the highest and
the lowest reflectances in the scan. All regions above the Global Threshold shall be considered spaces (or
quiet zones) and all regions below shall be considered bars.
Edge locations shall be determined as the points where the reflectance value is midway between the highest
reflectance in the adjoining space and the lowest reflectance in the adjoining bar, in accordance with
ISO/IEC 15416.
For the evaluation of the parameters ’decode’ and ’decodability’ the reference decode algorithm for the
symbology shall be applied.
Each scan shall be graded as the lowest grade for any individual parameter in that scan. The grade based on
scan reflectance profiles shall be the arithmetic mean of the grades for the individual scans.
The measurement of bar width gain or loss may be used for process control purposes. Note that this method
will not be sensitive to printing variations parallel to the height of the start and stop characters. If a full analysis
of the printing process is desired, symbols should be printed and tested in both orientations.
6.2.3 Grade based on Codeword Yield
This parameter measures the efficiency with which linear scans can recover data from a two-dimensional
multi-row symbol. The Codeword Yield is the number of validly decoded codewords expressed as a
percentage of the maximum number of codewords that could have been decoded (after adjusting for tilt). A
poor Codeword Yield, for a symbol whose other measurements are good, may indicate a Y-axis print quality
problem (such as those shown in Table C.1).
Obtain a matrix of the correct symbol character values, such as would result from successful completion of the
UEC calculations (see 6.2.4). This matrix is used as the "final decode of the symbol" used in subsequent
steps to determine validly decoded codewords.
An individual scan qualifies for inclusion in the Codeword Yield calculation if it meets either of two conditions:
1) The scan did not include recognised portions of either the top or the bottom row of the symbol. At
least one of the Start or Stop (or Row Address) patterns shall have been successfully decoded from
that scan, together with at least one additional codeword or the corresponding second Start or Stop
pattern, or Row Address Pattern.
2) The scan included recognised portions of either the top or the bottom row of the symbol. Both the
Start and Stop patterns of the symbol shall have been successfully decoded from that scan.
It is important to note that an extension to the symbology’s Reference Decode Algorithm is required, in order
to detect and decode a pair of Start and Stop patterns when neither of the adjacent codewords is decodable.
As examples, a linear search for a matching pair of PDF417 Start and Stop patterns, or a linear search for a
matching pair of MicroPDF417 Row Indicator Patterns, would fulfil this requirement for scans where the
Reference Decode Algorithm alone did not decode both patterns; thus this extension can qualify a scan where
no codewords (other than the matched end patterns) were decoded. Note however, that a scan that contains
only a single decoded Start or Stop pattern found by this linear search does not count as a qualified scan, if no
other codewords or corresponding second Start or Stop pattern, or Row Address Pattern, were also decoded.
Decode the symbol completely and populate the symbol matrix.
For each qualified scan, compare the codewords actually decoded with the codewords in the symbol matrix
and count the number of codewords that match. Accumulate the total number of validly decoded codewords,