C++ OpenCV图像加载程序退出
我正在使用安装教程末尾提供的示例源代码测试OpenCV 2.4.10。代码可以编译,但启动后很快就会退出。我看到第一条“cout message”的闪光,但我甚至没有看到加载图像或其他任何东西的闪光。我使用Visual Studio 2012 C++和OpenCV 2.4.10. 测试代码:C++ OpenCV图像加载程序退出,c++,opencv,visual-c++,C++,Opencv,Visual C++,我正在使用安装教程末尾提供的示例源代码测试OpenCV 2.4.10。代码可以编译,但启动后很快就会退出。我看到第一条“cout message”的闪光,但我甚至没有看到加载图像或其他任何东西的闪光。我使用Visual Studio 2012 C++和OpenCV 2.4.10. 测试代码: #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <iostre
#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("opencv-logo.png", 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;
}
程序将以以下方式退出:
The program '[9084] test.exe' has exited with code -1 (0xffffffff).
我不确定这里到底发生了什么,我在C/C++>General中添加了以下内容
C:\opencv\build\include\opencv
C:\opencv\build\include\opencv2
C:\opencv\build\include
我已将以下内容添加到链接器>常规>其他库目录:
C:\opencv\build\x646\vc11\lib
和库(尤其是那些返回负载错误,除了英伟达的)到链接器>输入。我还向环境变量添加了vc11\bin路径
我已经尝试使用cin.get()强制暂停,但它不起作用。这是否与某些DLL返回的加载错误有关
谁能给我指出正确的方向吗?谢谢你的阅读 在主步骤和单个步骤的开始处放置一个断点,直到它崩溃。我的猜测是,您的图像无法加载,因为找不到它,或者它的格式无法被opencv识别。问题在于图像没有加载。OpenCV应该与.PNG文件兼容。另外,我将测试文件放在调试可执行文件所在的文件夹中。我认为visual studio的默认工作目录是项目目录。尝试从该目录中的命令行运行调试可执行文件,并查看它是否工作是的,您是对的。默认的工作目录是项目目录。
C:\opencv\build\x646\vc11\lib