EmguCV+VS2010 C#,cvinvoke异常的解决办法
来源:互联网 发布:·淘宝 编辑:程序博客网 时间:2024/06/10 08:46
1.安装openCV 2.4
2.安装emgucv-windows-x86 2.4.0,注意目录中不能有空格,很多问题都是由此引起,空格改成下划线
3.VS 2010C#中新建windows项目,在工具箱上“添加选项卡”命名EmguCV,然后右键“选择项...”->"NETFrameworks"导入“C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin”下的Emgu.CV.UI.dll,面板上会多4个组件。
4.在工程的“引用”中,右键“添加引用...”,把C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin下所有形如Emgu.CV.XXXX.dll的文件都导入,也别忘记导入ZedGraph.dll
5.C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin下Emgu.CV.dll、Emgu.CV.ML.dll、Emgu.CV.UI.dll、Emgu.Util.dll、ZedGraph.dll文件拷贝到工程的debug或release目录中,如果用到其他dll文件,也拷进来。如果正常编译,这步其实可以不用,用到的DLL文件会自动拷贝到debug和release下,这里是防止第四步中漏引用相应的dll引起错误。
6.在系统PATH中,添加2个路径
1)C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin\x86
2)C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin
OpenCV 2.4开始的版本,如果不使用自编译的dll,其实是用不到的。如果是使用自编译opencv库,那么把编译后的dll和lib放在一个bin目录,把目录也加入系统PATH。
导致cvinvoke异常的原因,是因为找不到相应的DLL文件。
解决一:就是使用上面的PATH设置,把需要用到的DLL都加到系统路径。
解决二:把前面加到PATH的目录下的所有DLL文件都拷贝到工程项目的debug和release目录下。
推荐使用第一种方法,第二种方法虽然简单,但是缺点是占用300M多的空间。
是否能正常运行,用下面的例子可以测试一下,如果正常,可以弹出窗口显示一张图片。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Emgu.CV;
using Emgu.Util;
namespace EmguDemo
{
publicpartial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
CvInvoke.cvNamedWindow("Hello");
IntPtr img = CvInvoke.cvLoadImage("C:\\1.jpg",Emgu.CV.CvEnum.LOAD_IMAGE_TYPE.CV_LOAD_IMAGE_ANYCOLOR);
CvInvoke.cvShowImage("Hello", img);
CvInvoke.cvWaitKey(0);
CvInvoke.cvReleaseImage(ref img);
CvInvoke.cvDestroyWindow("Hello");
}
}
}
以上实测ok.修改path后,注销重新登录后,vs2010才能使用新的path设置!
原文http://blog.sina.com.cn/s/blog_6233611f01016mpj.html
2.安装emgucv-windows-x86 2.4.0,注意目录中不能有空格,很多问题都是由此引起,空格改成下划线
3.VS 2010C#中新建windows项目,在工具箱上“添加选项卡”命名EmguCV,然后右键“选择项...”->"NETFrameworks"导入“C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin”下的Emgu.CV.UI.dll,面板上会多4个组件。
4.在工程的“引用”中,右键“添加引用...”,把C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin下所有形如Emgu.CV.XXXX.dll的文件都导入,也别忘记导入ZedGraph.dll
5.C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin下Emgu.CV.dll、Emgu.CV.ML.dll、Emgu.CV.UI.dll、Emgu.Util.dll、ZedGraph.dll文件拷贝到工程的debug或release目录中,如果用到其他dll文件,也拷进来。如果正常编译,这步其实可以不用,用到的DLL文件会自动拷贝到debug和release下,这里是防止第四步中漏引用相应的dll引起错误。
6.在系统PATH中,添加2个路径
1)C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin\x86
2)C:\Emgu\emgucv-windows-x86_2.4.0.1717\bin
OpenCV 2.4开始的版本,如果不使用自编译的dll,其实是用不到的。如果是使用自编译opencv库,那么把编译后的dll和lib放在一个bin目录,把目录也加入系统PATH。
导致cvinvoke异常的原因,是因为找不到相应的DLL文件。
解决一:就是使用上面的PATH设置,把需要用到的DLL都加到系统路径。
解决二:把前面加到PATH的目录下的所有DLL文件都拷贝到工程项目的debug和release目录下。
推荐使用第一种方法,第二种方法虽然简单,但是缺点是占用300M多的空间。
是否能正常运行,用下面的例子可以测试一下,如果正常,可以弹出窗口显示一张图片。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Emgu.CV;
using Emgu.Util;
namespace EmguDemo
{
}
以上实测ok.修改path后,注销重新登录后,vs2010才能使用新的path设置!
原文http://blog.sina.com.cn/s/blog_6233611f01016mpj.html
0 0
- EmguCV+VS2010 C#,cvinvoke异常的解决办法
- C#+Emgucv:解决"Emgu.CV.CvInvoke”的类型初始值设定项引发异常"的问题
- 使用EmguCV库时出现"Emgu.CV.CvInvoke的类型初始值设定项引发异常"
- emgucv cvinvoke的报错处理
- [学习笔记]C#中使用EmguCv时出现的 “Emgu.CV.CvInvoke”的类型初始值设定项引发异常
- Emgu.CV.CvInvoke的类型初始值设定项引发异常--解决办法
- 异常"Emgu.CV.CvInvoke"的类型初始值
- [EmguCV|C#]使用CvInvoke自己繪製色彩直方圖-直方圖(Hitsogram)系列(4)
- C#-opencv-------显示图片异常"Emgu.CV.CvInvoke"的类型初始值设
- C#“Emgu.CV.CvInvoke”的类型初始值设定项引发异常
- C#“Emgu.CV.CvInvoke”的类型初始值设定项引发异常
- 在visual stdio2010下调试程序出现 Emgu.CV.CvInvoke”的类型初始值设定项引发异常 的解决办法
- VS2010下EmguCV的配置方法
- VS2010平台下的OpenCV、EmguCV( C#)安装、使用配置
- Emgu.CV.CvInvoke的类型初始值设定项引发异常
- Emgu.CV.CvInvoke的类型初始值设定项引发异常
- vs2010 c# EmguCV 环境的搭建和配置
- OpenCV+C#]开发环境的搭建EmguCV
- 解决因js误操作cookie后火狐浏览器无法正常显示页面并报js错误
- 使用匿名变量
- Google三驾马车——GFS、MapReduce、Bigtable
- 未命名的变量
- 屌丝黄渤的爆款创业启示
- EmguCV+VS2010 C#,cvinvoke异常的解决办法
- 二元查找树的翻转(镜像)的两种思路
- 关于产品的一些思考——(四十二)网易之有道云笔记协同版
- 屌丝黄渤的爆款创业启示
- 来自计科学长的一封信
- 屌丝黄渤的爆款创业启示
- Ubuntu环境Hadoop全分布式环境搭建 (学习笔记)
- 后缀表达式求值
- iOS获得相册里面的相片