Code Reader Decoding Algorithms by Field of View Region
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Code readers face challenges in efficiently decoding optical codes due to imperfect image acquisition, leading to prolonged processing times when using complex algorithms, especially when image sensors obtain images rapidly, causing processors to fall behind in processing all code candidates in a timely manner.
Innovation Solution
Implementing a method where the field of view is divided into regions of interest (ROIs) and different decode algorithms are applied based on the location of code candidates within these ROIs, using less expensive algorithms for peripheral ROIs and more expensive algorithms for central ROIs, allowing for dynamic adjustment of ROI sizes and algorithms based on processing speed and image quality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If complex decode algorithms are used to compensate for imperfect image acquisition, then decoding accuracy is improved, but processing time increases significantly
Solution Approach 1:
The patent segments the field of view into multiple regions of interest (ROIs), with a first ROI requiring higher decoding accuracy and a second ROI requiring lower decoding accuracy. This segmentation allows the system to apply different decode algorithms to different regions, using complex algorithms only where necessary and simpler algorithms elsewhere, thus resolving the contradiction between decoding accuracy and processing time.
Solution Approach 2:
The patent applies local quality by assigning different decode algorithms to different ROIs based on their specific requirements. The first ROI receives a first decode algorithm optimized for accuracy, while the second ROI receives a second decode algorithm optimized for speed. This localized approach ensures that computational resources are concentrated where they are most needed, balancing accuracy and processing time.
2Reliability
If expensive decode algorithms are applied to all code candidates, then decoding reliability is improved, but processor capabilities are exceeded when images are obtained in rapid succession
Solution Approach 1:
The patent divides the processing workload by segmenting the FOV into multiple ROIs with different decoding requirements. By applying expensive decode algorithms only to the first ROI and cheaper algorithms to the second ROI, the system maintains high reliability for critical candidates while increasing overall processing throughput to match rapid image acquisition rates.
Solution Approach 2:
The patent applies partial action by using the more reliable first decode algorithm on only a portion of the code candidates (those in the first ROI) rather than all candidates. This selective application of expensive algorithms maintains sufficient reliability for the most important candidates while reducing the total computational burden to match processor capabilities.
3Productivity
If the field of view is divided into regions of interest with different decode algorithms, then processing efficiency is improved, but device complexity increases
Solution Approach 1:
The patent segments the FOV into distinct ROIs with clearly defined boundaries and characteristics. This segmentation provides a straightforward framework for selecting decode algorithms based on ROI location, making the complexity management systematic rather than ad hoc. The segmentation approach improves processing efficiency while keeping the complexity increase manageable through structured organization.
Data Source
AI summary
A method and apparatus for decoding codes applied to objects for use with an image sensor that includes a two dimensional field of view (FOV), the method comprising the steps of providing a processor programmed to perform the steps of obtaining an image of the FOV and applying different decode algorithms to code candidates in the obtained image to attempt to decode the code candidates wherein the decode algorithm applied to each candidate is a function of the location of the code candidate in the FOV.


