CN112102182B - 一种基于深度学习的单图像去反射方法 - Google Patents

一种基于深度学习的单图像去反射方法 Download PDF

Info

Publication number
CN112102182B
CN112102182B CN202010893079.0A CN202010893079A CN112102182B CN 112102182 B CN112102182 B CN 112102182B CN 202010893079 A CN202010893079 A CN 202010893079A CN 112102182 B CN112102182 B CN 112102182B
Authority
CN
China
Prior art keywords
layer
image
reflection
ghost
convolution kernel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010893079.0A
Other languages
English (en)
Other versions
CN112102182A (zh
Inventor
黄艳
秦欣然
全宇晖
许勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN202010893079.0A priority Critical patent/CN112102182B/zh
Publication of CN112102182A publication Critical patent/CN112102182A/zh
Application granted granted Critical
Publication of CN112102182B publication Critical patent/CN112102182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image

Abstract

本发明公开了一种基于深度学习的单图像去反射方法。本发明利用重影线索,利用双重反射合成建模,首先根据传统方法或者深度学习的方法进行重影卷积核参数估计,利用深度网络估计背景层图像和反射层图像提出自监督,从而达到更好的去反射的目的。本发明使用传统方法或者深度学习的方法对于重影卷积核k估计,更好的利用反射图像中重影线索,从而分离重影反射图像的背景层图像和反射层图像。本发明对于估计重影卷积核k和估计背景层图像T、反射层图像R的模型进行预训练,从而加快模型收敛速度,提高模型表现。本发明能够对大部分的自然场景重影反射图像产生较好的复原效果。

Description

一种基于深度学习的单图像去反射方法
技术领域
本发明涉及数字图像复原领域,特别涉及了一种基于深度学习的单图像去反射方法。
背景技术
随着科学技术的不断发展人们对信息的感知、获取和处理变得越来越重要,然而现实世界的拍摄过程光照造成的反射会导致户外视频系统捕获的图像颜色和对比度严重退化不仅会影响人们的观察理解,而且妨碍图像后续处理的基本信息提取。当人们在玻璃前拍摄物体的照片时,反射是很常见的物理现象。因此,如何降低或去除反射对图像的影响成为计算机视觉领域的研究的基础问题。
针对反射问题,Shih等人(Y.Shih,D.Krishnan,F.Durand,and W.T.Freeman,“Reflection removal using ghosting cues,”in IEEE Conference on ComputerVision and Pattern Recognition,2015.)对Google上的关于窗户反射的图像进行了物理统计,结果发现大约有一半的图像会伴随有重影现象这是由于玻璃的双重反射在图像上产生的关于反射层场景的二次成像现象导致的。本发明主要针对有重影效应的反射图像,使用了Diamant和Schechner提出的重影模型(Y.Diamant and Y.Y.Schechner.Overcomingvisual reverberations.In IEEE Conference on Computer Vision and PatternRecognition(CVPR),pages 1–8,2008.2,3,5.)。来自被反射物体的光线(与相机在玻璃窗格的同一侧)首先从玻璃窗格反射,以产生一个原始反射层,用R1表示。由于玻璃是半反射的,因此R1仅包含一定比例的入射光。其余的透过玻璃,到达另一侧,其中的一部分会反射回相机,这导致用R2表示的第二反射。R1是R2在空间上移位和衰减的图像。R1和R2的叠加产生了重影反射层图像R,T为背景层图像,I为观测得到的带重影的反射图像。他们量化了传输层和反射层中的重影。将重影建模为反射层R与内核k的卷积。然后可以分别通过R和T将观察到的图像I建模为重影反射层和透射层的加法混合:
Figure BDA0002657492250000011
其中重影卷积核k的估计由空间移位矢量d和衰减因子c进行参数化:
k=δ(x)+cδ(x-d) (2)
这里x指像素的坐标,δ(·)表示狄拉克函数。
图像去反射已经研究多年,针对反射现象研究人员提出通过使用特定的硬件设备,例如以不同偏振角拍摄的几张图像来估计反射层(N.Kong,Y.Tai,and J.Shin.Aphysically-based approach to reflection separation:From physical modeling toconstrained optimization.IEEE Transactions on Pattern Analysis and MachineIntelligence(TPAMI),36(2):209–221,2014.1,2.Y.Y.Schechner,J.Shamir,andN.Kiryati.Polarization and statistical analysis of scenes containing asemireflector.The Journal of the Optical Society of America A,17(2):276–284,2000.1,2.),或者依靠具有和不具有闪光灯拍摄的同一场景的两张照片消除闪光图像的反射和高光等基于多图像的去反射方法(Y.Y.Schechner,N.Kiryati,and J.Shamir.Blindrecovery of transparent and semireflected scenes.In IEEE Conference onComputer Vision and Pattern Recognition(CVPR),volume 1,pages 38–43,2000.1,3.)。这些方法都取得了较好去反射的效果,但是这些算法都是基于多幅图像,需要较长的图像序列,极大地限制了它们的应用范围。考虑到普通用户的技能和资源,这些方法都不可行。对于使用普通相机进行的日常摄影,去除单个图像反射的方法是十分必要的。
单图像去反射问题是一个极具挑战性的病态问题。通常,在实际场景中,仅依赖一张图像的方法的性能受到限制,而且目标图像和反射层图像之间同时满足自然图像常见的统计特性,这增大了问题的挑战性。现有的单图像去反射研究可以分成两类。第一类使用基于非学习的方法解决这个问题。先前的一些工作采用了不同的先验信息来开发背景层和反射层的特殊属性。广泛使用的先验是自然图像梯度稀疏性(A.Levin,A.Zomet,andY.Weiss.Learning to perceive transparency from the statistics of naturalscenes.In NIPS,2003.2.A.Levin,A.Zomet,and Y.Weiss.Separating reflections froma single image using local features.In CVPR,2004.2.),以找到用于层分解的最小边缘和角。他们的方法依赖于用户标记背景和反射边缘,这非常费力,并且可能在纹理区域中失败。最近的工作利用透射和反射之间的统计不对称性,例如考虑反射场景是消色差的情况(K.Kayabol,E.E.Kuruoglu,and B.Sankur.Image source separation using colorchannel dependencies.In Independent Component Analysis and Signal Separation,pages 499–506.Springer,2009.3.),或者相对于透射而言反射模糊(Y.Li andM.S.Brown.Single image layer separation using relative smoothness.In IEEEConference on Computer Vision and Pattern Recognition(CVPR),2014.3,6.),还有一些方法(Y.Shih,D.Krishnan,F.Durand,and W.T.Freeman,“Reflection removal usingghosting cues,”in IEEE Conference on Computer Vision and Pattern Recognition,2015.)利用了通过双层玻璃拍摄的图像上的重影线索来区分背景层和反射层。
另一类通过使用基于学习的方法。Fan等(Q.Fan,J.Yang,G.Hua,B.Chen,andD.P.Wipf,“A generic deep architecture for single image reflection removal andimage smoothing.”in IEEE International Conference on Computer Vision,2017.)通过合成数据集训练深度神经网络,利用边缘信息去除反射层。Zhang等(Zhang,X.,Ren,N.,Chen,Q.:‘Single image reflection separation with perceptual losses.IEEE/CVFConf.on Computer Vision and Pattern Recognition,Salt Lake City,UT,2018.)利用低级和高级图像信息的损失,提出了一种基于卷积神经网络的反射分离方法。Chi等(Chi,Z.,Wu,X.,Shu,X.,et al.:‘Single Image Reflection Removal Using Deep Encoder-Decoder Network,2018.)首先估计反射层,然后重建基于估计的反射和传输层以消除反射。Chang和Jung(Chang,Y.,Jung,C.:‘Single image reflection removal usingconvolutional neural networks’,IEEE Trans.Image Process.,2019,28,(4),pp.1954–1966.)构建了一个由编码器和解码器组成的端对端网络,以去除单个图像反射。它倾向于学习像素级反射图像而不是传输层。Yang等(Yang,J.,Gong,D.,Liu,L.,et al.:‘Seeingdeeply andbidirectionally:a deep learning approach for single imagereflection removal’.Proc.of the European Conf.on Computer Vision(ECCV),Munich,Germany,2018,pp.654–669.)提出了一种级联深度神经网络,其使用估计的背景层图像来估计反射,然后使用估计的反射来估计背景层图像。Li等人(Z.Chi,X.Wu,X.Shu,andJ.Gu,“Single image reflection removal using deep encoder-decoder network,”arXiv preprint arXiv:1802.00094,2018.)开发了一种基于深度编码器-解码器,使用混合反射图像和反射边缘作为输入来预测图像反射层。
基于非学习的去反射方法基于图像先验,无法应用于更一般,更复杂的场景。而基于学习的方法,由于深度学习利用其全面的建模能力从而达到更好的反射消除效果。然而现有的基于深度学习的去反射方法没有显示的模型中引入图像先验。因此研究提出基于重影线索的单图像去反射技术,针对反射图像中经常出现的重影现象进行研究,充分利用重影线索,这些提示是由反射场景从玻璃表面移开的两次反射产生的。在双窗格窗口中,每个窗格在与相机相同的玻璃一侧上反射对象的偏移和衰减版本,利用线索可以区分背景层和反射层,从而达到单图像去反射的效果。
发明内容
重影效应是指由于玻璃的双重反射产生的模式重复效应,针对反射图像中经常出现的重影现象,本项目主要研究基于重影线索的单图像去反射技术,针对反射图像中经常出现的重影现象进行研究,充分利用重影线索来区分背景层和反射层。本发明的目的在于克服现有技术的缺点与不足,针对于合成重影反射数据集有别于真实世界的反射图像,而现实世界中的重影反射训练样本难以得到真实背景层、反射层和重影卷积核参数,本发明提供一种利用重影线索,利用双重反射合成建模,首先根据传统方法或者深度学习的方法进行重影卷积核参数估计,利用深度网络估计背景层图像和反射层图像提出自监督的学习方法,从而达到更好的去反射的目的。
本发明的目的至少通过如下技术方案之一实现。
一种基于深度学习的单图像去反射方法,包括以下步骤:
S1、首先合成具有带重影的反射图像以及对应重影参数和背景层反射层图像的合成反射图像数据集,通过合成反射图像数据集中反射重影图像和对应重影参数对于进行重影卷积核k参数估计的CNN模型有监督的进行预训练;
S2、利用具有真实背景层图像T和反射层图像R对应的合成反射图像数据集通过有监督学习对于估计背景层图像T和反射层图像R的基于U-net模型进行预训练;
S3、将具有在真实世界中对于重影卷积核k、真实背景层图像T和反射层图像R未知的带重影的反射图像的数据集作为真实反射图像数据集;输入带重影的真实反射图像I根据重影区域信息利用传统方法或者深度学习的方法及S1中预训练得到的CNN模型进行重影卷积核参数的估计得到k′;
S4、将步骤S3中的带重影的真实反射图像I同时输入基于U-net模型输出对应背景层图像T′和反射层图像R′;
S5、根据步骤S3得到的重影卷积核k′、步骤S4得到的背景层图像T′和反射层图像R′,通过已有带重影的真实反射图像I进行自监督学习,训练网络模型;
S6、将测试数据集中的带重影的反射图像输入训练好的基于U-net模型,输出对应的反射层图像和背景层图像。
进一步地,步骤S1包括以下步骤:
S1.1、为合成带重影的反射图像的数据集,衰减因子c在[0.5,1]随机采样,空间移位矢量d是一个随机向量满足1<||(d)||2≤20,在现有的真实图像数据集中随机选择两张图像作为反射层和背景层,从而生成若干张具有反射重影图像、对应重影参数和背景层反射层图像的合成数据集;在合成数据集中随机选择N1个大小为r×r的反射图像区域块,记为xi;
S1.2、将害合成反射图像区域块xi的对应重影参数及衰减因子c、空间移位矢量d根据公式计算区域块真实的重影卷积核k,具体如下:
k=δ(x)+cδ(x-d)
其中x指像素的坐标,δ(·)表示狄拉克函数;以xi作为输入,重影卷积核k作为标签训练CNN模型。
进一步地,所述CNN模型包括卷积层conv、批归一化层BN、激活函数ReLU和激活函数SoftMax;
第一层包括64个大小为3×3×c的滤波器的卷积层,其中c表示通道数,彩色图像c=3;第二层至第八层均包括64个大小为3×3×64的滤波器的卷积层和批归一化层,且第二层至第八层均添加激活函数ReLU输出至下一层;第九层包括c个大小为3×3×64的滤波器用于重构输出,且第九层添加激活函数SoftMax作为输出;
所述训练CNN模型为将估计的重影卷积核k′与真实的重影卷积核k之间的均方误差作为损失函数
Figure BDA0002657492250000041
使用SGD反向传播算法训练网络各层参数。
进一步地,步骤S2中,采用步骤S1中的合成反射图像数据集作为训练样本,通过有监督学习方法训练生产背景层图像T和反射层图像R的基于U-net模型,具体如下:
对于S1.1中随机选择的合成反射图像区域块xi,以xi对应的真实背景层图像T和反射层图像R作为标签训练基于U-net模型;
所述基于U-net模型包括卷积层Conv、批归一化层BN、最大池化层MaxPool、反卷积层Deconv、激活函数ReLU以及跳跃链接Skip Conn;其中,最大池化层用于进行下采样,反卷积层用于进行上采样;首先输入大小为W×H×c图像利用三层包括64个大小为3×3×c的滤波器的卷积层和激活函数ReLU进行特征提取,特征输入三层下采样层,下采样层由卷积层和激活函数ReLU和2×2池化核的最大池层构成;将下采样层输出的图像编码输入到三层上采样层,上采样层由卷积层和激活层ReLU和反卷积层构成,并且为保证扩展路径与收缩路径相同大小的特征图更好的进行跳层连接,反卷积操作之后引入2×2卷积核;跳过连接从第1/2个下采样层添加到第3/2个上采样层;将下采样层输出的大小为W×H×64特征传递给两个多层感知器;
两个多层感知器结构相同均为四层,第一层包括64个大小为3×3×64的滤波器的卷积层,批归一化层,激活函数ReLU;第二层为16个大小为3×3×64的滤波器的卷积层,批归一化层,激活函数ReLU;第三层为16个大小为3×3×16的滤波器的卷积层,批归一化层,激活函数ReLU;第四层为c个大小为3×3×16的滤波器的卷积层激活函数ReLU;两个多层感知器输出分别为背景层图像T′和反射层图像R′;
所述基于U-net模型将估计的背景层图像和反射层图像与真实背景层图像和反射层图像的均方误差和作为损失函数
Figure BDA0002657492250000051
使用SGD反向传播算法进行训练,训练各网络层参数。
进一步地,步骤S3中,首先将真实反射数据集随机裁剪N2个大小为w×h的真实的带重影的反射图像;对于真实带重影的反射图像I,通过传统方法对重影卷积核k进行参数估计,重影卷积核k由空间移位矢量d和衰减因子c进行参数化,包括以下步骤:
S3.1、首先根据输入真实带重影的反射图像I的拉普拉斯算子的2-D估计空间移位矢量得到d′;
S3.2、根据空间移位矢量d′估计衰减因子得到c′;
S3.3、根据衰减因子c′、空间移位矢量d′,通过公式k=δ(x)+cδ(x-d)求出重影卷积核参数估计k′。
进一步地,步骤S3.1包括以下步骤:
S3.1.1、通过计算反射图像I的拉普拉斯算子,得到I的2-D的空间偏移上的自相关图
Figure BDA0002657492250000061
S3.1.2、在自相关图
Figure BDA0002657492250000062
的每个5×5邻域中应用局部最大滤波器,并且为了增大鲁棒性和消除由于局部平坦或重复性结构而导致的最大不正确值,丢弃邻域中的局部最大值,并且删除原点4像素内的局部最大值;
S3.1.4、在剩余的局部最大值中,选择最大的值作为估计的空间移位矢量d′;对于d′的正负号,根据第二反射的能量低于第一反射的能量的原理,空间移位矢量d′保证下一步估计的衰减因子c’<1。
进一步地,步骤S3.2包括以下步骤:
S3.2.1、使用哈里斯角点检测器从输入合成反射图像中检测出一组角点特征;
S3.2.2、在每个角点特征周围,提取大小为5×5的区域块,并且对区域块进行对比度标准化;估计每一对匹配的区域块pi、pj之间的衰减为比率:
Figure BDA0002657492250000063
其中,var[pi]是区域块pi的像素方差,选择的匹配区域块(pi,pj)使得aij<1;
S3.2.3、计算所有区域块对的衰减为比率总和,得出c的估计值:
Figure BDA0002657492250000064
其中,
Figure BDA0002657492250000065
且θ=0.2;Z=∑ijwij
进一步地,步骤S3中,所述深度学习的方法即对于S3中真实带重影的反射图像I通过输入CNN模型对重影卷积核k进行参数估计,包括以下步骤:
将真实反射数据集按照步骤进行处理得到输入的反射图像区域块xireal,真实带重影的反射图像I输入步骤S1中预训练好的CNN模型,输出对应估计重影卷积核k′。
进一步地,步骤S4中,将真实带重影的反射图像I输入步骤S2中预训练好的基于U-net模型,得到估计的背景层图像T′和反射层图像R′;
同样由于没有真实的背景T和反射层R,因此无法对重影T和R进行监督。
进一步地,步骤S5中,采用
Figure BDA0002657492250000066
作为损失函数的保真项;根据R的梯度分布属于短尾分布,其部分原因是反射层R的模糊程度较高,即使当R中的大多数区域的亮度值接近于零,与背景相比,反射层图像R的梯度分布也应具有稀疏性,使用L0正则化对反射层图像R进行建模,将
Figure BDA0002657492250000067
作为损失函数的正则项,从而在R的梯度域中强制R的稀疏性;因此损失函数表示为:
Figure BDA0002657492250000068
通过反向传播算法训练CNN模型和U-net模型,并训练各网络层参数,得到训练好的CNN模型和基于U-net模型。
本发明相对于现有技术具有如下的优点及效果:
(1)本发明针对于合成重影反射数据集有别于真实世界的反射图像,而现实世界中的重影反射训练样本难以得到真实背景层图像、反射层图像和重影卷积核参数的缺点,提出自监督的方法对于深度神经网络进行训练。
(2)本发明使用传统方法或者深度学习的方法对于重影卷积核k估计,更好的利用反射图像中重影线索,从而分离重影反射图像的背景层图像和反射层图像。
(3)本发明对于估计重影卷积核k和估计背景层图像T、反射层图像R的模型进行预训练,从而加快模型收敛速度,提高模型表现。
(4)本发明能够对大部分的自然场景重影反射图像产生较好的复原效果。
附图说明
图1是本发明一种基于深度学习的单图像去反射方法的流程图。
具体实施方式
下面结合实施例及附图,对本发明的具体实施作进一步地详细说明,但本发明的实施方式不限于此。
实施例:
一种基于深度学习的单图像去反射方法,如图1所示,包括以下步骤:
S1、首先合成具有带重影的反射图像以及对应重影参数和背景层反射层图像的合成反射图像数据集,通过合成反射图像数据集中反射重影图像和对应重影参数对于进行重影卷积核k参数估计的CNN模型有监督的进行预训练,包括以下步骤:
S1.1、为合成带重影的反射图像的数据集,衰减因子c在[0.5,1]随机采样,空间移位矢量d是一个随机向量满足1<||(d)||2≤20,本实施例中,在ImageNet Dataset和BSDS-500 Dataset随机选择两张图像作为反射层和背景层,从而生成643张具有反射重影图像、对应重影参数和背景层反射层图像的合成数据集;在合成数据集中随机选择N1个大小为r×r的反射图像区域块,记为xi,本实施例中,r=32;
S1.2、将合成反射图像区域块xi的对应重影参数及衰减因子c、空间移位矢量d根据公式计算区域块真实的重影卷积核k,具体如下:
k=δ(x)+cδ(x-d)
其中x指像素的坐标,δ(·)表示狄拉克函数;以xi作为输入,重影卷积核k作为标签训练CNN模型。
所述CNN模型包括卷积层conv、批归一化层BN、激活函数ReLU和激活函数SoftMax;
第一层包括64个大小为3×3×c的滤波器的卷积层,其中c表示通道数,彩色图像c=3;第二层至第八层均包括64个大小为3×3×64的滤波器的卷积层和批归一化层,且第二层至第八层均添加激活函数ReLU输出至下一层;第九层包括c个大小为3×3×64的滤波器用于重构输出,且第九层添加激活函数SoftMax作为输出;
所述训练CNN模型为将估计的重影卷积核k′与真实的重影卷积核k之间的均方误差作为损失函数
Figure BDA0002657492250000081
使用SGD反向传播算法训练网络各层参数。
S2、利用具有真实背景层图像T和反射层图像R对应的合成反射图像数据集通过有监督学习对于估计背景层图像T和反射层图像R的基于U-net模型进行预训练,具体如下:
对于S1.1中随机选择的合成反射图像区域块xi,以xi对应的真实背景层图像T和反射层图像R作为标签训练基于U-net模型;
所述基于U-net模型包括卷积层Conv、批归一化层BN、最大池化层MaxPool、反卷积层Deconv、激活函数ReLU以及跳跃链接Skip Conn;其中,最大池化层用于进行下采样,反卷积层用于进行上采样;首先输入大小为W×H×c图像利用三层包括64个大小为3×3×c的滤波器的卷积层和激活函数ReLU进行特征提取,特征输入三层下采样层,下采样层由卷积层和激活函数ReLU和2×2池化核的最大池层构成;将下采样层输出的图像编码输入到三层上采样层,上采样层由卷积层和激活层ReLU和反卷积层构成,并且为保证扩展路径与收缩路径相同大小的特征图更好的进行跳层连接,反卷积操作之后引入2×2卷积核;跳过连接从第1/2个下采样层添加到第3/2个上采样层;将下采样层输出的大小为W×H×64特征传递给两个多层感知器;
两个多层感知器结构相同均为四层,第一层包括64个大小为3×3×64的滤波器的卷积层,批归一化层,激活函数ReLU;第二层为16个大小为3×3×64的滤波器的卷积层,批归一化层,激活函数ReLU;第三层为16个大小为3×3×16的滤波器的卷积层,批归一化层,激活函数ReLU;第四层为c个大小为3×3×16的滤波器的卷积层激活函数ReLU;两个多层感知器输出分别为背景层图像T′和反射层图像R′;
所述基于U-net模型将估计的背景层图像和反射层图像与真实背景层图像和反射层图像的均方误差和作为损失函数
Figure BDA0002657492250000082
使用SGD反向传播算法进行训练,训练各网络层参数。
S3、本实施例中,将具有在真实世界中对于重影卷积核k、真实背景层图像T和反射层图像R未知的带重影的反射图像的数据集Real Images From Dataset和SIR2-PostcardDataset作为真实反射图像数据集;输入带重影的真实反射图像I根据重影区域信息利用传统方法或者深度学习的方法及S1中预训练得到的CNN模型进行重影卷积核参数的估计得到k′;
首先将真实反射数据集随机裁剪N2个大小为w×h的真实的带重影的反射图像,本实施例中,w,h=128;对于真实带重影的反射图像I,通过传统方法对重影卷积核k进行参数估计,重影卷积核k由空间移位矢量d和衰减因子c进行参数化,包括以下步骤:
S3.1、首先根据输入真实带重影的反射图像I的拉普拉斯算子的2-D估计空间移位矢量得到d′,包括以下步骤:
S3.1.1、通过计算反射图像I的拉普拉斯算子,得到I的2-D的空间偏移上的自相关图
Figure BDA0002657492250000091
S3.1.2、在自相关图
Figure BDA0002657492250000092
的每个5×5邻域中应用局部最大滤波器,并且为了增大鲁棒性和消除由于局部平坦或重复性结构而导致的最大不正确值,丢弃邻域中的局部最大值,并且删除原点4像素内的局部最大值;
S3.1.4、在剩余的局部最大值中,选择最大的值作为估计的空间移位矢量d′;对于d′的正负号,根据第二反射的能量低于第一反射的能量的原理,空间移位矢量d′保证下一步估计的衰减因子c’<1。
S3.2、根据空间移位矢量d′估计衰减因子得到c′,包括以下步骤:
S3.2.1、使用哈里斯角点检测器从输入合成反射图像中检测出一组角点特征;
S3.2.2、在每个角点特征周围,提取大小为5×5的区域块,并且对区域块进行对比度标准化;估计每一对匹配的区域块pi、pj之间的衰减为比率:
Figure BDA0002657492250000093
其中,var[pi]是区域块pi的像素方差,选择的匹配区域块(pi,pj)使得aij<1;
S3.2.3、计算所有区域块对的衰减为比率总和,得出c的估计值:
Figure BDA0002657492250000094
其中,
Figure BDA0002657492250000095
且θ=0.2;Z=∑ijwij
S3.3、根据衰减因子c′、空间移位矢量d′,通过公式k=δ(x)+cδ(x-d)求出重影卷积核参数估计k′。
所述深度学习的方法即对于S3中真实带重影的反射图像I通过输入CNN模型对重影卷积核k进行参数估计,包括以下步骤:
将真实反射数据集按照步骤进行处理得到输入的反射图像区域块xireal,真实带重影的反射图像I输入步骤S1中预训练好的CNN模型,输出对应估计重影卷积核k′。
S4、将步骤S3中的带重影的真实反射图像I同时输入基于U-net模型输出对应背景层图像T′和反射层图像R′;
同样由于没有真实的背景T和反射层R,因此无法对重影T和R进行监督。
S5、根据步骤S3得到的重影卷积核k′、步骤S4得到的背景层图像T′和反射层图像R′,通过已有带重影的真实反射图像I进行自监督学习,训练网络模型;
采用
Figure BDA0002657492250000101
作为损失函数的保真项;根据R的梯度分布属于短尾分布,其部分原因是反射层R的模糊程度较高,即使当R中的大多数区域的亮度值接近于零,与背景相比,反射层图像R的梯度分布也应具有稀疏性,使用L0正则化对反射层图像R进行建模,将
Figure BDA0002657492250000102
作为损失函数的正则项,从而在R的梯度域中强制R的稀疏性;因此损失函数表示为:
Figure BDA0002657492250000103
通过反向传播算法训练CNN模型和U-net模型,并训练各网络层参数,得到训练好的CNN模型和基于U-net模型。
S6、将测试数据集中的带重影的反射图像输入训练好的基于U-net模型,输出对应的反射层图像和背景层图像。

Claims (8)

1.一种基于深度学习的单图像去反射方法,其特征在于,包括以下步骤:
S1、首先合成具有带重影的反射图像以及对应重影参数和背景层反射层图像的合成反射图像数据集,通过合成反射图像数据集中反射重影图像和对应重影参数对于进行重影卷积核k参数估计的CNN模型有监督的进行预训练;包括以下步骤:
S1.1、为合成带重影的反射图像的数据集,衰减因子c在[0.5,1]随机采样,空间移位矢量d是一个随机向量满足1<||(d)||2≤20,在现有的真实图像数据集中随机选择两张图像作为反射层和背景层,从而生成若干张具有反射重影图像、对应重影参数和背景层反射层图像的合成数据集;在合成数据集中随机选择N1个大小为r×r的反射图像区域块,记为xi;
S1.2、将合成反射图像区域块xi的对应重影参数及衰减因子c、空间移位矢量d根据公式计算区域块真实的重影卷积核k,具体如下:
k=δ(x)+cδ(x-d);
其中x指像素的坐标,δ(·)表示狄拉克函数;以xi作为输入,重影卷积核k作为标签训练CNN模型;
S2、利用具有真实背景层图像T和反射层图像R对应的合成反射图像数据集通过有监督学习对于估计背景层图像T和反射层图像R的基于U-net模型进行预训练;采用步骤S1中的合成反射图像数据集作为训练样本,通过有监督学习方法训练生产背景层图像T和反射层图像R的基于U-net模型,具体如下:
对于S1.1中随机选择的合成反射图像区域块xi,以xi对应的真实背景层图像T和反射层图像R作为标签训练基于U-net模型;
所述基于U-net模型包括卷积层Conv、批归一化层BN、最大池化层MaxPool、反卷积层Deconv、激活函数ReLU以及跳跃链接SkipConn;其中,最大池化层用于进行下采样,反卷积层用于进行上采样;首先输入大小为W×H×c图像利用三层包括64个大小为3×3×c的滤波器的卷积层和激活函数ReLU进行特征提取,特征输入三层下采样层,下采样层由卷积层和激活函数ReLU和2×2池化核的最大池层构成;将下采样层输出的图像编码输入到三层上采样层,上采样层由卷积层和激活层ReLU和反卷积层构成,并且为保证扩展路径与收缩路径相同大小的特征图更好的进行跳层连接,反卷积操作之后引入2×2卷积核;跳过连接从第1/2个下采样层添加到第3/2个上采样层;将下采样层输出的大小为W×H×64特征传递给两个多层感知器;
两个多层感知器结构相同均为四层,第一层包括64个大小为3×3×64的滤波器的卷积层,批归一化层,激活函数ReLU;第二层为16个大小为3×3×64的滤波器的卷积层,批归一化层,激活函数ReLU;第三层为16个大小为3×3×16的滤波器的卷积层,批归一化层,激活函数ReLU;第四层为c个大小为3×3×16的滤波器的卷积层激活函数ReLU;两个多层感知器输出分别为背景层图像T′和反射层图像R′;
所述基于U-net模型将估计的背景层图像和反射层图像与真实背景层图像和反射层图像的均方误差和作为损失函数
Figure FDA0003687034640000021
Figure FDA0003687034640000022
使用SGD反向传播算法进行训练,训练各网络层参数;
S3、将具有在真实世界中对于重影卷积核k、真实背景层图像T和反射层图像R未知的带重影的反射图像的数据集作为真实反射图像数据集;输入带重影的真实反射图像I根据重影区域信息利用传统方法或者深度学习的方法及S1中预训练得到的CNN模型进行重影卷积核参数的估计得到k′;
S4、将步骤S3中的带重影的真实反射图像I同时输入基于U-net模型输出对应背景层图像T′和反射层图像R′;
S5、根据步骤S3得到的重影卷积核k′、步骤S4得到的背景层图像T′和反射层图像R′,通过已有带重影的真实反射图像I进行自监督学习,训练网络模型;
S6、将测试数据集中的带重影的反射图像输入训练好的基于U-net模型,输出对应的反射层图像和背景层图像。
2.根据权利要求1所述的一种基于深度学习的单图像去反射方法,其特征在于,所述CNN模型包括卷积层conv、批归一化层BN、激活函数ReLU和激活函数SoftMax;
第一层包括64个大小为3×3×c的滤波器的卷积层,其中c表示通道数,彩色图像c=3;第二层至第八层均包括64个大小为3×3×64的滤波器的卷积层和批归一化层,且第二层至第八层均添加激活函数ReLU输出至下一层;第九层包括c个大小为3×3×64的滤波器用于重构输出,且第九层添加激活函数SoftMax作为输出;
所述训练CNN模型为将估计的重影卷积核k′与真实的重影卷积核k之间的均方误差作为损失函数
Figure FDA0003687034640000031
使用SGD反向传播算法训练网络各层参数。
3.根据权利要求1所述的一种基于深度学习的单图像去反射方法,其特征在于,步骤S3中,首先将真实反射数据集随机裁剪N2个大小为w×h的真实的带重影的反射图像;对于真实带重影的反射图像I,通过传统方法对重影卷积核k进行参数估计,重影卷积核k由空间移位矢量d和衰减因子c进行参数化,包括以下步骤:
S3.1、首先根据输入真实带重影的反射图像I的拉普拉斯算子的2-D估计空间移位矢量得到d′;
S3.2、根据空间移位矢量d′估计衰减因子得到c′;
S3.3、根据衰减因子c′、空间移位矢量d′,通过公式k=δ(x)+cδ(x-d)求出重影卷积核参数估计k′。
4.根据权利要求3所述的一种基于深度学习的单图像去反射方法,其特征在于,步骤S3.1包括以下步骤:
S3.1.1、通过计算反射图像I的拉普拉斯算子,得到I的2-D的空间偏移上的自相关图
Figure FDA0003687034640000032
S3.1.2、在自相关图
Figure FDA0003687034640000033
的每个5×5邻域中应用局部最大滤波器,并且为了增大鲁棒性和消除由于局部平坦或重复性结构而导致的最大不正确值,丢弃邻域中的局部最大值,并且删除原点4像素内的局部最大值;
S3.1.4、在剩余的局部最大值中,选择最大的值作为估计的空间移位矢量d′;对于d′的正负号,根据第二反射的能量低于第一反射的能量的原理,空间移位矢量d′保证下一步估计的衰减因子c’<1。
5.根据权利要求3所述的一种基于深度学习的单图像去反射方法,其特征在于,步骤S3.2包括以下步骤:
S3.2.1、使用哈里斯角点检测器从输入合成反射图像中检测出一组角点特征;
S3.2.2、在每个角点特征周围,提取大小为5×5的区域块,并且对区域块进行对比度标准化;估计每一对匹配的区域块pi、pj之间的衰减为比率:
Figure FDA0003687034640000041
其中,var[pi]是区域块pi的像素方差,选择的匹配区域块(pi,pj)使得aij<1;
S3.2.3、计算所有区域块对的衰减为比率总和,得出c的估计值:
Figure FDA0003687034640000042
其中,
Figure FDA0003687034640000043
且θ=0.2;Z=∑ijwij
6.根据权利要求1所述的一种基于深度学习的单图像去反射方法,其特征在于,步骤S3中,所述深度学习的方法即对于S3中真实带重影的反射图像I通过输入CNN模型对重影卷积核k进行参数估计,包括以下步骤:
将真实反射数据集按照步骤进行处理得到输入的反射图像区域块xireal,真实带重影的反射图像I输入步骤S1中预训练好的CNN模型,输出对应估计重影卷积核k′。
7.根据权利要求1所述的一种基于深度学习的单图像去反射方法,其特征在于,步骤S4中,将真实带重影的反射图像I输入步骤S2中预训练好的基于U-net模型,得到估计的背景层图像T′和反射层图像R′。
8.根据权利要求1~7任一项所述的一种基于深度学习的单图像去反射方法,其特征在于,步骤S5中,采用
Figure FDA0003687034640000044
作为损失函数的保真项;根据R的梯度分布属于短尾分布,使用L0正则化对反射层图像R进行建模,将
Figure FDA0003687034640000045
作为损失函数的正则项,从而在R的梯度域中强制R的稀疏性;因此损失函数表示为:
Figure FDA0003687034640000046
通过反向传播算法训练CNN模型和U-net模型,并训练各网络层参数,得到训练好的CNN模型和基于U-net模型。
CN202010893079.0A 2020-08-31 2020-08-31 一种基于深度学习的单图像去反射方法 Active CN112102182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010893079.0A CN112102182B (zh) 2020-08-31 2020-08-31 一种基于深度学习的单图像去反射方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010893079.0A CN112102182B (zh) 2020-08-31 2020-08-31 一种基于深度学习的单图像去反射方法

Publications (2)

Publication Number Publication Date
CN112102182A CN112102182A (zh) 2020-12-18
CN112102182B true CN112102182B (zh) 2022-09-20

Family

ID=73756686

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010893079.0A Active CN112102182B (zh) 2020-08-31 2020-08-31 一种基于深度学习的单图像去反射方法

Country Status (1)

Country Link
CN (1) CN112102182B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112819910B (zh) * 2021-01-08 2022-12-27 上海理工大学 基于双鬼注意力机制网络的高光谱图像重建方法
US20220318954A1 (en) * 2021-03-31 2022-10-06 Advanced Micro Devices, Inc. Real time machine learning-based privacy filter for removing reflective features from images and video
CN113240593A (zh) * 2021-04-21 2021-08-10 浙江大学 一种基于位置感知的单图像反射层移除方法
WO2022222080A1 (zh) * 2021-04-21 2022-10-27 浙江大学 一种基于位置感知的单图像反射层移除方法
CN113592755B (zh) * 2021-07-28 2022-01-11 北京大学 基于全景摄像的图像反射消除方法
CN114926352A (zh) * 2022-04-14 2022-08-19 华南理工大学 一种图像去反射方法、系统、装置及存储介质
CN115601536B (zh) * 2022-12-02 2023-05-26 荣耀终端有限公司 一种图像处理方法及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967671A (zh) * 2017-10-30 2018-04-27 大连理工大学 结合数据学习和物理先验的图像去雾方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8811768B2 (en) * 2007-12-06 2014-08-19 The United States Of America As Represented By The Secretary Of The Army Image enhancement system and method
JP5067886B2 (ja) * 2008-10-30 2012-11-07 キヤノン株式会社 画像処理装置及び画像処理方法
CN106447617A (zh) * 2016-03-24 2017-02-22 华南理工大学 一种改进的Retinex图像去雾方法
CN107103590B (zh) * 2017-03-22 2019-10-18 华南理工大学 一种基于深度卷积对抗生成网络的图像反射去除方法
CN109978798B (zh) * 2019-04-08 2022-11-29 湖南师范大学 基于图像梯度稀疏性的重影反射去除方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967671A (zh) * 2017-10-30 2018-04-27 大连理工大学 结合数据学习和物理先验的图像去雾方法

Also Published As

Publication number Publication date
CN112102182A (zh) 2020-12-18

Similar Documents

Publication Publication Date Title
CN112102182B (zh) 一种基于深度学习的单图像去反射方法
CN112233038B (zh) 基于多尺度融合及边缘增强的真实图像去噪方法
CN111325751B (zh) 基于注意力卷积神经网络的ct图像分割系统
Wan et al. CoRRN: Cooperative reflection removal network
CN112507997B (zh) 一种基于多尺度卷积和感受野特征融合的人脸超分辨系统
CN111915530B (zh) 一种基于端到端的雾霾浓度自适应神经网络图像去雾方法
CN107123091B (zh) 一种基于深度学习的近红外人脸图像超分辨率重建方法
CN110766632A (zh) 基于通道注意力机制和特征金字塔的图像去噪方法
CN109509156B (zh) 一种基于生成对抗模型的图像去雾处理方法
CN112241939B (zh) 一种基于多尺度和非局部的轻量去雨方法
CN112734915A (zh) 一种基于深度学习的多视角立体视觉三维场景重建方法
WO2023138629A1 (zh) 加密图像信息获取装置及方法
CN111861939B (zh) 一种基于无监督学习的单张图像去雾方法
CN113379613A (zh) 使用深度卷积网络的图像去噪系统和方法
Huang et al. Removing reflection from a single image with ghosting effect
CN116205962A (zh) 基于完整上下文信息的单目深度估计方法及系统
Wang et al. Single image haze removal via attention-based transmission estimation and classification fusion network
Li et al. Image reflection removal using end‐to‐end convolutional neural network
Hsu et al. Object detection using structure-preserving wavelet pyramid reflection removal network
Babu et al. An efficient image dahazing using Googlenet based convolution neural networks
CN113992920A (zh) 一种基于深度展开网络的视频压缩感知重建方法
Wan et al. Progressive convolutional transformer for image restoration
CN115311149A (zh) 图像去噪方法、模型、计算机可读存储介质及终端设备
Yan et al. Channel-by-channel demosaicking networks with embedded spectral correlation
FU et al. Area-aware reflection detection and removal for single image

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant