c++ - OpenCV C++ 代码在终端中运行良好,但从 Eclipse 运行时出错 - Ubuntu 12.04

标签 c++ eclipse opencv ubuntu

我正在尝试在 Ubuntu 12.04 LTS 上的 Eclipse IDE 中运行 C++ OpenCV 程序。当我使用终端时它们运行良好,如此处所示- https://help.ubuntu.com/community/OpenCV .

但是当我在 Eclipse 中构建相同的代码时,出现以下错误

错误描述-

opengl support available OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /home/akash/OpenCV/opencv-2.4.7/modules/highgui/src/window.cpp, line 269 terminate called after throwing an instance of 'cv::Exception' what(): /home/akash/OpenCV/opencv-2.4.7/modules/highgui/src/window.cpp:269: error: (-215) size.width>0 && size.height>0 in function imshow


我的代码是

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

using namespace std;
using namespace cv;

int main()
{

    Mat img=imread("image.jpg");
    namedWindow("win",WINDOW_AUTOSIZE);
    imshow("win",img);
    waitKey(0);
    return 1;

}

我已经处理了以下问题-

  1. 将 image.jpg 保存在 src 和项目的所有其他文件夹中。
  2. 仔细检查/usr/local/lib 中的库名称
  3. 只为 OpenCV 头文件添加了一个包含路径。

我似乎仍然无法运行它。

请帮忙。

最佳答案

我仍然认为您的问题来自于程序没有找到 image.jpg 文件(即使您已经采取了一些步骤来确保它找到了)。工作目录(应用程序从中执行)通常与 eclipse 中的源文件夹或二进制文件夹不同(实际上您可以在项目设置中手动设置)。

要快速验证这个假设,您可以将 image.jpg 的绝对路径传递给 imread()。如果这解决了问题,您只需要在 eclipse 中正确配置您的工作目录。

关于c++ - OpenCV C++ 代码在终端中运行良好,但从 Eclipse 运行时出错 - Ubuntu 12.04,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20742404/

相关文章:

c++ - 为什么当我使用不同版本的 GCC 时使用 strtok 函数时出现此错误?

c++ - 算法识别字符串匹配散列和无误报

java - Eclipse LibGdx GPGS

android - 如何使用Android版OpenCV检测眨眼?

c++ - 我的太阳系有问题

c++ - 在 Windows 上以 float 方式额外打印 0

java - 调试生活游戏,Java

java - 我需要一个正则表达式来阻止任何非 3 个(或更多)字母单词的内容?

python - _imaging C 模块未安装 Python 嵌入

r - 将高维矩阵从 C++ 传递到 R