抠图方法以及装置与流程

文档序号:18353447发布日期:2019-08-06 22:45阅读:366来源:国知局
抠图方法以及装置与流程

本发明涉及图像处理技术领域,特别涉及一种抠图方法以及装置。



背景技术:

抠图是图像和视频处理的一项重要的技术,在照片处理、电影特效和家庭娱乐中,获得了广泛的应用。近年来,随着移动设备的普及,针对手机和平板电脑(以ios和android为主)图像处理软件的需求高速增长,图像抠图技术在移动设备上的应用也越来越迫切。然而目前主流的移动平台的图像处理软件存在以下的缺点:

1.操作繁琐。目前市面上移动平台上主流的抠图软件,一般需要用户选定全部的前景或者背景区域才能操作,使得操作非常不便。

2.抠图不精确。目前市面上移动平台上主流的抠图软件,在抠图精度上还比较差。抠完之后,前景区域和背景区域经常会相互交织在一起,而且由于移动平台的屏幕小,要精确的抠出用户想要的内容,非常困难。



技术实现要素:

本发明的抠图方法和装置,用于解决现有的移动终端或者平台上抠图系统的缺陷,提供给用户一种更加好用易用的、改善用户体验的抠图方法或者装置。

本发明的实施例之一,一种移动终端上的抠图方法,包括:

步骤一,接收用户输入的手势操作,将用户的操作在界面上给出反馈,将用户手指经过的区域作加粗处理,绘制出待抠物体的轮廓线;同时支持双指缩放平移操作,让用户可以放大缩小待抠图的区域。

步骤二,粗抠。根据用户输入绘制的加粗轮廓线,生成三分图。利用抠图算法将原图与三分图进行运算处理,得到粗抠后的图像;

步骤三,精抠。用户可以根据粗抠的结果进行局部精修,把某一区域设置成前景区域、设置成背景区域或者再设置成未知区域进行抠图更新。

本发明是一种易用的可以在移动平台上使用的手动抠图系统,可以解决移动平台或者移动终端屏幕较小,难以精确实现抠图功能的问题。其中,提供了一种在移动平台上非常方便使用的精确抠图方法,用户只需要粗略的用手指画出图片中需要抠取的物体的轮廓线,就能得到比较精确的抠取结果。如果用户对个别局部细节不够满意,也可以把对应的区域进行放大,精确到像素的进行精抠。

与现有的技术相比,本发明具有以下积极效果:

(1)易于使用。用户只需要用手指大致的圈出待抠物体的轮廓,程序就能自动完成后续抠图工作,大大减化了用户的操作过程。

(2)抠图精度高,运算速度快。由于在用户圈出待抠物体的轮廓后,已经将轮廓外的区域自动视为背景区域,轮廓内的区域自动视为前景区域,不确定的只是轮廓线上的区域,大大减少了不确定区域的像素数量,不仅提高了准确度,也减少了运算量。

附图说明

通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:

图1是根据本发明实施例之一的抠图方法流程示意图。

图2是根据本发明实施例之一的原始图片示例。

图3是根据本发明实施例之一的在原始图片上画加粗轮廓线的示例。

图4是根据图3的轮廓线图。

图5是根据图3的三分图示例。

图6是根据图5的alpha图示例。

图7是根据本发明实施例之一的手机精抠界面示意图。

具体实施方式

根据一个或者多个实施例,一种抠图方法,用于具有触控屏的图片处理装置,该方法包括以下步骤:

所述的图片处理装置获取用户在触控屏上手指轨迹,根据用户手指经过的原始图片区域,绘制出待抠对象区域的加粗轮廓线。如图2所示是原始图片,图3是在原始图片上绘制了待抠对象区域的加粗轮廓线,图4是根据图3生成的轮廓线图。

根据加粗轮廓线,生成三分图。三分图(trimap)是抠图中的专业术语,三分图由黑白灰三种颜色组成,黑色代表背景区域,白色代表前景区域,灰色代表待求未知区域。如图5所示的是从原始图片根据加粗轮廓线生成的三分图。

利用抠图算法将原始图片与三分图进行运算处理,得到粗略抠图后的图片图像。这里涉及的抠图算法,其中一种是,将原始图片与三分图进行运算处理,求解灰色区域,得到alpha图。三分图中的黑色区域在alpha图中还是黑色(像素的值为0),三分图中的白色区域在alpha图中还是白色(像素的值为255),三分图中的灰色区域,根据计算,使之转变成介于0和255之间的值。最终alpha图中的这些点的值用以表示原图中对应位置的点在生成的结果图中的透明度值。例如,alpha图中某一个的值为128,代表原图中这个点在抠图结果中,应该是半透明的形式呈现。如图6所示,是获得的alpha图。

用户根据粗略抠图后的图片图像进行局部精细修改,把图片中的某一区域设置成前景区域、设置成背景区域或者设置成未知区域,得到精抠后的图像。

将所述的三分图,结合原始图片图像的颜色信息,对三分图中的未知区域进行转化,将其划分为近似前景和近似背景,并对近似前景和近似背景的边界区域扩大处理为过渡区域。

根据用户选定的方式,将某一区域直接设置成前景区域、背景区域或者选定区域,如果用户选定的某一区域是选定区域,则对该选定区域进行转化。

将所述的三分图转化成alpha图的过程中,先计算灰色区域中每一个像素(代表未知区域)属于前景区域(或背景区域)的概率,当这个概率大于某个预设的值时,就将该像素标记成前景区域(或背景区域)。这样逐步缩小灰色区域(未知区域)。最后对剩下的灰色区域(未知区域)使用现有的某种抠图算法(例如globalsamplingmatting算法或sharedmatting算法等)进行计算alpha值。

对生成的alpha图,用户可以根据自己的要求,再次进行精修。把原图片中想保留的区域,在alpha图中设置白色(代表前景区域),把原图片中想擦除的区域设置成黑色(代表背景区域),把原图片中过渡的区域设置成灰色(代表用户不太好确定,让算法去决定是前景还是背景)使用现有的某种抠图算法(例如globalsamplingmatting算法或sharedmatting算法等)进行抠图,让抠图算法把灰色区域(未知区域)的点在对应的aplha图中转化成黑色区域(代表背景)或白色区域(代表前景)或者介于0~255之间的值(代表半透明区域),得到精抠后的图像。如图7所示,是精抠操作图像和界面的示意图,底部四个按钮依次为平移功能,将画笔设为待定区域功能,将画笔设为前景功能(画上去之后,被抠掉的区域会恢复出来),将画笔设为背景功能(画上去之后,该区域会被擦除抠掉)。

根据一个或者多个实施例,一种图片处理装置,该装置具有触控屏、存储器;以及耦合到所述存储器的处理器,该处理器被配置为执行存储在所述存储器中的指令,所述处理器执行以下操作:

获取用户在触控屏上手指轨迹,根据用户手指经过的原始图片区域,绘制出待抠对象区域的加粗轮廓线;

根据加粗轮廓线,生成三分图;

利用抠图算法将原始图片与三分图进行运算处理,得到粗略抠图后的图片图像。

用户根据粗略抠图后的图片图像进行局部精细修改,把图片中的某一区域设置成前景区域、设置成背景区域或者设置成未知区域进行抠图更新。

根据一个或者多个实施例,一种图片处理平台,所述平台包括具有触控屏的移动终端、服务器,移动终端与服务器耦接,服务器具有存储器;以及

耦合到所述存储器的处理器,该处理器被配置为执行存储在所述存储器中的指令,所述处理器执行以下操作:

通过移动终端获取用户在触控屏上手指轨迹,根据用户手指经过的原始图片区域,绘制出待抠对象区域的加粗轮廓线;

根据加粗轮廓线,生成三分图;

利用抠图算法将原始图片与三分图进行运算处理,得到粗略抠图后的图片图像。

用户根据粗略抠图后的图片图像进行局部精细修改,把图片中的某一区域设置成前景区域、设置成背景区域或者设置成未知区域进行抠图更新。

根据一个或者多个实施例,一种移动终端,该移动终端接入移动通信网络,并且该移动终端具有触控屏、存储器;以及

耦合到所述存储器的处理器,该处理器被配置为执行存储在所述存储器中的指令,所述处理器执行以下操作:

获取用户在触控屏上手指轨迹,根据用户手指经过的原始图片区域,绘制出待抠对象区域的加粗轮廓线;

根据加粗轮廓线,生成三分图;

利用抠图算法将原始图片与三分图进行运算处理,得到粗略抠图后的图片图像。

用户根据粗略抠图后的图片图像进行局部精细修改,把图片中的某一区域设置成前景区域、设置成背景区域或者设置成未知区域进行抠图更新。

根据一个或者多个实施例,如图1所示,一种易用用的移动平台手动抠图系统,包括如下步骤:

步骤一:输入。接收用户输入的手指操作,将用户的操作在移动终端设备屏幕界面上给出反馈,将用户手指经过的区域作加粗处理,绘制出待抠物体的轮廓线;同时支持双指缩放平移操作,让用户可以放大缩小待抠图的区域。通过将用户简单的手势操作显示为待抠物体加粗轮廓线的方式,非常方便的为抠图功能提供了前景区域、背景区域和待定区域:加粗轮廓线外部是背景区域、加粗轮廓线内部是前景区域、加粗轮廓线上是待定区域。

步骤二:粗抠。根据用户输入绘制的加粗轮廓线,生成三分图。利用抠图算法将原图与三分图进行运算处理,得到粗抠后的图像。根据用户手势操作得到的三分图,结合原图像的颜色信息,对三分图中的未知区域进行转化,将其划分为近似前景,近似背景。并对这两者的边界区域进行适当扩大,作为过渡区域。针对过渡区域的像素,计算其alpha值。

步骤三:精抠。用户可以根据粗抠的结果进行局部精修,把某一区域设置成前景区域、设置成背景区域或者再设置成未知区域进行抠图更新。根据用户选定的方式,将某一区域直接设置成前景区域、背景区域或者是选定区域。如果用户选定的某一区域是选定区域,则继续使用步骤二中转化待定区域的方法进行转化。并对边界区域做过渡。针对过渡区域的像素,采用算法计算其alpha值。步骤三可以让用户多次操作,迭代出最优效果。

应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1