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 <<<

The Barcode Reader Decoded: Principles and Practical Circuit Design (P37)

The Matched Filter: Enhancing the Barcode Signal in the Digital Domain

Executive Summary

This article provides a comprehensive exploration of matched filtering techniques for enhancing barcode signals in the digital domain. We examine how this sophisticated signal processing method can improve the detection of barcode edges and transitions, particularly in the presence of noise and distortion. Rather than focusing on abstract theory, we ground every concept in concrete design examples and real patent disclosures from industry leaders including Symbol Technologies and Datalogic, as well as academic research from leading universities. We explore the fundamental principle of correlating the received signal with a known template, the application of matched filters to edge detection, and the use of correlation techniques for sub-pixel alignment and super-resolution enhancement. The article covers both the fundamental principles and the practical implementation details that make matched filtering a valuable tool for robust barcode decoding. The closing summary synthesizes the key lessons and offers practical guidance for anyone designing or selecting matched filter systems for barcode reading applications.

Chapter 1: The Need for Signal Enhancement

The analog signal from a barcode reader is rarely pristine. Noise from the photodetector, ambient light, and the electronics corrupts the signal. The scanning process itself introduces distortion---the laser spot has a finite size that blurs the edges, and the scanning speed is never perfectly constant. The result is a signal that is a corrupted, blurred version of the ideal barcode pattern.

The decoder's job is to extract the barcode information from this corrupted signal. Traditional decoders use threshold-based digitization, measuring the widths of bars and spaces. But when the signal is noisy or blurred, threshold-based digitization can introduce errors. Edges may be missed, false edges may be introduced, and the measured widths may be distorted.

Matched filtering is a technique that can improve the detection of edges and transitions in noisy signals. The concept is elegant: instead of simply thresholding the signal, the decoder correlates the received signal with a known template---the expected shape of a barcode edge. The correlation produces a peak when the template matches the signal, providing a more robust indication of the edge location.

A patent from Symbol Technologies describes the concept in the context of an optical scanning system: 'A matched filter for bar code symbol signals is proposed; as there is no inherent synchronisation in the bar code signals, a peak or edge detector is used to trigger the system.' The patent goes on to explain that the system includes 'an enhancement filter that modifies pulses produced by a differentiator circuit used in the scanner, including increasing the rise time, and peak level of, the pulses' .

Chapter 2: The Principle of Correlation

The matched filter is based on the principle of correlation. Correlation is a mathematical operation that measures the similarity between two signals. The received signal is correlated with a template---a known pattern that represents what the signal should look like. The correlation produces a peak when the received signal matches the template.

In the context of barcode reading, the template is typically the expected shape of a barcode edge. The template is derived from the known characteristics of the barcode symbol, such as the width of the narrow element. The correlation process searches for this pattern in the received signal.

The strength of the correlation peak indicates how well the template matches the signal. A strong peak indicates a good match, suggesting that a valid edge is present. A weak peak indicates a poor match, suggesting that the edge is likely noise or distortion.

The Symbol Technologies patent describes how this principle can be applied to the first derivative of the bar code signal: 'an automatic deblurring signal processor is proposed wherein a first derivative of an input bar code signal is compared against a threshold range and, if no match is found, then parameters of the processor system are varied to increase the likelihood of a comparison being successful' .

Chapter 3: The Matched Filter for Registration Mark Detection

A more detailed example of matched filtering in an optical reading context is provided in a patent for detecting registration marks . The system uses a sensor to read a binary code sequence, a shift register to store the detected sequence, and a code matching filter to compare the detected sequence to a reference code.

The code matching filter works by comparing each bit received from the shift register with a corresponding bit of the reference code. For each matching pair, the filter increments the detection signal. For each non-matching pair, it decrements the detection signal .

This approach provides better discrimination than simply counting matches. As the patent explains, 'by decrementing the detection signal for each non-matching pair of compared bits, the amplitude of the detection signal is reduced as compared to the prior art when the detected bit sequence does not match the reference code' .

The patent also notes that the code sequence can be a Barker code, which has a mathematical auto-correlation function with a sharp peak and low sidelobes. Barker codes are used in radar for improved range detection accuracy, and they are also applicable to optical code reading .

Chapter 4: Edge Strength Detection in Digitizers

A key challenge in barcode decoding is distinguishing valid edges from noise. Traditional digitizers produce a single-bit output---an edge is either present or absent. This provides no information about the strength of the edge, making it difficult to differentiate between a true edge and noise.

The Symbol Technologies patent describes a 'multi-bit digitizer' that detects the presence of edges and also measures their strength. The digitizer produces a timing signal with pulses corresponding to detected edges, and 'the width of each timing pulse represents the strength of the edge' .

This edge strength information is then used in the decoding process. As the patent explains, 'the decoder can try different noise thresholds for the same scan data stream by adaptably adding or removing edges based on their strengths' .

The matched filter can be used to determine the edge strength. By correlating the signal with an edge template, the decoder can obtain a quantitative measure of how well the signal matches the expected edge shape. This measure can then be used to decide whether the edge is valid.

Chapter 5: Symbol-Based Decoding with Matched Filters

A more recent approach to barcode decoding uses symbol-based algorithms that directly incorporate the symbology of the bar code into the reconstruction process. This approach treats the unknown as a finite-dimensional code and uses a model that relates the code to the measured signal .

The mathematical model represents the bar code as a sequence of binary coefficients, where each coefficient corresponds to a unit-width bar or space. The measured signal is the convolution of this binary sequence with a Gaussian blur kernel, representing the finite spot size of the laser .

The decoding problem is then formulated as finding the binary sequence that best matches the measured signal. This is done by searching for a sparse representation of the bar code with respect to a dictionary of known symbology patterns .

The paper notes that 'we propose a greedy reconstruction algorithm and provide robust reconstruction guarantees. Numerical examples illustrate the insensitivity of our symbology-based reconstruction to both imprecise model parameters and noise on the scanned measurements' .

Chapter 6: Correlation for Sub-Pixel Alignment

In imaging-based barcode readers, multiple scan lines are often used to improve resolution. The scan lines are slightly shifted relative to each other due to the discrete sampling of the image sensor. Correlation can be used to align these scan lines to sub-pixel accuracy .

The patent describes a method where multiple parallel scan lines are selected from a barcode image. The scan lines are then expanded by interpolation to create sub-pixel data points. The cross-correlation function is determined for each scan line relative to a reference line, and the delay corresponding to the maximum cross-correlation is used to shift the lines into alignment .

This approach allows the decoder to reconstruct a higher-resolution signal from multiple under-sampled scan lines. The patent explains that 'the cross-correlation function allows one to determine the similarity between the two waveforms in a statistical sense. In this specific case evaluating the cross-correlation function for two under sampled waveforms allows the two waveforms to be optimally aligned, to a fraction of the sampling interval' .

The aligned scan lines can then be combined to produce a reconstituted scan line with sub-pixel spatial resolution. This improves the detection of narrow barcode elements that would otherwise be missed due to insufficient sampling .

Chapter 7: Super-Resolution and Matched Filtering

The combination of super-resolution techniques and matched filtering can further improve the decoding of barcodes from low-resolution images. Super-resolution methods enhance the image resolution by combining information from multiple frames or using interpolation techniques .

A computer vision-based barcode reading system uses B-Spline smoothing and super-resolution techniques to improve image quality, and then deciphers barcode data via match filtering . The matched filter is used to detect the barcode pattern in the enhanced image.

The super-resolution process increases the resolution of the image, making the narrow barcode elements more distinguishable. The matched filter then detects the edges of the barcode elements in the enhanced image, providing more accurate measurements.

The combination of these techniques is particularly useful for reading barcodes from low-resolution images captured by mobile phone cameras or other low-cost imaging devices.

Chapter 8: The Enhancement Filter for Pulse Shaping

The Symbol Technologies patent describes an enhancement filter that modifies the pulses produced by a differentiator circuit used in the scanner. The filter is designed to improve the quality of the signal before digitization .

The enhancement filter modifies the pulses by 'increasing the rise time, and peak level of, the pulses produced by the differentiator circuit.' This makes the edges sharper and more distinct, improving the performance of the digitizer .

The enhancement filter is particularly useful for signals that are blurred due to the finite spot size of the laser. The filter compensates for the blurring by boosting the high-frequency components of the signal.

The patent explains that 'an automatic deblurring signal processor is proposed wherein a first derivative of an input bar code signal is compared against a threshold range and, if no match is found, then parameters of the processor system are varied to increase the likelihood of a comparison being successful' .

Chapter 9: The Digitizer and the Matched Filter in the Signal Chain

In the signal chain of a barcode reader, the matched filter can be placed at different points. It can be implemented in analog hardware, as part of the digitizer, or in digital software after the analog-to-digital conversion.

The Symbol Technologies patent describes a digitizer that includes a 'timing generation circuit for producing a pulse in response to each one of the detections with a time duration representative of the degree of reflectivity of the indicia as the beam of light.' A decoder then 'converts the time duration of the pulse into the digital word having a plurality of bits' .

The matched filter can be integrated into this digitizer. The filter processes the analog signal to enhance the edges, and the digitizer then produces the multi-bit output that includes the edge strength information.

The patent also describes a 'non-linear edge strength digitizer' that is 'capable of decoding both poorly printed and high density bar codes.' This digitizer uses the matched filter concept to detect edges and measure their strength .

Chapter 10: The Datalogic Approach to Code Detection

Datalogic developed a method for detecting bar codes on a scan line that uses a combination of local peak detection, zone analysis, and code validation. This method is based on digital processing of signals from an analog-to-digital converter .

The method includes the following steps: determining local maxima and minima of the digitized analog signal; determining valid transitions; calculating the side of constant brightness zones located between two successive valid transitions; determining likely codes; and, if appropriate, repositioning the code starting zone .

The method is designed to process the signal in real time and determine which portions of the signal contain a likely bar code and which portions surely do not contain a code. Only the former are signaled to the subsequent decoding process .

This approach is complementary to matched filtering. While the matched filter enhances the signal and detects edges, the Datalogic method validates the detected edges by checking them against the known structure of a bar code symbol .

Chapter 11: Correlation and Stitching Techniques

In systems where a complete barcode label cannot be read in a single scan, correlation and stitching techniques can be used to assemble complete label information from partial scans . These techniques are particularly useful for reading damaged or misaligned labels.

The patent describes how 'correlation may require the same characters to be identified a fixed number of times in the same position before acceptance.' Alternatively, 'quality and confidence measures may be implemented to determine the number of times a particular character must be decoded before being accepted' .

The correlation techniques can be combined with stitching techniques to 'enhance decodability and efficiency of assembling complete label information' .

The matched filter can be used to improve the correlation process. By providing a quantitative measure of edge strength, the matched filter can help the correlation algorithm determine which characters are reliable and which should be rejected.

Chapter 12: Academic Research on Symbol-Based Decoding

Academic research has explored the mathematical foundations of symbol-based barcode decoding. This research formulates the decoding problem as the deconvolution of a binary one-dimensional image involving unknown parameters in the blurring kernel .

The mathematical model treats the bar code as a binary sequence of coefficients, with each coefficient representing a unit-width bar or space. The measured signal is the convolution of this binary sequence with a Gaussian blur kernel, representing the finite spot size of the laser .

The decoding problem is then to recover the binary sequence from the measured signal. This is done by exploiting the symbology of the bar code---the language that defines the relationships between bars and spaces in a given symbology .

The paper notes that 'by exploiting the symbology... a bar code can be identified with a sparse representation in the symbology dictionary. We develop a recovery algorithm that fits the observed signal to a code from the symbology in a greedy fashion, iterating in one pass from left to right' .

Chapter 13: Robustness to Noise and Blur

A key advantage of symbol-based decoding with matched filters is its robustness to noise and blur. The algorithm is designed to tolerate a significant level of both noise and blur .

The academic paper proves that 'the algorithm can tolerate a significant level of blur and noise. We also verify insensitivity of the reconstruction to imprecise parameter estimation of the blurring function' .

This robustness is achieved by using the symbology of the bar code to constrain the solution. The search space is limited to valid bar code patterns, so the algorithm is less likely to be fooled by noise.

The paper also notes that the approach does not require an accurate estimate of the blurring function. The algorithm is insensitive to imprecise parameter estimation, making it practical for real-world applications .

Chapter 14: The Relationship to Previous Work

The symbol-based approach to barcode decoding differs from previous image-based approaches. Earlier work treated the decoding problem as one of binary image reconstruction, attempting to recover the bar code image from the blurred and noisy signal .

The symbol-based approach instead incorporates the symbology of the bar code into the reconstruction algorithm directly. This reduces the degrees of freedom in the problem, allowing for accurate reconstruction that is robust to noise and unknown parameters .

The paper notes that 'we were unable to find any previous symbol-based methods for bar code decoding in the open literature' . This suggests that the approach is relatively new.

A related approach uses a genetic algorithm to represent populations of candidate barcodes together with likely blurring and illumination parameters from the observed image data. Successive generations of candidate solutions are then spawned from those best matching the input data until a stopping criterion is met .

Chapter 15: Super-Resolution Enhancement

The super-resolution enhancement technique described in the computer vision paper uses interpolation and filtering to improve the resolution of barcode images . This is particularly useful for reading barcodes from low-resolution images.

The super-resolution process includes B-Spline smoothing, estimation of peak locations, super-resolution enhancement, and match filtering . The matched filter is the final step, detecting the barcode pattern in the enhanced image.

The B-Spline smoothing reduces noise and provides a smooth representation of the signal. The peak location estimation identifies the positions of the bars and spaces. The super-resolution enhancement increases the resolution, and the matched filter detects the barcode pattern .

This multi-step approach is effective for reading barcodes from images captured by cameras with limited resolution, such as mobile phone cameras.

Chapter 16: Applications in Manufacturing and Logistics

Matched filtering techniques for barcode reading have applications beyond retail checkouts. They are also used in manufacturing and logistics for tracking products and components.

The patent on registration mark detection describes an application in the manufacturing of disposable absorbent articles, such as diapers, training pants, and feminine care products . A registration mark representing a binary code sequence is applied to a component, and the matched filter detects the mark to ensure proper alignment during manufacturing .

The Datalogic patent describes applications in plants for handling and sorting objects, where objects are automatically identified by decoding bar codes carried on the objects themselves .

These applications require robust decoding in challenging conditions, including high noise, low contrast, and high speed. Matched filtering provides the signal enhancement needed for reliable decoding in these conditions.

Chapter 17: The Future of Matched Filtering in Barcode Decoding

The future of matched filtering in barcode decoding is likely to involve greater integration with digital signal processing and machine learning. As processors become more powerful, more sophisticated algorithms can be implemented in real time.

The symbol-based approach described in the academic paper represents a step in this direction. By incorporating the symbology of the bar code into the decoding algorithm, the approach achieves robust reconstruction with less dependence on accurate parameter estimation .

The use of machine learning for parameter estimation and pattern recognition is another promising direction. Neural networks can learn to estimate the blurring function and detect the barcode pattern, providing even more robust decoding.

The integration of matched filtering with other techniques, such as super-resolution and correlation-based alignment, will continue to improve the performance of barcode readers in challenging conditions.

Chapter 18: Summary --- Matched Filtering in Perspective

Matched filtering is a powerful signal processing technique that enhances the detection of barcode edges and transitions in the presence of noise and distortion. By correlating the received signal with a known template, the matched filter provides a robust indication of edge locations and strengths.

We have examined how different companies, researchers, and technologies have approached the challenges of matched filtering for barcode decoding:

Symbol Technologies developed a multi-bit digitizer with edge strength detection, and an enhancement filter that modifies pulses from a differentiator to improve signal quality. The digitizer produces a pulse width coded output where the width of each pulse represents the strength of the detected edge .

Datalogic developed a method for detecting bar codes on a scan line that uses local peak detection and zone analysis to identify likely code candidates .

A registration mark detection patent describes a matched filter system that uses a code matching filter to compare detected bit sequences to a reference code, incrementing for matches and decrementing for mismatches .

Academic research explores symbol-based decoding with sparse representation and greedy reconstruction algorithms that are robust to noise and blur. The approach incorporates the symbology of the bar code directly into the reconstruction algorithm .

Imaging-based decoding uses correlation for sub-pixel alignment of multiple scan lines, and super-resolution techniques combined with matched filtering to enhance low-resolution images .

The key lessons from our exploration are:

Correlation provides robust edge detection. By correlating the received signal with a known template, the matched filter provides a peak when the template matches the signal, indicating the presence of a valid edge.

Edge strength improves decoding. Multi-bit digitizers that measure edge strength allow the decoder to adaptively apply different noise thresholds, improving robustness .

Symbology-based algorithms are more robust. By incorporating the symbology of the bar code directly into the reconstruction algorithm, the solution space is constrained, reducing the impact of noise .

Sub-pixel alignment improves resolution. Correlation of multiple scan lines allows sub-pixel alignment, improving the detection of narrow elements .

Super-resolution enhances low-resolution images. Combining super-resolution with matched filtering improves the decoding of barcodes from low-quality images .

In the end, matched filtering is a testament to the power of signal processing in barcode reading. It transforms a corrupted, noisy signal into a reliable detection of edges and transitions, enabling the decoder to extract the barcode information accurately. The art of matched filtering lies in the careful design of the template, the selection of the correlation metric, and the integration with the rest of the signal chain, creating a system that is robust to the imperfections of the real world.

 

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:

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

Example: Print barcodes to 5663 label

Example: Print barcodes to 5664 label

Example: Print portrait orientation 5664

Example: Print barcodes to 5873 label

Example: Print barcodes to 5874 label

Two ways to import Excel data

Import Excel Data - Pro Edition

Import Excel Data - Std Edition

Import Data from Excel - Detail

Load Data From Excel File

Data Editing Table

Copy Data From Excel

Four ways to input barcode data

Add ASCII Key E

Input Multiple Lines of Text for Barcodes

Generates Sequential Serial Numbers

Import or copy data from Excel sheets

Special sequence number generation

Std Details: Simple Input Form

Std Details: Multiple Line Text Input

Details: Sequence Barcode Generator

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