如何移动检测到的手和指尖像Qt GUI一样与鼠标交互?

时间:2012-03-15 10:03:07

标签: c++ qt augmented-reality

我正在制作这个指尖驱动的应用程序(在Visual Studio 2010中开发的OpenCV 2.3.2 + Qt 4.7),其中我想利用Qt的GUI,尤其是它的对话框。将通过VideoCapture检测和跟踪指尖的位置。想象一下,Microsoft Windows的Paint与一个指尖一起使用。我一直在猜测以下选项:

  • 继承QEvent并将eventFilter安装到窗口小部件以过滤掉不必要的事件
  • 如果鼠标事件依赖于光标位置,则继承QCursor
  • 制作我自己的颜色选择器和其他输入对话框,这些对话框没有任何Qt的专用对话框的子类,如果以上都不可行,我可能最终会这样做。我查看了QColorDialog的源代码,发现了QColorWell和QColorLuminancePicker,我现在想到了类似小部件最不费劲的方法。

最实用,计算最少的方法是什么?对不起,如果我的英语不清楚或令人困惑。提前谢谢。

1 个答案:

答案 0 :(得分:2)

您可以通过实现QTouchEvent并通过可能的图像处理线程同时调用该事件来模拟此行为。您只需要通过图像处理算法生成QTouchEvent所需的参数(触摸点,位置等)。