Skip to content

Commit 11ac26b

Browse files
committed
test code
1 parent 2241bfb commit 11ac26b

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

modules/cudaarithm/test/test_gpumat.cpp

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,65 @@ CUDA_TEST_P(GpuMat_ConvertTo, WithScaling)
320320
}
321321
}
322322

323+
CUDA_TEST_P(GpuMat_ConvertTo, InplaceWithOutScaling)
324+
{
325+
cv::Mat src = randomMat(size, depth1);
326+
327+
if ((depth1 == CV_64F || depth2 == CV_64F) && !supportFeature(devInfo, cv::cuda::NATIVE_DOUBLE))
328+
{
329+
try
330+
{
331+
cv::cuda::GpuMat d_srcDst = loadMat(src);
332+
d_srcDst.convertTo(d_srcDst, depth2);
333+
}
334+
catch (const cv::Exception& e)
335+
{
336+
ASSERT_EQ(cv::Error::StsUnsupportedFormat, e.code);
337+
}
338+
}
339+
else
340+
{
341+
cv::cuda::GpuMat d_srcDst = loadMat(src, useRoi);
342+
d_srcDst.convertTo(d_srcDst, depth2);
343+
344+
cv::Mat dst_gold;
345+
src.convertTo(dst_gold, depth2);
346+
347+
EXPECT_MAT_NEAR(dst_gold, d_srcDst, depth2 < CV_32F ? 1.0 : 1e-4);
348+
}
349+
}
350+
351+
352+
CUDA_TEST_P(GpuMat_ConvertTo, InplaceWithScaling)
353+
{
354+
cv::Mat src = randomMat(size, depth1);
355+
double a = randomDouble(0.0, 1.0);
356+
double b = randomDouble(-10.0, 10.0);
357+
358+
if ((depth1 == CV_64F || depth2 == CV_64F) && !supportFeature(devInfo, cv::cuda::NATIVE_DOUBLE))
359+
{
360+
try
361+
{
362+
cv::cuda::GpuMat d_srcDst = loadMat(src);
363+
d_srcDst.convertTo(d_srcDst, depth2, a, b);
364+
}
365+
catch (const cv::Exception& e)
366+
{
367+
ASSERT_EQ(cv::Error::StsUnsupportedFormat, e.code);
368+
}
369+
}
370+
else
371+
{
372+
cv::cuda::GpuMat d_srcDst = loadMat(src, useRoi);
373+
d_srcDst.convertTo(d_srcDst, depth2, a, b);
374+
375+
cv::Mat dst_gold;
376+
src.convertTo(dst_gold, depth2, a, b);
377+
378+
EXPECT_MAT_NEAR(dst_gold, d_srcDst, depth2 < CV_32F ? 1.0 : 1e-4);
379+
}
380+
}
381+
323382
INSTANTIATE_TEST_CASE_P(CUDA, GpuMat_ConvertTo, testing::Combine(
324383
ALL_DEVICES,
325384
DIFFERENT_SIZES,

0 commit comments

Comments
 (0)