一种基于两阶段图像上下文识别网络及单图像阴影去除方法

文档序号:26587035发布日期:2021-09-10 19:38阅读:170来源:国知局
一种基于两阶段图像上下文识别网络及单图像阴影去除方法

1.本发明属于图像光照编辑领域,具体涉及一种基于两阶段图像上下文识别网络及单图像阴影去除方法,可以捕获并利用图像中成对的上下文匹配信息有效地消除图像中的阴影。


背景技术:

2.目前,常用的阴影去除方式可主要分为以下两类:一、基于传统物理的方法,如论文“single

image shadow detection and removal using paired regions”中所提出的阴影去除方法,通过物理的模型来组像素地分析图像的光照强度。该方法在一定假设前提下能够取得不错的阴影去除效果,但由于十分依赖于先验知识的获取和一系列相关的假设,该方法的泛化能力较差,无法较好的处理假设之外的大部分数据且通常结果存在部分伪影;二、基于深度学习的方法,这类方法可以较好的克服传统物理的方法中依赖大量假设、处理结果存在伪影的问题,如论文“ris

gan:explore residual and illumination with generative adversarialnetworks for shadow removal”中所提出的基于对抗生成网络的阴影去除方法通过大量数据的有监督学习,取得了一定的进展,但该方法仍然存在一些如处理结果颜色扭曲,阴影去除不完全的严重问题,难以满足实际应用中的需求。现有技术中,仍然缺乏一种泛化能力强,能满足用户需求,在现实世界中实际有效的单图像阴影去除方法。


技术实现要素:

3.为了克服现有技术的不足,本发明提供了一种基于两阶段图像上下文识别网络的单图像阴影去除方法,旨在解决现有的阴影去除方法泛化能力不强、处理结果存在颜色扭曲、难以满足实际应用需求的问题。本发明提供的基于两阶段图像上下文识别网络,其特殊之处在于:包括基于上下文特征迁移的阴影去除网络和结果精化网络两阶段,其中,阴影去除网络包括特征提取器、“双头”上下文信息匹配模块、上下文特征迁移模块和上采样阴影去除结果生成模块;所述结果精化网络用于对阴影去除网络输出的结果进行进一步精化处理;
4.所述特征提取器用于提取不同尺度的图像特征;
5.所述“双头”上下文信息匹配模块首先对图像块的特征表示进行建模并根据该特征来捕获需要的图像中存在的上下文信息匹配对集合;
6.所述上下文特征迁移模块包括一个高斯采样层和一个采样结果聚合层,通过高斯采样进行上下文特征信息的迁移;
7.所述上采样阴影去除结果生成模块将提取的特征图还原成输入图像的原始大小并分别预测l,a,b通道上的阴影去除结果。
8.进一步地,所述“双头”上下文信息匹配模块包括一个用于提取图像块特征表示的特征提取器,一个用于区分匹配对类型的分类器和一个用于预测图像块匹配程度的预测
器;
9.其中,所述特征提取器由卷积层和残差块组成;所述预测器由全连接层和softmax层组成。
10.进一步地,所述上采样阴影去除结果生成模块包括四个反卷积层、四个残差层和三个卷积层。
11.进一步地,匹配对类型分为“0、1、

1”三类:“0”表示图像块的匹配对来自相同区域,即均为阴影块或均为非阴影块;“1”表示前一个图像块为阴影块,后一个图像块为非阴影块;
“‑
1”则与1相反;预测的匹配程度为一个0~1的浮点数,表示匹配对的匹配程度,“0”表示最不匹配,“1”表示最匹配。
12.基于同一发明构思,本发明还涉及一种利用基于两阶段图像上下文识别网络的单图像阴影去除方法,包括以下步骤:
13.步骤s1:利用srd数据集制作单图像阴影去除数据集;
14.步骤s2:使用步骤s1的单图像阴影去除数据集,训练“双头”上下文信息匹配模块;
15.步骤s3:使用步骤s1中涉及的除数据集和步骤s2中训练好的“双头”上下文信息匹配模块,根据权利要求1所述的网络进行有监督地训练;
16.步骤s4:利用步骤s3中训练好的网络进行单图像阴影去除。
17.进一步地,所述步骤s1中单图像阴影去除数据集包括两种,其一为现有数据集,即成对的阴影图像和对应的无阴影图像,还包括该阴影图像的阴影遮罩;其二为制作数据集,即随机从现有数据集图像的阴影区域和非阴影区域各选择一个图像块,计算它们的余弦相似度,选择其中余弦相似度高于0.95的图像块对作为匹配对,小于0.5的图像块对作为非匹配对;此外,从图像中随机选择两个图像块,并根据图像块所属区域给予其对应的匹配对类型标签。
18.更进一步,
19.步骤s2使用步骤s1中的现有数据集和制作数据集,训练两阶段图像上下文识别网络中“双头”上下文信息匹配模块,具体过程如下:
20.s21首先对现有数据集中的阴影图片进行均值滤波来使得阴影图像的光照强度均值化,从而获得shadow

unaware图像,具体计算公式如下:
[0021][0022]
其中i
i,j
表示阴影图像在坐标(i,j)处的亮度值,p表示以(i,j)为中心的一个3*3的图像块,n表示p图像块中的像素点的个数,,i
avg
表示图像的全局平均亮度值;
[0023]
s22将s21中输入的阴影图片和得到的shadow

unaware图像按照步骤s1中制作的训练集中的图像块的划分方法,划分为相同像素大小32*32的图像块,将相同位置的两个图像块进行级联并将级联后的结果送入“双头”上下文信息匹配模块中的特征提取器,对图像块的特征表示进行建模;其中,将输入图片缩小或放大至400*400的大小;
[0024]
s23将s22中计算得到的特征表示送入“双头”上下文信息匹配模块中的匹配对类型分类器和图像块匹配程度预测器分别预测图像块对的匹配对类型和匹配程度;
[0025]
s24分别用交叉熵损失l
cls
和l2损失l
reg
计算预测的匹配对类型和匹配程度与步骤s1的制作数据集中ground

truth值的误差,以训练该模块,计算公式如下:
[0026][0027][0028]
其中为真实的匹配对类型,为真实的匹配程度,y
i
为预测的匹配对类型,s为预测的匹配程度,||
·
||2为l2距离。
[0029]
再进一步地,步骤s3使用步骤s1中涉及的现有数据集和步骤s2中训练好的“双头”上下文信息匹配模块,对将使用的两阶段图像上下文识别网络进行有监督地训练,具体过程如下:
[0030]
s31将阴影图片输入训练好的“双头”上下文信息匹配模块中进行前向推理,具体过程见上述步骤s2,预测图像块的匹配对类型和匹配程度,并根据这些结果选出能有效帮助阴影去除任务的匹配对,即预测的匹配对类型为“1”的匹配对中分类中匹配程度最高的k对匹配对;
[0031]
s32将输入的阴影图片输入两阶段图像上下文识别网络中的特征提取器中,提取输入阴影图像的不同尺度的特征图:feature1,feature2,feature3,feature4;
[0032]
s33将s31中计算得到的图像块匹配对集合和s32中提取的特征图输入上下文信息特征迁移模块进行上下文信息特征迁移,得到对应的迁移特征t_feature1,t_feature2,t_feature3,t_feature4,迁移时使用的高斯采样具体公式定义如下:
[0033][0034]
其中f

x,y
和f
x,y
分别为采样后特征图t_feature和采样前特征图feature在(x,y)处的值,为在位置(x+δx,y+δy)的高斯权重且其公式如下:
[0035][0036]
其中σ为高斯分布的方差;
[0037]
s34将s33中迁移后的特征输入两阶段图像上下文识别网络中的上采样阴影去除模块使特征图恢复到与输入图片一致的原始图像的大小并分别预测图像l通道、a通道和b通道上的阴影去除结果;
[0038]
s35将s34中得到l通道、a通道和b通道的阴影去除结果,和输入的阴影图像一同送入第二阶段精化网络中,最终得到精化处理后的阴影去除结果;
[0039]
s36使用像素级的阴影去除损失l
rem
,感知损失l
per
和梯度损失l
grad
计算阴影去除结果和ground

truth值的误差,训练两阶段图像上下文识别网络canet,具体计算公式如下:
[0040][0041][0042][0043]
其中,为阴影去除结果的真实值,o为预测的阴影去除结果,vgg(
·
)为vgg16网络
中的特征提取器,为图像在像素级别上的梯度。
[0044]
本发明的优点在于:
[0045]
1、本发明提出的“双头”上下文信息匹配模块可以显式地捕获图像中存在的上下文信息匹配关系。
[0046]
2、本发明提出的上下文特征迁移模块可以根据捕获的上下文信息匹配对,有效地迁移图像上下文特征。
[0047]
3、本发明提出的两阶段图像上下文识别网络通过对lab颜色空间中的不同通道进行分别处理,可以有效避免处理结果颜色扭曲的问题。
[0048]
4、本发明提供的基于两阶段图像上下文识别网络的单图像阴影去除方法可以取得比现有阴影去除方法更精确的效果,具有准确的优点。
附图说明
[0049]
图1为实施例1中的制作训练“双头”上下文信息匹配模块使用的数据集的示意图。
[0050]
图2为实施例1中的“双头”上下文信息匹配模块的示意图。
[0051]
图3为实施例1中的上下文特征迁移模块的示意图。
[0052]
图4为实施例1中的两阶段的图像上下文识别网络的示意图。
具体实施方式
[0053]
为进一步了解本发明的内容,使本发明的目的、技术方案及优点更加清晰明了,以下结合附图和实施例对本发明进行详细说明。应当理解的是,此处仅是对本发明进行解释而并非限定。
[0054]
本发明所设计的基于两阶段图像上下文识别网络context

aware network(canet),包括基于上下文特征迁移的阴影去除网络和结果精化网络两阶段,其中,阴影去除网络包括特征提取器、“双头”上下文信息匹配模块、上下文特征迁移模块和上采样阴影去除结果生成模块;结果精化网络用于对阴影去除网络输出的结果进行进一步精化处理。
[0055]
其中,特征提取器用于提取不同尺度的图像特征。
[0056]“双头”上下文信息匹配模块首先对图像块的特征表示进行建模并根据该特征来捕获需要的图像中存在的上下文信息匹配对集合;“双头”上下文信息匹配模块包括一个用于提取图像块特征表示的特征提取器,一个用于区分匹配对类型的分类器和一个用于预测图像块匹配程度的预测器;特征提取器由卷积层和残差块组成;所述预测器由全连接层和softmax层组成。该“双头”上下文信息匹配模块首先对输入的阴影图像进行均值滤波来使得阴影图像的光照强度均值化,然后对两张图片进行图像块的划分并将划分出的图像块成对地输入到网络中,分别预测出匹配对的匹配类型和匹配程度。预测的匹配对类型分为“0、1、

1”三类:“0”表示图像块的匹配对来自相同区域,即均为阴影块或均为非阴影块;“1”表示前一个图像块为阴影块,后一个图像块为非阴影块;
“‑
1”则与1相反。预测的匹配程度为一个0~1的浮点数,表示匹配对的匹配程度,“0”表示最不匹配,“1”表示最匹配。
[0057]
上下文特征迁移模块包括一个高斯采样层和一个采样结果聚合层,通过高斯采样进行上下文特征信息的迁移;在本实施例中,对于输入的特征图,该模块首先为每个阴影图像块在捕获的上下文信息匹配对集合中检索匹配程度最高的k个非阴影图像块,在得到的
图像块的位置分别进行高斯采样,然后将采样得到的结果迁移至对应的阴影区域处。最后,将k个迁移后的结果进行合并。考虑到计算的时间成本,本实施例中k取值为3。
[0058]
上采样阴影去除结果生成模块将提取的特征图还原成输入图像的原始大小并分别预测l,a,b通道上的阴影去除结果。上采样阴影去除结果生成模块包括四个反卷积层、四个残差层和三个卷积层。
[0059]
本发明的基于两阶段图像上下文识别网络,能较好地实现对目标单幅图像的阴影去除。该canet网络是一个端到端的单幅图像阴影去除网络,采用两个阶段来实现阴影的去除。在本实施例进行阴影去除时,在第一阶段,首先通过预训练的densenet提取图像的上下文特征,预训练的densenet网络是公开的预训练模型,其中上下文特征是一种比较常用的,对特征图feature map的描述,通常表示为经过深度卷积神经网络提取的特征;并根据设计的“双头”上下文信息匹配模块所获得的上下文信息匹配对集,利用上下文特征迁移模块来对提取的图像特征进行上下文信息的迁移;然后利用这些迁移的特征,分别恢复对l通道,a通道,b通道的阴影进行恢复。在第二阶段,精化网络整合输入的阴影图像和上一届段的输出,对阴影去除结果进行进一步精化处理,生成最终的阴影去除结果。
[0060]
基于同一构思,本发明还设计了一种基于两阶段图像上下文识别网络的单图像阴影去除方法,其包括以下步骤:
[0061]
步骤s1:制作数据集,使用与应用场景相近的成对的数据集或公开的数据集,所需数据集需包括成对的阴影图像、非阴影图像和阴影遮罩。本实施例使用论文“deshadownet:a multi

context embedding deep network for shadow removal”中公开的srd数据集制作训练canet中“双头”上下文信息匹配模块所需要的数据集,其具体制作流程如图1所示,随机从图像的阴影区域和非阴影区域各选择一个图像块,图像块为32*32的大小,图像块的划分为在缩放到400*400的图像上利用滑动窗口进行图像块的截取,计算它们的余弦相似度,选择其中余弦相似度高于0.95的图像块对作为匹配对,小于0.5的图像块对作为非匹配对。此外,从图像中随机选择两个图像块,并根据图像块所属区域给予其对应的匹配对类型标签(例如:来自相同区域,标为“0”);制作的数据集的大小根据使用的现有数据集的大小而定,在可允许范围内可使用整个数据集进行制作,如使用istd数据集,训练集包括1330对图片,制作的数据集大小在360,000左右。在制作数据集时,为阴影图像的每一个阴影块寻找k个匹配的非阴影块,本发明中k为3,同时随机寻找与匹配对数量相同的非匹配对,即360,000对中50%是匹配对,50%是非匹配对。
[0062]
步骤s2:使用步骤s1中涉及的现有阴影去除数据集(包括阴影图像和对应的无阴影图像对)和步骤s1制作的数据集,训练canet中“双头”上下文信息匹配模块具体过程为:
[0063]
s21首先对现有阴影去除数据集中的阴影图片进行均值滤波来使得阴影图像的光照强度均值化,从而获得shadow

unaware图像,具体计算公式如下:
[0064][0065]
其中i
i,j
表示阴影图像在坐标(i,j)处的亮度值,p表示以(i,j)为中心的一个3*3的图像块,n表示p图像块中的像素点的个数,在本实施例中为9,i
avg
表示图像的全局平均亮度值;
[0066]
s22将s21中输入的阴影图片和得到的shadow

unaware图像按照步骤s1中制作的
训练集中的图像块的划分方法,划分为相同大小(32*32)的图像块,将相同位置的两个图像块进行级联并将级联后的结果送入“双头”上下文信息匹配模块中的特征提取器,对图像块的特征表示进行建模,本实施例建模为256维的特征向量;其中,将输入图片缩小或放大至400*400的大小;
[0067]
s23将s22中计算得到的特征表示送入“双头”上下文信息匹配模块中的匹配对类型分类器和图像块匹配程度预测器分别预测图像块对的匹配对类型和匹配程度;
[0068]
s24分别用交叉熵损失l
cls
和l2损失l
reg
计算预测的匹配对类型和匹配程度与步骤s1制作的数据集中ground

truth值的误差,以训练该模块,计算公式如下:
[0069][0070][0071]
其中为真实的匹配对类型,为真实的匹配程度,y
i
为预测的匹配对类型,s为预测的匹配程度,||
·
||2为l2距离。
[0072]
步骤s3:使用步骤s1中涉及的现有阴影去除数据集(包括阴影图像和对应的无阴影图像对)和步骤s2中训练好的“双头”上下文信息匹配模块,对将使用的两阶段图像上下文识别网络canet进行有监督地训练,具体过程如下:
[0073]
s31将阴影图片输入训练好的“双头”上下文信息匹配模块中进行前向推理,过程见上述步骤s2,预测图像块的匹配对类型和匹配程度,并根据这些结果选出能有效帮助阴影去除任务的匹配对,即预测的匹配对类型为“1”的匹配对中分类中匹配程度最高的k对匹配对,本实施例k为3;
[0074]
s32将输入的阴影图片输入canet中的特征提取器中,提取输入阴影图像的不同尺度的特征图:feature1,feature2,feature3,feature4;
[0075]
s33将s31中计算得到的图像块匹配对集合和s32中提取的特征图输入cft模块进行上下文信息特征迁移,得到对应的迁移特征t_feature1,t_feature2,t_feature3,t_feature4,迁移时使用的高斯采样具体公式定义如下:
[0076][0077]
其中f
x

,y
和f
x,y
分别为采样后特征图t_feature和采样前特征图feature在(x,y)处的值,为在位置(x+δx,y+δy)的高斯权重且其公式如下:
[0078][0079]
其中σ为高斯分布的方差;
[0080]
s34将s33中迁移后的特征输入canet中的上采样阴影去除模块使特征图恢复到与输入图片一致的原始图像的大小并分别预测图像l通道、a通道和b通道上的阴影去除结果;
[0081]
s35将s34中得到l通道、a通道和b通道的阴影去除结果,和输入的阴影图像一同送入第二阶段精化网络中,最终得到精化处理后的阴影去除结果;
[0082]
s36使用像素级的阴影去除损失l
rem
,感知损失l
per
和梯度损失l
grad
计算阴影去除结果和ground

truth值的误差,训练两阶段图像上下文识别网络canet,具体计算公式如
下:
[0083][0084][0085][0086]
其中,为阴影去除结果的真实值,o为预测的阴影去除结果,vgg(
·
)为vgg16网络中的特征提取器,为图像在像素级别上的梯度。
[0087]
考虑到计算的时间成本,在本实施例使用的图片在输入网络中之前需要对输入图片进行图像尺寸变换,将通过双线性插值其缩小或放大至400*400的图像大小;相对的,需要将网络输出的结果重新调整至原图像大小。
[0088]
在本实施例使用的图片在输入网络中之前需要对输入图片进行归一化操作,具体计算公式如下:
[0089][0090]
其中image
i,j
表示输入图像在(i,j)位置处的像素值;相对的,网络输出的结果需要进行反归一化操作:
[0091]
image
i,j
=image
i,j
*255.0。
[0092]
步骤s4:利用步骤s3中训练好的网络进行单图像阴影去除,该过程为网络自动处理。具体需要进行如下过程:
[0093]
对需要进行处理的阴影图片进行均值滤波来使得阴影图像的光照强度均值化,从而获得shadow

unaware图像;
[0094]
将需要进行处理的阴影图像和中得到的shadow

unaware图像划分为2500个32*32大小的图像块,将相同位置的两个图像块进行级联并将级联后的结果送入“双头”上下文信息匹配模块分别预测图像块对的匹配对类型和匹配程度,并根据这些结果选出能有效帮助阴影去除任务的匹配对,即预测的匹配对类型为“1”的匹配对中分类中匹配程度最高的k对匹配对;
[0095]
利用步骤s3中训练好的canet中的特征提取器提取输入阴影图像的不同尺度的特征图:feature1,feature2,feature3,feature4;
[0096]
根据计算得到的图像块匹配对集合,利用上下文信息特征迁移模块对不同尺度的图像特征feature1,feature2,feature3,feature4进行上下文信息特征迁移,得到对应的迁移特征t_feature1,t_feature2,t_feature3,t_feature4;
[0097]
将迁移得到的特征图t_feature1,t_feature2,t_feature3,t_feature4输入canet中的上采样阴影去除模块,使特征图恢复到与输入图片一致的原始图像的大小并分别预测图像l通道、a通道和b通道上的阴影去除结果;
[0098]
将canet第一阶段网络得到的l通道、a通道和b通道的阴影去除结果,和输入的阴影图像一同送入第二阶段精化网络中,最终得到精化处理后的阴影去除结果。
[0099]
本实施例提供了一种基于两阶段图像上下文识别网络的单图像阴影去除方法,该方法显式地捕获阴影图像中隐式存在的阴影与非阴影图像对关系并根据该匹配对关系来进行图像的上下文信息特征迁移从而将有用的非阴影区域的信息迁移至非阴影区域;之
后,利用这些迁移后的特征图进行l通道、a通道和b通道的阴影去除并经过最后的精化处理网络得到高质量的阴影去除结果。解决了当前阴影去除结果不准确,存在一些如处理结果颜色扭曲,泛化能力较差的问题,同时实现了对单幅图像进行的高质量的阴影去除。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1