Emgu CV 无法从给定路径创建图像

问题描述 投票:0回答:3

当我从给定路径加载图像时:

Image<Bgr, byte> source = new Image<Bgr, byte>(absoluteImagePath);

绝对路径是:

D:\Users\Oijafaosfasdf\Source\Workspaces\SomeProject\SomeProjectV3\SomeProject.UI\bin\Debug\636260785130864402.png

它抛出了奇怪的异常:

第一次:

尝试在不终止程序的情况下创建图像的所有其他时间:

--- 内部异常堆栈跟踪的开始---
“Emgu.CV.CvInvoke”的类型初始值设定项引发异常。 ---> 系统参数异常: 该路径不具有合法形式。在 System.IO.Path.NormalizePath(字符串路径,布尔值fullCheck,Int32 maxPathLength,布尔值 ExpandShortPaths) at System.IO.Path.GetFullPathInternal(字符串路径)位于 System.IO.FileInfo.Init(String fileName, Boolean checkHost) at System.IO.FileInfo..ctor(字符串文件名)位于 Emgu.CV.CvInvoke.LoadUnmanagedModules(字符串 loadDirectory, String[] 非托管模块)位于 Emgu.CV.CvInvoke.DefaultLoadUnmanagedModules(String[] 模块) 位于 Emgu.CV.CvInvoke..cctor()
--- 内部异常堆栈跟踪结束 ---

这与此 -> stackoverflow.com 问题并不重复,因为我提供了绝对路径。 我已经检查过文件格式是否有效并且文件存在于目录中。 那么,可能会出现什么问题呢?

注意:我正在使用 Nuget 包管理器安装 Emgu CV (v3.1.0.1)。

c# emgucv
3个回答
0
投票

试试这个:

Image<bgr, byte> source = new Image<bgr, byte>("D://Users//Oijafaosfasdf//Source//Workspaces//SomeProject//SomeProjectV3//SomeProject.UI//bin//Debug//636260785130864402.png");

或者尝试加载任何其他图像,如果它有效,则可能是您尝试加载的图像的标头已损坏。


0
投票

盯着同一个错误消息几个小时后,我意识到问题出在 dll 上,找不到它们。由于我已经安装了 Costura.Fody 软件包,它将所有 dll 合并为可执行文件,这就是 Emgu CV 根本无法工作的原因.. 感谢所有提供帮助的人!


0
投票

本地报告处理过程中发生错误。 报告的定义”无效。 报告处理中发生意外错误。 类型initializr为'Microsoft.ReportingServicec.ReportIntermediateFormat.Persistence.IntermediateFormatVersion' 抛出异常。该路径不具有合法形式。

© www.soinside.com 2019 - 2024. All rights reserved.