文章目录

  • 一、传统特征点检测器的检测
    • (一) ORB
      • 1. ORB的流程大致如下
        • 1) 创建尺度金字塔
        • 2) Fast角点检测
        • 3) Harris角点检测
        • 4) 设置特征点方向
        • 5) 描述子生成
          • ① steeredbrief(旋转不变性改进)
          • ② rbrief(描述子内相关性改进)
      • 2. 总结ORB的特征点检测和描述子生成的流程
      • 3. ORB的改进
        • (1)fast角点检测-自适应阈值t
        • (2)用hessian矩阵去除边缘点
        • (3)非极值抑制
    • (二)SURF
      • 1.预知识
        • (1)积分图像
        • (2)Hessian矩阵近似
        • (3)盒子滤波器
      • 2.SURF流程
        • (1)尺度空间的构建
        • (2)关键点定位
        • (3)设定Hessian行列式的阀值
        • (4)特征点方向分配
        • (5)特征描述子生成
      • 3.总结SURF流程
  • 二、匹配
    • (一)汉明距离与Brute-Force匹配
    • (二)FLANN匹配
      • 1.局部敏感哈希(LSH)
      • 2.kd树
    • (三)匹配方法优化
      • 1. 汉明距离小于最小距离的两倍
      • 2. 交叉匹配
      • 3. KNN匹配
      • 4. RANSAC
      • 5. GMS:一种基于运动统计的快速鲁棒特征匹配过滤算法
        • (1)基本思想
        • (2)算法流程
        • (3)评估结果
          • ① 高精确率、高召回率
          • ② 耗时短
          • ③ 求解位姿速度快且位姿精确。
  • 三、ORB SURF SIFT的比较
    • (一)A Comparative Analysis of SIFT, SURF, KAZE, AKAZE, ORB, and BRISK
      • 1.花销时间
      • 2.尺度方面
      • 3.旋转方面
      • 4.仿射方面
      • 5.匹配准确性方面
      • 6.综合排名
    • (二)A Comparative Evaluation of Well-known Feature Detectors and Descriptors
      • 1.尺度和旋转变化
      • 2.模糊度的变化
      • 3.视角变化
      • 4.光度变化(光照强度减弱)
  • 四、小结
    • (一)ORB小结
      • 1.ORB的特殊
      • 2.ORB的优势
      • 3.ORB的缺陷
      • 4.ORB适应场景
    • (二)SURF小结
    • 1.SURF优势
    • 2.SURF缺陷
    • 3.SURF适应场景
  • 五、参考

一、传统特征点检测器的检测

(一) ORB

对于ORB,是对fast检测角点方法的提升,传统fast角点检测本身是不具有方向性的,所以在ORB特征中添加对特征方向的计算得到ofast;ORB采用BRIEF方法计算特征描述子,但是缺点也很明显:不具备旋转不变性,对噪声敏感,不具备尺度不变性。所以ORB对brief也进行的一定的提升。


fast角点是通过选取当前像素点然后对当前像素点进去半径为3的圆周上像素值对比进行检测的,大致流程如下:

BRIEF算法计算出来的是一个二进制串的特征描述符。原本的方法对进行完高斯平滑的图像在一个特征点的邻域内,选择n对像素点pi、qi(i=1,2,…,n)。然后比较每个点对的灰度值的大小。如果I(pi)> I(qi),则生成二进制串中的1,否则为0。默认提取257对,生成256维。提取方式为p和q都符合(0,S^2/25)的高斯分布,但是每一对特征点的描述子提取的方式是一样的
但是在旋转不是非常厉害的图像里,用BRIEF生成的描述子的匹配质量非常高,作者测试的大多数情况中都超越了SURF。但在旋转大于30°后,BRIEF的匹配率快速降到0左右。
所以ORB即提升了fast角点检测和brief描述子两部分。

1. ORB的流程大致如下

1) 创建尺度金字塔

为了实现尺度不变性,orb特征中使用不同尺寸图像构成的图像金字塔,并分别在每一金字塔层图像上提取FAST特征,这样每一个被提取的特征具有“尺度”这一属性。一般设置比例值为1.2(超参)

2) Fast角点检测

上面说过。

3) Harris角点检测

利用局部窗口在图像上进行移动判断灰度发生较大的变化

为了减小计算量,利用泰勒级数进行简化公式:


上图中W函数表示窗口函数,M矩阵为偏导数矩阵。对于矩阵可以进行对称矩阵的变化,假设利用两个特征值进行替代
在几何模型中通过判断两个特征值的大小,来判定像素的属性。

M的特征向量为长轴和短轴的方向,对应的特征值和梯度大小成正比


定义了角点响应函数R,通过判定R大小来判断像素是否为角点

4) 设置特征点方向

根据“矩”概念确定当前特征点邻域块的重心位置C ,然后根据当前像素点中心O 和C 的连线方向确定特征点方向
像素块区域的“矩“
则重心坐标公式为
征点的方向角度定义为

5) 描述子生成

原始的brief描述子被提升分为steeredbrief(改进了旋转不变性)和rbrief(改进相关性)两种描述子。

① steeredbrief(旋转不变性改进)

在使用oFast算法计算出的特征点中包括了特征点的方向角度。假设原始的BRIEF算法在特征点SxS(一般S取31)(超参)邻域内选取n对点集。

得到新的点对

在新的点集位置上比较点对的大小形成二进制串的描述符。

② rbrief(描述子内相关性改进)

基于考虑改进的steeredBRIEF方法得到的特征描述子具有旋转不变性,但是描述符的可区分性不如原始的描述子。这个性质对特征匹配的好坏影响非常大。

rbrief生成方式如下:

2. 总结ORB的特征点检测和描述子生成的流程

3. ORB的改进

改进方式如下图:

(1)fast角点检测-自适应阈值t

原始Fast检测算法优点是计算量小,缺点是算法阈值需要人工设定,适应性不好。使用图像中像素灰度值前i个最大值和前i个最小值差值和,乘以一个系数结果作为阈值。
此方法也可去除光照影响。

(2)用hessian矩阵去除边缘点

(3)非极值抑制

每个特征点会计算得到相应的响应得分,然后以当前像素点p为中心,取其邻域(如3x3 的邻域),判断当前像素p的响应值是否为该邻域内最大的,如果是,则保留,否则,则抑制。
非极大值抑制,排除不稳定角点。采用强度响应函数:

特征点P和其周围16个特征点偏差的绝对值和。

(二)SURF

1.预知识

(1)积分图像

借助积分图,图像与高斯二阶微分模板的滤波转化为对积分图像的加减运算,从而在特征点的检测时大大缩短了搜索时间。
积分图中任意一点(i,j)的值ii(i,j),为原图像左上角到任意点(i,j)相应对角线区域灰度值的总和,即

求取积分图时,对图像所有像素遍历一遍,得到积分图后,计算任何矩形区域内的像素灰度和只需进行三次加减运算,如下图所示。

(2)Hessian矩阵近似

使用近似的Hessian矩阵行列式来表示一个图像中某一点处的斑点响应值,遍历图像中的所有像素,便形成了在某一尺度下斑点检测的响应图像。
Hessian矩阵的行列式的值代表区域内的灰度变化的剧烈程度。
图像点的二阶微分Hessian矩阵的行列式( DoH)极大值,可用于图像的斑点检测。Hessian矩阵定义如下


式中,Lxx、Lyy、Lxy分别是高斯二阶微分算子
与原图像的卷积,Hessian矩阵的行列式值DoH为

因为高斯滤波模板计算麻烦,用盒子滤波器代替,得到近似的Hessian矩阵的行列式的值:

(3)盒子滤波器

为了将模板与图像的卷积转化为盒子滤波器(Box Filter)运算,并能够使用积分图,需要对高斯二阶微分模板进行简化,使得简化后的模板只是由几个矩形区域组成,矩形区域内填充同一值,如下图所示,在简化模板中白色区域的值为1,黑色区域的值为-1或-2(由相对面积决定),灰色区域的值为0。

2.SURF流程

(1)尺度空间的构建

借助于盒子滤波和积分图像,不断增大盒子滤波模板,通过积分图快速计算盒子滤波的响应图像。
然后在响应图像上采用非极大值抑制,检测不同尺度的特征点。
建立盒状滤波金字塔时,需要将尺度空间划分为若干组(Octaves)。每组又由若干固定层组成,包括不同尺寸的滤波模板对同一输入图像进行滤波得到的一系列响应图。


Hessian行列式图像的产生过程
每一组中任意一层包括三种盒子滤波器。

(2)关键点定位

经过box filter处理过的响应图像中每个像素点与其3维邻域中的26个像素点进行比较,若是最极大值点,则认为是该区域的局部特征点。

(3)设定Hessian行列式的阀值

低于Hessian行列式阀值的点不能作为最终的特征点。在实际选择阀值时,根据实际应用中对特征点数量和精确度的要求改变阀值。阀值越大,得到的特征点的鲁棒性越好。
在处理场景简单的图像时,其阀值可以适当的调低。在复杂的图像中,图像经旋转或者模糊后特征点变化的数量较大,测试需要适当提高阀值。

(4)特征点方向分配

以特征点为中心,以6s(s为特征点的尺度)为半径的区域内,计算图像的Haar小波响应,Haar小波模板如下图所示,用于计算梯度的Haar小波的尺度是4s,扫描步长为s。

使用σ=2s的高斯函数对Haar小波的响应值进行加权。为了求取主方向,设计一个以特征点为中心,张角为π/3的扇形窗口,如下图所示,以0.2弧度(超参)大小的间隔进行旋转,并对窗口内的Haar小波响应值dx、dy进行累加,得到一个矢量(mw,θw)


主方向为最大Haar响应累加值所对应的方向

(5)特征描述子生成

生成特征点描述子时,同样需要计算图像的Haar小波响应。
与确定主方向不同的是,这里不再使用圆形区域,而是在一个矩形区域计算Haar小波响应。以特征点为中心,沿主方向将20s×20s的邻域划分为4×4个子块,
每个子块利用尺寸为2s的Haar模板计算响应值,然后对响应值统计Σdx、Σ|dx|、Σdy、Σ|dy|形成特征向量
先使用水平和垂直的Haar模板求得响应值dx、dy,对dx、dy进行高斯加权处理,并根据主方向的角度,对dx、dy进行旋转变换,从而得到旋转后的dx′、dy′。

以特征点为中心,用σ=10s/3=3.3s的高斯核函数对dx、dy进行加权计算;最后,分别对每个子块的加权响应值进行统计,得到每个子块的向量:

由于共有4×4个子块,特征描述子的特征维数为4×4×4=64。
SURF描述子不仅具有尺度和旋转不变性,还具有光照不变性,这由小波响应本身决定,而对比度不变性则是通过将特征向量归一化来实现。
对于SURF描述子,可以将其扩展到128维。具体方法就是在求Haar小波响应值的统计和时,区分dx≥0和dx<0的情况,以及dy≥0和dy<0的情况。
在特征点检测时,将Hessian矩阵的迹的正负号记录下来,作为特征向量中的一个变量。在特征匹配时可以节省运算时间,因为只用具有相同正负号的特征点才可能匹配。

3.总结SURF流程

二、匹配

匹配在特征点领域,大致用的方法有两种

(一)汉明距离与Brute-Force匹配

Brute-Force匹配器很简单,它取第一个集合里的一个特征的描述子与第二个集合里所有其他特征和它通过一些距离计算进行匹配,返回匹配最近的值。通过计算Hamming距离的异或运算和欧式距离来得到最后的匹配。

(二)FLANN匹配

FLANN是一个对大数据集和高维特征进行最近邻搜索的算法的集合,而且这些算法都已经被优化过了。在面对大数据集是它的效果要好于BFMatcher。
使用FLANN匹配,我们需要传入两个参数。这两个用来确定要使用的算法和其他相关参数等。
需要找到一个相对好的匹配但是不需要最佳匹配的时候往往使用Flann
使用ORB时,可以传递以下内容:
indexParams= dict(algorithm = FLANN_INDEX_LSH,…)
LSH = 局部敏感哈希
使用SURF时,可以传递以下内容:
indexParams= dict(algorithm = FLANN_INDEX_KDTREE, trees = 5…)
KDTREE=kd树

1.局部敏感哈希(LSH)

它映射的原则是:原来在高维空间中就很接近的点,会以很大的概率被映射到同一个桶中。
这样,如果再给你一个高维空间上的点,你只需要按照同样的方式也把这个点映射到一个桶中,而在同一个桶中点都是有很大概率在原来高维空间中是相似的,这样就可以直接对这个桶中的元素进行查找即可,大大的提高了查找的效率。
对于二进制描述子,哈希函数就是直接选择描述子的某一个比特位,通过若干个哈希函数选择出来的位的级联,就形成了一个哈希键了。通过对这个哈希键对数据库中的描述子进行索引,即形成了一个哈希表,选择若干个哈希表来增大找到近似最近邻的概率。

举个例子进行理解:
数据点集合P由以下6个点构成:
   A=(1,1)   B=(2,1)   C=(1,2)
   D=(2,2)   E=(4,2)   F=(4,3)


可知坐标出现的最大值是4,则C=4。维度为2,则n=2,显然nC=8。我们进行8位汉明码编码。
v(A)=10001000
v(B)=11001000
v( C)=10001100
v(D)=11001100
v(E)=11111100
v(F)=11111110

采用K=2,L=3的哈希函数组合,G=[g1,g2,g3],其中gi=[h1,h2]。
hi(x)=xi ,返回向量x特定位置的bit值。
G由g1,g2,g3构成。每个g由它对应的h1,h2构成。
假设有如下结果。
g1分别抽取第2,4位。
g2分别抽取第1,6位。
g3分别抽取第3,8位。


设查询向量q=(4,4)=(11111111),可以计算出
g1(q)=[1,1]T,g2(q)=[1,1]T,g3(q)=[1,1]T。
将上面3个哈希表中映射到[11]号的向量取出来为(C,D,E,F),接下来将这四个向量分别与q计算距离,距离最近的向量,即为最相似的向量,也就是向量F=(4,3)。

2.kd树

kd树是一个二叉树结构,它的每一个节点记载了【特征坐标,切分轴,指向左枝的指针,指向右枝的指针】。
其中,特征坐标是线性空间中的一个点





(三)匹配方法优化

1. 汉明距离小于最小距离的两倍

选择已经匹配的点对的汉明距离不大于最小距离的两倍作为判断依据
如果不大于该值则认为是一个正确的匹配,大于该值则认为是一个错误的匹配。

2. 交叉匹配

使用交叉匹配的方法来过滤错误的匹配。
交叉过滤的思想是再进行一次匹配,反过来使用被匹配到的点进行匹配,
如果匹配到的仍然是第一次匹配的点的话,就认为这是一个正确的匹配。

3. KNN匹配

k 近邻匹配,在匹配的时候选择k个和特征点最相似的点
如果这k个点之间的区别足够大,则选择最相似的那个点作为匹配点,通常选择k=2,也就是最近邻匹配。
对每个匹配返回两个最近邻的匹配,如果第一匹配和第二匹配距离比率足够大(向量距离足够远),则认为这是一个正确的匹配

4. RANSAC

随机样本一致性方法,因为我们是使用一幅图像(一个平面物体),可以将它定义为刚性的
在两帧的特征点之间找到单应性变换
再使用RANSAC找到最佳匹配,从而找到最佳单应性矩阵。
(1)从数据集中随机选出一组局内点(其数目要保证能够求解出模型的所有参数),计算出一套模型参数。
(2)用得到的模型去测试其他所有的数据点,如果某点的误差在设定的误差阈值之内,就判定其为局内点,否则为局外点,只保留目前为止局内点数目最多的模型,将其记录为最佳模型。
(3)重复执行1,2步足够的次数(即达到预设的迭代次数)后,使用最佳模型对应的局内点来最终求解模型参数。
(4)最后可以通过估计局内点与模型的错误率来评估模型。

5. GMS:一种基于运动统计的快速鲁棒特征匹配过滤算法

(1)基本思想

先对两张图片Ia和Ib分别提取关键点和描述子对两张图片的特征点进行BF匹配,这样找到了图片Ia中每个特征点对应的Ib中的最邻近的特征点。
由于运动的平滑性,
在正确匹配的特征点附近的正确匹配点对数应该大于错误匹配的特征点附近的正确匹配点对数。
这样我们就可以根据BF匹配好的特征点xi附近的正确匹配个数n与阈值来判断该点是否被正确匹配。



如果网格很小,则很少邻域信息将被考虑, 这会降低算法性能。
但是,如果网格很大,则将包括更多不正确的对应关系。为解决这个矛盾,我们将网格大小设置为较小以提高准确性,并提出运动内核以考虑更多邻域信息。


多尺度

多旋转

(2)算法流程


(3)评估结果

① 高精确率、高召回率

② 耗时短

③ 求解位姿速度快且位姿精确。

三、ORB SURF SIFT的比较

(一)A Comparative Analysis of SIFT, SURF, KAZE, AKAZE, ORB, and BRISK

主要基于opncv3.3算法
Intel® Core™ i5-4670 CPU @ 3.40 GHz, 6 MB Cache and 8.00 GB RAM.

1.花销时间



SURF(128d)总花销时间最大
ORB(1000)总花销时间最小
无边界限制特征点的ORB花销超过SIFT

2.尺度方面

在两帧尺度变化在60%-150%的时候,ORB的可重复性是最高的,但是超过这个范围,可重复性下降很快。
SIFT,SURF在尺度变小的时候依然稳定,SIFT稳定性保持的最高,依然能够保持可用的可重复性。

3.旋转方面

在旋转图像上,ORB(1000)可重复性最高,ORB比SURF和SIFT的可重复性高。

4.仿射方面

仿射变化时,无边界的ORB保存较高的可重复性,但是有时ORB(1000)较小

5.匹配准确性方面

SIFT是匹配准确性最高的
ORB(1000) 匹配准确性低于ORB,在特征点数量和时间花销上做了取舍。

6.综合排名

检测特征点数量能力排行
ORB>SURF>SIFT
每个特征点计算效率排行
ORB>ORB(1000)>SURF(64D) >SURF(128D)>SIFT
每个特征点匹配效率排行
ORB(1000)>SURF(64D) >ORB>SIFT>SURF(128D)
总匹配时间效率排行
ORB(1000)>SURF(64D) >SIFT>ORB>SURF(128D)

(二)A Comparative Evaluation of Well-known Feature Detectors and Descriptors

ORB用暴力匹配
SURF和SIFT用FLANN匹配

1.尺度和旋转变化

在树皮(尺度)和船(旋转)的图片上测试
尺度方面,SIFT比ORB好
旋转方面,ORB比SIFT好

2.模糊度的变化

树和自行车的图片测试
ORB的总体表现上优于SIFT

3.视角变化

涂鸦和墙的图片测试
在涂鸦图片上ORB是最优的(强纹理)
在墙的图片上,SIFT最优(弱纹理)

4.光度变化(光照强度减弱)

城市角落的图片
fast和brief的结合最好
SIFT的效果并不好

四、小结

(一)ORB小结

1.ORB的特殊

ORB是角点检测,角点则是图像中一边物体的拐角或者线条之间的交叉部分。而SIFT,SURF是光斑检测,检测的是斑点,通常是指与周围有着颜色和灰度差别的区域
二进制串描述子BRIEF计算速度快,SIFT与SURF算法里的,用梯度统计直方图来描述的描述子都属于浮点型特征描述子。但它们计算起来,算法复杂,效率较低。
ORB算法的综合性能在各种测评里较其他特征提取算法是最好的。

2.ORB的优势

ORB算法最大的特点就是计算速度快,计算时间大概只有SIFT的1%,SURF的10%,
这主要是因为使用了FAST来加速了特征点的提取。
再次是使用BRIEF算法计算描述子,该描述子特有的2进制串的表现形式不仅节约了存储空间,而且大大缩短了匹配的时间。

3.ORB的缺陷

虽然有尺度金字塔加持,但是尺度变换的应对能力比较低。

4.ORB适应场景

ORB的强点在于计算时间。ORB主要还是在VSLAM中应用较多,场景变化不明显,但是需要高速的计算时间,这正好符合ORB。

(二)SURF小结

1.SURF优势

SURF是尺度不变特征变换算法(SIFT)的加速版,一般来说它比SIFT要快好几倍,且在多幅图像下具有更好的稳定性;
SURF采用了harr特征+积分图像的概念,大大加快了程序的运行时间。
SURF可以应用于计算机视觉的物体识别以及3D重构
在质量上,SURF的鲁棒性很好。

2.SURF缺陷

求主方向阶段太过于依赖局部区域像素的梯度方向,而后面的特征向量提取以及匹配都严重依赖于主方向,即便不大偏差角度也可以造成后面特征匹配的误差放大,从而使匹配不成功。
图像金字塔的层取得不够紧密,这会使得尺度有误差, 后面的特征向量提取同样依赖相应的尺度,研究者们在这个问题上的解决方法是取适量的层然后进行插值

3.SURF适应场景

对鲁棒性要求较高 ,对尺度不变的场景有特殊的要求。
要求一定的特征提取速度。

五、参考

[1] 特征提取之ORB(ORB与SIFT与SURF)
https://blog.csdn.net/Darlingqiang/article/details/79404869
[2] OpenCV第十四讲: Fast特征点与ORB特征点原理详解
https://blog.csdn.net/qq_29797957/article/details/100514719
[3] 特征提取之ORB(ORB与SIFT与SURF)
https://blog.csdn.net/Darlingqiang/article/details/79404869
[4] OpenCV第十四讲: Fast特征点与ORB特征点原理详解
https://blog.csdn.net/qq_29797957/article/details/100514719
[5] 特征提取之ORB(ORB与SIFT与SURF)
https://blog.csdn.net/Darlingqiang/article/details/79404869
[6] OpenCV第十四讲: Fast特征点与ORB特征点原理详解
https://blog.csdn.net/qq_29797957/article/details/100514719
[7] ORB 算法学习笔记
https://www.jianshu.com/p/2d46c9499cba
[8] GMS:一种基于运动统计的快速鲁棒特征匹配过滤算法
https://zhuanlan.zhihu.com/p/220134467
[9] SIFT,SURF,ORB,FAST,BRISK 特徵提取演算法比較
https://www.itread01.com/content/1546487137.html
[10] A Comparative Analysis of SIFT, SURF, KAZE, AKAZE, ORB, and BRISK
2018 International Conference on Computing, Mathematics and Engineering Technologies – iCoMET 2018
[11] kd 树算法之详细篇
https://zhuanlan.zhihu.com/p/23966698
[12] 图像特征之SURF特征匹配
https://senitco.github.io/2017/06/27/image-feature-surf/
[13] A Comparative Evaluation of Well-known Feature Detectors and Descriptors
International Journal of Applied Mathematics, Electronics and Computers

传统特征点检测器的检测特征点和匹配流程相关推荐

  1. CV之Harris特征点检测器-兴趣点检测(详解)

    1.1 简介 在图像处理领域中,特征点又被称为兴趣点或者角点,它通常具有旋转不变性和光照不变性和视角不变性等优点,是图像的重要特征之一,常被应用到目标匹配.目标跟踪.三维重建等应用中.点特征主要指图像 ...

  2. 基于深度学习特征的植物病虫害检测

     ABSTRACT 及时.准确地诊断植物病害,对于防止农业生产的损失和农产品的损失或减少具有重要作用.为了解决这类问题,可以使用基于机器学习的方法.近年来,在图像处理中应用尤其广泛的深度学习为精准农业 ...

  3. CVPR2020论文笔记——EfficientDet---双尺度特征融合BiFPN目标检测

    代码:https://github.com/google/automl/tree/ master/efficientdet. 摘要:提出了提高效率的几个关键优化 提出了一种加权的双向特征金字塔网络,它 ...

  4. ACM第一名:基于轨迹感知多模态特征的视频关系检测

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达小白导读论文是学术研究的精华和未来发展的明灯.小白决心每天为大家带来 ...

  5. python dlib学习(八):训练人脸特征点检测器

    前言 前面的博客(python dlib学习(二):人脸特征点标定)介绍了使用dlib识别68个人脸特征点,但是当时使用的是dlib官方给出的训练好的模型,这次要自己训练一个特征点检测器出来.当然,想 ...

  6. CV之Haar特征描述算子-人脸检测

    3.1简介 Haar-like特征最早是由Papageorgiou等应用于人脸表示,在2001年,Viola和Jones两位大牛发表了经典的<Rapid Object Detection usi ...

  7. 基于内容的图像检索系统设计与实现--颜色信息--纹理信息--形状信息--PHASH--SHFT特征点的综合检测项目,包含简易版与完整版的源码及数据!

    百度云提取源码以及数据包,直接下载压缩包解压就可以使用,数据就在压缩包文件dataset中. 简化版:只有-颜色信息–纹理信息–形状信息–PHASH–SHFT特征点的综合检测 [百度云链接,提取码:6 ...

  8. Haar特征描述算子-人脸检测

    Haar特征描述算子-人脸检测 详细资料 3.1简介 Haar-like特征最早是由Papageorgiou等应用于人脸表示,在2001年,Viola和Jones两位大牛发表了经典的<Rapid ...

  9. OpenCV-图像特征harris角点检测/SIFT函数/特征匹配-05

    图像特征-harris角点检测 基本原理 R>0 角点 R≈0 平坦区域 R<0 边界 总结一下Harris算法流程 获取点数据后,计算Ix 和 Iy 整合矩阵,求特征值 比较特征值大小 ...

最新文章

  1. python基于百度接口的语音识别_Python基于百度接口的语音识别
  2. python字典增加和删除_Python字典的基本用法实例分析【创建、增加、获取、修改、删除】...
  3. 赠书:京东当当新书榜TOP1的“算法小抄”!
  4. 什么是 TCC分布式事务
  5. 【干货】神策数据朱德康:用户中台建设实践解析(附PPT下载链接)
  6. how tomcat works 读书笔记(一)----------一个简单的webserver
  7. UVA1368 UVALive3602 ZOJ3132 DNA Consensus String【贪心】
  8. KNN(七)--最近邻及OpenCV源码分析
  9. OpenCore引导配置说明第十一版说明-基于OpenCore-0.6.4正式版
  10. 微型计算机原理王忠民PPT,微型计算机原理4 王忠民著.ppt
  11. 无法安装visual studio code,snap vscode has install-snap change in process
  12. 如何用Java画一棵简单的圣诞树
  13. cur前缀_常用英语前缀
  14. 想要Linux上云?如何实现Linux工作流上云部署
  15. 刷脸支付只是开端 浅谈3D视觉如何推进新零售崛起
  16. Linux基础_软件包管理
  17. python处理xml文件_Python处理XML之DOM解析
  18. 第9章 Quartz定时器和发送Email
  19. KaliLinux-OneForAll子域名扫描神器
  20. 张正友标定方法原文(翻译)

热门文章

  1. C++问题速记:十六进制数0x9C40(40000)被表示为unsigned int问题
  2. java 二维数组存储方式_JAVA-初步认识-第六章-二维数组-定义方式内存图解
  3. 回溯法解01背包问题(最通俗易懂,附C++代码)
  4. 在线解析xml,json数据的网址
  5. 我也 30 了,来谈谈程序员的迷茫年龄
  6. WMS仓库商品预警需求分析(附代码解析)
  7. 计算机教师个人培训建议,教师个人培训心得
  8. JavaCV录制屏幕(窗口)和系统声音,内录
  9. android 设置联系人头像代码,Android根据电话号码获得联系人头像实例代码
  10. Linux源码目录说明