# US 10,375,367 B2 · Systems and methods for digital photography

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,375,367 B2
- Document ID: US10375367B2
- Status: Granted
- Kind: B2
- Application number: 16/296,038
- Filed: 2019-03-07
- Published: 2019-07-04
- Granted: 2019-08-06
- Earliest claimed: 2014-02-11
- Assignees: Duelight LLC
- Applicants: Duelight LLC
- Inventors: William Guie Rivard; Adam Barry Feder; Brian J. Kindle
- Web page: https://patentgrep.com/patent/US10375367B2

## CPC

- H04N 23/88: for colour balance, e.g. white-balance circuits or colour temperature control
- H04N 1/3871: {the composed originals being of different kinds, e.g. low- and high-resolution originals}
- H04N 9/76: for mixing of colour signals (H04N9/75 takes precedence)
- H04N 23/56: provided with illuminating means
- H04N 23/631: {Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters}
- H04N 23/73: by influencing the exposure time
- H04N 23/74: by influencing the scene brightness using illuminating means
- H04N 23/951: by using two or more images to influence resolution, frame rate or aspect ratio
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

A system, method, and computer program product are provided for rendering a combined image. In use, two or more source images including at least one strobe image and at least one ambient image are loaded. A motion transform is estimated between the two or more source images. The two or more source images are aligned based on the motion transform. Additionally, at least one pixel of the two or more source images is color-corrected based on the alignment. A first blend weight associated with the two or more source images is initialized, a first combined image from the two or more source images is rendered based on the color-correction and the first blend weight. Additional systems, methods, and computer program products are also presented.

## Claims

### Claim 1

A device, comprising:
a non-transitory memory storing instructions; and
one or more processors in communication with the non-transitory memory, wherein the one or more processors execute the instructions to:
load two or more source images including at least one strobe image and at least one ambient image;
estimate a motion transform between the two or more source images;
align the two or more source images based on the motion transform;
color-correct at least one pixel of the two or more source images based on the alignment;
initialize a first blend weight associated with the two or more source images; and
render a first combined image from the two or more source images based on the color-correction and the first blend weight.

### Claim 2 (depends on 1)

The device of claim 1, wherein the device is configured such that the color-correction is applied to data of the at least one strobe image.

### Claim 3 (depends on 2)

The device of claim 2, wherein the device is configured such that the color-correction is applied as a frame-level correction based on at least one of a red correction, a green correction, or a blue correction.

### Claim 4 (depends on 1)

The device of claim 1, wherein the one or more processors execute the instructions to compute a cost function for the first combined image by interpolating one or more attributes for each of the two or more source images where the one or more attributes includes at least one of a low intensity mark, a high intensity mark, or a half intensity value, and determine that the cost function is minimized.

### Claim 5 (depends on 4)

The device of claim 4, wherein the device is configured such that the cost function is computed from at least one of:
a plurality of median values from each of the two or more source images; or
a sum of a distance from the low intensity mark to a first half intensity value, and a distance from the high intensity mark and a second half intensity value.

### Claim 6 (depends on 1)

The device of claim 1, wherein the one or more processors execute the instructions to display the first combined image and a user interface element associated with the first combined image, the user interface element including a control element.

### Claim 7 (depends on 6)

The device of claim 6, wherein the device is configured such that a position of the control element includes an offset estimate based on a user preference or a history of control element overrides.

### Claim 8 (depends on 1)

The device of claim 1, the device is configured such that the color-correction is applied as a patch-level analysis based on correcting a region of the at least one strobe image to be consistent with an overall color balance with an associated region of the at least one ambient image.

### Claim 9 (depends on 1)

The device of claim 1, wherein the device is configured such that the first blend weight is a function of a user interface element, and modifying the user interface element overrides the first blend weight.

### Claim 10 (depends on 1)

The device of claim 1, wherein the one or more processors execute the instructions to compute a cost function for the first combined image.

### Claim 11 (depends on 10)

The device of claim 10, wherein the device is configured such that the cost function is proportional to an area of the two or more source images, the area including a subset of the two or more source images that is either overexposed or underexposed.

### Claim 12 (depends on 10)

The device of claim 10, wherein the device is configured such that the cost function is based on a sum where each pixel within the combined image adds a value to the cost function if a pixel intensity is below a low threshold or above a high threshold.

### Claim 13 (depends on 10)

The device of claim 10, wherein the device is configured such that the cost function is based on a sum where each pixel within the combined image adds an increasing value to the cost function in proportion to pixel intensity.

### Claim 14 (depends on 13)

The device of claim 13, wherein the device is configured such that as the pixel intensity increases above a high threshold or as the pixel intensity decreases below a low threshold, an increasing cost value is added to the cost function.

### Claim 15 (depends on 14)

The device of claim 14, wherein the device is configured such that the high threshold is ninety percent (90%) of maximum defined intensity for each pixel and the low threshold is ten percent (10%) of the maximum defined intensity for each pixel.

### Claim 16 (depends on 10)

The device of claim 10, wherein the device is configured such that the cost function includes a repulsion cost, wherein the repulsion cost increases the cost function as a user interface element approaches a preconfigured anchor point of the user interface element.

### Claim 17 (depends on 10)

The device of claim 10, wherein the device is configured such that the cost function includes an attraction cost, wherein the attraction cost decreases the cost function as a user interface element approaches a preconfigured anchor point of the user interface element.

### Claim 18 (depends on 1)

The device of claim 1, wherein the device is configured such that the first blend weight is based on exposure coordinates of the two or more source images, the exposure coordinates being selected based on searching the two or more source images for a coordinate that satisfies a corresponding exposure requirement.

### Claim 19

A computer program product comprising computer executable instructions stored on a non-transitory computer readable medium that when executed by a processor instruct the processor to:
load two or more source images including at least one strobe image and at least one ambient image;
estimate a motion transform between the two or more source images;
align the two or more source images based on the motion transform;
color-correct at least one pixel of the two or more source images based on the alignment;
initialize a first blend weight associated with the two or more source images; and
render a first combined image from the two or more source images based on the color-correction and the first blend weight.

### Claim 20

A computer-implemented method, comprising:
loading, using a processor, two or more source images including at least one strobe image and at least one ambient image;
estimating, using the processor, a motion transform between the two or more source images;
aligning, using the processor, the two or more source images based on the motion transform;
color-correcting, using the processor, at least one pixel of the two or more source images based on the alignment;
initializing, using the processor, a first blend weight associated with the two or more source images; and
rendering, using the processor, a first combined image from the two or more source images based on the color-correction and the first blend weight.
