Image Coding Reference Pixel Transfer for Buffer Memory Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In high-efficiency video coding methods like HEVC, wavefront parallel processing requires large-capacity buffer memories for inter-frame prediction, which are expensive and inefficient due to the need to hold reference pixels across multiple CTU lines, leading to increased power consumption and data transfer.
Innovation Solution
An image coding apparatus with a transfer unit that reads and transfers reference pixels from one inter-frame prediction unit to another, reducing the need for a large buffer memory by allowing the reuse of reference pixels between CTU lines, thereby optimizing memory usage and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If wavefront parallel processing is performed with large-capacity buffer memory to hold reference pixels for inter-frame prediction, then coding efficiency is improved, but device cost and power consumption increase
Solution Approach 1:
The reference pixel data is segmented and distributed across multiple holding units (buffer memories) corresponding to different CTU lines. Each holding unit stores only the reference pixels needed for its specific CTU line processing, rather than duplicating all reference pixels across all units. This segmentation reduces total memory capacity requirements while maintaining parallel processing capability.
Solution Approach 2:
Reference pixels are copied from the frame memory to holding units only when needed for specific CTU line processing. The transfer unit selectively copies reference pixel data from frame memory to appropriate holding units, avoiding unnecessary memory allocations. This on-demand copying reduces overall memory usage while ensuring data availability for parallel processing operations.
2Reliability
If large-capacity buffer memory is allocated to hold reference pixels for all CTU lines in parallel processing, then inter-frame prediction accuracy is improved, but device cost increases
Solution Approach 1:
Each holding unit is allocated memory capacity proportional to its specific needs for holding reference pixels for its assigned CTU line. Rather than uniformly allocating large memory to all units, the system provides localized memory resources matched to actual requirements, reducing total device cost while maintaining prediction accuracy for each processing line.
Solution Approach 2:
Reference pixels are pre-loaded from frame memory to holding units before parallel processing begins. The transfer unit performs preliminary data transfer operations to ensure all necessary reference pixel data is available in the holding units before the parallel processing starts, eliminating the need for large persistent buffer memory during processing.
3Productivity
If reference pixels are held in units of CTUs in buffer memory for wavefront parallel processing, then processing parallelism is improved, but data transfer volume increases
Solution Approach 1:
The system segments reference pixel data transfers to match CTU line boundaries. The transfer unit transfers data in segmented units corresponding to specific CTU lines rather than transferring all reference pixel data at once. This segmented transfer approach reduces total data transfer volume while maintaining the parallelism needed for efficient processing.
Solution Approach 2:
The transfer unit extracts and transfers only the specific reference pixel data needed for each CTU line from the frame memory, rather than transferring all reference pixels. This selective extraction minimizes unnecessary data transfer while ensuring all required data is available for parallel processing operations.
Data Source
AI summary
An apparatus includes a first holding unit configured to hold, in a reference image, first reference pixels in a search range including a block corresponding to a first block as a coding target in the input image, a first search unit configured to search for a motion vector of a prediction block included in the first block, using the first reference pixels, a second holding unit configured to hold, in the reference image, second reference pixels in a search range including a block corresponding to a second block as a coding target, a second search unit configured to search for a motion vector of a prediction block included in the second block, using the second reference pixels, and a transfer unit configured to read, from among the first reference pixels, a reference pixel to be used by the second search unit for the search.


