APP下载

基于结构张量方向引导的改进的Image Quilting图像风格迁移算法

2021-06-30赵杨

电子测试 2021年5期
关键词:张量纹理方向

赵杨

(云南师范大学传媒学院动画系,云南昆明,650500)

1 图像风格迁移绘制技术研究概况

纹理合成是图像处理的重要研究领域,现有的方法主要分为两类:过程纹理合成和基于样图的纹理合成。在实际应用中,由于过程纹理合成算法实现复杂,因此研究者提出了通过将能够表现纹理特征的纹理块,拼接合成为大型块纹理的合成方法。

基于样图的纹理合成方法主要包括基于点匹配和基于块拼接两种算法,其主要区别是合成单位不同。1999年,Efros提出基于点匹配的纹理合成方法。该算法在样本图像纹理空间中捜索与邻域最佳匹配的像素点,然后将其传输到目标图像中。随后,Wei和Levoy提出通过多分辨率模型进行匹配,并采用图像金字塔加速纹理合成的过程。但是以上算法对结构纹理的合成效果不佳。

为了克服基于点匹配的纹理合成算法存在的缺陷,Efros提出基于块拼接的Image Quiting纹理合成及传输算法,该算法能将源图像纹理特征快速传输到目标图像中。2001 年,Liang 等人提出基于块拼贴的实时纹理合成算法,该算法利用KD-Tree来提升合成计算速度,基本实现了实时纹理合成。

经典的纹理传输算法经过进一步改进,可转换应用到图像风格迁移等应用领域。图像风格迁移主要涉及样本图像和目标图像,经过风格迁移之后的目标图像不仅能保持本身的内容信息,同时还具有样本图像的纹理特征,从而渲染模拟出具有与样本图像相似的艺术风格特征。

针对各种画派的风格迁移,研究者提出了不同的风格纹理合成和转移算法。2015 年,Gatys等人 受到了 CNN 思想的启发,提出基于神经网络的图像风格迁移算法。算法提出通过基于图像迭代和模型迭代的方式可将用户给定的输入图像转换为具有著名艺术风格特征的输出图像,从而实现了任意参考图像风格的迁移转换。

由于上述算法令人耳目一新的实验效果,推动众多学者进行了大量的后续研究工作。Goodfellow 等提出了一种生成对抗网络模型,网络由生成器和判别器组成,并通过对抗博弈的方式来学习生成模型,该算法广泛应用于图像风格迁移等方面。Li等人则提出将马尔可夫随机场模型与深度卷积神经网络相结合,从而实现更加准确的风格特征迁移。

除此之外,为了模拟特殊画派风格,其他研究者开发了一些颇具特色的风格迁移算法。其中卢丽稳等人提出一种应用在云南重彩画上面的人脸转移算法;钱文华等人提出基于图像重要度的艺术风格转换方法;赵杨等人提出运用GPU并行加速从而实现实时的梵高流线风格油画绘制及风格迁移算法。

2 基于Image Quilting的纹理传输算法概述

2.1 Image Quilting算法基本思想

Image quilting 算法的基本思想是:采用特定的匹配准则遵循扫描线顺序从样本图像中挑选一定尺寸的纹理块并将其复制到目标图像中。如图1所示,图(a)代表样本图像,图像中的红色方块表示在样图中随机挑选特定大小的纹理块并将其合成到目标图像中;图(b)是在目标图中令纹理块相互重叠;图(c)为在重叠部分寻找一条最佳切割路线,按该路径将新的纹理块复制到目标图像中。

图1 Image quilting 算法示意图

2.2 Image Quilting匹配块误差度量公式

Image quilting 算法在对匹配块误差进行度量时,通过计算样本图像和目标图像对应像素间的欧氏距离来确定最佳分割路径。欧氏距离表示为:

其中N1,N2为任意两个等大的匹配纹理块;R,G,B分别代表图像块三基色的值。

2.3 Image Quilting最佳分割路径定义

本文最佳分割路径与文献[1,2]中的 Minimum Error Boundary Cut 概念相同,但对其增加了边界约束条件,定义如下:

式中ei,j为两纹理块重叠区域的误差值,Ei,j为总误差值。

3 改进的Image Quilting图像风格迁移算法

3.1 色度重映射

在图像风格迁移过程中,样本图像与目标图像往往存在较大的色度误差,从而导致算法无法寻到最优匹配块。因此本文提出首先对样本图像与目标图像进行色度相似性预处理,为降低各通道的相关性,需在lαβ颜色空间进行操作,映射公式如下:

3.2 基于结构张量方向引导的块纹理合成

改进的Image Quilting图像风格迁移算法首先需计算获得目标图像的结构张量特征值及特征向量,利用目标图像的方向场进行约束实现基于方向场引导的块纹理合成算法。

本文采用结构张量作为目标图像方向场的计算方法。F为目标图像,Gσ,x和Gσ,y分别是正态分布在x轴方向和y轴方向的导数,定义为:

对F卷积,得到在x轴和y轴上偏导数fx、fy,结构张量定义为:

结构张量的非负特征值为:

特征向量的方向表示为:

局部方向定义为:θ=arg(t)[16]。计算出旋转角度后,利用二维空间中绕任意点旋转的旋转矩阵对输入的样本图像纹理块进行旋转。旋转矩阵定义为:

图2 目标图像结构张量场示意图

在算法具体实现过程中,每合成一个纹理块就需检测当前待合成块的方向,利用目标图像结构张量场的特征值确定方向后,就可将候选样本图像的纹理块旋转相应角度,同时运用经典的Image Quilting算法在目标图像中按照扫描线顺序逐块扫描合成。

图3 待选样本纹理块旋转示意图

3.3 图像内容融合

本文提出的改进的Image Quilting图像风格迁移算法对目标图像进行纹理传输处理时,当选取的样本纹理块较大时,会造成渲染图像只具有样本图像的纹理,颜色,方向等风格特征;而目标图像的形状,边缘,内容等信息不能较好的留存。为解决此问题,本文采用了Elias Wang等人提出的方法对最后处理的图像进行图像内容融合[17]。

图4 改进的Image Quilting图像风格迁移算法渲染效果

该方法基于这样一个基本经验,那就是图像的关键内容信息通常位于目标图像的前景,所以融合时需对前景分配较大权重,而对背景分配较小权重。算法首先通过对目标图像采用基于活动轮廓的图像分割方法进行前景与背景的分离,并计算逐像素权重掩码。其次,由于目标图像的边缘包含图像中的大量有效信息,因此需对目标图像边缘分配更大权重。最后,当最终合成图像像素点位于目标图像的边缘或者内容敏感区域时,则将目标图像的权重加大,而在其它区域,则将渲染图像权重加大。图像融合计算公式定义为,具体实现可以参考Elias Wang等人的文献和具体实现[17]:

图5 图像内容融合渲染效果对比图

3.4 算法执行步骤

本文设计的算法执行流程为:(1)确定样本图像待选纹理块,并进行初始参数设置(主要包括待选纹理块尺寸及重叠区域宽度等);(2)运用(3)式对目标图像进行色度重映射;(3)计算获得目标图像的结构张量方向场;(4)运用(2)式选出误差欧式距离最小的纹理块,并将其按当前目标图像的结构张量方向场旋转一定的角度,传输到渲染图像中;(5)运用经典的Image Quilting算法在目标图像中按照扫描线顺序逐块扫描合成;(6)运用(9)式进行图像内容融合得到最终渲染图像。

4 实验结果及分析

本文采用C++语言实现核心算法。实验硬件配置为:intel.Core.i7-6700HQ处理器,8.0GB内存。软件配置为:Windows10(X64)OS ,VC++2015,OpenCV。处理一副 512*512分辨率的图像在不采用GPU加速的情况下需要15分钟时间。

图6 改进的Image Quilting图像风格迁移算法渲染效果

图7 改进的Image Quilting图像风格迁移算法渲染效果

本文提出了一个比较完善的算法架构,可对多种艺术风格特征实现图像的风格迁移,取得了较为良好的渲染效果,但仍存在大量需要改进和优化的工作。主要改进方向是提高风格迁移的转化速度,运用GPU实现图像风格迁移的实时化处理,并将算法扩展到对视频的特效渲染方面。

猜你喜欢

张量纹理方向
2022年组稿方向
2021年组稿方向
偶数阶张量core逆的性质和应用
2021年组稿方向
四元数张量方程A*NX=B 的通解
基于BM3D的复杂纹理区域图像去噪
使用纹理叠加添加艺术画特效
TEXTURE ON TEXTURE质地上的纹理
扩散张量成像MRI 在CO中毒后迟发脑病中的应用
消除凹凸纹理有妙招!