CN116437088A - 图像缓存区的更新方法、装置、服务器及存储介质 - Google Patents

图像缓存区的更新方法、装置、服务器及存储介质 Download PDF

Info

Publication number
CN116437088A
CN116437088A CN202310376288.1A CN202310376288A CN116437088A CN 116437088 A CN116437088 A CN 116437088A CN 202310376288 A CN202310376288 A CN 202310376288A CN 116437088 A CN116437088 A CN 116437088A
Authority
CN
China
Prior art keywords
image
type
images
frame
coding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310376288.1A
Other languages
English (en)
Inventor
邵宇超
陈宇聪
闻兴
谷嘉文
黄跃
黄博
肖君实
钟婷婷
刘晶
刘何为
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Priority to CN202310376288.1A priority Critical patent/CN116437088A/zh
Publication of CN116437088A publication Critical patent/CN116437088A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction

Abstract

本公开关于一种图像缓存区的更新方法、图像缓存区的更新装置、服务器及存储介质,包括:获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;第一类图像为已编码的图像帧;确定各第一类图像相对于第二类图像的编码代价;编码代价用于表征第二类图像在参考第一类图像中的像素信息进行图像编码时的参考程度,且参考程度的大小与编码代价的大小负相关;在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像。本公开方案,能够提升图像缓存区中留存的图像对后续编码图像的参考作用,以及使得后续编码图像的图像编码效率更高。

Description

图像缓存区的更新方法、装置、服务器及存储介质
技术领域
本公开涉及计算机技术领域,尤其涉及一种图像缓存区的更新方法、图像缓存区的更新装置、服务器及存储介质。
背景技术
视频编码是指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件的方式,视频编码是获得可观看视频的重要环节。
在相关技术中,在对视频解码时,通常需要将部分参考帧缓存在DPB(DecodedPicture Buffer,解码图像缓存区)中,以供后续编码帧用作参考图像进行图像编码,并在DPB中缓存的参考帧达到饱和时,根据各参考帧缓存的时长大小,逐次将各参考帧移除DPB中,以能够移入新的参考帧。
然而,目前的传统方法仅根据缓存参考帧的时长关系来更新DPB,存在DPB中的参考帧对后续编码帧的参考编码作用不强的问题,从而使得后续编码得到的图像帧的编码质量不高。
发明内容
本公开提供一种图像缓存区的更新方法、图像缓存区的更新装置、服务器及存储介质,以至少解决相关技术中语音交互时的及时性和一致性不优的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种图像缓存区的更新方法,包括:
获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;所述第一类图像为已编码的图像帧;
确定各所述第一类图像相对于所述第二类图像的编码代价;所述编码代价用于表征所述第二类图像在参考所述第一类图像中的像素信息进行图像编码时的参考程度,且所述参考程度的大小与所述编码代价的大小负相关;
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像。
在一示例性实施例中,所述确定各所述第一类图像相对于所述第二类图像的编码代价,包括:
确定各所述第一类图像相对于所述第二类图像的帧间预测损失;所述帧间预测损失表征在以所述第一类图像作为所述第二类图像的参考图像,对所述第二类图像进行帧间预测时,预测的信息损失;
确定各所述第一类图像对应的帧间传播损失;所述帧间传播损失表征在以所述第一类图像作为所述第二类图像的参考图像,并对所述第二类图像进行图像编码时,所述第一类图像的像素信息在传递至所述第二类图像的过程中所产生的信息损失;
基于各所述第一类图像对应的帧间传播损失与各所述第一类图像相对于所述第二类图像的帧间预测损失的加权和,确定各所述第一类图像相对于所述第二类图像的编码代价。
在一示例性实施例中,所述确定各所述第一类图像对应的帧间传播损失,包括:
确定各所述第一类图像相对于所述第二类图像的互信息量;所述互信息量用于表征在以所述第一类图像作为所述第二类图像的参考图像,并对所述第二类图像进行所述图像编码时,利用到的所述第一类图像的信息量;
确定各所述第一类图像相对于所述第二类图像的互信息量比率;所述互信息量比率用于表征所述互信息量与所述第二类图像的帧内预测损失的比率;
针对各所述第一类图像,确定所述互信息量比率与所述第二类图像的帧间传播损失的乘积值;所述第二类图像的帧间传播损失表征在以所述第二类图像作为后一待编码图像的参考图像,并对所述后一待编码图像进行图像编码时,所述第二类图像的像素信息在传递至所述后一待编码图像的过程中所产生的信息损失;
针对各所述第一类图像,基于对应的所述乘积值与所述互信息量之间的和值,确定各所述第一类图像相对于所述第二类图像的帧间传播损失。
在一示例性实施例中,所述确定各所述第一类图像相对于所述第二类图像的互信息量,包括:
基于所述第二类图像的帧内预测损失与所述第二类图像对应的帧间预测损失之间的差值,确定各所述第一类图像相对于所述第二类图像的互信息量。
在一示例性实施例中,所述基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像,包括:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,按照各所述第一类图像的编码代价由大到小的顺序,对各所述第一类图像进行前后排序,并确定排序在前预设数量个的第一类图像作为待移除的第一类图像;或者
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,在各所述第一类图像中,确定对应的所述编码代价大于预设阈值的对应数量个第一类图像作为待移除的第一类图像;
将所述待移除的第一类图像从所述图像缓存区中移除。
在一示例性实施例中,在所述确定各所述第一类图像相对于所述第二类图像的编码代价之后,还包括:
基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最小的第一类图像;
将所述编码代价最小的第一类图像作为所述第二类图像的参考图像,并基于所述参考图像中的像素信息对所述第二类图像进行图像编码,得到对应新的第一类图像;
在从所述图像缓存区中移除至少一个所述第一类图像之后,还包括:
将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
在一示例性实施例中,所述基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像,还包括:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最大的至少两个第一类图像;
将所述至少两个第一类图像融合为一个新的第一类图像;
将所述至少两个第一类图像从所述图像缓存区中移除,并将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
根据本公开实施例的第二方面,提供一种图像缓存区的更新装置,包括:
图像获取单元,被配置为执行获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;所述第一类图像为已编码的图像帧;
代价确定单元,被配置为执行确定各所述第一类图像相对于所述第二类图像的编码代价;所述编码代价用于表征所述第二类图像在参考所述第一类图像中的像素信息进行图像编码时的参考程度,且所述参考程度的大小与所述编码代价的大小负相关;
图像更新单元,被配置为执行在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像。
在一示例性实施例中,在所述确定各所述第一类图像相对于所述第二类图像的编码代价的方面,所述代价确定单元12具体用于:
确定各所述第一类图像相对于所述第二类图像的帧间预测损失;所述帧间预测损失表征在以所述第一类图像作为所述第二类图像的参考帧,对所述第二类图像进行帧间预测时,预测的信息损失;
确定各所述第一类图像对应的帧间传播损失;所述帧间传播损失表征在以所述第一类图像作为所述第二类图像的参考图像,并对所述第二类图像进行图像编码时,所述第一类图像的像素信息在传递至所述第二类图像的过程中所产生的信息损失;
基于各所述第一类图像对应的帧间传播损失与各所述第一类图像相对于所述第二类图像的帧间预测损失的加权和,确定各所述第一类图像相对于所述第二类图像的编码代价。
在一示例性实施例中,在所述确定各所述第一类图像对应的帧间传播损失的方面,所述代价确定单元12具体用于:
确定各所述第一类图像相对于所述第二类图像的互信息量;所述互信息量用于表征在以所述第一类图像作为所述第二类图像的参考帧,并对所述第二类图像进行所述图像编码时,利用到的所述第一类图像的信息量;
确定各所述第一类图像相对于所述第二类图像的互信息量比率;所述互信息量比率用于表征所述互信息量与所述第二类图像的帧内预测损失的比率;
针对各所述第一类图像,确定所述互信息量比率与所述第二类图像的帧间传播损失的乘积值;所述第二类图像的帧间传播损失表征在以所述第二类图像作为后一待编码图像的参考图像,并对所述后一待编码图像进行图像编码时,所述第二类图像的像素信息在传递至所述后一待编码图像的过程中所产生的信息损失;
针对各所述第一类图像,基于对应的所述乘积值与所述互信息量之间的和值,确定各所述第一类图像相对于所述第二类图像的帧间传播损失。
在一示例性实施例中,在所述确定各所述第一类图像相对于所述第二类图像的互信息量的方面,所述代价确定单元12具体用于:
基于所述第二类图像的帧内预测损失与所述第二类图像对应的帧间预测损失之间的差值,确定各所述第一类图像相对于所述第二类图像的互信息量。
在一示例性实施例中,在基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像的方面,所述图像更新单元13具体还用于:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,按照各所述第一类图像的编码代价由大到小的顺序,对各所述第一类图像进行前后排序,并确定排序在前预设数量个的第一类图像作为待移除的第一类图像;或者
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,在各所述第一类图像中,确定对应的所述编码代价大于预设阈值的对应数量个第一类图像作为待移除的第一类图像;
将所述待移除的第一类图像从所述图像缓存区中移除。
在一示例性实施例中,在所述确定各所述第一类图像相对于所述第二类图像的编码代价之后,所述图像更新单元13具体还用于:
基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最小的第一类图像;
将所述编码代价最小的第一类图像作为所述第二类图像的参考图像,并基于所述参考图像中的像素信息对所述第二类图像进行图像编码,得到对应新的第一类图像;
将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
在一示例性实施例中,在基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像的方面,所述图像更新单元13具体还用于:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最大的至少两个第一类图像;
将所述至少两个第一类图像融合为一个新的第一类图像;
将所述至少两个第一类图像从所述图像缓存区中移除,并将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
根据本公开实施例的第三方面,提供一种服务器,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如上述任一项所述的图像缓存区的更新方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被服务器的处理器执行时,使得所述服务器能够执行如上述任一项所述的图像缓存区的更新方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
该方法先通过获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;其中,第一类图像为已编码的图像帧;然后,再确定各第一类图像相对于第二类图像的编码代价;其中,编码代价用于表征第二类图像在参考第一类图像中的像素信息进行图像编码时的参考程度,且参考程度的大小与编码代价的大小负相关;最后,再在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像。这样,利用图像缓存区中存储的各第一类图像的编码代价来对图像缓存区中的部分第一类图像进行移除,区别于现有技术中基于各参考帧的存储时长来更新图像缓存区,提升了图像缓存区中留存的图像对后续编码图像的参考作用,以及优化了图像缓存区的更新流程;进一步地,利用当前待编码的第二类图像参考更新的图像缓存区中的第一类图像以进行图像编码,从而使得后续编码图像的图像编码效率更高,以及得到的图像帧的编码质量更好。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种图像缓存区的更新方法的应用环境图。
图2是根据一示例性实施例示出的一种图像缓存区的更新方法的流程图。
图3是根据一示例性实施例示出的一种确定图像编码代价步骤的界面图。
图4是根据一示例性实施例示出的一种确定第一类图像对应的帧间传播损失步骤的流程示意图。
图5是根据一示例性实施例示出的一种从图像缓存区中移除第一类图像步骤的流程图。
图6为根据一示例性实施例示出的一种更新图像缓存区步骤的流程图。
图7为根据一示例性实施例示出的另一种更新图像缓存区步骤的流程图。
图8是根据另一示例性实施例示出的一种图像缓存区的更新方法的流程图。
图9为根据另一示例性实施例示出的一种图像缓存区的更新装置框图。
图10是根据一示例性实施例示出的一种用于图像缓存区更新的电子设备的框图。
图11是根据一示例性实施例示出的一种用于图像缓存区更新的计算机可读存储介质的框图。
图12是根据一示例性实施例示出的一种用于图像缓存区更新的计算机程序产品的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例中的术语“和/或”指的是包括相关联的列举项目中的一个或多个的任何和全部的可能组合。还要说明的是:当用在本说明书中时,“包括/包含”指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元件和/或组件和/或它们的组群的存在或添加。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
另外,本申请中尽管多次采用术语“第一”、“第二”等来描述各种操作(或各种元件或各种应用或各种指令或各种数据)等,不过这些操作(或元件或应用或指令或数据)不应受这些术语的限制。这些术语只是用于区分一个操作(或元件或应用或指令或数据)和另一个操作(或元件或应用或指令或数据)。例如,第一预设数量个图像帧可以被称为第二预设数量个图像帧,第二预设数量个图像帧也可以被称为第一预设数量个图像帧,仅仅是其两者所包括的范围不同,而不脱离本申请的范围,第一预设数量个图像帧和第二预设数量个图像帧都是图像缓存区中需要调整的图像帧的集合,只是二者并不是图像缓存区中相同的需要调整的图像帧的集合而已。
本申请实施例提供的图像缓存区的更新方法,可以应用于如图1所示的应用环境中。其中,终端102通过通信网络与服务器104进行通信。数据存储系统可以将处理的数据存储在服务器104中,或者将存储在服务器104中的处理数据发送至终端102。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
在一些实施例中,参考图1,服务器104首先获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;其中,第一类图像为已编码的图像帧;然后,服务器104再确定各第一类图像相对于第二类图像的编码代价;其中,编码代价用于表征第二类图像在参考第一类图像中的像素信息进行图像编码时的参考程度,且参考程度的大小与编码代价的大小负相关;然后,服务器104再在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像。
在一些实施例中,终端102(如移动终端、固定终端)可以以各种形式来实施。其中,终端102可为包括诸如移动电话、智能电话、笔记本电脑、便携式手持式设备、个人数字助理(PDA,Personal Digital Assistant)、平板电脑(PAD)等等的可以根据解码图像帧相对于待编码图像帧的帧间预测损失和帧间传播损失,确定解码图像帧的编码代价的移动终端,终端102也可以是自动柜员机(Automated Teller Machine,ATM)、自动一体机、数字TV、台式计算机、固式计算机等等的可以根据根据解码图像帧相对于待编码图像帧的帧间预测损失和帧间传播损失,确定解码图像帧的编码代价的固定终端。
下面,假设终端102是固定终端。然而,本领域技术人员将理解的是,若有特别用于移动目的的操作或者元件,根据本申请公开的实施方式的构造也能够应用于移动类型的终端102。
在一些实施例中,服务器104运行的数据处理组件可以加载正在被执行的可以包括各种附加服务器应用和/或中间层应用中的任何一种,如包括HTTP(超文本传输协议)、FTP(文件传输协议)、CGI(通用网关界面)、RDBMS(关系型数据库管理系统)等。
在一些实施例中,终端102可以用独立的数据处理器或者是多个数据处理器组成的数据处理集群来实现。服务器104可以适于运行提供前述公开中描述的各种附加服务器应用和/或中间层应用的一个或多个应用服务或软件组件。
在一些实施例中,应用服务可以包括向用户提供语音视频信号编解码的服务界面(例如,用于用户选取需要编解码语音视频信号的采集通道的操作界面、用于向用户播放编解码后的语音视频信号的展示界面),以及对应程序服务等等。其中,软件组件可以包括例如具有根据各解码图像帧的编码代价之间的大小关系,调整至少部分解码图像帧,以更新图像缓存区功能的应用程序(SDK)或者客户端(APP)。
在一些实施例中,服务器104所提供的具有调整解码图像帧和更新图像缓存区功能的应用程序或者客户端包括一个在前台向用户提供一对一应用服务的门户端口和多个位于后台进行数据处理的业务系统,以将调整解码图像帧和更新图像缓存区的功能应用扩展到APP或者客户端,从而用户能够在任何时间任何地点进行调整解码图像帧和更新图像缓存区功能的使用和访问。
在一些实施例中,APP或者客户端的调整解码图像帧和更新图像缓存区功能可为运行在用户模式以完成某项或多项特定工作的计算机程序,其可以与用户进行交互,且具有可视的用户界面。其中,APP或者客户端可以包括两部分:图形用户接口(GUI)和引擎(engine),利用这两者能够以用户界面的形式向用户提供多种应用服务的数字化客户系统。
在一些实施例中,用户可以通过终端102中的输入装置向APP或者客户端输入相应的代码数据或者控制参数,以执行服务器104中的计算机程序的应用服务,以及显示用户界面中的应用服务。
作为一种示例,当用户需要将一图像缓存区中的解码图像帧进行更新时,则用户可以通过终端102中的输入装置向服务器104输入对应的编码模式并启动图像缓存区的更新方法,在服务器104基于图像缓存区中存储的多个第一类图像和当前待编码的第二类图像确定出各第一类图像的编码代价之后,服务器104再基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像,并将移除至少一个第一类图像后的图像缓存区中各图像帧的数据信息展示在服务器104对应的展示界面中,向用户实时地展示该更新后的图像缓存区中各图像帧的数据信息。可选地,输入装置所对应的输入方式可以为触屏输入、按键输入、语音输入或相关控制程序输入等等。
在一些实施例中,APP或者客户端运行的操作系统可以包括各种版本的Microsoft
Figure BDA0004170864800000081
Apple/>
Figure BDA0004170864800000082
和/或Linux操作系统、各种商用或类/>
Figure BDA0004170864800000083
操作系统(包括但不限于各种GNU/Linux操作系统、Google/>
Figure BDA0004170864800000084
OS等)和/或移动操作系统,诸如
Figure BDA0004170864800000085
Phone、/>
Figure BDA0004170864800000086
OS、/>
Figure BDA0004170864800000087
OS、/>
Figure BDA0004170864800000088
OS操作系统,以及其它在线操作系统或者离线操作系统,在这里不做具体的限制。
在本申请公开实施例中,服务器在对目标视频的各图像帧进行图像编码之前,先基于预设的编码模式确定各图像帧之间的帧结构,然后,再根据对应的帧结构对各图像帧进行图像编码,从而在进行图像编码的过程中,执行图像缓存区的更新方法。
在一些实施例中,目标视频即为编码前的原始视频文件,其是由原始图像帧组成的“yuv”视频序列。其中,“yuv”表征一种颜色编码,y为明亮度,uv为颜色度。
在一些实施例中,预设的编码模式为服务器在预设的多种编码模式中,确定的能够以最高效率对各图像帧进行图像编码的最优编码模式。
在一些实施例中,预设的多种编码模式可以包括例如基于H.264编解码标准所对应的x264编码模式或者基于H.265编解码标准所对应的x265编码模式。
在一些实施例中,各图像帧之间的帧结构为:在服务器对各图像帧执行最优编码模式的情况下,根据各图像帧的帧类型来对各图像帧进行预测编码的顺序。
在一些实施例中,在最优编码模式下,服务器根据各图像帧的不同功能和压缩效率分解为三种帧类型,包括:I帧(Intra-frame,帧内编码帧)、P帧(Predicted-frame,帧间预测帧)和B帧(Bidirectional-frame,帧间双向预测帧)。其中,I帧为自重建图像帧,B帧和P帧均会参考其他的图像帧进行预测编码,以提升图像编码的编码效率。
作为一示例,一种最优编码模式是:以目标视频的各图像帧中每60个图像帧为一个编码节点进行图像编码。其中,编码节点中各图像帧之间的帧结构为{0,16,8,4,1、3、5、7、9、11、....、59};其中,帧结构中的数字表示目标视频的各图像帧按照对应时序排列的图像帧(例如,第0帧,第16帧),帧结构中各数字之间的排列顺序为对应各图像帧的编码顺序(例如,第0帧为排在第一位的图像帧,则第0帧为第1个进行预测编码的图像帧;第16帧为排在第二位的图像帧,则第16帧为第2个进行预测编码的图像帧)。
其中,帧结构{0,16,8,4,1、3、5、7、9、11、....、59}中的第0帧是I帧,且其前面没有参考帧,其即只能是帧内编码帧;第16帧是P帧,P帧是单向参考的帧间编码帧;第8帧可以参考第0帧和第16帧,第8帧是双向参考的帧间编码帧;第4帧可以参考第0帧和第8帧,第4帧是双向参考的帧间编码帧;而1、3、5、7、9、11.....这些帧后续是不会被作为参考帧的图像帧,其不存在于DPB中。
在一些实施例中,如图2所示,提供了一种图像缓存区的更新方法,以该方法应用于图1中的服务器104为例进行说明,该方法包括以下步骤:
步骤S11,获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像。
在一实施例中,图像缓存区(Decoded Picture Buffer,DPB)用于解码器存放目标视频的编码图像。
在一些实施例中,第一类图像和第二类图像均由目标视频对应的原始图像帧生成,且第一类图像为已存入图像缓存区中的已编码的图像帧,第二类图像为当前待存入图像缓存区中的未编码的图像帧。
在一种实现场景中,服务器首先获取到目标视频,并对目标视频进行分帧提取,得到按照时序排列的多个图像帧;然后,服务器基于预设的编码模式,确定对应于该多个图像帧之间的帧结构,并以确定的帧结构对该多个图像帧依次进行图像编解码;其中,在进行图像编码的过程中,服务器将完成编码的图像帧作为第一类图像,并按次序将第一类图像存储入图像缓存区中,以及,服务器将当前待执行编码流程的图像帧作为第二类图像,并对第二类图像进行图像编码。
步骤S12:确定各第一类图像相对于第二类图像的编码代价。
在一些实施例中,在基于最优编码模式对第二类图像进行图像编码过程中,服务器利用对应的第一类图像作为第二类图像的参考帧,对第二类图像进行图像编码,以产生各第一类图像相对于第二类图像的编码代价。
在一些实施中,服务器在对应的最优编码模式下,对第二类图像进行图像编码可以控制第一类图像(即参考帧)在被参考编码过程中的像素信息的损失量和传递量,从而控制第一类图像的编码代价;以及控制第二类图像(即编码帧)在参考编码过程中接收第一类图像的像素信息的数量,从而控制参考编码后的码率(包括画面质量)和体量。
在一些实施例中,编码代价用于表征第二类图像在参考第一类图像中的像素信息进行图像编码时的参考程度,且参考程度的大小与编码代价的大小负相关。
在一些实施例中,第二类图像参考第一类图像中的像素信息的参考程度表征对第二类图像进行图像编码时,第一类图像对第二类图像的影响程度。
其中,若被参考的第一类图像的编码代价越小(即提供给第二类图像的传递量/参考价值越高),则第二类图像对第一类图像的参考程度越大,参考得到的画质损失越小且其具有较高码率,从而该第二类图像也可以提供给后续的编码帧充分的参考价值,以提高整个目标视频的各编码帧的质量。
其中,若被参考的第一类图像的编码代价越大(即提供给第二类图像的传递量/参考价值越低),则第二类图像对第一类图像的参考程度越小,参考得到的画质损失越大且其具有较低码率,从而该第二类图像提供给后续的编码帧的参考价值也较低,从而最后得到整个目标视频的各编码帧的质量不高。
在一些实施例中,服务器可以对第二类图像进行某种预测模式(包括帧内预测、帧间预测、合并预测等)的预测编码,以得到对应的预测值,从而确定各第一类图像相对于第二类图像的编码代价。
在具体实现中,服务器可以通过SATD(Sum of Absolute TransformedDifference,频域绝对误差和)、PSNR(Peak Signal to Noise Ratio,峰值信噪比)、SSIM(Structural Similarity,结构相似度)、MSSIM(Mean Structural Similarity,平均结构相似度)、VMAF(Video Multi-method Assessment Fusion,视频多方法评估融合指标)、MOS(Mean Opinion Score,平均主观意见分数)、SSD(Sum of Squared Difference,平方误差和)、MSE(Mean Squared Error,均方误差)、SAD(Sum of Absolute Difference,时域绝对误差和)等算法,来计算第二类图像在某种预测模式(包括帧内预测、帧间预测、合并预测等)下对应的预测值,以确定第一类图像的编码代价。
步骤S13:在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像。
在一些实施例中,服务器将完成编码的图像帧作为第一类图像,并按次序将第一类图像存储入图像缓存区中,然后,当图像缓存区中存储的第一类图像的数量达到设定数量或者达到饱和数量时,服务器根据各第一类图像的编码代价之间的大小,确定对应被参考程度较小/参考价值较低的至少一个第一类图像,并将该至少一个第一类图像从图像缓存区中移除,以更新图像缓存区中存储的图像帧。
在另一些实施例中,在服务器将图像缓存区中的至少一个第一类图像移除之后,服务器再对当前待编码的第二类图像进行图像编码,得到新的第一类图像,并将新的第一类图像移入图像缓存区中,以再次更新图像缓存区中存储的图像帧。
上述的图像缓存区的更新过程中,服务器首先获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;其中,第一类图像为已编码的图像帧;然后,再确定各第一类图像相对于第二类图像的编码代价;其中,编码代价用于表征第二类图像在参考第一类图像中的像素信息进行图像编码时的参考程度,且参考程度的大小与编码代价的大小负相关;最后,再在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像。这样,利用图像缓存区中存储的各第一类图像的编码代价来对图像缓存区中的部分第一类图像进行移除,区别于现有技术中基于各参考帧的存储时长来更新图像缓存区,提升了图像缓存区中留存的图像对后续编码图像的参考作用,以及优化了图像缓存区的更新流程;进一步地,利用当前待编码的第二类图像参考更新的图像缓存区中的第一类图像以进行图像编码,从而使得后续编码图像的图像编码效率更高,以及得到的图像帧的编码质量更好。
本领域技术人员可以理解地,在具体实施方式的上述方法中,所揭露的方法可以通过更为具体的方式以实现。例如,以上所描述的在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像的实施方式仅仅是示意性的。
示例性地,终端基于语音信号线性变换后得到的信号中提取出语音特征的方式;或者基于融合后的语音特征进行线性逆变换的方式等等,其仅仅为一种集合的方式,实际实现时可以有另外的变换方式,例如第一类图像相对于第二类图像的编码代价、第二类图像在参考第一类图像中的像素信息进行图像编码时的参考程度之间可以结合或者可以集合到另一个系统中,或一些特征可以忽略,或不执行。
在一种示例性实施例中,参阅图3,图3为本申请中确定图像编码代价一实施例的流程示意图。在步骤S12中,即服务器确定各第一类图像相对于第二类图像的编码代价的过程,具体可以通过以下方式实现:
步骤S121,确定各第一类图像相对于第二类图像的帧间预测损失。
在一些实施例中,帧间预测损失表征在以第一类图像作为第二类图像的参考图像,对第二类图像进行帧间预测时,预测的信息损失。
在一些实施例中,服务器可以对第二类图像进行帧间预测模式的预测编码,以得到对第二类图像进行帧间预测时的预测值,从而确定各第一类图像相对于第二类图像的帧间预测损失。
在一些实施例中,帧间预测模式的预测编码过程可以包括:服务器以当前待编码的第二类图像中的每一个编码块为单位,首先,分别计算每一编码块相对于每一个第一类图像中一参考块的预测像素信息,然后,计算各编码块的原始像素信息与对应参考块的预测像素信息之间的相似度,得到一个编码块的预测损失,最后,将当前待编码的第二类图像分别相对于对应的各第一类图像的所有编码块的预测损失累加,得到各第一类图像相对于第二类图像的帧间预测损失。
作为一示例,第一类图像包括图像A和图像B,当前待编码的第二类图像为图像C。其中,图像C中的编码块C1分别与图像A中的参考块A1、图像B中的参考块B1相对应,图像C中的编码块C2分别与图像A中的参考块A2、图像B中的参考块B2相对应。在服务器分别以图像A和图像B作为图像C的参考图像,对图像C进行帧间预测时,确定编码块C1对应于参考块A1具有预测损失P1,编码块C1对应于参考块B1具有预测损失P2,编码块C2对应于参考块A1具有预测损失P3,编码块C2对应于参考块A2具有预测损失P4。因此,图像A相对于图像C的帧间预测损失为P1+P3;图像B相对于图像C的帧间预测损失为P2+P4。
在一些实施例中,服务器还可以对第二类图像进行帧内预测模式的预测编码,以得到对第二类图像进行帧内预测时的预测值,从而确定第二类图像的帧内预测损失。
在一些实施例中,帧内预测模式的预测编码过程可以包括:服务器以当前待编码的第二类图像中的每一个编码块为单位,首先,计算每一编码块相对于第二类图像本身对应一参考块(该参考块为当前待编码的第二类图像中除当前编码块外的一个已编码块)的预测像素信息,然后,分别计算各个编码块的原始像素信息与对应的预测像素信息与之间的相似度,得到各编码块的预测损失,最后,将当前待编码的第二类图像中的各编码块的预测损失累加,得到当前待编码的第二类图像的帧内预测损失。
作为一示例,当前待编码的第二类图像为图像D。其中,图像D中的编码块D1与参考块D2相对应、编码块D3与参考块D4相对应,且编码块D1和编码块D3为待编码块,参考块D2和参考块D4为已编码块。在服务器对图像D进行帧内预测时,确定编码块D1对应于参考块D2具有预测损失P5,编码块D3对应于参考块D4具有预测损失P6,。因此,图像D的帧内预测损失为P5+P6。
步骤S122,确定各第一类图像对应的帧间传播损失。
在一些实施例中,帧间传播损失表征在以第一类图像作为第二类图像的参考图像,并对第二类图像进行图像编码时,第一类图像的像素信息在传递至第二类图像的过程中所产生的信息损失。
在一种示例性实施例中,参阅图4,图4为本申请中确定第一类图像对应的帧间传播损失一实施例的流程示意图。在步骤S122中,即服务器确定各第一类图像对应的帧间传播损失的过程,具体可以通过以下方式实现:
步骤a1,确定各第一类图像相对于第二类图像的互信息量。
在一些实施例中,基于第二类图像的帧内预测损失与第一类图像相对于第二类图像的帧间预测损失之间的差值,确定各第一类图像相对于第二类图像的互信息量。
在一些实施例中,第一类图像相对于第二类图像的互信息量基于IntraCost_P-InterCost_Pi表征,其中,IntraCost_P为第二类图像的帧内预测损失,InterCost_Pi为第一类图像相对于第二类图像的帧间预测损失,i表示对应的各第一类图像。
在一些实施例中,互信息量用于表征在以第一类图像作为第二类图像的参考图像,并对第二类图像进行图像编码时,利用到的第一类图像的信息量,即第一类图像能够向当前待编码的第二类图像传递的信息量。
基于以上的方案,利用未编码图像的帧内预测损失和帧间预测损失,确定已编码图像相对于未编码图像的互信息量,保证了计算的互信息量的准确性,提升了后续根据互信息量来计算出已编码图像相对于未编码图像的帧间传播损失的有效性和准确性。
步骤a2,确定各第一类图像相对于第二类图像的互信息量比率。
在一些实施例中,基于各第一类图像相对于第二类图像的互信息量与第二类图像的帧内预测损失之间的商值,确定各第一类图像相对于第二类图像的互信息量比率。
在一些实施例中,第一类图像相对于第二类图像的互信息量基于(IntraCost_P-lnterCost_Pi)/IntraCost_P表征。
在一些实施例中,互信息量比率用于表征互信息量与第二类图像的帧内预测损失的比率,即第一类图像向当前待编码的第二类图像传递的信息量占当前待编码的第二类图像自身的信息量的比例。
步骤a3,针对各第一类图像,确定互信息量比率与第二类图像的帧间传播损失的乘积值。
步骤a4,针对各第一类图像,基于对应的乘积值与互信息量之间的和值,确定各第一类图像相对于第二类图像的帧间传播损失。
在一些实施例中,各第一类图像相对于第二类图像的帧间传播损失基于:PropagateInCost_Ri=(IntraCost_P-InterCost_Pi)+PropagateInCost_P×(IntraCost_P-lnterCost_Pi)/IntraCost_P=(1+PropagateInCost_P)×(IntraCost_P-InterCost_Pi)/IntraCost_P表征。
在一些实施例中,PropagateInCost_Ri为各第一类图像相对于第二类图像的帧间传播损失,第二类图像的帧间传播损失通过PropagateInCost_P表示,第一类图像对应的互信息量比率通过(IntraCost_P-lnterCost_Pi)/IntraCost_P表示。
在一些实施例中,第二类图像的帧间传播损失表征在以第二类图像作为后一待编码图像的参考图像,并对后一待编码图像进行图像编码时,第二类图像的像素信息在传递至后一待编码图像的过程中所产生的信息损失。
基于以上步骤a1-步骤a4的方案,利用已编码图像相对于未编码图像的互信息量和互信息量比率,确定已编码图像相对于未编码图像的帧间传播损失,优化了计算帧间传播损失的流程,保证了后续根据帧间传播损失对已编码图像进行排序和更新图像缓存区的有效性和准确性。
步骤S123,基于各第一类图像对应的帧间传播损失与各第一类图像相对于第二类图像的帧间预测损失的加权和,确定各第一类图像相对于第二类图像的编码代价。
在一些实施例中,各第一类图像相对于第二类图像的编码代价基于:
TotalCost_Ri=a×InterCost_Pi+b×PropagateInCost_Ri表征。
其中,TotalCost_Ri为各第一类图像相对于第二类图像的编码代价。
其中,“a”为第一权重因子,“b”为第二权重因子,且第一权重因子为正数,第二权重因子为负数。
其中,若对应第一类图像相对于第二类图像的编码代价(TOtalCost)越小,则该第一类图像的传播损失越小,其对当前待编码的第二类图像和后续待编码的第二类图像影响程度越大(即第一类图像传输给第二类图像的信息越多、第一类图像传输给第二类图像的信息损失越小),当前待编码的第二类图像和后续待编码的第二类图像对第一类图像的参考程度越大。从而,当前待编码的第二类图像和后续待编码在参考该第一类图像进行图像编码时的QP(Quantization Parameter,量化参数)越小,编码质量越高。
其中,若对应第一类图像相对于第二类图像的编码代价(TOtalCost)越大,则该第一类图像的传播损失越大,其对当前待编码的第二类图像和后续待编码的第二类图像影响程度越小(即第一类图像传输给第二类图像的信息越少、第一类图像传输给第二类图像的信息损失越大),当前待编码的第二类图像和后续待编码的第二类图像对第一类图像的参考程度越小。从而,当前待编码的第二类图像和后续待编码在参考该第一类图像进行图像编码时的QP(Quantization Parameter,量化参数)越大,编码质量越低。
基于以上步骤S121-步骤S123的方案,利用已编码图像的帧间传播损失和相对于未编码图像的帧间预测损失,确定已编码图像相对于未编码图像的编码代价,保证了计算的编码代价的准确性,提升了后续根据编码代价对已编码图像进行排序和更新图像缓存区的有效性和准确性。
在一示例性实施例中,参阅图5,图5为本申请中从图像缓存区中移除第一类图像一实施例的流程示意图。在步骤S13中,即服务器基于各第一类图像的编码代价的大小,从图像缓存区中移除至少一个第一类图像的过程,具体可以通过以下方式实现:
在一种实施例中,可以先执行步骤S131,然后再执行步骤S133来实现从图像缓存区中移除第一类图像。
其中,步骤S131,在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,按照各第一类图像的编码代价由大到小的顺序,对各第一类图像进行前后排序,并确定排序在前预设数量个的第一类图像作为待移除的第一类图像。
作为一示例,图像缓存区的饱和存储数量为存储10个第一类图像,即其设定的最大数量为10个。在图像缓存区中存储的第一类图像的数量已经达到10个的情况下,服务器首先按照各第一类图像的编码代价的大小,将各第一类图像由大到小的进行前后顺序(即编码代价越大,对应的第一类图像排在越前;编码代价越小,对应的第一类图像排在越后),然后,服务器确定排在片前面的预设数量个(如1个、2个等)的第一类图像,作为待移除的第一类图像。
在一种实施例中,可以先执行步骤S132,然后再执行步骤S133来实现从图像缓存区中移除第一类图像。
其中,步骤S132,在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,在各第一类图像中,确定对应的编码代价大于预设阈值的对应数量个第一类图像作为待移除的第一类图像。
作为一示例,图像缓存区的饱和存储数量为存储10个第一类图像,即其设定的最大数量为10个。在图像缓存区中存储的第一类图像的数量已经达到10个的情况下,服务器在各第一类图像中,确定出编码代价大于预设阈值的全部(如1个、2个等)第一类图像,作为待移除的第一类图像。
步骤S133,将待移除的第一类图像从图像缓存区中移除。
基于以上步骤S131-步骤S133的方案,按照图像缓存区中已编码图像的编码代价进行排序,并对部分编码代价异常的已编码图像进行移除,保证了图像缓存区中已编码图像具有较低的编码代价,有利于后续编码图像的图像编码效率更高,以及得到的图像帧的编码质量更好。
在一示例性实施例中,参阅图6,图6为本申请中更新图像缓存区一实施例的流程示意图。在步骤S12之后,即服务器在确定各第一类图像相对于第二类图像的编码代价之后,具体还可以通过以下方式实现:
步骤b1,基于各第一类图像的编码代价的大小,确定对应编码代价最小的第一类图像。
步骤b2,将编码代价最小的第一类图像作为第二类图像的参考图像,并基于参考图像中的像素信息对第二类图像进行图像编码,得到对应新的第一类图像。
在一实施例中,编码代价最小的第一类图像的数量包括至少一个,即在图像缓存区中可能只包括一个编码代价最小的第一类图像,也可能包括多个编码代价最小且相同的第一类图像。
在第一种实施例中,在图像缓存区中编码代价最小的第一类图像只存在一个的情况下,将该编码代价最小的第一类图像作为第二类图像的参考图像,并基于参考图像中的像素信息对第二类图像进行图像编码,得到对应的一个新的第一类图像。
在第二种实施例中,在图像缓存区中编码代价最小的第一类图像存在至少两个的情况下,在该至少两个的第一类图像中确定出移入图像缓存区最晚的目标第一类图像,并该目标第一类图像作为第二类图像的参考图像,并基于参考图像中的像素信息对第二类图像进行图像编码,得到对应的一个新的第一类图像。
在第三种实施例中,在图像缓存区中编码代价最小的第一类图像存在至少两个的情况下,分别将该至少两个的第一类图像作为第二类图像的参考图像,并基于各参考图像中的像素信息对第二类图像进行图像编码,得到对应的至少两个新的第一类图像。
继续如图6所述,在步骤S13之后,即服务器在从图像缓存区中移除至少一个第一类图像之后,具体还可以通过以下方式实现:
步骤b3,将新的第一类图像移入图像缓存区中,以更新图像缓存区。
在一实施例中,对应编码代价最小的第一类图像,其对当前待编码的第二类图像和后续待编码的第二类图像影响程度越大(即第一类图像传输给第二类图像的信息越多、第一类图像传输给第二类图像的信息损失越小),当前待编码的第二类图像和后续待编码的第二类图像对第一类图像的参考程度越大。因此,将该编码代价最小的第一类图像作为当前待编码的第二类图像的参考图像,并基于参考图像中的像素信息对第二类图像进行图像编码,得到的新的第一类图像,其QP较小,编码质量较高。
基于以上步骤b1-步骤b3的方案,利用图像缓存区中编码代价最小的已编码图像来对未编码图像进行编码,并对图像缓存区进行更新,提升了图像缓存区中留存的图像对后续编码图像的参考作用,以及优化了图像缓存区的更新流程。
在一示例性实施例中,参阅图7,图7为本申请中更新图像缓存区另一实施例的流程示意图。在步骤S13之后,即服务器在从图像缓存区中移除至少一个第一类图像之后,具体还可以通过以下方式实现:
步骤c1,在图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各第一类图像的编码代价的大小,确定对应编码代价最大的至少两个第一类图像。
作为一示例,图像缓存区的饱和存储数量为存储10个第一类图像,其设定的最大数量为10个。在图像缓存区中存储的第一类图像的数量达到10个的情况下,服务器基于各第一类图像的编码代价的大小,确定编码代价最大的第三预设数量个(如1个、2个等)第一类图像。
作为另一示例,图像缓存区的饱和存储数量为存储10个第一类图像,其设定的最大数量为10个。在图像缓存区中存储的第一类图像的数量达到10个的情况下,服务器基于各第一类图像的编码代价的大小,确定编码代价大于预设阈值的第四预设数量个(如1个、2个等)第一类图像。
步骤c2,将至少两个第一类图像融合为一个新的第一类图像。
在一实施例中,服务器将步骤c1中确定的第三预设数量个第一类图像或者第四预设数量个第一类图像融合为一个新的第一类图像。
步骤c3,将至少两个第一类图像从图像缓存区中移除,并将新的第一类图像移入图像缓存区中,以更新图像缓存区。
在一实施例中,服务器将步骤c1中确定的第三预设数量个第一类图像或者第四预设数量个第一类图像从图像缓存区中移除,并将新的第一类图像移入图像缓存区中,以更新图像缓存区。
基于以上步骤c1-步骤c3的方案,将图像缓存区中编码代价最大的至少两个已编码图像融合为新的已编码图像,并对图像缓存区进行更新,保证了图像缓存区中的已编码图像持续具有较低的编码代价,有利于未编码图像参考图像缓存区中已编码图像进行编码的有效性和准确性。
为了更清晰阐明本公开实施例提供的图像缓存区的更新方法,以下以一个具体的实施例对该语音编解码方法进行具体说明。在一示例性实施例中,参考图8,图8为根据另一示例性实施例示出的一种图像缓存区的更新方法的流程图,该图像缓存区的更新方法用于服务器104中,具体包括如下内容:
步骤S21:获取DPB中的各个解码帧,以及当前编码帧。
其中,DPB中的解码帧为已完成编码-解码-重建的图像帧,当前编码帧为当前待编码的图像帧。
其中,DPB中的解码帧、当前编码帧,以及后续的待编码帧均为帧结构中的P帧和B帧。
其中,帧结构为对待编码视频的图像帧序列执行最优编码模式时,对图像帧序列中需要进行预测编码的图像帧所确定的编码顺序。
其中,最优编码模式为以最高效率对待编码视频进行编码的编码模式。
例如,一种最优编码模式是:编码帧结构以图像帧序列中每60个图像帧为一个周期;其中,帧结构对应的编码顺序为{0,16,8,4,1、3、5、7、9、11....};其中,帧结构中的数字表示图像帧序列中按照时序排列的图像帧,帧结构中各数字之间的排列顺序为对应各图像帧的编码顺序。
其中,第0帧是I帧,且其前面没有参考帧,其即只能是帧内编码帧;第16帧是P帧,P帧是单向参考的帧间编码帧;第8帧可以参考第0帧和第16帧,第8帧是双向参考的帧间编码帧;第4帧可以参考第0帧和第8帧,第4帧是双向参考的帧间编码帧;而1、3、5、7、9、11.....这些帧后续是不会被作为参考帧的图像帧,其不存在于DPB中。
步骤S22:计算当前编码帧的帧内预测损失;以及,以DPB中的各个解码帧分别作为当前编码帧的参考帧,计算各解码帧相对于当前编码帧的帧间预测损失。
其中,帧内预测损失以IntraCost_P表示,帧间预测损失InterCost_P表示,P表示对应的编码帧。
其中,计算帧内预测损失的过程:以当前编码帧中的每一个编码块为单位,首先,计算每一编码块相对于对应一参考块(该参考块为当前编码帧中除当前编码块外的一个已编码块)的预测像素信息,然后,计算编码块的原始像素信息与预测像素信息与之间的相似度,得到一个编码块的预测损失,最后,将当前编码帧的所有编码块的预测损失累加,得到当前编码帧的帧内预测损失。
其中,计算帧间预测损失的过程:以当前编码帧中的每一个编码块为单位,首先,计算每一编码块相对于解码帧中一参考块的预测像素信息,然后,计算编码块的原始像素信息与预测像素信息与之间的相似度,得到一个编码块的预测损失,最后,将当前编码帧的所有编码块的预测损失累加,得到解码帧相对于当前编码帧的帧间预测损失。
其中,计算编码块的原始像素信息与预测像素信息与之间的相似度可以通过:SATD(Sum of Absolute Transformed Difference,频域绝对误差和)、PSNR(Peak Signalto Noise Ratio,峰值信噪比)、SSIM(Structural Similarity,结构相似度)、MSSIM(MeanStructural Similarity,平均结构相似度)、VMAF(Video Multi-method AssessmentFusion,视频多方法评估融合指标)、MOS(Mean Opinion Score,平均主观意见分数)、SSD(Sum of Squared Difference,平方误差和)、MSE(Mean Squared Error,均方误差)、SAD(Sum of Absolute Difference,时域绝对误差和)来得到。
步骤S23:基于当前编码帧的帧内预测损失和各解码帧相对于当前编码帧的帧间预测损失,计算DPB中的各解码帧相对于当前编码帧的帧间传播损失。
其中,帧间传播损失基于:PropagateInCost_R
=(IntraCost_P-InterCost_P)+PropagateInCost_P×(IntraCost_P-lnterCost_P)/IntraCost_P=(1+PropagateInCostB)×(IntraCost_P-InterCost_P)/IntraCost_P表征。
其中,(IntraCost_P-InterCost_P)表征当前编码帧与对应解码帧之间的互信息量,即解码帧能够向当前编码帧传递的信息量。
其中,(IntraCost_P-lnterCost_P)/IntraCost_P表征解码帧向当前编码帧传递的信息量占当前编码帧传递自身的信息量的比例。
其中,PropagateInCost_R表征解码帧的帧间传播损失,PropagateInCost_P表征当前编码帧的帧间传播损失。
其中,帧间传播损失用于表征对应图像帧中的像素信息在经过帧间预测之后,能够传递到后续待编码的图像帧中的数量的大小。
其中,若图像帧的帧间传播损失越小,则该图像帧在经过帧间预测之后能够传递到后续待编码的图像帧中的数量越大;若图像帧的帧间传播损失越大,则该图像帧在经过帧间预测之后能够传递到后续待编码的图像帧中的数量越小。
步骤S24:对各解码帧相对于当前编码帧的帧间预测损失赋予第一权重因子,得到对应的第一损失分数;以及,对各解码帧相对于当前编码帧的帧间传播损失赋予第二权重因子,得到对应的第二损失分数。
其中,第一权重因子为正数,第二权重因子为负数。
其中,第一损失分数基于“a×InterCost_Pi”表征,其中,“a”为第一权重因子,“InterCost_Pi”为当前编码帧相对于各解码帧的帧间预测损失。
其中,第二损失分数基于“b×PropagateInCost_Ri”表征,其中,“b”为第二权重因子,“PropagateInCost_Ri”为各解码帧的帧间传播损失。
步骤S25:计算各解码帧对应的第一损失分数和第二损失分数之间的和值,得到各解码帧对应的总编码代价。
其中,各解码帧的总编码代价基于“TotalCost_Ri=a×InterCost_Pi+b×PropagateInCost_Ri”表征。
其中,若对应解码帧的总编码代价越小,则该解码帧的传播损失越小,其对当前编码帧和后续编码帧影响程度越大(即解码帧传输给当前编码帧的信息越多、解码帧传输给当前编码帧的信息损失越小),当前编码帧和后续编码帧对解码帧的参考程度越大。从而,当前编码帧和后续编码帧在参考该解码帧进行图像编码时的QP越小,编码质量越高。
其中,若对应解码帧的总编码代价越大,则该解码帧的传播损失越大,其对当前编码帧和后续编码帧影响程度越小(即解码帧传输给当前编码帧的信息越少、解码帧传输给当前编码帧的信息损失越多),当前编码帧和后续编码帧对解码帧的参考程度越小。从而,当前编码帧和后续编码帧在参考该解码帧进行图像编码时的QP越大,编码质量越高。
步骤S26:将各解码帧的总编码代价从小到大进行排序,并将排在最后的一个总编码代价所对应的解码帧从DPB中移除。
步骤S27:在当前编码帧完成编码-解码-重建之后,将对应得到的当前解码帧移入DPB中,以对相应的下一解码帧重新执行上述的步骤,直至所有的编码帧完成编码-解码-重建为止。
上述方案,利用图像缓存区中存储的各第一类图像的编码代价来对图像缓存区中的部分第一类图像进行移除,区别于现有技术中基于各参考帧的存储时长来更新图像缓存区,提升了图像缓存区中留存的图像对后续编码图像的参考作用,以及优化了图像缓存区的更新流程;进一步地,利用当前待编码的第二类图像参考更新的图像缓存区中的第一类图像以进行图像编码,从而使得后续编码图像的图像编码效率更高,以及得到的图像帧的编码质量更好。
应该理解的是,虽然图2-图8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图8中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。
图9是本申请实施例提供的一种图像缓存区的更新装置框图。参照图9,该图像缓存区的更新装置10包括:图像获取单元11、代价确定单元12和图像更新单元13。
其中,该图像获取单元11,被配置为执行获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;所述第一类图像为已编码的图像帧。
其中,该代价确定单元12,被配置为执行确定各所述第一类图像相对于所述第二类图像的编码代价;所述编码代价用于表征所述第二类图像在参考所述第一类图像中的像素信息进行图像编码时的参考程度,且所述参考程度的大小与所述编码代价的大小负相关。
其中,该图像更新单元13,被配置为执行在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像。
在一些实施例中,在所述确定各所述第一类图像相对于所述第二类图像的编码代价的方面,该代价确定单元12具体用于:
确定各所述第一类图像相对于所述第二类图像的帧间预测损失;所述帧间预测损失表征在以所述第一类图像作为所述第二类图像的参考帧,对所述第二类图像进行帧间预测时,预测的信息损失;
确定各所述第一类图像对应的帧间传播损失;所述帧间传播损失表征在以所述第一类图像作为所述第二类图像的参考图像,并对所述第二类图像进行图像编码时,所述第一类图像的像素信息在传递至所述第二类图像的过程中所产生的信息损失;
基于各所述第一类图像对应的帧间传播损失与各所述第一类图像相对于所述第二类图像的帧间预测损失的加权和,确定各所述第一类图像相对于所述第二类图像的编码代价。
在一些实施例中,在所述确定各所述第一类图像对应的帧间传播损失的方面,该代价确定单元12具体用于:
确定各所述第一类图像相对于所述第二类图像的互信息量;所述互信息量用于表征在以所述第一类图像作为所述第二类图像的参考帧,并对所述第二类图像进行所述图像编码时,利用到的所述第一类图像的信息量;
确定各所述第一类图像相对于所述第二类图像的互信息量比率;所述互信息量比率用于表征所述互信息量与所述第二类图像的帧内预测损失的比率;
针对各所述第一类图像,确定所述互信息量比率与所述第二类图像的帧间传播损失的乘积值;所述第二类图像的帧间传播损失表征在以所述第二类图像作为后一待编码图像的参考图像,并对所述后一待编码图像进行图像编码时,所述第二类图像的像素信息在传递至所述后一待编码图像的过程中所产生的信息损失;
针对各所述第一类图像,基于对应的所述乘积值与所述互信息量之间的和值,确定各所述第一类图像相对于所述第二类图像的帧间传播损失。
在一些实施例中,在所述确定各所述第一类图像相对于所述第二类图像的互信息量的方面,该代价确定单元12具体用于:
基于所述第二类图像的帧内预测损失与所述第二类图像对应的帧间预测损失之间的差值,确定各所述第一类图像相对于所述第二类图像的互信息量。
在一些实施例中,在基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像的方面,该图像更新单元13具体还用于:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,按照各所述第一类图像的编码代价由大到小的顺序,对各所述第一类图像进行前后排序,并确定排序在前预设数量个的第一类图像作为待移除的第一类图像;或者
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,在各所述第一类图像中,确定对应的所述编码代价大于预设阈值的对应数量个第一类图像作为待移除的第一类图像;
将所述待移除的第一类图像从所述图像缓存区中移除。
在一些实施例中,在所述确定各所述第一类图像相对于所述第二类图像的编码代价之后,该图像更新单元13具体还用于:
基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最小的第一类图像;
将所述编码代价最小的第一类图像作为所述第二类图像的参考图像,并基于所述参考图像中的像素信息对所述第二类图像进行图像编码,得到对应新的第一类图像;
将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
在一些实施例中,在基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像的方面,该图像更新单元13具体还用于:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最大的至少两个第一类图像;
将所述至少两个第一类图像融合为一个新的第一类图像;
将所述至少两个第一类图像从所述图像缓存区中移除,并将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是本申请实施例提供的一种服务器20的框图。例如,服务器20可以为一种电子设备、电子组件或者服务器阵列等等。参照图10,服务器20包括处理器21,其进一步处理器21可以为处理器集合,其可以包括一个或多个处理器,以及服务器20包括由存储器22所代表的存储器资源,其中,存储器22上存储有计算机程序,例如应用程序。在存储器22中存储的计算机程序可以包括一个或一个以上的每一个对应于一组可执行指令的模块。此外,处理器21被配置为执行计算机程序时实现如上述的图像缓存区的更新方法。
在一些实施例中,服务器20为电子设备,该电子设备中的计算系统可以运行一个或多个操作系统,包括以上讨论的任何操作系统以及任何商用的服务器操作系统。该服务器20还可以运行各种附加服务器应用和/或中间层应用中的任何一种,包括HTTP(超文本传输协议)服务器、FTP(文件传输协议)服务器、CGI(通用网关界面)服务器、超级服务器、数据库服务器等。示例性数据库服务器包括但不限于可从(国际商业机器)等商购获得的数据库服务器。
在一些实施例中,处理器21通常控制服务器20的整体操作,诸如与显示、数据处理、数据通信和记录操作相关联的操作。处理器21可以包括一个或多个处理器来执行计算机程序,以完成上述的方法的全部或部分步骤。此外,处理器21可以包括一个或多个模块,便于处理器21和其他组件之间的交互。例如,处理器21可以包括多媒体模块,以方便利用多媒体组件控制用户电子设备和处理器21之间的交互。
在一些实施例中,处理器21中的处理器组件还可以称为CPU(Central ProcessingUnit,中央处理单元)。处理器组件可能是一种电子芯片,具有信号的处理能力。处理器组件还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器组件也可以是任何常规的处理器等。另外,处理器组件可以由集成电路芯片共同实现。
在一些实施例中,存储器22被配置为存储各种类型的数据以支持在服务器20的操作。这些数据的示例包括用于在服务器20上操作的任何应用程序或方法的指令、采集数据、消息、图片、视频等。存储器22可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘、光盘或石墨烯存储器。
在一些实施例中,存储器22可以为内存条、TF卡等,可以存储服务器20中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器22中。在一些实施例中,它根据处理器21指定的位置存入和取出信息。在一些实施例中,有了存储器22,服务器20才有记忆功能,才能保证正常工作。在一些实施例中,服务器20的存储器22按用途可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
在一些实施例中,服务器20还可以包括:电源组件23被配置为执行服务器20的电源管理,有线或无线网络接口24被配置为将服务器20连接到网络,和输入输出(I/O)接口25。服务器20可以操作基于存储在存储器22的操作系统,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD或类似。
在一些实施例中,电源组件23为服务器20的各种组件提供电力。电源组件23可以包括电源管理系统,一个或多个电源,及其他与为服务器20生成、管理和分配电力相关联的组件。
在一些实施例中,有线或无线网络接口24被配置为便于服务器20和其他设备之间有线或无线方式的通信。服务器20可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。
在一些实施例中,有线或无线网络接口24经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,有线或无线网络接口24还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在一些实施例中,输入输出(I/O)接口25为处理器21和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
图11是本申请实施例提供的一种计算机可读存储介质30的框图。该计算机可读存储介质30上存储有计算机程序31,其中,当计算机程序31被服务器20的处理器21执行时,使得服务器20能够执行如上述的图像缓存区的更新方法。
在本申请各个实施例中的各功能单元集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在计算机可读存储介质30中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机可读存储介质30在一个计算机程序31中,包括若干指令用以使得一台计算机设备(可以是个人计算机,系统服务器,或者网络设备等)、电子设备(例如MP3、MP4等,也可以是手机、平板电脑、可穿戴设备等智能终端,也可以是台式电脑等)或者处理器(processor)以执行本申请各个实施方式方法的全部或部分步骤。
图12是本申请实施例提供的一种计算机程序产品40的框图。该计算机程序产品40中存储有程序指令41,当程序指令41被服务器20的处理器21执行时,使得服务器20能够执行如上述的图像缓存区的更新方法。
本领域内的技术人员应明白,本申请的实施例可提供有图像缓存区的更新、图像缓存区的更新装置10、服务器20、计算机可读存储介质30或计算机程序产品40。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机程序指令41(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品40的形式。
本申请是参照根据本申请实施例中的图像缓存区的更新、图像缓存区的更新装置10、服务器20、计算机可读存储介质30或计算机程序产品40的流程图和/或方框图来描述的。应理解可由计算机程序产品40实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序产品40到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的程序指令41产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序产品40也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机程序产品40中的程序指令41产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些程序指令41也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的程序指令41提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的,上述的各种方法、装置、电子设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (10)

1.一种图像缓存区的更新方法,其特征在于,包括:
获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;所述第一类图像为已编码的图像帧;
确定各所述第一类图像相对于所述第二类图像的编码代价;所述编码代价用于表征所述第二类图像在参考所述第一类图像中的像素信息进行图像编码时的参考程度,且所述参考程度的大小与所述编码代价的大小负相关;
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像。
2.根据权利要求1所述的方法,其特征在于,所述确定各所述第一类图像相对于所述第二类图像的编码代价,包括:
确定各所述第一类图像相对于所述第二类图像的帧间预测损失;所述帧间预测损失表征在以所述第一类图像作为所述第二类图像的参考图像,对所述第二类图像进行帧间预测时,预测的信息损失;
确定各所述第一类图像对应的帧间传播损失;所述帧间传播损失表征在以所述第一类图像作为所述第二类图像的参考图像,并对所述第二类图像进行图像编码时,所述第一类图像的像素信息在传递至所述第二类图像的过程中所产生的信息损失;
基于各所述第一类图像对应的帧间传播损失与各所述第一类图像相对于所述第二类图像的帧间预测损失的加权和,确定各所述第一类图像相对于所述第二类图像的编码代价。
3.根据权利要求2所述的方法,其特征在于,所述确定各所述第一类图像对应的帧间传播损失,包括:
确定各所述第一类图像相对于所述第二类图像的互信息量;所述互信息量用于表征在以所述第一类图像作为所述第二类图像的参考图像,并对所述第二类图像进行所述图像编码时,利用到的所述第一类图像的信息量;
确定各所述第一类图像相对于所述第二类图像的互信息量比率;所述互信息量比率用于表征所述互信息量与所述第二类图像的帧内预测损失的比率;
针对各所述第一类图像,确定所述互信息量比率与所述第二类图像的帧间传播损失的乘积值;所述第二类图像的帧间传播损失表征在以所述第二类图像作为后一待编码图像的参考图像,并对所述后一待编码图像进行图像编码时,所述第二类图像的像素信息在传递至所述后一待编码图像的过程中所产生的信息损失;
针对各所述第一类图像,基于对应的所述乘积值与所述互信息量之间的和值,确定各所述第一类图像相对于所述第二类图像的帧间传播损失。
4.根据权利要求3所述的方法,其特征在于,所述确定各所述第一类图像相对于所述第二类图像的互信息量,包括:
基于所述第二类图像的帧内预测损失与所述第二类图像对应的帧间预测损失之间的差值,确定各所述第一类图像相对于所述第二类图像的互信息量。
5.根据权利要求1所述的方法,其特征在于,所述基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像,包括:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,按照各所述第一类图像的编码代价由大到小的顺序,对各所述第一类图像进行前后排序,并确定排序在前预设数量个的第一类图像作为待移除的第一类图像;或者
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,在各所述第一类图像中,确定对应的所述编码代价大于预设阈值的对应数量个第一类图像作为待移除的第一类图像;
将所述待移除的第一类图像从所述图像缓存区中移除。
6.根据权利要求1所述的方法,其特征在于,在所述确定各所述第一类图像相对于所述第二类图像的编码代价之后,还包括:
基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最小的第一类图像;
将所述编码代价最小的第一类图像作为所述第二类图像的参考图像,并基于所述参考图像中的像素信息对所述第二类图像进行图像编码,得到对应新的第一类图像;
在从所述图像缓存区中移除至少一个所述第一类图像之后,还包括:
将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
7.根据权利要求1所述的方法,其特征在于,所述基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像,还包括:
在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,确定对应所述编码代价最大的至少两个第一类图像;
将所述至少两个第一类图像融合为一个新的第一类图像;
将所述至少两个第一类图像从所述图像缓存区中移除,并将所述新的第一类图像移入所述图像缓存区中,以更新所述图像缓存区。
8.一种图像缓存区的更新装置,其特征在于,包括:
图像获取单元,被配置为执行获取图像缓存区中存储的多个第一类图像,以及当前待编码的第二类图像;所述第一类图像为已编码的图像帧;
代价确定单元,被配置为执行确定各所述第一类图像相对于所述第二类图像的编码代价;所述编码代价用于表征所述第二类图像在参考所述第一类图像中的像素信息进行图像编码时的参考程度,且所述参考程度的大小与所述编码代价的大小负相关;
图像更新单元,被配置为执行在所述图像缓存区中存储的第一类图像的数量达到设定数量的情况下,基于各所述第一类图像的编码代价的大小,从所述图像缓存区中移除至少一个所述第一类图像。
9.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如权利要求1至7中任一项所述的图像缓存区的更新方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被服务器的处理器执行时,使得所述服务器能够执行如权利要求1至7中任一项所述的图像缓存区的更新方法。
CN202310376288.1A 2023-04-10 2023-04-10 图像缓存区的更新方法、装置、服务器及存储介质 Pending CN116437088A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310376288.1A CN116437088A (zh) 2023-04-10 2023-04-10 图像缓存区的更新方法、装置、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310376288.1A CN116437088A (zh) 2023-04-10 2023-04-10 图像缓存区的更新方法、装置、服务器及存储介质

Publications (1)

Publication Number Publication Date
CN116437088A true CN116437088A (zh) 2023-07-14

Family

ID=87084901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310376288.1A Pending CN116437088A (zh) 2023-04-10 2023-04-10 图像缓存区的更新方法、装置、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN116437088A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117474807A (zh) * 2023-12-27 2024-01-30 科大讯飞股份有限公司 一种图像修复方法、装置、设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117474807A (zh) * 2023-12-27 2024-01-30 科大讯飞股份有限公司 一种图像修复方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US8724704B2 (en) Apparatus and method for motion estimation and image processing apparatus
US9420282B2 (en) Video coding redundancy reduction
US10652532B2 (en) Method and apparatus for reference frame management for video communication
WO2021114846A1 (zh) 一种视频降噪处理方法、装置及存储介质
CN111277826B (zh) 一种视频数据处理方法、装置及存储介质
US20150326857A1 (en) Video coding quantization parameter determination suitable for video conferencing
JP2016508327A (ja) 高効率な次世代ビデオコーディングのためのフレーム階層応答型量子化を使用する、コンテンツ適応ビットレートおよび品質管理
CN112383777B (zh) 视频编码方法、装置、电子设备及存储介质
CN116437088A (zh) 图像缓存区的更新方法、装置、服务器及存储介质
US11109060B2 (en) Image prediction method and apparatus
CN113225585A (zh) 一种视频清晰度的切换方法、装置、电子设备以及存储介质
CN110545433B (zh) 视频编解码方法和装置及存储介质
US10992946B2 (en) Coding of video and audio with initialization fragments
US10536726B2 (en) Pixel patch collection for prediction in video coding system
CN110557642A (zh) 一种视频帧编码运动搜索方法及图像编码器
EP3264284B1 (en) Data processing method and device
CN102948147A (zh) 基于变换系数直方图的视频速率控制
CN110582022A (zh) 视频编解码方法和装置及存储介质
CN117014659B (zh) 一种视频转码方法、装置、电子设备和存储介质
CN110784719B (zh) 在视频注释的存在下视频数据的高效编码
WO2024082971A1 (zh) 一种视频处理方法及相关装置
CN117478881A (zh) 视频信息处理方法、系统、设备和存储介质
WO2023059689A1 (en) Systems and methods for predictive coding
CN115514960A (zh) 视频编码方法、装置、电子设备与存储介质
WO2013165624A1 (en) Mechanism for facilitating cost-efficient and low-latency encoding of video streams

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination