Parallel Image Encoding via Grouped Block Dependency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing image encoding techniques, such as JPEG, face challenges in parallelization due to the sequential nature of block-to-block dependent encoding, leading to increased intermediate data requirements and potential image degradation, especially in systems with limited resources.

Innovation Solution

An image encoding apparatus with multiple encoding units that perform encoding processes in parallel by determining the characteristic encoding value for the last block of a group before encoding the dependent blocks in the next group, breaking the sequential dependency and reducing intermediate data handling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If block-to-block dependent encoding is used to reduce data size, then encoding efficiency is improved, but parallelization capability deteriorates

Engineering Contradiction:
Improveencoding efficiencyVSAvoidparallelization capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent divides the image data into multiple groups of blocks, where each group is processed by a separate encoding unit. This segmentation allows different groups to be encoded in parallel while maintaining the dependent encoding relationship within each group, thus resolving the contradiction between encoding efficiency and parallelization capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by determining the characteristic encoding value for the last block of a group before encoding the dependent blocks in the next group. This preliminary determination breaks the sequential dependency chain, enabling multiple encoding units to operate in parallel without compromising the data size reduction benefits of dependent encoding.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If parallel encoding is implemented to reduce processing time, then productivity is improved, but intermediate data requirements increase

Engineering Contradiction:
Improveprocessing timeVSAvoidintermediate data
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary characteristic encoding value (DC coefficient) for the last block of each group and makes it available before encoding the next group. By extracting only this specific piece of information rather than transmitting all intermediate data, the patent reduces intermediate data requirements while still enabling parallel processing.

Inventive Principle:
Principle #2Taking out (Extraction)

3Manufacturing precision

If sequential encoding is used to maintain data dependency, then encoding accuracy is preserved, but processing speed decreases

Engineering Contradiction:
Improveencoding accuracyVSAvoidprocessing speed
Core Design Contradiction:
Manufacturing precisionVSSpeed

Solution Approach 1:

The patent performs preliminary action by pre-determining the characteristic encoding value for the last block of each group before the encoding units process the dependent blocks. This preliminary action maintains the encoding accuracy required by the dependency relationship while enabling parallel processing, thus increasing processing speed without sacrificing precision.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8331703B2Parallel image encoding
Publication Date: 2012.12.11 ARM LTD
  • US8331703B2 patent drawing
  • US8331703B2 patent drawing
  • US8331703B2 patent drawing

AI summary

An image encoding apparatus is configured to encode image data comprising a sequence of unencoded blocks of pixels into a sequence of encoded blocks of pixels in a predetermined image encoding format. Each encoded block of pixels has a characteristic encoding value representative of its corresponding unencoded block of pixels, and a plurality of dependently encoded blocks of pixels each have a dependent characteristic encoding value which is defined with reference to the characteristic encoding value for a preceding encoded block of pixels. The image encoding apparatus comprises a first encoding unit configured to perform an encoding process on a first group of the unencoded blocks of pixels and a second encoding unit configured to perform the encoding process on a second group of the unencoded blocks of pixels, wherein the encoding process generates an encoded block of pixels in the predetermined image encoding format, and wherein the second group immediately follows the first group and a first block of the second group is comprised in the plurality of dependently encoded blocks of pixels. The first encoding unit and the second encoding unit are configured to perform the encoding process in parallel on respective unencoded blocks of pixels in the first group and in the second group on a block-by-block basis. The image encoding apparatus is configured to perform a characteristic encoding value determination operation to determine the characteristic encoding value for a last block of pixels in the first group, before determining the dependent characteristic encoding value for the first block of the second group.