opencv Python 如何提取已知坐标围成的圆形区域
时间: 2024-02-21 12:57:27 浏览: 33
要提取已知坐标围成的圆形区域,可以使用OpenCV中的mask(掩膜)来实现。具体操作步骤如下:
1. 创建一个空白的掩膜,大小与原图像相同。
2. 使用circle()方法在掩膜上绘制圆形。
3. 使用bitwise_and()方法将原图像和掩膜进行按位与操作,提取出对应区域。
例如,下面的代码可以提取出已知坐标围成的圆形区域:
```python
import cv2
import numpy as np
# 加载图像
img = cv2.imread('test.jpg')
# 创建掩膜
mask = np.zeros(img.shape[:2], np.uint8)
# 定义圆心坐标和半径
center = (200, 200)
radius = 100
# 在掩膜上绘制圆形
cv2.circle(mask, center, radius, (255, 255, 255), -1)
# 将原图像和掩膜进行按位与操作,提取出对应区域
res = cv2.bitwise_and(img, img, mask=mask)
# 显示结果
cv2.imshow('Original Image', img)
cv2.imshow('Mask', mask)
cv2.imshow('Result', res)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述代码中,我们首先加载了一张测试图像。然后,创建了一个空白的掩膜,并定义了圆心坐标和半径。接着,使用circle()方法在掩膜上绘制了圆形。最后,使用bitwise_and()方法将原图像和掩膜进行按位与操作,提取出对应区域。最后,我们可以使用imshow()方法显示结果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)