一种可自定义手势的手势识别与人机交互方法

文档序号:37459618发布日期:2024-03-28 18:42阅读:10来源:国知局
一种可自定义手势的手势识别与人机交互方法

本发明涉及一种计算机,为一种静态手势分类以及快速自定义交互手势的方法。


背景技术:

1、手势交互方式可以减轻用户的使用负荷,因此在人机交互领域有着极其重要的应用。手势是可以传达信息的人体运动或者姿态,包含静态手势和动态手势。静态手势指某一时刻手保持固定动作,不考虑连续时间内手势的形状变化和位置变化。由于人手本身已经可以携带大量的信息,应用静态手势在交互上已经可以涵盖多个功能。

2、作为人工智能蓬勃发展的体现,基于计算机视觉的手势分类方法大量涌现。一些方法如依赖硬编码,即设定交互手势之后根据手势的特征如手指于手掌的距离识别,计算量不大,但是硬编码方法缺乏灵活性,当交互手势被定义好后很难被修改。基于当下热门的基于神经网络技术的手势分类方法得到了大量研究,但是这些方法高度依赖神经网络模型,现有的网络模型规模普遍较大,很依赖硬件性能,并且在部署上存在困难,在性能较差的平台不易开展应用。mediapipe的轻量级推理解决方案提供了一种可行的技术路线。先前的工作(孔祥杰,王辉,张俊曦,叶辉.基于mediapipe手势识别模型的安卓人机交互方法[p].四川省:cn114463833a,2022-05-10.)实现了在安卓平台部署mediapipe手势识别模型结合轻量级的分类网络实现了一种交互方式,但是由于手势分类仅仅依据指关节点坐标,在实际的应用当中分类的精度不够。


技术实现思路

1、针对当前手势识别模型完善的不够轻量化、精度不够的问题,提出了一种可自定义手势的手势识别与人机交互方法。

2、本发明的技术方案为:

3、一种可自定义手势的手势识别与人机交互方法,包括以下步骤:

4、步骤一:获取包含手部信息的视频、图像,预处理后建立基于轴角变换的手势分类网络;

5、步骤二:进行快速自定义交互手势的方法,包括以下步骤:

6、步骤2.1、命名新手势;

7、步骤2.2、采集新手势的训练数据:采集方式为实时录制视频并存储,对于每一种新手势,用户维持手部姿态以确保所有关键点相对于父关键点的局部变换,并在摄像头前充分旋转手部,同时微动手指避免过拟合;

8、步骤2.3、更新数据集:根据手势的更新情况,系统会自动将视频转提取为图片并加入新数据集;

9、步骤2.4、手势分类网络的重新训练;

10、步骤三:应用训练完成后的手势分类网络到手势交互中。

11、进一步的,建立基于轴角变换的手势分类网络具体包括以下步骤:

12、步骤1.1:将电脑外接摄像头获取的视频流或者存储的rgb视频输入mediapipe检测模型,提取有用的人手关键点3d空间坐标信息;取决于两只手的可见性,输出包为21个或42个3d点坐标;

13、步骤1.2:将3d空间坐标信息作为输入,计算子关键点相对于父关键点的轴角;由于人体手指关节是铰链关节,因此相对于父关键点的旋转可以用轴角表示,即rv=[x*θ,y*θ,z*θ],其中,[x,y,z]为父关键点到子关键点的方向向量,θ为子关节方向与父关节方向所成的夹角;为了方便分类,所有轴角在输入手势分类网络前将转换为四元数的形式;取决于两只手的可见性,输出大小为15个或30个四元数,因此,单帧网络的整体输入为:

14、步骤1.3:将上一步得到的变换信息输入手势分类网络,得到手势分类结果;手势分类网络为一个3层的全连接神经网络,采用修正线性单元激活函数,输出层使用归一化指数函数,分类网络置信度最高的类型即为分类结果

15、步骤1.4:网络的损失函数为当前帧预估的关键点值与真实情况的差异情况,即其中xθ为预估的关键点值,x(t)为真实情况。

16、进一步的,步骤三应用于静态手势交互中,静态手势是指某一时刻手保持固定动作,不考虑连续时间内手势的形状变化和位置变化;本方法采用滑动窗口下的序列中平均值方法来与阈值进行比较;当窗口中的平均值大于阈值,则可认为连续序列达到了阈值,即可触发响应的已定义好的控制事件。

17、进一步的,步骤2.1具体为:

18、一种命名交互手势的方法是基于它们主要的动作特性或者它们的功能;另一种方法是,如果交互手势用于启动特定的功能,那么可以将该功能的名称用作手势名称;将命名的多种手势按照一定规范写入一个文件后提交到数据模块存储,随后等待程序处理并转化为可识别的格式。

19、进一步的,步骤2.3具体为:

20、根据手势的更新情况,系统会自动将视频转提取为图片并加入新数据集;数据集包含两部分:图片和标签;为上一步添加的手势原始视频添加标签,标签可以是手势的名称,也可以是手势传达的信息,之后将视频处理成图片后加入数据集;本方法使用增量更新,先后数据清洗检查、与数据集连接、验证数据集;首先查找数据中的异常值,使用iqr方法检测异常值,并丢弃异常值所在的帧;随后进行标准化将数据转换为模型需要的格式;程序会将增加的数据写入一个临时的二进制文件中,在将元数据合并后插入数据集的整体视图中。

21、进一步的,步骤2.4具体为:

22、重新训练是一个迁移学习任务,现有模型的前三层网络可以看作是一个线性特征提取器,可以对数据进行特征转换,然后使用这些转换后的特征作为新任务的输入;网络的权重也要相应更新,网络更新的方法与初始网络的训练基本一致;将更新后的数据集输入模型,运行训练脚本,脚本将以有监督学习的方式更新分类网络的权重并保存;重启后的手势分类模块将持续检测包括新手势在内的所有交互手势。

23、本发明的有益效果在于:

24、本方法从rgb视频或图片中获取手的局部轴角变换信息用作分类,接入分类网络并得到手势分类结果,在显著提升静态手势分类的准确率的同时,对训练所用的数据集要求也可一并降低,如数据量可以缩小,可以快速训练并更新分类网络,因此支持用户导入自定义手势。本方法在不要求硬件性能依赖的同时,提升了人机交互的自由度,在简单场景下的人机交互产品开发中应用前景广阔。



技术特征:

1.一种可自定义手势的手势识别与人机交互方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的可自定义手势的手势识别与人机交互方法,其特征在于,建立基于轴角变换的手势分类网络具体包括以下步骤:

3.根据权利要求1所述的可自定义手势的手势识别与人机交互方法,其特征在于,步骤三应用于静态手势交互中,静态手势是指某一时刻手保持固定动作,不考虑连续时间内手势的形状变化和位置变化;本方法采用滑动窗口下的序列中平均值方法来与阈值进行比较;当窗口中的平均值大于阈值,则可认为连续序列达到了阈值,即可触发响应的已定义好的控制事件。

4.根据权利要求1所述的可自定义手势的手势识别与人机交互方法,其特征在于,步骤2.1具体为:

5.根据权利要求1所述的可自定义手势的手势识别与人机交互方法,其特征在于,步骤2.3具体为:

6.根据权利要求1所述的可自定义手势的手势识别与人机交互方法,其特征在于,步骤2.4具体为:


技术总结
本发明涉及一种可自定义手势的手势识别与人机交互方法,包括以下步骤:获取包含手部信息的视频、图像,建立基于轴角变换的手势分类网络;进行快速自定义交互手势的方法,包括以下步骤:命名新手势;采集新手势的训练数据;更新数据集:根据手势的更新情况,将视频转提取为图片并加入新数据集;手势分类网络的重新训练;应用训练完成后的手势分类网络到手势交互中。解决了手势识别模型完善的不够轻量化、轻量化的精度又不够的问题;在显著提升静态手势分类的准确率的同时,对训练所用的数据集要求也可一并降低,支持用户导入自定义手势。本方法在降低硬件性能依赖的同时,提升了人机交互的自由度。

技术研发人员:黄默麟,林沛,黄程宇
受保护的技术使用者:上海科技大学
技术研发日:
技术公布日:2024/3/27
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1