如何在QtCreator上使用OpenCV和highGUI

How to use OpenCV with highGUI on QtCreator?

本文关键字:OpenCV highGUI QtCreator      更新时间:2023-10-16

我试图显示使用cv2库中的highgui模块加载磁盘的基本图像。我能够做到这一点时,使Qt小部件应用程序,但Qt窗口变得多余;然而,当使用控制台应用程序时,我得到这个错误:

OpenCV Error: Assertion failed (size.width>0 && size.height>0) in imshow, file /build/opencv-ISmtkH/opencv-2.4.9.1+dfsg/modules/highgui/src/window.cpp, line 269
terminate called after throwing an instance of 'cv::Exception'
  what():  /build/opencv-ISmtkH/opencv-2.4.9.1+dfsg/modules/highgui/src/window.cpp:269: error: (-215) size.width>0 && size.height>0 in function imshow
下面是我的代码:
int main ()
{ 
    cv::Mat inputImg = cv::imread("/home/pi/scrot1.png");
    cv::imshow("Display Image", inputImg);
}

我用python写了一个脚本,可以通过终端运行,它调用高gui模块。我想在c++中写这个,但我似乎无法加载一个基本的图像!

编辑:

路径实际上无效。然而,即使有正确的路径,我也无法看到HighGui的图像。

该错误表示图像未正确加载。您可以使用以下命令检查:

if(image.empty()) {
   // not loaded correctly
}

你需要确保:

  1. 路径有效
  2. 图像未损坏
  3. 你有权限访问这个文件夹

要实际显示图像,您需要在imshow之后使用cv::waitKey()