Bootstrap

Opencv ROI选取

自由选取图片中的功能。
是根据https://blog.csdn.net/xyl666666这个大佬的博客学的

import cv2
img = cv2.imread('1.jpg')
cv2.imshow("image", img)
# 是否显示网格
showCrosshair = True
# 如果为Ture的话 , 则鼠标的起始位置就作为了roi的中心
# False: 从左上角到右下角选中区域
fromCenter = False
# 选择 ROI(感兴趣的部分)图像
rect = cv2.selectROI("image", img, showCrosshair, fromCenter)
x1, y1, w1, h1 = rect

# 截取的图像
imCrop = img[y1: y1 + h1, x1:x1 + w1]
# 显示截取图像
cv2.imshow("image_roi", imCrop)
# cv2.imwrite("image_roi.jpg", imCrop)
cv2.waitKey(0)
cv2.destroyAllWindows()

主要函数:
cv2.selectROI()
主要参数:
正在显示的窗口的名称,这个窗口显示的图像变量的名称,是否显示网格bool,是否从中间开始bool

然后就是把截取的赋值个rect,获取了x,y,w,h四个值
实际上是x起点到w终点
y起点到h终点

最后就是运用裁剪的操作剪出我们想要的图像部分,然后显示就行了

;