用MATLAB提取两张不同角度原始影像的控制点并编号的代码
时间: 2023-05-24 20:06:12 浏览: 47
这里提供一个样例代码:
% 读取第一张影像
img1 = imread('image1.jpg');
imshow(img1);
% 鼠标点击取得10个控制点
disp('Click on 10 control points in the image 1');
[x1, y1] = ginput(10); % x1和y1保存了鼠标点击的控制点坐标
% 读取第二张影像
img2 = imread('image2.jpg');
imshow(img2);
disp('Click on the corresponding 10 control points in the image 2');
% 鼠标点击取得与第一张影像对应的10个控制点
[x2, y2] = ginput(10); % x2和y2保存了第二张影像中的控制点坐标
% 显示两张影像以及控制点
figure;
subplot(1,2,1);
imshow(img1);
title('Image 1 with control points');
hold on;
plot(x1,y1,'ro'); % 显示控制点
hold off;
subplot(1,2,2);
imshow(img2);
title('Image 2 with control points');
hold on;
plot(x2,y2,'go'); % 显示控制点
hold off;
% 计算控制点编号
disp('Control point ID:');
for i = 1:10
[~, id] = min((x2(i) - x1).^2 + (y2(i) - y1).^2);
disp(['(', num2str(i), ') -> (', num2str(id), ')']);
end
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)