开源的图像滤镜库----for Android
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的更多相关文章
- 开源自己的一个小android项目(美女撕衣服游戏)
这是自己的一个开源自己的一个小android项目(美女撕衣服游戏),也是前6个月开发的,有部分的资源来自网络上的,现在开源出来给大家吧,由于源码比较大,不上传了,我已经上传到源码天堂那个网站那里了,大 ...
- [开源]在iOS上实现Android风格的控件Toast
[开源]在iOS上实现Android风格的控件Toast iOS的风格和Apple其他产品一样,简单而粗暴.没有给人其他选择的余地,让你又爱又恨.同样的,Apple对待iOS平台的开发人员和对待大众消 ...
- 利用开源项目jadx反编译Android应用
原文转自:http://bbs.itheima.com/thread-200475-1-1.html 利用开源项目jadx反编译Android应用 利用Github开源项目jadx可以直接对 .dex ...
- 【开源库推荐】#3 Android EventBus的使用
原文地址:[开源库推荐]#3 Android EventBus的使用 | Stars-One的杂货小窝 EventBus的Github Event bus for Android and Java t ...
- 可跨平台C++开源图形图像框架:openFrameworks
博客参考:https://www.hahack.com/codes/openframeworks-intro/#%E4%BB%80%E4%B9%88%E6%98%AF-openframeworks 和 ...
- 保持长宽比 对背景图像进行修改android:scaleType="fitXY"
关于android中ImageView的外观,即图片在其内显示出的样子,与布局文件中adjustViewBonds和scaleType属性的关系.我进行了一些探索.现跟大家共享,欢迎各位指教.分别将a ...
- 推荐一款功能齐全的开源客户端( iOS 、Android )研发助手。
DoraemonKit ,简称DoKit,中文名 哆啦A梦,意味着能够像哆啦A梦一样提供给他的主人各种各样的工具. 开发背景 每一个稍微有点规模的 App,总会自带一些线下的测试功能代码,比如环境切换 ...
- 开源一个C#写的Android和IOS都能跑的 打击感强的RPG玩玩。
攒到 250楼再统一发一次代码,各位 给力啊 156楼之前的兄弟 都已经发送代码了!各位查收一下! 156楼之后的兄弟要晚上统一发送 200楼之前的兄弟都已经发送代码了! 各位查收一下!!!顺便 ...
- 开源项目 apk cfg and android app path profiling
暑假里面完毕的一个小项目,limitation还是挺多的. 期待未来有更大的motivation 去完好它.通过此次的项目设计,对于smali的语法更加了解了,对于进一步学习android app的安 ...
随机推荐
- 【bzoj3856】Monster 乱搞
题目描述 你要打一只h点血的怪物,每回合你攻击会造成a点伤害,回合结束后怪物会回b点血,你每攻击k回合需要休息一次,该回合不能造成伤害.怪物血量降到0以下就会死亡,问最后能否打死怪物. 输入 Ther ...
- 【题解】IOI2005River 河流
一节语文课想出来的玩意儿,调了几个小时……可见细心&好的代码习惯是有多么的重要 (:へ:) 不过,大概竞赛最令人开心的就是能够一点一点的感受到自己的进步吧,一天比一天能够自己想出更多的题,A题 ...
- 【题解】HAOI2012高速公路
一节政治课的结果……推式子+推式子+推式子…… 首先注意到一个区间里面,选择(x, y)和(y, x)的费用是一样的.所以我们把这两种情况合为一种,那么现在询问的区间为(l, r),则一共的情况就有 ...
- [Leetcode] rotate image 旋转图片
You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). ...
- taotao用户登录springMVC拦截器的实现
在springMVC中写拦截器,只需要两步: 一.写 java 拦截器类,实现 interceptor 拦截器接口. 二.在 springMVC 的xml配置文件中,配置我们创建的拦截器对象及其拦截目 ...
- Codeforces 937.C Save Energy!
C. Save Energy! time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...
- bzoj 1517 [POI2006]Met 贪心
[POI2006]Met Time Limit: 15 Sec Memory Limit: 162 MBSubmit: 203 Solved: 108[Submit][Status][Discus ...
- TCP ------ RST的产生
产生RST的几个原因 1.请求超时 有89.27两台主机.主机89向主机27发送了一个SYN,表示希望连接8888端口,主机27回应了主机89一个SYN表示可以连接.但是主机89莫名其妙的发送了一个R ...
- 一串跟随鼠标的DIV
div跟随鼠标移动的函数: <!DOCTYPE HTML><html><head> <meta charset="utf-8"> & ...
- iconfont字体图标
1.1.进入阿里图标网站 http://www.iconfont.cn/ 1.2.在购物车里添加自己需要的字体图标 1.3.下载代码 1.4.解压过后,找到iconfont.css,放在你的项目里,需 ...