情诗网 >心情美图 > 正文

GPUImage图片美颜

来源:情诗网    2020-12-30    分类:心情美图

准备工作: 导入GPUImage框架

  方式一 : 利用cocoapods 集成
  方式二 : 去Githup下载源代码,然后导入

代码 :

方法一: (利用GPUImage框架提供的GPUImageView来展示滤镜后的图片)

 // 预览view
GPUImageView *imageView = [[GPUImageView alloc]initWithFrame:self.view.bounds];
[self.view insertSubview:imageView atIndex:1];
// 原图
UIImage *image = [UIImage imageNamed:@"10.jpg"];
// 创建图片源
GPUImagePicture *picture = [[GPUImagePicture alloc]initWithImage:image];
// 滤镜
GPUImageSepiaFilter *filter = [GPUImageSepiaFilter new];
// 把图片数据添加到过滤器中
[picture addTarget:filter];
// 把过滤后的数据放到预览view上展示
[filter addTarget:imageView];
// 开始渲染
[picture processImage];

方法二 : (用自己定义的UImageView)

 // 预览view
UImageView *imageView = [[UImageView alloc]initWithFrame:self.view.bounds];
[self.view addSubview:imageView];
// 原图
UIImage *image = [UIImage imageNamed:@"10.jpg"];
// 创建图片源
GPUImagePicture *picture = [[GPUImagePicture alloc]initWithImage:image];
// 滤镜
GPUImageSepiaFilter *filter = [GPUImageSepiaFilter new];
// 把图片数据添加到过滤器中
[picture addTarget:filter];
// 开始渲染
[picture processImage];
// 获取滤镜后的image
UIImage *image= [filter imageFromCurrentFramebuffer]
// 给自己定义的imageview赋值
imageView.image = image;

滤镜可以随便换的,想要达到什么效果换什么滤镜就可以了

简单介绍几种滤镜:

GPUImageBrightnessFilter        :  调整亮度(所谓的美白)
GPUImageBilateralFilter         :  模糊 (用来忽略脸上的痘痘啊之类的)
GPUImageSepiaFilter             :  怀旧风格

热门文章