前言
GPUImage是现在做滤镜最流行的开源框架。是Brad Larson在gitHub托管的一个开源项目。项目实现了图片滤镜、摄像头实时滤镜,该项目的优点不但在于滤镜很多,而且处理效果基于GPU,比使用CPU性能更高。
在我的关于GPUImage文档翻译中,也提到了它的底层实际上是基于多个框架。
例如:
CoreMedia
CoreVideo
OpenGL ES
AV Foundation
QuartzCore
大部分开发会使用GPUImage 框架 与苹果原生框架 Core Image。
二、比较Core Image 、GPUImage框架
CoreImage框架,可以使用CIFiter内置的滤镜、使用框架内置的人脸检测、固定颜色的透明度剔除、能够移轴的高斯模糊等等。
虽然使用CoreImage框架能够满足大部分日程图片的滤镜处理之类的需求,而且是系统内置框架。性能上肯定是经过一番考究的。但是其中的API使用起来比较麻烦,尤其是基于对摄像头的数据流的实时滤镜(目前大部分直播的APP要求这个功能),使 用起来会有比较大的挑战。
GPUImage框架是目前比较主流的一款开源的图像处理框架。有iOS版也有安卓版,也推出了Swift版。在多平台选择性上没有顾虑。GPUImage隐藏了在iOS所用需要使用OpenGL ES的复杂代码,并用极其简单的接口以很快的速度处理图像。GPUImage的性能甚至在很多时候击败了CoreImage。
GPUImage最大的优点就是使用简便,它内部封装了许多滤镜,类似亮度滤镜、对比度滤镜、灰度滤镜、双边滤波等等。而且还有许多现成的卡通,黑白版,高斯模糊之类的滤镜效果。可以对stillImage静态图片处理,也可以创建camera并随意组合滤镜效果来构建一个摄像头实时滤镜。制作一些常用的滤镜、磨皮美颜效果都很方面。
三、使用CocoaPods 导入GPUImage框架
关于CocoaPods 是什么?如何安装?以及它的好处,我就不在这儿赘述。相信大多数开发者已经感受了它的魅力了。
具体步骤:
第一步:
终端输入:pod search GPUImage
第二步:
在工程中创建一个Podfile文件
终端输入:cd/Users/liuyi/Desktop/CocoaPodsTest
终端输入:touch Podfile
打开项目中的Podfile文件,拷贝如下内容:
platform :ios, ‘7.0'
target ‘GPUImageTest’ do
pod ‘GPUImage’
end
第三步: 把GPUImage库下载到Xcode 中
终端输入:podinstall
这就开始下载了,需要一段时间。稍微等待即可。当出现bogon:cocoPodsTest liuyi$ 则下载成功。
这个时候关闭所有的Xcode窗口,再次打开工程目录就会看到多一个后缀名为.xcworkspace文件。以后打开工程就双击这一个文件打开即可。不再是.xcodeproj文件
四、你的第一个GPUImage 项目
五、效果对比
原始图片
代码黑白效果图:
嗯。这个demo就写完了。话说,鹿晗的迷妹们,会不会吊打CC...哈哈,求放过,一个demo而已。就因为你家鹿晗帅。。。。哈哈。。。。。
小伙伴们阅读后,请喜欢一下。文章更新可以提醒到你哦~~~~
网友评论