Track and interpret hand shape using OpenCV and C++
Explore the docs »
View Demo on YouTube
·
Report Bug
·
Request Feature
Back in 2017, I was taking a C++ class at Polytech Sorbonne. For the final project, we could choose to program whatever we wanted to, the only rule was to use C++ (of course), OpenCV and a camera.
I have always been interested about sign language, so I wanted to learn more about it. I learned a lot about sign language, and about what kinds of computer vision solutions existed to be able to understand and transcript or speak out loud the signs.
At the time of the project, I didn't find a lot of projects addressing the problem, so I decided to experiment on my own. I could play with my webcam and what I knew about computer vision at the time to be able to get data from the signs I was doing with my hand.
The level of detection is simple, it can actually detect the number of raised fingers, which is still a good start. I learned a lot about what could be done.
List of detectable features :
- High Five
- Four fingers
- Three fingers
- Metal Sign (actually two fingers)
- Every other sign is set to "unknown"
If I had to go deeper into this project, I am pretty sure I would do this differently, like use what I know about AI. I could create an algorithm that would help me create a database (if one does not exist already) and use a CNN to get classifiable data.
To get a local copy up and running follow these simple steps.
There are a few requirements to be able to run the demo.
- A C++ compiler, I let you Google this !
- OpenCV 2 : https://opencv.org/
- SFML library :
sudo apt-get install libsfml-dev- Clone the repo
git clone https://github.com/DannySauval/Hand_Recognition
- Run make
make
You can watch my YouTube video to get an idea of what you can do with the project ! YouTube video : https://youtu.be/MyM8FlyXM8k
Danny SAUVAL
- Twitter : @DSauval
- Youtube : DannySauval
- Email : sauvaldanny@gmail.com
Project Link: https://github.com/DannySauval/Hand_Recognition
- Ludovic Saint-Bauzel for beeing a nice and useful teacher !
- Internet !