【Halcon视频教程】Blob分析的基本概念和实现流程
转载:https://zhuanlan.zhihu.com/p/75473787
【Halcon视频教程】Blob分析的基本概念和实现流程
Blob分析(Blob Analysis)是对图像中相同像素的连通域进行分析,该连通域称为Blob。经二值化(Binary Thresholding)处理后的图像中色斑可认为是blob。Blob分析工具可以从背景中分离出目标,并可以计算出目标的数量、位置、形状、方向和大小,还可以提供相关斑点间的拓扑结构。在处理过程中不是对单个像素逐一分析,而是对图像的行进行操作。图像的每一行都用游程长度编码(RLE)来表示相邻的目标范围。这种算法与基于像素的算法相比,大大提高了处理的速度。
基本概念
Blob(Binary large object)是指从图像中获取的二值区域,一般来说,该二指区域是图像中的前景。在Halcon中,Blob是一个提取所得的region。Blob分析是指对该二值区域,进行面积、周长重心等特征的分析。
如下图所示:左边是一副原始图片,右边彩线包围区域是是获取的Blob区域,每个区域中十字的位置是Blob分析所得的重心位置。
实现流程
Blob的实现流程大致可分为3个步骤:获取图像、提取Blob、Blob分析。
1.获取图像:获取图像是指通过相机设备得到原始图像提取Blob
2.提取Blob是根据需求提取要分析的目标二指区域Blob分析
3.对提取出来的二值区域进行特征分析
存在的难点
以上是Blob分析的大致步骤。虽然看上去很简单,但实际上存在两个方面的难点。
1. 步骤的完善
以上3步为大致步骤,是一种抽象下的理想状态,实际上,提取Blob之前和分析Blob之后也存在重要的步骤。比如,提取Blob之前一般要设计图像的去噪和增强处理;分析Blob之后需要将Blob进行选取,或者将Blob重心的像素值向物理坐标系坐标值的转化。
2. 实现方法需具体分析
每一个步骤中实现的方法需要根据具体图片具体分析,就拿阈值分割提取Blob而言,使用固定阈值还是动态阈值,这都是根据图片情况进行具体分析的。
Halcon是闭源的,市面上资料急缺,找不到系统资料,市面上能找到的都是一些没含金量的启蒙教程,为了解决这些问题,让大家更好的学习,作为一名工作8年的视觉工程师,我本想把我从事多年视觉高价搜集、购买的几万块halcon视觉资料分享出来给大家,是一个技术交流分享的平台,禁止传播分享,所以大家如果想一起交流可以私信我。
最后,鸡汤来一碗:要想浮起来,必须沉下去。学习和科研一定要认认真真,脚踏实地,做人做事都要如此!
这是我收集的全套教程,有需要的自己保存: