UIImageView *imageview= [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, kScreenWidth, kScreenHeight)];
[self.view addSubview:imageview];
CIImage *beginImage = [[CIImage alloc]initWithImage:[UIImage imageNamed:@"logo_bg"]];
//创建滤镜
CIFilter *filter = [CIFilter filterWithName:@"CIColorMonochrome"];
//设置滤镜参数
[filter setValue:beginImage forKey:kCIInputImageKey];
[filter setValue:[NSNumber numberWithFloat:1] forKey:kCIInputIntensityKey];
[filter setValue:[CIColor colorWithRed:1 green:0 blue:0] forKey:kCIInputColorKey];
CIImage *outputImage = [filter outputImage];
//GPU优化
EAGLContext *eaglContext = [[EAGLContext alloc]initWithAPI:kEAGLRenderingAPIOpenGLES3];
eaglContext.multiThreaded = YES;
CIContext *context = [CIContext contextWithEAGLContext:eaglContext];
[EAGLContext setCurrentContext:eaglContext];
CGImageRef ref = [context createCGImage:outputImage fromRect:outputImage.extent];
UIImage *endImage = [UIImage imageWithCGImage:ref];
imageview.image = endImage;
CGImageRelease(ref);
效果如下