Image processor complex transfer functions
AssigneeGoogle Inc.
InventorAlbert Meixner
Life of this patent
Estimating the term…
Abstract
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for supporting complex transfer functions on an image processor. One of the methods includes traversing, by each execution lane of an image processor using a shift-register array, a respective local support region and storing input pixels encountered during the traversal into local memory of the image processor. Each execution lane obtains from the local memory of the image processor one or more input pixels according to a complex transfer function. Each execution lane computes a respective output pixel for the kernel program using one or more input pixels obtained from the local memory according to the complex transfer function.
Claims20
A computer-implemented method comprising:
- loading data within an input image region into a two-dimensional shift-register array of an image processor;
- computing a local support region size needed to obtain input pixels required to compute each respective output pixel in an output image region;
- traversing, by each of a plurality of execution lanes using the two-dimensional shift-register array, a respective local support region having the computed local support region size and storing input pixels encountered during the traversal into local memory of the image processor;
- obtaining, by each execution lane from the local memory of the image processor, one or more respective input pixels required to compute a respective output pixel by the execution lane;
- and
- computing, by each execution lane, a respective output pixel using one or more respective input pixels obtained from the local memory.
A computing device employing an image processor, the image processor comprising an execution lane array and a two-dimensional shift-register array,
- wherein the image processor is configured to execute instructions to perform operations comprising:
- loading data within an input image region into a two-dimensional shift-register array;
- computing a local support region size needed to obtain input pixels required to compute each respective output pixel in an output image region;
- traversing, by each of a plurality of execution lanes using the two-dimensional shift-register array, a respective local support region having the computed local support region size and storing input pixels encountered during the traversal into local memory of the image processor;
- obtaining, by each execution lane from the local memory of the image processor, one or more respective input pixels required to compute a respective output pixel by the execution lane;
- and
- computing, by each execution lane, a respective output pixel using one or more respective input pixels obtained from the local memory.
One or more non-transitory computer storage media encoded with computer program instructions that when executed by an image processor comprising an execution lane array and a two-dimensional shift-register array, causes the image processor to perform operations comprising:
- loading data within an input image region into a two-dimensional shift-register array;
- computing a local support region size needed to obtain input pixels required to compute each respective output pixel in an output image region;
- traversing, by each of a plurality of execution lanes using the two-dimensional shift-register array, a respective local support region having the computed local support region size and storing input pixels encountered during the traversal into local memory of the image processor;
- obtaining, by each execution lane from the local memory of the image processor, one or more respective input pixels required to compute a respective output pixel by the execution lane;
- and
- computing, by each execution lane, a respective output pixel using one or more respective input pixels obtained from the local memory.
Dependencies are inferred from the claim text.