Methods and Apparatus for Robust Video Stabilization
First Claim
1. A method, comprising:
- performing, by one or more computers;
partitioning an input video sequence into one or more factorization windows and one or more transition windows according to two-dimensional (2D) feature trajectories in the video sequence, each window including one or more contiguous frames of the video sequence, wherein a factorization window includes frames to be processed by a factorization window stabilization technique, and wherein a transaction window includes frames to be processed by a transition window stabilization technique;
applying the factorization window stabilization technique to each of the one or more factorization windows;
applying the transition window stabilization technique to each of the one or more transition windows; and
applying one or more warping models to the frames in the video sequence according to the smoothed feature trajectories to generate a stabilized video sequence.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for robust video stabilization. A video stabilization technique applies a feature tracking technique to an input video sequence to generate feature trajectories. The technique applies a video partitioning technique to segment the input video sequence into factorization windows and transition windows. The technique smoothes the trajectories in each of the windows, in sequence. For factorization windows, a subspace-based optimization technique may be used. For transition windows, a direct track optimization technique that uses a similarity motion model may be used. The technique then determines and applies warping models to the frames in the video sequence. In at least some embodiments, the warping models may include a content-preserving warping model, a homography model, a similarity transform model, and a whole-frame translation model. The warped frames may then be cropped according to a cropping technique.
34 Citations
22 Claims
-
1. A method, comprising:
performing, by one or more computers; partitioning an input video sequence into one or more factorization windows and one or more transition windows according to two-dimensional (2D) feature trajectories in the video sequence, each window including one or more contiguous frames of the video sequence, wherein a factorization window includes frames to be processed by a factorization window stabilization technique, and wherein a transaction window includes frames to be processed by a transition window stabilization technique; applying the factorization window stabilization technique to each of the one or more factorization windows; applying the transition window stabilization technique to each of the one or more transition windows; and applying one or more warping models to the frames in the video sequence according to the smoothed feature trajectories to generate a stabilized video sequence. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
16. A system, comprising:
-
at least one processor; and a memory comprising program instructions, wherein the program instructions are executable by the at least one processor to; partition an input video sequence into one or more factorization windows and one or more transition windows according to two-dimensional (2D) feature trajectories in the video sequence, each window including one or more contiguous frames of the video sequence, wherein a factorization window includes frames to be processed by a factorization window stabilization technique, and wherein a transaction window includes frames to be processed by a transition window stabilization technique; apply the factorization window stabilization technique to each of the one or more factorization windows; apply the transition window stabilization technique to each of the one or more transition windows; and apply one or more warping models to the frames in the video sequence according to the smoothed feature trajectories to generate a stabilized video sequence. - View Dependent Claims (17, 18)
-
-
19. A non-transitory computer-readable storage medium storing program instructions, wherein the program instructions are computer-executable to implement:
-
partitioning an input video sequence into one or more factorization windows and one or more transition windows according to two-dimensional (2D) feature trajectories in the video sequence, each window including one or more contiguous frames of the video sequence, wherein a factorization window includes frames to be processed by a factorization window stabilization technique, and wherein a transaction window includes frames to be processed by a transition window stabilization technique; applying the factorization window stabilization technique to each of the one or more factorization windows; applying the transition window stabilization technique to each of the one or more transition windows; and applying one or more warping models to the frames in the video sequence according to the smoothed feature trajectories to generate a stabilized video sequence. - View Dependent Claims (20, 21, 22)
-
Specification