1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| cv::Mat input_1;
cv::Mat input_2;
cv::Mat SRC_disto;
cv::Mat DST_disto;
gray = cvCreateMat(frame->height, frame->width, CV_8UC1);
prevgray = cvCreateMat(gray->rows, gray->cols, gray->type);
flow = cvCreateMat(gray->rows, gray->cols, CV_32FC2);
input_1.create(gray->rows, gray->cols, CV_32FC2);
SRC_disto.create(gray->rows, gray->cols, gray->type);
DST_disto.create(gray->rows, gray->cols, gray->type);
cvCalcOpticalFlowFarneback prevgray, gray, flow,
0.1,
15,
75,
3,
5,
0.2,
10
);
SRC_disto = cv::Mat(frame, true);
input_1 = cv::Mat(flow, true);
remap(
SRC_disto,
DST_disto,
input_1,
input_2,
INTER_CUBIC,
BORDER_TRANSPARENT
);
CvMat* resultat = &CvMat( DST_disto );
cvShowImage("flow", resultat); |
Partager