View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Automatic Image Registration

4.3 | 9 ratings Rate this file 51 Downloads (last 30 days) File Size: 3.13 KB File ID: #4534 Version: 1.0

Automatic Image Registration



24 Feb 2004 (Updated )

Using mutual information for users with no access to IP toolbox.

| Watch this File

File Information

Functions for aligning images by rotation and translation:
MI2 - calculating Mutual information
joint_h - calculating Joint histogram

Mutual information is calculated using joint histogram calculation between two images.

rotate_image.m function by Ohad Gal is used. DO NOT FORGET DOWNLOAD THE FILE:

Users having access to IP toolbox can download which uses IMROTATE function and has an option to crop the image to save computation time.

For each angle of rotation all translation parameters are checked.

NOTE - the images must have correct relative sizes with respect to each other (no resizing is incorporated in this registration)

Please e-mail if you have problems!


Rotate Image inspired this file.

MATLAB release MATLAB 6.5 (R13)
Other requirements Might be really slow for many angles and small step. Memory may be important!
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (11)
09 Mar 2016 priyadharsini vaiyapuri

Error in im_reg_MI (line 61)
J = rotate_image(angle(k),image2); %rotated cropped IMAGE2
pls send me to correct code

Comment only
16 Jun 2015 zhiwei Li

Can send code to me? Thank you, I want to use in the use of the thesis

23 Jun 2012 aboomnea

i hane this error

Error using .*
Integers can only be combined with integers of the same class, or scalar doubles.

Error in rotate_image (line 112)
out_image_m(out_points_span) = ...

Error in im_reg_MI (line 61)
J = rotate_image(angle(k),image2); %rotated cropped IMAGE2

Error in test_registration (line 16)
[h,im_matched, theta,II,J]=im_reg_MI(I, I2, 15, 5);

i use this code to use urs

[x y] = uigetfile('*.jpg','Select the image');

I=imread([y x]);

figure,imshow(I),title('1 image ');
[x y] = uigetfile('*.jpg','Select the image');
I2=imread([y x]);

figure,imshow(I2),title('2 image ');
% cpselect(I, I2)
[h,im_matched, theta,II,J]=im_reg_MI(I, I2, 15, 5);

Comment only
04 Sep 2009 Pearl

Pearl (view profile)

20 Jun 2008 phuc thanh

02 Jan 2008 faiza kari

07 May 2007 qq aa

26 Feb 2007 Mikidache ABDOU

27 Aug 2005 Xin Kang

02 Jun 2004 Xiangsheng Zhu


21 Apr 2004 ahmad yaghooby

Contact us