Technology · Structure
Structure of a Quick Response Code
A Quick Response Code symbol is composed of named functional regions, each performing a specific role in the symbol's location, orientation, and decoding.
Functional regions
- Position-detection patterns (finder patterns)
- Three large square patterns set into three of the symbol's corners. The scanner uses them to locate and orient the symbol.
- Separators
- A one-module-wide light boundary surrounding each finder pattern, isolating it from neighboring data modules.
- Timing patterns
- Two single-module lines of alternating dark and light modules running between the finders, establishing the symbol's module coordinate system.
- Alignment patterns
- Smaller square patterns distributed across larger symbols, used to compensate for moderate perspective distortion when the symbol is imaged off-axis.
- Format information
- A 15-bit field, replicated for redundancy, encoding the error- correction level and the data-mask pattern applied to the symbol.
- Version information
- An 18-bit field, present in symbols of Version 7 or higher, encoding the symbol's version number.
- Data and error-correction codewords
- The remaining modules, organized into 8-bit codewords interleaved across the symbol and protected by Reed–Solomon error correction.
- Quiet zone
- A four-module margin of light modules surrounding the symbol on every side, required for reliable detection.
Module count
The number of modules along one edge of a symbol is given by the formula 17 + 4V, where V is the version number. A Version 1 symbol is therefore 21 × 21 modules; a Version 40 symbol is 177 × 177 modules. See Versions and sizes for the full table.
Cited references
- ISO/IEC 18004:2015, §5 Symbol structure.
- JIS X 0510, §5 Symbol structure.
