OpenCV-python利用鼠标绘制ROI区域

一、利用鼠标移动截取感兴趣区域ROI:OpenCV-python自带 API 可直接选择矩形区域作为ROI,该API位于目标追踪模块,主要是cv2.selectROI()函数
import cv2

img = cv2.imread(“D:\OpenCV-python ROI\sliceROI_image.jpg”) #输入所显示的图片的路径
#windowName:选择的区域被命名
roi = cv2.selectROI(windowName=“roi”, img=img, showCrosshair=True, fromCenter=False)
x, y, w, h = roi
img_roi = img[int(roi[1]):int(roi[1]+roi[3]),int(roi[0]):int(roi[0]+roi[2])] #截取ROI
cv2.rectangle(img=img, pt1=(x, y), pt2=(x + w, y + h), color=(0, 0, 255), thickness=2)
cv2.imshow(“roi”, img)
cv2.imshow(“imageHSV”,img_roi)
cv2.waitKey(0)
cv2.destroyAllWindows()
二、显示的最终图像
第一幅图为roi图 ,在此图上绘制roi区域
OpenCV-python利用鼠标绘制ROI区域_第1张图片
第二幅图为img_roi图,该图为截取所需要的区域的roi图
OpenCV-python利用鼠标绘制ROI区域_第2张图片

注释: cv2.selectROI()函数中showCrosshair:是否在矩形框里画十字线. fromCenter:是否是从矩形框的中心开始画

你可能感兴趣的:(利用鼠标绘制roi区域,opencv,python,计算机视觉)