abstractmachine

20 January, 2008

Esthetiques speculatives

Filed under: atelier hypermedia, live, abstractmachine, code — Douglas Edric Stanley @ 15:24 pm

Le Havre, le volcan

I’ll be in Le Havre for the next two days, participating in the colloquium on “Speculative Aesthetics”, which in reality just means a meeting of the various multimedia professors of french art schools. This will be the seventh meeting of this type, the first beginning in 2000 at the Villa Arson in Nice.

While it is not yet clear where and when exactly I will be talking, I hope to discuss with my french colleagues a certain number of subjects, most of them revolving around open teaching: i.e. using the network to share techniques, documentation, and as a tool for collaboration on projects. This involves Processing, Arduino and eventually OpenFrameworks, but also the tools we use to document our activities using these platforms, and their technical documentation.

19 January, 2008

C’est toi la patate !?

Filed under: exhibition, workshop, atelier hypermedia, abstractmachine, code, transatlab — Douglas Edric Stanley @ 22:34 pm

Here are some screenshots from « C’est toi la patate !? », the design-it-and-build-it-as-fast-as-you-can « installation ludique » we created in just under 4 days during the PlayVision workshop. The main goal of this installation was to use our still-in-construction Open Computer Vision library for Processing in a real-world context and see if it could hold up. Conclusion? So far, so good.

C'est toi la patate !? C'est toi la patate !? C'est toi la patate !?

The idea is very simple. You stand in front of a screen which acts as a surveillance-system/mirror. If you hold a part of your body still, the computer will take a picture of it and detach it from the rest of your body. Once you have detached the body part, you can play with it by moving your body around. The installation stores many body parts, leaving a sort of weak memory trail which (re)connects the successive players to one other over time.

We called it an « installation ludique » in response to an idea put forth by Jean-Baptiste Labrune during the opening Transatlab brainstorming session. I had been talking about Huizinga’s and Caillois’ theories around games and play, and Jean-Baptiste suggested we also keep in mind Winnicott’s theories around free play. The idea of a game open enough for the rules to more or less emerge during gameplay appealed to us greatly. This is one of the reasons there is no real specific goal to our « game », outside of the fairly obvious constraints of the interactive algorithm itself and the behavior required to achieve whatever it is you want to do. Jean-Baptiste also insisted that this model of gameplay has a power relation: it could be suggested that those who generate the rules, are exceptions to them.

Unsurprisingly, most people have been playing with the mirror from a purely narcissistic desire: fascinated by the pure game of self-recognition. Mirrors, apparently, still fascinate us. However, very quickly (in fact, almost immediately), people figured out that you could tell stories with it, and even salacious ones at that. By detaching your fingers in a suggestive manner and pushing them into suggestive configurations of body parts, one can in fact construct a compelling little marionette play, albeit a somewhat simplistic one. Funny that those two configurations — reflection and storytelling — should both be so immediately compatible in an interactive context, so easy to tap into. There is a great word for this which I used back in my pre-doctoral thesis on interactivity, namely « relation ». Relation, in French, can mean both a relation (in the English sense of relationship) and the act storytelling, i.e. the process of relating something to someone else. Interactivity, I wrote back then, was often about relation: what story is constructed in the liminary space generated between the player and the machine?

14 January, 2008

Gamerz 0.2

Filed under: exhibition, workshop, atelier hypermedia, abstractmachine, code — Douglas Edric Stanley @ 23:51 pm

It’s running late and I’ve still got some code to write, so I’ll have to write more about this later. But I wanted to mention that the GamerZ 0.2 exhibit will be opening tomorrow evening at the Espace Sextius in Aix-en-Provence followed by a concert at the Aix-en-Provence School of Art.

If there’s one piece that stands out above all the others, it’s this very cool Damien Aspe installation entitled From Russia With Fun. It’s great, and reminds me of Space-InvadersRubikubism installations, only more art-pop (but still cool).

As for my participation, M2F found a little spot for the Atelier Hypermédia and the installation we built during our tiny workshop entitled « PlayVision ». The students have come up with a fun little project, all built in about 5 days total. It’s a sort-of live Mr. Potatohead, and you’re the Potato. We used, as previously mentioned, OpenCV inside of Processing, and Minim for the sound generation. The last two evenings I’ve spent a few hours stitching it all together and re-writing everything into cleaner classes, and so on and so forth. Tomorrow we finalize everything on-site and adjust the lighting with the organizers and fellow artists. Lighting is always a complete pain in the ass with video surveillance — gosh golly I sure hate adjusting lights.

8 January, 2008

Joystick

Filed under: abstractmachine, narcissus, code, publication, interview — Douglas Edric Stanley @ 22:15 pm

I ran into the organizers of the Gamerz exhibit this evening on my way back from the workshop. They asked, « Did you see ? » « See what ? » « Your interview in Joystick magazine! » Cringe… Oh god, I’d forgotten about that. Then they really started to laugh as they realized that I hadn’t seen the picture they used. « Well, you’ve got a big picture in there with a funny helmet on your head ». Oh my. I forgot that anyone who wants to can grab my pictures off flickr, which is actually a pretty good thing for my ego now that I think about it. I’m going to have to learn to live with my mug one of these days.

The interview is okay. I talk a little about code, teaching, and games in no particular order. Pretty fluffy. It was nice to talk about a lot of young artists’ work though. If you don’t already read Joystick, it’s no use buying the magazine. The articles are pretty bad. They didn’t mangle my interview, so that’s very nice of them, but they didn’t put much in there to begin with so whatever. The article that it’s connected to (on experimental gaming) is pretty strange. The first half basically apologizes to the gamer fanboys for bothering them about some obscure subject they probably won’t care that much about. Kind of a strange way to write if you ask me. But what do I know? I write a blog.

Joystick Magazine interview

7 January, 2008

Edge Detection

Filed under: workshop, atelier hypermedia, abstractmachine, code, transatlab — Douglas Edric Stanley @ 22:06 pm

Ok, so we’ve still got a lot of work to do from here on (like making a distributable library package, for example), but this evening Stéphane and I at least got a pretty decent little edge detection example working with OpenCV humming along quite nicely inside of Processing. So we’re ready for the workshop that starts tomorrow. Of course, there are other libraries that already do this inside of Processing, but this will open a lot of future doors, so we’re pretty happy. Here’s a quick snapshot before I go to bed:

OpenCV + Processing

4 January, 2008

playVision

Filed under: workshop, atelier hypermedia, abstractmachine, code, transatlab — Douglas Edric Stanley @ 23:32 pm

I’m a little giddy this evening, because Stéphane Cousot and I finally got a first very-alpha version working of the OpenCV library for Processing. We’re building this library for a workshop that begins next week and will eventually finish with a game to be installed at the Gamerz 0.2 exhibit on January 15th in Aix-en-Provence. After that, we’ll join up with the other groups working within the context of the Transatlab workshops throughout all of January, and see if we can’t put our OpenCV library to good use in their projects.

As for the library itself, talking back and forth from Processing to OpenCV turned out to be, as expected, quite a pain. Basically, we have to write bridge-code to all the OpenCV functions that we want to use, and implement inside of the JINI-side of the library all of the code required for manipulating and storing the image analysis data. Yikes. In fact just getting that Java-C++ bridge right without any memory leaks or other hazards was 90% of what took us the couple of days we’ve put into it so far. I’m also a bit obsessed with keeping the code as fast as possible (i.e. with as little communicated data as possible between the two environments), since native processor speed is one of the reasons you’d want to work with a library like this with Processing.

OpenCV Processing test

The original plan was to base our work on the fine code created by those wonderful people over at OpenFrameworks, and just add some JINI wrapper for Processing. Yeah right. Turns out you can’t just shoehorn these things like that, so we had to go back to the Intel source code and work from there. All was not lost though: we’ve been able to use OpenFrameworks as a cheat-sheet, and more importantly to try to match their methods to ours. We couldn’t make it 100% compatible, so you won’t be able to just copy your Processing code over. But we’re at least trying to keep the two projects as close as possible, so that people can take the essential routines from Processing and port them over to OpenFrameworks without too much hassle. So far we’ve found it pretty easy to go in this direction (it’s a fabulous way to learn C++, by the way), so why not return the favor and get inspired by OpenFrameworks to generate some code for Processing for a change?

For those that might be interested in this library, know that we’re working on it, but also that we don’t have any specific time-frame for releasing it. As Stéphane and I did for the UDP library, we’ll just fine tune it until it works within the context of the atelier, and then Stéphane will probably clean it up and make it all spiffy as he usually does.

That said, if you want any specific functions from the OpenCV library to be put at the top of the list (i.e. while we still have time to work on this project), let me know — perhaps in the comments here? As I mentioned above, we’re beginning with a simple demo-to-demo match of the OpenFrameworks example, and then we’ll maybe roll in some of the face detection behavior currently offered in the Face Detection library by Jaegon Lee. That’s a big maybe, because that library already works. But in the end, since it’s merely just a wrapper to a specific Mac OS X port of OpenCV, it would probably be good to just go back to the original OpenCV framework for Mac+Win+Linux compatibility. Anyway, edge/blob detection & face tracking are the first two on our list, along with all the fun little extra gadgets that come with making those two aspects work. Any others?