OpenCV:feature2d 和 imgproc 特征检测算法有什么区别?

OpenCV: what is the difference between feature2d and imgproc feature detection algorithms?

OpenCV 的 imgproc 和 feature2d 模块都具有特征检测功能,但是我没有在任何地方看到任何文本来解释两者之间的区别以及为什么 OpenCV 有两个不同的部分同名。

拜托,有人能解释一下这件事吗?

imgproc中的特征检测基本上是关于几何特征,例如:

  • 角球
  • 圈子

并且与图像处理相关(因此这些函数在imgproc中)。

features2d中的特征检测是关于局部特征和描述符(如ORB、AKAZE、MSER、...),与计算机视觉机器学习(分类)领域。您可以使用 Harris 角点(在 imgproc 中)作为局部特征的关键点,但这不是找到关键点的唯一方法(例如参见 MSER)。

因此,名称 feature 指的是不同种类的功能,并且在不同的模块中也是如此。