一种视频质量评估方法和装置转让专利

申请号 : CN201210121335.X

文献号 : CN103379360B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 高山孙李娜谢清鹏

申请人 : 华为技术有限公司

摘要 :

本发明公开了一种视频质量评估方法,包括:获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息。根据所述码率或所述帧率计算得到所述视频数据的视频基准质量;根据所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数。根据所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。使用有效丢包次数能够更有效的对视频进行准确评估,算法复杂度低。本发明还公开了一种视频质量评估装置。

权利要求 :

1.一种视频质量评估方法,其特征在于,包括:

获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息中的至少一种,所述数据包信息包括:RTP(Real-time Transport Protocol实时传输协议)包信息和TS(Transport Stream传输流)包信息中的至少之一;

根据所述码率或所述帧率计算得到所述视频数据的视频基准质量;

根据所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数;

所述根据所述连续丢失的数据包数目和所述第一数据包阈值计算有效丢包次数包括:若所述连续丢失的数据包数目大于所述第一数据包阈值,则根据所述连续丢失的数据包数目和所述第一数据包阈值更新丢包次数计数值,若所述连续丢失的数据包数目不大于所述第一数据包阈值,则根据所述连续丢失的数据包数目更新丢包次数计数值,所述根据所述连续丢失的数据包数目更新丢包次数计数值包括:根据所述数据包信息计算两次丢包之间正确接收到的数据包数目;

当所述连续丢失的数据包数目大于第二数据包阈值时,

若所述正确接收到的数据包数目大于第二数据包阈值,根据所述连续丢失的数据包数目和所述第二数据包阈值更新所述丢包次数计数值,若所述正确接收到的数据包数目不大于第二数据包阈值,根据所述连续丢失的数据包数目、所述正确接收到的数据包数目和所述第二数据包阈值更新所述丢包次数计数值;

当所述连续丢失的数据包数目不大于第二数据包阈值时,

若所述正确接收到的数据包数目大于第二数据包阈值,所述丢包次数计数值增加一;

若所述正确接收到的数据包数目不大于第二数据包阈值,根据所述正确接收到的数据包数目和第二数据包阈值更新所述丢包次数计数值,重复上述步骤,直到待评分视频数据处理完毕,所述丢包次数计数值即为所述有效丢包次数;

根据所述有效丢包次数计算得到视频数据的视频丢包失真质量;

根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。

2.如权利要求1所述的视频质量评估方法,其特征在于,根据所述码率或帧率设置所述第一数据包阈值。

3.如权利要求1所述的视频质量评估方法,其特征在于,所述方法还包括:在根据所述有效丢包次数计算得到视频数据的视频丢包失真质量之前,若所述视频数据的有效丢包次数大于第三预定阈值,则将所述的最终的视频质量直接判定为预设等级。

4.一种视频质量评估装置,其特征在于,包括:

获取模块,用于获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息中的至少一种,所述数据包信息包括:RTP(Real-time Transport Protocol实时传输协议)包信息和TS(Transport Stream传输流)包信息中的至少之一;

基准质量生成模块,用于根据获取模块获得的所述码率或所述帧率计算得到所述视频数据的视频基准质量;

有效丢包次数生成模块,用于根据获取模块获得的所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数;

所述有效丢包次数生成模块包括:

判断单元,用于判断所述连续丢失的数据包数目是否大于所述第一数据包阈值,丢包次数计数值单元,若所述连续丢失的数据包数目大于所述第一数据包阈值,则丢包次数计数值单元用于根据所述连续丢失的数据包数目和所述第一数据包阈值更新丢包次数计数值,所述丢包次数计数值单元还用于,若所述连续丢失的数据包数目不大于所述第一数据包阈值,则根据所述连续丢失的数据包数目更新丢包次数计数值,所述丢包次数计数值单元还用于,

根据所述数据包信息计算两次丢包之间正确接收到的数据包数目;

当所述连续丢失的数据包数目大于第二数据包阈值时,

若所述正确接收到的数据包数目大于第二数据包阈值,根据所述连续丢失的数据包数目和所述第二数据包阈值更新所述丢包次数计数值,若所述正确接收到的数据包数目不大于第二数据包阈值,根据所述连续丢失的数据包数目、所述正确接收到的数据包数目和所述第二数据包阈值更新所述丢包次数计数值;

当所述连续丢失的数据包数目不大于第二数据包阈值时,

若所述正确接收到的数据包数目大于第二数据包阈值,所述丢包次数计数值增加一,若所述正确接收到的数据包数目不大于第二数据包阈值,根据所述正确接收到的数据包数目和第二数据包阈值更新所述丢包次数计数值;

重复上述步骤,直到待评分视频数据处理完毕,所述丢包次数计数值即为所述有效丢包次数;

丢包失真质量生成模块,用于根据有效丢包次数生成模块获得的所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;

最终质量生成模块,用于根据基准质量生成模块获得的所述视频基准质量和丢包失真质量生成模块获得的所述视频丢包失真质量计算得到最终的视频质量。

5.如权利要求4所述的视频质量评估装置,其特征在于,还包括直接判断模块,若有效丢包次数生成模块获得的所述视频数据的有效丢包次数大于第三预定阈值,则直接判断模块用于将所述最终的视频质量直接判定为预设等级。

说明书 :

一种视频质量评估方法和装置

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种视频质量评估方法和装置。

背景技术

[0002] 在网络媒体迅速发展的背景下,影视点播、网络电视、可视电话等业务已成为宽带网络和无线网络的主要业务,运营商需要对传输的视频业务质量进行监控并及时采取相应措施进行调节以保证用户对媒体业务的体验需求。网络媒体质量受到许多复杂因素的影响,包括:传输信道的服务质量(例如带宽、丢包、时延、抖动等)和媒体编解码端参数与传输信道的适配情况(例如编码方式、分辨率、抗误码强度、编解码端缓冲控制策略是否合适等)。除了信道丢包、编码方式等引起媒体数据丢失导致媒体主观质量下降之外,信道时延和抖动引起媒体停顿或卡顿也会严重影响着媒体的主观质量。因此,为得到一个准确的模型质量分数,准确计算出符合人眼视觉系统的压缩失真及压缩质量至关重要。可见,网络视频质量评估是网络视频应用中必不可少的一项重要技术。然而,利用人眼进行亲自观测的主观质量评估耗时耗力,对网络视频应用来说显然是不可行的。
[0003] 根据对原始参考视频需要的程度,视频客观质量评估方法通常可以分成三大类:全参考、部分参考和无参考视频客观质量评估。由于信道带宽的限制,视频接收端通常无法获得所需的参考视频序列,因此需要利用无参考视频质量评估方法来对网络中传输的视频流进行评价。
[0004] 在实际产品的应用中,算法复杂度是其中一个需要考虑的问题。需要能够支持在运算能力较低的终端设备(网络设备,测试设备)上进行视频数据的实时监控和评分,因此要求对视频流的解析不能太深,比如不能解到具体的MV或者像素值等。另外一个需要考虑的问题是在视频加密的情况下无法获取任何视频内容信息。现有技术在不使用帧边界信息时,使用丢包率进行计算,不能真实的反映视频的失真程度,另外,算法使用条件受到很多的限制。

发明内容

[0005] 本发明实施例提供了一种视频质量评估的方法和装置,可以在不使用帧边界信息的情况下,在一定程度上有效的反映视频数据失真情况。
[0006] 本发明实施例公开了一种视频质量的评估方法,包括:
[0007] 获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息;
[0008] 根据所述码率或所述帧率计算得到所述视频数据的视频基准质量;
[0009] 根据所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数;
[0010] 根据所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;
[0011] 根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。
[0012] 本发明实施例公开了一种视频质量的评估装置,包括:
[0013] 获取模块,用于获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息;
[0014] 基准质量生成模块,用于根据获取模块获得的所述码率或所述帧率计算得到所述视频数据的视频基准质量;
[0015] 有效丢包次数生成模块,用于根据获取模块获得的所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数;
[0016] 丢包失真质量生成模块,用于根据有效丢包次数生成模块获得的所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;
[0017] 最终质量生成模块,用于根据基准质量生成模块获得的所述视频基准质量和丢包失真质量生成模块获得的所述视频丢包失真质量计算得到最终的视频质量。
[0018] 本发明实施例还公开了一种视频质量评估方法,包括:
[0019] 获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息;
[0020] 根据所述码率或所述帧率计算得到所述视频数据的视频基准质量;
[0021] 根据所述数据包信息计算连续两次数据包丢失之间正确接收到的数据包数目,根据所述正确接收到的数据包数目和第二数据包阈值计算有效丢包次数;
[0022] 根据所述有效丢包次数计算得到视频数据的视频丢包失真质量;
[0023] 根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。
[0024] 本发明实施例还公开了一种视频质量评估装置,其特征在于,包括:
[0025] 视频参数采集模块,用于获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息;
[0026] 视频基准质量获取模块,用于根据视频参数采集模块获得的所述码率或所述帧率计算得到所述视频数据的视频基准质量;
[0027] 有效丢包次数获取模块,用于根据视频参数采集模块获得的所述数据包信息计算连续两次数据包丢失之间正确接收到的数据包数目,根据所述正确接收到的数据包数目和第二数据包阈值计算有效丢包次数;
[0028] 丢包失真质量获取模块,用于根据有效丢包次数获取模块获得的所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;
[0029] 最终质量获取模块,用于根据视频基准质量获取模块获得的所述视频基准质量和丢包失真质量获取模块获得的所述视频丢包失真质量计算得到最终的视频质量。
[0030] 本发明实施例提供的视频质量的评估方法和装置,通过获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息,根据所述码率和/或所述帧率计算得到所述视频数据的视频基准质量,根据所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数,根据所述有效丢包次数计算得到所述视频数据的视频丢包失真质量,根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。根据输入的分辨率、码率、帧率等视频数据参数信息,对接收到的数据包进行处理,能在不使用帧边界信息的情况下,有效的反映视频数据失真情况。

附图说明

[0031] 为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032] 图1为本发明实施例的计算丢包率和有效丢包次数的示意图;
[0033] 图2为本发明实施例一种视频质量评估方法的流程图;
[0034] 图3为本发明实施例的计算有效丢包次数的流程图;
[0035] 图4为本发明一个具体实施例的计算有效丢包次数的流程图;
[0036] 图5为本发明实施例一种视频质量评估装置的结构示意图。
[0037] 图6为图5所示本发明实施例的有效丢包次数生成模块的结构示意图。
[0038] 图7为本发明实施例一种视频质量评估方法的流程图;
[0039] 图8为图7所示本发明实施例一种视频质量评估方法的流程图;
[0040] 图9为本发明实施例一种视频质量评估装置的结构示意图。
[0041] 图10为图9所示本发明实施例的有效丢包次数获取模块的结构示意图。

具体实施方式

[0042] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,可以理解的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0043] 在不使用帧边界信息的情况下,目前现有算法通常使用丢包率进行计算,但是,丢包率不能反映视频实际失真程度。例如:同时丢连续两个数据包或者距离很近的两个数据包,从主观角度上说,视频帧损伤程度是一样的,但是,丢包率反映出来的视频帧损伤程度的会更为严重,不符合主观角度上的感觉。实验表明,利用有效丢包次数可以有效的反映视频实际失真程度,有效的对视频质量进行评估。
[0044] 在丢失数据包的情况下,目前现有的算法通常使用丢包率进行计算,即:一段时间内丢失的数据包数占实际应接收到的总数据包数的比例。
[0045] 本发明的实施例使用有效丢包次数进行计算,即:一段时间内发生的丢失数据包的次数。丢包是指数据传输过程中发生的数据包丢失情况,数据传输中的一次突发丢包可以为丢一个数据包,也可以为丢多个数据包。丢包次数的统计方法采用类似聚类的处理方法计算,即:两次丢包间隔大于预设的N个正确接收数据包时,加1,否则,根据当前丢失数据包与之前一次丢失数据包的之间正确接收到的数据包进行计算。下面给出了使用丢包率和有效丢包次数进行计算的示例。
[0046] 如图1所示,黑色框表示正确接收到的数据包,白色框表示数据传输过程中丢失的数据包,在两次丢包中正确接收到了两个数据包:
[0047] 丢包率=2/15=0.133=13.3%;
[0048] 丢包事件次数=1+2/N=1.2(N=10)。
[0049] 其中N为预设的连续正确接收到的数据包数值,在本示例中将N的值设为10。
[0050] 如图2所示,本发明的一个实施例提供了一种视频质量评估的方法,包括:
[0051] S11,获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息。
[0052] S12,根据所述码率或所述帧率计算得到所述视频数据的视频基准质量。
[0053] S13,根据所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数。
[0054] S14,根据所述有效丢包次数计算得到所述视频数据的视频丢包失真质量。
[0055] S15,根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。
[0056] 根据本发明实施例的视频质量评估的方法,根据输入的分辨率、码率、帧率等视频数据参数信息,对接收到的数据包进行处理,能在不使用帧边界的情况下,有效的反映视频数据失真情况,准确的视频质量进行评估。
[0057] 如图3所示,本发明的一个实施例提供了一种视频质量评估的方法,包括:
[0058] S131:计算连续丢包数目。
[0059] 根据数据包信息包含的包头的数据信息判断是否发生了丢包,以及连续丢失的数据包数目。
[0060] S132:判断是否大于第一数据包阈值。
[0061] 将步骤S131计算得到的连续丢失的数据包数目与第一数据包阈值进行判断,当连续丢失的数据包数目大于第一数据包阈值时,转入步骤S133进行后续计算,否则转入步骤S134进行后续计算,第一数据包阈值用来跟连续丢失的数据包数目进行判断。
[0062] 在本发明的一个实施例中,在一定分辨率下,第一数据包阈值的大小与码率或帧率有关。当帧率一定的情况下,编码码率越大,第一数据包阈值越大。当编码码率一定的情况下,编码帧率越低,第一数据包阈值越大。
[0063] S133:更新丢包次数计数值。
[0064] 根据连续丢失的数据包数目和第一数据包阈值更新丢包次数计数值。
[0065] 在本发明的一个实施例中,根据视频数据的参数信息判断是否是第一次丢失数据包,若是,则将丢包次数计数值设为1;否则转入步骤S134。
[0066] S134:计算正确接收到的数据包数目。
[0067] 根据视频数据的数据包信息计算在两次丢失数据包事件发生之间所正确接收到的数据包的数目。
[0068] S135:是否大于第二数据包阈值。
[0069] 将步骤S134计算得到的正确接收的数据包数目和第二数据包阈值进行比较,如果正确接收的数据包数目大于第二数据包阈值,则转到步骤S136,否则转到步骤S137进行后续计算。
[0070] 在本发明的一个实施例中,第二数据包的阈值用来跟连续正确接收到的数据包数目进行比较判断,该阈值跟视频分辨率、码率、帧率相关,当帧率一定的情况下,编码码率越大,第二数据包阈值越大。当编码码率一定的情况下,编码帧率越低,第二数据包阈值越大。在本发明的一个实施例中,第二数据包阈值即可以是主动设置,也可以通过访问第二数据包阈值表读取。
[0071] S136:丢包次数计数值增加一。
[0072] 将丢包次数计数值的数值增加一。
[0073] S137:更新丢包次数计数值。
[0074] 根据正确接收到的数据包数目和第二数据包阈值更新丢包次数计数值。重复上述步骤,直到待评分视频数据处理完毕,丢包次数计数值即为有效丢包次数。
[0075] 在本发明的一个实施例中,根据接收到的数据包头的序列号或时间戳信息判断待评分视频数据是否已经被处理完毕。
[0076] 根据本发明实施例的视频质量评估的方法,根据输入的分辨率、码率、帧率等视频数据参数信息,对接收到的数据包进行处理,能在不使用帧边界信息的情况下,有效的反映视频数据失真情况,准确的视频质量进行评估。
[0077] 下面结合图4具体描述本发明实施例提供的一种视频质量评估方法的一个具体示例。
[0078] S21,获取视频数据的参数信息。
[0079] 获取视频数据的参数信息,视频数据的参数信息包括码率、帧率、数据包信息等。
[0080] 在本发明的一个实施例中,所要获取的参数信息还包括视频数据的编码类型、视频分辨率、IP包大小、视频内容信息中的至少之一。根据这些参数信息可以更准确的计算视频数据的视频基准质量。
[0081] 在本发明的一个实施例中,数据包信息包括:RTP(Real-time Transport Protocol实时传输协议)包信息和TS(Transport Stream传输流)包信息中的至少之一。
[0082] S22,得到视频基准质量。
[0083] 根据S21获得的视频数据的码率或帧率计算得到视频数据的视频基准质量。视频基准质量是视频编码压缩后的视频质量,是在不同的编码类型下不同视频流编码为不同码率、帧率的基础质量。
[0084] 在本发明的一个实施例中,采用下列公式计算视频数据的视频基准质量,[0085]
[0086] 其中,Qencoding表示视频基准质量,Maxmos表示视频最高质量,A表示视频质量波动范围,即:视频最高质量与视频最低质量的差值,Br:表示视频编码码率,Fr:表示视频编码帧率。
[0087] 在本发明的一个实施例中,如果已经知道内容复杂度,则可以采用下列公式计算视频基准质量,
[0088]
[0089] 其中,Qencoding表示视频基准质量,A表示视频质量波动范围,即:视频最高质量与视频最低质量的差值,Br:表示视频编码码率,Fr:表示视频编码帧率,Maxmos表示视频最高质量。tcc:表示内容复杂度。内容复杂度表示视频内容在时间上、空间上或者综合时间和空间上的视频内容复杂度的描述,例如:运动越快的视频序列或者内容细节越多或色彩越丰富的的视频序列,视频内容复杂度描述因子越大。
[0090] 可以理解的是,本公式只是为了帮助理解本发明实施例而作出的一个例子,并不是对本发明实施例的一种限制。
[0091] S23,计算有效丢包次数。
[0092] 根据数据包信息包含的包头的数据信息判断是否发生了丢包,以及连续丢失的数据包数目。
[0093] 当判断出发生了丢包后,将连续丢失的数据包数目与第一数据包阈值进行比较。
[0094] 在本发明的一个实施例中,在一定分辨率下,第一数据包阈值的大小与视频数据的码率或帧率有关。当帧率一定的情况下,编码码率越大,第一数据包阈值越大。当编码码率一定的情况下,编码帧率越低,第一数据包阈值越大。
[0095] 在本发明的一个实施例中,例如可采用如下公式计算第一数据包阈值,[0096] L=d·func(Br,Fr)+e;
[0097] 其中,L表示第一数据包阈值,Br表示编码码率,Fr表示编码帧率,d,e是常数。此公式可以是线性,或者非线性,或者线性和非线性的结合。
[0098] 当连续丢失的数据包数目大于第一数据包阈值时,可选的,进行判断是不是视频数据发生的第一次丢失数据包,如果是第一次丢失数据包,则采用如下公式更新丢包次数计数值:
[0099] PLEN=1+func(A,L);
[0100] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,L表示第一数据包阈值。
[0101] 在本发明的一个实施例中,采用如下公式更新丢包次数计数值,
[0102] PLEN=PLEN+func(A,L);
[0103] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,L表示第一数据包阈值。
[0104] 在本发明的一个实施例中,还可以通过丢包率的方式更新丢包次数计数值,[0105] PLEN=PLEN+func(C);
[0106] 其中,PLEN表示丢包次数计数值,C表示视频数据的丢包率。丢包率是指数据传输过程中丢失的数据包占应接收数据包的比率。
[0107] 在本发明的一个实施例中,根据视频数据的数据包信息计算在两次丢失数据包事件发生之间所正确接收到的数据包的数目。然后将计算得到的正确接收的数据包数目分别与连续丢失的数据包数目和第二数据包阈值进行比较。
[0108] 在本发明的一个实施例中,第二数据包的阈值用来跟连续正确接收到的数据包数目进行判断,该阈值跟分辨率、码率或帧率相关,在一定分辨率,当帧率一定的情况下,编码码率越大,第二数据包阈值越大。当编码码率一定的情况下,编码帧率越低,第二数据包阈值越大。
[0109] 在本发明的一个实施例中,第二数据包阈值即可以是主动设置,也可以通过访问第二数据包阈值表读取。
[0110] 在本发明的一个实施例中,例如可采用如下公式计算第二数据包阈值,[0111] N=a·func(Br,Fr)+b;
[0112] 其中,N表示第二数据包阈值,a,b为常数,可根据不同的分辨率或码率进行设置。Br表示接收到的视频的编码码率,Fr表示接收到的视频的编码帧率。此公式可以是线性,或者非线性,或者线性和非线性的结合。
[0113] 可以理解的是,本公式只是为了帮助理解本发明实施例而作出的一种示例,并不代表对本发明实施例的一种限制。
[0114] 在本发明的一个实施例中,还包括如果是待评分视频数据第一次发生丢失数据包的情况,则:
[0115] 如果连续丢失的数据包数目大于第二数据包阈值,采用下列公式更新丢包次数计数值:
[0116] PLEN=1+func(A,N);
[0117] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,N表示第二数据包阈值。
[0118] 如果连续丢失的数据包数目不大于第二数据包阈值,则将丢包次数计数值的数值设为1。
[0119] 在本发明的一个实施例中,若连续丢失的数据包数目不大于第二数据包阈值,则:
[0120] 如果正确接收的数据包数目大于第二数据包阈值,则丢包次数计数值增加1。
[0121] 在本发明的一个实施例中,采用如下公式计算:
[0122] PLEN=PLEN+1;
[0123] 其中,PLEN表示丢包次数计数值。
[0124] 如果正确接收的数据包数目不大于第二数据包阈值,则根据正确接收到的数据包数目和第二数据包阈值更新丢包次数计数值。
[0125] 在本发明的一个实施例中,采用如下公式更新丢包次数计数值:
[0126]
[0127] 其中,PLEN表示丢包次数计数值,d表示正确接收到的数据包数目,N表示第二数据包阈值。
[0128] 在本发明的一个实施例中,若连续丢失的数据包数目大于第二数据包阈值,则:
[0129] 如果正确接收到的数据包数目大于第二数据包阈值,则根据连续丢失的数据包数目和第二数据包阈值更新丢包次数计数值;
[0130] 在本发明的一个实施例中,采用如下公式更新丢包次数计数值:
[0131] PLEN=PLEN+func(A,N)+1;
[0132] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,N表示第二数据包阈值。
[0133] 如果正确接收到的数据包数目不大于第二数据包阈值,根据连续丢失的数据包数目、正确接收到的数据包数目和第二数据包阈值更新所述丢包次数计数值。
[0134]
[0135] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,N表示第二数据包阈值,d表示正确接收到的数据包数目。
[0136] 下面结合图4具体描述计算有效丢包次数的一个具体示例。
[0137] 如图4所示,L表示第一数据包阈值,N表示第二数据包阈值,PLEN表示丢包次数计数值,d表示两次丢包间隔正确接收到的数据包数目。
[0138] 当检测到有丢包发生时,本步骤的触发条件得以满足,开始进行运算。
[0139] 在本发明的一个实施例中,设置第一数据包阈值L为100,设置第二数据包阈值N为6。第一次连续丢失的数据包数目为4,第二次连续丢失的数据包数目为5,第一次和第二次丢包间隔之间正确接收到的数据包数目d为3。
[0140] 第一次丢失的数据包数目小于L,当判断出这是第一次丢包时,将连续丢失的数据包数目与N进行比较,因为第一次连续丢失的数据包数目小于第二数据包阈值N,因此将丢包次数计数值PLEN设置为1。当第二次丢包发生时,丢失的数据包数目仍然小于L,转入计算d,因为第二次丢失的数据包小于N且d小于N,则更新丢包次数计数值为PLEN=1+3/6=1.5。
[0141] S24:视频丢包失真质量生成。
[0142] 根据步骤S23计算得到的有效丢包次数计算视频数据的视频丢包失真质量。
[0143] 在本发明的一个实施例中,采用如下公式计算视频丢包失真质量,
[0144]
[0145] 其中,PLEN表示有效丢包次数,(Qencoding-MOSmin)表示丢包最大失真程度,NOSmin:表示最低视频质量,Qencoding表示视频基准质量,a1,b1为常数。
[0146] 可以理解的是,本公式只是为了帮助理解本发明实施例而作出的一个例子,并不是对本发明实施例的一种限制。
[0147] S25:最终视频质量生成。
[0148] 根据步骤S22得到的视频基准质量和步骤S24得到的视频丢包失真质量计算得到视频数据的最终视频质量。
[0149] 在本发明的一个实施例中,采用下列公式计算视频数据的最终视频质量。
[0150] Qv=Qencoding-Qpkt_lost;
[0151] 其中,Qv表示最终视频质量,Qencoding表示视频基准质量,Qpkt_lost表示视频丢包失真质量。
[0152] 在本发明的一个实施例中,还包括:判断步骤S23计算得到视频数据的有效丢包次数是否大于第三预定阈值,若是,则将最终视频质量直接判定为预设等级。第三预定阈值的设置主要是和统计经验有关,可以根据操作者的主观经验设定。
[0153] 根据本发明实施例的一种视频质量评估的方法,与仅利用丢包率相比,可以准确的反映视频帧损伤程度,使评分更加准确,同时算法复杂度更低,便于在多种终端上使用。
[0154] 本发明的实施例提供了一种视频质量评估装置,如图5所示,根据本发明实施例的视频质量评估装置20,包括:获取模块21、基准质量生成模块22、有效丢包次数生成模块23、丢包失真质量生成模块24和最终质量生成模块25。
[0155] 获取模块21获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息;基准质量生成模块22根据获取模块21获得的所述码率或所述帧率计算得到所述视频数据的视频基准质量;有效丢包次数生成模块23根据获取模块21获得的所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值计算有效丢包次数;丢包失真质量生成模块24根据有效丢包次数生成模块23获得的所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;最终质量生成模块25根据基准质量生成模块22获得的所述视频基准质量和丢包失真质量生成模块24获得的所述视频丢包失真质量计算得到最终的视频质量。
[0156] 根据本发明实施例的一种视频质量评估的装置20,可以准确的反映视频帧损伤程度,使评分更加准确,同时算法复杂度更低,便于在多种终端上使用。
[0157] 在本发明的一个实施例中,获取模块21所要获取的参数信息还包括编码类型、视频分辩率、IP包大小、视频内容信息中的至少之一。
[0158] 在本发明的一个实施例中,数据包信息包括:RTP包信息和TS包信息中的至少之一。
[0159] 在本发明的一个实施例中,有效丢包次数生成模块23包括:
[0160] 判断单元231,用于判断所述连续丢失的数据包数目是否大于所述第一数据包阈值;
[0161] 丢包次数计数值单元232,若所述连续丢失的数据包数目大于所述第一数据包阈值,则丢包次数计数值单元用于根据所述连续丢失的数据包数目和所述第一数据包阈值更新丢包次数计数值;
[0162] 重复上述步骤,直到待评分视频数据处理完毕,所述丢包次数计数值即为所述有效丢包次数。
[0163] 在本发明的一个实施例中,丢包次数计数值单元232还用于,若所述连续丢失的数据包数目不大于所述第一数据包阈值,则根据所述连续丢失的数据包数目更新丢包次数计数值。
[0164] 在本发明的一个实施例中,根据所述码率或帧率设置所述第一数据包阈值。
[0165] 在本发明的一个实施例中,所述丢包次数计数值单元232还用于,
[0166] 根据所述数据包信息计算两次丢包之间正确接收到的数据包数目;
[0167] 若所述连续丢失的数据包数目不大于第二数据包阈值,则,
[0168] 若所述正确接收到的数据包数目大于第二数据包阈值,所述丢包次数技数值增加一;
[0169] 若所述正确接收到的数据包数目不大于第二数据包阈值,根据所述正确接收到的数据包数目和第二数据包阈值更新所述丢包次数计数值。
[0170] 在本发明的一个实施例中,所述丢包次数计数值单元232还用于,
[0171] 根据所述数据包信息计算两次丢包之间正确接收到的数据包数目;
[0172] 若所述连续丢失的数据包数目大于第二数据包阈值,则,
[0173] 若所述正确接收到的数据包数目大于第二数据包阈值,根据所述连续丢失的数据包数目和所述第二数据包阈值更新所述丢包次数计数值;
[0174] 若所述正确接收到的数据包数目不大于第二数据包阈值,根据所述连续丢失的数据包数目、所述正确接收到的数据包数目和所述第二数据包阈值更新所述丢包次数计数值。
[0175] 在本发明的一个实施例中,视频质量评估装置20还包括直接判断模块26,若有效丢包次数生成模块23获得的所述视频数据的有效丢包次数大于第三预定阈值,则直接判断模块26将所述最终的视频质量直接判定为预设等级。第三预定阈值的设置主要是和统计经验有关,可以根据操作者的主观经验设定。
[0176] 根据本发明实施例的一种视频质量评估的装置20,可以准确的反映视频帧损伤程度,使评分更加准确,同时算法复杂度更低,便于在多种终端上使用。
[0177] 如图7所示,本发明的一个实施例提供了一种视频质量评估的方法,包括:
[0178] S31,获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息。
[0179] S32,根据所述码率或所述帧率计算得到所述视频数据的视频基准质量。
[0180] S33,根据所述数据包信息计算连续两次数据包丢失之间正确接收到的数据包数目,根据所述正确接收到的数据包数目和第二数据包阈值计算有效丢包次数。
[0181] S34,根据所述有效丢包次数计算得到所述视频数据的视频丢包失真质量。
[0182] S35,根据所述视频基准质量和所述视频丢包失真质量计算得到最终的视频质量。
[0183] 根据本发明实施例的视频质量评估的方法,根据输入的分辨率、码率、帧率等视频数据参数信息,对接收到的数据包进行处理,能在不使用帧边界的情况下,有效的反映视频数据失真情况,准确的视频质量进行评估。
[0184] 下面结合图8具体描述本发明实施例提供的一种视频质量评估方法。如图8所示,本发明的一个实施例提供了一种视频质量评估的方法,包括:
[0185] S41:获取视频数据的参数信息。
[0186] 获取视频数据的参数信息,视频数据的参数信息包括码率、帧率、数据包信息等。
[0187] 在本发明的一个实施例中,所要获取的参数信息还包括视频数据的编码类型、视频分辩率、IP包大小、视频内容信息中的至少之一。根据这些参数信息可以更准确的计算视频数据的视频基准质量。
[0188] 在本发明的一个实施例中,数据包信息包括:RTP(Real-time Transport Protocol实时传输协议)包信息和TS(Transport Stream传输流)包信息中的至少之一。
[0189] S42:计算视频数据的视频基准质量。
[0190] 根据S41获得的视频数据的码率或帧率计算得到视频数据的视频基准质量。视频基准质量是视频编码压缩后的视频质量,是在不同的编码类型下不同视频流编码为不同码率、帧率的基础质量。
[0191] 在本发明的一个实施例中,采用下列公式计算视频数据的视频基准质量,[0192]
[0193] 其中,Qencoding表示视频基准质量,Maxmos表示视频最高质量,A表示视频质量波动范围,即:视频最高质量与视频最低质量的差值,Br:表示视频编码码率,Fr:表示视频编码帧率。
[0194] 在本发明的一个实施例中,如果已经知道内容复杂度,则可以采用下列公式计算视频基准质量,
[0195]
[0196] 其中,Qencoding表示视频基准质量,A表示视频质量波动范围,即:视频最高质量与视频最低质量的差值,Br:表示视频编码码率,Fr:表示视频编码帧率,Maxmos表示视频最高质量。tcc:表示内容复杂度。内容复杂度表示视频内容在时间上、空间上或者综合时间和空间上的视频内容复杂度的描述,例如:运动越快的视频序列或者内容细节越多或色彩越丰富的的视频序列,视频内容复杂度描述因子越大。
[0197] 可以理解的是,本公式只是为了帮助理解本发明实施例而作出的一个例子,并不是对本发明实施例的一种限制。
[0198] S43:计算有效丢包次数。
[0199] 根据S41得到数据包信息计算连续两次数据包丢失之间正确接收到的数据包数目,根据正确接收到的数据包数目和第二数据包阈值计算有效丢包次数。
[0200] 在本发明的一个实施例中,根据数据包信息包含的包头的数据信息判断是否发生了丢包,再根据数据包信息包含的包头的数据信息判断两次丢包之间正确接收到的数据包数目。
[0201] 在本发明的一个实施例中,第二数据包的阈值用来跟连续正确接收到的数据包数目进行比较判断,该阈值跟视频分辨率、码率、帧率相关,当帧率一定的情况下,编码码率越大,第二数据包阈值越大。当编码码率一定的情况下,编码帧率越低,第二数据包阈值越大。在本发明的一个实施例中,第二数据包阈值即可以是主动设置,也可以通过访问第二数据包阈值表读取。
[0202] 在本发明的一个实施例中,例如可采用如下公式计算第二数据包阈值,[0203] N=a·func(Br,Fr)+b;
[0204] 其中,N表示第二数据包阈值,a,b为常数,可根据不同的分辨率或码率进行设置。Br表示接收到的视频的编码码率,Fr表示接收到的视频的编码帧率。此公式可以是线性,或者非线性,或者线性和非线性的结合。
[0205] 可以理解的是,本公式只是为了帮助理解本发明实施例而作出的一种示例,并不代表对本发明实施例的一种限制。
[0206] 如果正确接收的数据包数目大于第二数据包阈值,则丢包次数计数值增加1。
[0207] 在本发明的一个实施例中,采用如下公式计算:
[0208] PLEN=PLEN+1;
[0209] 其中,PLEN表示丢包次数计数值。
[0210] 如果正确接收的数据包数目不大于第二数据包阈值,则根据正确接收到的数据包数目和第二数据包阈值更新丢包次数计数值。
[0211] 在本发明的一个实施例中,采用如下公式更新丢包次数计数值:
[0212]
[0213] 其中,PLEN表示丢包次数计数值,d表示正确接收到的数据包数目,N表示第二数据包阈值。
[0214] 重复上述步骤,直到待评分视频数据处理完毕,所述丢包次数计数值即为所述有效丢包次数。
[0215] 在本发明的一个实施例中,步骤S43还包括:根据步骤S41获得的数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值更新所述丢包次数计数值。
[0216] 根据数据包信息包含的包头的数据信息判断是否发生了丢包,以及连续丢失的数据包数目。
[0217] 当判断出发生了丢包后,将连续丢失的数据包数目与第一数据包阈值进行比较。
[0218] 在本发明的一个实施例中,在一定分辨率下,第一数据包阈值的大小与视频数据的码率或帧率有关。当帧率一定的情况下,编码码率越大,第一数据包阈值越大。当编码码率一定的情况下,编码帧率越低,第一数据包阈值越大。
[0219] 在本发明的一个实施例中,例如可采用如下公式计算第一数据包阈值,[0220] L=d·func(Br,Fr)+e;
[0221] 其中,L表示第一数据包阈值,Br表示编码码率,Fr表示编码帧率,d,e是常数。此公式跟码率可以是线性,或者非线性,或者线性和非线性的结合。
[0222] 当连续丢失的数据包数目大于第一数据包阈值时,可选的,进行判断是不是视频数据发生的第一次丢包,如果是第一次丢包,则采用如下公式计算丢包次数计数值:
[0223] PLEN=1+func(A,L);
[0224] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,L表示第一数据包阈值。
[0225] 在本发明的一个实施例中,采用如下公式更新丢包次数计数值,
[0226] PLEN=PLEN+func(A,L);
[0227] 其中,PLEN表示丢包次数计数值,A表示连续丢失的数据包数目,L表示第一数据包阈值。
[0228] 在本发明的一个实施例中,还可以通过丢包率的方式更新丢包次数计数值,[0229] PLEN=PLEN+func(C);
[0230] 其中,PLEN表示丢包次数计数值,C表示视频数据的丢包率。丢包率是指数据传输过程中丢失的数据包占应接收数据包的比率。
[0231] 在本发明的一个实施例中,当连续丢失的数据包数目不大于第一数据包阈值时,可选的,进行判断是不是视频数据发生的第一次丢包,如果是第一次丢包,则将丢包次数计数值设为1。
[0232] S44:计算视频数据的视频丢包质量。
[0233] 根据步骤S43计算得到的有效丢包次数计算视频数据的视频丢包失真质量。
[0234] 在本发明的一个实施例中,采用如下公式计算视频丢包失真质量,
[0235]
[0236] 其中,PLEN表示有效丢包次数,(Qencoding-MOSmin)表示丢包最大失真程度,MOSmin:表示最低视频质量,Qencoding表示视频基准质量,a1,b1为常数。
[0237] 可以理解的是,本公式只是为了帮助理解本发明实施例而作出的一个例子,并不是对本发明实施例的一种限制。
[0238] S45:计算得到最终的视频质量。
[0239] 根据步骤S42得到的视频基准质量和步骤S44得到的视频丢包失真质量计算得到视频数据的最终视频质量。
[0240] 在本发明的一个实施例中,采用下列公式计算视频数据的最终视频质量。
[0241] Qv=Qencoding-Qpkt_lost;
[0242] 其中,Qv表示最终视频质量,Qencoding表示视频基准质量,Qpkt_lost表示视频丢包失真质量。
[0243] 在本发明的一个实施例中,还包括:判断步骤S43计算得到视频数据的有效丢包次数是否大于第三预定阈值,若是,则将最终视频质量直接判定为预设等级。第三预定阈值的设置主要是和统计经验有关,可以根据操作者的主观经验设定。
[0244] 根据本发明实施例的一种视频质量评估的方法,与仅利用丢包率相比,可以准确的反映视频帧损伤程度,使评分更加准确,同时算法复杂度更低,便于在多种终端上使用。
[0245] 如图9所示,本发明的一个实施例提供了一种视频质量评估的装置40,包括:视频参数采集模块41、视频基准质量获取模块42、有效丢包次数获取模块43、丢包失真质量获取模块44、最终质量获取模块45。
[0246] 视频参数采集模块41用于获取视频数据的参数信息,所述参数信息包括码率、帧率、数据包信息;视频基准质量获取模块42,用于根据视频参数采集模块41获得的所述码率或所述帧率计算得到所述视频数据的视频基准质量;有效丢包次数获取模块43,用于根据视频参数采集模块41获得的所述数据包信息计算连续两次数据包丢失之间正确接收到的数据包数目,根据所述正确接收到的数据包数目和第二数据包阈值计算有效丢包次数;丢包失真质量获取模块44,用于根据有效丢包次数获取模块43获得的所述有效丢包次数计算得到所述视频数据的视频丢包失真质量;最终质量获取模块45,用于根据视频基准质量获取模块42获得的所述视频基准质量和丢包失真质量获取模块44获得的所述视频丢包失真质量计算得到最终的视频质量。
[0247] 根据本发明实施例的一种视频质量评估的装置40,可以准确的反映视频帧损伤程度,使评分更加准确,同时算法复杂度更低,便于在多种终端上使用。
[0248] 在本发明的一个实施例中,视频参数采集模块41所要获取的参数信息还包括编码类型、视频分辩率、IP包大小、视频内容信息中的至少之一。
[0249] 在本发明的一个实施例中,数据包信息包括:RTP包信息和TS包信息中的至少之一。
[0250] 在本发明的一个实施例中,有效丢包次数获取模块43包括:
[0251] 数据包数目获取单元431,用于根据所述数据包信息计算连续两次数据包丢失之间正确接收到的数据包数目;
[0252] 有效丢包次数计数值单元432,若所述正确接收到的数据包数目大于所述第二数据包阈值,丢包次数技数值增加一;若所述正确接收到的数据包数目不大于所述第二数据包阈值,根据所述正确接收到的数据包数目和所述第二数据包阈值更新所述丢包次数计数值。
[0253] 重复上述步骤,直到待评分视频数据处理完毕,所述丢包次数计数值即为所述有效丢包次数。
[0254] 在本发明的一个实施例中,根据所述码率或帧率设置所述第二数据包阈值。
[0255] 在本发明的一个实施例中,有效丢包次数计数值单元432还用于,根据所述数据包信息计算连续丢失的数据包数目,根据所述连续丢失的数据包数目和第一数据包阈值更新所述丢包次数计数值。
[0256] 在本发明的一个实施例中,有效丢包次数计数值单元432还用于,
[0257] 若所述连续丢失的数据包数目大于所述第一数据包阈值,则根据所述连续丢失的数据包数目和所述第一数据包阈值更新丢包次数计数值;
[0258] 若所述连续丢失的数据包数目不大于所述第一数据包阈值,则根据所述连续丢失的数据包数目更新丢包次数计数值。
[0259] 在本发明的一个实施例中,视频质量评估装置40还包括视频质量判断模块46,若有效丢包次数获取模块43获得的所述视频数据的有效丢包次数大于第三预定阈值,则视频质量判断模块46将所述最终的视频质量直接判定为预设等级。第三预定阈值的设置主要是和统计经验有关,可以根据操作者的主观经验设定。
[0260] 根据本发明实施例的一种视频质量评估的装置40,可以准确的反映视频帧损伤程度,使评分更加准确,同时算法复杂度更低,便于在多种终端上使用。
[0261] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0262] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0263] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0264] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0265] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。