OpenCV  5.0.0alpha
Open Source Computer Vision
Loading...
Searching...
No Matches
OpenCL support

Detailed Description

Classes

class  cv::BufferPoolController
 
class  cv::ocl::Context
 
class  cv::ocl::Device
 
class  cv::ocl::Image2D
 
class  cv::ocl::Kernel
 
class  cv::ocl::KernelArg
 
class  cv::ocl::OpenCLExecutionContext
 
class  cv::ocl::OpenCLExecutionContextScope
 
class  cv::ocl::Platform
 
class  cv::ocl::PlatformInfo
 
class  cv::ocl::Program
 
class  cv::ocl::ProgramSource
 
class  cv::ocl::Queue
 
class  cv::ocl::Timer
 

Enumerations

enum  cv::ocl::OclVectorStrategy {
  cv::ocl::OCL_VECTOR_OWN = 0 ,
  cv::ocl::OCL_VECTOR_MAX = 1 ,
  cv::ocl::OCL_VECTOR_DEFAULT = OCL_VECTOR_OWN
}
 

Functions

void cv::ocl::attachContext (const String &platformName, void *platformID, void *context, void *deviceID)
 Attaches OpenCL context to OpenCV.
 
void cv::ocl::buildOptionsAddMatrixDescription (String &buildOptions, const String &name, InputArray _m)
 
int cv::ocl::checkOptimalVectorWidth (const int *vectorWidths, InputArray src1, InputArray src2=noArray(), InputArray src3=noArray(), InputArray src4=noArray(), InputArray src5=noArray(), InputArray src6=noArray(), InputArray src7=noArray(), InputArray src8=noArray(), InputArray src9=noArray(), OclVectorStrategy strat=OCL_VECTOR_DEFAULT)
 
void cv::ocl::convertFromBuffer (void *cl_mem_buffer, size_t step, int rows, int cols, int type, UMat &dst)
 Convert OpenCL buffer to UMat.
 
void cv::ocl::convertFromImage (void *cl_mem_image, UMat &dst)
 Convert OpenCL image2d_t to UMat.
 
const char * cv::ocl::convertTypeStr (int sdepth, int ddepth, int cn, char *buf)
 
const char * cv::ocl::convertTypeStr (int sdepth, int ddepth, int cn, char *buf, size_t buf_size)
 
void cv::ocl::finish ()
 
MatAllocatorcv::ocl::getOpenCLAllocator ()
 
const char * cv::ocl::getOpenCLErrorString (int errorCode)
 
void cv::ocl::getPlatfomsInfo (std::vector< PlatformInfo > &platform_info)
 
bool cv::ocl::haveAmdBlas ()
 
bool cv::ocl::haveAmdFft ()
 
bool cv::ocl::haveOpenCL ()
 
bool cv::ocl::haveSVM ()
 
void cv::ocl::initializeContextFromHandle (Context &ctx, void *platform, void *context, void *device)
 
String cv::ocl::kernelToStr (InputArray _kernel, int ddepth=-1, const char *name=NULL)
 
const char * cv::ocl::memopTypeToStr (int t)
 
int cv::ocl::predictOptimalVectorWidth (InputArray src1, InputArray src2=noArray(), InputArray src3=noArray(), InputArray src4=noArray(), InputArray src5=noArray(), InputArray src6=noArray(), InputArray src7=noArray(), InputArray src8=noArray(), InputArray src9=noArray(), OclVectorStrategy strat=OCL_VECTOR_DEFAULT)
 
int cv::ocl::predictOptimalVectorWidthMax (InputArray src1, InputArray src2=noArray(), InputArray src3=noArray(), InputArray src4=noArray(), InputArray src5=noArray(), InputArray src6=noArray(), InputArray src7=noArray(), InputArray src8=noArray(), InputArray src9=noArray())
 
void cv::ocl::setUseOpenCL (bool flag)
 
const char * cv::ocl::typeToStr (int t)
 
bool cv::ocl::useOpenCL ()
 
const char * cv::ocl::vecopTypeToStr (int t)
 

Enumeration Type Documentation

◆ OclVectorStrategy

#include <opencv2/core/ocl.hpp>

Enumerator
OCL_VECTOR_OWN 
Python: cv.ocl.OCL_VECTOR_OWN
OCL_VECTOR_MAX 
Python: cv.ocl.OCL_VECTOR_MAX
OCL_VECTOR_DEFAULT 
Python: cv.ocl.OCL_VECTOR_DEFAULT

Function Documentation

◆ attachContext()

void cv::ocl::attachContext ( const String & platformName,
void * platformID,
void * context,
void * deviceID )

#include <opencv2/core/ocl.hpp>

Attaches OpenCL context to OpenCV.

Note
OpenCV will check if available OpenCL platform has platformName name, then assign context to OpenCV and call clRetainContext function. The deviceID device will be used as target device and new command queue will be created.
Parameters
platformNamename of OpenCL platform to attach, this string is used to check if platform is available to OpenCV at runtime
platformIDID of platform attached context was created for
contextOpenCL context to be attached to OpenCV
deviceIDID of device, must be created from attached context

◆ buildOptionsAddMatrixDescription()

void cv::ocl::buildOptionsAddMatrixDescription ( String & buildOptions,
const String & name,
InputArray _m )

◆ checkOptimalVectorWidth()

int cv::ocl::checkOptimalVectorWidth ( const int * vectorWidths,
InputArray src1,
InputArray src2 = noArray(),
InputArray src3 = noArray(),
InputArray src4 = noArray(),
InputArray src5 = noArray(),
InputArray src6 = noArray(),
InputArray src7 = noArray(),
InputArray src8 = noArray(),
InputArray src9 = noArray(),
OclVectorStrategy strat = OCL_VECTOR_DEFAULT )

◆ convertFromBuffer()

void cv::ocl::convertFromBuffer ( void * cl_mem_buffer,
size_t step,
int rows,
int cols,
int type,
UMat & dst )

#include <opencv2/core/ocl.hpp>

Convert OpenCL buffer to UMat.

Note
OpenCL buffer (cl_mem_buffer) should contain 2D image data, compatible with OpenCV. Memory content is not copied from clBuffer to UMat. Instead, buffer handle assigned to UMat and clRetainMemObject is called.
Parameters
cl_mem_buffersource clBuffer handle
stepnum of bytes in single row
rowsnumber of rows
colsnumber of cols
typeOpenCV type of image
dstdestination UMat

◆ convertFromImage()

void cv::ocl::convertFromImage ( void * cl_mem_image,
UMat & dst )

#include <opencv2/core/ocl.hpp>

Convert OpenCL image2d_t to UMat.

Note
OpenCL image2d_t (cl_mem_image), should be compatible with OpenCV UMat formats. Memory content is copied from image to UMat with clEnqueueCopyImageToBuffer function.
Parameters
cl_mem_imagesource image2d_t handle
dstdestination UMat

◆ convertTypeStr() [1/2]

const char * cv::ocl::convertTypeStr ( int sdepth,
int ddepth,
int cn,
char * buf )

◆ convertTypeStr() [2/2]

const char * cv::ocl::convertTypeStr ( int sdepth,
int ddepth,
int cn,
char * buf,
size_t buf_size )

◆ finish()

void cv::ocl::finish ( )
Python:
cv.ocl.finish() -> None

◆ getOpenCLAllocator()

MatAllocator * cv::ocl::getOpenCLAllocator ( )

#include <opencv2/core/ocl.hpp>

Here is the call graph for this function:

◆ getOpenCLErrorString()

const char * cv::ocl::getOpenCLErrorString ( int errorCode)

◆ getPlatfomsInfo()

void cv::ocl::getPlatfomsInfo ( std::vector< PlatformInfo > & platform_info)

◆ haveAmdBlas()

bool cv::ocl::haveAmdBlas ( )
Python:
cv.ocl.haveAmdBlas() -> retval

◆ haveAmdFft()

bool cv::ocl::haveAmdFft ( )
Python:
cv.ocl.haveAmdFft() -> retval

◆ haveOpenCL()

bool cv::ocl::haveOpenCL ( )
Python:
cv.ocl.haveOpenCL() -> retval

◆ haveSVM()

bool cv::ocl::haveSVM ( )

◆ initializeContextFromHandle()

void cv::ocl::initializeContextFromHandle ( Context & ctx,
void * platform,
void * context,
void * device )

◆ kernelToStr()

String cv::ocl::kernelToStr ( InputArray _kernel,
int ddepth = -1,
const char * name = NULL )

◆ memopTypeToStr()

const char * cv::ocl::memopTypeToStr ( int t)

◆ predictOptimalVectorWidth()

int cv::ocl::predictOptimalVectorWidth ( InputArray src1,
InputArray src2 = noArray(),
InputArray src3 = noArray(),
InputArray src4 = noArray(),
InputArray src5 = noArray(),
InputArray src6 = noArray(),
InputArray src7 = noArray(),
InputArray src8 = noArray(),
InputArray src9 = noArray(),
OclVectorStrategy strat = OCL_VECTOR_DEFAULT )

◆ predictOptimalVectorWidthMax()

int cv::ocl::predictOptimalVectorWidthMax ( InputArray src1,
InputArray src2 = noArray(),
InputArray src3 = noArray(),
InputArray src4 = noArray(),
InputArray src5 = noArray(),
InputArray src6 = noArray(),
InputArray src7 = noArray(),
InputArray src8 = noArray(),
InputArray src9 = noArray() )

◆ setUseOpenCL()

void cv::ocl::setUseOpenCL ( bool flag)
Python:
cv.ocl.setUseOpenCL(flag) -> None

◆ typeToStr()

const char * cv::ocl::typeToStr ( int t)

◆ useOpenCL()

bool cv::ocl::useOpenCL ( )
Python:
cv.ocl.useOpenCL() -> retval

◆ vecopTypeToStr()

const char * cv::ocl::vecopTypeToStr ( int t)