SharpStitch Overview

Overview of the image stitching .NET library - world's most advanced image stitching, alignment and processing SDK, suitable for industrial, medical and scientific use

Features Overview

  • Complete automatic workflow for image alignment and stitching
  • Feature detection and matching
  • Automatic multi-image matching
  • Global optimization (Bundle adjustment)
  • Color calibration
  • Image blending
  • Each feature can be used separately, collection of useful algorithms
  • Support for embedding in UI
  • 16-bit color depth support
  • Supports over 50 image formats including JPEG 2000, HD Photo, HDR formats and RAW camera formats
  • Multi-core parallel processing support
  • Parallel image processing
  • Easy to use heterogeneous computing (multi-core CPUs, CUDA GPUs, OpenCL)
  • Demos and command-line application included
  • Compatible with .NET 4.0/4.5, 100% managed code (C#)
  • Both 32-bit and 64-bit, strong-named, digitally signed DLL
  • Full feature list...

Free 60-day trial

Download

Automatic Image Stitching

SharpStitch is able to align and blend images from scans, microscopes, aerial photography and handheld cameras (rotational panoramas). Parametric motion can be restricted to 3D rotation, skewing, scaling, rotation or just pure translation.

Automatic image stitching - isometric transformation
Automatic image stitching - rotation transformation

Feature Detection And Matching

Feature detection is robust to rotation, scale changes and blur. It is also partially robust to viewpoint changes and JPEG artifacts. Detected features are "described" with vectors of numbers so they can be matched. Each feature is also given information about its orientation, scale, strength and image gradients. Number of features can be limited by various methods including Adaptive Non-Maximal Suppression (ANMS).

Detected features - each displaying its orientation and scale (size)

SharpStitch includes reliable methods for translation, isometry, similarity, affine, rotation and homography estimation. The estimation makes use of robust estimation combined with nonlinear refinement and guided matching.

Transform estimation from corresponding feature pairs

Automatic Multi-Image Matching

Both feature matching and multi-image matching is performed on pre-filtered sets of corresponding feature pairs and the results are further checked to remove false positives. SharpStitch is able to process unordered sets of images and find mosaics in them.

Automatic multi-image matching (supports un-ordered sets of photos)

Global Optimization (Bundle Adjustment)

SharpStitch can refine image positions and other parameters jointly for the whole mosaic. Any possible misregistration errors are smoothed out with this process.

Color Calibration

Photometric calibration parameters can be computed and applied to images to reduce effects of automatic exposure, vignetting and other effects. Calibration also improves blending by removing banding artifacts caused by strong vignetting and abrupt low frequency changes (e.g. when sky color changes abruptly due to exposure variation).

 Automatic Straightening

Rotational mosaics have curved appearance when taken by handheld cameras or using tripods which are even slightly tilted. This effect can be removed in SharpStitch by computing and applying global rotation (additional rotation of the whole mosaic can be further specified by the user).

Original panoramic image mosaic
Straightened panoramic image mosaic

Image Blending

SharpStitch provides various blending algorithms for different purposes. Image overlaps can be simply stacked on top of each other, averaged or blended with multiband (pyramid) blending algorithm. Blending masks can be constant (each image is given same weight at any place), transitional or seam-based. The seams are computed such that they minimize differences between images.

This can handle complicated mosaics consisting of moving objects.

Ghosting artifacts and bluriness

SharpStitch computes optimal seams

Sharp, perfect result

Collection Of Useful Algorithms

We have implemented a collection of helper algorithms in SharpStitch. Most of them are general-purpose and you can use them for your own tasks. These algorithms include:

  • Fast approximate nearest-neighbor searching
  • Fast max-flow/min-cut algorithm
  • Levenberg-Marquardt nonlinear unconstrained optimization
  • Finding largest inscribed rectangle for automatic cropping of image mosaics
  • Template matching
  • Distance Transform, Fast Watershed Transform
  • and more...

Support For Embedding In UI

SharpStitch library contains classes wrapping the entire stitching process. They support asynchronous processing on background, progress reporting and cancellation.

The trial package contains sample Windows Forms application demonstrating image stitching on UI.

 

 

Download free 60-day trial SharpStitch package with samples

Download

Have a project in mind? Contact us to see how can we help!

Contact Us