The lifauth toolkit will allow you to generate light fields from an array of .rgb images. Currently, it is only supported on the SGI platform.
The 3 main steps to authoring a lightfield are:
You can click on the links to view the lid files, and shift-click on the links to download the files.
dragon8.lid This is the lid file that was used to generate the dragon8 light field. It has a single slab. The uv plane is at infinity (w=0), so that each source image is an orthographic projection (i.e. all rays are parallel for a given u and v).
sodahall.lid This is the lid file that was used to generate a 4-slab 360-degree view of the inside of a corridor in Soda Hall. In the resulting light field, You can turn all the way around, but you can't look up or down very much (since it's missing the top and bottom slabs). The st plane is at infinity, so that each source image has a fixed field of view, 90 degrees. This is an example of an outward-looking light field.
unit8.lid This is a generic lid file for generating a 360-degree view of an object that fits in a unit cube (-0.5 to 0.5). Both the uv and st planes have w=1, so neither plane is at infinity. (Instead, each image will be a sheared perspective projection.) Two more slabs could be added (top and bottom) to make this lightfield cover the object from every angle.
The two main tools of authpack are:
Usage: lidquery <filename> <attribute> where <attribute> is one of the following: SLAB_COUNT <slabno> SLAB_ID <slabno> SLAB_BASENAME <slabno> SLAB_UV <slabno> SLAB_UV_V <vertexno> <slabno> SLAB_UV_V_C <vertexno> <componentno> <slabno> SLAB_ST <slabno> SLAB_ST_V <vertexno> <slabno> SLAB_ST_V_C <vertexno> <componentno> <slabno> SAMPLES_UV <slabno> SAMPLES_U <slabno> SAMPLES_V <slabno> SAMPLES_ST <slabno> SAMPLES_S <slabno> SAMPLES_T <slabno> FORMATSo, for example, to find the number of samples in U and V in slab 1 of unit4.lid:
> lidquery unit4.lid 1 SAMPLES_UV 4 4The authpack.tar.gz file also contains the C source code for lidquery, so that you can query .lid files directly from C programs.
To run this script, you must download the entire authpack.tar.gz package to get all the associated files, templates, sample data set, etc. However, this script should serve as a simple model of how a script can interact with the lidquery program to draw a light field. Similar scripts can be written to render lightfields in OpenGL, raytracers, or your favorite renderer.
To download lifauth, hold down the shift key and click on the link below:
You can run lifauth without any arguments to get its usage summary:
Usage: lifauth [options] <infield> <outfield.lif> arguments: -v Verbose mode on, prints progress. -vq Use vector-quantization compression. This is the default. -novq Don't use vector-quantization compression -vqtrain <fraction> Specify fraction of lightfield to be used as a training set. The fraction should be between 0 and 1. Default is 0.04. -vqtile <u> <v> <s> <t> Specify the size of each vq tile. Each of the four numbers should be a fairly small power of 2. Default is 2 2 2 2. -vqcode <size> Specify the number of tiles in the codebook. Depending on the tile size, good numbers would be between 256 and 65536. Default is 16384. <infield> Should be either a .lid file (LIght field Description file), which specifies a set of .rgb files, or a .lif file, which is the native light field format. <outfield.lif> The output file.The default settings were used for most of the sample light fields. Compression times can range from several minutes to several hours, depending on the size of the data set and the percentage of data that is used in training. It is wise to choose a training set size that will fit in resident memory on your system.
Except for commercial resale, lease, license or other commercial transactions, permission is hereby given to use, copy, and/or modify this software, provided that the above copyright notice and this permission notice appear in all copies of this software. No part of this software or any derivatives thereof may be used in the production of computer models for resale or for use in a commercial product.
This software is provided "as is" and without warranty of any kind, express, implied or otherwise, including without limitation, any warranty of merchantability or fitness for a particular purpose.
[email protected]
If you would like to receive announcements about future releases, send mail to:
[email protected]with the message body:
subscribe lightpack-announce
back to the LightPack home page.