"Kung-Fu Girl"
A synthetic test sequence for multi-view reconstruction and rendering research

Introduction
Download
Calibration How-To
Additional notes and news
Contact information

Introduction

This is the web-home for the GrOVis synthetic multi-video test data set. Also known as the "Kung-Fu girl" dataset. The data is meant to be used for testing reconstruction/rendering algorithms based on multi-view video sequences without consideration of noise and other capturing device errors found in real-world data.

The set consists of frame sequences rendered from 25 different camera views located in a hemisphere around the scene, background images and camera parameters. The recorded scene contains a humanoid figure, animated by motion-captured data, and is rendered in three flavours: foreground with textured, shaded and empty backgrounds respectively. In addition we also provide a pure silhouette set. The sequences are 200 frames long and each frame is saved as a 320x240 image. Some snapshots from the sequences can be seen in Figure 1.

Figure 1. Three frames from different parts of the set.

The cameras lies in three 'layers' located on a hemisphere, the setup is as seen in Figure 2, and are pictured in Figure 3. A single camera (named t01) is located on top of the scene viewing down. The next 8 cameras (m01 to m08) are placed evenly in a circle viewing the scene from above. Finally 16 cameras (b01 to b16) are placed in a greater circle lower in the scene.

Figure 2: Camera configuration around the character. (Click image for larger view.) Figure 3: Camera naming layout seen from a top view. The figure starts the sequence looking in the direction of the centre arrow. (Click image for larger view.)

Download

The dataset can be downloaded in parts or as a whole. The following table presents the different packages. If you just download a sub-package and not the full distribution, don't forget to also download the camera calibration files and the background images (if your algorithm uses background subtraction.)

Please be advised that some of the files are REALLY HUGE!

The Data set

FileDescriptionSize
Synthetic_test_seq_FULL.tar (From uni-hannover.de)Everything1.1GB
Synthetic_test_saq_calib.tarCalibration data only.140kB
Synthetic_test_seq_compl.tarRendering with textured foreground and background.611MB
Synthetic_test_seq_bg.tarBackground images for compl.3.1MB
Synthetic_test_seq_sb_compl.tarRendered with textured foreground and shaded background.359MB
Synthetic_test_seq_sb.bg.tarBackground images for sb_compl.1.7MB
Synthetic_test_seq_fg.tarForeground images. (Background white).57MB
Synthetic_test_seq_silhouette.tarSilhouette rendering.47MB

Extras

FileDescriptionSize
calib_m.tar.gzSome Matlab code to convert the calibration data in "camera_calib.txt" to calibration matrices such as those included in the distribution. Also includes code to reconstruct a simple visual hull from the data. Provided by Ivo Ihrke.15kB
vh_mov.mpg Movie showing the result of the matlab code above.1.9MB

Camera Calibration How-To

Calibration data as output from the rendering program (Maya) can be found in the file "camera_calib.txt". For convenience we have computed some calibration matrices for the cameras. They can be found in the distribution subdirectory "calibration" and are stored according to:

Files (e.g. "b03.K")
xxx.KInternal calibration matrix (3x3) for camera xxx.
xxx.RRotation matrix (3x3) for camera xxx.
xxx.TTranslation matrix (3x4) for camera xxx.
xxx.MFlip matrix (3x3) for left/right-handed coordinate system for camera xxx.
xxx.PProjection matrix (3x4) = K*M*R*T for camera xxx.

The matrices are stored the following way:

int m
int n
float a11 a12 ... a1n a21 a22 ... a2n ... am1 am2 ... amn

Using the calibration matrices in OpenGL

In order to setup the OpenGL modelview and projection matrices for each camera, you have to do the following:

  1. Read K,R and T, as explained above. The other matrices are not required in this case.
  2. Compute R*T, which is a 3x4 matrix. Expand to a 4x4 matrix by adding the fourth row (0,0,0,1). The result is the GL_MODELVIEW matrix.
  3. The image dimensions are WxH := 320x240. Verify that K is valid, for these images i.e. K_13 == W/2 and K_23 == H/2.
  4. Compute the focal length f := K_11 / W.
  5. Compute the half image size in y-direction s := (K_22 * W) / (2* K_11 * H).
  6. Setup the GL_PROJECTION matrix via
    gluPerspective( 2*atan( s / f ) * 180 / M_PI, W/H, near, far );
Suitable clip planes are near:=10, far:=100.
The model lies approximately between coordinates (-15,-15,-5) and (25,25,25).

Notes and news

Contact Information

If you have any questions or comments you are welcome to send them to ahrenberg@mpi-sb.mpg.de.

www.grovis.de
Graphics-Optics-Vision
Max-Planck-Institut für Informatik
Stuhlsatzenhausweg 85
D-66 123 Saarbrücken
Germany

Several members of the Graphics-Optics-Vision group have been involved in the construction of this data, including Sabina Bihlmaier, Ivo Ihrke, Bastian Goldluecke, Marcus Magnor and Lukas Ahrenberg.