Articles and Software

Prof. Dr. H. Dersch - HFU Furtwangen

Immersive Imaging

This is the original homepage of Panorama Tools, the free software suite for authoring and displaying virtual reality panoramas. Much of the software has been moved to other websites, and is now part of several free and commercial projects. This site exhibits recent developments and experiments.

3d-Panorama Viewer PTViewer3d
PTViewer3d is an experimental spherical panorama viewer that generates stereoscopic views on the fly from monoscopic panoramic images and depth maps. Unlike conventional two-image based viewers it provides stereoscopic vision in all directions including vertically up, down and z-rotated views, as well as head-motion parallax.
Stereopanoramas created with Samsung 360 degree panoramic camera (SM-C200). Interactive Display and some Notes.

PTViewer3D-js Javascript version.

PTViewer3D Versions for Oculus/ GearVR and Cardboard VR. PTViewer3D_realtime OpenGL/CL based native viewer for Windows and MacOS. Handles > 60 frames per second on suitable hardware. Java viewer with example panorama and documentation. 64bit-Java Runtime required!
Documentation: "Adding Depth" to Panorama Viewer.
depthmap.exe, Utility to create depthmaps from pairs of images. Requires OpenCV with Cuda-support (with sources).

Subframe Video Synchronization

This is a 3-part series of articles dealing with post-synchronization of video streams for stereoscopic applications, and/or for stitching panorama movies. The first two parts present methods for determining the offsets between video streams with sub-millisecond accuracy. The third part presents software tools for time-shifting videos by frame-interpolation establishing synchronized streams with the same accuracy.


The next upcoming version 2 of MPRemap features a software 3d-motion tracker und true three-axis image stabilizer. MPRemap is a software toolkit for wide angle and fisheye type lenses as found in action cameras. It corrects lens distortions and remaps to any of the standard panoramic image formats. MPRemap 2 will be available on this site in the near future.

Demo of upcoming version of motion picture remapping software and comparison with other videostabilizers (Adobe After Effects, Deshaker, Youtube). A version of this video with fewer compression artefacts can be downloaded here. For a longer test and demo clip see below.

Hyperlapse video of a bicycle ride in the black forest, southern germany. A version of this video with fewer compression artefacts can be downloaded here.

Bicycle descent from Thurner (Black Forest) on winterly roads. A version of this video with fewer compression artefacts can be downloaded here.

Panorama Tools, Open Source Software for Immersive Imaging
International VR Photography Conference 2007 in Berkeley, Keynote Address. Conference Slides

PTStitcherNG: Fast Panorama Stitcher and Blender, implemented in SIMD-Math. For Intel (Windows, Linux, MacOS) and CUDA-graphics processor (Windows. Linux). The version for Cellprocessor (Playstation 3) is discontinued.

PTViewerNG: OpenGL panorama viewer based on WebGL. This viewer requires alpha releases of Firefox, Chrome or Safari. It does not work in Internet Explorer.

MPRemap 0.2:. Motion Panoramas, applying Panorama Tools to motion pictures, panoramic movies and more.

PTViewer:. Interactive viewer for virtual reality panoramas. Suitable for HDR (high dynamic range)-images.

PTViewerME:. Virtual Reality viewer for mobile devices (Cellphone, PDA).

Multiple Rectilinear Panoramas: Some recent experiments to straighten cylindrical panoramas; useful for architecture, especially with large vertical field of view. Essentially, we project the panorama onto an arbitrary closed-path 360degree-screen, and then display the flattened image. A cylindrical panorama uses a circular path, while in this experiment we can use straight segments to correctly display perspective lines. The segments are interconnected by splines leading to smooth transitions.

  • Documentation, Tutorial and Examples.

  • PTViewerJS: JavaScript Panorama Viewer .


    Jasymca: Programmable Java/Javascript calculator. CAS (Computer Algebra System), provides exact and symbolic datatypes, interactive graphics display of functions. The user interface can be selected from either a Matlab/Octave/SciLab-style, or a GNU-Maxima-style.
    Universal SIMD-Mathlibrary: Standard functions for single precision floating point vector datatypes are provided for the SIMD-platforms x86 (SSE2), PowerPC and Cell. In most cases, speed and/or accuracy compare favourable with existing SIMD-libraries (MacOS Accelerate Framework, Cell SDK). Most of the algorithms are based on those of the Cephes library, while the implementation is branchfree and parallelized for minimum pipeline stalls. The Universal SIMD Mathlibrary (usm) provides the functions sin, cos, tan, asin, acos, atan, atan2, sqrt, exp, log, pow, abs, ceil, floor, ldexp, and frexp. It is licensed under the GPL3.


    Embedded Linux projects using the Linksys NSLU2 Network Storage Link:

    Video Converter for Canon Camcorders. CConvert creates video files suitable for playback on a Canon Powershot TX1, which, given the component video output, can then be used as a very compact playback- device for arbitrary HDTV-content, e.g. for presentations. Other Canon cameras may also work,

    JPEGDecoder: Pure-Java JPEG-Decoder for limited Java APIs (e.g. J2ME). Sources

    Copyright 2003,2004,2005, 2006, 2007, 2008, 2009, 2011, 2015, 2016  Helmut Dersch