Blind panorama stitcher based on the paper "Automatic Panorama Image Stitching using Invariant Features" by Brown and Lowe Identifies different panoramas in the same folder, aligns, optimizes for errors and does gain compensation.
- Blind stitching. Separates panoramas that do not belong to each other (based on overlapping points transformed to destination place)
- Images not belonging to each other are not connected in the network and thus excluded (more efficient)
- Final images are trimmed to reduced black space from geometric transformation
- Bundle adjustment takes a long time with many images
- Network theory slows the process considerable when more images from different panoramas are added
- Derivation of Camera Jacobian Matrix for Bundle Adjustment
- Finding the Image in the center that is visually symmetric to the user
- Save images to .png files
- Download the repo
- Run
main_notebook.ipynb
to visualize the output better o runt themain.py
file (Image outputs may not visualize correctly on all computers - Image folder can be selected in the code section:
# --------------------------------------
imageFolder = "images/setBig"
# images/setBig has 4 Unordered panoramas
# images/setSmall has 2 Unordered panoramas
# images/setSingle has 1 panorama
# images/setSingle2 has 1 panorama
# images/setSingle3 has 1 panorama
# images/setSingle4 has 1 panorama
# images/setSingle5 has 1 panorama
# --------------------------------------
- Configuration of parameters can be changed in
src/config.py
Images not belonging to each other are not connected in the network and thus excluded (saves power)