clCreateImage2D – 加载RGB图像

我正在尝试使用clCreateImage2D将OpenCV图像( IplImage )加载到GPU中。

使用IplImage原因是,我想加载任何类型的图像。(jpg,bmp,png)。

我可以使用clCreateImage2DCL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR来加载图像 CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR mem_flags,以及CL_RGBCL_UNORM_SHORT_565类型。 但是在内核函数中read_imagef函数不接受CL_UNORM_SHORT_565类型。

那么,我如何将RGB图像发送到OpenCL内核函数呢?

编辑:我将输入图像转换为32位。 请问什么是image_channel_orderimage_channel_data_type ? 订单不能是RGBA,因为它没有alpha通道。

OpenCL不支持24位RGB。 因此,您必须先将其转换为32位RGB,然后将其传递给OpenCL内核