python opencv 膨胀腐蚀
时间: 2023-10-08 09:04:47 浏览: 204
图像腐蚀和图像膨胀是Python OpenCV中常用的图像处理技术。图像腐蚀通过对二值图像进行操作,去除噪声并压缩噪声。腐蚀操作通过在图像上滑动一个小的窗口(称为内核或结构元素),将窗口内的像素值设为窗口内像素的最小值。这样可以消除图像中的小的白色或黑色噪点。
腐蚀之后,可以使用图像膨胀操作来恢复图像的原始形状并去除剩余的噪声。膨胀操作与腐蚀操作相反,它将窗口内的像素值设为窗口内像素的最大值。膨胀操作可以使图像中的物体区域扩大,填充空洞并恢复形状。
在Python的OpenCV库中,可以使用cv2.erode()函数进行图像腐蚀操作,使用cv2.dilate()函数进行图像膨胀操作。这些函数接受输入图像和内核大小作为参数,并可以通过迭代次数来控制腐蚀和膨胀的程度。例如,通过设置iterations参数为3,可以进行三次腐蚀和膨胀操作。
下面是一个示例代码,展示了如何使用Python OpenCV进行图像腐蚀和膨胀操作:
```python
import cv2
import numpy as np
img = cv2.imread("cycle.png", cv2.IMREAD_COLOR)
kernel = np.ones((5, 5), np.uint8) #设置内核大小
erosion = cv2.erode(img, kernel, iterations=3) # 腐蚀操作
dilate = cv2.dilate(erosion, kernel, iterations=3) # 膨胀操作
cv2.imshow("Original", img)
cv2.imshow("Erosion", erosion)
cv2.imshow("Dilation", dilate)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个示例中,我们首先读取了名为"cycle.png"的图像。然后创建了一个大小为(5, 5)的内核,用于腐蚀和膨胀操作。接下来,我们分别对图像进行了3次腐蚀和膨胀操作,并在窗口中显示了原始图像、腐蚀结果和膨胀结果。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [opencv 图像腐蚀和图像膨胀的实现](https://download.csdn.net/download/weixin_38524472/13709873)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [python-opencv之形态学操作(腐蚀和膨胀)原理详解](https://blog.csdn.net/qq_38505858/article/details/126782368)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文