打开OpenCV VideoCapture时出现访问冲突(仅限发布)

时间:2015-10-04 15:57:47

标签: c++ visual-studio opencv visual-studio-2013 access-violation

我有一个使用OpenCV 2.4.10在visual studio中编写的应用程序。程序在调试模式下执行完美,但在发布模式下,它会在VideoCapture :: open()调用后的第一个命令崩溃,无论调用是在构造函数中完成还是使用方法调用完成。我认识到这是一个非常常见的情况,并且dll链接可能是问题,但是无法完全识别问题。非常感谢任何帮助。

以下是错误消息:

Unhandled exception at 0x03DE7D43 (opencv_ffmpeg2410.dll) in OpenCVLaserDot.exe: 0xC0000005: Access violation reading location 0x00000000.

以下是VideoCapture实例化的代码段:

const string DEFAULT_INPUT_FILE = "C:/Users/Tyler/Documents/Visual Studio 2013/Projects/OpenCVLaserDot/Release/a.avi";

VideoCapture cap; 
if (inputFile == "1" || inputFile == ""){
    cap.open(DEFAULT_INPUT_FILE);
} else {
    cap.open(inputFile);
}
if (!cap.isOpened()){ 
    printf("Failed to open video\n");
    return -1; 
}

0 个答案:

没有答案