matlab画图,matlab画surf图
一内容介绍传统的全景图像配准多采用基于撒的方法,该方法数据量大,时间效率低。提出了一种基于冲浪的全景图像快速配准方法。运用苏无线电频率(radio frequency)提取特征点,计算特征描述符;运用低时间复杂度的K-D树最近邻搜索法实现特征点快速匹配;利用随机抽样一致性算法算法剔除误匹配点;最后估计出两幅全景图像的变换矩阵。测试表明:算法具有较高的时间效率和良好的鲁棒性。
2部分代码%例3,仿射配准
%加载图像
色度控制中心
清理所有
全部关闭
痉挛
I1=im2 double(imread( test images/Lena 1。png’);
I2=im2 double(im read( test images/Lena 2。png’));
%获得关键点
Options.upright=true
Options.tresh=0.0001
Ipts1=OpenSurf(I1,选项);
Ipts2=OpenSurf(I2,Options);
%将地标描述符放入矩阵中
D1=形状([IP ts1。descriptor],64,[]);
D2=形状([ipts 2。descriptor],64,[]);
%找到最佳匹配
err=zeros(1,长度(IP ts1));
cor1=1:长度(IP ts1);
cor2=零(1,长度(IP ts1));
对于i=1:长度(Ipts1),
距离=总和((D2-雷普马特(D1(:我),[1长度(Ipts2)]).^2,1);
[err(i),cor2(i)]=min(距离);
目标
基于向量距离的%排序匹配
[err,ind]=sort(err);
cor 1=cor 1(ind);
cor 2=cor 2(ind);
%使用最佳匹配的坐标生成向量
pos 1=[[IP ts1(cor 1].y],[Ipts1(cor1).x]];
pos 2=[[ipts 2(cor 2)].y],[Ipts2(cor2).x]];
Pos1=Pos1(1:30,);
Pos2=Pos2(1:30,);
%显示两幅图像
我=零([大小(I1,1)大小(I1,2)*2大小(I1,3)]);
我(:1:大小(I1,2),)=I1;I(:size(I1,2) 1:size(I1,2) size(I2,2),)=I2
图,imshow(一);坚持住;
%显示最佳匹配
plot([Pos1(:2) Pos2(:2) size(I1,2)],[Pos1(:1) Pos2(:1)],-);
plot([Pos1(:2) Pos2(:2) size(I1,2)],[Pos1(:1) Pos2(:1)], o ;
%计算仿射矩阵
Pos1(:3)=1;Pos2(:3)=1;
m=位置1 /位置2 ;
%向矩阵实验室搜索路径添加子功能
function name= open surf。m’;
function dir=which(函数名);
函数目录=函数目录(1:结束长度(函数名));
添加路径([函数方向/扭曲函数])
%扭曲图像
I1扭曲=仿射扭曲(I1,M双三次);
%显示结果
图,
支线剧情(1,3,1),im show(I1);标题("图1");
支线剧情(1,3,2),imshow(I2);标题("图2");
支线剧情(1,3,3),im show(I1 _翘曲);标题("扭曲的图1");
总有机碳
fprintf(找到了%d个匹配项. \n ,size(Pos1,1));
fprintf(Matched in %.3f s\n ,TOC);
3运行结果
四参考文献[1]阳吉斌,胡访宇,朱高。基于改进冲浪算法的遥感图像配准[J]的缩写.电子测量技术, 2012, 35(3):5.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的矩阵实验室仿真,相关矩阵实验室代码问题可私信交流。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。