OpenCV 访问Mat 像素

简介:

场景

    在进行烟雾检测的过程中,需要访问Mat指定区域的像素值,然后判断是否符合烟雾的像素特征(当然,在网上查询到的烟雾像素特征,实际上,并没有正确识别出烟雾),可通过如下的方式进行操作

   int  similarDegree = 0;

    int channel = srcMat.channels();

    for (int i=info.smokeLeftTopPos.y; i<maxHeight; i++)

    {

      for (int j=info.smokeLeftTopPos.x; j<maxWidth; j++)

      {

        int r = srcMat.at<uchar>(i, j*channel);

        int g = srcMat.at<uchar>(i, j*channel+1);

        int b = srcMat.at<uchar>(i, j*channel+2);

        if ((r>=200) && (g>=200) && (b<=180))

        {

          similarDegree++;

        }

      }

    }


当然在实际的应用过程中,像素的值很可能不是无符号字符型,还有可能是浮点型,短整型等,可以使用如下的方式进行判断:

    int type = 0;

    switch(srcMat.type())

    {

    case CV_8UC3:

      type = 0;

      break;

    case CV_8SC3:

      type = 1;

      break;

    case CV_16UC3:

      type = 2;

      break;

    case CV_16SC3:

      type = 3;

      break;

    case CV_32SC3:

      type = 4;

      break;

    case CV_32FC3:

      type = 5;

      break;

    case CV_64FC3:

      type = 6;

      break;

    }


参考

http://www.cnblogs.com/wangguchangqing/p/4016179.html



    本文转自fengyuzaitu 51CTO博客,原文链接:http://blog.51cto.com/fengyuzaitu/1946642,如需转载请自行联系原作者






相关文章
|
1天前
|
存储 新制造 开发工具
Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为Mat图像格式(C++)
Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为Mat图像格式(C++)
44 2
|
6月前
|
存储 Cloud Native Linux
OpenCV 图像像素运算操作
OpenCV 图像像素运算操作
|
7月前
|
算法 C++ 计算机视觉
OpenCV-图像像素遍历操作的三种方法对比(程序提速)
OpenCV-图像像素遍历操作的三种方法对比(程序提速)
111 0
|
1天前
|
存储 新制造 开发工具
Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为Mat图像格式(C#)
Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为Mat图像格式(C#)
34 0
|
1天前
|
存储 算法 C语言
OpenCV—访问图像中的像素
OpenCV—访问图像中的像素
|
1天前
|
算法 计算机视觉
OpenCV(四十四):亚像素级别角点位置优化
OpenCV(四十四):亚像素级别角点位置优化
50 0
|
1天前
|
计算机视觉 索引 Python
OpenCV 4基础篇| OpenCV像素的编辑
OpenCV 4基础篇| OpenCV像素的编辑
|
1天前
|
存储 定位技术 计算机视觉
Armadillo与OpenCV矩阵数据mat、vec与Mat的相互转换
Armadillo与OpenCV矩阵数据mat、vec与Mat的相互转换
|
1天前
|
数据安全/隐私保护 计算机视觉 开发者
OpenCV中使用NumPy模块操作像素讲解及实战(附源码 超详细)
OpenCV中使用NumPy模块操作像素讲解及实战(附源码 超详细)
42 0
OpenCV中使用NumPy模块操作像素讲解及实战(附源码 超详细)
|
1天前
|
存储 计算机视觉 索引
OpenCV中确定像素位置及获取、修改像素BGR值讲解及演示(Python实现 附源码)
OpenCV中确定像素位置及获取、修改像素BGR值讲解及演示(Python实现 附源码)
71 0