一种加权预测参数的计算方法与流程
- 国知局
- 2024-08-02 12:36:18
本发明属于视频处理,特别涉及一种加权预测参数的计算方法。
背景技术:
1、目前应用于视频编码的加权预测参数计算方法采用计算当前帧和重建帧整帧像素值下采样的标准差ssd和平均值avg,求两者ssd比值得到加权因子ω,通过求出的加权因子ω及两者平均值avg计算出偏移量offset,然后在ω值和offset值的前后一定范围内搜索,通过计算预测cost找出最优的一个组合。通过当前帧和重建帧整帧像素值下采样的平均值的比值和计算的预测cost决策flag的值。
2、然而,在现有加权预测算法存在对像素值上溢下溢未作处理、容易受噪声和局部差异影响从而将问题传递给参数offset,以及在进行flag判决时特别容易误判的问题。
3、此外,现有技术中的常用术语如下:
4、加权预测:加权预测是h.264和h.265协议中使用的一种技术,用于对帧间预测的运动补偿预测像素值进行修正的技术,修正方法如下:
5、predcorrect=((ω·pred+round)<<denom)+offset0
6、predcorrect为修正后的像素值,pred为运动补偿预测像素值。
7、加权预测参数:在h.264和h.265协议中针对y、u和v分别给出了其对应的四个语法元素(其中的加权因子放大倍数denom本文略过)用于存储加权预测参数。
8、加权因子(ω):加权预测参数之一。
9、加权预测偏移量(offset):加权预测参数之一。
10、加权预测标志位(flag):加权预测参数之一,是作为当前slice是否使用加权预测技术的标志位,1表示使用,0表示不使用。
11、当前帧、参考帧:当前帧表示正在进行编码的帧,参考帧是当前帧进行运动补偿预测像素值来源的帧。
12、下采样:通过统计的方法将相邻像素值合成一个像素值,通俗理解为缩小图像,如下:
13、 5 7 6 4
14、这个2×2的像素块通过2×2下采样后就会变成一个像素值,比如使用平均值下采样,则这个像素块下采样后为5.5,取整就是6。
15、帧差:当前帧和参考帧相同坐标的像素值作差的差值绝对值就是帧差。
技术实现思路
1、为了解决上述问题,本技术的目的在于:通过对于上溢点和下溢点的特殊处理,加权预测参数ω、offset、flag的计算方法,使得克服现有技术的问题,减少由于噪声和局部差异导致加权因子ω计算不准并将问题传递给offset的情况,提高对flag进行判决的准确度。
2、具体地,本发明提供一种加权预测参数的计算方法,所述方法包括以下步骤:
3、s1,加权因子ω的确定:给出一个最为稳定的ω值128;
4、s2,块级偏移量offset的确定:对当前帧和参考帧作下采样;在ω确定的前提下,计算每个下采样点的offset:
5、offset=fenc_pixel-ω×ref_pixel;
6、将一帧的offset分块,每个块的所有的offset的平均值avg作为当前块的offset:
7、
8、其中考虑到像素值的取值范围为0~255,所以不可避免的会出现溢出的情况,所以对此进行过滤,以下步骤所说的下采样点均是经过过滤后的下采样点;
9、s3,可用加权预测块的判决:当前块是否可用加权预测的块,需要同时符合以下条件:
10、(1),每个下采样点的offset与当前块的offset的偏离程度平均需要控制在[0,2);计算偏离程度也就是计算当前块下采样点的offset的波动情况,所以使用方差表示这种波动情况:
11、
12、(2),block_offset大于阈值diff_thrd;diff_thrd设置为0,考虑到静止情况下,每个下采样点的offset都为零,而此时并不需要使用加权预测,所以该条件作为判决条件之一;
13、当wave_offset小于阈值wave_thrd=4,且block_offset大于阈值diff_thrd=0,则认为当前块为可用加权预测的块,当前块的block_offset会参与累加frame_sum_offset:
14、frame_sum_offset=frame_sum_offset+block_offset,
15、且可用加权预测块的数量count也会累加1;
16、s4,帧级偏移量offset的确定:
17、当前帧加权预测参数中的偏移量offset即下式中的frame_offset,从以下式子计算得出:
18、
19、s5,加权预测标志位flag的确定:
20、加权预测标志位flag在同时满足以下条件的情况下为1:
21、(1),通过计算当前帧所有block_offset的波动情况frame_wave_offset即下式中的wave_offset,frame_wave_offset小于阈值=128:
22、
23、(2),可用加权块的数量占比大于阈值count_rate_thrd=50%;block_offset的波动情况用于确定整帧offset是否统一,可用加权块的数量占比用于替换现有算法的计算cost决策当前帧适不适合是用加权预测。
24、所述步骤s2中所述过滤的方法如下;
25、s2.1,当前块的下采样点的offset的和用sum_offset表示,下采样点的个数用num_offset表示,下采样点的offset用pixel_offset表示,当前块的offset用block_offset表示;
26、s2.2,如果当前帧的下采样点等于255或等于0,将当前pixel_offset分别存入above_doubt_buffer和under_doubt_buffer中,且不累加num_offset和sum_offset;
27、s2.3,如果above_doubt_buffer和under_doubt_buffer所含值的个数above_num和under_num的差与和的比值的绝对值小于阈值ab_rate_thrd=0.8,也就是说当前块既有上溢又有下溢或者是静止块则认为当前块并不是可用加权预测块,则省去后续运算;
28、s2.4,如果num_offset小于0.2倍的所有下采样点个数,设above_doubt_buffer中的最小pixel_offset为above_pixel_offset,under_doubt_buffer中的最小pixel_offset为under_pixel_offset,block_offset由以下式子得出:
29、
30、s2.5,否则,block_offset=sum_offset/num_offset,遍历的buffer为:
31、
32、buffer中存的pixel_offset绝对值小于block_offset则加入sum_offset并累加num_offset,最后重新计算block_offset:
33、
34、由此,本技术的优势在于:本方法简单,易操作,对上溢和下溢的像素值进行处理,减少由于噪声和局部差异导致加权因子ω计算不准并将问题传递给offset的情况,提高对flag进行判决的准确度。
本文地址:https://www.jishuxx.com/zhuanli/20240802/236923.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表