mirror of
https://github.com/opencv/opencv.git
synced 2025-01-18 14:13:15 +08:00
Merge pull request #948 from jet47:cuda-5.5-support
This commit is contained in:
commit
087db2949a
File diff suppressed because it is too large
Load Diff
@ -72,7 +72,7 @@ PERF_TEST_P(Sz_Type_KernelSz, Filters_Blur,
|
||||
|
||||
TEST_CYCLE() cv::gpu::blur(d_src, dst, cv::Size(ksize, ksize));
|
||||
|
||||
GPU_SANITY_CHECK(dst);
|
||||
GPU_SANITY_CHECK(dst, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -103,7 +103,7 @@ PERF_TEST_P(ImagePair, Video_InterpolateFrames,
|
||||
|
||||
TEST_CYCLE() cv::gpu::interpolateFrames(d_frame0, d_frame1, d_fu, d_fv, d_bu, d_bv, 0.5f, newFrame, d_buf);
|
||||
|
||||
GPU_SANITY_CHECK(newFrame);
|
||||
GPU_SANITY_CHECK(newFrame, 1e-4);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -142,7 +142,7 @@ PERF_TEST_P(ImagePair, Video_CreateOpticalFlowNeedleMap,
|
||||
|
||||
TEST_CYCLE() cv::gpu::createOpticalFlowNeedleMap(u, v, vertex, colors);
|
||||
|
||||
GPU_SANITY_CHECK(vertex);
|
||||
GPU_SANITY_CHECK(vertex, 1e-6);
|
||||
GPU_SANITY_CHECK(colors);
|
||||
}
|
||||
else
|
||||
@ -219,8 +219,8 @@ PERF_TEST_P(ImagePair, Video_BroxOpticalFlow,
|
||||
|
||||
TEST_CYCLE() d_flow(d_frame0, d_frame1, u, v);
|
||||
|
||||
GPU_SANITY_CHECK(u);
|
||||
GPU_SANITY_CHECK(v);
|
||||
GPU_SANITY_CHECK(u, 1e-1);
|
||||
GPU_SANITY_CHECK(v, 1e-1);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -153,7 +153,7 @@ namespace cv { namespace gpu { namespace device
|
||||
|
||||
template<typename I> __device__ __forceinline__ bool operator() (const I& a, const I& b) const
|
||||
{
|
||||
I d = a - b;
|
||||
I d = saturate_cast<I>(a - b);
|
||||
return lo.x <= d.x && d.x <= hi.x &&
|
||||
lo.y <= d.y && d.y <= hi.y &&
|
||||
lo.z <= d.z && d.z <= hi.z;
|
||||
@ -169,7 +169,7 @@ namespace cv { namespace gpu { namespace device
|
||||
|
||||
template<typename I> __device__ __forceinline__ bool operator() (const I& a, const I& b) const
|
||||
{
|
||||
I d = a - b;
|
||||
I d = saturate_cast<I>(a - b);
|
||||
return lo.x <= d.x && d.x <= hi.x &&
|
||||
lo.y <= d.y && d.y <= hi.y &&
|
||||
lo.z <= d.z && d.z <= hi.z &&
|
||||
|
@ -48,6 +48,7 @@
|
||||
#include "opencv2/gpu/device/common.hpp"
|
||||
#include "opencv2/gpu/device/emulation.hpp"
|
||||
#include "opencv2/gpu/device/vec_math.hpp"
|
||||
#include "opencv2/gpu/device/functional.hpp"
|
||||
#include "opencv2/gpu/device/limits.hpp"
|
||||
#include "opencv2/gpu/device/dynamic_smem.hpp"
|
||||
|
||||
@ -811,7 +812,7 @@ namespace cv { namespace gpu { namespace device
|
||||
|
||||
const int ind = ::atomicAdd(r_sizes + n, 1);
|
||||
if (ind < maxSize)
|
||||
r_table(n, ind) = p - templCenter;
|
||||
r_table(n, ind) = saturate_cast<short2>(p - templCenter);
|
||||
}
|
||||
|
||||
void buildRTable_gpu(const unsigned int* coordList, const float* thetaList, int pointsCount,
|
||||
@ -855,7 +856,7 @@ namespace cv { namespace gpu { namespace device
|
||||
|
||||
for (int j = 0; j < r_row_size; ++j)
|
||||
{
|
||||
short2 c = p - r_row[j];
|
||||
int2 c = p - r_row[j];
|
||||
|
||||
c.x = __float2int_rn(c.x * idp);
|
||||
c.y = __float2int_rn(c.y * idp);
|
||||
|
@ -102,8 +102,8 @@ GPU_TEST_P(BroxOpticalFlow, Regression)
|
||||
for (int i = 0; i < v_gold.rows; ++i)
|
||||
f.read(v_gold.ptr<char>(i), v_gold.cols * sizeof(float));
|
||||
|
||||
EXPECT_MAT_NEAR(u_gold, u, 0);
|
||||
EXPECT_MAT_NEAR(v_gold, v, 0);
|
||||
EXPECT_MAT_SIMILAR(u_gold, u, 1e-3);
|
||||
EXPECT_MAT_SIMILAR(v_gold, v, 1e-3);
|
||||
#else
|
||||
std::ofstream f(fname.c_str(), std::ios_base::binary);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user