Adaptive motion estimation and mode decision apparatus and method for H.264 video codec
First Claim
1. An adaptive motion estimation and mode decision apparatus for an H.264 video codec, comprising:
- a background image detection unit for inspecting whether a macroblock corresponding to a fixed background or slowly and regularly moving image exists, and skipping the step of dividing a corresponding macroblock into smaller sized blocks and performing block mode inspection;
an inter mode inspection unit for inspecting whether an irregularly or fast moving macroblock exists by performing All Zero Coefficients Block (AZCB) inspection for an inter mode on macroblocks other than the macroblock detected by the background image detection unit, and determining whether to divide a corresponding macroblock into smaller sized blocks and to perform block mode inspection on the smaller sized blocks;
an intra mode inspection unit for performing AZCB inspection for an intra mode on the macroblocks and determining whether to divide a corresponding macroblock into smaller sized blocks block and to perform mode inspection on the smaller sized blocks; and
a mode inspection skip unit for skipping the block mode inspection for the smaller sized blocks of the macroblock if it is determined that the block mode inspection for the smaller sized blocks of the macroblock will be skipped by the background image detection unit, the inter mode inspection unit and the intra mode inspection unit.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed herein is an adaptive motion estimation and mode decision apparatus and method for an H.264 video codec. The apparatus includes a background image detection unit, an inter mode inspection unit, an intra mode inspection unit and a mode inspection skip unit. The background image detection unit inspects whether a fixed background or slowly and regularly moving block exists, and skips the step of dividing a first corresponding macroblock into smaller sized blocks and performing block mode inspection. The inter mode inspection unit inspects whether an irregularly or fast moving macroblock exists, and determines whether to divide a corresponding macroblock into smaller sized blocks and to perform block mode inspection on the smaller sized blocks. The intra mode inspection unit performs AZCB inspection on the macroblocks, and determines whether to divide a corresponding macroblock into smaller sized blocks block and to perform mode inspection on the smaller sized blocks. The mode inspection skip unit skips the block mode inspection for the smaller sized blocks.
-
Citations
14 Claims
-
1. An adaptive motion estimation and mode decision apparatus for an H.264 video codec, comprising:
-
a background image detection unit for inspecting whether a macroblock corresponding to a fixed background or slowly and regularly moving image exists, and skipping the step of dividing a corresponding macroblock into smaller sized blocks and performing block mode inspection;
an inter mode inspection unit for inspecting whether an irregularly or fast moving macroblock exists by performing All Zero Coefficients Block (AZCB) inspection for an inter mode on macroblocks other than the macroblock detected by the background image detection unit, and determining whether to divide a corresponding macroblock into smaller sized blocks and to perform block mode inspection on the smaller sized blocks;
an intra mode inspection unit for performing AZCB inspection for an intra mode on the macroblocks and determining whether to divide a corresponding macroblock into smaller sized blocks block and to perform mode inspection on the smaller sized blocks; and
a mode inspection skip unit for skipping the block mode inspection for the smaller sized blocks of the macroblock if it is determined that the block mode inspection for the smaller sized blocks of the macroblock will be skipped by the background image detection unit, the inter mode inspection unit and the intra mode inspection unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An adaptive motion estimation and mode decision method for an H.264 video codec, comprising the steps of:
-
(a) calculating an RDcost for a SKIP mode and performing AZCB(SKIP) inspection for TC16=4;
(b) calculating a motion vector and an RDcost for a P16×
16 mode and performing AZCB(P16×
16) inspection for TC16=5;
(c) inspecting whether C16SKIP is zero;
(d) setting bSkipI4×
4, which is a mode skip flag, to TRUE if the C16SKIP is zero, and proceeding to step (o);
(e) calculating motion vectors and RDcosts for P16×
8 and P8×
16 modes if the C16SKIP is not zero;
(f) inspecting whether a value of an AZCB(P16×
8) is one or the value of an AZCB(P8×
16) is one;
(g) setting bSkipI4×
4 to TRUE if the value of the AZCB(P16×
8) or AZCB(P8×
16) is one;
(h) inspecting whether a value of an AZCB(SKIP) is one, setting the bSkipI4×
4 to TRUE if the value of the AZCB(SKIP) is one, and proceeding to step (O);
(j) inspecting whether a value of an AZCB(P16×
16) is one, setting the bSkipI4×
4 to TRUE if the value of the AZCB(P16×
16) is one, and proceeding to step (O);
(k) calculating motion vectors and RDcosts for P8×
8, P8×
4 and P4×
8 modes, and calculating an AZCB(P8×
8) for TC8=1;
(l) inspecting whether a value of the AZCB(P8×
8) is one;
(m) calculating a motion vector and an RDcost for the P4×
4 mode if the AZCB(P8×
8) is not one;
(n) detecting whether a 8×
8 block, which has not been inspected, exists;
(o) determining an intra block mode; and
(p) selecting an optimal mode. - View Dependent Claims (11, 12, 13)
-
-
14. A computer-readable recording medium storing a program for executing the functions of:
-
inspecting whether a macroblock corresponding to a fixed background or slowly and regularly moving image exists, and skipping the step of dividing a first corresponding macroblock into smaller sized blocks and performing block mode inspection;
performing AZCB inspection for an inter mode on macroblocks other than the macroblock corresponding to the fixed background or slowly and regularly moving image, determining whether an irregularly or fast moving block exists, and determining whether to divide a corresponding macroblock into smaller sized blocks and to perform the block mode inspection on the smaller sized blocks;
performing AZCB inspection for an intra mode on the macroblocks, determining whether to divide a corresponding macroblock into smaller sized blocks and to perform the block mode inspection on the smaller sized blocks; and
skipping the block mode inspection for the smaller sized blocks of the macroblock if it is determined that the block mode inspection for the smaller sized blocks of the macroblock will be skipped by the above-described functions.
-
Specification