Qt4或Qt5(mingw)和openCV 2.4.6

时间:2013-08-04 01:24:38

标签: qt opencv mingw

我在使用opencv设置Qt时遇到问题:

使用Qt5 cMake无法完成配置。幸运的是Qt4运行正常。 (默认只有Qt)

mingw32-make
mingw32-make install

(这样运行没有错误)

但是当我使用highgui中的InputVideo时,它会停止运行时。 使用dependecy walker进行检查,LIBOPENCV_HIGHGUI246.DLL具有以下依赖性:

API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL
API-MS-WIN-CORE-PRIVATEPROFILE-L1-1-1.DLL
API-MS-WIN-SERVICE-PRIVATE-L1-1-1.DLL
...

这些在理论上是windows8的一部分。我该如何解决这个问题?

(除了移动我的可执行文件附近的所有dll-s)

1 个答案:

答案 0 :(得分:0)

我设法用OpenCV配置一个Qt Creator项目来运行我最近写的一个名为cvDisplacementMapFilter的简单OpenCV应用程序。

我在Mac OS X 10.7.5上使用 OpenCV 2.4.7 和在Windows 7上使用OpenCV 2.4.2进行了测试。我相信以下 .pro 文件可以提供帮助你:

SOURCES += \
    main.cpp

# On my system I have to specify g++ as compiler else it will use clang++ by default
QMAKE_CXX=g++
QMAKE_CC=gcc

## OpenCV settings for Unix/Linux
unix:!mac {
    message("* Using settings for Unix/Linux.")
    INCLUDEPATH += /usr/local/include/opencv

    LIBS += -L/usr/local/lib/ \
        -lopencv_core \
        -lopencv_highgui \
        -lopencv_imgproc
}

## OpenCV settings for Mac OS X
macx {
    message("* Using settings for Mac OS X.")
    INCLUDEPATH += /usr/local/include/opencv

    LIBS += -L/usr/local/lib/ \
        -lopencv_core \
        -lopencv_highgui \
        -lopencv_imgproc
}

## OpenCV settings for Windows and OpenCV 2.4.2
win32 {
    message("* Using settings for Windows.")
    INCLUDEPATH += "C:\\opencv\\build\\include" \
                   "C:\\opencv\\build\\include\\opencv" \
                   "C:\\opencv\\build\\include\\opencv2"

    LIBS += -L"C:\\opencv\\build\\x86\\vc10\\lib" \
        -lopencv_core242 \
        -lopencv_highgui242 \
        -lopencv_imgproc242
}

不要忘记在win32更改OpenCV的路径和版本。