test.m

来自「matlab基于角点信息和透视变换的图像镶嵌 其中包括给定图片」· M 代码 · 共 34 行

M
34
字号
%-------------------------------------------------------------------------
% image mosaicing demo program
% intro: this is a very simple demo program to join two images together
%        corners are pre-matched to be saved into cornerpairs.mat
% developed by bugzhao for evaluation use only, April 2005 bugzhao@sohu.com
%-------------------------------------------------------------------------
function imagesmosaicdemo()
% read base image and the second image to be registered to the base image
close all;
unregistered = imread('2.jpg');
baseimage=imread('1.jpg');
figure,imshow(baseimage);
figure,imshow(unregistered);
% manually select point matches or automatically done by harris corner detector and CC matching
load cornerpairs.mat;
t_concord = cp2tform(corners2,corners1,'projective');
info = imfinfo('1.jpg');
registered = imtransform(unregistered,t_concord,'XData',[1 info.Width], 'YData',[1 info.Height]);
figure,imshow(registered);
% do blending work using simplest pixel average
M=baseimage;
for row=1:info.Height
    for col=1:info.Width
        if(registered(row,col,1)~=0 && col<640)
            M(row,col,:)=(double(registered(row,col,:))+double(baseimage(row,col,:)))/2;
        end
        if(registered(row,col,1)~=0 && col>640)
            M(row,col,:)=double(registered(row,col,:));
        end
    end
end
figure,imshow(M);
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?