使用calcOpticalFlowPyrLK与OpenCV 2.3.1时出错

时间:2014-02-20 00:31:34

标签: c++ visual-studio-2010 opencv

我正在尝试使用calcOpticalFlowPyrLK进行功能跟踪。功能如下使用

TermCriteria termcrit(CV_TERMCRIT_ITER | CV_TERMCRIT_EPS,20,0.03);

尺寸winSize(31,31);

vector< uchar>状态;

vector<浮动> ERR;

calcOpticalFlowPyrLK(prevGray,grey,point [0],point [1],status,err,winSize,3,termcrit,0,0,0.001);

所有参数都是正确的。在点[0]中,已经给出了一组点。但是当我尝试执行程序时,它会出现以下错误。我正在使用Visual C ++ 2010.

.....................................

GFFER.exe中0x74c426df(msvcr100.dll)的第一次机会异常:0xC0000005:访问冲突写入位置0x058fe000。 GFFER.exe中0x74c426df(msvcr100.dll)的未处理异常:0xC0000005:访问冲突写入位置0x058fe000。

.....................................

你知道我怎么能解决这个问题。

提前致谢!!

1 个答案:

答案 0 :(得分:0)

  

访问违规写入位置

将数据写入未初始化的位置时似乎发生错误。 在您的代码中,指向[1] 状态错误发生的唯一位置。< / p>

状态和错误并正确定义。问题必须是point[1]。它是vector<Point2f>类型。

为什么不尝试使用两个单独的向量而不是一个向量数组,比如point0 point1。