OpenCV& Qt - SetGeometry-Error

时间:2018-01-09 07:52:27

标签: c++ qt opencv

我查看了以下链接,但无法找到解决问题的方法:

Qt setGeometry: Unable to set geometry

Unable to set geometry in Qt

https://forum.qt.io/topic/38304/setgeometry-unable-to-set-geometry

以下代码会产生错误。使用Visual Studio进行调试时,仍会显示图像。但是当直接使用可执行文件时,程序会崩溃。

  

QWindowsWindow :: setGeometry:无法设置几何体374x133 + 2679 + 423   在QWidgetWindow /'TestWindowWindow'上。产生的几何形状:   376x141 + 2679 + 423(框架:8,31,8,8,自定义边距:0,0,0,0,   最小尺寸:374x133,最大尺寸:374x133)。

我的代码如下所示:

#include "stdafx.h"
#include <iostream>
#include <opencv2\opencv.hpp>

using namespace std;
int main()
{
  cout << "Test-Console for OpenCV" << endl;

  string path = "C:/Data/01_Daten/tiger.bmp";
  cv::Mat image = cv::imread(path, cv::IMREAD_GRAYSCALE);

  if (image.empty())
  {
    cout << "Failed to read image" << endl;
    getchar();
    return 1;
  }

  cv::namedWindow("TestWindow", cv::WINDOW_AUTOSIZE);
  cv::imshow("TestWindow", image);

  cout << "Press any key to exit..." << endl;

  cv::waitKey(-1);
  return 0;
}

我正在使用Visual Stuido 2013,OpenCV 3.3.0,QT 5.9.2 OpenCV使用WithQT编译。

1 个答案:

答案 0 :(得分:0)

解决我的问题是重建OpenCV,不仅选择了 WithQT ,还选择了 WithOpenGL

我不确定这是解决问题的唯一方法,因为我认为,QT模块甚至可以在没有OpenGL-Part的情况下工作,但它帮助了我。