python - 如何将鼠标移动到屏幕上所有蓝色像素的 xy 平均值
问题描述
我正在尝试制作一个 DIY 虚拟现实套件,但在 Python 中还不够。但到目前为止,我认为 Python 是实现以下目标的唯一方法;该程序从网络摄像头中获取每一帧,获取蓝色像素,并对像素的所有 XY 位置进行平均,然后让鼠标移动到那里。在 OpenCV 和 Python 中。
我已经进行了 100 万次 Google 搜索,但找不到我需要的东西。我花了大约 11 个小时搜索 OpenCV 文档,但一无所获。我只需要完成这个程序。我正在运行 Python 3.7.3 和 OpenCV 2。
任何帮助将非常感激。我可以接受人们给我完整的代码,只要它可以理解并且清晰。
谢谢你。
*编辑,我使用的是 Windows x86。
解决方案
将您的图像转换为 HSV。HSV 通常更适合检测特定的有色区域。此 SO 链接处理与您描述的相同的问题,并且在它们上有有用的链接。使用 inRange 函数检测到蓝色像素后,使用掩码获取坐标值的平均值(np.arg 对获取坐标很有用,然后使用 np.mean over axis=0)。
推荐阅读
- c# - 在 C# 中使用 uDMX API
- assembly - NASM。方括号返回相对位置。如何找到绝对?
- python - 如何让 Mypy 使用多个相互依赖的 mixin?
- java - Messages order for 2 different subscriptions
- asp.net - 获取网站客户端的IP地址返回主机IP
- php - Xdebug 不能在 nginx 上使用 php7.3
- angular - 如何从 AngularFireAuth 获取 signInAnonymously 以返回承诺
- r - 如何将列转换为以另一个数字列中的值为条件的总和?
- text - AT&T 电子邮件到文本显示 CSS 片段
- javascript - 如何获取鼠标悬停元素的属性