在 OpenCV 中获取 ROI 区域可以使用 cv2.getRectSubPix()
函数或者简单的 NumPy 数组切片。
使用 cv2.getRectSubPix()
函数:
import cv2
img = cv2.imread('image.jpg')
# 定义ROI区域
x, y, w, h = 100, 100, 200, 200
# 使用getRectSubPix获取ROI图像
roi = cv2.getRectSubPix(img, (w, h), (x + w/2, y + h/2))
cv2.imshow('ROI image', roi)
cv2.waitKey(0)
使用 NumPy 数组切片:
import cv2
img = cv2.imread('image.jpg')
# 定义ROI区域
x, y, w, h = 100, 100, 200, 200
# 切片获取ROI图像
roi = img[y:y+h, x:x+w]
cv2.imshow('ROI image', roi)
cv2.waitKey(0)