2020 TIM Blind Image Quality Measurement by Exploiting High-Order Statistics With Deep Dictionary Encoding Network
Wilson
由于部署了用于训练端到端模型的深度神经网络(DNN),因此盲图像质量测量(BIQM)取得了长足的进步。大多数现有的基于DNN的BIQM方法都简单地将局部深度特征图与全局最大或平均池化层聚合在一起,以生成用于质量预测的整体特征向量。但是,这种池化策略无法捕获本地特征描述符的高阶统计信息。受到基于字典编码的BIQM方法成功的启发,本文提出了一种深度字典编码网络(Deep-DEN),该网络可以以端到端的方式很好地捕获本地深度特征的高阶统计信息。在Deep-DEN中 字典编码被封装到连接到骨干网末端的单个可学习层中,然后是一个完全连接的层,以进行质量预测。结果,以完全监督的方式同时优化了骨干网络中提取的局部深度特征的高阶统计量和质量预测功能。Deep-DEN的性能已在多个基准上进行了广泛评估,其优越性已通过与其他最新BIQM方法进行比较得到了很好的验证。
介绍
作为重要信息载体的数字图像已在我们的日常生活中得到了广泛的应用。毫无疑问,实践中始终需要高质量的数字图像,例如诊断医学成像[1],[2],物体检测[3],面部识别[4]和环境监控[5],[6]。因此,期望设计有效的测量以监视和评估数字图像的视觉质量。尽管公平地测量图像质量对于人的视觉来说是很自然的,但是,智能终端设备能否完成相同的任务并非易事。
间的不同类型的图像质量测量[7] ,[8] ,无参考/盲图像质量测量(BIQM)是特别有用的,因为它可以预测的图像的视觉质量,而无需访问到其原始的参考通常是不可用的练习[9],[10]。在过去的几十年中,在知识驱动的特征提取和数据驱动的质量预测方面的努力极大地加速了BIQM的发展。但是,现有的BIQM方法仍然存在两个主要局限性:1)由于对人的视觉特性和图像退化机理的了解不足,手工制作的特征难以实现有希望的性能; 2)特征提取和质量预测的单独设计模块忽略了它们之间的潜在连接。
为了解决第一个问题,字典编码技术,_又名_袋的字(BOW)模型[11] ,[12] ,已被引入到更换烦琐特征工程中常规BIQM方法[13] - [14] [ 15] [16] [17] [18]。通常,标准BoW模型涉及多个组件,包括本地特征描述,字典构造,本地特征编码和全局池。与传统的手工基于特征的BIQM方法不同,基于BoW的BIQM方法以数据驱动的方式自动提取质量感知特征,其中原始局部特征描述符使用字典直接编码,然后进行全局池化。具体而言,首先在字典上对原始图像的每个局部特征描述符进行编码,以生成其对应的表示向量。然后,将所有获得的系数向量聚合到整个图像上,以获得用于质量预测的全局特征向量。此类字典编码管道试图表征输入局部特征的高阶统计量,[13] – [14] [15] [16] [17] [18]。但是,第二个问题仍然有待解决,因为整个基于字典的编码管道均不受监督,因此质量预测模块仍被很大程度上忽略。
为了解决第二个问题,在许多计算机视觉应用中都取得了巨大成功的深度神经网络(DNN)为BIQM算法的端到端优化提供了新的思路[19]。通过以端到端的方式优化整个DNN模型,可以从人类主观标签中受益,同时进行特征提取和质量预测。最近,已经提出了几种基于DNN的BIQM解决方案,以将预测精度提高到比传统的解决方案更高的水平[20] – [21] [22] [23] [24] [25] [26] [27]。但是,将DNN应用于BIQM仍处于起步阶段。为了实现进一步的性能改进,需要更适合BIQM的DNN架构。卷积神经网络(CNN)的卷积层以滑动窗口的方式工作,以充当局部特征提取器。然后,通过简单的全局最大值或平均池化层对此类局部排序的特征图进行积分,以获得相应的整体矢量,最终将其馈送到完全连接的(FC)层中进行分类或回归。但是,全局池的最大操作和平均操作都只占本地深度功能的一阶统计信息。尽管这种传统的端到端深度CNN架构为某些空间不变的视觉识别任务提供了令人印象深刻的性能,[13] – [14] [15] [16] [17] [18]。
鉴于字典编码和端到端深度学习技术的优点,我们的动机是设计一种BIQM方法,该方法可以继承字典编码和端到端深度CNN的优点。在纹理分类领域,Zhang et al。[28]开发了一种编码层,该编码层弥合了高阶特征编码方法和CNN架构之间的鸿沟,从而导致了更强大的深度学习框架。该框架也已被采用来解决其他问题。例如,在[29]中,Cai_等人_。制定了可学习的字典编码层,用于端到端语言识别。在本文中,我们特此介绍一个深度词典编码网络(Deep-DEN),该网络在BIQM的骨干网和FC层之间插入了一个可学习的词典编码层。关键点在于,将整个基于字典的编码管道封装到端到端深度CNN设计中的单个可学习字典编码层中,以实现同时优化。通过Deep-DEN的端到端优化,高阶统计提取和质量预测都可以从人类主观意见得分中受益。因此,利用字典编码和端到端深度CNN技术的优势的Deep-DEN可以为BIQM提供更好的解决方案。
为了更好地说明所提出的框架,图1描述了Deep-DEN与其他框架管道的比较。:(a)字典编码,(b)深度CNN,以及(c)深度DEN。可以看出,(a)中的每个组件都通过用(a)中不同颜色表示的单独步骤进行了优化,而(b)和(c)中的所有组件都进行了联合优化。也就是说,(b)和(c)中的所有组件都针对手头的任务进行了优化,而不是仅在(a)中学习分类器。此外,(c)中的Deep-DEN并未使用(b)中的简单的最大或平均全局池化层来进行局部特征聚合,而是使用了可学习的字典编码层来表征输入局部特征图的高阶统计量。用于产生更好的整体特征表示。在多个基准上的实验结果表明,Deep-DEN的性能优于最新的BIQM方法。全面的,
我们提出了一种称为Deep-DEN的BIQM方法,方法是在骨干网和FC层之间插入一个可学习的字典编码层,以进行端到端优化。这样,高阶统计信息提取和质量预测都可以从标记数据中受益。
作为端到端网络,Deep-DEN可以接收任意大小的图像作为输入。实验结果证明了通过迭代训练具有多个输入图像尺寸的网络可以提高性能。
我们的方法通过将BIQM中的一些已知先验知识作为可学习的组件纳入端到端深度CNN架构中以进行联合优化,从而提供了解决BIQM问题的新见解。
相关工作
现有的BIQM方法可以大致分为三类:基于手工的特征,基于自动学习的特征以及基于端到端的深度学习。
A.基于特征的手工制作
现有的基于手工特征的BIQM方法假设原始的自然图像应遵循某些统计规律,并且引入的失真和损伤将修改此类规律[30] – [31] [32] [33] [34] [35] [36]。因此,在小波域[30],DCT域[31],空间域[32]以及联合梯度和Log-of-Gabor域[33 ]中,大多数工作都致力于建模各种自然场景统计(NSS)。]作为具有质量意识的功能。然后,建立一个回归模块,使用支持向量机[52]和随机森林[53]等浅层学习算法将质量意识特征映射到主观质量得分。尽管NSS功能已经取得了巨大的成功,但是NSS功能的提取是自上而下的任务,很大程度上取决于先验知识。
B.基于自动学习的功能
与使用手工特征的BIQM方法不同,BIQM的基于字典的编码方法不需要手动提取特征。取而代之的是,他们首先从一组空间归一化的补丁构建一个字典作为先验信息,然后根据这些信息对特征进行编码和空间池化,以进行质量感知的特征提取[13] – [14] [15] [16]。另外,使用浅层学习算法来建立回归模块。尽管基于字典的编码BIQM方法中的特征提取步骤是自动的,并且具有捕获输入局部特征描述符的特征分布的能力,但是并未针对终端质量预测任务对其进行优化。也就是说,特征提取和质量回归步骤是分别设计的。只有使用主观评分作为标签进行优化的质量回归模块无法保证提供最佳结果。在我们之前的工作中[17],[18],我们尝试通过在字典学习中将新的质量不一致项合并到传统成本函数中来解决此问题,以学习用于特征编码的更具区分性的字典。但是,合并的质量不一致项与基本事实主观评分存在某些差异,因此导致性能提升有限。
C.基于端到端深度学习
由于深度学习方法在许多计算机视觉应用中的出色表现,研究人员还为BIQM开发了端到端DNN [19] – [20] [21] [22] [23] [24] [25] [ 26] [27]。由于特征提取和质量预测模块都是在有监督的方式下共同优化的,因此基于端到端深度学习的方法已将BIQM的性能提升到了最先进的水平。在这些方法中,Kang_等。_ [19]首次尝试通过为BIQM设计具有一个卷积层和两个FC层的简单DNN。金和李[20]提出了一种基于CNN的深层BIQM方法(BIECON),该方法具有两阶段学习策略,该策略首先利用FR-IQA算法的局部得分作为基本事实来预训练模型,然后使用全局MOS对其进行微调。Ma_等。_ [21]通过使用RankNet从大量可区分质量的图像对(DIP)中学习,提出了一种新颖的基于DNN的BIQM方法(dipIQ)。关等。 [22]介绍了一种基于DNN的BIQM方法(VIDGIQA),其中失真信息与主观质量得分一起用于指导特征学习过程。Bosse_等。_ [23]通过堆叠十个卷积层和五个池化层以进行特征提取,以及堆叠两个FC层以进行质量回归,大大增加了DNN的深度。该模型(WaDIQaM)的关键点在于,它为联合学习本地质量和本地权重提供了一个统一的框架。而且,该网络可以轻松地适应处理全参考情况。Gu_等。_ 文献[24]提出了一种结合DQM和VRRP两种过程的基于DNN的BIQM(VROP)向量回归框架。Ma_等。_ [25]设计了用于BIQM(MEON)的多任务端到端优化DNN,该DNN由两个子网,一个失真识别网络和一个质量预测网络组成,共享早期层。受到MEON模型的启发,Yan_等人。_ 文献[26]还设计了一个多任务端到端DNN,由NSS特征预测子任务和BIQM(NSSADNN)的质量得分预测子任务组成。最近,金等。 [27]通过将DQN分为目标失真和HVS相关部分(DIQA),解决了基于DNN的BIQM问题。
D.观察和动机
除了强大的DNN学习能力外,现有的基于DNN的BIQM方法在设计DNN架构时或多或少考虑了BIQM中的某些特定功能。考虑到IQA中标有主体的数据有限的事实,BIECON [20]依赖于FR-IQA算法的本地分数进行预训练,dipIQ [21]生成了大量用于深度学习的DIP,并且DIQA [27]利用简单的客观误差图来扩充训练数据。考虑到不同地区的重要性不同,BIECON [20]提出了一个全球池化层,以将估计的本地质量图转换为质量得分,而WaDIQaM [23]专注于同时学习本地质量和本地权重。考虑到在BIQM中识别失真类型是有帮助的,MEON [25]建立了两个子网,其中一个负责失真识别,而VIDGIQA [22]利用失真类型信息来指导特征学习过程。考虑到图像失真将不可避免地干扰自然场景的固有规律,NSSADNN [26]建立了两个子网,其中一个负责NSS特征预测。
受以上分析的启发,我们的动机还在于将一些已知的先验知识纳入BIQM的DNN设计中。在文献中,据报道,利用输入局部特征的高阶统计量可以提高基于字典编码的BIQM方法的性能[13] – [14] [15] [16] [17] [18]。因此,在我们的方法中,制定了一个旨在利用输入局部特征的高阶统计量的可学习字典编码层,并将其插入到深度CNN架构中以进行端到端优化。我们提出的方法与现有的基于DNN的BIQM方法之间的主要区别在于,在专为BIQM设计的端到端深度CNN体系结构中,我们用新颖的字典编码层替换了简单的最大或平均全局池化层。
方法
提议的Deep-DEN取代了在传统的深度CNN中使用简单的最大或平均全局池化层来进行局部特征图聚合,而采用了附着在骨干网顶部的可学习字典编码层来利用提取的高阶统计量。来自主干深CNN的本地特征图。更具体地说,字典编码层的输入是在骨干深度CNN网络中生成的卷积特征图,而字典编码层的输出是固定长度的矢量表示形式,最终将其馈送到FC层中进行回归,如在图1(c)中示出。通过在反向传播期间将梯度信息传递到网络中的每个组件,以完全监督的方式学习整个体系结构。
在下文中,我们首先简要介绍标准的基于字典的残差编码模型(DREM),该模型是可学习的字典编码层的基础。然后,分别对字典编码层的结构和Deep-DEN的结构进行详细描述。此外,我们还提供了用于实现可学习字典编码层的梯度导数。最后,描述了有关整个网络的培训和测试的详细信息。
A.基于字典的残差编码模型(DREM)
给定一组 ND 表示的三维特征向量 X = {x1,x2,…,xN} 和一个预先学习的字典,表示为 C= {c_1,c_2,… ,c_ķc1,c2,…,cķ} 包含 KD 维原子,每个特征描述符 x_i xi可以指定一个特定的权重w_{ij}wij到每个原子 c_jcj, 相应的残差矢量由下式给出 r_{ij}=x_i−c_j rij=xi−cj,其中 i = 1, 2, ..., N 和 j = 1, 2, ... , k。基于赋值和残差矢量,DREM模型[37]对每个原子应用池化操作c_jcj,这样
e_{j}={\sum_{i=1}^{N}}e_{ij}={\sum^{N}_{i=1}}w_{ij}r_{ij}ej=∑i=1Neij=∑i=1Nwijrij
DREM生成固定长度的矢量表示 E= {e_1,e_2,…,e_Ke1,e2,…,eK} 与输入特征描述符的数量N无关。最后,此固定长度向量可用于后续分类或回归。
B.字典编码层
DREM模型涉及几个组件,包括特征提取,字典构造,残差编码和矢量聚合。如图2所示,我们的字典编码层的结构在技术上是基于DREM的。具体来说,我们将字典结构,残差编码和矢量聚合组件封装到单个字典编码层(如红色框所示)中,该层可嵌入到深度CNN架构中,以实现端到端的优化。字典编码层以完全监督的方式同时通过权重分配从输入的分布中同时学习固有的字典以及所有编码参数[28],[29]。另外,形成的卷积特征的更新还可以受益于在反向传播期间通过梯度传递的编码矢量表示。
图2。字典编码层的结构。
关于每个字典原子的权重分配,最简单的硬分配链接一个特定的描述符x_ixi到最近的字典原子c_jcj和 jj分配向量中的第一个元素由下式给出
w_{ij}=1(∥r_{ij}∥^2=min\left\{∥r_{i1}∥^2,∥r_{i2}∥^2,…,∥r_{iK}∥^2 \right\}) wij=1(∥rij∥2=min{∥ri1∥2,∥ri2∥2,…,∥riK∥2}) ,
其中 1 表示输出为0或1的指标函数。但是,这种硬分配忽略了原子的不确定性,从而导致一定的性能差距。考虑到这一点,通过为字典中包含的每个原子分配一个特定的描述符,并为其分配相应的权重,软分配已被广泛用于解决此问题,其定义如下[38]:
w_{ij}=\frac {\text {exp}(-\lambda \lVert r_{ij} \rVert ^{2})}{\sum _{j=1}^{K}\text {exp}(-\lambda \lVert r_{ij} \rVert ^{2})}wij=∑j=1Kexp(−λ∥rij∥2)exp(−λ∥rij∥2)
其中 λ 是调整权重的尺度因子。
应当注意的是,上述软分配对于不同的字典原子假定相等的比例因子。受著名的高斯混合模型(GMM)的启发[39],我们进一步使与不同字典原子相关的缩放因子变得可学习,从而
w_{ij}=\frac {\text {exp}(-f_{j}\lVert r_{ij} \rVert ^{2})}{\sum _{j=1}^{K}\text {exp}(-f_{j}\lVert r_{ij} \rVert ^{2})}wij=∑j=1Kexp(−fj∥rij∥2)exp(−fj∥rij∥2)
可以更好地表征特征分布。和w我Ĵ 和 [R我Ĵ 如果可用,则字典编码层将根据(1)对其进行聚合。另外,这些编码的矢量表示都使 用L_2 -规范。
C.深度字典编码网络
Deep DEN的结构是在50层ResNet(ResNet-50)[40]的顶部附加词典编码层,然后是用于回归的FC层。此外,考虑到Conv5块中的高维特征图,1 × 1 卷积层插入Conv5块和字典编码层(具有32个原子)之间,以减少特征通道的数量(2048 → 128 )。Deep-DEN的体系结构如图3所示,详细信息如表I所示。总体而言,Deep-DEN由三部分组成,包括特征提取(ResNet-50),特征聚合(字典编码层)和质量回归(FC层)。为了初始化网络,特征提取模块使用在ImageNet上预训练的ResNet-50模型进行初始化,权重包括字典原子C 和比例因子 F 在字典编码层中使用均匀分布初始化(− 1 /ķ--√,1 /ķ--√ )中的所有权重 1 × 1 卷积层和FC层使用标准偏差为0.01的截断高斯分布进行初始化。
表I Deep-DEN的体系结构配置。第二列显示了每个图层的输出大小 320 × 320 输入图像Deep-DEN的体系结构配置。第二列显示了每个图层的输出大小 320 × 320 输入图像
图3。 Deep-DEN的框架。它是通过在50层ResNet(ResNet-50)的顶部附加词典编码层,然后再进行FC层回归来设计的。此外,1 × 1 卷积层插入在Conv5块和字典编码层之间,以进一步减少特征通道的数量(2048 → 128 )。
查看全部
D.梯度导数
Deep-DEN的端到端优化的主要挑战在于字典编码层的集成。重新访问字典编码层,包括层输入 X 在内的几个组件,字典原子 C ,以及比例因子 F 需要在训练期间进行更新。根据[28]和[29],关于损耗ℓ 关于用于实现字典编码层的 X , C , 和 F 梯度的推导描述如下。
1) ℓ 关于 X 的梯度:
回顾字典编码层,整个编码器 E= {Ë1个,Ë2个,… ,Ëķ} 由组成 ķ 独立的子编码器。因此,损失的梯度ℓ 关于图层输入 X一世 可以得出如下:
\frac {\partial _\ell }{\partial _{x_{i}}}=\sum _{j=1}^{K}\frac {\partial _\ell }{\partial _{e_{j}}} \cdot \frac {\partial _{e_{j}}}{\partial _{x_{i}}}.∂xi∂ℓ=∑j=1K∂ej∂ℓ⋅∂xi∂ej.
根据链式规则,子编码器的梯度 ËĴ 关于输入 X一世 是(谁)给的
\frac {\partial _{e_{j}}}{\partial _{x_{i}}}=r_{ij}^{T}\frac {\partial_{w_{ij}}}{\partial _{x_{i}}}+w_{ij} \frac {\partial _{r_{ij}}}{\partial _{x_{i}}}∂xi∂ej=rijT∂xi∂wij+wij∂xi∂rij
其中w_{ij}wij 和 r_{ij}rij请参阅第III-B节中描述的分配的权重和残差,(∂_{r_{ij}}/∂_{x_i})=1(∂rij/∂xi)=1 。此外,让我们定义 g_{ij}=e^{−f_j∥r_{ij}∥^2}gij=e−fj∥rij∥2 和 h_i=∑^K_{j=1}g_{ij }hi=∑j=1Kgij, 我们有 w_{ij}=(g_{ij}/h_i)wij=(gij/hi)。最后,分配权重的导数w_{ij}wij 关于输入 x_ixi 由
\frac {\partial _{w_{ij}}}{\\partial _{x_{i}}}=\frac {1}{h_{i}} \cdot \frac {\partial _{g_{ij}}}{\partial _{x_{i}}}-\frac {g_{ij}}{h_{i}^{2}} \cdot \sum _{j=1}^{K}\frac {\partial _{g_{ij}}}{\partial _{x_{i}}}partialxi∂wij=hi1⋅∂xi∂gij−hi2gij⋅∑j=1K∂xi∂gij
其中(∂_{g_{ij}}/∂_{x_i})=−2f_jg_{ij}r_{ij}(∂gij/∂xi)=−2fjgijrij 。
2) ℓ 关于 C 的梯度:
回想一下子编码器e_jej仅依赖于字典原子 c_jcj。因此,损失的梯度ℓ 关于字典原子 c_jcj可以得出如下:
\frac {\partial_{\ell }}{\partial_ {c_{j}}}=\frac {\partial _{\ell }}{\partial _{e_{j}}}* *\cdot* *\frac {\partial _{e_{j}}}{\partial _{c_{j}}}∂cj∂ℓ=∂ej∂ℓ∗∗⋅∗∗∂cj∂ej
其中
\frac {\partial {e_{j}}}{\partial {c_{j}}}=\sum _{i=1}^{N}\left({r_{ij}^{T}\frac {\partial {w_{ij}}}{\partial {c_{j}}}+w_{ij}\frac {\partial {r_{ij}}}{\partial {c_{j}}} }\right)∂cj∂ej=∑i=1N(rijT∂cj∂wij+wij∂cj∂rij)
其中 (∂rij/∂cj)=−1 。让我们定义 sij=∑k≠jfik 。根据链式规则,分配权重w_{ij}wij关于字典原子 c_jcj的梯度由
\frac {\partial {w_{ij}}}{\partial {c_{j}}}=\frac {\partial {w_{ij}}}{\partial {g_{ij}}}* *\cdot* *\frac {\partial {g_{ij}}}{\partial {c_{j}}}=\frac {2f_{j}g_{ij}s_{ij}}{h_{i}^{2}} \cdot r_{ij}.∂cj∂wij=∂gij∂wij∗∗⋅∗∗∂cj∂gij=hi22fjgijsij⋅rij.
3)ℓ 关于 F 的梯度:
类似于字典原子,子编码器 ËĴ 仅依靠 Ĵ 比例因子 FĴ 。因此,损失的梯度ℓ 关于比例因子 FĴ 可以类似地得出如下:
\frac {\partial_{\ell }}{\partial {f_{j}}}=\frac {\partial_ {\ell }}{\partial {e_{j}}}* *\cdot* *\frac {\partial {e_{j}}}{\partial {f_{j}}}∂fj∂ℓ=∂ej∂ℓ∗∗⋅∗∗∂fj∂ej
其中
\frac {\partial {e_{j}}}{\partial {f_{j}}}=-\frac {g_{ij}s_{ij}}{h_{i}^{2}} \cdot \lVert r_{ij} \rVert ^{2}.∂fj∂ej=−hi2gijsij⋅∥rij∥2.
这样,所有组件都是可区分的,可以从损失函数中获悉。最后,整个网络可以通过带有反向传播的标准随机梯度下降(SGD)方法进行端到端优化[41]。
E.多种培训和测试
由于原始训练图像的原始大小可能会有所不同,因此我们以恒定的步幅裁剪子图像 ü 从原始图像。所有这些子图像及其相应的主观图像质量得分形成训练数据。请注意,图像调整大小也是生成尺寸一致的训练图像的可行方法。但是,图像调整大小可能会引入令人不快的伪像,从而改变原始图像的感知图像质量。此外,子图像裁剪比图像调整大小可以生成更多的训练样本。考虑到深度学习是一项需要大量数据才能进行训练的数据饥渴技术,因此我们最终求助于子图像裁剪,而不是调整图像大小来进行训练数据准备。IV-E部分显示了通过使用子图像裁剪来防止图像调整大小而获得的性能提升。。我们还通过随机水平翻转并在视觉上难以察觉的范围内更改其对比度和饱和度来增强训练数据,如[42]中所建议。最后,通过最小化以下损失来优化培训阶段:
\hat \Theta = \mathop {{\mathrm{argmin}}}_\Theta\ell =\mathop {{\mathrm{argmin}}}_\Theta \frac {1}{N}\sum _{n = 1}^{N} {\left |{ {\mathbb {H}({{\mathbf{x}}_{n}};\Theta) - {q_{n}}} }\right |}Θ^=argminΘℓ=argminΘN1∑n=1N∣H(xn;Θ)−qn∣
其中x_nxn和 q_nqn是 第n个子图像及其相应的主观质量得分,以及 Θ 表示参数集。我们应用SGD方法[41]来解决我们的模型。SGD的参数设置如下。动量因子,重量衰减因子和批次大小分别固定为0.9、10 -4和64。学习率从0.01开始,然后逐渐降低10倍。
与需要固定输入图像大小的常规深度CNN不同,Deep-DEN可以接收任意输入图像大小。在实施过程中,我们采用了多种培训策略。为了在不更改求解器的情况下训练模型,我们首先在每个纪元中使用预定义的大小来优化模型,然后针对每个纪元迭代修改输入图像的大小,如[43]中所述。具体来说,我们考虑两种不同的输入图像尺寸,即352×352 和 320×320 ,用于训练网络。在测试阶段,给定一张图片,我们只考虑一种尺寸,即320 × 320 为简单起见。同样,我们裁剪320 × 320 步幅恒定的子图像 ü 然后将它们输入经过训练的模型中。最终的预测质量得分是通过对裁剪后的子图像的所有预测得分求平均而获得的。在我们的实施中,我们凭经验设定ü= 160 。我们使用PyTorch框架[44]来实现该模型。所有实验均在配备Intel Core i7-4930 CPU和2个Titan X Maxwell GPU的PC上进行。在TID2013数据库上训练损失曲线[47]示于图4。可以观察到训练过程在150个时期后收敛良好。
图4。 TID2013上的训练损失曲线。