Ios GPUImageColorBalanceFilter不工作
我正在使用中定义的GPUImageColorBalanceFilter。但过滤后的图像在显示时与原始图像完全没有变化!代码运行良好,没有错误。我做错了什么Ios GPUImageColorBalanceFilter不工作,ios,uiimage,gpuimage,imagefilter,Ios,Uiimage,Gpuimage,Imagefilter,我正在使用中定义的GPUImageColorBalanceFilter。但过滤后的图像在显示时与原始图像完全没有变化!代码运行良好,没有错误。我做错了什么 CGImageRef cgimg = [context createCGImage:beginImage fromRect:[beginImage extent]]; BOOL preserveLuminosity = NO; GPUVector3 shadows= (GPUV
CGImageRef cgimg = [context createCGImage:beginImage
fromRect:[beginImage extent]];
BOOL preserveLuminosity = NO;
GPUVector3 shadows= (GPUVector3){1,0.0,1};
GPUVector3 midtones = (GPUVector3){-1,-1,0.13};
GPUVector3 highlights = (GPUVector3){0.0,-1,1};
UIImage *img1 = [UIImage imageWithCGImage:cgimg];
GPUImagePicture *pic1 = [[GPUImagePicture alloc] initWithImage:img1];
GPUImageColorBalanceFilter *filter1 = [[GPUImageColorBalanceFilter alloc] init];
[filter1 setShadows:shadows];
[filter1 setMidtones:midtones];
[filter1 setHighlights:highlights];
[filter1 setPreserveLuminosity:preserveLuminosity];
[pic1 addTarget:filter1];
[pic1 processImage];
UIImage *new= filter1.imageFromCurrentlyProcessedOutput;
self.imageView.image = new;
CGImageRelease(cgimg);
注意:由于我已经在使用bradlarson的GPUImage库,我在代码库中添加了GPUImageColorBalanceFilter.h,GPUImageColorBalanceFilter.m,GPUImageOpenGLESContext.h,GPUImageOpenGLESContext.m from。相对而言,这是一个古老的分支,从那时起,过滤器的操作方式发生了变化。简单地将这些过滤器拉入当前代码路径将不起作用,您需要更新它们以使用当前接口。特别是,访问器需要更新以使用当前样式。有关访问者现在应该如何工作的信息,请参见gamma过滤器。@BradLarson感谢您的见解。这真的很有帮助。