A barcode decoding system and method are disclosed that use a data-driven classifier for transforming a potentially degraded barcode signal into a digit sequence. The disclosed implementations are robust to signal degradation through incorporation of a noise model into the classifier construction phase. The run-time computational cost is low, allowing for efficient implementations on portable devices.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method of recognizing a barcode, comprising: converting a barcode image into an electronic representation; extracting symbol feature vectors from the electronic representation to form a symbol feature vector sequence; and mapping the symbol feature vector sequence into a digit sequence, the mapping including using a classifier trained in a supervised manner from a dataset of simulated noisy symbol feature vectors with a known target class.
Barcode recognition systems often struggle with accurately decoding barcodes in low-quality or noisy images, leading to recognition failures. This invention addresses this problem by improving the robustness of barcode recognition through a machine learning-based approach. The method involves capturing an image of a barcode and converting it into an electronic representation, such as a digital image or pixel data. From this representation, symbol feature vectors are extracted, which represent key characteristics of the barcode symbols (e.g., bar widths, spacings, or patterns). These feature vectors are processed sequentially to form a symbol feature vector sequence, which is then mapped into a digit sequence (e.g., the decoded barcode number) using a classifier. The classifier is trained in a supervised manner using a dataset of simulated noisy symbol feature vectors, where each vector is paired with its known target class (e.g., the correct digit it represents). This training process enables the classifier to generalize well to real-world noisy barcode images, improving recognition accuracy. The method may also include preprocessing steps to enhance image quality before feature extraction and post-processing to refine the decoded output.
2. The method of claim 1 , further comprising: generating a one dimensional intensity profile image from a vertical integration of pixel values in a band cutting through the barcode image.
A method for processing barcode images involves generating a one-dimensional intensity profile from a vertical integration of pixel values in a specific band of the barcode image. This technique is used in optical scanning systems where barcodes are captured as two-dimensional images, but the data is encoded in a linear pattern. The method addresses challenges in accurately extracting barcode information when the image contains noise, distortions, or misalignments. By vertically integrating pixel values across a selected band, the system creates a simplified intensity profile that enhances the visibility of the barcode's dark and light bars. This profile can then be analyzed to decode the barcode data more reliably. The method may also include preprocessing steps to improve image quality, such as filtering or contrast enhancement, before generating the intensity profile. The vertical integration helps mitigate issues caused by skewed or rotated barcode images, ensuring robust decoding even under suboptimal scanning conditions. This approach is particularly useful in applications where barcodes are scanned at varying angles or distances, such as in automated retail systems or logistics tracking.
3. The method of claim 2 , further comprising: prior to generating the intensity profile, converting the pixel values from a first color space to a second color space using a color space mapping.
Before analyzing the image to determine brightness, the method converts the image's colors from one format to another, like changing from RGB to grayscale.
4. The method of claim 2 , extracting symbol feature vectors from the electronic representation, further comprises: cropping left and right edges of the intensity profile; identifying positions and values of extrema of the intensity profile; filtering extrema to remove extraneous detections; calculating locations of edges of the intensity profile using filtered extrema; performing edge consistency checking; and sequentially converting consecutive local edge location measurements into a linear sequence of N symbol feature vectors.
The invention relates to a method for extracting symbol feature vectors from an electronic representation of a symbol, such as a character or glyph, to improve recognition accuracy in optical character recognition (OCR) or other pattern recognition systems. The problem addressed is the variability in symbol representations due to noise, distortion, or imperfect imaging, which can lead to errors in feature extraction and subsequent recognition. The method involves processing an intensity profile derived from the electronic representation. First, the left and right edges of the intensity profile are cropped to isolate the relevant symbol region. Next, the positions and values of extrema (local maxima and minima) in the intensity profile are identified. These extrema are then filtered to remove extraneous detections, which may arise from noise or irrelevant features. The filtered extrema are used to calculate the locations of edges within the intensity profile, ensuring accurate boundary detection. An edge consistency check is performed to verify the reliability of the detected edges, eliminating inconsistencies that could affect feature extraction. Finally, consecutive local edge location measurements are sequentially converted into a linear sequence of N symbol feature vectors, where each vector represents a distinct feature of the symbol. This structured representation enhances the robustness of subsequent recognition algorithms by providing a standardized and noise-resistant feature set. The method ensures that even distorted or partially occluded symbols can be accurately processed for recognition.
5. The method of claim 4 , where cropping left and right edges of the intensity profile further comprises: detecting barcode endpoints using a differential spatial signal variance ratio (DSSVR) metric.
The invention relates to barcode detection and decoding, specifically improving the accuracy of identifying barcode endpoints in an intensity profile. The problem addressed is the difficulty in precisely locating barcode edges due to noise, distortions, or varying contrast, which can lead to decoding errors. The solution involves a method for processing an intensity profile of a barcode image to enhance endpoint detection. The method first generates an intensity profile from the barcode image, representing pixel values along a scanning line. To refine the profile, the left and right edges are cropped to exclude irrelevant data. The key innovation is the use of a differential spatial signal variance ratio (DSSVR) metric to detect barcode endpoints. The DSSVR metric analyzes spatial variations in the intensity profile, comparing local signal variance to global variance to identify significant transitions that correspond to barcode edges. This approach improves robustness against noise and distortions by focusing on variance ratios rather than absolute intensity thresholds. The method may also include preprocessing steps such as filtering or normalization to enhance the intensity profile before applying the DSSVR metric. The detected endpoints are then used to define the barcode region for further decoding. This technique ensures more reliable endpoint detection, reducing errors in barcode reading systems.
6. The method of claim 4 , where identifying positions and values of extrema of the intensity profile further comprises: applying a linear search over a sliding window to the cropped intensity profile to find local extrema; or applying slope filtering to the cropped intensity profile to determine when a slope of the intensity profile undergoes a polarity change.
This method finds the brightest and darkest points in a part of an image by either sliding a window across it and looking for the highest and lowest values, or by tracking when the image's brightness starts going up or down.
7. The method of claim 4 , where identifying positions and values of extrema of the intensity profile further comprises: applying a linear de-trending operation to the cropped intensity profile; and applying signal amplitude normalization to the cropped and d-trended intensity profile.
This invention relates to signal processing techniques for analyzing intensity profiles, particularly in applications where accurate detection of extrema (peaks and troughs) is critical, such as in spectroscopy, imaging, or sensor data analysis. The problem addressed is the presence of noise, baseline drift, and varying signal amplitudes, which can obscure true extrema in the intensity profile, leading to inaccurate measurements or interpretations. The method involves preprocessing an intensity profile to enhance the visibility and reliability of extrema. First, the intensity profile is cropped to isolate the region of interest. A linear de-trending operation is then applied to remove baseline drift or low-frequency noise, ensuring that the profile is centered around a stable baseline. This step corrects for systematic variations that could otherwise distort the extrema. Next, signal amplitude normalization is performed on the cropped and de-trended profile to standardize the amplitude range, making extrema detection more consistent and less sensitive to variations in signal strength. These preprocessing steps improve the accuracy of subsequent extrema identification, enabling more reliable analysis of the underlying data. The technique is particularly useful in fields where precise detection of peaks and troughs is essential for quantitative or qualitative assessment.
8. The method of claim 6 , where filtering extrema to remove extraneous detections further comprises: detecting and removing invalid extrema; and coalescing multiples of local extrema.
The method refines detected extreme points (like peaks and valleys) by getting rid of false detections and grouping together multiple detections that are very close to each other.
9. The method of claim 8 , where detecting invalid extrema further comprises: applying an adaptive threshold based comparator or an alpha-trimmed outlier detector to the cropped intensity profile.
This method identifies potentially incorrect high or low points in an image by comparing brightness levels to a flexible, adjusted standard or by spotting brightness values that are far from the norm.
10. The method of claim 9 , calculating locations of edges of intensity profile using filtered extrema further comprises: calculating edge locations using a linear interpolation of pixel x-coordinates of two intensity profile samples that straddle a mid-value between consecutive maxima and minima extrema.
This invention relates to image processing, specifically to edge detection in intensity profiles. The problem addressed is accurately determining edge locations in digital images where edges are defined by transitions between intensity maxima and minima. Existing methods may suffer from inaccuracies due to noise or discrete pixel sampling, leading to imprecise edge localization. The method improves edge detection by refining the calculation of edge locations using filtered extrema. First, an intensity profile is generated from the image, representing pixel intensities along a line or region. The profile is then filtered to identify significant maxima and minima, which correspond to potential edges. To enhance precision, the method calculates edge locations by interpolating between the pixel coordinates of two intensity samples that bracket a mid-value between consecutive extrema. This mid-value is the average of the intensity values of the maxima and minima. Linear interpolation is applied to the x-coordinates of these two samples, providing a more accurate edge position than discrete pixel sampling alone. This approach reduces errors caused by pixel discretization and noise, improving the reliability of edge detection in applications such as object recognition, medical imaging, and computer vision.
11. The method of claim 10 , calculating locations of edges of intensity profile using filtered extrema further comprises: calculating edge locations using a linear interpolation of pixel x-coordinates of two intensity profile samples that straddle a mid-value between consecutive maxima and minima extrema.
This invention relates to image processing, specifically to edge detection in intensity profiles. The problem addressed is accurately determining edge locations in an image by analyzing intensity variations, particularly when dealing with noisy or low-resolution data. Traditional edge detection methods often struggle with precision due to interpolation errors or sensitivity to noise. The method involves analyzing an intensity profile derived from an image, where the profile represents pixel intensity values along a scan line. The process begins by identifying local maxima and minima in the intensity profile, which correspond to significant changes in brightness. These extrema are then filtered to remove noise and irrelevant fluctuations. To precisely locate edges, the method calculates edge positions by interpolating between the pixel coordinates of two intensity samples that bracket a mid-value between consecutive maxima and minima. This linear interpolation improves accuracy by refining edge positions to sub-pixel resolution, reducing errors caused by discrete pixel sampling. The technique is particularly useful in applications requiring high-precision edge detection, such as medical imaging, industrial inspection, and autonomous navigation, where accurate boundary detection is critical. By combining extrema filtering with linear interpolation, the method enhances edge localization while maintaining robustness against noise.
12. The method of claim 4 , where performing edge consistency checking further comprises: comparing a number of negative and positive edges of the intensity profile with an expected number of negative and positive edges for a given barcode type; and determining if the edges form a correctly interleaved set.
A method for verifying barcode integrity through edge consistency checking involves analyzing the intensity profile of a scanned barcode to ensure its structural correctness. The process compares the number of detected positive and negative edges in the intensity profile against the expected count for a specific barcode type. This comparison helps identify deviations that may indicate scanning errors or barcode damage. Additionally, the method checks whether the detected edges form a correctly interleaved set, meaning that positive and negative edges alternate as expected in a valid barcode pattern. This verification step ensures that the barcode's structure adheres to its predefined specifications, improving reliability in automated scanning systems. The technique is particularly useful in applications where barcode accuracy is critical, such as inventory management, logistics, and automated retail systems. By validating edge consistency, the method reduces false positives and enhances the overall robustness of barcode recognition processes.
13. The method of claim 4 , where sequentially converting consecutive local edge location measurements into a linear sequence of N symbol feature vectors further comprises: converting the consecutive local edge location measurements into parameters that encode distances between key fiducial landmarks in the barcode image.
A method for processing barcode images involves extracting and encoding key fiducial landmarks to improve barcode recognition. The technique addresses challenges in accurately decoding barcodes by focusing on the spatial relationships between distinct landmarks within the barcode structure. The method first captures consecutive local edge location measurements from the barcode image, which represent the positions of edges or transitions between dark and light regions. These measurements are then converted into a linear sequence of N symbol feature vectors, where each vector encodes the distances between predefined fiducial landmarks. These landmarks are critical reference points within the barcode, such as corners, centers, or other distinctive features, that help define the barcode's geometry. By quantifying the distances between these landmarks, the method generates a structured representation of the barcode's spatial layout, which can be used for robust decoding even in the presence of noise, distortion, or partial occlusion. This approach enhances the reliability of barcode recognition systems by leveraging geometric relationships rather than relying solely on pixel-level data.
14. The method of claim 1 , where the simulated noisy symbol feature vectors are given by {right arrow over ({tilde over (s)} i ={right arrow over (s)} i +{right arrow over (n)} i where {right arrow over (s)} i are the symbol feature vectors and {right arrow over (n)} i is a corrupting noise-like random variable and i=0, 1, . . . , N−1, and where N is a positive integer equal to the total number of simulated noisy symbol feature vectors.
This invention relates to signal processing, specifically methods for generating simulated noisy symbol feature vectors in communication systems or machine learning applications. The problem addressed is the need to create realistic noisy data for training or testing systems that must operate under real-world conditions where signals are corrupted by noise. The method involves generating noisy versions of clean symbol feature vectors by adding random noise. Each clean symbol feature vector, represented as a vector, is combined with a noise-like random variable to produce a noisy version. The noise is added independently for each of the N vectors, where N is the total number of simulated noisy vectors. The clean vectors and noise terms are both represented as vectors, and the addition is performed element-wise. This process simulates the effects of real-world noise on transmitted or sensed signals, allowing systems to be trained or evaluated under realistic conditions. The noise can be modeled to match specific statistical properties, such as Gaussian noise, to better replicate real-world scenarios. This approach is useful in applications like wireless communications, speech recognition, or any system where noise resilience is critical.
15. The method of claim 14 , where the simulated noisy symbol feature vectors are given by {right arrow over ({tilde over (s)} i =[{tilde over (L)} i , {tilde over (x)} i,0 , {tilde over (x)} i,1 , {tilde over (x)} i,2 , {tilde over (x)} i,3 ] and i=0, 1, . . . , N−1, {tilde over (L)} i is a noisy symbol length measure from the leading edge of a first bar of a symbol in the barcode image to a corresponding leading edge of a first bar of a next adjacent symbol, {tilde over (x)} 0 is a noisy width of a second dark bar of the symbol, {tilde over (x)} 1 is a noisy width of a first dark bar of the symbol, {tilde over (x)} 2 is a noisy distance between trailing edges of the first and second dark bars, and {tilde over (x)} 3 is a noisy distance between leading edges of the first and second dark bars.
The invention relates to barcode decoding, specifically improving robustness in noisy environments. Barcode scanning often faces challenges due to image noise, which distorts symbol features and reduces decoding accuracy. The method addresses this by generating simulated noisy symbol feature vectors to train or test a decoder. Each vector represents a barcode symbol with multiple noisy measurements. The vector includes a noisy length measure between adjacent symbols, the width of a second dark bar, the width of a first dark bar, the distance between trailing edges of these bars, and the distance between their leading edges. These noisy features simulate real-world scanning conditions, allowing the decoder to better handle distortions. The approach enhances barcode recognition reliability in low-quality images by incorporating variability in symbol measurements during training or evaluation. This method is particularly useful in applications where barcodes are scanned under suboptimal conditions, such as poor lighting or motion blur.
16. The method claim 15 , where the noisy symbol feature vectors {right arrow over (s)} i are transformed into scale invariant noisy symbol feature vectors by normalizing each component of each vector by {tilde over (L)} i .
The invention relates to processing noisy symbol feature vectors in a machine learning or signal processing system. The problem addressed is the variability in scale across different noisy symbol feature vectors, which can degrade the performance of algorithms that rely on consistent feature representations. The solution involves transforming these vectors into scale-invariant representations to improve robustness. The method processes a set of noisy symbol feature vectors, each representing a symbol or data point with noise. Each vector is normalized by a scaling factor derived from the vector itself, ensuring that all components of the vector are adjusted to a consistent scale. This normalization step removes the variability in magnitude across different vectors, making the features more comparable and improving the performance of subsequent processing steps, such as classification, clustering, or pattern recognition. The scaling factor is computed based on the properties of each individual vector, ensuring that the normalization is adaptive and tailored to the specific characteristics of the data. This approach enhances the reliability of the feature vectors in noisy environments, where variations in scale can otherwise introduce errors. The resulting scale-invariant vectors are then used in further analysis or machine learning tasks, leading to more accurate and consistent results.
17. The method claim 16 , where the classifier is a multi-layer neural network that uses hyperbolic tangent nonlinearities in an input layer and a hidden layer, and a one-hot encoded soft-max sigmoid output layer.
This invention relates to a machine learning system for classification tasks, specifically using a multi-layer neural network with a defined architecture. The system addresses the challenge of accurately classifying input data by employing a neural network with specific nonlinear activation functions and an output layer designed for multi-class classification. The neural network includes an input layer, a hidden layer, and an output layer. The input and hidden layers use hyperbolic tangent (tanh) nonlinearities, which help the network model complex relationships in the data by introducing nonlinear transformations. The output layer is a one-hot encoded soft-max sigmoid layer, which converts the network's final activations into probability distributions over multiple classes, enabling effective multi-class classification. This architecture ensures that the network can handle diverse input data while providing clear, interpretable outputs for classification tasks. The system is particularly useful in applications requiring high accuracy and robustness in classification, such as image recognition, natural language processing, and other pattern recognition tasks.
18. The method claim 17 , where the multi-layer neural network has 4 input units and 20 output units, and real valued outputs of each of the 20 output units are posterior probabilities of a known class conditioned on an input symbol feature vector.
A neural network system is used for classifying input data into one of multiple predefined classes. The system employs a multi-layer neural network with four input units and twenty output units. The input units receive a feature vector representing an input symbol, while the output units generate real-valued outputs. Each output corresponds to a posterior probability, representing the likelihood that the input symbol belongs to a specific class, given the input feature vector. The neural network is trained to produce these probabilities, enabling accurate classification of the input data into one of the twenty possible classes. The system is particularly useful in applications requiring probabilistic classification, such as pattern recognition, machine learning, and automated decision-making processes. The architecture ensures efficient processing of input features and reliable output probabilities for classification tasks.
19. The method claim 17 , where the classifier is trained in a supervised fashion using a regularized scaled conjugate gradient.
A method for training a machine learning classifier involves using a supervised learning approach with a regularized scaled conjugate gradient optimization technique. The classifier is designed to process input data and generate output predictions based on learned patterns. The supervised training process involves providing labeled training data, where the correct outputs are known, to guide the learning process. The scaled conjugate gradient method is an optimization algorithm used to minimize the error between the classifier's predictions and the true labels. Regularization is applied to prevent overfitting, ensuring the classifier generalizes well to unseen data. The method may include preprocessing steps to prepare the input data, such as normalization or feature extraction, and post-processing steps to refine the output predictions. The trained classifier can then be deployed to make predictions on new, unlabeled data. This approach is particularly useful in applications where accurate and efficient classification is required, such as image recognition, natural language processing, or medical diagnosis. The use of regularization helps maintain model robustness, while the scaled conjugate gradient method ensures efficient convergence during training.
20. The method of claim 17 , further comprising: computing a confidence score for a complete decoding of the barcode image by averaging a maximum per-symbol output probability for the sequence of symbol feature vectors, and comparing the confidence score against a gating threshold to determine the quality of the decoding of the barcode image.
Barcode decoding systems often struggle with accurately interpreting damaged or low-quality barcode images, leading to errors in data extraction. This invention addresses this problem by enhancing the decoding process with a confidence scoring mechanism. The method involves analyzing a barcode image to extract a sequence of symbol feature vectors, which represent individual symbols within the barcode. Each symbol feature vector is processed to generate output probabilities for possible symbol interpretations. The system then computes a confidence score for the complete barcode decoding by averaging the highest (maximum) output probability for each symbol in the sequence. This confidence score is compared against a predefined gating threshold to assess the quality of the decoding. If the score meets or exceeds the threshold, the decoding is deemed reliable; otherwise, it may be flagged for further processing or rejection. This approach improves accuracy by quantifying the certainty of the decoded result, reducing errors in applications where barcode integrity is critical, such as inventory management, logistics, and automated checkout systems. The method can be integrated into existing barcode scanning software or hardware to enhance performance without requiring significant hardware modifications.
21. A system for recognizing a barcode, comprising: one or more processors; memory coupled to the one or more processors and storing instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: converting a barcode image into an electronic representation; extracting symbol feature vectors from the electronic representation to form a symbol feature vector sequence; and mapping the symbol feature vector sequence into a digit sequence, the mapping including using a classifier trained in a supervised manner from a dataset of simulated noisy symbol feature vectors with a known target class.
Barcode recognition systems are used to decode visual barcode patterns into machine-readable digit sequences. Traditional methods often struggle with noisy or distorted barcode images, leading to recognition errors. This invention addresses the problem by using a supervised machine learning approach to improve accuracy in challenging conditions. The system includes one or more processors and memory storing instructions for barcode recognition. The process begins by converting a captured barcode image into an electronic representation. Symbol feature vectors are then extracted from this representation, forming a sequence of features that describe the barcode's structure. These feature vectors are mapped into a digit sequence using a classifier trained on a dataset of simulated noisy symbol feature vectors. The classifier is trained in a supervised manner, meaning it learns from labeled examples where the correct digit sequence is known. This approach enhances robustness by accounting for variations in image quality, distortion, or noise. The system improves upon prior art by leveraging machine learning to handle noisy inputs, reducing recognition errors in real-world scenarios where barcodes may be partially obscured, damaged, or captured under suboptimal conditions. The use of simulated noisy data during training ensures the classifier generalizes well to real-world variations.
22. The system of claim 21 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: generating a one dimensional intensity profile image from a vertical integration of pixel values in a band cutting through the barcode image.
The invention relates to barcode image processing systems designed to improve barcode reading accuracy. The system addresses the challenge of accurately decoding barcodes from images where the barcode may be distorted, partially obscured, or captured at an angle. The system includes a memory and one or more processors configured to process barcode images. The memory stores instructions that, when executed by the processors, enable the system to generate a one-dimensional intensity profile image. This profile is derived by vertically integrating pixel values along a selected band that cuts through the barcode image. The vertical integration process aggregates pixel intensities across the height of the barcode, producing a simplified intensity profile that enhances the visibility of barcode patterns. This technique helps mitigate distortions caused by perspective, blur, or partial occlusion, making it easier to extract and decode the barcode data. The system may also include additional components, such as an image capture device and a display, to facilitate barcode scanning and user interaction. The overall goal is to improve the reliability of barcode reading in real-world scenarios where image quality may be suboptimal.
23. The system of claim 22 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: prior to generating the intensity profile, converting the pixel values from a first color space to a second color space using a color space mapping.
The invention relates to image processing systems designed to enhance image quality by adjusting pixel intensity profiles. The system addresses the challenge of optimizing image appearance by transforming pixel values between different color spaces to improve visual fidelity or processing efficiency. The system includes one or more processors and memory storing instructions that, when executed, perform operations to convert pixel values from a first color space to a second color space using a color space mapping. This conversion occurs before generating an intensity profile, which likely involves further adjustments to pixel intensities for tasks such as tone mapping, dynamic range compression, or contrast enhancement. The color space conversion ensures that subsequent intensity adjustments are performed in an optimal color space, improving accuracy and visual quality. The system may also include components for capturing or receiving images, applying the intensity profile, and outputting the processed image. The invention is particularly useful in digital imaging, computer vision, and display technologies where precise color and intensity control are critical.
24. The system of claim 22 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: cropping left and right edges of the intensity profile; identifying positions and values of extrema of the intensity profile; filtering extrema to remove extraneous detections; calculating locations of edges of intensity profile using filtered extrema; performing edge consistency checking; and sequentially converting consecutive local edge location measurements into a linear sequence of N symbol feature vectors.
This invention relates to a system for processing intensity profiles, particularly for extracting and refining edge features from such profiles. The system addresses the challenge of accurately identifying and analyzing edges in intensity data, which is common in applications like image processing, sensor data analysis, and signal interpretation. The system includes one or more processors and memory storing instructions that, when executed, perform a series of operations to process an intensity profile. First, the system crops the left and right edges of the intensity profile to focus on the relevant data. Next, it identifies the positions and values of extrema (local maxima and minima) within the profile. To ensure accuracy, the system filters these extrema to remove extraneous detections, which may arise from noise or irrelevant variations. The filtered extrema are then used to calculate the precise locations of edges within the intensity profile. An edge consistency check is performed to validate the detected edges, ensuring they meet predefined criteria. Finally, the system converts consecutive local edge location measurements into a linear sequence of N symbol feature vectors, enabling further analysis or machine learning applications. This process enhances the reliability and usability of edge detection in intensity profiles, improving downstream tasks such as object recognition, pattern matching, or signal interpretation.
25. The system of claim 24 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: detecting barcode endpoints using a differential spatial signal variance ratio (DSSVR) metric.
The system relates to barcode detection in digital images, addressing challenges in accurately identifying barcode endpoints, which is critical for reliable barcode scanning and decoding. The system includes a processor and memory storing instructions that, when executed, enable the processor to detect barcode endpoints using a differential spatial signal variance ratio (DSSVR) metric. The DSSVR metric evaluates spatial variations in pixel intensity or color to distinguish barcode patterns from background noise. This approach enhances detection accuracy by analyzing local contrast differences, reducing false positives in complex or low-contrast environments. The system may also include preprocessing steps, such as image normalization or noise reduction, to improve barcode visibility before endpoint detection. Additionally, the system may apply machine learning models to refine endpoint localization based on learned patterns from training data. The DSSVR metric is particularly effective in scenarios where traditional edge detection methods fail due to poor lighting or barcode degradation. The system ensures robust barcode detection, enabling seamless integration into applications like inventory management, retail checkout, and logistics tracking.
26. The system of claim 24 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: applying a linear search over a sliding window to the cropped intensity profile to find local extrema; or applying slope filtering to the cropped intensity profile to determine when a slope of the intensity profile undergoes a polarity change.
This invention relates to a system for analyzing intensity profiles, particularly for identifying key features such as local extrema or slope changes in a cropped intensity profile. The system addresses the challenge of accurately detecting significant points in intensity data, which is critical in applications like signal processing, image analysis, and sensor data interpretation. The system includes one or more processors and memory storing instructions that, when executed, perform operations on a cropped intensity profile. The operations involve either applying a linear search over a sliding window to identify local extrema or using slope filtering to detect polarity changes in the intensity profile's slope. Local extrema represent peaks or troughs in the data, while slope polarity changes indicate transitions where the slope shifts from positive to negative or vice versa. These techniques help extract meaningful features from the intensity profile, improving analysis accuracy in various technical domains. The sliding window method systematically scans the profile to locate maxima and minima, while slope filtering evaluates the derivative of the intensity profile to pinpoint where the slope's direction reverses. Both approaches enhance the system's ability to process and interpret intensity data efficiently, supporting applications requiring precise feature detection.
27. The system of claim 24 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: applying a linear de-trending operation to the cropped intensity profile; and applying signal amplitude normalization to the cropped and d-trended intensity profile.
The invention relates to signal processing systems for analyzing intensity profiles, particularly in applications where signal stability and normalization are critical. The system processes intensity profiles by first cropping the profile to isolate a relevant segment. A linear de-trending operation is then applied to remove any linear drift or baseline shifts in the cropped intensity profile, ensuring that the signal is free from systematic biases. Following de-trending, the system normalizes the signal amplitude of the processed profile to standardize the intensity values, making the data comparable across different measurements or conditions. This normalization step adjusts the amplitude to a consistent scale, improving accuracy in subsequent analysis. The system is designed to enhance the reliability of intensity profile data by mitigating distortions caused by environmental factors or measurement inconsistencies, which is particularly useful in fields such as spectroscopy, imaging, or sensor data analysis. The combination of cropping, de-trending, and normalization ensures that the processed signal is both stable and normalized, facilitating more accurate interpretation and comparison of results.
28. The system of claim 26 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: detecting and removing invalid extrema; and coalescing multiples of local extrema.
The invention relates to a data processing system designed to enhance the accuracy and efficiency of signal or data analysis by refining local extrema detection. Local extrema, such as peaks and valleys in a dataset, are often used in various applications like signal processing, image analysis, and control systems. However, raw data may contain invalid extrema due to noise, artifacts, or measurement errors, which can lead to incorrect interpretations or decisions. Additionally, multiple closely spaced extrema may complicate analysis by introducing redundancy. The system includes one or more processors and memory storing instructions that, when executed, perform operations to address these issues. First, the system detects and removes invalid extrema, which are likely caused by noise or other anomalies. This step ensures that only valid, meaningful extrema are retained for further processing. Second, the system coalesces multiple local extrema, merging closely spaced or redundant extrema into a single, more representative extremum. This reduces complexity and improves the reliability of subsequent analysis. By refining the extrema in this way, the system enhances the accuracy of downstream processes, such as feature extraction, pattern recognition, or control system adjustments. The invention is particularly useful in applications where precise and robust detection of extrema is critical, such as in sensor data analysis, medical imaging, or industrial automation.
29. The system of claim 28 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: applying an adaptive threshold based comparator or an alpha-trimmed outlier detector to the cropped intensity profile.
This invention relates to image processing systems designed to enhance object detection by analyzing intensity profiles. The system addresses challenges in accurately identifying objects in images where background noise or varying lighting conditions can obscure or distort object features. The core functionality involves processing an intensity profile derived from an image, where the profile represents variations in pixel intensity across a region of interest. To improve detection accuracy, the system applies an adaptive threshold-based comparator or an alpha-trimmed outlier detector to the cropped intensity profile. The adaptive threshold comparator dynamically adjusts thresholds to account for variations in the image, while the alpha-trimmed outlier detector removes extreme values that may represent noise or artifacts. These techniques help isolate relevant object features, reducing false positives and improving detection reliability. The system may also include preprocessing steps, such as cropping the intensity profile to focus on specific regions, and post-processing to refine detection results. The overall approach enhances object detection in applications like surveillance, medical imaging, or autonomous navigation, where robust and accurate identification is critical.
30. The system of claim 29 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: calculating edge locations using a linear interpolation of pixel x-coordinates of two intensity profile samples that straddle a mid-value between consecutive maxima and minima extrema.
The invention relates to image processing systems designed to accurately determine edge locations in digital images. The system addresses the challenge of precisely identifying edges in images where intensity profiles exhibit noise or irregularities, which can lead to inaccurate edge detection. The system includes one or more processors and memory storing instructions that, when executed, enable the processors to perform edge detection operations. Specifically, the system calculates edge locations by linearly interpolating pixel x-coordinates of two intensity profile samples that straddle a mid-value between consecutive maxima and minima extrema. This interpolation method improves edge detection accuracy by smoothing out noise and ensuring consistent edge placement between significant intensity variations. The system may also include additional components, such as a display for visualizing the detected edges or an input interface for receiving image data. The overall approach enhances edge detection reliability in applications like computer vision, medical imaging, and industrial inspection, where precise edge localization is critical.
31. The system of claim 30 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: calculating edge locations using a linear interpolation of pixel x-coordinates of two intensity profile samples that straddle a mid-value between consecutive maxima and minima extrema.
This invention relates to image processing systems designed to improve edge detection accuracy in digital images. The system addresses the challenge of precisely identifying edges in images where intensity profiles contain noise or gradual transitions, which can lead to inaccurate edge detection. The system includes a processor and memory storing instructions that, when executed, perform edge location calculations using a linear interpolation method. Specifically, the system calculates edge locations by interpolating pixel x-coordinates of two intensity profile samples that bracket a mid-value between consecutive maxima and minima extrema in the intensity profile. This interpolation method enhances edge detection by refining the position of edges between discrete pixel samples, reducing errors caused by discrete sampling and noise. The system may also include additional components for capturing or processing images, such as sensors or image preprocessing modules, to further refine the input data before edge detection. The linear interpolation technique ensures that edges are detected at sub-pixel precision, improving the accuracy of subsequent image analysis tasks like object recognition, segmentation, or feature extraction. The system is particularly useful in applications requiring high-precision edge detection, such as medical imaging, autonomous navigation, and industrial inspection.
32. The system of claim 24 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: comparing a number of negative and positive edges of the intensity profile with an expected number of negative and positive edges for a given barcode type; and determining if the edges form a correctly interleaved set.
A system for barcode scanning and validation analyzes the intensity profile of a scanned barcode to verify its structural integrity. The system includes a processor and memory storing instructions that, when executed, perform edge detection and validation. The intensity profile of the scanned barcode is analyzed to identify negative and positive edges, which represent transitions in the barcode's dark and light regions. The system compares the detected number of negative and positive edges against an expected count for the specific barcode type being scanned. This comparison ensures the barcode follows the correct interleaving pattern, where dark and light regions alternate as specified by the barcode standard. If the edges do not match the expected pattern, the system determines the barcode is improperly interleaved, indicating a potential scanning error or barcode defect. This validation step helps improve barcode reading accuracy by rejecting malformed or corrupted barcodes before further processing. The system may also include additional components, such as an imaging sensor and a communication interface, to capture and transmit barcode data. The edge detection and validation process is automated, reducing manual inspection requirements and enhancing efficiency in barcode scanning applications.
33. The system of claim 24 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: converting the consecutive local edge location measurements into parameters that encode distances between key fiducial landmarks in the barcode image.
The system relates to barcode image processing, specifically improving the accuracy of barcode decoding by analyzing local edge locations. The problem addressed is the difficulty in accurately decoding barcodes when traditional methods struggle with low-quality images, distortions, or partial occlusions. The system includes a memory and one or more processors configured to process barcode images. The memory stores instructions that, when executed, convert consecutive local edge location measurements into parameters encoding distances between key fiducial landmarks in the barcode image. These landmarks are distinctive features within the barcode, such as corners, edges, or specific patterns, which help in reconstructing the barcode structure even under challenging conditions. By encoding distances between these landmarks, the system enhances the robustness of barcode recognition, allowing for more reliable decoding in scenarios where conventional methods fail. The system may also include components for capturing or preprocessing the barcode image, ensuring that the edge detection and landmark analysis are performed on optimized input data. The overall approach leverages geometric relationships between fiducial points to improve barcode readability, making it particularly useful in applications requiring high accuracy, such as logistics, inventory management, and automated scanning systems.
34. The system of claim 21 , where the simulated noisy symbol feature vectors are given by {right arrow over ({tilde over (s)} i ={right arrow over (s)} i +{right arrow over (n)} i where {right arrow over (s)} i are the symbol feature vectors and {right arrow over (n)} i is a corrupting noise-like random variable and i=0, 1, . . . , N−1, and where N is a positive integer equal to the total number of simulated noisy symbol feature vectors.
This invention relates to a system for generating and processing simulated noisy symbol feature vectors in a machine learning or signal processing context. The system addresses the challenge of training or evaluating models in environments where input data is corrupted by noise, which is common in real-world applications such as speech recognition, wireless communication, or sensor data analysis. The system generates simulated noisy symbol feature vectors by adding a noise-like random variable to clean symbol feature vectors. Each clean symbol feature vector, denoted as a vector s_i, represents a feature representation of a symbol or data point. A corresponding noise-like random variable, denoted as a vector n_i, is added to s_i to produce a noisy version, denoted as a vector tilde(s)_i. This process is repeated for N such vectors, where N is a positive integer representing the total number of simulated noisy vectors. The noise-like random variable can be derived from statistical models, empirical noise measurements, or synthetic noise generation techniques. The resulting noisy vectors are used to train or test machine learning models, evaluate robustness, or simulate real-world conditions where data is inherently noisy. The system may also include preprocessing steps to condition the noise or feature vectors before combination. This approach improves model generalization and reliability in noisy environments.
35. The system of claim 34 , where the simulated noisy symbol feature vectors are given by {right arrow over ({tilde over (s)} i =[{tilde over (L)} i , {tilde over (x)} i,0 , {tilde over (x)} i,1 , {tilde over (x)} i,2 , {tilde over (x)} i,3 ] and i=0, 1, . . . , N−1, {tilde over (L)} i is a noisy symbol length measure from the leading edge of a first bar of a symbol in the barcode image to a corresponding leading edge of a first bar of a next adjacent symbol, {tilde over (x)} 0 is a noisy width of a second dark bar of the symbol, {tilde over (x)} 1 is a noisy width of a first dark bar of the symbol, {tilde over (x)} 2 is a noisy distance between trailing edges of the first and second dark bars, and {tilde over (x)} 3 is a noisy distance between leading edges of the first and second dark bars.
The invention relates to barcode decoding systems that handle noisy symbol feature extraction. Barcode scanning often encounters distortions due to printing defects, lighting variations, or motion blur, making accurate symbol recognition challenging. The system addresses this by generating simulated noisy symbol feature vectors to improve robustness in decoding. The system processes barcode images by extracting key geometric features of each symbol, including bar widths and inter-bar distances, but with intentional noise to simulate real-world imperfections. For each symbol, the system measures the noisy length between adjacent symbols, the width of the second dark bar, the width of the first dark bar, the distance between the trailing edges of these bars, and the distance between their leading edges. These noisy measurements are combined into a feature vector for each symbol, allowing the system to train or test decoding algorithms under realistic conditions. By incorporating these noisy feature vectors, the system enhances the accuracy of barcode recognition in practical scenarios where noise and distortions are prevalent. The approach ensures that the decoding model generalizes well to imperfect barcode images encountered in real-world applications.
36. The system claim 35 , where the noisy symbol feature vectors are transformed into scale invariant noisy symbol feature vectors by normalizing each component of each vector by {tilde over (L)} i .
The invention relates to a system for processing noisy symbol feature vectors in a machine learning or signal processing application. The system addresses the challenge of handling variations in scale or magnitude within noisy symbol feature vectors, which can degrade the performance of algorithms relying on these features. The system includes a preprocessing module that transforms noisy symbol feature vectors into scale-invariant noisy symbol feature vectors by normalizing each component of each vector. The normalization is performed by dividing each component of a vector by a scaling factor, denoted as {tilde over (L)}i, which is specific to the vector. This scaling factor may be derived from statistical properties of the vector, such as its mean, variance, or another representative value. The resulting scale-invariant vectors ensure consistent feature magnitudes, improving the robustness and accuracy of subsequent processing steps, such as classification, clustering, or pattern recognition. The system may be applied in various domains, including speech recognition, image processing, or sensor data analysis, where feature vectors are susceptible to noise and scale variations.
37. The system claim 36 , where the classifier is a multi-layer neural network that uses hyperbolic tangent nonlinearities in an input layer and a hidden layer, and a one-hot encoded soft-max sigmoid output layer.
A system for classifying data using a multi-layer neural network is designed to improve accuracy in pattern recognition tasks. The neural network includes an input layer, a hidden layer, and an output layer. The input layer and hidden layer utilize hyperbolic tangent (tanh) nonlinearities to process input data and extract features. The output layer employs a one-hot encoded soft-max sigmoid function to generate classification probabilities for multiple categories. This architecture enhances the system's ability to distinguish between complex patterns by leveraging the tanh activation function's ability to handle non-linear relationships and the soft-max output's suitability for multi-class classification. The system is particularly useful in applications requiring high-precision categorization, such as image recognition, natural language processing, or predictive analytics, where distinguishing between multiple classes with confidence is critical. The neural network's layered structure allows for hierarchical feature learning, improving overall classification performance.
38. The system claim 37 , where the multi-layer neural network has 4 input units, seven hidden units and 20 output units, and real valued outputs of each of the 20 output units are posterior probabilities of a known class conditioned on an input symbol feature vector.
A neural network system is designed for classification tasks, where the network processes input data to generate probabilistic outputs. The system includes a multi-layer neural network with a specific architecture: four input units, seven hidden units, and twenty output units. The input units receive a feature vector representing an input symbol, while the hidden units perform intermediate computations. The output units produce real-valued probabilities, each representing the posterior probability of a known class given the input feature vector. This architecture enables the system to assign likelihoods to each of the twenty possible classes, facilitating classification decisions based on the highest probability output. The neural network is trained to map input features to class probabilities, optimizing performance for tasks requiring multi-class discrimination. The system is particularly useful in applications where input data must be categorized into one of multiple predefined classes, such as image recognition, text classification, or other pattern recognition problems. The fixed architecture ensures consistent processing, while the probabilistic outputs provide a measure of confidence for each classification result.
39. The system claim 37 , where the classifier is trained in a supervised fashion using a regularized scaled conjugate gradient.
A system for classifying data using a machine learning model is disclosed. The system addresses the challenge of accurately classifying data in scenarios where traditional classification methods may fail due to noise, high-dimensional features, or limited training data. The system employs a classifier that is specifically trained using a regularized scaled conjugate gradient optimization algorithm. This training approach helps improve the classifier's generalization performance by preventing overfitting and efficiently navigating the loss landscape during optimization. The classifier processes input data, extracts relevant features, and assigns a class label based on learned patterns. The system may be applied in various domains, such as image recognition, natural language processing, or anomaly detection, where robust and efficient classification is required. The use of regularization in the training process ensures that the classifier remains stable and performs well even with incomplete or noisy data. The scaled conjugate gradient method accelerates convergence during training, making the system computationally efficient. This approach enhances the reliability and speed of the classification process, making it suitable for real-time applications.
40. The system of claim 37 , where the memory stores instructions, which, when executed by the one or more processors, cause the processors to perform operations comprising: computing a confidence score for a complete decoding of the barcode image by averaging a maximum per-symbol output probability for the sequence of symbol feature vectors, and comparing the confidence score against a gating threshold to determine the quality of the decoding of the barcode image.
A barcode decoding system evaluates the quality of decoded barcode images by computing a confidence score. The system processes a barcode image to generate a sequence of symbol feature vectors, which represent individual symbols within the barcode. For each symbol in the sequence, the system determines a maximum output probability, indicating the likelihood that the symbol was correctly decoded. These probabilities are averaged to produce a confidence score for the entire barcode. The confidence score is then compared against a predefined gating threshold to assess the decoding quality. If the score exceeds the threshold, the decoding is deemed reliable; otherwise, further processing or error correction may be applied. This approach improves barcode reading accuracy by quantitatively evaluating the confidence in the decoded output, reducing errors in applications such as inventory management, retail, and logistics where reliable barcode scanning is critical. The system may integrate with existing barcode scanners or imaging devices, enhancing their performance without requiring hardware modifications.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
September 30, 2010
September 3, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.