本发明涉及图像处理技术领域,特别涉及一种像素存储空间的节省方法。
背景技术:
当今社会是一个信息化的社会,图像材料也越来越多。需要存储图像材料的存储空间要求也越来越大,在应用过程中,特别是在视频编解码器中,如图1和2所示,需要不断与片外存储器进行数据交换,包括重建帧写入,参考帧获取等。这样就需要至少两倍的一帧像素空间进行存储。即图像的传输也需要占用一定的存储空间。如果能够有减少图像的存储空间,将极大的节约资源,提高传输效率。
现有技术使用两帧的空间来分别存储重建帧和参考帧,对内存大小要求严格,如果加入其它一些技术比如多参考帧,那么内存资源得使用更加紧张。
传统方法中,如图3所示,以图3中的第1帧和第2帧举例。第1帧编码完的重建帧像素写入第1帧重建帧像素存储空间。用于第2帧编码时做帧间预测。同时第2帧在编码时也有重建像素写入第2帧重建帧像素存储空间。但是第1帧前几行重建像素在第2帧后期编码时就没有作用了,帧间预测不会搜索很远的位置,也就是存在着存储冗余。
技术实现要素:
为了解决上述现有技术中存在的问题,本发明的目的在于:减少内存占用,在不影响编码的情况下,做到内存共享使用,从而节省存储空间。
本技术:
提供了一种像素存储空间的节省方法,所述存储空间设置为一帧空间和可配置空间大小的扩展空间;当前帧写重建像素起点与下一帧写重建像素终点之间为一帧空间;所述下一帧写重建像素终点位置为存储空间的可配置的扩展空间的起点。
所述方法具体包括以下步骤:
s1,第1帧写重建像素起点与第1帧写重建像素终点之间为一帧空间;所述第1帧写重建像素终点位置为存储空间的可配置的扩展空间的起点;
s2,第2帧写重建像素起点是步骤s2中第1帧的可配置的扩展空间的起点,第2帧写重建像素到存储空间终点后,再回到所述空间起点处写后面的像素;
s3,后面帧以此类推重复步骤s1-s2,依次向上跳转扩展行数开始写重建数据,上一帧的写重建像素起点变为当前帧的读重建像素起点。
所述步骤s3中如果跳转后,小于空间起点地址则剩余部分从空间终点向前跳转。
所述扩展空间可配置的行数为64的倍数,且不大于一帧的高度。
所述扩展空间的理论最小值为64行像素。
所述步骤中,即使后一帧的重建像素从空间起点开始写,覆盖了前一帧的重建像素,因为搜索范围的约束,此时此起点的像素已是无用参考像素,因而是可被覆盖的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是现有技术中视频编码解码器中进行数据交换的示意框图。
图2是现有技术中第1帧重建像素存储空间和第2帧重建像素存储空间存储的示意框图。
图3是现有技术中第1帧重建像素存储空间和第2帧重建像素存储空间使用的示意框图。
图4是本申请新的存储空间和可配置的扩展空间的示意图。
图5是本申请第1帧写重建像素起点和终点位置的示意图。
图6是本申请第2帧写重建像素起点和第2帧写重建像素到空间终点后,再回到空间起点处写后面的像素的示意图。
图7是本申请第2帧、第3帧和第4帧写重建像素起点的示意图。
图8是本申请第4帧、第5帧和第6帧写重建像素起点的示意图。
具体实施方式
目前,在图像存储技术中常用的术语有:
扩展空间:基于原内存空间扩展的像素空间,以像素行为单元。
原始帧:原始视频图像中的一帧。
重建帧:对原始帧编码并且解码后的重建图像。
参考帧:对原始帧编码时,用于参考做预测的帧,通常是已编码的重建帧。
帧间预测:基于参考帧搜索最佳匹配的像素单元的预测方式。
如图4所示,内存优化。既然在实际应用中存在着冗余,那么我们无需两倍的内存空间,只需要在一块内存空间的基础上扩展一些像素行数,无用参考区域可以被写重建像素。也即,形成新的存储空间和参考空间组合:一帧空间和可配的扩展空间。
如图5所示,显示第1帧如何写重建帧。第1帧写重建像素起点,第1帧写重建像素终点;所述写重建像素终点位置为存储空间的新的可配的扩展空间的起点。
如图6所示,显示进行第2帧时如何写重建帧和读参考帧。第2帧写重建像素起点是原来第1帧的可配的扩展空间的起点,第2帧写重建像素到原来存储空间终点后,再回到所述空间起点处写后面的像素。
其中,可配置的扩展空间是直接关系到帧间预测的搜索范围,所以不能很小,理论最小值64行像素,可配置的扩展空间行数为64的倍数,不大于一帧的高度即可。
特别地,这里还存在像素覆盖问题,即使第2帧的重建像素从空间起点开始写,覆盖了第1帧的重建像素,因为搜索范围的约束,此时此起点的像素已是无用参考像素。因而是可以被覆盖。
后面帧依次向上跳转扩展行数开始写重建数据,上一帧的写重建像素起点变为当前帧的读重建像素起点。如果跳转后小于空间起点地址则剩余部分从空间终点向前跳转。
具体地,如图7所示,显示第2帧写重建像素起点向上跳转扩展行数开始写重建数据,第1帧写重建像素起点变为当前帧的读重建像素起点;依次类推,第3帧写重建像素起点向上跳转扩展行数开始写重建数据,第2帧写重建像素起点变为当前帧的读重建像素起点;第4帧写重建像素起点向上跳转扩展行数开始写重建数据,第4帧写重建像素起点变为当前帧的读重建像素起点;如图8所示,如果跳转后小于空间起点地址则剩余部分从空间终点向前跳转,即,第5帧跳转后小于空间起点地址,则第6帧写重建像素起点从空间终点向前跳转。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种像素存储空间的节省方法,其特征在于,所述存储空间设置为一帧空间和可配置空间大小的扩展空间;当前帧写重建像素起点与下一帧写重建像素终点之间为一帧空间;所述下一帧写重建像素终点位置为存储空间的可配置的扩展空间的起点。
2.根据权利要求1所述的一种像素存储空间的节省方法,其特征在于,所述方法具体包括以下步骤:
s1,第1帧写重建像素起点与第1帧写重建像素终点之间为一帧空间;所述第1帧写重建像素终点位置为存储空间的可配置的扩展空间的起点;
s2,第2帧写重建像素起点是步骤s2中第1帧的可配置的扩展空间的起点,第2帧写重建像素到存储空间终点后,再回到所述空间起点处写后面的像素;
s3,后面帧以此类推重复步骤s1-s2,依次向上跳转扩展行数开始写重建数据,上一帧的写重建像素起点变为当前帧的读重建像素起点。
3.根据权利要求1所述的一种像素存储空间的节省方法,其特征在于,所述步骤s3中如果跳转后,小于空间起点地址则剩余部分从空间终点向前跳转。
4.根据权利要求1所述的一种像素存储空间的节省方法,其特征在于,所述扩展空间可配置的行数为64的倍数,且不大于一帧的高度。
5.根据权利要求1所述的一种像素存储空间的节省方法,其特征在于,所述扩展空间的理论最小值为64行像素。
6.根据权利要求1所述的一种像素存储空间的节省方法,其特征在于,所述步骤中即使后一帧的重建像素从空间起点开始写,覆盖了前一帧的重建像素,因为搜索范围的约束,此时此起点的像素已是无用参考像素,因而是可被覆盖的。