基于SURF特征点的图像拼接算法,用MATLAB语言编写。亲测可用,速度比SIFT特征点的配准算法快很多!
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1266 2016-04-15 14:15 OpenSURF_version1cexample2.m
....... 1776 2010-09-07 01:00 OpenSURF_version1cexample3.m
....... 1314 2014-02-12 13:16 OpenSURF_version1clicense.txt
....... 3778 2010-09-07 00:27 OpenSURF_version1cOpenSurf.m
....... 603 2010-07-27 04:56 OpenSURF_version1cSubFunctionsFastHessian_BuildDerivative.m
....... 1699 2010-07-30 00:10 OpenSURF_version1cSubFunctionsFastHessian_buildResponselayer.m
....... 1877 2010-07-21 00:37 OpenSURF_version1cSubFunctionsFastHessian_buildResponseMap.m
....... 2353 2010-07-30 23:43 OpenSURF_version1cSubFunctionsFastHessian_getIpoints.m
....... 455 2010-07-27 04:56 OpenSURF_version1cSubFunctionsFastHessian_getLaplacian.m
....... 450 2010-07-27 04:56 OpenSURF_version1cSubFunctionsFastHessian_getResponse.m
....... 2478 2010-07-30 23:02 OpenSURF_version1cSubFunctionsFastHessian_interpolateExtremum.m
....... 1680 2010-07-30 22:56 OpenSURF_version1cSubFunctionsFastHessian_isExtremum.m
....... 738 2010-07-30 04:32 OpenSURF_version1cSubFunctionsFastHessian_Responselayer.m
....... 791 2010-07-29 22:58 OpenSURF_version1cSubFunctionsIntegralImage_BoxIntegral.m
....... 494 2010-07-30 04:32 OpenSURF_version1cSubFunctionsIntegralImage_HaarX.m
....... 556 2010-07-30 04:37 OpenSURF_version1cSubFunctionsIntegralImage_HaarY.m
....... 796 2010-07-29 22:42 OpenSURF_version1cSubFunctionsIntegralImage_IntegralImage.m
....... 1089 2010-07-30 23:39 OpenSURF_version1cSubFunctionsPaintSURF.m
....... 1554 2010-07-31 00:39 OpenSURF_version1cSubFunctionsSurfDescriptor_DecribeInterestPoints.m
....... 3636 2010-07-31 00:40 OpenSURF_version1cSubFunctionsSurfDescriptor_GetDescriptor.m
....... 2921 2010-07-31 00:07 OpenSURF_version1cSubFunctionsSurfDescriptor_GetOrientation.m
文件 245850 2016-04-05 13:15 OpenSURF_version1cTestImages1.jpg
文件 253044 2016-04-05 13:15 OpenSURF_version1cTestImages2.jpg
....... 239755 2010-09-07 00:22 OpenSURF_version1cTestImageslena1.png
....... 211716 2010-09-07 00:22 OpenSURF_version1cTestImageslena2.png
....... 5296 2010-07-20 05:38 OpenSURF_version1cTestImages est.png
....... 123228 2010-07-27 01:06 OpenSURF_version1cTestImages estc1.png
....... 122063 2010-07-27 01:06 OpenSURF_version1cTestImages estc2.png
....... 9721 2010-09-07 01:04 OpenSURF_version1cWarpFunctionsaffine_warp.m
目录 0 2016-04-14 23:35 OpenSURF_version1cSubFunctions
............此处省略6个文件信息
% Example 2 Corresponding points
% Load images
I11=imread(‘TestImages/1.jpg‘);
I1=imresize(I11[540 960]);
I22=imread(‘TestImages/2.jpg‘);
I2=imresize(I22[540 960]);
% 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);
% 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/255); hold on;
% Show the best matches
for i=1:30
c=rand(13);
plot([Ipts1(cor1(i)).x Ipts2(cor2(i)).x+size(I12)][Ipts1(cor1(i)).y Ipts2(cor2(i)).y]‘-‘‘Color‘c)
plot([Ipts1(cor1(i)).x Ipts2(cor2(i)).x+size(I12)][Ipts1(cor1(i)).y Ipts2(cor2(i)).y]‘o‘‘Color‘c)
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1266 2016-04-15 14:15 OpenSURF_version1cexample2.m
....... 1776 2010-09-07 01:00 OpenSURF_version1cexample3.m
....... 1314 2014-02-12 13:16 OpenSURF_version1clicense.txt
....... 3778 2010-09-07 00:27 OpenSURF_version1cOpenSurf.m
....... 603 2010-07-27 04:56 OpenSURF_version1cSubFunctionsFastHessian_BuildDerivative.m
....... 1699 2010-07-30 00:10 OpenSURF_version1cSubFunctionsFastHessian_buildResponsela
....... 1877 2010-07-21 00:37 OpenSURF_version1cSubFunctionsFastHessian_buildResponseMap.m
....... 2353 2010-07-30 23:43 OpenSURF_version1cSubFunctionsFastHessian_getIpoints.m
....... 455 2010-07-27 04:56 OpenSURF_version1cSubFunctionsFastHessian_getLaplacian.m
....... 450 2010-07-27 04:56 OpenSURF_version1cSubFunctionsFastHessian_getResponse.m
....... 2478 2010-07-30 23:02 OpenSURF_version1cSubFunctionsFastHessian_interpolateExtremum.m
....... 1680 2010-07-30 22:56 OpenSURF_version1cSubFunctionsFastHessian_isExtremum.m
....... 738 2010-07-30 04:32 OpenSURF_version1cSubFunctionsFastHessian_Responsela
....... 791 2010-07-29 22:58 OpenSURF_version1cSubFunctionsIntegralImage_BoxIntegral.m
....... 494 2010-07-30 04:32 OpenSURF_version1cSubFunctionsIntegralImage_HaarX.m
....... 556 2010-07-30 04:37 OpenSURF_version1cSubFunctionsIntegralImage_HaarY.m
....... 796 2010-07-29 22:42 OpenSURF_version1cSubFunctionsIntegralImage_IntegralImage.m
....... 1089 2010-07-30 23:39 OpenSURF_version1cSubFunctionsPaintSURF.m
....... 1554 2010-07-31 00:39 OpenSURF_version1cSubFunctionsSurfDesc
....... 3636 2010-07-31 00:40 OpenSURF_version1cSubFunctionsSurfDesc
....... 2921 2010-07-31 00:07 OpenSURF_version1cSubFunctionsSurfDesc
文件 245850 2016-04-05 13:15 OpenSURF_version1cTestImages1.jpg
文件 253044 2016-04-05 13:15 OpenSURF_version1cTestImages2.jpg
....... 239755 2010-09-07 00:22 OpenSURF_version1cTestImageslena1.png
....... 211716 2010-09-07 00:22 OpenSURF_version1cTestImageslena2.png
....... 5296 2010-07-20 05:38 OpenSURF_version1cTestImages est.png
....... 123228 2010-07-27 01:06 OpenSURF_version1cTestImages estc1.png
....... 122063 2010-07-27 01:06 OpenSURF_version1cTestImages estc2.png
....... 9721 2010-09-07 01:04 OpenSURF_version1cWarpFunctionsaffine_warp.m
目录 0 2016-04-14 23:35 OpenSURF_version1cSubFunctions
............此处省略6个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)