Feature detection |
---|
Edge detection |
Corner detection |
Blob detection |
Ridge detection |
Hough transform |
Structure tensor |
Affine invariant feature detection |
Feature description |
Scale space |
Part of a series on |
Machine learning and data mining |
---|
在计算机视觉和图像处理中,特征是关于图像内容的信息片段;通常是关于图像某一区域是否具有特定属性。特征可以是图像中的特定结构,如点、边缘或对象。特征也可能是对图像应用的一般邻域操作或特征检测的结果。其他特征的例子包括与图像序列中的运动相关,或以曲线或不同图像区域之间的边界定义的形状。
更广泛地说,特征是与特定应用相关的计算任务解决所需的任何信息片段。这与机器学习和普遍的模式识别中的feature含义相同,尽管图像处理拥有非常复杂的特征集合。特征概念非常通用,特定计算机视觉系统中的特征选择可能高度依赖于手头的具体问题。
定义
对于构成特征的具体内容并没有通用或精确的定义,确切的定义通常取决于问题或应用类型。尽管如此,特征通常被定义为图像中的一个“有趣”部分,特征被用作许多计算机视觉算法的起点。
由于特征被用作后续算法的起点和主要原始数据,因此整个算法通常只会和其特征检测器一样好。因此,特征检测器的理想属性是可重复性: 即在同一场景的两个或更多不同图像中是否会检测到相同的特征。
特征检测是一种低级图像处理操作。也就是说,它通常作为对图像的第一个操作,并检查每个像素以查看该像素是否存在特征。如果这是更大算法的一部分,则该算法通常只会检查特征区域的图像。作为特征检测的内置先决条件,输入图像通常由高斯核在尺度空间表示中平滑处理,然后计算一个或几个特征图像,通常以局部图像导数操作的形式表达。
偶尔,当特征检测是计算代价高且有时间限制时,可能会使用更高级别的算法来指导特征检测阶段,以便仅在图像的某些部分搜索特征。
许多计算机视觉算法都将特征检测作为初始步骤,因此开发了大量的特征检测器。这些检测器在检测的特征类型、计算复杂性和可重复性方面有很大的不同。
当特征以应用于图像的局部邻域操作定义时,通常称为特征提取,可以区分产生局部决策的特征检测方法(在给定图像点是否存在给定类型的特征)和产生非二进制数据结果的方法。当检测到的特征相对稀疏时,这种区别变得相关。尽管做出了局部决策,特征检测步骤的输出不必是二进制图像。结果通常以检测到特征的图像点的一组(连接或未连接)坐标表示,有时具有亚像素精度。
当在没有局部决策的情况下进行特征提取时,结果通常被称为特征图像。因此,特征图像可以看作是图像,因为它是原始图像相同的空间(或时间)变量的函数,但像素值包含关于图像特征的信息,而不是强度或颜色。这意味着特征图像可以以与由图像传感器生成的普通图像类似的方式进行处理。特征图像也常作为特征检测算法的一部分进行计算。
特征向量和特征空间
在某些应用中,仅提取一种类型的特征以从图像数据中获取相关信息是不够的。相反,需要提取两种或更多不同的特征,从而在每个图像点产生两个或更多特征描述符。一种常见的做法是将所有这些描述符提供的信息作为一个单一向量的元素进行组织,通常称为特征向量。所有可能的特征向量集合构成一个特征空间。[1]
当每个图像点要被分类为属于特定类别时,特征向量的一个常见示例出现。假设每个图像点都有一个基于适当特征集的对应特征向量,意味着每个类别在相应的特征空间中被良好分隔,每个图像点的分类可以使用标准的分类方法完成。
当将基于神经网络的处理应用于图像时,就会出现另一个相关的例子。馈送至神经网络的输入数据通常以每个图像点的特征向量的形式给出,其中向量是从图像数据中提取的几种不同特征构成的。在学习阶段,网络可以自行找出不同特征组合对解决手头问题的有用性。
类型
边缘
边缘是图像区域之间存在边界(或边缘)的点。一般来说,边缘可以是几乎任意形状,并可能包括交点。在实践中,边缘通常定义为图像中具有强烈梯度幅度的点集。此外,一些常见算法会将高梯度点串联起来,形成对边缘的更完整描述。这些算法通常对边缘的属性,如形状、平滑度和梯度值,施加一定的限制。
在局部,边缘具有一维结构。
角点 / 兴趣点
“角点”和“兴趣点”这两个术语有时可互换使用,指的是图像中具有局部二维结构的点状特征。之所以称之为“角点”,是因为早期算法首先进行了边缘检测,然后分析边缘以找到快速方向变化(角点)。这些算法随后发展到不再需要显式的边缘检测,例如通过寻找图像梯度中的高曲率。随后注意到所谓的角点也被检测到图像的非传统角点部分(例如,暗背景上的小亮点可能被检测到)。这些点通常被称为兴趣点,但出于传统,仍使用“角点”一词, May 2020 {{citation}}
: Cite has empty unknown parameters: |cat2=
, |cat-date2=
, |cat3=
, and |cat-date3=
(help); Missing or empty |title=
(help); Unknown parameter |cat-date=
ignored (help); Unknown parameter |cat=
ignored (help)[citation needed]。
斑点 / 兴趣区域点
与更倾向于点状的角点相对,斑点以区域的形式提供了图像结构的补充描述。然而,斑点描述符通常包含一个首选点(算子响应的局部最大值或重心),这意味着许多斑点检测器也可视为兴趣点算子。斑点检测器可以检测图像中过于平滑而无法被角点检测器检测到的区域。
考虑缩小图像然后进行角点检测。检测器将响应在缩小图像中锐利的点,但在原始图像中可能是平滑的。在这一点上,角点检测器和斑点检测器之间的区别变得有些模糊。在很大程度上,可以通过包含适当的尺度概念来弥补这种区别。然而,由于它们对不同尺度下不同类型图像结构的响应特性,LoG和DoH 斑点检测器也在角点检测的文章中提及。
脊线
对于细长物体来说,“脊线”的概念是一个自然的工具。从灰度图像中计算出的脊线描述符可以被视为中轴的一个泛化。从实际的角度来看,脊线可以被认为是代表对称轴的一维曲线,并且每个脊点都有与之相关的局部脊宽属性。不幸的是,从一般类别的灰度图像中提取脊线特征在算法上比提取边缘、角点或斑点特征要难。尽管如此,脊线描述符经常用于航拍图像中的道路提取和医学图像中的血管提取——参见脊线检测。
检测
特征检测包括用于计算图像信息的抽象和在每个图像点做出局部决策的方法,判断该点是否存在给定类型的图像特征。结果特征将是图像域的子集,通常以孤立点、连续曲线或连接区域的形式出现。
特征提取有时在多个尺度上进行。这些方法之一是尺度不变特征变换(SIFT)。
特征检测器 | 边缘 | 角点 | 斑点 | 脊线 |
---|---|---|---|---|
Canny[3] | Yes | No | No | No |
Sobel | Yes | No | No | No |
Harris & Stephens / Plessey[4] | Yes | Yes | No | No |
SUSAN[5] | Yes | Yes | No | No |
Shi & Tomasi[6] | No | Yes | No | No |
Level curve curvature[7] | No | Yes | No | No |
FAST[8] | No | Yes | Yes | No |
Laplacian of Gaussian[7] | No | Yes | Yes | No |
Difference of Gaussians[9][10] | No | Yes | Yes | No |
Determinant of Hessian[7] | No | Yes | Yes | No |
Hessian strength feature measures[11][12] | No | Yes | Yes | No |
MSER[13] | No | No | Yes | No |
主曲率脊线[14][15][16] | No | No | No | Yes |
灰度斑点[17] | No | No | Yes | No |
特征提取
一旦检测到特征,就可以提取特征周围的局部图像块。这种提取可能涉及相当大量的图像处理。结果称为特征描述符或特征向量。在特征描述方法中,可以提到N-jets和局部直方图(参见尺度不变特征转换中的一个局部直方图描述符示例)。除了这些属性信息外,特征检测步骤本身还可能提供补充属性,例如边缘检测中的边缘方向和梯度幅度,以及斑点检测中的斑点极性和强度。
低层级
曲率
- 边缘方向,强度变化,自相关。
图像运动
基于形状
灵活方法
- 可变形,参数化形状
- 活动轮廓(蛇形)
表示
图像数据中特定结构定义的特定图像特征通常可以以不同方式表示。例如,边缘可以表示为每个图像点中的布尔变量,描述该点是否存在边缘。或者,我们可以使用提供确定性度量的表示来代替布尔陈述边缘的存在,并将此信息与关于边缘的方向的信息结合起来。同样,特定区域的颜色可以用平均颜色(三个标量)或颜色直方图(三个函数)来表示。
在设计计算机视觉系统或计算机视觉算法时,特征表示的选择可能是一个关键问题。在某些情况下,可能需要更高级别的特征描述细节来解决问题,但这需要处理更多的数据和更复杂的处理。以下是选择合适表示时相关的一些因素。在这次讨论中,一个特征表示的实例被称为模板:Visible anchor,或简称描述符。
确定性或信心
图像特征的两个例子是局部边缘方向和图像序列中的局部速度。在方向的情况下,如果相应邻域中存在多个边缘,此特征的值可能或多或少未定义。如果相应的图像区域不包含任何空间变化,则局部速度未定义。作为这一观察的结果,使用包含与特征值相关陈述的确定性或信心度量的特征表示可能是相关的。否则,通常情况下,同一描述符用于表示低确定性的特征值和接近零的特征值,导致对此描述符解释的歧义。根据应用程序的不同,这种歧义可能是可接受的,也可能不可接受。
特别是,如果要在后续处理中使用特征图像,使用包含关于确定性或信心的信息的特征表示可能是个好主意。这使得可以从几个描述符中计算出新的特征描述符,例如在同一图像点但在不同尺度上计算,或者从不同但相邻点计算,按照从相应确定性派生的权重的加权平均值计算。在最简单的情况下,相应的计算可以实现为特征图像的低通滤波。一般来说,生成的特征图像将对噪声更稳定。
可平均性
除了在表示中包含确定性度量外,相应特征值的表示本身可能适合于进行平均操作,也可能不适合。在实践中,大多数特征表示可以进行平均,但只有在某些情况下,结果描述符才能正确地解释为一个特征值。这样的表示被称为可平均的。
例如,如果边缘的方向以角度的形式表示,这种表示必须在角度从其最大值转到最小值的地方有一个不连续性。因此,可能会出现两个相似的方向被角度表示,其平均值并不接近任何一个原始角度,因此,这种表示不是可平均的。还有其他表示边缘方向的方法,例如结构张量,这些方法是可平均的。
另一个例子涉及到运动,在某些情况下,只能提取与某个边缘相关的正常速度。如果提取了两个这样的特征,并且它们可以假设指的是同一真实速度,这个速度不是通过正常速度向量的平均值给出的。因此,正常速度向量不是可平均的。相反,存在其他表示运动的方法,使用矩阵或张量,这些方法可以通过对正常速度描述符的平均操作来给出真实速度。, January 2022 {{citation}}
: Cite has empty unknown parameters: |cat2=
, |cat-date2=
, |cat3=
, and |cat-date3=
(help); Missing or empty |title=
(help); Unknown parameter |cat-date=
ignored (help); Unknown parameter |cat=
ignored (help)[citation needed]
匹配
在每幅图像中检测到的特征可以跨多幅图像进行匹配,以建立对应特征,如对应点。
该算法基于比较和分析参考图像和目标图像之间的点对应关系。如果杂乱场景的任何部分与阈值以上的对应关系共享,则该杂乱场景图像的那部分被定位并被认为包含参考对象。[18]
另行参见
引用
- ↑ Scott E Umbaugh (27 January 2005). Computer Imaging: Digital Image Analysis and Processing. CRC Press. ISBN 978-0-8493-2919-7.
- ↑ Ferrie, C., & Kaiser, S. (2019). Neural Networks for Babies. Sourcebooks. ISBN 1492671207.
{{cite book}}
: CS1 maint: multiple names: authors list (link) - ↑ Canny, J. (1986). "A Computational Approach To Edge Detection". IEEE Transactions on Pattern Analysis and Machine Intelligence. 8 (6): 679–714. doi:10.1109/TPAMI.1986.4767851. PMID 21869365. S2CID 13284142.
- ↑ C. Harris; M. Stephens (1988). "A combined corner and edge detector" (PDF). Proceedings of the 4th Alvey Vision Conference. pp. 147–151.
- ↑ S. M. Smith; J. M. Brady (May 1997). "SUSAN - a new approach to low level image processing". International Journal of Computer Vision. 23 (1): 45–78. doi:10.1023/A:1007963824710. S2CID 15033310.
- ↑ J. Shi; C. Tomasi (June 1994). "Good Features to Track". 9th IEEE Conference on Computer Vision and Pattern Recognition. Springer.
- ↑ 7.0 7.1 7.2 T. Lindeberg (1998). "Feature detection with automatic scale selection" (abstract). International Journal of Computer Vision. 30 (2): 77–116. doi:10.1023/A:1008045108935. S2CID 723210.
- ↑ E. Rosten; T. Drummond (2006). "Machine learning for high-speed corner detection". European Conference on Computer Vision. Springer. pp. 430–443. CiteSeerX 10.1.1.60.3991. doi:10.1007/11744023_34.
- ↑ J. L. Crowley and A. C. Parker, "A Representation for Shape Based on Peaks and Ridges in the Difference of Low Pass Transform, June 2022
{{citation}}
: Cite has empty unknown parameters:|cat2=
,|cat-date2=
,|cat3=
, and|cat-date3=
(help); Missing or empty|title=
(help); Unknown parameter|cat-date=
ignored (help); Unknown parameter|cat=
ignored (help)[dead link]", IEEE Transactions on PAMI, PAMI 6 (2), pp. 156–170, March 1984. - ↑ D. Lowe (2004). "Distinctive Image Features from Scale-Invariant Keypoints". International Journal of Computer Vision. 60 (2): 91. CiteSeerX 10.1.1.73.2924. doi:10.1023/B:VISI.0000029664.99615.94. S2CID 221242327.
- ↑ T. Lindeberg "Scale selection properties of generalized scale-space interest point detectors", Journal of Mathematical Imaging and Vision, Volume 46, Issue 2, pages 177-210, 2013.
- ↑ T. Lindeberg ``Image matching using generalized scale-space interest points", Journal of Mathematical Imaging and Vision, volume 52, number 1, pages 3-36, 2015.
- ↑ J. Matas; O. Chum; M. Urban; T. Pajdla (2002). "Robust wide baseline stereo from maximally stable extremum regions". British Machine Vision Conference. pp. 384–393.
- ↑ R. Haralick, "数字图像上的脊线和谷线", Computer Vision, Graphics, and Image Processing vol. 22, no. 10, pp. 28–38, 1983年4月.
- ↑ D. Eberly, R. Gardner, B. Morse, S. Pizer, C. Scharlach, 图像分析中的脊线, Journal of Mathematical Imaging and Vision, v. 4 n. 4, pp. 353–373, 1994年12月.
- ↑ T. Lindeberg (1998). "边缘检测和具有自动尺度选择的脊线检测" (abstract). International Journal of Computer Vision. 30 (2): 117–154. doi:10.1023/A:1008097225773. S2CID 207658261.
- ↑ T. Lindeberg (1993). "检测显著的类斑点图像结构及其尺度与尺度空间原始草图:关注焦点的方法" (abstract). International Journal of Computer Vision. 11 (3): 283–318. doi:10.1007/BF01469346. S2CID 11998035.
- ↑ "Object Detection in a Cluttered Scene Using Point Feature Matching - MATLAB & Simulink". www.mathworks.com. Retrieved 2019-07-06.
延伸阅读
- T. Lindeberg (2009). "Scale-space". In Benjamin Wah (ed.). Encyclopedia of Computer Science and Engineering. Vol. IV. John Wiley and Sons. pp. 2495–2504. doi:10.1002/9780470050118.ecse609. ISBN 978-0470050118. (summary and review of a number of feature detectors formulated based on a scale-space operations)