解码方法、装置、计算机设备、存储介质和计算机程序产品与流程
- 国知局
- 2024-10-21 14:36:33
本技术涉及图像处理,特别是涉及一种解码方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术:
1、isc(intra string copy,帧内串复制)模式是avs3标准中新增的一种串匹配预测模式。isc模式将当前cu划分为若干个长度不等的像素串,每个像素串会在已解码的像素中寻找一个匹配串,匹配串的像素直接作为当前串的解码像素,这种模式对于屏幕内容视频具有非常好的压缩性能。
2、传统技术中,avs3的isc模式又包含两种子模式,普通串类型和非普通串类型。根据avs3标准的规定,isc非普通串类型的参考范围与ctu(coding tree unit,最大编码单元)的大小有关,一般地,参考范围都是16384个像素,考虑到10bit像素实际使用16bit存储,其所需要的总的存储空间为16384x16x1.5 = 393216bit = 48kb,avs3的spec和参考软件中,会在解码器内部用一个buffer保存住所有的参考像素。但是由于cu的参考像素较多,占用了大量的硬件存储资源。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够降低硬件资源的占用的解码方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本技术提供一种解码方法,所述方法包括:
3、对待解码图像进行解码,得到当前编码单元对应的串信息以及预测像素值;
4、确定当前编码单元的像素类型以及串类型;
5、基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新;
6、基于所述历史点矢量列表中各点矢量得到参考像素值;
7、基于所述参考像素值进行像素重构。
8、在其中一个实施例中,所述基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新,包括:
9、在所述像素类型为所述当前编码单元包含亮度像素值和色度像素值,所述串类型为非普通串、基于串信息确定当前串对应新增点矢量且所述新增点矢量的像素值需要解码三个分量的情况下,设置所述新增点矢量的像素值的状态为包括三个分量,所述新增点矢量的色度像素值确定方式不是基于所述预测像素值得到的;
10、在所述像素类型为所述当前编码单元包含亮度像素值和色度像素值,所述串类型为非普通串、基于串信息确定当前串对应新增点矢量且所述新增点矢量的像素值仅需要解码亮度像素值的情况下,设置所述新增点矢量的像素值的状态为仅包括亮度像素值,所述新增点矢量的色度像素值的确定方式是基于所述预测像素值得到的;
11、将所述新增点矢量的像素值的状态、色度像素值的确定方式、位置以及各分量的像素值更新至所述历史点矢量列表中对应的位置。
12、在其中一个实施例中,所述基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新,包括:
13、在所述像素类型为所述当前编码单元仅包含亮度像素值,所述串类型为非普通串且基于串信息确定当前串对应新增点矢量的情况下,设置所述新增点矢量的像素值的状态为包括三个分量,所述新增点矢量的色度像素值是基于所述预测像素值得到的;
14、将所述新增点矢量的像素值的状态、色度像素值的确定方式、位置以及各分量的像素值更新至所述历史点矢量列表中对应的位置。
15、在其中一个实施例中,所述基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新,包括:
16、在所述像素类型为所述当前编码单元仅包含色度像素值,所述串类型为普通串的情况下,对所述历史点矢量列表中每一点矢量执行以下处理:
17、在所述点矢量的像素值的状态为包括三个分量,色度像素值的确定方式是基于所述预测像素值得到的情况下,基于所述点矢量的位置定位所述色度像素值在所述当前编码单元中的位置,并基于所确定的所述当前编码单元中的位置,得到所述色度像素值,基于所述色度像素值更新对应的所述点矢量的所述色度像素值。
18、在其中一个实施例中,所述基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新,包括:
19、在所述像素类型为所述当前编码单元包含亮度像素值时,通过两个不同的第一编码单元基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新;
20、在所述像素类型为所述当前编码单元包含色度像素值时,将两个相邻编码单元的色度像素值合并在一个第二编码单元中,并通过合并后的所述第二编码单元基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新。
21、在其中一个实施例中,所述基于所述参考像素值进行像素重构,包括:
22、基于所述参考像素值并行对亮度像素值和色度像素值进行重构。
23、在其中一个实施例中,所述基于所述参考像素值进行像素重构,包括:
24、在当前串为等值串,所述当前串对应的点矢量为历史点矢量或新增点矢量,且所述当前串对应的点矢量的像素值信息存储在所述点矢量列表的情况下,基于所述点矢量列表中对应的点矢量确定所述当前串对应的像素的亮度像素值;
25、在所述当前串为未匹配串,确定所述当前串对应的像素的亮度像素值为解码得到。
26、在其中一个实施例中,所述基于所述参考像素值进行像素重构,包括:
27、按照往返扫描顺序获取所述当前编码单元中的每一像素,得到当前像素的行号j和列号i;j为大于1的正整数,i为正整数;
28、在所述行号j为偶数的情况下,记录所述当前像素对应的串信息的点矢量信息至第一点矢量索引中;
29、在所述行号j为奇数,且所述列号i为奇数的情况下,记录所述当前像素对应的串信息的点矢量至第二点矢量索引中;
30、在所述行号j为奇数,且所述列号i为偶数的情况下,记录所述当前像素对应的串信息的点矢量至第二点矢量索引中,并获取依赖像素,基于所述依赖像素的色度像素值得到行号为j-1,列号为i的像素的目标色度像素值。
31、在其中一个实施例中,所述获取依赖像素,基于所述依赖像素的色度像素值得到行号为j-1,列号为i的像素的目标色度像素值,包括:
32、从所述第一点矢量索引中确定行号为j-1,列号为i的依赖像素的第一索引信息,并基于所述第一索引信息确定所述行号为j-1,列号为i的依赖像素的初始色度像素值;
33、从所述第二点矢量索引中确定行号为j-1,列号为i+1的依赖像素的第二索引信息以及行号为j,列号为i+1的依赖像素的第三索引信息,并基于所述第二索引信息确定所述行号为j-1,列号为i+1的依赖像素的色度像素值,基于所述第三索引信息确定所述行号为j,列号为i+1的依赖像素的亮度像素的色度像素值;
34、获取所述行号为j,列号为i的所述当前像素对应的串信息的点矢量的色度像素值;
35、基于所述行号为j-1,列号为i的像素的初始色度像素值、行号为j-1,列号为i+1的像素的色度像素值、所述行号为j,列号为i+1的像素的色度像素值以及所述行号为j,列号为i的像素的色度像素值,得到所述行号为j-1,列号为i的像素的目标色度像素值。
36、第二方面,本技术还提供一种解码装置,所述装置包括:
37、解码模块,用于对待解码图像进行解码得到当前编码单元对应的串信息以及预测像素值;
38、类型确定模块,用于确定当前编码单元的像素类型以及串类型;
39、更新模块,用于基于所述像素类型、所述串类型、所述串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新;
40、参考像素确定模块,用于基于所述历史点矢量列表中各点矢量得到参考像素值;
41、重构模块,用于基于所述参考像素值进行像素重构。
42、第三方面,本技术还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的任意一个实施例中的方法的步骤。
43、第四方面,本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的任意一个实施例中的方法的步骤。
44、第五方面,本技术还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的任意一个实施例中的方法的步骤。
45、上述解码方法、装置、计算机设备、存储介质和计算机程序产品,在待解码图像进行解码得到当前编码单元对应的串信息以及预测像素值后,基于解码单元的像素类型、串类型、串信息以及预测像素值对历史点矢量列表中对应的点矢量进行更新,并基于更新的点矢量列表中各点矢量确定当前串的参考像素值,从而基于参考像素值进行像素重构,由于点矢量列表中仅包括28个点矢量,一个点矢量对应一个参考像素,因此可以大大减少参考像素的量,降低硬件存储消耗。
本文地址:https://www.jishuxx.com/zhuanli/20241021/318707.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表