@@ -69,7 +69,7 @@ TEST_P(TrackingTest, accuracy)
69
69
ptsEst.push_back (p);
70
70
}
71
71
72
- std::vector< int32_t > statusVec (nPts);
72
+ cv::Mat statusVec (nPts, 1 , CV_32S, cv::Scalar::all ( 0 ) );
73
73
74
74
cv::TermCriteria termCrit;
75
75
termCrit.type = cv::TermCriteria::COUNT | cv::TermCriteria::EPS;
@@ -90,16 +90,16 @@ TEST_P(TrackingTest, accuracy)
90
90
}
91
91
92
92
std::vector<cv::Point2f> ocvPtsOut;
93
- std::vector< uint8_t > ocvStatusVec;
93
+ cv::Mat ocvStatusVec;
94
94
std::vector<float > ocvErrVec;
95
95
cv::calcOpticalFlowPyrLK (src, dst, ptsIn, ocvPtsOut, ocvStatusVec, ocvErrVec, {winSz, winSz}, nLevels - 1 , termCrit);
96
96
97
97
cv::Mat refStatusVec (nPts, 1 , CV_32S, Scalar::all (1 ));
98
98
cv::Mat ocvStatusVecInt;
99
- cv::Mat ( ocvStatusVec) .convertTo (ocvStatusVecInt, CV_32S);
99
+ ocvStatusVec.convertTo (ocvStatusVecInt, CV_32S);
100
100
101
101
double statusNormOcv = cv::norm (ocvStatusVecInt, refStatusVec, NORM_INF);
102
- double statusNorm = cv::norm (cv::Mat ( statusVec), refStatusVec, NORM_INF);
102
+ double statusNorm = cv::norm (statusVec. t ( ), refStatusVec, NORM_INF);
103
103
104
104
EXPECT_EQ (statusNormOcv, 0 );
105
105
EXPECT_EQ (statusNorm, 0 );
@@ -108,7 +108,7 @@ TEST_P(TrackingTest, accuracy)
108
108
double diffNorm = cv::norm (ptsOut, ptsExpected, NORM_L2);
109
109
110
110
EXPECT_LT (diffNormOcv, 31.92 );
111
- EXPECT_LT (diffNorm, 6.69 );
111
+ EXPECT_LT (diffNorm, 6.73 );
112
112
113
113
if (cvtest::debugLevel > 0 )
114
114
{
@@ -127,17 +127,16 @@ TEST_P(TrackingTest, accuracy)
127
127
drawPts (ptsOut, " track_w" +std::to_string (winSz)+" _warped.png" );
128
128
drawPts (ocvPtsOut, " track_ocv_warped.png" );
129
129
130
- std::cout << " status vec:" << std::endl << cv::Mat ( statusVec). t () << std::endl;
131
- std::cout << " status vec ocv:" << std::endl << cv::Mat ( ocvStatusVec). t () << std::endl;
130
+ std::cout << " status vec:" << std::endl << statusVec << std::endl;
131
+ std::cout << " status vec ocv:" << std::endl << ocvStatusVec << std::endl;
132
132
}
133
133
}
134
134
135
- // BUG: https://github.com/opencv/opencv_contrib/issues/3958
136
- // INSTANTIATE_TEST_CASE_P(FastCV_Extension, TrackingTest,
137
- // ::testing::Combine(::testing::Values(5, 7, 9), // window size
138
- // ::testing::Bool(), // useSobelPyramid
139
- // ::testing::Bool(), // useFastCvPyramids
140
- // ::testing::Bool() // useInitialEstimate
141
- // ));
135
+ INSTANTIATE_TEST_CASE_P (FastCV_Extension, TrackingTest,
136
+ ::testing::Combine (::testing::Values(5 , 7 , 9 ), // window size
137
+ ::testing::Bool(), // useSobelPyramid
138
+ ::testing::Bool(), // useFastCvPyramids
139
+ ::testing::Bool() // useInitialEstimate
140
+ ));
142
141
143
142
}} // namespaces opencv_test, ::
0 commit comments