# US 2017/0257571 A1 · Stabilization of low-light video

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

- Number: US 2017/0257571 A1
- Document ID: US20170257571A1
- Status: Published application
- Kind: A1
- Application number: 15/603,955
- Filed: 2017-05-24
- Published: 2017-09-07
- Earliest claimed: 2014-03-27
- Assignees: Facebook, Inc.
- Applicants: Facebook, Inc.
- Inventors: Alexandre Karpenko
- Web page: https://patentgrep.com/patent/US20170257571A1

## CPC

- H04N 23/68: for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N 23/6812: {based on additional sensors, e.g. acceleration sensors}
- H04N 23/682: {Vibration or motion blur correction}
- H04N 23/684: {performed by controlling the image sensor readout, e.g. by controlling the integration time}
- H04N 23/71: Circuitry for evaluating the brightness variation
- H04N 23/73: by influencing the exposure time
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## Abstract

In one embodiment, a method includes determining a first maximum exposure time for capturing one or more image frames of a video clip. The first maximum exposure time represents an exposure time below which the captured image frames are substantially free of motion-blur artifacts and above which the captured image frames exhibit motion-blur artifacts. The first maximum exposure time is based on a first amount of motion of a computing device and a first light level. The method also includes capturing the image frames with an exposure time that is less than or equal to the first maximum exposure time. While the capture is in progress, a second amount of motion and a second light level are determined. Based on the second amount of motion and the second light level, the method determines whether the first maximum exposure time should be adjusted to a second maximum exposure time.

## Claims

### Claim 1

A method comprising:
by a computing device, determining a first maximum exposure time for capturing one or more image frames of a video clip, wherein the first maximum exposure time is based on a first amount of motion of the computing device and a first light level;
by the computing device, initiating capture of the image frames, wherein each of the captured image frames has an exposure time that is less than or equal to the first maximum exposure time;
by the computing device, while the capture of the image frames is in progress, determining a second amount of motion of the computing device and a second light level; and
by the computing device, determining whether to adjust the first maximum exposure time to a second maximum exposure time based on the second amount of motion and the second light level.

### Claim 2 (depends on 1)

The method of claim 1, further comprising, in response to determining that the first maximum exposure time should be adjusted to the second maximum exposure time, continuing capture of the image frames, wherein each of the continuing captured image frames has an exposure time that is less than or equal to the second maximum exposure time.

### Claim 3 (depends on 1)

The method of claim 1, wherein the first amount of motion of the computing device and the second amount of motion of the computing device are determined by a motion sensor of the computing device.

### Claim 4 (depends on 3)

The method of claim 3, wherein the motion sensor comprises a gyroscope or accelerometer.

### Claim 5 (depends on 1)

The method of claim 1, wherein the first maximum exposure time and the second maximum exposure time each represent an exposure time below which the captured image frames are substantially free of motion-blur artifacts and above which the captured image frames exhibit motion-blur artifacts.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
by the computing device, based on the first light level, determining a first candidate exposure time for capturing the image frames;
by the computing device, if the first candidate exposure time is less than the first maximum exposure time, then capturing the image frames with the exposure time equal to the first candidate exposure time, else capturing the image frames with the exposure time equal to the first maximum exposure time;
by the computing device based on the second light level, determining a second candidate exposure time for capturing the image frames; and
by the computing device, if the second candidate exposure time is less than the second maximum exposure time, then capturing the image frames with the exposure time equal to the second candidate exposure time, else capturing the image frames with the exposure time equal to the second maximum exposure time.

### Claim 7 (depends on 1)

The method of claim 1, further comprising applying a video-stabilization routine to the video clip based on the first amount of motion and the second amount of motion.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
by the computing device, receiving orientation information from a motion sensor, the orientation indicating a plurality of orientations or motions of the computing device; and
by the computing device, applying a low-pass filter to the orientation information to determine a stabilized orientation of the computing device.

### Claim 9 (depends on 1)

The method of claim 1, wherein the capturing the image frames comprises capturing the image frames at a frame rate that is higher than a standard frame rate, further comprising:
combining two or more successive captured image frames into a single frame of a combined-frame video clip, wherein the combined-frame video clip has the standard frame rate.

### Claim 10 (depends on 9)

The method of claim 9, wherein the frame rate for capturing the image frames is four times the standard frame rate, and wherein the combining the two or more successive captured image frames into the single frame comprises combining four successive captured image frames into the single frame.

### Claim 11

One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
determine a first maximum exposure time for capturing one or more image frames of a video clip, wherein the first maximum exposure time is based on a first amount of motion of the computing device and a first light level;
initiate capture of the image frames, wherein each of the captured image frames has an exposure time that is less than or equal to the first maximum exposure time;
while the capture of the image frames is in progress, determine a second amount of motion of the computing device and a second light level; and
determine whether to adjust the first maximum exposure time to a second maximum exposure time based on the second amount of motion and the second light level.

### Claim 12 (depends on 11)

The media of claim 11, further comprising, in response to determining that the first maximum exposure time should be adjusted to the second maximum exposure time, continuing capture of the image frames, wherein each of the continuing captured image frames has an exposure time that is less than or equal to the second maximum exposure time.

### Claim 13 (depends on 11)

The media of claim 11, wherein the first amount of motion of the computing device and the second amount of motion of the computing device are determined by a motion sensor of the computing device.

### Claim 14 (depends on 13)

The media of claim 13, wherein the motion sensor comprises a gyroscope or accelerometer.

### Claim 15 (depends on 11)

The media of claim 11, wherein the first maximum exposure time and the second maximum exposure time each represent an exposure time below which the captured image frames are substantially free of motion-blur artifacts and above which the captured image frames exhibit motion-blur artifacts.

### Claim 16 (depends on 11)

The media of claim 11, further comprising:
by the computing device, based on the first light level, determining a first candidate exposure time for capturing the image frames;
by the computing device, if the first candidate exposure time is less than the first maximum exposure time, then capturing the image frames with the exposure time equal to the first candidate exposure time, else capturing the image frames with the exposure time equal to the first maximum exposure time;
by the computing device based on the second light level, determining a second candidate exposure time for capturing the image frames; and
by the computing device, if the second candidate exposure time is less than the second maximum exposure time, then capturing the image frames with the exposure time equal to the second candidate exposure time, else capturing the image frames with the exposure time equal to the second maximum exposure time.

### Claim 17 (depends on 11)

The media of claim 11, further comprising applying a video-stabilization routine to the video clip based on the first amount of motion and the second amount of motion.

### Claim 18 (depends on 11)

The media of claim 11, further comprising:
by the computing device, receiving orientation information from a motion sensor, the orientation indicating a plurality of orientations or motions of the computing device; and
by the computing device, applying a low-pass filter to the orientation information to determine a stabilized orientation of the computing device.

### Claim 19 (depends on 11)

The media of claim 11, wherein the capturing the image frames comprises capturing the image frames at a frame rate that is higher than a standard frame rate, further comprising:
combining two or more successive captured image frames into a single frame of a combined-frame video clip, wherein the combined-frame video clip has the standard frame rate.

### Claim 20

A system comprising:
one or more processors; and
a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to:
determine a first maximum exposure time for capturing one or more image frames of a video clip, wherein the first maximum exposure time is based on a first amount of motion of the computing device and a first light level;
initiate capture of the image frames, wherein each of the captured image frames has an exposure time that is less than or equal to the first maximum exposure time;
while the capture of the image frames is in progress, determine a second amount of motion of the computing device and a second light level; and
determine whether to adjust the first maximum exposure time to a second maximum exposure time based on the second amount of motion and the second light level.
