java方法

  private native void argb2bgr(byte[] rgbSrc,byte[] bgrDesc);public byte[] getPixelsBGR(Bitmap image) {// calculate how many bytes our image consists ofint bytes = image.getByteCount();ByteBuffer buffer = ByteBuffer.allocate(bytes); // Create a new bufferimage.copyPixelsToBuffer(buffer); // Move the byte data to the bufferbyte[] argbIn = buffer.array(); // Get the underlying array containing the data.byte[] bgrOut = new byte[(argbIn.length / 4) * 3]; // Allocate for BGRargb2bgr(argbIn,bgrOut);return bgrOut;}

native中

extern "C"
JNIEXPORT void JNICALL
Java_com_huaan_tablet_fireflyfacerecognition_MainActivity_argb2bgr(JNIEnv *env, jobject instance,jbyteArray rgbSrc_,jbyteArray bgrDesc_) {jbyte *rgbSrc = env->GetByteArrayElements(rgbSrc_, NULL);jbyte *bgrDesc = env->GetByteArrayElements(bgrDesc_, NULL);int wh = env->GetArrayLength(rgbSrc_) / 4 ;//#pragma omp parallel forfor (int i = 0; i < wh; ++i) {bgrDesc[i * 3] = rgbSrc[i * 4 + 2];        //BbgrDesc[i * 3 + 1] = rgbSrc[i * 4 + 1];   //GbgrDesc[i * 3 + 2] = rgbSrc[i * 4 ];       //R}env->ReleaseByteArrayElements(rgbSrc_, rgbSrc, JNI_ABORT);env->ReleaseByteArrayElements(bgrDesc_, bgrDesc, JNI_COMMIT);
}

Bitmap 转 BGR相关推荐

  1. Emgucv类型转换

    常用容器: Bitmap: Bitmap位图文件,是Windows标准格式,也是.Net主要的图像存储格式. Bitmap类以System.Drawing为命名空间,继承抽象类Image,同时里面封装 ...

  2. 阿里MNN移动端部署框架,将FreeImage更换为opencv的实现

    一.动机 上周阿里最新开源的MNN移动端部署框架,为了尽可能压缩依赖库的大小,读图及图像处理操作全部基于FreeImage实现.但是, (1)由于我们项目中大量依赖opencv,再添加FreeImag ...

  3. bitmap格式分析

    位图(Bitmap)当然是最简单的,它Windows显示图片的基本格式,其文件扩展名为*.BMP.在Windows下,任何各式的图片文件(包括视频播放)都要转化为位图个时候才能显示出来,各种格式的图片 ...

  4. Bitmap和YUV的转换

    以前做过的一个视频通话中,有用到Bitmap和YUV的转换,现在整理出来. 参考自:http://blog.csdn.net/lancees/article/details/7686046 http: ...

  5. 【Android 内存优化】Android 工程中使用 libjpeg-turbo 压缩图片 ( JNI 传递 Bitmap | 获取位图信息 | 获取图像数据 | 图像数据过滤 | 释放资源 )

    文章目录 一.Bitmap 图像数据处理 二.Java 层 Bitmap 对象转为 JNI 层 bitmap 对象 三.获取 bitmap 中的图像数据 四.过滤 bitmap 中的图像数据 ( 获取 ...

  6. bitmap文件格式分析

    说到图片,位图(Bitmap)当然是最简单的,它Windows显示图片的基本格式,其文件扩展名为*.BMP.在Windows下,任何各式的图片文件(包括视频播放)都要转化为位图个时候才能显示出来,各种 ...

  7. DIB位图(Bitmap)的读取和保存

    设备无关位图(Device Independent Bitmap)是可以保存在磁盘的位图文件,可以从磁盘读取到内存或者从内存保存到磁盘上.它的文件结构是标准化的,可以在Windows/Linux/Un ...

  8. c#图像处理入门(-bitmap类和图像像素值获取方法)

    c#图像处理入门 -bitmap类和图像像素值获取方法 一.Bitmap类 Bitmap对象封装了GDI+中的一个位图,此位图由图形图像及其属性的像素数据组成.因此Bitmap是用于处理由像素数据定义 ...

  9. C#中的bitmap类和图像像素值获取方法

     private void button1_Click_1(object sender, EventArgs e)         {             // 画直线 //Bitmap bitM ...

最新文章

  1. 打包几乎各程序都需要用到的宏命令和使用名空间
  2. 说说JSON和JSONP,也许你会豁然开朗
  3. Web.config中连接字符串的加密和解密
  4. 是什么_什么是模电,什么是数电
  5. 【python】Flask视图
  6. Phaser Matter Collision Plugin 碰撞插件 -- iFiero技术分享
  7. C++ 类型转换操作与操作符重载 operator type() 与 type operator()
  8. NO.1 根据数组元素之和,获取对应索引
  9. Adobe Reader 下载
  10. 在windows 2008下面使用dynamipsgui
  11. 最好用的卸载软件工具(Your Uninstaller! PRO)
  12. 平面阵列天线的3D方向图的Python综合
  13. 计算机的音量打不开,电脑没声音。音量控制也打不开怎么处理?
  14. Linux LTP (一)
  15. 如何一键重装Win10系统图文教程
  16. 微博模拟登陆之验证码的解决方法
  17. 腾讯课堂 H5 直播间点赞动效实现
  18. Android 删除图片后刷新媒体库
  19. SQL查询语句注入实战(手注,显注)
  20. Android 自定义折线图实现教程

热门文章

  1. 2021-10-28 Exhaustive-match.hdev注释
  2. Cadence OrCAD Capture 将黄色的元器件属性折叠的方法
  3. 数据分析与数据挖掘的简单了解
  4. XMLHttp客户端操作数据
  5. Appium 分布式selenium grid
  6. vue实现倒计时功能
  7. 5G通信系统应用场景与消费物联网、工业物联网应用场景综合分析
  8. 亚马逊MWS开发--开始篇
  9. CMMI认证后的作用
  10. vue使用XLSX下载表格