一种深度特征对抗式学习的交互式灰度图像着色方法与流程

文档序号:15965726发布日期:2018-11-16 23:09阅读:203来源:国知局
本发明涉及图像处理、深度学习和增强现实
技术领域
,具体地说是一种深度特征对抗式学习的交互式灰度图像着色方法。
背景技术
灰度图像着色是一个经典的图像编辑问题,即输入一张单通道的灰度图像,将其转化为rgb三通道的彩色图像,且与图像表达的语义内容相符。人们在早期拍摄的大量老照片、老电影等很多都是黑白色的,将这些图像视频重新上色,可以使其产生新的活力。另外,画家、艺术家等在创作绘画时,动画制作者在创作新的漫画、动画作品时,常常首先创作出黑白底色的初品,然后再对其进行上色处理。因此,对灰度图像进行自动化、智能化着色,不管对于经典老照片、老视频修复处理,还是现代的艺术创作,都有着非常重要的需求,一直是图像编辑领域的一个研究热点。早期的基于用户交互的图像着色是通过用户笔画对颜色选取及着色区域进行控制,通过编辑传播等方法将用户的笔画传播到其他特征相似的区域。2004年,以色列耶路撒冷希伯来大学的levin等人提出了基于编辑传播的灰度图像着色方法,通过笔画交互,将颜色传播到相似的像素上面。2008年,美国达特茅斯学院的an等人提出了一种基于像素相似性的图像视频编辑传播方法。2010年,以色列耶路撒冷希伯来大学的farbman等人提出了基于扩散映射的图像编辑传播方法,利用扩散距离衡量像素之间的相似度。2012年,北京航空航天大学的chen等人提出了一种特征流形结构保持的图像视频编辑传播方法,该方法利用局部线性嵌入实现编辑传播,保持了特征空间的流形结构。除了通过画笔交互对图像局部进行控制外,还出现了利用颜色模板等对全局进行控制的着色方法。例如,2010年,浙江大学的wang等人提出了基于颜色模板的图像增强方法。2015年,美国普林斯顿大学的chang等人提出了基于调色板的图像重着色方法,通过对颜色模板的编辑,实现整幅图像色调的改变。另外一种半自动化的图像着色是将参考图像的色调迁移到目标图像上。2001年,犹他大学的reinhard等人通过统计参考图像颜色的均值和方差,将其色调迁移到目标灰度图像上,实现灰度图像着色。2008年,香港中文大学的liu等人提出了基于多幅参考图像的灰度图像着色方法,并考虑了光照、反射等因素。2012年,南洋理工大学的gupta等人提取超像素的特征进行匹配,实现基于参考图像的灰度图像着色方法。然而,这些方法的灰度图像着色结果很大程度上取决于参考图像是否合适,例如参考图像与待着色的灰度图像是否是相似场景。而寻找合适的参考图像本身就是费时费力的。最近,随着深度学习的快速发展,基于神经网络的灰度图像着色取得了出色的成果。这得益于卷积神经网络可以从大量的图像训练集中学习到灰度图像着色的知识,使灰度图像着色实现完全的自动化处理。2015年,上海交通大学的cheng等人首次利用深度神经网络解决灰度图像着色问题,利用语义特征描述符,实现了高质量的全自动着色方法。2016年,日本早稻田大学的iizuka等人提出了一种基于深度学习的端到端灰度图像自动着色方法,该方法在神经网络中加入融合层,将图像局部信息与全局信息融合到一起,并利用类别标签进行着色优化。同年,美国加利福尼亚大学的zhang等人提出了一种基于卷积神经网络的灰度图像着色方法,提出了一个新的损失函数,解决了颜色多样性问题。同年,美国芝加哥大学的larsson等人提出了表达学习的灰度图像自动着色方法,该方法利用深度网络学习图像底层特征和语义表达,可以预测像素的颜色直方图。但是这些全自动方法对于一张输入的灰度图像只能输出唯一的着色结果,这个结果是神经网络对训练数据集综合考量后得到的。例如,如果训练集中的自然场景都为夏天的绿色场景,那么对于灰度自然场景的着色结果就一定是绿色的,不可能出现秋天的金黄色场景。因此,这些基于神经网络的灰度图像着色结果无法根据不同需求对同一副灰度图像产生不同的着色结果。由以上分析可以得出,交互式灰度图像着色方法可以根据用户要求生成着色结果,但需要大量的人工交互作为保障,智能化程度低;基于深度学习的自动化灰度图像着色方法解放了人力,但是着色结果唯一,当编辑结果有误,或用户有其他需求时,无法通过人工干预进行调整。技术实现要素:为了克服上述现有技术的不足,本发明提出了一种深度特征对抗式学习的交互式灰度图像着色方法,将深度学习与人工交互相结合,将人工交互作为训练集的一部分输入神经网络进行训练,使神经网络可以处理带有交互信息的灰度图像,达到灰度图像着色自动化、智能化、个性化的统一。为完成发明目的,本发明采用的技术方案是:本发明一种深度特征对抗式学习的交互式灰度图像着色方法,其具体步骤如下:步骤一:通过模拟人工笔画交互的方式生成灰度图像着色训练集。步骤二:设计生成式对抗网络,包括生成器神经网络和判别器神经网络,并进行训练。步骤三:网络训练结束后,输入带有人工交互的灰度图像,神经网络会输出着色后的彩色图像。其中,在步骤一中所述的“模拟人工笔画交互”,是指将彩色图像转化到lab颜色空间,其中l为亮度通道,即为此彩色图像对应的灰度图像。其他两个通道a、b为颜色通道,利用颜色通道的颜色值作为笔画的颜色来模拟交互。对于每一幅图像,随机采取1至32个像素点,对于每一个像素点,保证其颜色饱和度的值大于30%,否则重新选择像素点。对于每一个像素点,以此点为中心,随机取1×1、3×3、5×5的图像块,赋予中心像素点的颜色,其他所有像素颜色值均为0。其中,在步骤二中所述的“生成器神经网络”,是一种全卷积神经网络。网络的输入为一张灰度图像以及用户的交互其中表示实数空间,h表示图像像素高度,w表示图像像素宽度。在lab颜色空间下,灰度图像对应l亮度通道,用户交互g对应ab颜色通道。网络的输出为预测出的所有像素在ab通道的颜色值,即全卷积神经网络通过最小化如下公式得到:其中,表示深度网络模型,θ为此网络模型需要求解的参数;表示损失函数,即的输出与训练集中标准值y的差值。通过最小化损失函数来求解网络模型参数θ,以此进行训练。其中,在步骤二中所述的“判别器神经网络”,是一种混合神经网络,输入为一张图像,输出为0或1的标量,代表输入为“真”或“假”。判别器神经网络由若干个卷积层以及一个全连接层构成。判别器网络包含4组卷积层,每组特征层的空间分辨率依次减半,特征维度依次加倍。最后为全连接层,输入维度为最后特征层的特征个数,输出维度为一,即判断结果为真或假。步骤(2)中,所述生成器神经网络为一种全卷积神经网络,其具体结构为:由9组卷积网络层构成,第1组网络将输入信息映射为初始化的特征层,特征层分辨率与图像相同。第2-5组网络特征层的空间分辨率依次减半,特征维度则加倍;第6-9组网络特征层的空间分辨率依次加倍,直到恢复到原图大小,而特征维度则减半;每组网络由1至2个卷积层构成,且每个卷积层之后都有批量归一化层以及激活函数;在神经网络前后对称、空间分辨率相同的每对卷积层之间,通过快捷通道进行连接,直接利用卷积层进行下采样,即设卷积核大小为4、步长为2时,特征层空间分辨率将会减半;在神经网络后半段,采用反卷积实现空间分辨率尺度的加倍;在9组卷积层的最后,再加入最后的一个颜色卷积层,将特征层映射为ab双通道的颜色特征层,得到最终的着色结果。本发明与现有的技术相比的优点在于:本发明通过构建带有笔画交互的灰度图像着色训练集,利用此训练集进行神经网络的对抗式学习,训练出的神经网络模型可以对带有笔画交互的灰度图像进行上色。当着色结果有误或用户需求发生改变时,可以对着色结果进行人工调整。在高效自动化处理的同时,也支持用户的个性化上色需求,实现艺术化的创作。附图说明图1是本发明所述方法流程图;图2是本发明的对抗式生成网络结构图;图3是本发明的生成器神经网络结构图;图中符号说明如下:深度网络模型;损失函数;x:灰度图像;g:用户交互;y:彩色图像。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图,对本发明的方法作详细解释说明。应当理解,此处所描述的具体实例仅仅用以解释本发明,并不用于限定本发明。本发明提出一个新的灰度图像着色方法,该方法将深度学习与人工交互相结合,将人工交互作为训练集的一部分输入神经网络进行训练,使神经网络可以处理带有交互信息的灰度图像,达到灰度图像着色自动化、智能化、个性化的统一本发明提出一种深度特征对抗式学习的交互式灰度图像着色方法,流程如图1所示,具体实施方式如下:步骤一:通过模拟人工笔画交互的方式生成灰度图像着色训练集。首先对数据库中的彩色图像进行筛选,在hsv颜色空间计算每个图像所有像素的平均饱和度,去除平均颜色饱和度小于20%的图像。然后将彩色图像转化到lab颜色空间,其中l为亮度通道,即为此彩色图像对应的灰度图像。其他两个通道a、b为颜色通道,利用颜色通道的颜色值作为笔画的颜色来模拟交互。对于每一幅图像,随机采取1至32个像素点,对于每一个像素点,保证其颜色饱和度的值大于30%,否则重新选择像素点。对于每一个像素点,以此点为中心,随机取1×1、3×3、5×5的图像块,赋予中心像素点的颜色,其他所有像素颜色值均为0。为了使训练的网络也可以处理没有交互的灰度图像,在训练集中也会随机加入没有交互的纯灰度图像作为输入。这样训练出的神经网络可以对没有交互的灰度图像和加了用户笔画交互的灰度图像都可以进行着色。然而,这种随机进行选点的交互生成方式仍然有其局限性。对于神经网络来说,测试集需要和训练集的输入形式保持一致,才能得到想要的结果。所以在进行灰度图像着色测试时,用户的交互输入必须和训练集一致,即必须用点的方式进行笔画交互。但是人们习惯的笔画交互方式是画线,如果用画线的交互方式进行测试,神经网络的着色结果会变差。因此,为了不改变用户的交互方式,并能使测试图像的笔画交互与训练集一致,本发明将用户的笔画交互自动采样转化为点的笔画交互形式,不仅能最大满足用户的便利性,也最大限度地生成更好的着色结果。对于每一次用户交互i,设此次交互的笔画颜色为ci,此次交互笔画所覆盖的像素集为pi。初始化像素点集d={p0},其中p0为用户交互笔画的第一个像素点。然后从点集pi中选取下一个像素点p*为到d中所有点的距离大于m且最近的点,即然后将p*加入点集d。其中pj为点集d中任意一点。以此迭代,直到点集pi中所有像素点都在d中某点的距离m范围内。则点集d为最终的采样点,即转化后的笔画交互点集。以此点集的像素点颜色保留,pi中其他像素的颜色舍去,作为测试图像进行测试得到着色结果。步骤二:设计生成式对抗网络,包括生成器神经网络和判别器神经网络,并进行训练。生成式对抗网络主要由生成器与辨别器两个网络组成,如图2所示。生成器输入为灰度图像以及用户交互,输出着色后的结果。辨别器输入为彩色图像,然后辨别此彩色图像为“真”或“假”。当输入为生成器网络生成的彩色图像时,辨别器判别其为“假”彩色图像;输入为训练集中的彩色图像时,判别器判别其为“真”彩色图像。这样,生成器为了迷惑判别器,会尽可能地将图像生成为和训练集相似的“真”彩色图像;而判别器为了判别的更准确,会尽可能地将生成器的“假”彩色图像分辨出来。因此,生成器和判别器之间会产生“对抗”,使得两个网络趋于最佳。而生成器网络则是最终的灰度图像着色神经网络模型。生成器神经网络是一种全卷积神经网络。网络的输入为一张灰度图像以及用户的交互其中表示实数空间,h表示图像像素高度,w表示图像像素宽度。在cielab颜色空间下,灰度图像对应l亮度通道,用户交互g对应ab颜色通道。网络的输出为预测出的所有像素在ab通道的颜色值,即全卷积神经网络通过最小化如下公式得到:其中,表示深度网络模型,θ为此网络模型需要求解的参数;表示损失函数,即的输出与训练集中标准值y的差值。通过最小化损失函数来求解网络模型参数θ,以此进行训练。通过实验发现,从硬盘读取灰度图像和将彩色图像转化为灰度图像所用的时间相差无几,因此训练数据库只包含彩色图像,灰度图像的生成以及用户交互的随机模拟生成都是在训练过程中实时进行的。损失函数构造如下:其中,表示由神经网络生成的像素i在ab通道的颜色;yi表示数据库中原始彩色图像的像素i在ab通道的颜色。构成生成器的全卷积神经网络结构见图3。神经网络的输入为单通道灰度图像以及双通道的用户交互两项合并后为输出为ab双通道的颜色图神经网络的主要部分由u-net网络构成。u-net网络已经被成功应用于很多图像处理应用上。本发明神经网络由9组卷积网络层构成,第1组网络将输入信息映射为初始化的特征层,特征层分辨率与图像相同。第2-5组网络特征层的空间分辨率依次减半,特征维度则加倍。第6-9组网络特征层的空间分辨率依次加倍,直到恢复到原图大小,而特征维度则减半。每组网络由1至2个卷积层(convolution)构成,且每个卷积层与批量归一化层(batchnormalization)以及激活函数(rectifiedlinearunit,relu)构成conv-batchnorm-relu组合,加速训练及收敛。在神经网络前后对称、空间分辨率相同的每对卷积层之间,通过快捷通道(shortcut)进行连接,用以帮助图像恢复空间信息,并且可以用浅层的低维信息对深层的预测进行更加直接的引导,有助于网络的训练。例如,第2组卷积层和第8组卷积层之间,以及第3组卷积层和第7组卷积层之间都有快捷通道进行连接。本网络是全卷积神经网络,没有使用池化层(pooling)进行特征采样,而是直接利用卷积层进行采样,即设卷积核大小为4、步长为2时,特征层空间分辨率将会减半。而在神经网络后半段,采用反卷积(transposedconvolution)实现空间分辨率尺度的加倍。在这9组卷积层的最后,再加入最后的一个颜色卷积层,将特征层映射为ab双通道的颜色特征层,得到最终的着色结果。表1生成器神经网络结构及参数设置layerresolutionchannelkernelstridepaddingtransposedshortcutdata13-----conv1_1132311--conv2_11/264421--conv2_21/264311--conv3_11/4128421--conv3_21/4128311--conv4_11/8256421--conv4_21/8256311--conv5_11/16512421--conv5_21/16512311-conv5_1conv6_11/8512421√-conv6_21/8256311-conv4_2conv7_11/4256421√-conv7_21/4128311-conv3_2conv8_11/2128421√-conv8_21/264311-conv2_2conv9_1164421√-conv9_2132311--conv_ab12311--生成器神经网络每一层的具体参数设置见表1。表中resolution表示通过卷积层输出的特征层的分辨率相对于输入图像的缩放比例。channel指输出特征层的通道层数。kernel、stride、padding分别表示卷积层的卷积核大小、步长、边缘填充大小,通过这几个参数来控制像素的采样及分辨率缩放。transposed一列中打对勾的表示这一卷积层为反卷积。shortcut表示快捷通道,指此层的结果与哪一层结果进行了并联。例如,conv5_2层中,此层的输出特征层和conv5_1的输出特征层进行了并联,并作为下一层conv6_1层的输入;conv6_2层中,此层的输出特征层和conv4_2的输出特征层进行了并联,并作为下一层conv7_1层的输入;以此类推。另外,每个卷积层的输出都要经过batchnorm归一化层和relu激活函数处理,未在表中列出。构成判别器的神经网络输入为一张图像,输出为0或1的标量,代表输入为“真”或“假”。一般来说,判别器网络由若干个卷积层(类似于生成器的前半部分)以及一个全连接层构成。本发明的判别器网络包含4组卷积层,每组特征层的空间分辨率依次减半,特征维度依次加倍。和生成器网络类似,每个卷积层都与批量归一化层以及激活函数构成conv-batchnorm-relu组合同时出现。最后为全连接层,输入维度为最后特征层的特征个数,输出维度为一,即判断结果为真或假。步骤三:网络训练结束后,输入带有人工交互的灰度图像,神经网络会输出着色后的彩色图像。本发明训练的对抗神经网络既可以直接对灰度图像进行着色,也可以处理带有交互的灰度图像,根据用户交互内容进行有目的的着色。当用户对于着色结果不满意时,可以随时通过交互进行修改。另外,本方法对于用户交互量要求较低,用户只需要极少的交互既可以实现对着色结果的控制。以上所述仅为本发明的一些基本说明,依据本发明的技术方案所做的任何等效变换,均应属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1