1

当我尝试阅读简单图像时,我不断收到 cv.invoke。我的应用程序没有比这更多的代码(emgu-opencv 明智)。我检查了调用堆栈,它说Thrown: "Unable to load DLL 'opencv_core249': The specified module could not be found.

问题是我尝试(opencv_core249 and opencv_imgproc249)在解决方案中添加两个 .dll 作为资源(始终在属性中复制)并且仍然得到异常还尝试将它们的属性更改为内容,但仍然没有。

还尝试将它们手动复制到调试文件夹中,但我仍然得到相同的异常。我已经遵循了在这个问题上指出的指导方针,但我仍然得到同样的错误

如果有任何帮助,我正在使用 Visual Studio 2012 和 Windows 8

4

3 回答 3

3

根据您的解决方案的平台设置....

如果您在“x64”xor“x86”上构建解决方案,则必须将这些 dll 复制到调试文件夹中

..但是如果您正在构建“Any Cpu”,则需要在调试文件夹中创建“x86”和“x64”文件夹。在它们里面有你需要的相关库。原因,您的解决方案将要求两者,具体取决于 cpu ...

于 2013-08-10T14:45:16.937 回答
2

我认为您的问题的解决方案也可以像这个线程中指出的那样解决:

'Emgu.CV.CvInvoke' 的类型初始化程序引发了 Win8 64 位 VS2012 的异常

那里有一个指向 emgucv 论坛的链接。

此外,检查您是否为您尝试构建的项目使用了正确的平台目标(例如,x86 和 64 位)是值得的。

于 2013-02-17T15:49:01.433 回答
2

确保您的目标平台(x64 或 x86)已在配置选项下设置,并确保所有 opencv 库与您的执行目录位于同一目录中。

如果这不起作用,请尝试运行任何 emgu 示例,它们有效吗?

于 2013-03-31T07:35:22.277 回答