使用的模块:
在本文中,我们将使用Python-openCV(cv2)和NumPy模块。
Python-opencv(cv2):
Python-opencv(cv2)是一个python库,它将帮助我们解决开源计算机视觉问题。
NumPy:
Numpy代表数值Python。该库用于科学计算。在本文中,我们将使用此模块创建空白的黑色图像。
我们如何下载这些模块?
下载这些模块的一般方法:
python-opencv(cv2):pip安装opencv-python
numpy:安装numpy
Pycharm用户:Pycharm用户可以转到项目解释器并从那里安装此模块。
我们将在本文中做什么?
在本文中,我们将检查鼠标单击事件,我们将在NumPy的帮助下创建一个空白图像,此后,当我们单击左侧按钮时,它将在图像上创建一个圆圈,当我们单击右侧按钮时,还将在图像上创建任何颜色的圆圈。这样,我们将检查鼠标的鼠标单击事件。
我们将在本文中使用的重要功能:
np.zeros((<size with layer>),np.uint8):此函数将创建一个空白图像。
cv2.setMouseCallback(<Image Frame>,<Event Capturing Function>): 此函数将检查鼠标单击功能,并根据事件捕获功能执行以下操作。
程序:
# 导入模块 import cv2 ,numpy as np # 设置窗口名称 window="Nhooo.com" # 创建空白图像 # 图像尺寸为(512,512),分为3层 image=np.zeros((512,512,3),np.uint8) # 将名称设置为窗口 cv2.namedWindow(window) # 创建事件捕获功能 def capture_event(event,x,y,flags,params): # event =鼠标单击 # x,y是光标的位置 # 检查事件是否右键单击 if event==cv2.EVENT_RBUTTONDOWN: # 在该位置创建一个圆 # 半径为30,颜色为红色 cv2.circle(image,(x,y),30,(0,0,255),-1) # 检查事件是否被单击 if event==cv2.EVENT_LBUTTONDBLCLK: # 在该位置创建一个圆 # 半径30和颜色的绿色 cv2.circle(image,(x,y),30,(0,255,0),-1) # 检查事件是否正在滚动 if event==cv2.EVENT_MBUTTONDBLCLK: # 在该位置创建一个圆 # 半径为30,颜色为蓝色 cv2.circle(image,(x,y),30,(255,0,0),-1) # 设置鼠标功能 cv2.setMouseCallback(window,capture_event) # 创建一个循环,直到我们按下按钮 while True: cv2.imshow(window,image) if cv2.waitKey(1)==13: break cv2.destroyAllWindows()
输出:
这样,我们可以借助Python-opencv(cv2)捕获鼠标单击事件。
有没有办法用java捕获双击鼠标事件后的图像?我只能在鼠标释放双击事件时捕获图像。但捕获图像不是双击事件后的图像。
目标 学习在OpenCV中处理鼠标事件 你将学习这些函数:cv2.setMouseCallback() 简单的演示 在这里,我们创建一个简单的应用程序,无论我们在哪里双击它,都会在图像上绘制一个圆圈。 首先我们创建一个鼠标事件发生时执行的回调函数。鼠标事件可以是任何与鼠标有关的东西,例如左键,左键,左键双击等。它给我们每个鼠标事件的坐标(x,y)。有了这个活动和地点,我们可以做任何我们喜欢的事情。
问题内容: 我正在尝试在matplotlib中实现一个简单的鼠标单击事件。我希望绘制一个图,然后使用鼠标选择积分的上限和下限。到目前为止,我可以将坐标打印到屏幕上,但不能将其存储以供以后在程序中使用。我也想在第二次单击鼠标后退出与该图的连接。 下面是当前绘制并打印坐标的代码。 我的问题: 如何存储图形到列表的坐标?即点击= [xpos,ypos] 是否可以获取两组x坐标以便对该行的该部分进行简单的
我正在使用Python 2.7和OpenCV 2.4。9 我需要捕获显示给用户的当前帧,并将其加载为Python中的cv::Mat对象。 你们知道一种快速递归的方法吗? 我需要像下面的例子中所做的那样,从网络摄像头递归地捕获Mat帧: 在本例中,它使用了VideoCapture类来处理从网络摄像头捕获的图像。 用视频捕捉。read()新帧总是被读取并存储到Mat对象中。 我可以将“打印屏幕流”加载
问题内容: 在我的三个按钮上,鼠标=中键单击和=右键单击。 两键鼠标就是这种情况吗? 谢谢 问题答案: 为了避免任何歧义,请使用SwingUtilities中的实用程序方法:
本文向大家介绍jQuery实现单击和鼠标感应事件,包括了jQuery实现单击和鼠标感应事件的使用技巧和注意事项,需要的朋友参考一下 1.实现单击事件动态交替 之前我们讲到了toggleClass(),对于单击事件而言,jQuery同样提供了动态交替的toggle()方法,这个方法接受两个参数,两个参数均为监听函数,在click事件中交替使用。 例子:点击事件的动态交互。 2.实现鼠标感应 在css