C# 基于EmguCV的手部检测

C# 基于EmguCV的手部检测,c#,image-processing,emgucv,haar-classifier,C#,Image Processing,Emgucv,Haar Classifier,我是emguCV的新手。我需要访问网络摄像头并检测手。然后我需要识别手的标志,并根据手的标志添加一些控件。首先,我需要从网络摄像机流中检测手。我不知道如何开始这个过程。我从研究论文中得到了一些想法。我知道我需要训练图像,但找不到任何合适的过程。这个主题下有教程吗??有一些教程对用户不友好且不完整。对于emguCV中的任何类型的检测,您首先需要一个名为haarcascade的xml文件,该文件用于人脸/上身/手等的实际检测。有关更多信息,请使用google it。您可以在此处获取用于手部检测的文件

我是emguCV的新手。我需要访问网络摄像头并检测手。然后我需要识别手的标志,并根据手的标志添加一些控件。首先,我需要从网络摄像机流中检测手。我不知道如何开始这个过程。我从研究论文中得到了一些想法。我知道我需要训练图像,但找不到任何合适的过程。这个主题下有教程吗??有一些教程对用户不友好且不完整。

对于emguCV中的任何类型的检测,您首先需要一个名为haarcascade的xml文件,该文件用于人脸/上身/手等的实际检测。有关更多信息,请使用google it。您可以在此处获取用于手部检测的文件:

以下是检测代码的示例:

Bitmap Source; //your Bitmap
Image<Bgr, byte> ImageFrame = new Image<Bgr, byte>(Source); //image that stores your bitmap

Image<Gray, byte> grayFrame = ImageFrame.Convert<Gray, byte>(); //grayscale of your image

HaarCascade haar = new HaarCascade("yourhaarcascadefile.xml"); //the object used for detection

var faces = grayFrame.DetectHaarCascade(haar, 1.1, 3, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, new System.Drawing.Size(25, 25))[0]; //variable that stores detection information

foreach (var face in faces) 
    ImageFrame.Draw(face.rect, new Bgr(System.Drawing.Color.Green), 3); //draws a rectangle on top of your detection

return ImageFrame.toBitmap(); //returns your bitmap with detection applied;

谢谢你的任何帮助链接被破坏,并带到一些可疑的网站