CN116233447A - 图像组尺寸确定方法、电子设备及存储介质 - Google Patents

图像组尺寸确定方法、电子设备及存储介质 Download PDF

Info

Publication number
CN116233447A
CN116233447A CN202310223126.4A CN202310223126A CN116233447A CN 116233447 A CN116233447 A CN 116233447A CN 202310223126 A CN202310223126 A CN 202310223126A CN 116233447 A CN116233447 A CN 116233447A
Authority
CN
China
Prior art keywords
image
size
candidate
motion complexity
image set
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
CN202310223126.4A
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.)
Alibaba China Co Ltd
Original Assignee
Alibaba China 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 Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN202310223126.4A priority Critical patent/CN116233447A/zh
Publication of CN116233447A publication Critical patent/CN116233447A/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/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/177Methods 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 a group of pictures [GOP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例提供了一种图像组尺寸确定方法、装置、电子设备及存储介质。图像组尺寸确定方法包括:确定多个候选尺寸;计算候选尺寸对应的图像集的运动复杂度;图像集中包含连续的待编码图像帧,图像集中待编码图像帧的数量与对应的候选尺寸相等,且图像集中图像帧的总数量大于1;运动复杂度表征对应图像集内图像帧之间图像内容运动的复杂程度;基于各图像集的运动复杂度进行预设运算,并根据运算结果从多个候选尺寸中选择一个目标尺寸作为图像组的尺寸;其中,图像组由目标尺寸对应的图像集中的连续待编码图像帧组成。基于本申请实施例确定的图像组大小进行编码,可有效提升编码结果的率失真性能。

Description

图像组尺寸确定方法、电子设备及存储介质
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种图像组尺寸确定方法、电子设备及计算机存储介质。
背景技术
在视频编码技术领域,通常将待编码视频流中连续的多个图像帧组成的集合称为图像组(Group Of Pictures,GOP),图像组的尺寸即图像组中包含的图像帧的数量。常用的图像组类型有:GOP32、GOP16、GOP8、GOP4、GOP2、GOP1,等等,以GOP32为例,其表明图像组的尺寸为32,即该图像组中包含32个连续的图像帧。
编码过程通常是以单个图像组为单位进行的,因此,在视频编码之前要先确定好图像组的尺寸,当图像组尺寸确定之后,图像组内部各图像帧之间的层级结构及参考关系也相应确定。此后便可基于上述确定的层级结构和参考关系,对图像组中的各图像帧进行视频编码。
相关编码方案中,为操作简便,对于视频流中的各视频帧均保持固定的图像组尺寸,这样会导致后续编码结果的率失真性能较差。
发明内容
有鉴于此,本申请实施例提供一种图像组尺寸确定方案,以至少部分解决上述问题。
根据本申请实施例的第一方面,提供了一种图像组尺寸确定方法,包括:
确定多个候选尺寸;
计算所述候选尺寸对应的图像集的运动复杂度;所述图像集中包含对应候选尺寸个连续待编码图像帧;所述运动复杂度表征对应图像集内各图像帧间图像内容运动的复杂程度;
基于各图像集的运动复杂度进行预设运算,并根据运算结果从所述多个候选尺寸中选择一个候选尺寸作为图像组尺寸。
根据本申请实施例的第二方面,提供了一种编码方法,包括:
接收连续待编码图像帧;
确定编码过程所采用的图像组尺寸;
基于与所述图像组尺寸对应的预设编码方式,对图像组内的连续待编码图像帧编码,得到视频比特流;
其中,所述图像组尺寸采用如上述第一方面所述的方法确定。
根据本申请实施例的第三方面,提供了一种编码方法,包括:
获取视频数据;
确定编码过程所采用的图像组尺寸,并基于与所述图像组尺寸对应的预设编码方式,对所述视频数据编码,得到视频比特流;
将所述视频比特流发送至客户端设备,以使所述客户端设备解码所述视频比特流并显示视频画面;
其中,所述图像组尺寸采用如上述第一方面所述的方法确定。
根据本申请实施例的第四方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面至第三方面任一方面所述方法对应的操作。
根据本申请实施例的第五方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面至第三方面任一方面所述的方法。
根据本申请实施例提供的图像组尺寸确定方案,基于不同尺寸的图像集中图像内容的运动复杂度,可以自适应地从多个候选尺寸中确定出与待编码图像帧图像内容的运动复杂程度相匹配的图像组大小。这样可以使得基于上述确定出的相匹配的图像组大小进行后续编码过程时,有效提升编码结果的率失真性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为根据本申请实施例一的一种图像组尺寸确定方法的步骤流程图;
图2为GOP32内部各图像帧之间的时域层级分布及帧间参考关系图;
图3为图1所示实施例中的一种场景示例的示意图;
图4为根据本申请实施例二的一种图像组尺寸确定方法的步骤流程图;
图5为GOP32内简化的编码代价值分布示意图;
图6为两个GOP16的简化编码代价值分布示意图;
图7为图4所示实施例中的一种场景示例的示意图;
图8为根据本申请实施例三的一种编码方法的步骤流程图;
图9为根据本申请实施例四的一种编码方法的步骤流程图;
图10为图9所示实施例中的一种场景示例的示意图;
图11为根据本申请实施例五的一种图像组尺寸确定装置的结构框图;
图12为根据本申请实施例六的一种电子设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
下面结合本申请实施例附图进一步说明本申请实施例具体实现。
实施例一
参照图1,图1为根据本申请实施例一的一种图像组尺寸确定方法的步骤流程图。
具体地,本实施例提供的图像组尺寸确定方法包括以下步骤:
步骤102,确定多个候选尺寸。
本申请实施例中的候选尺寸,即为可作为图像组尺寸的候选图像组尺寸。例如,常见的候选尺寸可以为32(对应图像组类型为GOP32)、16(对应图像组类型为GOP16)、8(对应图像组类型为GOP8)、4(对应图像组类型为GOP4)、2(对应图像组类型为GOP2)以及1(对应图像组类型为GOP1),等等。本步骤中,可以根据实际情况预先确定好多个候选尺寸,本申请实施例中,对于候选尺寸的确定方法、候选尺寸的数量及具体尺寸大小均不做限定。
步骤104,计算候选尺寸对应的图像集的运动复杂度;图像集中包含连续的待编码图像帧,图像集中待编码图像帧的数量与对应的候选尺寸相等,且图像集中图像帧的总数量大于1;运动复杂度表征对应图像集内图像帧之间图像内容运动的复杂程度。
针对步骤102中确定的多个候选尺寸中的任一候选尺寸而言,该候选尺寸对应的图像集中可以包含与该候选尺寸相等数量个连续待编码图像帧,该候选尺寸对应的图像集的运动复杂度表征图像集内图像帧之间图像内容运动的复杂程度。
编码过程通常是针对包含有多个连续图像帧的视频流中的各待编码图像帧进行的,因此,在编码过程中,对于视频流而言,其中可能存在连续的已编码图像帧和连续的未编码图像帧。例如,对于包含100帧图像帧的视频流而言,在某个编码时刻,可能连续的前50帧图像帧为已编码图像帧,而之后的连续50帧图像帧为待编码图像帧。
本申请实施例中,候选尺寸对应的图像集可以由该候选尺寸数量个连续待编码图像帧组成。例如,对于候选尺寸32,其对应的图像集则可以为:从起始待编码图像帧开始,由32个连续的待编码图像帧组成的集合,该集合的运动复杂度表征该32个连续待编码图像帧之间图像内容运动的复杂程度。
另外,候选尺寸对应的图像集,也可以由该候选尺寸数量个连续待编码图像帧,以及视频流中的其它图像帧组成。
例如:可以为以视频流中的末位已编码图像帧为起始帧,且包含候选尺寸数量个连续待编码图像帧的集合,其中,末位已编码图像帧为视频流的已编码图像帧中编码时间最晚的图像帧。还以候选尺寸32为例,其对应的图像集则可以为:由末位已编码图像帧开始,且包含32个连续的待编码图像帧的集合。如:对于包含100个图像帧的视频流,在某个编码时刻,连续的前50帧图像帧为已编码图像帧,之后的连续50帧图像帧为待编码图像帧,则候选尺寸32对应的图像集可以为以视频流的第50帧图像帧(末位已编码图像帧)为起始帧,且包含32个待编码图像帧的集合,即由第50帧开始,至第82帧结束的图像帧集合。
进一步地,本申请实施例中,对于图像集运动复杂度的具体表征形式不做限定。例如:可以基于以图像集为图像组进行编码时的编码代价得到图像集的运动复杂度,也可以基于图像集中图像帧之间的静止块数量得到图像集的运动复杂度,还可以基于图像集中图像帧之间的像素差异值得到图像集的运动复杂度,等等。
步骤106,基于各图像集的运动复杂度进行预设运算,并根据运算结果从多个候选尺寸中选择一个目标尺寸作为图像组的尺寸。
其中,图像组由目标尺寸对应的图像集中的连续待编码图像帧组成。如上所述,图像集可以由候选尺寸数量个连续待编码图像帧组成;也可以由候选尺寸数量个连续待编码图像帧,以及视频流中的其它图像帧组成。当图像集是由候选尺寸数量个连续待编码图像帧组成时,图像组即为目标尺寸对应的图像集;当图像集是由目标尺寸数量个连续待编码图像帧,以及视频流中的其它图像帧组成时,则图像组由目标尺寸数量个连续待编码图像帧组成,目标尺寸对应的图像集并不等同于图像组。
在步骤104得到候选尺寸对应的图像集的运动复杂度之后,可以对各图像集的运动复杂度进行一定的运算操作,进而将运算结果作为参考因素,以从多个候选尺寸中选择一个候选尺寸作为图像组尺寸。
本申请实施例中,对于预设运算的具体内容不做限定,可以根据实际情况设定。例如:可以对比计算得到的各运动复杂度的大小关系,从而将最小运动复杂度对应的候选尺寸确定为图像组尺寸,或者按照运动复杂度从小到大的顺序,将位于第N位的运动复杂度对应的候选尺寸确定为图像组尺寸,其中,N为小于或等于候选尺寸总数的自然数;又如:针对各运动复杂度,可以基于其对应的候选尺寸确定缩放权重,并计算各运动复杂度与权重乘积作为缩放后运动复杂度,然后对比各缩放后运动复杂度的大小关系,进而根据该大小关系,从各候选尺寸中选择一个作为图像组尺寸;还如:可以将各运动复杂度作为自变量,采用预设的函数表达式进行运算,并基于运算结果从候选尺寸中选择一个候选尺寸作为图像组尺寸,等等。
在视频编码之前要先确定好图像组的尺寸,当图像组尺寸确定之后,图像组内部各图像帧之间的层级结构及参考关系也相应确定。参见图2,图2为GOP32内部各图像帧之间的时域层级分布及帧间参考关系图,从图2可以看出不同图像帧所处的时域层,以及,各图像帧之间的参考关系,例如:图像组内部分为6个时域层,分别为:T0、T1、T2、T3、T4及T5,其中,图像序列号为0和32的图像帧位于T0层、图像序列号为16的图像帧位于T1层,……,以及,图像序列号为16的图像帧前向参考图像序列号为0的图像帧、后向参考图像序列号为32的图像帧,等等。
通过步骤106,可以确定出与当前待编码图像帧图像内容的运动复杂程度相匹配的图像组大小,进而后续可以按照与确定出的图像组大小对应的编码方式,对当前连续待编码图像帧编码,得到比特流,其中,当前连续待编码图像帧的图像帧总数量与图像组大小相等。
具体地:视频流的编码过程通常是逐帧依次编码。在获取到起始待编码图像帧后,可以采用本申请实施例的方案确定出当前的图像组大小,进而,对从起始待编码图像帧开始的连续图像组大小个图像帧,采用与图像组大小相对应的编码方式进行编码,之后,再将后续获取到的视频流中的第一个待编码图像帧作为新的起始待编码图像帧,重复本申请实施例提供的方案,直至完成整个视频流的编码操作。
参见图3,图3为本申请实施例一对应的场景示意图,以下,将参考图3所示的示意图,以一个具体场景示例,对本申请实施例进行说明:
确定了N个候选尺寸:候选尺寸1、……、候选尺寸N,其中,N为大于1的自然数;在获取到多个候选尺寸之后,在视频流中确定:候选尺寸1对应的第一图像集、……、候选尺寸N对应的第N图像集;分别计算各图像集的运动复杂度:第一图像集对应的第一运动复杂度、……、第N图像集对应的第N运动复杂度;对上述确定的N各运动复杂度进行预设的运算操作,从而得到运算结果;最终根据上述运算结果,确定出候选尺寸1作为图像组的尺寸。
根据本申请实施例提供的图像组尺寸确定方案,基于不同尺寸的图像集中图像内容的运动复杂度,可以自适应地从多个候选尺寸中确定出与当前待编码图像帧图像内容的运动复杂程度相匹配的图像组大小。这样可以使得基于上述确定出的相匹配的图像组大小进行后续编码过程时,有效提升编码结果的率失真性能。
本申请实施例一提供的图像组尺寸确定方法,可以由视频编码端(编码器)在对视频流进行编码之前执行,用于在多种不同的候选尺寸中自适应地选择出与图像帧内容更匹配的图像组大小,进而基于该图像组大小进行后续的编码操作。上述视频编码端可以为客户端,也可以为服务端。本申请实施例提供的图像组尺寸确定方法可以适用于多种不同的场景,如:视频点播场景,对应的视频编码端为(云)服务端。具体地:(云)服务端设备可以通过本申请实施例提供的图像组尺寸确定方法确定出对本地存储的视频媒体数据(如电影、电视剧等影视作品数据)编码时所采用的图像组尺寸,之后,再基于与图像组尺寸对应的编码方式,对视频媒体数据编码,得到视频比特流;并下发至客户端设备,以在客户端设备中进行解码,得到对应的视频媒体数据并播放。又如:常规视频游戏的存储和流式传输,具体地:可以通过本申请实施例提供的图像组尺寸确定方法,确定出编码过程中所涉及的图像组大小,之后,再采用确定好的图像组大小,对上述视频内容进行编码,形成对应的视频码流,以在视频流服务或者其他类似的应用中存储和传输。又如:视频会议、视频直播等低延时场景,对应的视频编码端为客户端-会议终端。具体地:可以通过视频采集设备采集会议视频数据,再通过本申请实施例提供的图像组尺寸确定方法,确定出编码过程中所涉及的图像组大小,之后,再采用确定好的图像组大小对采集到的上述会议视频数据进行编码,形成对应的视频码流,并发送至会议终端,通过会议终端对视频码流进行解码从而得到对应的会议视频画面;还如:虚拟现实场景,可以通过本申请实施例提供的图像组尺寸确定方法,确定出编码过程中所涉及的图像组大小,之后,再采用确定好的图像组大小对采集到的视频数据进行编码,形成对应的视频码流,并发送至虚拟现实相关设备(如VR虚拟眼镜等),通过VR设备对视频码流进行解码从而得到对应的视频画面,并基于视频画面实现对应的VR功能,等等。
实施例二
参照图4,图4为根据本申请实施例一的一种图像组尺寸确定方法的步骤流程图。
具体地,本实施例提供的图像组尺寸确定方法包括以下步骤:
步骤402,从预设的多个候选尺寸中,选择未被选择过的最大尺寸作为第一候选尺寸。
步骤404,将多个候选尺寸中,小于第一候选尺寸且与第一候选尺寸的差值最小的候选尺寸确定为第二候选尺寸。
例如:候选尺寸分别为:32、16、8、4、2以及1,若第一候选尺寸选择为16,则第二候选尺寸将确定为8。
步骤406,分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度。
其中,第一图像集以末位已编码图像帧为起始帧,且待编码图像帧的数量与第一候选尺寸相等;第二图像集以末位已编码图像帧为起始帧,且待编码图像帧的数量与第二候选尺寸相等;第三图像集以第二图像集中的末位待编码图像帧为起始帧,且包含第一图像集中不属于第二图像集的图像帧。
例如:第一候选尺寸为32,第二候选尺寸为16,则第一图像集为从末位已编码图像帧(假设为第i帧)开始,且包含32个连续待编码图像帧的集合,也即包含第i帧至第i+32帧的连续图像帧集合;第二图像集从末位已编码图像帧(第i帧)开始,且包含16个连续待编码图像帧的集合,也即包含第i帧至第i+16帧的连续图像帧集合;第三图像集则为从第i+16个图像帧开始的图像帧集合,也即包含第i+16帧至第i+32帧的连续图像帧集合。
可选地,本申请实施例中,图像集的运动复杂度可以基于以图像集为图像组进行编码时的编码代价表示;也可以基于图像集中图像帧之间的静止块数量表示;还可以基于图像集中图像帧之间的像素差异值表示。
具体地,当基于以图像集为图像组进行编码时的编码代价表示图像集的运动复杂度时,上述步骤406可以包括:
计算以所述第一图像集为图像组进行编码时的第一编码代价,作为第一图像集的第一运动复杂度;计算以所述第二图像集为图像组进行编码时的第二编码代价,作为第二图像集的第二运动复杂度;计算以所述第三图像集为图像组进行编码时的第三编码代价,作为第三图像集的第三运动复杂度。
进一步地,计算以所述第一图像集为图像组进行编码时的第一编码代价,作为第一图像集的第一运动复杂度,可以包括:从第一图像集中选择第一预设数量个第一图像帧,基于各第一图像帧的帧间编码代价得到以所述第一图像集为图像组进行编码时的第一编码代价。
计算以所述第二图像集为图像组进行编码时的第二编码代价,作为第二图像集的第二运动复杂度,可以包括:从第二图像集中选择第二预设数量个第二图像帧,基于各第二图像帧的帧间编码代价得到以所述第二图像集为图像组进行编码时的第二编码代价。
计算以所述第三图像集为图像组进行编码时的第三编码代价,作为第三图像集的第三运动复杂度,包括:从第三图像集中选择第三预设数量个第三图像帧,基于各第三图像帧的帧间编码代价得到以所述第三图像集为图像组进行编码时的第三编码代价。
本申请实施例中,对于第一图像帧的数量和选择方法不做限定,可以根据实际情况设定;对于根据各第一图像帧的帧间编码代价得到第一编码代价的具体方式也不做限定。例如:可以将第一图像集中,位于尾部的尾帧和位于中间位置的中间帧作为第一图像帧,计算尾帧前向参考首帧(位于第一图像集首部的首帧)的帧间编码代价,以及,中间帧前向参考首帧且后向参考尾帧的帧间编码代价,并将上述两种编码代价之和作为第一编码代价,也即第一运动复杂度。
本申请实施例中,对于第二图像帧的数量和选择方法不做限定,可以根据实际情况设定;对于根据各第二图像帧的帧间编码代价得到第二编码代价的具体方式也不做限定。例如:可以将第二图像集中,位于尾部的尾帧作为第二图像帧,计算尾帧前向参考首帧(位于第二图像集首部的首帧)的帧间编码代价作为第二编码代价,也即第二运动复杂度。
本申请实施例中,对于第三图像帧的数量和选择方法不做限定,可以根据实际情况设定;对于根据各第三图像帧的帧间编码代价得到第三编码代价的具体方式也不做限定。例如:可以将第三图像集中,位于尾部的尾帧作为第三图像帧,计算尾帧前向参考首帧(位于第三图像集首部的首帧)的帧间编码代价作为第三编码代价,也即第三运动复杂度。
还以第一候选尺寸为32,第二候选尺寸为16,末位已编码图像帧为第i帧为例:可以从第一图像集中选择第i+32帧图像帧和第i+16帧图像帧作为第一图像帧,将第i+32帧前向参考第i帧的帧间编码代价FrmI nterCost(i+32,i),以及,第i+16帧前向参考第i帧、后向参考第i+32帧的帧间编码代价FrmI nterCost(i+16,i)(i+16,i+32)之和:FrmInterCost(i+32,i)+FrmI nterCost(i+16,i)(i+16,i+32)作为第一编码代价GOP32Cost_32(i,i+32);可以从第二图像集中选择第i+16帧图像帧作为第二图像帧,将第i+16帧前向参考第i帧的帧间编码代价FrmI nterCost(i+16,i)作为第二编码代价;可以从第三图像集中选择第i+32帧图像帧作为第三图像帧,将第i+32帧前向参考第i+16帧的帧间编码代价FrmInterCost(i+32,i+16)作为第三编码代价。
参见图5,图5为GOP32内简化的编码代价值分布示意图。在图5中,i=0,FrmInterCost(16,0)(16,32)表示第16帧前向参考第0帧、后向参考第32帧的帧间编码代价;FrmI nterCost(32,0)表示第32帧前向参考第0帧的帧间编码代价。
参见图6,图6为两个GOP16的简化编码代价值分布示意图。在图6中,i=0,FrmInterCost(16,0)表示第16帧前向参考第0帧的帧间编码代价;FrmI nterCost(32,16)表示第32帧前向参考第16帧的帧间编码代价。
具体地,当基于图像集中图像帧之间的静止块数量表示图像集的运动复杂度时,上述步骤406可以包括:
计算所述第一图像集中图像帧之间的第一静止块数量,并基于所述第一静止块数量得到第一图像集的第一运动复杂度;其中,所述第一静止块数量越大,所述第一运动复杂度越小;
计算所述第二图像集中图像帧之间的第二静止块数量,并基于所述第二静止块数量得到第二图像集的第二运动复杂度;
计算所述第三图像集中图像帧之间的第三静止块数量,并基于所述第三静止块数量得到第三图像集的第三运动复杂度。
上述图像集中的静止块数量,可以是对应图像集中预设的多个图像帧之间的静止块数量,本申请实施例中,对于静止块数量的具体确定方式不做限定。
具体地,当基于图像集中图像帧之间的像素差异值表示图像集的运动复杂度时,上述步骤406可以包括:
计算所述第一图像集中图像帧之间的像素差异值,作为第一图像集的第一运动复杂度;
计算所述第二图像集中图像帧之间的像素差异值,作为第二图像集的第二运动复杂度;
计算所述第三图像集中图像帧之间的像素差异值,作为第三图像集的第三运动复杂度。
上述图像集中的像素差异值,可以是对应图像集中预设的多个图像帧之间的像素差异值,本申请实施例中,对于像素差异值的具体确定方式及具体表示形式均不做限定。
示例性地,可以将像素值按照大小不同划分为多个不同的像素区间(如:0-100为第一像素值区间;101-200为第二像素区间;201-255为第三像素区间);针对每个图像帧,统计像素值落入上述各像素值区间的像素点的数量,得到每个图像帧的像素值分布情况,进而对比各图像帧的像素值分布情况,得到图像帧之间的像素差异值。
具体地,例如:针对每个图像帧,可以通过直方图等形式(如横坐标表示像素值,纵坐标表示像素点数量),统计落入每个像素区间的像素点数量,形成图像帧的像素值分布图,之后对比各图像帧的像素值分布图,得到各图像帧之间的像素差异值。
步骤408,融合第二运动复杂度和第三运动复杂度得到融合运动复杂度。若第一运动复杂度小于融合运动复杂度,执行步骤410;否则,若第二候选尺寸是多个候选尺寸中的最小值,执行步骤412,若第二候选尺寸不是多个候选尺寸中的最小值,返回执行步骤402。
本申请实施例中,对于具体的运动复杂度融合方式不做限定,可以根据实际情况确定,例如:可以将第二运动复杂度和第三运动复杂度相加得到融合运动复杂度;也可以为第二运动复杂度和第三运动复杂度分别分配权重值,再进行加权求和得到融合运动复杂度;还可以将第二运动复杂度和第三运动复杂度作为自变量,采用预设的函数表达式进行计算,得到融合运动复杂度,等等。
步骤410,将第一候选尺寸确定为图像组尺寸。
步骤412,将第二候选尺寸确定为图像组尺寸。
参见图7,图7为本申请实施例二对应的场景示意图,以下,将参考图7所示的示意图,以一个具体场景示例,对本申请实施例进行说明:
假设候选尺寸分别为:32、16、8、4、2以及1;获取当前的待编码视频流,起始时视频流中的末位已编码图像帧(也即视频流中的首帧,通常编码类型为I帧)的图像序号为i=0;先从上述多个候选尺寸中选择32作为第一候选尺寸,则可以将16确定为第二候选尺寸;计算视频流中第i帧至第i+32帧组成的第一图像集的第一编码代价GOP32Cost_32(i,i+32),以及,GOP32Cost_16(i,i+32),其中,GOP32Cost_16(i,i+32)为融合编码代价,即视频流中第i帧至第i+16帧组成的第二图像集的第二编码代价与第i+16帧至第i+32帧组成的第三图像集的第三编码代价之和;当GOP32Cost_32(i,i+32)<GOP32Cost_16(i,i+32)时,则对第i+1帧至第i+32帧的连续图像帧采用GOP32的编码结构进行编码,采用i+32更新i并返回从多个候选尺寸中选择32作为第一候选尺寸,将16确定为第二候选尺寸的步骤;当GOP32Cost_32(i,i+32)≥GOP32Cost_16(i,i+32)时,则从候选尺寸中选择未被选择过的最大尺寸16作为新的第一候选尺寸,对应地,可以将8确定为第二候选尺寸;计算视频流中第i帧至第i+16帧组成的第一图像集的第一编码代价GOP16Cost_16(i,i+16),以及,GOP16Cost_8(i,i+16),其中,GOP16Cost_8(i,i+16)为融合编码代价,即视频流中第i帧至第i+8帧组成的第二图像集的第二编码代价与第i+8帧至第i+16帧组成的第三图像集的第三编码代价之和;当GOP16Cost_16(i,i+16)<GOP16Cost_8(i,i+16)时,则对第i+1帧至第i+16帧的连续图像帧采用GOP16的编码结构进行编码,采用i+16更新i,并返回从多个候选尺寸中选择32作为第一候选尺寸,将16确定为第二候选尺寸的步骤;当GOP16Cost_16(i,i+16)≥GOP16Cost_8(i,i+16)时,则从候选尺寸中选择未被选择过的最大尺寸8作为新的第一候选尺寸,对应地,可以将4确定为第二候选尺寸;计算视频流中第i帧至第i+8帧组成的第一图像集的第一编码代价GOP8Cost_8(i,i+8),以及,GOP8Cost_4(i,i+8),其中,GOP8Cost_4(i,i+8)为融合编码代价,即视频流中第i帧至第i+4帧组成的第二图像集的第二编码代价与第i+4帧至第i+8帧组成的第三图像集的第三编码代价之和;当GOP8Cost_8(i,i+8)<GOP8Cost_4(i,i+8)时,则对第i+1帧至第i+8帧的连续图像帧采用GOP8的编码结构进行编码,采用i+8更新i,并返回从多个候选尺寸中选择32作为第一候选尺寸,将16确定为第二候选尺寸的步骤;当GOP8Cost_8(i,i+8)≥GOP8Cost_4(i,i+8)时,则从候选尺寸中选择未被选择过的最大尺寸4作为新的第一候选尺寸,对应地,可以将2确定为第二候选尺寸;计算视频流中第i帧至第i+4帧组成的第一图像集的第一编码代价GOP4Cost_4(i,i+4),以及,GOP4Cost_2(i,i+4),其中,GOP4Cost_2(i,i+4)为融合编码代价,即视频流中第i帧至第i+2帧组成的第二图像集的第二编码代价与第i+2帧至第i+4帧组成的第三图像集的第三编码代价之和;当GOP4Cost_4(i,i+4)<GOP4Cost_2(i,i+4)时,则对第i+1帧至第i+4帧的连续图像帧采用GOP4的编码结构进行编码,采用i+4更新i,并返回从多个候选尺寸中选择32作为第一候选尺寸,将16确定为第二候选尺寸的步骤;当GOP4Cost_4(i,i+4)≥GOP4Cost_2(i,i+4)时,则从候选尺寸中选择未被选择过的最大尺寸2作为新的第一候选尺寸,对应地,可以将1确定为第二候选尺寸;计算视频流中第i帧至第i+2帧组成的第一图像集的第一编码代价GOP2Cost_2(i,i+2),以及,GOP2Cost_1(i,i+2),其中,GOP2Cost_1(i,i+2)为融合编码代价,即视频流中第i帧至第i+1帧组成的第二图像集的第二编码代价与第i+1帧至第i+2帧作为第三图像集的第三编码代价之和;当GOP2Cost_2(i,i+2)<GOP2Cost_1(i,i+2)时,则对第i+1帧至第i+2帧的连续图像帧采用GOP2的编码结构进行编码,采用i+2更新i,并返回从多个候选尺寸中选择32作为第一候选尺寸,将16确定为第二候选尺寸的步骤;当GOP2Cost_2(i,i+2)≥GOP2Cost_1(i,i+2)时,则对第i+1帧的图像帧采用GOP1的编码结构进行编码,即:对第i+1帧采用P帧编码,采用i+1更新i,并返回从多个候选尺寸中选择32作为第一候选尺寸,将16确定为第二候选尺寸的步骤。
上述例子中:
GOP32Cost_32(i,i+32)=FrmI nterCost(i+32,i)+FrmI nterCost(i+16,i)(i+16,i+32)
GOP32Cost_16(i,i+32)=FrmI nterCost(i+16,i)+FrmI nterCost(i+32,i+16)
GOP16Cost_16(i,i+16)=FrmI nterCost(i+16,i)+FrmI nterCost(i+8,i)(i+8,i+16)
GOP16Cost_8(i,i+16)=FrmI nterCost(i+8,i)+FrmI nterCost(i+16,i+8)
GOP8Cost_8(i,i+8)=Frm I nterCost(i+8,i)+Frm I nterCost(i+4,i)(i+4,i+8)
GOP8Cost_4(i,i+8)=Frm I nterCost(i+4,i)+Frm I nterCost(i+8,i+4)
GOP4Cost_4(i,i+4)=Frm I nterCost(i+4,i)+Frm I nterCost(i+2,i)(i+2,i+4)
GOP4Cost_2(i,i+4)=Frm I nterCost(i+2,i)+Frm I nterCost(i+4,i+2)
其中,Frm I nterCost(A,B)表示第A帧图像帧前向参考第B帧图像帧的编码代价;
FrmI nterCost(C,D)(C,E)表示第C帧图像帧前向参考第D帧图像帧、后向参考第E帧图像帧的编码代价。
另外,可以通过如下方式计算图像组中各图像帧的编码代价:
1、对原始图像帧进行下采样,得到下采样图像;
2、对下采样图像以8x8的尺寸划分成多个处理单元,针对各处理单元:采用多角度方向预测,得到当前处理单元的预测图像,然后对原始图像帧中的处理单元和预测图像中对应的处理单元进行变换后系数绝对值求和(SATD,Sum Of Abso l ute Transformed D ifferences)运算,再比较各个SATD值,得到最小SATD值,从而得到各处理单元的帧内编码代价-Cu I ntraCost;
3、对下采样图像以8x8的尺寸划分成多个处理单元,针对各处理单元:在其参考帧中进行运动搜索,得到多个预测图像,然后对原始图像中的处理单元和预测图像中对应的处理单元计算SATD,再比较各SATD值,得到最小的SATD值,得到各处理单元在当前参考方向下的前向帧间编码代价-L0_Cu I nterCost,后向帧间编码代价-L1_Cu I nterCost以及双向帧间编码代价-Bi_Cu I nterCost;最后比较各处理单元的Cu I ntraCost,L0_Cu InterCost,L1_Cu I nterCost及Bi_Cu I nterCost,得到最小值,作为各处理单元的帧间编码代价-Cu I nterCost;
对当前下采样图像帧中的各处理单元依次执行上述2和3步骤,得到当前下采样图像帧各处理单元的Cu I ntraCost和Cu I nterCost,将各处理单元的Cu I ntraCost累加得到原始图像帧的帧内编码代价-FrmI ntraCost,以及将各处理单元的Cu I nterCost累加得到原始图像帧的帧间编码代价Frm I nterCost。
根据本申请实施例提供的图像组尺寸确定方案,基于不同尺寸的图像集中图像内容的运动复杂度,可以自适应地从多个候选尺寸中确定出与当前待编码图像帧图像内容的运动复杂程度相匹配的图像组大小。这样可以使得基于上述确定出的相匹配的图像组大小进行后续编码过程时,有效提升编码结果的率失真性能。
另外,本申请实施例中,在进行图像组尺寸选择时,优先考虑的是候选尺寸中的较大尺寸,当较大尺寸无法满足图像内容的运动复杂度要求时,再逐步细化进而选择更小尺寸,与优先考虑候选尺寸中较小尺寸的方案相比,可以有效减少冗余的无效判断,避免选择过程陷入局部较优解。
实施例三
参照图8,图8为根据本申请实施例三的一种编码方法的步骤流程图。该编码方法可以应用于具有编码需求的服务端设备或者客户端设备。具体地,本实施例提供的编码方法包括以下步骤:
步骤802,接收连续待编码图像帧。
步骤804,确定编码过程所采用的图像组尺寸。
具体地,本步骤可以采用上述实施例一或实施例二所提供的图像组尺寸确定方法实现,具体实现过程此处不再赘述。
步骤806,基于与图像组尺寸对应的预设编码方式,对图像组内的连续待编码图像帧编码,得到视频比特流。
本申请实施例提供的编码方法,可以由视频编码端(编码器)执行,用于在多种不同的候选尺寸中自适应地选择出与图像帧内容更匹配的图像组大小,进而基于该图像组大小进行后续的编码操作。上述视频编码端可以为客户端,也可以为服务端。本申请实施例提供的编码方法可以适用于多种不同的场景,如:视频点播场景,对应的视频编码端为(云)服务端。具体地:(云)服务端设备可以确定出对本地存储的视频媒体数据(如电影、电视剧等影视作品数据)编码时所采用的图像组尺寸,之后,再基于与图像组尺寸对应的编码方式,对视频媒体数据编码,得到视频比特流;并下发至客户端设备,以在客户端设备中进行解码,得到对应的视频媒体数据并播放。又如:常规视频游戏的存储和流式传输,具体地:可以通过本申请实施例提供的方法,确定出编码过程中所涉及的图像组大小,之后,再采用确定好的图像组大小,对上述视频内容进行编码,形成对应的视频码流,以在视频流服务或者其他类似的应用中存储和传输。又如:视频会议、视频直播等低延时场景,对应的视频编码端为客户端-会议终端,具体地:可以通过视频采集设备采集会议视频数据,再确定出编码过程中所涉及的图像组大小,之后,再采用确定好的图像组大小对采集到的上述会议视频数据进行编码,形成对应的视频码流,并发送至会议终端,通过会议终端对视频码流进行解码从而得到对应的会议视频画面;还如:虚拟现实场景,可以确定出编码过程中所涉及的图像组大小,之后,再采用确定好的图像组大小对采集到的视频数据进行编码,形成对应的视频码流,并发送至虚拟现实相关设备(如VR虚拟眼镜等),通过VR设备对视频码流进行解码从而得到对应的视频画面,并基于视频画面实现对应的VR功能,等等。
实施例四
参照图9,图9为根据本申请实施例四的一种编码方法的步骤流程图。该编码方法可以应用于具有编码需求的(云)服务端设备。具体地,本实施例提供的编码方法包括以下步骤:
步骤902,获取视频数据。
具体地,服务端设备可以获取本地存储的高质量的视频数据,如:具有高清晰度的电影、电视剧,等等。
步骤904,确定编码过程所采用的图像组尺寸,并基于与图像组尺寸对应的预设编码方式,对视频数据编码,得到视频比特流。
具体地,本步骤中可以采用上述实施例一或实施例二所提供的图像组尺寸确定方法确定出图像组尺寸,具体确定过程此处不再赘述。
在确定出图像组尺寸之后,可以基于与该图像组尺寸对应的编码方式,对步骤902中获取到的视频数据进行编码,从而得到视频比特流。
步骤906,将视频比特流发送至客户端设备,以使客户端设备解码视频比特流并显示视频画面。
将编码得到的视频比特流发送至客户端设备之后,客户端设备可以对该视频比特流解码,从而得到对应的视频数据,并且在显示截面中显示、播放该视频数据。
参见图10,图10为本申请实施例四对应的场景示意图,以下,将参考图10所示的示意图,以一个具体场景示例,对本申请实施例进行说明:
图10对应视频数据点播场景,具体地:服务端设备与各客户端设备(客户端设备1、……、客户端设备N)通过网络通信连接;当用户想要观看电影A时,可以通过客户端设备(假设客户端设备1)向服务端设备发送点播请求;服务端设备接收到上述点播请求后,可以在数据库中确定出电影A的电影数据,并采用本申请中任一实施例提供的图像组尺寸确定方法确定出图像组尺寸;服务端设备基于与上述图像组尺寸对应的编码方式,对电影数据进行编码,从而得到视频比特流;服务端设备通过通信网络将上述视频比特流返回至客户端设备1;客户端设备1接收到上述视频比特流之后,可以对其进行解码操作,从而得到电影A的电影数据,并在播放器中进行播放,以供用户观看。
实施例五
图11为根据本申请实施例五的一种图像组尺寸确定装置的结构框图。本申请实施例提供的图像组尺寸确定装置包括:
候选尺寸确定模块1102,用于确定多个候选尺寸;
运动复杂度计算模块1104,用于计算候选尺寸对应的图像集的运动复杂度;图像集中包含连续的待编码图像帧,图像集中待编码图像帧的数量与对应的候选尺寸相等,且图像集中图像帧的总数量大于1;运动复杂度表征对应图像集内图像帧之间图像内容运动的复杂程度;
图像组尺寸确定模块1106,用于基于各图像集的运动复杂度进行预设运算,并根据运算结果从多个候选尺寸中选择一个目标尺寸作为图像组的尺寸;其中,图像组由目标尺寸对应的图像集中的连续待编码图像帧组成。
可选地,在其中一些实施例中,候选尺寸确定模块1102,具体用于:确定第一候选尺寸和第二候选尺寸;第一候选尺寸大于第二候选尺寸;
可选地,在其中一些实施例中,运动复杂度计算模块1104,具体用于:
分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度;并融合第二运动复杂度和第三运动复杂度得到融合运动复杂度;
其中,所述第一图像集以末位已编码图像帧为起始帧,且待编码图像帧的数量与第一候选尺寸相等;所述第二图像集以所述末位已编码图像帧为起始帧,且待编码图像帧的数量与第二候选尺寸相等;所述第三图像集以所述第二图像集中的末位待编码图像帧为起始帧,且包含所述第一图像集中不属于所述第二图像集的图像帧。
可选地,在其中一些实施例中,图像组尺寸确定模块1106,具体用于:若第一运动复杂度小于融合运动复杂度,将第一候选尺寸确定为图像组的尺寸。
可选地,在其中一些实施例中,候选尺寸确定模块1102,具体用于:从预设的多个候选尺寸中,选择未被选择过的最大尺寸作为第一候选尺寸;将多个候选尺寸中,小于第一候选尺寸且与第一候选尺寸的差值最小的候选尺寸确定为第二候选尺寸;
候选尺寸确定模块1102,还用于:若第一运动复杂度大于或者等于融合运动复杂度,则返回从预设的多个候选尺寸中,选择未被选择过的最大尺寸作为第一候选尺寸的步骤。
可选地,在其中一些实施例中,候选尺寸确定模块1102,还用于:当第二候选尺寸为多个候选尺寸中的最小值,并且,第一运动复杂度大于或者等于融合运动复杂度时,将第二候选尺寸确定为图像组尺寸。
可选地,在其中一些实施例中,运动复杂度计算模块1104,在执行分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度步骤时,具体用于:
计算以第一图像集为图像组进行编码时的第一编码代价,作为第一图像集的第一运动复杂度;
计算以第二图像集为图像组进行编码时的第二编码代价,作为第二图像集的第二运动复杂度;
计算以第三图像集为图像组进行编码时的第三编码代价,作为第三图像集的第三运动复杂度。
可选地,在其中一些实施例中,运动复杂度计算模块1104,在执行分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度步骤时,具体用于:
计算第一图像集中图像帧之间的第一静止块数量,并基于第一静止块数量得到第一图像集的第一运动复杂度;其中,第一静止块数量越大,第一运动复杂度越小;
计算第二图像集中图像帧之间的第二静止块数量,并基于第二静止块数量得到第二图像集的第二运动复杂度;
计算第三图像集中图像帧之间的第三静止块数量,并基于第三静止块数量得到第三图像集的第三运动复杂度。
可选地,在其中一些实施例中,运动复杂度计算模块1104,在执行分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度步骤时,具体用于:
计算第一图像集中图像帧之间的像素差异值,作为第一图像集的第一运动复杂度;
计算第二图像集中图像帧之间的像素差异值,作为第二图像集的第二运动复杂度;
计算第三图像集中图像帧之间的像素差异值,作为第三图像集的第三运动复杂度。
本实施例的图像组尺寸确定装置用于实现前述多个方法实施例中相应的图像组尺寸确定方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的图像组尺寸确定装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
实施例六
参照图12,示出了根据本申请实施例六的一种电子设备的结构示意图,本申请具体实施例并不对电子设备的具体实现做限定。
如图12所示,该电子设备可以包括:处理器(processor)1202、通信接口(Communicat ions I nterface)1204、存储器(memory)1206、以及通信总线1208。
其中:
处理器1202、通信接口1204、以及存储器1206通过通信总线1208完成相互间的通信。
通信接口1204,用于与其它电子设备或服务器进行通信。
处理器1202,用于执行程序1210,具体可以执行上述图像组尺寸确定方法或者编码方法实施例中的相关步骤。
具体地,程序1210可以包括程序代码,该程序代码包括计算机操作指令。
处理器1202可能是CPU,或者是特定集成电路AS I C(App l i cat i on Spec if i cI ntegrated C i rcu it),或者是被配置成实施本申请实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个AS I C。
存储器1206,用于存放程序1210。存储器1206可能包含高速RAM存储器,也可能还包括非易失性存储器(non-vo l at i l e memory),例如至少一个磁盘存储器。
程序1210可包括多条计算机指令,程序1210具体可以通过多条计算机指令使得处理器1202执行前述多个方法实施例中任一实施例所描述的图像组尺寸确定方法或者编码方法对应的操作。
程序1210中各步骤的具体实现可以参见上述方法实施例中的相应步骤和单元中对应的描述,并具有相应的有益效果,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
本申请实施例还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述多个方法实施例中任一实施例所描述的方法。该计算机存储介质包括但不限于:只读光盘(Compact D i sc Read-On l y Memory,CD-ROM)、随机存储器(Random Access Memory,RAM)、软盘、硬盘或磁光盘等。
本申请实施例还提供了一种计算机程序产品,包括计算机指令,该计算机指令指示计算设备执行上述多个方法实施例中的任一图像组尺寸确定方法或者编码方法对应的操作。
此外,需要说明的是,本申请实施例所涉及到的与用户有关的信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于对模型进行训练的样本数据、用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。
上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD-ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如专用集成电路(App l icat ion Spec i f i c I ntegrated Ci rcuit,AS I C)或现场可编辑门阵列(F ie l d Programmab l e Gate Array,FPGA))的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,随机存储器(Random Access Memory,RAM)、只读存储器(Read-On l y Memory,ROM)、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的方法。此外,当通用计算机访问用于实现在此示出的方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
以上实施方式仅用于说明本申请实施例,而并非对本申请实施例的限制,有关技术领域的普通技术人员,在不脱离本申请实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请实施例的范畴,本申请实施例的专利保护范围应由权利要求限定。

Claims (13)

1.一种图像组尺寸确定方法,包括:
确定多个候选尺寸;
计算所述候选尺寸对应的图像集的运动复杂度;所述图像集中包含连续的待编码图像帧,所述图像集中待编码图像帧的数量与对应的候选尺寸相等,且所述图像集中图像帧的总数量大于1;所述运动复杂度表征对应图像集内图像帧之间图像内容运动的复杂程度;
基于各图像集的运动复杂度进行预设运算,并根据运算结果从所述多个候选尺寸中选择一个目标尺寸作为图像组的尺寸;其中,所述图像组由所述目标尺寸对应的图像集中的连续待编码图像帧组成。
2.根据权利要求1所述的方法,其中,所述确定多个候选尺寸,包括:
确定第一候选尺寸和第二候选尺寸;所述第一候选尺寸大于所述第二候选尺寸;
所述计算所述候选尺寸对应的图像集的运动复杂度,包括:
分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度;并融合所述第二运动复杂度和所述第三运动复杂度得到融合运动复杂度;
其中,所述第一图像集以末位已编码图像帧为起始帧,且待编码图像帧的数量与第一候选尺寸相等;所述第二图像集以所述末位已编码图像帧为起始帧,且待编码图像帧的数量与第二候选尺寸相等;所述第三图像集以所述第二图像集中的末位待编码图像帧为起始帧,且包含所述第一图像集中不属于所述第二图像集的图像帧。
3.根据权利要求2所述的方法,其中,所述基于各图像集的运动复杂度进行预设运算,并根据运算结果从所述多个候选尺寸中选择一个目标尺寸作为图像组的尺寸,包括:
若所述第一运动复杂度小于所述融合运动复杂度,将所述第一候选尺寸确定为图像组的尺寸。
4.根据权利要求3所述的方法,其中,所述确定第一候选尺寸和第二候选尺寸,包括:
从预设的多个候选尺寸中,选择未被选择过的最大尺寸作为第一候选尺寸;
将所述多个候选尺寸中,小于所述第一候选尺寸且与所述第一候选尺寸的差值最小的候选尺寸确定为第二候选尺寸;
所述方法还包括:
若所述第一运动复杂度大于或者等于所述融合运动复杂度,则返回所述从预设的多个候选尺寸中,选择未被选择过的最大尺寸作为第一候选尺寸的步骤。
5.根据权利要求4所述的方法,其中,还包括:
当所述第二候选尺寸为所述多个候选尺寸中的最小值,并且,所述第一运动复杂度大于或者等于所述融合运动复杂度时,将所述第二候选尺寸确定为图像组的尺寸。
6.根据权利要求2-5任一项所述的方法,其中,所述分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度,包括:
计算以所述第一图像集为图像组进行编码时的第一编码代价,作为第一图像集的第一运动复杂度;
计算以所述第二图像集为图像组进行编码时的第二编码代价,作为第二图像集的第二运动复杂度;
计算以所述第三图像集为图像组进行编码时的第三编码代价,作为第三图像集的第三运动复杂度。
7.根据权利要求2-5任一项所述的方法,其中,所述分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度,包括:
计算所述第一图像集中图像帧之间的第一静止块数量,并基于所述第一静止块数量得到第一图像集的第一运动复杂度;其中,所述第一静止块数量越大,所述第一运动复杂度越小;
计算所述第二图像集中图像帧之间的第二静止块数量,并基于所述第二静止块数量得到第二图像集的第二运动复杂度;
计算所述第三图像集中图像帧之间的第三静止块数量,并基于所述第三静止块数量得到第三图像集的第三运动复杂度。
8.根据权利要求2-5任一项所述的方法,其中,所述分别计算第一图像集的第一运动复杂度、第二图像集的第二运动复杂度及第三图像集的第三运动复杂度,包括:
计算所述第一图像集中图像帧之间的像素差异值,作为第一图像集的第一运动复杂度;
计算所述第二图像集中图像帧之间的像素差异值,作为第二图像集的第二运动复杂度;
计算所述第三图像集中图像帧之间的像素差异值,作为第三图像集的第三运动复杂度。
9.一种编码方法,包括:
接收连续待编码图像帧;
确定编码过程所采用的图像组尺寸;
基于与所述图像组尺寸对应的预设编码方式,对图像组内的连续待编码图像帧编码,得到视频比特流;
其中,所述图像组尺寸采用如权利要求1-8任一项所述的方法确定。
10.一种编码方法,包括:
获取视频数据;
确定编码过程所采用的图像组尺寸,并基于与所述图像组尺寸对应的预设编码方式,对所述视频数据编码,得到视频比特流;
将所述视频比特流发送至客户端设备,以使所述客户端设备解码所述视频比特流并显示视频画面;
其中,所述图像组尺寸采用如权利要求1-8任一项所述的方法确定。
11.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-10中任一项所述的方法对应的操作。
12.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-10中任一所述的方法。
13.一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如权利要求1-10中任一所述方法对应的操作。
CN202310223126.4A 2023-03-02 2023-03-02 图像组尺寸确定方法、电子设备及存储介质 Pending CN116233447A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310223126.4A CN116233447A (zh) 2023-03-02 2023-03-02 图像组尺寸确定方法、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310223126.4A CN116233447A (zh) 2023-03-02 2023-03-02 图像组尺寸确定方法、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN116233447A true CN116233447A (zh) 2023-06-06

Family

ID=86576687

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310223126.4A Pending CN116233447A (zh) 2023-03-02 2023-03-02 图像组尺寸确定方法、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116233447A (zh)

Similar Documents

Publication Publication Date Title
US10728564B2 (en) Systems and methods of encoding multiple video streams for adaptive bitrate streaming
US9350990B2 (en) Systems and methods of encoding multiple video streams with adaptive quantization for adaptive bitrate streaming
US9571827B2 (en) Techniques for adaptive video streaming
US20220232222A1 (en) Video data processing method and apparatus, and storage medium
KR101823321B1 (ko) 적응적 비트레이트 스트리밍을 위해 적응적 양자화를 갖고 다수의 비디오 스트림들을 인코딩하는 시스템들 및 방법들
CN110049336B (zh) 视频编码方法和视频解码方法
CN106713913B (zh) 视频图像帧发送方法及装置、视频图像帧接收方法及装置
CN108810545B (zh) 用于视频编码的方法、装置、计算机可读介质及电子设备
CN112333448B (zh) 视频编码、解码方法和装置、电子设备和存储介质
CN109688407B (zh) 编码单元的参考块选择方法、装置、电子设备及存储介质
CN112954398B (zh) 编码方法、解码方法、装置、存储介质及电子设备
JP2002523943A (ja) 複数チャンネルデータ圧縮方法
CN111726657A (zh) 直播视频的播放处理方法、装置及服务器
CN110620924A (zh) 编码数据的处理方法、装置、计算机设备及存储介质
US20220408097A1 (en) Adaptively encoding video frames using content and network analysis
CN116456116A (zh) 时域滤波方法、装置、电子设备及计算机存储介质
RU2270530C2 (ru) Способ и устройство для запоминания и обработки видеоинформации следующих по времени друг за другом изображений
CN116489385A (zh) 视频编码方法、解码方法、装置、电子设备及存储介质
CN116233447A (zh) 图像组尺寸确定方法、电子设备及存储介质
US11778224B1 (en) Video pre-processing using encoder-aware motion compensated residual reduction
CN111212288B (zh) 视频数据的编解码方法、装置、计算机设备和存储介质
CN112714336B (zh) 视频分割方法和装置、电子设备、计算机可读存储介质
CN113194324B (zh) 一种视频帧画质增强方法、直播服务端及电子设备
WO2021143678A1 (zh) 视频编解码中的运动信息列表构建方法、装置及设备
WO2024113869A1 (zh) 视频编码方法及相关装置

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40091897

Country of ref document: HK