c++ - 在 Qt Creator Ubuntu 12.04 中设置 OpenCV

标签 c++ qt opencv

我正在尝试在 Qt Creator 中设置 OpenCV,但遇到了一些问题。我在Qt Creator .pro文件中添加了OpenCV路径

INCLUDEPATH += /usr/local/include/opencv
LIBS += -L/usr/local/lib \
-lopencv_core \
-lopencv_imgproc \
-lopencv_highgui \
-lopencv_ml \
-lopencv_video \
-lopencv_features2d \
-lopencv_calib3d \
-lopencv_objdetect \
-lopencv_contrib \
-lopencv_legacy \
-lopencv_flann

我想在这段代码中读取和显示图像

void MainWindow::on_pushButton_clicked()
{
     cv::Mat matInput = cv::imread("LP.jpg");
     if( matInput.empty())
     {
          std::cout<<"Can't load image "<<std::endl;
     }
     cv::namedWindow("Show");
     cv::imshow("Show", matInput);
     cv::waitKey();
}

当我运行我的项目时,它显示以下消息:

Starting /home/vasan/Qt/build-OpenCVWithQt-Desktop-Debug/OpenCVWithQt...
The program has unexpectedly finished.
/home/vasan/Qt/build-OpenCVWithQt-Desktop-Debug/OpenCVWithQt exited with code 0

最佳答案

这几天我也一直在尝试为 Qt Creator 设置 OpenCV。我建议您尝试在

找到的程序

https://code.google.com/p/qt-opencv-multithreaded/wiki/Documentation

遵循起来很简单,而且很管用。当你到达第 1.3 节时,运行你手边的任何代码示例。我用过:

int main( int argc, char** argv )
{
    if( argc != 2)
    {
     cout <<" Usage: display_image ImageToLoadAndDisplay" << endl;
     return -1;
    }

    Mat image;
    image = imread(argv[1], CV_LOAD_IMAGE_COLOR);   // Read the file
    image = imread("lena.png", CV_LOAD_IMAGE_COLOR);   // Read the file
    if(! image.data )                              // Check for invalid input
    {
        cout <<  "Could not open or find the image" << std::endl ;
        return -1;
    }

    namedWindow( "Display window", CV_WINDOW_AUTOSIZE );// Create a window for display.
    imshow( "Display window", image );                   // Show our image inside it.

    waitKey(0);                                          // Wait for a keystroke in the window
    return 0;
}

希望对您有所帮助!

关于c++ - 在 Qt Creator Ubuntu 12.04 中设置 OpenCV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17938360/

相关文章:

C++将整数数组分配给相同大小的空整数数组

c++ - OpenMP:如何在 PARALLEL block 中正确嵌套 MASTER 和 FOR?

c++ - 这是使用 strerror_r 的正确方法吗?

c++ - 应用程序停止后 Qt 关闭托盘图标

c++ - 在opencv中获取灰度图像中的最大像素值

OpenCV 显示彩色 Cb Cr channel

C++ 等待互斥锁

qt - 如何从 QML 基本类型列表中动态删除元素?

c++ - 关于 C 宏无效预处理标记的错误

python - 如何从浮雕对象中提取圆形文本