![]() |
OpenCV 4.12.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 kernel(globalsize 值可能會被調整) | |
| bool | run_ (int dims, size_t globalsize[], size_t localsize[], bool sync, const Queue &q=Queue()) |
| 執行 OpenCL kernel。 | |
| int64 | runProfiling (int dims, size_t globalsize[], size_t localsize[], const Queue &q=Queue()) |
| 類似於同步的 run_() 呼叫,並返回 kernel 執行時間。 | |
| 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 |
| Kernel & cv::ocl::Kernel::operator= | ( | Kernel(核心) && | k | ) |
| 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 kernel(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 kernel。
| dims | 工作問題維度。 它是 globalsize 和 localsize 的長度。 它可以是 1、2 或 3。 |
| globalsize | 每個維度的工作項。 此值將傳遞給 OpenCL 而不會更改。 |
| localsize | 每個維度的工作組大小。 |
| sync | 指定是否等待 OpenCL 計算完成後再返回。 |
| q | 命令佇列 |
| int64 cv::ocl::Kernel::runProfiling | ( | int | dims, |
| size_t | globalsize[], | ||
| size_t | localsize[], | ||
| const Queue & | q = Queue() ) |
類似於同步的 run_() 呼叫,並返回 kernel 執行時間。
可以單獨使用 OpenCL 命令佇列(帶有 CL_QUEUE_PROFILING_ENABLE)
| 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 * | 值, | ||
| size_t | sz ) |
|
inlineprotected |
|
inlineprotected |
| size_t cv::ocl::Kernel::workGroupSize | ( | ) | const |
|
保護 |