Addition of test cases
This commit is contained in:
@@ -16,7 +16,7 @@ namespace ocl {
|
|||||||
PARAM_TEST_CASE(FastNlMeansDenoisingTestBase, Channels, bool, bool)
|
PARAM_TEST_CASE(FastNlMeansDenoisingTestBase, Channels, bool, bool)
|
||||||
{
|
{
|
||||||
int cn, templateWindowSize, searchWindowSize;
|
int cn, templateWindowSize, searchWindowSize;
|
||||||
float h;
|
float h[4];
|
||||||
bool use_roi, use_image;
|
bool use_roi, use_image;
|
||||||
|
|
||||||
TEST_DECLARE_INPUT_PARAMETER(src);
|
TEST_DECLARE_INPUT_PARAMETER(src);
|
||||||
@@ -30,7 +30,10 @@ PARAM_TEST_CASE(FastNlMeansDenoisingTestBase, Channels, bool, bool)
|
|||||||
|
|
||||||
templateWindowSize = 7;
|
templateWindowSize = 7;
|
||||||
searchWindowSize = 21;
|
searchWindowSize = 21;
|
||||||
h = 3.0f;
|
|
||||||
|
ASSERT_TRUE(cn > 0 && cn <= 4);
|
||||||
|
for (int i=0; i<cn; i++)
|
||||||
|
h[i] = 3.0f + 0.5f*i;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void generateTestData()
|
virtual void generateTestData()
|
||||||
@@ -48,7 +51,6 @@ PARAM_TEST_CASE(FastNlMeansDenoisingTestBase, Channels, bool, bool)
|
|||||||
Border srcBorder = randomBorder(0, use_roi ? MAX_VALUE : 0);
|
Border srcBorder = randomBorder(0, use_roi ? MAX_VALUE : 0);
|
||||||
randomSubMat(src, src_roi, roiSize, srcBorder, type, 0, 255);
|
randomSubMat(src, src_roi, roiSize, srcBorder, type, 0, 255);
|
||||||
if (use_image) {
|
if (use_image) {
|
||||||
ASSERT_TRUE(cn == 1 || cn == 2 || cn == 3 || cn == 4);
|
|
||||||
if (cn == 2) {
|
if (cn == 2) {
|
||||||
int from_to[] = { 0,0, 1,1 };
|
int from_to[] = { 0,0, 1,1 };
|
||||||
src_roi.create(roiSize, type);
|
src_roi.create(roiSize, type);
|
||||||
@@ -78,6 +80,21 @@ OCL_TEST_P(FastNlMeansDenoising, Mat)
|
|||||||
{
|
{
|
||||||
generateTestData();
|
generateTestData();
|
||||||
|
|
||||||
|
OCL_OFF(cv::fastNlMeansDenoising(src_roi, dst_roi, h[0], templateWindowSize, searchWindowSize));
|
||||||
|
OCL_ON(cv::fastNlMeansDenoising(usrc_roi, udst_roi, h[0], templateWindowSize, searchWindowSize));
|
||||||
|
|
||||||
|
OCL_EXPECT_MATS_NEAR(dst, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef FastNlMeansDenoisingTestBase FastNlMeansDenoising_hsep;
|
||||||
|
|
||||||
|
OCL_TEST_P(FastNlMeansDenoising_hsep, Mat)
|
||||||
|
{
|
||||||
|
for (int j = 0; j < test_loop_times; j++)
|
||||||
|
{
|
||||||
|
generateTestData();
|
||||||
|
|
||||||
OCL_OFF(cv::fastNlMeansDenoising(src_roi, dst_roi, h, templateWindowSize, searchWindowSize));
|
OCL_OFF(cv::fastNlMeansDenoising(src_roi, dst_roi, h, templateWindowSize, searchWindowSize));
|
||||||
OCL_ON(cv::fastNlMeansDenoising(usrc_roi, udst_roi, h, templateWindowSize, searchWindowSize));
|
OCL_ON(cv::fastNlMeansDenoising(usrc_roi, udst_roi, h, templateWindowSize, searchWindowSize));
|
||||||
|
|
||||||
@@ -93,6 +110,21 @@ OCL_TEST_P(FastNlMeansDenoisingAbs, Mat)
|
|||||||
{
|
{
|
||||||
generateTestData();
|
generateTestData();
|
||||||
|
|
||||||
|
OCL_OFF(cv::fastNlMeansDenoisingAbs(src_roi, dst_roi, h[0], templateWindowSize, searchWindowSize));
|
||||||
|
OCL_ON(cv::fastNlMeansDenoisingAbs(usrc_roi, udst_roi, h[0], templateWindowSize, searchWindowSize));
|
||||||
|
|
||||||
|
OCL_EXPECT_MATS_NEAR(dst, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef FastNlMeansDenoisingTestBase FastNlMeansDenoisingAbs_hsep;
|
||||||
|
|
||||||
|
OCL_TEST_P(FastNlMeansDenoisingAbs_hsep, Mat)
|
||||||
|
{
|
||||||
|
for (int j = 0; j < test_loop_times; j++)
|
||||||
|
{
|
||||||
|
generateTestData();
|
||||||
|
|
||||||
OCL_OFF(cv::fastNlMeansDenoisingAbs(src_roi, dst_roi, h, templateWindowSize, searchWindowSize));
|
OCL_OFF(cv::fastNlMeansDenoisingAbs(src_roi, dst_roi, h, templateWindowSize, searchWindowSize));
|
||||||
OCL_ON(cv::fastNlMeansDenoisingAbs(usrc_roi, udst_roi, h, templateWindowSize, searchWindowSize));
|
OCL_ON(cv::fastNlMeansDenoisingAbs(usrc_roi, udst_roi, h, templateWindowSize, searchWindowSize));
|
||||||
|
|
||||||
@@ -108,17 +140,21 @@ OCL_TEST_P(FastNlMeansDenoisingColored, Mat)
|
|||||||
{
|
{
|
||||||
generateTestData();
|
generateTestData();
|
||||||
|
|
||||||
OCL_OFF(cv::fastNlMeansDenoisingColored(src_roi, dst_roi, h, h, templateWindowSize, searchWindowSize));
|
OCL_OFF(cv::fastNlMeansDenoisingColored(src_roi, dst_roi, h[0], h[0], templateWindowSize, searchWindowSize));
|
||||||
OCL_ON(cv::fastNlMeansDenoisingColored(usrc_roi, udst_roi, h, h, templateWindowSize, searchWindowSize));
|
OCL_ON(cv::fastNlMeansDenoisingColored(usrc_roi, udst_roi, h[0], h[0], templateWindowSize, searchWindowSize));
|
||||||
|
|
||||||
OCL_EXPECT_MATS_NEAR(dst, 1);
|
OCL_EXPECT_MATS_NEAR(dst, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoising,
|
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoising,
|
||||||
Combine(Values(1, 2, 3, 4), Bool(), Bool()));
|
Combine(Values(1, 2, 3, 4), Bool(), Values(true)));
|
||||||
|
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoising_hsep,
|
||||||
|
Combine(Values(1, 2, 3, 4), Bool(), Values(true)));
|
||||||
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoisingAbs,
|
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoisingAbs,
|
||||||
Combine(Values(1, 2, 3, 4), Bool(), Bool()));
|
Combine(Values(1, 2, 3, 4), Bool(), Values(true)));
|
||||||
|
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoisingAbs_hsep,
|
||||||
|
Combine(Values(1, 2, 3, 4), Bool(), Values(true)));
|
||||||
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoisingColored,
|
OCL_INSTANTIATE_TEST_CASE_P(Photo, FastNlMeansDenoisingColored,
|
||||||
Combine(Values(3, 4), Bool(), Values(false)));
|
Combine(Values(3, 4), Bool(), Values(false)));
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user