Hand gesture recognition systems provide a natural way for humans to interact with computer systems. Although various algorithms have been designed for this task, a host of external conditions, such as poor lighting or distance from the camera, make it difficult to create an algorithm that performs well across a range of environments. In this work, we present GRLib: an open-source Python library able to detect and classify static and dynamic hand gestures. Moreover, the library can be trained on existing data for improved classification robustness. The proposed solution utilizes a feed from an RGB camera. The retrieved frames are then subjected to data augmentation and passed on to MediaPipe Hands to perform hand landmark detection. The landmarks are then classified into their respective gesture class. The library supports dynamic hand gestures through trajectories and keyframe extraction. It was found that the library outperforms another publicly available HGR system - MediaPipe Solutions, on three diverse, real-world datasets. The library is available at https://github.com/mikhail-vlasenko/grlib and can be installed with pip.
翻译:手势识别系统为人类与计算机系统交互提供了自然方式。尽管已有多种算法被设计用于此任务,但光照不足、距离摄像头过远等外部条件,使得开发在多种环境下均表现良好的算法面临挑战。本文提出GRLib:一款能够检测并分类静态及动态手势的开源Python库。该库可利用现有数据进行训练以提升分类鲁棒性。所提解决方案采用RGB摄像头输入,对获取帧进行数据增强后传入MediaPipe Hands进行手部关键点检测,随后将关键点分类至对应手势类别。该库通过轨迹与关键帧提取支持动态手势识别。实验表明,在三个不同的真实世界数据集上,本库性能优于另一公开手势识别系统MediaPipe Solutions。该库可通过pip安装,代码托管于https://github.com/mikhail-vlasenko/grlib。