Template Pixel Selection for Parallel Image Matching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing template matching methods require significant computational resources and are challenging to parallelize due to varying pixel usage and complex processes, making hardware circuit implementation difficult.
Innovation Solution
An image analysis device generates template information with pairs of pixel positions and values, using a feature value calculation unit and in-block selection pixel determination to divide the template image into blocks, enabling efficient selection of pixels for matching, and an image processing device performs comparisons and similarity calculations to achieve high parallelism.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If template matching uses all pixels for comparison to ensure accuracy, then detection precision is improved, but computational complexity and processing time increase significantly
Solution Approach 1:
The patent extracts and selects only the most significant pixels (selection pixels) from the template image based on feature values, rather than using all pixels for comparison. This extraction approach maintains detection precision by focusing on informative pixels while significantly reducing the computational burden of template matching.
Solution Approach 2:
The template image is divided into multiple blocks, and selection pixels are determined independently for each block based on feature values. This segmentation allows parallel processing of different blocks and reduces the overall computational complexity by breaking down the large comparison task into smaller manageable units.
2Measurement precision
If template matching uses varying pixel counts per template to adapt to different patterns, then detection accuracy is improved, but hardware parallelization becomes difficult due to complex control logic
Solution Approach 1:
The patent performs preliminary action by pre-calculating feature values for all pixels in the template image and pre-determining which pixels should be selected before the actual matching process. This preliminary selection creates a fixed, simplified comparison pattern that can be efficiently implemented in hardware without complex adaptive control logic during runtime.
Solution Approach 2:
The patent changes the parameter of pixel selection based on feature values calculated from the template image. By using feature value thresholds to determine selection pixels, the system adapts the number and position of comparison pixels to match the specific pattern characteristics, achieving both accuracy and hardware efficiency.
3Reliability
If template matching processes all pixels systematically to ensure completeness, then detection reliability is improved, but the complex branching processes make parallel hardware implementation difficult
Solution Approach 1:
The patent extracts only the essential comparison information by selecting pixels with high feature values, eliminating redundant pixels that would require complex conditional processing. This extraction simplifies the processing logic while maintaining detection reliability by focusing computational resources on the most informative pixels.
Solution Approach 2:
By segmenting the template image into blocks and independently determining selection pixels for each block, the patent creates a modular processing structure. This segmentation eliminates complex global branching logic and enables simple parallel hardware implementation where each block can be processed independently.
Data Source
AI summary
An image analysis device is a device to generate template information from a template image. The image analysis device includes a feature value calculation unit to calculate a feature value of each pixel in the template image and an in-block selection pixel determination unit to divide the template image into a plurality of blocks based on block division information and determine a selection pixel, as a pixel representing a feature in each block, based on the feature value.


