我正在使用 pycuda 来计算图像像素的强度。为此,我将图像发送到 GPU,如下所示。
img = np.float32(np.array(img.imread('my_image.jpg')))
img_gpu = gpuarray.to_gpu(img)
然后,在内核中(当然是用 c 编写的),我想得到如下的 RGB 值(在伪代码中)。
__global__ void get_intensities(float* img, float* intensities) {
intensities[globalIndex] = R(x, y) + G(x, y) + B(x, y)
}
我现在的大问题是在 C 中获取 RGB 通道。我该怎么做?