Pipelined image processing engine
AssigneesSony Corporation, Sony Electronics Inc.
InventorHeman Gala
Life of this patent
Estimating the term…
Abstract
The present invention related to processing image frames through a pipeline of effects by breaking the image frames into multiple blocks of image data. The example method includes generating a plurality of blocks from each frame, processing each block through a pipeline of effects in a predefined consecutive order, and aggregating the processed blocks to produce an output frame by combining the primary pixels from each processed block. The pipeline of effects may be distributed over a plurality of processing nodes, and each effect may process a block, provided as input to the node. Each processing node may independently process a block using an effect.
Claims26
A method for processing image frames through a pipeline of effects, the method comprising:
- generating a plurality of blocks, each block containing a group of primary pixels and a group of total pixels, the total pixels including any pixels required as input by an effect, from the pipeline of effects, to produce output for the primary pixels;
- processing each block through the pipeline of effects in a predefined consecutive order, the pipeline of effects being distributed over a plurality of processing nodes;
- and
- aggregating the processed blocks to produce an output frame by combining the primary pixels from the processed blocks
- wherein each effect, from pipeline of effects, processes a block, provided as input to the node, to produce output for the primary pixels of the block.
An apparatus for processing a chain of image frames through an effects pipeline, comprising:
- a primary processor including a block generator, effect distributor, and block aggregator;
- a plurality of secondary processors, each including a minimum memory cache to store the contents of a block;
- and
- a bus interconnecting the primary processor, the plurality of secondary processors, and a memory interface;
- wherein
- the block generator generates a plurality of blocks from an input image frame provided through the memory interface, each block containing a group of primary pixels and a group of total pixels from the input image frame, the total pixels including any pixels required as input by an effect, from the pipeline of effects, to produce output for the primary pixels,
- the effect distributor manages the distribution and processing order of the effects and the plurality of blocks among the plurality of secondary processors,
- the block aggregator combines the processed blocks;
- the plurality of secondary processors process each block through the pipeline of effects in a consecutive order, the pipeline of effects being distributed over the plurality of secondary processors, and
- each secondary processor executes an effect which processes each block independently to produce output for the primary pixels for that block.
Dependencies are inferred from the claim text.