python 多边形感兴趣区域提取roi
时间: 2023-08-07 16:58:25 浏览: 30
你可以使用OpenCV库来提取感兴趣区域(ROI)。
首先,你需要找到多边形的顶点坐标。然后,使用`cv2.fillPoly`函数在一个与图像大小相同的掩码图像上填充多边形区域。接下来,使用`cv2.bitwise_and`函数将掩码应用于原始图像,以提取ROI。
下面是一个示例代码:
```python
import cv2
import numpy as np
# 读取图像
image = cv2.imread('image.jpg')
# 定义多边形顶点坐标
pts = np.array([[50, 50], [200, 50], [200, 200], [50, 200]], np.int32)
# 创建掩码图像
mask = np.zeros(image.shape[:2], dtype=np.uint8)
# 填充多边形区域
cv2.fillPoly(mask, [pts], 255)
# 应用掩码
roi = cv2.bitwise_and(image, image, mask=mask)
# 显示结果
cv2.imshow('ROI', roi)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个示例中,我们首先读取一张图像。然后,定义了一个具有四个顶点的多边形。我们创建了一个与图像大小相同的掩码图像,并使用`cv2.fillPoly`函数填充多边形区域。最后,我们使用`cv2.bitwise_and`函数将掩码应用于原始图像,提取ROI。
你可以根据自己的需求修改顶点坐标和图像路径。希望这可以帮到你!
相关推荐
















