2013-04-25 228 views
1

请看看下面的代码OpenCV的图像不显示

Main.cpp的

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

using namespace cv; 
using namespace std; 

int main() 
{ 
    Mat im = imread("C:/Users/Public/Pictures/Sample Pictures/Koala.jpg"); 
    if (im.empty()) 
    { 
     cout << "Cannot load image!" << endl; 
     return -1; 
    } 
    imshow("Image", im); 
    waitKey(0); 

    return 0; 
} 

在这里,我想测试与QT OpenCV的,通过简单地打开一个图像。请注意,这也是我的第一个QT应用程序。但是,该程序运行,但没有图像显示!在VS 2010中运行相同的代码并正确显示图像。以下是我从QT获得的唯一结果。

enter image description here

以下是我的QT项目配置。

Tester.pro

#------------------------------------------------- 
# 
# Project created by QtCreator 2013-04-25T23:36:30 
# 
#------------------------------------------------- 

QT  += core 

QT  -= gui 

TARGET = Tester 
CONFIG += console 
CONFIG -= app_bundle 

TEMPLATE = app 


SOURCES += main.cpp 

INCLUDEPATH += C:\opencv\build\include\ 

LIBS += -LC:\opencv\build\x86\mingw\lib\ 
-lopencv_core240 \ 
-lopencv_highgui240 \ 
-lopencv_imgproc240 \ 
-lopencv_features2d240 \ 
-lopencv_calib3d240 

请注意以下信息也是如此。

  • 我的操作系统 - Windows 7旗舰版
  • Qt Creator的版本 - 2.7.0
  • QT从网上下载 - http://qt-project.org/downloads(文件名是:QT-Windows的开源-5.0.2-mingw47_32 86离线)
  • OpenCV版本 - 2.4
  • MinGW版本 - 安装在2012年的第9个月。不知道如何获取版本号。

请帮助,我该如何使这个opencv任务正常工作?

UPDATE

我只是检查它内置的.exe文件。它给我双击它

enter image description here

+0

您是否尝试使用没有空格的路径? – Subway 2013-04-25 20:48:12

+0

我也试着把双斜杠:C//用户/ /公共...这是我习惯做的代码应该在Windows平台上运行时,单斜杠没有做的工作我。 – Subway 2013-04-25 20:50:23

+0

@Subway:谢谢你的回复。我只是试图。无所谓 – 2013-04-25 21:34:11

回答

1

以下错误该错误是指操作系统无法找到.DLL当你的应用程序的启动。

有2种方法来解决这个问题:

  • 找到并复制.DLL.EXE文件夹。
  • 修改Windows' PATH环境变量和完整路径添加到.DLL。更换后最好重启机器。