Image Scaling System Using Window Memory and Segmented Scalers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing image scaling systems require significant memory and hardware resources, leading to high costs and inability to achieve real-time output due to inefficient data processing and buffer management.
Innovation Solution
An image scaling system utilizing a window memory, longitudinal scaler, buffer, and latitudinal scaler that performs scaling operations using window averages for shrinking and bi-linear interpolation for expanding, with a controller for initialization and weight computation, allowing for efficient memory usage and real-time processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a scan line buffer is used to temporarily store image data, then the image scaling operation can be performed, but the memory requirement increases significantly
Solution Approach 1:
The patent divides the image processing into two independent stages: longitudinal scaling followed by latitudinal scaling. Each stage processes one dimension at a time, allowing the use of smaller buffers compared to processing the entire 2D image at once. The longitudinal scaler processes scan lines independently, and the latitudinal scaler processes the intermediate results, achieving segmentation of the scaling operation.
Solution Approach 2:
The patent transforms the 2D image scaling problem into two sequential 1D scaling problems. By processing longitudinal (vertical) scaling first and then latitudinal (horizontal) scaling, the system reduces the complexity of memory management. Each scaler only needs to buffer one dimension of data at a time, significantly reducing the total buffer size required compared to simultaneous 2D processing.
2Productivity
If SRAM is used to store multiple lines of input image data, then the number of reads from SRAM is reduced, but the size of SRAM increases dramatically
Solution Approach 1:
The patent segments the image data processing into two passes, where each pass handles one dimension. The longitudinal scaler reads data line by line from main memory, processes it, and writes to the intermediate buffer. Then the latitudinal scaler reads from the intermediate buffer and writes to output. This segmentation allows using smaller SRAM buffers instead of large SRAM to store multiple complete lines.
Solution Approach 2:
The patent extracts the scaling computation from the buffer storage function. Instead of using large SRAM to store multiple lines and performing scaling operations, the system uses minimal buffering (essentially one line at a time) and performs scaling computations on the fly during the data flow from main memory to output.
3Manufacturing precision
If window average and bi-linear interpolation are used for scaling, then the image quality is improved, but the processing complexity increases
Solution Approach 1:
The patent applies different interpolation methods to different dimensions separately. The longitudinal scaler uses window average for vertical scaling, and the latitudinal scaler uses bi-linear interpolation for horizontal scaling. This segmentation allows each scaler to implement a simpler algorithm tailored to its dimension, reducing the overall processing complexity compared to implementing a single complex 2D interpolation algorithm.
Data Source
AI summary
An image scaling system includes a window memory, a longitudinal scaler, a buffer and a latitudinal scaler. The window memory temporarily stores partial data of N image lines. The longitudinal scaler performs a longitudinal scaling operation on the partial data of the N image lines to thereby produce partial data of a longitudinal image line. The latitudinal scaler performs a latitudinal scaling operation on the partial data of the longitudinal image line to thereby produce scaling-part data of a latitudinal image line. The longitudinal scaler and the latitudinal scaler use a window average to perform an image shrinking operation and a bi-linear interpolation average to perform an image expanding operation.


