当我尝试阅读一张简单的图像时,我不断获得cv.invoke。我的应用程序没有其他代码(emgu-opencv wise)。我检查了调用堆栈,它说Thrown: "Unable to load DLL 'opencv_core249': The specified module could not be found.
问题是我尝试在解决方案中添加两个.dlls (opencv_core249 and opencv_imgproc249)
作为资源(副本始终在属性中)并仍然获得异常
也试图改变他们的财产作为内容,但仍然没有。
还尝试在debug文件夹中手动复制它们,但仍然得到相同的异常。 我已按照指南this question指出,但我仍然得到同样的错误
如果对我有任何帮助,我使用的是Visual Studio 2012和Windows 8
答案 0 :(得分:3)
取决于解决方案的平台设置....
如果要在“x64”xor“x86”上构建解决方案,则必须在调试文件夹中复制这些dll
..但是如果您正在构建“Any Cpu”,则需要在调试文件夹中创建“x86”和“x64”文件夹。在他们里面你需要相关的库。因为,根据cpu,你的解决方案将会重新出现...
答案 1 :(得分:2)
我认为您的问题的解决方案也可以在此主题中指出:
The type initializer for 'Emgu.CV.CvInvoke' threw an exception for Win8 64bit, VS2012
有一个指向emgucv论坛的链接。
此外,还要检查您是否正在为正在尝试构建的项目使用正确的平台目标(例如,x86和64位)。
答案 2 :(得分:2)
确保在配置选项下设置目标平台(x64或x86),并确保所有opencv库与执行目录位于同一目录中。
如果这不起作用,请尝试运行任何emgu示例,它们是否有效?