Disclosure of Invention
The embodiment of the invention aims to provide an encoding method for intra-frame prediction block division, and aims to solve the problem that the conventional intra-frame prediction algorithm in the prior art can achieve rate-distortion performance optimization on the encoding block division of a macro block and traversal operation on a prediction mode, and the problem is caused by huge calculation amount.
The embodiment of the invention is realized by a method for coding intra-frame prediction block division, which comprises the following steps:
step 1: calculating a first jump value diffh _1 of a pixel in the horizontal direction in the current coding macro block;
step 2: determine if diffh _1>Thres1If yes, entering Step2_1, otherwise entering Step 3; step2_ 1: skipping 16 × 16 intra prediction on the current coding macro block, directly performing 4 × 4 intra prediction, and then entering Step 12;
step 3: calculating a second jump value diffh _2 of a pixel in the horizontal direction in the current coding macro block;
step 4: determine if diffh _2>Thres1If so, go to Step2_1, otherwise go to Step5,
wherein, Thres1Indicates the first decision threshold value
Step 5: calculating a first jump value diffv _1 of a pixel in the vertical direction in the current coding macro block;
step 6: determine if diffv _1>Thres1If yes, entering Step2_1, otherwise entering Step 7;
step 7: calculating a second jump value diffv _2 of a pixel in the vertical direction in the current coding macro block;
step 8: determine if diffv _2>Thres1If yes, entering Step2_1, otherwise entering Step 9;
diffh_1<Thres2&&diffh_2<Thres2&&
diffv_1<Thres2&&diffv_2<Thres2&&
step 9: judging whether diffh _1+ diffh _2+ diffv _1+ diffv _2<Thres3If yes, skip 4 × 4 intra prediction, directly perform 16 × 16 intra DC prediction on the current coded macroblock, then go to Step12,
wherein,&&represents and; thres2Indicates a second decision threshold, Thres3Represents a third decision threshold;
step 12: and performing rate distortion optimization to obtain the partition of the current coding macro block and the optimal intra-frame prediction mode.
Further, the air conditioner is provided with a fan,
wherein,
means to sum all variables that satisfy the condition; y (i, j) represents the luminance value, Thres, of the ith row and jth column of the current encoded macroblock
1<590,Thres
2<10,Thres
3<100,Thres
2<Thres
3。
Further, the method may further comprise,
step 9: judging whether to use
If not, go to Step 10;
step 10: judging whether to use If not, go to Step 11.
Wherein, | | represents or, Thres4Denotes a fourth decision threshold, Thres4>2, const denotes a divisor constant, 0<const<10-2。
Step 11: judging whether to use If yes, skipping intra prediction of 4 × 4, directly performing intra Plane prediction of 16 × 16 on the current coding macro block, and then entering Step 12; if not, the current coded macroblock is subjected to conventional intra prediction, and then Step12 is entered.
Further, the method may further comprise,
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4||
step 10: judging whether (diffv _1+ diffv _2)/(diffh _1+ diffh _2+ const)>Thres4If yes, go to Step10_ 1;
step10_ 1: judging whether (diffh _1+ diffh _2)/(diffv _1+ diffv _2+ const)>Thres4If yes, skip 4 × 4 intra prediction, directly perform 16 × 16 intra Horizontal prediction on the current coded macroblock, and then go to Step 11.
Further, the method may further comprise,
step10_ 1: judging whether (diffh _1+ diffh _2)/(diffv _1+ diffv _2+ const)>Thres4If not, go to Step10_ 2.
Step10_ 2: judging whether (diffv _1+ diffv _2)/(diffh _1+ diffh _2+ const)>Thres4If yes, skip 4 × 4 intra prediction, directly perform 16 × 16 intra Vertical prediction on the current coding macroblock, and then perform intra Vertical prediction on the current coding macroblockStep 11; if not, go directly to Step 11.
Further, the air conditioner is provided with a fan,
the steps Step1-Step8 can also be replaced by the following steps Step1 '-Step 8',
step 1': calculating a first jump value diffv _1 of a pixel in the vertical direction in the current coding macro block;
step 2': determine if diffv _1>Thres1If yes, go to Step2_ 1; if not, go to Step 3', Thres1Represents a first decision threshold;
step2_ 1: skipping 16 × 16 intra prediction on the current coding macro block, directly performing 4 × 4 intra prediction, and then entering Step 12;
step 3': calculating a second jump value diffv _2 of a pixel in the vertical direction in the current coding macro block;
step 4': determine if diffv _2>Thres1If yes, go to Step2_ 1; if not, entering Step 5';
step 5': calculating a first jump value diffh _1 of a pixel in the horizontal direction in the current coding macro block;
step 6': determine if diffh _1>Thres1If yes, go to Step2_ 1; if not, entering Step 7';
step 7': calculating a second jump value diffh _2 of a pixel in the horizontal direction in the current coding macro block;
step 8': determine if diffh _2>Thres1If yes, go to Step2_ 1; otherwise, go to Step 9.
It is another object of an embodiment of the present invention to provide a coding system for intra prediction block partitioning, the system including: a first coding macro block jump value calculating and judging module, a first intra-frame predicting module, a first judging module, a second intra-frame predicting module, an optimal intra-frame predicting mode obtaining module,
the first intra-frame prediction module is used for calculating the intra-frame prediction mode according to the jump value;
the first intra-frame prediction module is used for skipping 16 multiplied by 16 intra-frame prediction on a current coding macro block, directly carrying out 4 multiplied by 4 intra-frame prediction and then entering the best intra-frame prediction mode acquisition module;
diffh_1<Thres2&&diffh_2<Thres2&&
diffv_1<Thres2&&diffv_2<Thres2&&
a first judging module for judging whether diff _1+ diff _2+ diffv _1+ diffv _2<Thres3If yes, entering a second intra-frame prediction module;
wherein,
diffh _1 represents a first jump value of a pixel in the horizontal direction in the current coding macro block;
diffh _2 represents a second jump value of a pixel in the horizontal direction in the current coding macro block;
diffv _1 represents a first jump value of a pixel in the vertical direction in the current coding macro block;
diffv _2 represents a second jump value of a pixel in the vertical direction in the current coding macro block;
means to sum all variables that satisfy the condition; y (i, j) represents the luminance value of the ith row and the jth column of the current coding macro block;&&represents and; thres
2Indicates a second decision threshold, Thres
2<10;Thres
3Indicates a third decision threshold, Thres
3<100,Thres
2<Thres
3;
The second intra-frame prediction module is used for skipping intra-frame prediction of 4 multiplied by 4, directly carrying out intra-frame DC prediction of 16 multiplied by 16 on a current coding macro block and then entering the best intra-frame prediction mode acquisition module;
and the optimal intra-frame prediction mode acquisition module is used for performing RDO (remote data object) to acquire the partition of the current coding macro block and the optimal intra-frame prediction mode.
Further, the first coding macro block jump value calculating and judging module comprises a horizontal first jump value calculating module, a horizontal first jump value judging module, a horizontal second jump value calculating module, a horizontal second jump value judging module, a vertical first jump value calculating module, a vertical first jump value judging module, a vertical second jump value calculating module and a vertical second jump value judging module,
the horizontal first jump value calculating module is used for calculating a first jump value of a pixel in the horizontal direction in the current coding macro block;
a horizontal first jump value judging module for judging whether diffh _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a horizontal second jump value calculation module, wherein Thres1Denotes a first decision threshold, Thres1<590;
The horizontal second jump value calculating module is used for calculating a second jump value of a pixel in the horizontal direction in the current coding macro block;
a horizontal second jump value judging module for judging whether diffh _2 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a vertical first jump value calculation module;
the vertical first jump value calculating module is used for calculating a first jump value of a pixel in the vertical direction in the current coding macro block;
a vertical first transition value judging module for judging whether diffv _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a vertical second jump value calculation module;
the vertical second jump value calculating module is used for calculating a second jump value of a pixel in the vertical direction in the current coding macro block;
a vertical second jump value judging module for judging whether diffv _2 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a first judgment module.
Further, the first coding macro block jump value calculating and judging module can be replaced by a second coding macro block jump value calculating and judging module, and the second coding macro block jump value calculating and judging module comprises: a vertical third jump value calculating module, a vertical third jump value judging module, a vertical fourth jump value calculating module, a vertical fourth jump value judging module, a horizontal third jump value calculating module, a horizontal third jump value judging module, a horizontal fourth jump value calculating module and a horizontal fourth jump value judging module,
the vertical third jump value calculating module is used for calculating a first jump value of a pixel in the vertical direction in the current coding macro block;
a vertical third jump value judging module for judging whether diffv _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a vertical fourth jump value calculation module;
the vertical fourth jumping value calculating module is used for calculating a second jumping value of a pixel in the vertical direction in the current coding macro block;
a vertical fourth jump value judging module for judging whether diffv _2 is available>Thres1If yes, entering a first intra-frame prediction module, if not, entering a second intra-frame prediction moduleEntering a horizontal third jump value calculation module;
the horizontal third jump value calculating module is used for calculating a first jump value of a pixel in the horizontal direction in the current coding macro block;
a horizontal third jump value judging module for judging whether diffh _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a horizontal fourth jump value calculation module; wherein, Thres1Denotes a first decision threshold, Thres1<590;
The horizontal fourth jumping value calculating module is used for calculating a second jumping value of a pixel in the horizontal direction in the current coding macro block;
a horizontal fourth jump value judging module for judging whether diffh _2 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a first judgment module.
Further, the coding system for intra-frame prediction block division also comprises a second judging module, a fifth intra-frame predicting module and a conventional intra-frame predicting module,
diffh_1<Thres2&&diffh_2<Thres2&&
diffv_1<Thres2&&diffv_2<Thres2&&
a first judging module for judging whether diff _1+ diff _2+ diffv _1+ diffv _2<Thres3If not, entering a second judgment module;
a second judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4||
(diffv_1+diffv_2)/(diffh_1+diffh_2+const)>Thres4If not, entering a fifth judgment module;
wherein, | | represents or; thres4Denotes a fourth decision threshold, Thres4>2; const denotes a divisor constant, 0<const<10-2;
A fifth judging module for judging whether to execute the operation
( If yes, entering a fifth intra-frame prediction module, and if not, entering a conventional intra-frame prediction module;
a fifth intra-frame prediction module, configured to skip 4 × 4 intra-frame prediction, directly perform 16 × 16 intra-frame Plane prediction on a current coding macroblock, and then enter an optimal intra-frame prediction mode acquisition module;
and the conventional intra-frame prediction module is used for performing conventional intra-frame prediction on the current coding macro block and then entering the optimal intra-frame prediction mode acquisition module.
Further, the coding system for intra-frame prediction block division further comprises a third judging module, a third intra-frame prediction module,
a second judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4||
(diffv_1+diffv_2)/(diffh_1+diffh_2+const)>Thres4If yes, entering a third judgment module;
a third judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4If yes, entering a third intra-frame prediction module;
the third intra-frame prediction module is used for skipping intra-frame prediction of 4 multiplied by 4, directly performing intra-frame Horizontal prediction of 16 multiplied by 16 on a current coding macro block, and then entering the fifth judgment module;
further, the coding system for intra-prediction block division further comprises a fourth judging module, a fourth intra-prediction module,
a third judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4If not, entering a fourth judgment module;
a fourth judging module for judging whether to execute the operation
(diffv_1+diffv_2)/(diffh_1+diffh_2+const)>Thres4If yes, entering a fourth intra-frame prediction module; if not, directly entering a fifth judgment module;
and the fourth intra-frame prediction module is used for skipping 4 × 4 intra-frame prediction, directly performing 16 × 16 intra-frame Vertical prediction on the current coding macro block, and then entering the fifth judgment module.
The invention has the advantages of
The invention provides an intra-frame prediction block division coding method and an intra-frame prediction block division coding system.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to the accompanying drawings and examples, and for convenience of description, only parts related to the examples of the present invention are shown. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
The invention provides an intra-frame prediction block division coding method and an intra-frame prediction block division coding system.
Example one
FIG. 1 is a flow chart of a method for encoding intra prediction block partitions according to a preferred embodiment of the present invention; the method comprises the following steps:
step 1: a first jump value of a pixel in a horizontal direction in a current coding macro block is calculated.
Wherein, diffh _1 represents a first jump value of a pixel in the horizontal direction in the current coding macro block;
means to sum all variables that satisfy the condition; y (i, j) represents the luminance value of the ith row and jth column of the current encoded macroblock.
Step 2: determine if diffh _1>Thres1If yes, go to Step2_ 1; otherwise, go to Step 3.
Wherein, Thres1Representing a first decision threshold, typically Thres1<590。
Step2_ 1: the 16 × 16 intra prediction is skipped for the current coded macroblock, the 4 × 4 intra prediction is directly performed (i.e., the current coded macroblock is directly divided into 4 × 4 sub blocks, and the 4 × 4 intra prediction is performed for each sub block), and then Step12 is entered.
Step 3: and calculating a second jump value of the horizontal direction pixel in the current coding macro block.
Wherein diffh _2 represents a second skip value of a horizontal pixel in the current coding macroblock.
Step 4: determine if diffh _2>Thres1If yes, go to Step2_ 1; otherwise, go to Step 5.
Step 5: a first jump value of a pixel in a vertical direction in a current coding macro block is calculated.
Wherein diffv _1 represents the first jump value of the vertical direction pixel in the current coding macro block.
Step 6: determine if diffv _1>Thres1If yes, go to Step2_ 1; otherwise, go to Step 7.
Step 7: and calculating a second jump value of the pixel in the vertical direction in the current coding macro block.
Wherein diffv _2 represents the second jump value of the vertical direction pixel in the current coding macro block.
Step 8: determine if diffv _2>Thres1If yes, go to Step2_ 1; otherwise, go to Step 9.
diffh_1<Thres2&&diffh_2<Thres2&&
diffv_1<Thres2&&diffv_2<Thres2&&
Step 9: judging whether diffh _1+ diffh _2+ diffv _1+ diffv _2<Thres3If yes, skipping intra-frame prediction of 4 multiplied by 4, directly performing intra-frame DC prediction of 16 multiplied by 16 on the current coding macro block, and then entering Step 12; if not, go to Step 10.
Wherein,&&represents and; thres2Representing a second decision threshold, typically Thres2<10;Thres3Representing a third decision threshold, typically Thres3<100,Thres2<Thres3。
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4||
Step 10: judging whether (diffv _1+ diffv _2)/(diffh _1+ diffh _2+ const)>Thres4If yes, go to Step10_ 1; if not, go to Step 11.
Wherein, | | represents or; thres4Representing a fourth decision threshold, typically Thres4>2; const denotes a divisor constant, typically 0<const<10-2。
Step10_ 1: judging whether (diffh _1+ diffh _2)/(diffv _1+ diffv _2+ const)>Thres4If yes, skipping intra-frame prediction of 4 multiplied by 4, directly performing intra-frame Horizontal prediction of 16 multiplied by 16 on the current coding macro block, and then entering Step 11; if not, go to Step10_ 2.
Step10_ 2: judging whether (diffv _1+ diffv _2)/(diffh _1+ diffh _2+ const)>Thres4If yes, skipping intra-frame prediction of 4 multiplied by 4, directly performing intra-frame Vertical prediction of 16 multiplied by 16 on the current coding macro block, and then entering Step 11; if not, go directly to Step 11.
Step 11: judging whether to use If yes, skipping intra prediction of 4 × 4, directly performing intra Plane prediction of 16 × 16 on the current coding macro block, and then entering Step 12; if not, the current coded macroblock is subjected to conventional intra prediction (i.e., 16 × 16 intra prediction is performed first, and then 4 × 4 intra prediction is performed), and then Step12 is entered.
Step 12: RDO (Rate-Distortion Optimization) is performed to obtain the partition and the optimal intra prediction mode of the current encoded macroblock.
In the above steps, Step1-Step8 can be replaced by the following steps Step1 '-Step 8', as follows:
step 1': a first jump value of a pixel in a vertical direction in a current coding macro block is calculated.
Wherein diffv _1 represents the first jump value of the vertical direction pixel in the current coding macro block.
Step 2': determine if diffv _1>Thres1If yes, go to Step2_ 1; if not, go to Step 3'.
Step2_ 1: the 16 × 16 intra prediction is skipped for the current coded macroblock, the 4 × 4 intra prediction is directly performed (i.e., the current coded macroblock is directly divided into 4 × 4 sub blocks, and the 4 × 4 intra prediction is performed for each sub block), and then Step12 is entered.
Step 3': and calculating a second jump value of the pixel in the vertical direction in the current coding macro block.
Wherein diffv _2 represents the second jump value of the vertical direction pixel in the current coding macro block.
Step 4': determine if diffv _2>Thres1If yes, go to Step2_ 1; if not, go to Step 5'.
Step 5': a first jump value of a pixel in a horizontal direction in a current coding macro block is calculated.
Wherein, diffh _1 represents a first jump value of a pixel in the horizontal direction in the current coding macro block;means to sum all variables that satisfy the condition; y (i, j) represents the luminance value of the ith row and jth column of the current encoded macroblock.
Step 6': determine if diffh _1>Thres1If yes, go to Step2_ 1; if not, go to Step 7'.
Wherein, Thres1Representing a first decision threshold, typically Thres1<590。
Step 7': and calculating a second jump value of the horizontal direction pixel in the current coding macro block.
Wherein diffh _2 represents a second skip value of a horizontal pixel in the current coding macroblock.
Step 8': determine if diffh _2>Thres1If yes, go to Step2_ 1; otherwise, go to Step 9.
Example two
FIG. 2 is a block diagram of a coding system for intra-prediction block partitioning according to a preferred embodiment of the present invention; the system comprises: a first coding macro block jump value calculating and judging module, a first intra-frame predicting module, a first judging module, a second intra-frame predicting module, an optimal intra-frame predicting mode obtaining module,
the first intra-frame prediction module is used for calculating the intra-frame prediction mode according to the jump value;
a first intra-frame prediction module, configured to skip 16 × 16 intra-frame prediction for a current coding macroblock, directly perform 4 × 4 intra-frame prediction (that is, directly divide the current coding macroblock into 4 × 4 sub-blocks, and perform 4 × 4 intra-frame prediction for each sub-block), and then enter an optimal intra-frame prediction mode acquisition module;
diffh_1<Thres2&&diffh_2<Thres2&&
diffv_1<Thres2&&diffv_2<Thres2&&
a first judging module for judging whether diff _1+ diff _2+ diffv _1+ diffv _2<Thres3If yes, entering a second intra-frame prediction module;
wherein,
diffh _1 represents a first jump value of a pixel in the horizontal direction in the current coding macro block;
diffh _2 indicates the horizontal direction pixel number in the current coding macro blockA second jump value;
diffv _1 represents a first jump value of a pixel in the vertical direction in the current coding macro block;
diffv _2 represents a second jump value of a pixel in the vertical direction in the current coding macro block;
means to sum all variables that satisfy the condition; y (i, j) represents the luminance value of the ith row and the jth column of the current coding macro block;&&represents and; thres
2Representing a second decision threshold, typically Thres
2<10;Thres
3Representing a third decision threshold, typically Thres
3<100,Thres
2<Thres
3。
The second intra-frame prediction module is used for skipping intra-frame prediction of 4 multiplied by 4, directly carrying out intra-frame DC prediction of 16 multiplied by 16 on a current coding macro block and then entering the best intra-frame prediction mode acquisition module;
and an optimal intra prediction mode obtaining module, configured to perform RDO (Rate-distorsionoptimization) to obtain the partition of the current coding macroblock and the optimal intra prediction mode.
Further, the first coding macro block jump value calculating and judging module includes a horizontal first jump value calculating module, a horizontal first jump value judging module, a horizontal second jump value calculating module, a horizontal second jump value judging module, a vertical first jump value calculating module, a vertical first jump value judging module, a vertical second jump value calculating module, and a vertical second jump value judging module (fig. 3 is a structure diagram of the first coding macro block jump value calculating and judging module in the system of fig. 2)
The horizontal first jump value calculating module is used for calculating a first jump value of a pixel in the horizontal direction in the current coding macro block;
a horizontal first jump value judging module for judging whether diffh _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a horizontal second jump value calculation module; wherein, Thres1Representing a first decision threshold, typically Thres1<590。
The horizontal second jump value calculating module is used for calculating a second jump value of a pixel in the horizontal direction in the current coding macro block;
a horizontal second jump value judging module for judging whether diffh _2 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a vertical first jump value calculation module;
the vertical first jump value calculating module is used for calculating a first jump value of a pixel in the vertical direction in the current coding macro block;
a vertical first transition value judging module for judging whether diffv _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a vertical second jump value calculation module;
the vertical second jump value calculating module is used for calculating a second jump value of a pixel in the vertical direction in the current coding macro block;
a vertical second jump value judging module for judging whether diffv _2 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a first judgment module.
Further, the first coding macro block jump value calculating and judging module may be replaced by a second coding macro block jump value calculating and judging module, and the second coding macro block jump value calculating and judging module (fig. 4 is a structural diagram of the second coding macro block jump value calculating and judging module) includes: a vertical third jump value calculating module, a vertical third jump value judging module, a vertical fourth jump value calculating module, a vertical fourth jump value judging module, a horizontal third jump value calculating module, a horizontal third jump value judging module, a horizontal fourth jump value calculating module and a horizontal fourth jump value judging module,
the vertical third jump value calculating module is used for calculating a first jump value of a pixel in the vertical direction in the current coding macro block;
a vertical third jump value judging module for judging whether diffv _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a vertical fourth jump value calculation module;
the vertical fourth jumping value calculating module is used for calculating a second jumping value of a pixel in the vertical direction in the current coding macro block;
a vertical fourth jump value judging module for judging whether diffv _2 is available>Thres1If yes, entering a first intra-frame prediction module, and otherwise, entering a horizontal third jump value calculation module.
The horizontal third jump value calculating module is used for calculating a first jump value of a pixel in the horizontal direction in the current coding macro block;
a horizontal third jump value judging module for judging whether diffh _1 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a horizontal fourth jump value calculation module; wherein, Thres1Representing a first decision threshold, typically Thres1<590。
The horizontal fourth jumping value calculating module is used for calculating a second jumping value of a pixel in the horizontal direction in the current coding macro block;
a horizontal fourth jump value judging module for judging whether diffh _2 is available>Thres1If yes, entering a first intra-frame prediction module, otherwise, entering a first judgment module.
Further, the coding system for intra-frame prediction block division also comprises a second judging module, a fifth intra-frame predicting module and a conventional intra-frame predicting module,
diffh_1<Thres2&&diffh_2<Thres2&&
diffv_1<Thres2&&diffv_2<Thres2&&
a first judging module for judging whether diff _1+ diff _2+ diffv _1+ diffv _2<Thres3If not, entering a second judgment module;
a second judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4||
(diffv_1+diffv_2)/(diffh_1+diffh_2+const)>Thres4If not, entering a fifth judgment module;
wherein, | | represents or; thres4Representing a fourth decision threshold, typically Thres4>2; const denotes a divisor constant, typically 0<const<10-2。
A fifth judging module for judging whether to execute the operation
( If yes, entering a fifth intra-frame prediction module, and if not, entering a conventional intra-frame prediction module;
a fifth intra-frame prediction module, configured to skip 4 × 4 intra-frame prediction, directly perform 16 × 16 intra-frame Plane prediction on a current coding macroblock, and then enter an optimal intra-frame prediction mode acquisition module;
and the conventional intra-frame prediction module is used for performing conventional intra-frame prediction on the current coding macro block (namely performing 16 × 16 intra-frame prediction firstly and then performing 4 × 4 intra-frame prediction), and then entering the optimal intra-frame prediction mode acquisition module.
Further, the coding system for intra-frame prediction block division further comprises a third judging module, a third intra-frame prediction module,
a second judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4||
(diffv_1+diffv_2)/(diffh_1+diffh_2+const)>Thres4If yes, entering a third judgment module;
a third judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4If yes, entering a third intra-frame prediction module;
the third intra-frame prediction module is used for skipping intra-frame prediction of 4 multiplied by 4, directly performing intra-frame Horizontal prediction of 16 multiplied by 16 on a current coding macro block, and then entering the fifth judgment module;
further, the coding system for intra-prediction block division further comprises a fourth judging module, a fourth intra-prediction module,
a third judging module for judging whether to use
(diffh_1+diffh_2)/(diffv_1+diffv_2+const)>Thres4If not, entering a fourth judgment module;
a fourth judging module for judging whether to execute the operation
(diffv_1+diffv_2)/(diffh_1+diffh_2+const)>Thres4If yes, entering a fourth intra-frame prediction module; if not, the fifth judgment module is directly entered.
And the fourth intra-frame prediction module is used for skipping 4 × 4 intra-frame prediction, directly performing 16 × 16 intra-frame Vertical prediction on the current coding macro block, and then entering the fifth judgment module.
It will be understood by those skilled in the art that all or part of the steps in the method according to the above embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer readable storage medium, such as ROM, RAM, magnetic disk, optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents and improvements made within the spirit and principle of the present invention are intended to be included within the scope of the present invention.