cvShowImage使系统抛出异常

时间:2018-06-12 09:32:35

标签: c opencv opencv3.0

我有一个使用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(”显示窗口“,图像);”系统抛出异常,说:

  

Q4.exe中0xAD76406A抛出异常:0xC0000008:指定了无效句柄

cvopen包很好,其他功能也可以。但是这段代码(适用于其他计算机)每次都会崩溃。 我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

cvShowImage是OpenCV中旧的C风格命名约定的一部分。此旧约定已完全折旧,与OpenCV 3.0及更高版本不兼容。

而不是cvShowImage尝试使用imshow imshow(&#34;显示窗口&#34;,图像);