一个简单小任务需要得到图像中任意某点的坐标值,想到用鼠标事件回调函数实现,双击鼠标即可打印该点坐标值,代码实现如下。
```python
# 功能:给出图像中某一点的坐标
# 操作:选定一点后双击鼠标即可显示改点坐标
import cv2
import numpy as np
def draw_circle(event,x,y,flags,param): #鼠标事件回调
if event==cv2.EVENT_LBUTTONDBLCLK:
print('[',x,',',y,']')
cv2.circle(img,(x,y),100,(255,0,0),-1)
# 创建图像与窗口并将窗口与回函数绑定
img = cv2.imread('C:/Users/Administrator/Desktop/testphoto/jxtest.jpg') #此处改为自己文件位置
cv2.namedWindow('image',cv2.WINDOW_NORMAL)
cv2.setMouseCallback('image',draw_circle)
while(1):
cv2.imshow('image',img)
if cv2.waitKey(20)&0xFF==27: #按ESC退出
break
cv2.destroyAllWindows()
仅供参考,有疑问请留言评论或加Q1922274477,谢谢!