Tile-Based Distortion Correction Using Sorted Source Index
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image processing systems face inefficiencies in distortion correction due to high memory bandwidth requirements and large memory sizes needed for geometric distortion correction in optical systems, particularly in computer vision applications, where the correction process involves inefficient pixel interpolation and memory access patterns.
Innovation Solution
A method that divides both the target and source images into tiles, assigns a sorted index to the source tiles based on their y-coordinates, and performs distortion correction by mapping each source tile to its corresponding target tile on a first-come-first-served basis, reducing memory requirements and improving processing efficiency by utilizing available data as it becomes available.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If backwards mapping is used to correct distortion by looking for each pixel of the corrected image in the distorted image, then distortion correction is achieved, but memory bandwidth requirements are excessively high due to repeated reading of source pixels from external memory
Solution Approach 1:
The image is divided into tiles, and the processing is organized in a tile-based manner. Source tiles are sorted into index groups based on their y-coordinates, allowing the system to process only the specific tile data currently needed rather than repeatedly accessing entire images or large portions from external memory. This segmentation reduces memory bandwidth requirements while maintaining distortion correction accuracy.
2Productivity
If image lines are read straight from camera into local system memory or local buffer for processing, then processing speed is improved, but SRAM size requirements become excessively large
Solution Approach 1:
Source tiles are pre-sorted into index groups based on their y-coordinates before processing. This preliminary organization allows the system to quickly retrieve only the specific source tiles needed for each target tile without requiring large buffers to hold entire images. The sorted index structure enables efficient access patterns that reduce SRAM size requirements while maintaining processing speed.
3Reliability
If the complete source image is fetched from external memory to internal memory for correction, then distortion correction is performed, but external memory bandwidth consumption increases system cost
Solution Approach 1:
The system extracts and processes only the specific source tiles that are currently needed for distortion correction, rather than fetching the complete source image from external memory. The sorted tile index structure enables the system to selectively access only the necessary tile data from external memory, significantly reducing memory bandwidth consumption while maintaining complete distortion correction capability.
Data Source
Figure 1A~1B
Figure 2
Figure 3~4
AI summary
There is provided a method and system for distortion correction from a distorted source image to a distortion corrected target image. The method comprises dividing the target image into a plurality of target tiles, each having a position comprising an x coordinate and a y coordinate. The method further comprises dividing the source image into a plurality of source tiles each having a position comprising an x coordinate and a y coordinate. Each source tile corresponds to a target tile according to a first mapping. The source tiles are processed to produce a source tile index until all the source tiles in the source image have been assigned a source tile index value in an ascending order. At least one y coordinate value of a first target tile is higher than a y coordinate value of a second target tile, wherein the first target tile corresponds to a source tile that appears earlier in the ascending order of the source tile index than a corresponding source tile of the second target tile. The method further comprises performing distortion correction of the source image by mapping each source tile to its corresponding target tile, wherein the distortion correction is performed for each tile in turn according to the source tile index.