Projective Vision Toolkit Homepage
The Projective Vision Toolkit (PVT) is a series of utilities available
in binary form that allow you to take an image sequence and compute the
fundamental matrix and trilinear tensor. The current version only goes
as far as computing these two quantities, along with the correspondences
that support them. It does so completely automatically, using only natural
features. The most important assumption is that the maximum motion of a
single feature is limited (usually to 1/3 of the image size). We are able
to process images that are more widely separated than those from a video
camera, but can not handle very wide separations. If one wishes to perform
a reconstruction of the camera positions it is necessary to auto-calibrate
(or to a-priori have the calibration). Currently we provide no reconstruction
software, but plan to do so in the future. In each of our current examples
we have a VRML file (.wrl extension) which shows the reconstruction of
the camera positions along with the features that were detected. In this
case the reconstruction was obtained by sending the correspondences and
calibration information to the Photomodeler
The software uses shell scripts to go through the image sequences, and
the results can be displayed using a custom viewer. The software is available
for Windows (NT,W95,98), and Unix systems (Linux,SGI,Sun). For executing
the shell scripts, a Unix system is the easiest to use; you need a shell
emulator to execute the shell scripts on Windows. The image sequence viewer
runs on Windows and Unix systems and does not require a complex shell script.
For a quickstart first download the software and examples for your particular
machine. To view the results extract the examples archive and go to the
projexamples2 directory, and then to a particular sub-directory. Execute
the displayit shell file for Unix/Linux, or the displayit
batch file for Windows. Look at the results for a particular image triple
by cycling through up arrow, down arrow; look at different image triples
by cycling through left and right arrow. Check the epipolar geometry by
clicking on any point (try one in the middle image) with the left mouse
button. To actually reproduce the results you can use the doit script,
after having put the binaries in the execution path. You should use the
command clearPVT in order to delete all the old files before you
run doit if you want to be sure of what you are recreating. If you
have problems, or want to understand the results then it is necessary to
have some grasp of the underlying concepts (see the documentation).
There are fifteen examples, along with their reconstructions in the
examples archive. The examples show that the software works on a variety
of conditions. All the examples have been processed with the same parameters.
They use the default script options, and produced good results. Along with
some debugging file output in each directory we also place a VRML file,
which contains a graphical view of the reconstruction of the feature points
and camera positions.
Current Software Status
Bighouse, Littlehouse - two house sequences from CMU. Vision people will
recognize these examples.
Chapel - a sequence of the front of a wooden chapel at a museum. Lots of
texture and not easy.
Climber - an outside sequence of a climber in my backyard.
Lab4thfloor - a laboratory with some targets.
Castle - a series from a castle in Belgium.
ETLUeshiba - a sequence of the front of the ETL building in Tsukba, Japan.
Living room - one wall in my living room with bookshelves, computers.
Equiproom - an equipment room with machinery.
CSRoom - a room with a number of computers and keyboards.
ReadingRoom - corner of a room with some bookshelves and tables.
Totem1 - front of a loghouse in the Museum of Civilization.
Reidsculpt - a large native sculpture in the Museum of Civilization.
Workshop1 - sequence of cluttered workshop.
Workshop2 - sequence of cluttered workshop, but up-down motion.
Workshop3 - sequence of cluttered workshop, but rotated cameras.
Download the toolkit (link to forms page)
Our software is available only in binary form. The basic nomenclature of
the packages is platform and date oriented. The basic format is platformOSPVTdate.tar.gz.
For example the package for SGI built on March 4, 2000 is: irixPVT000304.tar.gz