使用python cv2,按下鼠标左键,记录鼠标当前位置
时间: 2024-10-15 13:25:00 浏览: 34
要使用OpenCV (cv2) 实现按下鼠标左键并在释放前记录鼠标的当前位置,你可以创建一个事件监听循环。以下是一个简单的示例:
```python
import cv2
# 创建窗口
window_name = "Mouse Tracking"
cv2.namedWindow(window_name)
# 定义回调函数,用于处理鼠标事件
def mouse_callback(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDOWN: # 当左键按下时
start_pos = (x, y) # 记录开始位置
print(f"Left button pressed at ({x}, {y})")
# 设置鼠标回调函数
cv2.setMouseCallback(window_name, mouse_callback)
while True:
# 读取窗口图像
img = cv2.imread("background_image.jpg") # 替换为实际图片路径
cv2.imshow(window_name, img)
# 检查鼠标事件
key = cv2.waitKey(1)
if key == ord('q') or key == 27: # 按Q键或Esc退出
break
# 关闭窗口和释放资源
cv2.destroyAllWindows()
```
这个脚本会在窗口上显示一张图片,并监听鼠标事件。当左键按下时,它会打印出鼠标点击的位置。请注意,这只是一个基础的示例,实际的手势识别可能还需要更复杂的图像处理和机器学习技术。
阅读全文