mirror of
https://github.com/opencv/opencv.git
synced 2024-11-29 05:29:54 +08:00
d99f4a2beb
calling the functions cv::min and cv::max with cv::Scalar argument. Instead of them two performance tests were created which call the functions cv::min and cv::max with 'double' argument.
40 lines
1.0 KiB
C++
40 lines
1.0 KiB
C++
#include "perf_precomp.hpp"
|
|
|
|
using namespace std;
|
|
using namespace cv;
|
|
using namespace perf;
|
|
|
|
#define TYPICAL_MAT_SIZES_MINMAX TYPICAL_MAT_SIZES
|
|
#define TYPICAL_MAT_TYPES_MINMAX CV_8SC1, CV_8SC4, CV_32SC1, CV_32FC1
|
|
#define TYPICAL_MATS_MINMAX testing::Combine( testing::Values( TYPICAL_MAT_SIZES_MINMAX), testing::Values( TYPICAL_MAT_TYPES_MINMAX) )
|
|
|
|
PERF_TEST_P(Size_MatType, min_double, TYPICAL_MATS_MINMAX)
|
|
{
|
|
Size sz = std::tr1::get<0>(GetParam());
|
|
int type = std::tr1::get<1>(GetParam());
|
|
|
|
cv::Mat a = Mat(sz, type);
|
|
cv::Mat c = Mat(sz, type);
|
|
|
|
declare.in(a, ::perf::TestBase::WARMUP_RNG).out(c);
|
|
|
|
TEST_CYCLE(100) cv::min(a, 10, c);
|
|
|
|
SANITY_CHECK(c);
|
|
}
|
|
|
|
PERF_TEST_P(Size_MatType, max_double, TYPICAL_MATS_MINMAX)
|
|
{
|
|
Size sz = std::tr1::get<0>(GetParam());
|
|
int type = std::tr1::get<1>(GetParam());
|
|
|
|
cv::Mat a = Mat(sz, type);
|
|
cv::Mat c = Mat(sz, type);
|
|
|
|
declare.in(a, ::perf::TestBase::WARMUP_RNG).out(c);
|
|
|
|
TEST_CYCLE(100) cv::max(a, 10, c);
|
|
|
|
SANITY_CHECK(c);
|
|
}
|