Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 17 additions & 1 deletion modules/cudev/include/opencv2/cudev/warp/shuffle.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -334,12 +334,28 @@ __device__ __forceinline__ uint shfl_down(uint val, uint delta, int width = warp

__device__ __forceinline__ signed long long shfl_down(signed long long val, uint delta, int width = warpSize)
{
#if defined __CUDACC_VER_MAJOR__ < 9
union { long long ll; int2 i2; } u;
u.ll = val;
u.i2.x = __shfl_down(u.i2.x, delta, width);
u.i2.y = __shfl_down(u.i2.y, delta, width);
return u.ll;
#else
return __shfl_down(val, delta, width);
#endif
}

__device__ __forceinline__ unsigned long long shfl_down(unsigned long long val, uint delta, int width = warpSize)
{
return (unsigned long long) __shfl_down(val, delta, width);
#if defined __CUDACC_VER_MAJOR__ < 9
union { unsigned long long ull; uint2 u2; } u;
u.ull = val;
u.u2.x = __shfl_down(static_cast<int>(u.u2.x), delta, width);
u.u2.y = __shfl_down(static_cast<int>(u.u2.y), delta, width);
return u.ull;
#else
return __shfl_down(val, delta, width);
#endif
}

__device__ __forceinline__ float shfl_down(float val, uint delta, int width = warpSize)
Expand Down
10 changes: 10 additions & 0 deletions modules/ximgproc/misc/java/gen_dict.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"missing_consts": {
"Ximgproc": {
"public": [
["RO_STRICT", 0],
["RO_IGNORE_BORDERS", 1]
]
}
}
}
21 changes: 21 additions & 0 deletions modules/ximgproc/misc/java/test/XimgprocTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package org.opencv.test.ximgproc;

import org.opencv.core.Core;
import org.opencv.core.CvType;
import org.opencv.core.Mat;
import org.opencv.core.Point;
import org.opencv.test.OpenCVTestCase;
import org.opencv.ximgproc.Ximgproc;

public class XimgprocTest extends OpenCVTestCase {

public void testHoughPoint2Line() {
Mat src = new Mat(80, 80, CvType.CV_8UC1, new org.opencv.core.Scalar(0));
Point houghPoint = new Point(40, 40);

int[] result = Ximgproc.HoughPoint2Line(houghPoint, src, Ximgproc.ARO_315_135, Ximgproc.HDO_DESKEW, Ximgproc.RO_IGNORE_BORDERS);

assertNotNull(result);
assertEquals(4, result.length);
}
}
Loading