×

Distributed image stabilization

  • US 10,341,561 B2
  • Filed: 09/11/2015
  • Issued: 07/02/2019
  • Est. Priority Date: 09/11/2015
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method for stabilizing captured video frames, implemented in a distributed computer network, comprising:

  • analyzing, using a single one of one or more master processors, frames of a video to generate a list of per-frame transform for mitigating camera movement for each frame;

    partitioning, after analyzing, using the one or more master processors, the video into multiple video segments, wherein each video segment is assigned a bit rate based in part on a complexity of each video segment, wherein the complexity of each video segment is associated with an amount of bits in order to achieve a uniform quality in the video, and wherein each video segment comprises a plurality of consecutive frames and one or more overlapping frames of the video;

    dividing, using the one or more master processors, the list of per-frame transform into multiple portions corresponding to the multiple video segments;

    providing, from the one or more master processors to a plurality of worker processors, a different one of the multiple video segments generated from the partitioning, metadata indicating the one or more overlapping frames, and a corresponding portion of the list of per-frame transform;

    performing, by the plurality of worker processors, image stabilization on the received video segment and the corresponding portion of the list of per-frame transform to produce stabilized video segments, wherein a first worker processor of the plurality of worker processors produces a stabilized video segment including the one or more overlapping frames and a second worker processor of the plurality of worker processors skips the one or more overlapping frames based on the metadata;

    conveying the stabilized video segments from the plurality of worker processors to the one or more master processors; and

    generating, by the one or more master processors, a stabilized video from the stabilized video segments.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×