...Mobile p5 engine..?
...But let's be honest, you're not here to listen to me rain on internet's parade, so let's get onto the meat of it. As the title sorta tries to allude to, we built a sort of installation! Or at least, we got something to an early workable stage. Sometime last week, Chris had the idea that we should motion track Annie's betta and use the resulting data to drive a flocking simulation. To keep the footprint small, we decided to use a webcam based solution. I spent a few hours working on a basic frame differencing solution using some code from processing.org to tweak the overall performance and output and came up with this:
I did put a version up on my github, it's not quite as usable as I want it to be (a bit more dependencies than i'd like), but in a revision or two it'll be where i'd like it to be. Meantime, it's definitely usable enough to do your own simple tracking based sketches, so have at! If you're interested in putting your own motion tracker together, check these out:
Frame Differencing by Golan Levin
Frame Differencing with GSVideo
We got all the code merged and tweaked to an initial state last night, and here's the result so far, fish courtesy of our buddy Ermal's Fishcam:
Live Fish Flocking from Chris Rojas on Vimeo.
Next up, live tracking Annie's fish per the original spec. Annie had some interesting ideas about how we might be able to enhance with some projection or some kind of external display to liven the overall display up. Version 2.0 incoming! Created with processing, toxiclibs, and GSVideo.
I think a two part cam setup would be super awesome. One to capture the RGB with flocking on a screen behind the bowl/tank and one to do the tracking in IR so that the display won't interfere with the tracking.
ReplyDeleteThat'd be an interesting experiment, good addition for v1.5 me thinks...
ReplyDelete