【问题标题】:Moving the mouse based on the color根据颜色移动鼠标
【发布时间】:2015-12-11 00:27:54
【问题描述】:

我正在使用 OpenCV C++ 编写一个程序,当它检测到蓝色时,它只是将鼠标移动到蓝色对象的新位置。

我的步骤是

  1. 从 BGR 转换为 HSV
  2. 使用 InRange 获取蓝色范围
  3. 寻找面积最大的轮廓来检测对象
  4. 获取轮廓中最后一个点的位置并将其作为新的鼠标位置,这样当对象移动时,鼠标也会移动。

问题在于,当我固定对象的位置时,轮廓点会发生变化,因此光标会从 +-10 的位置移开并返回等等,这样看起来很烦人,所以任何人都有解决方案对于这个问题?

【问题讨论】:

    标签: opencv


    【解决方案1】:

    一个类似的问题把我带到了这里,所以即使这是一个老问题,我也会尽力提供帮助。如果我理解的话,问题是当物体不动时,指针会稍微移动,因为轮廓不是固定的,而是不断变化。如果是这种情况,你应该取 countour 的质心,而不是最后一点,这应该更稳定。

    【讨论】:

      猜你喜欢
      • 2015-11-05
      • 2022-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多