图像形态学概要-腐蚀、膨胀、开运算、闭运算、形态学梯度(形态学边缘提取)、顶帽操作、黑帽操作

图像形态学中两种最基本的操作就是对图形的腐蚀和膨胀,可以说,形态学中的中高级操作都是建立在这两种操作之上。

关于图像腐蚀和膨胀的概念,不严谨的简单理解是:经过腐蚀和膨胀操作后最终的效果是对图像中物体的边界进行一层一层的腐蚀和膨胀操作,这个边界包括内边界和外边界。当然这是精枝大叶的理解,如果只知道这个,在实际的工作中是不够的。严谨的理解是这样的:图像的腐蚀和膨胀实际上是用某种形状的窗去遍历图像中的每一个元素,并用这个区域中的最大值或最小值去代替窗口中的某个元素值(一般设为中心元素),若取得是最大值,则是膨胀操作,若取得是最小值,则是腐蚀操作。这里某种形状可以是十字形、菱形、矩形、X形等。这里我要强调一点,其实所有的窗都是矩形的,那么怎么样区分不同的形状呢?是这样操作的:通过把矩形中的元素置为0或1去区分。在窗内求最大值或最小值时,只有元素值不为0的位置才参与求最大值或最小值。具体的不同形状的构造方法可以参见我写的下篇博文“用形态学的方法实现图像的角点检测”。

下面我结合OpenCV的代码介绍一下标题中提到的相关概念。

首先说腐蚀和膨胀操作:

在OpenCV中,使用erode()和dilate()函数分别用于图像形态学的腐蚀与膨胀操作,各自的函数原型如下。

void

你可能感兴趣的:(图像处理与识别算法原理)