OpenCV imread () problema

1

Instalei o OpenCV recentemente e não consigo usar imread() .

Este é o meu código

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

using namespace cv;
using namespace std;

int main(  )
{
    Mat i=imread("home/ali/opencv/lena.png",1);
    namedWindow("a",WINDOW_FULLSCREEN);
    imshow("a",i);
    waitKey(0);
    return 0;
}

e este é o meu arquivo .pro em Qt

QT += core
QT -= gui

CONFIG += c++11

TARGET = opencv
CONFIG += console
CONFIG -= app_bundle

TEMPLATE = app

INCLUDEPATH += /usr/local/include/opencv
LIBS += -L/usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_highgui -lopencv_imgcodecs


SOURCES += main.cpp

isto é o que recebo:

OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /home/ali/Downloads/opencv/opencv-3.2.0.www.fileniko.com/opencv-3.2.0/modules/highgui/src/window.cpp, line 304
terminate called after throwing an instance of 'cv::Exception'
  what():  /home/ali/Downloads/opencv/opencv-3.2.0.www.fileniko.com/opencv-3.2.0/modules/highgui/src/window.cpp:304: error: (-215) size.width>0 && size.height>0 in function imshow

Press <RETURN> to close this window...
^A

Usando o opencv3.2 ubuntu qt

    
por ali 30.07.2017 / 19:13

1 resposta

3

Este comentário forneceu a solução correta:

  

Então - o que acontece exatamente? Meu palpite é que seu caminho de arquivo é inválido   (precisa ser " /home/ali/opencv/lena.png " - observe o início /)

- steeldriver 30 de julho às 17:17

Eu mudei o caminho e funcionou.

    
por ali 30.07.2017 / 19:25