之前在率失真代价TComRdCost类中提到,计算率失真代价的函数为:calcRdCost,下面就来学习一下。
calcRdCost工作流程如下:
1、根据输入的失真类型eDFunc来设置λ。
2、根据公式计算RD Cost。
// Calculate RD functions
//求RD Cost
Double TComRdCost::calcRdCost( UInt uiBits, Distortion uiDistortion, Bool bFlag, DFunc eDFunc )
{
Double dRdCost = 0.0; //率失真代价
Double dLambda = 0.0; //lambda
//根据失真类型设置λ
switch ( eDFunc )
{
case DF_SSE:
assert(0);
break;