Luma-based color matching
First Claim
1. A non-transitory computer readable medium storing a computer program which when executed by at least one processing unit performs a color matching operation, the computer program comprising sets of instructions for:
- identifying first and second images, each image comprising a plurality of pixels, each pixel comprising a luma component value;
based on analysis of the luma component values of the pixels of the first and second images, determining a set of transforms to modify pixel values of the first image so that the pixel values of the first image are similar to pixel values of the second image; and
applying the set of transforms to the first image such that the pixel values of the first image are similar to the pixel values of the second image, wherein the set of transforms to modify pixel values of the first image so that the pixel values of the first image are similar to the pixel values of the second image comprises a transform to modify luma component values of a first percentage of pixels in the first image such that, after the transform is applied, the first percentage of pixels in the first image, having luma component values that are within a range of luma component values, is equivalent to a second percentage of pixels in the second image having luma component values that are within the range of luma component values.
1 Assignment
0 Petitions
Accused Products
Abstract
Some embodiments provide a computer program for performing a color matching operation. The computer program identifies first and second images. Each image includes several pixels. Each pixel includes a luma component value. Based on analysis of the luma component values of the pixels of the first and second images, the computer program determines a set of transforms to modify pixel values of the first image so that the pixel values of the first image are similar to pixel values of the second image. The computer program applies the set of transforms to the first image such that the pixel values of the first image are similar to the pixel values of the second image.
58 Citations
28 Claims
-
1. A non-transitory computer readable medium storing a computer program which when executed by at least one processing unit performs a color matching operation, the computer program comprising sets of instructions for:
-
identifying first and second images, each image comprising a plurality of pixels, each pixel comprising a luma component value; based on analysis of the luma component values of the pixels of the first and second images, determining a set of transforms to modify pixel values of the first image so that the pixel values of the first image are similar to pixel values of the second image; and applying the set of transforms to the first image such that the pixel values of the first image are similar to the pixel values of the second image, wherein the set of transforms to modify pixel values of the first image so that the pixel values of the first image are similar to the pixel values of the second image comprises a transform to modify luma component values of a first percentage of pixels in the first image such that, after the transform is applied, the first percentage of pixels in the first image, having luma component values that are within a range of luma component values, is equivalent to a second percentage of pixels in the second image having luma component values that are within the range of luma component values. - View Dependent Claims (2, 4, 5, 6, 7, 8, 9, 10)
-
-
3. A non-transitory computer readable medium storing a computer program which when executed by at least one processing unit performs a color matching operation, the computer program comprising sets of instructions for:
-
identifying first and second images, each image comprising a plurality of pixels, each pixel comprising a luma component value; based on analysis of the luma component values of the pixels of the first and second images, determining a set of transforms to modify pixel values of the first image so that the pixel values of the first image are similar to pixel values of the second image; and applying the set of transforms to the first image such that the pixel values of the first image are similar to the pixel values of the second image, wherein each pixel further comprises a saturation component value, wherein the set of transforms to modify the pixel values of the first image so that the pixel values of the first image are similar to the pixel values of the second image comprises a transform to modify a set of pixels of the first image having a particular luma component value such that a first average saturation component value of the set of pixels of the first image is equivalent to a second average saturation component value of a set of pixels of the second image having the particular luma component value. - View Dependent Claims (26, 27, 28)
-
-
11. A non-transitory computer readable medium storing a computer program which when executed by at least one processing unit matches colors of a first image to colors of a second image, the program comprising sets of instructions for:
-
determining a first set of operations for matching brightness values of the first image to brightness values of the second image, wherein matching the brightness values comprises identifying a first plurality of ranges of brightness values for the first image based on a set of percentiles of pixel brightness, identifying a second plurality of ranges of brightness values for the second image based on the set of percentiles of pixel brightness, and for each range of brightness values in the first image, determining an operation to change the brightness values of the pixels in the range of brightness values in the first image to be within the corresponding range of brightness values in the second image; determining a second set of operations for matching hue values of the first image to hue values of the second image, the second set of operations further for application after the first set of operations matches the brightness values of the first image to the brightness values of the second image; determining a third set of operations for matching saturation values of the first image to saturation values of the second image, the third set of operations further for application after the second set of operations matches the hue values of the first image to the hue values of the second image; and determining a transform that incorporates the first, second, and third sets of operations. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A method of color matching a first image to a second image, each image comprising a plurality of pixels, each pixel comprising a set of color component values and a brightness component value for representing a brightness level of a plurality of brightness levels, the method comprising:
-
analyzing the brightness component values of the plurality of pixels in the first image to identify a first set of at least two ranges of brightness levels; analyzing the brightness component values of the plurality of pixels in the second image to identify a second set of ranges of brightness levels; for each range in the first set of ranges of brightness levels, determining a transform for matching pixels in the first image having brightness component values within the range to pixels in the second image having brightness component values within the corresponding range in the second set of ranges of brightness levels; and applying the transforms to the first image in order to modify color component values of pixels in the first image to color component values of pixels in the second image, wherein the transform of each range in the first set of ranges of brightness levels maps the range of brightness levels of the range in the first set of ranges to the range of brightness levels of a corresponding range in the second set of ranges. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
Specification