摘要:本文对帧内色度预测函数estIntraPredChromaQT()进行代码结构分析和相关过程描述。
函数的功能描述:
对色度进行预测,从8种模式(Order){PLANAR、VER、HOR、DC 、LM、MDLM_L、MDLM_T、DM}选择最佳的模式。
其中LM,MDLM_L、MDLM_T使用CCLM模式;DM(Direct Mode)由相邻的模式直接推出。
步骤:
按DC、Ver、Hor、LM_L、LM_T进行预测,按SATD排序,去掉两个SATD最大的模式,即还剩下三种模式,然后Planar、LM、DM加入得到待计算的6种模式。然后xRecurIntraChromaCodingQT计算候选模式的率失真代价,选择率失真代价最小的作为当前编码模式。
详情:
模式的计算方式:待填。。。。。
LM_L
LM_T
LM
DM
相关函数描述:
1.getIntraChromaCandModes()//初始化候选列表
初始值modelist = { PLANAR、VER、HOR、DC 、LM、MDLM_L、MDLM_T、DM }。
(1)如果当前CU为使用了MIP工具,则推出,modelist为默认值(同上)
(2)如果当前色度位置对应的亮度位置的模式存在modelist中,则相应的模式modelist[i]=VDIA_IDX(反对角模式?)
2.xGetLumaRecPixels()// 待填坑中
3.predIntraChromaLM()// CCLM模式
4.predIntraAng()// 角度模式预测
5.xRecurIntraChromaCodingQT() // 计算率失真代价
更新中。。。。。