Image Processing Device CABAC Encoding Parallelism
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-speed image encoding with CABAC processing in the AVC format leads to interdependence among slices, resulting in reduced encoding efficiency due to the inability to perform parallel execution effectively, as the processing of macroblocks in one slice depends on the completion of adjacent slices.
Innovation Solution
An image processing device that encodes image data by advancing the encoding order of small regions within large regions in a specific order, allowing for independent encoding of slices without referencing adjacent macroblocks at boundaries, thereby enabling parallel processing of CABAC encoding across slices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If multi slice is used to enable high throughput by performing CABAC encoding in parallel for each region, then processing speed is improved, but encoding efficiency deteriorates due to inability to perform mutual reference at slice boundaries
Solution Approach 1:
The image is divided into multiple slices for parallel processing, but the patent further segments each slice into multiple threads (e.g., first thread processes odd macroblock lines, second thread processes even macroblock lines). This finer segmentation allows parallel execution while maintaining the ability to reference adjacent macroblocks within each thread's processing scope, thus preserving encoding efficiency at boundaries.
Solution Approach 2:
The patent introduces a new dimension of parallelism by processing multiple macroblock lines simultaneously within each slice using separate threads. Instead of only dividing vertically into slices, the invention adds horizontal thread-level parallelism, allowing independent processing of odd and even lines while maintaining reference capabilities within each thread's lineage.
2Manufacturing precision
If CABAC encoding is performed sequentially for all symbols to ensure accurate probability table selection based on surrounding macroblocks, then encoding accuracy is improved, but processing speed deteriorates due to inability to perform parallel processing
Solution Approach 1:
The sequential CABAC processing is segmented into multiple independent threads that process different macroblock lines in parallel. Each thread maintains its own probability table and processes its assigned lines independently, allowing parallel execution while preserving the contextual reference accuracy within each thread's processing scope.
Solution Approach 2:
The patent performs preliminary organization of macroblocks into separate odd and even line groups before processing. This preliminary segmentation allows the system to pre-establish independent processing paths for each thread, ensuring that when parallel processing begins, each thread has all necessary data and context ready, maintaining accuracy while enabling speedup.
Data Source
AI summary
An image processing device for encoding a video signal including circuitry configured to perform an arithmetic encoding process on a top block of a current block line of the video signal using a context used in the arithmetic encoding process for a previous block of a previous block line.


