Android 的Application—native调试暂时还只能进行主线程调试,在GDB里面,运行于子线程的OpenCv数据处理过程不能直接调试,OPenCV-Native函数    public Mat onCameraFrame(CvCameraViewFrame inputframe){} 是运行于子线程的,暂时还找不到调试的方法。并且,自己编写的子函数若是嵌入onCameraFrame()函数,也不能进行Native调试,因此是一个令人忧桑的开发过程。

对OpenCvMat 型进行测试,C++的Highgui显示函数是无效的,因为窗口不能直接从Android界面弹出。需要使用imageview进行显示以便查看图像处理的结果,因此我借鉴了少许代码:

@SuppressLint("SdCardPath")
private int trackTestCv()
{String filename ="/sdcard/DevCv/Picture/";filename += 1 + ".jpg";Mat frame =Highgui.imread(filename);Mat frameRf = new Mat(frame.rows(),frame.cols(),CvType.CV_8UC3);Bitmap bmp= null;bmp =Bitmap.createBitmap( frame.width(),  frame.height(),  Bitmap.Config.ARGB_8888);covMat2bm(frameRf,bmp);mImageView.setImageBitmap( bmp );mImageView.invalidate();mImageView.setVisibility(View.VISIBLE);
}private int covMat2bm(Mat mat,Bitmap bm)
{Utils.matToBitmap(mat, bm);return 1;
}

函数解释:

mImageView

为一个imageview控件,使用前先获取ID

注意事项:事件的更新是遵循事件响应进行的,在一个写死的循环里对imageview进行更新是不改变显示效果的

安卓使用ImageView显示OpenCV-Mat相关推荐

  1. C# winform PictureBox显示opencv Mat图片

    在winform设计器托一个PictureBox.一个按钮,界面如下: 代码 using System; using System.Collections.Generic; using System. ...

  2. FFmpeg转OpenCV Mat显示

    FFmpeg一般采用SDL进行显示,如果不追求复杂的界面.交互和多线程功能,当然也可以使用OpenCV的imshow()方法进行显示了,而且实现起来比SDL更简单.方法也很简单,只需要把视频帧的BGR ...

  3. OpenCV Mat 简介

    OpenCV Mat 简介 Part I Mat是OpenCV最基本的数据结构,Mat即矩阵(Matrix)的缩写,Mat数据结构主要包含2部分:Header和Pointer.Header中主要包含矩 ...

  4. OpenCV Mat类详解和用法(官网原文)

    参考文章:OpenCV Mat类详解和用法 我马克一下,日后更 官网原文链接:https://docs.opencv.org/3.2.0/d6/d6d/tutorial_mat_the_basic_i ...

  5. Dlib学习笔记:解决dlib array2d转 OpenCV Mat时颜色失真

    Dlib学习笔记:解决dlib array2d转 OpenCV Mat时颜色失真 [尊重原创,转载请注明出处] http://blog.csdn.net/guyuealian/article/deta ...

  6. OpenCV Mat主要用法(1)

    Mat 为OpenCV中的核心数据结构,主要负责图像数据的保存,Mat创建方法有很多种 Mat构造函数 可以使用Mat构造函数,创建Mat,Mat构造函数有多种形式的参数,来满足要求 Mat 主要构造 ...

  7. OpenCV Mat与uchar*指针相互转换赋值

    将uchar*数组内容赋值到OpenCV Mat中时,可以利用如下操作完成转换: uchar* data = [...]; Mat src(rect_height, rect_width, CV_8U ...

  8. OpenCV Mat类详解和用法

    OpenCV Mat类详解和用法 我们有多种方法可以获得从现实世界的数字图像:数码相机.扫描仪.计算机体层摄影或磁共振成像就是其中的几种.在每种情况下我们(人类)看到了什么是图像.但是,转换图像到我们 ...

  9. Qt QImage与OpenCV Mat转换

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51029382 应一个朋友的要求,整理总 ...

最新文章

  1. 创建虚拟环境 安装pytorch 0.3.1
  2. python中的静态方法和类方法
  3. 虚拟网络编辑器的知识和出现的一些问题(没有VMnet0或VMnet8)
  4. Python入门100题 | 第042题
  5. 一个jsp页面中多个提交按钮提交不同的页面
  6. leetcode(3)---寻找最大字符串
  7. shell中的${},##和%%的使用
  8. Java多线程(四)——多线程数据隔离与共享
  9. 共享充电宝APP小程序开发解决方案
  10. 30岁了还可以学java吗_30岁还能零基础学Java吗?
  11. 关于两仪、三才、四象、五行、六合、七星、八卦、九宫、十方、中医的现代科学猜想全解
  12. 数据分析——人口变化matplotilb绘图
  13. 万里无云 满天繁星
  14. dos 查看wifi 密码命令
  15. HAL库教程3:引脚输入检测
  16. 说一千道一万,不如自己动手做做看!带大家薅一波华为云的羊毛,速撸!
  17. OpenStack T版—Nova组件部署详解
  18. 51智能小车(舵机、超声波、蓝牙)
  19. printf从右向左计算,从左向右打印
  20. js库Modernizr的介绍和使用

热门文章

  1. 嵌入式Linux驱动笔记(十八)------浅析V4L2框架之ioctl【转】
  2. Apollo 10 — adminService 全量发布
  3. error: style attribute '@android:attr/windowEnterAnimation' not found.
  4. well 这是第一次记录
  5. php按需加载方式来增加程序的灵活度
  6. openstack 之 控制节点物理机备份
  7. JAVA的extends使用方法
  8. Android下ListView的分页(9.6)
  9. UITabBarController详解
  10. Integer.highestOneBit(int i)方法的作用与底层实现