这个算法是用于目标检索的比较快速的一个算法,参考Randomized Visual Phrases for Object Search。
算法的流程如下:
//图片训练阶段
1读入N张图片
2 转换成灰度图
3 检测N张图片的特征点,本算法中应用的是SIFT特征。
4 生成描述子
5 描述子聚类,生成visual word,用kmeans()算法完成。
6 将图片库中的图片用另...
分类:
其他好文 时间:
2015-04-03 15:30:43
阅读次数:
185
SIFT and SURF were moved to nonfree module. You need to add #include header and link with opencv_nonfree library.
分类:
其他好文 时间:
2015-04-02 01:00:20
阅读次数:
271
在前面的文章《OpenCV中feature2D学习——FAST特征点检测》中讲了利用FAST算子进行特征点检测,这里尝试使用FAST算子来进行特征点检测,并结合SIFT/SURF/BRIEF算子进行特征点提取和匹配。
I、结合SIFT算子进行特征点提取和匹配
由于数据类型的不同,SIFT和SURF算子只能采用FlannBasedMatcher或者BruteForceMatcher来进行匹配(参...
分类:
其他好文 时间:
2015-03-31 14:45:41
阅读次数:
802
在前面的文章《OpenCV中feature2D学习——SURF和SIFT算子实现特征点检测》中讲了利用SIFT和SURF算子进行特征点检测,这里尝试使用FAST算子来进行特征点检测。
FAST的全名是:Features from Accelerated Segment Test,主要特点值计算速度快,比已知的其他特征点检测算法要快很多倍,可用于计算机视觉应用的实时场景。目前以其高计算效率...
分类:
其他好文 时间:
2015-03-29 23:45:17
阅读次数:
238
我们可以通过几种方式,来快速改变组件的叠放顺序。 1 快速置顶和置底。选中组件,然后右键菜单中“置顶”或“置底”。或者,使用热键: Ctrl+shift+向上方向键、Ctrl+sift+向下方向键。 2 快速向上一层或向下一层...
分类:
其他好文 时间:
2015-03-17 20:23:26
阅读次数:
126
SURF算法是著名的尺度不变特征检测器SIFT(Scale-Invariant Features Transform)的高效变种,它为每个检测到的特征定义了位置和尺度,其中尺度的值可用于定义围绕特征点的窗口大小,使得每个特征点都与众不同。这里便是使用SURF算法提取两幅图像中的特征点描述子,并调用OpenCV中的函数进行匹配,最后输出一个可视化的结果,开发平台为Qt5.3.2+OpenCV2.4.9。...
分类:
其他好文 时间:
2015-03-12 22:33:24
阅读次数:
1650
原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://underthehood.blog.51cto.com/2531780/658350By RaySaint 2011/09/051综述结合论文[1]和Rob Hess的开源SIFT代码(...
分类:
编程语言 时间:
2015-03-11 23:09:18
阅读次数:
438
当尝试在不同图像之间进行特征匹配时,通常会遇到图像的大小、方向等参数发生改变的问题,简而言之,就是尺度变化的问题。每幅图像在拍摄时与目标物体的距离是不同的,因此要识别的目标物体在图像中自然会存在不同的尺寸。因此,计算机视觉中引入尺度不变的特征,主要的思想是每个检测到的特征点都伴随对应的尺度因子。著名的尺度不变特征检测器SIFT与其变种SURF便属于经典算法。...
分类:
编程语言 时间:
2015-03-10 01:28:34
阅读次数:
304
题意: 求有多少对质数(a,b)满足ausing namespace std;const int INF = 1000002;bool f[INF];int ok[80000],out[10000];int n, sum, ans;void sift (int n) { for (int i...
分类:
其他好文 时间:
2015-03-09 23:57:47
阅读次数:
151
从大到小排序,小根堆。小根堆的筛选算法:void sift(int data[], int k, int m)
{
int i = k ,int j = 2 * k;
while (j <= m) {
if (j data[j + 1]) ++j;
if (data[i] < data[j]) break;...
分类:
编程语言 时间:
2015-03-08 17:18:12
阅读次数:
184