Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
75ac4362
Commit
75ac4362
authored
Feb 06, 2012
by
Vladislav Vinogradov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
removed ASSERT_NO_THROW
parent
23af203e
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
767 additions
and
1254 deletions
+767
-1254
test_arithm.cpp
modules/gpu/test/test_arithm.cpp
+98
-180
test_calib3d.cpp
modules/gpu/test/test_calib3d.cpp
+24
-36
test_features2d.cpp
modules/gpu/test/test_features2d.cpp
+79
-103
test_filters.cpp
modules/gpu/test/test_filters.cpp
+48
-80
test_hog.cpp
modules/gpu/test/test_hog.cpp
+4
-8
test_imgproc.cpp
modules/gpu/test/test_imgproc.cpp
+415
-681
test_matop.cpp
modules/gpu/test/test_matop.cpp
+64
-88
test_nvidia.cpp
modules/gpu/test/test_nvidia.cpp
+11
-55
test_video.cpp
modules/gpu/test/test_video.cpp
+24
-23
No files found.
modules/gpu/test/test_arithm.cpp
View file @
75ac4362
...
@@ -88,13 +88,11 @@ TEST_P(Add, Array)
...
@@ -88,13 +88,11 @@ TEST_P(Add, Array)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
add
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
cv
::
gpu
::
add
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -106,13 +104,11 @@ TEST_P(Add, Scalar)
...
@@ -106,13 +104,11 @@ TEST_P(Add, Scalar)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
add
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
cv
::
gpu
::
add
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -134,13 +130,11 @@ TEST_P(Subtract, Array)
...
@@ -134,13 +130,11 @@ TEST_P(Subtract, Array)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
subtract
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
cv
::
gpu
::
subtract
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -152,13 +146,11 @@ TEST_P(Subtract, Scalar)
...
@@ -152,13 +146,11 @@ TEST_P(Subtract, Scalar)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
subtract
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
cv
::
gpu
::
subtract
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -180,13 +172,11 @@ TEST_P(Multiply, Array)
...
@@ -180,13 +172,11 @@ TEST_P(Multiply, Array)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
multiply
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
cv
::
gpu
::
multiply
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -198,13 +188,11 @@ TEST_P(Multiply, Scalar)
...
@@ -198,13 +188,11 @@ TEST_P(Multiply, Scalar)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
multiply
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
cv
::
gpu
::
multiply
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -226,13 +214,11 @@ TEST_P(Divide, Array)
...
@@ -226,13 +214,11 @@ TEST_P(Divide, Array)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
divide
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
cv
::
gpu
::
divide
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1.0
);
}
}
...
@@ -244,13 +230,11 @@ TEST_P(Divide, Scalar)
...
@@ -244,13 +230,11 @@ TEST_P(Divide, Scalar)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
divide
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
cv
::
gpu
::
divide
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -272,13 +256,11 @@ TEST_P(Transpose, Accuracy)
...
@@ -272,13 +256,11 @@ TEST_P(Transpose, Accuracy)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
transpose
(
loadMat
(
mat1
,
useRoi
),
gpuRes
);
cv
::
gpu
::
transpose
(
loadMat
(
mat1
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -300,13 +282,11 @@ TEST_P(Absdiff, Array)
...
@@ -300,13 +282,11 @@ TEST_P(Absdiff, Array)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
absdiff
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
cv
::
gpu
::
absdiff
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -318,13 +298,11 @@ TEST_P(Absdiff, Scalar)
...
@@ -318,13 +298,11 @@ TEST_P(Absdiff, Scalar)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
absdiff
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
cv
::
gpu
::
absdiff
(
loadMat
(
mat1
,
useRoi
),
val
,
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -373,13 +351,11 @@ TEST_P(Compare, Accuracy)
...
@@ -373,13 +351,11 @@ TEST_P(Compare, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
compare
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
,
cmp_code
);
cv
::
gpu
::
compare
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuRes
,
cmp_code
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -426,9 +402,7 @@ TEST_P(MeanStdDev, Accuracy)
...
@@ -426,9 +402,7 @@ TEST_P(MeanStdDev, Accuracy)
cv
::
Scalar
mean
;
cv
::
Scalar
mean
;
cv
::
Scalar
stddev
;
cv
::
Scalar
stddev
;
ASSERT_NO_THROW
(
cv
::
gpu
::
meanStdDev
(
loadMat
(
mat
,
useRoi
),
mean
,
stddev
);
cv
::
gpu
::
meanStdDev
(
loadMat
(
mat
,
useRoi
),
mean
,
stddev
);
);
EXPECT_NEAR
(
mean_gold
[
0
],
mean
[
0
],
1e-5
);
EXPECT_NEAR
(
mean_gold
[
0
],
mean
[
0
],
1e-5
);
EXPECT_NEAR
(
mean_gold
[
1
],
mean
[
1
],
1e-5
);
EXPECT_NEAR
(
mean_gold
[
1
],
mean
[
1
],
1e-5
);
...
@@ -480,11 +454,7 @@ PARAM_TEST_CASE(NormDiff, cv::gpu::DeviceInfo, NormCode, UseRoi)
...
@@ -480,11 +454,7 @@ PARAM_TEST_CASE(NormDiff, cv::gpu::DeviceInfo, NormCode, UseRoi)
TEST_P
(
NormDiff
,
Accuracy
)
TEST_P
(
NormDiff
,
Accuracy
)
{
{
double
norm
;
double
norm
=
cv
::
gpu
::
norm
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
normCode
);
ASSERT_NO_THROW
(
norm
=
cv
::
gpu
::
norm
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
normCode
);
);
EXPECT_NEAR
(
norm_gold
,
norm
,
1e-6
);
EXPECT_NEAR
(
norm_gold
,
norm
,
1e-6
);
}
}
...
@@ -532,13 +502,11 @@ TEST_P(Flip, Accuracy)
...
@@ -532,13 +502,11 @@ TEST_P(Flip, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
flip
(
loadMat
(
mat
,
useRoi
),
gpu_res
,
flip_code
);
cv
::
gpu
::
flip
(
loadMat
(
mat
,
useRoi
),
gpu_res
,
flip_code
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -587,13 +555,11 @@ TEST_P(LUT, Accuracy)
...
@@ -587,13 +555,11 @@ TEST_P(LUT, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
LUT
(
loadMat
(
mat
,
useRoi
),
lut
,
gpu_res
);
cv
::
gpu
::
LUT
(
loadMat
(
mat
,
useRoi
),
lut
,
gpu_res
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -637,13 +603,11 @@ TEST_P(Exp, Accuracy)
...
@@ -637,13 +603,11 @@ TEST_P(Exp, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
exp
(
loadMat
(
mat
,
useRoi
),
gpu_res
);
cv
::
gpu
::
exp
(
loadMat
(
mat
,
useRoi
),
gpu_res
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -697,13 +661,11 @@ TEST_P(Pow, Accuracy)
...
@@ -697,13 +661,11 @@ TEST_P(Pow, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
pow
(
loadMat
(
mat
,
useRoi
),
power
,
gpu_res
);
cv
::
gpu
::
pow
(
loadMat
(
mat
,
useRoi
),
power
,
gpu_res
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
2
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
2
);
}
}
...
@@ -747,13 +709,11 @@ TEST_P(Log, Accuracy)
...
@@ -747,13 +709,11 @@ TEST_P(Log, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
log
(
loadMat
(
mat
,
useRoi
),
gpu_res
);
cv
::
gpu
::
log
(
loadMat
(
mat
,
useRoi
),
gpu_res
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -796,14 +756,12 @@ PARAM_TEST_CASE(Magnitude, cv::gpu::DeviceInfo, UseRoi)
...
@@ -796,14 +756,12 @@ PARAM_TEST_CASE(Magnitude, cv::gpu::DeviceInfo, UseRoi)
TEST_P
(
Magnitude
,
Accuracy
)
TEST_P
(
Magnitude
,
Accuracy
)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
magnitude
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpu_res
);
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
magnitude
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpu_res
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-4
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-4
);
}
}
...
@@ -847,13 +805,11 @@ TEST_P(Phase, Accuracy)
...
@@ -847,13 +805,11 @@ TEST_P(Phase, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
GpuMat
gpu_res
;
cv
::
gpu
::
phase
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpu_res
);
cv
::
gpu
::
phase
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpu_res
);
gpu_res
.
download
(
dst
);
gpu_res
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-3
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-3
);
}
}
...
@@ -898,15 +854,13 @@ TEST_P(CartToPolar, Accuracy)
...
@@ -898,15 +854,13 @@ TEST_P(CartToPolar, Accuracy)
{
{
cv
::
Mat
mag
,
angle
;
cv
::
Mat
mag
,
angle
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuMag
;
cv
::
gpu
::
GpuMat
gpuMag
;
cv
::
gpu
::
GpuMat
gpuAngle
;
cv
::
gpu
::
GpuMat
gpuAngle
;
cv
::
gpu
::
cartToPolar
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuMag
,
gpuAngle
);
cv
::
gpu
::
cartToPolar
(
loadMat
(
mat1
,
useRoi
),
loadMat
(
mat2
,
useRoi
),
gpuMag
,
gpuAngle
);
gpuMag
.
download
(
mag
);
gpuMag
.
download
(
mag
);
gpuAngle
.
download
(
angle
);
gpuAngle
.
download
(
angle
);
);
EXPECT_MAT_NEAR
(
mag_gold
,
mag
,
1e-4
);
EXPECT_MAT_NEAR
(
mag_gold
,
mag
,
1e-4
);
EXPECT_MAT_NEAR
(
angle_gold
,
angle
,
1e-3
);
EXPECT_MAT_NEAR
(
angle_gold
,
angle
,
1e-3
);
...
@@ -952,16 +906,14 @@ PARAM_TEST_CASE(PolarToCart, cv::gpu::DeviceInfo, UseRoi)
...
@@ -952,16 +906,14 @@ PARAM_TEST_CASE(PolarToCart, cv::gpu::DeviceInfo, UseRoi)
TEST_P
(
PolarToCart
,
Accuracy
)
TEST_P
(
PolarToCart
,
Accuracy
)
{
{
cv
::
Mat
x
,
y
;
cv
::
Mat
x
,
y
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuX
;
cv
::
gpu
::
GpuMat
gpuY
;
cv
::
gpu
::
polarToCart
(
loadMat
(
mag
,
useRoi
),
loadMat
(
angle
,
useRoi
),
gpuX
,
gpuY
);
cv
::
gpu
::
GpuMat
gpuX
;
cv
::
gpu
::
GpuMat
gpuY
;
cv
::
gpu
::
polarToCart
(
loadMat
(
mag
,
useRoi
),
loadMat
(
angle
,
useRoi
),
gpuX
,
gpuY
);
gpuX
.
download
(
x
);
gpuX
.
download
(
x
);
gpuY
.
download
(
y
);
gpuY
.
download
(
y
);
);
EXPECT_MAT_NEAR
(
x_gold
,
x
,
1e-4
);
EXPECT_MAT_NEAR
(
x_gold
,
x
,
1e-4
);
EXPECT_MAT_NEAR
(
y_gold
,
y
,
1e-4
);
EXPECT_MAT_NEAR
(
y_gold
,
y
,
1e-4
);
...
@@ -1036,9 +988,7 @@ TEST_P(MinMax, Accuracy)
...
@@ -1036,9 +988,7 @@ TEST_P(MinMax, Accuracy)
double
minVal
,
maxVal
;
double
minVal
,
maxVal
;
ASSERT_NO_THROW
(
cv
::
gpu
::
minMax
(
loadMat
(
mat
,
useRoi
),
&
minVal
,
&
maxVal
,
loadMat
(
mask
,
useRoi
));
cv
::
gpu
::
minMax
(
loadMat
(
mat
,
useRoi
),
&
minVal
,
&
maxVal
,
loadMat
(
mask
,
useRoi
));
);
EXPECT_DOUBLE_EQ
(
minVal_gold
,
minVal
);
EXPECT_DOUBLE_EQ
(
minVal_gold
,
minVal
);
EXPECT_DOUBLE_EQ
(
maxVal_gold
,
maxVal
);
EXPECT_DOUBLE_EQ
(
maxVal_gold
,
maxVal
);
...
@@ -1117,9 +1067,7 @@ TEST_P(MinMaxLoc, Accuracy)
...
@@ -1117,9 +1067,7 @@ TEST_P(MinMaxLoc, Accuracy)
double
minVal
,
maxVal
;
double
minVal
,
maxVal
;
cv
::
Point
minLoc
,
maxLoc
;
cv
::
Point
minLoc
,
maxLoc
;
ASSERT_NO_THROW
(
cv
::
gpu
::
minMaxLoc
(
loadMat
(
mat
,
useRoi
),
&
minVal
,
&
maxVal
,
&
minLoc
,
&
maxLoc
,
loadMat
(
mask
,
useRoi
));
cv
::
gpu
::
minMaxLoc
(
loadMat
(
mat
,
useRoi
),
&
minVal
,
&
maxVal
,
&
minLoc
,
&
maxLoc
,
loadMat
(
mask
,
useRoi
));
);
EXPECT_DOUBLE_EQ
(
minVal_gold
,
minVal
);
EXPECT_DOUBLE_EQ
(
minVal_gold
,
minVal
);
EXPECT_DOUBLE_EQ
(
maxVal_gold
,
maxVal
);
EXPECT_DOUBLE_EQ
(
maxVal_gold
,
maxVal
);
...
@@ -1178,11 +1126,7 @@ TEST_P(CountNonZero, Accuracy)
...
@@ -1178,11 +1126,7 @@ TEST_P(CountNonZero, Accuracy)
if
(
type
==
CV_64F
&&
!
supportFeature
(
devInfo
,
cv
::
gpu
::
NATIVE_DOUBLE
))
if
(
type
==
CV_64F
&&
!
supportFeature
(
devInfo
,
cv
::
gpu
::
NATIVE_DOUBLE
))
return
;
return
;
int
n
;
int
n
=
cv
::
gpu
::
countNonZero
(
loadMat
(
mat
,
useRoi
));
ASSERT_NO_THROW
(
n
=
cv
::
gpu
::
countNonZero
(
loadMat
(
mat
,
useRoi
));
);
ASSERT_EQ
(
n_gold
,
n
);
ASSERT_EQ
(
n_gold
,
n
);
}
}
...
@@ -1227,11 +1171,7 @@ TEST_P(Sum, Simple)
...
@@ -1227,11 +1171,7 @@ TEST_P(Sum, Simple)
cv
::
Scalar
sum_gold
=
cv
::
sum
(
mat
);
cv
::
Scalar
sum_gold
=
cv
::
sum
(
mat
);
cv
::
Scalar
sum
;
cv
::
Scalar
sum
=
cv
::
gpu
::
sum
(
loadMat
(
mat
,
useRoi
));
ASSERT_NO_THROW
(
sum
=
cv
::
gpu
::
sum
(
loadMat
(
mat
,
useRoi
));
);
EXPECT_NEAR
(
sum
[
0
],
sum_gold
[
0
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
0
],
sum_gold
[
0
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
1
],
sum_gold
[
1
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
1
],
sum_gold
[
1
],
mat
.
size
().
area
()
*
1e-5
);
...
@@ -1246,11 +1186,7 @@ TEST_P(Sum, Abs)
...
@@ -1246,11 +1186,7 @@ TEST_P(Sum, Abs)
cv
::
Scalar
sum_gold
=
cv
::
norm
(
mat
,
cv
::
NORM_L1
);
cv
::
Scalar
sum_gold
=
cv
::
norm
(
mat
,
cv
::
NORM_L1
);
cv
::
Scalar
sum
;
cv
::
Scalar
sum
=
cv
::
gpu
::
absSum
(
loadMat
(
mat
,
useRoi
));
ASSERT_NO_THROW
(
sum
=
cv
::
gpu
::
absSum
(
loadMat
(
mat
,
useRoi
));
);
EXPECT_NEAR
(
sum
[
0
],
sum_gold
[
0
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
0
],
sum_gold
[
0
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
1
],
sum_gold
[
1
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
1
],
sum_gold
[
1
],
mat
.
size
().
area
()
*
1e-5
);
...
@@ -1267,11 +1203,7 @@ TEST_P(Sum, Sqr)
...
@@ -1267,11 +1203,7 @@ TEST_P(Sum, Sqr)
multiply
(
mat
,
mat
,
sqrmat
);
multiply
(
mat
,
mat
,
sqrmat
);
cv
::
Scalar
sum_gold
=
sum
(
sqrmat
);
cv
::
Scalar
sum_gold
=
sum
(
sqrmat
);
cv
::
Scalar
sum
;
cv
::
Scalar
sum
=
cv
::
gpu
::
sqrSum
(
loadMat
(
mat
,
useRoi
));
ASSERT_NO_THROW
(
sum
=
cv
::
gpu
::
sqrSum
(
loadMat
(
mat
,
useRoi
));
);
EXPECT_NEAR
(
sum
[
0
],
sum_gold
[
0
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
0
],
sum_gold
[
0
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
1
],
sum_gold
[
1
],
mat
.
size
().
area
()
*
1e-5
);
EXPECT_NEAR
(
sum
[
1
],
sum_gold
[
1
],
mat
.
size
().
area
()
*
1e-5
);
...
@@ -1330,13 +1262,11 @@ TEST_P(Bitwise, Not)
...
@@ -1330,13 +1262,11 @@ TEST_P(Bitwise, Not)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
bitwise_not
(
loadMat
(
mat1
),
dev_dst
);
cv
::
gpu
::
bitwise_not
(
loadMat
(
mat1
),
dev_dst
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1350,13 +1280,11 @@ TEST_P(Bitwise, Or)
...
@@ -1350,13 +1280,11 @@ TEST_P(Bitwise, Or)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
bitwise_or
(
loadMat
(
mat1
),
loadMat
(
mat2
),
dev_dst
);
cv
::
gpu
::
bitwise_or
(
loadMat
(
mat1
),
loadMat
(
mat2
),
dev_dst
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1370,13 +1298,11 @@ TEST_P(Bitwise, And)
...
@@ -1370,13 +1298,11 @@ TEST_P(Bitwise, And)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
bitwise_and
(
loadMat
(
mat1
),
loadMat
(
mat2
),
dev_dst
);
cv
::
gpu
::
bitwise_and
(
loadMat
(
mat1
),
loadMat
(
mat2
),
dev_dst
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1390,13 +1316,11 @@ TEST_P(Bitwise, Xor)
...
@@ -1390,13 +1316,11 @@ TEST_P(Bitwise, Xor)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
bitwise_xor
(
loadMat
(
mat1
),
loadMat
(
mat2
),
dev_dst
);
cv
::
gpu
::
bitwise_xor
(
loadMat
(
mat1
),
loadMat
(
mat2
),
dev_dst
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1457,13 +1381,11 @@ TEST_P(AddWeighted, Accuracy)
...
@@ -1457,13 +1381,11 @@ TEST_P(AddWeighted, Accuracy)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
addWeighted
(
loadMat
(
src1
,
useRoi
),
alpha
,
loadMat
(
src2
,
useRoi
),
beta
,
gamma
,
dev_dst
,
dtype
);
cv
::
gpu
::
addWeighted
(
loadMat
(
src1
,
useRoi
),
alpha
,
loadMat
(
src2
,
useRoi
),
beta
,
gamma
,
dev_dst
,
dtype
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
dtype
<
CV_32F
?
1.0
:
1e-12
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
dtype
<
CV_32F
?
1.0
:
1e-12
);
}
}
...
@@ -1522,13 +1444,11 @@ TEST_P(Reduce, Accuracy)
...
@@ -1522,13 +1444,11 @@ TEST_P(Reduce, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
reduce
(
loadMat
(
src
,
useRoi
),
dev_dst
,
dim
,
reduceOp
,
reduceOp
==
CV_REDUCE_SUM
||
reduceOp
==
CV_REDUCE_AVG
?
CV_32F
:
CV_MAT_DEPTH
(
type
));
cv
::
gpu
::
reduce
(
loadMat
(
src
,
useRoi
),
dev_dst
,
dim
,
reduceOp
,
reduceOp
==
CV_REDUCE_SUM
||
reduceOp
==
CV_REDUCE_AVG
?
CV_32F
:
CV_MAT_DEPTH
(
type
));
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
double
norm
=
reduceOp
==
CV_REDUCE_SUM
||
reduceOp
==
CV_REDUCE_AVG
?
1e-1
:
0.0
;
double
norm
=
reduceOp
==
CV_REDUCE_SUM
||
reduceOp
==
CV_REDUCE_AVG
?
1e-1
:
0.0
;
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
norm
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
norm
);
...
@@ -1587,13 +1507,11 @@ TEST_P(GEMM, Accuracy)
...
@@ -1587,13 +1507,11 @@ TEST_P(GEMM, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
gemm
(
loadMat
(
src1
,
useRoi
),
loadMat
(
src2
,
useRoi
),
alpha
,
loadMat
(
src3
,
useRoi
),
beta
,
dev_dst
,
flags
);
cv
::
gpu
::
gemm
(
loadMat
(
src1
,
useRoi
),
loadMat
(
src2
,
useRoi
),
alpha
,
loadMat
(
src3
,
useRoi
),
beta
,
dev_dst
,
flags
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-1
);
}
}
...
...
modules/gpu/test/test_calib3d.cpp
View file @
75ac4362
...
@@ -77,14 +77,12 @@ TEST_P(StereoBlockMatching, Regression)
...
@@ -77,14 +77,12 @@ TEST_P(StereoBlockMatching, Regression)
{
{
cv
::
Mat
disp
;
cv
::
Mat
disp
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_disp
;
cv
::
gpu
::
GpuMat
dev_disp
;
cv
::
gpu
::
StereoBM_GPU
bm
(
0
,
128
,
19
);
cv
::
gpu
::
StereoBM_GPU
bm
(
0
,
128
,
19
);
bm
(
cv
::
gpu
::
GpuMat
(
img_l
),
cv
::
gpu
::
GpuMat
(
img_r
),
dev_disp
);
bm
(
cv
::
gpu
::
GpuMat
(
img_l
),
cv
::
gpu
::
GpuMat
(
img_r
),
dev_disp
);
dev_disp
.
download
(
disp
);
dev_disp
.
download
(
disp
);
);
disp
.
convertTo
(
disp
,
img_template
.
type
());
disp
.
convertTo
(
disp
,
img_template
.
type
());
...
@@ -124,14 +122,12 @@ TEST_P(StereoBeliefPropagation, Regression)
...
@@ -124,14 +122,12 @@ TEST_P(StereoBeliefPropagation, Regression)
{
{
cv
::
Mat
disp
;
cv
::
Mat
disp
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_disp
;
cv
::
gpu
::
GpuMat
dev_disp
;
cv
::
gpu
::
StereoBeliefPropagation
bpm
(
64
,
8
,
2
,
25
,
0.1
f
,
15
,
1
,
CV_16S
);
cv
::
gpu
::
StereoBeliefPropagation
bpm
(
64
,
8
,
2
,
25
,
0.1
f
,
15
,
1
,
CV_16S
);
bpm
(
cv
::
gpu
::
GpuMat
(
img_l
),
cv
::
gpu
::
GpuMat
(
img_r
),
dev_disp
);
bpm
(
cv
::
gpu
::
GpuMat
(
img_l
),
cv
::
gpu
::
GpuMat
(
img_r
),
dev_disp
);
dev_disp
.
download
(
disp
);
dev_disp
.
download
(
disp
);
);
disp
.
convertTo
(
disp
,
img_template
.
type
());
disp
.
convertTo
(
disp
,
img_template
.
type
());
...
@@ -175,14 +171,12 @@ TEST_P(StereoConstantSpaceBP, Regression)
...
@@ -175,14 +171,12 @@ TEST_P(StereoConstantSpaceBP, Regression)
{
{
cv
::
Mat
disp
;
cv
::
Mat
disp
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_disp
;
cv
::
gpu
::
GpuMat
dev_disp
;
cv
::
gpu
::
StereoConstantSpaceBP
bpm
(
128
,
16
,
4
,
4
);
cv
::
gpu
::
StereoConstantSpaceBP
bpm
(
128
,
16
,
4
,
4
);
bpm
(
cv
::
gpu
::
GpuMat
(
img_l
),
cv
::
gpu
::
GpuMat
(
img_r
),
dev_disp
);
bpm
(
cv
::
gpu
::
GpuMat
(
img_l
),
cv
::
gpu
::
GpuMat
(
img_r
),
dev_disp
);
dev_disp
.
download
(
disp
);
dev_disp
.
download
(
disp
);
);
disp
.
convertTo
(
disp
,
img_template
.
type
());
disp
.
convertTo
(
disp
,
img_template
.
type
());
...
@@ -229,14 +223,12 @@ struct ProjectPoints : TestWithParam<cv::gpu::DeviceInfo>
...
@@ -229,14 +223,12 @@ struct ProjectPoints : TestWithParam<cv::gpu::DeviceInfo>
TEST_P
(
ProjectPoints
,
Accuracy
)
TEST_P
(
ProjectPoints
,
Accuracy
)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
cv
::
gpu
::
GpuMat
d_dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
projectPoints
(
cv
::
gpu
::
GpuMat
(
src
),
rvec
,
tvec
,
camera_mat
,
cv
::
Mat
(),
d_dst
);
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
projectPoints
(
cv
::
gpu
::
GpuMat
(
src
),
rvec
,
tvec
,
camera_mat
,
cv
::
Mat
(),
d_dst
);
d_dst
.
download
(
dst
);
d_dst
.
download
(
dst
);
);
ASSERT_EQ
(
dst_gold
.
size
(),
dst
.
cols
);
ASSERT_EQ
(
dst_gold
.
size
(),
dst
.
cols
);
ASSERT_EQ
(
1
,
dst
.
rows
);
ASSERT_EQ
(
1
,
dst
.
rows
);
...
@@ -286,13 +278,11 @@ TEST_P(TransformPoints, Accuracy)
...
@@ -286,13 +278,11 @@ TEST_P(TransformPoints, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
transformPoints
(
cv
::
gpu
::
GpuMat
(
src
),
rvec
,
tvec
,
d_dst
);
cv
::
gpu
::
transformPoints
(
cv
::
gpu
::
GpuMat
(
src
),
rvec
,
tvec
,
d_dst
);
d_dst
.
download
(
dst
);
d_dst
.
download
(
dst
);
);
ASSERT_EQ
(
src
.
size
(),
dst
.
size
());
ASSERT_EQ
(
src
.
size
(),
dst
.
size
());
ASSERT_EQ
(
src
.
type
(),
dst
.
type
());
ASSERT_EQ
(
src
.
type
(),
dst
.
type
());
...
@@ -356,10 +346,8 @@ TEST_P(SolvePnPRansac, Accuracy)
...
@@ -356,10 +346,8 @@ TEST_P(SolvePnPRansac, Accuracy)
cv
::
Mat
rvec
,
tvec
;
cv
::
Mat
rvec
,
tvec
;
std
::
vector
<
int
>
inliers
;
std
::
vector
<
int
>
inliers
;
ASSERT_NO_THROW
(
cv
::
gpu
::
solvePnPRansac
(
object
,
cv
::
Mat
(
1
,
image_vec
.
size
(),
CV_32FC2
,
&
image_vec
[
0
]),
camera_mat
,
cv
::
gpu
::
solvePnPRansac
(
object
,
cv
::
Mat
(
1
,
image_vec
.
size
(),
CV_32FC2
,
&
image_vec
[
0
]),
camera_mat
,
cv
::
Mat
(
1
,
8
,
CV_32F
,
cv
::
Scalar
::
all
(
0
)),
rvec
,
tvec
,
false
,
200
,
2.
f
,
100
,
&
inliers
);
cv
::
Mat
(
1
,
8
,
CV_32F
,
cv
::
Scalar
::
all
(
0
)),
rvec
,
tvec
,
false
,
200
,
2.
f
,
100
,
&
inliers
);
);
ASSERT_LE
(
cv
::
norm
(
rvec
-
rvec_gold
),
1e-3
f
);
ASSERT_LE
(
cv
::
norm
(
rvec
-
rvec_gold
),
1e-3
f
);
ASSERT_LE
(
cv
::
norm
(
tvec
-
tvec_gold
),
1e-3
f
);
ASSERT_LE
(
cv
::
norm
(
tvec
-
tvec_gold
),
1e-3
f
);
...
...
modules/gpu/test/test_features2d.cpp
View file @
75ac4362
...
@@ -117,9 +117,7 @@ TEST_P(SURF, EmptyDataTest)
...
@@ -117,9 +117,7 @@ TEST_P(SURF, EmptyDataTest)
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
std
::
vector
<
float
>
descriptors
;
std
::
vector
<
float
>
descriptors
;
ASSERT_NO_THROW
(
fdetector
(
image
,
cv
::
gpu
::
GpuMat
(),
keypoints
,
descriptors
);
fdetector
(
image
,
cv
::
gpu
::
GpuMat
(),
keypoints
,
descriptors
);
);
EXPECT_TRUE
(
keypoints
.
empty
());
EXPECT_TRUE
(
keypoints
.
empty
());
EXPECT_TRUE
(
descriptors
.
empty
());
EXPECT_TRUE
(
descriptors
.
empty
());
...
@@ -130,14 +128,12 @@ TEST_P(SURF, Accuracy)
...
@@ -130,14 +128,12 @@ TEST_P(SURF, Accuracy)
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
cv
::
Mat
descriptors
;
cv
::
Mat
descriptors
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_descriptors
;
cv
::
gpu
::
GpuMat
dev_descriptors
;
cv
::
gpu
::
SURF_GPU
fdetector
;
fdetector
.
extended
=
false
;
cv
::
gpu
::
SURF_GPU
fdetector
;
fdetector
.
extended
=
false
;
fdetector
(
loadMat
(
image
),
loadMat
(
mask
),
keypoints
,
dev_descriptors
);
fdetector
(
loadMat
(
image
),
loadMat
(
mask
),
keypoints
,
dev_descriptors
);
dev_descriptors
.
download
(
descriptors
);
dev_descriptors
.
download
(
descriptors
);
);
cv
::
BruteForceMatcher
<
cv
::
L2
<
float
>
>
matcher
;
cv
::
BruteForceMatcher
<
cv
::
L2
<
float
>
>
matcher
;
std
::
vector
<
cv
::
DMatch
>
matches
;
std
::
vector
<
cv
::
DMatch
>
matches
;
...
@@ -218,11 +214,9 @@ TEST_P(BruteForceMatcher, Match)
...
@@ -218,11 +214,9 @@ TEST_P(BruteForceMatcher, Match)
{
{
std
::
vector
<
cv
::
DMatch
>
matches
;
std
::
vector
<
cv
::
DMatch
>
matches
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
matcher
.
match
(
loadMat
(
query
),
loadMat
(
train
),
matches
);
matcher
.
match
(
loadMat
(
query
),
loadMat
(
train
),
matches
);
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -244,28 +238,26 @@ TEST_P(BruteForceMatcher, MatchAdd)
...
@@ -244,28 +238,26 @@ TEST_P(BruteForceMatcher, MatchAdd)
bool
isMaskSupported
;
bool
isMaskSupported
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
// make add() twice to test such case
// make add() twice to test such case
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
// prepare masks (make first nearest match illegal)
// prepare masks (make first nearest match illegal)
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
{
{
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
}
}
matcher
.
match
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
masks
);
matcher
.
match
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
masks
);
isMaskSupported
=
matcher
.
isMaskSupported
();
isMaskSupported
=
matcher
.
isMaskSupported
();
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -297,10 +289,8 @@ TEST_P(BruteForceMatcher, KnnMatch2)
...
@@ -297,10 +289,8 @@ TEST_P(BruteForceMatcher, KnnMatch2)
std
::
vector
<
std
::
vector
<
cv
::
DMatch
>
>
matches
;
std
::
vector
<
std
::
vector
<
cv
::
DMatch
>
>
matches
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
matcher
.
knnMatch
(
loadMat
(
query
),
loadMat
(
train
),
matches
,
knn
);
matcher
.
knnMatch
(
loadMat
(
query
),
loadMat
(
train
),
matches
,
knn
);
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -331,10 +321,8 @@ TEST_P(BruteForceMatcher, KnnMatch3)
...
@@ -331,10 +321,8 @@ TEST_P(BruteForceMatcher, KnnMatch3)
std
::
vector
<
std
::
vector
<
cv
::
DMatch
>
>
matches
;
std
::
vector
<
std
::
vector
<
cv
::
DMatch
>
>
matches
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
matcher
.
knnMatch
(
loadMat
(
query
),
loadMat
(
train
),
matches
,
knn
);
matcher
.
knnMatch
(
loadMat
(
query
),
loadMat
(
train
),
matches
,
knn
);
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -366,28 +354,26 @@ TEST_P(BruteForceMatcher, KnnMatchAdd2)
...
@@ -366,28 +354,26 @@ TEST_P(BruteForceMatcher, KnnMatchAdd2)
bool
isMaskSupported
;
bool
isMaskSupported
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
// make add() twice to test such case
// make add() twice to test such case
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
// prepare masks (make first nearest match illegal)
// prepare masks (make first nearest match illegal)
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
{
{
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
}
}
matcher
.
knnMatch
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
knn
,
masks
);
matcher
.
knnMatch
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
knn
,
masks
);
isMaskSupported
=
matcher
.
isMaskSupported
();
isMaskSupported
=
matcher
.
isMaskSupported
();
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -430,28 +416,26 @@ TEST_P(BruteForceMatcher, KnnMatchAdd3)
...
@@ -430,28 +416,26 @@ TEST_P(BruteForceMatcher, KnnMatchAdd3)
bool
isMaskSupported
;
bool
isMaskSupported
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
// make add() twice to test such case
// make add() twice to test such case
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
// prepare masks (make first nearest match illegal)
// prepare masks (make first nearest match illegal)
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
{
{
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
}
}
matcher
.
knnMatch
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
knn
,
masks
);
matcher
.
knnMatch
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
knn
,
masks
);
isMaskSupported
=
matcher
.
isMaskSupported
();
isMaskSupported
=
matcher
.
isMaskSupported
();
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -497,11 +481,9 @@ TEST_P(BruteForceMatcher, RadiusMatch)
...
@@ -497,11 +481,9 @@ TEST_P(BruteForceMatcher, RadiusMatch)
std
::
vector
<
std
::
vector
<
cv
::
DMatch
>
>
matches
;
std
::
vector
<
std
::
vector
<
cv
::
DMatch
>
>
matches
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
matcher
.
radiusMatch
(
loadMat
(
query
),
loadMat
(
train
),
matches
,
radius
);
matcher
.
radiusMatch
(
loadMat
(
query
),
loadMat
(
train
),
matches
,
radius
);
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -533,28 +515,26 @@ TEST_P(BruteForceMatcher, RadiusMatchAdd)
...
@@ -533,28 +515,26 @@ TEST_P(BruteForceMatcher, RadiusMatchAdd)
bool
isMaskSupported
;
bool
isMaskSupported
;
ASSERT_NO_THROW
(
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
BruteForceMatcher_GPU_base
matcher
(
distType
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
cv
::
gpu
::
GpuMat
d_train
(
train
);
// make add() twice to test such case
// make add() twice to test such case
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
0
,
train
.
rows
/
2
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
matcher
.
add
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
(
1
,
d_train
.
rowRange
(
train
.
rows
/
2
,
train
.
rows
)));
// prepare masks (make first nearest match illegal)
// prepare masks (make first nearest match illegal)
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
std
::
vector
<
cv
::
gpu
::
GpuMat
>
masks
(
2
);
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
for
(
int
mi
=
0
;
mi
<
2
;
mi
++
)
{
{
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
masks
[
mi
]
=
cv
::
gpu
::
GpuMat
(
query
.
rows
,
train
.
rows
/
2
,
CV_8UC1
,
cv
::
Scalar
::
all
(
1
));
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
for
(
int
di
=
0
;
di
<
queryDescCount
/
2
;
di
++
)
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
masks
[
mi
].
col
(
di
*
countFactor
).
setTo
(
cv
::
Scalar
::
all
(
0
));
}
}
matcher
.
radiusMatch
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
radius
,
masks
);
matcher
.
radiusMatch
(
cv
::
gpu
::
GpuMat
(
query
),
matches
,
radius
,
masks
);
isMaskSupported
=
matcher
.
isMaskSupported
();
isMaskSupported
=
matcher
.
isMaskSupported
();
);
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
ASSERT_EQ
(
queryDescCount
,
matches
.
size
());
...
@@ -647,11 +627,9 @@ TEST_P(FAST, Accuracy)
...
@@ -647,11 +627,9 @@ TEST_P(FAST, Accuracy)
{
{
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
ASSERT_NO_THROW
(
cv
::
gpu
::
FAST_GPU
fastGPU
(
threshold
);
cv
::
gpu
::
FAST_GPU
fastGPU
(
threshold
);
fastGPU
(
cv
::
gpu
::
GpuMat
(
image
),
cv
::
gpu
::
GpuMat
(),
keypoints
);
fastGPU
(
cv
::
gpu
::
GpuMat
(
image
),
cv
::
gpu
::
GpuMat
(),
keypoints
);
);
ASSERT_EQ
(
keypoints
.
size
(),
keypoints_gold
.
size
());
ASSERT_EQ
(
keypoints
.
size
(),
keypoints_gold
.
size
());
...
@@ -711,14 +689,12 @@ TEST_P(ORB, Accuracy)
...
@@ -711,14 +689,12 @@ TEST_P(ORB, Accuracy)
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
std
::
vector
<
cv
::
KeyPoint
>
keypoints
;
cv
::
Mat
descriptors
;
cv
::
Mat
descriptors
;
ASSERT_NO_THROW
(
cv
::
gpu
::
ORB_GPU
orbGPU
(
npoints
);
cv
::
gpu
::
ORB_GPU
orbGPU
(
npoints
);
cv
::
gpu
::
GpuMat
d_descriptors
;
cv
::
gpu
::
GpuMat
d_descriptors
;
orbGPU
(
cv
::
gpu
::
GpuMat
(
image
),
cv
::
gpu
::
GpuMat
(
mask
),
keypoints
,
d_descriptors
);
orbGPU
(
cv
::
gpu
::
GpuMat
(
image
),
cv
::
gpu
::
GpuMat
(
mask
),
keypoints
,
d_descriptors
);
d_descriptors
.
download
(
descriptors
);
d_descriptors
.
download
(
descriptors
);
);
cv
::
BruteForceMatcher
<
cv
::
Hamming
>
matcher
;
cv
::
BruteForceMatcher
<
cv
::
Hamming
>
matcher
;
std
::
vector
<
cv
::
DMatch
>
matches
;
std
::
vector
<
cv
::
DMatch
>
matches
;
...
...
modules/gpu/test/test_filters.cpp
View file @
75ac4362
...
@@ -107,13 +107,11 @@ TEST_P(Blur, Rgba)
...
@@ -107,13 +107,11 @@ TEST_P(Blur, Rgba)
{
{
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
blur
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
ksize
);
cv
::
gpu
::
blur
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
ksize
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
ksize
,
1.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
ksize
,
1.0
);
}
}
...
@@ -122,13 +120,11 @@ TEST_P(Blur, Gray)
...
@@ -122,13 +120,11 @@ TEST_P(Blur, Gray)
{
{
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
blur
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
ksize
);
cv
::
gpu
::
blur
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
ksize
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
ksize
,
1.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
ksize
,
1.0
);
}
}
...
@@ -186,13 +182,11 @@ TEST_P(Sobel, Rgba)
...
@@ -186,13 +182,11 @@ TEST_P(Sobel, Rgba)
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
Sobel
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
-
1
,
dx
,
dy
,
ksize
);
cv
::
gpu
::
Sobel
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
-
1
,
dx
,
dy
,
ksize
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
ksize
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
ksize
,
0.0
);
}
}
...
@@ -204,13 +198,11 @@ TEST_P(Sobel, Gray)
...
@@ -204,13 +198,11 @@ TEST_P(Sobel, Gray)
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
Sobel
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
-
1
,
dx
,
dy
,
ksize
);
cv
::
gpu
::
Sobel
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
-
1
,
dx
,
dy
,
ksize
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
ksize
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
ksize
,
0.0
);
}
}
...
@@ -268,13 +260,11 @@ TEST_P(Scharr, Rgba)
...
@@ -268,13 +260,11 @@ TEST_P(Scharr, Rgba)
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
Scharr
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
-
1
,
dx
,
dy
);
cv
::
gpu
::
Scharr
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
-
1
,
dx
,
dy
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
}
}
...
@@ -286,13 +276,11 @@ TEST_P(Scharr, Gray)
...
@@ -286,13 +276,11 @@ TEST_P(Scharr, Gray)
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
Scharr
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
-
1
,
dx
,
dy
);
cv
::
gpu
::
Scharr
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
-
1
,
dx
,
dy
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
}
}
...
@@ -348,13 +336,11 @@ TEST_P(GaussianBlur, Rgba)
...
@@ -348,13 +336,11 @@ TEST_P(GaussianBlur, Rgba)
{
{
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GaussianBlur
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
ksize
,
sigma1
,
sigma2
);
cv
::
gpu
::
GaussianBlur
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
ksize
,
sigma1
,
sigma2
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
ksize
,
3.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
ksize
,
3.0
);
}
}
...
@@ -363,13 +349,11 @@ TEST_P(GaussianBlur, Gray)
...
@@ -363,13 +349,11 @@ TEST_P(GaussianBlur, Gray)
{
{
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GaussianBlur
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
ksize
,
sigma1
,
sigma2
);
cv
::
gpu
::
GaussianBlur
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
ksize
,
sigma1
,
sigma2
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
ksize
,
3.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
ksize
,
3.0
);
}
}
...
@@ -417,13 +401,11 @@ TEST_P(Laplacian, Rgba)
...
@@ -417,13 +401,11 @@ TEST_P(Laplacian, Rgba)
{
{
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
Laplacian
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
-
1
,
ksize
);
cv
::
gpu
::
Laplacian
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
-
1
,
ksize
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
}
}
...
@@ -432,13 +414,11 @@ TEST_P(Laplacian, Gray)
...
@@ -432,13 +414,11 @@ TEST_P(Laplacian, Gray)
{
{
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
Laplacian
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
-
1
,
ksize
);
cv
::
gpu
::
Laplacian
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
-
1
,
ksize
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
}
}
...
@@ -488,13 +468,11 @@ TEST_P(Erode, Rgba)
...
@@ -488,13 +468,11 @@ TEST_P(Erode, Rgba)
{
{
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
erode
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
kernel
);
cv
::
gpu
::
erode
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
kernel
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
}
}
...
@@ -503,13 +481,11 @@ TEST_P(Erode, Gray)
...
@@ -503,13 +481,11 @@ TEST_P(Erode, Gray)
{
{
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
erode
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
kernel
);
cv
::
gpu
::
erode
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
kernel
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
}
}
...
@@ -558,13 +534,11 @@ TEST_P(Dilate, Rgba)
...
@@ -558,13 +534,11 @@ TEST_P(Dilate, Rgba)
{
{
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
dilate
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
kernel
);
cv
::
gpu
::
dilate
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
kernel
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
3
,
0.0
);
}
}
...
@@ -573,13 +547,11 @@ TEST_P(Dilate, Gray)
...
@@ -573,13 +547,11 @@ TEST_P(Dilate, Gray)
{
{
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
dilate
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
kernel
);
cv
::
gpu
::
dilate
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
kernel
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
3
,
0.0
);
}
}
...
@@ -630,13 +602,11 @@ TEST_P(MorphEx, Rgba)
...
@@ -630,13 +602,11 @@ TEST_P(MorphEx, Rgba)
{
{
cv
::
Mat
dst_rgba
;
cv
::
Mat
dst_rgba
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
GpuMat
dev_dst_rgba
;
cv
::
gpu
::
morphologyEx
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
morphOp
,
kernel
);
cv
::
gpu
::
morphologyEx
(
loadMat
(
img_rgba
,
useRoi
),
dev_dst_rgba
,
morphOp
,
kernel
);
dev_dst_rgba
.
download
(
dst_rgba
);
dev_dst_rgba
.
download
(
dst_rgba
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
4
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_rgba
,
dst_rgba
,
4
,
0.0
);
}
}
...
@@ -645,13 +615,11 @@ TEST_P(MorphEx, Gray)
...
@@ -645,13 +615,11 @@ TEST_P(MorphEx, Gray)
{
{
cv
::
Mat
dst_gray
;
cv
::
Mat
dst_gray
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
GpuMat
dev_dst_gray
;
cv
::
gpu
::
morphologyEx
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
morphOp
,
kernel
);
cv
::
gpu
::
morphologyEx
(
loadMat
(
img_gray
,
useRoi
),
dev_dst_gray
,
morphOp
,
kernel
);
dev_dst_gray
.
download
(
dst_gray
);
dev_dst_gray
.
download
(
dst_gray
);
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
4
,
0.0
);
EXPECT_MAT_NEAR_KSIZE
(
dst_gold_gray
,
dst_gray
,
4
,
0.0
);
}
}
...
...
modules/gpu/test/test_hog.cpp
View file @
75ac4362
...
@@ -186,10 +186,8 @@ struct Detect : TestWithParam<cv::gpu::DeviceInfo>
...
@@ -186,10 +186,8 @@ struct Detect : TestWithParam<cv::gpu::DeviceInfo>
TEST_P
(
Detect
,
Accuracy
)
TEST_P
(
Detect
,
Accuracy
)
{
{
ASSERT_NO_THROW
(
CV_GpuHogDetectTestRunner
runner
;
CV_GpuHogDetectTestRunner
runner
;
runner
.
run
();
runner
.
run
();
);
}
}
INSTANTIATE_TEST_CASE_P
(
HOG
,
Detect
,
ALL_DEVICES
);
INSTANTIATE_TEST_CASE_P
(
HOG
,
Detect
,
ALL_DEVICES
);
...
@@ -316,10 +314,8 @@ struct GetDescriptors : TestWithParam<cv::gpu::DeviceInfo>
...
@@ -316,10 +314,8 @@ struct GetDescriptors : TestWithParam<cv::gpu::DeviceInfo>
TEST_P
(
GetDescriptors
,
Accuracy
)
TEST_P
(
GetDescriptors
,
Accuracy
)
{
{
ASSERT_NO_THROW
(
CV_GpuHogGetDescriptorsTestRunner
runner
;
CV_GpuHogGetDescriptorsTestRunner
runner
;
runner
.
run
();
runner
.
run
();
);
}
}
INSTANTIATE_TEST_CASE_P
(
HOG
,
GetDescriptors
,
ALL_DEVICES
);
INSTANTIATE_TEST_CASE_P
(
HOG
,
GetDescriptors
,
ALL_DEVICES
);
...
...
modules/gpu/test/test_imgproc.cpp
View file @
75ac4362
...
@@ -89,13 +89,11 @@ TEST_P(Threshold, Accuracy)
...
@@ -89,13 +89,11 @@ TEST_P(Threshold, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
threshold
(
loadMat
(
src
,
useRoi
),
gpuRes
,
thresh
,
maxVal
,
threshOp
);
cv
::
gpu
::
threshold
(
loadMat
(
src
,
useRoi
),
gpuRes
,
thresh
,
maxVal
,
threshOp
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -146,13 +144,11 @@ TEST_P(Resize, Up)
...
@@ -146,13 +144,11 @@ TEST_P(Resize, Up)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
resize
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
Size
(),
2.0
,
2.0
,
interpolation
);
cv
::
gpu
::
resize
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
Size
(),
2.0
,
2.0
,
interpolation
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_SIMILAR
(
dst_gold_up
,
dst
,
0.21
);
EXPECT_MAT_SIMILAR
(
dst_gold_up
,
dst
,
0.21
);
}
}
...
@@ -161,13 +157,11 @@ TEST_P(Resize, Down)
...
@@ -161,13 +157,11 @@ TEST_P(Resize, Down)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
resize
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
Size
(),
0.5
,
0.5
,
interpolation
);
cv
::
gpu
::
resize
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
Size
(),
0.5
,
0.5
,
interpolation
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_SIMILAR
(
dst_gold_down
,
dst
,
0.22
);
EXPECT_MAT_SIMILAR
(
dst_gold_down
,
dst
,
0.22
);
}
}
...
@@ -223,13 +217,11 @@ TEST_P(Remap, Accuracy)
...
@@ -223,13 +217,11 @@ TEST_P(Remap, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
remap
(
loadMat
(
src
,
useRoi
),
gpuRes
,
loadMat
(
xmap
,
useRoi
),
loadMat
(
ymap
,
useRoi
),
interpolation
,
borderType
);
cv
::
gpu
::
remap
(
loadMat
(
src
,
useRoi
),
gpuRes
,
loadMat
(
xmap
,
useRoi
),
loadMat
(
ymap
,
useRoi
),
interpolation
,
borderType
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_SIMILAR
(
dst_gold
,
dst
,
1e-1
);
EXPECT_MAT_SIMILAR
(
dst_gold
,
dst
,
1e-1
);
}
}
...
@@ -290,13 +282,11 @@ TEST_P(CopyMakeBorder, Accuracy)
...
@@ -290,13 +282,11 @@ TEST_P(CopyMakeBorder, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
copyMakeBorder
(
loadMat
(
src
,
useRoi
),
gpuRes
,
top
,
botton
,
left
,
right
,
borderType
,
val
);
cv
::
gpu
::
copyMakeBorder
(
loadMat
(
src
,
useRoi
),
gpuRes
,
top
,
botton
,
left
,
right
,
borderType
,
val
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -350,13 +340,11 @@ TEST_P(WarpAffine, Accuracy)
...
@@ -350,13 +340,11 @@ TEST_P(WarpAffine, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
warpAffine
(
loadMat
(
src
),
gpuRes
,
M
,
src
.
size
(),
flags
);
cv
::
gpu
::
warpAffine
(
loadMat
(
src
),
gpuRes
,
M
,
src
.
size
(),
flags
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
// Check inner parts (ignoring 1 pixel width border)
// Check inner parts (ignoring 1 pixel width border)
cv
::
Mat
dst_gold_roi
=
dst_gold
.
rowRange
(
1
,
dst_gold
.
rows
-
1
).
colRange
(
1
,
dst_gold
.
cols
-
1
);
cv
::
Mat
dst_gold_roi
=
dst_gold
.
rowRange
(
1
,
dst_gold
.
rows
-
1
).
colRange
(
1
,
dst_gold
.
cols
-
1
);
...
@@ -413,13 +401,11 @@ TEST_P(WarpPerspective, Accuracy)
...
@@ -413,13 +401,11 @@ TEST_P(WarpPerspective, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
warpPerspective
(
loadMat
(
src
),
gpuRes
,
M
,
src
.
size
(),
flags
);
cv
::
gpu
::
warpPerspective
(
loadMat
(
src
),
gpuRes
,
M
,
src
.
size
(),
flags
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
// Check inner parts (ignoring 1 pixel width border)
// Check inner parts (ignoring 1 pixel width border)
cv
::
Mat
dst_gold_roi
=
dst_gold
.
rowRange
(
1
,
dst_gold
.
rows
-
1
).
colRange
(
1
,
dst_gold
.
cols
-
1
);
cv
::
Mat
dst_gold_roi
=
dst_gold
.
rowRange
(
1
,
dst_gold
.
rows
-
1
).
colRange
(
1
,
dst_gold
.
cols
-
1
);
...
@@ -469,13 +455,11 @@ TEST_P(Integral, Accuracy)
...
@@ -469,13 +455,11 @@ TEST_P(Integral, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
integral
(
loadMat
(
src
,
useRoi
),
gpuRes
);
cv
::
gpu
::
integral
(
loadMat
(
src
,
useRoi
),
gpuRes
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -518,13 +502,11 @@ TEST_P(CvtColor, BGR2RGB)
...
@@ -518,13 +502,11 @@ TEST_P(CvtColor, BGR2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -537,13 +519,11 @@ TEST_P(CvtColor, BGR2RGBA)
...
@@ -537,13 +519,11 @@ TEST_P(CvtColor, BGR2RGBA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2RGBA
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2RGBA
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -556,13 +536,11 @@ TEST_P(CvtColor, BGR2BGRA)
...
@@ -556,13 +536,11 @@ TEST_P(CvtColor, BGR2BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2BGRA
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2BGRA
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -576,13 +554,11 @@ TEST_P(CvtColor, BGRA2RGB)
...
@@ -576,13 +554,11 @@ TEST_P(CvtColor, BGRA2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -596,13 +572,11 @@ TEST_P(CvtColor, BGRA2BGR)
...
@@ -596,13 +572,11 @@ TEST_P(CvtColor, BGRA2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -616,13 +590,11 @@ TEST_P(CvtColor, BGRA2RGBA)
...
@@ -616,13 +590,11 @@ TEST_P(CvtColor, BGRA2RGBA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2RGBA
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2RGBA
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -635,13 +607,11 @@ TEST_P(CvtColor, BGR2GRAY)
...
@@ -635,13 +607,11 @@ TEST_P(CvtColor, BGR2GRAY)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2GRAY
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2GRAY
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -655,13 +625,11 @@ TEST_P(CvtColor, RGB2GRAY)
...
@@ -655,13 +625,11 @@ TEST_P(CvtColor, RGB2GRAY)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2GRAY
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2GRAY
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -675,13 +643,11 @@ TEST_P(CvtColor, GRAY2BGR)
...
@@ -675,13 +643,11 @@ TEST_P(CvtColor, GRAY2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -695,13 +661,11 @@ TEST_P(CvtColor, GRAY2BGRA)
...
@@ -695,13 +661,11 @@ TEST_P(CvtColor, GRAY2BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGRA
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGRA
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -715,13 +679,11 @@ TEST_P(CvtColor, BGRA2GRAY)
...
@@ -715,13 +679,11 @@ TEST_P(CvtColor, BGRA2GRAY)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2GRAY
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2GRAY
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -735,13 +697,11 @@ TEST_P(CvtColor, RGBA2GRAY)
...
@@ -735,13 +697,11 @@ TEST_P(CvtColor, RGBA2GRAY)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGBA2GRAY
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGBA2GRAY
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -757,13 +717,11 @@ TEST_P(CvtColor, BGR2BGR565)
...
@@ -757,13 +717,11 @@ TEST_P(CvtColor, BGR2BGR565)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2BGR565
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2BGR565
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -780,13 +738,11 @@ TEST_P(CvtColor, RGB2BGR565)
...
@@ -780,13 +738,11 @@ TEST_P(CvtColor, RGB2BGR565)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2BGR565
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2BGR565
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -803,13 +759,11 @@ TEST_P(CvtColor, BGR5652BGR)
...
@@ -803,13 +759,11 @@ TEST_P(CvtColor, BGR5652BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -826,13 +780,11 @@ TEST_P(CvtColor, BGR5652RGB)
...
@@ -826,13 +780,11 @@ TEST_P(CvtColor, BGR5652RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -849,13 +801,11 @@ TEST_P(CvtColor, BGRA2BGR565)
...
@@ -849,13 +801,11 @@ TEST_P(CvtColor, BGRA2BGR565)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2BGR565
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2BGR565
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -872,13 +822,11 @@ TEST_P(CvtColor, RGBA2BGR565)
...
@@ -872,13 +822,11 @@ TEST_P(CvtColor, RGBA2BGR565)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGBA2BGR565
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGBA2BGR565
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -895,13 +843,11 @@ TEST_P(CvtColor, BGR5652BGRA)
...
@@ -895,13 +843,11 @@ TEST_P(CvtColor, BGR5652BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652BGRA
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652BGRA
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -918,13 +864,11 @@ TEST_P(CvtColor, BGR5652RGBA)
...
@@ -918,13 +864,11 @@ TEST_P(CvtColor, BGR5652RGBA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652RGBA
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652RGBA
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -941,13 +885,11 @@ TEST_P(CvtColor, GRAY2BGR565)
...
@@ -941,13 +885,11 @@ TEST_P(CvtColor, GRAY2BGR565)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGR565
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGR565
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -964,13 +906,11 @@ TEST_P(CvtColor, BGR5652GRAY)
...
@@ -964,13 +906,11 @@ TEST_P(CvtColor, BGR5652GRAY)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652GRAY
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5652GRAY
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -986,13 +926,11 @@ TEST_P(CvtColor, BGR2BGR555)
...
@@ -986,13 +926,11 @@ TEST_P(CvtColor, BGR2BGR555)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2BGR555
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2BGR555
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1009,13 +947,11 @@ TEST_P(CvtColor, RGB2BGR555)
...
@@ -1009,13 +947,11 @@ TEST_P(CvtColor, RGB2BGR555)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2BGR555
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2BGR555
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1032,13 +968,11 @@ TEST_P(CvtColor, BGR5552BGR)
...
@@ -1032,13 +968,11 @@ TEST_P(CvtColor, BGR5552BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1055,13 +989,11 @@ TEST_P(CvtColor, BGR5552RGB)
...
@@ -1055,13 +989,11 @@ TEST_P(CvtColor, BGR5552RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1078,13 +1010,11 @@ TEST_P(CvtColor, BGRA2BGR555)
...
@@ -1078,13 +1010,11 @@ TEST_P(CvtColor, BGRA2BGR555)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2BGR555
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGRA2BGR555
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1101,13 +1031,11 @@ TEST_P(CvtColor, RGBA2BGR555)
...
@@ -1101,13 +1031,11 @@ TEST_P(CvtColor, RGBA2BGR555)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGBA2BGR555
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGBA2BGR555
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1124,13 +1052,11 @@ TEST_P(CvtColor, BGR5552BGRA)
...
@@ -1124,13 +1052,11 @@ TEST_P(CvtColor, BGR5552BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552BGRA
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552BGRA
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1147,13 +1073,11 @@ TEST_P(CvtColor, BGR5552RGBA)
...
@@ -1147,13 +1073,11 @@ TEST_P(CvtColor, BGR5552RGBA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552RGBA
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552RGBA
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1170,13 +1094,11 @@ TEST_P(CvtColor, GRAY2BGR555)
...
@@ -1170,13 +1094,11 @@ TEST_P(CvtColor, GRAY2BGR555)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGR555
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_GRAY2BGR555
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1193,13 +1115,11 @@ TEST_P(CvtColor, BGR5552GRAY)
...
@@ -1193,13 +1115,11 @@ TEST_P(CvtColor, BGR5552GRAY)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552GRAY
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR5552GRAY
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -1212,13 +1132,11 @@ TEST_P(CvtColor, BGR2XYZ)
...
@@ -1212,13 +1132,11 @@ TEST_P(CvtColor, BGR2XYZ)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1232,13 +1150,11 @@ TEST_P(CvtColor, RGB2XYZ)
...
@@ -1232,13 +1150,11 @@ TEST_P(CvtColor, RGB2XYZ)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1251,13 +1167,11 @@ TEST_P(CvtColor, BGR2XYZ4)
...
@@ -1251,13 +1167,11 @@ TEST_P(CvtColor, BGR2XYZ4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1277,13 +1191,11 @@ TEST_P(CvtColor, BGRA2XYZ4)
...
@@ -1277,13 +1191,11 @@ TEST_P(CvtColor, BGRA2XYZ4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2XYZ
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1303,13 +1215,11 @@ TEST_P(CvtColor, XYZ2BGR)
...
@@ -1303,13 +1215,11 @@ TEST_P(CvtColor, XYZ2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1323,13 +1233,11 @@ TEST_P(CvtColor, XYZ2RGB)
...
@@ -1323,13 +1233,11 @@ TEST_P(CvtColor, XYZ2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1348,13 +1256,11 @@ TEST_P(CvtColor, XYZ42BGR)
...
@@ -1348,13 +1256,11 @@ TEST_P(CvtColor, XYZ42BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1373,13 +1279,11 @@ TEST_P(CvtColor, XYZ42BGRA)
...
@@ -1373,13 +1279,11 @@ TEST_P(CvtColor, XYZ42BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2BGR
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_XYZ2BGR
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1392,13 +1296,11 @@ TEST_P(CvtColor, BGR2YCrCb)
...
@@ -1392,13 +1296,11 @@ TEST_P(CvtColor, BGR2YCrCb)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YCrCb
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YCrCb
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1412,13 +1314,11 @@ TEST_P(CvtColor, RGB2YCrCb)
...
@@ -1412,13 +1314,11 @@ TEST_P(CvtColor, RGB2YCrCb)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2YCrCb
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2YCrCb
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1431,13 +1331,11 @@ TEST_P(CvtColor, BGR2YCrCb4)
...
@@ -1431,13 +1331,11 @@ TEST_P(CvtColor, BGR2YCrCb4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YCrCb
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YCrCb
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1457,13 +1355,11 @@ TEST_P(CvtColor, RGBA2YCrCb4)
...
@@ -1457,13 +1355,11 @@ TEST_P(CvtColor, RGBA2YCrCb4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YCrCb
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YCrCb
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1483,13 +1379,11 @@ TEST_P(CvtColor, YCrCb2BGR)
...
@@ -1483,13 +1379,11 @@ TEST_P(CvtColor, YCrCb2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1503,13 +1397,11 @@ TEST_P(CvtColor, YCrCb2RGB)
...
@@ -1503,13 +1397,11 @@ TEST_P(CvtColor, YCrCb2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1528,13 +1420,11 @@ TEST_P(CvtColor, YCrCb42RGB)
...
@@ -1528,13 +1420,11 @@ TEST_P(CvtColor, YCrCb42RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1553,13 +1443,11 @@ TEST_P(CvtColor, YCrCb42RGBA)
...
@@ -1553,13 +1443,11 @@ TEST_P(CvtColor, YCrCb42RGBA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2RGB
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YCrCb2RGB
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -1575,13 +1463,11 @@ TEST_P(CvtColor, BGR2HSV)
...
@@ -1575,13 +1463,11 @@ TEST_P(CvtColor, BGR2HSV)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HSV
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HSV
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1598,13 +1484,11 @@ TEST_P(CvtColor, RGB2HSV)
...
@@ -1598,13 +1484,11 @@ TEST_P(CvtColor, RGB2HSV)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1621,13 +1505,11 @@ TEST_P(CvtColor, RGB2HSV4)
...
@@ -1621,13 +1505,11 @@ TEST_P(CvtColor, RGB2HSV4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1650,13 +1532,11 @@ TEST_P(CvtColor, RGBA2HSV4)
...
@@ -1650,13 +1532,11 @@ TEST_P(CvtColor, RGBA2HSV4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1678,13 +1558,11 @@ TEST_P(CvtColor, BGR2HLS)
...
@@ -1678,13 +1558,11 @@ TEST_P(CvtColor, BGR2HLS)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HLS
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HLS
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1701,13 +1579,11 @@ TEST_P(CvtColor, RGB2HLS)
...
@@ -1701,13 +1579,11 @@ TEST_P(CvtColor, RGB2HLS)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1724,13 +1600,11 @@ TEST_P(CvtColor, RGB2HLS4)
...
@@ -1724,13 +1600,11 @@ TEST_P(CvtColor, RGB2HLS4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1753,13 +1627,11 @@ TEST_P(CvtColor, RGBA2HLS4)
...
@@ -1753,13 +1627,11 @@ TEST_P(CvtColor, RGBA2HLS4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -1782,13 +1654,11 @@ TEST_P(CvtColor, HSV2BGR)
...
@@ -1782,13 +1654,11 @@ TEST_P(CvtColor, HSV2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1805,13 +1675,11 @@ TEST_P(CvtColor, HSV2RGB)
...
@@ -1805,13 +1675,11 @@ TEST_P(CvtColor, HSV2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1833,13 +1701,11 @@ TEST_P(CvtColor, HSV42BGR)
...
@@ -1833,13 +1701,11 @@ TEST_P(CvtColor, HSV42BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1861,13 +1727,11 @@ TEST_P(CvtColor, HSV42BGRA)
...
@@ -1861,13 +1727,11 @@ TEST_P(CvtColor, HSV42BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1884,13 +1748,11 @@ TEST_P(CvtColor, HLS2BGR)
...
@@ -1884,13 +1748,11 @@ TEST_P(CvtColor, HLS2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1907,13 +1769,11 @@ TEST_P(CvtColor, HLS2RGB)
...
@@ -1907,13 +1769,11 @@ TEST_P(CvtColor, HLS2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1935,13 +1795,11 @@ TEST_P(CvtColor, HLS42RGB)
...
@@ -1935,13 +1795,11 @@ TEST_P(CvtColor, HLS42RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1963,13 +1821,11 @@ TEST_P(CvtColor, HLS42RGBA)
...
@@ -1963,13 +1821,11 @@ TEST_P(CvtColor, HLS42RGBA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -1985,13 +1841,11 @@ TEST_P(CvtColor, BGR2HSV_FULL)
...
@@ -1985,13 +1841,11 @@ TEST_P(CvtColor, BGR2HSV_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HSV_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HSV_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2008,13 +1862,11 @@ TEST_P(CvtColor, RGB2HSV_FULL)
...
@@ -2008,13 +1862,11 @@ TEST_P(CvtColor, RGB2HSV_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2031,13 +1883,11 @@ TEST_P(CvtColor, RGB2HSV4_FULL)
...
@@ -2031,13 +1883,11 @@ TEST_P(CvtColor, RGB2HSV4_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV_FULL
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV_FULL
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -2060,13 +1910,11 @@ TEST_P(CvtColor, RGBA2HSV4_FULL)
...
@@ -2060,13 +1910,11 @@ TEST_P(CvtColor, RGBA2HSV4_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV_FULL
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HSV_FULL
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -2088,13 +1936,11 @@ TEST_P(CvtColor, BGR2HLS_FULL)
...
@@ -2088,13 +1936,11 @@ TEST_P(CvtColor, BGR2HLS_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HLS_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2HLS_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2111,13 +1957,11 @@ TEST_P(CvtColor, RGB2HLS_FULL)
...
@@ -2111,13 +1957,11 @@ TEST_P(CvtColor, RGB2HLS_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2134,13 +1978,11 @@ TEST_P(CvtColor, RGB2HLS4_FULL)
...
@@ -2134,13 +1978,11 @@ TEST_P(CvtColor, RGB2HLS4_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS_FULL
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS_FULL
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -2163,13 +2005,11 @@ TEST_P(CvtColor, RGBA2HLS4_FULL)
...
@@ -2163,13 +2005,11 @@ TEST_P(CvtColor, RGBA2HLS4_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS_FULL
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2HLS_FULL
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -2192,13 +2032,11 @@ TEST_P(CvtColor, HSV2BGR_FULL)
...
@@ -2192,13 +2032,11 @@ TEST_P(CvtColor, HSV2BGR_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2BGR_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2215,13 +2053,11 @@ TEST_P(CvtColor, HSV2RGB_FULL)
...
@@ -2215,13 +2053,11 @@ TEST_P(CvtColor, HSV2RGB_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2243,13 +2079,11 @@ TEST_P(CvtColor, HSV42RGB_FULL)
...
@@ -2243,13 +2079,11 @@ TEST_P(CvtColor, HSV42RGB_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2271,13 +2105,11 @@ TEST_P(CvtColor, HSV42RGBA_FULL)
...
@@ -2271,13 +2105,11 @@ TEST_P(CvtColor, HSV42RGBA_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB_FULL
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HSV2RGB_FULL
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2294,13 +2126,11 @@ TEST_P(CvtColor, HLS2BGR_FULL)
...
@@ -2294,13 +2126,11 @@ TEST_P(CvtColor, HLS2BGR_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2BGR_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2BGR_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2317,13 +2147,11 @@ TEST_P(CvtColor, HLS2RGB_FULL)
...
@@ -2317,13 +2147,11 @@ TEST_P(CvtColor, HLS2RGB_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2345,13 +2173,11 @@ TEST_P(CvtColor, HLS42RGB_FULL)
...
@@ -2345,13 +2173,11 @@ TEST_P(CvtColor, HLS42RGB_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB_FULL
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB_FULL
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2373,13 +2199,11 @@ TEST_P(CvtColor, HLS42RGBA_FULL)
...
@@ -2373,13 +2199,11 @@ TEST_P(CvtColor, HLS42RGBA_FULL)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB_FULL
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_HLS2RGB_FULL
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
type
==
CV_32F
?
1e-2
:
1
);
}
}
...
@@ -2392,13 +2216,11 @@ TEST_P(CvtColor, BGR2YUV)
...
@@ -2392,13 +2216,11 @@ TEST_P(CvtColor, BGR2YUV)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YUV
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YUV
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -2412,13 +2234,11 @@ TEST_P(CvtColor, RGB2YUV)
...
@@ -2412,13 +2234,11 @@ TEST_P(CvtColor, RGB2YUV)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2YUV
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2YUV
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -2432,13 +2252,11 @@ TEST_P(CvtColor, YUV2BGR)
...
@@ -2432,13 +2252,11 @@ TEST_P(CvtColor, YUV2BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -2457,13 +2275,11 @@ TEST_P(CvtColor, YUV42BGR)
...
@@ -2457,13 +2275,11 @@ TEST_P(CvtColor, YUV42BGR)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2BGR
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2BGR
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -2482,13 +2298,11 @@ TEST_P(CvtColor, YUV42BGRA)
...
@@ -2482,13 +2298,11 @@ TEST_P(CvtColor, YUV42BGRA)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2BGR
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2BGR
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -2502,13 +2316,11 @@ TEST_P(CvtColor, YUV2RGB)
...
@@ -2502,13 +2316,11 @@ TEST_P(CvtColor, YUV2RGB)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2RGB
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_YUV2RGB
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
1e-5
);
}
}
...
@@ -2521,13 +2333,11 @@ TEST_P(CvtColor, BGR2YUV4)
...
@@ -2521,13 +2333,11 @@ TEST_P(CvtColor, BGR2YUV4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YUV
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_BGR2YUV
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -2547,13 +2357,11 @@ TEST_P(CvtColor, RGBA2YUV4)
...
@@ -2547,13 +2357,11 @@ TEST_P(CvtColor, RGBA2YUV4)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
GpuMat
gpuRes
;
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2YUV
,
4
);
cv
::
gpu
::
cvtColor
(
loadMat
(
src
,
useRoi
),
gpuRes
,
cv
::
COLOR_RGB2YUV
,
4
);
gpuRes
.
download
(
dst
);
gpuRes
.
download
(
dst
);
);
ASSERT_EQ
(
4
,
dst
.
channels
());
ASSERT_EQ
(
4
,
dst
.
channels
());
...
@@ -2617,16 +2425,14 @@ TEST_P(HistEven, Accuracy)
...
@@ -2617,16 +2425,14 @@ TEST_P(HistEven, Accuracy)
{
{
cv
::
Mat
hist
;
cv
::
Mat
hist
;
ASSERT_NO_THROW
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
srcs
;
std
::
vector
<
cv
::
gpu
::
GpuMat
>
srcs
;
cv
::
gpu
::
split
(
loadMat
(
hsv
),
srcs
);
cv
::
gpu
::
split
(
loadMat
(
hsv
),
srcs
);
cv
::
gpu
::
GpuMat
gpuHist
;
cv
::
gpu
::
GpuMat
gpuHist
;
cv
::
gpu
::
histEven
(
srcs
[
0
],
gpuHist
,
hbins
,
(
int
)
hranges
[
0
],
(
int
)
hranges
[
1
]);
cv
::
gpu
::
histEven
(
srcs
[
0
],
gpuHist
,
hbins
,
(
int
)
hranges
[
0
],
(
int
)
hranges
[
1
]);
gpuHist
.
download
(
hist
);
gpuHist
.
download
(
hist
);
);
EXPECT_MAT_NEAR
(
hist_gold
,
hist
,
0.0
);
EXPECT_MAT_NEAR
(
hist_gold
,
hist
,
0.0
);
}
}
...
@@ -2671,13 +2477,11 @@ TEST_P(CalcHist, Accuracy)
...
@@ -2671,13 +2477,11 @@ TEST_P(CalcHist, Accuracy)
{
{
cv
::
Mat
hist
;
cv
::
Mat
hist
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuHist
;
cv
::
gpu
::
GpuMat
gpuHist
;
cv
::
gpu
::
calcHist
(
loadMat
(
src
),
gpuHist
);
cv
::
gpu
::
calcHist
(
loadMat
(
src
),
gpuHist
);
gpuHist
.
download
(
hist
);
gpuHist
.
download
(
hist
);
);
EXPECT_MAT_NEAR
(
hist_gold
,
hist
,
0.0
);
EXPECT_MAT_NEAR
(
hist_gold
,
hist
,
0.0
);
}
}
...
@@ -2712,13 +2516,11 @@ TEST_P(EqualizeHist, Accuracy)
...
@@ -2712,13 +2516,11 @@ TEST_P(EqualizeHist, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpuDst
;
cv
::
gpu
::
GpuMat
gpuDst
;
cv
::
gpu
::
equalizeHist
(
loadMat
(
src
),
gpuDst
);
cv
::
gpu
::
equalizeHist
(
loadMat
(
src
),
gpuDst
);
gpuDst
.
download
(
dst
);
gpuDst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
3.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
3.0
);
}
}
...
@@ -2768,11 +2570,11 @@ TEST_P(CornerHarris, Accuracy)
...
@@ -2768,11 +2570,11 @@ TEST_P(CornerHarris, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
cornerHarris
(
loadMat
(
src
),
dev_dst
,
blockSize
,
apertureSize
,
k
,
borderType
);
cv
::
gpu
::
cornerHarris
(
loadMat
(
src
),
dev_dst
,
blockSize
,
apertureSize
,
k
,
borderType
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.02
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.02
);
}
}
...
@@ -2823,11 +2625,11 @@ TEST_P(CornerMinEigen, Accuracy)
...
@@ -2823,11 +2625,11 @@ TEST_P(CornerMinEigen, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
cornerMinEigenVal
(
loadMat
(
src
),
dev_dst
,
blockSize
,
apertureSize
,
borderType
);
cv
::
gpu
::
cornerMinEigenVal
(
loadMat
(
src
),
dev_dst
,
blockSize
,
apertureSize
,
borderType
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.02
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.02
);
}
}
...
@@ -2865,11 +2667,11 @@ TEST_P(ColumnSum, Accuracy)
...
@@ -2865,11 +2667,11 @@ TEST_P(ColumnSum, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
columnSum
(
loadMat
(
src
),
dev_dst
);
cv
::
gpu
::
columnSum
(
loadMat
(
src
),
dev_dst
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
for
(
int
j
=
0
;
j
<
src
.
cols
;
++
j
)
for
(
int
j
=
0
;
j
<
src
.
cols
;
++
j
)
{
{
...
@@ -2927,11 +2729,7 @@ PARAM_TEST_CASE(Norm, cv::gpu::DeviceInfo, MatType, NormCode, UseRoi)
...
@@ -2927,11 +2729,7 @@ PARAM_TEST_CASE(Norm, cv::gpu::DeviceInfo, MatType, NormCode, UseRoi)
TEST_P
(
Norm
,
Accuracy
)
TEST_P
(
Norm
,
Accuracy
)
{
{
double
res
;
double
res
=
cv
::
gpu
::
norm
(
loadMat
(
src
,
useRoi
),
normType
);
ASSERT_NO_THROW
(
res
=
cv
::
gpu
::
norm
(
loadMat
(
src
,
useRoi
),
normType
);
);
ASSERT_NEAR
(
res
,
gold
,
0.5
);
ASSERT_NEAR
(
res
,
gold
,
0.5
);
}
}
...
@@ -2979,11 +2777,11 @@ TEST_P(ReprojectImageTo3D, Accuracy)
...
@@ -2979,11 +2777,11 @@ TEST_P(ReprojectImageTo3D, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
gpures
;
cv
::
gpu
::
GpuMat
gpures
;
cv
::
gpu
::
reprojectImageTo3D
(
loadMat
(
disp
,
useRoi
),
gpures
,
Q
);
cv
::
gpu
::
reprojectImageTo3D
(
loadMat
(
disp
,
useRoi
),
gpures
,
Q
);
gpures
.
download
(
dst
);
);
gpures
.
download
(
dst
);
ASSERT_EQ
(
dst_gold
.
size
(),
dst
.
size
());
ASSERT_EQ
(
dst_gold
.
size
(),
dst
.
size
());
...
@@ -3047,11 +2845,11 @@ TEST_P(MeanShift, Filtering)
...
@@ -3047,11 +2845,11 @@ TEST_P(MeanShift, Filtering)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
meanShiftFiltering
(
loadMat
(
rgba
),
dev_dst
,
spatialRad
,
colorRad
);
cv
::
gpu
::
meanShiftFiltering
(
loadMat
(
rgba
),
dev_dst
,
spatialRad
,
colorRad
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
ASSERT_EQ
(
CV_8UC4
,
dst
.
type
());
ASSERT_EQ
(
CV_8UC4
,
dst
.
type
());
...
@@ -3081,18 +2879,16 @@ TEST_P(MeanShift, Proc)
...
@@ -3081,18 +2879,16 @@ TEST_P(MeanShift, Proc)
cv
::
Mat
rmap
;
cv
::
Mat
rmap
;
cv
::
Mat
spmap
;
cv
::
Mat
spmap
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_rmap_filtered
;
cv
::
gpu
::
GpuMat
d_rmap_filtered
;
cv
::
gpu
::
meanShiftFiltering
(
loadMat
(
rgba
),
d_rmap_filtered
,
spatialRad
,
colorRad
);
cv
::
gpu
::
meanShiftFiltering
(
loadMat
(
rgba
),
d_rmap_filtered
,
spatialRad
,
colorRad
);
cv
::
gpu
::
GpuMat
d_rmap
;
cv
::
gpu
::
GpuMat
d_rmap
;
cv
::
gpu
::
GpuMat
d_spmap
;
cv
::
gpu
::
GpuMat
d_spmap
;
cv
::
gpu
::
meanShiftProc
(
loadMat
(
rgba
),
d_rmap
,
d_spmap
,
spatialRad
,
colorRad
);
cv
::
gpu
::
meanShiftProc
(
loadMat
(
rgba
),
d_rmap
,
d_spmap
,
spatialRad
,
colorRad
);
d_rmap_filtered
.
download
(
rmap_filtered
);
d_rmap_filtered
.
download
(
rmap_filtered
);
d_rmap
.
download
(
rmap
);
d_rmap
.
download
(
rmap
);
d_spmap
.
download
(
spmap
);
d_spmap
.
download
(
spmap
);
);
ASSERT_EQ
(
CV_8UC4
,
rmap
.
type
());
ASSERT_EQ
(
CV_8UC4
,
rmap
.
type
());
...
@@ -3139,9 +2935,7 @@ TEST_P(MeanShiftSegmentation, Regression)
...
@@ -3139,9 +2935,7 @@ TEST_P(MeanShiftSegmentation, Regression)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
meanShiftSegmentation
(
loadMat
(
rgba
),
dst
,
10
,
10
,
minsize
);
cv
::
gpu
::
meanShiftSegmentation
(
loadMat
(
rgba
),
dst
,
10
,
10
,
minsize
);
);
cv
::
Mat
dst_rgb
;
cv
::
Mat
dst_rgb
;
cv
::
cvtColor
(
dst
,
dst_rgb
,
CV_BGRA2BGR
);
cv
::
cvtColor
(
dst
,
dst_rgb
,
CV_BGRA2BGR
);
...
@@ -3193,11 +2987,11 @@ TEST_P(MatchTemplate8U, Regression)
...
@@ -3193,11 +2987,11 @@ TEST_P(MatchTemplate8U, Regression)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
templ
),
dev_dst
,
method
);
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
templ
),
dev_dst
,
method
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
5
*
h
*
w
*
1e-4
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
5
*
h
*
w
*
1e-4
);
}
}
...
@@ -3245,11 +3039,11 @@ TEST_P(MatchTemplate32F, Regression)
...
@@ -3245,11 +3039,11 @@ TEST_P(MatchTemplate32F, Regression)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
templ
),
dev_dst
,
method
);
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
templ
),
dev_dst
,
method
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.25
*
h
*
w
*
1e-4
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.25
*
h
*
w
*
1e-4
);
}
}
...
@@ -3286,11 +3080,11 @@ TEST_P(MatchTemplateBlackSource, Accuracy)
...
@@ -3286,11 +3080,11 @@ TEST_P(MatchTemplateBlackSource, Accuracy)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
pattern
),
dev_dst
,
method
);
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
pattern
),
dev_dst
,
method
);
dev_dst
.
download
(
dst
);
);
dev_dst
.
download
(
dst
);
double
maxValue
;
double
maxValue
;
cv
::
Point
maxLoc
;
cv
::
Point
maxLoc
;
...
@@ -3330,16 +3124,18 @@ TEST_P(MatchTemplate_CCOEF_NORMED, Accuracy)
...
@@ -3330,16 +3124,18 @@ TEST_P(MatchTemplate_CCOEF_NORMED, Accuracy)
{
{
cv
::
Mat
dstGold
;
cv
::
Mat
dstGold
;
cv
::
matchTemplate
(
image
,
pattern
,
dstGold
,
CV_TM_CCOEFF_NORMED
);
cv
::
matchTemplate
(
image
,
pattern
,
dstGold
,
CV_TM_CCOEFF_NORMED
);
double
minValGold
,
maxValGold
;
double
minValGold
,
maxValGold
;
cv
::
Point
minLocGold
,
maxLocGold
;
cv
::
Point
minLocGold
,
maxLocGold
;
cv
::
minMaxLoc
(
dstGold
,
&
minValGold
,
&
maxValGold
,
&
minLocGold
,
&
maxLocGold
);
cv
::
minMaxLoc
(
dstGold
,
&
minValGold
,
&
maxValGold
,
&
minLocGold
,
&
maxLocGold
);
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
pattern
),
dev_dst
,
CV_TM_CCOEFF_NORMED
);
dev_dst
.
download
(
dst
);
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
pattern
),
dev_dst
,
CV_TM_CCOEFF_NORMED
);
);
dev_dst
.
download
(
dst
);
cv
::
Point
minLoc
,
maxLoc
;
cv
::
Point
minLoc
,
maxLoc
;
double
minVal
,
maxVal
;
double
minVal
,
maxVal
;
...
@@ -3355,50 +3151,6 @@ INSTANTIATE_TEST_CASE_P(ImgProc, MatchTemplate_CCOEF_NORMED, Combine(
...
@@ -3355,50 +3151,6 @@ INSTANTIATE_TEST_CASE_P(ImgProc, MatchTemplate_CCOEF_NORMED, Combine(
ALL_DEVICES
,
ALL_DEVICES
,
Values
(
std
::
make_pair
(
std
::
string
(
"matchtemplate/source-0.png"
),
std
::
string
(
"matchtemplate/target-0.png"
)))));
Values
(
std
::
make_pair
(
std
::
string
(
"matchtemplate/source-0.png"
),
std
::
string
(
"matchtemplate/target-0.png"
)))));
PARAM_TEST_CASE
(
MatchTemplate_CCOEF_NORMED_NoThrow
,
cv
::
gpu
::
DeviceInfo
,
std
::
pair
<
std
::
string
,
std
::
string
>
)
{
cv
::
gpu
::
DeviceInfo
devInfo
;
std
::
string
imageName
;
std
::
string
patternName
;
cv
::
Mat
image
,
pattern
;
virtual
void
SetUp
()
{
devInfo
=
GET_PARAM
(
0
);
imageName
=
GET_PARAM
(
1
).
first
;
patternName
=
GET_PARAM
(
1
).
second
;
image
=
readImage
(
imageName
);
ASSERT_FALSE
(
image
.
empty
());
pattern
=
readImage
(
patternName
);
ASSERT_FALSE
(
pattern
.
empty
());
}
};
TEST_P
(
MatchTemplate_CCOEF_NORMED_NoThrow
,
NoThrow
)
{
cv
::
Mat
dstGold
;
cv
::
matchTemplate
(
image
,
pattern
,
dstGold
,
CV_TM_CCOEFF_NORMED
);
double
minValGold
,
maxValGold
;
cv
::
Point
minLocGold
,
maxLocGold
;
cv
::
minMaxLoc
(
dstGold
,
&
minValGold
,
&
maxValGold
,
&
minLocGold
,
&
maxLocGold
);
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
matchTemplate
(
loadMat
(
image
),
loadMat
(
pattern
),
dev_dst
,
CV_TM_CCOEFF_NORMED
);
dev_dst
.
download
(
dst
);
);
}
INSTANTIATE_TEST_CASE_P
(
ImgProc
,
MatchTemplate_CCOEF_NORMED_NoThrow
,
Combine
(
ALL_DEVICES
,
Values
(
std
::
make_pair
(
std
::
string
(
"matchtemplate/source-1.png"
),
std
::
string
(
"matchtemplate/target-1.png"
)))));
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
// MulSpectrums
// MulSpectrums
...
@@ -3430,13 +3182,11 @@ TEST_P(MulSpectrums, Simple)
...
@@ -3430,13 +3182,11 @@ TEST_P(MulSpectrums, Simple)
cv
::
Mat
c
;
cv
::
Mat
c
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_c
;
cv
::
gpu
::
GpuMat
d_c
;
cv
::
gpu
::
mulSpectrums
(
loadMat
(
a
),
loadMat
(
b
),
d_c
,
flag
,
false
);
cv
::
gpu
::
mulSpectrums
(
loadMat
(
a
),
loadMat
(
b
),
d_c
,
flag
,
false
);
d_c
.
download
(
c
);
d_c
.
download
(
c
);
);
EXPECT_MAT_NEAR
(
c_gold
,
c
,
1e-4
);
EXPECT_MAT_NEAR
(
c_gold
,
c
,
1e-4
);
}
}
...
@@ -3451,13 +3201,11 @@ TEST_P(MulSpectrums, Scaled)
...
@@ -3451,13 +3201,11 @@ TEST_P(MulSpectrums, Scaled)
cv
::
Mat
c
;
cv
::
Mat
c
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_c
;
cv
::
gpu
::
GpuMat
d_c
;
cv
::
gpu
::
mulAndScaleSpectrums
(
loadMat
(
a
),
loadMat
(
b
),
d_c
,
flag
,
scale
,
false
);
cv
::
gpu
::
mulAndScaleSpectrums
(
loadMat
(
a
),
loadMat
(
b
),
d_c
,
flag
,
scale
,
false
);
d_c
.
download
(
c
);
d_c
.
download
(
c
);
);
EXPECT_MAT_NEAR
(
c_gold
,
c
,
1e-4
);
EXPECT_MAT_NEAR
(
c_gold
,
c
,
1e-4
);
}
}
...
@@ -3514,26 +3262,24 @@ TEST_P(Dft, C2C)
...
@@ -3514,26 +3262,24 @@ TEST_P(Dft, C2C)
int
cols
=
2
+
rng
.
next
()
%
100
,
rows
=
2
+
rng
.
next
()
%
100
;
int
cols
=
2
+
rng
.
next
()
%
100
,
rows
=
2
+
rng
.
next
()
%
100
;
ASSERT_NO_THROW
(
for
(
int
i
=
0
;
i
<
2
;
++
i
)
for
(
int
i
=
0
;
i
<
2
;
++
i
)
{
{
bool
inplace
=
i
!=
0
;
bool
inplace
=
i
!=
0
;
testC2C
(
"no flags"
,
cols
,
rows
,
0
,
inplace
);
testC2C
(
"no flags"
,
cols
,
rows
,
0
,
inplace
);
testC2C
(
"no flags 0 1"
,
cols
,
rows
+
1
,
0
,
inplace
);
testC2C
(
"no flags 0 1"
,
cols
,
rows
+
1
,
0
,
inplace
);
testC2C
(
"no flags 1 0"
,
cols
,
rows
+
1
,
0
,
inplace
);
testC2C
(
"no flags 1 0"
,
cols
,
rows
+
1
,
0
,
inplace
);
testC2C
(
"no flags 1 1"
,
cols
+
1
,
rows
,
0
,
inplace
);
testC2C
(
"no flags 1 1"
,
cols
+
1
,
rows
,
0
,
inplace
);
testC2C
(
"DFT_INVERSE"
,
cols
,
rows
,
cv
::
DFT_INVERSE
,
inplace
);
testC2C
(
"DFT_INVERSE"
,
cols
,
rows
,
cv
::
DFT_INVERSE
,
inplace
);
testC2C
(
"DFT_ROWS"
,
cols
,
rows
,
cv
::
DFT_ROWS
,
inplace
);
testC2C
(
"DFT_ROWS"
,
cols
,
rows
,
cv
::
DFT_ROWS
,
inplace
);
testC2C
(
"single col"
,
1
,
rows
,
0
,
inplace
);
testC2C
(
"single col"
,
1
,
rows
,
0
,
inplace
);
testC2C
(
"single row"
,
cols
,
1
,
0
,
inplace
);
testC2C
(
"single row"
,
cols
,
1
,
0
,
inplace
);
testC2C
(
"single col inversed"
,
1
,
rows
,
cv
::
DFT_INVERSE
,
inplace
);
testC2C
(
"single col inversed"
,
1
,
rows
,
cv
::
DFT_INVERSE
,
inplace
);
testC2C
(
"single row inversed"
,
cols
,
1
,
cv
::
DFT_INVERSE
,
inplace
);
testC2C
(
"single row inversed"
,
cols
,
1
,
cv
::
DFT_INVERSE
,
inplace
);
testC2C
(
"single row DFT_ROWS"
,
cols
,
1
,
cv
::
DFT_ROWS
,
inplace
);
testC2C
(
"single row DFT_ROWS"
,
cols
,
1
,
cv
::
DFT_ROWS
,
inplace
);
testC2C
(
"size 1 2"
,
1
,
2
,
0
,
inplace
);
testC2C
(
"size 1 2"
,
1
,
2
,
0
,
inplace
);
testC2C
(
"size 2 1"
,
2
,
1
,
0
,
inplace
);
testC2C
(
"size 2 1"
,
2
,
1
,
0
,
inplace
);
}
}
);
}
}
void
testR2CThenC2R
(
const
std
::
string
&
hint
,
int
cols
,
int
rows
,
bool
inplace
)
void
testR2CThenC2R
(
const
std
::
string
&
hint
,
int
cols
,
int
rows
,
bool
inplace
)
...
@@ -3580,23 +3326,21 @@ TEST_P(Dft, R2CThenC2R)
...
@@ -3580,23 +3326,21 @@ TEST_P(Dft, R2CThenC2R)
int
cols
=
2
+
rng
.
next
()
%
100
,
rows
=
2
+
rng
.
next
()
%
100
;
int
cols
=
2
+
rng
.
next
()
%
100
,
rows
=
2
+
rng
.
next
()
%
100
;
ASSERT_NO_THROW
(
testR2CThenC2R
(
"sanity"
,
cols
,
rows
,
false
);
testR2CThenC2R
(
"sanity"
,
cols
,
rows
,
false
);
testR2CThenC2R
(
"sanity 0 1"
,
cols
,
rows
+
1
,
false
);
testR2CThenC2R
(
"sanity 0 1"
,
cols
,
rows
+
1
,
false
);
testR2CThenC2R
(
"sanity 1 0"
,
cols
+
1
,
rows
,
false
);
testR2CThenC2R
(
"sanity 1 0"
,
cols
+
1
,
rows
,
false
);
testR2CThenC2R
(
"sanity 1 1"
,
cols
+
1
,
rows
+
1
,
false
);
testR2CThenC2R
(
"sanity 1 1"
,
cols
+
1
,
rows
+
1
,
false
);
testR2CThenC2R
(
"single col"
,
1
,
rows
,
false
);
testR2CThenC2R
(
"single col"
,
1
,
rows
,
false
);
testR2CThenC2R
(
"single col 1"
,
1
,
rows
+
1
,
false
);
testR2CThenC2R
(
"single col 1"
,
1
,
rows
+
1
,
false
);
testR2CThenC2R
(
"single row"
,
cols
,
1
,
false
);
testR2CThenC2R
(
"single row"
,
cols
,
1
,
false
);
testR2CThenC2R
(
"single row 1"
,
cols
+
1
,
1
,
false
);
testR2CThenC2R
(
"single row 1"
,
cols
+
1
,
1
,
false
);
testR2CThenC2R
(
"sanity"
,
cols
,
rows
,
true
);
testR2CThenC2R
(
"sanity"
,
cols
,
rows
,
true
);
testR2CThenC2R
(
"sanity 0 1"
,
cols
,
rows
+
1
,
true
);
testR2CThenC2R
(
"sanity 0 1"
,
cols
,
rows
+
1
,
true
);
testR2CThenC2R
(
"sanity 1 0"
,
cols
+
1
,
rows
,
true
);
testR2CThenC2R
(
"sanity 1 0"
,
cols
+
1
,
rows
,
true
);
testR2CThenC2R
(
"sanity 1 1"
,
cols
+
1
,
rows
+
1
,
true
);
testR2CThenC2R
(
"sanity 1 1"
,
cols
+
1
,
rows
+
1
,
true
);
testR2CThenC2R
(
"single row"
,
cols
,
1
,
true
);
testR2CThenC2R
(
"single row"
,
cols
,
1
,
true
);
testR2CThenC2R
(
"single row 1"
,
cols
+
1
,
1
,
true
);
testR2CThenC2R
(
"single row 1"
,
cols
+
1
,
1
,
true
);
);
}
}
INSTANTIATE_TEST_CASE_P
(
ImgProc
,
Dft
,
ALL_DEVICES
);
INSTANTIATE_TEST_CASE_P
(
ImgProc
,
Dft
,
ALL_DEVICES
);
...
@@ -3672,13 +3416,11 @@ TEST_P(Blend, Accuracy)
...
@@ -3672,13 +3416,11 @@ TEST_P(Blend, Accuracy)
{
{
cv
::
Mat
result
;
cv
::
Mat
result
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_result
;
cv
::
gpu
::
GpuMat
d_result
;
cv
::
gpu
::
blendLinear
(
loadMat
(
img1
,
useRoi
),
loadMat
(
img2
,
useRoi
),
loadMat
(
weights1
,
useRoi
),
loadMat
(
weights2
,
useRoi
),
d_result
);
cv
::
gpu
::
blendLinear
(
loadMat
(
img1
,
useRoi
),
loadMat
(
img2
,
useRoi
),
loadMat
(
weights1
,
useRoi
),
loadMat
(
weights2
,
useRoi
),
d_result
);
d_result
.
download
(
result
);
d_result
.
download
(
result
);
);
EXPECT_MAT_NEAR
(
result_gold
,
result
,
CV_MAT_DEPTH
(
type
)
==
CV_8U
?
1.0
:
1e-5
);
EXPECT_MAT_NEAR
(
result_gold
,
result
,
CV_MAT_DEPTH
(
type
)
==
CV_8U
?
1.0
:
1e-5
);
}
}
...
@@ -3724,13 +3466,11 @@ TEST_P(PyrDown, Accuracy)
...
@@ -3724,13 +3466,11 @@ TEST_P(PyrDown, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
pyrDown
(
loadMat
(
src
,
useRoi
),
d_dst
);
cv
::
gpu
::
pyrDown
(
loadMat
(
src
,
useRoi
),
d_dst
);
d_dst
.
download
(
dst
);
d_dst
.
download
(
dst
);
);
ASSERT_EQ
(
dst_gold
.
cols
,
dst
.
cols
);
ASSERT_EQ
(
dst_gold
.
cols
,
dst
.
cols
);
ASSERT_EQ
(
dst_gold
.
rows
,
dst
.
rows
);
ASSERT_EQ
(
dst_gold
.
rows
,
dst
.
rows
);
...
@@ -3781,13 +3521,11 @@ TEST_P(PyrUp, Accuracy)
...
@@ -3781,13 +3521,11 @@ TEST_P(PyrUp, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
pyrUp
(
loadMat
(
src
,
useRoi
),
d_dst
);
cv
::
gpu
::
pyrUp
(
loadMat
(
src
,
useRoi
),
d_dst
);
d_dst
.
download
(
dst
);
d_dst
.
download
(
dst
);
);
ASSERT_EQ
(
dst_gold
.
cols
,
dst
.
cols
);
ASSERT_EQ
(
dst_gold
.
cols
,
dst
.
cols
);
ASSERT_EQ
(
dst_gold
.
rows
,
dst
.
rows
);
ASSERT_EQ
(
dst_gold
.
rows
,
dst
.
rows
);
...
@@ -3842,13 +3580,11 @@ TEST_P(Canny, Accuracy)
...
@@ -3842,13 +3580,11 @@ TEST_P(Canny, Accuracy)
{
{
cv
::
Mat
edges
;
cv
::
Mat
edges
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_edges
;
cv
::
gpu
::
GpuMat
d_edges
;
cv
::
gpu
::
Canny
(
loadMat
(
img
,
useRoi
),
d_edges
,
low_thresh
,
high_thresh
,
apperture_size
,
L2gradient
);
cv
::
gpu
::
Canny
(
loadMat
(
img
,
useRoi
),
d_edges
,
low_thresh
,
high_thresh
,
apperture_size
,
L2gradient
);
d_edges
.
download
(
edges
);
d_edges
.
download
(
edges
);
);
EXPECT_MAT_SIMILAR
(
edges_gold
,
edges
,
1.0
);
EXPECT_MAT_SIMILAR
(
edges_gold
,
edges
,
1.0
);
}
}
...
@@ -3895,13 +3631,11 @@ TEST_P(Convolve, Accuracy)
...
@@ -3895,13 +3631,11 @@ TEST_P(Convolve, Accuracy)
{
{
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
GpuMat
d_dst
;
cv
::
gpu
::
convolve
(
loadMat
(
src
),
loadMat
(
kernel
),
d_dst
);
cv
::
gpu
::
convolve
(
loadMat
(
src
),
loadMat
(
kernel
),
d_dst
);
d_dst
.
download
(
dst
);
d_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst
,
dst_gold
,
1e-2
);
EXPECT_MAT_NEAR
(
dst
,
dst_gold
,
1e-2
);
}
}
...
...
modules/gpu/test/test_matop.cpp
View file @
75ac4362
...
@@ -90,17 +90,15 @@ TEST_P(Merge, Accuracy)
...
@@ -90,17 +90,15 @@ TEST_P(Merge, Accuracy)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
dev_src
;
std
::
vector
<
cv
::
gpu
::
GpuMat
>
dev_src
;
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
for
(
size_t
i
=
0
;
i
<
src
.
size
();
++
i
)
for
(
size_t
i
=
0
;
i
<
src
.
size
();
++
i
)
dev_src
.
push_back
(
loadMat
(
src
[
i
],
useRoi
));
dev_src
.
push_back
(
loadMat
(
src
[
i
],
useRoi
));
cv
::
gpu
::
merge
(
dev_src
,
dev_dst
);
cv
::
gpu
::
merge
(
dev_src
,
dev_dst
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -149,16 +147,14 @@ TEST_P(Split, Accuracy)
...
@@ -149,16 +147,14 @@ TEST_P(Split, Accuracy)
std
::
vector
<
cv
::
Mat
>
dst
;
std
::
vector
<
cv
::
Mat
>
dst
;
ASSERT_NO_THROW
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
dev_dst
;
std
::
vector
<
cv
::
gpu
::
GpuMat
>
dev_dst
;
cv
::
gpu
::
split
(
loadMat
(
src
,
useRoi
),
dev_dst
);
cv
::
gpu
::
split
(
loadMat
(
src
,
useRoi
),
dev_dst
);
dst
.
resize
(
dev_dst
.
size
());
dst
.
resize
(
dev_dst
.
size
());
for
(
size_t
i
=
0
;
i
<
dev_dst
.
size
();
++
i
)
for
(
size_t
i
=
0
;
i
<
dev_dst
.
size
();
++
i
)
dev_dst
[
i
].
download
(
dst
[
i
]);
dev_dst
[
i
].
download
(
dst
[
i
]);
);
ASSERT_EQ
(
dst_gold
.
size
(),
dst
.
size
());
ASSERT_EQ
(
dst_gold
.
size
(),
dst
.
size
());
...
@@ -207,15 +203,13 @@ TEST_P(SplitMerge, Consistency)
...
@@ -207,15 +203,13 @@ TEST_P(SplitMerge, Consistency)
cv
::
Mat
final
;
cv
::
Mat
final
;
ASSERT_NO_THROW
(
std
::
vector
<
cv
::
gpu
::
GpuMat
>
dev_vec
;
std
::
vector
<
cv
::
gpu
::
GpuMat
>
dev_vec
;
cv
::
gpu
::
GpuMat
dev_final
;
cv
::
gpu
::
GpuMat
dev_final
;
cv
::
gpu
::
split
(
loadMat
(
orig
),
dev_vec
);
cv
::
gpu
::
split
(
loadMat
(
orig
),
dev_vec
);
cv
::
gpu
::
merge
(
dev_vec
,
dev_final
);
cv
::
gpu
::
merge
(
dev_vec
,
dev_final
);
dev_final
.
download
(
final
);
dev_final
.
download
(
final
);
);
EXPECT_MAT_NEAR
(
orig
,
final
,
0.0
);
EXPECT_MAT_NEAR
(
orig
,
final
,
0.0
);
}
}
...
@@ -261,14 +255,12 @@ TEST_P(SetTo, Zero)
...
@@ -261,14 +255,12 @@ TEST_P(SetTo, Zero)
cv
::
Mat
mat
;
cv
::
Mat
mat
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_mat
=
loadMat
(
mat_gold
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_mat
=
loadMat
(
mat_gold
,
useRoi
);
mat_gold
.
setTo
(
zero
);
mat_gold
.
setTo
(
zero
);
dev_mat
.
setTo
(
zero
);
dev_mat
.
setTo
(
zero
);
dev_mat
.
download
(
mat
);
dev_mat
.
download
(
mat
);
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
}
}
...
@@ -282,14 +274,12 @@ TEST_P(SetTo, SameVal)
...
@@ -282,14 +274,12 @@ TEST_P(SetTo, SameVal)
cv
::
Mat
mat
;
cv
::
Mat
mat
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_mat
(
mat_gold
);
cv
::
gpu
::
GpuMat
dev_mat
(
mat_gold
);
mat_gold
.
setTo
(
s
);
mat_gold
.
setTo
(
s
);
dev_mat
.
setTo
(
s
);
dev_mat
.
setTo
(
s
);
dev_mat
.
download
(
mat
);
dev_mat
.
download
(
mat
);
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
}
}
...
@@ -303,14 +293,12 @@ TEST_P(SetTo, DifferentVal)
...
@@ -303,14 +293,12 @@ TEST_P(SetTo, DifferentVal)
cv
::
Mat
mat
;
cv
::
Mat
mat
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_mat
=
loadMat
(
mat_gold
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_mat
=
loadMat
(
mat_gold
,
useRoi
);
mat_gold
.
setTo
(
s
);
mat_gold
.
setTo
(
s
);
dev_mat
.
setTo
(
s
);
dev_mat
.
setTo
(
s
);
dev_mat
.
download
(
mat
);
dev_mat
.
download
(
mat
);
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
}
}
...
@@ -327,14 +315,12 @@ TEST_P(SetTo, Masked)
...
@@ -327,14 +315,12 @@ TEST_P(SetTo, Masked)
cv
::
Mat
mat
;
cv
::
Mat
mat
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_mat
=
loadMat
(
mat_gold
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_mat
=
loadMat
(
mat_gold
,
useRoi
);
mat_gold
.
setTo
(
s
,
mask
);
mat_gold
.
setTo
(
s
,
mask
);
dev_mat
.
setTo
(
s
,
loadMat
(
mask
,
useRoi
));
dev_mat
.
setTo
(
s
,
loadMat
(
mask
,
useRoi
));
dev_mat
.
download
(
mat
);
dev_mat
.
download
(
mat
);
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
EXPECT_MAT_NEAR
(
mat_gold
,
mat
,
0.0
);
}
}
...
@@ -382,14 +368,12 @@ TEST_P(CopyTo, WithoutMask)
...
@@ -382,14 +368,12 @@ TEST_P(CopyTo, WithoutMask)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_dst
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_dst
=
loadMat
(
src
,
useRoi
);
dev_src
.
copyTo
(
dev_dst
);
dev_src
.
copyTo
(
dev_dst
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -410,14 +394,12 @@ TEST_P(CopyTo, Masked)
...
@@ -410,14 +394,12 @@ TEST_P(CopyTo, Masked)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_dst
=
loadMat
(
zeroMat
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_dst
=
loadMat
(
zeroMat
,
useRoi
);
dev_src
.
copyTo
(
dev_dst
,
loadMat
(
mask
,
useRoi
));
dev_src
.
copyTo
(
dev_dst
,
loadMat
(
mask
,
useRoi
));
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -467,14 +449,12 @@ TEST_P(ConvertTo, WithoutScaling)
...
@@ -467,14 +449,12 @@ TEST_P(ConvertTo, WithoutScaling)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
dev_src
.
convertTo
(
dev_dst
,
depth2
);
dev_src
.
convertTo
(
dev_dst
,
depth2
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold
,
dst
,
0.0
);
}
}
...
@@ -494,15 +474,13 @@ TEST_P(ConvertTo, WithScaling)
...
@@ -494,15 +474,13 @@ TEST_P(ConvertTo, WithScaling)
cv
::
Mat
dst
;
cv
::
Mat
dst
;
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_src
=
loadMat
(
src
,
useRoi
);
cv
::
gpu
::
GpuMat
dev_dst
;
cv
::
gpu
::
GpuMat
dev_dst
;
dev_src
.
convertTo
(
dev_dst
,
depth2
,
a
,
b
);
dev_src
.
convertTo
(
dev_dst
,
depth2
,
a
,
b
);
dev_dst
.
download
(
dst
);
dev_dst
.
download
(
dst
);
);
const
double
eps
=
depth2
<
CV_32F
?
1
:
1e-4
;
const
double
eps
=
depth2
<
CV_32F
?
1
:
1e-4
;
...
@@ -549,30 +527,28 @@ TEST_P(Async, Accuracy)
...
@@ -549,30 +527,28 @@ TEST_P(Async, Accuracy)
{
{
cv
::
Mat
dst0
,
dst1
;
cv
::
Mat
dst0
,
dst1
;
ASSERT_NO_THROW
(
cv
::
gpu
::
CudaMem
cpudst0
;
cv
::
gpu
::
CudaMem
cpudst0
;
cv
::
gpu
::
CudaMem
cpudst1
;
cv
::
gpu
::
CudaMem
cpudst1
;
cv
::
gpu
::
GpuMat
gpusrc
;
cv
::
gpu
::
GpuMat
gpusrc
;
cv
::
gpu
::
GpuMat
gpudst0
;
cv
::
gpu
::
GpuMat
gpudst0
;
cv
::
gpu
::
GpuMat
gpudst1
(
src
.
rows
,
src
.
cols
,
CV_8UC1
);
cv
::
gpu
::
GpuMat
gpudst1
(
src
.
rows
,
src
.
cols
,
CV_8UC1
);
cv
::
gpu
::
Stream
stream0
;
cv
::
gpu
::
Stream
stream0
;
cv
::
gpu
::
Stream
stream1
;
cv
::
gpu
::
Stream
stream1
;
stream0
.
enqueueUpload
(
src
,
gpusrc
);
stream0
.
enqueueUpload
(
src
,
gpusrc
);
cv
::
gpu
::
bitwise_not
(
gpusrc
,
gpudst0
,
cv
::
gpu
::
GpuMat
(),
stream0
);
cv
::
gpu
::
bitwise_not
(
gpusrc
,
gpudst0
,
cv
::
gpu
::
GpuMat
(),
stream0
);
stream0
.
enqueueDownload
(
gpudst0
,
cpudst0
);
stream0
.
enqueueDownload
(
gpudst0
,
cpudst0
);
stream1
.
enqueueMemSet
(
gpudst1
,
cv
::
Scalar
::
all
(
128
));
stream1
.
enqueueMemSet
(
gpudst1
,
cv
::
Scalar
::
all
(
128
));
stream1
.
enqueueDownload
(
gpudst1
,
cpudst1
);
stream1
.
enqueueDownload
(
gpudst1
,
cpudst1
);
stream0
.
waitForCompletion
();
stream0
.
waitForCompletion
();
stream1
.
waitForCompletion
();
stream1
.
waitForCompletion
();
dst0
=
cpudst0
.
createMatHeader
();
dst0
=
cpudst0
.
createMatHeader
();
dst1
=
cpudst1
.
createMatHeader
();
dst1
=
cpudst1
.
createMatHeader
();
);
EXPECT_MAT_NEAR
(
dst_gold0
,
dst0
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold0
,
dst0
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold1
,
dst1
,
0.0
);
EXPECT_MAT_NEAR
(
dst_gold1
,
dst1
,
0.0
);
...
...
modules/gpu/test/test_nvidia.cpp
View file @
75ac4362
...
@@ -88,121 +88,77 @@ OutputLevel nvidiaTestOutputLevel = OutputLevelNone;
...
@@ -88,121 +88,77 @@ OutputLevel nvidiaTestOutputLevel = OutputLevelNone;
TEST_P
(
NPPST
,
Integral
)
TEST_P
(
NPPST
,
Integral
)
{
{
bool
res
;
bool
res
=
nvidia_NPPST_Integral_Image
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NPPST_Integral_Image
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NPPST
,
SquaredIntegral
)
TEST_P
(
NPPST
,
SquaredIntegral
)
{
{
bool
res
;
bool
res
=
nvidia_NPPST_Squared_Integral_Image
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NPPST_Squared_Integral_Image
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NPPST
,
RectStdDev
)
TEST_P
(
NPPST
,
RectStdDev
)
{
{
bool
res
;
bool
res
=
nvidia_NPPST_RectStdDev
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NPPST_RectStdDev
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NPPST
,
Resize
)
TEST_P
(
NPPST
,
Resize
)
{
{
bool
res
;
bool
res
=
nvidia_NPPST_Resize
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NPPST_Resize
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NPPST
,
VectorOperations
)
TEST_P
(
NPPST
,
VectorOperations
)
{
{
bool
res
;
bool
res
=
nvidia_NPPST_Vector_Operations
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NPPST_Vector_Operations
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NPPST
,
Transpose
)
TEST_P
(
NPPST
,
Transpose
)
{
{
bool
res
;
bool
res
=
nvidia_NPPST_Transpose
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NPPST_Transpose
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NCV
,
VectorOperations
)
TEST_P
(
NCV
,
VectorOperations
)
{
{
bool
res
;
bool
res
=
nvidia_NCV_Vector_Operations
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NCV_Vector_Operations
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NCV
,
HaarCascadeLoader
)
TEST_P
(
NCV
,
HaarCascadeLoader
)
{
{
bool
res
;
bool
res
=
nvidia_NCV_Haar_Cascade_Loader
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NCV_Haar_Cascade_Loader
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NCV
,
HaarCascadeApplication
)
TEST_P
(
NCV
,
HaarCascadeApplication
)
{
{
bool
res
;
bool
res
=
nvidia_NCV_Haar_Cascade_Application
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NCV_Haar_Cascade_Application
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NCV
,
HypothesesFiltration
)
TEST_P
(
NCV
,
HypothesesFiltration
)
{
{
bool
res
;
bool
res
=
nvidia_NCV_Hypotheses_Filtration
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NCV_Hypotheses_Filtration
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
TEST_P
(
NCV
,
Visualization
)
TEST_P
(
NCV
,
Visualization
)
{
{
bool
res
;
bool
res
=
nvidia_NCV_Visualization
(
path
,
nvidiaTestOutputLevel
);
ASSERT_NO_THROW
(
res
=
nvidia_NCV_Visualization
(
path
,
nvidiaTestOutputLevel
);
);
ASSERT_TRUE
(
res
);
ASSERT_TRUE
(
res
);
}
}
...
...
modules/gpu/test/test_video.cpp
View file @
75ac4362
...
@@ -117,14 +117,13 @@ TEST_P(BroxOpticalFlow, Regression)
...
@@ -117,14 +117,13 @@ TEST_P(BroxOpticalFlow, Regression)
cv
::
gpu
::
BroxOpticalFlow
d_flow
(
0.197
f
/*alpha*/
,
50.0
f
/*gamma*/
,
0.8
f
/*scale_factor*/
,
cv
::
gpu
::
BroxOpticalFlow
d_flow
(
0.197
f
/*alpha*/
,
50.0
f
/*gamma*/
,
0.8
f
/*scale_factor*/
,
10
/*inner_iterations*/
,
77
/*outer_iterations*/
,
10
/*solver_iterations*/
);
10
/*inner_iterations*/
,
77
/*outer_iterations*/
,
10
/*solver_iterations*/
);
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_u
;
cv
::
gpu
::
GpuMat
d_u
;
cv
::
gpu
::
GpuMat
d_v
;
cv
::
gpu
::
GpuMat
d_v
;
d_flow
(
cv
::
gpu
::
GpuMat
(
frame0
),
cv
::
gpu
::
GpuMat
(
frame1
),
d_u
,
d_v
);
d_flow
(
cv
::
gpu
::
GpuMat
(
frame0
),
cv
::
gpu
::
GpuMat
(
frame1
),
d_u
,
d_v
);
d_u
.
download
(
u
);
d_v
.
download
(
v
);
d_u
.
download
(
u
);
d_flow
.
buf
.
release
();
d_v
.
download
(
v
);
);
#ifndef DUMP
#ifndef DUMP
...
@@ -212,21 +211,23 @@ TEST_P(InterpolateFrames, Regression)
...
@@ -212,21 +211,23 @@ TEST_P(InterpolateFrames, Regression)
cv
::
gpu
::
BroxOpticalFlow
d_flow
(
0.197
f
/*alpha*/
,
50.0
f
/*gamma*/
,
0.8
f
/*scale_factor*/
,
cv
::
gpu
::
BroxOpticalFlow
d_flow
(
0.197
f
/*alpha*/
,
50.0
f
/*gamma*/
,
0.8
f
/*scale_factor*/
,
10
/*inner_iterations*/
,
77
/*outer_iterations*/
,
10
/*solver_iterations*/
);
10
/*inner_iterations*/
,
77
/*outer_iterations*/
,
10
/*solver_iterations*/
);
ASSERT_NO_THROW
(
cv
::
gpu
::
GpuMat
d_frame0
(
frame0
);
cv
::
gpu
::
GpuMat
d_frame0
(
frame0
);
cv
::
gpu
::
GpuMat
d_frame1
(
frame1
);
cv
::
gpu
::
GpuMat
d_frame1
(
frame1
);
cv
::
gpu
::
GpuMat
d_fu
;
cv
::
gpu
::
GpuMat
d_fu
;
cv
::
gpu
::
GpuMat
d_fv
;
cv
::
gpu
::
GpuMat
d_fv
;
cv
::
gpu
::
GpuMat
d_bu
;
cv
::
gpu
::
GpuMat
d_bu
;
cv
::
gpu
::
GpuMat
d_bv
;
cv
::
gpu
::
GpuMat
d_bv
;
cv
::
gpu
::
GpuMat
d_newFrame
;
cv
::
gpu
::
GpuMat
d_buf
;
d_flow
(
d_frame0
,
d_frame1
,
d_fu
,
d_fv
);
d_flow
(
d_frame0
,
d_frame1
,
d_fu
,
d_fv
);
d_flow
(
d_frame1
,
d_frame0
,
d_bu
,
d_bv
);
d_flow
(
d_frame1
,
d_frame0
,
d_bu
,
d_bv
);
cv
::
gpu
::
interpolateFrames
(
d_frame0
,
d_frame1
,
d_fu
,
d_fv
,
d_bu
,
d_bv
,
0.5
f
,
d_newFrame
,
d_buf
);
cv
::
gpu
::
GpuMat
d_newFrame
;
d_newFrame
.
download
(
newFrame
);
cv
::
gpu
::
GpuMat
d_buf
;
d_flow
.
buf
.
release
();
);
cv
::
gpu
::
interpolateFrames
(
d_frame0
,
d_frame1
,
d_fu
,
d_fv
,
d_bu
,
d_bv
,
0.5
f
,
d_newFrame
,
d_buf
);
d_newFrame
.
download
(
newFrame
);
#ifndef DUMP
#ifndef DUMP
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment