1. Intro
Code performing a panorama over several images provided they are given one by one and each new image overlaps with at least one of the precedent.
Use the navigation bar at the top of this page to browse the documentation.
2. Requirements
All code in this package requires the OpenCV library (known working version is 1.0.0):
http://sourceforge.net/projects/opencvlibrary/
Some functions require GDK/GTK+2 (known working version is 2.10.6) :
http://www.gtk.org/ and http://www.gtkmm.org/
Some functions require the Gnu Scientific Library (GSL) (known working version is 1.9):
http://www.gnu.org/software/gsl/ , http://gnuwin32.sourceforge.net/packages/gsl.htm
Some functions require the Linear Algebra PACKage (LAPACK) (known working version is 3.0):
www.netlib.org/lapack/
Some functions require the Basic Linear Algebra Subprograms (BLAS) (known working version is 2.0):
www.netlib.org/blas/
The code can take advantage of multiple processors using OpenMP (known working version is 2.5):
3. Compilation Instructions
On any platform
You will need to link to the following libraries: cxcore cv cvaux highui lapack blas QtCore QtGui
On WINDOWS
Get the latest MINGW32 from http://www.tdragon.net/recentgcc/
Cygwin provides gsl and lapack
You will need to link to the following libraries: gomp pthread cxcore cv cvaux highui lapack blas
On LINUX
You need to include: /usr/include/opencv
You need the following options for the C++ compiler: -c -fmessage-length=0 -fopenmp
You need the following options for the C compiler: -c -fmessage-length=0 `pkg-config --cflags gsl` `pkg-config --cflags gtk+-2.0` -fopenmp
You need the following options for the C++ linker: `pkg-config --libs gsl` -fopenmp
4. Manual
Create a folder named "output" in the folder where your executable is.
To analyze some data, you can just launch the program and it will ask you the folder in which your data is stored.
For finer tuning (if you only want to analyze certain folders or certain files), you can also create a file named "setting.txt". In this file, each line starting with # will be considered as comment.
Other lines should look like:
"/daVinci/images" on Linux (the quotes should not be included in the file)
"C:\daVinci\images" on Windows (the quotes should not be included in the file)
for folders, and as follows for files (e.g. pairs of images)
"/daVinci/images/img1.bmp" on Linux
"C:\daVinci\images\img1.bmp" on Windows
The code works with the following file extensions: jpg, JPG, jpeg, JPEG, tif, TIF, tiff, TIFF, png, PNG, bmp, BMP
If you launch it from the command line, it can also accept the following two parameters: diplays and loop. The first one will display the temporary panorama. The second one will loop forever (useful if data keeps being added to the folder.
5. License
The SIFT algorithm is Patented in the U.S. by the University of British Columbia. Thus, the SIFT feature detection code in this package may not be used in any commercial products without permission from UBC. All other code in this package is Licensed under the GPLv2. See the files LICENSE.ubc and LICENSE for more info.
1.5.6