一种基于超分辨率重建的模糊图像分类方法

文档序号:26512392发布日期:2021-09-04 09:40阅读:100来源:国知局
一种基于超分辨率重建的模糊图像分类方法

1.本发明涉及图像识别领域,具体是一种基于超分辨率重建的模糊图像分类方法。


背景技术:

2.图像分辨率是一组用于评估图像中蕴含细节信息丰富程度的性能参数,包括时间分辨率、空间分辨率及色阶分辨率等,体现了成像系统实际所能反映物体细节信息的能力。相较于低分辨率图像,高分辨率图像往往包含更大的像素密度、更丰富的纹理细节及更高的可信赖度。近年来,随着社会发展,科技进步,人们越来越趋向于用照片或视频的形式进行记录,无论是vlog还是监控视频,但受限于拍摄设备和拍摄环境及技术的影响,最终获取的图像可能会出现模糊不清的现象,即分辨率较低,这在很多场合会给辨识带来很大的困难。
3.目前,研究人员对于超分辨率重建技术的研究都是集中在对图像的恢复上,而没有关注对重建后的高清图像如何进行有效的信息获取或识别检测,而在图像分类算法中往往需要较高分辨率的图像提供更多的细节使模型更容易获取图像的特征,将低分辨率的图像直接应用在常见的分类模型中往往效果不佳,难以满足应用需求。因此,需要针对现有技术进行改进。
4.此外,目前对低分辨率的图像的分类识别算法主要包括两类,一类为直接对低分辨率的图像进行建模训练,该方法往往因图像包含信息较少而效果不佳;另一类是将低分辨率的图像重建为高分辨率的图像,通过超分辨率重建技术为其补清细节,再对高分辨率的图像进行分类识别,该方法效果较好,所以本发明在该方法的思路上设计改进。


技术实现要素:

5.本发明要解决的技术问题是提供一种基于超分辨率重建的模糊图像分类方法,用以将超分辨率重建的模糊图像进行分类识别。
6.为了解决上述技术问题,本发明提供一种基于超分辨率重建的模糊图像分类方法包括步骤如下:
7.步骤1、在上位机中,对原始高分辨率图像指定类别标签,然后将原始高分辨率图像进行高斯平滑后再进行下采样,获得带有标签的低分辨率图像作为步骤2的输入;
8.步骤2、构建融合模型,包括串联的超分辨率重建模型和分类模型,超分辨率重建模型包括串联的生成模型和鉴别模型;
9.步骤3、分别建立超分辨率重建模型和分类模型的损失函数,利用训练集来训练步骤2建立的融合模型,利用测试集测试融合模型获得具有在线生产能力的融合模型。
10.作为本发明的一种基于超分辨率重建的模糊图像分类方法的改进:
11.步骤2中所述生成模型包括:首先使输入的图像数据经过一层尺寸为9,步长为1的卷积层,并采用prelu作为激活函数,然后再利用16层残差卷积层提取低分辨率图像的特征,使残差块的输出经过一层3
×
3的卷积层并进行归一化处理;最后对输出数据加上第一
层9
×
9卷积层的输出后,根据原始高分辨率图像与对应的低分辨率图像的放大倍数的一半设置上采样层的层数,并对上采样块的输出通过一层9
×
9卷积层从64通道缩小到3通道内。
12.作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
13.步骤2中所述鉴别模型为:输入的图像经过8层3
×
3卷积层再经过一层1
×
1卷积层和二维池化层,最终输出得到鉴别分类结果,前八层的卷积层采用prelu作为激活函数,二维池化层采用sigmoid作为激活函数,除第一层的3
×
3卷积层和第九层的1
×
1卷积层其余卷积层后都进行批规范化bn层处理;
14.步骤2中所述分类模型为残差网络resnet50。
15.作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
16.步骤1中所述下采样的方式为:
17.p
k
=∑
i∈k
i
i
/(w
×
h)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
18.其中,k为尺寸为w*h的窗口,p
k
为生成的像素点,i
i
为原始高分辨率图像的像素点;
19.所述带有标签的低分辨率图像带有标签之一为对应的原始高分辨率图像,带有的标签之二为对应的原始高分辨率图像的类别标签。
20.作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
21.所述生成模型中的卷积层是对读入的图像数据或上一层输出用卷积核进行卷积操作,3
×
3卷积核为:
[0022][0023]
其中,为卷积核输出图像位置为(u,v)的像素点,为卷积核输入图像位置为(i+u,j+v)的像素点,为卷积核对应位置的权重,b
(l+2)
为卷积核对应位置的偏置,i为相对卷积核中心的横向位置,j为相对卷积核中心的纵向位置,l为卷积核所在卷积层序数,u为卷积核中心的横向位置,v为为卷积核中心的纵向位置,i、j、l、u、v均只能取整数,9
×
9卷积核将i,j的取值范围由[

1,1]改为[

4,4],f
a
()为激活函数:
[0024][0025]
其中,x为激活函数的输入,a为激活函数负向的斜率。
[0026]
作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
[0027]
步骤3中所述训练集和测试集的建立过程为:获取基础数据集并按8:2的比例划分为训练集和测试集,然后将基础数据集中的原图像插值成原始高分辨率图像并进行两次所述下采样获得低分辨率图像。
[0028]
作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
[0029]
步骤3中建立的所述超分辨率重建模型的损失函数包括:
[0030]
生成模型的损失函数采用感知损失l
perceptual
(x
o
):
[0031]
l
perceptual
(x
o
)=10
‑3×
l
adver
(x
g
)+l
cont
(f
real
,f
fake
)
ꢀꢀꢀ
(6)
[0032]
其中,l
adver
(x
g
)为:
[0033]
[0034]
其中,n为每批次图像测试张数,为生成模型生成的高分辨率假图像被鉴别模型鉴别的结果;
[0035]
l
cont
(f
real
,f
fake
)为内容损失,为生成图像和原始高分辨率图像的语义特征差异,将vgg

19模型的全连接层部分舍弃,利用vgg

19模型的卷积层部分对生成模型重建的高分辨率假图像和原始高分辨率图像分别进行特征提取获取包含语义特征的特征图f
fake
和f
real
,对对应的特征图计算均方误差:
[0036][0037]
其中h,w为低分辨率图像的宽和高,r为超分辨率倍数,x,y为像素点位置的横纵坐标;
[0038]
鉴别模型采用二分类交叉熵bceloss作为损失函数,其表达式为:
[0039][0040]
其中,x
i
,y
i
分别为鉴别模型预测的结果和实际结果;
[0041]
所述分类模型的损失函数采用了负对数似然损失函数nllloss:
[0042]
l
nll
(x,y)=

logx[y]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0043]
其中,x为分类结果概率分布,y为类别标签。
[0044]
作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
[0045]
所述融合模型进行训练的同时训练一个单独的生成模型,在每一批次数据用于训练时,先用原始高分辨率图像和生成模型生成的高分辨率假图像对鉴别模型进行训练;再利用下采样获取的低分辨率图像和对应的原始高分辨率图像训练生成模型,用生成模型训练更新过的参数替换掉融合模型中的超分辨率重建模型的对应参数;最后,利用低分辨率图像和对应分类标签训练整个融合模型,并将融合模型的超分辨率重建部分更新过的参数再替换掉生成模型的全部参数,如此反复训练直至模型在训练集上的损失不再有明显下降;
[0046]
所述融合模型根据输入的低分辨率图像正向传播计算网络模型的中间变量,从超分辨率重建模型部分的输出层获取高分辨率假图像,从分类模型部分的输出层获取分类结果标签;根据提取出的高分辨率假图像和对应的真实高分辨率图像标签所计算的损失值反向传播计算出超分辨率重建模型的梯度,利用随机梯度下降(sgd)算法进行参数的更新,权值和偏置的更新公式如下:
[0047][0048][0049]
其中,是第l层第j个神经元与前一层第k个神经元之间的权重,为第l层第j个神经元的偏置,α为学习率,c(θ)为最终损失值;
[0050]
根据最后输出的分类识别结果标签和真实标签所计算的损失值反向传播算法计算出整个融合模型的新的梯度,利用sgd算法进行整个融合模型的权重参数的更新,循环训
练至训练集上准确率不再提高。
[0051]
作为本发明的一种基于超分辨率重建的模糊图像分类方法的进一步改进:
[0052]
所述测试融合模型的过程为:将测试集中的低分辨率图像作为融合模型的输入,测试融合模型的泛化能力,获得所述具有在线生产能力的融合模型。
[0053]
本发明的有益效果主要体现在:
[0054]
(1)本发明适应性好,针对不同场景只需更换不同训练集均可实现较好的重建分类效果,适应范围广;
[0055]
(2)本发明的双回路式训练策略能够充分利用低分辨率图像的两个标签使得模型拥有大量先验经验,提高图像重建和分类效果,解决低分辨率图像特征信息提取困难的问题,使最终的分类效果更好;
[0056]
(3)本发明通过设计超分辨率重建模型及分类模型,有效的提高分类识别精度,降低误判率;与其他分类方法相比,具备适应性强、准确率高、稳定性强的特点。
附图说明
[0057]
下面结合附图对本发明的具体实施方式作进一步详细说明。
[0058]
图1为本发明实施例1中的融合模型的结构示意图;
[0059]
图2为本发明的融合模型中的生成模型的结构示意图;
[0060]
图3为本发明的生成模型的感知损失函数示意图;
[0061]
图4为本发明的融合模型中的鉴别模型的结构示意图;
[0062]
图5为本发明的融合模型中的分类模型示意图;
[0063]
图6为本发明实施例1中的融合模型的训练策略示意图;
[0064]
图7为本发明实施例1中的训练策略具体实现示意图。
具体实施方式
[0065]
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此:
[0066]
实施例1、一种基于超分辨率重建的模糊图像分类方法,如图1

7所示,包括步骤具体如下:
[0067]
步骤1、在上位机中,将获取的数据集的原始高分辨率图像进行高斯平滑后再进行下采样,通过下采样获得原始高分辨率图像对应的低分辨率图像,下采样的方式为把一个位于原始高分辨率图像上的w*h的窗口变成一个像素,其表达式为:
[0068]
p
k
=∑
i∈k
i
i
/(w
×
h)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0069]
其中,k为尺寸为w*h的窗口,p
k
为生成的像素点,i
i
为原始高分辨率图像的像素点。
[0070]
考虑到训练集每一幅低分辨率图像需要有两个标签,所以第一次在制作数据集时需要对每一张原始高分辨率图像指定类别标签;
[0071]
低分辨率图像由高分辨率图像下采样获得,所以低分辨率图像的标签之一就是对应的原始高分辨率图像,对应高分辨率图像的类别标签就是低分辨率图像的第二个标签。
[0072]
步骤2、构建融合模型
[0073]
本发明用于模糊图像分类的融合模型包括超分辨率重建模型和分类模型,且将超
分辨率重建模型和分类模型串联设计,分类结果的损失可以通过梯度下降算法直接作用于超分辨率重建模型的权重参数,这可以使得超分辨率重建模型不再作为独立的存在,而是起到对分类模型的输入起到自适应预处理的作用。
[0074]
步骤2.1、构建超分辨率重建模型
[0075]
超分辨率重建模型包括生成模型和鉴别模型两部分,生成模型如图2所示,步骤1获得的低分辨率图像作为生成模型的输入,首先经过一层尺寸为9步长为1的卷积层,并采用prelu作为激活函数,之后再利用16层残差卷积层提取低分辨率图像的特征,使残差块的输出经过一层3
×
3的卷积层并进行归一化处理;最后对输出数据加上第一层9
×
9卷积层的输出后按分辨率扩大倍数的一半设置上采样层的层数,并对上采样块的输出通过一层9
×
9卷积层从64通道缩小到3通道内,从而输出高分辨率假图像。
[0076]
生成模型中的卷积层是对读入的图像数据或上一层输出用卷积核进行卷积操作,如3
×
3卷积核的计算表达式为:
[0077][0078]
其中,为卷积核输出图像位置为(u,v)的像素点,为卷积核输入图像位置为(i+u,j+v)的像素点,为卷积核对应位置的权重,b
(l+2)
为卷积核对应位置的偏置,i为相对卷积核中心的横向位置,j为相对卷积核中心的纵向位置,l为卷积核所在卷积层序数,u为卷积核中心的横向位置,v为为卷积核中心的纵向位置,i、j、l、u、v均只能取整数,本实例中9
×
9卷积核计算表达式类似,只需将i,j的取值范围由[

1,1]改为[

4,4]即可。
[0079]
f
a
()为激活函数,prelu函数的表达式为:
[0080][0081]
其中,x为激活函数的输入,a为激活函数负向的斜率;
[0082]
鉴别模型的网络设计的优劣会直接影响生成模型生成图像的质量,如附图4,使输入的图像经过8层3
×
3卷积层后再经过一层1
×
1卷积层和二维池化层,最终输出得到鉴别分类结果,前八层的卷积层采用prelu作为激活函数,最后一层(二维池化层)采用sigmoid作为激活函数,除第一层的3
×
3卷积层和第九层的1
×
1卷积层其余卷积层(第二层3
×
3卷积层
‑‑
第八层的3
×
3卷积层)后都进行批规范化bn层处理;激活函数sigmoid表达式为:
[0083][0084]
其中x为激活函数的输入。
[0085]
步骤2.2、构建分类模型
[0086]
采用残差网络resnet50作为分类模型,如附图5,首先对在一层7
×
7的卷积层后接有4组残差网络,分别包含3、4、6、3个残差块(residualblock),最后再经过一层全局平均池化层进行分类任务获得分类结果。
[0087]
每个残差块(residualblock)由第一层的1
×
1卷积层、第二层的3
×
3卷积层和最后一层的1
×
1卷积层三层网络结构组成,其表达式为:
[0088]
h(x)=f(x)+x
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0089]
其中,x为残差块(residualblock)的输入,f(x)为输入数据经残差块(residualblock)的三层卷积网络计算后的结果,h(x)为残差块(residualblock)的输出。
[0090]
步骤3、训练融合模型
[0091]
步骤3.1、建立训练集、测试集
[0092]
本实例以orl faces数据集作为基础数据集,共有40个不同对象的人脸,每个对象有十张不同角度不同光线条件的照片,共有400张图像,将其按8:2的比例划分为训练集和测试集。原图像尺寸为92
×
112,将其插值到256
×
256作为原始高分辨率图像(hr),对其进行两次下采样获得64
×
64的低分辨率图像(lr),除此之外每一张原始高分辨率图像(hr)及其下采样获取的低分辨率图像(lr)均有对应的人脸分类标签。本发明适应性好,针对不同场景只需更换不同训练集均可实现较好的重建分类效果,对于其他数据集应用于本发明时,需确保数据集经下采样后每一份数据可以同时有高分辨率图像、低分辨率图像、分类标签存在,再根据高分辨率图像与对应低分辨率图像的放大倍数设置上采样层的层数即可。
[0093]
步骤3.2、建立超分辨率重建模型的损失函数
[0094]
超分辨率重建模型包含的生成模型和鉴别模型两部分,采用不同的损失函数用于计算模型结果的误差损失。生成模型的损失函数采用感知损失的定义,如图3所示,感知损失包括对抗损失和内容损失两部分,对抗损失即为由原始高分辨率图像x
o
下采样获取的低分辨率图像(lr)经过生成模型生成出来的高分辨率假图像x
g
(sr)被鉴别模型正确判断的损失,而内容损失定义为生成图像和原始高分辨率图像的语义特征差异,其计算方式是将vgg

19模型的全连接层部分舍弃,利用vgg

19模型的卷积层部分对生成模型重建的图像(高分辨率假图像(sr))和原始高分辨率图像(hr)分别进行特征提取获取包含语义特征的特征图f
fake
和f
real
,对对应的特征图计算均方误差,该误差即为内容损失。
[0095]
感知损失的表达式为:
[0096]
l
perceptual
(x
o
)=10
‑3×
l
adver
(x
g
)+l
cont
(f
real
,f
fake
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6)
[0097]
其中,l
perceptual
(x
o
)为感知损失,l
cont
(f
real
,f
fake
)为内容损失,l
adver
(x
g
)为对抗损失,
[0098]
内容损失的表达式为:
[0099][0100]
其中h,w为低分辨率图像的宽和高,r为超分辨率倍数,x,y为像素点位置的横纵坐标。
[0101]
对抗损失的表达式为:
[0102][0103]
其中,n为每批次图像测试张数,为生成模型生成的高分辨率假图像被鉴别模型鉴别的结果;
[0104]
鉴别模型采用二分类交叉熵bceloss作为损失函数,其表达式为:
[0105][0106]
其中,x
i
,y
i
分别为鉴别模型预测的结果和实际结果。
[0107]
步骤3.3、分类模型的损失函数采用了负对数似然损失函数nllloss,其表达式为:
[0108]
l
nll
(x,y)=

logx[y]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0109]
其中,x为分类结果概率分布,y为类别标签。
[0110]
步骤3.4、训练融合模型
[0111]
训练过程和策略如图6

7所示,具体为:在对融合模型进行训练的同时训练一个单独的生成模型,在每一批次数据用于训练时,先用真实高分辨率图像(即原始高分辨率图像(hr))和生成高分辨率图像(即生成模型生成的高分辨率假图像(sr))对鉴别模型进行训练;再利用下采样获取的低分辨率图像(lr)和对应的原始高分辨率图像(hr)训练生成模型,用生成模型训练更新过的参数替换掉融合模型中的超分辨率重建模型的对应参数;最后,利用低分辨率图像(lr)和对应分类标签训练整个融合模型,并将融合模型的超分辨率重建部分更新过的参数再替换掉生成模型的全部参数,如此反复训练直至模型在训练集上的损失不再有明显下降。
[0112]
训练过程中利用双回路式训练策略,能够充分利用低分辨率图像的两个标签使得模型拥有大量先验经验,提高图像重建和分类效果。融合模型根据输入的低分辨率图像正向传播计算网络模型的中间变量,从超分辨率重建模型部分的输出层获取高分辨率假图像(sr),从分类模型部分的输出层获取分类结果标签;根据提取出的高分辨率假图像(sr)和对应的原始高分辨率图像(hr)图像标签所计算的损失值反向传播计算出超分辨率重建模型的梯度,利用随机梯度下降(sgd)算法进行参数的更新,权值和偏置的更新公式如下:
[0113][0114][0115]
其中,是第l层第j个神经元与前一层第k个神经元之间的权重,为第l层第j个神经元的偏置,α为学习率,c(θ)为最终损失值。
[0116]
根据最后输出的分类识别结果标签和真实标签所计算的损失值反向传播算法计算出整个融合模型的新的梯度,利用sgd算法进行整个融合模型的权重参数的更新,循环训练训练集上准确率不再提高。
[0117]
步骤3.5、测试融合模型
[0118]
将测试集中的低分辨率图像作为融合模型的输入,测试融合模型的泛化能力,若能达到和训练集相差不大的识别准确率,则代表获得了可以实际生产使用的融合模型。本发明实例中在orl faces数据集划分的测试集上可以达到91.25%的准确率,在整个orl faces数据集数据集上可以达到88.75%的准确率。
[0119]
实验1:
[0120]
将本发明所设计的融合模型与利用resnet50训练单独分离的超分辨率重建模型生成的高分辨率图像假图像这一方案进行对比实验,数据集采用改造的orl faces数据集,训练集共320张图像,测试集共80张图像,在训练阶段提供低分辨率图像及其对应的高分辨率图像标签和分类标签,测试阶段仅提供低分辨率图像。对比实验基于ubuntu 18.04系统、python 3.8编程语言和pytorch深度学习框架,设置迭代次数各50次,批次数为16,训练所采用gpu为nvidia geforce rtx 3090(m)。
[0121]
经测试,本发明提出的融合模型在训练集上可以达到88.125%的准确率,测试集上达到91.25%的准确率,在整个orl faces数据集上准确率为88.75%;而对比方案利用resnet50训练单独分离的超分辨率重建模型生成的高分辨率图像假图像在训练集上的准确率为78.75%,测试集上准确率为83.75%,在整个orl faces数据集上准确率仅为79.75%,通过对比可以看出本发明所提出的模型对低分辨率图像的识别效果有显著提升,对图像信息的获取效果更好。
[0122]
最后,还需要注意的是,以上列举的仅是本发明的若干个具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1