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

一种行人跟踪方法、装置、存储介质和电子设备与流程

2021-11-22 12:39:00 来源:中国专利 TAG:


1.本技术涉及计算机应用技术领域,特别是涉及一种行人跟踪方法、装置、存储介质和电子设备。


背景技术:

2.目前,现有的行人跟踪方法包括:对视频进行抽帧,获得多个视频帧图像。随后,可对多个视频帧图像中每个视频帧图像进行人脸检测和人体检测,以得到各个视频帧图像对应的人脸框和人体框。随后,可通过后处理方法对各个视频帧图像中的人脸框和人体框进行绑定(例如,基于人脸框和人体框的交并比(intersection over union,iou)值对各个视频帧图像中的人脸框和人体框进行绑定),以得到人脸人体绑定对。最后,在相邻的视频帧图像上,可使用跟踪算法完成对同一行人的跟踪,以实现人脸绑定跟踪。
3.在实现本发明的过程中,发明人发现现有技术中存在如下问题:由于现有的行人跟踪方法中通过后处理方法对各个视频帧图像中的人脸框和人体框进行绑定,从而引起了人脸绑定准确率不高的问题。例如,对于人群比较密集的场景,在视频帧图像中,两个行人离得比较近,从而使得两个行人对应的人脸框和人体框也是离的比较近的,那么此时基于iou值很难准确地判断出目标人脸框是属于哪个行人的。


技术实现要素:

4.本技术实施例的目的在于提供一种行人跟踪方法、装置、存储介质和电子设备,以解决现有技术中存在着的人脸绑定准确率不高的问题。
5.第一方面,本技术实施例提供了一种行人跟踪方法,该行人跟踪方法包括:提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据,其中,至少一个人脸数据中每个人脸数据均包括人脸框和被人脸框框选的人脸对应的人脸特征向量,至少一个人体数据中每个人体数据均包括人体框和被人体框框选的人体对应的人体特征向量;将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像的脸人绑定结果,其中,脸人绑定结果包括人脸框和与人脸框对应的人体框以及人脸特征向量和人脸特征向量对应的人体特征向量;基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,n为大于等于0的整数。
6.因此,本技术实施例通过将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定各个视频帧图像的脸人绑定结果,从而能够提升单个视频帧图像内人脸绑定的准确度。此外,本技术实施例还基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,从而能够显著提升人体跟踪的准确度和速度。
7.在一个可能的实施例中,将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像中的脸人绑定结果,包括:计算当前人脸特征向量和
当前人体特征向量之间的距离;在当前人脸特征向量和当前人体特征向量之间的距离小于等于第一预设距离的情况下,确定当前人脸特征向量对应的当前人脸框和当前人体特征向量对应的当前人体框为同一行人的人脸框和人体框;根据当前人脸框、当前人体框、当前人脸特征向量和当前人体特征向量,获取脸人绑定结果。
8.因此,本技术实施例通过人脸特征向量和人体特征向量之间的距离能够精准地获取脸人绑定结果。
9.在一个可能的实施例中,在将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像中的脸人绑定结果之后,行人跟踪方法还包括:计算每个视频帧图像中每个人脸框和每个人体框的交并比iou值;根据iou值,确定每个视频帧图像中的人脸人体绑定对,其中,人脸人体绑定对包括人脸框和与人脸框对应的人体框;利用每个视频帧图像中的人脸人体绑定对,对每个视频帧图像的脸人绑定结果进行验证,以从每个视频帧图像的脸人绑定结果中查找错误匹配的脸人绑定结果;从每个视频帧图像的脸人绑定结果中删除错误匹配的脸人绑定结果。
10.因此,本技术实施例也可通过iou值确定的人脸人体绑定对来对脸人绑定结果进行验证,以减少距离上较远但是通过特征向量错误绑定的脸人绑定结果,从而能够进一步提高人脸绑定的准确率。
11.在一个可能的实施例中,间隔n帧的两个视频帧图像包括第i个视频帧图像和第i n个视频帧图像,i为大于等于1的整数;其中,基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,包括:计算第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离;在第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离小于等于第二预设距离的情况下,确定第i个视频帧图像的脸人绑定结果中的人体框和第i n个视频帧图像中的人体框为同一个行人的人体框。
12.因此,本技术实施例通过第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离来精准地确定是否是同一个行人。
13.在一个可能的实施例中,提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据,包括:通过训练好的检测模型提取每个视频帧图像的至少一个人脸数据和至少一个人体数据。
14.在一个可能的实施例中,检测模型的训练过程包括:利用第一损失函数计算用于训练待训练的检测模型的至少一个训练图像中每个训练图像的每个人脸特征向量和每个人体特征向量之间的距离,以获得第一损失函数值;第一损失函数用于拉近每个训练图像中同一行人的人脸特征向量和人体特征向量之间的距离,并拉远每个训练图像中不同行人的人脸特征向量和人体特征向量之间的距离;利用第二损失函数计算间隔n帧的两个训练图像中的同一行人的身体特征向量之间的距离,以获得第二损失函数值;其中,第二损失函数用于拉近间隔n帧的两个训练图像中同一行人的身体特征向量之间的距离,并拉远间隔n帧的两个训练图像中不同行人的身体特征向量之间的距离;根据第一损失函数值和第二损失函数值,对待训练的检测模型的参数进行调整,以获得训练好的检测模型。
15.因此,借助于上述检测模型的训练过程,本技术实施例使得训练好的检测模型输出的人脸特效向量和人体特效向量能够识别是否是同一行人。
16.在一个可能的实施例中,间隔n帧的两个视频帧图像为前后相邻的两个视频帧图像。
17.因此,本技术实施例能够通过前后相邻的两个视频帧图像实现行人跟踪。
18.第二方面,本技术实施例提供了一种行人跟踪装置,该行人跟踪装置包括:提取模块,用于提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据,其中,至少一个人脸数据中每个人脸数据均包括人脸框和被人脸框框选的人脸对应的人脸特征向量,至少一个人体数据中每个人体数据均包括人体框和被人体框框选的人体对应的人体特征向量;匹配模块,用于将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像的脸人绑定结果,其中,脸人绑定结果包括人脸框和与人脸框对应的人体框以及人脸特征向量和人脸特征向量对应的人体特征向量;第一确定模块,用于基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,n为大于等于0的整数。
19.在一个可能的实施例中,匹配模块,具体用于:计算当前人脸特征向量和当前人体特征向量之间的距离;在当前人脸特征向量和当前人体特征向量之间的距离小于等于第一预设距离的情况下,确定当前人脸特征向量对应的当前人脸框和当前人体特征向量对应的当前人体框为同一行人的人脸框和人体框;根据当前人脸框、当前人体框、当前人脸特征向量和当前人体特征向量,获取脸人绑定结果。
20.在一个可能的实施例中,行人跟踪装置还包括:第一计算模块,用于在将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像中的脸人绑定结果之后,计算每个视频帧图像中每个人脸框和每个人体框的交并比iou值;第二确定模块,用于根据iou值,确定每个视频帧图像中的人脸人体绑定对,其中,人脸人体绑定对包括人脸框和与人脸框对应的人体框;查找模块,用于利用每个视频帧图像中的人脸人体绑定对,对每个视频帧图像的脸人绑定结果进行验证,以从每个视频帧图像的脸人绑定结果中查找错误匹配的脸人绑定结果;删除模块,用于从每个视频帧图像的脸人绑定结果中删除错误匹配的脸人绑定结果。
21.在一个可能的实施例中,间隔n帧的两个视频帧图像包括第i个视频帧图像和第i n个视频帧图像,i为大于等于1的整数;第一确定模块,具体用于:计算第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离;在第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离小于等于第二预设距离的情况下,确定第i个视频帧图像的脸人绑定结果中的人体框和第i n个视频帧图像中的人体框为同一个行人的人体框。
22.在一个可能的实施例中,提取模块,具体用于:通过训练好的检测模型提取每个视频帧图像的至少一个人脸数据和至少一个人体数据。
23.在一个可能的实施例中,行人跟踪装置包括:第二计算模块,用于根据利用第一损失函数计算用于训练待训练的检测模型的至少一个训练图像中每个训练图像的每个人脸特征向量和每个人体特征向量之间的距离,以获得第一损失函数值;其中,第一损失函数用
于拉近每个训练图像中同一行人的人脸特征向量和人体特征向量之间的距离,并拉远每个训练图像中不同行人的人脸特征向量和人体特征向量之间的距离;第三计算模块,用于根据间隔n帧的两个训练图像中的同一行人的身体特征向量之间的距离,构建第二损失函数;其中,第二损失函数用于拉近间隔n帧的两个训练图像中同一行人的身体特征向量之间的距离,并拉远间隔n帧的两个训练图像中不同行人的身体特征向量之间的距离;调整模块,用于根据第一损失函数和第二损失函数,对待训练的检测模型的参数进行调整,以获得训练好的检测模型。
24.在一个可能的实施例中,间隔n帧的两个视频帧图像为前后相邻的两个视频帧图像。
25.第三方面,本技术实施例提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行第一方面或第一方面的任一可选的实现方式所述的方法。
26.第四方面,本技术实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行第一方面或第一方面的任一可选的实现方式所述的方法。
27.第五方面,本技术提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行第一方面或第一方面的任意可能的实现方式中的方法。
28.为使本技术实施例所要实现的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
29.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
30.图1示出了现有技术中的一种行人跟踪方法的流程图;
31.图2示出了本技术实施例提供的一种行人跟踪方法的流程图;
32.图3示出了本技术实施例提供的一种行人跟踪方法的具体流程图;
33.图4示出了本技术实施例提供的一种行人跟踪装置的结构框图;
34.图5示出了本技术实施例提供的一种电子设备的结构框图。
具体实施方式
35.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
36.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
37.人脸绑定跟踪技术是指从视频中定位人脸和人体,并将属于同一个行人的人脸和人体绑定成对,并在时序上对人体进行跟踪的技术。通过人脸绑定跟踪技术,可以得到行人
在视频中的轨迹,并可获取其在任意时刻的人脸和人体图片,在自动驾驶、安防、新零售和虚拟增强现实等领域都有广泛的应用前景。
38.请参见图1,图1示出了现有技术中的一种行人跟踪方法的流程图。如图1所示的行人跟踪方法包括:
39.对待抽帧视频进行抽帧,以得到图像序列集。其中,图像序列集包括第1个视频帧图像至第n个视频帧图像,n为正整数。随后,分别对图像序列集中每个视频帧图像进行人脸检测和人体检测,以得到每个视频帧图像的人脸框和人体框。随后,可使用后处理方法对各个视频帧图像的人脸框和人体框进行绑定,以得到人脸人体绑定对。随后,在相邻的视频帧图像上,使用跟踪算法(例如,iou tracker算法或者re

id tracker算法)完成对同一行人的跟踪,从而能够完成人脸绑定跟踪。
40.但是,现有的行人跟踪方法至少存在如下问题:
41.由于现有的行人跟踪方法中通过后处理方法对各个视频帧图像中的人脸框和人体框进行绑定,从而引起了人脸绑定准确率不高的问题;
42.由于现有的行人跟踪方法中通过iou tracker算法完成对同一行人的跟踪,从而引起了跟踪准确率不高的问题。例如,在人群比较密集的场景下,通过iou tracker算法实现跟踪可能会把上一个视频帧图像的一个行人匹配成下一个视频帧图像中的另一个行人的情况;
43.由于现有的行人跟踪方法中通过re

id tracker算法完成对同一行人的跟踪,从而引起了跟踪效率比较低的问题。例如,通过re

id tracker算法完成对同一行人的跟踪是先将视频帧图像中的人体框提取出来,随后将人体框输入到现有的一个特征提取模型中,以获得对应的人体特征(例如,穿着信息或者年龄信息等)。但是,在视频帧图像中的行人比较多的情况下,则需要提取多次才能够把视频帧图像中的人体框提取出来,并且每个人体框都需要现有的特征提取模型进行特征提取,即特征提取也需要提取多次,从而造成了跟踪效率比较低的问题。
44.也就是说,现有的行人跟踪方法至少存在着以下两个问题:单个视频帧图像内人脸绑定准确率不高;现有的行人跟踪方法难以兼顾精度高和速度快的需求。
45.基于此,本技术实施例提供了一种行人跟踪方法,通过提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据,其中,至少一个人脸数据中每个人脸数据均包括人脸框和被人脸框框选的人脸对应的人脸特征向量,至少一个人体数据中每个人体数据均包括人体框和被人体框框选的人体对应的人体特征向量,随后将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像的脸人绑定结果,其中,脸人绑定结果包括人脸框和与人脸框对应的人体框以及人脸特征向量和人脸特征向量对应的人体特征向量,最后基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,n为大于等于0的整数。因此,本技术实施例通过将至少两个视频帧图像中每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定各个视频帧图像的脸人绑定结果,从而能够提升单个视频帧图像内人脸绑定的准确度。
46.此外,本技术实施例还基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,从而能够显著提升人体跟踪的准
确度和速度。
47.为了便于理解本技术实施例,下面对本技术实施例所涉及的一些术语进行解释如下:
48.特征嵌入(feature embedding,fe):它是一个长度为m的向量。
49.应理解,m的具体值可根据实际需求来进行设置,本技术实施例并不局限于此。
50.例如,m的具体指可以为8。
51.还应理解,特征嵌入还可以称为特征向量,也可以称为特征数据等。
52.对应地,人脸特征嵌入也可以称为人脸特征向量,也可以称为人脸特征数据等。以及,人体特征嵌入也可以称为人体特征向量,也可以称为人体特征数据等。
53.此外,特征嵌入还具有如下性质:
54.对于属于同一个行人的人脸框(并且该人脸框可具有对应的人脸特征向量)和人体框(并且该人体框可具有对应的人体特征向量),同一个视频帧图像中的人脸特征向量和人体特征向量之间的距离小于等于第一预设距离,即其人脸特征向量和人体特征向量之间的距离是比较近的;
55.对于属于不同行人的人脸框和人体框,同一个视频帧图像中的人脸特征向量和人体特征向量之间的距离大于第一预设距离,即其人脸特征向量和人体特征向量之间的距离是比较远的;
56.对于属于同一行人的人体框和人体框,相邻的两个视频帧图像中的人体特征向量之间的距离小于等于第二预设距离,即其人体特征向量之间的距离是比较近的;
57.对于属于不同行人的人体框和人体框,相邻的两个视频帧图像中的人体特征向量之间的距离大于等于第二预设距离,即其人体特效向量之间的距离是比较远的。
58.这里需要说的是,对于特征嵌入的上述四个性质来说,特征嵌入的前两个性质是在单个视频帧图像中进行人脸绑定时使用的,特征嵌入的后两个性质则是在不用的视频帧图像中进行人体跟踪时使用的。
59.应理解,第一预设距离的具体距离和第二预设距离的具体距离均可根据实际需求来进行设置,本技术实施例并不局限于此。
60.还应理解,不同的特征向量之间的距离(例如,人脸特征向量和人体特征向量之间的距离;或者,一人体特征向量和另一人体特征向量之间的距离)可以是欧式距离,也可以是向量的余弦相似度等。
61.也就是说,不同的特征向量之间的距离所对应的具体形式可根据实际需求来进行设置,本技术实施例并不局限于此。
62.请参见图2,图2示出了本技术实施例提供的一种行人跟踪方法的流程图。如图2所示的行人跟踪方法可以由行人跟踪装置执行,该行人跟踪装置可以与下文中的图4所示的行人跟踪装置对应,该行人跟踪装置可以是能够执行该方法的各种设备,例如,计算机或者电子设备等,本技术实施例并不限于此。如图2所示的行人跟踪方法包括:
63.步骤s210,提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据。其中,至少一个人脸数据中每个人脸数据均包括人脸框和被人脸框框选的人脸对应的人脸特征向量,至少一个人体数据中每个人体数据均包括人体框和被人体框框选的人体对应的人体特征向量。
64.应理解,人脸特征向量用于表示对应的视频帧图像中的人脸特征。
65.还应理解,人体特征向量用于表示对应的视频帧图像中的人体特征。
66.还应理解,虽然上面是以人脸数据包括人脸框和被人脸框框选的人脸对应的人脸特征向量为例来进行描述的,但本领域的技术人员应当理解,人脸数据除了包括人脸框和被人脸框框选的人脸对应的人脸特征向量之外,还可包括其他的数据,本技术实施例并不局限于此。
67.对应地,人体数据除了包括人体框和被人体框框选的人体对应的人体特征向量之外,还可包括其他的数据,本技术实施例并不局限于此。
68.还应理解,提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据的具体方式可根据实际需求来进行设置,本技术实施例并不局限于此。
69.例如,通过训练好的检测模型提取视频中每个视频帧图像中的至少一个人脸数据和至少一个人体数据。
70.还应理解,检测模型的训练过程可根据实际需求来进行设置,本技术实施例并不局限于此。
71.可选地,利用第一损失函数计算用于训练待训练的检测模型的至少一个训练图像中每个训练图像的每个人脸特征向量和每个人体特征向量之间的距离,以获得第一损失函数值;其中,第一损失函数用于拉近每个训练图像中同一行人的人脸特征向量和人体特征向量之间的距离,并拉远每个训练图像中不同行人的人脸特征向量和人体特征向量之间的距离(或者说,第一函数使得同一行人的人脸特征向量和人体特征向量之间的距离近,以及使得不同行人的人脸特征向量和人体特征向量之间的距离远),随后利用第二损失函数计算间隔n帧的两个训练图像中的同一行人的身体特征向量之间的距离,以获得第二损失函数值;其中,第二损失函数用于拉近间隔n帧的两个训练图像中同一行人的身体特征向量之间的距离(例如,拉近第m个训练图像中的第一行人的人体特征向量和第m n个训练图像中的第一行人的人体特征向量之间的距离),并拉远所述间隔n帧的两个训练图像中不同行人的身体特征向量之间的距离(或者说,第二函数使得间隔n帧的两个训练图像中同一行人的人体特征向量和人体特征向量之间的距离近,以及使得间隔n帧的两个训练图像中不同行人的人体特征向量和人体特征向量之间的距离远),最后根据第一损失函数值和第二损失函数值,对待训练的检测模型的参数进行调整,以获得训练好的检测模型。其中,n为大于等于0的整数。
72.应理解,n的具体值可根据实际需求来进行设置,本技术实施例并不局限于此。
73.例如,n可以为0,即间隔n帧的两个训练图像为前后相邻的两个训练图像。
74.为了便于理解本技术实施例,下面以前后相邻的两个训练图像为例来进行描述。
75.具体地,为了使训练好的检测模型输出的人脸特效向量和人体特效向量满足上述特征嵌入的性质,则需要提供包含人脸框、人体框及其对应的绑定信息(例如,第一人脸框和第一人体框进行绑定,其属于同一个行人)的训练图像集。
76.在将训练图像集中的至少一个训练图像输入到待训练的检测模型(或者初始检测模型)的情况下,可获得待训练的检测模型输出的初始人脸数据和初始人体数据。其中,初始人脸数据包括初始人脸框及其对应的初始人脸特征向量,初始人体数据包括初始人体框
及其对应的初始人体特征向量。
77.此外,对于各个训练图像来说,可基于第一损失函数计算单个训练图像中各个初始人脸特征向量和各个初始人体特效向量之间的距离(例如,通过第一损失函数计算第一初始人脸特征向量和第一初始人体特征向量之间的距离),并计算各个训练图像中的各个初始人脸特征向量和各个初始人体特效向量之间的距离的总和,以获得各个训练图像对应的第一损失函数值(或者称为第一距离和)。
78.另外,对于不同的训练图像来说,由于相邻的两个训练图像中可能存在相同的行人,也可能存在不同的行人,从而可基于训练图像集中的绑定关系来确定相邻的两个训练图像中是否存在同一行人。
79.此外,对于相邻的两个训练图像中的不同行人来说,可基于第一损失函数计算相邻的两个训练图像中的不同行人的身体特征向量之间的距离(例如,计算第一张训练图像中的第一人的身体特征向量和第二张训练图像中的第二人的身体特征向量之间的距离),并计算所有相邻的两个训练图像中的不同行人的身体特征向量之间的距离的总和,以获得相邻的两个训练图像中的不同行人之间的第三损失函数值(或者称为第三距离和);对于相邻的两个训练图像中的同一行人来说,可基于第二损失函数计算相邻的两个训练图像中的同一行人的身体特征向量之间的距离(例如,计算第一张训练图像中的第一人的身体特征向量和第二张训练图像中的第一人的身体特征向量之间的距离),并计算所有相邻的两个训练图像中的同一行人的身体特征向量之间的距离的总和,以获得相邻的两个训练图像中的同一行人之间的第二损失函数值(或者称为第二距离和)。
80.随后,可将所有第一损失函数值、所有第二损失函数值以及所有第三损失函数值相加,以获得总损失函数值。
81.最后,可利用总损失函数值,对待训练的检测模型(或者训练中的检测模型)中的参数进行调整,以得到训练好的检测模型。
82.这里需要说明的是,虽然上面以将所有第一损失函数值、所有第二损失函数值和以及所有第三损失函数值相加后获得总损失函数值为例来进行描述的,但本领域的技术人员应当理解,该损失函数值的确定方式还可根据实际需求来进行设置,本技术实施例并不局限于此。
83.例如,对于各个训练图像来说,可基于第一损失函数计算单个训练图像中各个初始人脸特征向量之间的距离(例如,通过第一损失函数计算第一初始人脸特征向量和第二初始人脸特征向量之间的距离),并计算单个训练图像中各个初始人脸特征向量之间的距离的总和,以获得第四损失函数值(或者称为第四距离总和)。
84.随后,可将所有第一损失函数值、所有第二损失函数值、所有第三损失函数值以及所有第四损失函数值相加获得损失函数值。
85.应理解,第一损失函数对应的具体函数可根据实际需求来进行设置,只要保证第一损失函数用于确定行人的特征向量的距离(例如,人脸特征向量和人体特征向量之间的距离;再例如,不同图像中人体特征向量之间的距离)即可,本技术实施例并不局限于此。
86.例如,第一损失函数可包括第一损失子函数和第二损失子函数等。其中,第一损失子函数用于计算初始人脸特征向量和初始人体特征向量之间的距离,第二损失子函数用于计算一初始人脸特征向量和另一初始人脸特征向量之间的距离。
87.还应理解,第二损失函数对应的具体函数也可根据实际需求来进行设置,只要保证第二损失函数用于确定同一行人的身体特征向量的距离即可,本技术实施例并不局限于此。
88.这里需要说明的是,虽然上面是以前后相邻的两个训练图像对待训练的检测模型进行训练为例来进行描述的,但本领域的技术人员应当理解,还可以其他的间隔n(例如,n可以为1,也可以为3等)个的训练图像对待训练的检测模型进行训练,本技术实施例并不局限于此。
89.为了便于理解本技术实施例,下面通过具体的实施例来进行描述。
90.具体地,将同一视频抽取得到的各个视频帧图像输入到训练好的检测模型中,以获得训练好的检测模型输出的至少一个人脸数据和至少一个人体数据。其中,至少一个人脸数据中每个人脸数据均包括当前人脸的置信度、当前人脸框和被当前人脸框框选的当前人脸对应的的人脸特征向量;至少一个人体数据中每个人体数据均包括当前人体的置信度、当前人体框和被当前人体框框选的当前人体对应的人体特征向量。
91.例如,在通过faces表示至少一个人脸数据(即通过faces表示人脸数据集合)的情况下,该人脸数据集合中的每个元素为f
i
,该f
i
为:
92.f
i
=(s
i
,b
i
,fe
i
)
93.其中,f
i
表示人脸数据集合中的第i个人脸数据,s
i
表示第i个人脸的置信度,b
i
表示第i个人脸的人脸框,fe
i
表示第i个人脸对应的人脸特征向量。
94.再例如,在通过persons表示至少一个人体数据(即通过persons表示人体数据集合)的情况下,该人体数据集合中的每个元素为p
j
,该p
j
为:
95.p
j
=(w
j
,r
j
,g
j
)
96.其中,p
j
表示人体数据集合中的第j个人体数据,w
j
表示第j个人体的置信度,r
j
表示第j个人体的人体框,g
i
表示第j个人体对应的人体特征向量。
97.步骤s220,将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像的脸人绑定结果。其中,脸人绑定结果包括人脸框和与人脸框对应的人体框以及人脸特征向量和人脸特征向量对应的人体特征向量。
98.具体地,在基于特征向量进行单个视频帧图像中的人脸绑定的过程中,可将各个视频帧图像的所有人脸特征向量和所有人体特征向量的距离计算出来,并在距离小于第一预设距离的情况下,可确定此距离对应的人脸特征向量和人体特征向量确定为属于同一行人的人脸特征向量和人体特征向量,进一步可确定属于同一行人的人脸特征向量对应的人脸框和同一行人的人体特征向量对应的人体框对应同一行人。
99.随后,可将人脸框、人脸框对应的人脸特征向量、人脸框对应的人体框和该人体框对应的人体特征向量组合一个脸人绑定结果。
100.也就是说,计算当前人脸特征向量和当前人体特征向量之间的距离,随后在当前人脸特征向量和当前人体特征向量之间的距离小于等于第一预设距离的情况下,确定当前人脸特征向量对应的当前人脸框和当前人体特征向量对应的当前人体框为同一行人的人脸框和人体框,最后根据当前人脸框、当前人体框、当前人脸特征向量和当前人体特征向量,获取脸人绑定结果。
101.例如,在通过fp表示脸人绑定结果(即通过fp表示人脸绑定集合)的情况下,该fp
具体如下:
102.fp={z
k
|z
k
=(f
i
,p
j
)}
103.其中,fp表示人脸绑定集合,z
k
表示第k个脸人绑定结果,并且第k个脸人绑定结果是由第i个人脸数据和第j个人体数据构成的,即此时第i个人脸数据和第j个人体数据是对应同一个人的数据。
104.这里需要说明的是,由于在实际情况下,有些行人可能只有人体没有人脸(例如,人脸被遮挡;或者,图像中只有人物的背景),则此时的脸人绑定结果存在的只有人体框没有人脸框的情况。并且,在后续进行跟踪的过程中,由于其是利用人体框对应的人体特征向量进行跟踪的,则该只有人体框的脸人绑定结果也可用于跟踪。
105.因此,相比于现有的通过后处理方法对各个视频帧图像中的人脸框和人体框进行绑定的方案,基于人脸特征向量和人体特征向量的方法能够利用人脸特征和人体特征,从而能够更加准确地判断人脸框和人体框是否是同一个人。
106.此外,考虑到基于人脸特征向量和人体特征向量确定的脸人绑定结果可能也会出现错误的情况下,从而可计算每个视频帧图像中每个人脸框和每个人体框的交并比iou值,随后根据iou值,确定各个视频帧图像中的人脸人体绑定对,其中,人脸人体绑定对包括人脸框和与人脸框对应的人体框,随后利用每个视频帧图像中的人脸人体绑定对,对每个视频帧图像的脸人绑定结果进行验证,以从每个视频帧图像的脸人绑定结果中查找错误匹配的脸人绑定结果,最后从每个视频帧图像的脸人绑定结果中删除错误匹配的脸人绑定结果。
107.也就是说,本技术实施例也可通过iou值确定的人脸人体绑定对来对脸人绑定结果进行验证,以减少距离上较远但是通过特征向量错误绑定的脸人绑定结果,从而能够进一步提高人脸绑定的准确率。
108.步骤s230,基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人。其中,n为大于等于0的整数。
109.应理解,n的具体取值可根据实际需求来进行设置,本技术实施例并不局限于此。
110.例如,若n的取值为0,则间隔n帧的两个视频帧图像为前后相邻的两个视频帧图像。
111.为了便于理解本技术实施例,下面通过具体的实施例来进行描述。
112.具体地,在n的取值为0的情况下,由于每个脸人绑定结果中均包含人体特征向量,可计算前一个视频帧图像的脸人绑定结果中的人体特征向量和后一个视频帧图像的脸人绑定结果中的人体特征向量的距离,随后在前一个视频帧图像的脸人绑定结果中的人体特征向量和后一个视频帧图像的脸人绑定结果中的人体特征向量的距离小于等于第二预设距离的情况下,确定前一个视频帧图像的脸人绑定结果中的人体框和后一个视频帧图像的脸人绑定结果中的人体框为同一个行人的人体框。
113.此外,由于本技术实施例基于人体特征而非位置关系实现跟踪,从而本技术实施例比iou tracker算法具有更好的精度。以及,由于在步骤s210中可获得人体特征向量,无需依赖额外的特征提取模型来实现特征提取,从而能够加快跟踪速度。
114.例如,对于第i个视频帧图像和第i 1个视频帧图像来说,计算第i个视频帧图像中所有人体特征向量和第i 1个视频帧图像中所有人体特征向量的距离。若距离小于等于第
二预设距离,则认为是匹配上的行人(例如,在第i个视频帧图像和第i 1个视频帧图像都存在的行人);若距离大于第二预设距离,则认为未匹配上行人(例如,在第i个视频帧图像中存在某行人,而在第i 1个视频帧图像中消失,即对应行人离开画面或者行人被画面中的其他物体遮挡的情况);若有在第i个视频帧图像中不存在的行人,在第i 1个视频帧图像中出现,则对应行人进入画面或者被遮挡程度减弱的情况。随后,可重复上述步骤,以实现对其他相邻的两个视频帧图像的跟踪,从而可获得所有行人在视频中的跟踪结果。
115.随后,可获得每个行人在视频中出现的人体框和人脸框,从而可获取其在任意时刻中出现在视频中的人脸框和人体框,从而实现了脸人绑定跟踪。
116.这里需要说的是,虽然上面是以前后相邻的两个视频帧图像为例来进行描述的,但本领域的技术人员应当理解,其还可基于间隔其他的n帧(例如,n可以为2,也可以为3等)的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔其他的n帧的两个视频帧图像中相同的行人,本技术实施例并不局限于此。
117.因此,本技术实施例可通过训练好的检测模型对单个视频帧图像进行人脸检测和人体检测,以获得人脸数据和人体数据。随后可通过人脸数据中的人脸特征向量和人体数据中的人体特征向量进行人脸绑定,得到脸人绑定结果。随后可使用间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量完成同一行人的人体匹配,从而实现人体跟踪。最后,可根据脸人绑定结果和人体跟踪结果来完成人脸绑定跟踪。
118.为了便于理解本技术实施例,下面通过具体的实施例来进行描述。
119.请参见图3,图3示出了本技术实施例提供的一种行人跟踪方法的具体流程图。如图3所示的行人跟踪方法包括:
120.对待抽帧视频进行抽帧,以得到图像序列集。其中,图像序列集包括第1个视频帧图像至第n个视频帧图像,n为正整数。随后,提取图像序列集中各个视频帧图像中的至少一个人脸数据和人体数据。随后,可将各个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定各个视频帧图像的脸人绑定结果。
121.随后,基于相邻两个视频帧图像的脸人绑定结果中的人体特征向量,确定相邻两个视频帧图像中相同的行人,以实现人体跟踪。
122.应理解,上述行人跟踪方法仅是示例性的,本领域技术人员根据上述的方法可以进行各种变形,修改或变形之后的内容也在本技术保护范围内。
123.请参见图4,图4示出了本技术实施例提供的一种行人跟踪装置400的结构框图,应理解,该行人跟踪装置400与上述方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该行人跟踪装置400具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。该行人跟踪装置400包括至少一个能以软件或固件(firmware)的形式存储于存储器中或固化在行人跟踪装置400的操作系统(operating system,os)中的软件功能模块。具体地,该行人跟踪装置400包括:
124.提取模块410,用于提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据,其中,至少一个人脸数据中每个人脸数据均包括人脸框和被人脸框框选的人脸对应的人脸特征向量,至少一个人体数据中每个人体数据均包括人体框和被人体框框选的人体对应的人体特征向量;
125.匹配模块420,用于将每个视频帧图像的每个人脸特征向量和每个人体特征向量
进行匹配,以确定每个视频帧图像的脸人绑定结果,其中,脸人绑定结果包括人脸框和与人脸框对应的人体框以及人脸特征向量和人脸特征向量对应的人体特征向量;
126.第一确定模块430,用于基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定间隔n帧的两个视频帧图像中相同的行人,n为大于等于0的整数。
127.在一个可能的实施例中,匹配模块420,具体用于:计算当前人脸特征向量和当前人体特征向量之间的距离;在当前人脸特征向量和当前人体特征向量之间的距离小于等于第一预设距离的情况下,确定当前人脸特征向量对应的当前人脸框和当前人体特征向量对应的当前人体框为同一行人的人脸框和人体框;根据当前人脸框、当前人体框、当前人脸特征向量和当前人体特征向量,获取脸人绑定结果。
128.在一个可能的实施例中,行人跟踪装置还包括:第一计算模块(未示出),用于在将每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定每个视频帧图像中的脸人绑定结果之后,计算每个视频帧图像中每个人脸框和每个人体框的交并比iou值;第二确定模块(未示出),用于根据iou值,确定每个视频帧图像中的人脸人体绑定对,其中,人脸人体绑定对包括人脸框和与人脸框对应的人体框;查找模块(未示出),用于利用每个视频帧图像中的人脸人体绑定对,对每个视频帧图像的脸人绑定结果进行验证,以从每个视频帧图像的脸人绑定结果中查找错误匹配的脸人绑定结果;删除模块(未示出),用于从每个视频帧图像的脸人绑定结果中删除错误匹配的脸人绑定结果。
129.在一个可能的实施例中,间隔n帧的两个视频帧图像包括第i个视频帧图像和第i n个视频帧图像,i为大于等于1的整数;第一确定模块430,具体用于:计算第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离;在第i个视频帧图像的脸人绑定结果中的人体特征向量和第i n个视频帧图像的脸人绑定结果中的人体特征向量的距离小于等于第二预设距离的情况下,确定第i个视频帧图像的脸人绑定结果中的人体框和第i n个视频帧图像中的人体框为同一个行人的人体框。
130.在一个可能的实施例中,提取模块410,具体用于:通过训练好的检测模型提取每个视频帧图像的至少一个人脸数据和至少一个人体数据。
131.在一个可能的实施例中,行人跟踪装置包括:第二计算模块(未示出),用于根据利用第一损失函数计算用于训练待训练的检测模型的至少一个训练图像中每个训练图像的每个人脸特征向量和每个人体特征向量之间的距离,以获得第一损失函数值;其中,第一损失函数用于拉近每个训练图像中同一行人的人脸特征向量和人体特征向量之间的距离,并拉远每个训练图像中不同行人的人脸特征向量和人体特征向量之间的距离;第三计算模块(未示出),用于根据间隔n帧的两个训练图像中的同一行人的身体特征向量之间的距离,构建第二损失函数;其中,其中,第二损失函数用于拉近间隔n帧的两个训练图像中同一行人的身体特征向量之间的距离,并拉远间隔n帧的两个训练图像中不同行人的身体特征向量之间的距离;调整模块(未示出),用于根据第一损失函数和第二损失函数,对待训练的检测模型的参数进行调整,以获得训练好的检测模型。
132.在一个可能的实施例中,间隔n帧的两个视频帧图像为前后相邻的两个视频帧图像。
133.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置
的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
134.请参见图5,图5示出了本技术实施例提供的一种电子设备500的结构框图。电子设备500可以包括处理器510、通信接口520、存储器530和至少一个通信总线540。其中,通信总线540用于实现这些组件直接的连接通信。其中,本技术实施例中的通信接口520用于与其他设备进行信令或数据的通信。处理器510可以是一种集成电路芯片,具有信号的处理能力。上述的处理器510可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器510也可以是任何常规的处理器等。
135.存储器530可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read

only memory,prom),可擦除只读存储器(erasable programmable read

only memory,eprom),电可擦除只读存储器(electric erasable programmable read

only memory,eeprom)等。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备500可以执行上述方法实施例中的各个步骤。
136.电子设备500还可以包括存储控制器、输入输出单元、音频单元、显示单元。
137.所述存储器530、存储控制器、处理器510、外设接口、输入输出单元、音频单元、显示单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线540实现电性连接。所述处理器510用于执行存储器530中存储的可执行模块。并且,电子设备500用于执行下述方法:提取视频中至少两个视频帧图像中每个视频帧图像的至少一个人脸数据和至少一个人体数据,其中,所述至少一个人脸数据中每个人脸数据均包括人脸框和被所述人脸框框选的人脸对应的人脸特征向量,所述至少一个人体数据中每个人体数据均包括人体框和被所述人体框框选的人体对应的人体特征向量;将所述每个视频帧图像的每个人脸特征向量和每个人体特征向量进行匹配,以确定所述每个视频帧图像的脸人绑定结果,其中,所述脸人绑定结果包括所述人脸框和与所述人脸框对应的人体框以及所述人脸特征向量和所述人脸特征向量对应的人体特征向量;基于间隔n帧的两个视频帧图像的脸人绑定结果中的人体特征向量,确定所述间隔n帧的两个视频帧图像中相同的行人,n为大于等于0的整数。
138.输入输出单元用于提供给用户输入数据实现用户与所述服务器(或本地终端)的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。
139.音频单元向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。
140.显示单元在所述电子设备与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器进行计算和处理。
141.可以理解,图5所示的结构仅为示意,所述电子设备500还可包括比图5中所示更多
或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。
142.本技术还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行方法实施例所述的方法。
143.本技术还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
144.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
145.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
146.本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
147.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
148.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
149.以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技
术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
150.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
再多了解一些

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

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

相关文献