openFrameworks is a C++ opensource library used by artist

to create amazing looking visualisations and installations. See our projects settings for things which have been made using openFrameworks. On this unofficial site you can find projects, programming techniques, tutorials, community news, workshops and addons. Download the library now!.

Memory

From the author: I've recently finished up a project in collaboration with a Glass Artist, Agelos Papadakis. We built a structure of 25 glass neurons the size of a face and chainded them together in a 3x3x5 meter sculpture. We had 2 cameras hidden in the piece tracking peoples faces and a projector then creating visualizations of the recorded faces resembling something like a cloud of neurons firing in different patterns. We presented it first in Edinburgh at Lauriston Castle's Glasshouse, and then at the Passing Through exhibit in the James Taylor Gallery in Hackney.

From the author: t's a bit tricky trying to film the piece since it uses projection onto glass. Sadly I'm left with only a few images that try to portray what went on.

Here's the code It makes use of the openframeworks library so you will need to be familiar with how to setup an XCode project with the openframeworks library if you plan on using it.

The original idea was to use glass balls so that's why all the code says glassBalls instead of say glassNeurons. If you manage to get it running, press 'd' to see the live video input. As it collects faces, it fills up the image buffers with each "glassBalls". Once all the glassBalls are loaded with images of faces, then the visualization begins. Neurons will "fire" and brightness values of each neuron will go up and down based on Gaussian functions and these values are sent to the brightness shader.

It was a bit of a sculptural challenge placing all the glass pieces within view of the projector, avoiding any other glass pieces or chains in the line of sight of it, having it fit within our view of what we wanted, and also within the amount of time we had. We did the projection mapping by just creating the object with a bounding box. Once you moused over an image of a person's face, you could drag it around, use '-', '=', '_', or '+' to resize it. I used a text file to store ('w') and read ('r') the positions of the faces in case I had to reload the program. I think memo has some MSAInteractiveObject class now which would be 1000x nicer to use.

Just a note as well, I wrote this against of573. I also ended up extending ofxCvColorImage with a few functions so I've just included all of ofxCv* files in the project. There may very well be other functions that I've edited and forgotten about so please let me know if you have any problems with it. Have a look through and please let me know what you think!

Community news

  • carles 00:37, Great unofficial site! Hope can share here some projects also. Thanks OF ^^

  • Simon 01:17, Sorry ! I just have to use the gui.. wonderful source ! thanks a lot

  • Simon 01:01, Hi ! I have tried to compile the boid example .. but when the app starts, nothing appends because it's try to load _settings.xml. Do you have an example of the settings xml file ? Thanks a lot !

  • escher 05:36, dear vanderlin, I couldn't find ofxBox2d from google code,where could I to get it? thanks!!

  • nomo 14:21, TO WILL: this line should look like this: gui.addSlider("boid.max_vel", slider_vals["boid.max_vel"],0.1f, 40.0f, 0.1f);

  • igoumeninja 19:50, ok, i done it.

  • igoumeninja 19:27, how can i declare saved_image_num and img_saver at the make video tutorial?

  • Will 04:53, Could you please help me to fix this problem? http://www.openframeworks.cc/forum/viewtopic.php?f=14&t=2218 It may have something to do with my entry level skills but... I have tried to compile the example and the compiler threw an error in the TestApp.cpp file. "error: no matching function for call to 'ofxSimpleGuiToo::addSlider(const char [13], float*, float, float, float)''

  • download ofxBox2d 18:31, hey guys i am having probs downloading the OF wrapper for box2D from the google code page, is there another way to download it?

  • roxlu 17:08, posted youcube!