前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开启你的GPUImage之旅

开启你的GPUImage之旅

作者头像
CC老师
发布2023-03-23 19:30:41
4500
发布2023-03-23 19:30:41
举报

前言

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 项目
五、效果对比

原始图片

代码黑白效果图:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 逻辑iOS技术号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
相关产品与服务
图片处理
图片处理(Image Processing,IP)是由腾讯云数据万象提供的丰富的图片处理服务,广泛应用于腾讯内部各产品。支持对腾讯云对象存储 COS 或第三方源的图片进行处理,提供基础处理能力(图片裁剪、转格式、缩放、打水印等)、图片瘦身能力(Guetzli 压缩、AVIF 转码压缩)、盲水印版权保护能力,同时支持先进的图像 AI 功能(图像增强、图像标签、图像评分、图像修复、商品抠图等),满足多种业务场景下的图片处理需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档