function Register()%配准
fixed = rgb2gray(imread('img05.jpg'));
moving = rgb2gray(imread('img04.jpg'));
figure
imshowpair(fixed,moving,'montage');
%imshowpair
%‘falsecolor’ 字面意思理解就是伪彩色的意思了,其实就是把两幅图像的差异用色彩来表示,这个是默认的参数。
%‘blend’ 这是一种混合透明处理类型
% 'diff’ 这是用灰度信息来表示亮度图像之间的差异,这是对应‘falsecolor’的一种方式。
% ‘montage’可以理解成‘蒙太奇’,这是一种视频剪辑的艺术手法,其实在这里我们理解成拼接的方法就可以了
title('Unregister');
[optimizer,metric] = imregconfig('multimodal');
optimizer.MaximumIterations = 500;
optimizer.InitialRadius = optimizer.InitialRadius/3.5;
movingRegister = imregister(moving,fixed,'affine',optimizer,metric);%配准
figure
imshowpair(fixed,movingRegister,'montage');
tformSimilarity = imregtform(moving,fixed,'similarity',optimizer,metric);%求变换矩阵
Rfixed = imref2d(size(fixed));
movingRegisteredRigid = imwarp(moving,tformSimilarity,'OutputView',Rfixed);%moving 变换
figure
imshowpair(movingRegisteredRigid, fixed);
end
matlab 图片配准
最新推荐文章于 2023-09-18 09:46:37 发布