是否有在 GPU 上实现的检测器 scale/rotate-invariant?

Are there any detectors which implemented on GPU and are scale/rotate-invariant?

OpenCV 2.4.9.0 中已知的是这些特征检测器:SIFT, SURF, BRISK, FREAK, STAR, FAST, ORB

所有这些都在 CPU 上实现,但只有 FASTORB 在 GPU 上实现。 http://docs.opencv.org/genindex.html

众所周知,有些是 scale/rotate-invariant,但有些不是:Are there any fast alternatives to SURF and SIFT for scale-invariant feature extraction?

这些是尺度不变和旋转不变的:

但是这些不是尺度不变的,也不是旋转不变的:

是否有在 GPU 上实现的检测器scale/rotate-invariant?

或者会在 GPU 或 OpenCL 上的 OpenCV 3.0 中添加?

实际上,SURF 是 OpenCV 中唯一 scale/rotate-invariant 具有 GPU 支持的特征检测器。

在 OpenCV 3.0 中 FAST and ORBhave got OCL support and moreover, these two (FAST and ORB) 已经获得 CUDA 支持。

OCL/CUDA支持SURF has been already mentioned in the comments of your question, but it is only a contribution to OpenCV and this is how OpenCV's developers about opencv_contrib

New modules quite often do not have stable API, and they are not well-tested. Thus, they shouldn't be released as a part of official OpenCV distribution, since the library maintains binary compatibility, and tries to provide decent performance and stability.

根据我之前的经验,OpenCV对SURF特性的实现要比OpenSURF弱很多。试一试,或者找一些其他的开源实现也是合理的。

p.s.: 据我所知,仍然没有 KAZE/AKAZE.

的 GPU 加速版本

我最近与几位同事使用 CUDA 实现了 AKAZE,如果您熟悉原始库,那么使用它应该没有问题,因为我们尊重 API。您可以在此处找到当前版本:

https://github.com/nbergst/akaze