Posts tagged image:
Interpolating 3D Stereo Pairs
Presenting 3D stereoscopic images is a challenge. Personally I usually view them in cross-eyed free viewing mode (like so), but that takes training (and sometimes eye strain). The most accessible method of displaying them to untrained viewers is the “wiggly gif”. This conveys depth pretty well, but can be jarring:
For a while now I’ve had my eyes on Simon Eugster’s excellent slowmoVideo software. It uses Optical Flow analysis to determine motion between frames, and then synthesizes intermediate frames to allow slowing down regular video footage without making it jerky. Conveniently, the same technique works really well at generating smooth transitions between stereo pairs.
Until a few days ago it required an nvidia graphics card (which I don’t have), but the recent 0.2.6 release can make use of the OpenCV software library instead - so I was thrilled to finally be able to try generating a smoothly interpolated version of some stereo pairs. Here’s the earlier stereo pair with just a few intermediate frames synthesized:
It’s only a few extra frames, but the effect is quite amazing. It sadly didn’t work on all of the stereo pairs I tried - if there is too much motion between frames it can get confused and produce weird artifacts, but when it works it’s pretty damn magical.
It’s a bit of a manual process at the moment, but I’m hoping to automate the laborious bits and integrate it into my stereoscoper command-line tool to allow generating these with minimal effort.
I took a few nice photos when I visited Tasmania last christmas. I’ve been a bit slow in putting them up, so here they are!
Stereoscoper and the Depth of Awesomeness
A few days ago I got a shiny new toy: a 3d camera from thinkgeek (I’d link to it, but it seems to have disappeared from their catalogue). I’m a massive fan of 3d photos / video, so it’s pretty cool to have a device that allows me to take stereoscopic photo pairs simultaneously (you can do it manually with a static scene, but those get boring).
Sadly (although not surprisingly), the quality is not great. The limited resolution is not really an issue given how you’re likely to view them, but the pictures come out awkwardly stretched to half the expected horizontal resolution. They are also pre-combined in a single JPEG, they are the way around for cross-eyed viewing, and the colour balance is frequently off between the two sensors (which can be really jarring).
Seeing a lot of manual photo fixing in my future, I set out to automate it. And thus stereoscoper was born, as a way to bulk-convert stereo images to other formats. Aside from the obvious geometry changes (the horizontal resolution and image placement), I also learnt all about histogram matching in order to make the colour balance consistent across stereo pairs. And in order to make animated gifs that match up nicely, there’s even an interactive mode where you can fine-tune the alignment of the image pairs.
In the wiggly-animated spirit of 3ERD (note: some images there are NSFW), here’s some fun we had in the park with my new toy:
(click to toggle each animation. It’s off by default to save your brain from having a fit ;)
Update: Click the (stereo) link under each image for a cross-eyed viewing version.
A Couple of Drawings
A while ago Nys asked me to draw her a bookmark. It took me a while to think of anything, but I eventually created an anatomically-incorrect bookworm (with arms and all), who munches on the top of your book whenever you close him up inside it.
I also had an old apple sticker laying around, from before I switched to linux. I stuck it on my current case, but it seemed a little out of place. So I modified it a bit. This would make much more sense if I actually had a hackintosh, but it’s still cute ;)
A photo I took this morning. I may well use it for a wallpaper… Flickr Link
This is an old photo I took at Apollo Bay in 2003. I used this tutorial to make it look a bit like a minitature model.
A still I did for an IRTC competition in 2002, “Frozen Moments”. It turned out very well in my opinion, and is the first finished image that I’ve used Brazil to render.