一种评估视频质量的方法及装置与流程

文档序号:18753135发布日期:2019-09-24 21:26阅读:189来源:国知局
一种评估视频质量的方法及装置与流程

本申请涉及质量评估技术领域,具体而言,涉及一种评估视频质量的方法及装置。



背景技术:

目前,随着通信网络的普及,每天通过通信网络进行视频上传和下载的数量十分巨大,但由于不同用户上传的视频质量参差不齐,因而,即使是对于包含同样内容的不同视频,浏览视频的用户体验也千差万别。其中,清晰度作为视频质量的一个重要指标,对用户的视频浏览体验影响十分直观,因而,如果用户在下载相应视频之前,能够获知该视频的质量评估,可以有效提升用户的视频浏览体验。

目前一般采用人工方式进行视频质量评估,即对上传至服务器的视频,通过人工浏览视频的方式,在浏览完一视频后,人工依据视频浏览界面直观的视频帧清晰程度,为该视频进行视频质量评估。但该视频质量评估方法,需要人工浏览视频,视频质量评估所需的时间长,使得视频质量评估效率低。



技术实现要素:

有鉴于此,本申请的目的在于提供一种评估视频质量的方法及装置,提升视频质量评估效率。

第一方面,本申请实施例提供了一种评估视频质量的方法,包括:

从待评估视频中提取待评估图像帧;

利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度;

统计清晰度大于预设清晰度阈值的图像帧在所述待评估视频中所占的比重,基于所述比重评估所述待评估视频的质量。

结合第一方面,本发明提供了第一方面的第一种可能的实施方式,其中,所述利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度,包括:

利用预先设置的拉普拉斯梯度算法,计算所述待评估图像帧中每一像素点的清晰度;

基于所述待评估图像帧中每一像素点的清晰度,计算所述待评估图像帧的清晰度。

结合第一方面的第一种可能的实施方式,本发明提供了第一方面的第二种可能的实施方式,其中,在所述计算所述待评估图像帧中每一像素点的清晰度之前,所述方法还包括:

判断待计算像素点是否为所述待评估图像帧中的边缘像素点,如果是,在所述待评估图像帧中,确定与所述待计算像素点相邻、且位置为空的虚拟像素点;

设置所述虚拟像素点的像素值为零。

结合第一方面的第一种可能的实施方式,本发明提供了第一方面的第三种可能的实施方式,其中,在所述计算所述待评估图像帧中每一像素点的清晰度之前,所述方法还包括:

判断待计算像素点是否为所述待评估图像帧中的边缘像素点,如果是,确定是否存在与所述待计算像素点相邻的相邻图像帧;

若存在,确定与所述待计算像素点相邻、且位置为空的第一虚拟像素点,以及,在所述相邻图像帧中,确定与所述待计算像素点相邻、且位置不为空的像素点;

若不存在,在所述待评估图像帧中,确定与所述待计算像素点相邻、且位置为空的第二虚拟像素点;

设置所述第一虚拟像素点和所述第二虚拟像素点的像素值为零。

结合第一方面、第一方面的第一种至第三种中的任一可能的实施方式,本发明提供了第一方面的第四种可能的实施方式,其中,所述待评估视频为用户待上传的视频,所述方法还包括:

基于评估的所述待评估视频的质量,确定是否允许所述待评估视频上传。

结合第一方面的第四种可能的实施方式,本发明提供了第一方面的第五种可能的实施方式,其中,所述方法还包括:

若允许所述待评估视频上传,获取所述待评估视频的存储路径;

查询所述存储路径上是否存储有所述待评估视频,若存在,比对待上传的待评估视频的质量与对应存储的待评估视频的质量;

若待上传的待评估视频的质量优于对应存储的待评估视频的质量,利用待上传的待评估视频替换存储的待评估视频。

结合第一方面、第一方面的第一种至第三种中的任一可能的实施方式,本发明提供了第一方面的第六种可能的实施方式,其中,所述从待评估视频中提取待评估图像帧,包括:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,按照预设抽样频率依次对各图像帧进行抽帧,得到所述待评估图像帧。

第二方面,本申请实施例提供了一种评估视频质量的装置,包括:

图像帧获取模块,用于从待评估视频中提取待评估图像帧;

清晰度计算模块,用于利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度;

视频质量评估模块,用于统计清晰度大于预设清晰度阈值的图像帧在所述待评估视频中所占的比重,基于所述比重评估所述待评估视频的质量。

第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的方法的步骤。

本申请实施例提供的一种评估视频质量的方法及装置,通过从待评估视频中提取待评估图像帧;利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度;统计清晰度大于预设清晰度阈值的图像帧在所述待评估视频中所占的比重,基于所述比重评估所述待评估视频的质量。这样,设置并利用图像清晰度算法进行图像帧清晰度的计算,从而对视频作出客观的视频质量评价,可以有效缩短视频质量评估所需的时长,有效提升视频质量评估效率。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种评估视频质量的方法流程示意图;

图2为本申请实施例提供的一种评估视频质量的装置结构示意图;

图3为本申请实施例提供的一种计算机设备300的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的一种评估视频质量的方法流程示意图。如图1所示,该方法包括:

步骤101,从待评估视频中提取待评估图像帧;

本申请实施例中,视频由一帧一帧的图像帧组成。作为一可选实施例,可以对视频中的每一图像帧进行后续质量评估,因而,从待评估视频中提取待评估图像帧,包括:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,将得到的各图像帧按照播放顺序排列,得到所述待评估图像帧。

本申请实施例中,为了减少后续视频质量评估的工作量,还可以无需获取待评估视频中的每一图像帧,因而,作为另一可选实施例,从待评估视频中提取待评估图像帧,包括:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,按照预设抽样频率依次对各图像帧进行抽帧,得到所述待评估图像帧。

本申请实施例中,作为再一可选实施例,从待评估视频中提取待评估图像帧,包括:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,依次对各图像帧进行随机抽帧,得到所述待评估图像帧。

步骤102,利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度;

本申请实施例中,作为一可选实施例,图像清晰度算法包括拉普拉斯梯度算法,利用拉普拉斯梯度算法计算图像帧的清晰度。

本申请实施例中,作为一可选实施例,利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度,包括:

a11,利用预先设置的拉普拉斯梯度算法,计算所述待评估图像帧中每一像素点的清晰度;

本申请实施例中,作为一可选实施例,利用下式(拉普拉斯梯度算法)计算像素点的清晰度:

ix,y=η1g(x,y)+η2g(x-1,y-1)+η3g(x-1,y)+η4g(x-1,y+1)+

η5g(x,y-1)+η6g(x,y+1)+η7g(x+1,y-1)+η8g(x+1,y)+η9g(x+1,y+1)

式中,

ix,y为待评估图像帧中当前像素点的清晰度;

g(x,y)为待评估图像帧中当前像素点的像素值,其中,当前像素点的位置为(x,y);

g(x-1,y-1)为待评估图像帧中当前像素点的左下角像素点的像素值;

g(x+1,y+1)为待评估图像帧中当前像素点的右上角像素点的像素值;

ηi为拉普拉斯算子值,其中,i=1,2,...,9。

本申请实施例中,作为一可选实施例,设置:

η1=20,η2=-1,η3=-4,η4=-1,η5=-4,η6=-4,η7=-1,η8=-4,η9=-1。

本申请实施例中,作为一可选实施例,像素值可以为像素点的灰度值或亮度值等。

本申请实施例中,对于待评估图像帧中的边缘像素点,拉普拉斯梯度算法中对应的相邻位置可能不存在实际的像素点,因而,作为一可选实施例,在所述计算所述待评估图像帧中每一像素点的清晰度之前,该方法还包括:

判断待计算像素点是否为所述待评估图像帧中的边缘像素点,如果是,在所述待评估图像帧中,确定与所述待计算像素点相邻、且位置为空的虚拟像素点;

设置所述虚拟像素点的像素值为零。

本申请实施例中,在利用拉普拉斯梯度算法计算像素点的清晰度时,若该像素点为边缘像素点,即该像素点的上、下、左、右、左上、左下、右上、右下中的任一位置处没有像素点,则设置拉普拉斯梯度算法中该位置处的像素点的像素值为零。例如,对于待评估图像帧中的第一个像素点,若计算该第一个像素点的清晰度,由于该像素点的上、左、左上、左下、右上位置处没有像素点,则在拉普拉斯梯度算法中,设置第一个像素点对应上、左、左上、左下、右上位置处像素点的像素值均为零。若该像素点不为边缘像素点,则直接依据各像素点的像素值计算该像素点的清晰度。

本申请实施例中,视频由各图像帧依次组成,因而,相邻图像帧的边缘像素点之间具有一定的关联,作为另一可选实施例,在所述计算所述待评估图像帧中每一像素点的清晰度之前,该方法还包括:

判断待计算像素点是否为所述待评估图像帧中的边缘像素点,如果是,确定是否存在与所述待计算像素点相邻的相邻图像帧;

若存在,确定与所述待计算像素点相邻、且位置为空的第一虚拟像素点,以及,在所述相邻图像帧中,确定与所述待计算像素点相邻、且位置不为空的像素点;

若不存在,在所述待评估图像帧中,确定与所述待计算像素点相邻、且位置为空的第二虚拟像素点;

设置所述第一虚拟像素点和所述第二虚拟像素点的像素值为零。

本申请实施例中,在利用拉普拉斯梯度算法计算像素点的清晰度时,若该像素点的上、下、左、右、左上、左下、右上、右下中的任一位置处没有像素点,则判断是否存在与该像素点相邻的图像帧,若存在,则从相邻的图像帧中,查找与该像素点相邻的像素点。例如,对于视频中第一幅图像帧中的最后一个像素点,与该像素点相邻的图像帧为第二幅图像帧,其中,该最后一个像素点的上、左、左上位置处的像素点位于第一幅图像帧中,下、左下、位置处的像素点位于第二幅图像帧中,右、右上、右下位置处的像素点为空。

a12,基于所述待评估图像帧中每一像素点的清晰度,计算所述待评估图像帧的清晰度。

本申请实施例中,作为一可选实施例,利用下式计算图像帧的清晰度:

式中,

f为图像帧的清晰度;

m为图像帧包含的像素点行数;

n为图像帧包含的像素点列数。

本申请实施例中,作为一可选实施例,可以通过收集样本视频,依据有经验的视频质量审核专家对每一帧的质量评分(图像帧的清晰度),利用拉普拉斯梯度算法构建清晰度模型,以图像帧包含的各像素点的像素值为清晰度模型的输入,以该图像帧的清晰度为清晰度模型的输出,对清晰度模型进行训练,在训练的清晰度模型满足预设的精度要求后,得到拉普拉斯算子值。

本申请实施例中,作为一可选实施例,图像清晰度算法还可以包括:brenner梯度算法、tenengrad梯度算法、灰度方差算法、能量梯度算法、熵函数算法等。以brenner梯度算法为例,计算图像帧的清晰度的公式为:

式中,

f(x,y)为图像帧中位置为(x,y)的像素点的像素值。

步骤103,统计清晰度大于预设清晰度阈值的图像帧在所述待评估视频中所占的比重,基于所述比重评估所述待评估视频的质量。

本申请实施例中,预先设置清晰度阈值,若计算得到的图像帧的清晰度在该清晰度阈值之上,表明该图像帧的质量较好。其中,清晰度阈值可依据实际需要进行配置,例如,对于高清视频,可以设置较高的清晰度阈值。

本申请实施例中,在所有参与计算清晰度的图像帧中,通过统计清晰的图像帧占计算的图像帧总数的比重,依据比重的大小确定视频质量。例如,若统计的比重超过预先设置的比重阈值,则确定该视频质量良好。

本申请实施例中,作为一可选实施例,还可以预先设置多个比重阈值,每一比重阈值对应一质量等级,例如,设置第一比重阈值为大于90%,对应的视频质量为优秀,设置第二比重阈值为大于80%而小于或等于90%,对应的视频质量为优良,…,设置第八比重阈值为小于或等于60%,对应的视频质量为极差等。

本申请实施例中,待评估视频为用户待上传的视频,作为一可选实施例,该方法还可以包括:

基于评估的所述待评估视频的质量,确定是否允许所述待评估视频上传。

本申请实施例中,可以依据评估的待评估视频的质量,确定是否允许该待评估视频的上传操作。例如,若待评估视频的质量评估为好或好以上,则允许用户上传该待评估视频,若待评估视频的质量评估为好以下,则拒绝用户上传该待评估视频的请求,这样,可以有效提升上传的视频质量,从而增强浏览该视频的用户的浏览体验,并减少服务器的存储资源浪费。

本申请实施例中,还可以依据用户上传视频对应的路径,对比已存储的视频以及待上传视频的质量,存储质量较高的视频。因而,作为一可选实施例,该方法还包括:

若允许所述待评估视频上传,获取所述待评估视频的存储路径;

查询所述存储路径上是否存储有所述待评估视频,若存在,比对待上传的待评估视频的质量与对应存储的待评估视频的质量;

若待上传的待评估视频的质量优于对应存储的待评估视频的质量,利用待上传的待评估视频替换存储的待评估视频。

本申请实施例中,若存储路径上没有存储待评估视频,则直接存储该上传的待评估视频。若待上传的待评估视频的质量低于对应存储的待评估视频的质量,则提示用户对应存储位置已存储有质量更高的视频,无需再进行上传。

本申请实施例中,作为一可选实施例,可依据视频的名称、版本、大小、摘要信息等,确定存储路径上存储的某一视频是否与待上传的待评估视频相同。

本申请实施例中,通过对视频的图像帧进行提取,利用机器算法中的拉普拉斯梯度算法进行图像帧清晰度的计算,基于图像帧的清晰度进行视频质量的评估,从而对视频作出客观的视频质量评价,可以有效缩短视频质量评估所需的时长,提升视频质量评估的效率,同时,利用拉普拉斯梯度算法进行清晰度计算,能够避免主观因素对视频质量评估的影响,提高视频质量评估的准确性;进一步地,利用拉普拉斯梯度算法自动进行视频质量评估,无需培训视频质量评估人员,降低视频质量评估所需的成本。

图2为本申请实施例提供的一种评估视频质量的装置结构示意图。如图2所示,该装置包括:

图像帧获取模块201,用于从待评估视频中提取待评估图像帧;

本申请实施例中,作为一可选实施例,图像帧获取模块201,具体用于:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,按照预设抽样频率依次对各图像帧进行抽帧,得到所述待评估图像帧。

本申请实施例中,作为另一可选实施例,图像帧获取模块201,具体用于:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,按照预设抽样频率依次对各图像帧进行抽帧,得到所述待评估图像帧。

本申请实施例中,作为再一可选实施例,图像帧获取模块201,具体用于:

对待评估视频进行解析,获取所述待评估视频包含的各图像帧,依次对各图像帧进行随机抽帧,得到所述待评估图像帧。

清晰度计算模块202,用于利用预先设置的图像清晰度算法,计算所述待评估图像帧的清晰度;

本申请实施例中,作为一可选实施例,清晰度计算模块202,具体用于:

利用预先设置的拉普拉斯梯度算法,计算所述待评估图像帧中每一像素点的清晰度;

基于所述待评估图像帧中每一像素点的清晰度,计算所述待评估图像帧的清晰度。

本申请实施例中,利用下式计算像素点的清晰度:

ix,y=20g(x,y)-g(x-1,y-1)-4g(x-1,y)-g(x-1,y+1)-

4(x,y-1)-g(x,y+1)-4g(x+1,y-1)+η8g(x+1,y)-g(x+1,y+1)

本申请实施例中,用下式计算图像帧的清晰度:

本申请实施例中,作为一可选实施例,清晰度计算模块202,具体还用于:

判断待计算像素点是否为所述待评估图像帧中的边缘像素点,如果是,在所述待评估图像帧中,确定与所述待计算像素点相邻、且位置为空的虚拟像素点;

设置所述虚拟像素点的像素值为零。

本申请实施例中,作为另一可选实施例,清晰度计算模块202,具体还用于:

判断待计算像素点是否为所述待评估图像帧中的边缘像素点,如果是,确定是否存在与所述待计算像素点相邻的相邻图像帧;

若存在,确定与所述待计算像素点相邻、且位置为空的第一虚拟像素点,以及,在所述相邻图像帧中,确定与所述待计算像素点相邻、且位置不为空的像素点;

若不存在,在所述待评估图像帧中,确定与所述待计算像素点相邻、且位置为空的第二虚拟像素点;

设置所述第一虚拟像素点和所述第二虚拟像素点的像素值为零。

视频质量评估模块203,用于统计清晰度大于预设清晰度阈值的图像帧在所述待评估视频中所占的比重,基于所述比重评估所述待评估视频的质量。

本申请实施例中,作为一可选实施例,还可以预先设置多个比重阈值,从而实现对视频质量的分级评估。

本申请实施例中,作为一可选实施例,待评估视频为用户待上传的视频,该装置还包括:

上传处理模块(图中未示出),用于基于评估的所述待评估视频的质量,确定是否允许所述待评估视频上传。

本申请实施例中,作为一可选实施例,上传处理模块还用于:

若允许所述待评估视频上传,获取所述待评估视频的存储路径;

查询所述存储路径上是否存储有所述待评估视频,若存在,比对待上传的待评估视频的质量与对应存储的待评估视频的质量;

若待上传的待评估视频的质量优于对应存储的待评估视频的质量,利用待上传的待评估视频替换存储的待评估视频。

本申请实施例中,作为一可选实施例,可依据视频的名称、版本、大小、摘要信息等,确定存储路径上存储的某一视频是否与待上传的待评估视频相同。

如图3所示,本申请一实施例提供了一种计算机设备300,用于执行图1中的评估视频质量的方法,该设备包括存储器301、处理器302及存储在该存储器301上并可在该处理器302上运行的计算机程序,其中,上述处理器302执行上述计算机程序时实现上述评估视频质量的方法的步骤。

具体地,上述存储器301和处理器302能够为通用的存储器和处理器,这里不做具体限定,当处理器302运行存储器301存储的计算机程序时,能够执行上述评估视频质量的方法。

对应于图1中的评估视频质量的方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述评估视频质量的方法的步骤。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述评估视频质量的方法。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1