形态操作:基于形状处理图像的一组操作。形态操作将结构元素应用于输入图像并生成输出图像。
最基本的形态作用是两种:侵蚀和扩张。它们有广泛的用途,即:
(1),消除噪音。
(2),隔离单个元素并连接图像中的不同元素。
(3),寻找图像中的强度凸块或孔。
数学形态学可以理解为一种滤波行为,因此也称为形态学滤波。滤波中用到的滤波器(籽粒),在形态学中称为结构元素。结构元素往往是由一个特殊的形状构成,如线条,矩形,圆等。
OpenCV中的dilate函数支持多通道,各个通道膨胀处理过程独立。膨胀针对白色部分(高亮部分)。膨胀即是求局部最大值的操作,图像A与核B作卷积运算,计算核B覆盖区域的像素点的最大值,并把这个值赋值给锚点(anchor point)指定的像素。
扩张:
(1),该操作包括将图像A与一些内核(B)进行卷积,其可以具有任何形状或尺寸,通常为正方形或圆形。
(2),内核B有一个定义的锚点,通常是内核的中心。
(3)由于内核B在图像上扫描,我们计算出与B重叠的最大像素值,并用最大值代替锚点位置的图像像素。您可以推断,这种最大化的操作会使图像中的亮区“增长”(因此称为扩张)。
OpenCV代码提取:扩张(dilate)函数的实现
目前fbc_cv库中支持UCHAR和浮子两种数据类型,经测试,与OpenCV3.1结果完全一致。