APP下载

基于HSV颜色模型的图像风格迁移算法

2022-09-08王飞金玉苹祖培福

电子元器件与信息技术 2022年6期
关键词:色相卷积损失

王飞,金玉苹,祖培福

牡丹江师范学院数学科学学院,黑龙江 牡丹江,157011

0 引言

风格迁移算法能够生成的迁移图像具有如下特点:具有风格图像的风格因素,并且同时保留内容图像的内容信息。这也可以理解为在一幅内容图像上加入某个特殊的艺术风格。图像风格迁移算法大体上可以分为早期的在特定任务下的基于图像处理方法的风格迁移方法和最近几年出现的基于深度学习技术的通用性风格迁移方法。

早期的风格迁移算法最早都是基于某个特殊的任务来实现的,例如对于色彩风格迁移任务,其目标是将一幅图像的色彩风格迁移到另一图像中,经典的Reinhard算法采用了lab色彩模型,将风格图像和目标图像转换为lab颜色表示模型后,把统计占比量类似的颜色分量进行映射,达到目标图像的色彩转换,从而实现与风格图像的色彩风格相似的效果[1]。对于纹理迁移任务,钱小燕[2]对经典的Ashikhmin算法进行改进,在原有的寻找目标图像和风格图像的匹配点的L2距离基础上,引入了低分辨率统计特性的参考度量,使得原有算法的搜索匹配效率得到提升,并使用了双向扫描迁移法,从而消除了原有算法迁移效果的生硬化和区块化的不良特性。

基于深度学习的风格迁移算法最早是由Gatys L A等[3]在2015年首次提出,该算法对图像的图像内容进行迭代优化,达到内容图像的风格迁移的效果。这种风格迁移算法耗时较长,但因具有专一性,大部分情况下效果比较令人满意。随后,Johnson J等[4]通过使用卷积神经生成网络的方式,事先对网络进行多幅图像的生成训练,使得训练过程比经典的风格迁移算法在速度上提升了两到三个数量级,达到了实时生成的速度。但效果上,略逊色于基于图像迭代的经典迁移方法。最近几年,使用生成对抗网络(GAN)来进行风格迁移也成为主流,各种迁移风格的生成模型被建立,也有一个很好的迁移效果[5-6]。但是这种方法在模型的训练上,容易产生模式崩溃、不易收敛等缺点。

经典的风格迁移算法虽然能够在内容图像上加入风格图像的艺术风格特征,但是在风格迁移的过程中,也会把风格图像的颜色模式迁移到目标图像中,使得内容图像原始的颜色特征丧失,内容图像的颜色信息被风格图像的颜色取代,这种颜色特点的丢失情况,在某些应用场景下效果差强人意。本文主要针对这个问题对经典的风格迁移算法进行改进,提出一种基于HSV颜色模型的风格迁移算法,在损失函数中加入迁移图像与内容图像的颜色损失度量,通过优化,从而降低迁移图像与内容图像的颜色损失,达到保留原始内容图像颜色色调的目的。

1 HSV颜色模型

HSV颜色模型[7]采用色相(Hue),饱和度(Saturation)和色明度(Value)来描述颜色信息,其中色相描述的是颜色的种类,饱和度描述的是颜色的浓度,色明度描述的是颜色的明暗度。这种表示方法相比于RGB颜色模型,更符合人对颜色的认知模式,更易于理解。并且人们在颜色的认知上,对于相同色相的不同颜色,在感官上基本被认为是相同的颜色,只是在饱和度上或者在色明度上存在差异,也就是仅仅体现为浓度或亮度有所不同,但仍然可以归类为相同的颜色。并且在色相维度上,其颜色渐变关系可以表现为数值上的连续性,所以对于两个色相值差距较小的颜色,可以理解为颜色相近,色相值相差很大的两个颜色,理解为颜色迥异。所以对于颜色的数学衡量表示,HSV颜色模型适合用于表示颜色的相近的关系,并能进行数值上的减法运算,来衡量颜色的距离,本文提出的改进算法就是基于HSV模型的这一点,来保持迁移后图像与内容图像的颜色的相似度。

但是在计算机中的图片主要使用RGB模式进行图片的存储和表示,所以需要将图片的RGB表示模式转化为HSV模式,转换的公式为:

其中R、G、B分别为该图像点的RGB颜色量的分值,max和min为R、G、B三个值中的最大值和最小值。

2 经典风格迁移算法

经典风格迁移算法主要使用深度学习技术中的深度卷积神经网络来进行,迁移过程主要是对目标图像的改进过程,改进过程如下:被训练的目标图像通常可以初始化为内容图像,或者采用随机高斯噪声图像。通过使用预训练好的卷积神经网络对目标图像进行前向计算,预训练好的卷积神经网络能够很好的采集图像的有用特征,训练网络通常使用经典的VGG。在迁移时,预先用该网络对风格图像进行卷积计算,得出相应的卷积特征,留作后续计算损风格失值时使用。在后续的迁移过程中不断地对内容图像进行卷积特征的采集,并选取若干的卷积特征,来计算目前该内容图像的损失值,然后采用优化算法针对损失函数进行优化,最后损失值达到全局最优值后,就完成了图像的风格迁移。

迁移网络的损失函数主要包含内容损失函数和风格损失函数,内容损失函数衡量的是目标图像与内容图像在图像所要表达的内容之间的距离,可以理解为要表达的事物的差异性,例如当两个图像上为不同的姿势的人时,两个图像的内容距离相差较大,但如果两个图像上为相同的人,在相同的位置,展示相同的姿势,但仅仅一个采用写真风格,一个采用优化风格,但在内容维度上,两个图像的距离很近。对于风格损失,指的是图像的画风的相似相,例如同一作者的两个不同内容的油画,由于画风一样,可以理解为具有相近的风格距离。

内容损失函数通常选取神经网络的某层的神经网络卷积特征来表示,用该特征矩阵与内容图像同层特征的均方误差来衡量迁移图像与内容图像的内容距离,第l层的内容损失函数的定义式为:

图像的风格特征是采用卷积特征的Gram矩阵来衡量,Gram矩阵用来衡量特征矩阵的偏心协方差,以此来表示所有的通道与通道之间的变化趋势相似性,具有相似风格的图像的相同特征层的特征矩阵的Gram矩阵具有相似性。Gram矩阵的定义如下:

3 损失函数的改进

为了使生成的迁移图像保持内容图像原有的色相特征,并且同时具有风格迁移效果,所以考虑只使用HSV颜色模型中的色相(H)维度,来平衡既要保持迁移图像与内容图像的颜色相似度,又要保持风格的迁移效果,所以在原有的损失函数的基础上加入颜色损失函数,颜色损失函数的定义为:

其中hi,j和分别表示内容图像和迁移图像在像素点处的色相值。

整体损失函数的定义式为:

其中1α、2α、3α分别为内容损失、风格损失和颜色损失的权重,具体值大小通过实验确定。cl是选取的用来衡量内容损失的网络层的层号,lsi是选取的用来衡量风格损失的网络层的层号,一共选取sn个风格损失特征层,一般采取间隔式选取。

4 实验及分析

为了验证本算法改进带来效果的好坏,本文进行了算法对比验证实验,实验所使用的硬件环境为配置了Intel i7 CPU,32G内存,NVI 2080Ti显卡的计算工作站,软件环境为Windows10下的PyTorch开发环境和工具,对于特征提取网络,我们使用了PyTorch库包含的经典的VGG19深度卷积网络[8],对于内容权重、风格权重和颜色权重,经试验分析后,选取的值分别为1、10000、0.2,内容损失的特征提取层为15层,风格损失的特征提取层为3、8、15、22,优化器选择的是Adam优化器[9],优化器的衰减因子设定为0.6,衰减周期是800,学习率设定为0.04。

本实验选取了具有明显颜色特征的风格图像,如图1所示,并且选取了与风格图像整体颜色区别较大的内容图像,来做风格迁移,采用了经典的风格迁移算法和本文提出的改进算法进行对比,采用的风格图像和对比效果图如图2所示。

图1 风格图像

图2 迁移效果对比图

从对比图中看出,本文的迁移效果能够保留内容图像主要的颜色特征,并且能保留迁移风格。对于经典的图像风格迁移算法,产生的迁移图像在很大程度上保留了风格图像的蓝色,这与图像的内容不相符合,但对于本文提出的改进迁移算法,能够在保持原有内容图像的颜色特征基础上,将风格图像的油画笔触特征迁移进来。能够很大程度上看出原始内容图像的主体颜色,比如狗的灰白色,牛的黄色,可见本文改进的算法能够达到保留图像的主要颜色特征,并同时进行风格迁移的目的。

5 结语

本文提出对经典风格迁移算法的改进,在迁移算法的损失函数中,加入HSV模型中的色调损失度量部分,并通过实验验证,本算法能够使迁移效果保持原始内容图像的颜色特点,避免迁移风格的颜色掩盖内容图像的所有颜色特征。这种迁移效果可以使得结果图像更符合人们对图像主题本身特性的认知,有一定的应用价值。

未来规划对颜色特征的其他因素,比如色彩的浓度和亮度,来进一步改进风格迁移算法。另外对于图片中的主体和背景,通常为不同的颜色模式,并且在本题的试验结果中,可以看到主体和背景会互相干扰,例如狗的渲染图中,背景的白色中含有狗身上的黄色,牛的渲染图中,背景的绿色中含有牛身上的黄色成分,所以未来可以尝试结合目标分割算法,将主体和背景进行区分,达到主体和背景颜色保持原有风格,不受对方干扰,并且突出主体的渲染效果的目标。

猜你喜欢

色相卷积损失
洪涝造成孟加拉损失25.4万吨大米
基于全卷积神经网络的猪背膘厚快速准确测定
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
两败俱伤
如何让学生在设计中有效认识和使用色相环
植物景观的设计和营造
高支纱羊绒衫缩水率问题的试验分析
损失