Apparatus and method for non-uniform image scaling
First Claim
1. A process for obtaining a value for a pixel in a destination image produced by non-uniform transformation of a source image, comprising the steps of:
- selecting a reconstruction filter;
applying an affine transformation determined by the non-uniform transformation on an area centered on the pixel in the destination image to define at least two axes in a source image space;
determining a linear transformation between an area in the source image space and the at least two axes, wherein the linear transformation corresponds to the non-uniform transformation and represents the shape of the area in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation, wherein the area is centered around a center of the at least two axes;
modifying the selected reconstruction filter using the linear transformation to create a modified reconstruction filter with a support region;
identifying which pixels from the source image are included in the support region of the modified reconstruction filter; and
determining the value for the pixel in the destination image from pixel centers of the source image included in the support of the modified reconstruction filter.
2 Assignments
0 Petitions
Accused Products
Abstract
A source image may be manipulated by a computer to include special graphics effects. The source image may be used for still pictures or motion video applications and may include a single image or a sequence of images. The special graphics effects applied to the source image to create a desired destination image include various non-uniform scaling or arbitrary distortion functions. The effect has a corresponding affine transformation that approximates the non-uniform scaling function. This affine transformation is used to define an ellipse in the source image. A linear transformation from a unit circle in the source image to the ellipse in the source image is calculated. The linear transformation is used to modify a reconstruction filter in the source image. A pixel value in the destination image is determined by identifying pixels included in a support of the modified reconstruction filter in the source image in order to reduce artifacts in non-uniform scaling applications.
93 Citations
69 Claims
-
1. A process for obtaining a value for a pixel in a destination image produced by non-uniform transformation of a source image, comprising the steps of:
-
selecting a reconstruction filter; applying an affine transformation determined by the non-uniform transformation on an area centered on the pixel in the destination image to define at least two axes in a source image space; determining a linear transformation between an area in the source image space and the at least two axes, wherein the linear transformation corresponds to the non-uniform transformation and represents the shape of the area in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation, wherein the area is centered around a center of the at least two axes; modifying the selected reconstruction filter using the linear transformation to create a modified reconstruction filter with a support region; identifying which pixels from the source image are included in the support region of the modified reconstruction filter; and determining the value for the pixel in the destination image from pixel centers of the source image included in the support of the modified reconstruction filter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 25, 32)
-
-
11. A destination image produced by the process of non-uniformly transforming a source image performed by a process that includes:
-
modifying a reconstruction filter according to a linear transformation corresponding to the non-uniform transformation function; and applying the modified reconstruction filter to the source image by identifying pixels of the source image included in a support of the modified reconstruction filter and using the value of each of the identified pixels to determine the value of a destination pixel to produce the destination image. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 26, 29)
-
-
19. A computer-implemented process for generating a non-uniformly transformed destination image including the steps of:
-
determining an affine transformation of a source image based on a non-uniform transformation; defining axes in the source image according to the affine transformation; calculating a linear transformation from an area in the source image to the axes, wherein the linear transformation corresponds to a non-uniform transformation and represents the shape of an area in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation; modifying a reconstruction filter in the source image according to the linear transformation; identifying pixels of the source image included in a support of the modified reconstruction filter; calculating the value of a point in the destination image based on the value of each of the identified pixels in the source image; and displaying the non-uniformly transformed destination image. - View Dependent Claims (27, 30, 33)
-
-
20. A computer system for generating a representation of a non-uniformly transformed source image including a processor and a memory connected to the processor for storing a program, which when executed by the processor performs the steps of:
-
receiving a source image, a desired special effect, and a reconstruction filter; modifying the reconstruction filter based on the application of the desired special effect to the source image; identifying pixels in the source image included in a support of the modified reconstruction filter; determining the value of a pixel in a destination based on the identified pixels; and rendering the destination image. - View Dependent Claims (21, 22, 23, 24, 28, 31)
-
-
34. A process for obtaining a value for a pixel in a destination image produced by non-uniform transformation of a source image, comprising the steps of:
-
selecting a reconstruction filter; determining a linear transformation between a unit circle in a source image space and at least two orthogonal axes in the source image space, wherein the linear transformation corresponds to the non-uniform transformation and represents the shape of the unit circle in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation, wherein the unit circle is centered around a center of the at least two orthogonal axes; modifying the selected reconstruction filter using the transformation to create a modified reconstruction filter with a support region; identifying which pixels from the source image are included in the support region of the modified reconstruction filter; and determining the value for the pixel in the destination image from pixel centers of the source image included in the support of the modified reconstruction filter. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. A process for obtaining a value for a pixel in a destination image produced by non-uniform transformation of a source image, comprising the steps of:
-
selecting a reconstruction filter; determining a linear transformation between an area in a source image space and at least two axes, wherein the linear transformation corresponds to the non-uniform transformation and represents the shape of the area in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation, wherein the area is centered around a center of the at least two axes, wherein the at least two axes are at least two units in length, wherein each unit is equal to a distance between two adjacent pixels; modifying the selected reconstruction filter using the transformation to create a modified reconstruction filter with a support region; identifying which pixels from the source image are included in the support region of the modified reconstruction filter; and determining the value for the pixel in the destination image from pixel centers of the source image included in the support of the modified reconstruction filter. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59)
-
-
60. A computer-implemented process for generating a non-uniformly transformed destination image including the steps of:
-
calculating a linear transformation from a unit circle in a source image to orthogonal axes in the source image, wherein the linear transformation corresponds to a non-uniform transformation and represents the shape of a unit circle in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation; modifying a reconstruction filter in the source image according to the linear transformation; identifying pixels of the source image included in a support of the modified reconstruction filter; calculating the value of a point in the destination image based on the value of each of the identified pixels in the source image; and displaying the non-uniformly transformed destination image. - View Dependent Claims (61, 62, 63, 64)
-
-
65. A computer-implemented process for generating a non-uniformly transformed destination image including the steps of:
-
calculating a linear transformation from an area in a source image to axes in the source image, wherein the linear transformation corresponds to a non-uniform transformation and represents the shape of the area in the destination image transformed by a transformation defined according to the inverse of the non-uniform transformation, wherein the axes are at least two units in length, wherein each unit is equal to a distance between two adjacent pixels; modifying a reconstruction filter in the source image according to the linear transformation; identifying pixels of the source image included in a support of the modified reconstruction filter; calculating the value of a point in the destination image based on the value of each of the identified pixels in the source image; and displaying the non-uniformly transformed destination image. - View Dependent Claims (66, 67, 68, 69)
-
Specification