python
import cv2
img = cv2.imread("image/2.png", 1)
roi = cv2.selectROI(img,showCrosshair=True,fromCenter=False)
xmin,ymin,w,h = roi
imgROI = img[ymin:ymin+h,xmin:xmin+w].copy()
cv2.imshow("demo",imgROI)
cv2.waitKey(0)
代码的核心就是用到了OpenCV中的函数 cv.selectROI 可以通过鼠标在图像上选择感兴趣的矩形区域(ROI,region of interest)
函数cv.selectROI创建一个显示窗口,允许用户使用鼠标选择ROI,按Space或Enter键完成选择,按c键取消选择。
该函数返回的结果包含起始坐标(左上角)和终止坐标(右下角)
利用返回的坐标,进行截取图像
最后再展示图像
但也只能单独使用opencv,不能和pyqt的lable联动
参考原文:OpenCV-PyQT项目实战(7)项目案例03:鼠标框选_pyqt 鼠标框选_youcans_的博客-CSDN博客