Browse Source

Fixed issue #71 and updated LShift and RShift to use IInputArray and IOutputArray.

pull/84/head
Canming Huang 8 years ago
parent
commit
171e228ae3
  1. 2574
      Emgu.CV.Cuda/CudaInvoke.cs
  2. 11
      Emgu.CV.Extern/cudaarithm/cudaarithm_c.cpp
  3. 8
      Emgu.CV.Extern/cudaarithm/cudaarithm_c.h
  4. 1782
      Emgu.CV.Test/AutoTestCuda.cs

2574
Emgu.CV.Cuda/CudaInvoke.cs
File diff suppressed because it is too large
View File

11
Emgu.CV.Extern/cudaarithm/cudaarithm_c.cpp

@ -156,19 +156,18 @@ void cudaMax(cv::_InputArray* src1, cv::_InputArray* src2, cv::_OutputArray* dst
cv::cuda::max(*src1, *src2, *dst, stream ? *stream : cv::cuda::Stream::Null());
}
void cudaGemm(const cv::cuda::GpuMat* src1, const cv::cuda::GpuMat* src2, double alpha,
const cv::cuda::GpuMat* src3, double beta, cv::cuda::GpuMat* dst, int flags, cv::cuda::Stream* stream)
void cudaGemm(cv::_InputArray* src1, cv::_InputArray* src2, double alpha,
cv::_InputArray* src3, double beta, cv::_OutputArray* dst, int flags, cv::cuda::Stream* stream)
{
cv::cuda::GpuMat src3Mat = src3 ? *src3 : cv::cuda::GpuMat();
cv::cuda::gemm(*src1, *src2, alpha, src3Mat, beta, *dst, flags, stream ? *stream : cv::cuda::Stream::Null());
cv::cuda::gemm(*src1, *src2, alpha, *src3, beta, *dst, flags, stream ? *stream : cv::cuda::Stream::Null());
}
void cudaLShift(const cv::cuda::GpuMat* a, CvScalar* scale, cv::cuda::GpuMat* c, cv::cuda::Stream* stream)
void cudaLShift(cv::_InputArray* a, CvScalar* scale, cv::_OutputArray* c, cv::cuda::Stream* stream)
{
cv::cuda::lshift(*a, *scale, *c, stream ? *stream : cv::cuda::Stream::Null());
}
void cudaRShift(const cv::cuda::GpuMat* a, CvScalar* scale, cv::cuda::GpuMat* c, cv::cuda::Stream* stream)
void cudaRShift(cv::_InputArray* a, CvScalar* scale, cv::_OutputArray* c, cv::cuda::Stream* stream)
{
cv::cuda::rshift(*a, *scale, *c, stream ? *stream : cv::cuda::Stream::Null());
}

8
Emgu.CV.Extern/cudaarithm/cudaarithm_c.h

@ -68,12 +68,12 @@ CVAPI(void) cudaMin(cv::_InputArray* src1, cv::_InputArray* src2, cv::_OutputArr
CVAPI(void) cudaMax(cv::_InputArray* src1, cv::_InputArray* src2, cv::_OutputArray* dst, cv::cuda::Stream* stream);
CVAPI(void) cudaGemm(const cv::cuda::GpuMat* src1, const cv::cuda::GpuMat* src2, double alpha,
const cv::cuda::GpuMat* src3, double beta, cv::cuda::GpuMat* dst, int flags, cv::cuda::Stream* stream);
CVAPI(void) cudaGemm(cv::_InputArray* src1, cv::_InputArray* src2, double alpha,
cv::_InputArray* src3, double beta, cv::_OutputArray* dst, int flags, cv::cuda::Stream* stream);
CVAPI(void) cudaLShift(const cv::cuda::GpuMat* a, CvScalar* scale, cv::cuda::GpuMat* c, cv::cuda::Stream* stream);
CVAPI(void) cudaLShift(cv::_InputArray* a, CvScalar* scale, cv::_OutputArray* c, cv::cuda::Stream* stream);
CVAPI(void) cudaRShift(const cv::cuda::GpuMat* a, CvScalar* scale, cv::cuda::GpuMat* c, cv::cuda::Stream* stream);
CVAPI(void) cudaRShift(cv::_InputArray* a, CvScalar* scale, cv::_OutputArray* c, cv::cuda::Stream* stream);
CVAPI(void) cudaAdd(cv::_InputArray* a, cv::_InputArray* b, cv::_OutputArray* c, cv::_InputArray* mask, int dtype, cv::cuda::Stream* stream);

1782
Emgu.CV.Test/AutoTestCuda.cs
File diff suppressed because it is too large
View File

Loading…
Cancel
Save