Barcode Technology

Barcode History

Barcode Label Paper

Barcode Printer

Barcode Application

Inventory Management

AI Barcode QRCode

Barcode Scanner

Barcode Software

Barcode Software B

Barcode Software C

Barcode Software D

Barcode Software E

New Technology A

New Technology B

Robot Technology

Barcode Types

Barcode Types B

Barcode Types C

Barcode Types D

Barcode Types E

Barcode Types F

Electronic Technology

Psychology at Work

Barcode Technology and Barcode Software Related   <<< Back to Directory <<<

Error correction of QR code

Recommended: Free barcode software - Bulk barcode generator and label printing, Free for life. Download

QR codes use Reed-Solomon error correction over the finite field F 256 {\displaystyle \mathbb {F} _{256}} or GF(28), the elements of which are encoded as bytes of 8 bits.

QR codes utilize Reed-Solomon error correction to ensure data integrity and allow for data recovery in cases where the QR code is partially damaged or obscured.

The Reed-Solomon code uses one of 37 different polynomials over F 256 {\displaystyle \mathbb {F} _{256}}, with degrees ranging from 7 to 68, depending on how many error correction bytes the code adds.

Here's a detailed breakdown of the error correction mechanism in QR codes:

Reed-Solomon Error Correction

Finite Field F256\mathbb{F}_{256}F256 or GF(28)

1.Elements as Bytes:

The elements of the finite field F256\mathbb{F}_{256}F256 are encoded as 8-bit bytes. A byte b7b6b5b4b3b2b1b0b_7 b_6 b_5 b_4 b_3 b_2 b_1 b_0b7b6b5b4b3b2b1b0 represents the binary form where bib_ibi (for iii from 0 to 7) are the bits.

The numerical value of the byte is ∑i=07bi2i\sum_{i=0}^{7} b_i 2^i∑i=07bi2i.

2.Field Elements:

Each byte encodes a field element ∑i=07biαi\sum_{i=0}^{7} b_i \alpha^i∑i=07biαi, where α\alphaα is a primitive element in F256\mathbb{F}_{256}F256.

The primitive element α\alphaα satisfies the polynomial equation α8+α4+α3+α2+1=0\alpha^8 + \alpha^4 + \alpha^3 + \alpha^2 + 1 = 0α8+α4+α3+α2+1=0.

The corresponding polynomial for α\alphaα is x8+x4+x3+x2+1x^8 + x^4 + x^3 + x^2 + 1x8+x4+x3+x2+1, which is polynomial number 285, with an initial root of 0.

Error Correction Code Structure

1.Error Correction Polynomials:

The Reed-Solomon code in QR codes uses 37 different polynomials over F256\mathbb{F}_{256}F256, depending on the error correction level and the QR code version.

These polynomials are of varying degrees (from 7 to 68), depending on the number of error correction bytes required.

2.Systematic BCH View:

QR codes use a systematic BCH view of the Reed-Solomon code.

The generator polynomial for error correction is typically of the form ∏i=0n-1(x-αi)\prod_{i=0}^{n-1}(x - \alpha^i)∏i=0n-1(x-αi), where nnn is the degree of the polynomial and is specific to the QR code standard.

Error Correction Levels

QR codes have four error correction levels, each providing different amounts of error protection:

1.Level L (Low): Recovers up to 7% of the data.

2.Level M (Medium): Recovers up to 15% of the data.

3.Level Q (Quartile): Recovers up to 25% of the data.

4.Level H (High): Recovers up to 30% of the data.

Error Correction Process

1.Encoding:

During encoding, error correction codes are generated and appended to the original data.

The number of error correction bytes added depends on the chosen error correction level and the QR code version (size).

2.Decoding and Error Correction:

When scanning a QR code, the reader uses the error correction bytes to detect and correct errors.

The process involves polynomial division in F256\mathbb{F}_{256}F256 to locate and correct errors in the received data.

3.Error Detection:

The Reed-Solomon algorithm can detect errors and erasures (unknown locations of errors).

It uses the properties of polynomials over F256\mathbb{F}_{256}F256 to reconstruct the original message even if parts of the data are corrupted or missing.

Practical Example

1.Generator Polynomial:

Suppose we need a generator polynomial for a QR code with error correction capacity ttt. The generator polynomial might be g(x)=(x-α0)(x-α1)-(x-α2t-1)g(x) = (x - \alpha^0)(x - \alpha^1) \cdots (x - \alpha^{2t-1})g(x)=(x-α0)(x-α1)-(x-α2t-1).

2.Encoding Data:

The original data is treated as a polynomial m(x)m(x)m(x).

The error correction codeword is computed by multiplying m(x)m(x)m(x) by x2tx^{2t}x2t (shifting it by 2t2t2t places) and then taking the remainder when divided by the generator polynomial g(x)g(x)g(x).

3.Decoding Data:

The received polynomial r(x)r(x)r(x) is divided by the generator polynomial g(x)g(x)g(x) to detect and correct errors.

If errors are detected, the algorithm determines the error locations and values to correct them.

By leveraging the robust Reed-Solomon error correction mechanism, QR codes can reliably transmit data even in the presence of significant noise or damage. This makes them highly reliable for a wide range of applications, from commercial product tracking to information sharing.

 

EasierSoft Barcode Label Design & Bulk Printing Software

---- Use Excel Data to Batch Print Barcodes on Label Sheets or Roll Labels  

---- How to use this barcode software

Download:  Free Barcode Software + Barcode Label Designer

Download Free Barcode Software at Softonic

     Download at CNET

Once you obtain a GS1/UPC/EAN barcode, or other barcode type and QR code, you can use our free software to batch print barcode labels onto Roll label paper using a professional label printer, or to batch print barcodes onto Avery 5160 label sheets using a regular laser or inkjet printer. Our software has free and paid versions.

The free version fully meets your needs for batch printing GS1/UPC/EAN barcodes. The paid version can import data from Excel and databases to batch print barcode labels with different values.

How to Start

Input Data

Import Excel Data

Print Barcode

Barcode Format

Label Designer

All Screen Shot

Export Barcode Image

Save Template

Output Word Excel

How to Use & FAQ:

Export barcode image files

Barcode text font setting

Generate ISBN barcode

Predefined label templates

Printing setup

Save settings

Serial number generator

The supported barcode types

Load Excel data (pro)

Manually copy data from Excel files

Filter some data for printing

Edit imported barcode data

Input data (Pro)

Label Designer

Edit data in Label designer

Label Designer - Add new label

Label Designer - Printing

Set the barcode label format to be printed

Other Barcode Label Format Settings

Barcode types supported by this program

Barcode Label Font Settings

Configuring the Barcode Print Rotation

Text Alignment for Barcode Labels

Automatically Adjusting Barcode Width

Text Beneath the Barcode

Configuring Barcode Size

Auto Calculate the Barcode Size

Export Barcode images

Export Barcode Image Format

File Names for Exported Barcode

Resolution of Exported Barcode Images

Fixed Folder for Exporting Barcode

Default Barcode Image Export Format

Print bulk barcodes quickly

Print barcodes to Avery 5160 label

How to bulk Barcode Printing

Sample - Avery 5162 (2x7) Label Sheet

Example: Print barcodes to 5*3cm roll

Example: Print barcodes to 5161 label

Example: Print barcodes to 5162 label

Example: Print barcodes to 5163 label

Example: Print barcodes to 5164 label

Example: Print portrait orientation 5164

Example: Print barcodes to 5167 label

Example: Print barcodes to 5168 label

Example: Print portrait orientation 5168

Example: Print barcodes to 5169 label

Example: Print barcodes to 5660 label

Example: Print barcodes to 5661 label

Example: Print barcodes to 5662 label

Highlights

Excel integration: Import data directly from Excel to generate and print barcodes in bulk.

Label designer: Create complex labels with multiple barcodes, text, logos, and shapes.

Batch printing: Print thousands of barcodes at once using standard inkjet/laser printers or professional barcode printers.


Flexible editions:

Standard Edition: Simple batch printing with Excel data.

Professional Edition: Adds command-line automation for workflow integration.

Label Designer Edition: Advanced design features for complex labels.


Why Choose Our Barcode Solutions?

Cost-effective: Free online generator and permanent free desktop version available.

Easy to use: No technical expertise required—just input data and print.

Versatile: Supports nearly all 1D and 2D barcode types, including QR codes.

Trusted: Recommended by CNET and widely downloaded by users worldwide.


Suitable Use Cases

Small businesses and startups needing quick barcode labels for products.

Retailers and online sellers managing inventory with batch barcode printing.

Manufacturers requiring sequential or custom barcode labels for packaging.

Educational and testing environments where barcodes are used for tracking.

 

 

CONTACT

cs@easiersoft.com

If you have any question, please feel free to email us.

 

https://free-barcode.com

 

<<< Back to Directory <<<     Barcode Generator     Barcode Freeware     Privacy Policy