Qt_5_4_1_MSVC2013_OpenGL和opencv2.10

網上的教程說的都是mingw編輯器的qt版本,所以需要重新編譯opencv

其實使用MSVC編輯器的話,可以直接調用。

只需要在pro文件裏進行配置即可:


在pro寫上:

#-------------------------------------------------#
# Project created by QtCreator 2015-06-02T18:30:52
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = charLoc
TEMPLATE = app


SOURCES += main.cpp\
        widget.cpp


HEADERS  += widget.h

FORMS    += widget.ui

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

CONFIG +=qt warn_on release

CONFIG(release,debug|release)
{
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_videostab2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_video2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_ts2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_superres2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_stitching2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_photo2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_ocl2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_objdetect2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_nonfree2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_ml2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_legacy2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_imgproc2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_highgui2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_gpu2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_flann2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_calib3d2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_features2d2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_core2410.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_contrib2410.lib

}
CONFIG(debug,debug|release){
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_videostab2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_video2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_ts2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_superres2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_stitching2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_photo2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_ocl2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_objdetect2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_nonfree2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_ml2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_legacy2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_imgproc2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_highgui2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_gpu2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_flann2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_calib3d2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_features2d2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_core2410d.lib
    LIBS+=C:\opencv\build\x86\vc12\lib\opencv_contrib2410d.lib
}




在mian函數裏面:
#include "widget.h"#include <QApplication>

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <QDebug>
using namespace cv;
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();
    Mat image= imread("D:/1.bmp",0);
    if(!image.empty())
    {
        qDebug()<<"iscc";
        imwrite("D:/1_2.bmp",image);
    }
    else
    {
        qDebug()<<"is error";
    }
    return a.exec();
}

在使用過程中,有時候配置都正確,但是就是編譯不通過,

其實只需要把debug和release編譯的臨時文件全部刪除,重新編譯即可


下面直接把整個工程放出來


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章