GPUImage滤镜之自然饱和度】的更多相关文章

自然饱和度”是图像整体的明亮程度,“饱和度”是图像颜色的鲜艳程度. “饱和度”与“色相/饱和度”命令中的“饱和度”选项效果相同,可以增加整个画面的“饱和度”,但如调节到较高数值,图像会产生色彩过饱和从而引起图像失真. 在GPUImage中使用GPUImageVibranceFilter来实现调整图像的自然饱和度 片段着色 varying highp vec2 textureCoordinate; uniform sampler2D inputImageTexture; uniform lowp…
这里直接引用官方描述: The GPUImage framework is a BSD-licensed iOS library that lets you apply GPU-accelerated filters and other effects to images, live camera video, and movies. In comparison to Core Image (part of ios 5.0), GPUImage allows you to write your…
应用锐化工具可以快速聚焦模糊边缘,提高图像中某一部位的清晰度或者焦距程度,使图像特定区域的色彩更加鲜明. 在应用锐化工具时,若勾选器选项栏中的“对所有图层取样”复选框,则可对所有可见图层中的图像进行锐化.但一定要适度.锐化不是万能的,很容易使东西不真实. 在GPUImage中使用GPUImageSharpenFilter类来实现图像的锐化效果 片段着色 precision highp float; varying highp vec2 textureCoordinate; varying hig…
#import "GLProgram.h" // Base classes #import "GPUImageOpenGLESContext.h" #import "GPUImageOutput.h" #import "GPUImageView.h" #import "GPUImageVideoCamera.h" #import "GPUImageStillCamera.h" #impo…
之前做过开源videocore的推流改进:1)加入了美颜滤镜; 2) 加入了librtmp替换原来过于简单的rtmpclient: 后来听朋友说,在videocore上面进行opengl修改,加入新的滤镜比较麻烦,IOS的滤镜最好的要算GPUImage了. 自己就决定将多滤镜开源GPUImage来实现rtmp的直播推流: 实现的方案: 1,GPUImageMovieWriter进行rgba视频数据的输出. 通过重写GPUImageMovieWriter,实现一个代理协议pixelBufferde…
开发类库 http://www.code4app.com/thread-7831-1-1.html Github-iOS备忘 http://github.ibireme.com/github/list/ios/ 动画 收集整理了下iOS平台下比较主流炫酷的几款动画框架 https://github.com/sxyx2008/awesome-ios-animation 各种动画的集合demo http://www.code4app.com/forum.php?mod=viewthread&tid=…
名称 作用 说明 AFNetworking 基于HTTP协议联网   SDWebImage 图片缓存和异步加载   YYWebImage 图片缓存和异步加载   Ono XML解析   RaptureXML XML解析   KissXML XML解析   YYModel JSON-模型对象转换(非侵入性) 国内90后程序员郭燿源神作 MJExtesion JSON-模型对象转换(非侵入性)   JSONModel JSON-模型对象转换(侵入性)   FMDB SQLite数据库操作   pop…
IOS–实现滤镜效果 demo地址: https://github.com/AbeDay/ios–.git 使用CIFilter来完成IOS中滤镜效果 在IOS中可以使用系统自带的方法来达到路径效果:需要用到的类为:CIContext, CIImage, CIFilter 使用CIFilter实现滤镜效果的方法步骤如下: ​1.创建图像上下文CIContext ​2.创建过滤原图片CIImage ​3.创建滤镜CIFilter ​4.调用CIFilter的setValue: forKey:方法为…
iOS是由苹果公司开发的移动操作系统,以xcode为主要开发工具,具有简单易用的界面.令人惊叹的功能,以及超强的稳定性,已经成为iPhone.iPad 和iPod touch 的强大基础:iOS 内置的众多技术和功能让 Apple设备始终保持着遥遥领先的地位. iOS学习路线:http://www.mobiletrain.org/page/ios.html 课程分  类 课程模块 模块介绍 课程内容 Part1C语言 C语言和Objective-C语言 C语言 Mac系统及常用工具.进制:C数据…
GPUIMAGE中GPUImageStillCamera可以调用系统相机,并实现实时滤镜,但是我没有找到相机全屏的方法,望知道的说一下 GPUImageStillCamera继承自GPUImageVideoCamera类,添加了捕获照片的功能. GPUImageVideoCamera 初始化方法: - (id)initWithSessionPreset:(NSString *)sessionPreset cameraPosition:(AVCaptureDevicePosition)camera…
导入方法转自:http://www.cnblogs.com/S2-huai/p/3881349.html.. (原文:http://www.cnblogs.com/YouXianMing/p/3709715.html) (由于功力不足,经过自己实践,只能真机测试..望其他大神补充模拟器版) 1.GPUImage开源库并不像普通的开源库那样子,拖进你的工程中就可以用.首先上官网下载源码: https://github.com/BradLarson/GPUImage 2.找到framework文件夹…
1.背景 前段时间由于项目需求,做了一个基于GPUImage的实时美颜滤镜.现在各种各样的直播.视频App层出不穷,美颜滤镜的需求也越来越多.为了回馈开源,现在我把它放到了GitHub https://github.com/Guikunzhi/BeautifyFaceDemo 上面,感兴趣的朋友可以去下载.下面将主要介绍实现美颜滤镜的原理和思路. 2.GPUImage GPUImage 是一个开源的基于GPU的图片或视频的处理框架,其本身内置了多达120多种常见的滤镜效果.有了它,添加实时的滤镜…
GPUImage 自定义滤镜 GPUImage 是一个基于 GPU 图像和视频处理的开源 iOS 框架.由于使用 GPU 来处理图像和视频,所以速度非常快,它的作者 BradLarson 称在 iPhone4 上其处理速度是使用 CPU 来处理的 100 倍 (CoreImage 也能使用 GPU 来处理图像,但我觉得 CoreImage 还是慢).除了速度上的优势,GPUImage 还提供了很多很棒的图像处理滤镜,但有时候这些基本功能仍然无法满足实际开发中的需求,不用担心 GPUImage 支…
GPUImage中,提供了许多简单的的常用的滤镜.在上一篇文章讲了如何调节图像的亮度这片文章讲一下如何通过GPUImage调节图像的对比度,饱和度,曝光度,和白平衡(美图秀秀中的色温). 原图像 调整图像的对比度 GPUImageContrastFilter类提供了此功能.该类中有一个属性contrast,我们可以通过修改此属性值(最大值4.0,最小值0.0,正常值1.0)来达到修改图像对比度的目的,使用方法: GPUImageContrastFilter *filter = [[GPUImag…
今天来学习一下一个简单滤镜使用的流程,通过调节亮度滤镜来了解.先将GPUImage库导入到项目中,引入头文件"GPUImage.h"   一.创建亮度滤镜对象    GPUImageBrightnessFilter *filter = [[GPUImageBrightnessFilter alloc] init],经过alloc init之后,程序为我们创建了顶点数组以及帧缓冲区,纹理,并绑定为当前使用的对象. 1.为顶点着色添加属性 首先我们来看一该滤镜的顶点着色器字符串 attri…
GPUImage 是基于 GPU 处理图像的一个开源库, 提供了各种图像处理滤镜,例如调 亮度/饱和度/曝光度/白平衡/锐化等滤镜. 并且支持照相机/摄像机 的实时滤镜. GPUImage采用链式方式来处理画面,通过addTarget:方法为链条添加每个环节的对象,处理完一个target,就会把上一个环节处理好的图像数据传递下一个target去处理,称为GPUImage处理链. https://github.com/BradLarson/GPUImage  图片滤镜 //调整图像的对比度 - (…
人脸识别+滤镜效果(基于GPUImage实现的自定义滤镜) 最近碰到一个好玩的需求.说要客户端这边判定一下是否有人脸.在有的基础上.对相片做进一步的美化滤镜处理. 首先是人脸的识别判定; //将图片对象拿到,转化对应CIImage CIImage* ciimage = [CIImage imageWithCGImage:_imageView.image.CGImage]; //配置人脸识别时候的属性值 NSDictionary* opts = [NSDictionary dictionaryWi…
GPUImage简介 GPUImage 是iOS下一个开源的基于GPU的图像处理库,提供各种各样的图像处理滤镜,并且支持照相机和摄像机的实时滤镜.GPUImage for Android是它在Android下的实现,同样也是开源的.其中提供了几十多种常见的图片滤镜API,且其机制是基于GPU渲染,处理速度相应也比较快,是一个不错的图片实时处理框架. GitHub地址:https://github.com/CyberAgent/android-gpuimage GPUImage使用环境搭建 首先,…
前面移植了几个比较复杂的效果后,算是确认了复杂滤镜不会对框架造成比较大的改动,开始从头移植,现已把A到C的所有滤镜用vulkan的ComputeShader实现了,讲一些其中实现的过程. AverageLuminanceThreshold 像素亮度平均阈值比较 从名字来看,就是算整图的平均高度,然后比较这个亮度值. GPUImage的实现,先平均缩少3*3倍,然后读到CPU中计算平均亮度,然后再给下一层计算. 这步回读会浪费大量时间,我之前在CUDA测试过,1080P的回读大约在2ms左右,就算…
现把D到O的大部分滤镜用vulkan的ComputeShader实现了,列举其中一些有点特殊的说明. GaussianBlurPosition 指定区域高斯模糊 没有按照GPUImage里的方式实现,按照类似GaussianSelectiveBlur方式实现,一张高斯模糊图,一张原图,二图进行混合,这种实现方式更灵活(模糊半径等参数),并且并不会降低性能(单独的高斯模糊更容易优化). SphereRefraction 环境映射 环境映射技术漫谈 和GlassSphere一样,主要就是球形坐标系与…
现aoce_vulkan_extra把GPUImage里从P到Z的大部分滤镜用vulkan的ComputeShader实现了,也就是最后一部分的移植,整个过程相对前面来说比较简单,大部分我都是直接复制以前的实现改改就行了,还是列一些说明. PerlinNoise 柏林燥声生成一张静态图 柏林燥声的原理网上很多讲解的,用于生成平滑的图案,其实可以稍微改下,如加个如时间戳,就可变成一张平滑的动态图. PinchDistortion 收缩,凹面镜 实现类似BulgeDistortion(鱼眼效果),都…
#import"GLProgram.h" //Baseclasses #import"GPUImageOpenGLESContext.h" #import"GPUImageOutput.h" #import"GPUImageView.h" #import"GPUImageVideoCamera.h" #import"GPUImageStillCamera.h" #import"…
#pragmamark - 调整颜色 Handle Color GPUImageBrightnessFilter //亮度GPUImageExposureFilter //曝光GPUImageContrastFilter //对比度GPUImageSaturationFilter //饱和度GPUImageGammaFilter //伽马线GPUImageColorInvertFilter //反色GPUImageSepiaFilter //褐色(怀旧)GPUImageLevelsFilter…
核心代码: varying highp vec2 textureCoordinate; uniform sampler2D inputImageTexture; uniform highp float exposure; void main() { highp vec4 textureColor = texture2D(inputImageTexture, textureCoordinate); gl_FragColor = vec4(textureColor.rgb * pow(2.0, ex…
色阶是表示图像亮度强弱的指数标准,图像的色彩丰满度和精细度是由色阶决定的.在GPUImage中GPUImageLevelsFilter提供了此功能. GPUImageLevelsFilter定义了修改红色,绿色,蓝色,和所有通道的方法,有效值范围时0.0-1.0之间,如果你想想像ps中那样,你必须先转为[0,1]. /** Set levels for the red channel */ - (void)setRedMin:(CGFloat)min gamma:(CGFloat)mid max…
LOMO追求鲜艳色彩,随意.自由的态度,是一种经常使用的滤镜,今天介绍一下iOS 中LOMO滤镜的实现 首先它有3张输入图像 1.我们要处理的图像.即我们要应用LOMO滤镜的图像 2 3 在gpuimage中多张输入图像的滤镜需要自己写.在这里我参照本身提供的GPUImageTwoInputFilter,自己写了GPUImageThreeInputFilter,用于接收3张输入图像的滤镜.它们都是通过滤镜组的继承来实现,多重滤镜. 片段着色器 NSString *const kFWLomofiS…
3.滤镜 除了上面提到的美颜和水印之外,视频中还有很多其它的处理效果也在这个环节完成.七牛直播云提供的 SDK 在开放性设计基础之上,通过数据源回调接口,可以支持各种自定义滤镜的接入. 为了实现丰富的滤镜效果,在 iOS 端可以考虑使用 GPUImage 这个库,这是一个开源的基于GPU的图片或视频的处理框架,内置了多达120多种常见的滤镜效果.有了它,添加实时的滤镜只需要简单地添加几行代码,还可以基于这个库自己写算法实现更丰富端效果.GPUImage 地址:GitHub - BradLarso…
GPUImage是一个非常棒的图像处理的开源库,里面提供了非常非常多的滤镜效果来加工图像. 不过就是因为太多效果了,而且对于程序员来说,那么多效果并不清楚知道要用那一个.于是我就使用提供的默认值,加上对滤镜的命名的理解,粗略简单地对GPUImage.h里引用的各个滤镜进行简要说明.这样方便以后找到想要的滤镜效果.其中可能有理解错误,或者表达不准确的地方还请大家斧正.其中有些效果需要使用摄像头才可能有比较理想的效果. #import "GLProgram.h" // Base class…
前段时间做一个项目的时候发现一个不错的滤镜库,是仿Instagram效果的,能够实现Lomo在内的十几种滤镜效果,git地址是: https://github.com/beartung/insta-filter 不过由于他是用gradle遍的,而且还用了ndk(GPUImage),比较麻烦,后来 @雪夜流星 童鞋帮助把so编好了,我重新整理了下代码,变成一个lib工程,方便大家使用. 代码说明: 解压后有两个文件夹,InstaFilterDemo是例子程序,InstaFilterLib是库文件.…
GPUImage是一个非常棒的图像处理的开源库,里面提供了非常非常多的滤镜效果来加工图片. 不过就是因为太多效果了,而且对于程序员来说,那么多效果并不清楚知道要用那一个.于是我就使用提供的默认值,加上对滤镜的命名的理解,粗略简单地对GPUImage.h里引用的各个滤镜进行简要说明.这样方便以后找到想要的滤镜效果.其中可能有理解错误,或者表达不准确的地方还请大家斧正.其中有些效果需要使用摄像头才可能有比较理想的效果. 附上注释的GPUImage.h代码: #import "GLProgram.h&…