c++ - 如果我使用UMat并在opencv中关闭GPU处理,速度会有所不同吗?

标签 c++ opencv opencl opencv3.0

假设我有一个用C++编写并使用Mat来保存图像的代码。
我想将所有Mats更改为UMat,以便应用程序也可以在GPU和CPU上运行(如果我通过调用ocl::setUseOpenCL(false);来关闭GPU处理)
但是我想知道是否会发生性能变化?
因此,在夏季,如果我有使用Mat的代码,并且将所有Mats更改为UMats,那么性能会有什么区别(当不在GPU上运行时)吗?
编辑1
为了澄清问题的范围,让我改写一下:
为什么不使用GPU而不用uMat代替Mat?

最佳答案

使用UMat时,opencv使用透明API使用附加的硬件。因此,通过关闭GPU处理,您不应期望加速。

关于c++ - 如果我使用UMat并在opencv中关闭GPU处理,速度会有所不同吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30975023/

相关文章:

c++ - 在代码中包含大量常量数据是一种不好的做法吗?

c++ - Vector<Vec3b> 与 Vector<int> 在 OpenCV 中的区别

image - OpenCL 工作组是否同时执行?

c++ - OpenCL EXC_BAD_ACCESS(代码=1,地址=0xc00)

c++ - OpenCL C/C++ 动态绑定(bind)库(win32 及更多)

c++ - Qt qml应用增加内存使用

c++ - 旋转矩阵的方向 vector

c++ - 初始化列表中的类对象数组

Opencv Mat乘以常量运算保护溢出?

c++ - 无法使用 opencv2.3 imread 读取图像