欢迎大家学习OpenCV4.8 开发实战专栏,长期更新,不断分享源码。
专栏代码全部基于C++ 与Python双语演示。
送相关学习资料V : OpenCVXueTang_Asst
本文关键知识点:二值图像 联通组件寻找
连通组件标记算法介绍
连接组件标记算法(connected component labeling algorithm)是图像分析中最常用的算法之一,算法的实质是扫描二值图像的每个像素点,对于像素值相同的而且相互连通分为相同的组(group),最终得到图像中所有的像素连通组件。扫描的方式可以是从上到下,从左到右,对于一幅有N个像素的图像来说,最大连通组件个数为N/2。扫描是基于每个像素单位,OpenCV中进行连通组件扫码调用的时候必须保证背景像素是黑色、前景像素是白色。最常见的连通组件扫码有如下两类算法:
1.一步法,基于图的搜索算法
2.两步法、基于扫描与等价类合并算法
OpenCV中支持连通组件扫描的API有两个,一个是带统计信息一个不带统计信息。不带统计信息的API及其解释如下:
int cv::connectedComponents(
InputArray image,// 输入二值图像,黑色背景
OutputAr