资源简介
matlab surf图像配准 图像检索 图像处理 模式识别 我本人的毕业设计 就是利用的surf来提取的特征,并进行相似度比较后,然后进行检索的。此程序对想利用surf的同学可以得到很大的帮助。surf比sift具有更快的速度,更好的配准率。
代码片段和文件信息
% Example 3 Affine registration
% Load images
I1=im2double(imread(‘TestImages/lena1.png‘));
I2=im2double(imread(‘TestImages/lena2.png‘));
% Get the Key Points
Options.upright=true;
Options.tresh=0.0001;
Ipts1=OpenSurf(I1Options);
Ipts2=OpenSurf(I2Options);
% Put the landmark descriptors in a matrix
D1 = reshape([Ipts1.descriptor]64[]);
D2 = reshape([Ipts2.descriptor]64[]);
% Find the best matches
err=zeros(1length(Ipts1));
cor1=1:length(Ipts1);
cor2=zeros(1length(Ipts1));
for i=1:length(Ipts1)
distance=sum((D2-repmat(D1(:i)[1 length(Ipts2)])).^21);
[err(i)cor2(i)]=min(distance);
end
% Sort matches on vector distance
[err ind]=sort(err);
cor1=cor1(ind);
cor2=cor2(ind);
% Make vectors with the coordinates of the best matches
Pos1=[[Ipts1(cor1).y]‘[Ipts1(cor1).x]‘];
Pos2=[[Ipts2(cor2).y]‘[Ipts2(cor2).x]‘];
Pos1=Pos1(1:30:);
Pos2=Pos2(1:30:);
% Show both images
I = zeros([size(I11) size(I12)*2 size(I13)]);
I(:1:size(I12):)=I1; I(:size(I12)+1:size(I12)+size(I22):)=I2;
figure imshow(I); hold on;
% Show the best matches
plot([Pos1(:2) Pos2(:2)+size(I12)]‘[Pos1(:1) Pos2(:1)]‘‘-‘);
plot([Pos1(:2) Pos2(:2)+size(I12)]‘[Pos1(:1) Pos2(:1)]‘‘o‘);
% Calculate affine matrix
Pos1(:3)=1; Pos2(:3)=1;
M=Pos1‘/Pos2‘;
% Add subfunctions to Matlab Search path
functionname=‘OpenSurf.m‘;
functiondir=which(functionname);
functiondir=functiondir(1:end-length(functionname));
addpath([functiondir ‘/WarpFunctions‘])
% Warp the image
I1_warped=affine_warp(I1M‘bicubic‘);
% Show the result
figure
subplot(131) imshow(I1);title(‘Figure 1‘);
subplot(132) imshow(I2);title(‘Figure 2‘);
subplot(133) imshow(I1_warped);title(‘Warped Figure 1‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1776 2012-05-29 22:53 surf\example3.m
文件 1335 2010-09-06 07:21 surf\license.txt
文件 3778 2010-09-06 12:27 surf\OpenSurf.m
文件 641272 2010-11-08 17:14 surf\opensurf.png
文件 603 2010-07-26 16:56 surf\SubFunctions\FastHessian_BuildDerivative.m
文件 1699 2010-07-29 12:10 surf\SubFunctions\FastHessian_buildResponsela
文件 1877 2010-07-20 12:37 surf\SubFunctions\FastHessian_buildResponseMap.m
文件 2353 2010-07-30 11:43 surf\SubFunctions\FastHessian_getIpoints.m
文件 455 2010-07-26 16:56 surf\SubFunctions\FastHessian_getLaplacian.m
文件 450 2010-07-26 16:56 surf\SubFunctions\FastHessian_getResponse.m
文件 2478 2010-07-30 11:02 surf\SubFunctions\FastHessian_interpolateExtremum.m
文件 1680 2010-07-30 10:56 surf\SubFunctions\FastHessian_isExtremum.m
文件 738 2010-07-29 16:32 surf\SubFunctions\FastHessian_Responsela
文件 791 2010-07-29 10:58 surf\SubFunctions\IntegralImage_BoxIntegral.m
文件 494 2010-07-29 16:32 surf\SubFunctions\IntegralImage_HaarX.m
文件 556 2010-07-29 16:37 surf\SubFunctions\IntegralImage_HaarY.m
文件 796 2010-07-29 10:42 surf\SubFunctions\IntegralImage_IntegralImage.m
文件 1089 2010-07-30 11:39 surf\SubFunctions\PaintSURF.m
文件 1554 2010-07-30 12:39 surf\SubFunctions\SurfDesc
文件 3636 2010-07-30 12:40 surf\SubFunctions\SurfDesc
文件 2921 2010-07-30 12:07 surf\SubFunctions\SurfDesc
文件 2902447 2012-03-30 09:38 surf\surf.pdf
文件 163573 2011-08-27 17:20 surf\TestImages\1.tif
文件 156898 2011-09-06 09:32 surf\TestImages\1wallis.tif
文件 158580 2011-09-06 09:32 surf\TestImages\1wallis_referrence.tif
文件 139826 2011-09-02 16:57 surf\TestImages\1_contrast enhancement.tif
文件 163573 2011-08-27 17:21 surf\TestImages\1_referrence.tif
文件 152606 2011-09-06 09:36 surf\TestImages\2wallis.tif
文件 141124 2011-09-06 09:42 surf\TestImages\2wallis_referrence.tif
文件 239755 2010-09-06 12:22 surf\TestImages\lena1.png
............此处省略14个文件信息
- 上一篇:基于FPGA的中值滤波算法的设计与实现
- 下一篇:MATLAB gui课程设计
相关资源
- MATLAB gui课程设计
- 利用MATLAB工具对LVQ神经网络进行仿真
- 路标识别与提取采用聚类方法C-means
- 基于图像的答题卡的判定与成绩统计
- 薛定宇_控制系统计算机辅助设计——
- puma560逆解-MATLAB代码及论文.zip
- 机器学习高斯混合模型资料总结含m
- 两个处理三角网格文件(三维)的m
- matlab实现运动向量搜索顺序&2D对数
- matlab实现彩色图像DCT变换
- FAST角点检测算法MATLAB程序
- 小波处理的matlab仿真程序
- matlab官方文档.pdf
- 使用HFSS_MATLAB_API设计天线的研究
- 偏微分方程在图形图像处理中的应用
- 粒子滤波matlab实现三套
- 28个实际问题建模MATLAB源程序代码.r
- 基于matlabd的数字信号处理DSP实验报告
- CDD模型图像修复系统matlab
- matlab2018b帮助文档英文版
- MATLAB实现灰度处理
- 基于GUI界面的视频、图片、音频操作
- 数字图像锐化的matlab实现
- 基于MATLAB的数字调制系统仿真设计
- Matlab在语音信号处理中的应用
- 基于HaarLike的人脸检测
- 基于matlab的图像增强教学演示系统的
- spectral methods in matlab174886
- MATLAB_SRC_人脸识别程序
- Z域中阶跃函数与冲激函数的求解及
评论
共有 条评论