GENERIC PLATFORM VIDEO IMAGE STABILIZATION
First Claim
1. A method of digital video stabilization, the method comprising performing steps on a computing device of:
- evaluating the computing device to determine availability of any of various multimedia digital signal processing components on the computing device;
determining from the results of said evaluating which available multimedia DSP component to utilize for processing at least one part of processing a digital video stabilization according to a hierarchical structure for ordering multimedia DSP components by criteria comprising at least performance of the digital video stabilization, the digital video stabilization comprising at least processing of a local motion vector estimation, processing motion vectors for estimation of a global motion transform representing jittery video motion, and processing an image warping based on the global motion transform to compensate the jittery video motion; and
processing digital video stabilization of a video segment on the computing device utilizing the determined available multimedia DSP component for said at least one part of processing the digital video stabilization.
2 Assignments
0 Petitions
Accused Products
Abstract
Video image stabilization provides better performance on a generic platform for computing devices by evaluating available multimedia digital signal processing components, and selecting the available components to utilize according to a hierarchy structure for video stabilization performance for processing parts of the video stabilization. The video stabilization has improved motion vector estimation that employs refinement motion vector searching according to a pyramid block structure relationship starting from a downsampled resolution version of the video frames. The video stabilization also improves global motion transform estimation by performing a random sample consensus approach for processing the local motion vectors, and selection criteria for motion vector reliability. The video stabilization achieves the removal of hand shakiness smoothly by real-time one-pass or off-line two-pass temporal smoothing with error detection and correction.
-
Citations
20 Claims
-
1. A method of digital video stabilization, the method comprising performing steps on a computing device of:
-
evaluating the computing device to determine availability of any of various multimedia digital signal processing components on the computing device; determining from the results of said evaluating which available multimedia DSP component to utilize for processing at least one part of processing a digital video stabilization according to a hierarchical structure for ordering multimedia DSP components by criteria comprising at least performance of the digital video stabilization, the digital video stabilization comprising at least processing of a local motion vector estimation, processing motion vectors for estimation of a global motion transform representing jittery video motion, and processing an image warping based on the global motion transform to compensate the jittery video motion; and processing digital video stabilization of a video segment on the computing device utilizing the determined available multimedia DSP component for said at least one part of processing the digital video stabilization. - View Dependent Claims (2, 3, 4)
-
-
5. A method of digital video stabilization, the method comprising performing steps on a computing device of:
-
processing of a local motion vector estimation for each of a plurality of frames of each scene of a video segment, wherein the processing of the local motion vector estimation comprises for each said frame; downsampling said each frame and a reference frame associated with said each frame by one or more times to form a plurality of versions of said each frame at a plurality of resolutions, wherein a lowest resolution version of said each frame has a plurality of blocks associated as a pyramid structure to a successively larger number of blocks at corresponding locations in each higher resolution version of said each frame; for the lowest resolution version of said each frame, estimating motion vectors of the blocks of said lowest resolution version frame using a full search motion vector estimation processing of the associated lowest resolution version reference frame; for each successively higher resolution version of said each frame, estimating motion vectors of the blocks of said successively higher resolution version frame using a refinement search starting from the motion vector estimated for the associated block of the preceding lower resolution version frame according to the pyramid structure; and producing estimated local motion vectors for the blocks of the original resolution version of said each frame; processing the estimated local motion vectors of said each frame for estimation of a global motion transform representing jittery video motion; and processing an image warping on said each based on the global motion transform to compensate the jittery video motion. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A digital video processing device for processing a video to apply video image stabilization to the video, the digital video processing device comprising:
-
a memory storing a generic platform video stabilization library program; at least one digital signal processing component; a processing unit operating to execute the video stabilization library program from the memory, wherein said execution of the video stabilization library program comprises; evaluating the at least one digital signal processing component of the digital video processing device; determining which of the at least one digital signal processing component to utilize for at least one part of processing a video for video image stabilization according to a hierarchical structure for ordering digital signal processing components by criteria comprising at least performance of the digital video stabilization; processing the video for video image stabilization in part by processing frames of the video to estimate local motion vectors of the frames, processing the motion vectors for estimation of a global motion transform representing jittery video motion of the frames, and processing an image warping of the frames based on the global motion transform to compensate the jittery video motion, wherein said processing the video executes programming functions in the generic platform video stabilization library program to utilize the determined digital signal processing component for the at least one part of processing the video for image stabilization. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification