下面是一个简单的示例代码:
import cv2
# 读取图片
img = cv2.imread('image.jpg')
# 获取图片的尺寸
height, width, channels = img.shape
# 在图片上画一个红色的矩形框
cv2.rectangle(img, (50, 50), (200, 200), (255, 0, 0), 2)
# 显示图片
cv2.imshow('image', img)
# 等待按下任意按键
cv2.waitKey(0)
# 关闭所有窗口
cv2.destroyAllWindows()
tip :这个示例代码中,我们首先使用 cv2.imread 函数读取一张图片,然后使用 img.shape 获取图片的尺寸。接着,我们使用 cv2.rectangle 函数在图片上画了一个红色的矩形框,框的左上角坐标是 (50, 50),右下角坐标是 (200, 200)。最后,我们使用 cv2.imshow 显示图片,并使用 cv2.waitKey 等待按下任意按键,最后使用 cv2.destroyAllWindows 关闭所有窗口。
def on_mouse(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDOWN:
print(f'x: {x}, y: {y}')
cv2.setMouseCallback('image', on_mouse)
tip:这段代码会注册一个回调函数 on_mouse,当用户在窗口中按下鼠标时会自动调用这个函数。在这个函数中,我们会打印出鼠标点击的坐标点。注意,这个坐标点是相对于窗口左上角的坐标,而不是相对于图片左上角的坐标。