这节她们来说一下,如何用OpenCL来对图片进行灰度处理。灰度处理公式很简单,如下:

Gray = R*0.299 + G*0.587 + B*0.114

她们只要把图片数据读取上来,让每个工作组包含四个数据(RGBA)。未必你要能够用RGB,只读那个数据。交OPENCL处理就能够了。而且每个像素值的处理方式相同,而且她们只有一维数组就能够了。

下面她们看代码。

gray.cl代码:主程序代码: