Sunday, December 19, 2010

Touch Enabled Over-head Projected Screens

Imagine being able to use a screen so big as a board and simultaneously move what ever you draw without having to go to the PC.
For this you will need :
  • Projector and screen (obviously)
  • Computer with LabVIEW and IMAQ (the latest at the time)
  • USB Webcam (any cheap one , but one which can cover the screen size you want to work on  without losing any detail)
  • IR-LED's and a power source like a cell or something...(to be used as a pointer)

Concept:
In order to move objects on the screen , you will need a pointer , in this case we use he IR-LED as a pointer... if you really feel lazy to do that use your TV's remote control...( I did)
Now the system has to be able to recognize the pointer and detect its movements , for this we use the webcam. Typically , any ordinary usb plug n play webcam can be used. And sine its going to hacked , a cheap one would be preferred , provided it can be used to view the full screen size without losing any detail required (such as objects on screen which may have to be moved).
So far the hardware part is complete (assuming you know how to setup a projector and the screen ,which will ofcourse not be discussed here...)
Once the camera is found to detect the pointer , use IMAQ in LabVIEW to detect movement of the pointer and any object that must be moved along with it on screen.

Designing the IR Camera:
First , we'll look at how to hack the webcam into an IR-pass filter.
Normally , webcams and most digital cameras are designed to filter out IR light and only allow visible light to the CMOS , this is done by means of an IR filter coated on one end of the lens. In the camera im using , the lens can be unscrewed so without any lengthy procedure I was able to access the IR filter coating.
When the coating is accessible , it must be removed , which can be done in two ways - scratching , or peeling off , although peeling off the filter can be done if the fitler is stuck to the lens , otherwise (as in most cases) it must be scratched off with a knife or blade. Be careful not to scratch the lens below it.


Here , the coating has been partially scratched off.


Coating completely removed
After this , the webcam can detect the IR as well as visible light. If the device is to only detect IR (as is required) , use a visible light filter. These can be found in the old film negatives or floppy diskettes.
cut out the film in the shape and size sufficient to cover the lens. the filter maybe placed on either end of the lens and it does not matter . Use insulation tape to hold the filter against the lens (certain sites prefer using glue , but it takes experience to get it done correctly without having the glue spread out overthe lens and blur the images) 
NOTE: The tape should not allow any visible liht to pass through into the lens , the only light reaching the lens should be via the filter.

Materials used in converting the webcam int an IR cam
IR filter removed and Visible light filter added (on the other end)

Hacked IR cam
After hacking the camera , we should be able to test it , for this if you dont already have your pointing device ready , try using remote controls of TV's , music players , etc. when any button is pressed while the remote control is poited at the camera , a light should be visble on the screen , usually this light pulsates.
TVs remote control acting as an IR light source

IR Light source
2 Remote controls acting as IR transmitters
Ive used two IR transmitters just to show that if more than one source can be tracked , then a multi touch capability can be implemented.
Notice also that the tube light fixture also appears , this is because it is also a heat source , and hence is a source of IR light. This is the concept behind thermal imaging used in industries.

The hardware side shouldnt be tough to implement , and i believe it has all been covered so far...