IP Library Granted Patent US 9,406,147
Granted Patent B2
US 9,406,147 · App. 14/568,045 · Granted Aug 2, 2016

Color balance in digital photography

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,406,147
App. No.
14/568,045
Granted
Aug 2, 2016
Kind
B2
Abstract

A system, method, and computer program product are provided for generating a blended pixel. In use, a first image and a second image are received. Next, a motion transform between the first image and the second image is estimated, and an aligned first image and an aligned second image are rendered based on the motion transform. Further, a first intensity for a first pixel associated with the aligned first image is calculated, a second intensity for a second pixel associated with the aligned second image is calculated, and a blend value based on the first intensity, the second intensity, and a blend surface function is calculated. Additionally, a blended pixel associated is generated with a blended image by blending the first pixel with the second pixel based on the blend value. Lastly, the blended pixel within the blended image is stored. Additional systems, methods, and computer program products are also presented.

Claims (72)

1. An apparatus, comprising:

circuitry for:

receiving a first image and a second image;

estimating a motion transform between the first image and the second image;

rendering an aligned first image and an aligned second image based on the motion transform;

calculating a first intensity for a first pixel associated with the aligned first image;

calculating a second intensity for a second pixel associated with the aligned second image;

calculating a blend value based on the first intensity, the second intensity, and a blend surface function;

generating a blended pixel associated with a blended image by blending the first pixel with the second pixel based on the blend value; and

storing the blended pixel within the blended image;

wherein the blend surface function comprises a first region, a second region, and an intervening discontinuity;

wherein the first region and the second region are each associated with one or more images.

2. The apparatus of claim 1 , wherein the first image comprises a strobe image, and the second image comprises an ambient image.

3. The apparatus of claim 2 , wherein the blend value determines a first contribution of the first pixel associated with the strobe image, and a second contribution of the second pixel associated with the ambient image, associated with the blended pixel.

4. The apparatus of claim 1 , further comprising dynamically configuring the blend surface function based on the aligned first image and the aligned second image.

5. The apparatus of claim 4 , wherein dynamically configuring comprises blending two or more blend surfaces.

6. The apparatus of claim 4 , wherein dynamically configuring comprises modifying at least one region of a blend surface according to intensity clustering associated with the first image and the second image.

7. The apparatus of claim 1 , further comprising dynamically configuring the blend surface function based on a first parameter associated with a user interface tool.

8. The apparatus of claim 1 , wherein calculating the blend value comprises blurring two or more blend value samples associated with the first pixel and the second pixel.

9. The apparatus of claim 1 , wherein the first image comprises an ambient image, and the second image comprises a strobe image.

10. The apparatus of claim 9 , wherein the blend value determines a first contribution of the first pixel associated with the ambient image, and a second contribution of the second pixel associated with the strobe image, associated with the blended pixel.

11. The apparatus of claim 1 , wherein the first intensity and the second intensity comprise coordinates for selecting a point on a blend surface which corresponds to the blend surface function.

12. The apparatus of claim 11 , wherein the blend surface comprises a first region, a second region, and an intervening transition region.

13. The apparatus of claim 11 , wherein the blend surface comprises a strobe dominant region and an ambient dominant region.

14. The apparatus of claim 11 , wherein the blend surface is pre-computed and stored as a texture map.

15. The apparatus of claim 1 , wherein rendering the aligned first image and the aligned second image includes setting a common resolution to be applied to the aligned first image and the aligned second image.

16. The apparatus of claim 1 , wherein the first intensity and the second intensity are calculated using an intensity function, wherein the intensity function includes summing two or more sets of a contribution constant and a color intensity value.

17. The apparatus of claim 16 , wherein each contribution constant and each color intensity value are associated with at least one of red, green, and blue color.

18. A computer program product embodied on a non-transitory computer readable medium, comprising:

code for receiving a first image and a second image;

code for estimating a motion transform between the first image and the second image;

code for rendering an aligned first image and an aligned second image based on the motion transform;

code for calculating a first intensity for a first pixel associated with the aligned first image;

code for calculating a second intensity for a second pixel associated with the aligned second image;

code for calculating a blend value based on the first intensity, the second intensity, and a blend surface function;

code for generating a blended pixel associated with a blended image by blending the first pixel with the second pixel based on the blend value; and

code for storing the blended pixel within the blended image;

wherein the blend surface function comprises a first region, a second region, and an intervening discontinuity;

wherein the first region and the second region are each associated with one or more images.

19. A method, comprising:

receiving a first image and a second image;

estimating a motion transform between the first image and the second image;

rendering an aligned first image and an aligned second image based on the motion transform;

calculating a first intensity for a first pixel associated with the aligned first image;

calculating a second intensity for a second pixel associated with the aligned second image;

calculating a blend value based on the first intensity, the second intensity, and a blend surface function;

generating a blended pixel associated with a blended image by blending the first pixel with the second pixel based on the blend value; and

storing the blended pixel within the blended image;

wherein the blend surface function comprises a first region, a second region, and an intervening discontinuity;

wherein the first region and the second region are each associated with one or more images.

20. An apparatus, comprising:

circuitry for:

receiving a first image and a second image;

estimating a motion transform between the first image and the second image;

rendering an aligned first image and an aligned second image based on the motion transform;

calculating a first intensity for a first pixel associated with the aligned first image;

calculating a second intensity for a second pixel associated with the aligned second image;

calculating a blend value based on the first intensity, the second intensity, and a blend surface function;

generating a blended pixel associated with a blended image by blending the first pixel with the second pixel based on the blend value; and

storing the blended pixel within the blended image;

wherein calculating the blend value comprises blurring two or more blend value samples associated with the first pixel and the second pixel.

21. An apparatus, comprising:

circuitry for:

receiving a first image and a second image;

estimating a motion transform between the first image and the second image;

rendering an aligned first image and an aligned second image based on the motion transform;

calculating a first intensity for a first pixel associated with the aligned first image;

calculating a second intensity for a second pixel associated with the aligned second image;

calculating a blend value based on the first intensity, the second intensity, and a blend surface function;

generating a blended pixel associated with a blended image by blending the first pixel with the second pixel based on the blend value; and

storing the blended pixel within the blended image;

wherein the first intensity and the second intensity comprise coordinates for selecting a point on a blend surface which corresponds to the blend surface function.

Assignments (2)
SECURITY INTEREST Recorded Jul 30, 2021
From: DUELIGHT, LLC
To: ZILKA KOTAB, P.C.
Reel/Frame 057043/0301 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2016
From: RIVARD, WILLIAM; FEDER, ADAM; KINDLE, BRIAN
To: DUELIGHT LLC
Reel/Frame 038957/0363 →