Faster and Better: A Machine Learning Approach to Corner Detection

Faster and Better: A Machine Learning Approach to Corner Detection

论文翻译:更快,更好:用于角点检测的机器学习方法

摘要

  角点检测的可重复性和效率决定了它在实际应用中有用的可能性。可重复性很重要,因为从不同位置观看同一场景应产生对应于相同真实世界3D位置的特征[1]。效率很重要,因为这确定了结合进一步处理的检测器是否可以帧速率运行。本文描述了三个方面的进步。首先,我们提出了一种新的特征检测启发式方法,并使用机器学习从中派生了一个特征检测器,它可以使用少于5%的可用处理时间来完全处理实时PAL视频。相比之下,大多数其他检测器甚至无法以帧速率运行(Harris检测器为115%,SIFT为195%)。其次,我们对检测器进行泛化,使其针对可重复性进行优化,而效率损失很小。第三,我们根据上述应用于3D场景的可重复性标准对角检测器进行了严格的比较。我们的方法表现为,尽管主要是为了速度而构造的,但在这些严格的测试中,我们的启发式检测器明显优于现有的特征检测器。最后,比较结果表明,使用机器学习可以显着提高可重复性,从而产生既快速又高质量的检测器。
关键词:角点检测 特征检测

1引言

  角点检测被用作许多视觉任务的第一步,例如跟踪,定位,同时定位和映射(SLAM)以及图像匹配和识别。 这种需求推动了大量角检测器的发展。 但是,尽管自从角落检测器问世以来,计算能力得到了极大的提高,但是,当以全帧速率处理实时视频流时,现有的特征检测器几乎没有时间留给进一步处理,这仍然是事实。 在上述应用中,通常检测到角点并将其匹配到数据库中; 因此,重要的是要从多个视图中重复检测相同的现实世界点[1]。 该条件应保持的视点变化量取决于应用程序。

2以前的工作
2.1角点检测器

  在这里,我们回顾文献以将我们的进步放在上下文中。 在文献中,术语“点特征”,“特征”,“兴趣点”和“角”是指在二维上变化的小兴趣点。 这些点通常是由于几何不连续(例如,现实世界对象的角)而产生的,但它们也可能是由小的纹理块引起的。 大多数算法都能够检测两种兴趣点,尽管这些算法通常被设计为检测一种或另一种。 下面描述的许多检测器计算拐角响应C并将拐角定义为C的较大局部最大值。
2.1.1基于边缘的角检测器
  图像中的边缘(通常是强度的阶跃变化)对应于两个区域之间的边界。 在角点处,此边界会迅速改变方向。
  基于边缘的链式角检测器。 已经开发了许多技术,这些技术涉及检测和链接边缘以分析边缘的特性,通常将高曲率的点当作拐角。 许多早期的方法都使用链曲线,并且由于曲线是高度量化的,因此技术集中在有效且高效地估计曲率的方法上。 一种常见的方法是使用和弦来估计曲线的斜率,或者使用一对和弦来找到某个点处曲线的角度。
  早期的方法在跨越不同数量的链接的和弦上计算曲线的最小角度。 角定义为局部平均[3]后的局部角度最小值[2]。 或者,可以将角定义为平均斜率中的孤立不连续点,可以使用跨越链中一组固定链接的和弦来计算[4]。 平均可以用来计算斜率和曲线的长度,以确定点是否被隔离[5]。 可以使用一对带有中心间隙的和弦来计算角度,并且将具有一定宽度的峰(通过查找角度的零交叉点找到)定义为角[6]。
  某些方法不是使用固定的和弦范围,而是根据局部曲线属性来计算“支撑区域”。 例如,弦长的局部最大值可以用来定义角必须具有最大曲率的支撑区域[7]。 角可以定义为具有高平均曲率的支撑区域的中心,其中支撑区域较大且围绕其中心对称[8]。 可以在候选点周围没有明显不连续性的区域中使用曲率,该曲率的计算方法是跨区域[9]的斜率变化或与区域端点的角度[10]。
  使用曲线的弦的一种替代方法是对曲线上的点进行平滑处理。 角可以定义为具有高变化率的点[11]或曲率迅速减小到最接近的最小值并且与相邻最大值的夹角很小的点[12]。
  固定的缩放比例不一定适用于所有曲线,因此也可以在高曲率点处检测到拐角,这些高曲率点在一系列缩放比例下具有稳定的位置[13]。随着平滑度的降低,最大曲率会分叉,从而形成比例树。树的分支(在比例上)长于父分支(被认为是稳定的拐角点)[14]。代替高斯平滑,可以将斜率的小波变换的极值[15]或角度的小波变换模量最大值[16],[17]的极值作为角。
  平滑比例可以自适应选择。曲率尺度空间技术[18]使用与长度成比例的尺度,并在曲率最大值处定义拐角,其中最大值明显大于最接近的最小值。也已经提出了使用各向异性扩散的局部自适应平滑[19]或通过局部曲率变化定标的平滑[20]。
  除了直接平滑外,还可以使用三次样条和在高二阶导数点处检测到的角进行参数化,在该点处样条与控制点[21],[22]相距很远。
  一种不同的方法是通过遵循梯度图像中的鞍形最小值或山脊最大值来延伸曲线,使其越过端点,直到越过附近的边缘,从而找到连接点[23]。由于链码编号大致对应于斜率,因此可以使用有限的差异找到近似的曲率,并且可以通过识别特定的图案来找到拐角[24]。可以使用归一化互相关来比较候选点两侧的链码编号的直方图,并且可以在较小的局部最小值处找到拐角[25]。同样,可以使用链码编号的圆形平滑直方图来计算斜率的度量[26]。可以使用模糊规则将点分类为拐角,该模糊规则适用于根据前臂和后臂以及曲线角度计算的度量[27]。
  基于Edgel的角检测器。链接的边缘技术依赖于执行分割和边缘链接的方法,因此许多技术都可以找到边缘点(edgel)并检查局部边缘或图像以找到角。
  例如,可以为3 * 3窗口中存在或不存在边线的每种组合分配一个曲率,以及在局部窗口中找到的作为曲率最大值的拐角[28]。 也可以通过分析沿边缘扫描的窗口中的边缘属性来找到角[29]。 可以使用广义的Hough变换[30],该变换用线段替换每个edgel,并且可以找到线相交的角,即在Hough空间中的最大值处[31]。 以类似于链接的方式,可以将一条短的线段装配到edgels上,并通过沿线段[32]沿梯度方向的变化找到拐角强度。 边缘检测器通常在交点处失效,因此可以将拐角定义为不同角度的多个边缘在附近终止的点[33]。 通过找到两条边及其方向,可以将边上的斑块与轮廓方向上任一侧的斑块进行比较,以找到具有低自相似性的点[34]。
通过测量沿边缘的梯度方向的导数并乘以梯度的大小,可以发现边缘方向的快速变化。
在这里插入图片描述
其中,通常,
在这里插入图片描述
g是图像或局部拟合图像的二元多项式[35]。 CK也可以乘以沿边沿的边沿方向的变化[36]。 当将三次三次多项式拟合到局部图像表面时,还可以将角强度计算为梯度角度的变化率[37],[38],
在这里插入图片描述
其中,例如,cxy是拟合多项式中的xy系数。 如果仅在边缘的最陡峭部分检测到edgels,则计算Edgels处总图像曲率的分数为
在这里插入图片描述
▽I是图像渐变[39]。

2.1.2基于灰度导数的检测器
沿边缘存在角的假设对于纹理和点状特征的斑块而言是不充分的模型,并且很难在结点处使用。 因此,大量检测器直接在灰度图像上操作而无需边缘检测。
最早的检测器之一[40]将角定义为Hessian的行列式中的局部极值
在这里插入图片描述
这通常称为DET运算符。 CDET随着刻度的变化沿一条直线移动。 为了解决这个问题,可以在两个比例尺中找到DET极值并用一条线连接。 然后沿线[41]将角作为拉普拉斯算子的最大值。
代替DET最大值,也可以将角设为连接符号相反的两个高斯曲率高点附近的两个点的直线上的梯度最大值,其中梯度方向与符号变化匹配[42]。 通过将梯度视为基本电流,可以计算出相应的磁矢量电势的大小。 其梯度取为法线并正交于局部轮廓方向,拐角强度为这些强度的倍数[43]。
本地平方差和(SSD)检测器。 可以将特征定义为在所有方向上具有低自相似性的点。 图像补丁的自相似性可以通过在图像补丁和其自身的移位版本之间获取SSD来进行测量[44]。 这是一大类检测器的基础。 哈里斯和斯蒂芬斯[45]在此基础上通过计算SSD相对于位移的二阶导数的近似值。 这不仅计算效率更高,而且可以使其各向同性。 结果是
在这里插入图片描述
其中^表示对图像块区域进行平均。 由于[45]中使用的措辞,经常会错误地认为H等于自相关的负二阶导数。 并非如此,因为SSD等于自相关和某些附加项的和[46]。
较容易用H来解释较早的Förstner[47]算法。对于较新提出的检测器[48],已经证明[49]在仿射运动下,最好使用H的最小特征值 作为角强度功能。 关于如何从H计算拐角强度,还提出了许多其他建议[45],[50],[49],[51],这些建议都等效于H的各种矩阵范数[52] ]。 可以通过概括图像的通道数和维度来概括H [53],并且还可以表明[47],[49],[54]等同于[51]中所用度量的特定选择。
可以考虑使用通用模板匹配,给定的翘曲,外观模型和逐点比较来代替本地SSD,在小差异方面,其行为与SSD类似[56]。 得出关于匹配参数的稳定性,结果是H的推广(其中H对于没有外观模型,线性平移和SSD匹配最大稳定)。 用于派生检测器,这些检测器将在模板匹配,给定相似度转换,照明模型和预滤波的情况下,为点提供最大稳定的点。
基于拉普拉斯算子的检测器。找到测量第二阶导数的标量值的问题的另一种方法是获取图像的拉普拉斯算子。 由于二阶导数极大地放大了噪声,因此通过使用平滑的拉普拉斯算子可以减少噪声,拉普拉斯算子是通过将图像与高斯(LoG)的拉普拉斯算子进行卷积来计算的。 由于LoG内核是对称的,因此可以将其解释为对形状与LoG相同的特征执行匹配过滤。 结果,高斯的方差决定了感兴趣特征的大小。 已经注意到[57]在不同尺度上LoG的最大值的位置是特别稳定的。
可以通过将图像与高斯差(DoG)核以各种比例(每八度音阶三个)进行卷积并在空间和比例上选择局部最大值来提取比例不变角。[58]。 DoG是LoG的一个很好的近似值,并且计算速度要快得多,特别是因为中间结果可用于进一步处理。 为了拒绝类似边缘的特征,如果特征值足够相似(在10倍以内),则计算图像的Hessian特征值并保留特征。 该方法可以与(3)进行对比,后者将拉普拉斯算子与边缘响应的幅度进行了比较。 如果每个八度音阶有两个音阶是令人满意的,则可以通过使用递归滤波器近似高斯卷积来显着提高速度[59]。
使用类似的方法来检测Harris-Laplace [60]的特征。 建立一个图像金字塔,并通过计算金字塔每一层的CH来检测特征。 如果特征是图像平面中CH的局部最大值和整个尺度上LoG的局部最大值,则选择特征。
最近,尺度不变性已经扩展到考虑仿射变换不变的特征[57],[61],[62],[63]。 但是,与3D比例空间不同,6D仿射空间太大而无法搜索,因此所有这些检测器均从在比例空间中检测到的角开始。 这些又依赖于在图像金字塔的图层中选择的2D特征。

2.1.3直接灰度检测器
另一类主要的角检测器通过检查图像的一小块以查看其“看起来”是否像角来工作。 本文所述的检测器属于本节
楔形模型检测器。 许多技术假设一个角在不同均匀强度的背景上通常具有一个或多个均匀强度的楔形外观。 例如,可以将一个角建模为模糊楔形的单个[64]或一个族[65],其中通过拟合参数模型可以找到参数。 该模型可以包括单个楔块的角度,方向,对比度,钝度和曲率[66]。 以类似于[67]的方式,在图像被高斯噪声[68]破坏的假设下,可以为各种楔形导出卷积掩码,从而优化信噪比和定位误差。
检测二进制图像中的楔形更加简单,并获得有用的结果,可以使用局部阈值对图像进行二值化处理[69]。 如果一个拐角是一个双水平楔形,则基于局部Zernike矩的响应函数可用于检测拐角[70]。 寻找楔形的一种更直接的方法是找到像素的同心连续弧与中心像素明显不同的点[71]。 根据楔形模型,拐角将是多个边缘的交点。 对属于通过候选点的线的边线执行仅角度的霍夫变换[72],以找到它们的角度,从而检测角点[73]。 类似的推理可以用来基于梯度矩导出响应函数,以检测V,T和X形拐角[74]。 边缘的强度,楔形角和楔形区域的不相似性也已用于寻找角[75]。
自我差异。楔形的尖端不是自相似的,因此可以通过将角定义为不自相似的点来进行概括。磁盘在中心(或原子核)周围与中心相似的像素比例是自相似性的度量。这是吸收核的单值段(USAN)。角定义为最小的USAN(SUSAN,即局部最小值)点,该点还通过了一组规则来抑制定性不良特征。实际上,使用了强度在中心值的某个阈值以内的磁盘内部像素数量的加权和[76]。交叉定向对(COP)[77]使用一对定向交叉的USAN的局部平均值计算主导方向,并将角定义为具有多个主导方向的点。
可以使用圆圈而不是磁盘来测量自相似性[78]。中心像素和直径线两端的像素之间的SSD是自相似性的定向度量。如果在任何方向上都较小,则该点不是角。由于在遇到一个小值时就可以立即停止该过程,因此这在计算上是有效的。 Lepetit和Fua [79]也使用该检测器,其附加步骤是使用中心像素和圆形像素之间的差来估计拉普拉斯算子,并且还要求点在拉普拉斯算子中局部最大。
灰度值范围较大的小区域可用作拐角。为了有效地找到这些图像,可以将图像投影到x和y轴上以及在二阶导数中发现的大峰上。候选角位置是这些最大值投影到图像中的交点[80]。 Paler等人[81]提出可以通过将窗口的中心像素与窗口中像素的中值进行比较来测量自相似性。在实践中,使用了几个百分位值(而不是50)。
自相异的贴片将具有较高的能量含量。组成两个正交正交对Gabor滤波器可得到定向能量。角是总能量的最大值(在多个方向上定向能量的总和)[82]。在[83]中开发了一种快速的径向对称变换来检测点。当梯度在径向上对称,强且沿半径方向具有均匀的符号时,点的得分很高。检测到的点与DoG功能有些相似。
基于机器学习的检测器。 上述所有检测器均使用模型或算法定义角点,并将该算法直接应用于图像。 一种替代方法是在模型上训练分类器,然后将分类器应用于图像。 例如,多层感知可以在某些模型的示例角上进行训练,并在经过某些处理[84],[85]后应用于图像。
可以使用人类感知代替模型[86]:将图像显示给许多测试对象。 一致固定的图像位置(由眼睛跟踪系统测量)被认为很有趣,并且训练了支持向量机以识别这些点。如果使用分类器,则可以根据拐角应如何表现来训练它,即,应在评估检测器的系统中使其性能最大化。 Trujillo和Olague [87]指出,检测到的点应具有较高的可重复性(如[1]所定义),并在图像上均匀分散,并且应该至少检测到所需数量的点。 基于这些测量,对角检测器功能进行了优化(使用遗传程序设计)以使得分最大化。
FAST-n检测器(在第3节中进行了描述)与使用候选像素周围的圆圈评估的检测器的楔形模型样式有关。 为了优化检测器的速度,此模型用于训练决策树分类器,并将该分类器应用于图像。 FAST-ER检测器(在第5节中进行了介绍)是一种概括,可以使检测器针对重复性进行优化。

2.2特征检测器的比较

与发明新的检测器相比,在特征检测器的比较和评估方面所做的工作要少得多。测试分为三大类。
1.角点检测作为物体识别。由于无法准确定义转角的确切形状,因此可以使用简单的测试图像比较算法,并在使用对比度降低技术更改图像时评估性能(根据正阳性,假阳性等),变形,并增加噪音。由于使用了合成图像,角仅存在于已知位置,因此可以很好地定义假阴性和假阳性的存在。但是,该方法和结果不能推广到自然图像。
2.系统性能。随角检测器的更改而评估应用程序的性能(通常为跟踪)。优点是它可以测试检测到的角点是否适合进一步处理。然而,从与下游处理不匹配的检测器将获得差的结果。此外,结果不一定能很好地推广到其他系统。为了解决这个问题,有时会使用系统的一部分,但是在这种情况下,结果不一定适用于任何系统。
3.重复性。这测试是否从多个视图中检测到角点。这是拐角检测器质量的低级度量,并提供了性能的上限。由于它与下游处理无关,因此结果可广泛应用,但是检测到的特征可能没有用。在这种技术中必须小心,因为将每个像素识别为一个角的琐碎检测器可实现100%的可重复性。此外,可重复性不提供有关检测到的角对进一步处理有用性的信息。例如,图像中最亮的像素可能是可重复的,但并不是特别有用。
在第一类中,拉詹和戴维森[88]产生了许多基本测试图像,这些图像的拐角非常少(一到四个),以随着各种参数的变化来测试检测器的性能。这些参数是拐角角度,拐角臂长,拐角邻接度,拐角清晰度,对比度和加性噪声。随着参数的变化,将检测到的拐角位置与实际拐角位置列表在一起。库珀等。 [34],[89]使用由均匀强度的区域组成的合成测试图像,这些区域布置成创建L,T,Y和X形角。在降低对比度的情况下,将图案重复几次。最后,图像模糊,并添加了高斯噪声。 Chen和Rockett [85]使用了一种相关的方法。已知的测试图案会受到许多随机仿射扭曲和对比度变化的影响。他们指出,这是幼稚的,但易于处理。它们还提供了等效于接收器工作特性(ROC)曲线的功能。张等。 [90]根据它们的模型生成随机角点,并针对检测器和生成的角点参数绘制定位误差,假阳性率和假阴性率。罗等。 [43]使用精心构建的场景的图像,绘制真实正比例,随着比例的变化和噪声的增加而变化。
Mohanna和Mokhtarian [91]使用几个标准评估性能。 首先,他们将一致的检测器定义为一个检测器,其中检测到的拐角数量不会随各种变换(例如添加噪声和仿射扭曲)而变化。 这是由“角编号的一致性”(CCN)来衡量的,
在这里插入图片描述
其中nt是变换后的图像中的特征数量,而no是原始图像中的特征数量。 此测试不会以任何方式确定检测到的角的质量,因此他们还建议测量精度(ACU)
在这里插入图片描述
其中no是检测到的角点的数量,ng是所谓的“地面真值”角点的数量,na是靠近地面真相角点的检测到的角点的数量。 由于使用的是真实图像,因此对地面真实情况没有很好的定义,因此,许多熟悉角检测的人类测试对象(例如10位)通常(但不是被测方法)在测试图像中标记角。 70%的测试对象同意的拐角被保留为地面真相拐角。 不幸的是,这种方法依赖于主观决定。
值得注意的是,在上述系统中,只有[85],[88]和[86]提供了ROC曲线(或等效曲线):否则,仅测量单个点(在ROC图的任一轴上都不一致)。
在第二类中,Trajkovic和Hedley [78]将稳定性定义为“强”匹配的数量,即在其跟踪算法中在三帧内检测到的匹配除以拐角总数。Tissainayagam和Suter [92]使用类似的方法:如果已成功从第1帧跟踪到第n帧,则第n帧中的角是稳定的。 Bae等人[77]使用互相关来检测帧之间的角点,并将每个帧中匹配的角点数与第一帧中的角点数进行比较,以检测光流。
在这里插入图片描述

为了获得比系统性能所提供的更多的一般结果,可以仅使用系统的一部分来计算性能。 例如,Mikolajczyk和Schmid [93]通过计算可以如何精确执行兴趣点匹配来测试大量兴趣点描述符和少量紧密相关的检测器。Moreels和Perona [94]在各种光照条件下,对各种场景类型进行检测和匹配实验。 他们的结果说明了从系统性能进行概括的困难,因为最佳检测器会随着描述符的选择和照明条件的变化而变化。
在第三类中,Schmid等人[1]提出,在测量可靠性时,重要的因素是是否从多个视图中检测到相同的真实世界特征。 对于图像对,如果特征在一个图像中提取并在第二个图像中出现,则“检测到”特征。 如果第二秒也检测到它,则“重复”它。 重复性是重复特征与检测特征的比率。 他们对平面场景的图像进行测试,以使点位置之间的关系成为单应性。 使用高架投影仪将基准标记投影到平面场景上,以允许对单应性进行精确计算。 为了测量兴趣点是否适合进行进一步处理,还计算了围绕检测到的点的补丁描述符的信息内容。

3高速角点检测

这有一篇

3.1 FAST:加速分段测试的功能

分段测试标准通过考虑围绕角候选点p的16个像素的圆进行操作。如果圆中存在一组n个比候选像素Ip的强度(像素值)加上一个阈值t都亮的像素或全部比Ip-t暗的像素,则原始检测器[95],[96]将p分类为角点。如图1所示。n最初选择为12是因为它允许进行高速测试,该测试可用于排除大量非角点。高速测试检查像素1和9。如果这两个像素均在Ip的t范围内,则p不能为角点。如果p仍然可以是一个角点,则检查像素5和13。如果p是一个角点,则其中至少三个必须全部比Ip+t亮或比Ip-t暗。如果这两种情况都不是,则p不能为角点。然后,可以通过检查圆中的所有像素,将完整的分段测试标准应用于其余的候选项。该检测器本身具有高性能,但存在一些缺点。

  • 1.此快速检测不会拒绝n <12的尽可能多的候选对象,因为如果四个像素中只有两个像素都明显比p亮或都比p暗(假设像素相邻),则该点可能是一个角点。 还需要进行其他测试,以确定是否需要对亮环或暗环执行完整测试。
  • 2.检测器的效率将取决于问题的顺序和角落外观的分布。 像素的这种选择不太可能是最佳的。
  • 3.检测到临近的多个特征点。
3.2通过机器学习提高通用性和速度

在这里,我们对[97]中首先提出的工作进行扩展,并提出一种使用机器学习解决前两点的方法(第三部分在3.3节中讨论)。 该过程分为两个阶段。 首先,为了为给定的n建立一个角点检测器,从一组图像(最好是从目标应用程序域)中提取所有16个像素环。 使用针对n的段测试标准的直接实现和方便的阈值来标记这些标记。
对于圆x∈ {1 … 16}上的每个位置,相对于p的该位置处的像素(由p-> x表示)可以具有以下三种状态之一
在这里插入图片描述
令P为所有训练图像中所有像素的集合。 将x分区P分为三个子集Pd,Ps和Pb,其中
在这里插入图片描述
Pd和Ps的定义相似。 换句话说,x的给定选择用于将数据划分为三个集合。 集合Pd包含像素值小于Ip-t的所有点,Pb包含比中心像素值大于Ip+t的点,Ps包含像素x与Ip相似的其余点。
令Kp为一个布尔变量,如果p是角点,则为true,否则为false。 阶段2使用ID3 [98]中使用的算法,首先选择x,该x产生有关候选像素是否为角点的最多信息,该信息由Kp的熵衡量。
任意一组角点Q的K的总熵为
在这里插入图片描述
x的选择将产生信息增益(Hg)
在这里插入图片描述
选择了产生最多信息的x之后,将过程递归应用于所有三个子集,即选择xb将Pb划分为Pbd,Pbs,Pbb,选择Xs将Ps划分为Psd,Pss,Psb等 ,在其中选择每个x,以产生有关应用于它的集合的最大信息。 当子集的熵为零时,递归过程终止。 这意味着该子集中的所有p具有相同的Kp值,即它们要么全部都是角,要么全部是非角。 由于K是数据的精确函数,因此可以保证发生这种情况。 总而言之,此过程创建了一个决策树,该树可以正确分类训练集中看到的所有角,因此(近似)正确地体现了所选FAST角检测器的规则。
在某些情况下,三个子树中的两个可能是相同的。在这种情况下,将分隔它们的布尔测试被移除。然后将此决策树转换为C代码,创建一长串嵌套的if-else语句,将其编译并用作角点检测器。对于最高速度的操作,使用配置文件引导的优化来编译代码,该优化允许分支预测和块重排序优化。
为了进一步优化,我们强制xb,xd和xs相等。在这种情况下,测试的第二个像素始终相同。由于是这种情况,因此可以分批执行针对第一像素和第二像素的测试。这允许使用许多高性能微处理器上存在的矢量化指令针对像素带并行执行前两个测试。由于大多数点在两次测试后被拒绝,因此导致速度显着提高。
注意,由于数据包含所有可能角点的不完全覆盖,因此学习到的检测器与分段测试检测器不完全相同。对于FAST-n检测器,可以很容易地包括一个具有低权重的像素的每种可能组合的实例(有316¼43; 046; 721组合),以确保学习到的检测器能够准确地计算段测试标准。

3.3非最大抑制

由于分段测试无法计算角点响应函数,因此非最大抑制无法直接应用于所得特征。 对于给定的n,随着t的增加,检测到的角点数量将减少。 由于n = 9产生最佳的可重复性结果(请参见第6节),因此将不考虑n的变化。 因此,将其定义为t的最大值,将其检测为一个点作为拐角。
决策树分类器可以有效地确定给定值t的像素类别。 像素的类别(例如,对于角为1,对于非角为0)是t的单调递减函数。 因此,我们可以使用等分线有效地找到函数从1变为0的点。该点为我们提供了t的最大值,该点被检测为角。 由于t是离散的,因此这是二进制搜索算法。
决策树分类器可以有效地确定给定值t的像素类别。像素的类别(例如,对于角为1,对于非角为0)是t的单调递减函数。因此,我们可以使用二分法有效地找到函数从1变为0的点。该点为我们提供了t的最大值,该点被检测为角点。由于t是离散的,因此这是二进制搜索算法。
可替代地,可以使用迭代方案。如果环上的像素不在中心t内,则“通过”分段测试。如果足够多的像素失败,则该点将不会被分类为角点。运行检测器,并在所有通过测试的像素中找到它们通过的数量。然后,将阈值增加这些数量中的最小值,然后重新运行检测器。这恰好增加了阈值,以确保通过树采用不同的路径。然后重复此过程,直到检测失败。

由于速度在很大程度上取决于学习的树和特定的处理器体系结构,因此这两种技术都无法比其他技术具有明显的速度优势。非最大抑制是在3 3个蒙版中执行的。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值