2016-04-05 6 views
0

Mein Ziel ist es, in Qt 5.5.1 ein einfaches OpenCV Contrib (Zusatz-) Modul auszuführen.OpenCV einfacher Code kompiliert erfolgreich, stürzt aber zur Laufzeit ab

Schritte:

1) erstellt app eine Qt-Anwendung;

2) geändert, um die main.cpp-Datei:

#include <QApplication> 
#include <opencv2/core/utility.hpp> 
#include <opencv2/tracking.hpp> 
#include <opencv2/videoio.hpp> 
#include <opencv2/highgui.hpp> 
#include <iostream> 
#include <cstring> 
#include <QDebug> 

using namespace std; 
using namespace cv; 

int main(int argc, char*argv[]) 
{ 
    qDebug() <<"start!" << endl; 

    QApplication a(argc, argv); 

    string trackingAlg = "KCF"; 
    MultiTracker trackers(trackingAlg); 

    qDebug() <<"success!" << endl; 

    return a.exec(); 
} 

und hier ist meine .pro Datei:

QT  += core gui 
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 

TARGET = tracker4 

CONFIG += c++11 

TEMPLATE = app 
SOURCES += main.cpp 

INCLUDEPATH += /usr/local/include/opencv 

LIBS += `pkg-config opencv --libs` 
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui -lopencv_videoio -lopencv_tracking 

Das Programm erfolgreich kompiliert, aber in der Laufzeit, stürzt es ohne auch nur die main() läuft Funktion. Ich erhalte keinen solchen Fehler, wenn ich dies in Code :: Blocks ausführe, aber in Qt habe ich immer noch dieses Problem.

Ich verwende Qt 5.5.1 und Ubuntu 14.04.

Kann jemand diesen "seg fault" Fehler in seiner Maschine erzeugen?

+0

Ich habe gerade festgestellt, dass die Qt Console-Anwendung mit einem sehr einfachen Code, der 'imshow (" windowname ", img) enthält, ebenfalls abgestürzt ist. Bitte beachten Sie, dass andere opencv-Funktionen (wie Mat type, imread, ...) gut funktionieren. – mask

Antwort

0

Für QT 5 bauen Sie den OpenCV mit QT = OFF. Für QT 4 bauen Sie den OpenCV mit QT = ON.

Verwandte Themen