[opencv]圖像處理-腐蝕操作與膨脹操作


1.腐蝕操作:

  類似於化學反應,用酸腐蝕金屬等等效果類似,因而被稱為腐蝕操作。

import cv2
import matplotlib.pyplot as plt
import numpy as np

# 載入漢字 展示原圖
img = cv2.imread('E:/img/6.jpg')

cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

# 腐蝕范圍2x2
kernel = np.ones((2,2),np.uint8)
# 迭代次數 iterations=1
erosion = cv2.erode(img,kernel,iterations = 1)

cv2.imshow('erosion',erosion)
cv2.waitKey(0)
cv2.destroyAllWindows()

原圖如下,帶有許多不需要的細線,可以利用腐蝕操作去除細線:

 

 腐蝕操作后

 

 2.膨脹操作

  與名稱同義,進行一個膨脹。上圖明顯腐蝕后,線條與原來相比變細了。這時可以采取一個膨脹操作來增寬線條。

  代碼為先腐蝕后膨脹的操作:

import cv2
import matplotlib.pyplot as plt
import numpy as np

# 載入漢字 展示原圖
img = cv2.imread('E:/img/6.jpg')

cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

# 腐蝕范圍2x2
kernel = np.ones((2,2),np.uint8)
# 迭代次數 iterations=1
erosion = cv2.erode(img,kernel,iterations = 1)

cv2.imshow('erosion',erosion)
cv2.waitKey(0)
cv2.destroyAllWindows()

# 膨脹范圍
kernel = np.ones((3,3),np.uint8)
# 迭代次數
img_dilate = cv2.dilate(erosion,kernel,iterations = 1)

cv2.imshow('dilate', img_dilate)
cv2.waitKey(0)
cv2.destroyAllWindows()

膨脹操作后,線條明顯變粗。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM