【问题标题】:Instagram Filters RGBA ValuesInstagram 过滤 RGBA 值
【发布时间】:2015-02-14 02:05:30
【问题描述】:

我需要向使用 Adob​​e Air 开发的 iOS 应用程序添加图像过滤器。

更具体地说,我需要应用以下过滤器(或类似过滤器):

  1. 纳什维尔
  2. 海明威
  3. 雅克
  4. 跨进程
  5. 朦胧的日子

您可以将此页面作为参考http://techslides.com/demos/canvas/instagram.html

我知道如何在 AS3 上对 BitmapData 应用滤镜,但我需要上述滤镜的 RGBA 值,有谁知道或知道如何获取它们?

我需要以下值:

    private static const NASHVILLE_FILTER_MATRIX: Array = [
        1, 0, 0, 0, 0, //R
        0, 0, 0, 0, 0, //G
        0, 0, 0, 0, 0, //B
        0, 0, 0, 1, 0  //A
    ];

感谢您能给我的任何帮助。

【问题讨论】:

    标签: ios actionscript-3 image-processing air instagram-api


    【解决方案1】:

    我建议你检查这个框架GPUImage 有一个例子here

    您可以创建如下过滤器:

      // creating GPU Image
      _gpuImg = new GPUImage();
      _gpuImg.init(context3D, antiAlias, false, stageW, stageH, streamW, streamH);
    
      // saving all filters
      _imageProcessors = new Vector.<IGPUImageProcessor>();
    
      // setup filters
      var _gpuSepia:GPUImageSepia = new GPUImageSepia();
      var _gpuGauss:GPUImageGaussianBlur = new GPUImageGaussianBlur(1.0, 4);
      var _gpuGray:GPUImageGrayscale = new GPUImageGrayscale();
    
      // Bloom Filter            
      var bloomEffect:GPUImageBloomEffect = new GPUImageBloomEffect(GPUImageBloomEffect.PRESET_DESATURATED, 4);
      bloomEffect.initPreset(GPUImageBloomEffect.PRESET_SATURATED);
      // TiltShift
      var tiltShift:GPUImageTiltShiftEffect = new GPUImageTiltShiftEffect(2, 0.4, 0.6, 0.2);
    
      // adding filter to image processor
      _imageProcessors.push(bloomEffect);
    
      // adding processor to the respective GPU Image
      _gpuImg.addProcessor(_imageProcessors[0]);
    

    【讨论】:

    • 谢谢。我最终使用了您提议的库,但我无法实现问题中描述的过滤器。我想分享其他类似 Instagram 的过滤器的实现,但我不知道我是否应该出于版权原因。我可以吗?
    猜你喜欢
    • 2015-01-15
    • 2021-05-30
    • 2011-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多