1.GPUImage for Android(推荐使用)

GPUImage基于OpenGL实现的各种各样图像滤镜(图像处理)效果,多达50多种,

idea源于GPUImage for iOS,基本囊括了最常见的图像处理效果,包括:contrast,hue,

gamma,brightness,sharpness,emboss,saturation,exposure,shadow,blend 等,

是功能十分强大、又十分易用的图像处理库,还支持照相机和摄像机的实时滤镜,而正因为

是基于GPU的图像加速,所以图像处理速度非常快.

Sample Code

With preview:

@Override
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity); Uri imageUri = ...;
mGPUImage = new GPUImage(this);
mGPUImage.setGLSurfaceView((GLSurfaceView) findViewById(R.id.surfaceView));
mGPUImage.setImage(imageUri); // this loads image on the current thread, should be run in a thread
mGPUImage.setFilter(new GPUImageSepiaFilter()); // Later when image should be saved saved:
mGPUImage.saveToPictures("GPUImage", "ImageWithFilter.jpg", null);
}

Without preview:

Uri imageUri = ...;
mGPUImage = new GPUImage(context);
mGPUImage.setFilter(new GPUImageSobelEdgeDetection());
mGPUImage.setImage(imageUri);
mGPUImage.saveToPictures("GPUImage", "ImageWithFilter.jpg", null);

注:由于用到OpenGL ES 2.0,仅能在真机中测试.  https://github.com/CyberAgent/android-gpuimage

2.ImageFilterForAndroid

是由一个名叫戴震军的大牛写的,Android,ios,windows phone3个平台都写了,说

是历经三个多月的开发就完成了,用到的开发语言主要有使用了C++,JAVA,C#。

目前已正式投入到生产环境中.为了实现三种语言一种命名方式,作者采用了相

同的类名,接口,namespace(package)。据说只要熟悉了其中一个平台的代码,

就可以很顺利的写出另外两个平台的滤镜代码(作者承诺后续还会加入更多的滤

镜效果)。该库基于LGPL协议,可以将其免费用于自己项目及产品中(包括商业

项目).当然也可以私下和作者洽谈合作事宜

http://www.cnblogs.com/daizhj/archive/2012/05/15/2501406.html

https://github.com/daizhenjun/ImageFilterForAndroid

3.Android内置滤镜

颜色滤镜--http://blog.sina.com.cn/s/blog_5da93c8f01012pkj.html

利用一些滤镜算法--http://blog.csdn.net/jingwen3699/article/details/7770287

Android系统将内置滤镜功能(有二十余种不同效果),颜色矩阵 ColorMatrix--相关介绍

4.OpenCV

全称是:Open Source Computer Vision Library.OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运

行在Linux,Windows和Mac OS操作系统上.它轻量级而且高效——由一系列 C 函数和少量 C++ 类,同时提供Python,Ru

by,MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法.这个并不是真正专门用作滤镜的库,但是

可以通过其实现一定量的滤镜效果.不过,配置用法比较麻烦.

http://blog.csdn.net/yanzi1225627/article/details/16917961

http://blog.csdn.net/sangni007/article/category/1106771/1

5.其他一些开源滤镜

资料较少,适用人群也不多,目前不建议采用,可参考

https://github.com/ragnraok/android-image-filter

http://www.jhlabs.com/ip/filters/index.html

http://phenom.iteye.com/blog/1575975

开源的图像滤镜库----for Android的更多相关文章

  1. 开源自己的一个小android项目(美女撕衣服游戏)

    这是自己的一个开源自己的一个小android项目(美女撕衣服游戏),也是前6个月开发的,有部分的资源来自网络上的,现在开源出来给大家吧,由于源码比较大,不上传了,我已经上传到源码天堂那个网站那里了,大 ...

  2. [开源]在iOS上实现Android风格的控件Toast

    [开源]在iOS上实现Android风格的控件Toast iOS的风格和Apple其他产品一样,简单而粗暴.没有给人其他选择的余地,让你又爱又恨.同样的,Apple对待iOS平台的开发人员和对待大众消 ...

  3. 利用开源项目jadx反编译Android应用

    原文转自:http://bbs.itheima.com/thread-200475-1-1.html 利用开源项目jadx反编译Android应用 利用Github开源项目jadx可以直接对 .dex ...

  4. 【开源库推荐】#3 Android EventBus的使用

    原文地址:[开源库推荐]#3 Android EventBus的使用 | Stars-One的杂货小窝 EventBus的Github Event bus for Android and Java t ...

  5. 可跨平台C++开源图形图像框架:openFrameworks

    博客参考:https://www.hahack.com/codes/openframeworks-intro/#%E4%BB%80%E4%B9%88%E6%98%AF-openframeworks 和 ...

  6. 保持长宽比 对背景图像进行修改android:scaleType="fitXY"

    关于android中ImageView的外观,即图片在其内显示出的样子,与布局文件中adjustViewBonds和scaleType属性的关系.我进行了一些探索.现跟大家共享,欢迎各位指教.分别将a ...

  7. 推荐一款功能齐全的开源客户端( iOS 、Android )研发助手。

    DoraemonKit ,简称DoKit,中文名 哆啦A梦,意味着能够像哆啦A梦一样提供给他的主人各种各样的工具. 开发背景 每一个稍微有点规模的 App,总会自带一些线下的测试功能代码,比如环境切换 ...

  8. 开源一个C#写的Android和IOS都能跑的 打击感强的RPG玩玩。

    攒到 250楼再统一发一次代码,各位 给力啊 156楼之前的兄弟 都已经发送代码了!各位查收一下!   156楼之后的兄弟要晚上统一发送 200楼之前的兄弟都已经发送代码了!  各位查收一下!!!顺便 ...

  9. 开源项目 apk cfg and android app path profiling

    暑假里面完毕的一个小项目,limitation还是挺多的. 期待未来有更大的motivation 去完好它.通过此次的项目设计,对于smali的语法更加了解了,对于进一步学习android app的安 ...

随机推荐

  1. jdbc连接oracle语法

    public class LangDemo { public static void main(String[] args) throws Exception{ try { //加载驱动 Class. ...

  2. 【bzoj2326】[HNOI2011]数学作业 矩阵乘法

    题目描述 题解 矩阵乘法 考虑把相同位数的数放到一起处理: 设有$k$位的数为$[l,r]$,那么枚举从大到小的第$i$个数(即枚举$r-i+1$),考虑其对$Concatenate(l..r)$的贡 ...

  3. ARC075 E.Meaningful Mean(树状数组)

    题目大意:给定n和k,问an中有多少子区间的平均值大于等于k 很巧妙的一个式子,就是如果一个区间[l, r]满足条件 那么则有 sum[r] - sum[l-1] >= (r-l+1)*k 整理 ...

  4. [NOI.AC省选模拟赛3.30] Mas的童年 [二进制乱搞]

    题面 传送门 思路 这题其实蛮好想的......就是我考试的时候zz了,一直没有想到标记过的可以不再标记,总复杂度是$O(n)$ 首先我们求个前缀和,那么$ans_i=max(pre[j]+pre[i ...

  5. 网络编程:listen函数

    listen函数仅由TCP服务器调用,它做两件事: 当socket函数创建一个套接字时,它被假设为一个主动套接字,也就是说,它是一个将调用connect发起连接的客户套接字.listen函数把一个未连 ...

  6. [MySQL] explain执行计划解读

    Explain语法 EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得 ...

  7. bzoj2424 [HAOI2010]订货 dp+单调性

    [HAOI2010]订货 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1311  Solved: 884[Submit][Status][Discu ...

  8. Spring学习--用 ASpectJ 注解实现 AOP

    用 AspectJ 注解声明切面: 要在 Spring 中声明 AspectJ 切面 , 只需要在 IOC 容器中将切面声明为 bean 实例.当在 Spring IOC 容器中初始化 AsjectJ ...

  9. 「6月雅礼集训 2017 Day1」看无可看

    [题目大意] 给出n个数,a[1]...a[n],称作集合S,求

  10. 流程控制 while循环 运算符

    具体知识戳这里 可变数据类型:在id不变的情况下,数据类型内部的元素(value)可以改变 如:列表,字典 不可变类型:value改变,id也跟的改变 如:数字.字符.布尔类型 运算符 #算数运算符# ...