两个点:找到组件+标记它
找到它:int nComponents = connectedComponents(imThresh, imLabels);
标记转换:imLabels.convertTo(imLabels, CV_8U);
                  Mat imColorMap;
                 applyColorMap(imLabels, imColorMap, COLORMAP_JET);
上代码

// Read image as grayscaleMat img = imread("D:/OpenCVPrj/WangYi/MOpenCV_class4/images/truth.png", IMREAD_GRAYSCALE);//1.Threshold Image 阈值化Mat imThresh;threshold(img, imThresh, 127, 255, THRESH_BINARY);imshow("image", imThresh);//2.找到连通的组件 标记它Mat imLabels;//显示连通组件的个数int nComponents = connectedComponents(imThresh, imLabels);Mat imLabelsCopy = imLabels.clone();Point minLoc, maxLoc;double min, max;//3.得到原始标签//4.转换标签为CV_8U//5.可视化->变成彩色的minMaxLoc(imLabels, &min, &max, &minLoc, &maxLoc);// Normalize the image so the min value is 0 and max value is 255.//标签转换 标签越大,灰度级别越高imLabels = 255 * (imLabels - min) / (max - min);//标签转换为 8位imLabels.convertTo(imLabels, CV_8U);imshow("image", imLabels);imLabels = imLabelsCopy.clone();for (int i = 0; i < 6; i++) {imshow("image", imLabels == i);waitKey(0);}// Make a copy of the imageimLabels = imLabelsCopy.clone();// First let's find the min and max values in imLabels// The following line finds the min and max pixel values// and their locations in an image.double minValue, maxValue;minMaxLoc(imLabels, &minValue, &maxValue, &minLoc, &maxLoc);// Normalize the image so the min value is 0 and max value is 255.imLabels = 255 * (imLabels - minValue) / (maxValue - minValue);// Convert image to 8-bitsimLabels.convertTo(imLabels, CV_8U);// Apply a color mapMat imColorMap;applyColorMap(imLabels, imColorMap, COLORMAP_JET);// Display colormapped labelsimshow("image", imColorMap);waitKey(0);destroyAllWindows();

C++-OpenCV(1)-连通区域相关推荐

  1. opencv 最大连通域_opencv 查找连通区域 最大面积实例

    今天在弄一个查找连通的最大面积的问题. 要把图像弄成黑底,白字,这样才可以正确找到. 然后调用下边的方法: RETR_CCOMP:提取所有轮廓,并将轮廓组织成双层结构(two-level hierar ...

  2. OpenCV编程案例:使用轮廓函数检测连通区域

    转自:http://www.aiseminar.cn/bbs/thread-617-1-1.html 此案例位于CXCORE中cvDrawContours函数介绍部分给出.此程序首先载入一个二值图像文 ...

  3. OpenCV删除面积小的区域 实现图像二值化分割 标记连通区域

    OpenCV删除面积小的区域 实现图像二值化分割 标记连通区域    [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/781 ...

  4. OpenCV与图像处理学习九——连通区域分析算法(含代码)

    OpenCV与图像处理学习九--连通区域分析算法(含代码) 一.连通区域概要 二.Two-Pass算法 三.代码实现 一.连通区域概要 连通区域(Connected Component)一般是指图像中 ...

  5. opencv笔记(十八)——连通区域分析

    本文主要介绍在CVPR和图像处理领域中较为常用的一种图像区域(Blob)提取的方法--连通性分析法(连通区域标记法).文中介绍了两种常见的连通性分析的算法:1)Two-pass:2)Seed-Fill ...

  6. OpenCV二值图像处理——阈值,连通区域分析(C++)

    阈值 阈值又叫临界值,是指一个效应能够产生的最低值或最高值 对于图像的直方图存在明显边界的图像,我们可以很容易找到这个阈值,但是如果图像直方图分界不明显,那么这个阈值的寻找将变得十分困难.因此我们存在 ...

  7. opencv 最大连通域_opencv 查找连通区域 最大面积

    今天在弄一个查找连通的最大面积的问题. 要把图像弄成黑底,白字,这样才可以正确找到. 然后调用下边的方法: RETR_CCOMP:提取所有轮廓,并将轮廓组织成双层结构(two-level hierar ...

  8. opencv(十三)-快速连通区域分析

    索引目录 1.连通区域标记算法 2.剔除小连通区域 参考 1.连通区域标记算法 连接区域标记算法(connected component labeling algorithm)是图像分析中最常用的算法 ...

  9. OPENCV C++图像提取,图像处理,roi,阈值分割,连通区域筛选,边缘检测(以箱子边缘框选为例)

    本周有机会接触了一点opnev, 在此做一下记录, 最终以框选出下图箱子为目的(图片箱子为相机实拍结果,曝光有点低,会有亿点点暗 ), 本文会拆解步骤并附上图片, 完整的源码在最后.PS:本文参考了好 ...

  10. 【小知识】opencv里去掉小连通区域的函数remove_small_objects()解析

    网上搜了好多都没有详细的解释函数里面参数的,参考的python数字图像处理(18):高级形态学处理,码下来省得以后再找了. 有些时候,我们只需要一些大块区域,那些零散的.小块的区域,我们就需要删除掉, ...

最新文章

  1. 云无边界,阿里云混合云数据同步发布
  2. 高中计算机会考优秀网,北京高三体育会考成绩255分为优秀
  3. 数据库系统概念学习笔记2
  4. php函数dirname范例,PHP dirname( )用法及代碼示例
  5. IDEA+Hadoop运行TriangleCount程序
  6. mysql 数据字典 php_php生成mysql数据库数据字典的程序代码
  7. Python使用os.listdir()函数来得目录内容的介绍
  8. goudp文件传输服务器,golang udp服务端客户端例子
  9. Kernel panic -not syncing:Attempted to kill init!
  10. python 服务端框架_GitHub - edisonlz/fastor: Python服务端开发框架-极易上手,超出你的想象!...
  11. 上传文件白名单_十大常见web漏洞——文件上传漏洞
  12. java获取mysql时间格式化_Java与mysql的时间格式化问题,获取时间的上下午
  13. linux模拟进程调度,Linux进程调度模拟3
  14. 如何使用高大上的方法调参数
  15. excel模板报表转PDF下载
  16. 俄勒冈健康与科学大学计算机,GE 医疗合作俄勒冈健康与科学大学,赋能虚拟ICU...
  17. Programming Assignment 4: Boggle
  18. Google GMS 送测的三种方式
  19. 让mysql的自增id重新从1开始
  20. 关于Xilinx下载器驱动安装及常见问题解决方法

热门文章

  1. android刷win8,驰为VX8 3G Win8刷安卓系统固件教程发布
  2. 某侠图床源码 图片外链服务 带API
  3. Java8 处理日期和时间
  4. 【传感器大赏】80cm红外距离传感器
  5. 什么是软件危机?它有哪些典型表现?为什么会出现软件为危机?
  6. 为什么总是封板又打开涨停_一旦持有个股出现涨停板,却封不住反复打开,意味着什么?...
  7. 海明码的编码和校验方法
  8. debian7系统设置固定IP
  9. 交易系统的高盈亏比怎么实现?
  10. P1972 [SDOI2009]HH的项链 区间查询