Fix terrible perf test for FAST detector
This commit is contained in:
parent
b95923360d
commit
d4cf9e22cc
@ -6,15 +6,23 @@ using namespace perf;
|
|||||||
using std::tr1::make_tuple;
|
using std::tr1::make_tuple;
|
||||||
using std::tr1::get;
|
using std::tr1::get;
|
||||||
|
|
||||||
typedef perf::TestBaseWithParam<std::string> fast;
|
enum { TYPE_5_8 =FastFeatureDetector::TYPE_5_8, TYPE_7_12 = FastFeatureDetector::TYPE_7_12, TYPE_9_16 = FastFeatureDetector::TYPE_9_16 };
|
||||||
|
CV_ENUM(FastType, TYPE_5_8, TYPE_7_12, TYPE_9_16)
|
||||||
|
|
||||||
|
typedef std::tr1::tuple<String, FastType> File_Type_t;
|
||||||
|
typedef perf::TestBaseWithParam<File_Type_t> fast;
|
||||||
|
|
||||||
#define FAST_IMAGES \
|
#define FAST_IMAGES \
|
||||||
"cv/detectors_descriptors_evaluation/images_datasets/leuven/img1.png",\
|
"cv/detectors_descriptors_evaluation/images_datasets/leuven/img1.png",\
|
||||||
"stitching/a3.png"
|
"stitching/a3.png"
|
||||||
|
|
||||||
PERF_TEST_P(fast, detectForORB, testing::Values(FAST_IMAGES))
|
PERF_TEST_P(fast, detect, testing::Combine(
|
||||||
|
testing::Values(FAST_IMAGES),
|
||||||
|
testing::ValuesIn(FastType::all())
|
||||||
|
))
|
||||||
{
|
{
|
||||||
String filename = getDataPath(GetParam());
|
String filename = getDataPath(get<0>(GetParam()));
|
||||||
|
int type = get<1>(GetParam());
|
||||||
Mat frame = imread(filename, IMREAD_GRAYSCALE);
|
Mat frame = imread(filename, IMREAD_GRAYSCALE);
|
||||||
|
|
||||||
if (frame.empty())
|
if (frame.empty())
|
||||||
@ -22,13 +30,11 @@ PERF_TEST_P(fast, detectForORB, testing::Values(FAST_IMAGES))
|
|||||||
|
|
||||||
declare.in(frame);
|
declare.in(frame);
|
||||||
|
|
||||||
FastFeatureDetector fd(20, true, FastFeatureDetector::TYPE_5_8);
|
FastFeatureDetector fd(20, true, type);
|
||||||
vector<KeyPoint> points;
|
vector<KeyPoint> points;
|
||||||
|
|
||||||
TEST_CYCLE() fd.detect(frame, points);
|
TEST_CYCLE() fd.detect(frame, points);
|
||||||
fd = FastFeatureDetector(20, true, FastFeatureDetector::TYPE_7_12);
|
|
||||||
TEST_CYCLE() fd.detect(frame, points);
|
SANITY_CHECK(points);
|
||||||
fd = FastFeatureDetector(20, true, FastFeatureDetector::TYPE_9_16);
|
|
||||||
TEST_CYCLE() fd.detect(frame, points);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user