CN108596913A - 一种抠图方法及装置 - Google Patents
一种抠图方法及装置 Download PDFInfo
- Publication number
- CN108596913A CN108596913A CN201810265548.7A CN201810265548A CN108596913A CN 108596913 A CN108596913 A CN 108596913A CN 201810265548 A CN201810265548 A CN 201810265548A CN 108596913 A CN108596913 A CN 108596913A
- Authority
- CN
- China
- Prior art keywords
- stingy
- foreground
- user
- result
- mode
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种抠图方法及装置,属于数字图像处理技术领域。所述方法包括:提供包括自动模式、半自动模式和/或手动模式的多种抠图模式供用户选择,其中所述自动模式包括深度学习的自动抠图模式,所述半自动模式包括一种或多种抠图交互模式,所述手动模式包括一种或多种抠图交互模式;根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。本发明兼容了多种算法,并允许用户进一步对抠图结果进行迭代优化,满足了用户的不同抠图需求,提高了用户体验,因此可广泛应用于涉及抠图操作的相关技术领域。
Description
技术领域
本发明涉及数字图像处理技术领域,特别涉及一种抠图方法及装置。
背景技术
提取数字图像中用户感兴趣区域在实际应用中有广泛需求,如普通用户修图、设计师素材提取以及图像领域的研究工作。而手动抠出感兴趣边缘同样又是一个非常繁琐的工作,因此提出一种可以缓解用户操作量的抠图算法具有很大的应用价值。现有的抠图方法主要分为两大类:直接根据输入图像全自动输出抠图结果;要求用户进行诸如画框画线这类的简单交互实现抠图的半自动方法。
全自动抠图对图像进行了较强的先验假设,利用这些先验假设提取出可能的用户认为最重要的部分。如对一些常见物体使用深度模型进行训练,然后训练出的模型自动提取出这些物体,这种方法对训练过的物体精度较高,但无法处理没有训练过的物体。又有一些方法假设用户感兴趣的是图像中最显著的部分,并将其提取出来。这种方法由于没有物体的先验模型限制,可以对一般化的物体进行提取,但是会失去那些不显著但可能是用户关心的部分。
半自动方法要求用户进行一些简单操作,如画框,描出前景背景边缘或指定前景背景区域。利用这些操作的信息得到用户感兴趣的区域。如利用用户标注出的前景背景颜色上的差别进行分割。由于引入了用户操作,因此这些方法理论上有可能成功找到用户感兴趣的微小部分以及不常见的对象。但是如果操作过多又无法有效地减少人工干预。
由于不同抠图算法之间往往要求不同形式的输入输出,非常有必要的是,提供一种抠图框架,该框架可以很好地对不同抠图算法进行兼容以增加可扩展性,兼顾全自动方法操作简便和半自动方法更容易满足用户需求的优势,为用户提供多种可选择的抠图模式,更好地满足用户需求。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种抠图方法及装置。所述技术方案如下:
第一方面,提供了一种抠图方法,所述方法包括:提供包括自动模式、半自动模式和/或手动模式的多种抠图模式供用户选择,其中所述自动模式包括深度学习的自动抠图模式,所述半自动模式包括一种或多种抠图交互模式,所述手动模式包括一种或多种抠图交互模式;根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
结合第一方面,在第一种可能的实现方式中,所述前景透明度为与原图尺寸大小相等的0-255灰度图。
结合第一方面及第一方面的第一种可能实现方式,在第二至三种可能的实现方式中,根据用户所选择操作指令对应的自动模式,通过预设抠图算法,获得图像的前景透明度,输出抠图结果,包括:通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,输出抠图结果。
结合第一方面的第二至三种可能实现方式,在第四至五种可能的实现方式中,所述预设自动抠图算法为基于显著性的分割算法。
结合第一方面及第一方面的第一种可能实现方式,在第六至七种可能的实现方式中,根据用户所选择操作指令对应的半自动模式,通过预设抠图算法和所述一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:通过预设grabcut算法和选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
结合第一方面及第一方面的第一种可能实现方式,在第八至九种可能的实现方式中,根据用户所选择操作指令对应的手动模式,通过所述一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
结合第一方面及第一方面的第一至九种可能实现方式,在第十至十九种可能的实现方式中,所述方法还包括:接收用户发出的优化操作指令,根据所述前景透明度和用户的手动交互操作,进行优化操作。
结合第一方面及第一方面的第十至十九种可能实现方式,在第二十至二十九种可能的实现方式中,根据所述前景透明度和用户的手动交互操作,进行优化操作,包括:将所述前景透明度二值化得到硬分割结果;根据用户的手动交互操作提取待处理的子区域集合,所述手动交互操作包括笔刷选取前景或背景;将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果。
结合第一方面及第一方面的第二十至二十九种可能实现方式,在第三十至三十九种可能的实现方式中,将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果,包括:
根据所述硬分割结果、手动交互操作及子区域集合,调用预设matting算法进行matting,获得优化抠图结果。
结合第一方面及第一方面的第二十至三十九种可能实现方式,在第四十至五十九种可能的实现方式中,所述预设优化抠图算法为预设grabcut算法,所述预设matting算法为KNN matting算法。
第二方面,提供了一种抠图装置,所述装置包括:
模式设置模块,用于提供包括自动模式、半自动模式和/或手动模式的多种抠图模式供用户选择,其中所述自动模式包括深度学习的自动抠图模式,所述半自动模式包括一种或多种抠图交互模式,所述手动模式包括一种或多种抠图交互模式;抠图模块,用于根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
结合第二方面,在第一种可能的实现方式中,所述抠图模块包括自动抠图模块,所述自动抠图模块用于:根据用户所选择操作指令对应的自动模式,通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,获得抠图结果。
结合第二方面,在第二种可能的实现方式中,所述抠图模块还包括交互模块,根据用户所选择操作指令对应的半自动模式,所述自动抠图模块用于通过预设grabcut算法进行抠图操作,所述交互模块用于选取任意多边形、笔刷选取前景或背景,从而获得图像的前景透明度,输出抠图结果。
结合第二方面,在第三种可能的实现方式中,所述交互模块还用于:通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
结合第二方面及第二方面的第一至三种可能的实现方式中,在第四至七种可能的实现方式中,所述装置还包括抠图优化模块,所述抠图优化模块用于:接收用户发出的优化操作指令,根据所述前景透明度和用户的手动交互操作,进行优化操作。
结合第二方面及第二方面的第四至七种可能的实现方式中,在第八至十二种可能的实现方式中,所述抠图优化模块具体用于根据所述前景透明度和用户的手动交互操作,进行优化操作,包括:将所述前景透明度二值化得到硬分割结果;根据用户的手动交互操作提取待处理的子区域集合,所述手动交互操作包括笔刷选取前景或背景;将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果。
结合第二方面及第二方面的第八至十二种可能的实现方式中,在第十三至十八种可能的实现方式中,所述抠图优化模块具体用于将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果,包括:根据所述硬分割结果、手动交互操作及子区域集合,调用预设matting算法进行matting,获得优化抠图结果。
结合第二方面的第八至十八种可能的实现方式中,在第十九至二十九种可能的实现方式中,所述预设优化抠图算法为预设grabcut算法,所述预设matting算法为KNNmatting算法。
本发明实施例提供的技术方案带来的有益效果是:
1、提供了多种抠图模式,可以根据用户需要进行选择,在全自动模式中使用了显著性的先验知识;在半自动中则根据用户少量交互提供的信息来得到满足用户需求的结果,这样兼顾了全自动方法操作简便,半自动方法更容易满足用户需求的各自优势,能够满足用户的不同抠图需求,提高了用户体验;
2、提供了一种统一了不同算法的框架,如简单的图像处理方法,基于颜色概率模型的方法,基于深度网络等多种方法;允许用户进一步对结果进行迭代优化;并且可以方便地兼容新算法以对该发明进一步完善;
3、交互友好,操作简单,可以提供不需要用户操作的全自动抠图,即使半自动模式也仅需要用户进行简单的画多边形画笔等操作。在画多边形操作中,仅要求用户欲得到的前景在多边形中;而画笔操作仅要求用户可以画出少量前景或背景。不需要诸如紧贴边缘,包含丰富的前景背景颜色,或明确标注不确定区域等复杂要求。
4、抠图针对的对象输入为单张普通图像,不需要深度等额外信息。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1提供的抠图方法流程图;
图2是本发明实施例2提供的抠图方法流程图;
图3是图2中步骤24的具体流程图;
图4是本发明实施例3提供的抠图装置结构示意图;
图5-图6是应用实施例1中利用本实施例提供的抠图方法及装置的抠图过程示意图;
图7-图8是应用实施例2中利用本实施例提供的抠图方法及装置的抠图过程示意图;
图9是应用实施例3中利用本实施例提供的抠图方法及装置的抠图过程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
本发明实施例提供的抠图方法及装置,通过向用户提供包括自动模式、半自动模式和手动模式的多种抠图模式供用户选择,并根据户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度从而输出抠图结果,兼顾了全自动方法操作简便以及半自动方法更容易满足用户需求的优势,并且提供了一种统一了不同算法的框架,在该框架下可以利用包括简单图像处理以及深度学习网络等多种抠图操作和算法,即兼容了多种算法,并允许用户进一步对抠图结果进行迭代优化,满足了用户的不同抠图需求,提高了用户体验,因此可广泛应用于涉及抠图操作的相关技术领域。
下面结合具体实施例,对本发明实施例提供的抠图方法及装置作进一步说明。
实施例1
图1是本发明实施例1提供的抠图方法流程图。图2是图1中步骤12的具体流程图。
如图1所示,本发明实施例提供的抠图方法包括以下步骤:
11、提供包括自动模式、半自动模式和手动模式的多种抠图模式供用户选择,其中自动模式包括深度学习的自动抠图模式,半自动模式包括一种或多种抠图交互模式,手动模式包括一种或多种抠图交互模式。
具体的,设置包括自动模式、半自动模式以及手动模式在内的多种抠图模式供用户选择,因为不同的抠图模式各自的特点不同,例如基于主动学习的自动模式,对于先验模型的对象具有良好的抠图效果,然而仍具有一定的局限性;半自动模式则可以将自动抠图与手动交互相结合,手动模式则是可以在具有较多的手动抠图操作细节情况下使用,因此通过这样的设置方式,能够满足用户的不同抠图需求,提高了用户体验。
12、根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
具体的,无论用户选择哪种抠图模式,无论用户是否有交互,最终都获得前景透明度,然后以此输出抠图结果。优选地,这里的前景透明度为与原图尺寸大小相等的0-255灰度图。
具体的,当用户选择自动模式进行抠图时,根据用户所选择操作指令对应的自动模式,通过预设抠图算法,获得图像的前景透明度,输出抠图结果,包括:
通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,输出抠图结果。优选地,这里的预设抠自动图算法为基于显著性的分割算法。
当用户选择半自动模式进行抠图时,根据用户所选择操作指令对应的半自动模式,通过预设抠图算法和一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:通过预设grabcut算法和选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
当用户选择手动模式进行抠图时,根据用户所选择操作指令对应的手动模式,通过一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:
通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
值得注意的是,步骤12根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果,除了上述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
实施例2
图2是本发明实施例2提供的抠图方法流程图。图3是图2中步骤24的具体流程图。
如图2所示,本发明实施例提供的抠图方法包括以下步骤:
21、提供包括自动模式、半自动模式和手动模式的多种抠图模式供用户选择,其中自动模式包括深度学习的自动抠图模式,半自动模式包括一种或多种抠图交互模式,手动模式包括一种或多种抠图交互模式。
具体的,设置包括自动模式、半自动模式以及手动模式在内的多种抠图模式供用户选择,因为不同的抠图模式各自的特点不同,例如基于主动学习的自动模式,对于先验模型的对象具有良好的抠图效果,然而仍具有一定的局限性;半自动模式则可以将自动抠图与手动交互相结合,手动模式则是可以在具有较多的手动抠图操作细节情况下使用,因此通过这样的设置方式,能够满足用户的不同抠图需求,提高了用户体验。
22、根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
具体的,无论用户选择哪种抠图模式,无论用户是否有交互,最终都获得前景透明度,然后以此输出抠图结果。优选地,这里的前景透明度为与原图尺寸大小相等的0-255灰度图。
具体的,当用户选择自动模式进行抠图时,根据用户所选择操作指令对应的自动模式,通过预设抠图算法,获得图像的前景透明度,输出抠图结果,包括:
通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,输出抠图结果。优选地,这里的预设抠自动图算法为基于显著性的分割算法。
当用户选择半自动模式进行抠图时,根据用户所选择操作指令对应的半自动模式,通过预设抠图算法和一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:通过预设grabcut算法和选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
当用户选择手动模式进行抠图时,根据用户所选择操作指令对应的手动模式,通过一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:
通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
值得注意的是,步骤12根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果,除了上述步骤所述的方式之外,还可以通过其他方式实现该过程,本发明实施例对具体的方式不加以限定。
23、接收用户发出的优化操作指令。
具体的,如果用户对上述21-22步骤获得的抠图结果不满意,可以通过发出优化操作指令对抠图结果进行进一步的优化操作,发出优化操作指令可以选择以鼠标按钮、触屏点击等现有技术中任何可能的方式进行,本发明实施例不对其加以特别限制。
24、根据前景透明度和用户的手动交互操作,进行优化操作。
具体的,上述步骤24包括:
241、将前景透明度二值化得到硬分割结果;
242、根据用户的手动交互操作提取待处理的子区域集合,手动交互操作包括笔刷选取前景或背景;
243、将硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果。优选地,根据硬分割结果、手动交互操作及子区域集合,调用预设matting算法进行matting,获得优化抠图结果。
优选地,这里的预设优化抠图算法为预设grabcut算法,预设matting算法为KNNmatting算法。
由于上述过程对上一步迭代中间结果只需要一个硬分割的抠图结果输出,这也是任何抠图算法最基本的输出,因此上述过程可以兼容不同的抠图算法,增加了本发明实施例提供的抠图方法的可扩展性。
实施例3
图4是本发明实施例3提供的抠图装置结构示意图。如图4所示,本发明实施例提供的抠图装置包括:
模式设置模块31,用于提供包括自动模式、半自动模式和手动模式的多种抠图模式供用户选择,其中自动模式包括深度学习的自动抠图模式,半自动模式包括一种或多种抠图交互模式,手动模式包括一种或多种抠图交互模式;
抠图模块32,用于根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
进一步地,抠图模块32又包括自动抠图模块321和交互模块322,自动抠图模块321用于:根据用户所选择操作指令对应的自动模式,通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,获得抠图结果。
根据用户所选择操作指令对应的半自动模式,自动抠图模块321用于通过预设grabcut算法进行抠图操作,交互模块322用于选取任意多边形、笔刷选取前景或背景,从而获得图像的前景透明度,输出抠图结果。
另外,交互模块322还用于:通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
另外,本发明实施例提供的抠图装置还包括抠图优化模块33,抠图优化模块用于:
接收用户发出的优化操作指令,根据前景透明度和用户的手动交互操作,进行优化操作。
优选地,抠图优化模块33具体用于根据所述前景透明度和用户的手动交互操作,进行优化操作,包括:
将前景透明度二值化得到硬分割结果;根据用户的手动交互操作提取待处理的子区域集合,手动交互操作包括笔刷选取前景或背景;将硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果。
进一步优选地,抠图优化模块33具体用于将硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果,包括:根据硬分割结果、手动交互操作及子区域集合,调用预设matting算法进行matting,获得优化抠图结果。优选地,这里的预设优化抠图算法为预设grabcut算法,预设matting算法为KNN matting算法。
应用实施例1
图5-图6是应用实施例1中利用本实施例提供的抠图方法及装置的抠图过程示意图。
输入图像如图5S1(a)所示,用户使用自动模式进行抠图。得到图5S1(b)。用户发现抠出的结果中没有有效包括草帽,增加人工交互进行优化。作为优选,在本例中用户可以使用画笔标注部分前景和背景,然后自动得到新的抠图结果。用户标注如图6S2(a),最终结果图6S2(b)。具体算法步骤:
步骤S1:在自动抠图中,作为优选使用【Hou,Qibin,et al."Deeply supervisedsalient object detection with short connections."Computer Vision and PatternRecognition(CVPR),2017IEEE Conference on.IEEE,2017.】中的显著性分割算法。得到结果M1,如图S1(b)。另外,还可以使用如[1]L.Itti,C.Koch,and E.Niebur,“A model ofsaliency-based visual attention for rapid scene analysis,”IEEE TPAMI,no.11,pp.1254–1259,1998;[2]T.Liu,J.Sun,N.Zheng,X.Tang,and H.-Y.Shum,“Learning todetect a salient object,”in CVPR,2007,pp.1–8;[3]J.Long,E.Shelhamer,andT.Darrell,“Fully convolutional networks for semantic segmentation”中提到的现有技术中其他任何可能的抠图算法,本发明实施例不对其加以特别限制。
步骤S2:根据用户交互进入迭代优化流程:
步骤S21:将步骤S1(a)中的掩膜M1用128作为阈值进行二值化硬分割掩膜H1,其中0表示背景,1表示前景;
步骤S22:统计出用户一共画了P=4笔画笔,对这P笔画笔中的每一笔:(1)计算其外接矩形框,得到对角线长度r像素。若该画笔为垂直或水平线没有外接矩形,则以该线长度作为对角线长度。(2)计算这些点的中心坐标(x,y),单位像素。(3)以(x,y)为中心画出外接矩形Sk,矩形边长为a*r,作为优选本例取a=3。(4)将所有的矩形区域Sk,k=1,2..P排列到一起得到用户交互区域S。
步骤S23:调用Opencv中的grabcut算法进行迭代优化。该算法接口需要输入一张尺寸和原图大小相同的掩膜信息图Q1。每个像素有4个可能值:0,确定背景;1,确定前景;2,可能背景;3,可能前景。按如下步骤设计掩膜信息图Q1:(1)将步骤S21中的二值化硬分割掩膜H1赋值给Q1。这样得到的Q1全部为确定的背景或可能的背景。(2)将Q1中的S22中得到的用户交互区域序列S依次进行修改,原则为:若该区域的画笔为前景,则将Q1在该区域中所有的0修改为2;若该区域的画笔为背景,则将Q1在该区域中所有的1修改为3。(3)将用户画笔操作按照前景和背景在Q1上设置为确定前景和背景。计算出掩膜信息图Q1后直接调用OpenCV中的GRABCUT函数得到优化后的掩膜Q2,其格式与Q1相同,将所有的值为1和3的设置为前景,0和2设置为背景。对得到的结果进行matting,作为优选本发明使用Chen,Qifeng,Dingzeyu Li,and Chi-Keung Tang."KNN matting."IEEE transactions on patternanalysis and machine intelligence 35.9(2013):2175-2188.中的方法,得到输出结果M2。另外,也可以使用如[1]A.Levin,D.Lischinski,and Y.Weiss.A closed-formsolution to natural image matting.IEEE TPAMI,30(2):228–242,2008;[2]A.Levin,A.Rav-Acha,and D.Lischinski.Spectral matting.IEEE TPAMI,30:1699–1712,October2008;[3]Johnson J,Varnousfaderani E S,Cholakkal H,et al.Sparse Coding forAlpha Matting[J].IEEE Transactions on Image Processing,2016,25(7):3032中提到的现有技术中其他任何可能的matting算法,本发明实施例不对其加以特别限制。
应用实施例2
图7-图8是应用实施例2中利用本实施例提供的抠图方法及装置的抠图过程示意图。
输入图像如图7S1(a)所示,用户使用半自动模式进行抠图。在半自动抠图中,本发明允许用户给出一定的交互操作。作为优选,本发明允许用户使用如下两种操作:(1)画闭合多边形操作。多边形里面为用户想抠出的部分。(2)画笔操作。提供前景背景两种操作,用户在图像上画若干笔,前景表示用户想要的部分,背景表示用户不想要的部分。以上两种操作可以一起使用。
用户首次在图7S1(a)中进行了画多边形(矩形)操作,算法得到图7S1(b)的结果。用户此时又想把化妆品上面的盖加上,因此在框外使用画笔进行迭代,如图8S2(a),算法进一步优化,得到结果如图8S2(b)。
具体算法步骤:
步骤S1:作为优选,本发明在自动抠图模块中使用应用实施例1中步骤S23的OPENCV的grabcut接口。设置掩膜信息图Q0为:(1)画闭合多边形操作中,将闭合多边形内的区域设置为3可能前景;闭合多边形外的区域设置为0确定背景。(2)画笔操作,用户画的前景设置为1确定前景,用户画的背景为0确定背景。如果用户没有画闭合多边形,其他部分设置为2可能背景。如果用户画了闭合多边形,则其他部分使用(1)的方法设置。调用接口后得到掩膜信息图Q1。再使用应用实施例1中的方法进行matting。
步骤S2:将Q1掩膜信息图中所有的值为1和3的设置为前景,0和2修改得到H1。然后使用应用实施例1中的方法得到迭代结果。
应用实施例3
图9是应用实施例3中利用本实施例提供的抠图方法及装置的抠图过程示意图。
输入图像如图9S1(a)所示,用户使用半自动模式进行抠图。同时使用了多边形和画笔两个操作。按照实施例2中的步骤S1可以得到得到图9S1(b)的结果。此时结果较好,可以直接输出。
由以上描述和实践可知,本发明实施例提供的抠图方法和装置,相对于现有技术具有以下有益效果:
1、提供了多种抠图模式,可以根据用户需要进行选择,在全自动模式中使用了显著性的先验知识;在半自动中则根据用户少量交互提供的信息来得到满足用户需求的结果,这样兼顾了全自动方法操作简便,半自动方法更容易满足用户需求的各自优势,能够满足用户的不同抠图需求,提高了用户体验;
2、提供了一种统一了不同算法的框架,如简单的图像处理方法,基于颜色概率模型的方法,基于深度网络等多种方法;允许用户进一步对结果进行迭代优化;并且可以方便地兼容新算法以对该发明进一步完善;
3、交互友好,操作简单,可以提供不需要用户操作的全自动抠图,即使半自动模式也仅需要用户进行简单的画多边形画笔等操作。在画多边形操作中,仅要求用户欲得到的前景在多边形中;而画笔操作仅要求用户可以画出少量前景或背景。不需要诸如紧贴边缘,包含丰富的前景背景颜色,或明确标注不确定区域等复杂要求。
4、抠图针对的对象输入为单张普通图像,不需要深度等额外信息。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的抠图装置在触发抠图业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的抠图装置与抠图方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种抠图方法,其特征在于,所述方法包括:
提供包括自动模式、半自动模式和/或手动模式的多种抠图模式供用户选择,其中所述自动模式包括深度学习的自动抠图模式,所述半自动模式包括一种或多种抠图交互模式,所述手动模式包括一种或多种抠图交互模式;
根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
2.根据权利要求1所述的方法,其特征在于,所述前景透明度为与原图尺寸大小相等的0-255灰度图。
3.根据权利要求1或2所述的方法,其特征在于,根据用户所选择操作指令对应的自动模式,通过预设抠图算法,获得图像的前景透明度,输出抠图结果,包括:
通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或
通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,输出抠图结果。
4.根据权利要求3所述的方法,其特征在于,所述预设抠图算法为基于显著性的分割算法。
5.根据权利要求1或2所述的方法,其特征在于,根据用户所选择操作指令对应的半自动模式,通过预设抠图算法和所述一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:
通过预设grabcut算法和选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
6.根据权利要求1或2所述的方法,其特征在于,根据用户所选择操作指令对应的手动模式,通过所述一种或多种抠图交互模式下的抠图交互方法,获得图像的前景透明度,输出抠图结果,包括:
通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述方法还包括:
接收用户发出的优化操作指令,
根据所述前景透明度和用户的手动交互操作,进行优化操作。
8.根据权利要求7所述的方法,其特征在于,根据所述前景透明度和用户的手动交互操作,进行优化操作,包括:
将所述前景透明度二值化得到硬分割结果;
根据用户的手动交互操作提取待处理的子区域集合,所述手动交互操作包括笔刷选取前景或背景;
将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果。
9.根据权利要求8所述的方法,其特征在于,将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果,包括:
根据所述硬分割结果、手动交互操作及子区域集合,调用预设matting算法进行matting,获得优化抠图结果。
10.根据权利要求8或9所述的方法,其特征在于,所述预设优化抠图算法为预设grabcut算法,所述预设matting算法为KNN matting算法。
11.一种抠图装置,其特征在于,所述装置包括:
模式设置模块,用于提供包括自动模式、半自动模式和/或手动模式的多种抠图模式供用户选择,其中所述自动模式包括深度学习的自动抠图模式,所述半自动模式包括一种或多种抠图交互模式,所述手动模式包括一种或多种抠图交互模式;
抠图模块,用于根据用户所选择操作指令对应的自动模式、半自动模式或手动模式,通过预设抠图算法和/或所述一种或多种抠图交互模式下的交互抠图方法,获得图像的前景透明度,输出抠图结果。
12.根据权利要求11所述的装置,其特征在于,所述抠图模块包括自动抠图模块,所述自动抠图模块用于:
根据用户所选择操作指令对应的自动模式,通过单个预设抠图算法获得图像的前景透明度,输出抠图结果;或
通过将多种预设抠图算法进行评估获得的最优算法,获得图像的前景透明度,获得抠图结果。
13.根据权利要求11所述的装置,其特征在于,所述抠图模块还包括交互模块,根据用户所选择操作指令对应的半自动模式,所述自动抠图模块用于通过预设grabcut算法进行抠图操作,所述交互模块用于选取任意多边形、笔刷选取前景或背景,从而获得图像的前景透明度,输出抠图结果。
14.根据权利要求11所述的装置,其特征在于,所述交互模块还用于:通过选取任意多边形、笔刷选取前景或背景,获得图像的前景透明度,输出抠图结果。
15.根据权利要求11至14任一项所述的装置,其特征在于,所述装置还包括抠图优化模块,所述抠图优化模块用于:
接收用户发出的优化操作指令,根据所述前景透明度和用户的手动交互操作,进行优化操作。
16.根据权利要求15所述的装置,其特征在于,所述抠图优化模块具体用于根据所述前景透明度和用户的手动交互操作,进行优化操作,包括:
将所述前景透明度二值化得到硬分割结果;
根据用户的手动交互操作提取待处理的子区域集合,所述手动交互操作包括笔刷选取前景或背景;
将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果。
17.根据权利要求16所述的装置,其特征在于,所述抠图优化模块具体用于将所述硬分割结果、手动交互操作及子区域集合作为输入,利用预设优化抠图算法获得优化抠图结果,包括:
根据所述硬分割结果、手动交互操作及子区域集合,调用预设matting算法进行matting,获得优化抠图结果。
18.根据权利要求16或17所述的装置,其特征在于,所述预设优化抠图算法为预设grabcut算法,所述预设matting算法为KNN matting算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810265548.7A CN108596913A (zh) | 2018-03-28 | 2018-03-28 | 一种抠图方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810265548.7A CN108596913A (zh) | 2018-03-28 | 2018-03-28 | 一种抠图方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108596913A true CN108596913A (zh) | 2018-09-28 |
Family
ID=63623845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810265548.7A Pending CN108596913A (zh) | 2018-03-28 | 2018-03-28 | 一种抠图方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108596913A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751655A (zh) * | 2019-09-16 | 2020-02-04 | 南京工程学院 | 一种基于语义分割和显著性分析的自动抠图方法 |
CN112542230A (zh) * | 2020-12-23 | 2021-03-23 | 南开大学 | 一种针对医学图像的多模式交互分割方法及系统 |
CN114140547A (zh) * | 2021-12-07 | 2022-03-04 | 北京百度网讯科技有限公司 | 图像生成方法和装置 |
CN115375535A (zh) * | 2022-10-21 | 2022-11-22 | 珠海金山办公软件有限公司 | 交互抠图方法、装置、电子设备及存储介质 |
WO2023020316A1 (zh) * | 2021-08-18 | 2023-02-23 | 北京字跳网络技术有限公司 | 一种图像处理方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104820990A (zh) * | 2015-05-15 | 2015-08-05 | 北京理工大学 | 一种交互式图像抠图系统 |
CN107452010A (zh) * | 2017-07-31 | 2017-12-08 | 中国科学院长春光学精密机械与物理研究所 | 一种自动抠图算法和装置 |
-
2018
- 2018-03-28 CN CN201810265548.7A patent/CN108596913A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104820990A (zh) * | 2015-05-15 | 2015-08-05 | 北京理工大学 | 一种交互式图像抠图系统 |
CN107452010A (zh) * | 2017-07-31 | 2017-12-08 | 中国科学院长春光学精密机械与物理研究所 | 一种自动抠图算法和装置 |
Non-Patent Citations (4)
Title |
---|
QIBIN HOU等: "Deeply Supervised Salient Object Detection with Short Connections", 《2017 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION》 * |
QIFENG CHEN等: "KNN Matting", 《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》 * |
戚骏: "自然图像抠图算法研究与优化", 《HTTP://D.WANFANGDATA.COM.CN/THESIS/D668756》 * |
贾富 等: "《数码人像摄影技巧大全》", 30 June 2013, 中国电力出版社 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751655A (zh) * | 2019-09-16 | 2020-02-04 | 南京工程学院 | 一种基于语义分割和显著性分析的自动抠图方法 |
CN112542230A (zh) * | 2020-12-23 | 2021-03-23 | 南开大学 | 一种针对医学图像的多模式交互分割方法及系统 |
WO2023020316A1 (zh) * | 2021-08-18 | 2023-02-23 | 北京字跳网络技术有限公司 | 一种图像处理方法、装置、设备及存储介质 |
CN114140547A (zh) * | 2021-12-07 | 2022-03-04 | 北京百度网讯科技有限公司 | 图像生成方法和装置 |
CN114140547B (zh) * | 2021-12-07 | 2023-03-14 | 北京百度网讯科技有限公司 | 图像生成方法和装置 |
CN115375535A (zh) * | 2022-10-21 | 2022-11-22 | 珠海金山办公软件有限公司 | 交互抠图方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108596913A (zh) | 一种抠图方法及装置 | |
JP6956252B2 (ja) | 顔表情合成方法、装置、電子機器及びコンピュータプログラム | |
CN108765278A (zh) | 一种图像处理方法、移动终端及计算机可读存储介质 | |
US20210233248A1 (en) | Image Processing Method and Apparatus, and Device | |
CN106846390B (zh) | 一种图像处理的方法及装置 | |
US20180276797A1 (en) | Complex architecture for image processing | |
CN105321177B (zh) | 一种基于图像重要度的层次图集自动拼贴方法 | |
US11386589B2 (en) | Method and device for image generation and colorization | |
CN104067311A (zh) | 数字化妆 | |
CN105354248A (zh) | 基于灰度的分布式图像底层特征识别方法及系统 | |
CN110610201B (zh) | 厨余回收分类方法、系统、移动终端及存储介质 | |
WO2018082388A1 (zh) | 一种肤色检测方法、装置及终端 | |
CN111652830A (zh) | 图像处理方法及装置、计算机可读介质及终端设备 | |
CN111476849B (zh) | 对象颜色识别方法、装置、电子设备以及存储介质 | |
CN109146991A (zh) | 一种图片格式转换方法、装置、设备和存储介质 | |
CN109800750A (zh) | 一种基于图像形态学用于规则排版的文本的文字区域标注方法 | |
CN106557549A (zh) | 识别目标对象的方法和装置 | |
CN110889854A (zh) | 一种基于多尺度深度学习的草图部件分割方法、系统、装置及存储介质 | |
He | Application of local color simulation method of landscape painting based on deep learning generative adversarial networks | |
CN109886890A (zh) | 一种应用图标处理方法及装置 | |
CN111524204B (zh) | 一种人像发丝动漫化纹理生成方法 | |
KR20160059452A (ko) | 이미지의 파티셔닝 | |
CN111652022B (zh) | 图像数据的显示、直播方法、装置、电子设备和存储介质 | |
CN108765429A (zh) | 一种基于聚类分析的图像分割系统 | |
CN111402382B (zh) | 一种提升分层分块三维模型数据渲染效率的分类优化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180928 |
|
RJ01 | Rejection of invention patent application after publication |