我正在使用OpenCV和MS Visual Studio 2013来简单地检测棋盘。它可以很好地编译和构建,但是在位于以下位置的xmemory0()
文件中给出了运行时错误:
c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\xmemory0
我似乎无法理解问题。任何想法将不胜感激。
调试器在xmemory0()
中中断,我认为findChessboardCorners()
函数和库opencv-core2410中的问题。我在vs2010中尝试了相同的功能,并且可以正常工作,但是我需要在vs2013中使用它。
答案 0 :(得分:0)
经过艰苦的努力,我发现我必须先确定cv :: vector变量的大小,例如:
cv::vector<Point2f> corners;
corners.resize(54);
bool patternfound = findChessboardCorners(gray, patternsize, corners,CV_CALIB_CB_ADAPTIVE_THRESH | CV_CALIB_CB_FAST_CHECK | CV_CALIB_CB_NORMALIZE_IMAGE);
我不需要在vs2010中调整向量的大小,而只需在vs2013中调整大小。