OpenCL 图像对象

图像对象类型有1维图像、1维图像缓冲、1维图像阵列、2维图像、2维图像阵列以及3维图像对象,可以使用如下函数来创建这些类型:

cl_mem clCreateImage(cl_context context,
                          cl_mem_flags flags,
                          const cl_image_format *image_format,
                          const cl_image_desc *image_desc,
                          void *host_ptr,
                          cl_int *errcode_ret)
  • 参数context为即将要创建的图像对象所属的OpenCL上下文。
  • 参数f lag是一个位域,用来指明如何分配及使用将要创建的图像对象,见表5-1。
  • 参数image_format是指向cl_image_format结构的指针,描述了将要创建图像的格式属性。在随后章节中我们会详细讲解cl_imag_format结构的用法。
  • 参数image_desc值指向cl_iamge_desc结构的指针,描述了将要创建图像的类型和维度。
  • 参数host_ptr指向应用可能已分配好空间的图像数据空间。
  • 参数errcode_ret返回函数执行的错误码。

针对不同的图像对象类型,host_ptr所指向的缓冲大小也有最低限制。下表列出了几种图像类型下,host_ptr所指缓冲大小的最低要求。
下表是不同图像类型下host_ptr所指缓冲大小要求。

不同图像类型下host_ptr所指缓冲大小要求

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程