Git Product home page Git Product logo

dl-gesture-recognition's Introduction

Overview

This project uses front-end separation, and the client has the following three forms of implementation:

  • Manual gesture recognition, which means that the user determines the segmentation of continuous gestures
  • Dynamic gesture recognition based on frame difference method
  • Dynamic gesture recognition based on object tracking

The server encapsulates Temporal Relation Networks.

Server

Test on Ubuntu16.04 + Python3.6 + cuda9.0 + cudnn7.0.5 + Pytorch0.3.1 + opencv3.4aliyun NVIDIA P100), make sure you have installed the above environment.

Dependencies

$ pip install flask
$ pip install pillow
$ pip install moviepy
$ sudo apt-get install ffmpeg
$ pip install -U scikit-learn
$ pip install scipy
$ pip install flask_uploads

and then download the weight file and configuration file, and place them in the server/model folder. Finally, run server.py

.placeholder under empty folder can be deleted

Client

Test on Ubuntu16.04/Mac OS + Python3.6 + OpenCV3.4 + opencv_contrib

Dependencies

$ pip install pillow
$ pip install requests

Manual

  • server-address: gesture recognition server address
$ python run_manual.py -s [server-address]

Interactive mode: press the keyboard s key before each action, and press the s key again after the action is complete to complete the recognition

Frame difference

you can choose the Background Subtraction Methods

  • method: knn or mog
  • threshold: The sum of the length and width of the contour identified by the algorithm is greater than the threshold is considered to be the hand
$ python run_frameDifferent -s [server-address] --method [method] --threshold [threshold]

Object detection

GPU support is required to run this version, we tested on Ubuntu 16.04 + cuda9.0 + cudnn7.0.5 + tensorflow1.6. You need to install tensorflow1.6-gpu extra and darkflow, You can download darkflow from here.

$ pip install tensorflow-gpu
$ pip install Cython
$ cd darkflow
$ pip install .

# Check whether the installation is complete
$ flow --h

and then download the weight file and configuration file, and place them in the model folder and cfg folder respectively. Finally, run

$ python run_objectDetection.py -s [server-address]

dl-gesture-recognition's People

Contributors

govzhz avatar nikan1996 avatar yuchenbing avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

dl-gesture-recognition's Issues

关于服务器端电脑配置要求

您好
感谢您开源了这么优秀的项目
请问一下可以在普通的拥有2G显存显卡的pc机上跑您的server端程序吗?
谢谢

It takes a lot of time to open the server.

Thanks a lot for this great project !
Some problems have arisen here :
Problem 1 : After the first time when i run $ python server.py at the server computer , it shows 'Multi-Scale Temporal Relation Network Module in use ['8-frame relation', '7-frame relation', '6-frame relation', '5-frame relation', '4-frame relation', '3-frame relation', '2-frame relation']' . Then it takes about 10 minutes to show other information :
**'Freezing BatchNorm2D except the first one.
done

  • Serving Flask app "server" (lazy loading)
  • Environment: production
    WARNING: Do not use the development server in a production environment.
    Use a production WSGI server instead.
  • Debug mode: off
  • Running on http://0.0.0.0:80/ (Press CTRL+C to quit)
    '**
    Is this normal? How long does it take for everyone to open the server?(As my RAM is 16 G )

Problem 2 : After the server is start , i run $ python run_manual.py -s http://xx.xx.xx.xx:80 at my computer. I can start the recognition program with key 's' , but after the second ‘s’ there is no result. When I try to run 'run_frameDifferent.py' , I meet the same problem .
Maybe there is something wrong with the way that I set this project ? Or I missed some important details ?

Any answer will help me a lot . Thank you very much !

用服务器预测

为什么服务器应该使用图形处理器,为什么不使用cpu进行预测呢?

Gesture recognition not happening

Hey thanks for this wonderful repo! I'm facing an issue while running 'run_manual.py'. Code is getting stuck when you call 'self._event.wait()' method from Thread class. If I comment this line, Camera Stream starts but no Gesture detection and recognition happening. Can you please help me to solve this.

Thank You!

关于系统配置的问题

请问一定要严格按照文档里提供的配置来安装吗,可以使用更新版本的cuda和pytorch吗

dimension error in server.py

Hello, in server.py I get a dimension error: While copying the parameter named consensus.fc_fusion_scales.0.3.weight, whose dimensions in the model are torch.Size([1515, 256]) and whose dimensions in the checkpoint are torch.Size([27, 256]).

precisely in this line: net.load_state_dict(base_dict)

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.