zoukankan      html  css  js  c++  java
  • GPUImage实现过程

    GPUImage就是一个函数的类库,用于对图片实现滤镜的效果。

    下面是实现一个最简单的GPUImage的程序和讲解:

    首先新建一个项目,导入GPUImage类库(导入过程在我的另一个博客里面有写)。

    然后在ViewController的头文件里面添加GPUImage.h,然后在实现文件里面开始写函数。

    实现的基本流程和代码如下:

        //设置图片

        UIImage * inputImage = [UIImage imageNamed:@"sample1.jpg"];

        

        //获取视图

        GPUImageView * imageView = (GPUImageView *)self.view;

        

        //把图片加载到GPU

        GPUImagePicture * sourcePicture;

        sourcePicture = [[GPUImagePicture alloc] initWithImage:inputImage smoothlyScaleOutput:YES];

        

        //初始化滤镜

        GPUImageTiltShiftFilter * tiltShiftFilter = [[GPUImageTiltShiftFilteralloc] init];

        

        //三个步骤显示图片

        [sourcePicture addTarget:tiltShiftFilter];

        [tiltShiftFilter addTarget:imageView];

        [sourcePicture processImage];

    个人的理解:
    第一步是将图片通过UIImage导入程序
    然后获取当前的视图并转化成GPU视图(这一步其实这样写不好,GPUImageVIew其实功能跟UIImageView是一样的,就是一个显示图片的控件,所以这一步是把GPUImageView添加到主视图上,用AddSubView方法更好一点)
    然后把UIImage转化成GPU图片
    初始化一个滤镜
    把GPU图片委托给滤镜,滤镜委托给GPU视图,然后运行GPU图片的时候会连带委托一起运行。

    这只是一个最最简单基础的滤镜,当然后面如果还有更加复杂的滤镜操作方式我会继续更新。

  • 相关阅读:
    15 手写数字识别-小数据集
    14 深度学习-卷积
    13-垃圾邮件分类2
    12.朴素贝叶斯-垃圾邮件分类
    11.分类与监督学习,朴素贝叶斯分类算法
    9、主成分分析
    7.逻辑回归实践
    8.特征选择,过滤式
    6.逻辑回归
    5.线性回归算法
  • 原文地址:https://www.cnblogs.com/wisejoker/p/3399856.html
Copyright © 2011-2022 走看看