6th sem INTERNSHIP
During the summer vacation period, an internship task was Given by my college. I applied for a 5-Week internship in Prolog Info-tech, Rajkot. During internship Hand Gesture Recognition project is done by me and my Partner
Hand Gesture Recognition
Gesture Recognition is the most favored and practicable solution to human interaction with computers and has been widely accepted in recent years.
Hand Gesture Recognition is a cool project to start for a Computer Vision enthusiast it involves an intuitive step-by-step procedure that could be easily understood so that you could build more complex stuff on top of these concepts.
Purpose:
To perform some regular tasks like play-pause video, go forward and go backward, mute-unmute, increase and decrease volume through hand gestures. but currently, this project return output for the finger counter.
Implemented Functionalities:
- find and segment the hand region from the video sequence.
- Count the number of fingers from the segmented hand region in the video sequence.
How does it work?
Detection: With the help of a camera, a device detects hand or body movements, and a machine learning algorithm segments find the hand edges and positions of image.
Tracking: A device monitors the movements and frame to capture every movement and provide input for data analysis.
Recognition: The system tries to find patterns in the gathered data. When the system finds a match and interprets a gesture, it performs the action associated with this gesture.
(HGR SYSTEM)
Applications of hand gesture recognition technology
Automotive
Lighting System
HUD
Biometric Access
Others
Consumer Electronics
Smartphone
Laptops & Tablets
Gaming Console
Smart TV
Set-Top Box
Head-Mount Display (HMD)
Others
Healthcare
Sign Language
Lab & Operating Rooms
Diagnosis
Others
Advertisement & Communication
Hospitality
Educational Hubs
Tools and Technologies:
I used Python Programming Language for Creating this Project. I used OpenCV library, Numpy library, and Convex hull technic.
Why Python?
Python is the only prerequisite for basic scripting, Machine Learning, and Deep Learning knowledge will help this model to do tasks like AI-ML.
OpenCV
OpenCV is a huge open-source library for computer vision, machine learning, and image processing. OpenCV supports a wide variety of programming languages like Python, C++, Java, etc. It can process images and videos to identify objects, faces, or even the handwriting of a human. When it is integrated with various libraries, such as Numpy. which is a highly optimized library for numerical operations, then the number of weapons increases in your Arsenal i.e. whatever operations one can do in Numpy can be combined with OpenCV.
Numpy
NumPy is the fundamental package for scientific computing in Python. It is a Python library that provides a multidimensional array object, various derived objects (such as masked arrays and matrices), and an assortment of routines for fast operations on arrays, including mathematical, logical, shape manipulation, sorting, selecting, I/O, discrete Fourier transforms, basic linear algebra, basic statistical operations, random simulation and much more.
Steps that we perform to create Project
1. Connect Camera for taking input
2. Creating frame for input object.
3. Give an image file for training module.
4. Applying Gaussian Blur filter.
Gaussian Blurring: Gaussian blur is the result of blurring an image by a Gaussian function. It is a widely used effect in graphics software, typically to reduce image noise and reduce detail. It is also used as a preprocessing stage before applying our machine learning or deep learning models.
5. Convert Color-space from BGR to HSV
7. Implementing Erosion and Dilation for,
- Removing Noise.
- Identify intensity bumps or holes in the picture.
- Isolation of individual elements and joining disparate elements in image.
8. Implementing imshow method.
9. Implementing waitkey method.
10. Create Threshold image.
11. Applying Contours on input object and file.
Comments
Post a Comment