Я думаю, что вы выбрали неправильный пример из документации MATLAB.
Вы можете использовать пример оценкаGeometricTransform .
Следующий код дает вам преобразование tform
:
[tform,inlierPtsDistorted,inlierPtsOriginal] = ...
estimateGeometricTransform(matchedPtsDistorted,matchedPtsOriginal,...
'similarity');
Код деформации: Ir = imwarp(distorted,tform,'OutputView',outputView);
Для слияния изображений вы можете использовать * 1014Функция * imfuse .
Следующий код объединяет пример estimateGeometricTransform
с примером imfuse
:
%https://www.mathworks.com/help/vision/ref/estimategeometrictransform.html
original = imread('cameraman.tif');
%imshow(original);
%title('Base image');
distorted = imresize(original,0.7);
distorted = imrotate(distorted,31);
%figure; imshow(distorted);
%title('Transformed image');
ptsOriginal = detectSURFFeatures(original);
ptsDistorted = detectSURFFeatures(distorted);
[featuresOriginal,validPtsOriginal] = extractFeatures(original,ptsOriginal);
[featuresDistorted,validPtsDistorted] = extractFeatures(distorted,ptsDistorted);
index_pairs = matchFeatures(featuresOriginal,featuresDistorted);
matchedPtsOriginal = validPtsOriginal(index_pairs(:,1));
matchedPtsDistorted = validPtsDistorted(index_pairs(:,2));
%figure;
%showMatchedFeatures(original,distorted, matchedPtsOriginal,matchedPtsDistorted);7
%title('Matched SURF points,including outliers');
[tform,inlierPtsDistorted,inlierPtsOriginal] = estimateGeometricTransform(matchedPtsDistorted,matchedPtsOriginal, 'similarity');
%figure;
%showMatchedFeatures(original,distorted, inlierPtsOriginal,inlierPtsDistorted);
%title('Matched inlier points');
outputView = imref2d(size(original));
Ir = imwarp(distorted,tform,'OutputView',outputView);
%figure; imshow(Ir);
%title('Recovered image');
%https://www.mathworks.com/help/images/ref/imfuse.html
C = imfuse(original, Ir, 'falsecolor', 'Scaling', 'joint', 'ColorChannels', [1 2 0]);
figure; imshow(C);
title('fuse image');
%Write result image to file.
imwrite(C, 'fused.png');
Может быть полезно, если вы добавите входные изображения: 'q2.jpg'
и 'q20.jpg'
.