Pehr Hovey - Optical/Motion-Computational Processes





Schedule

05/04: learn more about curve smoothing techniques to filter the data before sending to laser
05/11: Work out laser scaling issues
05/18: Finish user interface
05/25: Work on installation requirements (lighting, control, etc)
06/01: Prepare for installations or demonstrations


Description

This quarter I am working with a ProLaser ShowCube laser projector that is capable of drawing curves on a wall in Red, Green or Yellow through a combination of Red and Green Lasers. My project, currently dubbed Laser Shadow, intends to use a webcam to track passersby and project their ’shadow’ on the wall behind them so it follows them. The first major part of the project involves the video image processing to extract a shadow-like curve that can be plotted using the laser. I am using OpenCV to perform the computer vision needed to process the video feed. The application is built using OpenFrameworks which is an up-and-coming C++ framework that aims to make it simple to create multimedia applications in C++. So far it has been very useful as it includes video capture support and openCV support out of the box.

I have extended the default OpenCV example to start in the direction needed to interface with the laser. Currently it converts the webcam feed to grayscale and subtracts a pre-captured background image to (hopefully) isolate just the subject-of-interest. This does not always work perfectly if the subject (in grayscale) matches an element in the background. Darker clothing works best. The resulting image is thresholded to create a straight black-or-white image to be processed. I am using Blob Detection to trace the outline of the person which works pretty well if they do not blend into the background.

PDF MidTerm Presentation