Logo detection for macroblock-based video processing
AssigneeHarmonic, Inc.
InventorRafik Mikhael
Life of this patent
Estimating the term…
Abstract
The subject matter of this specification can be embodied in, among other things, a method that includes receiving a current frame, the current frame including one or more macroblocks, analyzing the current frame using a first set of image characteristics to determine if logo detection can be performed on the current frame, and performing the logo detection on the current frame if the current frame satisfies the first set of image characteristics to determine presence of a logo macroblock among the one or more macroblocks.
Claims15
A method, comprising:
- receiving a current frame, the current frame including one or more macroblocks;
- analyzing the current frame using a first set of image characteristics to determine if logo detection should be performed on the current frame without performing the logo detection, wherein analyzing the current frame comprises determining whether a portion of current frame's macroblocks have a motion vector whose horizontal or vertical component exceeds a predetermined speed threshold without analyzing every macroblock of the current frame;
- and
- performing the logo detection on the one or more macroblocks of the current frame only if the current frame satisfies the first set of image characteristics to determine a presence of a logo macroblock among the one or more macroblocks,
- wherein performing the logo detection on the one or more macroblocks of the current frame is performed without separately analyzing every pixel of the one or more macroblocks by performing:
- identifying a macroblock in the current frame and a matching macroblock in a reference frame;
- identifying a motion vector that points to the matching macroblock in the reference frame;
- and
- determining the encoded macroblock as the logo macroblock if both vertical component and horizontal component of the motion vector do not meet a predetermined magnitude.
A non-transitory computer-readable storage medium storing one or more sequences of instructions, which when executed by one or more processors, causes:
- receiving a current frame, the current frame including one or more macroblocks;
- analyzing the current frame using a first set of image characteristics to determine if logo detection should be performed on the current frame without performing the logo detection, wherein analyzing the current frame comprises determining whether a portion of current frame's macroblocks have a motion vector whose horizontal or vertical component exceeds a predetermined speed threshold without analyzing every macroblock of the current frame;
- and
- performing the logo detection on the one or more macroblocks of the current frame only if the current frame satisfies the first set of image characteristics to determine a presence of a logo macroblock among the one or more macroblocks,
- wherein performing the logo detection on the one or more macroblocks of the current frame is performed without separately analyzing every pixel of the one or more macroblocks by performing:
- identifying a macroblock in the current frame and a matching macroblock in a reference frame;
- identifying a motion vector that points to the matching macroblock in the reference frame;
- and
- determining the encoded macroblock as the logo macroblock if both vertical component and horizontal component of the motion vector do not meet a predetermined magnitude.
A non-transitory computer-readable storage medium storing one or more sequences of instructions, which when executed by one or more processors, causes:
- receiving a current frame, the current frame including one or more macroblocks;
- determining whether the current frame is a forward-predictive frame;
- upon concluding that the current frame is a forward-predictive frame, analyzing the current frame using a first set of image characteristics to determine if logo detection should be performed on the current frame without performing the logo detection, wherein analyzing the current comprises determining whether a portion of current frame's macroblocks have a motion vector whose horizontal or vertical component exceeds a predetermined speed threshold without analyzing every macroblock of the current frame;
- and
- performing the logo detection on the one or more macroblocks of the current frame only if the current frame satisfies the first set of image characteristics to determine a presence of a logo macroblock among the one or more macroblocks, wherein the logo detection performed on the current frame only if the current frame is determined to be a forward-predictive frame,
- wherein performing the logo detection on the one or more macroblocks of the current frame is performed without separately analyzing every pixel of the one or more macroblocks by performing:
- identifying a macroblock in the current frame and a matching macroblock in a reference frame;
- identifying a motion vector that points to the matching macroblock in the reference frame;
- and
- determining the encoded macroblock as the logo macroblock if both vertical component and horizontal component of the motion vector do not meet a predetermined magnitude.
Dependencies are inferred from the claim text.