PYTHON OPEN CV 鼠标 选择 ROI
时间: 2024-09-19 19:15:02 浏览: 45
Python OpenCV实现鼠标画框效果
在Python的OpenCV库中,ROI(Region of Interest,兴趣区域)是指图像中的某个特定部分,通常用于处理大型图像并只关注某些特定区域。当你使用鼠标选择ROI时,你可以通过cv2.selectROI()函数来进行交互式地选择。这个过程包括以下几个步骤:
1. 导入必要的模块和OpenCV库:
```python
import cv2
import numpy as np
```
2. 加载图片:
```python
img = cv2.imread('image.jpg')
```
3. 显示原图并等待用户鼠标点击:
```python
cv2.imshow("Image", img)
```
4. 使用cv2.selectROI()函数获取鼠标的点击位置和大小,并创建ROI矩形:
```python
mask = None
while True:
mask, x, y, w, h = cv2.selectROI("Image", img, fromCenter=False, showCrosshair=True)
if cv2.waitKey(1) & 0xFF == ord('q') or w*h == 0: # 按q键退出或ROI为空则退出循环
break
```
5. 应用ROI到原始图像上,可以对选中的区域进行单独操作:
```python
roi_img = img[y:y+h, x:x+w]
# 或者做进一步处理,比如缩放、裁剪、滤波等
```
6. 最后关闭窗口:
```python
cv2.destroyAllWindows()
```
阅读全文