0

我是 emgu cv c# 的新手。我想创建一个仅用于从我的笔记本电脑相机和连接到我的笔记本电脑的其他相机设备进行简单照片捕捉的相机。我不希望视频捕捉只简单的照片捕捉。一个开始和一个捕捉按钮。并将保存在特定位置。帮助会可观。

namespace camera
{
public partial class cameracaps : Form
{
    Capture capturecam=null;
    bool capturingprocess=false;
    Image<Bgr,Byte>imgOrg;
    Image<Gray,Byte>imgproc;



    public cameracaps()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        try
        {

            Capture cam = new Capture();

        }
        catch (NullReferenceException exception)
        {
            MessageBox.Show(exception.Message);
            return;
        }
        Application.Idle += new EventHandler(processFunction);
        capturingprocess=true;

    }
    void processFunction(object sender,EventArgs e)
    {
       imgOrg=capturecam.QueryFrame();
        if(imgOrg ==null)return;
        imgproc=imgOrg.InRange(new Bgr(50,50,50),new Bgr(250,250,250));
        imgproc = imgproc.SmoothGaussian(9);
        original.Image=imgOrg;
        processed.Image=imgproc;
    }


    private void Button1_Click(object sender, EventArgs e)
    {
        if(capturingprocess==true)
        {
            Application.Idle-=processFunction;
            capturingprocess = false;
            Button1.Text="play";
        }
        else
        {
            Application.Idle+= processFunction;
            capturingprocess= true;
            Button1.Text="pause";


    }


}

}
}

显示..“Emgu.CV.CvInvoke”的类型初始化程序引发了异常。错误..指示错误 Capture cam = new Capture(); 帮助我。

4

1 回答 1

0

这是我们在 emgu cv 中几乎一直面临的最大问题之一。首先将 dll 文件名 opencv_core290.dll,open_cvhighgui290.dll 复制到您的项目 bin,尝试对 dll 文件使用依赖项跟踪器。从此链接安装依赖项- http://www.emgu.com/wiki/index.php/Download_And_Installation ..如果它不起作用,那么您应该了解应用程序正在与相机连接。然后转到我的电脑->右键单击->属性->高级系统设置->系统属性->高级->环境变量->系统变量->路径->编辑->粘贴C:\Emgu\emgucv-windows-universal-cuda 2.9.0.1922\bin。然后按确定。重新启动您的系统,它会工作。

于 2013-10-12T03:55:18.103 回答