多尺度物体实例分割模型的训练方法、分割方法和装置与流程

文档序号:32867937发布日期:2023-01-07 02:30阅读:30来源:国知局
多尺度物体实例分割模型的训练方法、分割方法和装置与流程

1.本发明涉及图像处理技术领域,具体涉及一种多尺度物体实例分割模型的训练方法、分割方法和装置。


背景技术:

2.物体分割是检测工业产品成像中所有目标物体的机器视觉分割方法,其在机器人视觉定位、产品质量参数分析(包括形态、数量、区域面积、中心点等)、机器人抓取等领域应用广泛。
3.在工业生产中,对于产品类别多且尺度规格不一的应用场景,物体实例分割难度较大,由于产品识别与定位、质量分析、抓取、分拣等任务依赖于对目标物体的精准分割,且各种工业场景对分割指标要求高,需求旺盛,但物体之间的大小、形状差异大,尺度不一,给物体实例分割增加了额外的复杂性,容易导致对极大或过多尺度物体的漏检、误检,而生产企业对不同尺度物体实例分割精度有较高的要求,以用于后续的产品的质量分析、精确定位等任务。


技术实现要素:

4.本发明主要解决的技术问题是如何实现多尺度物体实例的精准分割。
5.根据第一方面,一种实施例中提供一种多尺度物体实例分割模型的训练方法,所述多尺度物体实例分割模型包括特征提取网络、目标框预测网络和掩码网络,其中所述掩码网络包括分割模块和融合模块,所述训练方法包括:
6.获取包括具有一个或者多个物体实例的输入图像和标注数据,其中所述标注数据中包括所述输入图像中标记目标框的位置信息、类别信息和所述输入图像对应的标记二值图;
7.将所述输入图像输入所述特征提取网络中,得到多层具有相同通道、不同分辨率的第一融合特征图;
8.将所述多层具有相同通道、不同分辨率的第一融合特征图输入所述目标框预测网络中,得到各层所述第一融合特征图中的预测目标框的位置信息、类别信息和中心度,以及各层所述第一融合特征图对应的注意力图,其中各层所述注意力图与对应层的所述第一融合特征图具有相同分辨率;其中,中心度用于表征所述第一融合特征图中各个像素点位于对应的所述预测目标框的中心性;
9.基于所述预测目标框的位置信息、类别信息和中心度以及所述标注数据中标记目标框的位置信息和类别信息,构建目标框预测网络损失函数;
10.将多层所述第一融合特征图输入所述掩码网络的分割模块中,得到预测分割图和预测分数图,其中预测分割图具有2个通道且与多层所述第一融合特征图中的第一层第一融合特征图具有相同分辨率,预测分数图具有4个通道且与多层所述第一融合特征图中的第一层第一融合特征图具有相同分辨率;
11.将多层所述注意力图、所述预测分数图和标记目标框输入所述掩码网络的融合模块中,得到实例预测图像;
12.基于所述预测分割图和尺度变换后的所述输入图像对应的标记二值图,构建分割模块损失函数;其中,尺度变换后的所述输入图像对应的标记二值图与所述预测分割图具有相同的分辨率;
13.基于所述实例预测图像和尺度变换后的所述输入图像对应的标记二值图中所述标记目标框对应的二值化图像,构建融合模块损失函数;其中,所述二值化图像与所述实例预测图像具有相同的分辨率;
14.根据所述目标框预测网络损失函数、分割模块损失函数和融合模块损失函数,构建总损失函数,并根据所述总损失函数对多尺度物体实例分割模型进行训练,得到相应的模型参数。
15.根据第二方面,一种实施例中提供一种多尺度物体的实例分割方法,包括:
16.获取包括具有一个或者多个物体实例的输入图像;
17.将所述输入图像输入特征提取网络中,得到多层具有相同通道、不同分辨率的第一融合特征图;
18.将所述多层具有相同通道、不同分辨率的第一融合特征图输入目标框预测网络中,得到各层所述第一融合特征图中的预测目标框的位置信息、类别信息和中心度,以及各层所述第一融合特征图对应的注意力图,其中各层所述注意力图与对应层的所述第一融合特征图具有相同分辨率;
19.对每层所述第一融合特征图中各个像素点预测的所有预测目标框进行过滤,判断每层所述第一融合特征图中各个像素点预测的预测目标框是否为预测实例目标框;若为预测实例目标框,则将对应的像素点作为预测像素点;
20.将多层所述第一融合特征图输入掩码网络的分割模块中,得到预测分数图;
21.将多层所述注意力图、所述预测分数图和预测实例目标框输入掩码网络的融合模块中,得到实例预测图像,所述实例预测图像中包含有输入图像的具有预设分辨率的与所述预测实例目标框个数相等的预测实例目标框的像素分割结果;
22.将所述所有具有预设分辨率的预测实例目标框的像素分割结果的尺寸缩放至对应预测实例目标框的大小,得到输入图像中所有预测实例目标框的像素分割结果,并将输入图像中未落在预测实例目标框中的像素点默认为背景像素点,得到最终的物体实例分割结果。
23.根据第三方面,一种实施例中提供一种多尺度物体的实例分割装置,包括:
24.图像采集装置,用于获取输入图像;
25.处理器,用于执行如上述任一项实施例所述的多尺度物体的实例分割方法。
26.根据第四方面,一种实施例中提供一种计算机可读存储介质,其特征在于,所述介质上存储有程序,所述程序能够被处理器执行以实现如上述实施例任一项所述的方法。
27.依据上述实施例的多尺度物体实例分割模型的训练方法、分割方法和装置,多尺度物体实例分割模型包括特征提取网络、目标框预测网络和掩码网络,其中,首先特征提取网络能够有效提取输入图像的多层第一融合特征图,再将多层第一融合特征图输入目标框预测网络中以得到输入图像中的预测目标框以及每层第一融合特征图的对应层注意力图,
对每层第一融合特征图中各个像素点预测的所有预测目标框进行过滤以得到预测实例目标框,然后将第一融合特征图输入掩码网络的分割模块中以得到预测分数图,最后将注意力图、预测分数图和预测实例目标框输入掩码网络的融合模块中预测输出多尺度物体的实例预测图像,并对实例预测图像中的预测实例目标框的像素分割结果的尺寸进行缩放,得到输入图像中所有预测实例目标框的像素分割结果,并将输入图像中未落在预测实例目标框中的像素点默认为背景像素点,得到最终的物体实例分割结果;由此,本发明无需设置锚框的参数,直接针对图像特征提取预测目标框,简单易用,自动化运行,此外,通过掩码网络对物体实例的高级特征信息和低级特征信息进行结合,能够以较少的参数有效地预测密集的逐像素位置敏感的物体实例特征,极大地提升了物体的实例分割质量,并达到实时级别的快速推理。
附图说明
28.图1为一种实施例的多尺度实例分割模型的结构示意图;
29.图2为一种实施例的多尺度物体实例分割模型的训练方法流程图;
30.图3为一种实施例的特征提取网络提取第一融合特征图的方法流程图;
31.图4为一种实施例的多尺度聚合网络层的结构流程示意图;
32.图5为一种实施例的目标框预测网络的结构流程示意图;
33.图6为一种实施例的目标框预测网络预测输出预测目标框和对应层注意力图的方法流程图;
34.图7为第一融合特征图中的像素点映射到输入图像位置后与所在标记目标框计算得到的标签值的示意图;
35.图8为一种实施例的分割模块的结构流程示意图;
36.图9为一种实施例的融合模块输出实例预测图像的方法流程图;
37.图10为一种实施例的多尺度物体的实例分割方法流程图;
38.图11为多尺度物体实例分割的效果示意图;
39.图12为一种实施例的多尺度物体的实例分割装置。
具体实施方式
40.下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本技术能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本技术相关的一些操作并没有在说明书中显示或者描述,这是为了避免本技术的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
41.另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
42.本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本技术所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
43.目前对于多尺度目标物体的实例分割,工业上通常采用的是基于预设锚框的方式,具体是先获取产品数据中目标物体的尺寸大小以及分布情况等相关信息,然后根据这些提前获取的信息,设定锚框的尺度、长宽比等相关参数,以能够尽可能覆盖所有目标物体的尺度分布情形,最后完成实例分割模型的训练和推理。对于产品种类较少且尺度差异不大或者尺度差异大但尺寸大小较为固定的工业场景,上述基于预设锚框的方式能够实现多尺度物体的实例分割,然而对于一些产品物体种类多、尺度差异大并且尺寸大小也不统一的工业场景,上述基于预设锚框的方式需要增加很多锚框的尺度、长宽比等先验参数,以满足数据的分布特点,增加了大量的无效计算,使得实例分割模型难以训练,并且考虑到应用的计算性能限制,也无法实现实时性的要求,使得在兼顾推理速度的情况下,物体实例的分割质量降低,容易发生对物体实例的漏检和误检。
44.基于上述问题,本发明实施例提供了一种多尺度物体实例分割模型的训练方法和分割方法,能够有效地将低级细粒度的语义信息和高级的实例特征进行结合,以端到端的方式实现多尺度物体实例的精准分割,提升分割性能。
45.请参考图1,图1为一种实施例的多尺度实例分割模型的结构示意图,本实施例提供的多尺度实例分割模型包括特征提取网络g、目标框预测网络v和掩码网络p,其中掩码网络p包括分割模块s和融合模块b,输入图像f输入至特征提取网络g中得到多层第一融合特征图αj,其中,j表示多层第一融合特征图的第j层;多层第一融合特征图αj输入至目标框预测网络v中得到预测目标框β和对应层的注意力图aj,将多层第一融合特征图αj、预测目标框β和对应层的注意力图aj输入掩码网络p中预测输出物体实例分割结果r,完成多尺度物体的物体实例分割结果r;其中,物体实例分割结果r中将目标框中的像素点分类为背景像素点和物体实例像素点,并且,落在目标框外的像素点为背景像素点。
46.下面基于多尺度实例分割模型中各个网络的结构分别对多尺度物体实例分割模型的训练方法和推理方法进行说明。
47.请参考图2,图2为一种实施例的多尺度物体实例分割模型的训练方法流程图,以下简称模型训练方法,该模型训练方法包括步骤101至步骤109,下面详细说明。
48.步骤101:获取包括具有一个或者多个物体实例的输入图像f和标注数据,其中,标注数据中包括输入图像f中标记目标框的位置信息、类别信息和输入图像f对应的标记二值图。标记二值图是对输入图像f中的所有像素点进行逐像素点标记,以将输入图像f中的所有像素点分类为背景像素点和物体实例像素点,可通过对像素点标记不同的灰度值来表征其为背景像素点还是物体实例像素点,例如,输入图像f中的某一像素点被标记为0,则表征该像素点为背景像素点,若某一像素点被标记为1,则表征该像素点为物体实例像素点。还需要说明的是,一个物体实例的类别由其所属的目标框的类别信息决定,对于目标框内的像素点仅需要区分是背景像素点还是物体实例像素点即可。本实施例中,标注数据可通过人为对输入图像f中的真实目标框以及目标框中物体实例像素点和背景像素点进行标记,也可通过样本数据库直接进行获取。
49.步骤102:将输入图像f输入特征提取网络g中,得到多层具有相同通道、不同分辨
率的第一融合特征图。
50.步骤103:将多层具有相同通道、不同分辨率的第一融合特征图输入目标框预测网络v中,得到各层第一融合特征图中的预测目标框的位置信息、类别信息和中心度,以及各层第一融合特征图对应的注意力图,其中各层注意力图与对应层的第一融合特征图具有相同分辨率;其中,中心度用于表征所第一融合特征图中各个像素点位于对应的预测目标框的中心性。
51.步骤104:基于预测目标框的位置信息、类别信息和中心度以及标注数据中标记目标框的位置信息和类别信息,构建目标框预测网络损失函数。
52.步骤105:将多层第一融合特征图输入掩码网络p的分割模块s中,得到预测分割图和预测分数图,其中预测分割图具有2个通道且与多层第一融合特征图中的第一层第一融合特征图具有相同分辨率,预测分数图具有4个通道且与多层第一融合特征图中的第一层第一融合特征图具有相同分辨率。
53.步骤106:将多层注意力图、预测分数图和标记目标框输入掩码网络p的融合模块b中,得到实例预测图像。其中,输入至掩码网络p的融合模块b的标记目标框具有位置信息和类别信息,为了方便表述,此后不再重复说明。
54.步骤107:基于预测分割图和尺度变换后的输入图像f对应的标记二值图,构建分割模块损失函数;其中,尺度变换后的输入图像f对应的标记二值图与预测分割图具有相同的分辨率。本实施例中的尺度变换是用于将图像数据缩放至指定分辨率,该图像数据可以是标注数据中的标记二值图,也可以是各种特征图。
55.步骤108:基于实例预测图像和尺度变换后的输入图像f对应的标记二值图中标记目标框对应的二值化图像,构建融合模块损失函数;其中,二值化图像与实例预测图像具有相同的分辨率。
56.步骤109:根据目标框预测网络损失函数、分割模块损失函数和融合模块损失函数,构建总损失函数,并根据总损失函数对多尺度物体实例分割模型进行训练,得到相应的模型参数。
57.在一实施例中,特征提取网络g包括粗提取层和细提取层,粗提取层包括两个3x3标准卷积层,细提取层包括多层多尺度聚合网络层,请参考图3,图3为特征提取网络g提取第一融合特征图的方法流程图,其包括步骤1021至步骤1023。
58.步骤1021:将输入图像f输入粗提取层进行两次3x3标准卷积处理,得到初始特征图。在粗提取层中,对输入图像f的初步特征进行提取。
59.步骤1022:将初始特征图输入细提取层进行多次多尺度聚合网络层处理,得到多层具有不同通道、不同分辨率的高级特征图。在细提取层中,通过多层多尺度聚合网络层的处理,对输入图像f的不同尺度的有效特征进行提取。
60.请参考图4,图4为多尺度聚合网络层的结构流程示意图,假设多尺度聚合网络层的输入特征为input,对于第一层多尺度聚合网络层,输入特征input为粗提取层输出的初始特征图,对于除第一层的其他层多尺度聚合网络层,输入特征input为上一层多尺度聚合网络层输出的对应层的高级特征图;以图4为例,对于一层多尺度聚合网络层,按照以下方式进行多尺度聚合网络层处理:
61.(1)对输入特征input进行1
×
1卷积(c1x1)处理和通道平均分离(split)处理,得
到多个分离特征图i1、i2、i3、i4。本领域技术人员可以理解的是,分离特征图的数量不限于4个,可根据实际应用场景和需求进行调整。
62.(2)将多个分离特征图中的第一个分离特征图作为第一个特征子图,对多个分离特征图中的第二个分离特征图进行3
×
3标准卷积(c3x3)处理得到第二个特征子图,对多个分离特征图中的第i个分离特征图和第i-1个特征子图执行哈达玛加法运算然后再进行3
×
3标准卷积(c3x3)处理得到第i个特征子图,以得到多个特征子图,其中,i为大于等于3的整数。例如,在图4中,分离特征图i1不经过任何处理直接作为第一个特征子图j1,分离特征图i2经过3
×
3标准卷积(c3x3)处理得到第二个特征子图j2,并且将分离特征图i2进行复制的结果与分离特征图i3执行哈达玛加法运算然后再进行3
×
3标准卷积(c3x3)处理得到第三个特征子图j3,分离特征图i3复制的结果与分离特征图i4执行哈达玛加法运算然后再进行3
×
3标准卷积(c3x3)处理得到第四个特征子图j4。
63.(3)对多个特征子图j1、j2、j3、j4进行通道拼接后,再进行1
×
1卷积(c1x1)处理,得到第一特征图。
64.(4)将输入特征input与第一特征图进行哈达玛加法运算,得到一层高级特征图output。
65.如上所述,对于第一层多尺度聚合网络层,输入特征input为粗提取层输出的初始特征图,对于除第一层的其他层多尺度聚合网络层,输入特征input为上一层多尺度聚合网络层输出的对应层的高级特征图。
66.本实施例提供的多尺度聚合网络层中输入特征input进行通道平均分离得到的分离特征图的数量并不限于4个,分离特征图越多,就可以让更多的特征有更丰富的感受野被学习,每个分离特征图进行的3
×
3标准卷积处理都可以潜在的接受前一个分离特征图的相应信息,这样使得每个特征子图都能够增大感受野,因此,每层多尺度聚合网络层能够获取不同数量和不同感受野的特征组合,最后输入特征input的短接操作可以捕获更细粒度级别上的全局和细节信息。
67.本实施例提供的特征提取网络g中的细提取层通过堆叠多个多尺度聚合网络层,既能充分抽取各种不同尺度物体实例的多尺度特征信息,又减少了其他冗余的计算,可以进一步提高整体网络的性能。
68.需要说明的是,高级特征图与多尺度聚合网络层一一对应,也就是,每层多尺度聚合网络层输出相应层的高级特征图,并且多层高级特征图之间的分辨率和通道均是不相同的。
69.步骤1023:将多层具有不同通道、不同分辨率的高级特征图进行1
×
1卷积处理后,得到多层具有相同通道、不同分辨率的第一融合特征图。
70.在本实施例中,对于多尺度的物体,物体尺寸不一,甚至差异悬殊的应用场景,通过针对性的多尺度聚合网络,其能够有效提高多尺度特征的表示能力,并增加不同特征网络层的感受野,捕获不同尺寸物体的特征信息,以提升后续多尺度物体的分割性能。
71.在一实施例中,请参考图5,目标框预测网络v包括第一预测模块、第二预测模块、第三预测模块和注意力图提取模块。请参考图6,图6为目标框预测网络v预测输出预测目标框和对应层注意力图的流程图,其包括步骤1031至步骤1037。
72.步骤1031:将多层具有相同通道、不同分辨率的第一融合特征图中的每个像素点
作为一个样本点,构建样本集。
73.在本实施例中,将样本点分为正样本、负样本和模糊样本,其中,将第一融合特征图中位于任一个标记目标框中的像素点作为正样本,将第一融合特征图中没有位于任一个标记目标框中的像素点作为负样本,将第一融合特征图中同时落在至少两个标记目标框中的像素点作为模糊样本。需要说明的是,样本集中所有的样本点都会输入至目标框预测网络v中进行预测,对于预测得到的预测目标框,负样本对应的像素点所预测的预测目标框不参与后续目标框预测网络损失函数的训练,对于模糊样本,则选取其所落的多个标记目标框中面积最小的标记目标框与该模糊样本配对进行目标框预测网络损失函数的训练。
74.将样本集中的所有像素点均输入目标框预测网络中进行预测,并将样本集中满足以下条件的像素点作为训练样本点,训练样本点所预测得到的预测目标框与对应的标记目标框进行目标框预测网络损失函数的训练。
75.其中,训练样本点满足的条件为:样本集中每层第一融合特征图中各个像素点映射至输入图像后到标记目标框的四条边界的距离信息满足以下公式:
76.min(j)≤max(l,t,r,b)<max(j)
77.其中,l、t、r、b表示第j层第一融合特征图中各个像素点到标记目标框的四条边界的距离信息,min(j)表示预设的第j层第一特征图层各个像素点到标记目标框的四条边界的距离信息的最小值,max(j)表示预设的第j层第一融合特征图中各个像素点到标记目标框的四条边界的距离信息的最大值;且min(j)和max(j)均随着层数j的增大而增大。在本实施例中,多层第一融合特征图从低层特征图到高层特征图的每一层[min(j),max(j))的定义为[0,64),[64,128),[128,256),

,以此方法类推计算。
[0078]
例如,假设第j层第一融合特征图的像素点经过映射操作,映射到输入图像的位置坐标为(x,y),该点处于一个标记目标框中,其距离标记目标框的四条边界最大值为d,并且0≤d《64,因此该像素点为最终的训练样本点,训练样本点预测得到的预测目标框参与训练。需要说明的是,多层第一融合特征图中的所有像素点均作为样本集中的样本点输入目标框预测网络中,但最终参与训练的预测目标框为满足上述条件的训练样本点所预测的预测目标框。
[0079]
步骤1032:将样本集输入第一预测模块中,得到多层具有c个通道且与对应层第一融合特征图分辨率相同的第一预测特征子图,其中第一预测特征子图用于表征对应层第一融合特征图中各个像素点所预测的预测目标框的类别信息class,c为类别数。
[0080]
步骤1033:将样本集输入第二预测模块中,得到多层具有4个通道且与对应层第一融合特征图分辨率相同的第二预测特征子图,其中第二预测特征子图用于表征对应层所述第一融合特征图中各个像素点到预测目标框的四条边界的距离信息。其中,第一融合特征图中各个像素点到预测目标框的四条边界的距离信息是目标框预测网络v直接预测得到的,并且该预测得到的预测目标框的四条边界的距离信息为第一融合特征图中各个像素点映射至输入图像f的位置后对应的距离信息l
*
、t
*
、r
*
、b
*
,具体的映射方法下面会详细介绍,此处不再赘述。
[0081]
步骤1034:将样本集输入第三预测模块中,得到多层具有1个通道且与对应层第一融合特征图分辨率相同的第三预测特征子图,其中第三预测特征子图用于表征对应层第一融合特征图中各个像素点的中心度。其中,中心度是第一融合特征图中各个像素点映射至
输入图像f的位置后位于预测目标框的中心度score。
[0082]
步骤1035:将样本集输入注意力图提取模块中,得到多层具有k
×q×
q通道维度且与对应层第一融合特征图分辨率相同的注意力图a;其中,k为掩码系数,q为掩码的长度或宽度。在本实施例中,注意力图提取模块输出的注意力图的完整形状为[bs,(k
×q×
q),h,w],bs为输入图像f的数量,h
×
w是注意力图的分辨率,k为掩码系数,q为掩码的长度或宽度,本实施将注意力图的通道维度设计为(k
×q×
q)这种三维结构,是为了对第一融合特征图中实例级别的信息进行更好地编码,例如物体的形状和姿态。在本实施例中,k取值为4,q取值为14。
[0083]
步骤1036:根据多层第一预测特征子图、多层第二预测特征子图和多层第三预测特征子图,确定多层第一融合特征图中各个像素点所预测的预测目标框的类别信息、到预测目标框的四条边界的距离信息和中心度。
[0084]
步骤1037:根据多层第一融合特征图中各个像素点的类别信息、到预测目标框的四条边界的距离信息和中心度,得到每层第一融合特征图中的预测目标框的位置信息、类别信息和中心度,继而预测得到所有预测目标框。
[0085]
假设一层第一融合特征图的高和宽分别为h和w,c为每个像素点的类别数,该层第一融合特征图相对于输入图像f的步长为s,例如输入图像f的大小为256
×
256,该层第一融合特征图的分辨率大小为64
×
64,则步长s为256/64=4;标记目标框为box,box={x0,y0,x1,y1,c},其中{x0,y0}和{x1,y1}分别表示标记目标框box的左上角和右下角顶点坐标,c为标记目标框box标记的类别信息(真实类别信息)。因此,对于一层第一融合特征图中每个像素点的坐标(f
x
,fy),采用以下公式映射至输入图像f上:
[0086][0087]
其中,(x,y)为一层第一融合特征图中的像素点(f
x
,fy)映射至输入图像f后的坐标;(f
x
,fy)为一层第一融合特征图中各个像素点的坐标。
[0088]
如上所述,目标框预测网络v预测输出的预测目标框还需要进行筛选,筛选以后的预测目标框才能够参与后续的训练,负样本对应的像素点所预测的预测目标框不参与后续目标框预测网络损失函数的训练,对于模糊样本,则选取其所落的多个标记目标框中面积最小的标记目标框与该模糊样本配对进行目标框预测网络损失函数的训练,并且每一层第一融合特征图的像素点映射到原图位置后的点到所在标记目标框的四条边界的距离的最大值需在预设范围内,上文已对参与训练的预测目标框的筛选方式进行了详细说明,此处不再赘述。
[0089]
如图7所示,通过以下公式计算训练像素点到预测目标框的四条边界的距离信息的对应标签值l、t、r、b:
[0090]
l=x-x0,t=y-y0,r=x
1-x,b=y
1-y
[0091]
其中,l、t、r、b为目标框预测网络v输出的第一融合特征图中各个训练像素点对应的预测目标框的四条边界的距离信息的对应标签值。其中,目标框预测网络v输出的训练像素点到预测目标框的四条边界的距离信息为预测值,分别为l
*
、t
*
、r
*
、b
*
,上式计算得到的训练像素点到预测目标框的四条边界的距离信息为标签值,分别为l、t、r、b,在训练时,通过同一预测目标框的预测值和标签值对目标框预测网络损失函数进行训练。
[0092]
在一个实施例,步骤104中,基于预测目标框的位置信息、类别信息和中心度以及标注数据中标记目标框的位置信息和类别信息,根据以下公式构建目标框预测网络损失函数lv:
[0093]
lv=l
class
+l
distance
+l
center
[0094]
其中,l
class
表示分类损失函数,pn表示预测目标框为类别n的置信度,gn表示标记目标框为类别n的分数,c为总的类别数;
[0095]
l
distance
表示预测距离损失函数,m为预测目标框的面积,n为标记目标框的面积,m∩n表示预测目标框与标记目标框的区域相重叠的面积;其中,处理后的标记目标框为基于上述计算样本集中训练像素点到预测目标框的四条边界的距离信息的对应标签值l、t、r、b对应的目标框。
[0096]
l
center
为表示中心度损失函数,l
*
、t
*
、r
*
、b
*
为第一融合特征图中各个像素点到预测目标框的四条边界的距离信息。
[0097]
在一个实施例中,掩码网络p包括分割模块s和融合模块b。请参考图8,图8为分割模块s一个例子的结构示意图,分割模块s包括两个任务,步骤105中,将多层第一融合特征图输入掩码网络p的分割模块s中,得到预测分割图和预测分数图包括步骤1051至步骤1054,其中,步骤1051为分割模块s的第一个任务,输出预测分割图f1,并与输入图像f对应的标记二值图f
t
在分割模块损失函数ls的引导下完成像素级别的语义二分类任务;步骤1052至步骤1054为分割模块s的第二个任务,即输出预测分数图sm。
[0098]
步骤1051:对多层第一融合特征图中的第一层第一融合特征图α1进行连续多次3
×
3卷积(c3x3)处理和1
×
1卷积(c1x1)处理,得到具有2个通道且与第一层第一融合特征图α1具有相同分辨率的预测分割图f1。
[0099]
在本实施例中,预测分割图f1用于与输入图像f对应的标记二值图在分割模块损失函数ls的引导下完成像素级别的语义二分类任务,这样可以使低层特征更有效地捕获前景物体的实例语义信息,既增加了精确的位置信息,又可以很好的抑制背景,其中,标记二值图为经过尺度变换(resize)操作后的输入图像f的二值化像素级别的标签图,其用于表征像素的前景和背景。
[0100]
通过以下公式构建分割模块损失函数ls:
[0101]
ls=-f
t
logf
1-(1-f
t
)log(1-f1)
[0102]
其中,f
t
表示尺度变换后的输入图像f对应的标记二值图,f1表示预测分割图。
[0103]
步骤1052:对多层第一融合特征图中除第一层融合特征图以外的其他层第一融合特征图α2、α2、α3分别进行连续多次3
×
3卷积处理,得到多层输出特征图。
[0104]
步骤1053:对多层输出特征图进行特征融合,得到第二融合特征图。
[0105]
步骤1054:对第二融合特征图进行3
×
3卷积处理和上采样处理后,再通过1
×
1卷积处理,以得到具有k个通道的预测分数图sm;其中,k为多层注意力图的通道维度中第一维度的值,本实施例中k取值为4。
[0106]
请参考图9,步骤106中,将多层注意力图、预测分数图和标记目标框输入掩码网络p的融合模块b中,得到实例预测图像包括步骤1061至步骤1064。
[0107]
步骤1061:根据输入图像相对于预测分数图的步长,对标记目标框进行缩放处理,以将标记目标框映射到预测分数图sm,然后通过roialign处理,以得到具有预设分辨率z*z的目标框裁剪分数图sz。
[0108]
步骤1062:对多层注意力图依据标记目标框进行挑选,得到标记目标框对应的注意力向量。
[0109]
步骤1063:对标记目标框对应的注意力向量在批处理大小维度上执行拼接操作,然后对拼接操作的结果执行维度转换操作和插值处理,以得到具有预设分辨率z*z的注意力图ad。本实施例中预设分辨率为56x56。例如,假设输入图像f的标记目标框有10个,那么得到的具有预设分辨率的目标框裁剪分数图的形状为[10,4,56,56]。
[0110]
其中,对多层注意力图依据标记目标框进行挑选包括:
[0111]
首先,确定标记目标框的中心点,记住该中心点位置并计算中心点到标记目标框四条边界的距离最大值,用该距离最大值得到符合预设范围的注意力图对应的网络层(例如,距离最大值等于30,0《30《64,则标记目标框对应第一层注意力图),然后将该标记目标框映射到对应层注意力图,得到映射目标框注意力图,接着获取映射目标框注意力图的中心点位置所在的注意力向量。以此方法,得到所有标记目标框的对应注意力向量并在批处理维度上执行拼接操作。
[0112]
为了便于理解,以一个例子为例说明,挑选后得到的标记目标框的对应注意力向量的形状为[10,4
×
14
×
14],执行维度转换操作之后得到的输出形状为[10,4,14,14],经过插值操作后输出的注意力图ad形状为[10,4,56,56]。
[0113]
步骤1064:对具有预设分辨率的注意力图ad在通道上进行归一化处理,得到归一化注意力图sd。
[0114]
步骤1065:对归一化注意力图sd和目标框裁剪分数图sz在元素级别进行相乘处理,并对相乘处理的结果在通道上求和,得到实例预测图像。
[0115]
在一个实施例中,步骤108,基于实例预测图像和输入图像f对应的标记二值图中标记目标框对应的二值化图像,通过以下公式构建融合模块b损失函数lr:
[0116]
lr=-fglogf
2-(1-fg)log(1-f2)
[0117]
其中,fg表示尺度变换后的输入图像f对应的标记二值图中标记目标框对应的二值化图像,f2表示实例预测图像。
[0118]
在一个实施例中,步骤109中,根据目标框预测网络损失函数和分割网络损失函数,构建总损失函数l:
[0119]
l=lv+ls+lr[0120]
其中,lv表示目标框预测网络损失函数,ls表示分割模块损失函数,lr表示融合模块损失函数。
[0121]
基于上述构建的总损失函数l,对多尺度物体实例分割模型进行训练,以得到最终的模型参数,完成训练。
[0122]
基于上述训练完成的多尺度物体实例分割模型,请参考图10,本实施例是提供了一种多尺度物体的实例分割方法,包括步骤201至步骤207,下面具体说明。
[0123]
步骤201:获取包括具有一个或者多个物体实例的输入图像f。
[0124]
步骤202:将输入图像f输入特征提取网络g中,得到多层具有相同通道、不同分辨率的第一融合特征图。
[0125]
步骤203:将多层具有相同通道、不同分辨率的第一融合特征图输入目标框预测网络v中,得到各层第一融合特征图中的预测目标框的位置信息、类别信息和中心度,以及各层第一融合特征图对应的注意力图,其中注意力图与对应层的第一融合特征图具有相同分辨率。
[0126]
步骤204:对每层第一融合特征图中各个像素点预测的所有预测目标框进行过滤,判断每层第一融合特征图中各个像素点预测的预测目标框是否为预测实例目标框;若为预测实例目标框,则将对应的像素点作为预测像素点。
[0127]
步骤205:将多层第一融合特征图输入掩码网络p的分割模块s中,得到预测分数图。
[0128]
步骤206:将多层注意力图、预测分数图和预测实例目标框输入掩码网络p的融合模块b中,得到实例预测图像;其中,实例预测图像中包含有输入图像f的具有预设分辨率的与所述预测实例目标框个数相等的预测实例目标框的像素分割结果。
[0129]
步骤207:将所有具有预设分辨率的预测实例目标框的像素分割结果的尺寸缩放至对应预测实例目标框的大小,得到输入图像f的所有预测实例目标框的像素分割结果,并将输入图像f中未落在预测实例目标框中的像素点默认为背景像素点,得到最终的物体实例分割结果。
[0130]
需要说明的是,本实施例中特征提取网络g对输入图像f进行特征提取的方式与上述实施例提供的训练方法相同,此处不再赘述。下面对于目标框预测网络v和掩码网络p中,与上述实施例提供的训练方法不同之处进行说明。
[0131]
在一个实施例中,步骤203中,将多层具有相同通道、不同分辨率的第一融合特征图输入目标框预测网络v中,得到每层第一融合特征图中的预测目标框的位置信息、类别信息和中心度包括步骤2031至步骤2035。
[0132]
步骤2031:将多层具有相同通道、不同分辨率的第一融合特征图输入第一预测模块中,得到多层具有c个通道且与对应层第一融合特征图分辨率相同的第一预测特征子图,其中第一预测特征子图用于表征对应层第一融合特征图中各个像素点所预测的预测目标框的类别信息,c为类别数。
[0133]
步骤2032:将多层具有相同通道、不同分辨率的第一融合特征图输入第二预测模块中,得到多层具有4个通道且与对应层第一融合特征图分辨率相同的第二预测特征子图,其中第二预测特征子图用于表征对应层第一融合特征图中各个像素点到预测目标框的四条边界的距离信息。其中,第一融合特征图中各个像素点到预测目标框的四条边界的距离信息是目标框预测网络v直接预测得到的,并且该预测得到的预测目标框的四条边界的距离信息为第一融合特征图中各个像素点映射至输入图像f的位置后对应的距离信息,具体的映射方法上述实施例已经详细介绍,此处不再赘述。
[0134]
步骤2033:将多层具有相同通道、不同分辨率的第一融合特征图输入第三预测模块中,得到多层具有1个通道且与对应层第一融合特征图分辨率相同的第三预测特征子图,其中第三预测特征子图用于表征对应层第一融合特征图中各个像素点的中心度。
[0135]
步骤2034:将多层具有相同通道、不同分辨率的第一融合特征图输入所述注意力图提取模块中,得到多层具有k
×q×
q通道维度且与对应层第一融合特征图分辨率相同的注意力图。其中,k为掩码系数,q为掩码的长度或宽度。
[0136]
步骤2035:根据多层第一预测特征子图、多层第二预测特征子图和多层第三预测特征子图,确定多层第一融合特征图中各个像素点所预测的预测目标框的类别信息、到预测目标框的四条边界的距离信息和中心度。
[0137]
步骤2036:根据多层第一融合特征图中各个像素点所预测的预测目标框的类别信息、到预测目标框的四条边界的距离信息和中心度,得到每层第一融合特征图中的预测目标框的位置信息、类别信息和中心度,继而得到每层第一融合特征图中的预测目标框。
[0138]
上述目标框预测网络v预测得到的预测目标框还需要通过以下方式进行筛选,以得到预测实例目标框:
[0139]
判断所获取到的每层第一融合特征图中的预测目标框是否符合以下3个条件:
[0140]
每层第一融合特征图中的预测目标框的置信度大于第一预设值;
[0141]
每层第一融合特征图中的预测目标框的四条边界的长度的最大值在预设范围内,需要说明的是,预测目标框的四条边界的长度为将第一融合特征图中的像素点映射至输入图像f后的距离信息;
[0142]
每层第一融合特征图中各个像素点的置信度和对应的第一融合特征图中各个像素点的中心度相乘所得的中心预测分数大于第二预设值;
[0143]
最后,当上述3个条件都符合时,再采用非极大值抑制(non-maximum suppression,nms)对预测目标框进行过滤,过滤后像素点所预测的预测目标框为预测实例目标框。
[0144]
其中,每层第一融合特征图中的预测目标框的四条边界的长度的最大值在预设范围内包括:
[0145]
将多层第一融合特征图中各个像素点映射至输入图像位置后到预测目标框的四条边界的距离信息满足以下公式:
[0146]
min(j)≤max(l
*
,t*,r*,b*)<max(j)
[0147]
其中,l
*
、t
*
、r
*
、b
*
表示第j层第一融合特征图中各个像素点映射至输入图像后到对应的预测目标框的四条边界的距离信息,min(j)表示预设的第j层第一融合特征图层各个像素点映射至输入图像后到对应的预测目标框的四条边界的距离信息的最小值,max(j)表示预设的第j层第一融合特征图中各个像素点映射至输入图像后到对应的预测目标框的四条边界的距离信息的最大值;且min(j)和max(j)均随着层数j的增大而增大。
[0148]
在一个实施例中,步骤206中,将多层注意力图、预测分数图和预测实例目标框输入掩码网络p的融合模块b中,得到实例预测图像包括步骤2051至步骤2056。
[0149]
步骤2051:根据每层第一融合特征图中预测像素点的位置,获取每层第一融合特征图的对应层注意力图的各个预测像素点对应位置的注意力向量。
[0150]
步骤2052:根据对应层注意力图的各个预测像素点对应位置的注意力向量,得到所有预测实例目标框对应的注意力向量。
[0151]
步骤2053:对所有预测实例目标框对应的注意力向量在批处理大小维度上执行拼接操作,然后执行维度转换操作和插值处理,以得到具有预设分辨率的注意力图。
[0152]
步骤2054:将预测实例目标框映射到预测分数图,然后通过roialign处理,以得到具有预设分辨率的目标框裁剪分数图。假设预测实例目标框对应的注意力向量的形状为[10,4
×
14
×
14],经过维度转换操作后的形状为[10,4,14,14],再执行插值处理后输出的具有预设分辨率的注意力图的形状为[10,4,56,56]。
[0153]
步骤2055:对具有预设分辨率的注意力图在通道上进行归一化处理,得到归一化注意力图。
[0154]
步骤2056:对归一化注意力图和目标框裁剪分数图在元素级别进行相乘处理,并对相乘处理的结果在通道上求和,得到实例预测图像。
[0155]
本发明实施例提供的多尺度物体的实例分割方法,首先,多尺度物体分割模型针对多尺度物体的数据特点,设计了更为有效且紧凑的特征提取网络g,能够提取丰富的特征信息,此外对低层特征的分数和高级特征的注意力图的独特的融合方式,实现对多尺度目标物体的精准预测,极大地提升了分割质量;其次,通过对提取的第一融合特征图直接预测目标框,无需设置预设锚框的先验参数,使用技术门槛较低,无需过多的专业知识,并且对于不同的任务和物体数据都可使用,无需适配,通用性高;最后,通过特别设计的特征提取网络g,极大减少了多尺度物体分割模型的参数量以及冗余计算,轻量级的结构使得多尺度物体分割模型的推理速度达到实时级别,节省检测时间,实现了生产企业的降本提效。
[0156]
请参考图11,图11示出了将输入图像f输入至多尺度物体实例分割模型中进行实例分割的效果示意图,其中,图11的左侧图像为输入图像f,图11的右侧图像为多尺度物体实例分割模型输出的物体实例分割结果。
[0157]
请参考图12,本发明实施例还提供了一种多尺度物体的实例分割装置,该实例分割装置包括:图像采集装置301和处理器302。各元件之间可以采用总线的方式实现连接,也可以采用其他方式连接。
[0158]
其中,图像采集装置301用于获取包括至少一个或多个物体实例的输入图像f;处理器302用于执行如上述任一实施例所提供的多尺度物体实例的分割方法。
[0159]
图像采集装置301例如可以采用视觉传感器,或者其他能够获取图像数据的装置。处理器302可以是一种集成电路芯片,具有信号的处理能力。上述的处理器302可以是通用处理器,包括中央处理器(central processing unit,简称:cpu)、网络处理器(network processor,简称:np)等。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0160]
可以理解,图12的结构仅为示意,还可以包括比图12中所示更多或者更少的组件,或者具有与图12不同的配置。图12中所示的各组件可以采用硬件和/或软件实现。例如还可以包括存储器(图中未示出),用于存储采集到的图像数据,用于存储可以被处理器302执行以实现上述任一方法实施例提供的多尺度物体的实例分割方法的技术方案的计算机程序。存储器可以是,但不限于,随机存取存储器(random access memory,简称:ram),只读存储器(read onlymemory,简称:rom),可编程只读存储器(programmable read-only memory,简称:prom),可擦除只读存储器(erasable programmable read-only memory,简称:eprom),电可擦除只读存储器(electric erasable programmable read-only memory,简称:eeprom)等。
[0161]
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过
硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
[0162]
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1