我在 VS2010 和 Xcode 4.2 上都遇到了 OpenCV 2.3.1 和 2.4 的跨平台错误
如果我在将图像路径作为绝对路径时使用 cv::imread ,它可以工作。如果那是相对路径,则它不起作用。我通常将图像与代码以及项目中的所有其他目录放在同一个目录中,只是为了小心。
如果有人能回答这个问题,将不胜感激。谢谢!
哈里什。
我在 VS2010 和 Xcode 4.2 上都遇到了 OpenCV 2.3.1 和 2.4 的跨平台错误
如果我在将图像路径作为绝对路径时使用 cv::imread ,它可以工作。如果那是相对路径,则它不起作用。我通常将图像与代码以及项目中的所有其他目录放在同一个目录中,只是为了小心。
如果有人能回答这个问题,将不胜感激。谢谢!
哈里什。
在 Visual Studio 中,当您创建 C++ 项目时,它会将项目的工作目录设置为项目目录,而不是可执行文件的输出目录。
这意味着如果您从 Visual Studio 中运行项目(通过使用 F5 按钮或“开始调试”按钮),您正在编写的程序将无法看到与.exe 文件。但是,当您从 Windows 资源管理器(通过双击它)运行程序时,它将按预期工作。
要解决此问题,您需要进入Configuration properties
->下的项目属性窗口Debugging
,并将工作目录从 更改$(ProjectDir)
为$(OutputPath)
。您应该为 Debug 和 Release 配置更改此设置。
我不知道这在 XCode 中是否相同,但你也可以在那里尝试这个解决方案。