I’ve published a project made some time ago but I think is worth to make it public. The motivation of this project is the emergence of devices such as Nintendo Wii, Microsoft Kinect, etc… which use new ways to interact with the user. No more keyboards and mouses… with this new stuff we can interact with them without touching anything at all. It’s really awesome!
So I made my own approach by creating a prototype which consists of a 3D world with a first-person perspective where you can walk through by using the head only. Your head’s movements are translated into movements in the 3D world so you can go forward and backward, sidestepping, look around, etc…
Here you can see the results:
The software was built mainly with openCV and openGL and it uses some of the most popular algorithms of Image Processing and Computer Vision.
Due to my attempt to create a perceptual interface using OpenCV, this post is the first in a series to explain briefly some of the capabilities of the OpenCV library, an open-source computer-vision library.
OpenCV comes with over 500 functions that cover many areas in vision, and its goal is to provide a simple-to-use computer vision infraestructure to build fairly sophisticated vision application quickly. The library is written in C and C++ and runs under Linux, Windows and MAC OS X. There is active development on interfaces for Phyton, Ruby, Matlab, and other languages.
How to find faces
Finding faces means finding complex objects, so OpenCV uses a statistical model (often called classifier), which is trained to find the object we are looking for. The training consists in a set of images, divided into “positive” samples and “negative” samples. The positive samples are instances of the object class of interest and the “negative”, images that don’t contain the object of interest.