Add sanity checks to objdetect module perf tests
This commit is contained in:
parent
c146c54bcd
commit
e2ff0ed1fb
@ -38,17 +38,20 @@ PERF_TEST_P(ImageName_MinSize, CascadeClassifierLBPFrontalFace,
|
|||||||
if (img.empty())
|
if (img.empty())
|
||||||
FAIL() << "Can't load source image";
|
FAIL() << "Can't load source image";
|
||||||
|
|
||||||
vector<Rect> res;
|
vector<Rect> faces;
|
||||||
|
|
||||||
equalizeHist(img, img);
|
equalizeHist(img, img);
|
||||||
declare.in(img);
|
declare.in(img);
|
||||||
|
|
||||||
while(next())
|
while(next())
|
||||||
{
|
{
|
||||||
res.clear();
|
faces.clear();
|
||||||
|
|
||||||
startTimer();
|
startTimer();
|
||||||
cc.detectMultiScale(img, res, 1.1, 3, 0, minSize);
|
cc.detectMultiScale(img, faces, 1.1, 3, 0, minSize);
|
||||||
stopTimer();
|
stopTimer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::sort(faces.begin(), faces.end(), comparators::RectLess());
|
||||||
|
SANITY_CHECK(faces);
|
||||||
}
|
}
|
||||||
|
@ -473,10 +473,26 @@ int main(int argc, char **argv)\
|
|||||||
#define TEST_CYCLE() for(; startTimer(), next(); stopTimer())
|
#define TEST_CYCLE() for(; startTimer(), next(); stopTimer())
|
||||||
#define TEST_CYCLE_MULTIRUN(runsNum) for(declare.runs(runsNum); startTimer(), next(); stopTimer()) for(int r = 0; r < runsNum; ++r)
|
#define TEST_CYCLE_MULTIRUN(runsNum) for(declare.runs(runsNum); startTimer(), next(); stopTimer()) for(int r = 0; r < runsNum; ++r)
|
||||||
|
|
||||||
//flags
|
|
||||||
namespace perf
|
namespace perf
|
||||||
{
|
{
|
||||||
//GTEST_DECLARE_int32_(allowed_outliers);
|
namespace comparators
|
||||||
|
{
|
||||||
|
|
||||||
|
template<typename T>
|
||||||
|
struct CV_EXPORTS RectLess_
|
||||||
|
{
|
||||||
|
bool operator()(const cv::Rect_<T>& r1, const cv::Rect_<T>& r2) const
|
||||||
|
{
|
||||||
|
return r1.x < r2.x
|
||||||
|
|| (r1.x == r2.x && r1.y < r2.y)
|
||||||
|
|| (r1.x == r2.x && r1.y == r2.y && r1.width < r2.width)
|
||||||
|
|| (r1.x == r2.x && r1.y == r2.y && r1.width == r2.width && r1.height < r2.height);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef RectLess_<int> RectLess;
|
||||||
|
|
||||||
|
} //namespace comparators
|
||||||
} //namespace perf
|
} //namespace perf
|
||||||
|
|
||||||
#endif //__OPENCV_TS_PERF_HPP__
|
#endif //__OPENCV_TS_PERF_HPP__
|
||||||
|
Loading…
x
Reference in New Issue
Block a user