CN116894849A - 图像分割方法和装置 - Google Patents
图像分割方法和装置 Download PDFInfo
- Publication number
- CN116894849A CN116894849A CN202310913325.8A CN202310913325A CN116894849A CN 116894849 A CN116894849 A CN 116894849A CN 202310913325 A CN202310913325 A CN 202310913325A CN 116894849 A CN116894849 A CN 116894849A
- Authority
- CN
- China
- Prior art keywords
- target
- segmentation mask
- boundary
- acquiring
- contour
- 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
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000003709 image segmentation Methods 0.000 title claims abstract description 22
- 230000011218 segmentation Effects 0.000 claims abstract description 217
- 238000004364 calculation method Methods 0.000 claims abstract description 48
- 238000004422 calculation algorithm Methods 0.000 claims description 80
- 238000001514 detection method Methods 0.000 claims description 28
- 230000007797 corrosion Effects 0.000 claims description 23
- 238000005260 corrosion Methods 0.000 claims description 23
- 238000000605 extraction Methods 0.000 claims description 16
- 230000000694 effects Effects 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000003708 edge detection Methods 0.000 description 10
- 238000003064 k means clustering Methods 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000005530 etching Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 239000000969 carrier Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000002513 implantation Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000003826 tablet Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- LUTSRLYCMSCGCS-BWOMAWGNSA-N [(3s,8r,9s,10r,13s)-10,13-dimethyl-17-oxo-1,2,3,4,7,8,9,11,12,16-decahydrocyclopenta[a]phenanthren-3-yl] acetate Chemical compound C([C@@H]12)C[C@]3(C)C(=O)CC=C3[C@@H]1CC=C1[C@]2(C)CC[C@H](OC(=O)C)C1 LUTSRLYCMSCGCS-BWOMAWGNSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003707 image sharpening Methods 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/12—Edge-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/13—Edge detection
-
- 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/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例了提供一种图像分割方法,该图像分割方法包括:获取目标图像中的第一分割掩码。其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码。根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界。根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合。根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合。根据所述目标轮廓顶点集合,获取修正后的目标区域。本申请实施例的技术方案可以使得目标区域的形状轮廓更加准确,提升稳定性和鲁棒性,及提升平面广告的投放效果。
Description
技术领域
本申请实施例涉及图像处理技术领域,尤其涉及一种图像分割方法、装置、计算机设备、计算机可读存储介质。
背景技术
随着视频的流行,平面广告的投放也有了新的形式,即平面广告可以植入到视频中。
在视频中投放平面广告时,精确地提取目标区域是决定平面广告投放后可以与环境贴合的重要前提。提取目标区域通常是采用语义分割技术,然而通过语义分割技术预测的目标区域分割掩码边缘精确度较低,使得平面广告在投放时的效果达不到预期。
需要说明的是,上述内容并不必然是现有技术,也不用于限制本申请的专利保护范围。
发明内容
本申请实施例提供一种图像分割方法、装置、计算机设备、计算机可读存储介质,以解决或缓解上面提出的一项或更多项技术问题。
本申请实施例的一个方面提供了一种图像分割方法,所述方法包括:
获取目标图像中的第一分割掩码;其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码;
根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界;
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合;
根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合;
根据所述目标轮廓顶点集合,获取修正后的目标区域。
可选地,根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界,包括:
根据第一分割掩码,获取所述分割掩码的第一边界集合;
根据所述第一边界集合,获取初始轮廓顶点;
在所述初始轮廓顶点与目标区域形状先验信息相符合的情况下,将所述第一掩码用于边界计算。
可选地,根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界,还包括:
在所述初始轮廓顶点与所述目标区域形状先验信息不相符的情况下,执行以下操作:
根据所述第一边界集合进行边界补齐,以更新所述第一分割掩码;
其中,更新后的第一分割掩码用于边界计算。
可选地,所述根据所述第一分割掩码以及目标图像,获取所述目标区域的边界,包括:
根据所述第一分割掩码,获取第二分割掩码,所述第二分割掩码为目标区域边界的分割掩码;
根据所述目标图像,获取与所述目标图像对应的第一梯度图;
根据所述第一梯度图及所述第二分割掩码,获取第二梯度图,所述第二梯度图为目标区域边界的梯度图;
根据所述第二梯度图,获取所述目标区域的边界。
可选地,所述根据所述第一分割掩码,获取第二分割掩码,包括:
根据膨胀腐蚀算法,对所述第一分割掩码进行膨胀和腐蚀操作,以得到膨胀分割掩码和腐蚀分割掩码;
根据所述膨胀分割掩码和所述腐蚀分割掩码,获取所述第二分割掩码。
可选地,所述根据所述目标图像,获取与所述目标图像对应的第一梯度图,包括:
根据所述目标图像,获取与所述目标图像对应的第一灰度图;
对所述第一灰度图进行图像增强操作,以得到第二灰度图;
根据所述第二灰度图,获取所述第一梯度图。
可选地,所述根据所述第二灰度图,获取所述第一梯度图,包括:
获取所述第一梯度图在X方向上的X方向梯度图;
获取所述第一梯度图在Y方向上的Y方向梯度图;
通过对所述X方向梯度图以及所述Y方向梯度图进行合并融合,获取所述第一梯度图。
可选地,所述一个或多个预设顶点计算方式包括直线检测算法;
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合,包括:
通过直线检测算法对所述边界进行直线检测,以获取候选直线集合;
根据目标区域形状先验信息,获取所述目标区域的边的数量;
根据所述边的数量,对所述候选直线集合中的候选直线进行聚类,以得到多个目标直线集合;其中,所述边的数量与聚类数相同,每个聚类对应一个目标直线集合;
根据所述多个目标直线集合,获取多个目标直线,每个目标直线集合对应一个目标直线;
根据所述多个目标直线,获取所述第一轮廓顶点集合。
可选地,所述一个或多个预设顶点计算方式包括轮廓提取算法;
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合,包括:
对所述边界进行轮廓提取,以获取与所述边界对应的外边界;
对所述外边界进行多边形拟合,以获取所述第二轮廓顶点集合。
可选地,根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合,包括:
在所述第二轮廓顶点集合与所述目标区域形状先验信息相符的情况下,执行以下操作:
设置所述第一轮廓顶点集合的权重为第一权重,设置所述第二轮廓顶点集合的权重为第二权重;
通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
可选地,还包括:
在所述第一顶点集合与所述形状先验信息不相符的情况下,执行以下操作:
设置所述第一轮廓顶点集合的权重为第三权重,设置所述第二轮廓顶点集合的权重为第四权重,其中,所述第三权重大于所述第四权重;
通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
本申请实施例的另一个方面提供了一种图像分割装置,所述装置包括:
第一获取模块,用于获取目标图像中的第一分割掩码;其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码;
第二获取模块,用于根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界;
第三获取模块,用于根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合;
第四获取模块,用于根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合;
第五获取模块,用于根据所述目标轮廓顶点集合,获取修正后的目标区域。
本申请实施例的另一个方面提供了一种计算机设备,包括:
至少一个处理器;及
与所述至少一个处理器通信连接的存储器;
其中:所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。
本申请实施例的另一个方面提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机指令,所述计算机指令被处理器执行时实现如上所述的方法。
本申请实施例采用上述技术方案可以包括如下优势:
对目标区域的第一分割掩码进行边界提取,继而根据目标区域的边界以及相应的顶点计算方式,获取目标轮廓顶点集合,进而对目标区域的形状轮廓进行修正,从而使得目标区域的形状轮廓更加准确,提升稳定性和鲁棒性,及提升平面广告的投放效果。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
图1示意性示出了在视频中插入平面广告的流程图;
图2A示意性示出了分割掩码边缘粗糙的目标区域;
图2B示意性示出了分割掩码边缘凹陷的目标区域;
图2C示意性示出了分割掩码边角缺失的目标区域;
图3示意性示出了根据本申请实施例一的图像分割方法的运行环境图;
图4示意性示出了根据本申请实施例一的图像分割方法的流程图;
图5示意性示出了图4中步骤S402的子步骤流程图;
图6示意性示出了图4中步骤S402的子步骤流程图;
图7示意性示出了图4中步骤S402的子步骤流程图;
图8示意性示出了图7中步骤S700的子步骤流程图;
图9示意性示出了图7中步骤S702的子步骤流程图;
图10示意性示出了图9中步骤S904的子步骤流程图;
图11示意性示出了图4中步骤S404的子步骤流程图;
图12示意性示出了图4中步骤S404的子步骤流程图;
图13示意性示出了图4中步骤S406的子步骤流程图;
图14示意性示出了图4中步骤S406的子步骤流程图;
图15A和图15B示意性示出了本申请实施例的图像分割方法的系统架构图;
图16示意性示出了一组凹洞补全操作过程中的目标图像的状态变化图;
图17示意性示出了一组根据更新后的第一分割掩码获取边界的应用示例示意图;
图18示意性示出了一组运用直线检测和Kmeans算法获取边界直线的应用示例示意图;
图19示意性示出了根据本申请实施例二的图像分割装置的框图;及
图20示意性示出了根据本申请实施例三中的计算机设备的硬件架构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
在本申请的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本申请及区别每一步骤,因此不能理解为对本申请的限制。
首先,提供本申请涉及的术语解释:
语义分割:是将标签或类别与图片的每个像素关联的一种深度学习算法。语义分割算法可以用来识别像素集合。
分割掩码:语义分割算法的预测结果,标定了目标物体在图像中的构成像素集合。分割掩码是一个二进制图像(像素值为0或1)。
鲁棒性(Robustness):是指系统面对不确定性和突发事件时,能够保持良好的稳定性和正确性。鲁棒性指在输入数据出现错误或意外的情况下,系统仍能够正确执行任务的能力。
多边形拟合算法:图像处理中一种基于二值图像提取图像中最小多边形包围物体的算法。
透视变换:透视变换是一种基于三点共线以及透视旋转定律,使承影面(透视面)绕迹线(透视轴)旋转某一角度,并保持投影几何图形在承影面上不变的变换。透视变换本质是将图像从一个几何平面投影到另一个几何平面。
轮廓提取算法:图像处理中一种基于二值图像提取闭合轮廓的算法。
凸包(Convex Hull):是一种将最外层的点连接起来构成的凸多边型,它能包含点集中所有的点。
凸包求解算法:是一种基于凸包的多边形拟合算法,凸包求解算法通过求解点集的凸包来确定多边形的位置和形状。
膨胀和腐蚀算法:基于二值图像的算法。其中,膨胀过程:将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程,膨胀过程可以用来填补物体中的空洞。腐蚀过程:消除边界点,使边界向内部收缩的过程。腐蚀过程可以用来消除小且无意义的物体。
图像梯度:是指图像某像素在X和Y两个方向上的变化率(与相邻像素比较),图像梯度是一个二维向量。
索伯算子(Sobel算子):图像处理中用于获得图像的一阶梯度。Sobel算子,可以用于边缘检测,是离散差分算子,用来运算图像梯度函数的灰度近似值。
边缘检测(Edge detection):图形图像处理、计算机视觉和机器视觉中的一个检测工具,用于特征提取和特征检测,旨在检测一张数字图像中有明显变化的边缘或者不连续的区域。边缘检测的目的是标识数字图像中亮度变化明显的点。
直线检测算法:图像处理中用以检测规则直线的算法。
K-means聚类算法:基于欧式距离的数据划分算法,能将给定数据划分成若干个类别。
图像的亮度:是指图像像素的大小,像素值越大,图像在该像素点越明亮。对于灰度图像来说,每个像素点只有1个分量,且在0~255之间,0表示黑色,最暗,1表示白色,最亮。
图像的对比度:是指一幅图像灰度反差的大小,也即最大亮度与最小亮度之比。
彩色图像(Color Image):每幅图像是由三幅灰度图像组合而成,依次表示红绿蓝三通道的灰度值,即RGB。
二值图像(Binary Image):图像中每个像素的灰度值仅可取0或1,二值图像可理解为黑白图像。
灰度图像(Gray Scale Image):图像中每个像素可以由0-255的灰度值表示。
其次,为方便本领域技术人员理解本申请实施例提供的技术方案,下面对相关技术进行说明:
随着VR/AR应用的兴起,以及视频这一信息载体的流行,平面广告的投放也有了新的形式,即通过AI技术植入到VR/AR或者视频的内容中。以在视频投放平面广告为例,投放广告的流程可以分为“提取目标区域,对广告素材进行畸变,用素材替换目标区域内容”三个步骤。其中精确地提取目标区域是决定广告投放后与环境贴合的重要前提。虽然平面广告的放置载体通常为墙面、广告牌、显示屏等矩形状物体,但是基于透视变换的原理可知,在不同角度、位置观察时,这些载体并不能一直保持矩形的形状(如图1中间的图所示,白色部分并非矩形形状)。因此为了能够有效地提取目标区域,需要采用语义分割技术获取目标载体的分割掩码,之后用轮廓提取等图像处理技术获取准确的顶点和边界。但是,通过语义分割技术预测的分割掩码,边缘精确度较低,且应用在视频上表现并不稳定,经常会出现“凹陷”、“残缺”等错误情况,具体如下:①当分割掩码边缘较为粗糙时(如图2A所示),难以获得精确的目标区域顶点。②当分割掩码在边界中央凹陷时(如图2B所示),对分割掩码进行多边形拟合的过程中,会将原本为四边形的目标区域错误估计为凹多边形。③当分割掩码在顶点附近残缺时(如图2C所示),对分割掩码进行多边形拟合的过程中,会将目标区域错误估计为凸多边形。
综上所述,本发明人了解到的提取目标区域的方案,由于过度依赖分割掩码的精度,在遇到分割掩码不够准确的情况时(如出现凹陷、缺角等),极易错误估计目标区域的形状,使拟合出来的目标区域不够准确,进而影响到平面广告的投放效果。可知,上述提取目标区域的方案不精确,也不具备足够的稳定性和鲁棒性。
为此,本申请实施例提供了一种图像分割技术方案。在该技术方案中,对目标区域的第一分割掩码进行边界提取,继而根据目标区域的边界以及相应的顶点计算方式,获取目标轮廓顶点集合,进而对目标区域的形状轮廓进行修正,从而使得目标区域的形状轮廓更加准确,提升稳定性和鲁棒性,及提升平面广告的投放效果。本技术方案的优势:(1)当分割掩码基本规则(无凹洞、缺角等情况)但是边缘较为粗糙时,可以对分割掩码进行精调以得到更为精确的区域形状轮廓。(2)当分割掩码出现凹陷、缺失的情况时,可以自适应处理,从而得到修正后的正确区域形状轮廓。(3)对原分割掩码的依赖度极低,具有极高的鲁棒性和稳定性。具体见后文。
最后,为了方便理解,下面提供一个示例性运行环境。
图3示意性示出了根据本申请实施例所述方法的环境应用示意图。
计算机设备10000包括各种类型的电子设备,例如便携式手持设备、通用计算机(诸如个人计算机和膝上型计算机)、工作站计算机、智能屏设备、自助服务终端设备、服务机器人、游戏系统、瘦客户端、单个服务器或服务器集群等。这些计算机设备可以运行各种类型和版本的软件应用程序和操作系统,例如MICROSOFT Windows、APPLE iOS、类UNIX操作系统、Linux或类Li nux操作系统(例如GOOGLE Chrome OS);或包括各种移动操作系统,例如MICROSOFT Windows、Mobile OS、iOS、Windows Phone、Android。便携式手持设备可以包括蜂窝电话、智能电话、平板电脑等。客户端设备能够执行各种不同的应用程序,例如各种与Internet相关的应用程序、通信应用程序(例如电子邮件应用程序)、短消息服务(SMS)应用程序,并且可以使用各种通信协议。
计算机设备10000可以包括输入/输出接口。输入接口可以包括触摸板、触摸屏、鼠标、键盘、或其他感应元素。输入接口可以被配置为接收用户指令,所述用户指令可以使计算机设备10000执行各类操作,例如获取目标区域的边界/轮廓顶点集合,提取目标区域等。输出接口用于向用户输出信息,如视频或图像信息。
基于上文描述的运行环境,计算机设备10000还可以安装有一个或多个应用程序,如广告牌植入程序。该广告牌植入程序用于将广告牌植入到视频或图像中。
下面以计算机设备10000为执行主体,通过多个实施例介绍本申请的技术方案。须知,这些实施例可以由多种不同的形式来实施,并且不应当被解释为只限于这里所阐述的实施例。
实施例一
图4示意性示出了根据本申请实施例一的图像分割方法的流程图。
如图4所示,该图像分割方法可以包括步骤S400~S408,其中:
步骤S400,获取目标图像中的第一分割掩码。其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码。
步骤S402,根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界。
步骤S404,根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合。
步骤S406,根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合。
步骤S408,根据所述目标轮廓顶点集合,获取修正后的目标区域。
在本申请实施例的技术方案中,从目标图像提取目标区域的第一分割掩码之后,对目标区域的第一分割掩码进行边界提取,继而根据目标区域的边界以及相应的顶点计算方式,获取目标轮廓顶点集合,进而对目标区域的形状轮廓进行修正,从而使得目标区域的形状轮廓更加准确,提升稳定性和鲁棒性,及提升平面广告的投放效果。具体地,本申请实施例的技术方案可以根据目标区域轮廓顶点修正目标区域的形状轮廓,使得在第一分割掩码精确度较差的情况下,也可以准确地获得目标区域形状轮廓,使得本申请技术方案具备足够的稳定性和鲁棒性。
以下结合图4,对步骤S400~S408中各个步骤以及可选的其他步骤进行详细阐述。
步骤S400,获取目标图像中的第一分割掩码。其中,所述第一分割掩码Mori为所述目标图像中目标区域的分割掩码。
所述目标图像可以为视频中的一个或者多个视频帧图像。
所述目标区域可以是视频中墙面、广告牌、显示屏等矩形状物体,所述目标区域也可以为其他多边形物体,在此不做限定。
所述第一分割掩码是目标区域的构成像素集合。在一些实施例中,可以运用语义分割算法(如FCNN(全连接卷积神经网络)、DeepLab v3(包含膨胀卷积的语义分割网络))获取目标区域的分割掩码。
步骤S402,根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界。
所述目标区域的边界可以通过多种方式得到。
例如,可以根据区域边界跟踪法和目标邻域点边界跟踪法等方法获取所述目标区域的边界。以区域边界跟踪法为例,具体步骤为:(1)确定边界的起始搜索点。(2)确定合适边界判别准则和搜索准则,判别准则用于判断一个点是不是边界点,搜索准则用于确定如何搜索下一个边缘点。(3)从目标区域的起始搜索点出发,然后按照相应准则,搜索下一个边界点,直到搜索点与初始点重合。
然而,第一分割掩码可能会出现凹陷以及缺角等情况,基于上述方式直接获取的边界可能不准确。具体地:(1)当第一分割掩码在边界有凹陷等时,在对第一分割掩码进行多边形拟合的过程中,会将多边形的目标区域错误估计为凹多边形,从而使得初始轮廓顶点出现错误,即与实际的目标区域不符;(2)当第一分割掩码在边界缺角时,在对第一分割掩码进行多边形拟合的过程中,会将多边形的目标区域错误估计为凸多边形,从而使得初始轮廓顶点出现错误,即与实际的目标区域不符。也就是说,第一分割掩码的凹陷以及缺角等情况会使得到的边界偏差较大,如将原本为四边形的目标区域错误拟合为凸多边形。为了缓解上述缺陷,提供以下可选的实施例。
在可选的实施例中,如图5所示,所述步骤S402可以包括:
步骤S500,根据第一分割掩码,获取所述分割掩码的第一边界集合。
步骤S502,根据所述第一边界集合,获取初始轮廓顶点。
步骤S504,在所述初始轮廓顶点与目标区域形状先验信息相符合的情况下,将所述第一掩码用于边界计算。
所述目标区域形状先验信息可以为目标区域的顶点数量。在一些实施例中,可以通过判断所述初始轮廓顶点的数量与目标区域形状先验信息是否相符(相同),进而来确定是否对第一分割掩码进行更新。在判定初始轮廓顶点的数量与目标区域形状先验信息相符时,则说明第一分割掩码没有上述缺陷,因此可以直接将所述第一分割掩码用于边界计算。这种判断流程,可以尽量保障用于边界计算的数据是有效的,提高边界计算的准确性,从而有效地保障目标区域分割的准确性。
在一些实施例中,所述第一边界集合可以通过不同的方式得到,如果通过轮廓提取算法对第一分割掩码进行边界提取操作,从而获得所述第一边界集合。所述轮廓提取算法的具体过程如下:(1)如果目标区域中目标像素为黑,且与它相邻的8个像素点都为黑,则将该目标像素点删除(置白);(2)遍历边界的每一个像素,以得到新的目标区域。在另一些实施例中,也可以通过其他算法得到,如区域边界跟踪法。
在一些实施例中,可以运用多边形拟合算法对第一边界集合进行顶点提取操作,从而获得目标区域的初始轮廓顶点。
在本实施例中,通过判断目标区域的第一分割掩码及目标区域形状先验信息是否相符,从而快速地判断第一分割掩码的完整性,即判断第一分割掩码是否可能存在凹洞和缺角等。当第一分割掩码和目标区域形状先验信息相符时,表明第一分割掩可能并不存在凹洞或者缺角。因此,可以直接将第一掩码用于边界计算,无须进行边界补全操作。这种判断流程,可以尽量保障用于边界计算的数据是有效的,提高边界计算的准确性,从而有效地保障目标区域分割的准确性。
在可选的实施例中,如图6所示,所述步骤S402还可以包括:
步骤S600,在所述初始轮廓顶点与所述目标区域形状先验信息不相符的情况下,执行以下操作:根据所述第一边界集合进行边界补齐,以更新所述第一分割掩码;其中,更新后的第一分割掩码用于边界计算。
所述更新后的第一分割掩码Mfill是补全凹洞后的分割掩码。
在一些实施例中,可以通过判断初始轮廓顶点的数量与目标区域形状先验信息(顶点数量)是否相符,来确定是否对第一分割掩码进行更新。在判断初始轮廓顶点的数量与目标区域形状先验信息(顶点数量)不相符时,可以根据第一边界集合对第一分割掩码进行边界补齐,进而将更新后的第一分割掩码用于边界计算。
在一些实施例中,可以采用凸包求解算法对第一边界集合进行边界补齐,以获得第二边界集合,所述第二边界集合为补全凹洞后的第一边界集合。即可以通过凸包求解算法对第一边界集合进行补齐操作。其中,所述凸包求解算法可以包括:Jarvis March(步进)算法、Graham(扫描)算法和安德鲁(Andre w)等。
在示例性应用中,如果初始轮廓顶点与目标区域形状先验信息不相符,则表明第一分割掩码可能存在凹洞和缺角情况(如图16中左侧图所示)。此时,需要对第一分割掩码进行补全操作,补全边界后的第一分割掩码如图16中右侧图所示。本申请实施例的技术方案通过对第一分割掩码进行凹洞检测等操作,判断第一分割掩码的完整性。在第一分割掩码存在凹洞等情况时,对目标区域的边界进行补全操作,以更新第一分割掩码,使第一分割掩码可以得到修正,以便能够根据更新后的第一分割掩码获得准确的目标区域轮廓顶点,进而使得到的目标区域更加精确。
上文介绍如何保障第一分割掩码符合要求(符合先验信息)。在符合要求的情况下,第一分割掩码可以直接用于边界计算;在不符合要求的情况下,则更新第一分割掩码,使得第一分割掩码符合要求,然后用于边界计算。边界计算方式可以如下。
在可选的实施例中,如图7所示,所述步骤S402可以包括:
步骤S700,根据所述第一分割掩码,获取第二分割掩码,所述第二分割掩码为目标区域边界的分割掩码。
步骤S702,根据所述目标图像,获取与所述目标图像对应的第一梯度图。
步骤S704,根据所述第一梯度图及所述第二分割掩码,获取第二梯度图,所述第二梯度图为目标区域边界的梯度图。
步骤S706,根据所述第二梯度图,获取所述目标区域的边界Edge。
所述第一梯度图可以通过多种方式得到,例如通过索伯(Sobel)算子、Prewitt(普鲁伊特)算子、拉普拉斯(Laplace)算子等。
在一些实施例中,可以通过边缘检测算法对第二梯度图进行操作,以获得目标区域的边界,其中所述边缘检测算法可以包括:Sobel(索伯)边缘检测算法、Canny(坎尼)边缘检测算法、Laplacian(拉普拉斯)边缘检测算法。示例性地,所述根据第二梯度图,获取目标区域的边界可以通过以下操作实现:(1)对第二梯度图进行滤波处理。(2)应用边缘检测算子对滤波后的第二梯度图进行处理,以突出图像中的边界。(3)对第二梯度图进行阈值化操作,将梯度值高于设定阈值的像素点标记为边缘点,而低于阈值的像素点则被视为非边缘点。(4)对阈值化后的第二梯度图进行边缘连接操作,将相邻的边缘点连接起来形成连续的边缘线。根据连接后的边缘线,提取所述目标区域的边界。
在一些实施例中,根据所述第一梯度图及所述第二分割掩码,获取第二梯度图可以通过以下操作实现:将第二分割掩码应用于第一梯度图,以获取第二梯度图。具体地:可以通过将第一梯度图中不属于目标区域的像素位置设置为零来实现。在本实施例中,获取目标区域边界的分割掩码(第二分割掩码),再根据第二分割掩码以及第一梯度图,获取目标区域边界的梯度图(第二梯度图),进而计算目标区域的边界。本申请实施例的技术方案基于第二分割掩码以及第一梯度图确定目标区域边界的第二梯度图,进而确定目标区域的边界,从而使本实施例中获取的目标区域的边界更加精准,以便后续可以根据所述边界更加精准地计算目标区域轮廓顶点。
下面提供一个示例性的获取目标区域边界的分割掩码(即第二分割掩码)的方案。
在可选的实施例中,如图8所示,所述步骤S700可以包括:
步骤S800,根据膨胀腐蚀算法,对所述第一分割掩码进行膨胀和腐蚀操作,以得到膨胀分割掩码和腐蚀分割掩码。
步骤S800,根据所述膨胀分割掩码和所述腐蚀分割掩码,获取所述第二分割掩码。
通过膨胀腐蚀算法获取第二分割掩码的步骤可以如下:(1)首先,先对第一分割掩码进行腐蚀操作,以得到腐蚀分割掩码Mfill-erode。其中,腐蚀操作:根据目标区域的尺寸,设置模板大小,并以一定的步长沿着目标区域的边界线滑动。在滑动的过程中,将边界线上的像素点变为0,进行腐蚀,直到得到腐蚀分割掩码Mfill-erode。(2)腐蚀过程结束后,将腐蚀分割掩码对应的图像进行膨胀操作,使目标区域恢复原有尺寸,并让边界线重新出现,以得到膨胀分割掩码Mfill-dilate。(3)将所述膨胀分割掩码减去所述腐蚀分割掩码,即可得到所述目标区域边界的分割掩码(即第二分割掩码),用公式表达即为:Mfill-dilate-Mfill-erode。
在本实施例中,膨胀操作可以填补第一分割掩码中的空洞或者凹陷,对第一分割掩码进行修正。腐蚀操作可以有效地去除噪声,并且可以使得第一分割掩码具有更加清晰的边界。本申请实施例的技术方案通过膨胀腐蚀算法修正第一分割掩码,从而得到第二分割掩码。该第二分割掩码用于后续目标区域的边界计算,由于该第二分割掩码没有空洞或凹陷,因此可以提高后续边界分割的精度。
下面提供一个示例性的获取第一梯度图的方案。
在可选的实施例中,如图9所示,所述步骤S702可以包括:
步骤S900,根据所述目标图像,获取与所述目标图像对应的第一灰度图G。
步骤S902,对所述第一灰度图G进行图像增强操作,以得到第二灰度图。
步骤S904,根据所述第二灰度图,获取所述第一梯度图S。
所述第一灰度图与所述第二灰度相比,所述第一灰度图的清晰度低于所述第二灰度图。
所述图像增强操作可以包括:亮度增强操作以及对比度增强操作、图像锐化、灰度变换等。其中,第一灰度图可以通过以下方法进行对比度增强操作:线性变换、直方图正规化、伽马变换、全局直方图均衡化等。在一些实施例中,当所述图像增强操作包括亮度增强操作以及对比度增强操作时,通过对第一灰度图进行亮度以及对比度增强操作,可以提升第一灰度图的图像质量,使得到的第二灰度图更加清晰,进而可以更好地通过第二灰度图检测目标区域的图像梯度。
在本实施例中,通过对第一灰度图进行图像增强操作,可以在第一灰度图的基础上获得第二灰度图。由于经过图像增强,该第二灰度图更加清晰。此外,图像增强可以对图像的局部特性进行强调,抑制不感兴趣的特征,提高图像的视觉效果。因此,本申请实施例的技术方案可以通过图像增强对目标区域进行强调并提升灰度图的清晰度,以便后续可以通过第二灰度图更好地检测目标区域的图像梯度。
在可选的实施例中,如图10所示,所述步骤S904可以包括:
步骤S1000,获取所述第一梯度图在X方向上的X方向梯度图。
步骤S1002,获取所述第一梯度图在Y方向上的Y方向梯度图。
步骤S1004,通过对所述X方向梯度图以及所述Y方向梯度图进行合并融合,获取所述第一梯度图S。
所述X方向梯度图和Y方向梯度图可以为:基于sobel算子得到的梯度图、基于Prewitt(普鲁伊特)算子得到的梯度图、基于拉普拉斯(Laplace)算子得到的梯度图等,在此不做限定。以基于sobel算子获取相应梯度图为例,具体步骤如下:根据第二灰度图,计算第一梯度图在X方向上的X方向Sobel梯度图,以及第一梯度图在Y方向上的Y方向Sobel梯度图。通过取最大值的方式将X方向Sobel梯度图以及Y方向Sobel梯度图进行合并融合,以获取第一梯度图S。
对图像来说,图像中像素值变化剧烈的地方便是图像的边缘部分。因此,通过对图像中像素值求梯度,便可以确定图像中哪些位置是图像的边缘。在上述可选的实施例中,根据X方向梯度图获取垂直方向的边缘信息,根据Y方向梯度图获取水平方向的边缘信息。通过获取垂直方向和水平方向的边缘信息,进而获取完整边缘信息。通过计算目标图像的第一梯度图,以便后续可以在第一梯度图的基础上更加精确地获取目标区域的边界。
步骤S404,根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合。
所述预设顶点计算方式可以包括:直线检测算法、多边形拟合算法、水平分割算法等。
每种预设顶点计算方式可以对应一个轮廓顶点集合。
下面提供几个示例性的顶点计算方式方案。
方案一:
当预设顶点计算方式为直线检测算法时,在可选的实施例中,如图11所示,所述步骤S404可以包括:
步骤S1100,通过直线检测算法对所述边界进行直线检测,以获取候选直线集合。
步骤S1102,根据目标区域形状先验信息,获取所述目标区域的边的数量。
步骤S1104,根据所述边的数量,对所述候选直线集合中的候选直线进行聚类,以得到多个目标直线集合。其中,所述边的数量与聚类数相同,每个聚类对应一个目标直线集合。
步骤S1106,根据所述多个目标直线集合,获取多个目标直线,每个目标直线集合对应一个目标直线。
步骤S1108,根据所述多个目标直线,获取所述第一轮廓顶点集合。
在示例性应用中,当目标区域为视频中广告牌、显示屏等矩形状物体,所述目标区域的边的数量为4。
所述直线检测算法可以包括:Hough_line(霍夫变换)直线检测算法、直线段检测算法(LSD)、FLD(Fisher线性判别分析)直线检测算法、EDlines直线检测算法、CannyLines直线检测算法等。当然,也可以是其他检测算法,在此不做限定。
聚类方法可以包括:K-means聚类算法(K均值聚类算法)、ISODATA(迭代自组织数据分析法)、Bi-kmeans聚类算法(二分K均值聚类算法),或其他算法。
举例而言,如图18所示,当目标区域为视频中的矩形广告牌,所述聚类算法为K-means聚类算法时,根据边界获取第一轮廓顶点集合的具体步骤可以如下:对所述目标区域的边界采用直线检测算法,获得候选直线集合。根据已知的目标区域形状先验信息,可知边的数量为4。将边的数量作为K-means聚类算法的聚类数,此时,聚类数为4。根据边的数量对候选直线集合中的候选直线进行K-means聚类,并剔除离群点,得到分类后的4个目标直线集合。对所述4个目标直线集合中的每个直线集合中的候选直线取均值,可以获得4条目标直线。之后,计算4条目标直线的交点,便可得到目标区域的第一轮廓顶点集合。
在本实施例中,通过直线检测算法计算所述目标区域的目标直线,继而通过计算目标区域的目标直线相交的顶点,从而确定目标区域的第一轮廓顶点集合。通过该方式得到的第一轮廓顶点集合,可以准确地确定轮廓,进而确定修正后的目标区域。
方案二:
当预设顶点计算方式为多边形拟合算法时,在可选的实施例中,如图12所示,所述步骤S404可以包括:
步骤S1200,对所述边界进行轮廓提取,以获取与所述边界对应的外边界。
步骤S1200,对所述外边界进行多边形拟合,以获取所述第二轮廓顶点集合。
可以对边界运用轮廓提取算法,从而获取所述边界对应的外边界。
轮廓表示图像中物体的边界。本实施例中,通过轮廓提取算法对目标区域的外边界(轮廓)进行提取。在此基础上,通过多边形拟合算法可以将目标区域的外边界(目标区域的轮廓)逼近成一个由直线构成的多边形,进而获得第二轮廓顶点集合。
在本实施例中,通过多边形拟合算法确定目标区域的第二轮廓顶点集合。通过该方式得到的第二轮廓顶点集合,可以准确地确定轮廓,进而确定修正后的目标区域。
步骤S406,根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合。
所述目标轮廓顶点集合为经过修正后的目标区域的轮廓顶点集合。
在可选的实施例中,如图13所示,所述步骤S406可以包括:
在所述第二轮廓顶点集合与所述目标区域形状先验信息相符的情况下,执行以下操作:
步骤S1300,设置所述第一轮廓顶点集合的权重为第一权重,设置所述第二轮廓顶点集合的权重为第二权重。
步骤S1302,通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
根据第一轮廓顶点集合权重Wline和第二轮廓顶点集合权重Wfill获取目标轮廓顶点集合的公式可以为:
Vfinal=Vline*Wline+Vfill*Wfill。
在示例性应用中,所述第一权重可以设为0.5,所述第二权重可以设为0.5。
当第二轮廓顶点集合与目标区域形状先验信息相符时,此时所述目标区域对应的分割掩码并不存在缺角等情况。因此,此时根据目标区域对应的分割掩码获取的第二轮廓顶点集合中,不包含因缺角等情况形成的顶点,即第二轮廓顶点集合精确度较高(有效)。在第二顶点轮廓集合准确度较高的情况下,将第一轮廓顶点集合和第二轮廓顶点集合加权求和,从而可以有效地提高目标区域的分割精度。
本申请实施例的技术方案通过将第一轮廓顶点集合和第二轮廓顶点集合加权求和,进而来确定目标轮廓顶点集合。相对于第一、第二轮廓顶点集合,目标轮廓顶点集合准确度更高,因此根据目标轮廓顶点集合得到的修正后的目标区域更加精确。
在可选的实施例中,如图14所示,所述步骤S406还可以包括:
在所述第一顶点集合与所述形状先验信息不相符的情况下,执行以下操作:
步骤S1400,设置所述第一轮廓顶点集合的权重为第三权重,设置所述第二轮廓顶点集合的权重为第四权重,其中,所述第三权重大于所述第四权重。
步骤S1402,通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
根据第一轮廓顶点集合的权重Wline和第二轮廓顶点集合的权重Wfill,获取目标轮廓顶点集合的公式为:
Vfinal=Vline*Wline+Vfill*Wfill。
在第一顶点集合与形状先验信息不相符的情况下,目标区域对应的分割掩码存在缺角等情况。因此,此时通过多边形拟合算法得到的第二轮廓顶点集合精确度不高(不可信)。在第二顶点轮廓集合精确度不高的情况下,将第二轮廓顶点集合的第四权重设置为一个较小的值(小于第三权重的值)。在一些实施例中,所述第三权重可以设为1,所述第四权重可以设为0。此时,所述目标轮廓顶点集合为所述第一轮廓顶点集合。
在本实施例中,对第一轮廓顶点集合以及所述第二轮廓顶点集合设置相应的权重,可以将精确度较低的轮廓顶点集合设置较小的权重值,从而减小该轮廓顶点集合对目标轮廓顶点集合的影响。在设置了相应权重之后,对第一顶点轮廓集合和第二轮廓顶点集合进行加权求和,从而确定目标轮廓顶点集合,使得目标轮廓顶点集合精确度更高,进而可以根据目标轮廓顶点集合对目标区域的形状轮廓进行精确修正。
步骤S408,根据所述目标轮廓顶点集合,获取修正后的目标区域。
对目标区域的第一分割掩码进行边界提取,继而根据目标区域的边界以及相应的顶点计算方式,获取目标轮廓顶点集合,进而对目标区域的形状轮廓进行修正,从而使得目标区域的形状轮廓更加准确,提升稳定性和鲁棒性,及提升平面广告的投放效果。
也就是说,所述修正后的目标区域为形状轮廓无凹陷、缺角且形状轮廓边缘较为精确的目标区域。该修正后的目标区域可以植入广告牌等物件,形成很好的效果。
为了使得本申请更加容易理解,以下结合图15提供一个示例性应用。
S11,获取目标区域的第一分割掩码。
S12,根据第一分割掩码,提取第一分割掩码的边界;根据所述边界,获取初始轮廓顶点。
S13,判断初始轮廓顶点与目标区域形状先验信息是否相符。两种情况如下:
①相符时,目标区域无凹洞或者缺角,直接根据第一分割掩码进行边界计算。
②不相符时,目标区域有凹洞或者缺角等。对边界进行补全操作,从而更新第一分割掩码。
S14,根据膨胀腐蚀算法获取目标区域的边界分割掩码(第二分割掩码)。
S15,将目标图像转化为灰度图,并进行亮度和对比度增强操作。
S16,根据增强后的灰度图计算第一梯度图,进而根据第二分割掩码获取目标区域的边界梯度图(第二梯度图)。
S17,根据第二梯度图,计算目标区域的边界。
S18,通过两种顶点计算方式获取轮廓顶点集合:
①S181,直线检测算法,具体步骤如下:
S1811,对边界进行直线检测,获取候选直线集合。
S1812,根据形状先验信息获取边的数量,根据聚类算法将候选直线集合分类。
S1813,剔除候选直线集合中的离群数据,计算每个候选直线集合中直线的均值,得到多条目标直线,每个候选直线集合对应一条目标直线。
S1814,计算多条直线的相交点,相交点即为第一轮廓顶点集合。
②S182,多边形拟合算法,具体步骤如下:
S1821,对边界运用轮廓提取算法,获取对应的外边界。
S1822,对外边界运用多边形拟合算法,获取第二轮廓顶点集合。
S19,判断第二轮廓顶点集合与先验信息是否相符,两种情况如下:
①相符时,此时的分割掩码无缺角,第一轮廓顶点集合的权重设为第一权重,第二轮廓顶点集合的权重设为第二权重,
②不相符时,此时的分割掩码有缺角,对权重进行设置:第一轮廓顶点集合的第三权重大于第二轮廓顶点集合的第四权重。
S20,将第一轮廓顶点集合和第二轮廓顶点集合加权求和,得到目标区域轮廓顶点。
S21,根据目标区域轮廓顶点获取修正后的目标区域。
本技术方案的优势:(1)当第一分割掩码基本规则(无凹洞、缺角等情况)但是边缘较为粗糙时,可以对第一分割掩码进行精调以得到更为精确的目标区域形状轮廓。(2)当第一分割掩码出现凹陷、缺失的情况时,可以自适应处理,从而得到修正后的目标区域形状轮廓。(3)对第一分割掩码的依赖度极低,具有极高的鲁棒性和稳定性。
需要说明的是,上述方案可以用于将广告插入到视频中,也可以用于其他场景。
实施例二
图19示意性示出了根据本申请实施例二的图像分割装置的框图,该图像分割装置可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本申请实施例。本申请实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本实施例中各程序模块的功能。如图19所示,该装置1900可以包括:第一获取模块1910、第二获取模块1920、第三获取模块1930、第四获取模块1940、第五获取模块1950,其中:
第一获取模块1910,用于获取目标图像中的第一分割掩码;其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码;
第二获取模块1920,用于根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界;
第三获取模块1930,用于根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合;
第四获取模块1940,用于根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合;
第五获取模块1950,用于根据所述目标轮廓顶点集合,获取修正后的目标区域。
在可选的实施例中,所述第二获取模块1920还用于:
根据第一分割掩码,获取所述分割掩码的第一边界集合;
根据所述第一边界集合,获取初始轮廓顶点;
在所述初始轮廓顶点与目标区域形状先验信息相符合的情况下,将所述第一掩码用于边界计算。
在可选的实施例中,在所述初始轮廓顶点与所述目标区域形状先验信息不相符的情况下,所述第二获取模块1920还用于:
根据所述第一边界集合进行边界补齐,以更新所述第一分割掩码;
其中,更新后的第一分割掩码用于边界计算。
在可选的实施例中,所述第二获取模块1920还用于:
根据所述第一分割掩码,获取第二分割掩码,所述第二分割掩码为目标区域边界的分割掩码;
根据所述目标图像,获取与所述目标图像对应的第一梯度图;
根据所述第一梯度图及所述第二分割掩码,获取第二梯度图,所述第二梯度图为目标区域边界的梯度图;
根据所述第二梯度图,获取所述目标区域的边界。
在可选的实施例中,所述第二获取模块1920还用于:
根据膨胀腐蚀算法,对所述第一分割掩码进行膨胀和腐蚀操作,以得到膨胀分割掩码和腐蚀分割掩码;
根据所述膨胀分割掩码和所述腐蚀分割掩码,获取所述第二分割掩码。
在可选的实施例中,所述第二获取模块1920还用于:
根据所述目标图像,获取与所述目标图像对应的第一灰度图;
对所述第一灰度图进行图像增强操作,以得到第二灰度图;
根据所述第二灰度图,获取所述第一梯度图。
在可选的实施例中,所述第二获取模块1920还用于:
获取所述第一梯度图在X方向上的X方向梯度图;
获取所述第一梯度图在Y方向上的Y方向梯度图;
通过对所述X方向梯度图以及所述Y方向梯度图进行合并融合,获取所述第一梯度图。
在可选的实施例中,所述一个或多个预设顶点计算方式包括直线检测算法;所述第三获取模块1930还用于:
通过直线检测算法对所述边界进行直线检测,以获取候选直线集合;
根据目标区域形状先验信息,获取所述目标区域的边的数量;
根据所述边的数量,对所述候选直线集合中的候选直线进行聚类,以得到多个目标直线集合;其中,所述边的数量与聚类数相同,每个聚类对应一个目标直线集合;
根据所述多个目标直线集合,获取多个目标直线,每个目标直线集合对应一个目标直线;
根据所述多个目标直线,获取所述第一轮廓顶点集合。
在可选的实施例中,所述第三获取模块1930还用于:
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合,包括:
对所述边界进行轮廓提取,以获取与所述边界对应的外边界;
对所述外边界进行多边形拟合,以获取所述第二轮廓顶点集合。
在可选的实施例中,所述第四获取模块1940还用于:
在所述第二轮廓顶点集合与所述目标区域形状先验信息相符的情况下,执行以下操作:
设置所述第一轮廓顶点集合的权重为第一权重,设置所述第二轮廓顶点集合的权重为第二权重;
通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
在可选的实施例中,所述第四获取模块1940还用于:
在所述第一顶点集合与所述形状先验信息不相符的情况下,执行以下操作:
设置所述第一轮廓顶点集合的权重为第三权重,设置所述第二轮廓顶点集合的权重为第四权重,其中,所述第三权重大于所述第四权重;
通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
实施例三
图20示意性示出了根据本申请实施例三的适于实现图像分割方法的计算机设备10000的硬件架构示意图。在一些实施例中,计算机设备10000可以是智能手机、可穿戴设备、平板电脑、个人电脑、车载终端、游戏机、虚拟设备、工作台、数字助理、机顶盒、机器人等终端设备。在另一些实施例中,计算机设备10000可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或多个服务器所组成的服务器集群)等。如图20所示,所述计算机设备10000包括但不限于:可通过系统总线相互通信链接存储器10010、处理器10020、网络接口10030。其中:
存储器10010至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(如,SD或DX存储器)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器10010可以是计算机设备10000的内部存储模块,例如该计算机设备10000的硬盘或内存。在另一些实施例中,存储器10010也可以是计算机设备10000的外部存储设备,例如该计算机设备10000上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器10010还可以既包括计算机设备10000的内部存储模块也包括其外部存储设备。本实施例中,存储器10010通常用于存储安装于计算机设备10000的操作系统和各类应用软件,例如图像分割方法的程序代码等。此外,存储器10010还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器10020在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他芯片。该处理器10020通常用于控制计算机设备10000的总体操作,例如执行与计算机设备10000进行数据交互或者通信相关的控制和处理等。本实施例中,处理器10020用于运行存储器10010中存储的程序代码或者处理数据。
网络接口10030可包括无线网络接口或有线网络接口,该网络接口10030通常用于在计算机设备10000与其他计算机设备之间建立通信链接。例如,网络接口10030用于通过网络将计算机设备10000与外部终端相连,在计算机设备10000与外部终端之间建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,简称为GSM)、宽带码分多址(WidebandCode Divi sion Multiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetoo th)、Wi-Fi等无线或有线网络。
需要指出的是,图20仅示出了具有部件10010-10030的计算机设备,但是应该理解的是,并不要求实施所有示出的部件,可以替代地实施更多或者更少的部件。
在本实施例中,存储于存储器10010中的图像分割方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(如处理器10020)所执行,以完成本申请实施例。
实施例四
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,其中,计算机程序被处理器执行时实现实施例中的图像分割方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEP ROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中图像分割方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算机设备来实现,它们可以集中在单个的计算机设备上,或者分布在多个计算机设备所组成的网络上,可选地,它们可以用计算机设备可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算机设备来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
需要说明的是,以上仅为本申请的优选实施例,并非因此限制本申请的专利保护范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (14)
1.一种图像分割方法,其特征在于,所述方法包括:
获取目标图像中的第一分割掩码;其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码;
根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界;
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合;
根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合;
根据所述目标轮廓顶点集合,获取修正后的目标区域。
2.根据权利要求1所述的方法,其特征在于,根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界,包括:
根据第一分割掩码,获取所述分割掩码的第一边界集合;
根据所述第一边界集合,获取初始轮廓顶点;
在所述初始轮廓顶点与目标区域形状先验信息相符合的情况下,将所述第一掩码用于边界计算。
3.根据权利要求2所述的方法,其特征在于,根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界,还包括:
在所述初始轮廓顶点与所述目标区域形状先验信息不相符的情况下,执行以下操作:
根据所述第一边界集合进行边界补齐,以更新所述第一分割掩码;
其中,更新后的第一分割掩码用于边界计算。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一分割掩码以及目标图像,获取所述目标区域的边界,包括:
根据所述第一分割掩码,获取第二分割掩码,所述第二分割掩码为目标区域边界的分割掩码;
根据所述目标图像,获取与所述目标图像对应的第一梯度图;
根据所述第一梯度图及所述第二分割掩码,获取第二梯度图,所述第二梯度图为目标区域边界的梯度图;
根据所述第二梯度图,获取所述目标区域的边界。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一分割掩码,获取第二分割掩码,包括:
根据膨胀腐蚀算法,对所述第一分割掩码进行膨胀和腐蚀操作,以得到膨胀分割掩码和腐蚀分割掩码;
根据所述膨胀分割掩码和所述腐蚀分割掩码,获取所述第二分割掩码。
6.根据权利要求4所述的方法,其特征在于,所述根据所述目标图像,获取与所述目标图像对应的第一梯度图,包括:
根据所述目标图像,获取与所述目标图像对应的第一灰度图;
对所述第一灰度图进行图像增强操作,以得到第二灰度图;
根据所述第二灰度图,获取所述第一梯度图。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第二灰度图,获取所述第一梯度图,包括:
获取所述第一梯度图在X方向上的X方向梯度图;
获取所述第一梯度图在Y方向上的Y方向梯度图;
通过对所述X方向梯度图以及所述Y方向梯度图进行合并融合,获取所述第一梯度图。
8.根据权利要求1至7任意一项所述的方法,其特征在于,所述一个或多个预设顶点计算方式包括直线检测算法;
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合,包括:
通过直线检测算法对所述边界进行直线检测,以获取候选直线集合;
根据目标区域形状先验信息,获取所述目标区域的边的数量;
根据所述边的数量,对所述候选直线集合中的候选直线进行聚类,以得到多个目标直线集合;其中,所述边的数量与聚类数相同,每个聚类对应一个目标直线集合;
根据所述多个目标直线集合,获取多个目标直线,每个目标直线集合对应一个目标直线;
根据所述多个目标直线,获取所述第一轮廓顶点集合。
9.根据权利要求8所述的方法,其特征在于,所述一个或多个预设顶点计算方式包括轮廓提取算法;
根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合,包括:
对所述边界进行轮廓提取,以获取与所述边界对应的外边界;
对所述外边界进行多边形拟合,以获取所述第二轮廓顶点集合。
10.根据权利要求9所述的方法,其特征在于,根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合,包括:
在所述第二轮廓顶点集合与所述目标区域形状先验信息相符的情况下,执行以下操作:
设置所述第一轮廓顶点集合的权重为第一权重,设置所述第二轮廓顶点集合的权重为第二权重;
通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
11.根据权利要求9所述的方法,其特征在于,还包括:
在所述第一顶点集合与所述形状先验信息不相符的情况下,执行以下操作:
设置所述第一轮廓顶点集合的权重为第三权重,设置所述第二轮廓顶点集合的权重为第四权重,其中,所述第三权重大于所述第四权重;
通过对所述第一轮廓顶点集合以及所述第二轮廓顶点集合进行加权求和,获取所述目标轮廓顶点集合。
12.一种图像分割装置,其特征在于,所述装置包括:
第一获取模块,用于获取目标图像中的第一分割掩码;其中,所述第一分割掩码为对应所述目标图像中目标区域的分割掩码;
第二获取模块,用于根据所述第一分割掩码以及所述目标图像,获取所述目标区域的边界;
第三获取模块,用于根据所述边界和一个或多个预设顶点计算方式,获取所述目标区域的一个或多个轮廓顶点集合;
第四获取模块,用于根据所述一个或多个轮廓顶点集合,获取目标轮廓顶点集合;
第五获取模块,用于根据所述目标轮廓顶点集合,获取修正后的目标区域。
13.一种计算机设备,其特征在于,包括:
至少一个处理器;及
与所述至少一个处理器通信连接的存储器;其中:
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至11中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机指令,所述计算机指令被处理器执行时实现如权利要求1至11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310913325.8A CN116894849A (zh) | 2023-07-24 | 2023-07-24 | 图像分割方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310913325.8A CN116894849A (zh) | 2023-07-24 | 2023-07-24 | 图像分割方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116894849A true CN116894849A (zh) | 2023-10-17 |
Family
ID=88311936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310913325.8A Pending CN116894849A (zh) | 2023-07-24 | 2023-07-24 | 图像分割方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116894849A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117132667A (zh) * | 2023-10-26 | 2023-11-28 | 湖南半岛医疗科技有限公司 | 一种基于环境温度反馈的热图像处理方法及相关装置 |
-
2023
- 2023-07-24 CN CN202310913325.8A patent/CN116894849A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117132667A (zh) * | 2023-10-26 | 2023-11-28 | 湖南半岛医疗科技有限公司 | 一种基于环境温度反馈的热图像处理方法及相关装置 |
CN117132667B (zh) * | 2023-10-26 | 2024-02-06 | 湖南半岛医疗科技有限公司 | 一种基于环境温度反馈的热图像处理方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110717489B (zh) | Osd的文字区域的识别方法、装置及存储介质 | |
CN113781402B (zh) | 芯片表面划痕缺陷的检测方法、装置和计算机设备 | |
US7606439B2 (en) | Method for extracting raw data from an image resulting from a camera shot | |
CN116740070B (zh) | 基于机器视觉的塑料管道外观缺陷检测方法 | |
CN110348264B (zh) | 一种qr二维码图像校正方法及系统 | |
CN111680690B (zh) | 一种文字识别方法及装置 | |
US20180253852A1 (en) | Method and device for locating image edge in natural background | |
CN113962306A (zh) | 图像处理方法、装置、电子设备和计算机可读存储介质 | |
CN111310508B (zh) | 一种二维码识别方法 | |
CN108805838B (zh) | 一种图像处理方法、移动终端及计算机可读存储介质 | |
CN110414649B (zh) | Dm码的定位方法、装置、终端及存储介质 | |
CN111539238B (zh) | 二维码图像修复方法、装置、计算机设备和存储介质 | |
CN116894849A (zh) | 图像分割方法和装置 | |
CN116433701B (zh) | 一种工件孔洞轮廓的提取方法、装置、设备及存储介质 | |
CN112419207A (zh) | 一种图像矫正方法及装置、系统 | |
CN114842213A (zh) | 一种障碍物轮廓检测方法、装置、终端设备和存储介质 | |
CN116309494B (zh) | 一种电子地图中兴趣点信息确定方法、装置、设备及介质 | |
CN109785367B (zh) | 三维模型追踪中外点滤除方法和装置 | |
CN111563883B (zh) | 屏幕视觉定位方法、定位设备及存储介质 | |
CN112118478B (zh) | 文本处理方法、装置、电子设备及存储介质 | |
CN114529570A (zh) | 图像分割方法、图像识别方法、用户凭证补办方法及系统 | |
CN115239612A (zh) | 电路板定位方法、装置、设备及存储介质 | |
CN112906708A (zh) | 一种图片处理方法、装置、电子设备和计算机存储介质 | |
CN112529928A (zh) | 零件组装检测方法、计算机设备及存储介质 | |
CN113343965A (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 |