1 腐蚀和膨胀
1.1 腐蚀
作为 Z 2 Z^2 Z2中的集合A和B,表示为 A ⊖ B A\ominus B A⊖B的B对A的腐蚀定义为:
A ⊖ B = { z ∣ ( B ) z ⊆ A } A\ominus B=\{z|(B)_z\subseteq A\} A⊖B={
z∣(B)z⊆A}
通俗来讲是一个用z平移的B包含在A中所有的点z的集合。B必须包含在A中,B不与背景共享任何公共元素,也可以表示为 A ⊖ B = { z ∣ ( B ) z ∩ A c = ⊘ } A\ominus B=\{z|(B)_z\cap A^c=\oslash \} A⊖B={
z∣(B)z∩Ac=⊘},其中 A c A^c Ac是A的补集。
腐蚀缩小细化了二值图像中的物体。可以看成是形态学滤波操作,将小于结构元的图像细节从图像中滤除。
import cv2
import numpy as np
#读入图像
img = cv2.imread(‘c:\jimei.jpg’, cv2.IMREAD_GRAYSCALE)# 定义结构元素
kernel = np.ones((5,5), np.uint8)
#执行腐蚀操作
erosion = cv2.erode(img, kernel, iterations=1)
#显示结果
cv2.namedWindow(‘img’, cv2.WINDOW_NORMAL)
cv2.resizeWindow(‘img’, 800, 600)
cv2.namedWindow(‘corrode’, cv2.WINDOW_NORMAL)
cv2.resizeWindow(‘corrode’, 800, 600)
cv2.imshow(‘img’,img)
cv2.imshow(‘corrode’,erosion)
cv2.waitKey(0)
cv2.destroyAllWindows()

1.2 膨胀
作为 Z 2 Z^2 Z2中的集合A和B,表示为 A ⊕ B A\oplus B A⊕B的B对A的膨胀定义为:
A ⊕ B = { z ∣ ( B ~ ) z ∩ A ≠ ⊘ } A\oplus B=\{z|(\tilde B)_z\cap A\ne \oslash \} A⊕B={
z∣(B~)z∩A=⊘}
B关于它的原点的映像,并且以z对映像进行平移为基础的。B对A的膨胀是所有位移z的集合。 B ~ \tilde B B~与A至少有一个元素是重叠的。公式可写为:
A ⊕ B = { z ∣ [ ( B ~ ) z ∩ A ] ⊆ A } A\oplus B=\{z|[(\tilde B)_z\cap A]\subseteq A \} A⊕B={
z∣[(B~)z∩

最低0.47元/天 解锁文章
4381

被折叠的 条评论
为什么被折叠?



