The interaction between humans and robots constantly evolve and adopt different tools and software to increase the comfort of humans.
In this article, I explore nine tutorials that show you different methods to detect and recognize hand gestures.
The OpenCV library is not enough to start your project. This library provides you the software side, but you also need hardware components. In the hardware category enters a developed platform able to run the OpenCV library, webcams, and 3D sensors such as Kinect 3D.
The OpenCV is a free and open-source library focused on real-time image processing. It can detect and recognize a large variety of objects, but our focus now is to apply techniques and methods to detect and recognize the gestures of a human hand.
Methods to detect the gestures of a hand
As you can see in the following tutorials, there are several methods to detect the hand gestures. The skin color detection is one of the most popular methods. This method is simple and depends on skin color that can be white, black, or other colors, and the environment light conditions, as well as the background.
Another method doesn’t use the color hand; it uses the convexity detection of OpenCV. These two methods are the most popular in the maker and hacker communities and represent the simplest ways to detect and recognize the gesture of humans to control robots.
- Hand gesture using OpenCV – using OpenCV 2.4, in this tutorial you can find line by line the code and explanations of a hand gesture recognition program written in C language;
- OpenCV Python hand gesture recognition – tutorial based on OpenCV software and Python language aiming to recognize the hand gestures. In this tutorial, you can find the program lines that extract from input frames the region of interest (ROI), how to find the contour, how to draw the convex hull, and finally how to find the convexity defects that appears when the gesture is detected;
- Hand Tracking And Gesture Detection (OpenCV) – this guide shows you step by step the method to detect and track the hand in real-time, and also it’s a demonstration to perform some gesture recognition. All the images are captures using a simple web camera from a laptop, and as a disadvantage, the program can have different results if the background is changed;
- A method of detecting and recognising hand gestures using openCV – from this tutorial you can learn how to apply an efficient method to detect and recognize the hand gesture based on convexity detection by OpenCV. This method has a high accuracy to recognize the gestures compared with the well-known method based on detection of hand contour;
- Hand gesture detection and recognition using OpenCV 2 – in this article you can find the code for hand and gesture detection based on skin color model. This new approach tries to pass the dependence of hand color, which can be white, black, or any other color;
- Simple Hand Tracking with kinect + opencv – in this tutorial you can find the code for hand tracking with OpenCV and Kinect 3D sensor;Extending the hand tracker with snakes and optimizations [w/ code, OpenCV] – this is a tutorial that approach a method for tracking the hand gesture based on the Hierarchical Point Distribution model, which is applied to the well-known active contour method.
- Hand gesture recognition via model fitting in energy minimization w/OpenCV – in this article can be found a good and simple solution for a 2D hand pose estimator based on a skeleton model that fit to the hand;
- Hand detection using OpenCV – in this tutorial you can find the code for an advanced detection method that is independent by the distance and background. The method works by filtering the hand colored pixels;