Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. The program has unexpectedly finished.

The program has unexpectedly finished.

Scheduled Pinned Locked Moved General and Desktop
6 Posts 2 Posters 4.2k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    AleSantaCruz
    wrote on last edited by
    #1

    Hello Everyone,

    This is a very newbie situation, Im doing some tests with QT and OpenCV, first in windows and then i will go to XUbuntu. I have some algorithms that i've tested in VisualStudio, and i need to port them to an Embedded development Board (PandaBoard), for that i'm doing my first steps on QT and until now i only had huge problems.

    I've installed "Qt Creator 2.8.1 based on QT 5.1.1", and OpenCV 2.4.6 and after i could finally link the libraries, i'm only getting this error after trying to run my program.
    exited with code -1073741819

    This is the code:

    @#-------------------------------------------------

    Project created by QtCreator 2013-09-19T22:48:23

    #-------------------------------------------------

    QT += core gui

    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

    TARGET = QT-ShowImage
    TEMPLATE = app

    SOURCES += main.cpp
    mainwindow.cpp

    HEADERS += mainwindow.h

    FORMS += mainwindow.ui

    INCLUDEPATH += C:\opencv246\build\include

    LIBS += -LC:\opencv246\build\x86\mingw\bin
    -lopencv_calib3d246
    -lopencv_contrib246
    -lopencv_core246
    -lopencv_features2d246
    -lopencv_flann246
    -lopencv_gpu246
    -lopencv_highgui246
    -lopencv_imgproc246
    -lopencv_legacy246
    -lopencv_ml246
    -lopencv_objdetect246
    -lopencv_video246@

    @#ifndef MAINWINDOW_H
    #define MAINWINDOW_H

    #include <QMainWindow>
    #include <opencv/cv.h>
    #include <opencv2/imgproc/imgproc.hpp>
    #include <opencv/highgui.h>
    #include <QFileDialog>

    namespace Ui {
    class MainWindow;
    }

    class MainWindow : public QMainWindow
    {
    Q_OBJECT

    public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

    protected:
    // void changeEvent(QEvent e);
    QString FileOpName; //declare FileOpName as IplImage
    IplImage
    imagerd; //declare imagerd as IplImage

    private slots:
    void on_pushButton_clicked();
    void openImage(); //add a new openImage function to the project

    private:
    Ui::MainWindow *ui;
    };

    #endif // MAINWINDOW_H@

    @#include "mainwindow.h"
    #include <QApplication>

    int main(int argc, char *argv[])
    {
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec&#40;&#41;;
    

    }
    @

    @#include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include <opencv2/highgui/highgui.hpp>
    #include <opencv2/imgproc/imgproc.hpp>
    //#include <opencv/cv.h>
    //#include <opencv/highgui.h>
    #include <QPixmap>
    #include <QString>
    #include <QFileDialog>
    #include <QMessageBox>

    MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
    {
    ui->setupUi(this);
    }

    MainWindow::~MainWindow()
    {
    delete ui;
    }

    void MainWindow::openImage()
    {
    //declare FileOpName as the choosen opened file name
    FileOpName = QFileDialog::getOpenFileName(this,
    tr("Open File"),
    QDir::currentPath(),
    tr("Image Files(*.png *.jpg *.jpeg *.bmp)"));

    //Check if FileOpenName exist or not
    //Check if FileOpName exist or not
    if (!FileOpName.isEmpty())
    {
        QImage image(FileOpName);
        if (image.isNull()) {
            QMessageBox::information(this, tr("Face Recognition"),
                                     tr("Cannot load %1.").arg(FileOpName));
    
            return;
        }
    
    }
    
    //function to load the image whenever fName is not empty
    if( FileOpName.size() )
    {
      //imagerd = cvLoadImage(FileOpName.;
      imagerd = cvLoadImage("c:\\image.jpg");//the other way to read path with the QFileDialog wasn't compiling, so for now, just an image from the hard disk
      QImage imageView = QImage((const unsigned char*)(imagerd->imageData), imagerd->width,imagerd->height,QImage::Format_RGB888).rgbSwapped();
      ui->label->setPixmap(QPixmap::fromImage(imageView));
    }
    

    }

    void MainWindow::on_pushButton_clicked()
    {
    openImage();
    }@

    1 Reply Last reply
    0
    • p3c0P Offline
      p3c0P Offline
      p3c0
      Moderators
      wrote on last edited by
      #2

      Its an "Access violation":http://qt-project.org/forums/viewthread/32620/#142931 exception on windows.

      157

      1 Reply Last reply
      0
      • A Offline
        A Offline
        AleSantaCruz
        wrote on last edited by
        #3

        quote author="p3c0" date="1379700576"]Its an "Access violation":http://qt-project.org/forums/viewthread/32620/#142931 exception on windows.[/quote]

        I'm using an example i found on a Tutorial, and it seems to work normally for the author.

        The fact is that it doesnt even show the main window, but when i compile commenting this line
        @imagerd = cvLoadImage("c:\image.jpg");@
        (which, i was careful enough to copy there)

        It runs normallly, but off course it doesnt do anything important.

        i guess there's still some problems in the libraries and in the linker, but until now i've followed all the guides, and i can't even get to show a single imagen using OPENCV

        1 Reply Last reply
        0
        • p3c0P Offline
          p3c0P Offline
          p3c0
          Moderators
          wrote on last edited by
          #4

          Can you put a check and see it "imagerd" is not NULL after doing cvLoadImage() ?

          157

          1 Reply Last reply
          0
          • p3c0P Offline
            p3c0P Offline
            p3c0
            Moderators
            wrote on last edited by
            #5

            Maybe this one helps you "Qt program exited with code -1073741819":http://stackoverflow.com/questions/14514045/qt-program-exited-with-code-1073741819?rq=1
            They are also using Qt and OpenCV libraries

            157

            1 Reply Last reply
            0
            • A Offline
              A Offline
              AleSantaCruz
              wrote on last edited by
              #6

              This are my first step on QT, after several years in other IDE's. I
              it seems that i'm not even able to do a debug at this time.

              I build the app, i put several breakpoints, and when i push Debug, i only get an error stating:
              "The inferior stopped because it received a signal from the Operating System
              Signal Name: SISSEGT
              Signal meaning: Segmentation"

              I google it a 'lil bit, but i can't find the right way to deal with this. Maybe with your expertise i can find it.

              Thanks in advance

              1 Reply Last reply
              0

              • Login

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • Users
              • Groups
              • Search
              • Get Qt Extensions
              • Unsolved