Collapse
CollapsingX
  • - or -

CodeGrade step overview


Some applications require that you evaluate the quality of a printed or marked code. Due to the possibility for codes on a product to degrade through the production process, it is often important that codes meet certain standards before leaving the marking station. The CodeGrade step performs code grading according to selected ISO and AIM-DPM standards. There are many code attributes that can be graded, all of which contribute to a code's readability. The grade of a result can range from A to F. The most commonly used result is OverallSymbolGrade, which is determined as the minimum grade found across all attributes of a code. You can also retrieve several numeric results from the CodeGrade step, such as SymbolContrast or PrintGrowth.

The CodeGrade step allows you to grade all code types supported by the CodeReader step, except the Pharmacode, Postnet, and Planet code types.

General guidelines for code grading

For the CodeGrade step results to be accurate, some of the settings must be correctly configured and the lighting and acquisition must be set up such that the imaged code meets certain conditions:

  • Has a maximum contrast and minimum noise.

  • Avoids pixel saturation.

  • Has a cell size of at least 3. A smaller cell size results in a less robust result.

  • Has a uniform foreground and background grayscale level (that is, there should be no glare or dark spots present in the image).

Ideally, the setup and configuration should be done following the described calibration procedure using a standard test card. If it is not possible to implement the calibration procedure (for example, due to lack of reference cards or physical and workflow constraints), this chapter also discusses a way to determine approximate values to use, that should give you good results, but will not be as accurate as following a full calibration.

Attributes that can be graded

The following table lists the common code attributes that can be graded using the CodeGrade step. This includes attributes of the scan reflectance profiles, which are records of values measured along a line across the width of the code and its quiet zone.

Attribute

Notes

Axial nonuniformity

This attribute is a measure of how spacing between sampling points differs between the X- and Y-axis (width to height).

Contrast

This attribute is a measure of the contrast in the cells of the code occurrence or in the entire code occurrence. The higher the contrast, the better it is for scanning purposes and the better the grade.

Decode

This attribute is a measure of the success or failure of the decoding algorithm and is used to determine if the code is readable.

Defects

This attribute is a measure of the defects, or local deviations, in the scan reflectance profiles of the code.

Fixed-pattern damage

This attribute is used to grade the damage relating to the finder pattern and/or clock pattern of a 2D Data Matrix code.

Grid nonuniformity

This attribute is calculated as the amount of deviation of the code occurrence's actual grid from an ideal grid.

Minimum edge contrast

This attribute is calculated as the contrast between 2 adjacent regions (for example, a bar and an adjacent space).

Print growth

This attribute is a measure of the extent in which the boundaries of the black and white markings of the code occurrence are within their cell's boundaries.

Start/stop pattern

This attribute is used to grade the quality of the pattern that marks the end points of the code occurrence.

Unused Error Correction

This is a measure of the extent in which regional or spot damage in the code occurrence has eroded the reading safety margin that error correction provides.