首页> 中国专利> 一种基于GPU加速的灰度图像彩色化方法

一种基于GPU加速的灰度图像彩色化方法

摘要

本发明实施例公开了一种基于GPU加速的灰度图像彩色化方法,包括给定灰度图像为输入图像以及带有着色颜色的离散像素序列;根据输入图像计算相对总变差结构图;定义相似性匹配函数,运用并行PatchMatch算法计算输入图像中每个像素的K最近邻;根据离散像素序列,生成连续线段并绘制到着色模板图,且进一步设置着色标记图;构造灰度图像彩色化能量函数,最优化该能量函数得到稀疏线性方程组;采用CSR存储格式存储该稀疏线性方程组,运用基于CSR存储格式的共轭梯度法求解,所得解即为输入图像的彩色化图像结果。实施本发明,能有效提高图像彩色化方法的处理性能,使每一个步骤都具有可并行性,发挥GPU高效并行处理能力。

著录项

  • 公开/公告号CN106600526A

    专利类型发明专利

  • 公开/公告日2017-04-26

    原文格式PDF

  • 申请/专利权人 温州大学;

    申请/专利号CN201611139363.9

  • 发明设计人 赵汉理;季智坚;

    申请日2016-12-12

  • 分类号G06T3/00;

  • 代理机构温州名创知识产权代理有限公司;

  • 代理人陈加利

  • 地址 325000 浙江省温州市瓯海区东方南路38号温州市国家大学科技园孵化器

  • 入库时间 2023-06-19 02:02:25

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-02-23

    授权

    授权

  • 2017-05-24

    实质审查的生效 IPC(主分类):G06T3/00 申请日:20161212

    实质审查的生效

  • 2017-04-26

    公开

    公开

说明书

技术领域

本发明涉及图形处理技术领域,尤其涉及一种基于GPU(Graphics Processing Unit,图像处理单元)加速的灰度图像彩色化方法。

背景技术

灰度图像彩色化是一种为灰度图像添加颜色信息的计算机辅助设计方法,使图像更具有生动性与可观赏性,在计算机图形学和图像处理领域有着广泛的应用。近年来,随着计算机技术的发展,越来越多的研究人员关注于灰度图像彩色化的研究工作。

目前,已经有很多关于灰度图像彩色化的方法被提了出来,大致可以分为两种方法:基于着色线条颜色传播的彩色化方法和基于参考图像颜色迁移的彩色化方法。

在基于参考图像颜色迁移的彩色化方法中,该方法以一张或多张图像的颜色分布作为参考信息,建立合适的映射函数将参考图像中的颜色迁移到目标图像.但是这种基于颜色迁移的彩色化效果取决于参考图像与目标图像之间的信息相似度,而选取一张合适的参考图像对于普通用户来说却是比较困难的(参见Xiao X,Ma L.Gradient-preserving color transfer[J].Computer Graphics Forum,2009,28(7):1879-1886等)。也有一些算法运用合适的筛选规则从图像库中选取参考图像,但是需要繁琐的语义标定等操作(参见Yang Y,Zhao H,You L,et al.Semantic portrait color transfer with internet images[J].Multimedia Tools and Applications,2015,DOI:10.1007/s11042-015-3063-x等)。

在基于着色线条颜色传播的彩色化方法中,该方法以少量人工着色线条作为颜色信息,通过一定的颜色传播规则来完成整幅图像的彩色化。一些方法基于局部亮度连续性将用户输入的颜色传播到邻近的像素区域,但是这些方法在纹理丰富区域需要大量的线条才能获得较高质量的彩色化图像(参见Levin A,Lischinski D,Weiss Y.Colorization using optimization[J].ACM Transactions on Graphics,2004,23(3):689-694等)。也有一部分算法能够在全局图像空间完成颜色的传播,但是不能很好的解决边界颜色渗透的问题(参见Sheng B,Sun H,Chen S,et al.Colorization using the rotation-invariant feature space[J].IEEE Computer Graphics and Applications,2011,31(2):24-35等)。Zhao等人提出了基于Gabor纹理构建高维特征空间,结合了图像的纹理结构信息,有效地改善了边界颜色渗透的问题(参见Zhao H,Nie G,Li X,et al.Structure-aware nonlocal optimization framework for image colorization[J].Journal of Computer Science and Technology,2015,30(3):478-488),但是该算法在构建特征空间和最优化能量函数时都需要花费大量的运算时间,难以满足用户交互的处理时间需求。

发明内容

本发明实施例的目的在于提供一种基于GPU加速的灰度图像彩色化方法,能有效地提高图像彩色化方法的处理性能,使每一个步骤都具有可并行性,发挥GPU中高效并行处理能力。

为了解决上述技术问题,本发明实施例提供了一种基于GPU加速的灰度图像彩色化方法,所述方法包括:

步骤S101、给定一张灰度图像作为输入图像I,以及给定一组由n个像素组成的带有着色颜色的离散像素序列;

步骤S102、根据给定的输入图像I,计算出对应的相对总变差结构图;

步骤S103、根据计算得出的相对总变差结构图,定义出一个相似性匹配函数,并运用基于全局图像空间查找的并行PatchMatch算法来计算相对总变差结构图图像中每个像素p的K最近邻;

步骤S104、根据给定的由n个像素组成的带有着色颜色的离散像素序列,生成n-1条带有着色颜色的线段,并将生成的n-1条带有着色颜色的线段绘制到与输入图像I大小相同的着色模板图中,且进一步设置一个着色标记图;

步骤S105、根据得到的每个像素p的K最近邻和对应定义的相似性匹配函数值,以及根据生成的着色模板图和设置的着色标记图,构造出一个灰度图像彩色化的能量函数,并进一步对灰度图像彩色化的能量函数进行优化,得到稀疏线性方程组;

步骤S106、采用CSR(Compressed Row Storage,压缩行存储)存储格式进行存储该稀疏线性方程组,并采用基于CSR存储格式的共轭梯度法并行地求解该稀疏线性方程组,得到的值作为输入图像I的彩色化图像结果输出。

任意一个像素p在相对总变差结构图中对应的值R(p)均是通过公式来实现;

其中,Ω(p)表示给定的一个以像素点p为中心的m×m的方形图像块;表示方形图像块Ω(p)中的一个像素点r的梯度强度值,即设像素点r的坐标记为(xr,yr),则ε=10-9

其中,所述相似性匹配函数d(p,q)具体为d(p,q)=α×(p-q)2+(1-α)×(1-tanh(β·R(p)))·T(p,q);其中,p和q均为像素点;α为调节距离与纹理特征的权重参数,其取值范围为[0,1];β为相对总变差结构图进行比例缩放的系数;表示以像素点p和q的纹理特征的差异。

其中,所述能量函数具体为其中,E2(p)=S(p)(U(p)-C(p))2

其中,E(U)表示图像中所有像素p的能量项E1和E2之和,E1用于保证颜色可以在像素最近邻中尽量扩散,E2用于保证着色区域颜色与给定着色颜色尽量一致;q∈N(p)表示q为p的K最近邻中的一个像素;w(p,q)表示p和q的扩散权值;S(p)为0或1,当像素点p是该n-1条线段所经过的任一像素时取1,当像素点p是该n-1条线段所未经过的任一像素取0;C(p)为0或C0,当像素点p是该n-1条线段所经过的任一像素时取C0,当像素点p是该n-1条线段所未经过的任一像素时取0;U(p)和U(q)分别为稀疏线性方程组中第p行方程和第q行方程对应的系数。

实施本发明实施例,具有如下有益效果:

本发明以方形图像块作为局部纹理特征,运用PatchMatch算法在输入图像的全局空间范围中快速地查找每个像素的K最近邻,高效地建立和求解基于压缩表示的彩色化能量方程,有效地提高了图像彩色化方法的处理性能,实现每一个步骤都可以在GPU中高效并行处理,使灰度图像彩色化达到了近实时的处理性能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,根据这些附图获得其他的附图仍属于本发明的范畴。

图1为本发明实施例提供的基于GPU加速的灰度图像彩色化方法的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,为本发明实施例中,提出的一种基于GPU加速的灰度图像彩色化方法,所述方法包括:

步骤S101、给定一张灰度图像作为输入图像I,图像的宽度和高度分别记作w1和h1。图像中的像素点记作p=(xp,yp),则xp∈{0,1,2,...,w1-1},yp∈{0,1,2,...,h1-1}。输入图像I在p坐标的像素的亮度值记为I(p)。给定方形图像块Ω的大小,记作m×m。给定一组由n个像素组成的带有着色颜色的离散像素序列,像素坐标记为{P1,P2,…,Pn-1,Pn},着色颜色记为C0。

步骤S102、根据步骤S101中的输入图像I,计算对应的相对总变差结构图(参见Cho H,Lee H,Kang H,et al.Bilateral texture filtering[J].ACM Transactions on Graphics,2014,33(4):128:1-128:8.)。对于图像中的任意一个像素p在该相对总变差结构图中对应的值为R(p),其计算方法具体描述如下:

式中,Ω(p)表示步骤S101中给定的一个以像素点p为中心的m×m的方形图像块。表示方形图像块Ω(p)中的一个像素点r的梯度强度值,即:设像素点r的坐标记为(xr,yr),则为了防止分母为零的情况出现,事先给定参数值ε=10-9。较小的R值表示平坦或纹理区域,较大的R值则表示结构边界区域。

步骤S103、根据步骤S102中计算得出的相对总变差结构图,对局部纹理特征进行缩放,并运用基于全局图像空间查找的PatchMatch算法来计算图像中每个像素p的K最近邻,记为N(p)(参见Barnes C,Shechtman E,Goldman D B,et al.The generalized patchmatch correspondence algorithm[C]//European Conference on Computer Vision,Springer,Berlin,2010,pp.29-43.)。本发明采用Barnes等所提出的PatchMatch并行流程来实现(参见Barnes C,Shechtman E,Finkelstein A,et al.PatchMatch:a randomized correspondence algorithm for structural image editing[J].ACM Transactions on Graphics,2009,28(3):24:1-24:11.)。

在PatchMatch算法的K最近邻查找过程中,输入图像中的每个像素点p都是以步骤S101中给定的像素p为中心的方形图像块Ω(p)作为其纹理特征,并且结合了像素之间的二维图像空间距离约束。

具体地,本发明在PatchMatch算法的K最近邻查找过程中使用了一个新的相似性匹配函数d(p,q)作为两个像素之间的特征距离,该公式定义如下:

d(p,q)=α×(p-q)2+(1-α)×(1-tanh(β·R(p)))·T(p,q)

式中,α是事先给定的用于调节距离与纹理特征的权重参数,其取值范围为[0,1]。β是事先给定的用于对步骤102中计算得到的相对总变差结构图进行比例缩放。T(p,q)表示以像素p和q的纹理特征的差异。取相似性匹配函数d值最小的前K个像素作为每个像素p的K最近邻N(p)。

步骤S104、根据步骤S101中给定的由n个像素组成的带有着色颜色的离散像素序列,像素坐标{P1,P2,…,Pn-1,Pn},着色颜色C0。本发明依次序对离散像素连接成n-1条线段,组成连续的折线段,并对该带有着色颜色C0的n-1条线段绘制到与输入图像I大小相同的着色模板图中,着色模板图记为C,同时设置一个着色标记图S。本发明具体做法如下:假设p是该n-1条线段所经过的任一像素,则标记S(p)=1、C(p)=C0,假设p’是该n-1条线段所未经过的像素,则标记S(p’)=0、C(p’)=0。

步骤S105、根据步骤S103中得到的每个像素p的K最近邻N(p)及其相似性匹配函数d值、步骤S104中生成的输入图像I相同大小的所求彩色化图像,则该能量函数的公式定义如下:着色模板图与着色标记图,构造一个灰度图像彩色化的能量函数。假设U为与输入图像相同大小的所求彩色化图像,则该能量函数的公式定义如下:

E2(p)=S(p)(U(p)-C(p))2

式中,E(U)表示图像中所有像素p的能量项E1和E2之和,其中,E1用于保证颜色可以在像素最近邻中尽量扩散,E2用于保证着色区域颜色与给定着色颜色尽量一致。q∈N(p)表示q为p的K最近邻中的一个像素,w(p,q)表示p和q的扩散权值。能量函数E可以利用最小二乘法得到一个包含w1×h1个未知数U的稀疏线性方程组。从能量函数的公式定义可以看出,在该稀疏线性方程组中,第p行方程中只有U(p)及其p的所有K最近邻q∈N(p)所对应的的U(q)的系数是非0的,而其余未知数的系数都是0。

步骤S106、根据步骤S105中计算得到的是一个稀疏线性方程组,该稀疏线性方程组的求解效率直接影响了最终灰度图像彩色化的整体效率。因此,本发明使用基于压缩存储格式来高效地求解该稀疏线性方程组,在稀疏线性方程组中仅保存值为非0的系数,而不保存值为0的系数。

具体地,本发明采用CSR存储格式,该存储格式包含三个数组:系数数值数组,系数列号数组,以及系数行偏移数组。最后,利用基于CSR存储格式的共轭梯度法可以高效并行地求解出该稀疏线性方程组,得到所求彩色化图像U的值,完成对能量函数的最优化。至此,彩色化图像U即为所求的输入灰度图像I的彩色化结果。

实施本发明实施例,具有如下有益效果:

本发明以方形图像块作为局部纹理特征,运用PatchMatch算法在输入图像的全局空间范围中快速地查找每个像素的K最近邻,高效地建立和求解基于压缩表示的彩色化能量方程,有效地提高了图像彩色化方法的处理性能,实现每一个步骤都可以在GPU中高效并行处理,使灰度图像彩色化达到了近实时的处理性能。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号