一种基于单目手势识别的视觉跟随方法技术

技术编号:14829023 阅读:57 留言:0更新日期:2017-03-16 15:22
本发明专利技术公开的一种基于单目手势识别的视觉跟随方法,通过识别一个特征手势,实时得到精确的机器人与初始位置的空间偏差比率,易于精确追踪,跟随动作更自然。还可以在初始状态获知跟踪目标和机器人的精确距离,通过识别一个特征手势,实时得到精确的机器人与人的相对距离,跟踪精度更高。本发明专利技术的跟随方法准确率高于色块跟随,成本较3D体感方案大大降低,大大提高了跟踪的准确率,用户交互顺畅,极易掌握操作要点,使用方便。

【技术实现步骤摘要】

本专利技术涉及机器人监控
,具体是一种基于单目手势识别的视觉跟随方法
技术介绍
目前家用服务机器人大多具有单目摄像机,基于单目摄像机的人体跟随系统大多使用色块跟随的方式,该方式在程序启动时,指定单目摄像头一块预览区域,并在后续的目标移动中不断跟随目标行走。但该种方法存在以下缺陷:1、色块跟随方法根据指定的初始色块,进行跟踪,因色块跟随方法的缺陷,目标非常容易跟丢;2、操作繁琐,用户不易理解操作要点。
技术实现思路
本专利技术要解决的问题是提供一种基于单目手势识别的视觉跟随方法,该方法通过识别一个特征手势,实时得到精确的机器人与初始位置的空间偏差比率,实现精确跟踪,简单易行,成本较低。为实现上述专利技术目的,本专利技术的基于单目手势识别的视觉跟随方法,包括以下步骤:1)机器人通过相机模块拍摄包括跟踪目标的手势在内的第一幅场景图片,图片分辨率为W1*H1;约定拍摄图片的左上角第一个点坐标为(1,1),右下角最后一点的坐标为的(W1,H1);2)所述机器人识别跟踪目标的手势,并获得手势在图片帧中的位置和大小参数:X1:第一幅场景图片中手势的x轴起点,Y1:第一幅场景图片中手势的y轴起点,W2:第一幅场景图片中手势在x轴的宽度,H2:第一幅场景图片中手势在y轴的高度;H3:相机模块拍摄到的第一场景的实际高度;H4:手势的实际高度;并假定用户初始距离为D1,D1将被用作距离变化的参照值;3)根据步骤1)和2)获得的参数,计算相机拍摄的第一场景的实际高度H3:H3=2*tanα*D1(1)其中,α为相机摄像头垂直可视角的1/2;还可知H3/H4=H1/H2(2)H4=H2*H3/H1(4)根据所述第一幅场景图片的参数,计算手势在第一幅场景图片中的中心坐标(X2,Y2):X2=X1+(W2/2)(4)Y2=Y1+(H2/2))(5)计算手势在第一幅场景图片中的中心坐标(X2,Y2)同整个第一幅场景图片的中心点坐标(Width/2,Hight/2)的偏离值;定义O1=X2–(W1/2)(6)O1为此时刻手势与X轴中心点偏移量;定义β1=arctan(O1/D1)(7)角β1为此时刻手势识别的中心点在X轴上的偏移角度;4)跟踪目标向前,或者向后,或者向左,或者向右,移动一个距离,但保持手势在相机的视野范围内;机器人通过相机模块拍摄包括跟踪目标的手势在内的第二幅场景图片;所述机器人识别跟踪目标的手势,并获得手势在第二幅场景图片帧中的位置和大小参数:X3:手势第二幅场景图片x轴起点,Y3:手势第二幅场景图片y轴起点,W5:手势在第二幅场景图片x轴的宽度,H5:手势在第二幅场景图片y轴的高度;H6:相机模块拍摄到的第二场景的实际高度;5)根据步骤1)至4)获得的参数,计算相机拍摄的第二场景高度H6:H6=H1*H4/H5(8)D2=H6/(2*tanα)(9)根据所述第二幅场景图片的参数,计算手势在第二幅场景图片中的中心坐标(X4,Y4):X4=X3+(W4/2)(10)Y4=Y3+(H4/2)(11)计算手势在第二幅场景图片中的中心坐标(X4,Y4)同整个第二幅场景图片的中心点坐标(Width/2,Hight/2)的偏离值;定义O2=X4–(W3/2)(12)O2为此时刻手势与X轴中心点偏移量;定义β2=arctan(O2/D2)(13)角β2为此时刻手势识别的中心点在X轴上的偏移角度;6)定义R1为距离D2与距离D1的距离比率,该百分比可体现出当前距离D2相对于初始距离D1的相对距离偏差:R1=D2/D1=H5/H2(14)例如R1=0.8代表,当前相机和跟踪目标的距离比初始距离D1近了20%。R1=1.2则代表,当前相机和跟踪目标距离比初始距离D1远了20%;定义R2为X轴的偏差比率:R2=tanβ2/tanβ1=(X2-(W1/2))*H4/((X4-(W3/2))*H2)(14);根据公式(13)和(14),可通过R1代表Z轴空间距离D2与初始距离D1的偏离比率,R2代表X轴偏移角度β2与β1的偏差比率。并可依据实时的R1和R2的数值,制定引导机器人的动态跟随算法,调整机器人的姿态和速度,通过使R1和R2的值趋近与1,而得到良好的跟随姿态。进一步的,在步骤1)相机模块拍摄第一副场景图片之前或同时,机器人通过单点测距模块,测量机器人与跟踪目标之间的距离,获得距离参数D1;在步骤4)相机模块拍摄第二副场景图片之前或同时,机器人通过单点测距模块,测量机器人与跟踪目标之间的距离,获得距离参数D2;此时D1和D2为实际数值,而不是假定的值;步骤6)的过程变更为:根据实时反馈的跟踪目标和所述机器人的Z轴空间距离D2、X轴空间偏移角度β2制定引导机器人的动态跟随算法;所述机器人通过不断调整机器人的姿态、速度等,从而使D2趋近于D1,β2趋近于β1,而得到良好的跟随姿态;或者,使用预设的舒适跟随距离Dx和偏移距离βy策略,随意调整跟随策略。更进一步,所述单点测距模块包括超声波测距模块、红外测距模块、激光测距模块。本专利技术的一种基于单目手势识别的视觉跟随方法,通过识别一个特征手势,实时得到精确的机器人与初始位置的空间偏差比率,易于精确追踪,跟随动作更自然。还可以在初始状态获知跟踪目标和机器人的精确距离,通过识别一个特征手势,实时得到精确的机器人与人的相对距离,跟踪精度更高。本专利技术的跟随方法准确率高于色块跟随,成本较3D体感方案大大降低,且效果更好,用户交互顺畅,极易掌握操作要点,使用方便。附图说明图1为本专利技术一个实施例中第一次拍摄场景图片示意图;图2为本专利技术一个实施例中第二次拍摄场景图片示意图;图3为本专利技术一个实施例中的跟随方法采用的机器人结构示意图;图4为本专利技术另一个实施例中的跟随方法采用的机器人结构示意图。具体实施方式下面结合附图,以人体为跟踪目标为例,对本专利技术提出的一种基于单目手势识别的视觉跟随方法进行详细说明。1)如图1所示,机器人通过相机模块拍摄包括人体的手势在内的第一幅场景图片,图片分辨率为W1*H1;约定拍摄图片的左上角第一个点坐标为(1,1),右下角最后一点的坐标为的(W1,H1);手势可采用手掌为标志或手指为标志,也可以采用其它器官为标志。2)如图2所示,机器人识别人体的手势,通过手势识别软件,识别人体的手势(如正面手掌),并获得手势在图片帧中的位置和大小参数:X1:第一幅场景图片中手势的x轴起点,Y1:第一幅场景图片中手势的y轴起点,W2:第一幅场景图片中手势在x轴的宽度,H2:第一幅场景图片中手势在y轴的高度;H3:相机模块拍摄到的第一场景的实际高度;H4:手势的实际高度;并假定用户初始距离为D1,D1将被用作距离变化的参照值;3)根据步骤1)、2)和3)获得的参数,计算相机拍摄的第一场景高度H3:H3=2*tanα*D1(1)其中,α为相机摄像头垂直可视角的1/2;还可知H3/H4=H1/H2(2)H4=H2*H3/H1(4)根据第一幅场景图片的参数,计算手势在第一幅场景图片中的中心坐标(X2,Y2):X2=X1+(W2/2)(4)Y2=Y1+(H2/2))(5)计算手势在第一幅场景图片中的中心坐标(X2,Y2)同整个第一幅场景图片的中心点坐标(W本文档来自技高网...
一种基于单目手势识别的视觉跟随方法

【技术保护点】
一种基于单目手势识别的视觉跟随方法,其特征在于,包括以下步骤:机器人通过相机模块拍摄包括跟踪目标的手势在内的第一幅场景图片,图片分辨率为W1*H1;约定拍摄图片的左上角第一个点坐标为(1,1),右下角最后一点的坐标为的(W1,H1);并假定用户初始距离为D1,D1将被用作距离变化的参照值;所述机器人识别跟踪目标的手势,并获得手势在图片帧中的位置和大小参数:X1:第一幅场景图片中手势的x轴起点,Y1:第一幅场景图片中手势的y轴起点,W2:第一幅场景图片中手势在x轴的宽度,H2:第一幅场景图片中手势在y轴的高度;H3:相机模块拍摄到的第一场景的实际高度;H4:手势的实际高度;并假定用户初始距离为D1,D1将被用作距离变化的参照值;根据步骤1)、2)和3)获得的参数,计算相机拍摄的第一场景实际高度H3:H3 = 2 * tan α * D1                    (1)其中,α为相机摄像头垂直可视角的1/2;还可知H3/H4 = H1 / H2                  (2)H4=H2*H3/H1                            (4)根据所述第一幅场景图片的参数,计算手势在第一幅场景图片中的中心坐标(X2,Y2):X2= X1 + (W2 /2)                       (4)Y2= Y1 + ( H2/2))                      (5)计算手势在第一幅场景图片中的中心坐标(X2,Y2)同整个第一幅场景图片的中心点坐标(Width/2,Hight/2)的偏离值;定义O1 = X2 –(W1/2)                   (6)O1为此时刻手势与X轴中心点偏移量;定义β1= arctan(O1/D1)                 (7)角β1为此时刻手势识别的中心点在X轴上的偏移角度;跟踪目标向前,或者向后,或者向左,或者向右,移动一个距离,但保持手势在相机的视野范围内;机器人通过相机模块拍摄包括跟踪目标的手势在内的第二幅场景图片;所述机器人识别跟踪目标的手势,并获得手势在第二幅场景图片帧中的位置和大小参数:X3:手势第二幅场景图片x轴起点,Y3:手势第二幅场景图片y轴起点,W5:手势在第二幅场景图片x轴的宽度,H5:手势在第二幅场景图片y轴的高度;H6:相机模块拍摄到的第二场景的实际高度;根据步骤1)至5)获得的参数,计算相机拍摄的第二场景高度H6:H6 = H1*H4/H5                      (8)D2 = H6/(2 * tan α)                (9)根据所述第二幅场景图片的参数,计算手势在第二幅场景图片中的中心坐标(X4,Y4):X4= X3 + (W4 /2)                   (10)Y4= Y3 + ( H4/2)                   (11)计算手势在第二幅场景图片中的中心坐标(X4,Y4)同整个第二幅场景图片的中心点坐标(Width/2,Hight/2)的偏离值;定义O2 = X4 – (W3/2)               (11)O2为此时刻手势与X轴中心点偏移量;定义β2= arctan(O2/D2)              (12)角β2为此时刻手势识别的中心点在X轴上的偏移角度;定义R1为距离D2与距离D1的距离比率,该百分比可体现出当前距离D2相对于初始距离D1的相对距离偏差:R1= D2/D1 = H5/H2                  (13)定义R2为X轴的偏差比率:R2 = tanβ2/tanβ1= (X2‑(W1/2))*H4/((X4‑(W3/2))*H2)   (14);根据公式(13)和(14),可通过R1代表Z轴空间距离D2与初始距离D1的偏离比率,R2代表X轴偏移角度β2与β1的偏差比率;并可依据实时的R1和R2的数值,制定引导机器人的动态跟随算法,调整机器人的姿态和速度,通过使R1和R2的值趋近与1,而得到良好的跟随姿态。...

【技术特征摘要】
1.一种基于单目手势识别的视觉跟随方法,其特征在于,包括以下步骤:机器人通过相机模块拍摄包括跟踪目标的手势在内的第一幅场景图片,图片分辨率为W1*H1;约定拍摄图片的左上角第一个点坐标为(1,1),右下角最后一点的坐标为的(W1,H1);并假定用户初始距离为D1,D1将被用作距离变化的参照值;所述机器人识别跟踪目标的手势,并获得手势在图片帧中的位置和大小参数:X1:第一幅场景图片中手势的x轴起点,Y1:第一幅场景图片中手势的y轴起点,W2:第一幅场景图片中手势在x轴的宽度,H2:第一幅场景图片中手势在y轴的高度;H3:相机模块拍摄到的第一场景的实际高度;H4:手势的实际高度;并假定用户初始距离为D1,D1将被用作距离变化的参照值;根据步骤1)、2)和3)获得的参数,计算相机拍摄的第一场景实际高度H3:H3=2*tanα*D1(1)其中,α为相机摄像头垂直可视角的1/2;还可知H3/H4=H1/H2(2)H4=H2*H3/H1(4)根据所述第一幅场景图片的参数,计算手势在第一幅场景图片中的中心坐标(X2,Y2):X2=X1+(W2/2)(4)Y2=Y1+(H2/2))(5)计算手势在第一幅场景图片中的中心坐标(X2,Y2)同整个第一幅场景图片的中心点坐标(Width/2,Hight/2)的偏离值;定义O1=X2–(W1/2)(6)O1为此时刻手势与X轴中心点偏移量;定义β1=arctan(O1/D1)(7)角β1为此时刻手势识别的中心点在X轴上的偏移角度;跟踪目标向前,或者向后,或者向左,或者向右,移动一个距离,但保持手势在相机的视野范围内;机器人通过相机模块拍摄包括跟踪目标的手势在内的第二幅场景图片;所述机器人识别跟踪目标的手势,并获得手势在第二幅场景图片帧中的位置和大小参数:X3:手势第二幅场景图片x轴起点,Y3:手势第二幅场景图片y轴起点,W5:手势在第二幅场景图片x轴的宽度,H5:手势在第二幅场景图片y轴的高度;H6:相机模块拍摄到的第二场景的实际高度;根据步骤1)至5)获得的参数,计算相机拍摄的第二场景高度H6:H6=H1*H4/H5(8)D2=...

【专利技术属性】
技术研发人员:张雷
申请(专利权)人:南京阿凡达机器人科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1