3D Dynamic Visualization

The visualization module provides a 3D virtual rendering of the scene captured in the video, as well as, an animation of moving objects in the video based on the trajectories obtained from the tracking module. The 3D virtual rendering of the scene is implemented using OpenSceneGraph, which is a multi-platform open source high performance 3D graphics toolkit. It provides an object-oriented framework on top of OpenGL, which is the standard library for producing 2D and 3D computer graphics. The 3D dynamic moving objects are integrated into the 3D scene using Cal3D and osgCal libraries. Cal3D is a skeletal based 3D character animation library that supports animations and actions of characters and moving objects, while osgCal is an adapter library that allows the usage of Cal3D inside OpenSceneGraph. The 3D visualization module uses the trajectories generated by the tracking module to animate and move the objects in the 3D scene. It also allows simulation and dynamic manipulation of camera views. In other words, the scene that is initial captured at a particle viewpoint can be visualized from any viewpoint in the 3D world. This viewpoint can be static over time or dynamic, which is the case when the scene is captured from a viewpoint that follows any given object on the field.