CN112001851B - 图像处理方法、装置、计算机设备及存储介质 - Google Patents

图像处理方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112001851B
CN112001851B CN201910447365.1A CN201910447365A CN112001851B CN 112001851 B CN112001851 B CN 112001851B CN 201910447365 A CN201910447365 A CN 201910447365A CN 112001851 B CN112001851 B CN 112001851B
Authority
CN
China
Prior art keywords
target
points
area
shape
image
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
CN201910447365.1A
Other languages
English (en)
Other versions
CN112001851A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910447365.1A priority Critical patent/CN112001851B/zh
Publication of CN112001851A publication Critical patent/CN112001851A/zh
Application granted granted Critical
Publication of CN112001851B publication Critical patent/CN112001851B/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/73Deblurring; Sharpening
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/181Segmentation; Edge detection involving edge growing; involving edge linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明实施例公开了一种图像处理方法、装置、计算机设备及存储介质,属于图像处理技术领域。所述方法包括:确定目标图像的掩膜图像,所述掩膜图像包括目标区域,所述目标区域用于指示所述目标图像中目标对象所在区域;基于所述目标区域的位置,确定所述目标区域的多个形状定位点,所述多个形状定位点用于指示所述目标区域的边界位置;基于所述多个形状定位点的位置进行曲线拟合,确定目标曲线,所述目标曲线用于表示所述多个形状定位点的位置变化趋势;基于所述目标曲线,在所述目标图像中显示所述目标对象的边框。该目标曲线可以平滑的连接每个形状定位点,基于该目标曲线显示目标对象的边框,从而提高了目标对象的边框的平滑度。

Description

图像处理方法、装置、计算机设备及存储介质
技术领域
本申请涉及图像处理技术领域,特别涉及一种图像处理方法、装置、计算机设备及存储介质。
背景技术
在一些场景中,通常需要对图像进行描边处理,描边处理是指在图像中对象的边缘处绘制边框。例如,游戏画面中通常采用不同颜色的边框来标记不同的角色。
相关技术中,图像处理的过程可以包括:计算机设备基于待处理的图像,获取该图像的掩膜图像,例如,该掩膜图像中,待描边对象所在区域为绿色,其他区域为黑色。计算机设备对该绿色区域的边缘进行法线扩大处理,再对扩大后的绿色区域的边缘进行模糊处理,将该掩膜图像与图像进行叠加,从而在待描边对象的边缘展示绿色边框的效果。
上述方法实际上是采用扩大区域和边缘模糊处理的方式,来进行描边,然而,扩大的绿色区域边缘容易存在锯齿状的毛刺,即使边缘模糊处理也无法消除毛刺,从而导致描边的边框的平滑度较低。
发明内容
本发明实施例提供了一种图像处理方法、装置、计算机设备及存储介质,能够解决相关技术中边框的平滑度较低的问题。所述技术方案如下:
一方面,提供了一种图像处理方法,所述方法包括:
确定目标图像的掩膜图像,所述掩膜图像包括目标区域,所述目标区域用于指示所述目标图像中目标对象所在区域;
基于所述目标区域的位置,确定所述目标区域的多个形状定位点,所述多个形状定位点用于指示所述目标区域的边界位置;
基于所述多个形状定位点的位置进行曲线拟合,确定目标曲线,所述目标曲线用于表示所述多个形状定位点的位置变化趋势;
基于所述目标曲线,在所述目标图像中显示所述目标对象的边框。
另一方面,提供了一种图像处理装置,其特征在于,所述装置包括:
确定模块,用于确定目标图像的掩膜图像,所述掩膜图像包括目标区域,所述目标区域用于指示所述目标图像中目标对象所在区域;
所述确定模块,还用于基于所述目标区域的位置,确定所述目标区域的多个形状定位点,所述多个形状定位点用于指示所述目标区域的边界位置;
所述确定模块,还用于基于所述多个形状定位点的位置进行曲线拟合,确定目标曲线,所述目标曲线用于表示所述多个形状定位点的位置变化趋势;
显示模块,用于基于所述目标曲线,在所述目标图像中显示所述目标对象的边框。
在一种可能实现方式中,所述装置还包括:
检测模块,用于基于所述目标数目的插值点的位置,检测所述目标数目的插值点的位置是否与所述目标区域重叠;
重叠处理模块,用于当任一插值点的位置与所述目标区域重叠时,将所述两个形状定位点合并为一个第一目标定位点,或者,在所述两个形状定位点之间增加第二目标定位点,所述第一目标定位点或第二目标定位点位于所述目标区域以外。
在一种可能实现方式中,所述确定模块,还用于基于所述目标区域的位置,在所述掩膜图像中确定包围所述目标区域的多边形区域,所述多边形区域包括至少一个多边形;将所述的至少一个多边形的多个顶点,确定为所述多个形状定位点。
在一种可能实现方式中,所述确定模块,还用于对所述掩膜图像的目标区域进行扩大,得到第一区域;基于所述掩膜图像中每个像素点的像素值,提取所述第一区域的多个边界点;基于所述第一区域的多个边界点,获取所述掩膜图像中所述多个边界点对应的至少一个多边形。
在一种可能实现方式中,所述确定模块,还用于将所述掩膜图像由第一尺寸缩小为第二尺寸;在所述第二尺寸的掩膜图像中,按照目标扩大系数,沿所述目标区域的边界向外的方向扩大所述目标区域,得到第二区域;将所述掩膜图像由所述第二尺寸扩大为所述第一尺寸,得到所述第一区域。
在一种可能实现方式中,所述确定模块,还用于获取用户选中的目标距离,所述目标距离是指所述目标对象的边框与所述目标对象所在区域的边界之间的距离;根据所述目标距离,确定所述目标区域的目标扩大系数;按照所述目标扩大系数,对所述目标区域进行扩大,得到所述第一区域。
在一种可能实现方式中,所述装置还包括:
删除模块,还用于当所述目标对象的数目为多个时,所述第一区域的数目为多个,获取每个第一区域的边界点的数量,删除多个第一区域中边界点的数量小于第一阈值的第一区域。
在一种可能实现方式中,所述装置还包括:
获取模块,用于对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离;
合并模块,用于当所述两个形状定位点之间的距离小于第二阈值时,将所述两个形状定位点合并为一个形状定位点;
增加模块,用于当所述两个形状定位点之间的距离大于第三阈值时,在所述两个形状定位点之间增加形状定位点,所述第三阈值大于所述第二阈值。
在一种可能实现方式中,获取模块,用于当所述目标区域包括直角区域时,获取所述直角区域的多个形状定位点,所述直角区域是指两条边界围成角度为直角的区域;当形状定位点为直角区域的形状定位点时,对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离。
在一种可能实现方式中,所述目标对象的对象类型为目标对象类型;或者,所述目标对象的行为状态为目标行为状态;或者,所述目标对象所在图层与所述目标图像中除所述目标对象以外的任一对象所在图层不相同。
另一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条指令,所述至少一条指令由所述一个或多个处理器加载并执行以实现如上述的图像处理方法所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上述的图像处理方法所执行的操作。
本发明实施例通过在目标图像的掩膜图像中,确定目标区域的形状定位点,再基于该多个形状定位点的位置进行曲线拟合,得到目标曲线,基于该目标曲线,显示目标对象的边框,从而目标曲线可以平滑的连接每个形状定位点,基于该目标曲线显示目标对象的边框,从而提高了目标对象的边框的平滑度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种图像处理方法的实施环境的示意图;
图2是本发明实施例提供的一种图像处理方法的流程图;
图3是本发明实施例提供的一种目标图像的示意图;
图4是本发明实施例提供的一种掩膜图像的示意图;
图5是本发明实施例提供的一种第一区域的示意图;
图6是本发明实施例提供的一种第一区域的边界点的示意图;
图7是本发明实施例提供的一种多个目标对象的示意图;
图8是本发明实施例提供的一种多边形区域的示意图;
图9是本发明实施例提供的一种形状定位点的示意图;
图10是本发明实施例提供的一种未调整形状定位点的目标曲线的示意图;
图11是本发明实施例提供的一种未调整的形状定位点的示意图;
图12是本发明实施例提供的一种调整后的形状定位点的示意图;
图13是本发明实施例提供的一种调整形状定位点后的目标曲线的示意图;
图14是本发明实施例提供的一种目标曲线的示意图;
图15是本发明实施例提供的一种四个形状定位的示意图;
图16是本发明实施例提供的一种目标函数执行过程示意图;
图17是本发明实施例提供的一种贝塞尔曲线示意图;
图18是本发明实施例提供的一种基于贝塞尔曲线得到边框曲线的示意图;
图19是本发明实施例提供的一种B样条曲线的示意图;
图20是本发明实施例提供的一种基于B样条曲线得到边框曲线的示意图;
图21是本发明实施例提供的一种样条插值曲线的示意图;
图22是本发明实施例提供的一种基于样条插值曲线得到边框曲线示意图;
图23是本发明实施例提供的一种目标对象的边框示意图;
图24是本发明实施例提供的一种调整前的形状定位点的示意图;
图25是本发明实施例提供的一种调整后的形状定位点的示意图;
图26是本发明实施例提供的一种调整形状定位点后的边框的示意图;
图27是本发明实施例提供的一种目标曲线的离散点的示意图;
图28是本发明实施例提供的一种实线的边框的示意图;
图29是本发明实施例提供的一种目标对象的实线边框的示意图;
图30是本发明实施例提供的一种虚线的边框的示意图;
图31是本发明实施例提供的一种目标对象的虚线边框的示意图;
图32是本发明实施例提供的一种目标图像的示意图;
图33是本发明实施例提供的一种掩膜图像的示意图;
图34是本发明实施例提供的一种人物区域的边框的示意图;
图35是本发明实施例提供的一种多种显示样式的边框的示意图;
图36是本发明实施例提供的一种应用界面的示意图;
图37是本发明实施例提供的一种人物区域的黑色粗边的边框示意图;
图38是本发明实施例提供的一种测试界面的示意图;
图39是本发明实施例提供的一种图像处理装置的结构示意图;
图40是本发明实施例提供的一种终端的结构示意图;
图41是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的一种图像处理方法的实施环境的示意图,参见图1,该实施环境包括:计算机设备101,该计算机设备101可以为服务器或终端,当该计算机设备101为服务器时,该计算机设备101可以为图像处理应用的后台服务器,当该计算机设备102为终端时,该计算机设备101上可以预先安装有该图像处理应用。该图像处理应用具备图像描边功能,该计算机设备101可以基于该图像描边功能,对图像中目标对象所在区域进行描边处理。图像描边功能是指为图像中目标区域绘制边框的功能。
在一种可能的场景中,该图像可以为用户的单张图像,计算机设备101为用户的图像中的目标对象绘制边框,例如,在用户的自拍照的头部周围绘制边框;或者,该计算机设备101还可以获取视频中的一帧或多帧图像,为视频中一帧或多帧图像的目标对象绘制边框,例如,在游戏界面图像中为不同类型的角色绘制不同颜色的边框。
当该计算机设备101为终端时,该计算机设备101可以在本设备上执行描边处理的过程,也即是,基于该图像处理应用的图像描边功能,绘制图像中目标对象的边框,以在图像中显示目标对象的边框。或者,该计算机设备101还可以将该图像发送至服务器,服务器获取该图像中目标对象的边框,将该包括目标对象的边框的图像发送至计算机设备101,计算机设备101接收并显示该图像。或者,当该计算机设备101为服务器时,该计算机设备101接收终端发送的图像,基于该图像,绘制图像中目标对象的边框,并将包括目标对象的边框的图像发送至终端,终端接收并显示该图像。
该终端可以为安装该图像处理应用的任一终端,本发明实施例对此不做具体限定。例如,终端可以为手机终端、PAD(Portable Android Device,平板电脑)终端或者电脑终端等任一安装有该图像处理应用的设备。
图2是本发明实施例提供的一种图像处理方法的流程图。该发明实施例的执行主体为计算机设备,参见图2,该方法包括:
201、计算机设备获取目标图像的掩膜图像。
该目标图像为待进行描边处理的图像,该目标图像中包括待描边的目标对象所在区域。例如,人物对象所在的区域或者用户选中的区域等。该掩膜图像中包括目标区域,该目标区域用于指示目标图像中目标对象所在区域。在一种可能示例中,该掩膜图像可以由目标区域和非目标区域组成,该目标区域在掩膜图像的位置可以与目标对象所在区域在目标图像的位置相同,非目标区域是指掩膜图像中除目标区域以外的区域。
在一种可能的实施方式中,该计算机设备可以确定目标图像中至少一个待描边的目标对象所在区域,根据该至少一个待描边的区域,获取该目标图像对应的掩膜图像。在一种可能示例中,该掩膜图像可以为该目标图像的二值化图像,该计算机设备可以获取与该目标图像大小相同的空白图像,该计算机设备基于该目标图像中待描边的区域,将该空白图像中目标区域的像素值赋值为第一数值,将该空白图像中除该目标区域以外的非目标区域的像素值赋值为第二数值。例如,该第一数值可以为1,该第二数值可以为0,从而得到该目标图像的mask(掩膜)图像。
在一种可能的实施方式中,该计算机设备可以对该目标图像进行识别,基于识别结果来确定目标图像中待描边的区域。该过程可以包括:当接收到图像处理指令时,该计算机设备获取目标图像,对该目标图像进行图像识别,识别出该目标图像中的至少一个目标对象,将该至少一个目标对象所在区域确定为该目标图像中待描边的区域。则该计算机设备获取的掩膜图像中,包括至少一个目标区域,一个目标区域对应指示该目标图像中一个目标对象所在区域。
在一种可能示例中,该目标对象的对象类型为目标对象类型;或者,该目标对象的行为状态为目标行为状态;或者,该目标对象所在图层与该目标图像中除该目标对象以外的任一对象所在图层不相同。例如,该至少一个目标对象的对象类型可以均为人;或者,该至少一个目标对象可以为游戏中的对象,该至少一个目标对象的行为状态可以均为攻击状态或者均为移动状态;或者,该目标图像中多个图像对象可以为与第一图层,而该至少一个目标对象可以为目标图像中贴图所在第二图层上。
如图3所示,该目标图像可以为用户蹦极时的图像,该待描边的区域可以为人物所在区域。如图4所示,该目标图像的掩膜图像可以为一个二值化的mask图像,该mask图像中白色区域对应于目标图像中人物所在区域,像素值为1;目标图像中非人物所在区域在该mask图像中所对应的区域,像素值均为0,也即是,mask图像中的黑色区域。
202、计算机设备根据该目标区域的位置,对该掩膜图像的目标区域进行扩大,得到第一区域。
该第一区域大于该目标区域,且该第一区域能够覆盖该目标区域。在一种可能的实施方式中,该计算机设备可以按照目标扩大系数,沿该目标区域的边界向外的方向进行扩张,得到第一区域。
在一种可能的实施方式中,该计算机设备可以先缩小该掩膜图像,对缩小后的掩膜图像进行目标区域的扩大处理,则本步骤可以包括:该计算机设备将该掩膜图像由第一尺寸缩小为第二尺寸;该计算机设备在该第二尺寸的掩膜图像中,按照目标扩大系数,沿该目标区域的边界向外的方向扩大该目标区域,得到第二区域;该计算机设备将该掩膜图像由该第二尺寸扩大为该第一尺寸,得到该第一区域。该第一尺寸大于第二尺寸。例如,将1024×2048的图像压缩为一个256×256大小的图像。在一种可能示例中,该计算机设备也可以按照目标缩小倍数,将掩膜图像进行缩小,再对缩小后的掩膜图像进行目标区域的扩大处理后,再按照目标缩小倍数的倒数,对缩小后的掩膜图像进行扩大,从而得到第一尺寸的掩膜图像中的第一区域。
在一种可能的实施方式中,该目标扩大系数用于指示该目标对象的边框与该目标对象所在区域的边界之间的距离,用户还可以基于需要选择边框与目标对象所在区域之间的距离,则本步骤还可以为:该计算机设备获取用户选中的目标距离,该目标距离是指该目标对象的边框与该目标对象所在区域的边界之间的距离;该计算机设备根据该目标距离,确定该目标区域的目标扩大系数;该计算机设备按照该目标扩大系数,对该目标区域进行扩大,得到该第一区域。在一种可能示例中,该计算机设备可以将该目标距离作为该目标扩大系数,或者,该计算机设备获取大于该目标距离的数值,作为该目标扩大系数。例如,该目标距离为0.5厘米,该目标扩大系数可以为扩大0.5厘米。
在一种可能的实施方式中,该计算机设备可以采用对该图像进行卷积处理的方式,对该目标区域进行膨胀操作,以扩大目标区域。本步骤中可以包括:该计算机设备获取目标大小的卷积核,该卷积核包括参考点。该计算机设备将该掩膜图像与该卷积核进行卷积,确定出该掩膜图像中卷积核覆盖区域的像素点的最大值。该计算机设备将该像素点的最大值赋值给该掩膜图像中该卷积核的参考点指定的像素点。该卷积核的目标大小用于表示对该目标区域进行扩大的程度。在一种可能示例中,该计算机设备可以基于该掩膜图像的大小,确定该目标扩大系数。本发明实施例中,该卷积核可以是任意形状,该卷积核的参考点可以为该卷积核的锚点(anchor point);例如,如果该卷积核为正方形,该参考点可以为该正方形的中心位置的锚点。该计算机设备可以将该目标扩大系数确定为正方形卷积核的边长。本发明实施例中,该目标扩大系数可以基于需要进行设置,例如,该计算机设备可以将一个长×宽的掩膜图像的长的5%,确定为该目标扩大系数,也即是,该正方形卷积核的边长可以为掩膜图像的长的5%。在一种可能示例中,该卷积核的形状还可以为圆形或者长方形等,则该计算机设备还可以将该目标扩大系数确定为圆形卷积核的半径,或者,长方形卷积核的长等。本发明实施例对该卷积核的形状并不作具体限定。
在一种可能的实施方式中,当目标图像中目标对象的数目为多个时,该掩膜图像中目标区域的数目也为多个,该计算机设备可以采用上述过程,分别对该每个目标区域进行扩大,得到每个目标区域对应的第一区域。
需要说明的是,该计算机设备可以将该掩膜图像中目标区域进行膨胀处理,以增大该白色区域的覆盖范围,并且,该计算机设备还可以先压缩该掩膜图像,对压缩后的掩膜图像中目标区域进行膨胀处理,从而可以缩短图像膨胀处理的处理时间,提高了处理效率。另外,该计算机设备还可以按照用户需求,来扩大该目标区域,进一步提高了用户体验。
如图5所示,图5中mask图像中的白色区域即为膨胀后的目标区域,也即是第一区域,图4中mask图像中的白色区域为还未进行膨胀操作的目标区域,显然,图5中白色区域大于图4中的白色区域所覆盖的范围。
203、该计算机设备基于该掩膜图像中每个像素点的像素值,提取该第一区域的多个边界点。
该计算机设备基于相邻像素点的像素值,提取多个边界点。在一种可能的实施方式中,该计算机设备确定每个像素点的相邻像素点,当该像素点与相邻像素点之间的像素值不同时,将该像素点确定为该第一区域的边界点。在一种可能示例中,对于每个像素点,该计算机设备可以沿着目标方向,查找每个像素点的一个或多个相邻像素点。例如,该计算机设备还可以采用find Counters(寻找轮廓)算法,提取该第一区域的多个边界点。
在一种可能的实施方式中,当该掩膜图像中第一区域的数目为多个时,该计算机设备可以根据每个第一区域的边界点的数目,对该多个第一区域进行筛选,该过程可以包括:该计算机设备获取每个第一区域的边界点的数量,删除多个第一区域中边界点的数量小于第一阈值的第一区域。该第一阈值可以基于需要进行设置,本发明实施例对此不做具体限定。例如,该第一阈值可以为最大区域边界点数目的一半。该最大区域边界点数目是指该多个第一区域的边界点数目中的最大边界点数目。
需要说明的是,如图6所示,图6为计算机设备提取的第一区域的多个边界点,当多个相邻的边界点位于同一条直线上时,该计算机设备还可以删除该多个相邻边界点中位于中间的边界点,保留该多个相邻边界点中第一个边界点和最后一个边界点。如图7所示,当目标对象包括多个时,该计算机基于多个第一区域的边界点数量,对第一区域进行筛选,删除掉边界点数量较少的第一区域后,得到如图7所示的两个第一区域。
204、计算机设备基于该第一区域的多个边界点,获取该掩膜图像中该多个边界点对应的至少一个多边形。
该计算机设备可以根据该掩膜图像中该多个边界点的位置,对该多个边界点进行多边形拟合,确定出该掩膜图像中包围该目标区域的多边形区域。该多边形区域包括至少一个多边形。
在一种可能的实施方式中,该计算机设备可以采用边界点拟合的方式,确定该至少一个多边形,则本步骤可以包括:该计算机设备根据该多个边界点的位置,确定多条线段,该计算机设备依次连接各个线段,得到该多个多边形。每条线段对应一个边界点集合,该边界点集合中每个边界点到对应线段的距离不超过第四阈值。在一种可能示例中,该过程可以包括:该计算机设备获取任意两个边界点作为起始点和结束点,该起始点可以是一条线段的起始位置的端点,该结束点可以是一条线段的结束位置的端点,该计算机设备在该多个边界点的起始点和结束点之间确定一条线段,该起始点和结束点之间包括多个边界点。该计算机设备获取该起始点和结束点之间的每个边界点分别到该线段的距离,得到多个距离。当该多个距离中的最大距离不大于目标阈值时,该计算机设备将该线段确定为该首尾两点及其中间的每个边界点组成的边界点集合对应的线段;当该多个距离中的最大距离大于目标阈值时,该计算机设备获取该首尾两点之间的边界点,将该新获取的边界点作为结束点,该计算机设备基于该起始点和新获取的结束点,重复执行上述过程,直到获取多个边界点中每个边界点对应的线段时,该计算机设备依次连接各个线段,得到该多个多边形。
需要说明的是,上述步骤202-204实际上是步骤“计算机设备基于该目标区域的位置,在该掩膜图像中确定包围该目标区域的多边形区域”的一种具体实现方式,上述步骤202-204是先对该目标区域进行扩大,基于扩大得到的第一区域的边界点,获取包围目标区域的多边形区域。在另一种可能的实施方式中,该计算机设备还可以直接基于该目标区域的位置,获取报备该目标区域的多边形区域。该过程可以包括:该计算机设备获取该目标区域的最外侧的像素点的位置,基于该最外侧的像素点的位置,获取包括该最外侧像素点在内的多边形区域。当然,该计算机设备还可以采用其他方式获取该多边形区域,本发明实施例对此不做具体限定。
如图8所示,图8为计算机设备根据该多个边界点,拟合出的多边形区域,该多边形区域中,边界均为直线,显然,该多边形区域覆盖范围较大,可以包围该掩模图像中的目标区域。
205、计算机设备将该至少一个多边形的多个顶点,确定为该目标区域的多个形状定位点。
该多个形状定位点用于指示该目标区域的边界位置。在一种可能的实施方式中,该计算机设备还可以基于该多个形状定位点之间的距离,对该多高形状定位点进行调整,该过程可以为:对于该多个形状定位点中相邻的每两个形状定位点,该计算机设备获取该两个形状定位点之间的距离;当该两个形状定位点之间的距离小于第二阈值时,该计算机设备将该两个形状定位点合并为一个形状定位点;当该两个形状定位点之间的距离大于第三阈值时,该计算机设备在该两个形状定位点之间增加形状定位点,该第三阈值大于该第二阈值。在一种可能示例中,当该两个形状定位点之间的距离大于第三阈值时,该计算机设备还可以基于目标间隔距离,在该两个形状定位点之间,从其中一个形状定位点的位置开始,每个目标间隔距离,增加一个新的形状定位点,直到两个形状定位点之间的距离小于第三阈值。
在一种可能示例中,当该目标区域中包括直角区域时,该计算机设备还可以增加直角区域对应的形状定位点的数目,以便于后续步骤206中能够得到更加精确的目标曲线。则该过程可以为:当该目标区域包括直角区域时,该计算机设备获取该直角区域的多个形状定位点,该直角区域是指两条边界围成角度为直角的区域;当形状定位点为直角区域的形状定位点时,该计算机设备执行对于该多个形状定位点中相邻的每两个形状定位点,获取该两个形状定位点之间的距离的步骤。也即是,该计算机设备可以对直角区域的形状定位点进行调整,当相邻两个直角区域的形状定位点之间距离大于第三阈值时,在该相邻两个直角区域的形状定位点之间增加形状定位点。在一种可能示例中,两个形状定位点或者两个直角区域的形状定位点之间的距离可以为欧式距离,例如,欧式距离小于25.0的两个形状定位点进行合并,欧式距离大于100.0的点,每距离100欧氏距离插值1个形状定位点。
需要说明的是,对边界为横平竖直的直角区域,由于后续拟合曲线是光滑连续的曲线,会使得在直角区域的曲线与直角区域之间的间隙过大,比其他区域的曲线与区域之间的间隙大,因此,计算机设备可以判断相邻两个形状定位点之间的距离,来增加直角区域的形状定位点,从而后续可以基于更多的直角区域的形状定位点进行曲线拟合,使得该直角区域的曲线与直角区域之间更加贴合,避免了直角区域的曲线与直角区域之间的间隙过大的问题,从而进一步提高了曲线拟合的准确性。
需要说明的是,上述步骤202-205实际上是步骤“计算机设备基于掩膜图像中目标区域的位置,确定该目标区域的多个形状定位点”的一种实现方式,上述步骤202-205是先确定包围目标区域的多边形区域,将多边形区域中多边形的顶点作为该形状定位点。在另一种可能的实施方式中,该计算机设备还可以从该目标区域的多个边界点中,筛选出位置满足目标条件的边界点,作为该多个形状定位点,该目标条件可以为:与该目标区域的中心之间的距离位于前目标数目次序的边界点。例如,与该目标区域的中心之间的距离最远的8个边界点。
需要说明的是,该计算机设备还可以基于该形状定位点的密集程度,在相邻形状定位点之间距离过大或过小时,通过增加或删除形状定位点的方式,来调整该多个形状定位点之间的密集程度,使得该多个形状定位点之间不会过于稀疏或密集,从而保证了后续曲线拟合的准确性。并且,该计算机设备还可以在直角区域增加形状定位点,以保证后续曲线拟合的准确性,使得对直角区域的形状定位点进行曲线拟合时,直角区域附近边框与该直角区域之间的间隙不会过大,提高了边框与目标对象所在区域之间的贴合度。并且,计算机设备通过先将目标区域扩大,在对扩大的第一区域进行多边形拟合,将拟合出的多边形的顶点,作为后续曲线拟合使用的拟合点,进行曲线拟合,从而使得目标曲线和目标图像的目标对象所在区域之间有一定的空隙,同时还保证了各个位置的空隙是均匀大小的,目标曲线不会紧贴于目标对象所在区域,且用户还可以调控该空隙的大小,从而保证了描边处理的准确性和适用性。
如图9所示,该计算机设备可以获取该多边形区域中,每个多边形的顶点作为该形状定位点。该形状定位点能够很好的定位该多边形区域的位置,反映该目标区域的形状。如图10所示,图10为还未对直角区域的形状定位点进行调整时,所拟合出的目标曲线,显然,在该人物区域的左下角和右下角的直角区域,该曲线与该人物区域之间的间隙过大,大于其他区域的曲线与人物区域之间的间隙。如图11所示,图11为图10对应的形状定位点,该左下角和右下角的直角区域的形状定位点较为稀疏。图12为对直角区域的形状定位点进行调整之后的形状定位点的示意图,如图12所示,该计算机设备在左下角直角区域的竖直方向增加了形状定位点,并且,在左下角和右下角之间的水平方向上也增加了形状定位点。图13为基于增加形状定位点之后的多个形状定位点进行曲线拟合时,所得到的目标曲线示意图,如图13所示,在左下角和右下角区域,该曲线与该人物区域之间的间隙不会过大。
206、计算机设备基于该多个形状定位点的位置,确定该多个形状定位点的目标曲线。
该目标曲线用于表示该多个形状定位点的位置变化趋势。本步骤中,对于该多个形状定位点中相邻的每两个形状定位点,该计算机设备可以基于该两个形状定位点的位置和目标函数,确定出该两个形状定位点之间的目标数目的插值点。计算机设备将该两个形状定位点和该目标数目的插值点相连接,得到从一个形状定位点到另一个形状定位点的目标子曲线。该目标曲线由两两形状定位点之间的目标曲线先组成。在一种可能示例中,该目标函数在该每个形状定位点两侧的导数相等。
如图14所示,图14为基于图9所示的多个形状定位点进行曲线拟合,得到的目标曲线,从该图14中可以看出,该目标曲线可以平滑连续的连接该多个形状定位点。
在一种可能的实施方式中,该计算机设备可以采用四个形状定位点,确定该四个形状定位点中位于中间的两个形状定位点之间的子曲线。如图15所示,以P0、P1、P2、P3四个形状定位点为例,该目标函数可以如下式所示:P=P0×(-0.5×u×u×u+u×u–0.5×u)+P1×(1.5×u×u×u-2.5×u×u+1.0)+P2×(-1.5×u×u×u+2.0×u×u+0.5×u)+P3×(0.5×u×u×u–0.5×u×u);
其中,u取值范围为[0,1],当u从0到1线性变化的时候,曲线就会从点P1(此时u=0),慢慢移动到P2(此时u=1),P0、P1、P2、P3分别代表四个形状位置点的位置坐标,(u,P)代表插值点的位置坐标。该插值点的数目可以为目标数目,则该u的值可以从(1/目标数目)开始,基于该目标函数,获取该目标数目的插值点的位置坐标。例如,该插值点数目可以为100,则该u可以从0.01开始取值,分别取值为u=00.1、0.02、0.03、……0.99,对应的100个插值点。
需要说明的是,如图16所示,该计算机设备可以基于上述目标函数,确定P0、P1、P2、P3四个点中间两点P1、P2之间的目标子曲线,当该计算机设备获取P1、P2、P3、P4中间的P2、P3之间的目标子曲线时,该目标函数调整为:P=P1×(-0.5×u×u×u+u×u–0.5×u)+P2×(1.5×u×u×u-2.5×u×u+1.0)+P3×(-1.5×u×u×u+2.0×u×u+0.5×u)+P4×(0.5×u×u×u–0.5×u×u),从而保证了每个形状行为点两侧的曲线的切线方向是相同的,也即是两个子曲线之间的交点处,曲线的导数相同,该目标曲线可以平滑的连接该多个形状定位点,使得该计算机设备可以确定出满足目标拟合条件的目标曲线。该目标拟合条件可以包括:目标曲线光滑连续的连接每个形状定位点,两个形状定位点对应的子曲线外凸,该目标曲线能够连接每个形状定位点等等。
需要说明的是,如果该目标曲线未能连接每个形状定位点,如图17所示,当采用贝塞尔(Bezier Curve)曲线时,得到的曲线不能穿过每个形状定位点,并且,贝塞尔曲线是在多个形状顶点组成的多边形内部向外凸出,如图18所示,图18是基于贝塞尔曲线得到边框曲线的过程示意图,由于贝塞尔曲线在各个顶点处的导数突变,因此在多条拟合子曲线的交点处,容易存在曲线不平滑的问题。如图19所示,当采用B样条(Spline)曲线时,得到的曲线也不能穿过每个形状定位点,B样条曲线也是在多个形状顶点组成的多边形内部向外凸出,图20是基于B样条曲线得到边框曲线的过程示意图,如图20所示,由于B样条曲线虽然平滑,但由于B样条曲线不能通过所有顶点且是在多边形内部凸起,因此容易导致曲线与目标区域存在较多重叠的地方。如图21所示,当采用本步骤中基于插值点来确定样条插值(Catmull Rom Spline)曲线时,得到的曲线能平滑的穿过每个形状定位点且在多个形状顶点组成的多边形外部向外扩张,因此,该计算机设备可以通过上述过程,采用样条插值曲线确定上述多个形状定位点之间的目标曲线,图22为基于样条差值曲线得到边框曲线的过程示意图,如图22所示,得到能够平滑连接每个形状定位点且能较好的贴合目标区域的目标曲线,从而保证目标曲线的准确性。
在一种可能的实施方式中,该计算机设备可以基于该目标数目的插值点的位置,检测该目标数目的插值点的位置是否与该掩膜图像中目标区域重叠;当任一插值点的位置与该目标区域重叠时,该计算机设备可以将该两个形状定位点合并为一个第一目标定位点,或者,在该两个形状定位点之间增加第二目标定位点,该第一目标定位点或第二目标定位点位于该目标区域以外。该计算机设备可以采用合并形状定位点或者增加形状定位点的方式,对该形状定位点进行调整,并基于调整之后的形状定位点,由于多个形状定位点位于该目标区域以外,因此,当与目标区域重叠的插值点连接得到的曲线,通常是向目标区域的方向内凹的曲线,因此将两个形状定位点进行合并之后,该曲线会平滑连接该第一目标定位点,而不会与目标区域发生重叠。或者,在两个形状定位点之间增加第二目标定位点,且该第二目标定位点位于目标区域以外,因此,该曲线会平滑连接两个形状定位点,且在两个形状定位点之间平滑的穿过该第一目标定位点,而不会与目标区域发生重叠,从而避免了目标曲线会与目标区域重叠的问题,进一步提高了曲线拟合的准确性。
如图23所示,从该图23中可以看出,该人物周围的目标曲线与该人物的裙子区域重叠,如图24所示,为调整之前的形状定位点的分布情况,该计算机采用上述过程,对形状定位点进行调整,如图25所示,图25为调整之后的形状定位点的分布情况,该计算机设备在该裙子区域的多个形状定位点之间增加了新的形状定位点,基于调整之后的形状定位点进行曲线拟合,如图26所示为增加形状定位点之后,拟合出的目标曲线,显然,调整形状定位点之后拟合出的目标曲线,与该裙子区域不会重叠。
207、计算机设备基于该目标曲线,在该目标图像中显示目标对象的边框。
在一种可能的实施方式中,该边框的形状可以为实线,该计算机设备可以将该目标曲线作为该边框,则该计算机设备对该掩膜图像和该目标图像进行叠加,显示叠加后的目标图像和掩膜图像。在一种可能示例中,该计算机设备还可以将该目标曲线设置为目标显示样式,将目标显示样式的掩膜图像和该目标图像进行叠加,以在该目标图像中显示目标对象的目标显示样式的边框。例如,显示目标对象的红色边框,或者,显示该目标对象的星星连线的边框等。
在另一种可能的实施方式中,该边框的形状还可以为虚线,该计算机设备基于该目标曲线,对该目标曲线进行离散处理,得到该目标曲线的多个离散点,该计算机设备可以按照目标距离,将相邻之间距离不超过目标距离的离散点进行合并。该计算机设备可以每隔第一数目的离散点,将第二数目的离散点相连接,得到虚线的边框。例如,计算机设备将M个点相连,然后跳过N个点,再将M个点相连,以此类推,以得到虚线描边效果。例如,该M为3,N为3。
在一种可能的实施方式中,该边框可能会连线锯齿状,该计算机设备还可以对该边框进行平滑处理,例如,采用blur算法或alpha算法对边框进行平滑处理,当然,该计算机设备也可以采用其他算法对该边框进行抗锯齿处理,以得到更加平滑的边框,本发明实施例对此不做具体限定。
在另一种可能示例中,如果该边框为实线,该计算机设备还可以将该多个离散点相连接,得到实线的边框。图27为该目标曲线的离散点的示意图,如图27所示,该计算机设备将该目标曲线离散为位置分布均匀的多个离散点。图28为将该多个离散点相连接,所得到实线的边框。当然,该计算机设备还可以采用blur算法或alpha算法对该边框进行平滑处理。如图29所示,该计算机设备可以将该掩模图像与该目标图像叠加显示,以显示出平滑贴合于该人物区域周围的实线边框。如图30所示,图30为基于该多个离散点,间隔相连后得到的虚线的边框,如图31所示,该计算机设备可以将该掩模图像与该目标图像叠加显示,以显示出平滑贴合于该人物区域周围的实线边框。
如图32所示,图32为目标图像,该目标图像中人物区域为目标对象所在区域,该计算机设备通过上述步骤201,得到该目标图像的掩膜图像,图33为掩膜图像的示意图,然后,该计算机设备通过上述步骤202-207,得到该目标图像中人物区域的边框,图34为该目标图像中人物区域的边框示意图,显然,该边框能够平滑的贴合于该人物区域周围。
在一种可能的实施方式中,该计算机设备还可以直接采用上述步骤204得到的多边形区域,将该多边形的多边形边界作为该目标对象的边框。如图35所示,图35中所示的剪纸边类的边框,即为采用多边形边界确定该边框。另外,如图35所示,该边框的显示样式可以包括:虚线类、实线类、发光线类、钻石纹理类、星光涂鸦类、手绘涂鸦类、剪纸边类等等,各个显示样式对应的显示效果如图35所示。如图36所示,图36为图像处理应用的应用界面,该计算机设备可以在该应用界面中提供该多种显示样式选项,该计算机设备可以基于用户选择的目标显示样式,为用户显示该目标对象的边框,如图36所示,该计算机设备还可以在该应用界面中显示多个按钮,用户可以基于该多个按钮,对该图像以及图像中的人物图形进行调整。例如,“+1”按钮,用户可以点击该“+1”按钮,在该图像中再增加一个对象图形。如图37所示,计算机设备基于用户选择的黑色粗边的样式,在人物区域增加了黑色粗边的边框。
需要说明的是,本发明实施例采用C++编程语言执行上述步骤201-207的过程,因此,该计算机设备可以基于CPU平台执行上述图像处理过程,并且,由于C++编程语言的普适性,因此,本发明实施例还支持在不同操作系统上执行或移植,例如,可以在IOS平台或者Android平台上执行上述图像处理过程,从而提高了图像处理过程的适用性。如图38所示,该图38为该计算机设备执行上述步骤201-207过程的测试示意图,该图38中框出的部分为计算机设备直接按照目标扩大系数,对掩膜图像中目标区域进行扩大,得到第一区域的过程,从该图38中可以看出,该过程耗时为256ms,效率较低,因此,该计算机设备还可以基于上述步骤202的过程,先对该掩模图像进行缩小,缩小为更小尺寸的图像,对该缩小图像中的目标区域进行扩大,再将该缩小图像扩大为原掩模图像大小,由于是对更小图像中的目标区域进行扩大,该过程耗时降低至50~100ms范围,甚至能达到小于50ms,因此能够节省该目标区域扩大过程的耗时,且不影响该目标区域的扩大效果,提高了处理效率。
本发明实施例中,由于可以先在目标图像的掩膜图像中,确定目标区域的形状定位点,再基于该多个形状定位点的位置进行曲线拟合,得到目标曲线,基于该目标曲线,显示目标对象的边框,从而目标曲线可以平滑的连接每个形状定位点,基于该目标曲线显示目标对象的边框,从而提高了目标对象的边框的平滑度。
图39是本发明实施例提供的一种图像处理装置的结构示意图。参见图39,该装置包括:
确定模块3901,用于确定目标图像的掩膜图像,该掩膜图像包括目标区域,该目标区域用于指示该目标图像中目标对象所在区域;
该确定模块3901,还用于基于该目标区域的位置,确定该目标区域的多个形状定位点,该多个形状定位点用于指示该目标区域的边界位置;
该确定模块3901,还用于基于该多个形状定位点的位置进行曲线拟合,确定目标曲线,该目标曲线用于表示该多个形状定位点的位置变化趋势;
显示模块3902,用于基于该目标曲线,在该目标图像中显示该目标对象的边框。
在一种可能实现方式中,该确定模块3901,还用于对于该多个形状定位点中相邻的每两个形状定位点,基于该两个形状定位点的位置和目标函数,确定出该两个形状定位点之间的目标数目的插值点;将该两个形状定位点和该目标数目的插值点相连接,得到从一个形状定位点到另一个形状定位点的目标子曲线。
在一种可能实现方式中,该装置还包括:
检测模块,用于基于该目标数目的插值点的位置,检测该目标数目的插值点的位置是否与该目标区域重叠;
重叠处理模块,用于当任一插值点的位置与该目标区域重叠时,将该两个形状定位点合并为一个第一目标定位点,或者,在该两个形状定位点之间增加第二目标定位点,该第一目标定位点或第二目标定位点位于该目标区域以外。
在一种可能实现方式中,该确定模块3901,还用于基于该目标区域的位置,在该掩膜图像中确定包围该目标区域的多边形区域,该多边形区域包括至少一个多边形;将该的至少一个多边形的多个顶点,确定为该多个形状定位点。
在一种可能实现方式中,该确定模块3901,还用于对该掩膜图像的目标区域进行扩大,得到第一区域;基于该掩膜图像中每个像素点的像素值,提取该第一区域的多个边界点;基于该第一区域的多个边界点,获取该掩膜图像中该多个边界点对应的至少一个多边形。
在一种可能实现方式中,该确定模块3901,还用于将该掩膜图像由第一尺寸缩小为第二尺寸;在该第二尺寸的掩膜图像中,按照目标扩大系数,沿该目标区域的边界向外的方向扩大该目标区域,得到第二区域;将该掩膜图像由该第二尺寸扩大为该第一尺寸,得到该第一区域。
在一种可能实现方式中,该确定模块,还用于获取用户选中的目标距离,该目标距离是指该目标对象的边框与该目标对象所在区域的边界之间的距离;根据该目标距离,确定该目标区域的目标扩大系数;按照该目标扩大系数,对该目标区域进行扩大,得到该第一区域。
在一种可能实现方式中,该装置还包括:
删除模块,还用于当该目标对象的数目为多个时,该第一区域的数目为多个,获取每个第一区域的边界点的数量,删除多个第一区域中边界点的数量小于第一阈值的第一区域。
在一种可能实现方式中,该装置还包括:
获取模块,用于对于该多个形状定位点中相邻的每两个形状定位点,获取该两个形状定位点之间的距离;
合并模块,用于当该两个形状定位点之间的距离小于第二阈值时,将该两个形状定位点合并为一个形状定位点;
增加模块,用于当该两个形状定位点之间的距离大于第三阈值时,在该两个形状定位点之间增加形状定位点,该第三阈值大于该第二阈值。
在一种可能实现方式中,获取模块,用于当该目标区域包括直角区域时,获取该直角区域的多个形状定位点,该直角区域是指两条边界围成角度为直角的区域;当形状定位点为直角区域的形状定位点时,对于该多个形状定位点中相邻的每两个形状定位点,获取该两个形状定位点之间的距离。
在一种可能实现方式中,该目标对象的对象类型为目标对象类型;或者,该目标对象的行为状态为目标行为状态;或者,该目标对象所在图层与该目标图像中除该目标对象以外的任一对象所在图层不相同。
本发明实施例中,通过在目标图像的掩膜图像中,确定目标区域的形状定位点,再基于该多个形状定位点的位置进行曲线拟合,得到目标曲线,基于该目标曲线,显示目标对象的边框,从而目标曲线可以平滑的连接每个形状定位点,基于该目标曲线显示目标对象的边框,从而提高了目标对象的边框的平滑度。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的图像处理装置在处理图像时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像处理装置与图像处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图40是本发明实施例提供的一种终端的结构示意图。该终端4000可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端4000还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端4000包括有:处理器4001和存储器4002。
处理器4001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器4001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器4001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器4001可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器4001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器4002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器4002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器4002中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器4001所执行以实现本申请中方法实施例提供的图像处理方法。
在一些实施例中,终端4000还可选包括有:外围设备接口4003和至少一个外围设备。处理器4001、存储器4002和外围设备接口4003之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口4003相连。具体地,外围设备包括:射频电路4004、触摸显示屏4005、摄像头4006、音频电路4007、和电源4008中的至少一种。
外围设备接口4003可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器4001和存储器4002。在一些实施例中,处理器4001、存储器4002和外围设备接口4003被集成在同一芯片或电路板上;在一些其他实施例中,处理器4001、存储器4002和外围设备接口4003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路4004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路4004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路4004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路4004包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路4004可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路4004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏4005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏4005是触摸显示屏时,显示屏4005还具有采集在显示屏4005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器4001进行处理。此时,显示屏4005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏4005可以为一个,设置终端4000的前面板;在另一些实施例中,显示屏4005可以为至少两个,分别设置在终端4000的不同表面或呈折叠设计;在再一些实施例中,显示屏4005可以是柔性显示屏,设置在终端4000的弯曲表面上或折叠面上。甚至,显示屏4005还可以设置成非矩形的不规则图形,也即异形屏。显示屏4005可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件4006用于采集图像或视频。可选地,摄像头组件4006包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件4006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路4007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器4001进行处理,或者输入至射频电路4004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端4000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器4001或射频电路4004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路4007还可以包括耳机插孔。
电源4008用于为终端4000中的各个组件进行供电。电源4008可以是交流电、直流电、一次性电池或可充电电池。当电源4008包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端4000还包括有一个或多个传感器4009。该一个或多个传感器4009包括但不限于:加速度传感器4010、陀螺仪传感器4011、压力传感器4012、光学传感器4013以及接近传感器4014。
加速度传感器4010可以检测以终端4000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器4010可以用于检测重力加速度在三个坐标轴上的分量。处理器4001可以根据加速度传感器4010采集的重力加速度信号,控制触摸显示屏4005以横向视图或纵向视图进行用户界面的显示。加速度传感器4010还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器4011可以检测终端4000的机体方向及转动角度,陀螺仪传感器4011可以与加速度传感器4010协同采集用户对终端4000的3D动作。处理器4001根据陀螺仪传感器4011采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器4012可以设置在终端4000的侧边框和/或触摸显示屏4005的下层。当压力传感器4012设置在终端4000的侧边框时,可以检测用户对终端4000的握持信号,由处理器4001根据压力传感器4012采集的握持信号进行左右手识别或快捷操作。当压力传感器4012设置在触摸显示屏4005的下层时,由处理器4001根据用户对触摸显示屏4005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器4013用于采集环境光强度。在一个实施例中,处理器4001可以根据光学传感器4013采集的环境光强度,控制触摸显示屏4005的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏4005的显示亮度;当环境光强度较低时,调低触摸显示屏4005的显示亮度。在另一个实施例中,处理器4001还可以根据光学传感器4013采集的环境光强度,动态调整摄像头组件4006的拍摄参数。
接近传感器4014,也称距离传感器,通常设置在终端4000的前面板。接近传感器4014用于采集用户与终端4000的正面之间的距离。在一个实施例中,当接近传感器4014检测到用户与终端4000的正面之间的距离逐渐变小时,由处理器4001控制触摸显示屏4005从亮屏状态切换为息屏状态;当接近传感器4014检测到用户与终端4000的正面之间的距离逐渐变大时,由处理器4001控制触摸显示屏4005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图40中示出的结构并不构成对终端4000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图41是本发明实施例提供的一种服务器的结构示意图,该服务器4100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)4101和一个或一个以上的存储器4102,其中,该存储器4102中存储有至少一条指令,该至少一条指令由该处理器4101加载并执行以实现上述各个方法实施例提供的图像处理方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由计算机设备中的处理器执行以完成上述实施例中的图像处理方法。例如,该计算机可读存储介质可以是ROM(Read-Only Memory,只读存储器)、RAM(random accessmemory,随机存取存储器)、CD-ROM(Compact Disc Read-Only Memory,只读光盘)、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (20)

1.一种图像处理方法,其特征在于,所述方法包括:
确定目标图像的掩膜图像,所述掩膜图像包括目标区域,所述目标区域用于指示所述目标图像中目标对象所在区域;
对所述掩膜图像的目标区域进行扩大,得到第一区域;
基于所述掩膜图像中每个像素点的像素值,提取所述第一区域的多个边界点;
基于所述第一区域的多个边界点,获取所述掩膜图像中所述多个边界点对应的至少一个多边形;
将所述的至少一个多边形的多个顶点,确定为多个形状定位点,所述多个形状定位点用于指示所述目标区域的边界位置;
基于所述多个形状定位点的位置进行曲线拟合,确定目标曲线,所述目标曲线用于表示所述多个形状定位点的位置变化趋势;
基于所述目标曲线,在所述目标图像中显示所述目标对象的边框。
2.根据权利要求1所述的方法,其特征在于,所述基于所述多个形状定位点的位置进行曲线拟合,确定目标曲线包括:
对于所述多个形状定位点中相邻的每两个形状定位点,基于所述两个形状定位点的位置和目标函数,确定出所述两个形状定位点之间的目标数目的插值点;
将所述两个形状定位点和所述目标数目的插值点相连接,得到从一个形状定位点到另一个形状定位点的目标子曲线。
3.根据权利要求2所述的方法,其特征在于,所述基于所述两个形状定位点的位置和目标函数,确定出所述两个形状定位点之间的目标数目的插值点之后,所述方法还包括:
基于所述目标数目的插值点的位置,检测所述目标数目的插值点的位置是否与所述目标区域重叠;
当任一插值点的位置与所述目标区域重叠时,将所述两个形状定位点合并为一个第一目标定位点,或者,在所述两个形状定位点之间增加第二目标定位点,所述第一目标定位点或第二目标定位点位于所述目标区域以外。
4.根据权利要求1所述的方法,其特征在于,所述对所述掩膜图像的目标区域进行扩大,得到第一区域包括:
将所述掩膜图像由第一尺寸缩小为第二尺寸;
在所述第二尺寸的掩膜图像中,按照目标扩大系数,沿所述目标区域的边界向外的方向扩大所述目标区域,得到第二区域;
将所述掩膜图像由所述第二尺寸扩大为所述第一尺寸,得到所述第一区域。
5.根据权利要求1所述的方法,其特征在于,所述对所述掩膜图像的目标区域进行扩大,得到第一区域包括:
获取用户选中的目标距离,所述目标距离是指所述目标对象的边框与所述目标对象所在区域的边界之间的距离;
根据所述目标距离,确定所述目标区域的目标扩大系数;
按照所述目标扩大系数,对所述目标区域进行扩大,得到所述第一区域。
6.根据权利要求1所述的方法,其特征在于,所述基于所述掩膜图像中每个像素点的像素值,提取所述第一区域的多个边界点之后,所述方法还包括:
当所述目标对象的数目为多个时,所述第一区域的数目为多个,获取每个第一区域的边界点的数量,删除多个第一区域中边界点的数量小于第一阈值的第一区域。
7.根据权利要求1所述的方法,其特征在于,所述将所述的至少一个多边形的多个顶点,确定为多个形状定位点之前,所述方法还包括:
对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离;
当所述两个形状定位点之间的距离小于第二阈值时,将所述两个形状定位点合并为一个形状定位点;
当所述两个形状定位点之间的距离大于第三阈值时,在所述两个形状定位点之间增加形状定位点,所述第三阈值大于所述第二阈值。
8.根据权利要求7所述的方法,其特征在于,所述对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离包括:
当所述目标区域包括直角区域时,获取所述直角区域的多个形状定位点,所述直角区域是指两条边界围成角度为直角的区域;
当形状定位点为直角区域的形状定位点时,执行对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离的步骤。
9.根据权利要求1所述的方法,其特征在于,所述目标对象的对象类型为目标对象类型;或者,所述目标对象的行为状态为目标行为状态;或者,所述目标对象所在图层与所述目标图像中除所述目标对象以外的任一对象所在图层不相同。
10.一种图像处理装置,其特征在于,所述装置包括:
确定模块,用于确定目标图像的掩膜图像,所述掩膜图像包括目标区域,所述目标区域用于指示所述目标图像中目标对象所在区域;
所述确定模块,还用于对所述掩膜图像的目标区域进行扩大,得到第一区域;基于所述掩膜图像中每个像素点的像素值,提取所述第一区域的多个边界点;基于所述第一区域的多个边界点,获取所述掩膜图像中所述多个边界点对应的至少一个多边形;将所述的至少一个多边形的多个顶点,确定为多个形状定位点,所述多个形状定位点用于指示所述目标区域的边界位置;
所述确定模块,还用于基于所述多个形状定位点的位置进行曲线拟合,确定目标曲线,所述目标曲线用于表示所述多个形状定位点的位置变化趋势;
显示模块,用于基于所述目标曲线,在所述目标图像中显示所述目标对象的边框。
11.根据权利要求10所述的装置,其特征在于,
所述确定模块,还用于对于所述多个形状定位点中相邻的每两个形状定位点,基于所述两个形状定位点的位置和目标函数,确定出所述两个形状定位点之间的目标数目的插值点;将所述两个形状定位点和所述目标数目的插值点相连接,得到从一个形状定位点到另一个形状定位点的目标子曲线。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
检测模块,用于基于所述目标数目的插值点的位置,检测所述目标数目的插值点的位置是否与所述目标区域重叠;
重叠处理模块,用于当任一插值点的位置与所述目标区域重叠时,将所述两个形状定位点合并为一个第一目标定位点,或者,在所述两个形状定位点之间增加第二目标定位点,所述第一目标定位点或第二目标定位点位于所述目标区域以外。
13.根据权利要求10所述的装置,其特征在于,
所述确定模块,还用于将所述掩膜图像由第一尺寸缩小为第二尺寸;在所述第二尺寸的掩膜图像中,按照目标扩大系数,沿所述目标区域的边界向外的方向扩大所述目标区域,得到第二区域;将所述掩膜图像由所述第二尺寸扩大为所述第一尺寸,得到所述第一区域。
14.根据权利要求10所述的装置,其特征在于,
所述确定模块,还用于获取用户选中的目标距离,所述目标距离是指所述目标对象的边框与所述目标对象所在区域的边界之间的距离;根据所述目标距离,确定所述目标区域的目标扩大系数;按照所述目标扩大系数,对所述目标区域进行扩大,得到所述第一区域。
15.根据权利要求10所述的装置,其特征在于,所述装置还包括:
删除模块,还用于当所述目标对象的数目为多个时,所述第一区域的数目为多个,获取每个第一区域的边界点的数量,删除多个第一区域中边界点的数量小于第一阈值的第一区域。
16.根据权利要求10所述的装置,其特征在于,所述装置还包括:
获取模块,用于对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离;
合并模块,用于当所述两个形状定位点之间的距离小于第二阈值时,将所述两个形状定位点合并为一个形状定位点;
增加模块,用于当所述两个形状定位点之间的距离大于第三阈值时,在所述两个形状定位点之间增加形状定位点,所述第三阈值大于所述第二阈值。
17.根据权利要求16所述的装置,其特征在于,所述获取模块,用于当所述目标区域包括直角区域时,获取所述直角区域的多个形状定位点,所述直角区域是指两条边界围成角度为直角的区域;当形状定位点为直角区域的形状定位点时,对于所述多个形状定位点中相邻的每两个形状定位点,获取所述两个形状定位点之间的距离。
18.根据权利要求10所述的装置,其特征在于,所述目标对象的对象类型为目标对象类型;或者,所述目标对象的行为状态为目标行为状态;或者,所述目标对象所在图层与所述目标图像中除所述目标对象以外的任一对象所在图层不相同。
19.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条指令,所述至少一条指令由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求9任一项所述的图像处理方法所执行的操作。
20.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如权利要求1至权利要求9任一项所述的图像处理方法所执行的操作。
CN201910447365.1A 2019-05-27 2019-05-27 图像处理方法、装置、计算机设备及存储介质 Active CN112001851B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910447365.1A CN112001851B (zh) 2019-05-27 2019-05-27 图像处理方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910447365.1A CN112001851B (zh) 2019-05-27 2019-05-27 图像处理方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112001851A CN112001851A (zh) 2020-11-27
CN112001851B true CN112001851B (zh) 2023-08-04

Family

ID=73461277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910447365.1A Active CN112001851B (zh) 2019-05-27 2019-05-27 图像处理方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112001851B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112884830B (zh) * 2021-01-21 2024-03-29 浙江大华技术股份有限公司 一种目标边框确定方法及装置
CN113283418B (zh) * 2021-04-15 2024-04-09 南京大学 一种文本检测攻击方法
CN113420753B (zh) * 2021-07-13 2024-01-05 杭州海康威视数字技术股份有限公司 目标对象框选区域的生成方法及装置
CN114332140B (zh) * 2022-03-16 2022-07-12 北京文安智能技术股份有限公司 一种交通道路场景图像的处理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236784A (zh) * 2010-05-07 2011-11-09 株式会社理光 屏幕区域检测方法及系统
CN105046684A (zh) * 2015-06-15 2015-11-11 华中科技大学 一种基于多边形广义霍夫变换的图像匹配方法
CN105258681A (zh) * 2015-10-08 2016-01-20 凌云光技术集团有限责任公司 一种用于曲线边缘特征定位的控件及其定位方法
CN106127819A (zh) * 2016-06-30 2016-11-16 上海联影医疗科技有限公司 医学图像中提取血管中心线的方法及其装置
CN106991683A (zh) * 2017-03-27 2017-07-28 西安电子科技大学 基于中介真值程度度量的局部主动轮廓图像分割方法
CN107492068A (zh) * 2017-09-28 2017-12-19 北京奇虎科技有限公司 视频对象变换实时处理方法、装置及计算设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8885977B2 (en) * 2009-04-30 2014-11-11 Apple Inc. Automatically extending a boundary for an image to fully divide the image
JP5953842B2 (ja) * 2012-03-14 2016-07-20 オムロン株式会社 画像検査方法および検査領域設定方法
US9317893B2 (en) * 2013-03-26 2016-04-19 Sharp Laboratories Of America, Inc. Methods and systems for correcting a document image

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236784A (zh) * 2010-05-07 2011-11-09 株式会社理光 屏幕区域检测方法及系统
CN105046684A (zh) * 2015-06-15 2015-11-11 华中科技大学 一种基于多边形广义霍夫变换的图像匹配方法
CN105258681A (zh) * 2015-10-08 2016-01-20 凌云光技术集团有限责任公司 一种用于曲线边缘特征定位的控件及其定位方法
CN106127819A (zh) * 2016-06-30 2016-11-16 上海联影医疗科技有限公司 医学图像中提取血管中心线的方法及其装置
CN106991683A (zh) * 2017-03-27 2017-07-28 西安电子科技大学 基于中介真值程度度量的局部主动轮廓图像分割方法
CN107492068A (zh) * 2017-09-28 2017-12-19 北京奇虎科技有限公司 视频对象变换实时处理方法、装置及计算设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于知识规则的数字扫描图像目标边界提取;谭衢霖;Aldred A;胡吉平;;应用基础与工程科学学报(03);全文 *

Also Published As

Publication number Publication date
CN112001851A (zh) 2020-11-27

Similar Documents

Publication Publication Date Title
CN112001851B (zh) 图像处理方法、装置、计算机设备及存储介质
US11205282B2 (en) Relocalization method and apparatus in camera pose tracking process and storage medium
US10990804B2 (en) Face image processing method and device, and storage medium
CN110929651B (zh) 图像处理方法、装置、电子设备及存储介质
US11436779B2 (en) Image processing method, electronic device, and storage medium
CN110097576B (zh) 图像特征点的运动信息确定方法、任务执行方法和设备
CN111028144B (zh) 视频换脸方法及装置、存储介质
CN110033503B (zh) 动画显示方法、装置、计算机设备及存储介质
CN109325924B (zh) 图像处理方法、装置、终端及存储介质
CN109947338B (zh) 图像切换显示方法、装置、电子设备及存储介质
CN111723803B (zh) 图像处理方法、装置、设备及存储介质
CN110941375B (zh) 对图像进行局部放大的方法、装置及存储介质
CN112581358B (zh) 图像处理模型的训练方法、图像处理方法及装置
CN112565806B (zh) 虚拟礼物赠送方法、装置、计算机设备及介质
CN113706678A (zh) 获取虚拟形象的方法、装置、设备及计算机可读存储介质
CN111104893A (zh) 目标检测方法、装置、计算机设备及存储介质
CN110619614B (zh) 图像处理的方法、装置、计算机设备以及存储介质
CN112135191A (zh) 视频编辑方法、装置、终端及存储介质
CN111105474B (zh) 字体绘制方法、装置、计算机设备及计算机可读存储介质
CN112381729B (zh) 图像处理方法、装置、终端及存储介质
CN109842722B (zh) 一种图像处理方法及终端设备
CN112950535B (zh) 视频处理方法、装置、电子设备及存储介质
CN110335224B (zh) 图像处理方法、装置、计算机设备及存储介质
CN112399080A (zh) 视频处理方法、装置、终端及计算机可读存储介质
CN112184802A (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
GR01 Patent grant
GR01 Patent grant