有彩色图像的 SURF_CUDA 实现吗?

Is there a SURF_CUDA implementation for colored images?

最近开始使用 OpenCV,尝试使用 SURF 算法,该算法在 CPU 上非常慢,并且不适用于 GPU 上的彩色图像(有一个检查类型==[=17 的断言=]), 并将图像转换为灰度会产生一些非常糟糕的结果。

我想知道 OpenCV 中的 gpu 是否有彩色实现,或者其他地方,或者是否有一些有点棘手的解决方法,比如在所有 3 个通道上执行算法然后神奇地合并它们?

谢谢。

OpenCV 的非 GPU 版本的 SURF 中没有对彩色图像进行特殊处理; code 显示如果它获得具有多个通道的图像,它只会调用 cvtColor(img, img, COLOR_BGR2GRAY)

您可以尝试 converting the image to HSV and using one or more of the H, S, and/or V channels. More discussion at this question