[0023] 为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
[0024] 如图1和2所示,本发明实施例的VVC帧内预测角度模式快速选择方法,以亮度帧内编码模式选择为例,具体包括以下步骤:
[0025] 步骤1:初次筛选:计算第2、18、34、50、66模式的SATD,比较五个模式SATD值后,得出具有最小SATD值的模式i0。
[0026] 以亮度编码块(CU)为例,针对当前亮度编码块CU,分别按2、18、34、50、66模式计算得到预测亮度编码块CU,那么编码残差Diff为:
[0027] Diff=CU_ori-CU_pro
[0028] CU_ori表示原始亮度编码块CU的像素值,CU_pre表示预测编码块CU的像素值,Diff表示原始亮度编码块和预测亮度编码块之间的像素差异值。
[0029] 将残差经过哈达玛变换后再取绝对值求和,其公式如下所示:
[0030]
[0031] 其中,D为输入矩阵的大小,H为归一化的哈达玛矩阵,X为残差信号矩阵,即编码残差。
[0032] 比较五个模式SATD值后,得出具有最小SATD值的模式i0。
[0033] 步骤2:二次筛选。
[0034] 若初次筛选具有最小SATD值的模式为i0(i0=2、18、34、50、66),计算第i0-8和i0+8模式的SATD(若第i0-8或i0+8模式不存在,则不进行计算),比较模式i0、i0-8、i0+8的SATD值,得出具有最小SATD值的模式i1。
[0035] 具体来说,若初次筛选具有最小SATD值的模式为2,计算第10模式的SATD,比较模式2、10的SATD值,得出具有最小SATD值的模式i1;若初次筛选具有最小SATD值的模式为18,计算第10和26模式的SATD,比较模式10、18、26的SATD值,得出具有最小SATD值的模式i1;若初次筛选具有最小SATD值的模式为34,计算第26和42模式的SATD,比较模式26、34、42的SATD值,得出具有最小SATD值的模式i1;若初次筛选具有最小SATD值的模式为50,计算第42和58模式的SATD,比较模式42、50、58的SATD值,得出具有最小SATD值的模式i1;若初次筛选具有最小SATD值的模式为66,计算第58模式的SATD,比较模式58、66的SATD值,得出具有最小SATD值的模式i1。
[0036] 步骤3:三次筛选。若二次筛选具有最小SATD值的模式为i1=2或i1=66,则进入步骤4;否则,计算第i1-4和i1+4模式的SATD(i1=10、18、26、34、42、50、58),比较模式i1、i1-4、i1+4的SATD值,得出具有最小SATD值的模式i2。
[0037] 具体来说,若二次筛选具有最小SATD值的模式为i1=2,则进入步骤4;若二次筛选具有最小SATD值的模式为i1=10,计算第6和14模式的SATD,比较模式6、10、14的SATD值,得出具有最小SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=18,计算第14和22模式的SATD,比较模式14、18、22的SATD值,得出具有最小SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=26,计算第22和30模式的SATD,比较模式22、26、30的SATD值,得出具有最小SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=34,计算第30和38模式的SATD,比较模式30、34、38的SATD值,得出具有最小SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=42,计算第38和46模式SATD,比较模式38、42、46的SATD值,得出具有最小SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=50,计算第46和54模式的SATD,比较模式46、50、54的SATD值,得出具有最SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=58,计算第54和62模式的SATD,比较模式54、58、62的SATD值,得出具有最小SATD值的模式i2;若二次筛选具有最小SATD值的模式为i1=66,则进入步骤4。
[0038] 步骤4:确定RDO模式集合。若具有最小SATD值的模式为2,将模式2、3、4、5、6加入到RDO模式集合;若具有最小SATD值的模式为66,将模式62、63、64、65、66加入到RDO模式集合;否则,具有最小SATD值的模式为上步得到的i2,此时将模式i2-2、i2-1、i2、i2+1、i2+2加入到RDO模式集合。
[0039] 具体来说,若具有最小SATD值的模式为2,将模式2、3、4、5、6加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的6,将模式4、5、6、7、8加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的10,将模式8、9、10、11、12加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的14,将模式12、13、14、15、16加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的18,将模式16、17、18、19、20加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的22,将模式20、21、22、23、24加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的26,将模式24、25、26、27、28加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的30,将模式28、29、30、31、32加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的34,将模式32、33、34、35、36加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的38,将模式36、37、38、39、40加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的42,将模式40、41、42、43、44加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的46,将模式44、45、46、47、48加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的50,将模式48、49、50、51、52加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的54,将模式52、53、54、55、56加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的58,将模式56、57、58、59、60加入到RDO模式集合;若具有最小SATD值的模式为步骤3得到的62,将模式60、61、62、63、64加入到RDO模式集合;若具有最小SATD值的模式为66,将模式62、63、64、65、66加入到RDO模式集合。
[0040] 步骤五:终次筛选。采用VVC的RDO技术计算RDO模式集合中每种角度模式的RDO,选择RDO值最小的角度模式作为最优的角度模式i。
[0041] RDO是用于模式决定的拉格朗日率失真优化,为每一种模式计算其拉格朗日代价,其公式如下:
[0042] J=D+λ·R
[0043] 其中,D表示当前预测模式下的失真(即Diff,原始亮度编码块和预测编码块之间的像素差异值),R表示编码当前预测模式下所有信息(如变换系数、模式信息、宏块划分方式等)所需要的比数,λ为拉格朗日因子。
[0044] RDO值最小的角度模式是我们的最优模式i。
[0045] 以上所述仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。