本发明涉及计算机视觉,尤其涉及一种单目摄像头的人物识别方法、装置、设备及存储介质。
背景技术:
1、现在针对人物的定位以及更深层面的动作识别往往需要采用深度摄像头或定位传感器实现。在室内定位的方法中,常用的室内定位技术主要包括基于超声波定位技术、基于红外线的定位技术、基于超宽带的定位技术、射频识别定位技术、基于激光传感器的定位技术以及基于视觉的定位技术。上述技术通常用来获取室内场景的信息,例如人的位置,场景的大小等等。利用这些信息可以利用许多算法来完成室内定位的工作。
2、激光、红外、超声波等定位方法虽然精度可观,但依赖的硬件设备成本巨大,部署所需条件繁杂,不适用于普通的室内场景。在低成本的方法如蓝牙、wifi定位中,硬件的成本相对低廉,但精度在较小的室内场景中基本没有使用价值。因此亟需一种低成本、高精度的室内定位识别技术。
技术实现思路
1、为解决上述技术问题,本发明提供一种单目摄像头的人物识别方法、装置、设备及存储介质,能够低成本、高精度的是实现室内人物的定位识别。
2、本发明实施例提供一种单目摄像头的人物识别方法,所述方法包括:
3、通过单目摄像头获取场景图像;
4、对所述场景图像中的人物进行姿态估计,确定所述人物的关键点的像素坐标;
5、根据所述单目摄像头的相机内部参数将所述像素坐标转换为真实坐标系的真实坐标;
6、根据所述人物的关键点的真实坐标确定所述人物的动作向量;
7、根据确定的动作向量识别所述人物的行为动作。
8、优选地,所述对所述场景图像中的人物进行姿态估计,确定所述人物的关键点的像素坐标,具体包括;
9、将所述场景图像输入到预先进行姿态估计训练的深度学习神经网络模型中进行姿态估计,识别所述人物的关键点;
10、根据对所述场景图像建立的图像坐标系确定不同关键点的像素坐标;
11、所述关键点包括左耳、右耳、左眼、右眼、鼻子、左肩、右肩、左肘、右肘、左腕、右腕、左臀、右臀、左膝、右膝、左踝以及右踝。
12、作为一种优选方案,所述根据所述单目摄像头的相机内部参数将所述像素坐标转换为真实坐标系的真实坐标,具体包括:
13、根据所述相机内部参数确定相机内参矩阵;
14、根据所述相机内参矩阵构建图像坐标系与所述真实坐标系间的坐标转换模型;
15、获取所述场景图像中的一个关键点的高度作为先验信息;
16、将所述先验信息以及所述关键点的像素坐标输入到所述坐标转换模型中进行计算,输出转换后的真实坐标;
17、所述坐标转换模型为:
18、其中,u和v分别为所述关键点在所述图像坐标系下的x坐标与y坐标,r为所述相机内参矩阵中的旋转矩阵,t为所述相机内参矩阵中的平移矩阵,xw、yw和zw分别为所述关键点在所述真实坐标系下的x坐标、y坐标以及z坐标;fx、fy分别为单目摄像头的焦距f在所述图像坐标系的x坐标方向与y坐标方向的焦距偏移量;u0和v0分别为所述图像坐标系上的光心相对实际相机光心像素值在x坐标方向与y坐标方向的偏移量。
19、进一步地,所述获取所述场景图像中的一个关键点的高度作为先验信息,具体包括:
20、根据所述场景图像计算遮挡系数;
21、当所述遮挡系数大于0时,判定出现遮挡,选用所述人物的肩部的高度作为所述先验信息;
22、当所述遮挡系数不大于0时,判定未出现遮挡,选用所述人物的踝部的高度作为所述先验信息;
23、其中,遮挡系数kpmax、kpmin分别表示图像坐标系下关键点的最大x轴坐标和最小x轴坐标,boxmax表示所述人物的检测框的最大x轴坐标。
24、优选地,所述根据所述人物的关键点的真实坐标确定所述人物的动作向量,包括:
25、计算所述人物不同关键点之间的空间向量作为所述动作向量;
26、所述动作向量包括躯干向量和腿部向量;
27、所述躯干向量由臀部中点到肩部中点确定,所述腿部向量具体为左腿向量或右腿向量;所述左腿向量由左臀到左膝与左踝的中点确定,所述右腿向量由右臀到右膝与右踝的中点确定。
28、进一步地,所述根据确定的动作向量识别所述人物的行为动作,具体包括:
29、当所述躯干向量与所述腿部向量之间的旋转角在预设的第一范围内,且所述躯干向量与所述腿部向量所在平面的法向量与所述真实坐标系的z轴垂直时,确定所述人物为站立状态;
30、当所述躯干向量与所述腿部向量之间的旋转角在预设的第二范围内,且所述躯干向量与所述腿部向量所在平面的法向量与所述真实坐标系的z轴垂直时,确定所述人物为坐姿状态;
31、当所述躯干向量与所述腿部向量之间的旋转角在所述第一范围内,且所述躯干向量与所述真实坐标系的z轴垂直时,确定所述人物为躺姿状态。
32、优选地,所述方法还包括:
33、根据所述人物的关键点确定的肩部向量以及躯干向量构成人体平面;
34、将所述人体平面的法向量的指向作为所述人物的朝向;
35、所述躯干向量由臀部中点到肩部中点确定,所述肩部向量由左肩到右肩确定。
36、本发明实施例还提供一种单目摄像头的人物识别装置,所述装置包括:
37、图像获取模块,用于通过单目摄像头获取场景图像;
38、关键点确定模块,用于对所述场景图像中的人物进行姿态估计,确定所述人物的关键点的像素坐标;
39、坐标转换模块,用于根据所述单目摄像头的相机内部参数将所述像素坐标转换为真实坐标系的真实坐标;
40、向量计算模块,用于根据所述人物的关键点的真实坐标确定所述人物的动作向量;
41、动作识别模块,用于根据确定的动作向量识别所述人物的行为动作。
42、优选地,所述关键点确定模块具体用于:
43、将所述场景图像输入到预先进行姿态估计训练的深度学习神经网络模型中进行姿态估计,识别所述人物的关键点;
44、根据对所述场景图像建立的图像坐标系确定不同关键点的像素坐标;
45、所述关键点包括左耳、右耳、左眼、右眼、鼻子、左肩、右肩、左肘、右肘、左腕、右腕、左臀、右臀、左膝、右膝、左踝以及右踝。
46、优选地,所述坐标转换模块具体用于:
47、根据所述相机内部参数确定相机内参矩阵;
48、根据所述相机内参矩阵构建图像坐标系与所述真实坐标系间的坐标转换模型;
49、获取所述场景图像中的一个关键点的高度作为先验信息;
50、将所述先验信息以及所述关键点的像素坐标输入到所述坐标转换模型中进行计算,输出转换后的真实坐标;
51、所述坐标转换模型为:
52、其中,u和v分别为所述关键点在所述图像坐标系下的x坐标与y坐标,r为所述相机内参矩阵中的旋转矩阵,t为所述相机内参矩阵中的平移矩阵,xw、yw和zw分别为所述关键点在所述真实坐标系下的x坐标、y坐标以及z坐标;fx、fy分别为单目摄像头的焦距f在所述图像坐标系的x坐标方向与y坐标方向的焦距偏移量;u0和v0分别为所述图像坐标系上的光心相对实际相机光心像素值在x坐标方向与y坐标方向的偏移量。
53、进一步地,所述坐标转换模块具体用于:
54、根据所述场景图像计算遮挡系数;
55、当所述遮挡系数大于0时,判定出现遮挡,选用所述人物的肩部的高度作为所述先验信息;
56、当所述遮挡系数不大于0时,判定未出现遮挡,选用所述人物的踝部的高度作为所述先验信息;
57、其中,遮挡系数kpmax、kpmin分别表示图像坐标系下关键点的最大x轴坐标和最小x轴坐标,boxmax表示所述人物的检测框的最大x轴坐标。
58、优选地,所述向量计算模块具体用于:
59、计算所述人物不同关键点之间的空间向量作为所述动作向量;
60、所述动作向量包括躯干向量和腿部向量;
61、所述躯干向量由臀部中点到肩部中点确定,所述腿部向量具体为左腿向量或右腿向量;所述左腿向量由左臀到左膝与左踝的中点确定,所述右腿向量由右臀到右膝与右踝的中点确定。
62、优选地,所述动作识别模块具体用于:
63、当所述躯干向量与所述腿部向量之间的旋转角在预设的第一范围内,且所述躯干向量与所述腿部向量所在平面的法向量与所述真实坐标系的z轴垂直时,确定所述人物为站立状态;
64、当所述躯干向量与所述腿部向量之间的旋转角在预设的第二范围内,且所述躯干向量与所述腿部向量所在平面的法向量与所述真实坐标系的z轴垂直时,确定所述人物为坐姿状态;
65、当所述躯干向量与所述腿部向量之间的旋转角在所述第一范围内,且所述躯干向量与所述真实坐标系的z轴垂直时,确定所述人物为躺姿状态。
66、优选地,所述装置还包括朝向识别模块,用于:
67、根据所述人物的关键点确定的肩部向量以及躯干向量构成人体平面;
68、将所述人体平面的法向量的指向作为所述人物的朝向;
69、所述躯干向量由臀部中点到肩部中点确定,所述肩部向量由左肩到右肩确定。
70、本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述实施例中任意一项所述的单目摄像头的人物识别方法。
71、本发明实施例还提供一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述实施例中任意一项所述的单目摄像头的人物识别方法。
72、本发明提供的一种单目摄像头的人物识别方法、装置、设备及存储介质,通过单目摄像头获取场景图像;对所述场景图像中的人物进行姿态估计,确定所述人物的关键点的像素坐标;根据所述单目摄像头的相机内部参数将所述像素坐标转换为真实坐标系的真实坐标;根据所述人物的关键点的真实坐标确定所述人物的动作向量;根据确定的动作向量识别所述人物的行为动作。本技术能够低成本、高精度的是实现室内人物的定位识别。