gpt4 book ai didi

c++ - 带有 OpenCv 的 Qt 什么都不做

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:50:08 30 4
gpt4 key购买 nike

我正在使用 Qt 5.0.2 并尝试开始使用 OpenCv。

如果我运行以下程序,它只显示一个控制台并说按任意键但它不显示任何图像。我什至没有收到 qDebug() 消息。

但是,随着 Opencv 内容的删除,我收到了消息。

PS:是的,我确保 Desert.jpg 与 exe 位于同一文件夹中。first-openCV-test.pro:

QT       += core
QT -= gui
TARGET = first-openCV-test
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += F:\\QT\\libraries\\opencv\\opnecv_build_2.4.5\\install\\include
LIBS += -LF:\\QT\libraries\\opencv\\opnecv_build_2.4.5\\install\\lib \
-lopencv_core245.dll \
-lopencv_highgui245.dll \
-lopencv_imgproc245.dll \
-lopencv_features2d245.dll \
-lopencv_calib3d245.dll

主要.cpp:

#include <QDebug>
#include <QCoreApplication>

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


int main(int argc, char *argv[])
{
// read an image
qDebug()<< "start initialising";
cv::Mat image= cv::imread("Desert.jpg");
// create image window named "My Image"
qDebug()<< "name Window";
cv::namedWindow("My Image");
// show the image on window
qDebug()<< "show image: ";
cv::imshow("My Image", image);
// wait key for 5000 ms
qDebug()<< "wait";
cv::waitKey(5000);
return 1;
}

/////////////////////////////////////////////////////////////////////////////////////////

感谢您的快速回答。

我尝试了一些东西,还重建了所有东西并重新下载了它。我把它改成这样:
QT +=核心 QT-=图形用户界面 TARGET = 第一次测试 配置 += 控制台 配置 -= app_bundle 模板 = 应用程序 源 += main.cpp

INCLUDEPATH += "F:/QT/libraries/opencv/build/include" \
"F:/QT/libraries/opencv/build/include/opencv" \
"F:/QT/libraries/opencv/build/include/opencv2"

LIBS += -L"F:/QT/libraries/opencv/build/x86/mingw/lib"
-libopencv_core245.dll
-libopencv_highgui245.dll
-libopencv_imgproc245.dll
-libopencv_features2d245.dll
-libopencv_calib3d245.dll

但现在我得到以下错误:

F:\A_PROJECTS\OPEN-CV\first-test\first-test\main.cpp:-1: Fehler: 未定义对 `cv::fastFree(void*)' 的引用

F:\A_PROJECTS\OPEN-CV\first-test\first-test\main.cpp:-1: Fehler:undefined reference to `cv::Mat::deallocate()'

最佳答案

我不确定这是否对您有帮助,但让我们试一试...

首先,在我的程序中,我使用“/”而不是“\\”。其次,我从不将 .dll 放在库中。我使用这样的东西:

LIBS += -LC:/OpenCV/lib/-llibopencv_core245 -llibopencv_highgui245 -llibopencv_imgproc245

如果您使用的是 qtcreator,请尝试进行这些更改,然后“运行 qmake”和“全部重建”。

关于c++ - 带有 OpenCv 的 Qt 什么都不做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17218702/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com