基于机器深度学习的图像风格化应用

2021-04-20 12:06聂宇聂鑫朱依琳廖晨阳
电脑知识与技术 2021年7期
关键词:卷积神经网络机器学习

聂宇 聂鑫 朱依琳 廖晨阳

摘要:随着生活水平的逐日提高,人们对图片的视觉需求不再仅仅局限于图片的原始风格,由此诞生了各式各样的滤镜,它们让图片更具有观赏性。而基于机器深度学习的图像风格化应用,可以在此方向更进一步,利用训练好的卷积神经网络模型进行图像特征提取,使图片呈现出不同的艺术风格。

关键词:机器学习;图像风格化;卷积神经网络

中图分类号: TP18        文献标识码:A

文章编号:1009-3044(2021)07-0015-03

Abstract: With the daily improvement of living standards, people's visual needs for pictures are no longer limited to the original styles,therefore  various filters have been born, which make the pictures more enjoyable. The application of image style transfer based on machine deep learning can go further in this direction, using the trained convolutional neural network model for image feature extraction, so that the pictures present different artistic styles.

Key words: Machine Leaning;Image stylization;Convolutional Neural Network

1 研究背景

機器学习作为一门专门研究计算机如何模拟或实现人类的学习行为,以获取新的知识或技能,在已有的知识结构上使之不断改善自身的性能的学科。机器能否像人类一样能具有学习能力呢?1959年,美国的塞缪尔(Samuel)设计了一个下棋程序,这个程序具有学习能力,它可以在不断地对弈中改善自己的棋艺。4年后,这个程序战胜了设计者本人。又过了3年,这个程序战胜了美国一个保持8年之久的常胜不败的冠军。这个程序向人们展示了机器学习的能力,提出了许多令人深思的社会问题与哲学问题[1]。

近年来,随着人民生活水平的不断提高,使用图像成为人们记录生活的主要方式。不论人们走到哪里,都是利用手机记录身边的人和景,让生活过得如画一般,图片对于用户的观赏性成为用户最关注的问题。无奈的是,用户的拍照水平,而为了得到更具观赏性的图片只能通过后期处理,但是后期处理又是用户的一大问题。然而在当前图片不具备一定观赏性的条件下,如何让图片更具观赏性?让用户更为喜爱?

而画家的艺术品有自己独特的艺术风格,在这之前,没有人工智能系统可以学习画的风格,但是在2015年8月,由Leon A. Gatys,Alexander S. Ecker,Matthias Bethge发表了论文《A Neural Algorithm of Artistic Style》,在论文当中提出深度学习的算法,将画的内容(content)和风格(style)分开来,然后将一幅画的风格和另一幅画的内容重新组合,生成新的画。

2016年俄罗斯阿列克谢·莫伊辛恩科夫创建的Prisma软件在苹果商店发布,该软件是利用神经网络和人工智能技术,为普通照片加入艺术效果的照片编辑软件。并在上线首周,收获100万活跃用户。

2018年北京邮电大学发表论文《基于深度学习的图像风格化处理》,解读了基于深度学习下的图像风格化处理过程。

本课题就是本着利用机器学习,让每一个用户都能让自己的照片更具观赏性,即使用户没有毕加索一样的绘画艺术功底,可是却能通过机器深度学习毕加索的画,然后将画的风格迁移到照片当中。

2 研究内容

基于机器深度学习的图片风格化应用程序,通过对TensorFlow框架的研究学习[2],利用已经训练好的卷积神经网络,去学习各种风格的图片,然后风格迁移到另外的图片上。

该软件主要分为服务器端和移动客户端,服务器端采用Google的机器学习框架TensorFlow[3,4],编程语言使用Python,Web框架使用Django。移动客户端采用Java和Android进行开发。

移动客户端通过摄像头进行图像采集,然后将图像上传到服务器,针对用户选取的风格样式,服务器利用训练好的卷积神经网络模型进行图像特征提取,并且不断地重塑图像的风格和内容,最后将生成的图片返回给移动客户端。

3 风格模型训练

(1)模型训练

图像模型的训练是服务器端对一种图片风格的预训练,一般情况下利用算法来实现图像的风格迁移通常要耗费很长的时间,在CPU下进行图片迁移要耗费3至5个小时,即使在GPU下进行图片迁移都要十多分钟,在这样的情况下,用户的体验感特别差,所以为了提高用户的体验度,必须缩短图片风格迁移的时间,通过预先训练图像风格,然后利用生成的模型,用户就可以在3-5秒以内获得服务器反馈的风格迁移后的图片。

图像模型训练的训练网络会根据内容图片和风格样式生成一张噪声图片,并将噪声图片传给网络,这张噪声图片既具有内容图片的Content,又有风格图片的Style,然后再根据content loss值和style loss调整噪声图片,不断重塑图片的内容与风格,进行了一定的次数后,loss值和相对于最开始时的值也就小了,而噪声图片也就具备了图片的内容与风格[5-7]。

其中p→代表的是Content内容图像,x→表示生成的噪声图像,P和F分别代表它们对应层的响应;且假设第L层的响应是F1∈RNl × Ml ,其中Nl表示第L层过滤器的个数,Ml表示过滤器的大小。Fijl表示的是第L层第i个过滤器在位置j的输出。

因为某一层的Style可以用Gl∈RNl×Nl来表示,其中Nl×Nl表示不同过滤器响应的内积;a→表示Style的图像,x→表示生成的噪声图像,Al和Gl分别表示第L层的Style。

最后通过优化的方法使得Content loss和Style loss的总值最小,如式4:

其中[α和β]分别表示Content和 Style 的权重,当[α]较大时,则噪声图片的内容和Content图片内容更为吻合;当[β]较大时,则噪声图片的风格和Style图片风格更为吻合。

(2)训练实施

图像模型训练功能通过训练好的VGG19卷积神经网络和COCO数据集来训练目标风格模型,COCO数据集中的train2014图片作为输入的内容图片,另外输入一张要训练的风格图片。训练模型需要耗费很长的时间,但是使用训练好的模型进行图像风格迁移则可以很快地得到结果。

图像模型训练功能主要由两个网络构成,分别是生成网络(Image Transform Net)和损失网络(Loss Network),如图1所示。生成网络接收一张图片作为输入,然后分别经过卷积模块,残差模块,和反卷积模块,最后生成网络输出的也是一张图片[5-7]。损失网络把生成网络输出的图片y作为输入,对于每一张输入的图片y,它都有一个对应的风格目标ys和内容目标yc,y通过和风格目标(ys)、内容目标(yc)进行对比做损失计算,然后根据计算得到的loss值调整生成网络的权重赋值,通过不断调整loss值来达到目标效果。当模型训练开始后,训练网络会根据内容图片和噪声生成一张噪声图片,并将噪声图片传给网络,计算loss值,然后再根据loss值调整噪声图片,不断重复如此操作,进行迭代了一定的次数后,loss值和相对于最开始时的值小了,而噪声图片也就具备了图片的内容与风格。

服务器端通过命令的形式训练模型:

Python style.py --checkpoint-dir ./model/ --style ./style/udnie.jpg

style.py 是模型训练的脚本文件

--checkpoint-dir ./model/ 是训练好的模型保存的路径

--style ./style/udnie.jpg是目标风格

在训练模型的过程中,会生成四个相关文件,如图2所示,分别是:checkpoint、fns.ckpt.data-00000-of-00001 、fns.ckpt.index、fns.ckpt.meta。Checkpoint文件是文本文件,在这个文件里面记录了保存的最新的checkpoint文件信息和一些其他的checkpoint相关文件列表;fns.ckpt.meta保存了网络的图结构,在这个文件当中包含变量、集合等信息;fns.ckpt.data-00000-of-00001 、fns.ckpt.index都是二进制文件,記录了网络中的所有权重和偏置等变量数值。

4 应用功能

本应用程序分服务器端和移动客户端,功能示意如图3所示。

服务器端:

(1)图像存贮功能:实现用户上传的图像数据的存贮;

(2)图像风格模型训练功能:实现图像模型的训练,选取艺术风格独特,且观赏性好的图片进行训练,生成特定的模型;

(3)图像风格化处理功能:实现图像风格化的转变处理,将图片的内容层和模型的风格层重组成新的图片,如图4所示。

移动客户端:

(1)图像采集功能:实现图的采集,并将图像上传到服务器请求处理图像,在服务器处理完图片后接收处理后的图片。

(2)图像上传功能:实现用户上传图像。

5 结束语

在最初,我们通过人力提取图像特征,准备工作消耗了大量的人力物力;而现在,通过深度学习可以快速地提取图像的特征,大大减少了资源消耗和技术要求,即使用户不具备好的拍照水平,不具备后期处理图片的能力,他们也可以对自己的图片进行风格化处理,从而得到更具观赏性的图片。

随着对卷积神经网络的进一步研究,图像风格化的技术将会愈发成熟,图像风格将逐渐增加,用户也将会有更多的选择。

参考文献:

[1] 徐晓琳.面向大规模数据分析与分类的正则化回归算法[D].合肥:安徽大学,2017.

[2] 章敏敏,徐和平,王晓洁,等.谷歌TensorFlow机器学习框架及应用[J].微型机与应用,2017,36(10):58-60.

[3] 谷歌推出TensorFlow机器学习系统[J].电信工程技术与标准化,2015,28(11):92.

[4] 吴联坤.基于TensorFlow分布式与前景背景分离的实时图像风格化算法[D].杭州:浙江大学,2017.

[5] 李盛超.基于深度学习的图像水墨风格渲染应用[D].南京:南京大学,2017.

[6] 窦亚玲,周武彬,季人煌.基于卷积神经网络的图像风格迁移技术[J].现代计算机(专业版),2018,(30):47-51,60.

[7] 万士宁.基于卷积神经网络的人脸识别研究与实现[D].成都:电子科技大学,2016.

【通联编辑:唐一东】

猜你喜欢
卷积神经网络机器学习
基于卷积神经网络温室智能大棚监控系统的研究
基于深度卷积神经网络的物体识别算法
前缀字母为特征在维吾尔语文本情感分类中的研究
基于支持向量机的金融数据分析研究