Coarse-to-fine template matching with SIMD-optimized data rearrangement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for increasing the speed of template matching in image processing, such as coarse-to-fine search and SIMD parallel processing, are not effectively applied to reduce processing time due to inefficiencies in data transfer and redundancy during the search process.
Innovation Solution
The method involves rearranging data in the image and template to allow for efficient parallel processing by minimizing data duplication and optimizing data transfer from work memory to SIMD registers, enabling faster template matching through coarse-to-fine search by performing data rearrangement prior to the second search step.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is stored in conventional memory format for template matching, then memory access is simple, but data transfer to SIMD register requires multiple clocks and parallel processing efficiency is reduced
Solution Approach 1:
The patent applies preliminary action by reorganizing image data into a specific format in advance before SIMD processing. The data is arranged such that when processed by SIMD instructions, all required data can be transferred from memory to the SIMD register in a single clock cycle, eliminating the need for multiple sequential transfer operations and thereby reducing data transfer time.
Solution Approach 2:
The patent transforms the data organization from conventional two-dimensional image format to a reorganized format optimized for SIMD processing. This dimensional reorganization allows the data to be arranged in memory such that parallel processing operations can access all necessary data simultaneously, achieving faster transfer rates and improving overall processing speed.
2Productivity
If conventional template matching is performed without data reorganization, then processing steps are simple, but the number of collation operations is large and processing time is increased
Solution Approach 1:
The patent applies segmentation by dividing the template matching process into distinct phases: data reorganization phase and SIMD processing phase. The image data is segmented and reorganized into a format that enables efficient parallel processing, allowing the subsequent collation operations to be performed more rapidly through SIMD instructions.
Solution Approach 2:
The patent changes the organizational parameters of the data structure to optimize for parallel processing. By transforming the data layout from conventional row-major or column-major order to a SIMD-optimized format, the patent enables faster memory access patterns and reduces the total number of operations required during the collation phase.
3Productivity
If data duplication is not minimized during rearrangement, then rearrangement is simpler, but work memory consumption increases
Solution Approach 1:
The patent applies local quality by making different parts of the data structure serve different functions. The reorganized data format is designed so that each portion of the data has specific properties optimized for its intended use in SIMD operations, minimizing redundancy while ensuring that all necessary data is available for parallel processing.
Solution Approach 2:
The patent discards redundant data representations that would otherwise be necessary in conventional formats. By reorganizing the data, the patent eliminates duplicate information while maintaining all essential data needed for template matching, thereby reducing overall memory consumption without sacrificing processing capability.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The coarse-to-fine search method includes: a first search step of detecting an object from a first image by means of template matching; and a second step of setting an area comprising n x m pixels within a second image having resolutions of horizontal n times and vertical m times as compared with the first image corresponding to a position detected in the first search step as a search range and detecting the object from the second image by means of template matching. During the coarse-to-fine search, data for the second image are rearranged on a work memory prior to the second search step such that data of the n x m pixels collated with same components of a template are stored in contiguous memory addresses, and n x m collation operations for the n x m pixels are executed in less than n x m calculation by SIMD commands in the second search step.