如何在python中反转光标移动?

2024-10-08 19:29:16 发布

您现在位置:Python中文网/ 问答频道 /正文

在这段代码中,我使用了python2.7.13、opencv2.4.13和pyautogui0.9.36。目标是根据面部运动来移动光标,但光标的移动是反向的。例如,如果我的脸向右,光标向左移动;如果我的脸向左,光标向右移动。另外,我希望光标在我的电脑屏幕上左右上下移动,它的大小是x=1920,y=1080。在

这个项目的目的是展示一种获得更多独立性和接触性的新方法,以便四肢瘫痪患者能够做一些简单的活动,这些活动是数百万人日常生活的一部分,例如开灯、关灯、打开和关闭电视。在

^{1}$

Tags: 项目方法代码目的患者目标电视独立性
2条回答

你做的很好。在

要只修复鼠标移动,可以从屏幕大小中减去x,y运动。但是在整个屏幕上 pyautogui.moveTo(x,y)会非常不准确和嘈杂。相反,你可以使用

pyautogui.moveRel(None, steps)

也就是说,如果你首先使用的是face cascade,就很难移动相应的鼠标动作。我认为使用像向左或向右倾斜这样的面部定位会更好。在

在下面的代码中,我使用眼睛级联实现左右运动。所以稍微倾斜一下脸就足够运动了。我在opencv3.2上工作,因此如果需要的话,对您的版本进行必要的更改。在

编码

^{pr2}$

在代码中,您需要按y键来设置一个框以供y运动参考。开箱即用,两眼都会动起来。在

我们可以添加一个微笑级联鼠标点击,但这是一点不准确和缓慢的现在。需要找出更好的选择,比如点击一下眼睛之类的。
这是一个非常基本的代码来让事情正常工作。在神经网络中标注面部表情可能会更好,但速度也是一个因素。在

如果知道屏幕大小,只需从屏幕大小中减去现在的值,就可以将光标移到另一侧。 例如:

pyautogui.moveTo(1920 - (x+w), 1080 - (y+h))

如果x+w让你的屏幕位置为2(屏幕左侧),那么现在它将使你的屏幕位置为1918(屏幕右侧)

相关问题 更多 >

    热门问题