This is an image stitching program written in C++11.
$ make
Various parameters are saved in src/config.cfg
Without special needs, we only have to set PANO
, TRANS
, CROP
.
The program does some extra work to optimize the output when knowing the input pictures were taken by a camera moving in pure translation or pure rotation.
PANO = 1
indicates that the camera moved in pure rotation. A panorama is expected to be the output;TRANS = 1
indicates that the camera moved in pure translation. Result will be better than one without this option set;CROP
decides whether to crop the final image to a rectangular;
$ ./main <file1> <file2> ...
The output file is out.png
.
Usually, input images should not exeeds 20(files) x 1500(pixels) x 1000(pixels), since your computer may not have enough memory.
The input file names given in the command line need to be well ordered, to make sure the adjacent images can be stitched together.
Zijing Apartment in Tsinghua University:
Zijing Playground in Tsinghua University:
For more examples, see results.
I use SIFT for feature detection and RANSAC to estimate transformation.
For more details, please see readme.pdf.