发明内容
有鉴于此,本公开实施例提供一种图像质量评估方法、装置及电子设备,至少部分解决现有技术中存在的问题。
第一方面,本公开实施例提供了一种图像质量评估方法,包括:
对原始输入图像进行预处理,以获得符合质量评估网络模型输入的训练数据;
采用图像网络包含的分类训练的权重作为所述质量评估网络模型的初始参数,对所述质量评估网络模型进行分类训练直至网络收敛;
向所述质量评估网络模型添加池化层、全连接层和随机失活层,采用训练后数据训练所添加的全连接层直至收敛,以获得添加了所述池化层、全连接层和随机失活层的质量评估网络模型的网络权重;以及
采用所获得的质量评估网络模型对图像进行质量评估。
根据本公开实施例的一种具体实现方式,所述对原始输入图像进行预处理之前,所述方法还包括:
采用统计模型对所述原始输入图像进行分类,以获得不同类型的分类图片。
根据本公开实施例的一种具体实现方式,所述采用统计模型对所述原始输入图像进行分类,包括:
采用所述统计模型,将所述原始输入图像分类为小图、长图、纯色图、纯文字图、黑白图和大图。
根据本公开实施例的一种具体实现方式,所述对原始输入图像进行预处理,包括:
将原始图像按照长宽比例固定的方式进行缩放,以将最短边缩放为256;
从缩放后的图像中剪切出224×224大小的图像;
对图像进行镜像翻转;以及
将每张图与均值图相减以获得所述训练数据。
根据本公开实施例的一种具体实现方式,所述对所述质量评估网络模型进行分类训练直至网络收敛,包括:
对所述原始质量评估网络进行三分类训练,其中,所述三分类包括非常模糊、一般模糊和清晰。
根据本公开实施例的一种具体实现方式,所述训练数据包括:
清晰度数据,被配置为通过所述质量评估网络模型对图像进行清晰度评估;
噪声数据,被配置为通过所述质量评估网络模型对图像噪声值进行评估;
欠曝数据,被配置为通过所述质量评估网络模型对图像欠曝和值进行评估;以及
过曝数据,被配置为通过所述质量评估网络模型对图像过曝和值进行评估。
根据本公开实施例的一种具体实现方式,所述采用所获得的质量评估网络模型对图像进行质量评估,包括:
所述质量评估网络模型将所述清晰度、噪声值、欠曝和值和过曝和值输出为[0,1]之间的分数评估。
根据本公开实施例的一种具体实现方式,所述采用所获得的质量评估网络模型对图像进行质量评估,包括:
根据所述清晰度、噪声值、欠曝和值和过曝和值的组合将所述图像质量划分段位以对图像进行质量评估。
根据本公开实施例的一种具体实现方式,对所述原始质量评估网络进行三分类训练,包括:
当所述原始输入图像被采用所述统计模型分类为小图时,所述原始输入图像被直接分类为非常模糊。
根据本公开实施例的一种具体实现方式,所述对原始输入图像进行预处理,包括:
当max_wh<200时,所述原始输入图像被判定为小图;
当min_wh>=2000时,所述原始输入图像被判定为大图;
当max_wh/min_wh>3时,所述原始输入图像被判定为长图;
当原始输入图像的通道数为1时,所述原始输入图像被判定为黑白图;
当v_max_1/v_all>0.65时;所述原始输入图像被判定为纯色图;并且
当v_max_1/v_all<0.65并且(v_max_1+v_max_2)/v_all>0.8时,所述原始输入图像被判定为纯文字图,
其中,w、h、min_wh、max_wh分别表示原始输入图像的宽、高、最小边和最大边,并且v_max_1、v_max_2和v_all分别表示原始输入图像的直方图的最大柱值、第二大柱值以及所有柱之和。
根据本公开实施例的一种具体实现方式,所述采用所获得的质量评估网络模型对图像进行质量评估,包括:
当“噪声值”<=0.1或者“欠曝和值或过曝和值”>=0.7或者“清晰度”<=0.2时,图像质量为段位0;
当“噪声值”<=0.3并且“欠曝和值或过曝和值”>=0.4并且0.2<“清晰度”<=0.4时,图像质量为段位1;
当“噪声值”>=0.8并且“过曝和值”<=0.1并且“欠曝和值”<=0.1并且“清晰度”>0.8时,图像质量为段位4;
当“噪声值”>0.5并且“过曝和值”<=0.2并且“欠曝和值”<=0.2并且0.6<“清晰度”<=0.8时,图像质量为段位4;以及
在其他情形下图像质量为段位2。
第二方面,本公开实施例提供了一种图像质量评估装置,包括:
预处理模块,用于对原始输入图像进行预处理,以获得符合质量评估网络模型输入的训练数据;
训练模块,用于采用图像网络包含的分类训练的权重作为所述质量评估网络模型的初始参数,对所述质量评估网络模型进行分类训练直至网络收敛;
添加模块,用于向所述质量评估网络模型添加池化层、全连接层和随机失活层,采用训练后数据训练所添加的全连接层直至收敛,以获得添加了所述池化层、全连接层和随机失活层的质量评估网络模型的网络权重;以及
评估模块,用于采用所获得的质量评估网络模型对图像进行质量评估。。
第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:
至少一个处理器;以及,
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述任第一方面或第二方面的任一实现方式中的图像质量评估方法。
第四方面,本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述第一方面或第二方面的任一实现方式中的图像质量评估方法。
第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述第一方面或第二方面的任一实现方式中的图像质量评估方法。
本公开实施例中的图像质量评估方案,包括对原始输入图像进行预处理,以获得符合质量评估网络模型输入的训练数据;采用图像网络包含的分类训练的权重作为所述质量评估网络模型的初始参数,对所述质量评估网络模型进行分类训练直至网络收敛;向所述质量评估网络模型添加池化层、全连接层和随机失活层,采用训练后数据训练所添加的全连接层直至收敛,以获得添加了所述池化层、全连接层和随机失活层的质量评估网络模型的网络权重;以及采用所获得的质量评估网络模型对图像进行质量评估。通过本公开的方案,提高了图像质量评估的准确度。
具体实施方式
下面结合附图对本公开实施例进行详细描述。
以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
本公开实施例提供一种图像质量评估方法。本实施例提供的图像质量评估方法可以由一计算装置来执行,该计算装置可以实现为软件,或者实现为软件和硬件的组合,该计算装置可以集成设置在服务器、终端设备等中。
首先,参见图1和图2,描述本公开实施例的图像质量评估方法。其中,图1示出了根据本公开实施例的图像质量评估方法的整体框图,并且图2示出了根据本公开实施例的图像质量评估方法的流程图。
随着深度学习的发展,卷积神经网络变得越来越普遍。当前发展的总体趋势是,通过更深和更复杂的网络来得到更高的精度,但是这种网络往往在模型大小和运行速度上没多大优势。一些嵌入式平台上的应用比如机器人和自动驾驶,它们的硬件资源有限,就十分需要一种轻量级、低延迟(同时精度尚可接受)的网络模型。
质量评估网络模型基于一种流线型结构使用深度可分离卷积来构造轻型权重深度神经网络,与图像网络分类上的其他流行的网络模型相比,质量评估表现出很强的性能。
质量评估网络模型用深度级可分离卷积(depthwise sparable convolutions)替代传统的标准卷积(standard convolutions)来解决卷积网络的计算效率和参数量的问题。质量评估网络模型基于深度级可分离卷积(depthwise sparable convolutions),其可以将标准卷积分解成一个深度卷积和一个点卷积(1×1卷积核)。深度卷积将每个卷积核应用到每一个通道,而1×1卷积用来组合通道卷积的输出。在采用3×3卷积核的情况下,深度级可分离卷积相较标准卷积可以降低大约9倍的计算量。
因此,根据本公开实施例的图像质量评估方法利用质量评估网络模型对图像质量进行评估。具体地,根据本公开实施例的图像质量评估方法利用统计模型与质量评估网络模型对图像质量进行评估,其中统计模型负责评估图像的大小、长度等参数,并且传统的质量评估网络模型被修改,以评估图像的诸如清晰度、噪声和曝光之类的其他指标。
如图1所示,在本公开实施例中,待评估的原始输入图像首先被输入到统计模型中,以给予输入图像属性标签,属性标签例如包括小图、大图、长图、纯色图、黑白图、纯文字等等。此外,通过深度学习模型(质量评估网络模型)将图像分为五个段位,所述五个段位包括超低质量、低质量、一般、高质量、超高质量。其中,深度学习模型包括主模型和参考模型,主模型通过深度学习网络对图像的清晰度进行[0,1]之间的分数评估,并且参考模型包括过/欠曝模型和噪声模型,以对图像的噪声值、过曝和值以及欠曝和值进行[0,1]之间的分数评估。在本公开实施例,根据主模型对图像的清晰度的评估以及参考模型对图像的噪声和欠/过曝情况的评估,将图像分为五个段位。如此,根据本公开实施例的方法能够从多个方面给出待评估图像的整体图像质量分数,并且对低质量的图像给出对应低质量的原因。
接着,参见图2,具体描述根据本公开实施例的图像质量评估方法,该方法包括:
S101,对原始输入图像进行预处理,以获得符合质量评估网络模型输入的训练数据。
在本公开实施例中,质量评估网络模型包括主模型和参考模型。主模型采用基于MobileNets的质量评估网络模型以对原始输入图像的清晰度进行评估,并且将清晰度用[0,1]之间的分数进行评估。参考模型包括过/欠曝模型和噪声模型,并且这些模型的网络结构采用与主模型相同的网络模型,以对原始输入图像的噪声和欠/过曝情况进行评估。
在采用基于MobileNets的质量评估网络模型对原始输入图像的清晰度之类的参数进行评估的过程中,需要对该模型进行训练。
在本公开实施例中,数据的预处理过程采用MobileNets的预处理过程,其中图3示出了根据本公开实施例的预处理过程的流程图,根据本公开实施例的预处理过程包括:
S301:将原始输入图像按照长宽比例固定的方式进行缩放,以将最短边缩放为256。
在本公开实施例中,图像的缩放是指对数字图像的大小进行调整的过程。图像放大可以采用内插值方法,即在原有图像像素的基础上在像素点之间采用合适的插值算法插入新的元素,插值算法例如包括基于边缘的图像插值算法、基于区域的图像插值算法以及其他已知或未来开发的算法。此外,缩小图像例如可以采用CV_INETR_AREA来插值。
此外,虽然在以上描述中将原始输入图像按照长宽比例固定的方式缩放到最短边为256,但是本公开实施例不限于此,而是可以将最短边缩放到其他合适的数值,并且缩放的方式可以是长宽比例固定方式之外的其他方式。但是为了说明的方便,以下以将原始输入图像按照长宽比例固定的方式缩放到最短边为256为例进行说明。
S302:在将原始输入图像缩放到最短边为256之后,从图像的左上、右上、左下、右下和中间剪切出224×224大小的图。
由于质量评估网络模型的输入是224×224,因此,需要从图像中剪切出224×224大小的图。但是应当理解,所剪切的图像的位置不限于图像的左上、右上、左下、右下和中间,而是可以是其他合适的位置。
S303:将图像进行镜像翻转。
在本公开实施例中,由于来自智能手机的图像普遍存在着旋转或者镜像的问题,因此需要通过进行镜像翻转操作来使得图像处于正常状态。
S304:将每张图与均值图相减。
由于在大多数情况下,并不关注输入图像的整体明亮程度。更确切地说,图像块的平均亮度值信息不是关键信息,所以可以减去这个值来进行均值削减。具体地,在本公开实施例中,将每张图与均值图相减,以进行归一化处理。
S102,采用图像网络包含的分类训练的权重作为所述质量评估网络模型的初始参数,对所述质量评估网络模型进行分类训练直至网络收敛。
在如上所述地获得训练数据之后,采用批梯度下降法进行训练。批梯度下降法的示例例如包括批量梯度下降法BGD、小批量梯度下降法MBGD和随机梯度下降法SGD等等。
在本公开实施例中,主模型的训练数据可以分为三类,分别为非常模糊、一般模糊和清晰。在训练数据中,非常模糊、一般模糊和清晰的评估可以通过实验人员的主观感受来评估,通过参考图像来评估,或者通过清晰度算法来评估。
具体地,清晰度算法的示例例如包括Brenner梯度函数、Tenengrad梯度函数、Laplacian梯度函数、SMD(灰度方差)函数、SMD2(灰度方差乘积)函数等等,清晰度算法的其他示例例如可以参见https://blog.csdn.net/weixin_38285131/article/details/80890109,其全部内容通过引用包含于此。
在根据以上方法获得分别为非常模糊、一般模糊和清晰的训练数据之后,采用基于图像网络(ImageNet)1000类分类训练的权重作为质量评估网络模型的初始参数,对原始质量评估网络模型进行三分类训练(即,非常模糊、一般模糊和清晰),直至网络收敛。
应当注意,虽然在本公开实施例中以图像网络1000类分类训练为例描述了本公开实施例,但是本公开实施例不限于此,而是可以是图像网络预设类分类训练,例如图像网络200类分类训练,图像网络500类分类训练等等。
应当注意,虽然在本公开实施例中以三分类训练为例描述了本公开实施例,但是本公开实施例不限于此,对原始质量评估网络模型可以进行四分类训练、五分类训练或者其他类型的训练。
S103,向所述质量评估网络模型添加池化层、全连接层和随机失活层,采用训练后数据训练所添加的全连接层直至收敛,以获得添加了所述池化层、全连接层和随机失活层的质量评估网络模型的网络权重。
以上描述了根据原始质量评估网络模型对训练数据进行三分类训练,但是考虑到图像的模糊性属于图像中低层语义信息,因此所使用的网络模型优选地需要保证中低层的语义信息。
图4示出了根据本公开实施例的质量评估网络模型的结构图。与传统的质量评估网络模型不同,在本公开实施例中,考虑图像的模糊性属于图像中低层语义信息,设定将整个网络参数固定(这时的网络参数为基于新数据训练后所得),并且在conv5_6后新增加一个池化层(Pool)和全连接(FC)层和随机失活(dropout)层,采用训练数据训练新加的全连接层,直至收敛(其目的是为了只训练新加的FC和pool层)。如此,最终得到根据本公开实施例的质量评估网络模型的网络权重。这种网络结构训练方法可以保证中低层的语义信息。
应当注意,虽然在本公开实施例中,在conv5_6后新增加了一个池化层(Pool)和全连接(FC)层和随机失活(dropout)层,但是本公开实施例不限于此,而是可以在其他的位置增加池化层(Pool)和全连接(FC)层和随机失活(dropout)层,以训练该新增加的FC和pool层。
另外,在本公开实施例中,将非常模糊类设定为0,将一般模糊类设定为1,并且将清晰类设定为2,并且对应回归值分别为0,0.5,1。如此,根据本公开实施例的方法通过如上所述的深度学习网络(质量评估网络模型)对图像的清晰度进行[0,1]之间的分数评估。具体地,本公开实施例采用线性回归函数y=wx+b,使得图像的清晰度评估分数介于[0,1],且值越大表示越清晰。
如此,通过根据本公开实施例的主模型,能够得到输入图像的关于清晰度的评分。
本公开实施例的神经网络模型还包括参考模型,参考模型包括过/欠曝模型和噪声模型,并且这些模型的网络结构采用与主模型相同的网络模型,即图4中所示的网络模型,所不同的是训练数据采用不同的训练数据。
具体地,噪声模型采用的训练数据为噪声数据、高清数据,输出结果为两类,取值为[0,1],值越大,表示图像越清晰;欠/过曝模型采用的训练数据为欠曝数据、一般数据、过曝数据和高清数据四个类别,输出结果为四类,取值为[0,1],以及对应的类别。例如,一张图像的输出结果可以为:过曝,0.7,此时,“过曝”指示图像的类型,0.7指示过曝的程度。
在本公开实施例中,通过噪声模型输出的值被称为噪声值,通过欠/过曝模型输出的值被分别称为欠曝和值和过曝和值。
此外,在本公开实施例中,噪声数据被定义为含有噪点,比如椒盐噪声的图片;欠曝图片主要指低亮度低图片;过曝图片包括局部过曝和全局过曝图片。
通过根据本公开实施例的参考模型,可以得到原始输入图像的噪声值、欠曝和值和过曝和值。
S104,采用所获得的质量评估网络模型对图像进行质量评估。
如上所述,在图像经过主模型和参考模型之后,分别得到了图像的清晰度评分、噪声值、欠曝和值和过曝和值。
在本公开实施例中,根据主模型和参考模型的评分,将图像划分为5个段位「0,1,2,3,4」,这5个段位分别表示超低质量、低质量、一般、高质量、超高质量。
在本公开实施例中,字符noise,overE,underE,general分别表示为通过噪声模型输出的噪声值(取值为[0,1],值越大表示图像质量越高)、通过过/欠曝模型输出的过曝和值(取值为[0,1],值越大表示过曝越严重)、通过过/欠曝模型输出的欠曝和值(取值为[0,1],值越大表示欠曝越严重)、通过主模型输出的主分数(取值为[0,1],值越大表示质量越高)。
在本公开实施例中,采用explosion表示图像过/欠曝的标示,并且定义如下:explosion=(overE>=underE)?overE:underE。
上式表示如果overE>underE,则explosion值等于overE,反之,则等于underE。
对此,根据主模型和参考模型的得分,段位0~段位4被定义如下:
段位0,noise<=0.1或者explosion>=0.7或者general<=0.2
段位1,noise<=0.3并且explosion>=0.4并且0.2<general<=0.4
段位4,noise>=0.8并且overE<=0.1并且underE<=0.1并且general>0.8
段位3,noise>0.5并且overE<=0.2并且underE<=0.2并且0.6<general<=0.8并且非段位4
段位2,其他情形。
如此,通过根据本公开实施例的方法,能够从清晰度、噪声、过曝和以及欠曝和等多个角度对图像质量进行评估。具体地,根据本公开实施例的方法能够给出一张图的整体的图像质量分数,并且对段位为0和1的图片给出对应低质量的原因。
根据本公开实施例的一种具体实现方式,所述对原始输入图像进行预处理之前,所述方法还包括:
采用统计模型对所述原始输入图像进行分类,以获得不同类型的分类图片,并且基于所获得的不同类型的分类图片,对所述原始输入图像进行分类处理。
通过将原始输入图像进行分类处理,能够从图像的类型的角度对图像质量进行评估。
根据本公开实施例的一种具体实现方式,所述采用统计模型对所述原始输入图像进行分类,包括:
采用所述统计模型,将所述原始输入图像分类为小图、长图、纯色图、纯文字图、黑白图和大图。
具体地,在本公开实施例中,原始输入图像被输入到统计模型中,并且统计模型被配置为将原始输入图像分类为小图、长图、纯色图、纯文字图、黑白图和大图。
应当理解,虽然在本公开实施例中,将原始输入图像分类为小图、长图、纯色图、纯文字图、黑白图和大图,但是本公开实施例不限于此,而是可以将原始输入图像划分为其他类型的图像。可替代地,原始输入图像可以被进一步地划分为超小图、超大图等等。
根据本公开实施例的一种具体实现方式,所述采用统计模型对所述原始输入图像进行分类,包括:
当max_wh<200时,所述原始输入图像被判定为小图;
当min_wh>=2000时,所述原始输入图像被判定为大图;
当max_wh/min_wh>3时,所述原始输入图像被判定为长图;
当原始输入图像的通道数为1时,所述原始输入图像被判定为黑白图;
当v_max_1/v_all>0.65时,所述原始输入图像被判定为纯色图;并且
当v_max_1/v_all<0.65并且(v_max_1+v_max_2)/v_all>0.8时,所述原始输入图像被判定为纯文字图,
其中,w、h、min_wh、max_wh分别表示原始输入图像的宽、高、最小边和最大边,并且v_max_1、v_max_2和v_all分别表示原始输入图像的直方图的最大柱值、第二大柱值以及所有柱之和。
在本公开实施例中,令hist(image)表示图像image的直方图,其中直方图的柱数为20。
在所获得的输入图像的直方图中,v_max_1、v_max_2和v_all分别表示直方图最大柱值、第二大柱值以及所有柱之和。
虽然本公开实施例中的直方图的柱数20,但是本公开实施例不限于此,实际上,直方图的柱数可根据实际情况进行调整,例如直方图的柱数可以是255。
应当注意,在本公开实施例中,术语“直方图”是反映一个图像像素分布的统计表,其横坐标代表了图像像素的种类,可以是灰度的,也可以是彩色的,纵坐标代表了每一种颜色值在图像中的像素总数或者占所有像素个数的百分比。直方图具有图像平移、旋转、缩放不变性等众多优点,且在进行图像计算处理时代价较小,所以经常用于图像处理。
在本公开实施例中,在原始图像例如为1024×1024的图像的情况下,当转换成直方图时会进行分组,如在本公开实施例中那样,当被划分为20组时,那么这1024×124个像素会被叠加分到这20组中去以获得该图像的直方图。可替代地,当被划分为255组时,这1024×124个像素会被叠加分到这255组中去以获得该图像的直方图。
另外,在以上的描述中,以特定的规则对原始输入图像的图像类别进行了划分,但是本公开实施例不限于此。例如,可以将满足max_wh<100的图像划分为小图。也就是说,在本公开实施例中,可以根据实际需求调整对原始输入图像进行划分的规则。
根据本公开实施例的一种具体实现方式,所述对原始输入图像进行预处理,包括:
将原始图像按照长宽比例固定的方式进行缩放,以将最短边缩放为256;
从缩放后的图像中剪切出224×224大小的图像;
对图像进行镜像翻转;以及
将每张图与均值图相减以获得所述训练数据。
根据本公开实施例的一种具体实现方式,所述对所述质量评估网络模型进行分类训练直至网络收敛,包括:
对所述原始质量评估网络进行三分类训练,其中,所述三分类包括非常模糊、一般模糊和清晰。
根据本公开实施例的一种具体实现方式,所述训练数据包括:
清晰度数据,被配置为通过所述质量评估网络模型对图像进行清晰度评估;
噪声数据,被配置为通过所述质量评估网络模型对图像噪声值进行评估;
欠曝数据,被配置为通过所述质量评估网络模型对图像欠曝和值进行评估;以及
过曝数据,被配置为通过所述质量评估网络模型对图像过曝和值进行评估。
根据本公开实施例的一种具体实现方式,所述采用所获得的质量评估网络模型对图像进行质量评估,包括:
所述质量评估网络模型将所述清晰度、噪声值、欠曝和值和过曝和值输出为[0,1]之间的分数评估。
根据本公开实施例的一种具体实现方式,所述采用所获得的质量评估网络模型对图像进行质量评估,包括:
根据所述清晰度、噪声值、欠曝和值和过曝和值的组合将所述图像质量划分段位以对图像进行质量评估。
根据本公开实施例的一种具体实现方式,对所述原始质量评估网络进行三分类训练,包括:
当所述原始输入图像被采用所述统计模型分类为小图时,所述原始输入图像被直接分类为非常模糊。
在本公开实施例中,当根据以上规则得出图像的类型为小图时,其会被直接判定为模糊图像(例如,非常模糊)而不用通过后续的神经网络模型进行进一步的判定。也就是说,当根据统计模型被划分为小图时,其清晰度属性可被直接确定。
当根据以上规则得出图像的类型为除了小图之外的其他类型的图像时,这些图像被输入到随后的神经网络模型(主模型和参考模型)中,以对图像的清晰度、噪声和欠/过曝情况进行评估。
根据本公开实施例的一种具体实现方式,所述采用所获得的质量评估网络模型对图像进行质量评估,包括:
当“噪声值”<=0.1或者“欠曝和值或过曝和值”>=0.7或者“清晰度”<=0.2时,图像质量为段位0;
当“噪声值”<=0.3并且“欠曝和值或过曝和值”>=0.4并且0.2<“清晰度”<=0.4时,图像质量为段位1;
当“噪声值”>=0.8并且“过曝和值”<=0.1并且“欠曝和值”<=0.1并且“清晰度”>0.8时,图像质量为段位4;
当“噪声值”>0.5并且“过曝和值”<=0.2并且“欠曝和值”<=0.2并且0.6<“清晰度”<=0.8时,图像质量为段位4;以及
在其他情形下图像质量为段位2。
与上面的方法实施例相对应,参见图5,本公开实施例还提供了一种图像质量评估装置50,包括:
预处理模块501,用于对原始输入图像进行预处理,以获得符合质量评估网络模型输入的训练数据;
训练模块502,用于采用图像网络包含的分类训练的权重作为所述质量评估网络模型的初始参数,对所述质量评估网络模型进行分类训练直至网络收敛;
添加模块503,用于向所述质量评估网络模型添加池化层、全连接层和随机失活层,采用训练后数据训练所添加的全连接层直至收敛,以获得添加了所述池化层、全连接层和随机失活层的质量评估网络模型的网络权重;以及
评估模块504,用于采用所获得的质量评估网络模型对图像进行质量评估。
图5所示装置可以对应的执行上述方法实施例中的内容,本实施例未详细描述的部分,参照上述方法实施例中记载的内容,在此不再赘述。
参见图6,本公开实施例还提供了一种电子设备60,该电子设备包括:
至少一个处理器;以及,
与该至少一个处理器通信连接的存储器;其中,
该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述方法实施例中图像质量评估方法。
本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述方法实施例中。
本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述方法实施例中的图像质量评估方法。
下面参考图6,其示出了适于用来实现本公开实施例的电子设备60的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备60可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备60操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备60与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种装置的电子设备60,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。