rewrite cuda::cvtColor with new device layer and fix test failures

This commit is contained in:
Vladislav Vinogradov 2014-12-25 11:46:35 +03:00
parent 1bdd86edeb
commit 9b8c3fd675
5 changed files with 834 additions and 991 deletions

View File

@ -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)

File diff suppressed because it is too large Load Diff

View File

@ -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

View File

@ -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

View File

@ -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);