今天写了一段用到opencv的代码,最后主函数(main)返回时产生了runtime error! R6025-pure virtual function call 的错误提示。程序前面的所有代码都没有问题,就到最后return 0;的时候报错了。 看了opencv说明文档后知道在显示了一张图片后要将显示该图片的窗口给 destroy 。原来部分代码是这样的
if (bol)
{
PaintInterestingPoint(im1,map_point);
cvSaveImage("immapped.ppm",im1);
cvShowImage("painted mapped image",im1);
cvWaitKey(0);
}
cvReleaseImage(&im1);
cvReleaseImage(&im2);
return 0;
后来加入了窗口清除语句,错误解决。代码如下:
if (bol)
{
PaintInterestingPoint(im1,map_point);
cvSaveImage("immapped.ppm",im1);
cvShowImage("painted mapped image",im1);
cvWaitKey(0);
}
cvReleaseImage(&im1);
cvReleaseImage(&im2);
cvDestroyWindow("painted origin image");
cvDestroyWindou("painted mapped image");
return 0;
时间: 2024-10-29 20:52:52