Method and apparatus for electronic image processing
AssigneeMicron Technology, Inc.
InventorKeith Slavin
Life of this patent
Estimating the term…
Abstract
A method and apparatus for electronic image processing are described. One embodiment includes a method of resizing an electronic image that includes image data in two dimensions. The method includes memory-to-memory processing with separable x and y processing. Processing occurs in one or more memory-to-memory passes. On each pass, processing can be one of: low-pass filtering; low-pass filtering and decimation by two; and resampling. Processing is configurable independently in each dimension. Filters are configured on each pass and in each dimension to low-pass filter or obtain gradients for resampling. A multiplexor selects resampling or low-pass filtering on each pass.
Claims14
An apparatus for resizing an electronic image comprised of image data, the apparatus comprising:
- a main memory read interface coupled to a main memory and configured to receive the image data;
- an input buffer coupled to the main memory interface and configured to format the image data received from the main memory interface;
- a finite impulse response (FIR) filter coupled to the input buffer and configured to receive samples of the image data to be processed, the FIR filter being adapted to perform at least one of a group of operations on the samples of image data in all dimensions on each pass through the image data, the group of operations including (a) low-pass filtering, (b) decimation by two, and (c) differentiating to produce signal gradients;
- a processor coupled to the FIR filter and adapted to configure the FIR filter for each pass using predetermined filter coefficients;
- a cubic model generator coupled to the FIR filter, wherein the cubic model generator is configured to receive a signal gradient output;
- and
- a cubic model evaluator coupled to the cubic model generator, wherein the cubic model evaluator is configured for evaluating a cubic model and generating a resample output.
An apparatus for resizing an image having image data in multiple dimensions, the apparatus comprising:
- a memory configured for storing image data;
- a memory interface operably coupled to the memory;
- one or more filters configured to process data in each of the multiple dimensions, the one or more filters being adapted to perform at least one of a group of operations during one pass of the image data, the group of operations including (a) decimation by two, (b) low-pass filtering, and (c) generating signal gradients for resampling, wherein the image data is processed in at least one pass and stored as processed image data in the memory;
- one or more cubic model generators configured to receive a signal gradient output for a certain one of the multiple dimensions and generate a cubic model for the certain one of the multiple dimensions;
- and
- a ratio system for each of the multiple dimensions, wherein each of the ratio systems is configured to (a) receive a predetermined resampling ratio comprising a numerator and a denominator, and (b) generate a Δt value for resampling.
A system for resizing an image that includes image data in multiple dimensions, the system comprising:
- a main memory configured to store the image data, configuration data, and control data;
- a memory interface operably coupled to the main memory and configured to receive the image data, store the image data, and format the image data into samples;
- a resizing engine configured to perform different operations on the image data on different passes of the image data through the resizing engine, the resizing engine being operably coupled to the memory interface to read formatted data from the main memory and to output processed image data back to the main memory, the resizing engine including a filter for each of the multiple dimensions, wherein the individual filters process data in corresponding multiple dimensions, the individual filters being adapted to perform at least one of a group of operations during one pass, the group of operations including (a) decimation by an integer factor, (b) low-pass filtering, and (c) generating signal gradients;
- wherein the resizing engine further comprises a cubic model generator for each of the multiple dimensions, the individual cubic model generators being configured to receive a signal gradient output from the filter, and generate a cubic model for the certain one of the multiple dimensions;
- and
- a controlling processor operably coupled to the resizing engine and configured to execute instructions to control the resizing engine, including instructions for calculating coefficients for configuring the resizing engine to perform different operations on the image data, and (b) instructions for configuring the resizing engine for each pass.
Dependencies are inferred from the claim text.