一种基于跟踪视觉识别算法的机械臂智能控制方法与流程

文档序号:31546200发布日期:2022-09-17 01:14阅读:212来源:国知局
一种基于跟踪视觉识别算法的机械臂智能控制方法与流程

1.本发明涉及机械臂控制技术领域,特别涉及一种基于跟踪视觉识别算法的机械臂智能控制方法。


背景技术:

2.人体每天都需要进食,摄取食物中的营养来供给自身,虽然进食是人体的基本技能,但仍有许多人或因身体残疾,或因年龄等问题,而无法自主进食,需要他人喂食。而随着科技的发展,智能机械臂的技术越来越成熟,由此,喂食机器人应运而生。
3.喂食机器人设有机械臂以及控制机械臂运动的控制器,控制器可以控制多个机械臂运动,控制器基于来自用户的输入信号,通过用户输入设备实现的机械臂运动。控制器接收各种信号,处理这些信号并提供输出信号以控制机械臂。但是喂食机器人在使用时存在一些问题,大多数机械臂只是按照规定的路径进行,无法根据需要精确定位识别。在多个机械臂由同一个操作员控制时,喂食过程中,难免出现某个喂食对象可能面部被遮挡、低头、转头、嘴未张开等情况,此时喂食机械臂如果继续按照规定路径进行喂食工作,会使食物洒落在桌上甚至是待喂食对象的身上,用户体验极差。


技术实现要素:

4.为了解决上述问题,本发明提供了一种基于跟踪视觉识别算法的机械臂智能控制方法,可以自动捕捉面部动作信息以及遮挡情况,控制机械臂自动喂食。
5.为此,本发明的技术方案是:一种基于跟踪视觉识别算法的机械臂智能控制方法,包括机械臂、控制机械臂运动的控制系统以及操作界面,所述机械臂上设有图像获取单元和距离检测单元,控制系统包括图像识别单元;图像获取单元用于实时获取喂食对象的状态图像,将状态图像发送至图像识别单元,图像识别单元基于跟踪视觉识别算法来判断状态图像中喂食对象的状态与遮挡情况,跟踪视觉识别算法可捕捉用户的面部与特定动作来判定是否喂食;
6.具体包括以下步骤:
7.1)事先将用户面部特征信息录入数据库中,将获取到的图像信息与数据库中的用户面部特征信息进行比对,确认获取的图像信息中的用户身份;
8.2)利用卡尔曼滤波器对图像中的用户动作进行预测分析,通过两组相似度不同的动作数据融合为一个确定靠谱的动作预测值,即分配问题将卡尔曼滤波器的预测映射到新到达的测量值z1,利用匈牙利算法来关联逐个图像数据;
9.3)利用距离检测单元来检测用户所在检测点与机械臂之间的距离值;
10.4)构建神经网络模型来训练分析用户的特定动作,张嘴或摇头;
11.5)控制系统的控制逻辑为:
12.①
检测点与机械臂之间的距离值小于等于预设距离值,未捕捉到用户的特定动作,判断用户被遮挡,机械臂不工作;
13.②
检测点与机械臂之间的距离值小于等于预设距离值,捕捉到用户的特定动作,张嘴或摇头,判断用户需要喂食或停止喂食,机械臂正常工作或停止工作;
14.③
检测点与机械臂之间的距离值大于预设距离值,机械臂不工作。
15.优选地,当捕获到图像信息后,比对处理动作指令是否与预测值z1吻合,即置信区间在90%以上且动作延迟信号1.5s以上;同时处理图像数据关联信息得到扫描值z2,即扫描脸部五官轮廓边界是否重叠来判断面部是否遮挡,获取到的图像信息与数据库中已有的人脸进行比对,相似性大于90%,则判定为正常识别无遮挡,若发现与数据库中的人脸信息轮廓相似比低于90%或扫描不到轮廓信息,则判定有遮挡,此时不进行喂食操作;通过匈牙利算法将预测值z1与图像信息扫描值z2进行比对,即z1≈z2时判定为正常,误差区间3%以内。
16.优选地,步骤4)中,神经网络模型为深层信念网络dbn,构建分类器,将识别到的动作信息分为两类,张嘴和摇头;不断训练提高在不同距离下的识别精度与速度,其中张嘴数据集中的参数设置为a,{a1,a2,a3,

,an};摇头数据集中的参数设置为b,{b1,b2,b3,

,bn},参数a与b结合输出一个返回值z,即a+b=》z,不断优化训练z;其中a与b的数据集是在不同距离下搜集的,通过深层信念网络dbn进行迭代,选出最优距离值。
17.优选地,所述图像获取单元为摄像头,距离检测单元为距离传感器。
18.优选地,步骤1)中,当获取的图像信息中存在单个用户时,比对数据库中的信息判断,该用户是否与提前录入数据库的用户面部特征信息相符,并作出响应;当获取的图像信息存在多个对象时,逐一判断是否与数据库内的用户面部特征信息相符,若获取的图像中存在与数据库内信息不相符的用户,则进行特殊标定,同时自主确认是否添加该用户的面部特征信息,继续根据设定值依次喂食多个用户,并进行多对象的跟踪喂食。
19.优选地,当数据库中已有用户面部特征信息,并识别到新增用户时,在控制系统的操作界面上确认是否新增成员并录入用户面部特征信息;当获取的图像信息存在多个对象时,则默认根据添加顺序进行喂食,或者通过手动设置优先级进行喂食;当获取的图像信息存在多个对象时,可设置单对象跟踪模式,对指定用户进行喂食操作。
20.优选地,步骤5)中,当用户做出张嘴这一动作指令时,摄像头识别判定为需要喂食,将自动跟踪用户的嘴部,机械臂进行投喂;摄像头继续拍摄,识别出用户再次做出张嘴这一动作指令时,进行第二次喂食,重复以上动作;当用户发出摇头指令时,摄像头识别为停止进食指令,机械臂停止一切动作并归位为初始状态。
21.与现有技术相比,本发明的有益效果是:
22.1、利用卡尔曼滤波器来预测用户动作,预测值与时间扫描值通过匈牙利算法关联,有效降低误判率;利用用户的特定动作来控制机械臂工作,提高喂食的准确性;
23.2、可有效解决多对象遮挡问题,避免在遮挡情况下进行喂食,利用机器视觉来控制机械臂运动,大大增强了喂食的灵活性,能跟踪判定被用户的状态从而合理投喂。
附图说明
24.以下结合附图和本发明的实施方式来作进一步详细说明
25.图1为本发明的方法流程框图;
26.图2为神经网络模型的训练精度曲线图;
27.图3为神经网络模型的训练损耗曲线图。
具体实施方式
28.参见附图。本实施例所述基于跟踪视觉识别算法的机械臂智能控制方法,包括机械臂及控制机械臂运动的控制系统,机械臂为市面上现有的喂食机械臂,带有控制系统,由控制系统控制喂食操作,机械臂上设有摄像头和位移传感器,摄像头用于拍摄用户的图像,位移传感器用于测量用户与机械臂之间的距离值。控制系统包括图像识别单元,基于跟踪视觉识别算法来判断状态图像中喂食对象的状态与遮挡情况,跟踪视觉识别算法可捕捉用户的面部与特定动作来判定是否喂食。
29.具体包括以下步骤:
30.1)事先将所有用户的面部特征信息录入数据库中,以便后续可以识别用户身份,保证餐品与用户相对应,避免出现餐品混用,产生过敏反应;
31.摄像头实时拍摄用户的面部,将获取到的图像信息与数据库中的用户面部特征信息进行比对,确认获取的图像信息中的用户身份。
32.2)利用卡尔曼滤波器对图像中的用户动作进行预测分析,通过两组相似度不同的动作数据融合为一个确定靠谱的动作预测值,即分配问题将卡尔曼滤波器的预测映射到新到达的测量值z1,z1即为正常无遮挡预测值,利用匈牙利算法来关联逐个图像数据;将运动和外观参数等其他信息与关联一起添加有助于更好地映射,不太可能的关联可以通过以95%置信区间进行阈值来消除。
33.当捕获到图像信息后第一时间比对处理动作指令是否与正常无遮挡的预测值z1吻合,预测值z1为置信区间在90%以上且动作延迟信号1.5s以上,由此来判定是否需要喂食,以此降低误判率;
34.同时处理图像数据关联信息得到扫描值z2,扫描脸部五官轮廓边界是否重叠来判断面部是否遮挡,获取到的图像信息与数据库中已有的人脸进行比对,相似性90%以上,则此时正常识别无遮挡,如若发现与库中人脸信息轮廓相似比低于90%或扫描不到轮廓信息时,认为是有遮挡,此时不进行喂食操作,相对应的如果前一步操作为喂食操作,那么监测出遮挡时也将停止喂食;通过匈牙利算法将预测值z1与图像信息扫描值z2进行比对,当z1≈z2时,判定为正常、无遮挡,误差区间3%以内。
35.3)距离传感器可用于感测特定用户面部或身体其它部位姿态的运动,检测用户所在检测点与机械臂之间的距离值,并将它们用作接口(输入)来控制机械臂运动。这些操作以监视特定用户用于预先编程的面部或其它身体运动,旨在控制机械臂运动。
36.4)采用神经网络模型来识别用户的特定动作。神经网络训练时,准备适当的数据集,并根据可用数据进行训练测试拆分;设计或选择合适的网络(在迁移学习的情况下)进行培训;在整个训练过程中都会监控验证损失,以便在几个epoch之后生成一个非常小的常量值,如果不是,则在模型上执行超参数调整,以提供尽可能低的验证损失值。保存具有最佳验证损失的模型,并在真实世界的数据集上进行测试。如果为新数据集获得下降精度和召回值,则模型被认为是好的,否则模型需要在增强的数据集上进行训练以提高性能,
37.具体步骤如下:
38.面部识别传感器包括立体摄像头,可连续地向控制系统发送信息,由控制系统连
续地重新计算用户的嘴或传送点的位置,以此建立数据集进行训练,从而增强识别度。
39.用户的嘴或送料点的位置连续地将输出信号发送到控制系统,其重新计算发送给给机械臂的控制信号,使得机械臂可根据用户的嘴或送料点的位置的变化移动。
40.选择深层信念网络dbn为模型,构建分类器,将识别到的动作信息分为两类,一类为张嘴,另外一类为摇头,不断训练提高在不同距离下的识别精度与速度,其中张嘴数据集中的参数设置为a,有{a1,a2,a3,

,an};摇头数据集中的参数设置为b,有{b1,b2,b3,

,bn},系列参数a与b结合输出一个返回值最终反馈到app端,即a+b=》z,不断优化训练z的结果。其中a与b的数据集是在不同距离下搜集的,通过深层信念网络dbn进行迭代。最终优化到响应速度在1s以内的最佳距离与动作信息作为识别率90%以上的最佳数据集进行保存,理想状态是0.6米以内。
41.对设计的神经网络进行了训练和测试,获得的训练精度和损耗如图2与图3所示。通过训练此模型获得了82%的训练准确率。损耗和精度成反比。随着纪元数量的增加,学习率增加,因此损失减少。每次运行epochs时,模型都会自行训练它,训练准确性更新为更准确的值。
42.5)控制系统的控制逻辑分为:
43.①
检测点与机械臂之间的距离值小于等于预设距离值0.6米,未捕捉到用户的特定动作,判断用户被遮挡,机械臂停止喂食工作;
44.②
检测点与机械臂之间的距离值小于等于预设距离值0.6米,捕捉到用户的特定动作,张嘴,判断用户需要喂食,机械臂正常工作;
45.③
检测点与机械臂之间的距离值小于等于预设距离值0.6米,捕捉到用户的特定动作,摇头,判断用户需要停止喂食,机械臂停止工作,并恢复至初始状态;
46.④
检测点与机械臂之间的距离值大于预设距离值0.6米,机械臂不工作。
47.另外,用户特定动作有张嘴、摇头,当用户发出张嘴这一动作指令时,摄像头识别为需要喂食将自动跟踪用户目标的嘴部进行投喂,同时在用户吃掉后发出张嘴指令进行第二次喂食,重复以上动作,当用户发出摇头指令时,摄像头识别得到停止进食指令,停止一切动作组并归位为初始状态,例如折叠汤匙等,无论此情况汤匙中是否存在食物都将有一个倾倒归位折叠的动作模式,如若有食物将会被重新放回到餐盘。当用户做其余姿态动作不会触发喂食指令。
48.本实施例还具有单、多对象跟踪功能,使用yolov3和深度学习方法训练摄像头,并通过在测试数据上测试设备与多个人脸直接的识别度,从而优化检测器的成功率。它分别由六个阶段组成,例如加载数据集、yolov3设计、训练选项配置、对象跟踪器训练和跟踪器评估。
49.具体步骤如下:摄像头连续地将二维图像传送到控制系统的图像识别单元,进行面部识别分析,并相应地处理用户面部的二维图像以定位用户嘴巴的二维坐标。距离传感器用于确定设备到用户嘴的距离并向图像识别单元提供该信息。图像识别单元通过整合距离定点坐标信息与二维坐标最终确定用户嘴的三维坐标,并通过输出信号将这些三维坐标发送到控制系统的控制单元,控制单元采用逆运动过程,通过适当的软件,生成控制信号并发送到机械臂,使得机械臂在机械运动拾取食物后,移动到三维坐标目标定位点,并相应地将食物运送到用户的嘴或交付点。
50.当单个对象进入区域内时比对数据库中的信息判断是否是提前录入的用户信息并作出响应,当多个对象进入时候首要判断是否是库中存在的用户,如若非库中存在的用户进行特殊标定,同时由用户自主确认是否添加该成员并标号,会继续根据设定值优先喂食特定用户,当添加多个用户之后可以进行标号同时进行多对象的跟踪喂食。
51.具体情况如下:
52.1.当库中已有对象,并识别到新增用户时,此时软件端发送推送询问是否新增成员并录入信息,当多个对象同时出现在作业范围区间时则默认根据添加顺序进行喂食,或者通过手动设置优先级进行喂食。
53.2.当库中多个对象同时跟踪作业时,可以通过指令集进行停止喂食工作并切换到单对象跟踪。
54.3.库中的数据集将会分析记录每一个用户的习惯进食频率。
55.4.yolov3设计将会识别目标并划分用户标定框,增加在遮挡时识别的准确性
56.5.训练选项则为训练分析数据集增强响应速度并将整体摄像头模组与距离传感器界定为跟踪器自主优化,最终反馈高响应评估数据。
57.以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1