http://www.icodelogic.com/?p=575 这里提供了几种滤镜的实现.我也下载了代码试了效果,如果图片较小,还是可以接受的,如果图片较大,有些处理过程会失败,内存不足,作者主要是将一些处理用jni实现,并不像其它的库用c来处理的,当然可能种种原因了.
还有一些java处理的,好像是老外写的:http://www.jhlabs.com/ip/filters/index.html,
还有http://www.cnblogs.com/daizhj/archive/2012/05/15/2501406.html也是纯java实现的.
不管如何,对于移动设备的java,内存稍不注意就会出现不够用的情况,况且,如果是一个图片应用,本身其它列表已经加载了不少的内存,再处理一张图片的话,就很容易崩溃了.
常见一些软件的图片滤镜处理能力还是不错的,如腾讯微博的,我就试过,一张图片i9000拍照的最高精度,缩放1/2再加载,然后用腾讯的库处理滤镜的效果,内存大约是占用了9m,速度相当快.谁叫人家有钱,请的都是高手.
说了这么多,其实主要目的在于说明.滤镜的处理虽然用c,但java通过jni与c连接,还是可以反编译出来的.
在这里是技术交流,我也不会把腾讯的库反编译了然后再弄一个java调用的例子放上来,这是不合法地.
从jni调用来看,它的流程大约是这样的:
先实例化一个jni连接的类,里面有5个方法.分别是初始化设置图片数据,释放内存,处理滤镜,获取高,获取宽.
外部的调用过程:先设置图片数据,初始化滤镜的种类,这个种类是从资源文件里读取的,大约10种,然后在gallery中选中某种效果后找到对应种类的索引值,氢把这个索引值与之前的bitmap的byte[]数组一起传入,之后就可以得到一个rgb数组了,然后用这个rgv数组进行构造bitmap.
这些调用jni是在一个iamge360jni类中,然后记得在处理完成后得到了想要的图片,需要进行资源释放 .调用recycle,名字混淆了自己找吧.
如果有兴趣的,可以把它的程序拿出来看看,过程还是蛮容易的.在graphic包中包含了一个e类,包含这些调用.jni类比较单独,容易找的
分享到:
相关推荐
总之,Android图片滤镜的实现主要依赖于ColorMatrix类,结合Paint对象和ColorFilter,可以轻松地为图片添加各种视觉效果。通过不断试验和调整ColorMatrix的参数,开发者可以创造出无数独特的滤镜,为用户带来丰富的...
"android图片处理滤镜"这个主题涉及到的是如何在Android平台上实现对图像进行视觉效果的调整,以达到增强、美化或者艺术化的目的。以下将详细介绍相关知识点。 一、Android图片处理基础 1. Android提供了Bitmap类...
在Android平台上,开发一款带有丰富滤镜功能的应用已经成为常见的需求,这主要得益于众多优秀的开源项目。"android平台开源滤镜代码"就是一个典型的示例,它提供了40多种不同的滤镜效果,大大简化了开发者的工作。这...
Android图片滤镜的实现涉及到图像处理算法、OpenGL ES以及一些开源库的使用。本话题将深入探讨Android图片滤镜的相关知识点。 1. **图像处理基础**: 在Android中,图片通常以Bitmap对象的形式存在。Bitmap提供了...
"Android图片滤镜源码"是一个专注于此领域的项目,它提供了丰富的滤镜效果,适合开发者研究和应用到自己的项目中。下面将详细介绍这个项目中的关键知识点。 1. **图片处理库**: - 在Android中,常见的图片处理库...
本文将深入探讨如何在不依赖JNI(Java Native Interface)的情况下实现Android图片滤镜的代码,尽管这种实现方式可能效率较低,但仍然可以满足基本需求。 首先,我们需要理解图片滤镜的工作原理。滤镜通常是通过...
在Android平台上,实现类似美图秀秀的图片处理功能,主要涉及到的是图像处理技术,特别是滤镜效果的应用。本文将深入探讨如何在Android应用中创建实时滤镜、调整饱和度、灰度处理、冷暖色调调整、放大镜效果以及模糊...
在Android平台上,开发一款具有实时滤镜功能的摄像头应用是一项技术含量较高的工作。"android 摄像头实时滤镜"项目就是针对这样的需求而设计的,它允许用户在拍摄视频或照片时实时应用各种视觉效果。下面我们将深入...
图片滤镜处理通常是通过图像处理库来实现的。在给定的文件名称“android-gpuimage-master”中,我们可以推测它使用的是GPUImageAndroid库,这是一个基于OpenGL ES的图片处理库,能够在GPU上高效地进行滤镜操作,提高...
总结一下,实现“Android图片滤镜渲染并保存到SD卡”主要包括以下步骤: 1. 加载图片为Bitmap对象。 2. 创建并设置Shader,实现滤镜效果。 3. 在自定义View的onDraw方法中,使用Canvas和Paint绘制带滤镜效果的图片。...
"Android图片滤镜"就是这样一个功能强大的库,它为开发者提供了丰富的滤镜效果,让图片处理变得更加灵活和多样化。这个库的特性使得它可以轻松地集成到任何Android应用中,为用户提供即时的视觉盛宴。 首先,我们要...
这个"Android图片滤镜框架GPUImage演示Demo"就是一个实际的应用示例,帮助开发者了解和学习如何在Android项目中集成并使用GPUImage库。 GPUImage框架由Brad Larson创建,最初是为iOS设计的,但后来被移植到Android...
本文将深入探讨Android图片滤镜的实现原理、常用库以及如何在项目中集成和自定义滤镜效果。 首先,我们来了解图片滤镜的基本概念。图片滤镜是指通过算法对图像进行色彩、亮度、对比度等方面的调整,从而改变图像的...
本文将深入探讨如何使用Java代码实现在Android上实现图片滤镜功能。 首先,我们需要理解滤镜的基本原理。滤镜效果通常是通过图像处理算法来实现的,这些算法对图像的像素进行操作,改变其颜色、亮度、对比度等属性...
图片滤镜 相机滤镜 三。滤镜种类 此项目基于wysaid的android-gpuimage-plus封装实现,感谢...
在Android平台上,图像滤镜处理是一项常见的任务,用于实现各种视觉效果,如复古、黑白、模糊等。这个Demo展示了十多种不同的滤镜效果,为开发者提供了丰富的实践参考。以下将详细探讨Android图像滤镜处理的一些关键...
GPUImage是一个强大的图像处理库,尤其在Android平台上,它提供了丰富的滤镜效果,可以实现对图像和视频的实时处理。这个“GPUImage组合滤镜Android”项目,正如标题所示,专注于利用GPU进行图像过滤,以实现高效且...
在Android平台上,滤镜技术是移动应用开发中的一个重要部分,特别是在图像处理和摄影类应用中。滤镜可以改变图片的色彩、饱和度、对比度,甚至实现艺术效果,如素描、油画等。本篇文章将深入探讨Android滤镜的相关...
2. **Android图片处理**: - Android提供了多种处理图像的方法,例如Bitmap类用于加载、创建和操作图像。但是,对于大规模的图像处理,如滤镜应用,直接在Java层处理可能会导致性能瓶颈。 - 使用JNI可以将图像处理...
史上最全的Android图片滤镜 可自定义任意效果滤镜 &搜索关键字变红,变颜色,指定字段变色 &仿ios给activity背景设置模糊度,(只需要一行代码简单集成)安卓模糊背景,半透明背景,任意透明度背景