资源简介
调用RobHess所写实现SIFT代码,其中包含源码可以很好的学习SIFT及K-D树、BBF和RANSAC等算法的代码实现过程!

代码片段和文件信息
/*
Functions and structures for dealing with image features
Copyright (C) 2006-2010 Rob Hess
@version 1.1.2-20100521
*/
#include “utils.h“
#include “imgfeatures.h“
#include
#include
static int import_oxfd_features( char* struct feature** );
static int export_oxfd_features( char* struct feature* int );
static void draw_oxfd_features( IplImage* struct feature* int );
static void draw_oxfd_feature( IplImage* struct feature* CvScalar );
static int import_lowe_features( char* struct feature** );
static int export_lowe_features( char* struct feature* int );
static void draw_lowe_features( IplImage* struct feature* int );
static void draw_lowe_feature( IplImage* struct feature* CvScalar );
/*
Reads image features from file. The file should be formatted as from
the code provided by the Visual Geometry Group at Oxford:
@param filename location of a file containing image features
@param type determines how features are input. If \a type is FEATURE_OXFD
the input file is treated as if it is from the code provided by the VGG
at Oxford:
http://www.robots.ox.ac.uk:5000/~vgg/research/affine/index.html
If \a type is FEATURE_LOWE the input file is treated as if it is from
David Lowe‘s SIFT code:
http://www.cs.ubc.ca/~lowe/keypoints
@param features pointer to an array in which to store features
@return Returns the number of features imported from filename or -1 on error
*/
int import_features( char* filename int type struct feature** feat )
{
int n;
switch( type )
{
case FEATURE_OXFD:
n = import_oxfd_features( filename feat );
break;
case FEATURE_LOWE:
n = import_lowe_features( filename feat );
break;
default:
fprintf( stderr “Warning: import_features(): unrecognized feature“ \
“type %s line %d\n“ __FILE__ __LINE__ );
return -1;
}
if( n == -1 )
fprintf( stderr “Warning: unable to import features from %s“ \
“ %s line %d\n“ filename __FILE__ __LINE__ );
return n;
}
/*
Exports a feature set to a file formatted depending on the type of
features as specified in the feature struct‘s type field.
@param filename name of file to which to export features
@param feat feature array
@param n number of features
@return Returns 0 on success or 1 on error
*/
int export_features( char* filename struct feature* feat int n )
{
int r type;
if( n <= 0 || ! feat )
{
fprintf( stderr “Warning: no features to export %s line %d\n“
__FILE__ __LINE__ );
return 1;
}
type = feat[0].type;
switch( type )
{
case FEATURE_OXFD:
r = export_oxfd_features( filename feat n );
break;
case FEATURE_LOWE:
r = export_lowe_features( filename feat n );
break;
default:
fprintf( stderr “Warning: export_features(): unrecognized feature“ \
“type %s line %d\n“ __FILE__ __LINE__ );
return -1;
}
if( r )
fprintf(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-03-19 22:17 SIFT_RANSAC_RobHess\
目录 0 2017-03-19 21:07 SIFT_RANSAC_RobHess\Debug\
文件 110080 2017-03-19 21:09 SIFT_RANSAC_RobHess\Debug\SIFT_RANSAC_RobHess.exe
文件 653724 2017-03-19 21:09 SIFT_RANSAC_RobHess\Debug\SIFT_RANSAC_RobHess.ilk
文件 1739776 2017-03-19 21:09 SIFT_RANSAC_RobHess\Debug\SIFT_RANSAC_RobHess.pdb
目录 0 2017-03-19 15:55 SIFT_RANSAC_RobHess\ipch\
目录 0 2017-03-19 19:12 SIFT_RANSAC_RobHess\ipch\sift_ransac_robhess-85cf73db\
文件 2752512 2017-03-19 19:12 SIFT_RANSAC_RobHess\ipch\sift_ransac_robhess-85cf73db\sift_ransac_robhess-e547a7ee.ipch
目录 0 2017-03-19 21:08 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\
文件 16797696 2017-03-19 22:17 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess.sdf
文件 924 2017-03-19 15:55 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess.sln
文件 34304 2017-03-19 22:17 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess.suo
文件 48824 2010-05-21 12:48 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\beaver.png
文件 39513 2010-05-21 12:48 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\beaver_xform.png
目录 0 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\
文件 16094 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\cl.command.1.tlog
文件 106662 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\CL.read.1.tlog
文件 20516 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\CL.write.1.tlog
文件 45462 2017-03-19 20:22 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\imgfeatures.obj
文件 30662 2017-03-19 20:22 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\kdtree.obj
文件 2 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 2 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 2 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 2 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 2 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 2 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 5748 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 12102 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 3200 2017-03-19 21:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\li
文件 17959 2017-03-19 17:09 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\match.obj
文件 16190 2017-03-19 20:22 SIFT_RANSAC_RobHess\SIFT_RANSAC_RobHess\Debug\minpq.obj
............此处省略44个文件信息
相关资源
- BoW|Pyramid BoW+SVM进行图像分类
- opencv2.4.9源码分析——SIFT
- siftDemoV4.zip
- 角点检测与匹配
- opencv实现的sift算法源码,包含了图像
- SIFT特征提取+匹配
- 基于SIFT算法的图像拼接.rar
- 基于SIFT特征描述子的立体匹配算法
- 论文研究-改进的基于SIFT和RANSAC的图像
- opencv实现PCASift算法
- SIFT算法详解及应用(讲的非常好很详
-
syba
se数据库的基本语法 - Hausdorff距离匹配代码
- SIFT+RANSAC
- SIFT算法源代码
- OpenCV 现实高斯金字塔的源码,非常经
- 高清超详细SIFT源代码分析
- sift源码实现附有详细注释及其核心论
- SIFT SURF算法的比较
- sift算法sift-latest_win.zip
- 基于局部视觉特征聚合的图像检索
- 利用OpenCV(2.4.13)的SURF/SIFT + RANSAC
- 双目测距-opencv
- 3D sift 匹配
- sift算法VC实现需要OPENCV
- Morgan Kaufmann - Transactional Information Sy
- SIFT经典文献.zip
- 拼接算法SIFT.rar
- Transactional Information Systems
-
ImageRegistrationba
sedonSIFT.rar
评论
共有 条评论