OpenCV 4.10.0
开源计算机视觉库
|
#include <opencv2/core/ocl.hpp>
公共成员函数 | |
Kernel () CV_NOEXCEPT | |
Kernel (const char *kname, const Program &prog) | |
Kernel (const char *kname, const ProgramSource &prog, const String &buildopts=String(), String *errmsg=0) | |
Kernel (const Kernel &k) | |
Kernel (Kernel &&k) CV_NOEXCEPT | |
~Kernel () | |
template<typename... _Tps> | |
Kernel & | args (const _Tps &... kernel_args) |
设置 OpenCL Kernel 参数。避免直接使用 set(i, ...) 方法。 | |
bool | compileWorkGroupSize (size_t wsz[]) const |
bool | create (const char *kname, const Program &prog) |
bool | create (const char *kname, const ProgramSource &prog, const String &buildopts, String *errmsg=0) |
bool | empty () const |
size_t | localMemSize () const |
Kernel & | operator= (const Kernel &k) |
Kernel & | operator= (Kernel &&k) CV_NOEXCEPT |
size_t | preferedWorkGroupSizeMultiple () const |
void * | ptr () const |
bool | run (int dims, size_t globalsize[], size_t localsize[], bool sync, const Queue &q=Queue()) |
运行 OpenCL 内核(globalsize 值可能会被调整) | |
bool | run_ (int dims, size_t globalsize[], size_t localsize[], bool sync, const Queue &q=Queue()) |
运行 OpenCL 内核。 | |
int64 | runProfiling (int dims, size_t globalsize[], size_t localsize[], const Queue &q=Queue()) |
类似于同步 run_() 调用,并返回内核执行时间。 | |
bool | runTask (bool sync, const Queue &q=Queue()) |
template<typename _Tp > | |
int | set (int i, const _Tp &value) |
int | set (int i, const Image2D &image2D) |
int | set (int i, const KernelArg &arg) |
int | set (int i, const UMat &m) |
int | set (int i, const void *value, size_t sz) |
size_t | workGroupSize () const |
受保护成员函数 | |
template<typename _Tp0 > | |
int | set_args_ (int i, const _Tp0 &a0) |
template<typename _Tp0 , typename... _Tps> | |
int | set_args_ (int i, const _Tp0 &a0, const _Tps &... rest_args) |
受保护属性 | |
Impl * | p |
cv::ocl::Kernel::Kernel | ( | ) |
cv::ocl::Kernel::Kernel | ( | const char * | kname, |
const Program & | prog | ||
) |
cv::ocl::Kernel::Kernel | ( | const char * | kname, |
const ProgramSource & | prog, | ||
const String & | buildopts = String() , |
||
String * | errmsg = 0 |
||
) |
cv::ocl::Kernel::~Kernel | ( | ) |
cv::ocl::Kernel::Kernel | ( | const Kernel & | k | ) |
cv::ocl::Kernel::Kernel | ( | Kernel && | k | ) |
|
inline |
设置 OpenCL Kernel 参数。避免直接使用 set(i, ...) 方法。
bool cv::ocl::Kernel::compileWorkGroupSize | ( | size_t | wsz[] | ) | const |
bool cv::ocl::Kernel::create | ( | const char * | kname, |
const Program & | prog | ||
) |
bool cv::ocl::Kernel::create | ( | const char * | kname, |
const ProgramSource & | prog, | ||
const String & | buildopts, | ||
String * | errmsg = 0 |
||
) |
bool cv::ocl::Kernel::empty | ( | ) | const |
size_t cv::ocl::Kernel::localMemSize | ( | ) | const |
size_t cv::ocl::Kernel::preferedWorkGroupSizeMultiple | ( | ) | const |
void * cv::ocl::Kernel::ptr | ( | ) | const |
bool cv::ocl::Kernel::run | ( | int | dims, |
size_t | globalsize[], | ||
size_t | localsize[], | ||
bool | sync, | ||
const Queue & | q = Queue() |
||
) |
运行 OpenCL 内核(globalsize 值可能会被调整)
dims | 工作问题维度。它是 globalsize 和 localsize 的长度。可以是 1、2 或 3。 |
globalsize | 每个维度的工作项。它不是传递给 OpenCL 的最终 globalsize。每个维度将调整为最接近 localsize 中对应值的可整除整数。如果 localsize 为 NULL,它仍然会根据 dims 进行调整。调整后的值大于或等于原始值。 |
localsize | 每个维度的工作组大小。 |
sync | 指定是否在返回之前等待 OpenCL 计算完成。 |
q | 命令队列 |
bool cv::ocl::Kernel::run_ | ( | int | dims, |
size_t | globalsize[], | ||
size_t | localsize[], | ||
bool | sync, | ||
const Queue & | q = Queue() |
||
) |
运行 OpenCL 内核。
dims | 工作问题维度。它是 globalsize 和 localsize 的长度。可以是 1、2 或 3。 |
globalsize | 每个维度的工作项。此值将不经修改传递给 OpenCL。 |
localsize | 每个维度的工作组大小。 |
sync | 指定是否在返回之前等待 OpenCL 计算完成。 |
q | 命令队列 |
int cv::ocl::Kernel::set | ( | int | i, |
const Image2D & | image2D | ||
) |
int cv::ocl::Kernel::set | ( | int | i, |
const KernelArg & | arg | ||
) |
int cv::ocl::Kernel::set | ( | int | i, |
const UMat & | m | ||
) |
int cv::ocl::Kernel::set | ( | int | i, |
const void * | value, | ||
size_t | sz | ||
) |
|
inlineprotected |
|
inlineprotected |
size_t cv::ocl::Kernel::workGroupSize | ( | ) | const |
|
protected |