qt - 在Qt Creator中无法使用OpenCV显示图像

标签 qt opencv

该项目的结果将显示一个包含图片的窗口。但是它只是显示一个控制台窗口,并显示消息

"press to close this window qt"



而且什么也不要显示。我运行MSCV2010版本。

我现在能做什么?

这是我的.pro:
QT       += core

QT       -= gui

TARGET = OpenCV
CONFIG   += console
CONFIG   -= app_bundle
#CONFIG   -= qt

TEMPLATE = app


SOURCES += main.cpp

INCLUDEPATH += C:/opencv/build/include

CONFIG(debug,debug|release){
LIBS += C:/opencv/build/x86/vc10/lib/opencv_core231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_highgui231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_imgproc231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_features2d231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_calib3d231.lib
}

CONFIG(release,debug|release){
LIBS += C:/opencv/build/x86/vc10/lib/opencv_core231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_highgui231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_imgproc231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_features2d231.lib
LIBS += C:/opencv/build/x86/vc10/lib/opencv_calib3d231.lib
}

和我的main():
    int main(int argc, char* argv[])
{
    QCoreApplication a(argc, argv);
    Mat image=imread("C:/Desert.jpg");
    imshow("image",image);

    return a.exec();
}

=======================================

最后,我发现了我的问题。

首先,在“OpenCV-build-desktop-Qt_4_8_1_for_Desktop_-MSVC2010_Qt_SDK__Release \ release”中运行项目的可执行文件。而且我发现,缺少一些dll文件。我将它们复制到System32文件夹,它成功运行!是的

实际上,我将这些dll的路径放入系统环境中。但是它仍然表明它找不到dll文件。发生了什么?

最佳答案

如果使用imshow(),则还需要waitKey(),否则将不会显示任何内容。 (它不仅等待键之类的东西,整个窗口消息泵都隐藏在其中,因此,没有它就不会发声)

int main(int argc, char* argv[])
{
    QCoreApplication a(argc, argv);
    Mat image=imread("C:/Desert.jpg");
    imshow("image",image);
    waitKey(0); // wait forever until a key was pressed

    return a.exec();
}

关于qt - 在Qt Creator中无法使用OpenCV显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19046870/

相关文章:

multithreading - 如何使用QTimer每隔10秒将消息打印到QTextBrowser?

python - 无法为 Python 2.7 构建 OpenCV3.1

c++ - 使用 OpenCV 复制指向的对象

opencv - 在Ubuntu 14.04上安装opencv-3.0.0-beta时出错

javascript - qt webengine 将 javascript 输出重定向到 GUI

使用 QT Designer 的 QT/PyQT 最佳实践

c++ - 使用 OpenCV 2.4.3 的双线性插值的 VideoCapture 旋转

opencv - 浮点像素值如何转换为整数值?

c++ - 当高度小于边界半径的两倍时保持圆 Angular ?

c++ - 无法访问的QPushButton之谜