这是我编写的一些代码,用于通过右键单击来获取左键单击和BGR通道值的坐标。我只想知道,为什么在flag
函数中使用param
和click_event
参数很重要? flag
和param
如何工作?
import numpy as p
import cv2
img = np.zeros([512,512,3], np.uint8)
cv2.imshow('image', img)
def click_event(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDOWN:
print(x, ',', y)
font = cv2.FONT_HERSHEY_SIMPLEX
strxy = str(x)+ ',' + str(y)
cv2.putText(img, strxy, (x,y), font, 1, (0,255,255), 2)
cv2.imshow('image', img)
if event == cv2.EVENT_RBUTTONDOWN:
blue = img[y, x, 0]
green = img[y, x, 1]
red = img[y, x, 2]
font = cv2.FONT_HERSHEY_SIMPLEX
strxy = str(blue) + ',' + str(green) + ',' + str(red)
cv2.putText(img, strxy, (x, y), font, 1, (255, 0, 255), 2)
cv2.imshow('image', img)
cv2.setMouseCallback('image', click_event)
cv2.waitKey(0)
cv2.destroyAllWindows()