From c8e22c04c8c71df3df360f02fa547799eaf10435 Mon Sep 17 00:00:00 2001
From: Ilya Lavrenov <ilya.lavrenov@itseez.com>
Date: Fri, 14 Feb 2014 18:55:11 +0400
Subject: [PATCH] extended performance test

---
 modules/imgproc/perf/opencl/perf_color.cpp | 7 +++++--
 modules/imgproc/src/color.cpp              | 2 +-
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/modules/imgproc/perf/opencl/perf_color.cpp b/modules/imgproc/perf/opencl/perf_color.cpp
index 1c6947082..21742fece 100644
--- a/modules/imgproc/perf/opencl/perf_color.cpp
+++ b/modules/imgproc/perf/opencl/perf_color.cpp
@@ -58,7 +58,8 @@ using std::tr1::make_tuple;
 
 CV_ENUM(ConversionTypes, COLOR_RGB2GRAY, COLOR_RGB2BGR, COLOR_RGB2YUV, COLOR_YUV2RGB, COLOR_RGB2YCrCb,
         COLOR_YCrCb2RGB, COLOR_RGB2XYZ, COLOR_XYZ2RGB, COLOR_RGB2HSV, COLOR_HSV2RGB, COLOR_RGB2HLS,
-        COLOR_HLS2RGB, COLOR_BGR5652BGR, COLOR_BGR2BGR565, COLOR_RGBA2mRGBA, COLOR_mRGBA2RGBA, COLOR_YUV2RGB_NV12)
+        COLOR_HLS2RGB, COLOR_BGR5652BGR, COLOR_BGR2BGR565, COLOR_RGBA2mRGBA, COLOR_mRGBA2RGBA, COLOR_YUV2RGB_NV12,
+        COLOR_RGB2Lab, COLOR_Lab2BGR)
 
 typedef tuple<Size, tuple<ConversionTypes, int, int> > CvtColorParams;
 typedef TestBaseWithParam<CvtColorParams> CvtColorFixture;
@@ -82,7 +83,9 @@ OCL_PERF_TEST_P(CvtColorFixture, CvtColor, testing::Combine(
                     make_tuple(ConversionTypes(COLOR_BGR2BGR565), 3, 2),
                     make_tuple(ConversionTypes(COLOR_RGBA2mRGBA), 4, 4),
                     make_tuple(ConversionTypes(COLOR_mRGBA2RGBA), 4, 4),
-                    make_tuple(ConversionTypes(COLOR_YUV2RGB_NV12), 1, 3)
+                    make_tuple(ConversionTypes(COLOR_YUV2RGB_NV12), 1, 3),
+                    make_tuple(ConversionTypes(COLOR_RGB2Lab), 3, 3),
+                    make_tuple(ConversionTypes(COLOR_Lab2BGR), 3, 4)
                     )))
 {
     CvtColorParams params = GetParam();
diff --git a/modules/imgproc/src/color.cpp b/modules/imgproc/src/color.cpp
index 8c4bae62b..5dfcbc956 100644
--- a/modules/imgproc/src/color.cpp
+++ b/modules/imgproc/src/color.cpp
@@ -3158,7 +3158,7 @@ static bool ocl_cvtColor( InputArray _src, OutputArray _dst, int code, int dcn )
                 coeffs[i+bidx*3] = _coeffs[i+6]*_whitept[i];
             }
 
-            Mat(1, 9, CV_32SC1, coeffs).copyTo(ucoeffs);
+            Mat(1, 9, CV_32FC1, coeffs).copyTo(ucoeffs);
         }
 
         _dst.create(sz, CV_MAKETYPE(depth, dcn));