Image Processing Memory Management via Line Buffering
Solution Overview
Problem
Current image processing methods require significant memory resources due to the need for separate storage areas for input and result images, especially with high-resolution images in microscopy, leading to memory scarcity despite increased storage capacity.
Innovation Solution
A method that reserves k + 1 additional lines in a second data memory area to calculate and store result image data, allowing calculated data to be stored first in additional lines and then in data lines, reducing the need for further calculations and memory usage, thereby reducing overall storage capacity requirements by almost half.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate memory areas of the same size are used for input image and result image data, then input data can be preserved without overwriting, but memory storage capacity requirements double
Solution Approach 1:
The patent merges the storage of input image data and result image data into a single memory area. By using a unified memory space with intelligent address management, the system eliminates the need for separate memory areas, reducing total memory requirements while preventing data overwriting through cyclic buffer techniques and address mapping.
Solution Approach 2:
The patent implements dynamic memory management where the roles of memory lines change during processing. Memory lines are dynamically allocated for input data, intermediate results, and final output depending on the processing stage. The system uses dynamic address mapping and cyclic buffering to adaptively reuse memory space, allowing the same physical memory to serve multiple logical purposes throughout the processing pipeline.
2Measurement precision
If the operator processes high-resolution images with dimensions of 10 k x 10 k pixels or 100 k x 100 k pixels, then image quality is maintained, but available memory becomes scarce
Solution Approach 1:
The patent segments the image processing into line-by-line operations, where each line is processed independently using a sliding window approach. By dividing the high-resolution image into manageable line segments and processing them sequentially with overlapping windows, the system maintains full image resolution quality while using only a fraction of the memory that would be required to load the entire image at once.
Solution Approach 2:
The patent transforms the traditional 2D image processing approach into a 1D line-by-line processing scheme with temporal dimension. Instead of processing the entire 2D image matrix simultaneously requiring O(n²) memory, the system processes one line at a time with O(k) memory where k is the window size, effectively adding a temporal dimension to the processing pipeline that reduces spatial memory requirements.
Data Source
Figure 1~2
Figure 3
Figure 4
AI summary
The invention relates to a method for generating a result image by applying an operator to an input image having n lines, wherein the input image is stored in a first region of a database having n data lines, k + 1 additional lines of a second region of the database are reserved, and the operator comprises an extent of g lines, wherein g is greater than or equal to two lines and less than or equal to 2k + 1 lines, and wherein the operator calculates from each set of g data lines the data for each respective line of the result image or an intermediate image for generating the result image, and stores the same line by line in the data lines and additional lines, so that the calculated data are first stored in the additional lines and then in the data lines that the operator no longer requires for calculating further lines or the result image or the intermediate image.