我使用调整为白色的CIColorMonochromeFilter
创建了一个应该是正确的灰度CIFilter
。在我看来,这看起来非常灰度,但我也不是专家,所以我想知道这是否是灰度滤镜的准确实现。
我还没有编写转储和测试像素的代码,但基于图像格式已经是RGB,我很好奇输出图像的格式是什么。例如,我如何知道每个像素是一个组件还是三个组件?
我知道CIImage
只是图像的配方,我必须使用CGImageRef
最终进行呈现。我只是不明白可以期望数据的像素格式是什么。
CIFilter * monoChromeFilter = [CIFilter filterWithName:kCIColorMonochromeFilterName];
[monoChromeFilter setValue:self.inputImage forKey:kCIInputImageKey];
CIColor * white = [CIColor colorWithRed:1.0 green:1.0 blue:1.0];
[monoChromeFilter setValue:white forKey:kCIInputColorKey];