【发布时间】:2014-10-22 13:40:25
【问题描述】:
我已经使用一些 OpenCV 有一段时间了,我才刚刚开始深入研究多线程方面,尽管我在让以下代码工作时遇到了一些困难:
#include "opencv2/ocl/ocl.hpp"
int main(int argc, char *argv[])
{
cv::ocl::DevicesInfo devices;
cv::ocl::getOpenCLDevices(devices, cv::ocl::CVCL_DEVICE_TYPE_CPU);
return 0;
}
返回
OpenCV 错误:initializeOpenCLDevices 中的 Gpu API 调用 (-1001),文件 /path/to/opencv/src/opencv-2.4.9/modules/ocl/src/cl_context.cpp,第 455 行
我确实使用 OCL 构建了 OpenCV,如果我进入我的构建目录,它有 lib 文件:libopencv_ocl.so 等,我检查了 ldd 以确保可执行文件正确链接。
注意:当我尝试时会发生同样的事情:
cv::ocl::getOpenCLPlatforms
功能。
提前致谢
【问题讨论】:
-
错误
-1001表示OpenCL ICD 加载程序未能在您的系统上找到任何OpenCL 平台。您使用的是哪个 OpenCL 平台? -
如何检查?我通过 ubuntu synaptic 包管理器安装了 OpenCL
-
你安装了哪个包?那可能只是 OpenCL ICD 加载器。您实际上需要一些真正的 OpenCL 平台,例如来自英伟达、英特尔或 AMD。您要在什么设备上运行?
-
英特尔让我开始,然后我想使用 NVidia
-
我安装的包是:opencl、opencl-headers、nvidia-opencl-dev 和 python-pyopencl 我看不到英特尔的任何其他包
标签: opencv computer-vision opencl ocl