Inteligencia Artificial 2

Final Integrator Proyect

Inplementation of an artificial vision system to detect and recognize hand gestures.

 

OBJETIVE

Reinforce the knowledge acquired in class about the work with the stages of pre processing of images and extraction of local and global characteristics in order to carry out tasks of recognition of patterns based on gestures with processes of artificial vision.

THEORETICAL FRAMEWORK:

OpenCV : 

OpenCV is an artificial vision free library originally developed by Intel. OpenCV stands for Open Computer Vision (Open Artificial Vision). Motion detection, object recognition, 3D reconstruction from images are just a few examples of OpenCV applications.

MedianBlur:

The Medium Blur operation is similar to the other averaging methods. Here, the central element of the image is replaced by the median of all pixels in the kernel area. This operation processes the edges while eliminating noise. You can perform this operation on an image using the medianBlur () method of the imgproc class.

Gaussian Blur:

In image processing, a Gaussian blur (also known as Gaussian smoothing) is the result of blurring an image by a Gaussian Funtion.

Image Moments:

Image moments are a weighted average of image pixel intensities.

TrackBar Event:

Trackbar are components of the GUI that will help us interact with the OpenCV application we are developing, this library allows us to add event handlers to respond to mouse events, We can also add a scroll bar to a window and get the value of it.

Umbralización o thresholding:

Comparison between a threshold and the pixel values of the grayscale image, if such purchase (pixel value > threshold) is true, either assigns a new value, otherwise 0 is assigned.

ConvexHull:

This is the function that OpenCV uses to build a convex/convex hull that surrounds an object, therefore it will allow us to get the red line that we can see in figure 1, in addition it will help us to determine the convexity defects of an object

FindContour:

The contours can be explained simply as a curve that joins all the continuous points (along the boundary), which have the same color or intensity. Contours are a useful tool for shape analysis and object detection and recognition. For greater accuracy, use binary images. Therefore, before finding contours, apply threshold or cunning edge detection. Since OpenCV 3.2, findContours () no longer modifies the source image, but returns a modified image as the first of the three return parameters. In OpenCV, finding outlines is like finding a white object on a black background. So remember, the object you are looking for must be white and the background must be black.

ACTIVITIES:

1. Develop an application that tracks objects considering 2 approaches: considering global characteristics (such as moments) and local characteristics. It shall take into account the following:

The program will make a video capture using the computer camera or a webcam. The program will have the following functionalities: 

    • "Pattern recording" mode: when you press a key you will record patterns that represent at least 3 gestures. The descriptor must be stored in a file on the disk. 
    • "Identification" mode: when you press a key, the program will read the patterns stored in the file and recognize the key. The gesture identified shall be clearly indicated on the screen.

 2. Window where the monitoring process is carried out with controls that allow changing aspects related to the colors of interest and with preprocessing techniques such as the equalization of histogram, contrast stretching, Umbralization etc.


 

 

 

 

 

 

 

 

 

 

 

DEVELOPMENT OF ACTIVITIES:

Resulting windows showing each of the steps performed during the process of identification of the gestures. In addition, the points of interest that characterize the gesture of the hand are visualized, as shown in the Illustration:
 
 
Segmentation process the area of pixels that represent the color "skin". 
  


The following is the hand edge detection in a specific area for further processing.
 
 
Finally we visualize the detection of hand gestures according to the contours defined by the system performed.
 
 




 
 
 PROYECT ANALYSIS :

The lighting infers in the processing of images according to their intensity since the greater its greater its intensity we have as a result that segmentation is much more accurate than when we have little lighting as shown in the following illustrations.



 

 

 

CONCLUSION:

According to the project, Opencv is one of the most interesting and important tools in artificial vision in recent times and also Free Software. Its stability, scalability, rapid growth and development guarantee its continuity and make it especially useful in the field of artificial intelligence.

Image processing can be the primary target of a system or the complement of a more complex compound. Offering the possibility of implementing various proposals for solutions to problems that society has, such as security applications, identity confirmation, error or hazard detection actuators, route mapping for accesses, etc. The development of this project will widen the possibilities to solve more problems than are currently available.

 


Comentarios