opencv 是否有在GPU上实现的尺度/旋转不变的检测器?

yhuiod9q  于 2023-04-21  发布在  其他
关注(0)|答案(2)|浏览(217)

如OpenCV www.example.com中所知2.4.9.0,这些特征检测器:SIFT, SURF, BRISK, FREAK, STAR, FAST, ORB .

所有这些都在CPU上实现,但只有FASTORB在GPU上实现。
众所周知,有些是缩放/旋转不变的,但有些不是:Are there any fast alternatives to SURF and SIFT for scale-invariant feature extraction?
它们是缩放不变和旋转不变:

  • SIFT
  • SURF
  • BRISK
  • FREAK
  • 星星

但它们不是尺度不变的,也不是旋转不变的:

  • 快速
  • ORB

是否有在GPU上实现的尺度/旋转不变的检测器?
或者将在GPU或OpenCL上的OpenCV 3.0中添加?

rbl8hiat

rbl8hiat1#

实际上,SURF是OpenCV中唯一支持GPU的缩放/旋转不变特征检测器。
在OpenCV 3.0中,FAST和ORB已经获得了OCL支持,而且这两个(FAST和ORB)已经获得了CUDA支持。
在您的问题的评论中已经提到了SURF的OCL/CUDA支持,但它只是对OpenCV的贡献,这是OpenCV的开发人员对opencv_contrib的看法:
新的模块通常没有稳定的API,也没有经过很好的测试。因此,它们不应该作为官方OpenCV发行版的一部分发布,因为该库保持了二进制兼容性,并试图提供良好的性能和稳定性。
根据我以前的经验,OpenCV的SURF功能实现比OpenSURF弱得多。
附注:据我所知,KAZE/AKAZE还没有GPU加速版本。

1l5u6lss

1l5u6lss2#

我最近和几个同事使用CUDA实现了AKAZE,如果你熟悉原始库,你应该没有问题,因为我们尊重API。你可以在这里找到最新版本:
https://github.com/nbergst/akaze

相关问题