如何在iPhone SDK中的UIImage上添加Fish eye Image FIlter而不使用GPUImage

时间:2012-12-30 08:30:44

标签: iphone objective-c c image-processing

我想在我的iPhone App中为UIImage添加一些过滤效果。这些过滤器是:  1.鱼眼过滤效果。  2.结晶图像效果(与Hexagone形状的Mosiac效果图块相同)  3.电视图像滤镜。

我做了大量的谷歌搜索并搜索了许多关于这些过滤器,我得到了使用GPUImage效果的最大结果。我使用它,但有一个Cocoas2d和GPUImage冲突的问题。在我的项目中,我已经使用过cocoas 2d。所以我不能使用GPUImage,请不要建议使用GPUImage。

我想以其他方式实现这些过滤器。但我不知道这件事。

我已经使用C-Code实现了许多过滤器,如饱和度,模糊,棕褐色,阈值,清晰度等等。 但是对这3个过滤器(FIsheye,Crystallizem TV)进行了攻击

可以任何帮助 谢谢

1 个答案:

答案 0 :(得分:0)

也许你应该发布一个“解决GPUImage和cocoas2d问题”。

此外,您可以完美地使用GPUImage,从原始UIImage到过滤的UIImage,不受图层,视图或任何UI的影响。

来自GitHub:

UIImage *inputImage = [UIImage imageNamed:@"Lambeau.jpg"];

GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:inputImage];
GPUImageSepiaFilter *stillImageFilter = [[GPUImageSepiaFilter alloc] init];

[stillImageSource addTarget:stillImageFilter];
[stillImageSource processImage];

UIImage *currentFilteredVideoFrame = [stillImageFilter imageFromCurrentlyProcessedOutput];

在这种情况下,对于cocoas2d,inputImage和currentFilteredVideoFrame应该是不可分辨的。