OpenCV findContours causes Debug Assertion Failed at return
我正在使用Opencv 2.4.8在Visual Studio 2013上编程。这是我的代码
1 2 3 4 5 6 7 8 9 10 11 12 13 | #define _CRT_SECURE_NO_WARNINGS #include <cv.h> #include <highgui.h> int main(int argc, char* argv[]) { cv::Mat image = cv::imread(argv[1], 0); image = image > 100; std::vector<std::vector<cv::Point> > contours; cv::findContours(image, contours, CV_RETR_EXTERNAL, CV_CHAIN_APPROX_NONE); return 0; } |
在发布模式下一切都正常,我不明白为什么它在调试模式下不能正常工作。它导致调试断言在
(Expression : _pFirstBlock == pHead).
我想轮廓有点不对。
非常感谢您的帮助。
在属性下>代码生成>运行时:如果MSVC运行库被设置为多线程调试DLL(/MDD),那么这是没有问题的(它运行良好)。
如果msvc运行时库设置为多线程调试(/mtd),则它将引发此错误,可以使用以下说明修复此错误。