python,opencv对图片指定异形区域 进行增加掩膜
时间: 2024-01-12 13:04:14 浏览: 137
您好,针对您的问题,我可以给出以下的代码示例:
```python
import cv2
import numpy as np
# 读取原始图片
img = cv2.imread('input.jpg')
# 定义掩膜形状
pts = np.array([[10, 10], [100, 50], [200, 200], [50, 100]], np.int32)
pts = pts.reshape((-1, 1, 2))
# 创建空掩膜
mask = np.zeros(img.shape[:2], np.uint8)
# 在掩膜上绘制多边形
cv2.fillPoly(mask, [pts], (255, 255, 255))
# 将掩膜应用于原始图像
masked_img = cv2.bitwise_and(img, img, mask=mask)
# 显示结果
cv2.imshow('Masked Image', masked_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这段代码中,我们首先读取了原始的图片,然后定义了一个异形区域的掩膜形状。接着,我们创建了一个空的掩膜,并在掩膜上绘制了多边形。最后,我们将掩膜应用于原始图像,得到了指定异形区域的增强图像。
需要注意的是,这里我们使用了 OpenCV 中的 `fillPoly` 函数来绘制多边形,并使用 `bitwise_and` 函数将掩膜应用于原始图像。如果您对这些函数不熟悉,建议先去了解一下。
阅读全文