cvShowImage 使系统抛出异常
cvShowImage makes the system to throw exceptions
我有一个使用 cvopen 库的 C 语言代码。
这是代码:
#include <stdio.h>
#include <opencv2\highgui\highgui_c.h>
int main(void)
{
int i;
cvNamedWindow("Display window", CV_WINDOW_AUTOSIZE); //create a window
//create an image
IplImage* image = cvLoadImage("C:\Users\magshimim\Desktop\Mummy.png", 1);
if (!image)//The image is empty.
{
printf("could not open image\n");
}
else
{
cvShowImage("Display window", image);
cvWaitKey(0);
system("pause");
cvReleaseImage(&image);
}
getchar();
return 0;
}
第 17 行 "cvShowImage("显示 window", image);"系统抛出异常:
Exception thrown at 0xAD76406A in Q4.exe: 0xC0000008: An invalid handle was specified
cvopen 包没问题,其他功能也可以。但是这段代码(可以在其他计算机上运行)每次都会崩溃。
我该如何解决这个问题?
cvShowImage 是 OpenCV 中旧的 C 风格命名约定的一部分。这个旧约定已完全弃用,并且与 OpenCV 3.0 及更高版本不兼容。
尝试使用 imshow 而不是 cvShowImage
imshow("Display Window", 图片);
我有一个使用 cvopen 库的 C 语言代码。 这是代码:
#include <stdio.h>
#include <opencv2\highgui\highgui_c.h>
int main(void)
{
int i;
cvNamedWindow("Display window", CV_WINDOW_AUTOSIZE); //create a window
//create an image
IplImage* image = cvLoadImage("C:\Users\magshimim\Desktop\Mummy.png", 1);
if (!image)//The image is empty.
{
printf("could not open image\n");
}
else
{
cvShowImage("Display window", image);
cvWaitKey(0);
system("pause");
cvReleaseImage(&image);
}
getchar();
return 0;
}
第 17 行 "cvShowImage("显示 window", image);"系统抛出异常:
Exception thrown at 0xAD76406A in Q4.exe: 0xC0000008: An invalid handle was specified
cvopen 包没问题,其他功能也可以。但是这段代码(可以在其他计算机上运行)每次都会崩溃。 我该如何解决这个问题?
cvShowImage 是 OpenCV 中旧的 C 风格命名约定的一部分。这个旧约定已完全弃用,并且与 OpenCV 3.0 及更高版本不兼容。
尝试使用 imshow 而不是 cvShowImage imshow("Display Window", 图片);