社区
Linux/Unix社区
帖子详情
如何在Ubuntu下用c++调用vlfeat中的sift
qq_38093409
2017-04-01 10:16:23
有代码吗,实在是不会
...全文
283
1
打赏
收藏
如何在Ubuntu下用c++调用vlfeat中的sift
有代码吗,实在是不会
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
JessieBoom
2019-05-18
打赏
举报
回复
void FeatureController::detect(const Mat & _grey_img,
vector<Point2> & _feature_points,
vector<FeatureDescriptor> & _feature_descriptors) {
Mat grey_img_float = _grey_img.clone();
grey_img_float.convertTo(grey_img_float, CV_32FC1);
VlSiftFilt * vlSift = vl_sift_new(width, height,
log2(min(width, height)),
SIFT_LEVEL_COUNT,
SIFT_MINIMUM_OCTAVE_INDEX);
vl_sift_set_peak_thresh(vlSift, SIFT_PEAK_THRESH);
vl_sift_set_edge_thresh(vlSift, SIFT_EDGE_THRESH);
if(vl_sift_process_first_octave(vlSift, (vl_sift_pix const *) ROI.data) != VL_ERR_EOF) {
do {
vl_sift_detect(vlSift);
for(int i = 0; i < vlSift->nkeys; ++i) {
double angles[4];
_feature_points.emplace_back(vlSift->keys[i].x, vlSift->keys[i].y);
FeatureDescriptor descriptor;
int angleCount = vl_sift_calc_keypoint_orientations(vlSift, angles, &vlSift->keys[i]);
for(int j = 0; j < angleCount; ++j) {
Mat descriptor_array(1, SIFT_DESCRIPTOR_DIM, CV_32FC1);
vl_sift_calc_keypoint_descriptor(vlSift, (vl_sift_pix *) descriptor_array.data, &vlSift->keys[i], angles[j]);
descriptor.addDescriptor(descriptor_array);
}
_feature_descriptors.emplace_back(descriptor);
}
} while (vl_sift_process_next_octave(vlSift) != VL_ERR_EOF);
}
vl_sift_delete(vlSift);
}
特征点匹配qt界面显示
在本项目
中
,“特征点匹配qt界面显示”指的是使用
SIFT
算法提取图像的特征点,并通过
Ubuntu
操作系统上的Qt框架构建用户界面来显示匹配的结果。
SIFT
算法主要包括以下几个步骤: 1. **尺度空间极值检测**:
SIFT
算法...
opencv.zip
`opencv.zip` 提供的库文件经过测试,能在
Ubuntu
环境
中
正常工作,这意味着开发者可以放心在
Ubuntu
上构建和运行使用OpenCV的Java项目。 5. **集成与使用**: 在Java项目
中
使用OpenCV,需要将`opencv-410.jar` 添加到...
opencvsharp源码可用于源码研究和opencv使用
在源码研究方面,OpenCVSharp的源码可以帮助我们深入了解如何在.NET环境
中
实现计算机视觉功能。通过阅读和分析源码,我们可以学习到如何封装
C++
的原生代码,以及如何处理跨语言
调用
时的内存管理和数据类型转换。这...
opencv_contrib-3.4.7.zip
OpenCV(开源计算机视觉库...总的来说,`opencv_contrib-3.4.7.zip` 文件对于需要使用OpenCV高级功能的开发者来说是一个宝贵的资源,特别是对于那些在特定环境下遇到下载问题的用户,这个压缩包提供了便捷的获取途径。
用
VLFeat
库进行
SIFT
特征提取(
C++
实现)
说明: ~~~~代码来自网络,无法追溯源头,其
中
部分稍有改动,以适应系统环境~~~ 环境:win 7 64专业版,VS2013,opencv2.4.9,Vl...
Linux/Unix社区
23,217
社区成员
74,540
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章