All Projects → zmdsjtu → Hand_gesture

zmdsjtu / Hand_gesture

Hand gesture recognition and segmentation

Projects that are alternatives of or similar to Hand gesture

Yolov5-deepsort-driverDistracted-driving-behavior-detection
基于深度学习的驾驶员分心驾驶行为(疲劳+危险行为)预警系统使用YOLOv5+Deepsort实现驾驶员的危险驾驶行为的预警监测
Stars: ✭ 107 (+27.38%)
Mutual labels:  detection, dlib
Avdetection
A simple way for detection the remote user's antivirus
Stars: ✭ 82 (-2.38%)
Mutual labels:  detection
Efficientdet
EfficientDet (Scalable and Efficient Object Detection) implementation in Keras and Tensorflow
Stars: ✭ 1,116 (+1228.57%)
Mutual labels:  detection
Ftcvision
Computer Vision library for FIRST Tech Challenge
Stars: ✭ 73 (-13.1%)
Mutual labels:  detection
Coco Annotator
✏️ Web-based image segmentation tool for object detection, localization, and keypoints
Stars: ✭ 1,138 (+1254.76%)
Mutual labels:  detection
Spinenet Pytorch
This project is a kind of implementation of SpineNet(CVPR 2020) using mmdetection.
Stars: ✭ 75 (-10.71%)
Mutual labels:  detection
Breachdetector
Detect root, emulation, debug mode and other security concerns in your Xamarin apps
Stars: ✭ 57 (-32.14%)
Mutual labels:  detection
Sfacecompare
Simple lib for iOS to find and compare faces.
Stars: ✭ 83 (-1.19%)
Mutual labels:  dlib
Dlibfacelandmarkdetector
FaceLandmark Detector using Dlib (Unity Asset Plugin)
Stars: ✭ 80 (-4.76%)
Mutual labels:  dlib
Flask weather
☀️ ☔️ Flask app to auto-detect local weather based off of user's IP address.
Stars: ✭ 70 (-16.67%)
Mutual labels:  detection
Deepface
A Lightweight Deep Face Recognition and Facial Attribute Analysis (Age, Gender, Emotion and Race) Framework for Python
Stars: ✭ 1,150 (+1269.05%)
Mutual labels:  dlib
Mtcnn
face detection and alignment with mtcnn
Stars: ✭ 66 (-21.43%)
Mutual labels:  detection
Cnn Paper2
🎨 🎨 深度学习 卷积神经网络教程 :图像识别,目标检测,语义分割,实例分割,人脸识别,神经风格转换,GAN等🎨🎨 https://dataxujing.github.io/CNN-paper2/
Stars: ✭ 77 (-8.33%)
Mutual labels:  detection
Unet Segmentation
The U-Net Segmentation plugin for Fiji (ImageJ)
Stars: ✭ 62 (-26.19%)
Mutual labels:  detection
Vxscan
python3写的综合扫描工具,主要用来存活验证,敏感文件探测(目录扫描/js泄露接口/html注释泄露),WAF/CDN识别,端口扫描,指纹/服务识别,操作系统识别,POC扫描,SQL注入,绕过CDN,查询旁站等功能,主要用来甲方自测或乙方授权测试,请勿用来搞破坏。
Stars: ✭ 1,244 (+1380.95%)
Mutual labels:  detection
Catt
Detecting the temperature from an infrared image
Stars: ✭ 60 (-28.57%)
Mutual labels:  detection
Faceai
一款入门级的人脸、视频、文字检测以及识别的项目.
Stars: ✭ 9,207 (+10860.71%)
Mutual labels:  dlib
Kaggle Rsna
Deep Learning for Automatic Pneumonia Detection, RSNA challenge
Stars: ✭ 74 (-11.9%)
Mutual labels:  detection
Ccpd
[ECCV 2018] CCPD: a diverse and well-annotated dataset for license plate detection and recognition
Stars: ✭ 1,252 (+1390.48%)
Mutual labels:  detection
Dlcv for beginners
《深度学习与计算机视觉》配套代码
Stars: ✭ 1,244 (+1380.95%)
Mutual labels:  detection

手势识别与分割

支持手掌、拳头、胜利、点赞四种手势的识别与分割

  • 基于fhog特征的手势提取和识别

  • 基于手势的bouding box和类别进行特征点定位达到分割的目的

  • 基于MedianFlow的追踪算法保证boudingbox追踪的稳定性

Requirements

程序运行效率

  • 帧率为35fps+ 环境为Intel I5-4210M处理器,单线程单帧图片28ms

其中检测耗时18ms,追踪2ms,特征点定位5ms,其余界面及图像操作3ms

程序运行展示

  • 运行程序的主界面

Demo

  • 程序视频演示demo

视频Demo

  • 特征点定位效果

手掌-36点

palm

拳头-14点

fist

胜利-14点

scissor

点赞-14点

thumb

基于特征点可以进行很多拓展,例如画出骨架

skeleton

程序操作说明

  • 控制台输入视频所在目录
  • 如果输入数字打开对应编号的摄像头
  • ESC退出

程序设置说明

  • Threshold: 调整检测到各种手势的阈值
  • 2X、3X、4X: 不同图片尺度以减少图片检测的时间
  • show time: 是否显示每张图片所用时间
  • Bouding: 是否显示bouding box
  • Recognition: 是否显示检测结果
  • Segmentation: 是否显示手势分割结果(左下角)
  • Points: 是否显示手势的特征点

程序流程

如流程图所示

  • 程序开始时基于fHog特征金字塔对多种手势模型进行匹配,得到分值最高的手势和所在的bouding box
  • 将当前的box和图像初始化MedianFlow追踪算法
  • 追踪算法得到的图像所在的bouding box输出到特征点回归模块得到特征点
  • 特征点为各手势的轮廓点,继而可以分割出手势所在区域
  • 追踪失败时,重新利用检测的结果初始追踪算法
  • 此外,当检测模块和追踪算法的识别结果不同或者bouding box重合区域小于70%时判定追踪失败 Flowchart

算法特点

  • fHog特征可以很好地表征手的轮廓特征
  • 金字塔解决了检测多尺度的问题
  • 检测分值可以甄别手势
  • 图片缩放可以一定程度上减轻遍历图片费时的问题
  • MedianFlow算法可以一定程度上判断出追踪丢失或者失败
  • MedianFlow算法效率较高,不缩放的图片单帧追踪时间量级是10ms
  • 基于bouding box的特征点回归可以定位到各手势特定位置,诸如单个指尖、掌心等等
  • 基于特征点的分割相较于基于肤色的分割可以更鲁棒地应对光照条件

=================其他辅助程序==================

样本采集

Collection文件夹

按下对应按键可以采集到对应手势的文件目录 视频录制类似

Collection

手势检测标注程序

Label文件夹

标注图片里手所在的矩形框,并存储到crop文件夹

Label

特征点标注

利用dlib的imglab工具进行标注 以手掌为例

Palm_points

检测模型训练

Train_detection

特征点回归模型训练

Train_landmark

Reference

  1. dlib环境配置(之前写的博客)

  2. OpenCV contribute环境配置(之前写的博客)

  3. Object detection with discriminatively trained partbased models. IEEE Trans. PAMI, 32(9):1627–1645, 2010.(手势定位与识别,fHog特征)

  4. One Millisecond Face Alignment with an Ensemble of Regression Trees by Vahid Kazemi and Josephine Sullivan, CVPR 2014.(特征点定位)

  5. Opencv3_contribute追踪算法封装

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].