OpenCV: вычитание фона 0xC0000005: расположение записи о нарушении прав доступа

Я новичок в opencv и пытаюсь использовать BackgroundSubtractorMOG2, Но у меня проблема с нарушением доступа (я нигде не мог найти решение для этого). Я не уверен, если проблема с моим кодом? Пожалуйста помоги!!

ЭТА ПРОБЛЕМА:

Unhandled exception at 0x000007F81A1F3F33 (igdfcl64.dll) in opencv_31_test.exe: 0xC0000005: Access violation writing location 0x0000000067648A80.

Я использую VS2013 с OpenCV 3.1.

вот код:

#include "opencv2/imgproc/imgproc.hpp"#include "opencv2/videoio/videoio.hpp"#include "opencv2/highgui/highgui.hpp"#include "opencv2/video/background_segm.hpp"#include <iostream>
using namespace std;
using namespace cv;int main()
{
VideoCapture cap(0);
bool update = false;

if (!cap.isOpened())
{
cout<<"camera not open";
return -1;
}
Mat frames, bg_mask, output, image;
cap >> image;
if (image.empty())
{
cout<<"no image from camera";
return -1;
}
resize(image, frames, Size(640, 480));
namedWindow("webcam", WINDOW_AUTOSIZE);
namedWindow("segmented", WINDOW_AUTOSIZE);
Ptr<BackgroundSubtractorMOG2> bg_sub = createBackgroundSubtractorMOG2();
bg_sub->setVarThreshold(10);
for (;;)
{
cap >> frames;
if (frames.empty())
break;
bg_sub->apply(frames, bg_mask, update ? -1 : 0);
imshow("webcam", frames);
imshow("segmented", output);
if (waitKey(30) == 27)
break;
}
return 0;
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]