用GPUImage实现图片滤镜和美化

上一篇说明如何以动态库Framework形式将GPUImage添加到iOS项目,现在来看如何用GPUImage实现简单的滤镜。项目Demo地址:GitHub地址。

Demo效果图如下:

用GPUImage实现图片滤镜和美化_第1张图片
滤镜界面


用GPUImage实现图片滤镜和美化_第2张图片
美化界面

滤镜效果

* 阳光

使用GPUImageHazeFilter滤镜,distance属性值为-0.3。

* 幽暗

使用GPUImageHazeFilter滤镜,distance属性值为0.3。

* 灰白

使用GPUImageGrayscaleFilter滤镜,默认属性值。

* 怀旧 

使用GPUImageSepiaFilter滤镜,默认属性值。

美化效果

* 色温 

使用GPUImageWhiteBalanceFilter滤镜,调整tint属性值改变色温。

* 亮度

使用GPUImageBrightnessFilter滤镜,调整brightness属性值改变色温。

* 对比度 

使用GPUImageContrastFilter滤镜,调整contrast属性值改变色温。

* 锐化

使用GPUImageSharpenFilter滤镜,调整sharpness属性值改变色温。

* 饱和度

使用GPUImageSaturationFilter滤镜,调整saturation属性值改变色温。

其他细节

* 美化部分使用了GPUImageFilterGroup类,将5种滤镜组合,实现美化的叠加效果。

* 上面提到的一些滤镜,其实是通过GPUImageColorMatrixFilter实现的,GPUImageColorMatrixFilter更为强大,只要输入4*4颜色矩阵,就可以任意变换调整图片。

*如果图片较多且较大(比如大于2000*2000像素),会占用大量内存,导致系统APP crash,所以建议先压缩图片,再添加滤镜和美化。

你可能感兴趣的:(用GPUImage实现图片滤镜和美化)