python opencv 回调函数
时间: 2023-08-25 09:07:20 浏览: 106
在Python中使用OpenCV时,可以使用回调函数来处理特定的事件或操作。回调函数是在特定的条件满足时被调用的函数。
在OpenCV中,可以使用`setMouseCallback`函数来设置鼠标事件的回调函数。下面是一个示例代码:
```python
import cv2
def mouse_callback(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDOWN:
print("Left button of the mouse is clicked - position ({}, {})".format(x, y))
image = cv2.imread("image.jpg")
cv2.namedWindow("Image")
cv2.setMouseCallback("Image", mouse_callback)
while True:
cv2.imshow("Image", image)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cv2.destroyAllWindows()
```
在这个示例中,我们首先定义了一个回调函数`mouse_callback`,它会在鼠标左键被点击时被调用。在回调函数中,我们打印了鼠标点击的位置。
然后,我们加载一张图片,并创建一个窗口。使用`setMouseCallback`函数将回调函数与窗口绑定起来。最后,通过循环显示图像,直到按下键盘上的'q'键退出程序。
你可以根据需要在回调函数中执行其他操作,例如绘制图形、进行图像处理等。
阅读全文