我最近开始玩openCVSharp,我得到它来检测眼睛等物体并在它们周围画一些小盒子。
然而,我想控制我的相机,它能够水平旋转180度,垂直旋转90度,以实时检测和跟踪眼睛。因此,就好像脸部向左移动一样,相机会向左转,以便跟随它等等。
你知道OpenCVSharp(C#包装器)是否能做到这一点吗?
让我们更简单:让我说我想检测并跟踪头部(不是眼睛)所以让我们将头部的中心作为目标,尽量让它尽可能地变成相机图像的中心。现在,我知道在C#Winform或WPF中,我可以布局位图并计算像素并手动调整相机移动以使头部尽可能地使用例如PID控制器或其他东西成为中心。
尽管如此,我是否有可能在OpenCVSharp中使用来自相机的实时视频来做类似的事情?我只是处理C#Windform和WPF中的静态图像,但没有像现场摄像头一样。
由于
答案 0 :(得分:0)
我没有使用OpenCVSharp的经验,但您尝试过Emgu吗?作为OpenCV的C#包装器,我对它有非常积极的体验。我知道Emgu可以做到这一点。
这是一个video,表明它是可能的。
以下是使用Emgu进行基本人脸检测的tutorial。
答案 1 :(得分:0)
您可以使用KLT功能跟踪器: https://www.youtube.com/watch?v=6B_PNDCWtz4
或Camshift: https://www.youtube.com/watch?v=C-ivmaUHaP4
它们都在Accord.NET Extensions框架中实现: https://github.com/dajuric/accord-net-extensions