mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.3 KiB
42 lines
1.3 KiB
#include "perf_precomp.hpp" |
|
|
|
using namespace std; |
|
using namespace cv; |
|
using namespace perf; |
|
using std::tr1::make_tuple; |
|
using std::tr1::get; |
|
|
|
enum { AGAST_5_8 = AgastFeatureDetector::AGAST_5_8, AGAST_7_12d = AgastFeatureDetector::AGAST_7_12d, |
|
AGAST_7_12s = AgastFeatureDetector::AGAST_7_12s, OAST_9_16 = AgastFeatureDetector::OAST_9_16 }; |
|
CV_ENUM(AgastType, AGAST_5_8, AGAST_7_12d, |
|
AGAST_7_12s, OAST_9_16) |
|
|
|
typedef std::tr1::tuple<string, AgastType> File_Type_t; |
|
typedef perf::TestBaseWithParam<File_Type_t> agast; |
|
|
|
#define AGAST_IMAGES \ |
|
"cv/detectors_descriptors_evaluation/images_datasets/leuven/img1.png",\ |
|
"stitching/a3.png" |
|
|
|
PERF_TEST_P(agast, detect, testing::Combine( |
|
testing::Values(AGAST_IMAGES), |
|
AgastType::all() |
|
)) |
|
{ |
|
string filename = getDataPath(get<0>(GetParam())); |
|
int type = get<1>(GetParam()); |
|
Mat frame = imread(filename, IMREAD_GRAYSCALE); |
|
|
|
if (frame.empty()) |
|
FAIL() << "Unable to load source image " << filename; |
|
|
|
declare.in(frame); |
|
|
|
Ptr<FeatureDetector> fd = AgastFeatureDetector::create(70, true, type); |
|
ASSERT_FALSE( fd.empty() ); |
|
vector<KeyPoint> points; |
|
|
|
TEST_CYCLE() fd->detect(frame, points); |
|
|
|
SANITY_CHECK_KEYPOINTS(points); |
|
}
|
|
|