Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
S

stitching

> 编程语言
Open source

A Python package for fast and robust Image Stitching

2.6K stars0 likes0 views
WebsiteGitHub

About

A Python package for fast and robust Image Stitching

stitching

A Python package for fast and robust Image Stitching.

Based on opencv's stitching module and inspired by the stitching_detailed.py python command line tool.

Installation

use the docker image

or pip to install stitching from PyPI.

bash
pip install stitching

for server (headless) environments (such as Docker, cloud environments etc.) use stitching-headless

bash
pip install stitching-headless

Usage

Python CLI

The command line interface (cli) is available after installation

stitch -h show the help

stitch *.jpg stitches all jpg files in the current directory

stitch img_dir/IMG*.jpg stitches all files in the img_dir directory starting with "IMG" and ending with ".jpg"

stitch img1.jpg img2.jpg img3.jpg stitches the 3 explicit files of the current directory

Enable verbose mode with stitch *.jpg -v. This will create a folder where all intermediate results are stored so that you can find out where there are problems with your images, if any

Docker CLI

If you are familiar with Docker and don't feel like setting up Python and an environment, you can also use the openstitching/stitch Docker image

docker container run --rm -v /path/to/data:/data openstitching/stitch:{version} -h

You can use the Python CLI as described above (read "current directory" as "/data directory").

Python Script

You can also use the Stitcher class in your script

python
from stitching import Stitcher
stitcher = Stitcher()

Specify your custom settings as

python
stitcher = Stitcher(detector="sift", confidence_threshold=0.2)

or

python
settings = {"detector": "sift", "confidence_threshold": 0.2}
stitcher = Stitcher(**settings)

Create a Panorama from your Images:

  • from a list of filenames
python
panorama = stitcher.stitch(["img1.jpg", "img2.jpg", "img3.jpg"])
  • from a single item list with a wildcard
python
panorama = stitcher.stitch(["img?.jpg"])
  • from a list of already loaded images
python
panorama = stitcher.stitch([cv.imread("img1.jpg"), cv.imread("img2.jpg")])

The equivalent of the --affine cli parameter within the script is

python
from stitching import AffineStitcher
stitcher = AffineStitcher()
panorama = stitcher.stitch(...)

The equivalent of the -v/--verbose cli parameter within the script is

python
panorama = stitcher.stitch_verbose(...)

Questions

For questions please use our discussions. Please do not use our issue section for questions.

Contribute

Read through how to contribute for information on topics like finding and fixing bugs and improving / maintaining this package.

Tutorial

This package provides utility functions to deeply analyse what's happening behind the stitching. A tutorial was created as Jupyter Notebook and has a rendered preview.

You can e.g. visualize the RANSAC matches between the images or the seam lines where the images are blended:

Literature

This package was developed and used for our paper Automatic stitching of fragmented construction plans of hydraulic structures

License

Apache License 2.0

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Pythoncomputer-visionimage-stitchingopencv-pythonpanorama

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言