特征检测与描述符提取的区别

Chr*_*s A 46 opencv image-processing feature-extraction computer-vision feature-detection

有谁知道OpenCV 2.3中FeatureDetection和DescriptorExtraction之间的区别?我知道后者是使用DescriptorMatcher进行匹配所必需的.如果是这种情况,FeatureDetection用于什么?

谢谢.

jma*_*tel 95

特征检测

  • 在计算机视觉和图像处理中,特征检测的概念指的是旨在计算图像信息的抽象并在每个图像点处做出局部决策的方法,无论在该点处是否存在给定类型的图像特征.得到的特征将是图像域的子集,通常以孤立点,连续曲线或连接区域的形式.

    特征检测=如何在图像中找到一些有趣的点(特征).(例如:找到一个角落,找到一个模板等等......)

特征提取

  • 在模式识别和图像处理中,特征提取是降维的一种特殊形式.当算法的输入数据太大而无法处理并且怀疑是多余的(大量数据,但信息不多)时,输入数据将被转换为简化的表示集(也称为特征向量) .将输入数据转换为特征集称为特征提取.如果仔细选择提取的特征,则期望特征集将从输入数据中提取相关信息,以便使用该缩减的表示而不是全尺寸输入来执行期望的任务.

    特征提取=如何表示我们发现的有趣点,将它们与图像中的其他有趣点(特征)进行比较.(例如,这一点的局部区域强度​​?点周围区域的局部方向?等等......)

实际示例:您可以找到带有哈里斯角方法的角落,但您可以使用您想要的任何方法来描述它(例如,直方图,HOG,第8邻接中的局部方位)

你可以在这里看到一些更多的信息, 维基百科链接

朱利安,(帮助维基百科:p)


Kev*_*zke 23

两者都是,Feature Detection并且Feature descriptor extraction是其中的一部分Feature based image registration.只有在整个基于特征的图像注册过程的背景下查看它们才能理解它们的工作是有意义的.

基于特征的配准算法

PCL文档中的以下图片显示了这样一个注册管道:

PCL成对注册

  1. 数据采集​​:将输入图像和参考图像输入算法.图像应从略微不同的视点显示相同的场景.

  2. 关键点估计(特征检测):关键点(兴趣点)是点云内具有以下特征的点:

    1. 它有一个清晰的,最好是数学上有根据的定义,
    2. 它在图像空间中有明确的定位,
    3. 利益点周围的局部图像结构在本地信息内容方面很丰富.
      OpenCV附带了几个实现Feature detection,例如:

    图像中的这些突出点非常有用,因为它们的总和表征图像并有助于使其不同部分可区分.

  3. 特征描述符(描述符提取器):在检测到关键点之后,我们继续为每个关键点计算描述符."局部描述符是点的局部邻域的紧凑表示.与描述完整对象或点云的全局描述符相反,局部描述符仅尝试在点周围的局部邻域中类似于形状和外观,因此非常适合于表示它.在匹配方面." (Dirk Holz等人).OpenCV选项:

  4. 对应估计(描述符匹配器):下一个任务是找到两个图像中找到的关键点之间的对应关系.因此,提取的特征被放置在可以有效搜索的结构中(例如kd树).通常,查找所有局部特征描述符并将它们中的每一个与来自另一个图像的对应对应物相匹配就足够了.然而,由于来自类似场景的两个图像不一定具有相同数量的特征描述符,因为一个云可以具有比另一个更多的数据,我们需要运行分离的对应拒绝过程.OpenCV选项:

  5. 通信拒绝:执行通信拒绝的最常用方法之一是使用RANSAC(随机样本共识).

  6. 变换估计:在计算两个图像之间的鲁棒对应之后,Absolute Orientation Algorithm使用a来计算应用于输入图像以匹配参考图像的变换矩阵.有许多不同的算法方法,常见的方法是:奇异值分解(SVD).