Android提高十六篇之使用NDK把彩图转换灰度图
来源:互联网 发布:c语言求5个数平均值 编辑:程序博客网 时间:2024/05/22 15:33
本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处!
在Android上使用JAVA实现彩图转换为灰度图,跟J2ME上的实现类似,不过遇到频繁地转换或者是大图转换时,就必须使用NDK来提高速度了。本文主要通过JAVA和NDK这两种方式来分别实现彩图转换为灰度图,并给出速度的对比。
先来简单地介绍一下Android的NDK使用步骤:
以NDK r4为例,或许以后新版的NDK的使用方法略有不同。
1、下载支持C++的android-ndk-r4-crystax,支持C++的话可玩性更强......
2、下载cygwin,选择ftp://mirrors.kernel.org这个镜像,搜索 Devel Install 安装 gcc 和 make 等工具;
在搜索框里分别搜索gcc和make,必须是 Devel Install 栏的。
3、Cygwin安装目录下,找到home/username的目录下的.bash_profile文件,打开文件在最后加上:
NDK=/cygdrive/d:cygwin/android-ndk-r4-crystax
export NDK
PS:假设安装在D:/cygwin/android-ndk-r4-crystax。
4、运行cygwin,通过cd命令去到NDK/samples/例子目录/,运行$NDK/ndk-build来编译该目录下的Android.mk
以下是个人习惯.......
5、安装Eclipse的CDT,官方下载cdt安装包,解压缩后把plugins和feagures 复制覆盖到eclipse文件夹下即可
6、去到系统属性->环境变量->Path添加"D:/cygwin/bin"(假设cygwin安装在D:下)和"D:/cygwin/android-ndk-r4-crystax",重启计算机,然后就可以在Eclipse里面建立基于cygwin的C/C++工程了,先通过这一步来验证NDK的程序能够编译成功,然后再通过第4步来生成SO文件。
接下来看看本文程序运行的效果:
从转换灰度图的耗时来说,NDK的确比JAVA所用的时间短不少。
main.xml源码如下:
主程序testToGray.java的源码如下:
封装NDK函数的JAVA类LibFuns.java的源码如下:
彩图转换为灰度图的ImgToGray.cpp源码:
Android.mk的源码:
- Android提高十六篇之使用NDK把彩图转换灰度图
- Android提高十六篇之使用NDK把彩图转换灰度图
- Android提高十六篇之使用NDK把彩图转换灰度图
- Android提高十六篇之使用NDK把彩图转换灰度图
- Android提高十六篇之使用NDK把彩图转换灰度图
- Android提高十六篇之使用NDK把彩图转换灰度图
- Android提高十六篇之使用NDK把彩图转换灰度图
- 【Android】Android Studio中使用OpenCV将彩图转换成灰度图
- OpenCV简单例子之彩图转化为灰度图
- android 使用NDK进行图像处理(openCV)时的图像转换问题(灰度图显示)
- 彩图转灰度图算法
- 将24位BMP真彩图转换成BMP灰度图
- 数字图像处理_真彩图转换灰度图_纯C
- 将24位BMP真彩图转换成BMP灰度图
- 灰度图与彩图的双边滤波
- opencv 3.0 灰度图 转 彩图 applyColorMap
- Matlab之索引图像转化为灰度图和真彩图
- 24位真彩图转8位灰度图
- timer定时器
- sbr": No such file or directory 问题小记
- C语言形参和实参的陷阱
- js Date 对象用于处理日期和时间
- ubuntu10.04 下 nginx1.0.3安装出错记录
- Android提高十六篇之使用NDK把彩图转换灰度图
- css语法(转自“清清月儿”)
- 2011 江苏考生文化课304 选修CC 在江苏志愿参考
- CSS定位 (转自”清清月儿“)
- Android提高十七篇之多级树形菜单的实现
- zoj 1542 【Kruskal算法】
- lib库的生成与使用
- Linux iptables 防火墙状态
- DW中CSS属性详解 .(转自”清清月儿“)