C# 使用Emgu CV运行相机
我想做一个面部识别系统。现在,我正试图运行摄像机,但是我很难访问摄像机。这是我的密码:C# 使用Emgu CV运行相机,c#,visual-studio,emgucv,face-detection,C#,Visual Studio,Emgucv,Face Detection,我想做一个面部识别系统。现在,我正试图运行摄像机,但是我很难访问摄像机。这是我的密码: public partial class Camera : Form { private Capture capture; private HaarCascade haarCascade; Timer timer; public Camera() { InitializeComponent(); } private void pict
public partial class Camera : Form
{
private Capture capture;
private HaarCascade haarCascade;
Timer timer;
public Camera()
{
InitializeComponent();
}
private void pictureBox1_Click(object sender, EventArgs e)
{
capture = new Capture();
haarCascade = new HaarCascade(@"haarcascade_frontalface_alt_tree.xml");
timer = new Timer();
timer.Tick += new EventHandler(timer1_Tick);
timer.Interval = new TimeSpan(0, 0, 0, 0, 1);
timer.Start();
}
}
timer.Interval=newtimespan(0,0,0,0,1)中有错误代码>
以下是错误:
严重性代码说明项目文件行抑制状态
错误CS0029无法将类型“System.TimeSpan”隐式转换为“int”考勤系统c:\users\redpranger\documents\visual studio 2017\Projects\考勤系统\考勤系统\Camera.cs 34 Active
是类型为Double
的属性,而不是Timespan
以下是该属性的定义:
获取或设置引发已运行事件的时间间隔(以毫秒为单位)
要将间隔设置为1秒(1000毫秒),请按如下方式设置:
timer.Interval = 1000;
timer.Interval = 1000;
或者在您的示例中,以1毫秒为单位:
timer.Interval = 1;
或者你可以试试
timer.Interval = 1; // 1ms
你不需要每1ms刷新一次相机我不认为你的相机有那么多fps
所以对你来说30毫秒就可以了
所以试试看
答案很简单,,
你所要做的就是
要将间隔设置为1秒(1000毫秒),请按如下方式设置:
timer.Interval = 1000;
timer.Interval = 1000;
虽然你的答案在技术上是正确的,但我不认为仅仅为了得到毫秒而创建一个结构有什么用。在op案例中你是对的,实际上他不需要使用TimeSpan。我写它只是为了让他明白,如果他想给interval赋值,他需要使用TotalMiliseconds属性进行转换