File Exchange

image thumbnail

Feature-Based Image Registration

version 1.3 (536 KB) by Brett Shoelson
An app for registering images interactively, using feature-base approaches


Updated 10 Nov 2020

View Version History

View License

Register images using any of the features supported by the Computer Vision System Toolbox.
Manipulate interactively ANY of the parameter/values for ALL of the tools in the underlying DETECT/EXTRACT/MATCH workflow. The Feature-Based Image Registration app automatically generates transformation matrices, and visualizes the result of the registration. At the push of a button, MATLAB code to recreate the registration is automatically echoed at the Command Line.
Comments and suggestions are welcome!

Cite As

Brett Shoelson (2021). Feature-Based Image Registration (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (14)

Asieh Daneshi

Brett Shoelson

@xipan: My app is just a front end for the functions in the Computer Vision System Toolbox. References are in the documentation for that product.

xipan li

xipan li

thanks for the app. are there any references.

li li

excellent code for having realized multi-kind features and transformation registration .

ram prabhakar

Sorry to bother. I got it. Thanks once again for the great app.


Brett Shoelson

@ p2014:
You should be able to do it--with a bit of work. Add your feature (by name) to the cell array of featureTypes. Then add a Tooltip for it, and step through the code. I'm sure it will fail, but in easy-to-fix ways. For instance, I call distributeObjects(6,...); you'll need to change that to distributeObjects(7,...). (Or numel(featureTypes)). I imagine that you'll have it running in 10 minutes!

p2014 005

Good job..! I've developed my own binary feature descriptor and wanna register two images with their individual features. How can I include my features to your framework? Also, using a different similarity measure.

Brett Shoelson

The app uses estimateGeometricTransform() to, well, estimate geometric transforms.

Praveen Reddy

Hi Brett,
thanks for the app. What are the functions used for similarity, affine and projective transformations?

Brett Shoelson

Excellent question. These processes are stochastic, in that the RANSAC-mediated exclusion of outliers selects random points iteratively until the desired result is obtained. There's no guarantee that results will be reproducible! (Thanks for the rating!)


Ibraheem Al-Dhamari

Excellent work, why it gives different results for the same input?

hui cheng

MATLAB Release Compatibility
Created with R2014b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!