Method and system for stabilizing video data
View Patent ↗The invention relates to a method for stabilizing a video recording of a scene made by a video camera and represented by video data, said method comprising the steps of subdividing said video data into a plurality of successive frames themselves divided into a plurality of blocks, determining for each block of each frame a motion vector representing the direction and magnitude of the motion in said block, said vector at an instant t being called global motion vector GMV(t) and representing said motion at the instant t with respect to the previous frame, defining a modified vector called integrated motion vector IMV(t) at the instant t and designating the final motion vector correction to be applied to the current frame in view of its motion correction, said integrated motion vector being given by the expression:IMV(t) = GMV(t)+a(E). WIV(t−1) where a(E) is a variable adaptive factor depending on an expression E and IMV(t−1) is the integrated motion vector corresponding to the previous current frame, and modifying the video data according to the modified integrated motion vectors defined for each successive current frame.
1. A method for stabilizing video data, said method comprising the steps of:
subdividing said video into a plurality of successive frames
dividing each of said successive frames into a plurality of blocks;
determining for each block of each frame a motion vector representing the direction and magnitude of the motion in said block, said vector GMV at an instant t being called global motion vector GMV(t) and representing said motion at the instant t with respect to the previous frame;
defining a modified vector, called integrated motion vector IMV(t) at the instant t and designating the final motion vector correction to be applied to the current frame in view of its motion correction, said integrated motion vector being given by the expression:
IMV ( t )= GMV ( t )+ a ( E ) . IMV ( t− 1)
where GMV(t) is the global motion vector of the current frame at the instant t, a(E) is a variable adaptive factor depending on an expression E and IMV(t−1) is the integrated motion vector corresponding to the previous current frame; and
modifying the video data according to the modified integrated motion vectors defined for each successive current frame.
2. A stabilizing method according to claim 1 , in which said variable adaptive factor depends on the sum of the two last global motion vectors.
3. A stabilizing method according to claim 2 , in which the variable adaptive factor a(E) is determined independently for the horizontal and vertical coordinates of the vectors.
4. A stabilizing method according to claim 1 , comprising an additional correction step, provided for checking if the correction of motion vector is not above a given threshold and, if yes, modifying said correction so that it stays within a predetermined allowed range.
5. A system for stabilizing video data, said system comprising:
a frame storage for storing a plurality of successive frames of video data of the video recording;
a processor coupled to said frame storage for dividing each frame into a plurality of blocks, determining for each block of each frame a motion vector which represents the direction and magnitude of the motion in said block, said vector at an instant t being called global motion vector GMV(t) and representing said motion at the instant t with respect to the previous frame, defining a motion vector, called integrated motion vector IMV(t) at the instant t and designating the final motion vector correction to be applied to the current frame in view of its motion correction, said integrated motion vector being given by the expression
IMV ( t )= GMV ( t )+ a ( E ) . IMV ( t− 1)
where GMV(t) is the global motion vector of the current frame at the instant t, a(E) is a variable adaptive factor depending on an expression E and IMV(t−1) is the integrated motion vector corresponding to the previous current frame, and modifying the video data according to the modified integrated motion vectors defined for each successive current frame.