Я пытаюсь использовать calcOpticalFlowPyrLK для отслеживания функций. Функция используется следующим образом:Ошибка использования calcOpticalFlowPyrLK с OpenCV 2.3.1
TermCriteria termcrit (CV_TERMCRIT_ITER | CV_TERMCRIT_EPS, 20,0.03);
Размер winSize (31,31);
< uchar> статус;
vector < float> err;
calcOpticalFlowPyrLK (prevGray, gray, point [0], point [1], status, err, winSize, 3, termcrit, 0, 0, 0.001);
Все параметры указаны правильно. В пункте [0] уже задано множество точек. Но пока я пытаюсь выполнить программу, она дает следующую ошибку. Я использую Visual C++ 2010.
.....................................
Исключение при первой возможности в 0x74c426df (msvcr100.dll) в GFFER.exe: 0xC0000005: место записи нарушения доступа 0x058fe000. Необработанное исключение в 0x74c426df (msvcr100.dll) в GFFER.exe: 0xC0000005: место записи нарушения доступа 0x058fe000.
.....................................
У вас есть идея как я могу решить эту проблему.
Спасибо заранее!
Убедитесь, что prevGray, серый, инициализируются соответствующим образом. То же самое и для вектора двумерных точек. Вы должны предоставить код, в котором вы инициализируете эти переменные, чтобы дать больше контекста вашей проблеме. В настоящее время ошибка указывает на то, что код пытается получить доступ к памяти, которая, вероятно, не была выделена. Но трудно сказать только из нескольких строк кода, которые вы дали. – lightalchemist
У меня была аналогичная проблема, которая была решена путем переключения с отладки на выпуск. Хотя я не уверен, в чем была основная причина проблемы или почему это исправлено. – NickF