Video preprocessing method and apparatus with selective filtering based on motion detection
First Claim
1. A method of processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the method comprising the steps of:
- generating a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, and a second motion metric as a difference between the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence;
generating first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold, and another value for the given pel otherwise; and
generating a motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise.
3 Assignments
0 Petitions
Accused Products
Abstract
Video preprocessing methods and apparatus which utilize motion detection to control selective filtering of pels in a sequence of video frames wherein a video preprocessor generates first and second motion metrics for a given pel in a current frame N by taking the difference between the given pel and corresponding pels in a previous frame N-1 and a subsequent frame N+1, respectively. The motion metrics are converted to first and second bitmaps by thresholding the motion metric value against a first threshold. A motion detection metric is then generated for a given pel by summing the values of the first and second bitmaps for a group of pels which includes the given pel, and comparing the result to a predetermined threshold. The group of pels may include five pels on each of two lines above the given pel, and five pels on each of two lines below a given pel. The motion detection metric may be used to determine whether or not temporal median filtering and/or temporal lowpass filtering operations should be applied to the given pel. The motion detection metric may also be used in conjunction with an edge detection metric and a frame-wise motion activity measure to generate an address into a look-up table. The look-up table specifies a set of filter coefficients for use in a spatial lowpass filtering operation applied to the given pel.
173 Citations
37 Claims
-
1. A method of processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the method comprising the steps of:
-
generating a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, and a second motion metric as a difference between the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence; generating first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold, and another value for the given pel otherwise; and generating a motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An apparatus for processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the apparatus comprising:
-
a memory for storing one or more frames of the frame sequence; and a motion detector coupled to the memory and operative to generate a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, to generate a second motion metric as a difference between the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence, to generate first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold, and another value for the given pel otherwise, and to generate a motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A method of processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the method comprising the steps of:
-
generating a motion detection metric for a given pel of a frame in the frame sequence, wherein said step of generating comprises the steps of; generating a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, and a second motion metric as a difference between the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence; generating first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold, and another value for the given pel otherwise, and generating the motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise; and determining whether or not to apply a filtering operation to the given pel based on a value of the motion detection metric. - View Dependent Claims (19, 20, 21, 22)
-
-
23. An apparatus for processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the apparatus comprising;
-
a motion detector having an input connected to receive pels from one or more of said frames in said frame sequence, and an output corresponding to a motion detection metric for a given pel of a frame in the frame sequence, wherein the motion detector is operative to generate a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, to generate a second motion metric as a difference been the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence, to generate first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold and another value for the given pel otherwise, and to generate the motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise; and a processor coupled to the motion detector and having an input for receiving the motion detection metric therefrom, the processor operative to determine whether or not to apply a filtering operation to the given pel based on a value of the motion detection metric. - View Dependent Claims (24, 25, 26, 27)
-
-
28. A method of processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the method comprising the steps of:
-
generating a motion detection metric and an edge detection metric for a given pel of a frame in the frame sequence, wherein said step of generating comprises the steps of; generating a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, and a second motion metric as a difference between the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence; generating first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold, and another value for the given pel otherwise; and generating the motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise; and determining an amount of spatial lowpass filtering to apply to the given pel based on a value of the motion detection metric and the edge detection metric. - View Dependent Claims (29, 30, 31, 32)
-
-
33. An apparatus for processing a video signal including a sequence of frames, each of the frames including a plurality of pels, the apparatus comprising:
-
a motion detector having an input connected to receive pels from one or more of said frames in said frame sequence, and an output corresponding to a motion detection metric for a given pel of a frame in the frame sequence, wherein the motion detector is operative to generate a first motion metric as a difference between a given pel in a current frame of the frame sequence and a corresponding pel in a previous frame of the sequence, to generate a second motion metric as a difference between the given pel of the current frame and a corresponding pel in a subsequent frame of the sequence, to generate first and second bitmaps from the first and second motion metrics, such that each of the first and second bitmaps have one value for the given pel if the first and second motion metrics, respectively, exceed a first predetermined threshold, and another value for the given pel otherwise, and to generate the motion detection metric for the given pel of the current frame such that the motion detection metric for the given pel has one value if a sum of the first and second bitmap values for a group of pels including the given pel exceeds a second predetermined threshold, and another value otherwise; an edge detector having an input connected to receive pels from one or more of said frames in said frame sequence, and an output corresponding to an edge detection metric for a given pel of a frame in the frame sequence; and a processor coupled to the motion detector and edge detector and having an input for receiving the motion detection metric and edge detection metric therefrom, the processor operative to determine an amount of spatial lowpass filtering to be applied to the given pel based on values of the motion detection metric and the edge detection metric. - View Dependent Claims (34, 35, 36, 37)
-
Specification