gigastart - assemble multi-row panoramas
gigastart [options] image1 image2 [...]
Options: -o | --output name Filename of created Makefile. Otherwise defaults to 'Makefile' -v | --fov Horizontal field of view in degrees. Otherwise will be calculated from EXIF info. -h | --help Outputs help documentation.
gigastart takes a list of image files and creates a Makefile containing rules to generate a single panorama from the images.
It utilises a multi-step strategy:
1. Consecutive pairs of photos are linked into one or more chains. 2. Photos from the ends of each chain are linked if possible. 3. Photos are placed in a rough grid with approximate positions. 4. overlapping images with no links are linked if possible. 5. Positions are optimised
This approach has some advantages:
The number of connections checked is directly proportional to the number of images, so a 200 photo panorama should take twice as long as a 100 photo panorama.
Different shooting strategies are supported: multi-row, zig-zag, middle-top-bottom row-ordering, different number of photos in each row, multiple angle-of-view.
Feature points are only identified once per photo and are reused.
The process is very suited to parallel processing, simply set the maximum number of processes by redefining the $MAKE built-in variable, e.g:
make MAKE='make -j 16'
Each step and photo pair is written as an intermediate .pto project, so any problems can be fixed at this level, rerunning make will only repeat work required to integrate those changes - The entire process does not need to be rerun.
A disadvantage is that features are identified by generatekeys and matched by autopano from the autopano-sift-C package. These features are saved in a verbose XML file format which adds a significant IO overhead, a future improvement could be to use a different caching format for these files.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Bruno Postle - December 2009.