Barcode Decoding Using Machine Learning Classifiers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional barcode decoding methods struggle with accurately reading damaged or degraded barcodes due to imperfections, leading to unreadable results.

Innovation Solution

The use of machine learning techniques, specifically trained image classifiers, to decode barcodes by capturing images, dividing them into rows and columns, and predicting characters based on preprocessed images that simulate various imperfections, such as noise and blurring, to improve decoding accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional barcode decoding methods are used, then the decoding process is simple and fast, but the accuracy deteriorates when barcodes are damaged or degraded

Engineering Contradiction:
Improvebarcode decoding accuracyVSAvoiddecoding system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by pre-processing training images to simulate various defects (noise, blurring, scaling, cropping) before training the machine learning model. This preparation of degraded sample data in advance enables the model to learn robust feature extraction that maintains high accuracy when decoding damaged barcodes during actual operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system applies parameter changes by transforming training images through various operations including adding noise, applying blur filters, scaling to different resolutions, and random cropping. These parameter transformations create a diverse set of training samples that teach the decoding model to handle variations in barcode quality, lighting, and damage conditions.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If machine learning techniques with preprocessed images are used, then the decoding accuracy for damaged barcodes improves, but the processing time and computational complexity increase

Engineering Contradiction:
Improvebarcode decoding accuracyVSAvoiddecoding processing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-processing training images to simulate various defects (noise, blurring, scaling, cropping) before training the machine learning model. This preparation of degraded sample data in advance enables the model to learn robust feature extraction that maintains high accuracy when decoding damaged barcodes during actual operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates multiple copies of training images with different defect patterns applied (white noise, black noise, Gaussian blur, salt-and-pepper noise, scaling, cropping). These copied and transformed images serve as additional training samples, allowing the model to learn from diverse variations without requiring excessive computational resources during actual decoding.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If barcodes are damaged or degraded, then real-world applicability increases, but the readability and decodability deteriorate

Engineering Contradiction:
Improvereal-world barcode handling capabilityVSAvoidbarcode readability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system applies parameter changes by transforming training images through various operations including adding noise, applying blur filters, scaling to different resolutions, and random cropping. These parameter transformations create a diverse set of training samples that teach the decoding model to handle variations in barcode quality, lighting, and damage conditions.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system converts the harmful effect of barcode damage into a benefit by using defective and degraded barcode images as training data. By intentionally introducing various types of defects (noise, blurring, cropping) during the training phase, the model learns to extract meaningful information even from damaged barcodes, turning what would normally be unreadable scenarios into successfully decodable cases.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS11334731B2System and method of decoding a barcode using machine learning
Publication Date: 2022.05.17 UNIV OF PITTSBURGH OF THE COMMONWEALTH SYST OF HIGHER EDUCATION
  • US11334731B2 patent drawing
  • US11334731B2 patent drawing
  • US11334731B2 patent drawing

AI summary

A method of decoding a barcode includes capturing an image of the barcode, dividing the image of the barcode into a plurality of rows and columns, each column corresponding to one encoded character of the barcode, using a number of trained image classifiers on each row to determine a predicted character for each column of the row, for each column, determining an output character for the column based on each of the predicted characters associated with the column, and for each column, outputting the output character. Also, a system for decoding a barcode that implements the method.