CN106327449B - 一种图像修复方法、装置和计算设备 - Google Patents

一种图像修复方法、装置和计算设备 Download PDF

Info

Publication number
CN106327449B
CN106327449B CN201610816567.5A CN201610816567A CN106327449B CN 106327449 B CN106327449 B CN 106327449B CN 201610816567 A CN201610816567 A CN 201610816567A CN 106327449 B CN106327449 B CN 106327449B
Authority
CN
China
Prior art keywords
image
filling
block
point
filled
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610816567.5A
Other languages
English (en)
Other versions
CN106327449A (zh
Inventor
吕仰铭
李志阳
张伟
傅松林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiamen Meitu Technology Co Ltd
Original Assignee
Xiamen Meitu Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xiamen Meitu Technology Co Ltd filed Critical Xiamen Meitu Technology Co Ltd
Priority to CN201610816567.5A priority Critical patent/CN106327449B/zh
Publication of CN106327449A publication Critical patent/CN106327449A/zh
Application granted granted Critical
Publication of CN106327449B publication Critical patent/CN106327449B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种图像修复方法,在计算设备中执行,该方法包括:获取用户对图像的涂抹轨迹,将被涂抹轨迹覆盖的图像区域作为涂抹区;根据涂抹区对图像进行裁剪,得到第一图像;以第一图像为底层图像建立图像金字塔;按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,并将底层图像的填充融合结果作为最终的图像修复结果。本发明还公开了能够实施上述图像修复方法的图像修复应用,和包括上述图像修复应用的计算设备。

Description

一种图像修复方法、装置和计算设备
技术领域
本发明涉及图像处理技术领域,尤其涉及一种图像修复方法、装置和计算设备。
背景技术
图像修复,即对受到损坏的图像进行修复重建或者去除图像中的多余物体。由于修复区信息的缺失,图像修复是一种根据修复区周围的图像信息或其他先验知识对修复区进行复原与重建的难题。对于复杂背景的图像修复,既需要考虑颜色、纹理之间的过渡,还需要保持边缘的连续性。
现有图像修复方法的处理效果往往都不够好。例如,基于偏微分方程的图像修复方法计算量大且计算不稳定;整体变分方法适于处理较大的区域,但是极易导致边界模糊;纹理合成方法计算量大、修复时间长,不实用;等等。
发明内容
为此,本发明提供一种图像修复方法、装置和计算设备,以力图解决或至少缓解上面存在的问题。
根据本发明的一个方面,提供一种图像修复方法,在计算设备中执行,该方法包括:获取用户对图像的涂抹轨迹,将被所述涂抹轨迹覆盖的图像区域作为涂抹区;根据所述涂抹区对所述图像进行裁剪,得到第一图像;以所述第一图像为底层图像建立图像金字塔;按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,将底层图像的填充融合结果作为最终的图像修复结果。
可选地,在根据本发明的图像修复方法中,第一图像为正方形。
可选地,在根据本发明的图像修复方法中,第一图像的面积为所述涂抹区的面积的16倍。
可选地,在根据本发明的图像修复方法中,图像金字塔中相邻两层图像的分辨率压缩比例为0.7。
可选地,在根据本发明的图像修复方法中,图像金字塔的顶层图像的尺寸不小于25*25。
可选地,在根据本发明的图像修复方法中,按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合的步骤包括:
设置每层图像的最大迭代次数;从图像金字塔的顶层图像开始,依次执行以下步骤:步骤一:设置迭代次数m=1,根据所述涂抹区确定涂抹扩展区、屏蔽区和可选区,其中,所述涂抹扩展区为对所述涂抹区进行扩展所得的区域,所述屏蔽区为由当前层图像的右起第一数量的列和下起第二数量的行所组成的区域,所述可选区为当前层图像中除了所述涂抹扩展区和所述屏蔽区之外的区域;步骤二:为涂抹扩展区中的每一个待填充点随机设置一个填充点,其中,所述填充点位于所述可选区中;将待填充点与填充点的对应关系记录于填充表Fm中;步骤三:采用传播算法对填充表Fm进行更新;步骤四:采用上一次迭代过程中的填充表Fm-1对填充表Fm进行更新;步骤五:根据填充表Fm对所述涂抹扩展区进行块叠加融合;步骤六:判断是否Fm=Fm-1或m=当前层图像的最大迭代次数:若是,则判断本层图像是否为底层图像,若是,则结束,若否,则继续进行下一层图像的填充融合;若否,则m增加1,执行步骤二。
可选地,在根据本发明的图像修复方法中,每层图像的最大迭代次数Mi=2*i-1,其中,i为图像在图像金字塔中的层数,图像金字塔的底层的层数为1,顶层的层数为n,1≤i≤n。
可选地,在根据本发明的图像修复方法中,涂抹扩展区为将涂抹区中每一个像素向上并向左扩展6个像素所得的图像区域。
可选地,在根据本发明的图像修复方法中,第一数量和第二数量均为6。
可选地,在根据本发明的图像修复方法中,步骤三进一步包括:对于涂抹扩展区中左右相邻的两个待填充点(x-1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1+1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1+1,v1)。
可选地,在根据本发明的图像修复方法中,步骤三进一步包括:对于涂抹扩展区中左右相邻的两个待填充点(x+1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1-1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1-1,v1)。
可选地,在根据本发明的图像修复方法中,步骤三进一步包括:对于涂抹扩展区中上下相邻的两个待填充点(x,y-1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1,v1+1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1+1)。
可选地,在根据本发明的图像修复方法中,步骤三进一步包括:对于涂抹扩展区中上下相邻的两个待填充点(x,y+1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1,v1-1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1-1)。
可选地,在根据本发明的图像修复方法中,步骤四进一步包括:按照以下步骤更新填充表Fm中各待填充点的填充点:待填充点(x,y)在填充表Fm-1、Fm中的填充点分别为(u1,v1)、(u2,v2);分别以(x,y)、(u1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将填充表Fm中待填充点(x,y)的填充点更新为(u1,v1)。
可选地,在根据本发明的图像修复方法中,相似距离为两个区块中对应位置像素的RGB欧氏距离之和。
可选地,在根据本发明的图像修复方法中,步骤五进一步包括:以每一个填充点为左上角的顶点构造相同尺寸的填充区块;对于每一个待填充点,将该待填充点对应的填充点的填充区块叠加至该待填充点处,其中,该待填充点的位置与其对应的填充点的位置重合;计算每一个待填充点的RGB修复值,待填充点的RGB修复值为该待填充点处所叠加的各像素的RGB值的平均值。
可选地,在根据本发明的图像修复方法中,相同尺寸为7*7。
可选地,在根据本发明的图像修复方法中,步骤六中继续进行下一层图像的填充融合的步骤包括:按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合,执行步骤一。
可选地,在根据本发明的图像修复方法中,步骤六中继续进行下一层图像的填充融合的步骤包括:判断当前层图像的尺寸是否大于等于1000*1000,若是,则按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合;重复上述放大填充表和块叠加融合的步骤,直至完成底层图像的块叠加融合。
可选地,在根据本发明的图像修复方法中,步骤六中继续进行下一层图像的填充融合的步骤包括:判断当前层图像的尺寸是否大于等于1000*1000,若是,则按照图像金字塔中相邻两层的分辨率压缩比例将填充表放大至底层图像,根据放大的填充表对底层图像的涂抹扩展区进行块叠加融合。
根据本发明的一个方面,提供一种图像修复装置,驻留于计算设备中,该装置包括:交互模块,适于获取用户对图像的涂抹轨迹,将被所述涂抹轨迹覆盖的图像区域作为涂抹区;裁剪模块,适于根据所述涂抹区对所述图像进行裁剪,得到第一图像;金字塔构造模块,适于以所述第一图像为底层图像建立图像金字塔;填充融合模块,适于按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,将底层图像的填充融合结果作为最终的图像修复结果。
可选地,在根据本发明的图像修复装置中,裁剪模块适于将第一图像设置为正方形。
可选地,在根据本发明的图像修复装置中,裁剪模块适于将所述第一图像的面积设置为所述涂抹区的面积的16倍。
可选地,在根据本发明的图像修复装置中,金字塔构造模块适于将图像金字塔中相邻两层图像的分辨率压缩比例设置为0.7。
可选地,在根据本发明的图像修复装置中,金字塔构造模块适于控制图像金字塔的顶层图像的尺寸不小于25*25。
可选地,在根据本发明的图像修复装置中,填充融合模块适于按照以下步骤按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合:设置每层图像的最大迭代次数;从图像金字塔的顶层图像开始,依次执行以下步骤:步骤一:设置迭代次数m=1,根据所述涂抹区确定涂抹扩展区、屏蔽区和可选区,其中,所述涂抹扩展区为对所述涂抹区进行扩展所得的区域,所述屏蔽区为由当前层图像的右起第一数量的列和下起第二数量的行所组成的区域,所述可选区为当前层图像中除了所述涂抹扩展区和所述屏蔽区之外的区域;步骤二:为涂抹扩展区中的每一个待填充点随机设置一个填充点,其中,所述填充点位于所述可选区中;将待填充点与填充点的对应关系记录于填充表Fm中;步骤三:采用传播算法对填充表Fm进行更新;步骤四:采用上一次迭代过程中的填充表Fm-1对填充表Fm进行更新;步骤五:根据填充表Fm对所述涂抹扩展区进行块叠加融合;步骤六:判断是否Fm=Fm-1或m=当前层图像的最大迭代次数:若是,则判断本层图像是否为底层图像,若是,则结束,若否,则继续进行下一层图像的填充融合;若否,则m增加1,执行步骤二。
可选地,在根据本发明的图像修复装置中,填充融合模块适于设置每层图像的最大迭代次数为Mi=2*i-1,其中,i为图像在图像金字塔中的层数,图像金字塔的底层的层数为1,顶层的层数为n,1≤i≤n。
可选地,在根据本发明的图像修复装置中,填充融合模块适于将涂抹扩展区设置为将涂抹区中每一个像素向上并向左扩展6个像素所得的图像区域。
可选地,在根据本发明的图像修复装置中,填充融合模块还适于将所述第一数量和所述第二数量均设置为6。
可选地,在根据本发明的图像修复装置中,填充融合模块进一步适于按照以下步骤执行步骤三:对于涂抹扩展区中左右相邻的两个待填充点(x-1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1+1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1+1,v1)。
可选地,在根据本发明的图像修复装置中,填充融合模块进一步适于按照以下步骤执行步骤三:对于涂抹扩展区中左右相邻的两个待填充点(x+1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1-1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1-1,v1)。
可选地,在根据本发明的图像修复装置中,填充融合模块进一步适于按照以下步骤执行步骤三:对于涂抹扩展区中上下相邻的两个待填充点(x,y-1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1,v1+1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1+1)。
可选地,在根据本发明的图像修复装置中,填充融合模块进一步适于按照以下步骤执行步骤三:对于涂抹扩展区中上下相邻的两个待填充点(x,y+1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);分别以(x,y)、(u1,v1-1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1-1)。
可选地,在根据本发明的图像修复装置中,填充融合模块进一步适于按照以下步骤执行步骤四:按照以下步骤更新填充表Fm中各待填充点的填充点:待填充点(x,y)在填充表Fm-1、Fm中的填充点分别为(u1,v1)、(u2,v2);分别以(x,y)、(u1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;分别计算第一区块与第二区块、第三区块的相似距离s1、s2;若s1<s2,则将填充表Fm中待填充点(x,y)的填充点更新为(u1,v1)。
可选地,在根据本发明的图像修复装置中,填充融合模块适于将所述相似距离设置为两个区块中对应位置像素的RGB欧氏距离之和。
可选地,在根据本发明的图像修复装置中,填充融合模块进一步适于按照以下步骤执行步骤五:以每一个填充点为左上角的顶点构造相同尺寸的填充区块;对于每一个待填充点,将该待填充点对应的填充点的填充区块叠加至该待填充点处,其中,该待填充点的位置与其对应的填充点的位置重合;计算每一个待填充点的RGB修复值,待填充点的RGB修复值为该待填充点处所叠加的各像素的RGB值的平均值。
可选地,在根据本发明的图像修复装置中,填充融合模块适于将所述相同尺寸设置为7*7。
可选地,在根据本发明的图像修复装置中,填充融合模块适于按照以下步骤执行步骤六中的继续进行下一层图像的填充融合:按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合,执行步骤一。
可选地,在根据本发明的图像修复装置中,填充融合模块适于按照以下步骤执行步骤六中的继续进行下一层图像的填充融合:判断当前层图像的尺寸是否大于等于1000*1000,若是,则按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合;重复上述放大填充表和块叠加融合的步骤,直至完成底层图像的块叠加融合。
可选地,在根据本发明的图像修复装置中,填充融合模块适于按照以下步骤执行步骤六中的继续进行下一层图像的填充融合:判断当前层图像的尺寸是否大于等于1000*1000,若是,则按照图像金字塔中相邻两层的分辨率压缩比例将填充表放大至底层图像,根据放大的填充表对底层图像的涂抹扩展区进行块叠加融合。
根据本发明的一个方面,提供一种计算设备,包括如上所述的图像修复装置。
根据本发明的技术方案,采用图像金字塔的填充融合技术,从金字塔的顶层图像开始,为涂抹扩展区中的每一个待填充点从可选区中搜索最匹配的填充区块,并将这些填充区块填充至相应的待填充点处,完成填充区块的叠加融合。在本层的块叠加融合结果收敛或迭代次数达到最大后,将本层的融合结果放大至下一层,重复上述过程,进行下一层图像的填充融合,直至达到金字塔的最底层。
在图像金字塔中,顶部层图像更够获取到合适的边界轮廓信息,底部层图像能够完善细节纹理信息,因此本发明的图像修复方案能同时保持良好的纹理过渡和边缘衔接,效果稳定,适用于各种背景下的图像修复。此外,本发明按照图像金字塔从顶层到底层的顺序依次对每层图像进行填充融合,上层图像收敛后下层图像能更快收敛,加快了运算速度,修复时间短,有良好的实时性,能够适用于各种高分辨率的大图。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了本发明一个实施例的计算设备100的结构图;
图2示出了本发明一个实施例的图像修复装置200的结构图;
图3示出了本发明一个实施例的第一图像的示意图;
图4示出了本发明一个实施例的图像金字塔的示意图;
图5示出了本发明一个实施例的对图像金字塔的每一层图像进行填充融合的方法500的流程图;
图6示出了本发明一个实施例的涂抹区、涂抹扩展区、可选区和屏蔽区的示意图;
图7A-图7D示出了本发明四个实施例的采用传播算法更新填充表Fm的示意图;
图8示出了本发明一个实施例的计算待填充点的RGB修复值的示意图;
图9示出了本发明另一个实施例的对图像金字塔的每一层图像进行填充融合的方法900的流程图;
图10示出了本发明另一个实施例的对图像金字塔的每一层图像进行填充融合的方法1000的流程图;
图11示出了本发明一个实施例的图像修复方法1100的流程图;以及
图12示出了采用本发明的技术方案所得到的图像修复效果图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的计算设备100的结构图。计算设备100可以是手机、平板电脑、个人数字助理(PDA)、个人媒体播放器设备、无线网络浏览设备、装置专用设备、或包括上面任何功能的混合设备。计算设备也可以是桌面计算机、笔记本电脑、服务器、工作站等设备。
如图1所示,计算设备100中驻留有图像修复装置200,使得计算设备100能够实现图像修复的功能。图像修复装置200可以作为搜索引擎的一个插件驻留于计算设备100的浏览器中,或作为一个独立的软件安装于计算设备100中,本发明对图像修复装置200在计算设备100中的存在形式不做限制。
图2示出了根据本发明一个实施例的图像修复装置200的结构图。如图2所示,图像修复装置200包括交互模块210、裁剪模块220、金字塔构造模块230和填充融合模块240。
交互模块210适于获取用户对图像的涂抹轨迹,并将被涂抹轨迹覆盖的图像区域作为涂抹区。涂抹轨迹由用户针对图像所做的涂抹操作而得出。当计算设备的输出设备为显示器时,涂抹操作可以是用户点按、拖动鼠标的操作;当计算设备的输出设备为触摸屏时,涂抹操作为用户的交互手势。
待修复的原始图像往往尺寸比较大,因此,由裁剪模块220对原始图像进行裁剪,以加快修复速度。裁剪模块220适于根据涂抹区对图像进行裁剪,得到第一图像。裁剪的方式是沿涂抹区向四周扩展,第一图像中包括所有的涂抹区和部分未涂抹区。根据一种实施例,第一图像优选地为正方形,且其面积为涂抹区面积的16倍,这样能够同时保证良好的修复效果和较快的计算速度。在实际情况中,可能难以控制第一图像的面积刚好为涂抹区面积16倍,此时,保证第一图像的面积约为涂抹区面积的16倍即可。将第一图像设置为面积为涂抹区面积16倍的正方形是一种优选的实施例,当然,第一图像还可以设置为其他尺寸的其他形状,本发明对此并无限制。
图3示出了根据本发明一个实施例的第一图像的示意图。如图3所示,原始图像310的尺寸较大,阴影部分为用户设置的涂抹区320。裁剪模块220根据涂抹区320对原始图像310进行裁剪,得到面积约为涂抹区320面积16倍的正方形的第一图像330。第一图像330中包括全部的涂抹区320和部分非涂抹区,而且非涂抹区的面积大于涂抹区320,在后续的图像修复过程中,可以采用第一图像中的非涂抹区来修复涂抹区320。
金字塔构造模块230适于以第一图像为底层图像建立n层的图像金字塔。在图像金字塔中,顶部层图像更够获取到合适的边界轮廓信息,底部层图像能够完善细节纹理信息,因此,采用图像金字塔使得本发明的图像修复方案能同时保持良好的纹理过渡和边缘衔接,效果稳定,适用于各种背景下的图像修复。图4示出了根据本发明一个实施例的图像金字塔的示意图。图4所示的图像金字塔共有五层,即n=5,这五层图像分别为S1-S5。其中,S1为第一图像,位于图像金字塔的底层。根据一种实施例,图像金字塔中相邻两层图像的分辨率压缩比例为0.7,以图4为例,若底层图像S1的尺寸为1000*1000像素,则其上面一层图像S2的尺寸为700*700像素。根据一种实施例,图像金字塔的顶层图像Sn的尺寸不小于25*25,以保证有足够的像素信息来支持图像的修复。当然,相邻两层图像的分辨率压缩比例也可以为其他数值,对顶层图像Sn也可以设置其他的尺寸要求,本发明对此并无限制。
填充融合模块240适于按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,并将底层图像的填充融合结果作为最终的图像修复结果。图5示出了根据本发明一个实施例的对图像金字塔的每一层图像进行填充融合的方法500的流程图。如图5所示,首先,需要设置一些变量来实现计数和终止条件的判定,以保证填充融合过程的正常进行。i为计数变量,用于标记图像在图像金字塔中的层数。对于共有n层的图像金字塔,其底层的层数为1,顶层的层数为n,1≤i≤n。由于填充融合过程从图像金字塔的顶层开始,因此,将i的初值设为n。Mi为第i层图像的最大迭代次数,有Mi=2*i-1。当然,最大迭代次数Mi还可以设置为采用其他的公式计算,但应当指出,由于顶层图像收敛后,底层图像可以更快收敛,因此,Mi的计算公式应当满足“越靠近底层,最大迭代次数越小”的设计原则。m为计数变量,用于标记在进行每一层图像的填充融合时所执行的迭代次数。
填充融合模块240在对图像金字塔中的每层图像进行填充融合时,均需要执行步骤S510-S560六个步骤。
在步骤S510中,根据当前层图像(即第i层图像)的涂抹区来确定涂抹扩展区、屏蔽区和可选区。其中,涂抹扩展区为对涂抹区进行扩展所得的区域。涂抹扩展区的边界处一部分像素属于涂抹区,一部分属于非涂抹区,这样,可以充分利用周围的非涂抹区信息对涂抹区进行填充融合。根据一种实施例,涂抹扩展区为将涂抹区中每一个像素向上并向左扩展6个像素所得的区域,这样,涂抹区中的每一个点均可以形成一个以该点为右下角顶点的7*7的块。当然,涂抹扩展区还有其他的扩展方式,例如,将涂抹区中每一个像素向上并向左扩展5个像素,本发明对涂抹扩展区的扩展方式并无限制,发明人可以根据需要自行设置。
屏蔽区为由当前层图像的右起第一数量的列和下起第二数量的行所组成的区域,根据一种实施例,第一数量和第二数量均为6,即屏蔽区为由该层图像最右边的6列和最下边的6行所组成的区域。当然,第一数量和第二数量还可以被设为其他数值,本发明对二者的取值并无限制。优选地,第一数量、第二数量的取值应与涂抹扩展区的扩展方式相对应,例如,当涂抹扩展区为将涂抹区中每一个像素向上并向左扩展5个像素所得的区域时,第一数量和第二数量均取值为5。
可选区为当前层图像中除了涂抹扩展区和屏蔽区之外的区域。
图6示出了本发明一个实施例的涂抹区、涂抹扩展区、可选区和屏蔽区的示意图。图像600是图像金字塔的顶层图像,其尺寸为25*25。涂抹区610(被虚线包围的区域)的尺寸为6*6。涂抹扩展区620(白色区域)为将涂抹区中的每一个像素向上并向左扩展6个像素所得的图像区域。涂抹扩展区620是涂抹区610的扩展,在其边界处一部分像素属于涂抹区610,一部分像素属于非涂抹区,这样,可以充分地利用周围的非涂抹区信息对涂抹区610进行填充融合。屏蔽区630(灰色区域)为由图像600的最右边的6列和最下边的6行所组成的区域。可选区640(黑色区域)为图像600中除了涂抹扩展区620和屏蔽区630之外的区域。
随后,在步骤S520中,为涂抹扩展区中的每一个待填充点随机设置一个位于可选区中的填充点,并将各待填充点和填充点的对应关系记录于填充表Fm中。待填充点、填充点实际上都是像素点。为了描述方便,将待填充点和填充点的对应关系描述为Fm(x,y)=(u,v),其中,(x,y)为涂抹扩展区的待填充点的位置坐标,(u,v)为可选区的填充点的位置坐标。
随后,在步骤S530中,采用传播算法对填充表Fm进行更新。这一步实际上是采用相邻的待填充点的填充点来对各待填充点的填充点进行修正。修正方式有多种,例如,根据左边的点来修正右边的点,根据上边的点来修正下边的点,等等。图7A-图7D示出了本发明四个实施例的采用传播算法更新填充表Fm的示意图。
图7A为从左到右的传播算法,即采用左边的点来更新右边的点。(x-1,y)和(x,y)为左右相邻的两个待填充点,其填充点分别为(u1,v1)、(u2,v2),即Fm(x-1,y)=(u1,v1),Fm(x,y)=(u2,v2)。分别以(x,y)、(u1+1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块,并分别计算第一区块与第二区块、第三区块的相似距离s1、s2。若s1<s2,则在填充表Fm中将待填充点(x,y)的填充点更新为(u1+1,v1);否则,则不更新。根据一种实施例,上述“相同尺寸”为7*7,“相似距离”为两个区块中各像素RGB值的SSD(Sum ofSquared Differences)距离,即两个区块中对应位置像素的RGB值的欧式距离之和。例如,对于7*7的第一区块和第二区块,二者的SSD距离为:
其中,pij与qij(1≤i≤7,1≤j≤7)为两个区块中对应位置上的像素。prij、pgij、pbij分别为像素pij的R、G、B值,qrij、qgij、qbij分别为像素qij的R、G、B值。当然,在其他的实施例中,也可以将“相同尺寸”设置为其他数值,“相似距离”也可以采用其他公式计算,本发明对“相同尺寸”的数值以及相似距离的计算方式并无限制。
图7B为从右到左的传播算法,即采用右边的点来更新左边的点。(x+1,y)和(x,y)为左右相邻的两个待填充点,其填充点分别为(u1,v1)、(u2,v2),即Fm(x+1,y)=(u1,v1),Fm(x,y)=(u2,v2)。分别以(x,y)、(u1-1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块,并分别计算第一区块与第二区块、第三区块的相似距离s1、s2。若s1<s2,则在填充表Fm中将待填充点(x,y)的填充点更新为(u1-1,v1);否则,则不更新。根据一种实施例,上述“相同尺寸”为7*7,“相似距离”为两个区块中各像素RGB值的SSD距离,其计算公式如式(1)。
图7C为从上到下的传播算法,即采用上边的点来更新下边的点。(x,y-1)和(x,y)为上下相邻的两个待填充点,其填充点分别为(u1,v1)、(u2,v2),即Fm(x,y-1)=(u1,v1),Fm(x,y)=(u2,v2)。分别以(x,y)、(u1,v1+1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块,并分别计算第一区块与第二区块、第三区块的相似距离s1、s2。若s1<s2,则在填充表Fm中将待填充点(x,y)的填充点更新为(u1,v1+1);否则,则不更新。根据一种实施例,上述“相同尺寸”为7*7,“相似距离”为两个区块中各像素RGB值的SSD距离,其计算公式如式(1)。
图7D为从下到上的传播算法,即采用下边的点来更新上边的点。(x,y+1)和(x,y)为上下相邻的两个待填充点,其填充点分别为(u1,v1)、(u2,v2),即Fm(x,y+1)=(u1,v1),Fm(x,y)=(u2,v2)。分别以(x,y)、(u1,v1-1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块,并分别计算第一区块与第二区块、第三区块的相似距离s1、s2。若s1<s2,则在填充表Fm中将待填充点(x,y)的填充点更新为(u1,v1-1);否则,则不更新。根据一种实施例,上述“相同尺寸”为7*7,“相似距离”为两个区块中各像素RGB值的SSD距离,其计算公式如式(1)。
应当指出,在步骤S530中,可以采用图7A-图7D中的一种或多种传播方式来对填充表Fm进行更新,例如,可以在进行了从左到右的传播之后,再进行一次从右到左的传播,对填充表Fm进行两次更新;或者按照从左到右、从上到下、从右到左、从下到上的顺序对填充表Fm进行四次更新;等等。多种传播方式的混合使用可以使得填充表Fm的更新效果更好,从而使得Fm可以尽快收敛。但是同时,多种传播方式的混合使用自然也带来了比仅使用一种传播方式更多的运算开销,本领域人员可以对此进行权衡,自行选择合适的传播方式。
随后,在步骤S540中,采用上一次迭代过程中的填充表Fm-1对填充表Fm进行更新。对于待填充点(x,y),其在填充表Fm-1、Fm中的填充点分别为(u1,v1)、(u2,v2)。分别以(x,y)、(u1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块,并分别计算第一区块与第二区块、第三区块的相似距离s1、s2。若s1<s2,则将填充表Fm中待填充点(x,y)的填充点更新为(u1,v1);否则,则不更新。根据一种实施例,上述“相同尺寸”为7*7,“相似距离”为两个区块中各像素RGB值的SSD距离,其计算公式如式(1)。
随后,在步骤S550中,根据填充表对涂抹扩展区进行块叠加融合。以每一个填充点为左上角的顶点构造相同尺寸的填充区块;对于每一个待填充点,将该待填充点对应的填充点的填充区块叠加至该待填充点处,其中,该待填充点的位置与其对应的填充点的位置重合;计算每一个待填充点的RGB修复值,待填充点的RGB修复值为该待填充点处所叠加的各像素的RGB值的平均值。根据一种实施例,上述“相同尺寸”为7*7。
图8示出了本发明一个实施例的计算待填充点的RGB修复值的示意图。如图8所示,待填充点1、2、3、4已分别被相应的填充区块①、②、③、④所填充,填充区块的大小均为7*7。待填充点1仅被填充区块①所覆盖,因此其RGB修复值即为填充区块①的左上角像素的RGB值。待填充点2被填充区块①和②所覆盖,其RGB修复值为填充区块①的第一行第二列像素和填充区块②的左上角像素的RGB值的平均值。待填充点3被填充区块①、③所覆盖,其RGB修复值为填充区块①的第二行第一列像素和填充区块③的左上角像素的RGB值的平均值。待填充点4被填充区块①、②、③、④所覆盖,其RGB修复值为填充区块①的第二行第二列像素、填充区块②的第二行第一列像素、填充区块③的第一行第二列像素、填充区块④的左上角像素的RGB值的平均值。
随后,在步骤S560中,判断是否Fm=Fm-1或m=当前层图像(即第i层)的最大迭代次数Mi。若否,则将m的值增加1,执行步骤S520进行下一轮迭代,继续本层图像的填充融合过程。若是,则进一步判断是否i=1(即是否本层图像为底层图像),若是,则结束填充融合过程,输出图像修复结果;若否,则继续执行步骤S570,进行下一层图像的填充融合。
在步骤S570中,对当前的填充表Fm进行放大,并根据放大的填充表对第(i-1)层图像(即下一层图像)的涂抹扩展区进行块叠加融合。根据一种实施例,可以按照图像金字塔中相邻两层的分辨率压缩比例将填充表Fm进行放大,例如,若相邻两层的分辨率压缩比例为0.7,则Fm(x,y)=(u,v)的放大结果为Fm’(x/0.7,y/0.7)=(u/0.7,v/0.7)。当然,除上述方法之外,还可以采用其他的方法来对填充表进行放大,本发明对填充表的放大方法不做限制。在对填充表进行放大后,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合,块叠加融合的具体方法可以参考步骤S550。随后,将计数变量i的值减1,并重新为Mi和m赋值,继续执行步骤S510-S560,进行下一层图像的填充融合。当完成底层图像的填充融合后,图像修复过程结束,底层图像的填充融合结果即为图像修复的结果。
图9示出了本发明另一个实施例的对图像金字塔的每一层图像进行填充融合的方法900的流程图。方法900与图5所示的方法500的区别在于,增加了步骤S970,判断第i层的图像(即当前层图像)尺寸是否大于等于1000*1000。若是,则继续执行步骤S990,按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合;重复上述放大填充表和块叠加融合的步骤,直至完成底层图像的块叠加融合。若否,则继续执行步骤S980,按照与图5所示的方法500相同的方法进行下一层图像的填充融合。
步骤S970的意义在于,本发明按照图像金字塔从顶层到底层的顺序依次对每层图像进行填充融合,上层图像收敛后下层图像能更快收敛(收敛即Fm=Fm-1)。根据经验,在像素为100万左右的层中Fm已经收敛,那么在接下来的层中,直接重复将填充表进行放大并填充融合的过程,直至完成底层图像的填充融合即可,而没有必要为每层图像重新设置填充表的初值F1并更新。这样,减少了运算次数,能够加快图像修复的速度,修复时间短,有良好的实时性,能够适用于各种高分辨率的大图。
根据一种实施例,为了进一步加快高分辨率图像的修复效率,还可以对步骤S990进行改进,将步骤S990改进成图10中的步骤S1090。即,当当前层图像的尺寸大于等于1000*1000时,直接按照图像金字塔中相邻两层的分辨率压缩比例将填充表Fm放大至底层图像,根据放大的填充表对底层图像的涂抹扩展区进行块叠加融合,融合后的结果即为图像修复结果。
图11示出了本发明一个实施例的图像修复方法1100的流程图。如图11所示,该方法始于步骤S1110。
在步骤S1110中,获取用户对图像的涂抹轨迹,将被涂抹轨迹覆盖的图像区域作为涂抹区。
随后,在步骤S1120中,根据涂抹区对图像进行裁剪,得到第一图像。根据一种实施例,第一图像为面积为涂抹区面积16倍的正方形。
随后,在步骤S1130中,以第一图像为底层图像建立图像金字塔。根据一种实施例,图像金字塔中相邻两层图像的分辨率压缩比例为0.7,顶层图像的尺寸不小于25*25。
随后,在步骤S1140中,按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,将底层图像的填充融合结果作为最终的图像修复结果。填充融合的具体步骤可以参考前述对填充融合模块240的描述,此处不再赘述。
图12示出了采用本发明的技术方案所得到的图像修复效果图。如图12所示,本发明取得了良好的修复效果,在去除图像中的花瓶后,能够较好地填充桌面上缺失部分的纹理,补齐桌角边缘,无明显的修复痕迹,效果自然。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。

Claims (39)

1.一种图像修复方法,在计算设备中执行,该方法包括:
获取用户对图像的涂抹轨迹,将被所述涂抹轨迹覆盖的图像区域作为涂抹区;
根据所述涂抹区对所述图像进行裁剪,得到第一图像;
以所述第一图像为底层图像建立图像金字塔;
按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,将底层图像的填充融合结果作为最终的图像修复结果:
设置每层图像的最大迭代次数;从图像金字塔的顶层图像开始,依次执行以下步骤:
步骤一:设置迭代次数m=1,根据所述涂抹区确定涂抹扩展区、屏蔽区和可选区,其中,所述涂抹扩展区为对所述涂抹区进行扩展所得的区域,所述屏蔽区为由当前层图像的右起第一数量的列和下起第二数量的行所组成的区域,所述可选区为当前层图像中除了所述涂抹扩展区和所述屏蔽区之外的区域;
步骤二:为涂抹扩展区中的每一个待填充点随机设置一个填充点,其中,所述填充点位于所述可选区中;将待填充点与填充点的对应关系记录于填充表Fm中;
步骤三:采用传播算法对填充表Fm进行更新;
步骤四:采用上一次迭代过程中的填充表Fm-1对填充表Fm进行更新;
步骤五:根据填充表Fm对所述涂抹扩展区进行块叠加融合;
步骤六:判断是否Fm=Fm-1或m=当前层图像的最大迭代次数,
若是,则判断本层图像是否为底层图像,
若是,则结束,若否,则继续进行下一层图像的填充融合;
若否,则m增加1,执行步骤二。
2.如权利要求1所述的图像修复方法,其中,所述第一图像为正方形。
3.如权利要求1所述的图像修复方法,其中,所述第一图像的面积为所述涂抹区的面积的16倍。
4.如权利要求1所述的图像修复方法,其中,所述图像金字塔中相邻两层图像的分辨率压缩比例为0.7。
5.如权利要求1所述的图像修复方法,其中,所述图像金字塔的顶层图像的尺寸不小于25*25。
6.如权利要求1所述的图像修复方法,其中,每层图像的最大迭代次数Mi=2*i-1,其中,i为图像在图像金字塔中的层数,图像金字塔的底层的层数为1,顶层的层数为n,1≤i≤n。
7.如权利要求1所述的图像修复方法,其中,涂抹扩展区为将涂抹区中每一个像素向上并向左扩展6个像素所得的图像区域。
8.如权利要求7所述的图像修复方法,其中,所述第一数量和所述第二数量均为6。
9.如权利要求1所述的图像修复方法,其中,步骤三进一步包括:
对于涂抹扩展区中左右相邻的两个待填充点(x-1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1+1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1+1,v1)。
10.如权利要求1所述的图像修复方法,其中,步骤三进一步包括:
对于涂抹扩展区中左右相邻的两个待填充点(x+1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1-1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1-1,v1)。
11.如权利要求1所述的图像修复方法,其中,步骤三进一步包括:
对于涂抹扩展区中上下相邻的两个待填充点(x,y-1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1,v1+1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1+1)。
12.如权利要求1所述的图像修复方法,其中,步骤三进一步包括:
对于涂抹扩展区中上下相邻的两个待填充点(x,y+1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1,v1-1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1-1)。
13.如权利要求1所述的图像修复方法,其中,步骤四进一步包括:
按照以下步骤更新填充表Fm中各待填充点的填充点:
待填充点(x,y)在填充表Fm-1、Fm中的填充点分别为(u1,v1)、(u2,v2);
分别以(x,y)、(u1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将填充表Fm中待填充点(x,y)的填充点更新为(u1,v1)。
14.如权利要求9-13中任一项所述的图像修复方法,其中,所述相似距离为两个区块中对应位置像素的RGB欧氏距离之和。
15.如权利要求1所述的图像修复方法,其中,步骤五进一步包括:
以每一个填充点为左上角的顶点构造相同尺寸的填充区块;
对于每一个待填充点,将该待填充点对应的填充点的填充区块叠加至该待填充点处,其中,该待填充点的位置与其对应的填充点的位置重合;
计算每一个待填充点的RGB修复值,待填充点的RGB修复值为该待填充点处所叠加的各像素的RGB值的平均值。
16.如权利要求9-13、15中任一项所述的图像修复方法,其中,所述相同尺寸为7*7。
17.如权利要求1所述的图像修复方法,其中,步骤六中继续进行下一层图像的填充融合的步骤包括:
按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合,执行步骤一。
18.如权利要求1所述的图像修复方法,其中,步骤六中继续进行下一层图像的填充融合的步骤包括:
判断当前层图像的尺寸是否大于等于1000*1000,若是,则
按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合;
重复上述放大填充表和块叠加融合的步骤,直至完成底层图像的块叠加融合。
19.如权利要求1所述的图像修复方法,其中,步骤六中继续进行下一层图像的填充融合的步骤包括:
判断当前层图像的尺寸是否大于等于1000*1000,若是,则按照图像金字塔中相邻两层的分辨率压缩比例将填充表放大至底层图像,根据放大的填充表对底层图像的涂抹扩展区进行块叠加融合。
20.一种图像修复装置,驻留于计算设备中,该装置包括:
交互模块,适于获取用户对图像的涂抹轨迹,将被所述涂抹轨迹覆盖的图像区域作为涂抹区;
裁剪模块,适于根据所述涂抹区对所述图像进行裁剪,得到第一图像;
金字塔构造模块,适于以所述第一图像为底层图像建立图像金字塔;
填充融合模块,适于按照从顶层到底层的顺序依次对图像金字塔的每一层图像进行填充融合,将底层图像的填充融合结果作为最终的图像修复结果:
设置每层图像的最大迭代次数;从图像金字塔的顶层图像开始,依次执行以下步骤:
步骤一:设置迭代次数m=1,根据所述涂抹区确定涂抹扩展区、屏蔽区和可选区,其中,所述涂抹扩展区为对所述涂抹区进行扩展所得的区域,所述屏蔽区为由当前层图像的右起第一数量的列和下起第二数量的行所组成的区域,所述可选区为当前层图像中除了所述涂抹扩展区和所述屏蔽区之外的区域;
步骤二:为涂抹扩展区中的每一个待填充点随机设置一个填充点,其中,所述填充点位于所述可选区中;将待填充点与填充点的对应关系记录于填充表Fm中;
步骤三:采用传播算法对填充表Fm进行更新;
步骤四:采用上一次迭代过程中的填充表Fm-1对填充表Fm进行更新;
步骤五:根据填充表Fm对所述涂抹扩展区进行块叠加融合;
步骤六:判断是否Fm=Fm-1或m=当前层图像的最大迭代次数,
若是,则判断本层图像是否为底层图像,
若是,则结束,若否,则继续进行下一层图像的填充融合;
若否,则m增加1,执行步骤二。
21.如权利要求20所述的图像修复装置,其中,所述裁剪模块适于将第一图像设置为正方形。
22.如权利要求20所述的图像修复装置,其中,所述裁剪模块适于将所述第一图像的面积设置为所述涂抹区的面积的16倍。
23.如权利要求20所述的图像修复装置,其中,所述金字塔构造模块适于将图像金字塔中相邻两层图像的分辨率压缩比例设置为0.7。
24.如权利要求20所述的图像修复装置,其中,所述金字塔构造模块适于控制图像金字塔的顶层图像的尺寸不小于25*25。
25.如权利要求20所述的图像修复装置,其中,所述填充融合模块适于设置每层图像的最大迭代次数为Mi=2*i-1,其中,i为图像在图像金字塔中的层数,图像金字塔的底层的层数为1,顶层的层数为n,1≤i≤n。
26.如权利要求20所述的图像修复装置,其中,所述填充融合模块适于将涂抹扩展区设置为将涂抹区中每一个像素向上并向左扩展6个像素所得的图像区域。
27.如权利要求26所述的图像修复装置,其中,所述填充融合模块还适于将所述第一数量和所述第二数量均设置为6。
28.如权利要求20所述的图像修复装置,其中,所述填充融合模块进一步适于按照以下步骤执行步骤三:
对于涂抹扩展区中左右相邻的两个待填充点(x-1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1+1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1+1,v1)。
29.如权利要求20所述的图像修复装置,其中,所述填充融合模块进一步适于按照以下步骤执行步骤三:
对于涂抹扩展区中左右相邻的两个待填充点(x+1,y)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1-1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1-1,v1)。
30.如权利要求20所述的图像修复装置,其中,所述填充融合模块进一步适于按照以下步骤执行步骤三:
对于涂抹扩展区中上下相邻的两个待填充点(x,y-1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1,v1+1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1+1)。
31.如权利要求20所述的图像修复装置,其中,所述填充融合模块进一步适于按照以下步骤执行步骤三:
对于涂抹扩展区中上下相邻的两个待填充点(x,y+1)和(x,y),其填充点分别为(u1,v1)和(u2,v2);
分别以(x,y)、(u1,v1-1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将待填充点(x,y)的填充点更新为(u1,v1-1)。
32.如权利要求20所述的图像修复装置,其中,所述填充融合模块进一步适于按照以下步骤执行步骤四:
按照以下步骤更新填充表Fm中各待填充点的填充点:
待填充点(x,y)在填充表Fm-1、Fm中的填充点分别为(u1,v1)、(u2,v2);
分别以(x,y)、(u1,v1)、(u2,v2)为左上角的顶点构造相同尺寸的第一区块、第二区块、第三区块;
分别计算第一区块与第二区块、第三区块的相似距离s1、s2
若s1<s2,则将填充表Fm中待填充点(x,y)的填充点更新为(u1,v1)。
33.如权利要求29-32中任一项所述的图像修复装置,其中,所述填充融合模块适于将所述相似距离设置为两个区块中对应位置像素的RGB欧氏距离之和。
34.如权利要求20所述的图像修复装置,其中,所述填充融合模块进一步适于按照以下步骤执行步骤五:
以每一个填充点为左上角的顶点构造相同尺寸的填充区块;
对于每一个待填充点,将该待填充点对应的填充点的填充区块叠加至该待填充点处,其中,该待填充点的位置与其对应的填充点的位置重合;
计算每一个待填充点的RGB修复值,待填充点的RGB修复值为该待填充点处所叠加的各像素的RGB值的平均值。
35.如权利要求29-32、34中任一项所述的图像修复装置,其中,所述填充融合模块适于将所述相同尺寸设置为7*7。
36.如权利要求20所述的图像修复装置,其中,所述填充融合模块适于按照以下步骤执行步骤六中的继续进行下一层图像的填充融合:
按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合,执行步骤一。
37.如权利要求20所述的图像修复装置,其中,所述填充融合模块适于按照以下步骤执行步骤六中的继续进行下一层图像的填充融合:
判断当前层图像的尺寸是否大于等于1000*1000,若是,则
按照图像金字塔中相邻两层的分辨率压缩比例将填充表进行放大,根据放大的填充表对下一层图像的涂抹扩展区进行块叠加融合;
重复上述放大填充表和块叠加融合的步骤,直至完成底层图像的块叠加融合。
38.如权利要求20所述的图像修复装置,其中,所述填充融合模块适于按照以下步骤执行步骤六中的继续进行下一层图像的填充融合:
判断当前层图像的尺寸是否大于等于1000*1000,若是,则按照图像金字塔中相邻两层的分辨率压缩比例将填充表放大至底层图像,根据放大的填充表对底层图像的涂抹扩展区进行块叠加融合。
39.一种计算设备,包括如权利要求20-38中任一项所述的图像修复装置。
CN201610816567.5A 2016-09-12 2016-09-12 一种图像修复方法、装置和计算设备 Active CN106327449B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610816567.5A CN106327449B (zh) 2016-09-12 2016-09-12 一种图像修复方法、装置和计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610816567.5A CN106327449B (zh) 2016-09-12 2016-09-12 一种图像修复方法、装置和计算设备

Publications (2)

Publication Number Publication Date
CN106327449A CN106327449A (zh) 2017-01-11
CN106327449B true CN106327449B (zh) 2019-05-03

Family

ID=57786758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610816567.5A Active CN106327449B (zh) 2016-09-12 2016-09-12 一种图像修复方法、装置和计算设备

Country Status (1)

Country Link
CN (1) CN106327449B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106875359B (zh) * 2017-02-16 2019-12-03 阜阳师范学院 一种基于分层引导策略的样本块图像修复方法
EP3706076B1 (en) * 2019-03-07 2021-02-24 Siemens Healthcare GmbH Method and device to determine the dimensions and distance of a number of objects in an environment
CN115705665A (zh) * 2021-08-13 2023-02-17 北京字跳网络技术有限公司 一种图像处理方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103971338A (zh) * 2014-05-06 2014-08-06 清华大学深圳研究生院 一种基于显著图的可变块图像修复方法
CN104036272A (zh) * 2014-06-24 2014-09-10 联想(北京)有限公司 一种文本检测方法及电子设备
CN104282000A (zh) * 2014-09-15 2015-01-14 天津大学 一种基于旋转及尺度变换的图像修复方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5709911B2 (ja) * 2013-02-04 2015-04-30 キヤノン株式会社 画像処理方法、画像処理装置、画像処理プログラムおよび撮像装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103971338A (zh) * 2014-05-06 2014-08-06 清华大学深圳研究生院 一种基于显著图的可变块图像修复方法
CN104036272A (zh) * 2014-06-24 2014-09-10 联想(北京)有限公司 一种文本检测方法及电子设备
CN104282000A (zh) * 2014-09-15 2015-01-14 天津大学 一种基于旋转及尺度变换的图像修复方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
数字图像修复算法研究;郑欢;《万方在线论文》;20151203;第40、45-46页

Also Published As

Publication number Publication date
CN106327449A (zh) 2017-01-11

Similar Documents

Publication Publication Date Title
US10861232B2 (en) Generating a customized three-dimensional mesh from a scanned object
CN109859098B (zh) 人脸图像融合方法、装置、计算机设备及可读存储介质
JP4996679B2 (ja) オクルージョンコスト計算を用いるコラージュ生成
Kopf et al. Depixelizing pixel art
CN106327449B (zh) 一种图像修复方法、装置和计算设备
CN106815808A (zh) 一种利用分块运算的图像拼接方法
CN105046213A (zh) 一种增强现实的方法
US8068122B2 (en) Method of image scaling
CN107239216A (zh) 基于触摸屏的绘制处理方法和装置
CN104796649B (zh) 一种三维投影的方法及装置
CN103810729A (zh) 一种基于等高线的光栅图像矢量化方法
CN106127818A (zh) 一种基于单幅图像的材质外观获取系统及方法
CN108537718B (zh) Gpu中一种实现点图元反走样的装置和方法
CN110264397A (zh) 一种提取鱼眼图像的有效区域的方法和装置
CN102663802B (zh) 一种游戏地形道路生成方法和装置
CN104270624A (zh) 一种分区域的3d视频映射方法
CN106875328A (zh) 图像处理方法和装置
CN104850232A (zh) 一种摄像头条件下获取远程手势轨迹的方法
CN107833191A (zh) 基于图像局部信息的改进Criminisi算法
CN108197627A (zh) 一种沿顺时针方向提取二值图形轮廓的方法
CN105590294B (zh) 一种图像处理方法和电子设备
JP2010515131A (ja) ベクトルグラフィックをラスター化するプロセスにおいて境界を発生させるための方法およびシステム、ならびに、システムを製造するための方法
CN106780577A (zh) 一种基于组特征的直线匹配方法
US10115181B2 (en) Systems for automatically assembling tile maps and associated techniques
JP3701627B2 (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant