where the hell am i?

Welcome to the home of Tob. I'm of germanic-hungarian descent, currently living in the Federal Republic of Germany, also known as Old Europe. I grew up in the Big Äpple and now live in Darmstadt. I obtained my master degree in computer science at the TU Darmstadt, and my areas of interest include computer graphics, networking and cryptography. I am a programmer in the area of 3D computer graphics at the Fraunhofer IGD.

In my free time I like to read about ancient cultures and mythology, particularly ancient egypt and the civilizations of Mesopotamia. Obviously my studies in computer science reflect on my hobbies, which include programming, gaming and occasional web design (although this is more of a love-hate relationship). I am an old-school streetboarder. I absolutely love the hilarious Discworld books by Terry Pratchett. My ears are attuned to electronica, 604/psy, chillout and progressive rock.

This page serves as my code outlet and some of the other junk I do. You can navigate through the sections of this page - development, main, various - with the three buttons on top. If you have any questions or comments regarding my papers, feel free to contact me at:

tobias.franke@siggraph.org
tobias.franke@igd.fraunhofer.de

Twelve Apostles, Victoria, Australia
Twelve Apostles, Victoria, Australia

work

Augmented and mixed reality try to merge real and virtual worlds, i.e. mix a virtual object into a real image. To do this, one essentially needs two parts: a tracking method to figure out where the object is in real space, and some rendering methods that can transfer real light onto a virtual object and vice versa. I deal with the second problem.

This video shows a recording from the current implementation, using image based lighting as a possible solution. The setup consists of one tracking camera and a 180 degree lens camera for the lighting. Please note that the irradiance map is rotated, so the light shining from the back actually appears on the front side. This was done to prevent my arm to block off the image when lighting the front side.

The original video can be found in the Fraunhofer IGD A4 video gallery.

publications

Enhancing realism of mixed reality applications through real-time depth-imaging devices in X3D

T. Franke, S. Kahn, M. Olbrich, Y. Jung
In Proceedings of the 16th International Conference on 3D Web Technology 2011 [Link] [Bibtex] [ACM] [FHG]

Until recently, depth sensing cameras have been used almost exclusively in research due to the high costs of such specialized equipment. With the introduction of the Microsoft Kinect device, realtime depth imaging is now available for the ordinary developer at low expenses and so far it has been received with great interest from both the research and hobby developer community. The underlying OpenNI framework not only allows to extract the depth image from the camera, but also provides tracking information of gestures or user skeletons. In this paper, we present a framework to include depth sensing devices into X3D in order to enhance visual fidelity of X3D Mixed Reality applications by introducing some extensions for advanced rendering techniques. We furthermore outline how to calibrate depth and image data in a meaningful way through calibration for devices that do not already come with precalibrated sensors, as well as a discussion of some of the OpenNI functionality that X3D can benefit from in the future.



Adapting Precomputed Radiance Transfer to Real-time Spectral Rendering

K. Schwenk, T. Franke, T. Drevensek, A. Kuijper, U. Bockholt, D. Fellner
In Proceedings of Eurographics 2010 [Link] [Bibtex] [FHG]

Spectral rendering takes the full visible spectrum into account when calculating light-surface interaction and can overcome the well-known deficiencies of rendering with tristimulus color models. We present a variant of the precomputed radiance transfer algorithm that is tailored towards real-time spectral rendering on modern graphics hardware. Our method renders diffuse, self-shadowing objects with spatially varying spectral reflectance properties under distant, dynamic, full-spectral illumination. To achieve real-time frame rates and practical memory requirements we split the light transfer function into an achromatic part that varies per vertex and a wavelength-dependent part that represents a spectral albedo texture map. As an additional optimization, we project reflectance and illuminant spectra into an orthonormal basis. One area of application for our research is virtual design applications that require relighting objects with high color fidelity at interactive frame rates.



Precomputed Radiance Transfer for X3D based Mixed Reality Applications

T. Franke, Y. Jung
In Proceedings of the thirteenth international conference on 3D web technology 2008 [Link] [Bibtex] [ACM] [FHG]

We present a lightweight framework composed of two extensions to introduce precomputed radiance transfer (PRT) to X3D. Depending on the basis function, PRT is used to simulate shading, complex light transfer and effects like subsurface scattering and caustics in real time by projecting incident light and transfer functions into frequency space, which allows the solution of the integration of the rendering equation through a simple dot product. Light transfer from incident to transferred radiance thus becomes a matter of solving dot products of coefficient vectors, which can be easily evaluated on the GPU. In this paper, we identify the minimal set of components needed for an X3D application to use spherical harmonic based PRT, and discuss how further enhancements to PRT can be implemented, like new basis functions and other features.



Real-Time Mixed Reality with GPU Techniques

T. Franke, Y. Jung
In Proceedings of the Third International Conference on Computer Graphics Theory and Applications 2008 [Link] [Bibtex] [FHG]

In this paper, we propose a combination of modern GPU-based methods that are able to generate high-quality, interactive real-time rendering for augmented and mixed reality applications. We also present a new approach to estimate surface reflection functions and materials from images using genetic algorithms.



Enhancing X3D for advanced MR appliances

Y. Jung, T. Franke, P. Dähne, J. Behr
In Proceedings of the twelfth international conference on 3D web technology 2007 [Link] [Bibtex] [ACM] [FHG]

In this paper, we explore and discuss X3D as an application description language for advanced mixed reality environments. X3D has been established as an important platform for today's web-based visualization and VR applications. Yet, there are very few examples for augmented reality systems utilizing X3D beyond a simple geometric description format. In order to fulfill the image compositing and synthesis requests of today's augmented reality applications, we propose extensions to X3D, especially with a focus on lighting and realistic rendering.



Erweiterte Konzepte in C++: Multithreading

In Cryptography and Computeralgebra: Fortgeschrittene Konzepte in C++ [Link]

Der C++ ISO Standard von 1998 behandelt keine Nebenläufigkeit von Programmen und ist in diesem Punkt bisher Programmiersprachen wie Java, die Threads intern als Sprachmittel anbieten, unterlegen. Die Implementierung von Programmen, die Multithreading nutzen, wird somit vorerst zu einem meist unsicheren und vor allem unportablen Vorhaben. Aktuell ist jedoch gerade Multithreading ein gefragtes Thema, denn in Zeiten von Hyperthreading und Multi-Core Prozessoren wird der Anteil multithread-fähiger Programme weiter ansteigen. Um die Sicherheit und Korrektheit dieser Programme zu gewährleisten, ist auf Dauer eine Anpassung des Standards unerlässlich. Diese Ausarbeitung befasst sich mit aktuellen Lösungen und den vorgesehen Modifikationen für C++0x in Bezug auf Multithreading.

Achtung: eMail Adresse nicht mehr gültig. Bitte Adresse am Ende der Seite nutzen!



Compiler extensions to catch security holes: Dissected

Programming errors that lead to unreliable and insecure programs are a problem that has been around since the very beginning of computer science. Most of these errors are caught via extensive testing and debugging. However, more serious bugs are often left in the code unnoticed, because either the interaction through which they can occur is too complex to understand, given a certain time section, or the testing phase is too expensive. This paper presents various automated methods, with a special focus on code analysis (both static and dynamic) to contain or isolate the damage.

Attention: eMail address not valid anymore. Please use the one at the end of the page!