This is an old revision of the document!
Table of Contents
The goal of this tool is to be able to stitch large panoramas easier on machines with fewer resources than may be desirable. Instead of outputting a single large image like a standard stitch would do this tool generates a folder full of tiles. These can then be processed into a Google maps type application.
There are two modes:
- Single: cut up a single input image
- Project:
Configuration
I have some limited configuration file support. In particular you can have a JSON file called ~/.pr0nrc that can look like this:
{ "enblend": { "opts":"-m 10240" } }
That is you can pass in arbitrary additional options to enblend. In the above example I do this to increase the cache size to 10 GB on my desktop which can afford that sort of memory allocation.
Usage
usage: pr0nts [-h] [--stw SUPER_TW] [--sth SUPER_TH] [--force] [--merge] [--out-ext OUT_EXTENSION] [--full] [--st-xstep SUPER_T_XSTEP] [--st-ystep SUPER_T_YSTEP] [--clip-width CLIP_WIDTH] [--clip-height CLIP_HEIGHT] [--ignore-errors] pto project
create tiles from unstitched images
positional arguments: pto project pto project
optional arguments: -h, --help show this help message and exit --stw SUPER_TW Supertile width --sth SUPER_TH Supertile height --force Force by replacing old files --merge Don't delete anything and only generate things missing --out-ext OUT_EXTENSION Select output image extension (and type), .jpg, .png, .tif, etc --full use only 1 supertile --st-xstep SUPER_T_XSTEP Supertile x step (advanced) --st-ystep SUPER_T_YSTEP Supertile y step (advanced) --clip-width CLIP_WIDTH x clip (advanced) --clip-height CLIP_HEIGHT y clip (advanced) --ignore-errors skip broken tile stitches (advanced)
Examples
Simple
pr0nts out.pto
Pick some halfway reasonable defaults (that may still need fiddling) and output tiles to the directory “out” (or whatever $X in $X.pto is). If the directory already exists an error will be thrown.
Advanced
pr0nts –clip-width 3264 –clip-height 2448 –stw=$[3264 * 5] –sth=$[2448 * 6] out.pto –merge –ignore-errors
Note my camera takes 3264 X 2448 images. Don't stitch 3264 x units on each side overlapping another image and 2448 in the y direction. Supertiles should be 16320 X 14688 pixels. Use out.pto to determine stitch parameters and merge with the existing output. If a command fails skip that supertile and try the next.