In Nov 2010 this blog was closed (read why). To keep up to date with me now, visit www.chrisoshea.org and follow @chrisoshea on twitter. Thanks
Pixelsumo is a blog about interaction, with an emphasis on play, installation, video game culture, playgrounds and toys. Written by Chris O'Shea.
Follow...
Twitter
Posted September 7th 2006 under Ars Electronica, Computer Vision, openFrameworks
Most of my time at Ars Electronica was spent in the Electrolobby, taking part in the OpenFrameWorks workshop, run by Zach Lieberman & Henrik Wrangel.
“OpenFrameWorks, is a new open source, cross platform, c++ library, which was designed by Zachary Lieberman (US) to make programming in c++ for students accessible and easy. In it, the developers wrap several different libraries like opengl for graphics, quicktime for movie playing and capturing, and free type for font rendering, into a convenient package in order to create a simple, intuitive framework for creating projects using c++. It is designed to work in freely available compilers, and will run under any of the current operating systems”.
I am new to C++, but have used many computer vision applications in the past, from Director Xtras, Eyesweb, Jitter etc. I was keen to understand the depths of computer vision, exactly how these applications analysed video and create my own code for better control.
I had only attended the workshop for two days, yet OpenFrameWorks was quite easy to use, once you get started and get your head around the C++ syntax & structures. The image above shows the debug mode in the program I created. My aim was to study motion, and work out direction of movement. The lower left square shows the live video, and right of this a reference frame for background subtraction. I then created a difference image (what has changed between the background and live video), and then any movement above a threshold. The top left image is a motion history, fading out over time. By analysing this data, it is possible to study every pixel (and those around it) and work out the direction of movement using a gradient. The top right is a vector field, showing the direction and magnitude of each pixel, although my volunteer is standing quite still here. From this I made a simple demo of snow falling particles that got displaced from the vector data.
Overall OpenFrameWorks was easy to use, and even in its early state, I can see potential for this becoming what Processing is to Java, an easier entry point for those wishing to learn c++. No website for OFW just yet, but will update this post when there is www.openframeworks.cc.
Comments
(September 11th 2006)
[…] OpenFrameWorks at Ars Electronica [Pixelsumo] […]
(January 23rd 2007)
[…] As said here before (and elsewhere), openframeworks is an open-source library to help other artists and students produce works through coding, written in C++. Yes, this might sound familiar. Its philosophy and intentions are very similar to processing’s. […]