4

几周前,我参加了由 NVIDIA 主办的 Arrayfire 网络研讨会,工程师们展示了一些有趣的图表来比较 ArrayFire 库与 OpenCV CPU(1 线程)和 GPU(CUDA)的性能。

HARRIS 关键点检测

哈里斯关键点检测

ORB关键点检测

在此处输入图像描述

我有机会问他们为什么 ArrayFire 加速(通过单线程 CPU 实现)对于大图像会降低。他们回答我说“这是因为 OpenCV CPU 非常有效地处理大规模数据” ——没有提供任何技术细节。

你知道它们可能是什么吗?

4

1 回答 1

4

我是在 ArrayFire 上同时实现 Harris 和 ORB 并实际绘制了您发布的图表的人。使用的图像样本不同,因此它们具有不同的特征和每个特征比率的不同像素。

ORB 和 Harris 的性能取决于图像的像素数和特征。在接下来的几周内,我将尝试收集更多数据并让每个特征的像素比率更加一致,以验证这就是原因。

于 2014-12-30T00:14:00.787 回答