mirror of
https://github.com/opencv/opencv.git
synced 2025-01-19 06:53:50 +08:00
Merge pull request #3546 from jet47:cuda-imgproc-fixes
This commit is contained in:
commit
18025c2908
@ -6,4 +6,4 @@ set(the_description "CUDA-accelerated Image Processing")
|
||||
|
||||
ocv_warnings_disable(CMAKE_CXX_FLAGS /wd4127 /wd4100 /wd4324 /wd4512 /wd4515 -Wundef -Wmissing-declarations -Wshadow -Wunused-parameter)
|
||||
|
||||
ocv_define_module(cudaimgproc opencv_imgproc OPTIONAL opencv_cudaarithm opencv_cudafilters)
|
||||
ocv_define_module(cudaimgproc opencv_imgproc OPTIONAL opencv_cudev opencv_cudaarithm opencv_cudafilters)
|
||||
|
@ -275,7 +275,7 @@ PERF_TEST_P(Sz, GeneralizedHoughBallard, CUDA_TYPICAL_MAT_SIZES)
|
||||
}
|
||||
}
|
||||
|
||||
PERF_TEST_P(Sz, GeneralizedHoughGuil, CUDA_TYPICAL_MAT_SIZES)
|
||||
PERF_TEST_P(Sz, DISABLED_GeneralizedHoughGuil, CUDA_TYPICAL_MAT_SIZES)
|
||||
{
|
||||
declare.time(10);
|
||||
|
||||
@ -329,8 +329,6 @@ PERF_TEST_P(Sz, GeneralizedHoughGuil, CUDA_TYPICAL_MAT_SIZES)
|
||||
alg->setTemplate(cv::cuda::GpuMat(templ));
|
||||
|
||||
TEST_CYCLE() alg->detect(d_edges, d_dx, d_dy, positions);
|
||||
|
||||
CUDA_SANITY_CHECK(positions);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -343,7 +341,8 @@ PERF_TEST_P(Sz, GeneralizedHoughGuil, CUDA_TYPICAL_MAT_SIZES)
|
||||
alg->setTemplate(templ);
|
||||
|
||||
TEST_CYCLE() alg->detect(edges, dx, dy, positions);
|
||||
|
||||
CPU_SANITY_CHECK(positions);
|
||||
}
|
||||
|
||||
// The algorithm is not stable yet.
|
||||
SANITY_CHECK_NOTHING();
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -40,422 +40,258 @@
|
||||
//
|
||||
//M*/
|
||||
|
||||
#if !defined CUDA_DISABLER
|
||||
#include "opencv2/opencv_modules.hpp"
|
||||
|
||||
#ifndef HAVE_OPENCV_CUDEV
|
||||
|
||||
#error "opencv_cudev is required"
|
||||
|
||||
#else
|
||||
|
||||
#include "opencv2/core/cuda/common.hpp"
|
||||
#include "opencv2/core/cuda/transform.hpp"
|
||||
#include "opencv2/core/cuda/color.hpp"
|
||||
#include "cvt_color_internal.h"
|
||||
#include "opencv2/cudev.hpp"
|
||||
|
||||
using namespace cv;
|
||||
using namespace cv::cuda;
|
||||
using namespace cv::cudev;
|
||||
|
||||
namespace cv { namespace cuda { namespace device
|
||||
{
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_rgba_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_x = 8 };
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_bgr555_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_bgr555_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_bgr565_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_bgr565_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgr555_to_bgra_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgr555_to_rgba_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgr565_to_bgra_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgr565_to_rgba_traits::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(gray_to_bgra_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(gray_to_bgr555_traits::functor_type)
|
||||
{
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(gray_to_bgr565_traits::functor_type)
|
||||
{
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_yuv4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_yuv4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(yuv4_to_bgra_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(yuv4_to_rgba_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_YCrCb4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_YCrCb4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(YCrCb4_to_bgra_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(YCrCb4_to_rgba_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_xyz4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_xyz4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(xyz4_to_bgra_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(xyz4_to_rgba_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_hsv4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_hsv4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(hsv4_to_bgra_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(hsv4_to_rgba_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(bgra_to_hls4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(rgba_to_hls4_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(hls4_to_bgra_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
OPENCV_CUDA_TRANSFORM_FUNCTOR_TRAITS(hls4_to_rgba_traits<uchar>::functor_type)
|
||||
{
|
||||
enum { smart_block_dim_y = 8 };
|
||||
enum { smart_shift = 4 };
|
||||
};
|
||||
|
||||
#define OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name, traits) \
|
||||
void name(PtrStepSzb src, PtrStepSzb dst, cudaStream_t stream) \
|
||||
#define OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name, func_t) \
|
||||
void name(const GpuMat& src, GpuMat& dst, Stream& stream) \
|
||||
{ \
|
||||
traits::functor_type functor = traits::create_functor(); \
|
||||
typedef typename traits::functor_type::argument_type src_t; \
|
||||
typedef typename traits::functor_type::result_type dst_t; \
|
||||
cv::cuda::device::transform((PtrStepSz<src_t>)src, (PtrStepSz<dst_t>)dst, functor, WithOutMask(), stream); \
|
||||
func_t op; \
|
||||
typedef typename func_t::argument_type src_t; \
|
||||
typedef typename func_t::result_type dst_t; \
|
||||
gridTransformUnary(globPtr<src_t>(src), globPtr<dst_t>(dst), op, stream); \
|
||||
}
|
||||
|
||||
#define OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(name) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name, name ## _traits)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name, name ## _func)
|
||||
|
||||
#define OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(name) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _8u, name ## _traits<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _16u, name ## _traits<ushort>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _32f, name ## _traits<float>)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _8u, name ## _func<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _16u, name ## _func<ushort>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _32f, name ## _func<float>)
|
||||
|
||||
#define OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(name) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _8u, name ## _traits<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _32f, name ## _traits<float>)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _8u, name ## _func<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _32f, name ## _func<float>)
|
||||
|
||||
#define OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(name) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _8u, name ## _traits<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _32f, name ## _traits<float>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _full_8u, name ## _full_traits<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _full_32f, name ## _full_traits<float>)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _8u, name ## _func<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _32f, name ## _func<float>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _FULL_8u, name ## _FULL_func<uchar>) \
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR(name ## _FULL_32f, name ## _FULL_func<float>)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_RGBA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr_to_bgr555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr_to_bgr565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(rgb_to_bgr555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(rgb_to_bgr565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgra_to_bgr555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgra_to_bgr565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(rgba_to_bgr555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(rgba_to_bgr565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_GRAY)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_GRAY)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_GRAY)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_GRAY)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr555_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr565_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr555_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr565_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr555_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr565_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr555_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr565_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(GRAY_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(GRAY_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(gray_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(gray_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_YUV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_YUV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_YUV4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_YUV4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_YUV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_YUV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_YUV4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_YUV4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(gray_to_bgr555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(gray_to_bgr565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YUV4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr555_to_gray)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(bgr565_to_gray)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_YCrCb4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_gray)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_gray)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_gray)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_gray)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_yuv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_yuv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_yuv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_yuv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_yuv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_yuv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_yuv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_yuv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_XYZ)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_XYZ)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGB_to_XYZ4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(RGBA_to_XYZ4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_XYZ)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_XYZ)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGR_to_XYZ4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(BGRA_to_XYZ4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(yuv4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(XYZ4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_YCrCb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_YCrCb4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGB_to_HSV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGBA_to_HSV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGB_to_HSV4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGBA_to_HSV4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGR_to_HSV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGRA_to_HSV)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGR_to_HSV4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGRA_to_HSV4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(YCrCb4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HSV4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_xyz)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_xyz)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgb_to_xyz4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(rgba_to_xyz4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_xyz)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_xyz)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgr_to_xyz4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(bgra_to_xyz4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGB_to_HLS)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGBA_to_HLS)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGB_to_HLS4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(RGBA_to_HLS4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGR_to_HLS)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGRA_to_HLS)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGR_to_HLS4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(BGRA_to_HLS4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL(xyz4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(HLS4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgb_to_hsv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgba_to_hsv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgb_to_hsv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgba_to_hsv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgr_to_hsv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgra_to_hsv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgr_to_hsv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgra_to_hsv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGB_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGBA_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGB_to_Lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGBA_to_Lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGR_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGRA_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGR_to_Lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGRA_to_Lab4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hsv4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGB_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGBA_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGB_to_Lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGBA_to_Lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGR_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGRA_to_Lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGR_to_Lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGRA_to_Lab4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgb_to_hls)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgba_to_hls)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgb_to_hls4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(rgba_to_hls4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgr_to_hls)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgra_to_hls)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgr_to_hls4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(bgra_to_hls4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL(hls4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_LRGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_LRGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_LRGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_LRGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_LBGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_LBGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab_to_LBGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Lab4_to_LBGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgb_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgba_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgb_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgba_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgr_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgra_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgr_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgra_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGB_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGBA_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGB_to_Luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(RGBA_to_Luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGR_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGRA_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGR_to_Luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(BGRA_to_Luv4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgb_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgba_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgb_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgba_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgr_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgra_to_lab)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgr_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgra_to_lab4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGB_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGBA_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGB_to_Luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LRGBA_to_Luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGR_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGRA_to_Luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGR_to_Luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(LBGRA_to_Luv4)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_lrgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_lrgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_lrgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_lrgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_lbgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_lbgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab_to_lbgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lab4_to_lbgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_LRGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_LRGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_LRGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_LRGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_LBGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_LBGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv_to_LBGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(Luv4_to_LBGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgb_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgba_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgb_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(rgba_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgr_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgra_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgr_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(bgra_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR_to_BGR555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR_to_BGR565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(RGB_to_BGR555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(RGB_to_BGR565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGRA_to_BGR555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGRA_to_BGR565)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(RGBA_to_BGR555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(RGBA_to_BGR565)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgb_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgba_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgb_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lrgba_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgr_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgra_to_luv)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgr_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(lbgra_to_luv4)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR555_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR565_to_RGB)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR555_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR565_to_BGR)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR555_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR565_to_RGBA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR555_to_BGRA)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR565_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_rgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_rgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_bgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_bgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(GRAY_to_BGR555)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(GRAY_to_BGR565)
|
||||
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_lrgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_lrgb)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_lrgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_lrgba)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_lbgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_lbgr)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv_to_lbgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F(luv4_to_lbgra)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR555_to_GRAY)
|
||||
OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE(BGR565_to_GRAY)
|
||||
|
||||
#undef OPENCV_CUDA_IMPLEMENT_CVTCOLOR
|
||||
#undef OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ONE
|
||||
#undef OPENCV_CUDA_IMPLEMENT_CVTCOLOR_ALL
|
||||
#undef OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F
|
||||
#undef OPENCV_CUDA_IMPLEMENT_CVTCOLOR_8U32F_FULL
|
||||
}}} // namespace cv { namespace cuda { namespace cudev
|
||||
|
||||
#endif /* CUDA_DISABLER */
|
||||
}}}
|
||||
|
||||
#endif
|
||||
|
@ -218,7 +218,7 @@ namespace cv { namespace cuda { namespace device
|
||||
// Prepared_SQDIFF
|
||||
|
||||
template <int cn>
|
||||
__global__ void matchTemplatePreparedKernel_SQDIFF_8U(int w, int h, const PtrStep<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result)
|
||||
__global__ void matchTemplatePreparedKernel_SQDIFF_8U(int w, int h, const PtrStep<double> image_sqsum, double templ_sqsum, PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
const int y = blockIdx.y * blockDim.y + threadIdx.y;
|
||||
@ -234,7 +234,7 @@ namespace cv { namespace cuda { namespace device
|
||||
}
|
||||
|
||||
template <int cn>
|
||||
void matchTemplatePrepared_SQDIFF_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result, cudaStream_t stream)
|
||||
void matchTemplatePrepared_SQDIFF_8U(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum, PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
const dim3 threads(32, 8);
|
||||
const dim3 grid(divUp(result.cols, threads.x), divUp(result.rows, threads.y));
|
||||
@ -246,10 +246,10 @@ namespace cv { namespace cuda { namespace device
|
||||
cudaSafeCall( cudaDeviceSynchronize() );
|
||||
}
|
||||
|
||||
void matchTemplatePrepared_SQDIFF_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result, int cn,
|
||||
void matchTemplatePrepared_SQDIFF_8U(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum, PtrStepSzf result, int cn,
|
||||
cudaStream_t stream)
|
||||
{
|
||||
typedef void (*caller_t)(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result, cudaStream_t stream);
|
||||
typedef void (*caller_t)(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum, PtrStepSzf result, cudaStream_t stream);
|
||||
|
||||
static const caller_t callers[] =
|
||||
{
|
||||
@ -287,8 +287,8 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
template <int cn>
|
||||
__global__ void matchTemplatePreparedKernel_SQDIFF_NORMED_8U(
|
||||
int w, int h, const PtrStep<unsigned long long> image_sqsum,
|
||||
unsigned long long templ_sqsum, PtrStepSzf result)
|
||||
int w, int h, const PtrStep<double> image_sqsum,
|
||||
double templ_sqsum, PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
const int y = blockIdx.y * blockDim.y + threadIdx.y;
|
||||
@ -305,7 +305,7 @@ namespace cv { namespace cuda { namespace device
|
||||
}
|
||||
|
||||
template <int cn>
|
||||
void matchTemplatePrepared_SQDIFF_NORMED_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum,
|
||||
void matchTemplatePrepared_SQDIFF_NORMED_8U(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
const dim3 threads(32, 8);
|
||||
@ -319,10 +319,10 @@ namespace cv { namespace cuda { namespace device
|
||||
}
|
||||
|
||||
|
||||
void matchTemplatePrepared_SQDIFF_NORMED_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum,
|
||||
void matchTemplatePrepared_SQDIFF_NORMED_8U(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum,
|
||||
PtrStepSzf result, int cn, cudaStream_t stream)
|
||||
{
|
||||
typedef void (*caller_t)(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result, cudaStream_t stream);
|
||||
typedef void (*caller_t)(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum, PtrStepSzf result, cudaStream_t stream);
|
||||
static const caller_t callers[] =
|
||||
{
|
||||
0, matchTemplatePrepared_SQDIFF_NORMED_8U<1>, matchTemplatePrepared_SQDIFF_NORMED_8U<2>, matchTemplatePrepared_SQDIFF_NORMED_8U<3>, matchTemplatePrepared_SQDIFF_NORMED_8U<4>
|
||||
@ -334,7 +334,7 @@ namespace cv { namespace cuda { namespace device
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// Prepared_CCOFF
|
||||
|
||||
__global__ void matchTemplatePreparedKernel_CCOFF_8U(int w, int h, float templ_sum_scale, const PtrStep<unsigned int> image_sum, PtrStepSzf result)
|
||||
__global__ void matchTemplatePreparedKernel_CCOFF_8U(int w, int h, float templ_sum_scale, const PtrStep<int> image_sum, PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
const int y = blockIdx.y * blockDim.y + threadIdx.y;
|
||||
@ -349,7 +349,7 @@ namespace cv { namespace cuda { namespace device
|
||||
}
|
||||
}
|
||||
|
||||
void matchTemplatePrepared_CCOFF_8U(int w, int h, const PtrStepSz<unsigned int> image_sum, unsigned int templ_sum, PtrStepSzf result, cudaStream_t stream)
|
||||
void matchTemplatePrepared_CCOFF_8U(int w, int h, const PtrStepSz<int> image_sum, int templ_sum, PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
dim3 grid(divUp(result.cols, threads.x), divUp(result.rows, threads.y));
|
||||
@ -365,8 +365,8 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
__global__ void matchTemplatePreparedKernel_CCOFF_8UC2(
|
||||
int w, int h, float templ_sum_scale_r, float templ_sum_scale_g,
|
||||
const PtrStep<unsigned int> image_sum_r,
|
||||
const PtrStep<unsigned int> image_sum_g,
|
||||
const PtrStep<int> image_sum_r,
|
||||
const PtrStep<int> image_sum_g,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -388,9 +388,9 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
void matchTemplatePrepared_CCOFF_8UC2(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g,
|
||||
unsigned int templ_sum_r, unsigned int templ_sum_g,
|
||||
const PtrStepSz<int> image_sum_r,
|
||||
const PtrStepSz<int> image_sum_g,
|
||||
int templ_sum_r, int templ_sum_g,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -412,9 +412,9 @@ namespace cv { namespace cuda { namespace device
|
||||
float templ_sum_scale_r,
|
||||
float templ_sum_scale_g,
|
||||
float templ_sum_scale_b,
|
||||
const PtrStep<unsigned int> image_sum_r,
|
||||
const PtrStep<unsigned int> image_sum_g,
|
||||
const PtrStep<unsigned int> image_sum_b,
|
||||
const PtrStep<int> image_sum_r,
|
||||
const PtrStep<int> image_sum_g,
|
||||
const PtrStep<int> image_sum_b,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -440,12 +440,12 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
void matchTemplatePrepared_CCOFF_8UC3(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b,
|
||||
unsigned int templ_sum_r,
|
||||
unsigned int templ_sum_g,
|
||||
unsigned int templ_sum_b,
|
||||
const PtrStepSz<int> image_sum_r,
|
||||
const PtrStepSz<int> image_sum_g,
|
||||
const PtrStepSz<int> image_sum_b,
|
||||
int templ_sum_r,
|
||||
int templ_sum_g,
|
||||
int templ_sum_b,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -471,10 +471,10 @@ namespace cv { namespace cuda { namespace device
|
||||
float templ_sum_scale_g,
|
||||
float templ_sum_scale_b,
|
||||
float templ_sum_scale_a,
|
||||
const PtrStep<unsigned int> image_sum_r,
|
||||
const PtrStep<unsigned int> image_sum_g,
|
||||
const PtrStep<unsigned int> image_sum_b,
|
||||
const PtrStep<unsigned int> image_sum_a,
|
||||
const PtrStep<int> image_sum_r,
|
||||
const PtrStep<int> image_sum_g,
|
||||
const PtrStep<int> image_sum_b,
|
||||
const PtrStep<int> image_sum_a,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -504,14 +504,14 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
void matchTemplatePrepared_CCOFF_8UC4(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b,
|
||||
const PtrStepSz<unsigned int> image_sum_a,
|
||||
unsigned int templ_sum_r,
|
||||
unsigned int templ_sum_g,
|
||||
unsigned int templ_sum_b,
|
||||
unsigned int templ_sum_a,
|
||||
const PtrStepSz<int> image_sum_r,
|
||||
const PtrStepSz<int> image_sum_g,
|
||||
const PtrStepSz<int> image_sum_b,
|
||||
const PtrStepSz<int> image_sum_a,
|
||||
int templ_sum_r,
|
||||
int templ_sum_g,
|
||||
int templ_sum_b,
|
||||
int templ_sum_a,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -537,8 +537,8 @@ namespace cv { namespace cuda { namespace device
|
||||
__global__ void matchTemplatePreparedKernel_CCOFF_NORMED_8U(
|
||||
int w, int h, float weight,
|
||||
float templ_sum_scale, float templ_sqsum_scale,
|
||||
const PtrStep<unsigned int> image_sum,
|
||||
const PtrStep<unsigned long long> image_sqsum,
|
||||
const PtrStep<int> image_sum,
|
||||
const PtrStep<double> image_sqsum,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -559,9 +559,9 @@ namespace cv { namespace cuda { namespace device
|
||||
}
|
||||
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8U(
|
||||
int w, int h, const PtrStepSz<unsigned int> image_sum,
|
||||
const PtrStepSz<unsigned long long> image_sqsum,
|
||||
unsigned int templ_sum, unsigned long long templ_sqsum,
|
||||
int w, int h, const PtrStepSz<int> image_sum,
|
||||
const PtrStepSz<double> image_sqsum,
|
||||
int templ_sum, double templ_sqsum,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -586,8 +586,8 @@ namespace cv { namespace cuda { namespace device
|
||||
int w, int h, float weight,
|
||||
float templ_sum_scale_r, float templ_sum_scale_g,
|
||||
float templ_sqsum_scale,
|
||||
const PtrStep<unsigned int> image_sum_r, const PtrStep<unsigned long long> image_sqsum_r,
|
||||
const PtrStep<unsigned int> image_sum_g, const PtrStep<unsigned long long> image_sqsum_g,
|
||||
const PtrStep<int> image_sum_r, const PtrStep<double> image_sqsum_r,
|
||||
const PtrStep<int> image_sum_g, const PtrStep<double> image_sqsum_g,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -618,10 +618,10 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8UC2(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r, const PtrStepSz<unsigned long long> image_sqsum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g, const PtrStepSz<unsigned long long> image_sqsum_g,
|
||||
unsigned int templ_sum_r, unsigned long long templ_sqsum_r,
|
||||
unsigned int templ_sum_g, unsigned long long templ_sqsum_g,
|
||||
const PtrStepSz<int> image_sum_r, const PtrStepSz<double> image_sqsum_r,
|
||||
const PtrStepSz<int> image_sum_g, const PtrStepSz<double> image_sqsum_g,
|
||||
int templ_sum_r, double templ_sqsum_r,
|
||||
int templ_sum_g, double templ_sqsum_g,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -652,9 +652,9 @@ namespace cv { namespace cuda { namespace device
|
||||
int w, int h, float weight,
|
||||
float templ_sum_scale_r, float templ_sum_scale_g, float templ_sum_scale_b,
|
||||
float templ_sqsum_scale,
|
||||
const PtrStep<unsigned int> image_sum_r, const PtrStep<unsigned long long> image_sqsum_r,
|
||||
const PtrStep<unsigned int> image_sum_g, const PtrStep<unsigned long long> image_sqsum_g,
|
||||
const PtrStep<unsigned int> image_sum_b, const PtrStep<unsigned long long> image_sqsum_b,
|
||||
const PtrStep<int> image_sum_r, const PtrStep<double> image_sqsum_r,
|
||||
const PtrStep<int> image_sum_g, const PtrStep<double> image_sqsum_g,
|
||||
const PtrStep<int> image_sum_b, const PtrStep<double> image_sqsum_b,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -693,12 +693,12 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8UC3(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r, const PtrStepSz<unsigned long long> image_sqsum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g, const PtrStepSz<unsigned long long> image_sqsum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b, const PtrStepSz<unsigned long long> image_sqsum_b,
|
||||
unsigned int templ_sum_r, unsigned long long templ_sqsum_r,
|
||||
unsigned int templ_sum_g, unsigned long long templ_sqsum_g,
|
||||
unsigned int templ_sum_b, unsigned long long templ_sqsum_b,
|
||||
const PtrStepSz<int> image_sum_r, const PtrStepSz<double> image_sqsum_r,
|
||||
const PtrStepSz<int> image_sum_g, const PtrStepSz<double> image_sqsum_g,
|
||||
const PtrStepSz<int> image_sum_b, const PtrStepSz<double> image_sqsum_b,
|
||||
int templ_sum_r, double templ_sqsum_r,
|
||||
int templ_sum_g, double templ_sqsum_g,
|
||||
int templ_sum_b, double templ_sqsum_b,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -732,10 +732,10 @@ namespace cv { namespace cuda { namespace device
|
||||
int w, int h, float weight,
|
||||
float templ_sum_scale_r, float templ_sum_scale_g, float templ_sum_scale_b,
|
||||
float templ_sum_scale_a, float templ_sqsum_scale,
|
||||
const PtrStep<unsigned int> image_sum_r, const PtrStep<unsigned long long> image_sqsum_r,
|
||||
const PtrStep<unsigned int> image_sum_g, const PtrStep<unsigned long long> image_sqsum_g,
|
||||
const PtrStep<unsigned int> image_sum_b, const PtrStep<unsigned long long> image_sqsum_b,
|
||||
const PtrStep<unsigned int> image_sum_a, const PtrStep<unsigned long long> image_sqsum_a,
|
||||
const PtrStep<int> image_sum_r, const PtrStep<double> image_sqsum_r,
|
||||
const PtrStep<int> image_sum_g, const PtrStep<double> image_sqsum_g,
|
||||
const PtrStep<int> image_sum_b, const PtrStep<double> image_sqsum_b,
|
||||
const PtrStep<int> image_sum_a, const PtrStep<double> image_sqsum_a,
|
||||
PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
@ -780,14 +780,14 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8UC4(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r, const PtrStepSz<unsigned long long> image_sqsum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g, const PtrStepSz<unsigned long long> image_sqsum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b, const PtrStepSz<unsigned long long> image_sqsum_b,
|
||||
const PtrStepSz<unsigned int> image_sum_a, const PtrStepSz<unsigned long long> image_sqsum_a,
|
||||
unsigned int templ_sum_r, unsigned long long templ_sqsum_r,
|
||||
unsigned int templ_sum_g, unsigned long long templ_sqsum_g,
|
||||
unsigned int templ_sum_b, unsigned long long templ_sqsum_b,
|
||||
unsigned int templ_sum_a, unsigned long long templ_sqsum_a,
|
||||
const PtrStepSz<int> image_sum_r, const PtrStepSz<double> image_sqsum_r,
|
||||
const PtrStepSz<int> image_sum_g, const PtrStepSz<double> image_sqsum_g,
|
||||
const PtrStepSz<int> image_sum_b, const PtrStepSz<double> image_sqsum_b,
|
||||
const PtrStepSz<int> image_sum_a, const PtrStepSz<double> image_sqsum_a,
|
||||
int templ_sum_r, double templ_sqsum_r,
|
||||
int templ_sum_g, double templ_sqsum_g,
|
||||
int templ_sum_b, double templ_sqsum_b,
|
||||
int templ_sum_a, double templ_sqsum_a,
|
||||
PtrStepSzf result, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
@ -823,8 +823,8 @@ namespace cv { namespace cuda { namespace device
|
||||
|
||||
template <int cn>
|
||||
__global__ void normalizeKernel_8U(
|
||||
int w, int h, const PtrStep<unsigned long long> image_sqsum,
|
||||
unsigned long long templ_sqsum, PtrStepSzf result)
|
||||
int w, int h, const PtrStep<double> image_sqsum,
|
||||
double templ_sqsum, PtrStepSzf result)
|
||||
{
|
||||
const int x = blockIdx.x * blockDim.x + threadIdx.x;
|
||||
const int y = blockIdx.y * blockDim.y + threadIdx.y;
|
||||
@ -838,8 +838,8 @@ namespace cv { namespace cuda { namespace device
|
||||
}
|
||||
}
|
||||
|
||||
void normalize_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum,
|
||||
unsigned long long templ_sqsum, PtrStepSzf result, int cn, cudaStream_t stream)
|
||||
void normalize_8U(int w, int h, const PtrStepSz<double> image_sqsum,
|
||||
double templ_sqsum, PtrStepSzf result, int cn, cudaStream_t stream)
|
||||
{
|
||||
dim3 threads(32, 8);
|
||||
dim3 grid(divUp(result.cols, threads.x), divUp(result.rows, threads.y));
|
||||
|
@ -43,10 +43,12 @@
|
||||
#ifndef __cvt_color_internal_h__
|
||||
#define __cvt_color_internal_h__
|
||||
|
||||
#include "opencv2/core/cuda.hpp"
|
||||
|
||||
namespace cv { namespace cuda { namespace device
|
||||
{
|
||||
#define OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name) \
|
||||
void name(PtrStepSzb src, PtrStepSzb dst, cudaStream_t stream);
|
||||
void name(const GpuMat& _src, GpuMat& _dst, Stream& stream);
|
||||
|
||||
#define OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(name) \
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _8u) \
|
||||
@ -60,210 +62,209 @@ namespace cv { namespace cuda { namespace device
|
||||
#define OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(name) \
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _8u) \
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _32f) \
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _full_8u) \
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _full_32f)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _FULL_8u) \
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(name ## _FULL_32f)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_RGBA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr_to_bgr555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr_to_bgr565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(rgb_to_bgr555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(rgb_to_bgr565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgra_to_bgr555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgra_to_bgr565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(rgba_to_bgr555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(rgba_to_bgr565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_GRAY)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_GRAY)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_GRAY)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_GRAY)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr555_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr565_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr555_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr565_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr555_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr565_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr555_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr565_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(GRAY_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(GRAY_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(gray_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(gray_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_YUV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_YUV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_YUV4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_YUV4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_YUV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_YUV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_YUV4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_YUV4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(gray_to_bgr555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(gray_to_bgr565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YUV4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr555_to_gray)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(bgr565_to_gray)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_YCrCb4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_gray)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_gray)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_gray)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_gray)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_yuv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_yuv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_yuv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_yuv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_yuv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_yuv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_yuv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_yuv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_XYZ)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_XYZ)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGB_to_XYZ4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(RGBA_to_XYZ4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_XYZ)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_XYZ)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGR_to_XYZ4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(BGRA_to_XYZ4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(yuv4_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(XYZ4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_YCrCb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_YCrCb4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGB_to_HSV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGBA_to_HSV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGB_to_HSV4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGBA_to_HSV4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGR_to_HSV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGRA_to_HSV)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGR_to_HSV4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGRA_to_HSV4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(YCrCb4_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HSV4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_xyz)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_xyz)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgb_to_xyz4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(rgba_to_xyz4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_xyz)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_xyz)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgr_to_xyz4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(bgra_to_xyz4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGB_to_HLS)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGBA_to_HLS)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGB_to_HLS4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(RGBA_to_HLS4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGR_to_HLS)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGRA_to_HLS)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGR_to_HLS4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(BGRA_to_HLS4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ALL(xyz4_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(HLS4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgb_to_hsv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgba_to_hsv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgb_to_hsv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgba_to_hsv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgr_to_hsv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgra_to_hsv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgr_to_hsv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgra_to_hsv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGB_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGBA_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGB_to_Lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGBA_to_Lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGR_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGRA_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGR_to_Lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGRA_to_Lab4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hsv4_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGB_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGBA_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGB_to_Lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGBA_to_Lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGR_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGRA_to_Lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGR_to_Lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGRA_to_Lab4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgb_to_hls)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgba_to_hls)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgb_to_hls4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(rgba_to_hls4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgr_to_hls)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgra_to_hls)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgr_to_hls4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(bgra_to_hls4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_LRGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_LRGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_LRGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_LRGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_LBGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_LBGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab_to_LBGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Lab4_to_LBGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F_FULL(hls4_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGB_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGBA_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGB_to_Luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(RGBA_to_Luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGR_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGRA_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGR_to_Luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(BGRA_to_Luv4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgb_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgba_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgb_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgba_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgr_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgra_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgr_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgra_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGB_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGBA_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGB_to_Luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LRGBA_to_Luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGR_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGRA_to_Luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGR_to_Luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(LBGRA_to_Luv4)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgb_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgba_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgb_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgba_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgr_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgra_to_lab)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgr_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgra_to_lab4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_LRGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_LRGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_LRGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_LRGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_LBGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_LBGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv_to_LBGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(Luv4_to_LBGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_lrgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_lrgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_lrgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_lrgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_lbgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_lbgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab_to_lbgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lab4_to_lbgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR_to_BGR555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR_to_BGR565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(RGB_to_BGR555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(RGB_to_BGR565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGRA_to_BGR555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGRA_to_BGR565)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(RGBA_to_BGR555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(RGBA_to_BGR565)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgb_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgba_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgb_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(rgba_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgr_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgra_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgr_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(bgra_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR555_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR565_to_RGB)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR555_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR565_to_BGR)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR555_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR565_to_RGBA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR555_to_BGRA)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR565_to_BGRA)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgb_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgba_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgb_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lrgba_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgr_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgra_to_luv)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgr_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(lbgra_to_luv4)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(GRAY_to_BGR555)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(GRAY_to_BGR565)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_rgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_rgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_bgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_bgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_bgra)
|
||||
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_lrgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_lrgb)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_lrgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_lrgba)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_lbgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_lbgr)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv_to_lbgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_8U32F(luv4_to_lbgra)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR555_to_GRAY)
|
||||
OPENCV_CUDA_DECLARE_CVTCOLOR_ONE(BGR565_to_GRAY)
|
||||
|
||||
#undef OPENCV_CUDA_DECLARE_CVTCOLOR_ONE
|
||||
#undef OPENCV_CUDA_DECLARE_CVTCOLOR_ALL
|
||||
|
@ -61,77 +61,77 @@ namespace cv { namespace cuda { namespace device
|
||||
void matchTemplateNaive_SQDIFF_8U(const PtrStepSzb image, const PtrStepSzb templ, PtrStepSzf result, int cn, cudaStream_t stream);
|
||||
void matchTemplateNaive_SQDIFF_32F(const PtrStepSzb image, const PtrStepSzb templ, PtrStepSzf result, int cn, cudaStream_t stream);
|
||||
|
||||
void matchTemplatePrepared_SQDIFF_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result,
|
||||
void matchTemplatePrepared_SQDIFF_8U(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum, PtrStepSzf result,
|
||||
int cn, cudaStream_t stream);
|
||||
|
||||
void matchTemplatePrepared_SQDIFF_NORMED_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum, unsigned long long templ_sqsum, PtrStepSzf result,
|
||||
void matchTemplatePrepared_SQDIFF_NORMED_8U(int w, int h, const PtrStepSz<double> image_sqsum, double templ_sqsum, PtrStepSzf result,
|
||||
int cn, cudaStream_t stream);
|
||||
|
||||
void matchTemplatePrepared_CCOFF_8U(int w, int h, const PtrStepSz<unsigned int> image_sum, unsigned int templ_sum, PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_8U(int w, int h, const PtrStepSz<int> image_sum, int templ_sum, PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_8UC2(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g,
|
||||
unsigned int templ_sum_r,
|
||||
unsigned int templ_sum_g,
|
||||
const PtrStepSz<int> image_sum_r,
|
||||
const PtrStepSz<int> image_sum_g,
|
||||
int templ_sum_r,
|
||||
int templ_sum_g,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_8UC3(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b,
|
||||
unsigned int templ_sum_r,
|
||||
unsigned int templ_sum_g,
|
||||
unsigned int templ_sum_b,
|
||||
const PtrStepSz<int> image_sum_r,
|
||||
const PtrStepSz<int> image_sum_g,
|
||||
const PtrStepSz<int> image_sum_b,
|
||||
int templ_sum_r,
|
||||
int templ_sum_g,
|
||||
int templ_sum_b,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_8UC4(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b,
|
||||
const PtrStepSz<unsigned int> image_sum_a,
|
||||
unsigned int templ_sum_r,
|
||||
unsigned int templ_sum_g,
|
||||
unsigned int templ_sum_b,
|
||||
unsigned int templ_sum_a,
|
||||
const PtrStepSz<int> image_sum_r,
|
||||
const PtrStepSz<int> image_sum_g,
|
||||
const PtrStepSz<int> image_sum_b,
|
||||
const PtrStepSz<int> image_sum_a,
|
||||
int templ_sum_r,
|
||||
int templ_sum_g,
|
||||
int templ_sum_b,
|
||||
int templ_sum_a,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
|
||||
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8U(
|
||||
int w, int h, const PtrStepSz<unsigned int> image_sum,
|
||||
const PtrStepSz<unsigned long long> image_sqsum,
|
||||
unsigned int templ_sum, unsigned long long templ_sqsum,
|
||||
int w, int h, const PtrStepSz<int> image_sum,
|
||||
const PtrStepSz<double> image_sqsum,
|
||||
int templ_sum, double templ_sqsum,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8UC2(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r, const PtrStepSz<unsigned long long> image_sqsum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g, const PtrStepSz<unsigned long long> image_sqsum_g,
|
||||
unsigned int templ_sum_r, unsigned long long templ_sqsum_r,
|
||||
unsigned int templ_sum_g, unsigned long long templ_sqsum_g,
|
||||
const PtrStepSz<int> image_sum_r, const PtrStepSz<double> image_sqsum_r,
|
||||
const PtrStepSz<int> image_sum_g, const PtrStepSz<double> image_sqsum_g,
|
||||
int templ_sum_r, double templ_sqsum_r,
|
||||
int templ_sum_g, double templ_sqsum_g,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8UC3(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r, const PtrStepSz<unsigned long long> image_sqsum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g, const PtrStepSz<unsigned long long> image_sqsum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b, const PtrStepSz<unsigned long long> image_sqsum_b,
|
||||
unsigned int templ_sum_r, unsigned long long templ_sqsum_r,
|
||||
unsigned int templ_sum_g, unsigned long long templ_sqsum_g,
|
||||
unsigned int templ_sum_b, unsigned long long templ_sqsum_b,
|
||||
const PtrStepSz<int> image_sum_r, const PtrStepSz<double> image_sqsum_r,
|
||||
const PtrStepSz<int> image_sum_g, const PtrStepSz<double> image_sqsum_g,
|
||||
const PtrStepSz<int> image_sum_b, const PtrStepSz<double> image_sqsum_b,
|
||||
int templ_sum_r, double templ_sqsum_r,
|
||||
int templ_sum_g, double templ_sqsum_g,
|
||||
int templ_sum_b, double templ_sqsum_b,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
void matchTemplatePrepared_CCOFF_NORMED_8UC4(
|
||||
int w, int h,
|
||||
const PtrStepSz<unsigned int> image_sum_r, const PtrStepSz<unsigned long long> image_sqsum_r,
|
||||
const PtrStepSz<unsigned int> image_sum_g, const PtrStepSz<unsigned long long> image_sqsum_g,
|
||||
const PtrStepSz<unsigned int> image_sum_b, const PtrStepSz<unsigned long long> image_sqsum_b,
|
||||
const PtrStepSz<unsigned int> image_sum_a, const PtrStepSz<unsigned long long> image_sqsum_a,
|
||||
unsigned int templ_sum_r, unsigned long long templ_sqsum_r,
|
||||
unsigned int templ_sum_g, unsigned long long templ_sqsum_g,
|
||||
unsigned int templ_sum_b, unsigned long long templ_sqsum_b,
|
||||
unsigned int templ_sum_a, unsigned long long templ_sqsum_a,
|
||||
const PtrStepSz<int> image_sum_r, const PtrStepSz<double> image_sqsum_r,
|
||||
const PtrStepSz<int> image_sum_g, const PtrStepSz<double> image_sqsum_g,
|
||||
const PtrStepSz<int> image_sum_b, const PtrStepSz<double> image_sqsum_b,
|
||||
const PtrStepSz<int> image_sum_a, const PtrStepSz<double> image_sqsum_a,
|
||||
int templ_sum_r, double templ_sqsum_r,
|
||||
int templ_sum_g, double templ_sqsum_g,
|
||||
int templ_sum_b, double templ_sqsum_b,
|
||||
int templ_sum_a, double templ_sqsum_a,
|
||||
PtrStepSzf result, cudaStream_t stream);
|
||||
|
||||
void normalize_8U(int w, int h, const PtrStepSz<unsigned long long> image_sqsum,
|
||||
unsigned long long templ_sqsum, PtrStepSzf result, int cn, cudaStream_t stream);
|
||||
void normalize_8U(int w, int h, const PtrStepSz<double> image_sqsum,
|
||||
double templ_sqsum, PtrStepSzf result, int cn, cudaStream_t stream);
|
||||
|
||||
void extractFirstChannel_32F(const PtrStepSzb image, PtrStepSzf result, int cn, cudaStream_t stream);
|
||||
}
|
||||
@ -290,7 +290,7 @@ namespace
|
||||
|
||||
cuda::sqrIntegral(image.reshape(1), image_sqsums_, intBuffer_, stream);
|
||||
|
||||
unsigned long long templ_sqsum = (unsigned long long) cuda::sqrSum(templ.reshape(1))[0];
|
||||
double templ_sqsum = cuda::sqrSum(templ.reshape(1))[0];
|
||||
|
||||
normalize_8U(templ.cols, templ.rows, image_sqsums_, templ_sqsum, result, image.channels(), StreamAccessor::getStream(stream));
|
||||
}
|
||||
@ -361,7 +361,7 @@ namespace
|
||||
|
||||
cuda::sqrIntegral(image.reshape(1), image_sqsums_, intBuffer_, stream);
|
||||
|
||||
unsigned long long templ_sqsum = (unsigned long long) cuda::sqrSum(templ.reshape(1))[0];
|
||||
double templ_sqsum = cuda::sqrSum(templ.reshape(1))[0];
|
||||
|
||||
match_CCORR_.match(image, templ, _result, stream);
|
||||
GpuMat result = _result.getGpuMat();
|
||||
@ -400,7 +400,7 @@ namespace
|
||||
|
||||
cuda::sqrIntegral(image.reshape(1), image_sqsums_, intBuffer_, stream);
|
||||
|
||||
unsigned long long templ_sqsum = (unsigned long long) cuda::sqrSum(templ.reshape(1))[0];
|
||||
double templ_sqsum = cuda::sqrSum(templ.reshape(1))[0];
|
||||
|
||||
match_CCORR_.match(image, templ, _result, stream);
|
||||
GpuMat result = _result.getGpuMat();
|
||||
@ -446,7 +446,7 @@ namespace
|
||||
image_sums_.resize(1);
|
||||
cuda::integral(image, image_sums_[0], intBuffer_, stream);
|
||||
|
||||
unsigned int templ_sum = (unsigned int) cuda::sum(templ)[0];
|
||||
int templ_sum = (int) cuda::sum(templ)[0];
|
||||
|
||||
matchTemplatePrepared_CCOFF_8U(templ.cols, templ.rows, image_sums_[0], templ_sum, result, StreamAccessor::getStream(stream));
|
||||
}
|
||||
@ -465,19 +465,19 @@ namespace
|
||||
case 2:
|
||||
matchTemplatePrepared_CCOFF_8UC2(
|
||||
templ.cols, templ.rows, image_sums_[0], image_sums_[1],
|
||||
(unsigned int) templ_sum[0], (unsigned int) templ_sum[1],
|
||||
(int) templ_sum[0], (int) templ_sum[1],
|
||||
result, StreamAccessor::getStream(stream));
|
||||
break;
|
||||
case 3:
|
||||
matchTemplatePrepared_CCOFF_8UC3(
|
||||
templ.cols, templ.rows, image_sums_[0], image_sums_[1], image_sums_[2],
|
||||
(unsigned int) templ_sum[0], (unsigned int) templ_sum[1], (unsigned int) templ_sum[2],
|
||||
(int) templ_sum[0], (int) templ_sum[1], (int) templ_sum[2],
|
||||
result, StreamAccessor::getStream(stream));
|
||||
break;
|
||||
case 4:
|
||||
matchTemplatePrepared_CCOFF_8UC4(
|
||||
templ.cols, templ.rows, image_sums_[0], image_sums_[1], image_sums_[2], image_sums_[3],
|
||||
(unsigned int) templ_sum[0], (unsigned int) templ_sum[1], (unsigned int) templ_sum[2], (unsigned int) templ_sum[3],
|
||||
(int) templ_sum[0], (int) templ_sum[1], (int) templ_sum[2], (int) templ_sum[3],
|
||||
result, StreamAccessor::getStream(stream));
|
||||
break;
|
||||
default:
|
||||
@ -532,8 +532,8 @@ namespace
|
||||
image_sqsums_.resize(1);
|
||||
cuda::sqrIntegral(image, image_sqsums_[0], intBuffer_, stream);
|
||||
|
||||
unsigned int templ_sum = (unsigned int) cuda::sum(templ)[0];
|
||||
unsigned long long templ_sqsum = (unsigned long long) cuda::sqrSum(templ)[0];
|
||||
int templ_sum = (int) cuda::sum(templ)[0];
|
||||
double templ_sqsum = cuda::sqrSum(templ)[0];
|
||||
|
||||
matchTemplatePrepared_CCOFF_NORMED_8U(
|
||||
templ.cols, templ.rows, image_sums_[0], image_sqsums_[0],
|
||||
@ -561,8 +561,8 @@ namespace
|
||||
templ.cols, templ.rows,
|
||||
image_sums_[0], image_sqsums_[0],
|
||||
image_sums_[1], image_sqsums_[1],
|
||||
(unsigned int)templ_sum[0], (unsigned long long)templ_sqsum[0],
|
||||
(unsigned int)templ_sum[1], (unsigned long long)templ_sqsum[1],
|
||||
(int)templ_sum[0], templ_sqsum[0],
|
||||
(int)templ_sum[1], templ_sqsum[1],
|
||||
result, StreamAccessor::getStream(stream));
|
||||
break;
|
||||
case 3:
|
||||
@ -571,9 +571,9 @@ namespace
|
||||
image_sums_[0], image_sqsums_[0],
|
||||
image_sums_[1], image_sqsums_[1],
|
||||
image_sums_[2], image_sqsums_[2],
|
||||
(unsigned int)templ_sum[0], (unsigned long long)templ_sqsum[0],
|
||||
(unsigned int)templ_sum[1], (unsigned long long)templ_sqsum[1],
|
||||
(unsigned int)templ_sum[2], (unsigned long long)templ_sqsum[2],
|
||||
(int)templ_sum[0], templ_sqsum[0],
|
||||
(int)templ_sum[1], templ_sqsum[1],
|
||||
(int)templ_sum[2], templ_sqsum[2],
|
||||
result, StreamAccessor::getStream(stream));
|
||||
break;
|
||||
case 4:
|
||||
@ -583,10 +583,10 @@ namespace
|
||||
image_sums_[1], image_sqsums_[1],
|
||||
image_sums_[2], image_sqsums_[2],
|
||||
image_sums_[3], image_sqsums_[3],
|
||||
(unsigned int)templ_sum[0], (unsigned long long)templ_sqsum[0],
|
||||
(unsigned int)templ_sum[1], (unsigned long long)templ_sqsum[1],
|
||||
(unsigned int)templ_sum[2], (unsigned long long)templ_sqsum[2],
|
||||
(unsigned int)templ_sum[3], (unsigned long long)templ_sqsum[3],
|
||||
(int)templ_sum[0], templ_sqsum[0],
|
||||
(int)templ_sum[1], templ_sqsum[1],
|
||||
(int)templ_sum[2], templ_sqsum[2],
|
||||
(int)templ_sum[3], templ_sqsum[3],
|
||||
result, StreamAccessor::getStream(stream));
|
||||
break;
|
||||
default:
|
||||
|
@ -90,7 +90,18 @@ CUDA_TEST_P(MatchTemplate8U, Accuracy)
|
||||
cv::Mat dst_gold;
|
||||
cv::matchTemplate(image, templ, dst_gold, method);
|
||||
|
||||
EXPECT_MAT_NEAR(dst_gold, dst, templ_size.area() * 1e-1);
|
||||
cv::Mat h_dst(dst);
|
||||
ASSERT_EQ(dst_gold.size(), h_dst.size());
|
||||
ASSERT_EQ(dst_gold.type(), h_dst.type());
|
||||
for (int y = 0; y < h_dst.rows; ++y)
|
||||
{
|
||||
for (int x = 0; x < h_dst.cols; ++x)
|
||||
{
|
||||
float gold_val = dst_gold.at<float>(y, x);
|
||||
float actual_val = dst_gold.at<float>(y, x);
|
||||
ASSERT_FLOAT_EQ(gold_val, actual_val) << y << ", " << x;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(CUDA_ImgProc, MatchTemplate8U, testing::Combine(
|
||||
@ -138,7 +149,18 @@ CUDA_TEST_P(MatchTemplate32F, Regression)
|
||||
cv::Mat dst_gold;
|
||||
cv::matchTemplate(image, templ, dst_gold, method);
|
||||
|
||||
EXPECT_MAT_NEAR(dst_gold, dst, templ_size.area() * 1e-1);
|
||||
cv::Mat h_dst(dst);
|
||||
ASSERT_EQ(dst_gold.size(), h_dst.size());
|
||||
ASSERT_EQ(dst_gold.type(), h_dst.type());
|
||||
for (int y = 0; y < h_dst.rows; ++y)
|
||||
{
|
||||
for (int x = 0; x < h_dst.cols; ++x)
|
||||
{
|
||||
float gold_val = dst_gold.at<float>(y, x);
|
||||
float actual_val = dst_gold.at<float>(y, x);
|
||||
ASSERT_FLOAT_EQ(gold_val, actual_val) << y << ", " << x;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
INSTANTIATE_TEST_CASE_P(CUDA_ImgProc, MatchTemplate32F, testing::Combine(
|
||||
|
@ -156,7 +156,7 @@ namespace color_cvt_detail
|
||||
const int g = src.y;
|
||||
const int r = bidx == 0 ? src.z : src.x;
|
||||
const int a = src.w;
|
||||
return (ushort) ((b >> 3) | ((g & ~7) << 2) | ((r & ~7) << 7) | (a * 0x8000));
|
||||
return (ushort) ((b >> 3) | ((g & ~7) << 2) | ((r & ~7) << 7) | (a ? 0x8000 : 0));
|
||||
}
|
||||
};
|
||||
|
||||
@ -263,7 +263,8 @@ namespace color_cvt_detail
|
||||
{
|
||||
__device__ ushort operator ()(uchar src) const
|
||||
{
|
||||
return (ushort) (src | (src << 5) | (src << 10));
|
||||
const int t = src >> 3;
|
||||
return (ushort)(t | (t << 5) | (t << 10));
|
||||
}
|
||||
};
|
||||
|
||||
@ -272,7 +273,8 @@ namespace color_cvt_detail
|
||||
{
|
||||
__device__ ushort operator ()(uchar src) const
|
||||
{
|
||||
return (ushort) ((src >> 3) | ((src & ~3) << 3) | ((src & ~7) << 8));
|
||||
const int t = src;
|
||||
return (ushort)((t >> 3) | ((t & ~3) << 3) | ((t & ~7) << 8));
|
||||
}
|
||||
};
|
||||
|
||||
@ -1227,6 +1229,10 @@ namespace color_cvt_detail
|
||||
float G = -0.969256f * X + 1.875991f * Y + 0.041556f * Z;
|
||||
float R = 3.240479f * X - 1.537150f * Y - 0.498535f * Z;
|
||||
|
||||
R = ::fminf(::fmaxf(R, 0.f), 1.f);
|
||||
G = ::fminf(::fmaxf(G, 0.f), 1.f);
|
||||
B = ::fminf(::fmaxf(B, 0.f), 1.f);
|
||||
|
||||
if (srgb)
|
||||
{
|
||||
B = splineInterpolate(B * GAMMA_TAB_SIZE, c_sRGBInvGammaTab, GAMMA_TAB_SIZE);
|
||||
|
Loading…
Reference in New Issue
Block a user