CN117692650A - 图像编码/解码方法、电子设备和计算机可读存储介质 - Google Patents
图像编码/解码方法、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN117692650A CN117692650A CN202311616234.4A CN202311616234A CN117692650A CN 117692650 A CN117692650 A CN 117692650A CN 202311616234 A CN202311616234 A CN 202311616234A CN 117692650 A CN117692650 A CN 117692650A
- Authority
- CN
- China
- Prior art keywords
- image
- current
- type
- current image
- previous frame
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 230000008447 perception Effects 0.000 abstract description 7
- 230000000903 blocking effect Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000013139 quantization Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开提供一种图像编码/解码方法、电子设备和计算机可读存储介质,编码设备中存在两种编码器,依据不同的图像类型使用不同的编码器。编码设备在对图像序列进行编码的过程中,如果当前待编码图像的图像类型相比于前一帧图像发生了变化,则将当前编码器切换为当前待编码图像的图像类型对应的目标编码器,使用前一帧图像生成的目标参考帧替换目标编码器中的参考帧,对待编码图像使用目标编码器进行编码,得到编码后的图像。使得在图像类型发生变化时,使用与当前待编码图像具有时间连续性的前一帧图像生成的参考帧进行编码,避免码流过大,解码设备解码过程流畅,解决了图像类型切换带来的卡顿现象,提高切换流畅度,降低用户感知,提高用户体验。
Description
技术领域
本公开涉及图像处理技术领域,尤其涉及图像编码/解码方法、电子设备和计算机可读存储介质。
背景技术
在远程办公或者视频会议等场景中,通常需要传输图像,在图像传输过程中,服务器将待传输图像进行编码然后发送给客户机,客户机解码后显示出来。
通常传输的图像中有时包含自然内容图像,有时包含屏幕内容图像,自然视频编码器和专门的屏幕内容编码器结合使用,当服务器端的画面内容是自然视频的时候,调用自然视频编码器编码,当画面变为合成画面,例如幻灯片、文字编辑器、计算机桌面等图像时,调用专门的屏幕内容编码器编码,两种编码器根据具体场景来回切换。
然而,在两种编码器进行切换的过程中瞬时码流较大,常常带来卡顿现象,在网络质量不佳的环境中尤为明显。
发明内容
本公开实施例提供一种图像编码/解码方法、电子设备和计算机可读存储介质,能够解决在两种编码器进行切换的过程中瞬时码流较大,出现卡顿现象的问题。所述技术方案如下:
根据本公开实施例的第一方面,提供一种图像编码方法,包括:
从图像序列中获取当前待编码图像;
如果当前待编码图像的图像类型与所述当前待编码图像的前一帧图像的图像类型不同,则将当前编码器切换为所述当前待编码图像的图像类型对应的目标编码器,所述图像类型包括屏幕内容类型和自然内容类型;
获取所述当前待编码图像的前一帧图像生成的目标参考帧;
使用所述目标参考帧替换所述目标编码器中的参考帧;
对所述当前待编码图像使用所述目标编码器进行编码,得到编码后的图像。
在一个实施例中,所述从图像序列中获取当前待编码图像之前,还包括:
如果所述当前待编码图像的前一帧图像的图像类型是自然内容类型,则对所述当前待编码图像的前一帧图像进行编码操作后,再进行解码操作,得到所述当前待编码图像的前一帧图像生成的目标参考帧;
如果所述当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则将所述当前待编码图像的前一帧图像作为所述当前待编码图像的前一帧图像生成的目标参考帧。
在一个实施例中,所述从图像序列中获取当前待编码图像之后,还包括:
确定所述当前待编码图像的图像类型;
获取所述当前待编码图像的前一帧图像的图像类型。
在一个实施例中,所述对所述当前待编码图像使用所述目标编码器进行编码,得到编码后的图像之后,还包括:
向解码设备发送所述编码后的图像对应的码流,所述编码后的图像对应的码流中包含所述编码后的图像的图像类型的标识信息。
根据本公开实施例的第二方面,提供一种图像解码方法,包括:
从码流中获取当前待解码图像;
如果当前待解码图像的图像类型与所述当前待解码图像的前一帧图像的图像类型不同,则将当前解码器切换为所述当前待编码图像的图像类型对应的目标解码器,所述图像类型包括屏幕内容类型和自然内容类型;
获取所述当前待解码图像的前一帧图像生成的目标参考帧;
使用所述目标参考帧替换所述目标解码器中的参考帧;
对所述当前待解码图像使用所述目标解码器进行解码,得到解码后的图像。
在一个实施例中,如果所述当前待编码图像的前一帧图像的图像类型是自然内容类型,则所述当前待解码图像的前一帧图像生成的目标参考帧是编码设备对所述当前待解码图像的前一帧图像进行编码操作后,再进行解码操作得到的;
如果所述当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则所述当前待解码图像的前一帧图像生成的目标参考帧是当前待解码图像的前一帧图像。
在一个实施例中,所述从码流中获取当前待解码图像之后,还包括:
从所述码流中,获取所述当前待解码图像的图像类型;
并获取所述当前待解码图像的前一帧图像的图像类型。
在一个实施例中,所述从码流中获取当前待解码图像之前,还包括:
接收编码设备发送的码流;
所述从所述码流中,获取所述当前待解码图像的图像类型,包括:
从所述当前待解码图像对应的码流中,得到所述当前待解码图像的图像类型。
根据本公开实施例的第三方面,提供一种电子设备,包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现第一方面以及第一方面的任一实施例所描述的图像编码方法中所执行的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现第二方面以及第二方面的任一实施例所描述的图像解码方法中所执行的步骤。
根据本公开实施例的第五方面,提供一种计算机可读存储介质,存储介质中存储有至少一条计算机指令,指令由处理器加载并执行以实现第一方面以及第一方面的任一实施例所描述的图像编码方法中所执行的步骤。
根据本公开实施例的第六方面,提供一种计算机可读存储介质,存储介质中存储有至少一条计算机指令,指令由处理器加载并执行以实现第二方面以及第二方面的任一实施例所描述的图像解码方法中所执行的步骤。
本公开实施例提供的图像编码/解码方法、电子设备和计算机可读存储介质,编码设备中存在两种编码器,依据不同的图像类型使用不同的编码器,编码设备在对图像序列进行编码的过程中,如果当前待编码图像的图像类型相比于前一帧图像发生了变化,则将当前编码器切换为当前待编码图像的图像类型对应的目标编码器,使用前一帧图像生成的目标参考帧替换目标编码器中的参考帧,对待编码图像使用目标编码器进行编码,得到编码后的图像,使得在图像类型发生变化时,也能使用与当前待编码图像具有时间连续性的前一帧图像生成的参考帧进行编码,避免了码流过大,解码设备解码过程流畅,解决了图像类型切换过程中带来的卡顿现象,提高了切换流畅度,降低用户感知,提高用户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本公开实施例提供的一种图像编码方法的流程示意图;
图2为本公开实施例提供的一种图像解码方法的流程示意图;
图3为本公开实施例提供的一种图像编解码***中的编码设备的结构示意图;
图4为本公开实施例提供的一种图像编解码***中的解码设备的结构示意图;
图5为本公开实施例提供的一种一帧码流的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开提供的的图像编码/解码方法可以应用在图像编解码***。图像编解码***包括编码设备和解码设备。其中,编码设备与解码设备通过网络连接。编码设备可以是计算机、服务器等。解码设备也可以是计算机、服务器等。本公开中也可以把编码设备叫做编码器,把解码设备叫做解码器。
在远程办公或者视频会议等场景中,编码设备和解码设备分别位于网络的两端,在图像传输过程中,编码设备可以采集屏幕图像为图像序列,编码压缩后通过网络发送给解码设备,解码设备解码后,用户就可以在解码设备的屏幕上看到发送过来的图像。
编码设备对图像序列进行编码的过程中,将自然视频编码器和专门的屏幕内容编码器结合使用,当服务器端的画面内容是自然视频的时候,调用自然视频编码器编码,当画面变为合成画面,例如幻灯片、文字编辑器、计算机桌面等图像时,调用专门的屏幕内容编码器编码,两种编码器根据具体场景来回切换。然而,在两种编码器进行切换的过程中,新切换入的编码器由于之前不是它在编码,它新接收图像时,该图像距离它上次编码时往往相差已经很大,不具有时间上的连续性,因此参考帧的参考意义不是很大。将会导致瞬时码流较大,带来卡顿现象,在网络质量不佳的环境中尤为明显。
本公开实施例提供的图像编码/解码方法、电子设备和计算机可读存储介质,编码设备中存在两种编码器,依据不同的图像类型使用不同的编码器,编码设备在对图像序列进行编码的过程中,如果当前待编码图像的图像类型相比于前一帧图像发生了变化,则将当前编码器切换为当前待编码图像的图像类型对应的目标编码器,使用前一帧图像生成的目标参考帧替换目标编码器中的参考帧,对待编码图像使用目标编码器进行编码,得到编码后的图像,使得在图像类型发生变化时,也能使用与当前待编码图像具有时间连续性的前一帧图像生成的参考帧进行编码,避免了码流过大,解码设备解码过程流畅,解决了图像类型切换过程中带来的卡顿现象,提高了切换流畅度,降低用户感知,提高用户体验。
下面以具体的实施例进行详细说明本公开提供的技术方案。
请参见图1,图1为本公开实施例提供的一种图像编码方法的流程示意图,本实施例提供的图像编码方法方法由计算机或者服务器执行,其可以是上述图像编解码***中的编码设备。本实施例提供的方法可以包括以下步骤。
步骤101、从图像序列中获取当前待编码图像。
编码设备通常对一个图像序列进行编码,图像序列中的图像具有先后顺序,一般图像序列中的图像的顺序是按照其产生的时间的先后顺序排列的,从而编码设备对图像序列中的图像按照顺序进行编码,得到编码后的码流。
当前需要对图像序列进行编码的图像可以称为当前待编码图像。
步骤102、如果当前待编码图像的图像类型与当前待编码图像的前一帧图像的图像类型不同,则将当前编码器切换为当前待编码图像的图像类型对应的目标编码器。
其中,图像类型包括屏幕内容类型和自然内容类型。
其中,编码设备中存在两种编码器。这两种编码器可以分别称为屏幕内容编码器和自然内容编码器。在编码设备编码过程中,可以依据不同的图像类型使用不同的编码器,对于屏幕内容类型的图像,可以使用屏幕内容编码器;对于自然内容类型的图像,可以使用自然内容编码器。
步骤103、获取当前待编码图像的前一帧图像生成的目标参考帧。
其中,当前待编码图像的前一帧图像生成的目标参考帧是指,根据当前待解码图像的前一帧图像生成的,且用于作为当前待编码图像的参考帧的图像。下面将当前待编码图像的前一帧图像可以简称为前一帧图像。
步骤104、使用目标参考帧替换目标编码器中的参考帧。
步骤105、对当前待编码图像使用目标编码器进行编码,得到编码后的图像。
本实施例,编码设备中存在两种编码器,依据不同的图像类型使用不同的编码器,编码设备在对图像序列进行编码的过程中,如果当前待编码图像的图像类型相比于前一帧图像的图像类型发生了变化,则将当前编码器切换为当前待编码图像的图像类型对应的目标编码器。一种情况下,当前待编码图像的图像类型是屏幕内容类型,而前一帧图像的图像类型是自然内容类型,则将当前编码器由自然内容编码器切换到屏幕内容编码器;另一种情况下,当前待编码图像的图像类型是自然内容类型,而前一帧图像的图像类型是屏幕内容类型,则将当前编码器由屏幕内容编码器切换到自然内容编码器。
使用前一帧图像生成的目标参考帧替换目标编码器中的参考帧,对待编码图像使用目标编码器进行编码,得到编码后的图像。使得在图像类型发生变化时,也能使用与当前待编码图像具有时间连续性的前一帧图像生成的参考帧进行编码,避免了码流过大,解码设备解码过程流畅,解决了图像类型切换过程中带来的卡顿现象,提高了切换流畅度,降低用户感知,提高用户体验。
在一个实施例中,在对图像序列进行编码的过程中,在对当前待编码图像进行编码前已经对当前待编码图像的前一帧图像编码完成。前一帧图像的目标参考帧是在对前一帧图像进行编码的过程中得到的。
一种可能的实现方式中,如果当前待编码图像的前一帧图像的图像类型是自然内容类型,则对当前待编码图像的前一帧图像进行编码操作后,再进行解码操作,得到当前待编码图像的前一帧图像生成的目标参考帧。
即对当前待编码图像的前一帧图像进行编码操作后,再进行解码操作,从而得到该前一帧图像的重建帧,将该重建帧作为当前待编码图像的前一帧图像生成的目标参考帧。
另一种可能的实现方式中,如果当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则将当前待编码图像的前一帧图像作为当前待编码图像的前一帧图像生成的目标参考帧。
如果当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则直接将该前一帧图像作为前一帧图像生成的目标参考帧。
进一步地,编码设备中可以缓存参考帧,这样在编码图像时,直接获取缓存的参考帧进行编码。而得到了前一帧图像的目标参考帧可以用于更新缓存的参考帧。
在一个实施例中,在步骤101之后还可以包括如步骤1011和步骤1012。
步骤1011、确定当前待编码图像的图像类型。
步骤1012、获取当前待编码图像的前一帧图像的图像类型。
本实施例,在从图像序列获取到当前待编码图像后,首先确定当前待编码图像的图像类型,然后根据确定的图像类型进行相应的编码操作。因此在对当前待编码图像进行编码前,先确定其图像类型。对于前一帧图像的图像类型,在对前一帧图像进行编码操作前已经确定了,可以将该前一帧图像的图像类型缓存起来,以供后续编码时直接获取。
在一个实施例中,在步骤105之后还可以包括如下步骤106。
步骤106、向解码设备发送编码后的图像对应的码流。
其中,编码后的图像对应的码流中包含编码后的图像的图像类型的标识信息。该编码后的图像由于就是对待编码图像进行编码得到的,因此该编码后的图像的图像类型是待编码图像的图像类型。
本实施例,按照图像序列中的图像顺序,将对应的编码后的图像进行处理,生成码流。编码后的图像对应的码流是指编码后的图像对应生成的码流部分。通常编码后的图像对应的码流是在编码后的图像的内容作为帧数据,前增加帧头形成的。可以将该编码后的图像的图像类型对应的信息写入帧头。
示例性的,可以以0表示这帧码流是屏幕内容类型,以1表示这帧码流是自然内容类型。
在上述实施例的基础上,本公开提供一种图像解码方法,该图像解码方法可以与上述任一实施例中的图像编码方法结合实现。在步骤105之后编码设备生成码流发送给解码设备,解码设备对接收到的码流进行解码。下面以具体的实施例进行说明。
请参见图2,图2为本公开实施例提供的一种图像解码方法的流程示意图。本实施例提供的图像解码方法方法由计算机或者服务器执行,其可以是上述图像编解码***中的解码设备。本实施例提供的方法可以包括以下步骤。
步骤201、从码流中获取当前待解码图像。
其中,当前待解码图像对应上述实施例中的编码后的图像。
步骤202、如果当前待解码图像的图像类型与当前待解码图像的前一帧图像的图像类型不同,则将当前解码器切换为当前待编码图像的图像类型对应的目标解码器。
其中,图像类型包括屏幕内容类型和自然内容类型。
其中,与编码设备相对应,解码设备中存在两种解码器。这两种解码器可以分别称为屏幕内容解码器和自然内容解码器。在解码设备解码的过程中,可以依据不同的图像类型使用不同的解码器,对于屏幕内容类型的图像,可以使用屏幕内容解码器;对于自然内容类型的图像,可以使用自然内容解码器。
步骤203、获取当前待解码图像的前一帧图像生成的目标参考帧。
其中,当前待解码图像的前一帧图像生成的目标参考帧是指,编码设备根据当前待解码图像的前一帧图像生成的,且编码设备在对当前待解码图像进行编码时,用于作为当前待解码图像的参考帧的图像。
步骤204、使用目标参考帧替换目标解码器中的参考帧。
步骤205、对当前待解码图像使用目标解码器进行解码,得到解码后的图像。
本实施例,与编码设备相对应,解码设备中包含两种解码器,解码设备对码流进行解码的过程中,依据不同的图像类型使用不同的解码器,如果当前待解码图像的图像类型相比于前一帧图像发生了变化,则将当前解码器切换为当前待编码图像的图像类型对应的目标解码器。一种情况下,当前待解码图像的图像类型是屏幕内容类型,而前一帧图像的图像类型是自然内容类型,则将当前解码器由自然内容解码器切换到屏幕内容解码器;另一种情况下,当前待解码图像的图像类型是自然内容类型,而前一帧图像的图像类型是屏幕内容类型,则将当前解码器由屏幕内容解码器切换到自然内容解码器。
使用前一帧图像生成的目标参考帧替换目标解码器中的参考帧,对待编码图像进行解码,得到解码后的图像。使得在图像类型发生变化时,编码设备也能使用与当前待编码图像具有时间连续性的前一帧图像生成的参考帧进行编码,避免了码流过大,解码设备解码过程流畅,解决了图像类型切换过程中带来的卡顿现象,提高了切换流畅度,降低用户感知,提高用户体验。
在一个实施例中,如果当前待编码图像的前一帧图像的图像类型是自然内容类型,则当前待解码图像的前一帧图像生成的目标参考帧是编码设备对当前待解码图像的前一帧图像进行编码操作后,再进行解码操作得到的;
如果当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则当前待解码图像的前一帧图像生成的目标参考帧是当前待解码图像的前一帧图像。
在一个实施例中,步骤201之后还包括步骤2011和步骤2012。
步骤2011、从码流中,获取当前待解码图像的图像类型。
步骤2012、获取当前待解码图像的前一帧图像的图像类型。
在一个实施例中,步骤201之前还包括步骤200。
步骤200、接收编码设备发送的码流。
相应的步骤2011可以通过如下步骤20111实现。
步骤20111、从当前待解码图像对应的码流中,得到当前待解码图像的图像类型。
上述实施例中的图像解码方法与上述实施例中的图像编码方法为互逆的过程,其实现原理类似,此处不再赘述。
下面示例性的介绍一种本公开提供的图像编解码***,并结合图像编解码***示例性的介绍本公开提供的图像编码方法和图像解码方法。
请参见图3和图4,图3为本公开实施例提供的一种图像编解码***中的编码设备的结构示意图。图4为本公开实施例提供的一种图像编解码***中的解码设备的结构示意图。本示例中,将编码设备称为编码端,将解码设称为解码端。
图像编码***包括编码端和解码端。
下面对编码端组件进行介绍。
屏幕采集模块301用于采集服务器端屏幕的内容,形成待编码的原始帧数据。
图像识别分类模块302用于分析原始帧数据的像素,识别图像是自然图像还是计算机合成的屏幕图像;后续根据不同的图像类型,将数据送给不同的子编码器编码;子编码器有两种,分别是自然图像编码器303,和屏幕内容编码器307。
自然图像编码器303属于编码端的一个子编码器,它的原始帧数据是自然图像。自然图像是区别于屏幕图像的图像,自然图像可以是照相机、摄像机等设备采集得到的图像,而非计算机合成的类似文字、浏览器边框等屏幕内容图像。自然图像例如风景、人物等,自然图像编码器是编码技术中研究历史时间最长,种类最多且用途最广泛的编码器,有基于各种协议的,例如H264,hevc,av1等等。它们的共同特点是采用帧内、帧间预测,使用变换、量化方法,使用熵编码编残差形成码流。
待编码帧304是屏幕采集模块301生成的。当图像识别分类模块识别到当前图像是屏幕内容的话,将待编码帧发送到待编码帧308上;反之如果是自然图像的话,将其发送到待编码帧304上。到达待编码帧304的帧,将被按照自然图像进行编码,自然图像编码器可以是基于H264,hevc,AV1等开放协议的编码器实现。这些编码器都是采用帧间、帧内预测的方法压缩冗余数据的,都用到了参考帧机制。参考帧是将待编码帧304中的待编码帧编码后、再解码产生的重建帧,缓存在参考帧305中。在编下一帧时,上一帧的重建帧将被作为参考帧在帧间预测时进行参考。
参考帧305用于存储自然图像编码器的参考帧。
具体预测、编码模块106可以实现帧内、帧间预测,并使用CABAC等熵编码器进行熵编码,生成码流。在生成码流时,每帧的码流都有一个帧头,如图5所示,在帧头中***一个字段为“类型字段”,该字段为0表示这帧码流编的是屏幕内容,字段为1表示这帧码流编的是自然视频内容;解码端需要根据该字段判定码流使用哪种对应的子解码模块解码。
屏幕内容编码器307属于编码端的一个子编码器,它的原始帧数据是计算机合成图像。屏幕内容编码器的特点是,它采用调色板量化方法和huffman熵编码算法压缩编码细节丰富的部分,采用JPEG压缩编码方法压缩背景色部分。这种方法非常适合于压缩计算机合成图像,既保留了文字细节,又能利用上合成图像大片像素相同的特色,将背景色区域压缩的很小。
待编码帧308是屏幕内容编码器中的待编码帧存储区。
文字宏块编码器309用于将待编码帧中的类似文字区域的部分从逻辑上划分出来。这种区域的特色是线条细,颜色数量少,适合于采用调色板量化方法量化,既保留了细节,又能减少大量码流;采用huffman编码进行熵编码,速度快,适合实时应用场景。
背景宏块编码器310用于将帧中有大片颜色相同的区域从逻辑上划分为背景宏块,采用JPEG编码算法编码。由于背景色几乎全部相近,在DCT变换后几乎只剩下DC分量,数据量很小,使用JPEG方法编码较为合适。
预测宏块编码器311重点采用帧内预测方法编码,例如,Intra BC(Intra BlockCopy)是一种帧内预测编码方法,通过左拷贝、上拷贝等方式来编码预测当前宏块的内容等,也可采用帧间预测编码。
参考帧312,由于屏幕内容编码器307不是通过编残差实现的,在编完一帧后,会将当前帧作为参考帧,在编下一帧时参考;它也需要使用参考帧,此参考帧来自待编码帧308的一份拷贝;需要说明,自然图像编码器303和屏幕内容编码器307这两个子编码器都会采用帧间预测的方法,但是他们的编码方式完全不同。当一段时间使用自然图像编码器303编码,又切换到屏幕内容编码器307编码时,屏幕内容编码器307的参考帧是较早前它缓存的那一帧,如果简单的直接切换到屏幕内容编码器307编码,它的参考帧就很难给当前帧的编码提供多少参考价值,因为时间过去久远,两帧之间的内容差异已经很大,这就是切换期间码流骤增的原因。同样的,如果是屏幕内容编码器307编码切换到自然图像编码器303编码的瞬间,自然图像编码器303也会出现类似的情况。
当图像识别分类模块302识别到图像类型发生了变化,即由屏幕内容切换到了自然图像内容,就将参考帧312中的帧拷贝到参考帧305中,在参考帧305编下一帧时,将采用参考帧312中提供的这一帧作为参考帧。由于两帧是时间上相邻的,因此内容差异较小,自然图像编码器在切入后,不至于发生过大的瞬时码流;类似的,当图像识别分类模块302模块指示当前图像是由自然图像切到屏幕内容,则将参考帧305中的帧拷贝到参考帧312中,然后再使用屏幕内容编码器307编码,此时由于参考帧312中的参考帧和待编码帧308待编码帧时间相邻,因此相似度较高,参考帧312中的参考帧也会提供较多的参考信息,降低了瞬时码流。采用了这种参考帧互操作的方式,可平滑两种子编码器之间切换的流畅度,降低用户感知,使得画面过度更为顺滑。
解码端的结构和编码端互为对照。下面对解码端组件进行介绍。
码流分析模块313用于根据帧头的类型字段,分析当前帧码流是屏幕内容还是自然图像内容,根据情况分别交给自然图像解码器314或者屏幕内容解码器317解码;同时,如果它发现字段发生了变化,即上一帧中该字段的值和当前帧码流的该字段的值不同,则认为发生了切换,如果是0变为1,即上一帧还是屏幕内容,当前切换为自然内容,则会将参考帧321中的参考帧拷贝到参考帧316空间中;反之如果是1变为0,则将参考帧316中的参考帧拷贝到参考帧321中,这是和编码端对应的,参考帧互操作过程。
自然图像解码器314中包含具体解码模块315和参考帧316两个模块。
屏幕内容解码器317中包含:与编码端的文字宏块编码器309模块对应文字宏块解码器318、与编码端的背景宏块编码器310对应的背景宏块解码器319、与编码端的预测宏块编码器311对应的预测宏块解码器320,以及参考帧321。
其中,参考帧321是屏幕内容解码器中的参考帧,可以和自然图像解码器314中的参考帧316互相拷贝传递。
本示例提供的方法,采用了两类子编码器模块切换的方式来编码远程屏幕的图像,提出了一种参考帧互相传递拷贝的方法,解决了切换中因码流较大带来的卡顿现象,提高了切换流畅度,降低用户感知,提高用户体验。
本公开实施例提供一种电子设备,包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现上述实施例中所描述的图像编码方法中所执行的步骤,此处不再赘述。
本公开实施例提供一种电子设备,包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现上述实施例中所描述的图像解码方法中所执行的步骤,此处不再赘述。
基于上述图1对应的实施例中所描述的图像编码方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:ReadOnly Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图1对应的实施例中所描述的图像编码方法,此处不再赘述。
基于上述图2对应的实施例中所描述的图像解码方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:ReadOnly Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图2对应的实施例中所描述的图像解码方法,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
Claims (10)
1.一种图像编码方法,其特征在于,包括:
从图像序列中获取当前待编码图像;
如果当前待编码图像的图像类型与所述当前待编码图像的前一帧图像的图像类型不同,则将当前编码器切换为所述当前待编码图像的图像类型对应的目标编码器,所述图像类型包括屏幕内容类型和自然内容类型;
获取所述当前待编码图像的前一帧图像生成的目标参考帧;
使用所述目标参考帧替换所述目标编码器中的参考帧;
对所述当前待编码图像使用所述目标编码器进行编码,得到编码后的图像。
2.根据权利要求1所述的方法,其特征在于,所述从图像序列中获取当前待编码图像之前,还包括:
如果所述当前待编码图像的前一帧图像的图像类型是自然内容类型,则对所述当前待编码图像的前一帧图像进行编码操作后,再进行解码操作,得到所述当前待编码图像的前一帧图像生成的目标参考帧;
如果所述当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则将所述当前待编码图像的前一帧图像作为所述当前待编码图像的前一帧图像生成的目标参考帧。
3.根据权利要求1所述的方法,其特征在于,所述从图像序列中获取当前待编码图像之后,还包括:
确定所述当前待编码图像的图像类型;
获取所述当前待编码图像的前一帧图像的图像类型。
4.根据权利要求3所述的方法,其特征在于,所述对所述当前待编码图像使用所述目标编码器进行编码,得到编码后的图像之后,还包括:
向解码设备发送所述编码后的图像对应的码流,所述编码后的图像对应的码流中包含所述编码后的图像的图像类型的标识信息。
5.一种图像解码方法,其特征在于,包括:
从码流中获取当前待解码图像;
如果当前待解码图像的图像类型与所述当前待解码图像的前一帧图像的图像类型不同,则将当前解码器切换为所述当前待编码图像的图像类型对应的目标解码器,所述图像类型包括屏幕内容类型和自然内容类型;
获取所述当前待解码图像的前一帧图像生成的目标参考帧;
使用所述目标参考帧替换所述目标解码器中的参考帧;
对所述当前待解码图像使用所述目标解码器进行解码,得到解码后的图像。
6.根据权利要求5所述的方法,其特征在于,如果所述当前待编码图像的前一帧图像的图像类型是自然内容类型,则所述当前待解码图像的前一帧图像生成的目标参考帧是编码设备对所述当前待解码图像的前一帧图像进行编码操作后,再进行解码操作得到的;
如果所述当前待编码图像的前一帧图像的图像类型是屏幕内容类型,则所述当前待解码图像的前一帧图像生成的目标参考帧是当前待解码图像的前一帧图像。
7.根据权利要求5所述的方法,其特征在于,所述从码流中获取当前待解码图像之后,还包括:
从所述码流中,获取所述当前待解码图像的图像类型;
并获取所述当前待解码图像的前一帧图像的图像类型。
8.根据权利要求7所述的方法,其特征在于,所述从码流中获取当前待解码图像之前,还包括:
接收编码设备发送的码流;
所述从所述码流中,获取所述当前待解码图像的图像类型,包括:
从所述当前待解码图像对应的码流中,得到所述当前待解码图像的图像类型。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现权利要求1至权利要求4任一项所述的图像编码方法中所执行的步骤,或者权利要求5至权利要求8任一项所述的图像解码方法中所执行的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现权利要求1至权利要求4任一项所述的图像编码方法中所执行的步骤,或者权利要求5至权利要求8任一项所述的图像解码方法中所执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311616234.4A CN117692650A (zh) | 2023-11-29 | 2023-11-29 | 图像编码/解码方法、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311616234.4A CN117692650A (zh) | 2023-11-29 | 2023-11-29 | 图像编码/解码方法、电子设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117692650A true CN117692650A (zh) | 2024-03-12 |
Family
ID=90131027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311616234.4A Pending CN117692650A (zh) | 2023-11-29 | 2023-11-29 | 图像编码/解码方法、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117692650A (zh) |
-
2023
- 2023-11-29 CN CN202311616234.4A patent/CN117692650A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11770553B2 (en) | Conditional signalling of reference picture list modification information | |
RU2613738C2 (ru) | Сигнализация информации состояния для буфера декодированных картинок и списков опорных картинок | |
US7263125B2 (en) | Method and device for indicating quantizer parameters in a video coding system | |
RU2659748C2 (ru) | Синтаксис и семантика для буферизации информации с целью упрощения конкатенации видеоданных | |
JP2011130410A (ja) | 符号化方法、復号化方法及び装置 | |
CN110636302B (zh) | 视频解码、编码方法和装置、存储介质及解码器、编码器 | |
CN111182310A (zh) | 视频处理方法、装置、计算机可读介质及电子设备 | |
CN110636288B (zh) | 视频解码、编码方法和装置及电子设备 | |
KR20160109617A (ko) | 디지털 비디오의 디코딩 장치 | |
JP7086208B2 (ja) | 双方向イントラ予測のシグナリング | |
CN111416975A (zh) | 预测模式确定方法和装置 | |
CN110572675B (zh) | 视频解码、编码方法和装置、存储介质与解码器、编码器 | |
CN117692650A (zh) | 图像编码/解码方法、电子设备和计算机可读存储介质 | |
CN110677647B (zh) | 视频解码、编码方法和装置、存储介质与解码器、编码器 | |
JP7492027B2 (ja) | Ptl関連情報をシグナリングする画像符号化/復号方法および装置、ならびにビットストリームを記憶したコンピュータ読み取り可能記録媒体 | |
CN110572680B (zh) | 视频解码、编码方法和装置,存储介质与解码器、编码器 | |
JP2003087797A (ja) | 画像情報変換装置及び方法、画像情報変換プログラム、並びに記録媒体 | |
KR100681920B1 (ko) | 복수의 프레임을 참조하는 공간적 스케일러블 인코딩 및디코딩 방법과 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |