总共有两种方法能够把GPUImage处理过的图片转化成UIImage
方法一:
UIImage *inputImage = [UIImage imageNamed:@"Lambeau.jpg"];
GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:inputImage];
GPUImageSepiaFilter *stillImageFilter = [[GPUImageSepiaFilteralloc] init];
[stillImageSource addTarget:stillImageFilter];
[stillImageSource processImage];
UIImage *currentFilteredVideoFrame = [stillImageFilter imageFromCurrentlyProcessedOutput];
前面5行代码都是跟正常处理GPUImage滤镜效果差不多,唯一的差别就是现在少了一个GPUImageView作为输出图像的端口,这句有没有都不影响UIImage的生成
最后一句imageFromCurrentlyProcessedOutput是用于把GPUImagePicture的图片转化成UIImage的
方法二:
UIImage *inputImage = [UIImage imageNamed:@"Lambeau.jpg"];
GPUImageSepiaFilter *stillImageFilter2 = [[GPUImageSepiaFilteralloc] init];
UIImage *quickFilteredImage = [stillImageFilter2 imageByFilteringImage:inputImage];
这个是最简单的UIImage的生成,蛋蛋只是为了生成一个UIImage,连GPUImagePicture都省去了。