blob分析python blob分析教程_去噪

【Halcon视频教程】Blob分析的基本概念和实现流程

 

Blob分析(Blob Analysis)是对图像中相同像素的连通域进行分析,该连通域称为Blob。经二值化(Binary Thresholding)处理后的图像中色斑可认为是blob。Blob分析工具可以从背景中分离出目标,并可以计算出目标的数量、位置、形状、方向和大小,还可以提供相关斑点间的拓扑结构。在处理过程中不是对单个像素逐一分析,而是对图像的行进行操作。图像的每一行都用游程长度编码(RLE)来表示相邻的目标范围。这种算法与基于像素的算法相比,大大提高了处理的速度。  基本概念Blob(Binary large object)是指从图像中获取的二值区域,一般来说,该二指区域是图像中的前景。在Halcon中,Blob是一个提取所得的region。Blob分析是指对该二值区域,进行面积、周长重心等特征的分析。  如下图所示:左边是一副原始图片,右边彩线包围区域是是获取的Blob区域,每个区域中十字的位置是Blob分析所得的重心位置。

blob分析python blob分析教程_特征分析_02

  实现流程Blob的实现流程大致可分为3个步骤:获取图像、提取Blob、Blob分析。1.获取图像:获取图像是指通过相机设备得到原始图像提取Blob2.提取Blob是根据需求提取要分析的目标二指区域Blob分析3.对提取出来的二值区域进行特征分析  存在的难点  以上是Blob分析的大致步骤。虽然看上去很简单,但实际上存在两个方面的难点。1. 步骤的完善  以上3步为大致步骤,是一种抽象下的理想状态,实际上,提取Blob之前和分析Blob之后也存在重要的步骤。比如,提取Blob之前一般要设计图像的去噪和增强处理;分析Blob之后需要将Blob进行选取,或者将Blob重心的像素值向物理坐标系坐标值的转化。2. 实现方法需具体分析  每一个步骤中实现的方法需要根据具体图片具体分析,就拿阈值分割提取Blob而言,使用固定阈值还是动态阈值,这都是根据图片情况进行具体分析的。