Claims Analysis
Total Claims: 10
Claim 1
Independent Claim
531 words
A process for tracking motion of an object image in a sequence of video frames, comprising: a. Inputting information into computer processing capacity identifying a first frame and a second frame of the sequence of video frames; b. Inputting information identifying a first bounded area within the first frame and a second bounded area within the second frame, the bounded areas each containing an image of the object; c. Defining a plurality of sub areas in the first bounded area and for each sub area: 1. Inputting values for plurality of pixels in the sub area; and 2. Calculating a gradient corresponding to an array of pixel values d. Using said first bounded sub area gradients to select sub areas which meet a predetermined first threshold as representative of sufficient object edge information; e. Defining a plurality of sub areas in the second bounded area and for each second bounded area sub area: 1. Inputting values for plurality of pixels in the sub area; and 2. Calculating a gradient corresponding to an array of pixel values; f. Using said second bounded area sub area gradients to select sub areas which meet a predetermined first threshold as representative of sufficient object edge information; and g. Applying a search algorithm to said selected sub areas to determine a plurality of motion vectors that represent motion of the object image from first frame to second frame, including: 1. Identifying a candidate sub area of the first frame; 2. Choosing one of the mapped second bounded area sub areas in the second frame as a first search phase sub area; 3. Selecting a plurality of sub areas in the vicinity of the first phase search sub area as additional first phase search sub areas and comparing a plurality of pixels in at least some of the first phase search sub areas to a plurality of pixels in the candidate sub area of the first frame to select a first phase search sub area in the second frame that best matches the candidate sub area of the first frame; 4. Selecting a second phase search window and a set of second phase search sub areas based on the first phase search sub area in the second frame that best matches the candidate sub area of the first frame, the second phase search sub areas smaller than the first phase sub areas; 5. Comparing a plurality of pixels in at least some of the second phase search sub areas to a plurality of pixels in the candidate sub area of the first frame to select a second phase search sub area in the second frame that best matches the candidate sub area of the first frame; 6. Determining a motion vector based on the position of the second phase search sub area in the second frame that best matches the candidate sub area of the first frame, and the position of the candidate sub area of the first frame; and 7. Repeating items 1 through 6 above for a plurality of sub areas in order to determine a plurality of motion vectors which represent motion of the object image between the first frame and the second frame.
Claim 2
Dependent Claim
531 words
A process for tracking motion of an object image in a sequence of video frames, comprising: a. Inputting information into computer processing capacity identifying a first frame and a second frame of the sequence of video frames; b. Inputting information identifying a first bounded area within the first frame and a second bounded area within the second frame, the bounded areas each containing an image of the object; c. Defining a plurality of sub areas in the first bounded area and for each sub area: 1. Inputting values for plurality of pixels in the sub area; and 2. Calculating a gradient corresponding to an array of pixel values d. Using said first bounded sub area gradients to select sub areas which meet a predetermined first threshold as representative of sufficient object edge information; e. Defining a plurality of sub areas in the second bounded area and for each second bounded area sub area: 1. Inputting values for plurality of pixels in the sub area; and 2. Calculating a gradient corresponding to an array of pixel values; f. Using said second bounded area sub area gradients to select sub areas which meet a predetermined first threshold as representative of sufficient object edge information; and g. Applying a search algorithm to said selected sub areas to determine a plurality of motion vectors that represent motion of the object image from first frame to second frame, including: 1. Identifying a candidate sub area of the first frame; 2. Choosing one of the mapped second bounded area sub areas in the second frame as a first search phase sub area; 3. Selecting a plurality of sub areas in the vicinity of the first phase search sub area as additional first phase search sub areas and comparing a plurality of pixels in at least some of the first phase search sub areas to a plurality of pixels in the candidate sub area of the first frame to select a first phase search sub area in the second frame that best matches the candidate sub area of the first frame; 4. Selecting a second phase search window and a set of second phase search sub areas based on the first phase search sub area in the second frame that best matches the candidate sub area of the first frame, the second phase search sub areas smaller than the first phase sub areas; 5. Comparing a plurality of pixels in at least some of the second phase search sub areas to a plurality of pixels in the candidate sub area of the first frame to select a second phase search sub area in the second frame that best matches the candidate sub area of the first frame; 6. Determining a motion vector based on the position of the second phase search sub area in the second frame that best matches the candidate sub area of the first frame, and the position of the candidate sub area of the first frame; and 7. Repeating items 1 through 6 above for a plurality of sub areas in order to determine a plurality of motion vectors which represent motion of the object image between the first frame and the second frame.
Claim 3
Dependent Claim
50 words
A process according to claim 1 wherein, in items (c) and (e), if the area of first bounded area is not a multiple of the areas of the sub areas, then reducing the size of the first bounded area until it is a multiple of the areas of the subareas.
Claim 4
Dependent Claim
20 words
A process according to claim 1 wherein calculating a gradient in items (c) and (e) comprises using a Prewitt filter.
Claim 5
Dependent Claim
47 words
A process according to claim 1 wherein, in item (g)(3), comparing a plurality of pixels in at least some of the first phase search sub areas to a plurality of pixels in the candidate sub area of the first frame comprises using a mean absolute difference criterion.
Claim 6
Dependent Claim
47 words
A process according to claim 1 wherein, in item (g)(5), comparing a plurality of pixels in at least some of the second phase search sub areas to a plurality of pixels in the candidate sub area of the first frame comprises using a mean absolute difference criterion.
Claim 7
Dependent Claim
42 words
A process according to claim 1 wherein determining a motion vector in accordance with item (g)(6) comprises predicting the position of a second phase search sub area in the second frame based on at least one motion vector from a previous frame.
Claim 8
Dependent Claim
14 words
A process according to claim 1 wherein the video frames are MPEG video frames.
Claim 9
Dependent Claim
19 words
A process according to claim 1 further comprising categorizing the frames based on information corresponding to the motion vectors.
Claim 10
Dependent Claim
25 words
A process according to claim 1 further comprises storing the frames in a database using information corresponding to the motion vectors as search identification information.