Patent ID: 7561621

Claim:
A method of detecting a motion vector comprising: (a) extracting, from a (m+k)-th frame assumed between a m-th frame (m is an integer) of an image formed of a plurality of pixels and a (m+n)-th frame (n is an integer not less than k +1, k is a real number), a plurality of first blocks produced by dividing the (m+k)-th frame and each having a given size and a given shape; (b) extracting a plurality of second blocks identical in size and shape to the first blocks from the m-th frame; (c) obtaining first motion vectors between said first blocks and said second blocks; (d) calculating second motion vectors which are −(n−k)/k of the first motion vectors; (e) extracting, from the (m+n)-th frame, third blocks corresponding to destinations of the first blocks according to the second motion vectors; (f) obtaining each first absolute difference value between opposite pixels of the second blocks and the third blocks; (g) counting pixels having the first absolute difference value not more than a first threshold to obtain first count values; (h) extracting a first pair of blocks each containing pixels for which the first count value becomes maximum, from the second blocks and the third blocks to obtain a vector between the first pair of blocks as a motion vector for every first region between the m-th frame and the (m+n)-th frame; i) extracting pixels in the second blocks for which the first absolute difference value is not more than a second threshold as pixel blocks of the first region; (j) extracting pixels in the second blocks for which the first absolute difference value is more than the second threshold as pixel blocks of a second region; (k) extracting fourth blocks identical in size and shape to the pixel blocks of the second region from the (m+n)-th frame; (l) obtaining each second absolute difference value between opposite pixels of the pixel blocks of the second region and the fourth blocks; (m) counting pixels having the second absolute difference value not more than a third threshold to obtain second count values; and (n) extracting a second pair of blocks each including pixels for which the second count value becomes maximum from the pixel blocks of the second region and the fourth blocks to obtain a vector between the second pair of blocks as a motion vector for every second region between the second region and the (m+n)-th frame.