未处理的异常 Microsoft C++ 异常:cv::Exception at memory location

ton*_*ian 1 c++ windows opencv visual-studio-2010

我刚开始使用 OpenCV。我下载了 OpenCV 2.4.9,并安装了 MSVS 2010。我的 Windows 是 X64。我按照以下步骤操作:

一种。在配置属性下,单击调试 -> 环境并复制粘贴:PATH=C:\opencv\build\x86\vc10\bin

湾 VC++ 目录 -> 包含目录并添加条目:C:\opencv\build\include

C。VC++ 目录 -> 库目录并添加条目:C:\opencv\build\x86\vc10\lib

d. Linker -> Input -> Additional Dependencies 并添加以下内容:

opencv_calib3d249.lib;opencv_contrib249.lib;opencv_core249.lib;opencv_features2d249.lib;opencv_flann249.lib;opencv_gpu249.lib;opencv_nonfree249.lib;opencv_highgui249.lib;opencv_highgui249.lib;opencv_highgui249.lib;opencv_highgui249.lib;opencv_highgui249.lib;opencv_highgui249.lib4opencv_lib4_open4_open4_open4.lib4open4_open4_open4.lib4open249.lib4open249.lib;opencv_flann249.lib;opencv_flann249.lib;库;opencv_video249.lib;

我运行了以下代码:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
int main() {
        // read an image
        cv::Mat image= cv::imread("img.jpg");
        // create image window named "My Image"
        cv::namedWindow("My Image");
         cv::waitKey(1000);
        // show the image on window
        cv::imshow("My Image", image);
        // wait key for 5000 ms
        cv::waitKey(50);
        return 1;
}
Run Code Online (Sandbox Code Playgroud)

要获取错误:

BTP1.exe 中 0x76d2b727 处未处理的异常:Microsoft C++ 异常:内存位置 0x003af414 处的 cv::Exception

我想这可能是因为 X64 和 x86 不匹配。关于更改 a 中的条目。到 PATH=C:\opencv\build\ x64 \vc10\bin 并在 c 中。到 C:\opencv\build\ x64 \vc10\lib,我收到以下错误:

应用程序无法正确启动 (0xc000007b)。单击确定关闭应用程序。

关于如何解决这个问题的任何提示?

Bul*_*ull 5

这可能是因为您尝试显示的图像是空的,可能是因为图像不在正确的文件夹中。要确认这一点,请将您的代码更改为

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

#include <iostream>  // std::cout

int main() {
    // read an image
    cv::Mat image= cv::imread("img.jpg");

    // add the following lines
    if(image.empty())
       std::cout << "failed to open img.jpg" << std::endl;
    else
       std::cout << "img.jpg loaded OK" << std::endl;

    ...   // the rest of your code
Run Code Online (Sandbox Code Playgroud)