Is it possible to use Euclidean Transform with estimateGeometricTransform function
1 次查看(过去 30 天)
显示 更早的评论
I have two images and I want to stitch them, but I want to use only Euclidean Transform.
This is my code:
% 1. Find SURF features:
points1 = detectSURFFeatures(grayImage1);
[features1, points1] = extractFeatures(grayImage1, points1);
points2 = detectSURFFeatures(grayImage2);
[features2, points2] = extractFeatures(grayImage2, points2);
% 2. Match features:
indexPairs = matchFeatures(features1, features2, 'Unique', true);
matchedPoints1 = points1(indexPairs(:,1), :);
matchedPoints2 = points2(indexPairs(:,2), :);
Now I want to match the two feature set, but I want to use Euclidean Geometric Transform (which does no scaling); but this option is not available in the estimation function:
% 3. Find geometric transformation:
transform = estimateGeometricTransform(matchedPoints1, ...
matchedPoints2, ...
'euclidean'); % 'euclidean' does not work
% 'similarity' works
How can I match the two images using a Euclidean transform?
0 个评论
回答(1 个)
Pratyush Roy
2020-9-1
The estimateGeometricTransform function cannot estimate non-scaling or rigid transformation matrices.
However, there are other functions where one can set the ‘transformType’ to ‘rigid’. You can refer to the documentation link below for more information:
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Feature Detection and Extraction 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!