一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

对象识别模型的训练方法和对象识别方法、装置、设备与流程

2022-04-14 03:13:07 来源:中国专利 TAG:


1.本公开涉及人工智能领域,具体涉及计算机视觉领域和深度学习领域,可应用于人脸识别和内容审核等场景下。


背景技术:

2.随着计算机技术和网络技术的发展,深度学习技术在众多领域得到了广泛应用。例如,可以采用深度学习技术检测图像,以对图像内容进行审核。


技术实现要素:

3.本公开旨在提供一种提高识别精度和灵活性的对象识别模型的训练方法和对象识别方法、装置、电子设备、存储介质。
4.根据本公开的一个方面,提供了一种对象识别模型的训练方法,其中,对象识别模型包括目标检测模型,该方法包括:检测包括完整结构的目标对象的第一样本图像,得到目标对象的关键点信息;根据关键点信息裁剪第一样本图像,得到针对目标对象的多个区域图像,每个区域图像包括目标对象的残缺结构;将多个区域图像分别与预定背景图像融合,得到多个第二样本图像;以及根据多个第二样本图像对目标检测模型进行训练。
5.根据本公开的另一个方面,提供了一种对象识别方法,该方法包括:将包括目标对象的残缺结构的待识别图像输入对象识别模型包括的目标检测模型,得到待识别图像中目标对象的位置信息;根据位置信息裁剪待识别图像,得到针对目标对象的区域图像;提取区域图像的特征图;以及根据特征图确定多个预定对象中与目标对象匹配的对象,其中,对象识别模型是采用本公开提供的对象识别模型的训练方法训练的。
6.根据本公开的另一个方面,提供了一种对象识别模型的训练装置,其中,对象识别模型包括目标检测模型;该装置包括:关键点检测模块,用于检测包括完整结构的目标对象的第一样本图像,得到目标对象的关键点信息;第一裁剪模块,用于根据关键点信息裁剪第一样本图像,得到针对目标对象的多个区域图像,每个区域图像包括目标对象的残缺结构;图像融合模块,用于将多个区域图像分别与预定背景图像融合,得到多个第二样本图像;以及第一训练模块,用于根据多个第二样本图像对目标检测模型进行训练。
7.根据本公开的另一个方面,提供了一种对象识别装置,包括:目标检测模块,用于将包括目标对象的残缺结构的待识别图像输入对象识别模型包括的目标检测模型,得到待识别图像中目标对象的位置信息;图像裁剪模块,用于根据位置信息裁剪待识别图像,得到针对目标对象的区域图像;特征图提取模块,用于提取区域图像的特征图;以及对象确定模块,用于根据特征图确定针对目标对象的识别结果,其中,对象识别模型是采用本公开提供的对象识别模型的训练装置训练的。
8.根据本公开的另一个方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开提供的对象识别模型的
训练方法和/或对象识别方法。
9.根据本公开的另一个方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开提供的对象识别模型的训练方法和/或对象识别方法。
10.根据本公开的另一个方面,提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令在被处理器执行时实现本公开提供的对象识别模型的训练方法和/或对象识别方法。
11.本公开提供的方法通过根据检测的关键点信息来裁剪图像,并将裁剪得到的图像与预定背景图像融合来得到训练目标检测模型的样本图像,可以完成包括残缺结构的目标对象的样本图像的构建,可以解决包括残缺接哦股的目标对象的样本图像稀疏的技术问题,同时可以使得样本图像更为贴合实际场景中采集的图像,利于提高目标检测模型的训练精度和鲁棒性。
12.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
13.附图用于更好地理解本方案,不构成对本公开的限定。其中:图1是根据本公开实施例的对象识别模型的训练方法和对象识别方法、装置的应用场景示意图;图2是根据本公开实施例的对象识别模型的训练方法的流程示意图;图3是根据本公开实施例的确定针对多个残缺结构的多个区域的原理示意图;图4是根据本公开实施例的训练对象识别模型的原理示意图;图5是根据本公开实施例的对象识别方法的流程示意图;图6是根据本公开实施例的对象识别模型的训练装置的结构框图;图7是根据本公开实施例的对象识别装置的结构框图;以及图8是用来实施本公开实施例的对象识别模型的训练方法和/或对象识别方法的电子设备的框图。
具体实施方式
14.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
15.本公开提供了一种对象识别模型的训练方法,该对象识别模型包括目标检测模型;该训练方法包括图像检测阶段、图像裁剪阶段、图像融合阶段和模型训练阶段。在图像检测阶段中,检测包括完整结构的目标对象的第一样本图像,得到目标对象的关键点信息。在图像裁剪阶段中,根据关键点信息裁剪第一样本图像,得到针对目标对象的多个区域图像,每个区域图像包括目标对象的残缺结构。在图像融合阶段中,将多个区域图像分别与预定背景图像融合,得到多个第二样本图像。在模型训练阶段中,根据多个第二样本图像对目
标检测模型进行训练。
16.以下将结合图1对本公开提供的方法和装置的应用场景进行描述。
17.图1是根据本公开实施例的对象识别模型的训练方法和对象识别方法、装置的应用场景示意图。
18.如图1所示,该实施例的应用场景100可以包括电子设备110,该电子设备110可以为具有处理功能的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机和服务器等等。
19.该电子设备110例如可以对输入的图像120进行检测,在检测到图像120中包括目标对象时,该电子设备110还可以对该图像120包括的目标对象进行身份识别,从而得到识别结果130。其中,图像120可以包括目标对象的完整结构或残缺结构。
20.例如,若目标对象为人脸,则图像120可以包括整张人脸,也可以仅包括人脸中五官的部分结构。识别结果130可以包括目标对象的身份标识,该身份标识例如可以包括姓名、身份编号等,本公开对此不做限定。
21.在一实施例中,该电子设备110例如可以采用空间投影、矩阵分析等技术来对图像120中的目标对象进行识别。或者可以采用对象识别模型140来对图像120进行端到端处理,以完成对图像的检测和对目标对象的识别。
22.在一实施例中,该对象识别模型140例如可以由服务器150训练得到。电子设备110可以通过网络与服务器150通信连接,以向服务器150发送模型获取请求。相应地,服务器150可以响应于该请求将训练好的对象识别模型140发送给电子设备110。
23.在一实施例中,电子设备110还可以将输入的图像120发送给服务器150,由服务器150对该图像120进行检测,并对检测得到的目标对象进行识别。
24.需要说明的是,本公开提供的对象识别方法可以由电子设备110执行,也可以由服务器150执行。相应地,本公开提供的对象识别装置可以设置在电子设备110中,也可以设置在服务器150中。本公开提供的对象识别模型的训练方法可以由服务器150执行。相应地,本公开提供的对象识别模型的训练装置可以设置在服务器150中。
25.应该理解,图1中的电子设备110和服务器150的数目和类型仅仅是示意性的。根据实现需要,可以具有任意数目和类型的电子设备110和服务器150。
26.以下将结合图1,通过以下图2~图5对本公开提供的对象识别模型的训练方法进行详细描述。
27.图2是根据本公开实施例的对象识别模型的训练方法的流程示意图。
28.如图2所示,该实施例的对象识别模型的训练方法200可以包括操作s210~操作s240。
29.在操作s210,检测包括完整结构的目标对象的第一样本图像,得到目标对象的关键点信息。
30.根据本公开的实施例,若目标对象为人脸,则第一样本图像应包括人脸的完整结构。
31.该实施例可以采用关键点检测技术来检测第一样本图像。其中,关键点检测技术可以包括主动形状模型(active shape model,asm)、主动外观模型(active appearance model,aam)、基于级联姿态回归(cascaded pose regression,cpr)的方法或基于深度学习
的方法等。基于深度学习的方法例如可以采用残差50(resnet 50)网络来实现。
32.例如,对于人脸,可以检测得到描述眉毛、眼睛、鼻子、嘴巴、面部轮廓等多个人脸部位的关键点,检测得到的关键点的个数例如可以为68个、96个、106个等,本公开对此不做限定。检测得到的关键点可以由关键点在第一样本图像中的位置来表示。如此,得到的目标对象的关键点信息应包括多个关键点在第一样本图像中的位置信息,该位置信息可以由基于第一样本图像构建的坐标系中的坐标值来表示。
33.在操作s220,根据关键点信息裁剪样本图像,得到针对目标对象的多个区域图像,每个区域图像包括目标对象的残缺结构。
34.根据本公开的实施例,例如可以根据关键点信息中描述目标对象包括的多个部位的关键点的位置信息,来确定多个残缺结构各自的边界框。随后根据该边界框从样本图像中抠图,得到多个区域图像。其中,多个部位可以根据实际需求进行设定。例如,若目标对象为人脸,可以根据眼睛、鼻子、嘴、眉毛、面部轮廓等部位的关键点的位置信息,确定仅包括眼睛的残缺结构的边界框、仅包括嘴的残缺结构的边界框、仅包括上半边脸的残缺结构的边界框和/或仅包括下半边脸的残缺结构的边界框。其中,多个残缺结构中的每个残缺结构均可以包括人脸中具有辨识度的部位。可以理解的是,每个残缺结构可以仅包括目标对象的一个部位,也可以包括目标对象的多个部位。
35.在操作s230,将多个区域图像分别与预定背景图像融合,得到多个第二样本图像。
36.根据本公开的实施例,可以将该多个区域图像直接粘贴至预定背景图像中,从而得到多个图像。在多个图像中,以每个图像中区域图像的边界在该每个图像中的位置信息作为标签,由该标签和该每个图像构成一个第二样本图像。可以理解的是,可以采用任意的融合方法来融合区域图像与预定背景图像,本公开对此不做限定。
37.在操作s240,根据多个第二样本图像对目标检测模型进行训练。
38.根据本公开的实施例,目标检测模型例如可以为基于区域的卷积神经网络(region-convolutional neural network,r-cnn)或单次查看检测器(you only look once,yolo)系列模型等,本公开对此不做限定。
39.该操作s240可以将多个第二样本图像作为训练样本,将该多个第二样本图像中的图像输入目标检测模型,由目标检测模型输出区域图像的预测位置信息。随后,根据该预测位置信息和第二样本图像中作为标签的实际位置信息之间的差异,通过反向传播算法来对目标检测模型的网络参数进行调整,从而实现对目标检测模型的训练。
40.根据本公开的实施例,在根据多个第二样本图像对目标检测模型进行训练时,还可以先对该多个第二样本图像进行预处理,其中,可以采用以下技术中的至少之一来对第二样本图像进行预处理:马赛克mosaic技术、正则化技术(例如cutout)、图像随机扰动技术、改变亮度对比度的技术、加噪声的技术、随机缩放技术、随机裁剪技术、随机擦除技术等。例如可以采用不同的技术对同一个第二样本图像进行多次预处理,将多次预处理分别得到的图像也作为样本图像,对目标检测模型的训练样本进行扩充,以此提高训练样本的多样性。
41.本公开实施例通过根据检测的关键点信息来裁剪图像,并将裁剪得到的图像与预定背景图像融合来得到训练目标检测模型的样本图像,可以完成包括残缺结构的目标对象的样本图像的构建,可以解决包括残缺结构的目标对象的样本图像稀疏的技术问题,同时
可以使得样本图像更为贴合实际场景中采集的图像,利于提高目标检测模型的训练精度和鲁棒性。
42.根据本公开的实施例,在融合区域图像与预定背景图像时,可以先根据预定尺寸比例来调整区域图像,得到调整后图像。然后将该调整后图像与预定背景图像进行融合,具体可以将该调整后图像粘贴至预定背景图像的预定位置,从而得到第二样本图像。如此,可以使得区域图像在融合得到的样本图像中的尺寸更为合理,利于目标检测模型进行精准检测,避免因样本图像中区域图像的尺寸过小而存在的无法准确检测的情况。
43.例如,预定尺寸比例可以包括区域图像相对于预定背景图像的尺寸比例,该尺寸比例可以包括宽度比例和/或高度比例等。该实施例可以根据区域图像与预定背景图像之间的实际尺寸比例与预定尺寸比例的大小关系,来对区域图像执行放大或缩小操作,从而得到调整后图像。
44.例如,若预定尺寸比例中区域图像与预定背景图像之间的宽度比例的要求为不小于1:3,区域图像与预定背景图像之间的高度比例为不小于1:4,区域图像的尺寸为30*40,预定背景图像的尺寸为120*200,则需要对区域图像执行放大操作。具体可以将区域图像放大1/4倍,使得放大后图像的高度由40增大为50,宽度由30增大为75/2,由于该宽度与背景图像的宽度120之间的比例小于1:3,该实施例还可以采用预定像素值对放大后图像的宽度进行填充,使得宽度由75/2增大至120/3=40,从而得到调整后图像。可以理解的是,上述调整区域图像的方法仅作为示例以利于理解本公开,本公开对此不做限定。上述预定尺寸比例可以从预先设定的尺寸比例范围内随机选择一个尺寸比例,尺寸比例范围可以根据实际需求进行设定,本公开对此不做限定。
45.根据本公开的实施例,前述检测得到的关键点信息可以包括目标对象的多个关键点的位置信息。该实施例在裁剪样本图像得到区域图像时,可以先根据前述检测得到的多个关键点,确定针对多个目标部位的目标关键点。针对多个残缺结构中的每个残缺结构,统计该对多个目标部位的目标关键点中针对该每个残缺结构所包括的部位的关键点,可以得到针对该每个残缺结构的一个目标关键点组,共计得到分别对应多个残缺结构的多个目标关键点组。其中,多个残缺结构可以根据实际需求进行设定,例如,若目标对象为人脸,则多个残缺结构可以包括仅包括眼睛的残缺结构、仅包括嘴巴的残缺结构、包括上半边脸的残缺结构和包括下半边脸的残缺结构等。其中,仅包括眼睛的残缺结构可以包括仅包括左眼的残缺结构和仅包括右眼的残缺结构。
46.示例性地,该实施例可以将多个关键点中描述每个残缺结构的关键点组成一个目标关键点组。例如,若多个关键点的数目为68个,该实施例可以将68个关键点中描述左眼的第37个关键点~第42个关键点组成一个目标关键点组。其中,第37个关键点和第40个关键点分别表示左眼外眼角和左眼内眼角的位置信息,第38个关键点和第39个关键点表示左眼上眼睑的位置信息,第41个关键点和第42个关键点表示左眼下眼睑的位置信息。在得到对应每个残缺结构的目标关键点组后,该实施例可以将包围该目标关键点组中各目标关键点的外接矩形框作为针对所述每个残缺结构的区域的边界框,并根据该边界框裁剪第一样本图像。
47.示例性地,在考虑针对每个残缺结构的区域时,除了描述该每个残缺结构的关键点外,该实施例还可以考虑描述与该每个残缺结构相邻的相邻部位的关键点。相应地,该实
施例中对应每个残缺结构的每个目标关键点可以包括:描述该每个残缺结构的关键点;及描述与该每个残缺结构相邻的相邻部位的关键点。如此,可以保证确定的针对该每个残缺结构的区域能够覆盖该残缺结构的完整结构,利于提高得到的第二样本图像的精度,利于提高目标检测模型的检测精度。
48.例如,该实施例可以基于第一样本图像构建坐标系,该坐标系的x轴与第一样本图像的宽度方向平行,该坐标系的y轴与第一样本图像的高度方向平行。该实施例可以先确定相邻部位相对于该每个残缺结构的方位,该方位例如可以包括左侧、右侧、上侧、下侧等。随后该实施例可以从描述相邻部位的关键点中确定位于该每个残缺结构的预定范围内的关键点,并确定该确定的关键点中在该相邻部位相对于每个目标对象的方位上,距离该每个目标部位最远的关键点。最终将该最远的关键点划分至对应该每个残缺结构的目标关键点组。例如,若残缺结构为仅包括左眼的结构,该实施例可以将描述鼻梁的关键点中在x轴方向距离左眼最远的关键点、描述面部轮廓的关键点中在x轴方向距离左眼最远的关键点及描述左眉毛的关键点中在y轴方向距离左眼最远的关键点划分至对应仅包括左眼的残缺结构的目标关键点组。
49.根据本公开的实施例,在确定第一样本图像中针对每个残缺结构的区域时,可以先根据对应该每个残缺结构的目标关键点组中关键点的位置信息,确定该每个残缺结构的边界参考点。随后,根据偏差参数和该边界参考点,来确定针对该残缺结构的区域。
50.示例性地,可以将每个轮廓关键点组中,在第一样本图像中位于宽度方向最左侧的点、位于宽度方向最右侧的点、位于高度方向最上侧的点和位于高度方向最下侧的点作为该每个残缺结构的边界参考点。
51.示例性地,该实施例可以由最左侧的点在坐标系中的x轴坐标值和最上侧的点在坐标系中的y轴坐标值所表示的点作为该每个残缺结构的左上角点,由最右侧的点在坐标系中的x轴坐标值和最下侧的点在坐标系中的y轴坐标值所表示的点作为该每个残缺结构的右上角点。最后,将该左上角点和右下角点作为该每个残缺结构的边界参考点。
52.在得到每个残缺结构的边界参考点后,该实施例可以根据偏差参数对以边界参考点为顶点的边界框进行内缩或外扩,从而得到针对该残缺结构的区域。或者,该实施例可以根据偏差参数来调整边界参考点的位置,随后根据调整后的边界参考点来确定残缺结构的区域。
53.以下将结合图3对确定针对多个残缺结构的多个区域的原理进行详细描述。
54.图3是根据本公开实施例的确定针对多个目标部位的多个区域的原理示意图。
55.在一实施例中,前文偏差参数可以为根据实际需求设定的固定值。或者,可以针对每个残缺结构设定偏差参数,针对不同的残缺结构设定不同的偏差参数。
56.在一实施例中,可以根据描述残缺结构的关键点与描述相邻部位的关键点之间的距离来确定针对该残缺结构的偏差参数。如此既可以保证该残缺结构的区域能够覆盖该残缺结构的完整结构,又可以避免该残缺结构的区域未覆盖与该残缺结构相邻的部位。
57.如图3所示,该实施例300以目标对象为人脸,残缺结构包括仅包括左眼的残缺结构、仅包括右眼的残缺结构、仅包括嘴巴的残缺结构、包括上半边脸的残缺结构和包括下半边脸的残缺结构为例,通过前文描述的检测第一样本图像的操作,可以检测得到人脸的68个关键点,其中,关键点1~关键点17描述人脸的面部轮廓,关键点18~关键点22描述左眉毛,
关键点23~关键点27描述右眉毛,关键点28~关键点36描述鼻子,关键点37~关键点42描述左眼,关键点43~关键点48描述右眼,关键点49~关键点68描述嘴巴。其中,描述鼻子的关键点28~关键点36中,关键点28~关键点31表述鼻梁,关键点32~关键点36描述鼻头。各关键点可以由基于第一样本图像构建的坐标系中的坐标值来表示。其中,坐标系的x轴与第一样本图像的宽度方向平行,坐标系的y轴与第一样本图像的高度方向平行,该坐标系的原点可以为第一样本图像中的任一点。
58.示例性地,可以将关键点37~关键点42、关键点1、关键点28、关键点20和关键点31构成对应仅包括左眼的残缺结构的目标关键点组。可以将关键点43~关键点48、关键点28、关键点17、关键点25和关键点31构成对应仅包括右眼的残缺结构的目标关键点组。可以将关键点49~关键点68、关键点14、关键点34和关键点9构成对应仅包括嘴巴的残缺结构的目标关键点组。
59.对于仅包括左眼的残缺结构,该实施例可以根据关键点1与关键点37之间的距离,确定边界参考点中左上角点的x轴坐标值的偏差参数,根据关键点38与关键点20之间的距离,确定边界参考点中左上角点的y轴坐标值的偏差参数,根据关键点40与关键点28之间的距离,确定边界参考点中右下角点的x轴坐标值的偏差参数,根据关键点42与关键点31之间的距离,确定边界参考点中右下角点的y轴坐标值的偏差参数。其中,偏差参数的取值可以为0至两个关键点之间的距离值之间的任意值。根据确定的偏差参数,可以对以左上角点和右下角点为顶点的矩形框进行内缩,从而得到对应仅包括左眼的残缺结构的区域。类似地,可以得到对应仅包括右眼的残缺结构的区域和仅包括嘴巴的残缺结构的区域。其中,对于仅包括嘴巴的残缺结构,偏差参数的取值可以为两个关键点之间的距离值的一半。
60.示例性地,可以将关键点1~关键点3、关键点15~关键点27、关键点28~关键点31、关键点37~关键点48和关键点33构成对应包括上半边脸的残缺结构的目标关键点组。由于与该上半边脸相邻的部分仅包括鼻头,则对应包括上半边脸的残缺结构的目标关键点组中包括的描述相邻部位的关键点仅包括关键点33。对于包括上半边脸的残缺结构,该实施例可以根据关键点1与关键点37之间的距离,确定边界参考点中左上角点的x轴坐标值的偏差参数。根据关键点25与关键点33之间的距离,确定边界参考点中左上角点的y轴坐标值的偏差参数。根据关键点17与关键点46之间的距离,确定边界参考点中右下角点的x轴坐标值的偏差参数。根据关键点31与关键点33之间的距离,确定边界参考点中右下角点的y轴坐标值的偏差参数。对于包括上半边脸的残缺结构,偏差参数的取值可以为0至两个关键点之间的距离值之间的任意值。根据确定的偏差参数,可以对以左上角点和右下角点为顶点的矩形框进行内缩或外扩,从而得到对应包括上半边脸的残缺结构的区域。类似地,可以根据对应包括下半边脸的残缺结构的目标关键点组中关键点的位置信息确定的偏差参数,对以包括下半边脸的残缺结构的边界参考点中左上角点和右下角点为顶点的矩形框进行内缩或外扩,从而得到对应包括下半边脸的残缺结构的区域。
61.图4是根据本公开实施例的训练对象识别模型的原理示意图。
62.根据本公开的实施例,对象识别模型例如还可以包括目标分类模型。该实施例在前述的方法对目标检测模型进行训练的同时,对该对象分类模型进行训练。也可以在对目标检测模型训练之后,对对象分类模型进行训练。
63.例如,如图4所示,在实施例400中,可以先采用关键点检测模型410检测第一样本
图像401中目标对象的关键点,得到目标对象的关键点信息402。随后,根据该关键点信息402裁剪第一样本图像401,得到针对目标对象的多个区域图像403。同时,可以根据该关键点信息裁剪样本图像,得到包括目标对象的完整结构的完整图像404。例如,该完整图像404与第一样本图像401的区别在于,该第一样本图像401包括除目标对象外的背景图像。
64.在得到多个区域图像403后,该实施例400可以将该多个区域图像403与预定背景图像405融合,得到多个第二样本图像406。同时,该实施例可以根据完整图像404和多个区域图像403,来生成多个第三样本图像407。其中,该多个第三样本图像407中的每个第三样本图像除了区域图像或完整图像外,还包括表示目标对象的结构的实际类别。例如,若某个第三样本图像包括对象a的左眼的区域图像,则该某个第三样本图像包括的实际类别为对象a的左眼。该实际类别不仅可以表征目标对象的标识,还可以表征目标对象的结构类别。可以理解的是,该实施例还可以对多个区域图像403和完整图像404进行前文描述的预处理,得到除多个区域图像403和完整图像404外的多个图像,并根据多个区域图像403和完整图像404包括的实际类别来确定该多个图像的实际类别。从而使得得到的多个第三样本图像的数量大于多个区域图像403和完整图像404的总和,增加训练目标分类模型的训练样本的总量。
65.在得到多个第二样本图像406后,该实施例400可以根据该多个第二样本图像406对目标检测模型420进行训练。在得到多个第三样本图像407后,该实施例可以将该多个第三样本图像作为训练样本训练目标分类模型430。
66.示例性地,通过多个第三样本图像407输入目标分类模型430,可以得到针对多个第三样本图像407的多个预测类别。该实施例可以根据多个实际类别和多个预测类别,采用交叉熵损失函数来确定目标分类模型430的损失。采用反向传播算法调整目标分类模型430中的网络参数,以使得损失最小,实现对目标分类模型430的训练。
67.根据本公开的实施例,目标分类模型例如可以为深度卷积网络。具体地,该目标分类模型430可以包括不同尺度的卷积神经网络、归一化层、嵌入层和输出层,本公开对此不做限定。
68.该实施例通过在对象识别模型中同时设置目标检测模型和目标分类模型,可以实现对图像中目标对象的端到端识别,利于提高识别效率。
69.在一实施例中,在对目标分类模型430进行训练时,还可以采用三元组损失(tripleloss)函数和交叉熵损失函数来综合确定目标分类模型430的损失。如此,可以提高目标分类模型的训练精度,使得目标分类模型能够拉近相同类别的图像特征,并将不同类别的图像特征推远。
70.例如,该实施例400中,第一样本图像可以包括多个图像,该多个图像可以包括标识不同的多个预定对象。该实施例400在将多个第三样本图像407输入目标分类模型430后,可以由该目标分类模型430的输出层的前一层输出该多个第三样本图像407的特征图,共计得到多个特征图。
71.在得到多个特征图后,该实施例可以将该多个特征图组成多个第一特征图对和多个第二特征图对。具体地,可以将具有相同实际类别的两个第三样本图像的两个特征图构成一个第一特征图对,将具有不同实际类别的两个第三样本图像的两个特征图构成一个第二特征图对。随后将第一特征图对中两个特征图之间的差异作为针对第一特征图对的第一
差异,将第二特征图对中两个特征图之间的差异作为针对第二特征图对的第二差异。根据该第一差异和第二差异之间的差值,确定三元组损失。并根据该三元组损失对目标分类模型430进行训练。
72.例如,该实施例可以将第一特征图对中两个特征图之间的l2范数距离、欧式距离等作为针对第一特征图对的第一差异。类似地,可以得到第二差异。在一实施例中,三元组损失函数可以采用以下公式表示:。
73.其中,为三元组损失函数的取值,与表示第一特征图对中的两个特征图,与表示第二特征图对中的两个特征图。为超参,表示第一差异与第二差异之间的差值的最小取值。
74.在一实施例中,在将多个第三样本图像407输入目标分类模型430后,该目标分类模型430的输出层可以输出针对多个第三样本图像407中每个图像的概率向量。该概率向量包括每个图像中的目标对象属于多个预定类别中每个类别的概率值。该实施例可以根据概率向量中与每个图像的实际类别对应的概率值作为交叉熵损失函数的输入,从而得到交叉熵损失函数的取值。可以理解的是,根据针对该每个图像的概率向量,可以得到针对该每个图像的预测类别。具体可以将概率向量中最大概率值所对应的类别作为该每个图像的预测类别。可以理解的是,输出层的输入为每个图像的特征图,输出层对特征图处理后可以输出该每个图像的概率向量。其中,输出层可以采用多层感知机结构,本公开对此不做限定。
75.在该实施例中,该实施例可以采用三元组损失函数的取值与交叉熵损失函数的取值的加权和,来表示分类目标模型的总损失,并通过调整目标分类模型430中的网络参数来最小化总损失,实现对目标分类模型430的训练。
76.在一实施例中,在训练对象识别模型时,可以采用需要重点关注的m个目标对象的完整结构的图像,来得到前述的第二样本图像和第三样本图像。其中,对于m个目标对象中的每个目标对象,得到的区域图像可以包括4类,该4类图像可以分别为表示眼睛(可以为左眼,也可以为右眼)的图像、表示嘴巴的图像、表示上半边脸的图像和表示下半边脸的图像。如此,多个第三样本图像的实际类别可以为4m个预定类别中的任一类别。其中,m的取值例如可以为53等任意大于1的值,本公开对此不做限定。
77.根据本公开的实施例,在得到第三样本图像时,还可以对多个区域图像403和完整图像404进行缩放,随后对缩放后的图像进行前述的预处理,从而得到统一尺寸的多个第三样本图像。
78.基于本公开提供的对象识别模型的训练方法,本公开还提供了一种对象识别方法。以下将结合图5对该装置进行详细描述。
79.如图5所示,该实施例的图像识别方法500可以包括操作s510~操作s540。
80.在操作s510,将包括目标对象的残缺结构的待识别图像输入对象识别模型包括的目标检测模型,得到待识别图像中目标对象的位置信息。
81.根据本公开的实施例,对象识别模型为采用前文描述的对象识别模型的训练方法训练得到的。待识别图像可以仅包括目标对象的部分结构。该实施例可以将该待识别图像
输入目标检测模型,由目标检测模型输出目标对象的残缺结构在待识别图像中的边界框的位置信息,将该位置信息作为目标对象的位置信息。
82.在操作s520,根据位置信息裁剪待识别图像,得到针对目标对象的区域图像。
83.该操作s520可以根据位置信息从待识别图像中裁剪出目标对象的残缺结构在待识别图像中的边界框所包围的图像,从而得到针对目标对象的区域图像。
84.在操作s530,提取区域图像的特征图。
85.根据本公开的实施例,可以采用图像特征提取算法来提取区域图像的特征,将该特征作为区域图像的特征图。其中,图像特征提取算法可以包括局部二值模式特征提取算法、sift特征提取算法等,本公开对此不做限定。
86.在一实施例中,该图像特征提取算法还可以通过前文描述的对象识别模型包括的目标分类模型来实现。具体地,该实施例可以将区域图像输入目标分类模型,由目标分类模型中输出层的前一层输出该区域图像的特征图。
87.在操作s540,根据特征图确定多个预定对象中与目标对象匹配的对象。
88.根据本公开的实施例,可以将特征图输入目标分类模型的输出层,由输出层输出针对目标对象的概率向量。该实施例可以采用与前文得到预测类别的方法类似的方法来得到该目标对象的类别。由于多个预定类别是根据多个预定对象(即前述的m个目标对象)的多个残缺结构而设定的,因此,根据该目标对象的类别确定多个预定对象中与目标对象匹配的对象。
89.根据本公开的实施例,还可以预先维护有针对多个预定对象的特征库,该特征库中包括多个预定对象的特征图。该多个预定对象的特征图可以包括多个预定对象的完整结构的特征图,也可以包括多个预定对象的残缺结构的特征图。例如,在多个预定对象为不同的多个人脸时,该特征库可以包括多个人脸的整体结构的特征图,也可以包括多个人脸中每个人脸包括的眼睛的特征图、嘴巴的特征图,上半边脸的特征图和/或下半边脸的特征图。
90.该特征库中的特征图可以采用经前文描述的训练方法所得到的目标识别模型提取得到。多个预定对象例如可以包括训练目标识别模型时涉及的第一样本图像中目标对象的全集或子集,本公开对此不做限定。
91.该实施例可以采用特征图查询特征库,确定特征库中与该特征图匹配的目标特征。最后确定该多个预定对象中该目标特征所针对的预定对象为与待识别图像中的目标对象匹配的对象。
92.其中,目标特征例如可以为特征库中与特征图的相似度最高的特征。或者,该目标特征可以为特征库中与特征图的相似度大于相似度阈值的特征。若特征库中不包括与特征图的相似度大于相似度阈值的特征,则可以确定无法识别待识别图像中的目标对象。
93.根据本公开的实施例,在将待识别图像输入对象识别模型之前,还可以对该待识别图像进行缩放处理和归一化处理等,将处理后得到的图像输入对象识别模型。
94.综上可知,本公开实施例的对象识别方法,可以实现对残缺结构的目标对象的识别。在不同的场景下,通过采用场景中包括目标对象的完整结构的图像来对对象识别模型进行微调,并维护针对该场景的特征库,从而实现对不同场景中残缺的目标对象的精准识别,提高识别效率、降低识别难度和识别成本。
95.采用本公开实施例提供的对象识别方法,还可以对网络中通过利用残缺结构的人脸来表达对社会名人、时事热点所涉及人物的负面信息的图片进行有效识别,可以解决数据识别的盲区,利于挖掘出网络数据的隐藏风险,利于网络的健康发展。可以理解的是,待识别图像可以为短视频、小视频等视频数据中的视频帧,从而实现对视频的检测。
96.基于本公开提供的对象识别模型的训练方法,本公开还提供了一种对象识别模型的训练装置。以下将结合图6对该装置进行详细描述。
97.图6是根据本公开实施例的对象识别模型的训练装置的结构框图。
98.如图6所示,该实施例的对象识别模型的训练装置600可以包括关键点检测模块610、第一裁剪模块620、图像融合模块630和第一训练模块640。其中,对象识别模型可以包括目标检测模型。
99.关键点检测模块610用于检测包括完整结构的目标对象的第一样本图像,得到目标对象的关键点信息。在一实施例中,关键点检测模块610可以用于执行前文描述操作s210,在此不再赘述。
100.第一裁剪模块620用于根据关键点信息裁剪第一样本图像,得到针对目标对象的多个区域图像,每个区域图像包括目标对象的残缺结构。在一实施例中,第一裁剪模块620可以用于执行前文描述操作s220,在此不再赘述。
101.图像融合模块630用于将多个区域图像分别与预定背景图像融合,得到多个第二样本图像。在一实施例中,图像融合模块630可以用于执行前文描述操作s230,在此不再赘述。
102.第一训练模块640用于根据多个第二样本图像对目标检测模型进行训练。在一实施例中,第一训练模块640可以用于执行前文描述操作s240,在此不再赘述。
103.根据本公开的实施例,关键点信息包括描述目标对象的多个关键点的位置信息。上述第一裁剪模块620可以包括目标点确定子模块、区域确定子模块和图像确定子模块。目标点确定子模块用于确定多个关键点中分别描述目标对象的多个目标部位的目标关键点,得到分别对应目标对象的多个残缺结构的多个目标关键点组。区域确定子模块用于分别根据多个目标关键点组中关键点的位置信息,确定第一样本图像中分别针对多个残缺结构的多个区域。图像确定子模块用于根据多个区域裁剪第一样本图像,得到多个区域图像。
104.根据本公开的实施例,多个目标关键点组中的每个目标关键点组包括:描述每个目标关键点组所对应的残缺结构的关键点;以及描述多个目标部位中与每个目标关键点组所对应的残缺结构相邻的相邻部位的关键点。
105.根据本公开的实施例,区域确定子模块可以包括参考点确定单元和区域确定单元。参考点确定单元用于针对多个目标关键点组中的每个目标关键点组,根据每个目标关键点组中关键点的位置信息,确定每个目标关键点组所对应的残缺结构的边界参考点。区域确定单元用于根据边界参考点和针对每个目标关键点组所对应的残缺结构的偏差参数,确定针对每个目标关键点组所对应的残缺结构的区域。
106.根据本公开的实施例,偏差参数根据每个目标关键点组中描述残缺结构的关键点与描述相邻部位的关键点之间的距离确定。
107.根据本公开的实施例,对象识别模型还包括目标分类模型,装置600还可以包括第二裁剪模块、图像生成模块、类别预测模块和第二训练模块。第二裁剪模块用于根据关键点
信息裁剪第一样本图像,得到针对目标对象的完整图像,完整图像包括目标对象的完整结构。图像生成模块用于根据多个区域图像和完整图像,得到多个第三样本图像,每个第三样本图像包括表示目标对象的结构的实际类别。类别预测模块用于将多个第三样本图像输入目标分类模型,得到针对多个第三样本图像的多个预测类别。第二训练模块用于根据多个第三样本图像包括的多个实际类别和多个预测类别,对目标分类模型进行训练。
108.根据本公开的实施例,第一样本图像包括多个图像,多个图像包括标识不同的多个预定对象。装置600还可以包括特征图获得模块和特征图对获得模块。特征图获得模块用于将多个第三样本图像输入目标分类模型,得到针对多个第三样本图像的多个特征图。特征图对获得模块用于将多个特征图组成多个第一特征图对和多个第二特征图对;每个第一特征图对中的两个特征图所针对的两个第三样本图像具有相同的实际类别;每个第二特征图对中的两个特征图所针对的两个第三样本图像具有不同的实际类别。其中,第二训练模块还用于根据针对第一特征图对的第一差异与针对第二特征图对的第二差异之间的差值,对对象分类模型进行训练。第一差异为第一特征图对中两个特征图之间的差异,第二差异为第二特征图对中两个特征图之间的差异。
109.根据本公开的实施例,图像融合模块630可以包括图像调整子模块和图像融合子模块。图像调整子模块用于根据预定尺寸比例调整多个区域图像,得到多个调整后图像。图像融合子模块用于将多个调整后图像与预定背景图像融合,得到多个第二样本图像。
110.基于本公开提供的对象识别方法,本公开还提供了一种对象识别装置。以下将结合图7对该装置进行详细描述。
111.图7是根据本公开实施例的对象识别装置的结构框图。
112.如图7所示,该实施例的对象识别装置700可以包括目标检测模块710、图像裁剪模块720、特征图提取模块730和对象确定模块740。
113.目标检测模块710用于将包括目标对象的残缺结构的待识别图像输入对象识别模型包括的目标检测模型,得到待识别图像中目标对象的位置信息。其中,对象识别模型是采用本公开提供的对象识别模型的训练装置训练的。在一实施例中,目标检测模块710可以用于执行前文描述的操作s510,在此不再赘述。
114.图像裁剪模块720用于根据位置信息裁剪待识别图像,得到针对目标对象的区域图像。在一实施例中,图像裁剪模块720可以用于执行前文描述的操作s520,在此不再赘述。
115.特征图提取模块730用于提取区域图像的特征图。在一实施例中,特征图提取模块730可以用于执行前文描述的操作s530,在此不再赘述。
116.对象确定模块740用于根据特征图确定多个预定对象中与目标对象匹配的对象。在一实施例中,对象确定模块740可以用于执行前文描述的操作s540,在此不再赘述。
117.根据本公开的实施例,上述对象确定模块740可以包括目标特征确定子模块和对象确定子模块。目标特征确定子模块用于根据特征图查询特征库,确定特征库中与特征图匹配的目标特征。其中,特征库包括描述多个预定对象的残缺结构的多个特征图。对象确定子模块用于确定多个预定对象中目标特征所针对的预定对象为与目标对象匹配的对象。其中,特征库包括针对多个预定对象中每个预定对象的特征。
118.根据本公开的实施例,对象识别模型还包括目标分类模型。上述特征图提取模块730具体用于将区域图像输入目标分类模型,得到区域图像的特征图。
119.需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
120.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
121.图8示出了可以用来实施本公开实施例的对象识别模型的训练方法和/或对象识别方法的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
122.如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(rom)802中的计算机程序或者从存储单元808加载到随机访问存储器(ram)803中的计算机程序,来执行各种适当的动作和处理。在ram 803中,还可存储设备800操作所需的各种程序和数据。计算单元801、rom 802以及ram 803通过总线804彼此相连。输入/输出(i/o)接口805也连接至总线804。
123.设备800中的多个部件连接至i/o接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
124.计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如对象识别模型的训练方法和/或对象识别方法。例如,在一些实施例中,对象识别模型的训练方法和/或对象识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由rom 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到ram 803并由计算单元801执行时,可以执行上文描述的对象识别模型的训练方法和/或对象识别方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行对象识别模型的训练方法和/或对象识别方法。
125.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出
装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
126.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
127.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
128.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
129.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
130.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。其中,服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("virtual private server",或简称 "vps")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
131.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
132.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开
的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献