This post contains a lot of technical information about panoramas. I won’t be explaining every step of the proces. For the basics I refer to panoguide or the panotools wiki. In this article I want to point out the (technical) faults in my 2.5D project and improvements that can be made to get rid of them. Then I will discuss possibilities to take the idea further.
Hard cuts between the panoramaframes.
I captured my panoramas in the direction I was moving. Because of this the panoramaframes are not aligned. I took the endparameters of the previous panoramaframe as startparameters for the one following. This together with my incorrect use of Gollonets easing library produced all the hard cuts in the beginning. This problem is easily fixed by adjusting the pan parameter so that the panoramas are aligned and getting the calculations right.
Visible movement from one panoramaframe to another.
This is caused by the stopmotion technique. During the sequence in the corridor I’ve interpolated frames in AE but you can still see several interpolation artifacts. So we need to create more frames. One can optimize the time it takes to capture but it remains a tedious process.
So if I were to do a similar project again, I would definitely recreate the space in 3D and render it out. That would be a fair amount of work to get it photorealistic but it’s worth it. First of all I can set out a freeform path even in areas where a camera can’t get (e.g. inside an object or liquid). The movement would be much smoother because I can choose the amount of steps along the path. And I wouldn’t have to retouch the camera or worry about changing lighting conditions.
Little control over the movement.
This is the procedure I followed.
How to get more control over the movement?
Ideally one would have a timeline with graphical displays similar to those found in After Effects (and soon in Flash CS4). Having bézier curves to set out the parameter change is much more flexible than putting Penner equations one after another. In that same ideal world, one would would also see a real-time preview right next to that timeline. Pixel Bender to the rescue? That name alone makes it sound like an ideal candidate :)
So what’s next? As you can see in the equirectangular clip from my previous post, it’s not simply a matter of cartesian to polar coordinates but also transforming three-dimensional angular coordinates. The good news is that the formulas are available inside the PanoTools library. Thank you Erik Krause for providing me that information on the PanoramaToolsNG board.
[...] most likely this
involves the use of Euler Angles in order to transform three-dimensional
angular coordinates. You find the code to do that in the panotools
library source code, most likely in math.c Get the original panotools
sources from http://www.all-in-one.ee/~dersch/ or the recent ones from
http://panotools.sourceforge.net/Please respect the GPL if you use panotools code.
I looked it up and indeed in math.c I find transformation matrices to do this. However, I’m a designer and my knowledge stops here. So if there’s anyone out there knowing how to deal with these, and is willing to help, I would be very greatful!
Making the idea into an installation.
If we could get this to work, the idea could be made in an installation where the position of the projected view is equal to the position of a visitor. When a visitor moves, he controls the represented position and the center of the view. Could be nice..
Please share your thoughts on this, and if anything isn’t clear let me know in a comment. I’m now off to bed cause I’m wrestling with a serious cold here :)
Tags: equirectangular, panoramas, processing
Copyright Valentijn Kint - All Rights Reserved