CN113822251B - 基于双目视觉的地面侦察机器人手势控制***及控制方法 - Google Patents
基于双目视觉的地面侦察机器人手势控制***及控制方法 Download PDFInfo
- Publication number
- CN113822251B CN113822251B CN202111394436.XA CN202111394436A CN113822251B CN 113822251 B CN113822251 B CN 113822251B CN 202111394436 A CN202111394436 A CN 202111394436A CN 113822251 B CN113822251 B CN 113822251B
- Authority
- CN
- China
- Prior art keywords
- network
- fingertip
- training
- robot
- semantic segmentation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 10
- 230000011218 segmentation Effects 0.000 claims description 109
- 238000012549 training Methods 0.000 claims description 75
- 238000001514 detection method Methods 0.000 claims description 15
- 230000005484 gravity Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 10
- 238000012937 correction Methods 0.000 claims description 9
- 238000003384 imaging method Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 3
- 238000003708 edge detection Methods 0.000 claims description 2
- 230000003993 interaction Effects 0.000 abstract description 12
- 230000006870 function Effects 0.000 description 24
- 238000004891 communication Methods 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005057 finger movement Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002341 toxic gas Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Manipulator (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于双目视觉的地面侦察机器人手势控制***及控制方法,包括显示器、双目摄像装置、控制指环、人机交互控制***,显示器、双目摄像装置、控制指环分别与人机交互控制***连接;显示器用于显示侦察机器人拍摄的场景图像;双目摄像装置用于采集操作人员的手势图像,控制指环用于控制地面侦察机器人车体的运动和机械臂的运动,人机交互控制***用于处理双目摄像装置拍摄的手势图像,将手势图像处理为指尖点的三维坐标,然后将指尖点的三维坐标发送给机器人执行。可用于多自由度机械臂的地面侦察机器人,采用控制指环和双目摄像装置结合的方式,实现了机器人的位置移动和摄像头角度、高度的改变,完成侦察任务。
Description
技术领域
本发明涉及于双目视觉、移动机器人的远程控制相关技术领域,具体的说,是一种基于双目视觉,通过手势远程控制地面侦察机器人的控制***及控制方法。
背景技术
地面侦察机器人一般是由可移动的机器人车体和侦察***组成的,常用于有限空间(如野外、楼宇、室内)的侦察,也可搭载一定装备应用于矿业地下、消防等工作环境中,以及车厢、机舱等地的反恐侦察、有毒气体环境下的勘察、核辐射环境下的反恐及侦察。
最简单的侦察机器人搭载的侦察***是由摄像头和两自由度云台组成的,摄像头固定于云台上,通过遥杆控制云台实现摄像头的移动控制,进而完成侦察任务。该方法的缺点是侦察范围小、不够灵活。另有采用多自由度机械臂取代两自由度云台的侦察机器人,其通常是将摄像头固定于多自由度机械臂末端,通过按钮或摇杆结合按钮来控制机械臂运动实现侦察。然而,按钮记忆复杂,机械臂控制难度大且不直观。为了解决这个问题,研究者开始使用手势这种直观且容易操作的方式来控制多自由度机械臂的运动。常见的手势控制方法有手势佩戴可识别装置(如数据手套等)和基于视觉图像的控制方式。前者是通过识别跟踪佩戴的装置来控制机械臂运动,但这种方法不能控制机械臂末端运动,而且装备昂贵。后者多采用基于肤色、形状等特征将手势分割出来,再通过手势识别分类,不同手势代表不同操作,进而控制机械臂末端运动。然而在手势分割过程中,常常会因为光照等问题导致肤色分割效果不佳,分割结果的准确性直接影响了后续工作的完成。
发明内容
针对上述问题,本发明提出一种基于双目视觉的地面侦察机器人手势控制***及控制方法,可用于多自由度机械臂的地面侦察机器人,采用控制指环和双目摄像装置结合的方式,实现了机器人的位置移动和摄像头角度、高度的改变,完成侦察任务。
本发明提供如下技术方案:基于双目视觉的地面侦察机器人手势控制***,包括显示器、双目摄像装置、控制指环、人机交互控制***;所述显示器、双目摄像装置、控制指环分别与人机交互控制***连接;显示器用于显示侦察机器人拍摄的场景图像;双目摄像装置用于采集操作人员的手势图像,控制指环用于控制地面侦察机器人车体的运动和机械臂的运动,人机交互控制***用于处理双目摄像装置拍摄的手势图像,将手势图像处理为指尖点的三维坐标,然后将指尖点的三维坐标通过无线通信装置或者有线通信装置发送给机器人执行。
控制指环为内含单片机、具有近距离无线通信功能的控制器,控制指环有三个档位,分别是停止档、机器人车体控制档和机械臂末端控制档,通过将指环上的滑动开关滑动到不同档位控制机器人运动,采用无线通信方式,利于指环的使用,如果采用有线方式,通信线很容易阻碍控制指环的运动,并且通信线也会影响双目摄像装置的拍摄。
将操作人员操控的控制端和侦察机器人之间连接,可以采用有线或者无线的方式,根据实际使用需要进行设置,操作人员在控制端通过滑动控制指环选择控制机器人车体或机械臂,确定控制机器人车体或机械臂后,双目摄像装置拍摄到操作人员手指运动的手势图像,手势图像通过人机交互控制***处理获得指尖移动轨迹信息,将指尖移动轨迹信息传送给执行端,执行端接收信息,控制机器人车体或者机械臂末端运动,带动侦察摄像头拍摄操作人员指定的区域,完成侦察任务,机器人执行端包括履带式机器人车体、多自由度机械臂、侦察摄像头、远距离无线通信装置、机器人控制***。其中,多自由度机械臂末端搭载侦察摄像头固定于履带式机器人车体上,通过侦察摄像头拍摄侦察区图像。机器人控制***通过远距离无线通信装置接收控制端发送来的指尖点的轨迹,将指尖点轨迹进行关节反解之后,控制机器人车载机械臂各关节跟踪指尖点轨迹进行关节反解之后对应的关节角轨迹。
基于双目视觉的地面侦察机器人手势控制方法,包括如下步骤,步骤1、将操作人员操控的控制端和侦察机器人之间建立连接;步骤2、打开控制端的显示器,显示侦察机器人拍摄的侦察图像;步骤3、判断控制指环的档位,并将档位信息发送给侦察机器人并执行下一步;步骤4、解码控制指环发送来的档位信息并判断控制指环档位是否处于机器人车体控制档,如果是处于机器人车体控制档,则根据双目摄像装置获得操作人员的指尖点所在区域信息进行机器人车体运动控制指令编码,然后发送给执行端并执行步骤6,如果是处于机械臂末端控制档,则将双目摄像装置获得操作人员的连续指尖点坐标信息进行机械臂末端运动控制指令编码,然后通过发送给执行端并执行步骤5;步骤5、执行端接收机械臂末端运动控制指令编码并解码为连续指尖点坐标信息,然后控制机械臂末端跟踪指尖点运动;步骤6、执行端接收机器人车体运动控制指令编码,然后解码为机器人车体运动控制指令,然后控制机器人车体向指定方向移动;步骤7、判断程序是否结束,如果是,则结束对机器人的控制,否则,执行步骤3。在使用时,需要操作员佩戴控制指环、安装双目摄像头和显示器。
上述的指令编码包括包头、功能位、数据位、数据、校验位、包尾,其中包头为机器人控制的起始位,功能位代表控制指环档位,指环档位包括停止档、控制机器人车体档或控制机械臂末端档,数据位表示即将接收数据的位数,数据是指尖点坐标信息或指尖点所在区域信息,校验位用于校验传输数据的准确与否,包尾为结束位。
步骤4中,双目摄像装置获得操作人员指尖点的具体步骤为:步骤41、双目摄像装置拍摄操作人员手势的双视角图像;步骤42、采用基于对抗网络的半监督语义分割算法对拍摄的双视角图像进行语义分割;步骤43、采用指尖检测算法对步骤42得到的语义分割后的手势图像进行指尖检测;步骤44、采用三维重建算法将步骤43检测到的二维图像指尖点重建为三维指尖点。
步骤42中,基于对抗网络的半监督语义分割算法,具体为:
步骤421、构建网络;
包括一个语义分割网络和一个判别网络,语义分割网络用于生成与输入手势图像相对应的语义分割图,判别网络通过检测分割网络产生的分割图与真实标签图之间的差别,来调整语义分割结果;其中,语义分割网络采用DeeplabV3+,判别网络采用DCGAN结构中的判别器--卷积神经网络。分割网络的输入是H×W×3(H、W分别为图像的高和宽,3为RGB三通道)的图像,输出是H×W×K(K为分割的类别数)的类别概率图。其中,类别概率图表征图像中的点为类别K的概率。判别网络的输入是来自分割网络的类别概率图或与输入图像对应的真实标签的独热码,输出是H×W×1的置信图,具体地,置信图表征图像中的像素点来自真实标签的置信度。
步骤422、确定损失函数和训练方式;
本网络的训练包括语义分割网络的训练和判别网络的训练,在训练过程中,用到两种训练方式:全监督性训练和半监督训练。
其中,为超参数,用于调节两损失所占权重,输入图像为x,像素坐标为(h,w),K为类别数,语义分割结果为,判别网络输入为或真实标签的独热码,当(h,w)处的像素点x属于k类别时,=1;否则,=0,判别网络的输出结果为,表示输入图像经语义分割网络和判别网络之后所得的置信图上该像素点处的值,D()表示真实标签经过独热码编码得到的置信图上该像素点处的值。
半监督训练中,针对有标签的图像,分割网络的损失函数为:分割网络生成的语义分割图和真实标签的交叉熵、对抗损失;针对无标签的图像,把判别网络得到的置信度较高的区域记作伪标签,代替真实标签,进而,分割网络的损失函数变为:分割网络生成的语义分割图和伪标签的交叉熵、对抗损失,为半监督训练的损失函数;
其中,M为设置的阈值,
步骤423、开始训练;包括语义分割网络的训练和判别网络的训练,在训练时,先训练判别网络,再训练语义分割网络;在更新语义分割网络参数时,要保持判别网络参数不变。
步骤4231、训练判别网络;使用有标签图像进行全监督训练,损失函数是交叉熵损失函数L d ,训练方法为梯度下降法,训练目的为使L d 最小化;
步骤4232、训练分割网络;首先,对网络进行全监督训练,使得语义分割网络和判别网络都掌握一定的工作能力;其次,将有标签和无标签图像同时放入网络进行半监督训练;将无标签图像经语义分割网络得到的类别概率图送入判别网络,得到置信图,再对其进行二值化处理得到伪标签,利用伪标签进行半监督训练。
步骤43中指尖检测算法具体包括:步骤431、获取语义分割得到的语义分割图;步骤432、对语义分割图进行灰度化、二值化处理;步骤433、利用Canny算子边缘检测的方法从图中找到手势轮廓,并画出来;步骤434、通过求手势轮廓的零阶矩、一阶矩、二阶矩来计算手势轮廓的重心(),即为手的重心;步骤435、从手势轮廓点中找到距离重心最远的点,该点即为指尖点;步骤436、画出指尖点。
步骤44中的三维重建算法,包括:
步骤441、获取指尖检测得到的指尖点左右视图;
步骤442、标定双目摄像头的坐标点参数,标定双目摄像头,获取双目摄像头的内、外参数。标定过程主要是坐标系之间的转换:世界坐标系-相机坐标系-图像坐标系。
利用棋盘格,采用Harris算法检测其中的角点,由于已知棋盘格中格子之间的距离等世界坐标系信息,故可求出双目摄像头的参数该方法基本步骤为:首先,计算出内外参矩阵的积;其次,求内参矩阵;最后,求外参矩阵。
步骤443、进行双目矫正;根据上一步获得的双目摄像头参数对手势指尖点左右视图进行畸变矫正和极线矫正,使左右视图成像原点一致、两个摄像头光轴平行、左右成像共面、对极线行对齐;
步骤444、进行立体匹配;对双目矫正后的指尖图像,通过立体匹配算法对其进行立体匹配,计算视差图;
步骤445、根据视差图进行三维重建;根据视差图,通过几何关系求出深度图,生成三维点云图像,并利用摄像头参数求出指尖点的三维坐标。
步骤5中机械臂末端控制时,具体为:步骤51、读取三维重建得到的指尖点的三维坐标;步骤52、将读取到的三维坐标映射到机械臂坐标系;步骤53、判断机械臂末端是否到达指尖点处,如果是,执行步骤51,读取下一个指尖点坐标,如果否,执行下一步;步骤54、对指尖点坐标进行逆运动学求解,计算出指尖点坐标对应的机械臂各关节角值;步骤55、使用机器人轨迹跟踪控制算法控制多自由度机械臂的各个关节跟踪指尖点反解后的关节角并最终使机械臂末端跟随指尖点运动。
步骤6中车体运动时,依据的指尖点所在区域,将区域划分为A、B、C、D、E,若指尖点位于区域A,则控制机器人车体前进;指尖点位于区域B,则控制机器人车体后退;指尖点位于区域C,则控制机器人车体左转;指尖点位于区域D,则控制机器人车体右转;指尖点位于区域E,则控制机器人车体停止,
A区域可用如下约束条件表示:
B区域可用如下约束条件表示:
C区域可用如下约束条件表示:
D区域可用如下约束条件表示
E区域可用如下约束条件表示:
通过上述描述可以看出本方案中相比现有技术,具有如下效果:(1)本公开在控制端有显示器,可以实时观察侦察区的情况,采用双目摄像头拍摄手势图像,通过建立手指指尖与机器人的联系,实现了只需移动手指,便可控制机器人车体或机械臂末端运动的功能,简单易懂,方便操作。(2)本公开在控制端采用控制指环作为***的开关,三档调节,可随意切换控制机器人车体或机械臂运动,操作简单、方便快捷。(3)本方案中采用基于对抗网络的半监督语义分割算法对拍摄的双视角图像进行语义分割。该网络由DeeplabV3+语义分割网络和一个判别网络构成,其中,语义分割网络用于生成与输入手势图像相对应的语义分割图,判别网络通过检测分割网络产生的分割图与标签图之间的差别,来调整语义分割结果,使得分割效果更好;另外,采用半监督,用判别网络产生的伪标签帮助分割网络来训练,可以有效地解决语义分割中常见的标签获取难的问题;最后,语义分割是像素级别的分割,分割过程中往往容易忽略像素间的整体关系,而生成对抗网络的方法可以有效地解决这个问题。(4)本方案中采用寻找最大重心距离的方法检测指尖,简单方便、快捷有效,为整个过程节省了时间,更容易实现实时控制。
附图说明
图1是本发明具体实施方式的***概图。
图2是本发明具体实施方式的控制方法的流程图。
图3是本发明具体实施方式的控制指环放大图。
图4是本发明具体实施方式的无线通信编码方式图。
图5 是本发明具体实施方式的指尖点区域划分图。
图6是本发明具体实施方式的生成对抗网络半监督语义分割图。
图7是本发明具体实施方式的分割网络结构中的DeeplabV3+结构图。
图8是本发明具体实施方式的判别网络结构图。
图9是本发明具体实施方式的指尖检测实现流程图。
图10是本发明具体实施方式的三维重建实现流程图。
图11是本发明具体实施方式的机械臂末端位置控制实现流程图。
图中:A1为显示器,A2为双目摄像头,A3为控制指环,A4为控制端近距离无线通信装置,A5为控制端远距离无线通信装置,A6为人机交互控制***,B1为机器人车体,B2为机械臂,B3为侦察摄像头,B4为执行端远距离无线通信装置,B5为机器人控制***。
具体实施方式
下面将结合本发明具体实施方式中的附图,对本发明具体实施方式中的技术方案进行清楚、完整地描述,显然,所描述的具体实施方式仅仅是本发明一种具体实施方式,而不是全部的具体实施方式。基于本发明中的具体实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他具体实施方式,都属于本发明保护的范围。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合;
通过附图可以看出,本发明的基于双目视觉的地面侦察机器人手势控制***,包括显示器A1、双目摄像装置A2、控制指环A3、人机交互控制***A6,显示器A1、双目摄像装置A2、控制指环A3分别与人机交互控制***A6连接;显示器A1用于显示侦察机器人拍摄的场景图像;双目摄像装置用于采集操作人员的手势图像,控制指环用于控制地面侦察机器人车体的运动和机械臂的运动,人机交互控制***用于处理双目摄像装置拍摄的手势图像,将手势图像处理为指尖点的三维坐标,然后将指尖点的三维坐标发送给机器人执行,本具体实施方式采用履带式机器人。
操作人员在控制端通过滑动控制指环A3选择控制机器人车体B1或机械臂B2末端运动,通过移动手指,双目摄像装置A2拍摄,人机交互控制***A6处理,将指尖移动轨迹信息传送给执行端,执行端接收信息,通过机器人控制***B5控制机器人车体B1或机械臂B2末端运动,机械臂B2为多自由度机械臂,带动侦察摄像头B3拍摄操作人员指定的区域,完成侦察任务。机器人包括履带式机器人车体B1、机械臂B2、侦察摄像头B3、执行端远距离无线通信装置B4、机器人控制***B5。其中,多自由度机械臂B2末端搭载侦察摄像头B3固定于履带式机器人车体B1上,通过侦察摄像头B3拍摄侦察区图像,通过执行端远距离无线通信装置B4与控制端联络。机器人控制***B5通过执行端远距离无线通信装置B4接收控制端发送来的指尖点的轨迹,将指尖点轨迹进行关节反解之后,控制机器人车载机械臂B2各关节跟踪指尖点轨迹进行关节反解之后对应的关节角轨迹。
控制指环A3为内含单片机、具有近距离无线通信功能的控制器,控制指环有三个档位,分别是停止档、机器人车体控制档和机械臂末端控制档,通过不同档位控制机器人运动。
一种基于上述***的地面侦察机器人手势控制方法,包括如下步骤,
步骤1、将操作人员操控的控制端和侦察机器人之间建立连接,本具体实施方式中采用无线通信方式建立连接;
步骤2、打开控制端的显示器A1,显示侦察机器人拍摄的侦察图像;
步骤3、判断控制指环A3的档位,并将档位信息发送给侦察机器人并执行下一步;
步骤4、解码控制指环A3发送来的档位信息并判断控制指环档位是否处于机器人车体控制档,如果是处于机器人车体控制档,则根据双目摄像装置A2获得操作人员的指尖点所在区域信息进行机器人车体运动控制指令编码,然后发送给执行端并执行步骤6,如果是处于机械臂B2末端控制档,则将双目摄像装置A2获得操作人员的连续指尖点坐标信息进行机械臂B2末端运动控制指令编码,然后通过发送给执行端并执行步骤5;
如图4所示的编码方式,其中,包头为机器人控制的起始位,功能位代表控制指环档位(停止、控制机器人车体或控制机械臂),数据位表示即将接收数据的位数,数据是指尖点坐标信息或指尖点所在区域信息,校验位用于校验传输数据的准确与否,包尾为结束位。例如,包头位:0xFF00;功能位:0xAA表示控制机器人车体,0xBB表示控制机械臂,0xCC表示停止;数据位:0x02表示即将接收两位数据(机器人车体控制时的指尖点区域信息),0x03表示即将接收两位数据(机械臂控制时的指尖点坐标信息);数据即两位区域信息或三位坐标信息;校验位为前面所有位数据之和;包尾位:0xEE。
双目摄像装置获得操作人员指尖点的具体步骤为:
步骤41、双目摄像装置拍摄操作人员手势的双视角图像;
步骤42、采用基于对抗网络的半监督语义分割算法对拍摄的双视角图像进行语义分割;
具体为:步骤421、构建网络;本网络包括一个语义分割网络和一个判别网络,其中,语义分割网络采用DeeplabV3+,判别网络采用DCGAN结构中的判别器--卷积神经网络。语义分割网络用于生成与输入手势图像相对应的语义分割图,判别网络通过检测分割网络产生的分割图与真实标签图之间的差别,来调整语义分割结果。生成对抗网络半监督语义分割流程图如图6所示,分割网络结构如图7所示,判别网络结构如图8所示。分割网络的输入是H×W×3(H、W分别为图像的高和宽,3为RGB三通道)的图像,输出是H×W×K(K为分割的类别数)的类别概率图。其中,类别概率图表征图像中的点为类别K的概率。判别网络的输入是来自分割网络的类别概率图或与输入图像对应的真实标签的独热码,输出是H×W×1的置信图,具体地,置信图表征图像中的像素点来自真实标签的置信度。
步骤422、确定损失函数和训练方式;本网络的训练包括语义分割网络的训练和判别网络的训练,在训练过程中,用到两种训练方式:全监督性训练和半监督训练。
其中,为超参数,用于调节两损失所占权重,输入图像为x,像素坐标为(h,w),K为类别数,语义分割结果为,判别网络输入为或真实标签的独热码,当(h,w)处的像素点x属于k类别时,=1;否则,=0,判别网络的输出结果为,表示输入图像经语义分割网络和判别网络之后所得的置信图上该像素点处的值,D()表示真实标签经过独热码编码得到的置信图上该像素点处的值;
半监督训练中,针对有标签的图像,分割网络的损失函数为:分割网络生成的语义分割图和真实标签的交叉熵、对抗损失;针对无标签的图像,把判别网络得到的置信度较高的区域记作伪标签,代替真实标签,进而,分割网络的损失函数变为:分割网络生成的语义分割图和伪标签的交叉熵、对抗损失,为半监督训练的损失函数。
其中,M为设置的阈值。
步骤423、开始训练;此训练过程分为两部分:语义分割网络的训练和判别网络的训练,在训练时,先训练判别网络,再训练语义分割网络。在更新语义分割网络参数时,要保持判别网络参数不变。步骤4231、训练判别网络;使用有标签图像进行全监督训练,损失函数是交叉熵损失函数L d ,训练方法为梯度下降法,训练目的为使L d 最小化。步骤4232、训练分割网络;首先,对网络进行15000个epoch的全监督训练,使得语义分割网络和判别网络都掌握一定的工作能力。其次,将有标签和无标签图像同时放入网络进行半监督训练5000个epoch。将无标签图像经语义分割网络得到的类别概率图送入判别网络,得到置信图,再对其进行二值化处理得到伪标签,利用伪标签进行半监督训练。
步骤43、采用指尖检测算法对步骤42得到的语义分割后的手势图像进行指尖检测;如图9所示,步骤431、获取语义分割得到的语义分割图;步骤432、对语义分割图进行灰度化、二值化处理;步骤433、利用Canny检测的方法从图中找到手势轮廓,并画出来;步骤434、通过求手势轮廓的零阶矩、一阶矩、二阶矩来计算手势轮廓的重心(),即为手的重心G;步骤435、从手势轮廓点中找到距离重心最远的点F,该点即为指尖点;步骤436、画出左右视图中的指尖点和。
步骤44、采用三维重建算法将步骤43检测到的二维图像指尖点重建为三维指尖点。
如图10所示,步骤441、获取指尖检测得到的指尖点左右视图;
步骤442标定双目摄像头A2;对双目摄像头A2进行标定,获取双目摄像头A2的内、外参数。标定过程主要是坐标系之间的转换:世界坐标系-相机坐标系-图像坐标系。
采用检测算法检测其中的角点,由于已知棋盘格中格子之间的距离等世界坐标系信息,故可求出双目摄像头的参数。该方法基本步骤为:首先,计算出内外参矩阵的积;其次,求内参矩阵;最后,求外参矩阵。
步骤443、进行双目矫正;根据上一步获得的双目摄像头参数对手势指尖点左右视图进行畸变矫正和极线矫正,使左右视图成像原点一致、两个摄像头光轴平行、左右成像共面、对极线行对齐。
步骤444、进行立体匹配;对双目矫正后的指尖图像,通过BM立体匹配算法对其进行立体匹配,计算视差图。
步骤445、根据视差图进行三维重建;根据视差图,通过几何关系求出深度图,生成三维点云图像,并利用摄像头参数求出指尖点的三维坐标。
步骤5、执行端接收机械臂B2末端运动控制指令编码并解码为连续指尖点坐标信息,然后控制机械臂B2末端跟踪指尖点运动;
如图11所示,步骤5中的机械臂B2末端控制时,具体为:步骤51、读取三维重建得到的指尖点的三维坐标;步骤52、将读取到的三维坐标映射到机械臂坐标系GX-Y-Z,记为P1; 步骤53、判断机械臂末端点Q3是否到达P1处,如果是,执行步骤5.1,读取下一个指尖点坐标,如果否,执行下一步;步骤54、对指尖点坐标进行逆运动学求解,计算出指尖点坐标对应的机械臂B2各关节角值;步骤55、使用机器人轨迹跟踪控制算法控制多自由度机械臂B2的各个关节跟踪指尖点反解后的关节角并最终使机械臂B2末端跟随指尖点运动。
步骤6、执行端接收机器人车体运动控制指令编码,然后解码为机器人车体运动控制指令,然后控制机器人车体向指定方向移动;
如图5所示,依据指尖点区域划分情况,具体为:将区域划分为A、B、C、D、E,划分情况如图5所示。若指尖点位于区域A,则控制机器人车体前进;指尖点位于区域B,则控制机器人车体后退;指尖点位于区域C,则控制机器人车体左转;指尖点位于区域D,则控制机器人车体右转;指尖点位于区域E,则控制机器人车体停止。
按照如图5所示方式建立直角坐标系,则A区域可用如下约束条件表示:
B区域可用如下约束条件表示:
C区域可用如下约束条件表示:
D区域可用如下约束条件表示
E区域可用如下约束条件表示:
步骤7、判断程序是否结束,如果是,则结束对机器人的控制,否则,执行步骤3。
尽管已经示出和描述了本发明的具体实施方式,对于本领域的普通技术人员而言,可以理解在不脱离发明的原理和精神的情况下可以对这些具体实施方式进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (6)
1.基于双目视觉的地面侦察机器人手势控制方法,其特征在于,
步骤1、将操作人员操控的控制端和侦察机器人之间建立连接;
步骤2、打开控制端的显示器,显示侦察机器人拍摄的侦察图像;
步骤3、判断控制指环的档位,并将档位信息发送给侦察机器人并执行下一步;
步骤4、解码控制指环发送来的档位信息并判断控制指环档位是否处于机器人车体控制档,如果是处于机器人车体控制档,则根据双目摄像装置获得操作人员的指尖点所在区域信息进行机器人车体运动控制指令编码,然后发送给执行端并执行步骤6,如果是处于机械臂末端控制档,则将双目摄像装置获得操作人员的连续指尖点坐标信息进行机械臂末端运动控制指令编码,然后通过发送给执行端并执行步骤5;
步骤5、执行端接收机械臂末端运动控制指令编码并解码为连续指尖点坐标信息,然后控制机械臂末端跟踪指尖点运动;
步骤6、执行端接收机器人车体运动控制指令编码,然后解码为机器人车体运动控制指令,然后控制机器人车体向指定方向移动;
步骤7、判断程序是否结束,如果是,则结束对机器人的控制,否则,执行步骤3;
步骤4中,双目摄像装置获得操作人员指尖点的具体步骤为:
步骤41、双目摄像装置拍摄操作人员手势的双视角图像;
步骤42、采用基于对抗网络的半监督语义分割算法对拍摄的双视角图像进行语义分割;
步骤43、采用指尖检测算法对步骤42得到的语义分割后的手势图像进行指尖检测;
步骤44、采用三维重建算法将步骤43检测到的二维图像指尖点重建为三维指尖点;
步骤42中,基于对抗网络的半监督语义分割算法,具体为:
步骤421、构建网络;
包括一个语义分割网络和一个判别网络,语义分割网络用于生成与输入手势图像相对应的语义分割图,判别网络通过检测分割网络产生的分割图与真实标签图之间的差别,来调整语义分割结果;
步骤422、确定损失函数和训练方式;
本网络的训练包括语义分割网络的训练和判别网络的训练,在训练过程中,用到两种训练方式:全监督性训练和半监督训练;
其中,为超参数,用于调节两损失所占权重,输入图像为x,像素坐标为(h,w),K为类别数,语义分割结果为,判别网络输入为或真实标签的独热码,当(h,w)处的像素点x属于k类别时,=1;否则,=0,判别网络的输出结果为,表示输入图像经语义分割网络和判别网络之后所得的置信图上该像素点处的值,D()表示真实标签经过独热码编码得到的置信图上该像素点处的值;
半监督训练中,针对有标签的图像,分割网络的损失函数为:分割网络生成的语义分割图和真实标签的交叉熵、对抗损失;针对无标签的图像,把判别网络得到的置信度较高的区域记作伪标签,代替真实标签,进而,分割网络的损失函数变为:分割网络生成的语义分割图和伪标签的交叉熵、对抗损失为半监督训练的损失函数,
其中,M为设置的阈值,
步骤423、开始训练;
包括语义分割网络的训练和判别网络的训练,在训练时,先训练判别网络,再训练语义分割网络;
步骤4231、训练判别网络;
使用有标签图像进行全监督训练,损失函数是交叉熵损失函数L d ,训练方法为梯度下降法,训练目的为使L d 最小化;
步骤4232、训练分割网络;
首先,对网络进行全监督训练,使得语义分割网络和判别网络都掌握一定的工作能力;其次,将有标签和无标签图像同时放入网络进行半监督训练;将无标签图像经语义分割网络得到的类别概率图送入判别网络,得到置信图,再对其进行二值化处理得到伪标签,利用伪标签进行半监督训练。
2.根据权利要求1所述的基于双目视觉的地面侦察机器人手势控制方法,其特征在于,
指令编码包括包头、功能位、数据位、数据、校验位、包尾,其中包头为机器人控制的起始位,功能位代表控制指环档位,指环档位包括停止档、控制机器人车体档或控制机械臂末端档,数据位表示即将接收数据的位数,数据是指尖点坐标信息或指尖点所在区域信息,校验位用于校验传输数据的准确与否,包尾为结束位。
4.根据权利要求1所述的基于双目视觉的地面侦察机器人手势控制方法,其特征在于,
步骤44中的三维重建算法,包括:
步骤441、获取指尖检测得到的指尖点左右视图;
步骤442、标定双目摄像头的坐标点参数;
步骤443、进行双目矫正;
根据上一步获得的双目摄像头参数对手势指尖点左右视图进行畸变矫正和极线矫正,使左右视图成像原点一致、两个摄像头光轴平行、左右成像共面、对极线行对齐;
步骤444、进行立体匹配;
对双目矫正后的指尖图像,通过立体匹配算法对其进行立体匹配,计算视差图;
步骤445、根据视差图进行三维重建;
根据视差图,通过几何关系求出深度图,生成三维点云图像,并利用摄像头参数求出指尖点的三维坐标。
5.根据权利要求1所述的基于双目视觉的地面侦察机器人手势控制方法,其特征在于,
步骤5中机械臂末端控制时,具体为:
步骤51、读取三维重建得到的指尖点的三维坐标;
步骤52、将读取到的三维坐标映射到机械臂坐标系;
步骤53、判断机械臂末端是否到达指尖点处,如果是,执行步骤51,读取下一个指尖点坐标,如果否,执行下一步;
步骤54、对指尖点坐标进行逆运动学求解,计算出指尖点坐标对应的机械臂各关节角值;
步骤55、使用机器人轨迹跟踪控制算法控制多自由度机械臂的各个关节跟踪指尖点反解后的关节角并最终使机械臂末端跟随指尖点运动。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111394436.XA CN113822251B (zh) | 2021-11-23 | 2021-11-23 | 基于双目视觉的地面侦察机器人手势控制***及控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111394436.XA CN113822251B (zh) | 2021-11-23 | 2021-11-23 | 基于双目视觉的地面侦察机器人手势控制***及控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113822251A CN113822251A (zh) | 2021-12-21 |
CN113822251B true CN113822251B (zh) | 2022-02-08 |
Family
ID=78919739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111394436.XA Active CN113822251B (zh) | 2021-11-23 | 2021-11-23 | 基于双目视觉的地面侦察机器人手势控制***及控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113822251B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114449167B (zh) * | 2022-01-15 | 2023-06-06 | 重庆长安汽车股份有限公司 | 基于体态识别的汽车拍照方法、***、车辆及存储介质 |
CN115830408B (zh) * | 2022-10-22 | 2024-03-08 | 北京百度网讯科技有限公司 | 伪标签生成方法、装置、设备以及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107649406A (zh) * | 2017-09-30 | 2018-02-02 | 南京航空航天大学 | 一种高效的双目视觉多物料拾取***及方法 |
CN107813310A (zh) * | 2017-11-22 | 2018-03-20 | 浙江优迈德智能装备有限公司 | 一种基于双目视觉多手势机器人控制方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109955254B (zh) * | 2019-04-30 | 2020-10-09 | 齐鲁工业大学 | 移动机器人控制***及机器人末端位姿的遥操作控制方法 |
CN110039545B (zh) * | 2019-04-30 | 2020-10-02 | 齐鲁工业大学 | 一种基于可穿戴设备的机器人远程控制***及控制方法 |
CN111216133B (zh) * | 2020-02-05 | 2022-11-22 | 广州中国科学院先进技术研究所 | 一种基于指尖识别和手部运动跟踪的机器人演示编程方法 |
-
2021
- 2021-11-23 CN CN202111394436.XA patent/CN113822251B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107649406A (zh) * | 2017-09-30 | 2018-02-02 | 南京航空航天大学 | 一种高效的双目视觉多物料拾取***及方法 |
CN107813310A (zh) * | 2017-11-22 | 2018-03-20 | 浙江优迈德智能装备有限公司 | 一种基于双目视觉多手势机器人控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113822251A (zh) | 2021-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109544636B (zh) | 一种融合特征点法和直接法的快速单目视觉里程计导航定位方法 | |
CN113822251B (zh) | 基于双目视觉的地面侦察机器人手势控制***及控制方法 | |
CN107909061B (zh) | 一种基于不完备特征的头部姿态跟踪装置及方法 | |
CN107471218B (zh) | 一种基于多目视觉的双臂机器人手眼协调方法 | |
CN104933718B (zh) | 一种基于双目视觉的物理坐标定位方法 | |
Bodor et al. | Optimal camera placement for automated surveillance tasks | |
US20180300551A1 (en) | Identifying a Position of a Marker in an Environment | |
CN109509230A (zh) | 一种应用于多镜头组合式全景相机的slam方法 | |
CN109048926A (zh) | 一种基于立体视觉的机器人智能避障***及方法 | |
CN110039545A (zh) | 一种基于可穿戴设备的机器人远程控制***及控制方法 | |
CN106952225B (zh) | 一种面向森林防火的全景拼接方法 | |
CN111199556B (zh) | 基于摄像头的室内行人检测和跟踪方法 | |
CN110434516A (zh) | 一种智能焊接机器人***及焊接方法 | |
CN116630394B (zh) | 一种三维建模约束的多模态目标物体姿态估计方法及*** | |
CN108229440A (zh) | 一种基于多传感器融合室内人体姿态识别方法 | |
CN109800676A (zh) | 基于深度信息的手势识别方法及*** | |
Liu et al. | Using unsupervised deep learning technique for monocular visual odometry | |
CN109785373B (zh) | 一种基于散斑的六自由度位姿估计***及方法 | |
WO2022228391A1 (zh) | 一种终端设备定位方法及其相关设备 | |
CN106403924A (zh) | 基于深度摄像头的机器人快速定位与姿态估计方法 | |
CN108537156B (zh) | 一种抗遮挡的手部关键节点追踪方法 | |
CN105225270B (zh) | 一种信息处理方法及电子设备 | |
KR101456172B1 (ko) | 이동로봇의 위치인식 장치, 방법 및 이동로봇 | |
CN111241940B (zh) | 一种机器人的远程控制方法、人体边界框确定方法及*** | |
CN110991306B (zh) | 自适应的宽视场高分辨率智能传感方法和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |