这是VS2010+opencv2.4.10的SURF工程项目,下载并配置好了就可以使用;如使用其他版本的VS或opencv,则使用其中的源码并新建项目即可。
注:SURF源码本是英文注释,CSDN博主hujingshuang改成了中文注释,以方便大家理解学习,如有出入请以英文源码为准。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3490 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugcl.command.1.tlog
文件 111040 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugCL.read.1.tlog
文件 1858 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugCL.write.1.tlog
文件 294546 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugdemo.obj
文件 307128 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugfasthessian.obj
文件 88557 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugintegral.obj
文件 306304 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugipoint.obj
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink-cvtres.read.1.tlog
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink-cvtres.write.1.tlog
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.2676-cvtres.read.1.tlog
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.2676-cvtres.write.1.tlog
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.2676.read.1.tlog
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.2676.write.1.tlog
文件 2786 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.command.1.tlog
文件 5278 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.read.1.tlog
文件 958 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debuglink.write.1.tlog
文件 344 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugmt.command.1.tlog
文件 306 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugmt.read.1.tlog
文件 238 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugmt.write.1.tlog
文件 446 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debug
c.command.1.tlog
文件 210 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debug
c.read.1.tlog
文件 218 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debug
c.write.1.tlog
文件 219360 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugsurf.obj
文件 209408 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe
文件 406 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe.embed.manifest
文件 472 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe.embed.manifest.res
文件 381 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe.intermediate.manifest
文件 1065812 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.ilk
文件 53 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.lastbuildstate
文件 4198 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.log
............此处省略50个文件信息
/***********************************************************
* --- OpenSURF --- *
* This library is distributed under the GNU GPL. Please *
* use the contact form at http://www.chrisevansdev.com *
* for more information. *
* *
* C. Evans Research Into Robust Visual Features *
* MSc University of Bristol 2008. *
* *
************************************************************/
/***********************************************************
* translated by Mr.Hu(Graduate Student of SWJTU) *
* His E-mail is eleftheria@163.com *
************************************************************/
#include “surflib.h“
#include “kmeans.h“
#include
#include
//-------------------------------------------------------
//为方便您能使用OpenSURF对你能做一些简单的任务做如下说明。
//您只能使用其中一个函数来实现SURF特征提取!
//通过宏定义PROCEDURE的值来明确:
// - 1 在提供的路径的静态图片上使用
// - 2 从网络摄像头获取
// - 3 在图片中找到匹配的目标
// - 4 显示移动特征
// - 5 显示静态图像之间的匹配
#define PROCEDURE 5
//-------------------------------------------------------
// - 1 在提供的路径的静态图片上使用
int mainImage(void)
{
//声明描述Ipoints的向量(Ipoints=Interest points,即:兴趣点/关键点/特征点)
IpVec ipts;
IplImage *img=cvLoadImage(“imgs/sf.jpg“);//载入图片(静态图)
//检测图像中的特征点,其特征描述存放于向量ipts中
clock_t start = clock();//计时开始
surfDetDes(img ipts false 5 4 2 0.0004f);
clock_t end = clock();//停止计时
std::cout<< “OpenSURF found: “ << ipts.size() << “ interest points“ << std::endl;//打印出找到的特征点个数
std::cout<< “OpenSURF took: “ << float(end - start) / CLOCKS_PER_SEC << “ seconds“ << std::endl;//打印算法用时
// 画出检测到的特征点
drawIpoints(img ipts);
// 显示结果
showImage(img);
return 0;
}
//-------------------------------------------------------
// - 2 从网络摄像头获取
int mainVideo(void)
{
//初始化摄像头捕捉设备
CvCapture* capture = cvCaptureFromCAM( CV_CAP_ANY );
if(!capture) error(“No Capture“);
// 初始化视频写入
//cv::VideoWriter vw(“c:\out.avi“ CV_FOURCC(‘D‘‘I‘‘V‘‘X‘)10cvSize(320240)1);
//vw << img;
//创建一个窗口
cvNamedWindow(“OpenSURF“ CV_WINDOW_AUTOSIZE );
//声明特征向量
IpVec ipts;
IplImage *img=NULL;
//主循环
while( 1 )
{
//捕捉一帧画面
img = cvQueryframe(capture);
//提取surf特征点
surfDetDes(img ipts false 4 4 2 0.004f);
//画出检测到的特征
drawIpoints(img ipts);
//绘制帧图片
drawFPS(img);
//显示结果
cvShowImage(“OpenSURF“ img);
//按Esc键结束循环
if( (cvWaitKey(10) & 255) == 27 ) break;
}
cvReleaseCapture( &capture );
cvDestroyWindow( “OpenSURF“ );
return 0;
}
//-------------------------------------------------------
// - 3 在图片中找到匹配的目标
int mainMatch(void)
{
//初始化视频捕获设备
CvCapture* capture = cvCaptureFromCAM( CV_CAP_ANY );
if(!capture) error(“No Ca
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3490 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugcl.command.1.tlog
文件 111040 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugCL.read.1.tlog
文件 1858 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugCL.write.1.tlog
文件 294546 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugdemo.obj
文件 307128 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugfasthessian.obj
文件 88557 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugintegral.obj
文件 306304 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugipoint.obj
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 2 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 2786 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 5278 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 958 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugli
文件 344 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugmt.command.1.tlog
文件 306 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugmt.read.1.tlog
文件 238 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法Debugmt.write.1.tlog
文件 446 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debug
c.command.1.tlog
文件 210 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debug
c.read.1.tlog
文件 218 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debug
c.write.1.tlog
文件 219360 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法Debugsurf.obj
文件 209408 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe
文件 406 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe.em
文件 472 2015-04-20 10:20 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe.em
文件 381 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.exe.intermediate.manifest
文件 1065812 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.ilk
文件 53 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.lastbuildstate
文件 4198 2015-04-20 10:24 SURF源码(opencv中文注释)SURF算法DebugSURF算法.log
............此处省略50个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)