https://github.com/rushk014/image-autostitch
Python application for autostitching panoramic images.
https://github.com/rushk014/image-autostitch
autostitch harris-corner-detector image-processing panorama-stitching ransac rectify-images sift-features
Last synced: about 1 year ago
JSON representation
Python application for autostitching panoramic images.
- Host: GitHub
- URL: https://github.com/rushk014/image-autostitch
- Owner: rushk014
- Created: 2021-10-23T01:54:04.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-08-31T04:26:45.000Z (almost 4 years ago)
- Last Synced: 2025-04-10T20:58:55.772Z (about 1 year ago)
- Topics: autostitch, harris-corner-detector, image-processing, panorama-stitching, ransac, rectify-images, sift-features
- Language: Python
- Homepage: https://rushk014.github.io/image-autostitch/
- Size: 17.9 MB
- Stars: 16
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Autostitching Panoramic Images
Python application for stitching panoramic images.
## Description
Implements stitching arbitrary images either through manually defined features
or through SIFT feature matching based on the Harris corner detector, as described in [Brown et Al.](http://matthewalunbrown.com/papers/cvpr05.pdf) Stitching is accomplished using RANSAC to compute a robust homography between the set(s) of image
correspondence, then warping each image toward a chosen reference image. Finally, multiresolution blending is accomplished using
Laplacian pyramids. The application also supports image rectification.
## Usage
Requirements are listed in ```requirements.txt```. Application is run from ```main.py```:
```bash
usage: main.py [-h] -r REF [-w WARP [WARP ...]] -m
{rectify,manual_mosaic,autostitch} [-v]
optional arguments:
-h, --help show this help message and exit
-r REF, --ref REF reference image path
-w WARP [WARP ...], --warp WARP [WARP ...]
warp image path(s)
-m {rectify,manual_mosaic,autostitch}, --mode {rectify,manual_mosaic,autostitch}
choose between image rectification, manual
correspondence mosaicing and autostitched mosaicing
-v, --verbose log file reads/writes to stdout & visualize
intermediate autostitching outputs
```
### Modes
- rectify: requires only ```-r REF```
- manual_mosaic: requires ```-r REF``` and at least one ```-w WARP```, supports a single global feature set
- autostitching: requires ```-r REF``` and at least one ```-w WARP```
Global filepaths for intermediate and final outputs are set in ```utils.py```.
Note: Click same coordinate twice to end manual shape labelling.
## Examples
### Rectification
Hallway
Hallway Rectified
### Mosaicing
Building Left
Building Right
Building Mosaic
Room Left
Room Right
Room Mosaic