cv :: imread OpenCV的相对与绝对路径

时间:2012-05-20 07:48:42

标签: xcode visual-studio-2010 opencv

我在VS2010和Xcode 4.2上都遇到了OpenCV 2.3.1和2.4的跨平台错误

如果我在给图像路径作为绝对路径时使用cv :: imread,它就可以工作。如果这是一个相对路径,它就不起作用。我通常将图像放在与代码相同的目录中,以及项目中的所有其他目录,只是为了小心。

非常感谢任何人都能回答这个问题。谢谢!

哈里什。

1 个答案:

答案 0 :(得分:2)

在Visual Studio中,当您创建C ++项目时,它会将项目的工作目录设置为项目目录,而不是可执行文件的输出目录。

这意味着如果从Visual Studio内部运行项目(通过使用F5按钮或“开始调试”按钮),您正在编写的程序将无法看到相同的文件dir作为.exe文件。但是当你从Windows资源管理器中运行程序时(通过双击它)它将按预期工作。

要解决此问题,您需要进入Configuration properties - >下的项目属性窗口。 Debugging,并将工作目录从$(ProjectDir)更改为$(OutputPath)。您应该为Debug和Release配置更改此项。

我不知道XCode中的情况是否相同,但你也可以尝试这个解决方案。

Working directory configuration