龙空技术网

美颜滤镜开发——初章

极客晚读 267

前言:

目前朋友们对“android美颜滤镜算法”可能比较关注,咱们都需要学习一些“android美颜滤镜算法”的相关内容。那么小编在网摘上收集了一些关于“android美颜滤镜算法””的相关文章,希望咱们能喜欢,咱们一起来学习一下吧!

前言

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 项目

五、效果对比

原始图片

代码黑白效果图:

标签: #android美颜滤镜算法