2012-05-22 18:29:58 +08:00
|
|
|
#include "perf_cpu_precomp.hpp"
|
2012-05-22 16:29:08 +08:00
|
|
|
|
|
|
|
#ifdef HAVE_CUDA
|
|
|
|
|
2012-05-23 20:58:01 +08:00
|
|
|
///////////////////////////////////////////////////////////////
|
|
|
|
// HOG
|
|
|
|
|
2012-05-22 16:29:08 +08:00
|
|
|
GPU_PERF_TEST_1(HOG, cv::gpu::DeviceInfo)
|
|
|
|
{
|
2012-05-22 18:29:58 +08:00
|
|
|
cv::Mat img = readImage("gpu/hog/road.png", cv::IMREAD_GRAYSCALE);
|
2012-05-23 20:58:01 +08:00
|
|
|
ASSERT_FALSE(img.empty());
|
2012-05-22 16:29:08 +08:00
|
|
|
|
|
|
|
std::vector<cv::Rect> found_locations;
|
|
|
|
|
2012-05-22 18:29:58 +08:00
|
|
|
cv::HOGDescriptor hog;
|
2012-05-22 16:29:08 +08:00
|
|
|
hog.setSVMDetector(cv::gpu::HOGDescriptor::getDefaultPeopleDetector());
|
|
|
|
|
2012-05-23 20:58:01 +08:00
|
|
|
hog.detectMultiScale(img, found_locations);
|
|
|
|
|
2012-05-22 16:29:08 +08:00
|
|
|
TEST_CYCLE()
|
|
|
|
{
|
|
|
|
hog.detectMultiScale(img, found_locations);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
INSTANTIATE_TEST_CASE_P(ObjDetect, HOG, ALL_DEVICES);
|
|
|
|
|
2012-05-23 20:58:01 +08:00
|
|
|
///////////////////////////////////////////////////////////////
|
|
|
|
// HaarClassifier
|
|
|
|
|
2012-05-23 02:58:01 +08:00
|
|
|
GPU_PERF_TEST_1(HaarClassifier, cv::gpu::DeviceInfo)
|
2012-05-23 20:58:01 +08:00
|
|
|
{
|
2012-05-23 02:58:01 +08:00
|
|
|
cv::Mat img = readImage("gpu/haarcascade/group_1_640x480_VGA.pgm", cv::IMREAD_GRAYSCALE);
|
2012-05-23 20:58:01 +08:00
|
|
|
ASSERT_FALSE(img.empty());
|
|
|
|
|
2012-05-23 02:58:01 +08:00
|
|
|
cv::CascadeClassifier cascade;
|
|
|
|
|
2012-05-23 20:58:01 +08:00
|
|
|
ASSERT_TRUE(cascade.load(perf::TestBase::getDataPath("gpu/perf/haarcascade_frontalface_alt.xml")));
|
|
|
|
|
2012-05-23 02:58:01 +08:00
|
|
|
std::vector<cv::Rect> rects;
|
2012-05-23 20:58:01 +08:00
|
|
|
|
|
|
|
cascade.detectMultiScale(img, rects);
|
2012-05-23 02:58:01 +08:00
|
|
|
|
|
|
|
TEST_CYCLE()
|
|
|
|
{
|
2012-05-23 20:58:01 +08:00
|
|
|
cascade.detectMultiScale(img, rects);
|
2012-05-23 02:58:01 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
INSTANTIATE_TEST_CASE_P(ObjDetect, HaarClassifier, ALL_DEVICES);
|
|
|
|
|
2012-07-04 20:11:07 +08:00
|
|
|
//===================== LBP cascade ==========================//
|
|
|
|
GPU_PERF_TEST_1(LBPClassifier, cv::gpu::DeviceInfo)
|
|
|
|
{
|
|
|
|
cv::Mat img = readImage("gpu/haarcascade/group_1_640x480_VGA.pgm", cv::IMREAD_GRAYSCALE);
|
|
|
|
ASSERT_FALSE(img.empty());
|
|
|
|
|
|
|
|
cv::CascadeClassifier cascade;
|
|
|
|
|
|
|
|
ASSERT_TRUE(cascade.load(perf::TestBase::getDataPath("gpu/lbpcascade/lbpcascade_frontalface.xml")));
|
|
|
|
|
|
|
|
std::vector<cv::Rect> rects;
|
|
|
|
|
|
|
|
cascade.detectMultiScale(img, rects);
|
|
|
|
|
|
|
|
TEST_CYCLE()
|
|
|
|
{
|
|
|
|
cascade.detectMultiScale(img, rects);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
INSTANTIATE_TEST_CASE_P(ObjDetect, LBPClassifier, ALL_DEVICES);
|
|
|
|
|
2012-05-22 16:29:08 +08:00
|
|
|
#endif
|