用于构建 OpenCV 的 OpenCL 内核错误生成

Posted

技术标签:

【中文标题】用于构建 OpenCV 的 OpenCL 内核错误生成【英文标题】:OpenCL kernels for building OpenCV incorrectly generated 【发布时间】:2014-12-02 05:56:08 【问题描述】:

我在 OS X Yosemite 10.10.1 中使用 CMake-GUI 来构建 OpenCV 3.0-beta 当我在二进制文件夹中生成文件时,我注意到应该自动生成的每个模块的 OpenCL 内核都不完整。 每个模块的 OpenCL 内核(opencl_kernels_MODULENAME.cpp 和 opencl_kernels_MODULENAME.hpp)主要是空的。 这就是我打开内核时其中一个的样子 -

This file is auto-generated. Do not edit!
#include "precomp.hpp" 
#include "opencl_kernels_core.hpp" 
namespace cv

namespace ocl

namespace core


    




这就是每个内核(cpp 和 hpp)的样子(对于其相应的模块) 有人可以帮我吗?老实说,这对我来说毫无意义。 注意:我尝试构建这是 Ubuntu,并且所有这些都正确生成。

【问题讨论】:

你试过 OpenCV 非测试版吗? 【参考方案1】:

我在回答这个问题时几乎迟到了。 但问题是我包含二进制文件的主文件夹的名称中有一个 空格(例如:“ocv bin”)

有趣的是,当我移除那个 空格 后,我可以顺利构建它。

遗憾的是,我从未真正研究过为什么会发生这种情况,因此我无法给出真正的原因。 如果有人阅读本文可以指出正确的方向以找出原因,我将不胜感激。

再次对迟到的回复表示歉意。当您从一个问题转移到下一个问题时,时间过得飞快!

【讨论】:

以上是关于用于构建 OpenCV 的 OpenCL 内核错误生成的主要内容,如果未能解决你的问题,请参考以下文章

如何强制 OpenCL 不重新对齐结构?

OpenCL 内核定义错误 clBuildProgram(CL_BUILD_PROGRAM_FAILURE)?

为啥我的 OpenCL 内核在 nVidia 驱动程序上失败,而不是 Intel(可能的驱动程序错误)?

opencv3.x与opencl

用于 OpenCL 本地阵列访问的 LLVM-IR GEP

使用 OpenCL 的 RPI GPU 糟糕的性能