OPENCV FOR PYTHON 学习笔记 - 形态学

图像腐蚀:腐蚀会把物体的边界腐蚀掉,卷积核沿着图象滑动,如果卷积核对应的原图的所有像素值为1,那么中心元素就保持原来的值,否则变为零。主要应用在去除白噪声,也可以断开连在一起的物体。

  cv2.erode(src, # 输入图像 原始图像

      kernel, # 卷积核

      dst=None, 

      anchor=None,

      iterations=None, # 迭代次数,默认1

      borderType=None,

      borderValue=None) 

图像膨胀:卷积核所对应的原图像的像素值只要有一个是1,中心像素值就是1。一般在除噪时,先腐蚀再膨胀,因为腐蚀在去除白噪声的时候也会使图像缩小,所以我们之后要进行膨胀。当然也可以用来将两者物体分开。是腐蚀操作的逆操作。

  cv2.dilate(src, # 输入图像

      kernel, # 卷积核

      dst=None,

      anchor=None,

      iterations=None, # 迭代次数,默认1

      borderType=None,

      borderValue=None)

图像开运算:图像被腐蚀后,去除了噪声,但是会压缩图像,对腐蚀过的图像,进行膨胀处理,可以去除噪声,并保持原有形状

  cv2.morphologyEx(原始图像/二值图像,cv2.MORPH_OPEN,卷积核)

图像闭运算:图像先膨胀后腐蚀,有助于关闭前景物体内部的小孔,或物体上的小黑点。

  cv2.morphologyEx(原始图像/二值图像,cv2.MORPH_CLOSE,卷积核)

图像梯度运算:膨胀图像-腐蚀图像 得到 轮廓图像

  cv2.morphologyEx(原始图像/二值图像,cv2.MORPH_GRADIENT,卷积核)

图像礼帽(顶帽)操作:礼帽图像 = 原始图像 - 开运算图像 得到的是 噪声图像

  cv2.morphologyEx(原始图像/二值图像,cv2.MORPH_TOPHAT,卷积核)

图像黑帽操作:黑帽图像 = 闭运算图像 - 原始图像 得到是图像内部的小孔,或前景色中的小黑点

  cv2.morphologyEx(原始图像/二值图像,cv2.MORPH_BLACKHAT,卷积核)

posted @ 2021-08-19 15:32  HappyChen2016  阅读(29)  评论(0编辑  收藏  举报