CPUimage里面的几个例子好像都是存在着一些问题,运行都没有得出结果;
BenchmarkSuite同样的情况下面core image 和CPUimage的对比;图片和视频的内容;
Shaders —— 着色器
.fsh 关于图像;
.vsh 关于视频;
图像的处理 (官方)
Core Animation, Core Image, and Quartz Extrem
我们经常会看到一个.tiff 的文件,(tiff)标签图像文件格式(Tagged Image File Format,简写为TIFF) 是一种主要用来存储包括照片和艺术图在内的图像的文件格式。
每一个图片都会对应着一个LUT(look up table ),
我们可以通过hut文件生成和一张图片生成对应的滤镜效果;
iOS 上实现滤镜的效果:
实现滤镜的步骤:
1、首先获取到图片 ——> 目标滤镜效果 ——> 获取到对应的LUT ——> 然后通过LUT和原图进行生成对应的图片 ——> 获取到目标图片
ps:所以我们项目中应该同时存在一张hut文件和-一张原图;
查找表(Look-Up-Table)简称为LUT:(主要是对颜色修改)
LUT本质上就是一个RAM。它把数据事先写入RAM后,每当输入一个信号就等于输入一个地址进行查表,找出地址对应的内容,然后输出。
LUT(Look-Up Table)实际上就是一张像素灰度值的映射表,它将实际采样到的像素灰度值经过一定的变换如阈值、反转、二值化、对比度调整、线性变换等,变成了另外一个与之对应的灰度值,这样可以起到突出图像的有用信息,增强图像的光对比度的作用。很多PC系列卡具有8/10/12/16甚到32位的LUT,具体在LUT里进行什么样的变换是由软件来定义的。
LUT的了解:
http://www.cgspread.com/3385.html (数码相机)
http://chuansong.me/n/2359151
log raw uncompress 几种格式的了解:
https://www.zhihu.com/question/29733691
http://chuansong.me/n/2359151 (lUT 生成工具;LUTCalc 不是免费工具)raw: 拍摄的时候的数据没有经过处理(原生的数据,不可见)
那么,如果Raw是sensor上面原汁原味出来的数据,那么uncompressed又是指虾米咧?
Raw数据并不是无压缩,相反Raw数据是经常被压缩过的。
uncompressed : 是没有压缩的数据;
log : 是视频格式的;
GPUImage 使用的一些参考链接:
http://www.crazysurfboy.com/2016/04/11/GPUImageLookupTable/
(滤镜的一个效果 ImageFilter)
http://www.lai18.com/content/1779293.html
https://github.com/AbeDai/ABE_iOS_FilterDemo
http://www.jianshu.com/p/b1d3ef7fdf7a
http://www.jianshu.com/p/b470a5b5a560
项目中图片编辑使用到的例子是:
因为这里是使用了GPUImage库,所以,这里直接调用GPUImage库的接口;
拓展:
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。