如果您使用OpenCV已有一段时间,那么您应该已经注意到,在大多数情况下,OpenCV都使用CPU,这并不总能保证您所需的性能。为了解决这个问题,OpenCV在2010年增加了一个新模块,该模块使用CUDA提供GPU加速。您可以在下面找到一个展示GPU模块优势的基准测试:
简单列举下本文要交代的几个事情:
-
概述已经支持CUDA的OpenCV模块。
-
看一下cv :: gpu :: GpuMat(cv2.cuda_GpuMat)。
-
了解如何在CPU和GPU之间传输数据。
-
了解如何利用多个GPU。
-
编写一个简单的演示(C ++和Python),以了解OpenCV提供的CUDA API接口并计算我们可以获得的性能提升。
一、支持的模块
据称,尽管并未涵盖所有库的功能,但该模块“仍在继续增长,并正在适应新的计算技术和GPU架构。”
让我们看一下CUDA加速的O