版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mingjieshendu/article/details/81155137
1.问题描述
我在一次使用OpenCV3.2.0(Win10 VS2015 Debug x64 )的过程中,发现imshow函数调用窗口不显示(waitKey函数已添加)。
如图1所示,只有任务栏图标,不显示窗口。
2.问题分析
可能是函数调用问题,问题最简化(使用最简单的表达方式逐步接近问题)。
这里是函数命名、参数最简化。
3.问题解决
这里是imshow函数的窗口名称字符之间不能有空格。
4.代码对比
修改前:
#include<opencv2\opencv.hpp>
using namespace cv;
int main(void)
{
//para
Mat srcImg;
string path, strWin;
//init
path = "leaf.jpg";
strWin = "SOURCE IMAGE";
//read
srcImg = imread(path, CV_LOAD_IMAGE_UNCHANGED);
if (srcImg.empty())
{
return -1;
}
//display
namedWindow(strWin, CV_WINDOW_NORMAL);
imshow(strWin, srcImg);
waitKey(0);
return 0;
}
修改后:
#include<opencv2\opencv.hpp>
using namespace cv;
int main(void)
{
//para
Mat srcImg;
string path, strWin;
//init
path = "leaf.jpg";
strWin = "SOURCE_IMAGE";
//read
srcImg = imread(path, CV_LOAD_IMAGE_UNCHANGED);
if (srcImg.empty())
{
return -1;
}
//display
namedWindow(strWin, CV_WINDOW_NORMAL);
imshow(strWin, srcImg);
waitKey(0);
return 0;
}