CN116074528A - 视频编码方法及装置、编码信息调度方法及装置 - Google Patents
视频编码方法及装置、编码信息调度方法及装置 Download PDFInfo
- Publication number
- CN116074528A CN116074528A CN202111277292.XA CN202111277292A CN116074528A CN 116074528 A CN116074528 A CN 116074528A CN 202111277292 A CN202111277292 A CN 202111277292A CN 116074528 A CN116074528 A CN 116074528A
- Authority
- CN
- China
- Prior art keywords
- video
- frame
- discarded
- video frame
- priority coefficient
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本说明书提供视频编码方法及装置、编码信息调度方法及装置,其中视频编码方法包括:获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息;根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数;将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。如此,可以将每一视频帧被丢弃的优先系数也添加至编码信息中,使得后续在编码信息的调度过程中,需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,选择性丢弃增强层中的视频帧,保证了视频质量,提高了用户体验。
Description
技术领域
本说明书涉及视频处理技术领域,特别涉及一种视频编码方法。本说明书同时涉及一种视频编码装置,一种编码信息调度方法,一种编码信息调度装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
随着计算机技术和网络技术的快速发展,各种各样的视频层出不穷,相应地视频编码技术也发展迅速。随着视频编码技术的发展,用户需求也越来越多样化,不仅要求高效率的视频编码,同时还要求编码结果可以满足多种应用场合。随之诞生了SVC(ScalableVideo Coding,可伸缩视频编码)编码方式,采用这种编码方式可以分别从时间、空间和质量三个方面来对视频进行编码,提供了一个时间、空间和质量可伸缩的编码信息,以满足网络传输速率以及终端用户对视频在时间、空间和信噪比等方面的需求。
在SVC编码方式中,最低质量层被称作基本层,增强空间分辨率、时间分辨率或者信噪比强度的层被称作增强层。目前,在传输过程或者解码过程中,若需要丢弃增强层中的帧数据时,往往是直接丢弃整个增强层,如此可能会导致视频质量较差,影响用户体验。
发明内容
有鉴于此,本说明书实施例提供了一种视频编码方法。本说明书同时涉及一种视频编码装置,一种编码信息调度方法,一种编码信息调度装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种视频编码方法,包括:
获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息;
根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数,优先系数用于表示对应视频帧被丢弃的概率;
将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。
根据本说明书实施例的第二方面,提供了一种编码信息调度方法,包括:
获取并解析待解码视频的目标编码信息,得到待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,优先系数用于表示对应视频帧被丢弃的概率;
根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧;
将基本层以及至少一个增强层中除待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将所述解码信息调度至所述解码端。
根据本说明书实施例的第三方面,提供了一种视频编码装置,包括:
编码模块,被配置为获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息;
第一确定模块,被配置为根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数,优先系数用于表示对应视频帧被丢弃的概率;
添加模块,被配置为将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。
根据本说明书实施例的第四方面,提供了一种视频编码装置,包括:
获取模块,被配置为获取并解析待解码视频的目标编码信息,得到待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,优先系数用于表示对应视频帧被丢弃的概率;
第二确定模块,被配置为根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧;
调度模块,被配置为将基本层以及至少一个增强层中除待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将所述解码信息调度至所述解码端。
根据本说明书实施例的第五方面,提供了一种计算设备,包括:
存储器和处理器;
存储器用于存储计算机可执行指令,处理器用于执行计算机可执行指令,以实现任意视频编码方法或者编码信息调度方法的步骤。
根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意视频编码方法或者编码信息调度方法的步骤。
本说明书提供的视频编码方法,可以先获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息;然后根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数,该优先系数用于表示对应视频帧被丢弃的概率;之后,可以将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。
这种情况下,可以在将待编码视频编码为一个基本层和至少一个增强层之后,额外根据具体的视频数据,确定每一视频帧被丢弃的优先系数,该优先系数可以基于视频帧对视频质量的影响确定,并将每一视频帧被丢弃的优先系数也添加至编码信息中,使得后续在编码信息的调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
本说明书提供的编码信息调度方法,可以先获取并解析待解码视频的目标编码信息,得到待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,该优先系数用于表示对应视频帧被丢弃的概率;然后,可以根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧;之后,将基本层以及至少一个增强层中除待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将该解码信息调度至解码端。
这种情况下,待解码视频的目标编码信息中除了可以包括对视频进行编码得到的一个基本层和至少一个增强层之外,还可以包括编码过程中根据具体的视频数据,确定出的每一视频帧被丢弃的优先系数,该优先系数可以表示视频帧对视频质量的影响,因而在编码信息的调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
附图说明
图1是本说明书一实施例提供的一种视频编码方法的流程图;
图2是本说明书一实施例提供的一种编码信息调度方法的流程图;
图3是本说明书一实施例提供的一种时域编码示意图;
图4是本说明书一实施例提供的一种空域/质量域编码示意图;
图5是本说明书一实施例提供的一种视频编码装置的结构示意图;
图6是本说明书一实施例提供的一种编码信息调度装置的结构示意图;
图7是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
可伸缩视频编码(SVC:Scalable Video Coding):或可分级视频编码,是一种视频编码技术和标准,通常可以分为时域可伸缩性、空域可伸缩性和质量可伸缩性。在编码时把视频输出为一个基本层和若干增强层的形式。解码时,基本层可以以较低码率实现基本的视频内容,而随着更多增强层的加入,能实现更高的视频质量。通过这种技术,可以仅用一次编码过程,就能实现灵活可配置的视频码流,用于不同的网络带宽和播放场景。
时域:也叫时间域,自变量是时间,即横轴是时间,纵轴是信号的变化。在视频序列中指代的是多张图像的连续关系。空域:也叫空间域,即所说的像素域,在空域的处理就是在像素级的处理,在视频序列中指代单帧图像信息。
在本说明书中,提供了一种视频编码方法,本说明书同时涉及一种视频编码装置,一种编码信息调度方法,一种编码信息调度装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本说明书一实施例提供的一种视频编码方法的流程图,具体包括以下步骤:
步骤102:获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息。
需要说明的是,待编码视频可以是指等待进行可伸缩视频编码的视频,该待编码视频可以为任何领域、任何场景下的视频,该待编码视频可以是指编码设备本地存储的视频,也可以为从其他设备获取到的视频,如待编码视频可以为聊天过程中实时获取到的聊天视频,或者直播过程中实时获取到的直播视频,又或者还可以为编码设备预先获取并存储在本地的录制视频等。
本说明书中在编码设备获取到待编码视频后,可以采用可伸缩视频编码方式,将获取到的待编码视频编码为一个基本层和至少一个增强层,将通过可伸缩视频编码方式得到的分层信息,作为待编码视频的初始编码信息,后续再添加视频帧被丢弃的优先级信息,才作为待编码视频最终的编码信息。
本实施例一个可选的实施方式中,可以按照时域、空域和/或质量域对待编码视频进行编码,得到该一个基本层和至少一个增强层,也即将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息,具体实现过程可以如下:
根据待编码视频的时域信息、空域信息和/或质量域信息,将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息。
需要说明的是,可伸缩视频编码方式可以分别从时间、空间和质量三个维度来对待编码视频进行编码,提供了一个时间、空间和质量可伸缩的编码信息,在编码时可以把待编码视频输出为一个基本层和若干增强层的形式;也就是说,具体编码时,可以选择一个所需的维度对待编码视频进行编码,也可以从三个维度均对待编码视频进行编码,也即可以从时间、空间和质量三个维度中选择至少一个维度来对待编码视频进行编码。解码时,基本层可以以较低码率实现基本的视频内容,而随着更多增强层的加入,能实现更高的视频质量。通过这种技术,可以仅用一次编码过程,就能实现灵活可配置的视频码流,用于不同的网络带宽和播放场景。
实际实现时,为实现时间可伸缩性,可以采用分级双向预测帧编码方法;为实现空间可伸缩性,可以利用层间的运动、纹理和残差信息,使用分层编码方法;为实现信噪比可伸缩性,可以使用粗粒度可伸缩性和中粒度可伸缩性两种方法,这两种方法采用与空间可伸缩性相似的层间预测方法。
本说明书中可以根据待编码视频的时域信息、空域信息和/或质量域信息,将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息,从而可以分别从时间、空间和质量三个方面来对视频进行编码,提供了一个时间、空间和质量可伸缩的编码信息,以满足网络传输速率以及终端用户对视频在时间、空间和信噪比等方面的需求。
步骤104:根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数,该优先系数用于表示对应视频帧被丢弃的概率。
具体的,在获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息的基础上,进一步地,将根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数,该优先系数用于表示对应视频帧被丢弃的概率。其中,优先系数和被丢弃的概率之间可以成正比关系,也可以成反比关系,即可以为优先系数越高,对应的视频帧被丢弃的概率越大,或者也可以为优先系数越高,对应的视频帧被丢弃的概率越小。
需要说明的是,视频帧对完整视频的视频质量的影响越小,即对用户观看视频的体验影响越小,代表该视频帧被丢弃的概率越大;视频帧对完整视频的视频质量的影响越大,即对用户观看视频的体验影响越大,代表该视频帧被丢弃的概率越小,因而可以根据待编码视频的视频数据,对视频帧包括的具体视频内容进行分析,确定该视频帧对完整视频的视频质量的影响,从而确定该视频帧被丢弃的优先系数。
实际应用中,假设优先系数和被丢弃的概率之间成正比关系,即优先系数越高,对应的视频帧被丢弃的概率越大。也就是说,视频帧对完整视频的视频质量的影响越大,该视频帧被丢弃的优先系数可以设置的越高,视频帧对完整视频的视频质量的影响越小,该视频帧被丢弃的优先系数可以设置的越低,从而使得视频帧的优先系数可以表示该视频帧对完整视频的视频质量的影响,即对用户观看视频的影响,从而代表后续可能被丢弃的概率。
本说明书中在将待编码视频编码为一个基本层和至少一个增强层之后,还可以额外根据具体的视频数据,确定每一视频帧被丢弃的优先系数,该优先系数可以代表视频帧对视频质量的影响,即后续可能被丢弃的概率,使得后续需要丢弃增强层中的帧数据时,可以基于每一视频帧被丢弃的优先系数,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
本实施例一个可选的实施方式中,对于初始编码信息为基于待编码视频的时域信息编码得到的情况,即一个基本层和至少一个增强层为基于待编码视频的时域信息编码得到的情况,可以根据前后两帧视频帧之间的变化来确定视频帧的优先系数,也即根据待编码视频的视频数据,确定待编码视频包括的每一视频帧的优先系数,具体实现过程可以如下:
确定待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度;
根据帧间变化幅度,确定当前视频帧的优先系数。
需要说明的是,当前视频帧和前一视频帧之间的帧间变化幅度越大,说明当前视频帧相较于前一视频帧的变化越激烈,即当前视频帧和前一视频帧越不相似,该当前视频帧若被丢弃,则可能会导致最终解码播放的视频过于突兀,影响用户观看体验,也即变化越激烈的视频帧对于完整视频的视频质量的影响越大,相应对用户观看体验的影响也越大,因而变化越激烈的视频帧被丢弃的概率应该越小。
另外,当前视频帧和前一视频帧之间的帧间变化幅度越小,说明当前视频帧相较于前一视频帧的变化越不明显,即当前视频帧和前一视频帧越相似,该当前视频帧若被丢弃,只是丢弃了视频中较为相似的两帧视频帧中靠后的视频帧,不会导致最终解码播放的视频产生明显变化,也不会影响用户的观看体验,也即变化越不激烈的视频帧对于完整视频的视频质量的影响越小,相应对用户观看体验的影响也越小,因而变化越不激烈的视频帧被丢弃的概率应该越大。
本说明书中对于初始编码信息为基于待编码视频的时域信息编码得到的情况,可以确定待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度,然后根据帧间变化幅度,确定当前视频帧的优先系数,使得确定出的优先系数可以表示当前视频帧与前一视频帧之间的变化程度,从而根据该优先系数可以确定当前视频帧被丢弃后,对完整视频的视频质量的影响,使得后续可以优先丢弃时域上变化小的帧,保留变化剧烈的帧,使得主观看起来视频更加流畅。
本实施例一个可选的实施方式中,可以根据当前视频帧和前一视频帧之间的像素差距,确定当前视频帧和前一视频帧之间的帧间变化幅度,也即确定待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度,具体实现过程可以如下:
针对当前视频帧中的每个像素点,确定当前视频帧和前一视频帧中该像素点之间的像素差值;
根据当前视频帧与前一视频帧中各个像素点之间的像素差值,确定第一像素平均值和第一像素标准差;
将第一像素平均值和第一像素标准差作为帧间变化幅度。
需要说明的是,单帧视频实际上是一个图像,图像是由多个像素点构成,针对当前视频帧中的每个像素点来说,如果当前视频帧和前一视频帧中该像素点之间的像素差值较大,则说明当前视频帧中该像素点与前一视频帧中的该像素点之间的差异越大,也即变化越大。因而根据当前视频帧与前一视频帧中各个像素点之间的像素差值,可以确定当前视频帧与前一视频帧中各个像素点之间的差异,从而确定当前视频帧相较于前一视频帧的变化程度,即帧间变化幅度。
实际应用中,可以通过当前视频帧与前一视频帧中各个像素点之间的第一像素平均值和第一像素标准差,来表示当前视频帧与前一视频帧中各个像素点之间的差异,也即可以将第一像素平均值和第一像素标准差作为帧间变化幅度,体现当前视频帧相较于前一视频帧的变化程度。
具体实现时,可以通过如下公式(1)和公式(2)确定当前视频帧和前一视频帧之间的帧间变化幅度:
TIstd=stdspace[Mn(i,j)] (1)
TIavg=avgspace[Mn(i,j)] (2)
其中,Mn(i,j)=Fn(i,j)-Fn-1(i,j),表示当前视频帧与前一视频帧在像素点(i,j)位置的像素差值,stdspace表示对整帧图像所有像素点(i,j)的Mn求标准差,avgspace表示对整帧图像所有像素点(i,j)的Mn求均值。TIstd为第一像素标准差,TIavg为第一像素平均值,TIstd和TIavg即为当前视频帧和前一视频帧之间的帧间变化幅度。
本说明书中可以全面分析当前视频帧中各个像素点的像素值相较于前一视频帧中该像素点的像素值的变化,从而根据当前视频帧和前一视频帧中各个像素点之间的像素点之间的差距,来表示当前视频帧相较于前一视频帧的变化程度,确定帧间变化幅度的过程简单、准确;且,将各个像素点之间的第一像素平均值和第一像素标准差,共同作为帧间变化幅度,提高了确定当前视频帧相较于前一视频帧的帧间变化幅度的准确性,从而提高后续确定的优先系数的准确性,保证了后续的视频质量。
本实施例一个可选的实施方式中,针对第一像素平均值和第一像素标准差可以预先设置多个分级阈值范围,从而根据对应的分级阈值范围,确定当前视频帧的优先系数,也即根据帧间变化幅度,确定当前视频帧的优先系数,具体实现过程可以如下:
根据第一像素平均值与对应的多个分级阈值范围,以及第一像素标准差与对应的多个分级阈值范围,确定当前视频帧的优先系数。
需要说明的是,针对第一像素平均值可以预先设置对应的多个分级阈值范围,用于判断第一像素平均值所处的阈值范围,如第一像素平均值对应的多个分级阈值范围可以为大于平均值阈值0、小于平均值阈值0且大于平均值阈值1、小于平均值阈值1且大于平均值阈值2等。针对第一像素标准差也可以预先设置对应的多个分级阈值范围,用于判断第一像素标准差所处的阈值范围,如第一像素标准差对应的多个分级阈值范围可以为大于标准差阈值0、小于标准差阈值0且大于标准差阈值1、小于标准差阈值1且大于标准差阈值2等。其中,平均值阈值0、平均值阈值1、平均值阈值2以及标准差阈值0、标准差阈值1、标准差阈值2仅表示阈值编号,不代表具体的数值。
本实施例一个可选的实施方式中,根据第一像素平均值与对应的多个分级阈值范围,以及第一像素标准差与对应的多个分级阈值范围,确定当前视频帧的优先系数,具体实现过程可以如下:
若第一像素平均值位于第一阈值范围,和/或第一像素标准差位于第二阈值范围,则将第一阈值范围和/或第二阈值范围对应的优先系数确定为当前视频帧的优先系数。
需要说明的是,第一像素平均值对应的多个分级阈值范围中,每个分级阈值范围均设置有对应的优先系数,第一像素标准差对应的多个分级阈值范围中,每个分级阈值范围也设置有对应的优先系数。第一阈值范围表示第一像素平均值所处的阈值范围,第二阈值范围表示第一像素标准差所处的阈值范围,第一阈值范围和第二阈值范围为相对应的阈值范围,即第一阈值范围和第二阈值范围对应相同的优先系数,也就是说,第一像素平均值对应的多个分级阈值范围与第一像素标准差对应的多个分级阈值范围相对应,且一组阈值范围对应相同的优先系数。
实际应用中,可以基于与逻辑确定当前视频帧的优先系数,也即第一像素平均值位于第一阈值范围,同时第一像素标准差位于第二阈值范围,此时,可以将第一阈值范围和第二阈值范围对应的优先系数确定为当前视频帧的优先系数。或者,还可以基于或逻辑确定当前视频帧的优先系数,也即第一像素平均值位于第一阈值范围,或者第一像素标准差位于第二阈值范围,此时可以将第一阈值范围或第二阈值范围对应的优先系数确定为当前视频帧的优先系数。
示例的,若TI_标准差>标准差阈值0,或者TI_平均值>平均值阈值0,则当前视频帧的优先系数为标准差阈值0或平均值阈值0对应的优先系数,其中,标准差阈值0、平均值阈值0对应的优先系数相同,如均为0,则当前视频帧的优先系数为0;若标准差阈值1<TI_标准差<=标准差阈值0,或者平均值阈值1<TI_平均值<=平均值阈值0,则当前视频帧的优先系数为标准差阈值1或平均值阈值1对应的优先系数,其中,标准差阈值1、平均值阈值1对应的优先系数相同,如均为1,则当前视频帧的优先系数为1。
本说明书实施例中可以将当前视频帧与前一视频帧中各个像素点之间的第一像素平均值和第一像素标准差,共同作为帧间变化幅度,因而可以针对第一像素平均值和第一像素标准差预先设置多个对应的分级阈值范围,分别确定第一像素平均值所处的分级阈值范围,以及第一像素标准差所处的分级阈值范围,从而根据结合第一像素平均值和第一像素标准差所处的分级阈值范围,确定当前视频帧的优先系数,结合平均值和标准差,共同确定当前视频帧的优先系数,提高了确定准确率。
本实施例一个可选的实施方式中,对于初始编码信息为基于待编码视频的空域信息或质量域信息编码得到的情况,即一个基本层和至少一个增强层为基于待编码视频的空域信息或质量域信息编码得到的情况,可以根据每一视频帧的复杂度和上采样质量来确定该视频帧的优先系数,也即根据待编码视频的视频数据,确定待编码视频包括的每一视频帧的优先系数,具体实现过程可以如下:
针对待编码视频包括的每一视频帧,在空域或质量域确定该视频帧的复杂度;
根据该视频帧的复杂度,确定该视频帧的优先系数。
需要说明的是,SVC空间分级的原理是基本层传输低分辨率视频,加上增强层则能恢复出高分辨视频帧,如果丢弃了增强层,则只能在播放时通过上采样算法恢复出高分辨率视频帧。复杂度低的视频帧和复杂度高的视频帧相比,在只有基本层时,复杂度低的视频帧通过上采样恢复出高分辨率的效果更好。
实际应用中,对于复杂度较低的视频帧,基于基本层和上采样恢复出的视频感知质量更好,对于复杂度较高的视频帧,基于基本层和上采样恢复出的视频感知质量较差。也即,视频帧的复杂度越高,上采样质量越差,该视频帧若被丢弃,则可能会导致最终解码播放的视频清晰度较差,影响用户观看体验,也即复杂度越高的视频帧对于完整视频的视频质量的影响越大,相应对用户观看体验的影响也越大,因而复杂度越高的视频帧被丢弃的概率应该越小。
另外,视频帧的复杂度越低,上采样质量越好,该视频帧若被丢弃,则对最终解码播放的视频的清晰度影响较小,从而不会过于影响用户观看体验,也即复杂度越低的视频帧对于完整视频的视频质量的影响越小,相应对用户观看体验的影响也越小,因而复杂度越低的视频帧被丢弃的概率应该越大。
本说明书中对于初始编码信息为基于待编码视频的空域信息或质量域信息编码得到的情况,可以针对待编码视频包括的每一视频帧,在空域或质量域确定该视频帧的复杂度,然后根据该视频帧的复杂度,确定该视频帧的优先系数,使得确定出的优先系数可以表示该视频帧被丢弃后,对完整视频的视频清晰度的影响,从而使得后续可以优先丢弃复杂度低,即上采样质量好的帧,保证主观清晰度更佳。
本实施例一个可选的实施方式中,可以根据每一视频帧中各个像素点的像素差距,确定该视频帧的复杂度,也即在空域或质量域确定该视频帧的复杂度,具体实现过程可以如下:
确定该视频帧包括的各个像素点的第二像素平均值和第二像素标准差;
将第二像素平均值和第二像素标准差作为该视频帧的复杂度。
需要说明的是,单帧视频实际上是一个图像,图像是由多个像素点构成,针对每一视频帧来说,该视频帧中各个像素点之间的像素差异越大,则说明该视频帧的复杂度越高,该视频帧中各个像素点之间的像素差异越小,则说明该视频帧的复杂度越低。因而,针对每一视频帧来说,可以确定该视频帧包括的各个像素点的第二像素平均值和第二像素标准差,将第二像素平均值和第二像素标准差作为该视频帧的复杂度。
具体实现时,针对每一视频帧,可以通过如下公式(3)和公式(4)确定该视频帧的复杂度:
SIstd=stdspace[Sobel(Fn)] (3)
SIavg=avgspace[Sobel(Fn)] (4)
其中,Sobel(Fn)表示对该视频帧Fn用Sobel滤波,得到逐像素的结果,stdspace表示对整帧图像所有像素点的滤波结果Fn求标准差,avgspace表示对整帧图像所有像素点的滤波结果Fn求平均值。SIstd为第二像素标准差,SIavg为第二像素平均值,SIstd和SIavg即为该视频帧的复杂度。
本说明书实施例中,针对每一视频帧,可以全面分析该视频帧中各个像素点的像素值差异,从而根据各个像素点的像素值差异,来表示该视频帧的复杂度,确定视频帧的复杂度的过程简单、准确;且,将各个像素点之间的第二像素平均值和第二像素标准差,共同作为视频帧的复杂度,提高了确定该视频帧的复杂度的准确性,从而提高后续确定的优先系数的准确性,保证了后续的视频质量。
本实施例一个可选的实施方式中,针对每一视频帧,将第二像素平均值和第二像素标准差作为该视频帧的复杂度,并根据该视频帧的复杂度,确定该视频帧的优先系数时,与上述根据帧间变化幅度,确定当前视频帧的优先系数的具体实现过程相类似,本说明书实施例在此不再赘述。
步骤106:将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。
具体的,在根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数的基础上,进一步地,可以将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。
需要说明的是,在将待编码视频编码为一个基本层和至少一个增强层之后,并不是直接将编码得到的分层信息作为待编码视频最终的编码信息,而是可以进一步确定待编码视频中每一视频帧的优先系数,通过该优先系数表示视频帧后续被删除的概率,并将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频最终的目标编码信息,使得后续对目标编码信息进行解码时,可以根据目标编码信息中包括的每一视频帧的优先系数选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
本实施例一个可选的实施方式中,将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息之后,还可以包括:
对目标编码信息进行解析,获得待解码视频的每一视频帧被丢弃的优先系数;
根据该优先系数,确定并调度待解码视频的解码信息至解码端。
需要说明的是,将每一视频帧的优先系数添加至待编码视频的初始编码信息后,可以得到待编码视频的最终的目标编码信息,后续可以对该目标编码信息进行解析,基于解析得到的每一视频帧被丢弃的优先系数,确定最终调度的解码信息,将该解码信息调度至解码端,以供解码播放。详细的调度过程在下述编码信息调度方法中再进行详细描述。
本说明书提供的视频编码方法,在时域编码得到一个基本层和至少一个增强层之后,还可以确定待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度,然后根据帧间变化幅度,确定当前视频帧的优先系数,使得确定出的优先系数可以表示当前视频帧与前一视频帧之间的变化程度,从而根据该优先系数可以确定当前视频帧被丢弃后,对完整视频的视频质量的影响,使得后续可以优先丢弃时域上变化小的帧,保留变化剧烈的帧,使得主观看起来视频更加流畅。
另外,对于在空域或质量域编码得到一个基本层和至少一个增强层之后,可以针对待编码视频包括的每一视频帧,在空域或质量域确定该视频帧的复杂度,以及该视频帧的上采样质量,然后根据该视频帧的复杂度和上采样质量,确定视频帧的优先系数,使得确定出的优先系数可以表示该视频帧被丢弃后,对完整视频的视频清晰度的影响,从而使得后续可以优先丢弃弃复杂度低、上采样质量好的帧,保证主观清晰度更佳。
也就是说,本说明书可以根据具体的视频数据,确定每一视频帧被丢弃的优先系数,并将每一视频帧被丢弃的优先系数也添加至编码信息中,使得后续在编码信息的调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
图2示出了根据本说明书一实施例提供的一种编码信息调度方法的流程图,具体包括以下步骤:
步骤202:获取并解析待解码视频的目标编码信息,得到待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,该优先系数用于表示对应视频帧被丢弃的概率。
实际应用中,目标编码信息中除了包括对待解码视频编码得到的一个基本层和至少一个增强层之外,还可以包括编码过程中根据具体的视频数据,确定出的每一视频帧被丢弃的优先系数。因而,实际应用中,调度***在对待解码视频的目标编码信息进行调度时,可以先解析待解码视频的目标编码信息,以获得其中的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数。
需要说明的是,该优先系数可以代表视频帧对视频质量的影响,即该视频帧被丢弃的概率,使得在编码信息的调度过程中,可以基于每一视频帧被丢弃的优先系数,选择性丢弃增强层中的视频帧,得到可以调度给解码端的解码信息,如此,可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
步骤204:根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧。
具体的,在获取并解析待解码视频的目标编码信息,得到待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数的基础上,进一步地,将根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧。
需要说明的是,当前解码条件可以是指对待解码视频的目标编码信息进行解码的解码能力,即除了解码基本层之外,还可以解码多少增强层,如当前解码条件可以为当前的网络带宽、播放场景等,如网络带宽越大,可以解码的增强层越多。其中,当前解码条件是解码端反馈给调度***,以供调度***进行调度决策,以确定丢弃哪些视频帧。
实际应用中,根据当前解码条件可以确定出解码端当前的解码能力,即当前可以解码多少视频帧,进而调度***可以确定出当前需要丢弃多少视频帧。然后,调度***可以根据目标编码信息中包括的每一视频帧的优先系数,从至少一个增强层中筛选出待丢弃视频帧,后续丢弃筛选出的待丢弃视频帧,不传输给解码端进行解码。
另外,由于编码过程中确定出的每一视频帧被丢弃的优先系数可以代表视频帧对视频质量的影响,即可能被丢弃的概率,使得在调度过程中需要丢弃增强层中的帧数据时,可以基于每一视频帧被丢弃的优先系数,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
本实施例一个可选的实施方式中,在从至少一个增强层中筛选出待丢弃视频帧时,可以先确定从各个增强层中的哪些增强层中进行筛选,也即根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧,具体实现过程可以如下:
根据当前解码条件,确定至少一个增强层中待丢弃的目标增强层;
根据优先系数,从目标增强层包括的各个视频帧中筛选出待丢弃视频帧。
需要说明的是,不同的解码条件,可以解码的层数不同,如对于网络带宽较好的情况下,除了解码基本层之外,还可以解码多个增强层,甚至于解码全部的增强层,网络带宽越好,可以解码的增强层会越多;对于网络带宽不好的情况下,除了解码基本层之外,能够解码的增强层较少,甚至于只能解码基本层,网络带宽越差,可以解码的增强层会越少,甚至没有。
因而,实际应用中,可以预先设置不同的解码条件对应的待丢弃层数,从而后续调度***可以根据当前解码条件,确定至少一个增强层中待丢弃的目标增强层,该目标增强层可以为当前解码条件下不能够完全解码的增强层。以在时域进行编码来说,假设待解码视频的目标编码信息中包括一个基本层T0和3个增强层T1、T2、T3,那么在网络带宽较好的情况下,待丢弃的目标增强层可以为T3层,在网络带宽不好的情况下,待丢弃的目标增强层可以为T3和T2层。
需要说明的是,在增强层为多个的情况下,确定至少一个增强层中待丢弃的目标增强层时,需要按照编码得到的增强层的顺序,从最高的增强层,依次向下确定。也即,在调度过程中,需要丢弃增强层时,需要从最高的增强层,依次向下丢弃。
另外,在确定出目标增强层之后,无需直接丢弃全部的目标增强层,还可以进一步根据优先系数,从目标增强层包括的各个视频帧中筛选出待丢弃视频帧。也就是说,还可以进一步根据视频帧的优先系数,从目标增强层包括的各个视频帧中筛选出对视频质量、用户观看体验影响不大的视频帧进行丢弃,保留目标增强层中对视频质量、用户观看体验影响较大的视频帧,也即可以优先丢弃对视频质量、用户观看体验影响较小的视频帧,保证了解码得到的视频的视频质量,保证了用户体验。
本实施例一个可选的实施方式中,可以根据当前解码条件,确定出当前最少需要丢弃的视频帧的数目,然后根据各个视频帧的优先系数,从确定出的目标增强层中,筛选出相应数目的视频帧作为待丢弃视频帧,后续丢弃相应内容,不进行解码,也即根据优先系数,从目标增强层包括的各个视频帧中筛选出待丢弃视频帧,具体实现过程可以如下:
根据当前解码条件,确定当前待丢弃帧数;
基于目标增强层包括的各个视频帧被丢弃的优先系数,按照预设顺序依次筛选出当前待丢弃帧数的目标视频帧;
将筛选出的目标视频帧作为待丢弃视频帧。
需要说明的是,不同的解码条件还可以预先设置不同的待丢弃帧数,从而便于解码设备可以根据当前解码条件,获取到预先设置的对应的当前待丢弃帧数。
实际应用中,目标增强层包括的各个视频帧都有对应的被丢弃的优先系数,该优先系数可以表示丢弃对应视频帧的先后顺序。一种可能的实现方式中,优先系数和被丢弃的概率之间可以成正比关系,即优先系数越高,对应的视频帧被丢弃的概率越大,此时需要按照目标增强层包括的各个视频帧的优先系数,从高至低依次筛选出当前待丢弃帧数的目标视频帧(即预设顺序为优先系数从高至低),筛选出的目标视频帧即为待丢弃视频帧,后续不进行解码。
另一种可能的实现方式中,优先系数和被丢弃的概率之间可以成反比关系,即优先系数越高,对应的视频帧被丢弃的概率越小,此时需要按照目标增强层包括的各个视频帧的优先系数,从低至高依次筛选出当前待丢弃帧数的目标视频帧(即此时预设顺序为优先系数从低至高),筛选出的目标视频帧即为待丢弃视频帧,后续不进行解码。
本实施例一个可选的实施方式中,预设顺序为优先系数从高至低的情况下,基于目标增强层包括的各个视频帧的优先系数,按照预设顺序依次筛选出当前待丢弃帧数的目标视频帧,具体实现过程可以如下:
确定参考视频帧中优先系数最大的第一视频帧,参考视频帧为目标增强层包括的各个视频帧;
若第一视频帧的数目超过当前待丢弃帧数,则选取当前待丢弃帧数的第一视频帧作为待丢弃视频帧,得到当前待丢弃帧数的目标视频帧;
若第一视频帧的数目未超过待丢弃的视频帧数目,则将各个第一视频帧作为待丢弃视频帧,并继续从目标增强层包括的剩余视频帧中筛选待丢弃视频帧,直至得到当前待丢弃帧数的目标视频帧。
需要说明的是,预设顺序为优先系数从高至低,说明优先系数越高,对应的视频帧被丢弃的概率越大,即优先系数越高,对视频质量、用户体验的影响越小,可以优先丢弃优先系数高的视频帧。
实际应用中,可以先确定目标增强层包括的各个视频帧中优先系数最大的第一视频帧,然后确定第一视频帧的数目是否超过当前待丢弃帧数,若超过,则说明优先系数最大的第一视频帧即可满足需要丢弃的视频帧的数目要求,此时可以选取当前待丢弃帧数的第一视频帧作为待丢弃视频帧,即可得到要求数目(即当前待丢弃帧数)的目标视频帧。
另外,若第一视频帧的数目未超过待丢弃的视频帧数目,则说明优先系数最大的第一视频帧不能够满足需要丢弃的视频帧的数目要求,因而需要继续丢弃下一优先系数的视频帧,此时可以先将各个第一视频帧作为待丢弃视频帧,然后继续从目标增强层包括的剩余视频帧中筛选剩余的待丢弃视频帧,直至得到要求数目(即当前待丢弃帧数)的目标视频帧。
本实施例一个可选的实施方式中,继续从目标增强层包括的剩余视频帧中筛选待丢弃视频帧,直至得到当前待丢弃帧数的目标视频帧,具体实现过程可以如下:
将当前待丢弃帧数中除第一视频帧的数目之外的剩余数目,作为更新后的当前待丢弃帧数;
将目标增强层包括的各个视频帧中除第一视频帧之外的视频帧作为参考视频帧;
返回执行确定参考视频帧中优先系数最大的第一视频帧的操作步骤,直至确定出的第一视频帧的数目超过当前待丢弃帧数,得到当前待丢弃帧数的目标视频帧。
需要说明的是,由于已经将当前优先系数最大的第一视频帧确定为待丢弃视频帧,当前待丢弃帧数中除第一视频帧的数目之外的剩余数目,是需要继续筛选出的待丢弃视频帧的数目,因而可以将当前待丢弃帧数中除第一视频帧的数目之外的剩余数目,作为更新后的当前待丢弃帧数,进行后续筛选。
另外,目标增强层包括的第一视频帧已经确定为待丢弃视频帧,需要从目标增强层包括的各个视频帧中除第一视频帧之外的视频帧中继续进行筛选,因而可以将目标增强层包括的各个视频帧中除第一视频帧之外的视频帧作为参考视频帧,继续执行确定参考视频帧中优先系数最大的第一视频帧,以及后续操作步骤,继续筛选待丢弃视频帧,直至筛选出满足数目要求的待丢弃视频帧。
需要说明的是,由于在对视频进行SVC编码,得到一个基本层和至少一个增强层时,高层对低层有依赖关系,时域分层越靠下的层是被参考越多的层,该层中的视频帧不能轻易丢弃,靠上的是被参考少或不被参考的层,该层中的视频帧可以随意丢弃。
实际应用中,在确定出目标增强层后,根据优先系数,从目标增强层包括的各个视频帧中筛选出待丢弃视频帧时,若存在优先系数相同的视频帧,则可以优先丢弃更高的增强层中的视频帧,即优先丢弃被参考少或不被参考的视频帧。如此,在确定待丢弃视频帧时,即遵循了SVC编码过程中的层级顺序,又加入了各个视频帧的优先系数,从而优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
示例的,图3是本说明书一实施例提供的一种时域编码示意图,如图3所示,时域编码得到的时域分层为一个基本层T0,3个增强层T1、T2、T3,图3中T0、T1、T2、T3之间的参考关系可以表示各个层的视频帧之间的依赖关系,该参考关系可以是指视频编码中的视频帧之间的编码参考关系,也即解码某一视频帧时,需要参考的视频帧,如需解码视频帧4,则需要先解码视频帧0和视频帧8,如需解码视频帧2,则需要先解码视频帧0和视频帧4,依此类推。
假设当前解码条件对应的待丢弃层数为2层,那么从高至低可以确定出待丢弃的目标增强层为T3和T2,且假设当前解码条件对应的当前待丢弃帧数为5帧。如图3所示,T2和T3层包括视频帧1、视频帧2、视频帧3、视频帧5、视频帧6、视频帧7,且视频帧1被丢弃的优先系数为P2,视频帧2被丢弃的优先系数也为P2,视频帧3被丢弃的优先系数为P1,视频帧5被丢弃的优先系数为P0,视频帧6被丢弃的优先系数为P0,视频帧7被丢弃的优先系数为P1。
首先确定T2和T3层中优先系数最大的为视频帧1和视频帧2,个数为2,未超过当前待丢弃帧数5帧,因而将视频帧1和视频帧2作为待丢弃视频帧,并更新得到当前待丢弃帧数为3帧。然后,确定T2和T3层中除了视频帧1和视频帧2之外优先系数最大的为视频帧3和视频帧7,个数为2,未超过当前待丢弃帧数3帧,因而将视频帧3和视频帧7作为待丢弃视频帧,并更新得到当前待丢弃帧数为1帧。
然后,确定T2和T3层中除了视频帧1、视频帧2、视频帧3和视频帧7之外优先系数最大的为视频帧5和视频帧6,个数为2,超过了当前待丢弃帧数1帧,因而需要从视频帧5和视频帧6中选择一个作为待丢弃视频帧,由于视频帧5所处的层级为T3,视频帧6所处的层级为T2,视频帧6所处的层级更低,被其他视频帧依赖较多,因而优先选择丢弃T3层中的视频帧5,保留T2层中视频帧6(即优先系数相同时,优先丢弃高层,保留低层),即此时将视频帧5确定为待丢弃视频帧,此时可以得到最终筛选出的待丢弃视频帧为视频帧1、视频帧2、视频帧3、视频帧5和视频帧7。
由上可知,如果要丢弃T3层,则可以先丢视频帧1(P2),其次是视频帧3、视频帧7(P1),最后是视频帧5(P0)。如果要同时丢弃T3+T2层,则优先丢视频帧1、视频帧2,其次是视频帧3、视频帧7,最后才是视频帧5、视频帧6。
又一示例,图4是本说明书一实施例提供的一种空域/质量域编码示意图,如图4所示,空域/质量域编码得到空域/质量域编码分层为一个基本层D0,1个增强层D1,D1层包括视频帧1、视频帧2、视频帧3、视频帧5,且视频帧1被丢弃的优先系数为P0,视频帧2被丢弃的优先系数也为P0,视频帧3被丢弃的优先系数为P1,视频帧4被丢弃的优先系数为P1,视频帧5被丢弃的优先系数为P0。
根据分层结果,可以优先丢弃级别高的层,假设当前解码条件对应的待丢弃层数为1层,那么从高至低可以确定出待丢弃的目标增强层为D1,且假设当前解码条件对应的当前待丢弃帧数为3帧。
首先确定D1层中优先系数最大的为视频帧3和视频帧4,个数为2,未超过当前待丢弃帧数3帧,因而将视频帧3和视频帧4作为待丢弃视频帧,并更新得到当前待丢弃帧数为1帧。然后,确定D1层中除了视频帧3和视频帧4之外优先系数最大的为视频帧1、视频帧2和视频帧5,个数为3,超过了当前待丢弃帧数1帧,因而将视频帧1、视频帧2和视频帧5中的任意一个确定为待丢弃视频帧,假设为视频帧1,此时可以得到最终筛选出的待丢弃视频帧为视频帧1、视频帧3和视频帧4。
需要说明的是,待解码视频的目标编码信息中除了可以包括对视频进行编码得到的一个基本层和至少一个增强层之外,还可以包括编码过程中根据具体的视频数据,确定出的每一视频帧被丢弃的优先系数,该优先系数可以表示视频帧对视频质量的影响,因而在编码信息的调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
步骤206:将基本层以及至少一个增强层中除待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将该解码信息调度至解码端。
需要说明的是,根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧的基础上,进一步地,可以将基本层以及至少一个增强层中除待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将该解码信息调度至所述解码端。
实际应用中,根据视频帧被丢弃的优先系数,从至少一个增强层中筛选出待丢弃视频帧之后,可以放弃待解码视频的增强层中筛选出的待丢弃视频帧,不进行调度传输,只将剩余的视频帧调度传输至解码端,以供解码端进行解码,得到对应的解码视频,进行播放。
本说明书提供的编码信息调度方法,待解码视频的目标编码信息中除了可以包括对视频进行编码得到的一个基本层和至少一个增强层之外,还可以包括编码过程中根据具体的视频数据,确定出的每一视频帧被丢弃的优先系数,该优先系数可以表示视频帧对视频质量的影响,因而在调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
与上述方法实施例相对应,本说明书还提供了视频编码装置实施例,图5示出了本说明书一实施例提供的一种视频编码装置的结构示意图。如图5所示,该装置包括:
编码模块502,被配置为获取待编码视频,并将待编码视频编码为一个基本层和至少一个增强层,得到待编码视频的初始编码信息;
第一确定模块504,被配置为根据待编码视频的视频数据,确定待编码视频的每一视频帧被丢弃的优先系数,优先系数用于表示对应视频帧被丢弃的概率;
添加模块506,被配置为将每一视频帧的优先系数添加至待编码视频的初始编码信息中,得到待编码视频的目标编码信息。
可选地,初始编码信息为基于待编码视频的时域信息编码得到;第一确定模块504进一步被配置为:
确定待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度;
根据帧间变化幅度,确定当前视频帧的优先系数。
可选地,第一确定模块504进一步被配置为:
针对所述当前视频帧中的每个像素点,确定所述当前视频帧和所述前一视频帧中所述像素点之间的像素差值;
根据所述当前视频帧与所述前一视频帧中各个像素点之间的像素差值,确定第一像素平均值和第一像素标准差;
将所述第一像素平均值和所述第一像素标准差作为所述帧间变化幅度。
可选地,第一确定模块504进一步被配置为:
根据所述第一像素平均值与对应的多个分级阈值范围,以及所述第一像素标准差与对应的多个分级阈值范围,确定所述当前视频帧的优先系数。
可选地,第一确定模块504进一步被配置为:
若所述第一像素平均值位于第一阈值范围,和/或第一像素标准差位于第二阈值范围,则将所述第一阈值范围和/或第二阈值范围对应的优先系数确定为所述当前视频帧的优先系数。
可选地,初始编码信息为基于待编码视频的空域信息或质量域信息编码得到;第一确定模块504进一步被配置为:
针对待编码视频包括的每一视频帧,在空域或质量域确定视频帧的复杂度;
根据视频帧的复杂度,确定视频帧的优先系数。
可选地,第一确定模块504进一步被配置为:
确定所述视频帧包括的各个像素点的第二像素平均值和第二像素标准差;
将所述第二像素平均值和所述第二像素标准差作为所述视频帧的复杂度。
本说明书提供的视频编码装置,可以在将待编码视频编码为一个基本层和至少一个增强层之后,额外根据具体的视频数据,确定每一视频帧被丢弃的优先系数,该优先系数可以基于视频帧对视频质量的影响确定,并将每一视频帧被丢弃的优先系数也添加至编码信息中,使得后续在编码信息的调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
上述为本实施例的一种视频编码装置的示意性方案。需要说明的是,该视频编码装置的技术方案与上述的视频编码方法的技术方案属于同一构思,视频编码装置的技术方案未详细描述的细节内容,均可以参见上述视频编码方法的技术方案的描述。
与上述方法实施例相对应,本说明书还提供了编码信息调度装置实施例,图6示出了本说明书一实施例提供的一种编码信息调度装置的结构示意图。如图6所示,该装置包括:
获取模块602,被配置为获取并解析待解码视频的目标编码信息,得到待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,优先系数用于表示对应视频帧被丢弃的概率;
第二确定模块604,被配置为根据解码端反馈的当前解码条件和优先系数,确定至少一个增强层中的待丢弃视频帧;
调度模块606,被配置为将基本层以及至少一个增强层中除待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将解码信息调度至解码端。
可选地,第二确定模块604进一步被配置为:
根据当前解码条件,确定至少一个增强层中待丢弃的目标增强层;
根据优先系数,从目标增强层包括的各个视频帧中筛选出待丢弃视频帧。
可选地,第二确定模块604进一步被配置为:
根据当前解码条件,确定当前待丢弃帧数;
基于目标增强层包括的各个视频帧的优先系数,按照预设顺序依次筛选出当前待丢弃帧数的目标视频帧;
将筛选出的目标视频帧作为待丢弃视频帧。
可选地,预设顺序为优先系数从高至低;第二确定模块604进一步被配置为:
确定参考视频帧中优先系数最大的第一视频帧,参考视频帧为目标增强层包括的各个视频帧;
若第一视频帧的数目超过当前待丢弃帧数,则选取当前待丢弃帧数的第一视频帧作为待丢弃视频帧,得到当前待丢弃帧数的目标视频帧;
若第一视频帧的数目未超过待丢弃的视频帧数目,则将各个第一视频帧作为待丢弃视频帧,并继续从目标增强层包括的剩余视频帧中筛选待丢弃视频帧,直至得到当前待丢弃帧数的目标视频帧。
可选地,第二确定模块604进一步被配置为:
将当前待丢弃帧数中除第一视频帧的数目之外的剩余数目,作为更新后的当前待丢弃帧数;
将目标增强层包括的各个视频帧中除第一视频帧之外的视频帧作为参考视频帧;
返回执行确定参考视频帧中优先系数最大的第一视频帧的操作步骤,直至确定出的第一视频帧的数目超过当前待丢弃帧数,得到当前待丢弃帧数的目标视频帧。
本说明书提供的编码信息调度装置,待解码视频的目标编码信息中除了可以包括对视频进行编码得到的一个基本层和至少一个增强层之外,还可以包括编码过程中根据具体的视频数据,确定出的每一视频帧被丢弃的优先系数,该优先系数可以表示视频帧对视频质量的影响,因而在调度过程中,若需要丢弃增强层中的帧数据时,可以基于编码过程确定的每一视频帧被丢弃的优先系数,从增强层中按照优先系数的高低,选择性丢弃增强层中的视频帧,从而可以优先丢弃对视频质量影响小的帧数据,保证了视频质量,提高了用户体验。
上述为本实施例的一种编码信息调度装置的示意性方案。需要说明的是,该编码信息调度装置的技术方案与上述的编码信息调度方法的技术方案属于同一构思,编码信息调度装置的技术方案未详细描述的细节内容,均可以参见上述编码信息调度方法的技术方案的描述。
图7示出了根据本说明书一实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
其中,处理器720用于执行如下计算机可执行指令,以实现任意视频编码方法或者编码信息调度方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的视频编码方法或者编码信息调度方法方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述视频编码方法或者编码信息调度方法方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于实现任意视频编码方法或者编码信息调度方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的视频编码方法或者编码信息调度方法方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述视频编码方法或者编码信息调度方法方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
计算机指令包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (16)
1.一种视频编码方法,其特征在于,所述方法包括:
获取待编码视频,并将所述待编码视频编码为一个基本层和至少一个增强层,得到所述待编码视频的初始编码信息;
根据所述待编码视频的视频数据,确定所述待编码视频的每一视频帧被丢弃的优先系数,所述优先系数用于表示对应视频帧被丢弃的概率;
将所述每一视频帧的优先系数添加至所述待编码视频的初始编码信息中,得到所述待编码视频的目标编码信息。
2.根据权利要求1所述的视频编码方法,其特征在于,所述初始编码信息为基于所述待编码视频的时域信息编码得到;
所述根据所述待编码视频的视频数据,确定所述待编码视频包括的每一视频帧的优先系数,包括:
确定所述待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度;
根据所述帧间变化幅度,确定所述当前视频帧的优先系数。
3.根据权利要求2所述的视频编码方法,其特征在于,所述确定所述待编码视频的当前视频帧和前一视频帧之间的帧间变化幅度,包括:
针对所述当前视频帧中的每个像素点,确定所述当前视频帧和所述前一视频帧中所述像素点之间的像素差值;
根据所述当前视频帧与所述前一视频帧中各个像素点之间的像素差值,确定第一像素平均值和第一像素标准差;
将所述第一像素平均值和所述第一像素标准差作为所述帧间变化幅度。
4.根据权利要求3所述的视频编码方法,其特征在于,所述根据所述帧间变化幅度,确定所述当前视频帧的优先系数,包括:
根据所述第一像素平均值与对应的多个分级阈值范围,以及所述第一像素标准差与对应的多个分级阈值范围,确定所述当前视频帧的优先系数。
5.根据权利要求4所述的视频编码方法,其特征在于,所述根据所述第一像素平均值与对应的多个分级阈值范围,以及所述第一像素标准差与对应的多个分级阈值范围,确定所述当前视频帧的优先系数,包括:
若所述第一像素平均值位于第一阈值范围,和/或第一像素标准差位于第二阈值范围,则将所述第一阈值范围和/或第二阈值范围对应的优先系数确定为所述当前视频帧的优先系数。
6.根据权利要求2所述的视频编码方法,其特征在于,所述初始编码信息为基于所述待编码视频的空域信息或质量域信息编码得到;
所述根据所述待编码视频的视频数据,确定所述待编码视频包括的每一视频帧的优先系数,包括:
针对所述待编码视频包括的每一视频帧,在空域或质量域确定所述视频帧的复杂度;
根据所述视频帧的复杂度,确定所述视频帧的优先系数。
7.根据权利要求6所述的视频编码方法,其特征在于,所述在空域或质量域确定所述视频帧的复杂度,包括:
确定所述视频帧包括的各个像素点的第二像素平均值和第二像素标准差;
将所述第二像素平均值和所述第二像素标准差作为所述视频帧的复杂度。
8.一种编码信息调度方法,其特征在于,所述方法包括:
获取并解析待解码视频的目标编码信息,得到所述待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,所述优先系数用于表示对应视频帧被丢弃的概率;
根据解码端反馈的当前解码条件和所述优先系数,确定所述至少一个增强层中的待丢弃视频帧;
将所述基本层以及所述至少一个增强层中除所述待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将所述解码信息调度至所述解码端。
9.根据权利要求8所述的编码信息调度方法,其特征在于,所述根据解码端反馈的当前解码条件和所述优先系数,确定所述至少一个增强层中的待丢弃视频帧,包括:
根据所述当前解码条件,确定所述至少一个增强层中待丢弃的目标增强层;
根据所述优先系数,从所述目标增强层包括的各个视频帧中筛选出所述待丢弃视频帧。
10.根据权利要9所述的编码信息调度方法,其特征在于,所述根据所述优先系数,从所述目标增强层包括的各个视频帧中筛选出所述待丢弃视频帧,包括:
根据所述当前解码条件,确定当前待丢弃帧数;
基于所述目标增强层包括的各个视频帧的优先系数,按照预设顺序依次筛选出所述当前待丢弃帧数的目标视频帧;
将筛选出的目标视频帧作为所述待丢弃视频帧。
11.根据权利要求10所述的编码信息调度方法,其特征在于,所述预设顺序为优先系数从高至低;
所述基于所述目标增强层包括的各个视频帧的优先系数,按照预设顺序依次筛选出所述当前待丢弃帧数的目标视频帧,包括:
确定参考视频帧中优先系数最大的第一视频帧,所述参考视频帧为所述目标增强层包括的各个视频帧;
若所述第一视频帧的数目超过所述当前待丢弃帧数,则选取所述当前待丢弃帧数的第一视频帧作为所述待丢弃视频帧,得到所述当前待丢弃帧数的目标视频帧;
若所述第一视频帧的数目未超过所述待丢弃的视频帧数目,则将各个所述第一视频帧作为所述待丢弃视频帧,并继续从所述目标增强层包括的剩余视频帧中筛选所述待丢弃视频帧,直至得到所述当前待丢弃帧数的目标视频帧。
12.根据权利要求11所述的编码信息调度方法,其特征在于,所述从所述目标增强层包括的剩余视频帧中筛选所述待丢弃视频帧,直至得到所述当前待丢弃帧数的目标视频帧,包括:
将所述当前待丢弃帧数中除所述第一视频帧的数目之外的剩余数目,作为更新后的当前待丢弃帧数;
将所述目标增强层包括的各个视频帧中除所述第一视频帧之外的视频帧作为所述参考视频帧;
返回执行所述确定参考视频帧中优先系数最大的第一视频帧的操作步骤,直至确定出的第一视频帧的数目超过所述当前待丢弃帧数,得到所述当前待丢弃帧数的目标视频帧。
13.一种视频编码装置,其特征在于,所述装置包括:
编码模块,被配置为获取待编码视频,并将所述待编码视频编码为一个基本层和至少一个增强层,得到所述待编码视频的初始编码信息;
第一确定模块,被配置为根据所述待编码视频的视频数据,确定所述待编码视频的每一视频帧被丢弃的优先系数,所述优先系数用于表示对应视频帧被丢弃的概率;
添加模块,被配置为将所述每一视频帧的优先系数添加至所述待编码视频的初始编码信息中,得到所述待编码视频的目标编码信息。
14.一种编码信息调度装置,其特征在于,所述装置包括:
获取模块,被配置为获取并解析待解码视频的目标编码信息,得到所述待解码视频的一个基本层、至少一个增强层以及待解码视频的每一视频帧被丢弃的优先系数,所述优先系数用于表示对应视频帧被丢弃的概率;
第二确定模块,被配置为根据解码端反馈的当前解码条件和所述优先系数,确定所述至少一个增强层中的待丢弃视频帧;
调度模块,被配置为将所述基本层以及所述至少一个增强层中除所述待丢弃视频帧之外的剩余视频帧作为待解码视频的解码信息,并将所述解码信息调度至所述解码端。
15.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现权利要求1至7任意一项所述视频编码方法或者权利要求8至12任意一项所述编码信息调度方法的步骤。
16.一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要求1至7任意一项所述视频编码方法或者权利要求8至12任意一项所述编码信息调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111277292.XA CN116074528A (zh) | 2021-10-29 | 2021-10-29 | 视频编码方法及装置、编码信息调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111277292.XA CN116074528A (zh) | 2021-10-29 | 2021-10-29 | 视频编码方法及装置、编码信息调度方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074528A true CN116074528A (zh) | 2023-05-05 |
Family
ID=86177316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111277292.XA Pending CN116074528A (zh) | 2021-10-29 | 2021-10-29 | 视频编码方法及装置、编码信息调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074528A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116708938A (zh) * | 2023-08-03 | 2023-09-05 | 腾讯科技(深圳)有限公司 | 视频处理方法、装置、设备及存储介质 |
-
2021
- 2021-10-29 CN CN202111277292.XA patent/CN116074528A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116708938A (zh) * | 2023-08-03 | 2023-09-05 | 腾讯科技(深圳)有限公司 | 视频处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | End-to-End Blind Quality Assessment of Compressed Videos Using Deep Neural Networks. | |
US10257528B2 (en) | Method and apparatus for adaptive encoding and decoding based on image quality | |
US11412229B2 (en) | Method and apparatus for video encoding and decoding | |
Vranješ et al. | Review of objective video quality metrics and performance comparison using different databases | |
US11232598B2 (en) | Distinct encoding and decoding of stable information and transient/stochastic information | |
Lee et al. | A subjective and objective study of space-time subsampled video quality | |
US11601617B2 (en) | Method for forming an output image sequence from an input image sequence, method for reconstructing an input image sequence from an output image sequence, associated devices, server equipment, client equipment and computer programs | |
KR20150010903A (ko) | 모바일 단말 화면을 위한 3k해상도를 갖는 디스플레이 영상 생성 방법 및 장치 | |
EP4365820A1 (en) | Video super-resolution network, and video super-resolution, encoding and decoding processing method and device | |
Lee et al. | DPICT: Deep progressive image compression using trit-planes | |
KR20060027778A (ko) | 베이스 레이어를 이용하는 영상신호의 엔코딩/디코딩 방법및 장치 | |
KR102602690B1 (ko) | 화질에 기반한 적응적 부호화 및 복호화를 위한 방법 및 장치 | |
Göring et al. | Modular framework and instances of pixel-based video quality models for UHD-1/4K | |
JPWO2018131524A1 (ja) | 画像処理装置及び画像処理方法 | |
Rao et al. | Avqbits—adaptive video quality model based on bitstream information for various video applications | |
Shahid et al. | Subjective quality assessment of H. 264/AVC encoded low resolution videos | |
CN116074528A (zh) | 视频编码方法及装置、编码信息调度方法及装置 | |
US20190007685A1 (en) | Devices and method for video encoding and reconstruction | |
Topiwala et al. | Deep learning techniques in video coding and quality analysis | |
Akramullah et al. | Video quality metrics | |
Herrou et al. | Quality-driven variable frame-rate for green video coding in broadcast applications | |
US20060067410A1 (en) | Method for encoding and decoding video signals | |
US11297353B2 (en) | No-reference banding artefact predictor | |
Shahid | Methods for objective and subjective video quality assessment and for speech enhancement | |
CN110636295B (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 |