[英]Trouble reading image OpenCV
我正在按照此处的教程使用Visual Studio设置OpenCV(我拥有2013社区版和OpenCV 2.4.10)。
我具有以下文件夹结构:
OpenCVTest
-OpenCVTest.sln
+x64
+Debug
- opencv_core2410d.dll
- opencv_highgui2410d.dll
- OpenCVTest.exe
- OpenCVTest.ilk
- OpenCVTest.pdb
- feck.png
我的消息来源:
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
if (argc != 2)
{
cout << " Usage: display_image ImageToLoadAndDisplay" << endl;
return -1;
}
Mat image;
image = imread(argv[1], IMREAD_COLOR); // Read the file
if (!image.data) // Check for invalid input
{
cout << "Could not open or find the image" << std::endl;
return -1;
}
namedWindow("Display window", WINDOW_AUTOSIZE); // Create a window for display.
imshow("Display window", image); // Show our image inside it.
waitKey(0); // Wait for a keystroke in the window
return 0;
}
在VS或命令行中运行此命令时,出现以下错误:
C:\Users\mr\Documents\Visual Studio 2013\Projects\OpenCVTest\x64\Debug>OpenCVTest.exe feck.png
Could not open or find the image
有人知道为什么会这样吗?
更新
我试图给出完整的路径:
image = imread("C:\Users\mr\Documents\Visual Studio 2013\Projects\OpenCVTest\feck.png", IMREAD_COLOR); // Read the file
并将图片放置在与.sln文件相同的级别上,仍然没有运气。
将您的映像放置在OpenCVTest文件夹中,如下所示:
C:\\ Users \\ mr \\ Documents \\ Visual Studio 2013 \\ Projects \\ OpenCVTest \\ OpenCVTest \\ feck.png
-OpenCVTest.sln
-OpenCVTest <- **HERE**
-ipch
+x64
+Debug
- opencv_core2410d.dll
- opencv_highgui2410d.dll
- OpenCVTest.exe
- OpenCVTest.ilk
- OpenCVTest.pdb
- feck.png
在此处的教程中,“本地方法”下的内容为:
然后,您需要指定链接器应在其中查找的库。 为此,请转到链接器‣输入,然后在“其他依赖项”条目下添加要使用的所有模块的名称:
opencv_core231d.lib
opencv_imgproc231d.lib
opencv_highgui231d.lib
opencv_ml231d.lib
opencv_video231d.lib
opencv_features2d231d.lib
opencv_calib3d231d.lib
opencv_objdetect231d.lib
opencv_contrib231d.lib
opencv_legacy231d.lib
opencv_flann231d.lib
我将它们从opencv_core{version}d.lib
为opencv_core{version}.lib
(不是调试库),现在看来还可以。 我可以单步执行Visual Studio中的代码,该代码似乎可以正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.