首页 > 解决方案 > 如何将鼠标移动到屏幕上所有蓝色像素的 xy 平均值

问题描述

我正在尝试制作一个 DIY 虚拟现实套件,但在 Python 中还不够。但到目前为止,我认为 Python 是实现以下目标的唯一方法;该程序从网络摄像头中获取每一帧,获取蓝色像素,并对像素的所有 XY 位置进行平均,然后让鼠标移动到那里。在 OpenCV 和 Python 中。

我已经进行了 100 万次 Google 搜索,但找不到我需要的东西。我花了大约 11 个小时搜索 OpenCV 文档,但一无所获。我只需要完成这个程序。我正在运行 Python 3.7.3 和 OpenCV 2。

任何帮助将非常感激。我可以接受人们给我完整的代码,只要它可以理解并且清晰。

谢谢你。

*编辑,我使用的是 Windows x86。

标签: pythonopencv3.0

解决方案


将您的图像转换为 HSV。HSV 通常更适合检测特定的有色区域。此 SO 链接处理与您描述的相同的问题,并且在它们上有有用的链接。使用 inRange 函数检测到蓝色像素后,使用掩码获取坐标值的平均值(np.arg 对获取坐标很有用,然后使用 np.mean over axis=0)。


推荐阅读