An open API service indexing awesome lists of open source software.

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.

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


hallway
hallway rectified

### Mosaicing


Building Left
Building Right
Building Mosaic


building-left
building-right
building mosaic


Room Left
Room Right
Room Mosaic


room-left
room-right
room mosaic