摘要
随着信息技术的快速发展和智能终端设备的广泛使用,手势识别与手势交互因其自然直观的特性广泛应用于多种交互情景。相关研究主要集中于手势识别的可用性理论方法以及手势交互的技术应用上,而对于自然手势识别系统性的设计也同样具有重要研究价值。通过机器视觉进行手势信息的识别可以降低人工成本,对实现智能化生活具有重要意义。本文基于YOLOv5和MediaPipeHands模型设计了一种手势识别算法,实现了手势在自然无约束状态下实时、准确检测,并在JetsonXavierNX嵌入式平台完成系统的构建。主要工作如下: (1)为解决深度学习模型体积大、在嵌入式设备检测实时性不佳的问题。首先使用轻量化模型ShuffleNetv2替换YOLOv5中主干网络以减少模型参数量;然后在主干网络添加注意力机制以提升检测精度;最后引入CIOU损失函数提高模型训练过程的收敛速度。改进后的模型在参数量上压缩为原来的55.41%,浮点计算量压缩为原来的49.71%,在保证检测精度的同时检测速度提升了10.1FPS。 (2)结合MediaPipeHands提出了一种YOLOv5_MediaPipe手势识别方法。该方法以上述改进的YOLOv5检测模型为基础,先将手势区域目标确定后,再通过MediaPipeHands进行手部关键点的检测与分析,根据计算手指关键点向量角度,从而确定手指弯曲情况,进而得出手势信息。有效解决了手势在自然无约束环境下的旋转遮挡、光照背景不同时现有方法存在识别率低、泛化性差等问题。同时,制作了与所提方法相关联的12000张手势数据集,包含自建手势6000张图片和公开数据集6000张图片,并充分考虑了不同角度、不同拍摄距离、不同遮挡程度和不同光照背景等因素,极大增强了模型识别的鲁棒性。最后在自制数据集和公开数据集上进行实验验证,证实了所提方法的有效性。 (3)针对当前新冠疫情、甲型流感反复不确定形势,为避免使用公共设施引发交叉感染的风险。基于JetsonXavierNX嵌入式平台设计了一个电梯内无接触式手势控制系统。该系统通过摄像头读取视频流,将视频流解码后输入所提的YOLOv5_MediaPipe模型进行推理,系统采用多线程的方式实现,可将读取视频流和模型推理同时进行。并使用TensorRT优化系统检测性能,其通过降低计算精度和精简模型结构的方式,大幅提升了模型在嵌入式平台的检测速度,以达到实时性检测的目的。经测试,本文设计的系统在JetsonXavierNX嵌入式平台上的检测速度达到30.2FPS,检测精度均值mAP@0.5为98.3%,实现了电梯内手势识别场景的准确、实时检测,具有极大的实际应用价值。