Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
e090aa07
Commit
e090aa07
authored
Apr 08, 2014
by
Ilya Lavrenov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
disabled some IPP funcs
parent
a6ef45aa
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
81 additions
and
38 deletions
+81
-38
stat.cpp
modules/core/src/stat.cpp
+1
-1
color.cpp
modules/imgproc/src/color.cpp
+45
-22
deriv.cpp
modules/imgproc/src/deriv.cpp
+2
-0
filter.cpp
modules/imgproc/src/filter.cpp
+1
-1
smooth.cpp
modules/imgproc/src/smooth.cpp
+3
-2
test_color.cpp
modules/imgproc/test/ocl/test_color.cpp
+28
-12
test_precomp.hpp
modules/imgproc/test/test_precomp.hpp
+1
-0
No files found.
modules/core/src/stat.cpp
View file @
e090aa07
...
...
@@ -2030,7 +2030,7 @@ double cv::norm( InputArray _src, int normType, InputArray _mask )
normType
==
NORM_INF
?
(
type
==
CV_8UC1
?
(
ippiMaskNormFuncC1
)
ippiNorm_Inf_8u_C1MR
:
type
==
CV_8SC1
?
(
ippiMaskNormFuncC1
)
ippiNorm_Inf_8s_C1MR
:
type
==
CV_16UC1
?
(
ippiMaskNormFuncC1
)
ippiNorm_Inf_16u_C1MR
:
//
type == CV_16UC1 ? (ippiMaskNormFuncC1)ippiNorm_Inf_16u_C1MR :
type
==
CV_32FC1
?
(
ippiMaskNormFuncC1
)
ippiNorm_Inf_32f_C1MR
:
0
)
:
normType
==
NORM_L1
?
...
...
modules/imgproc/src/color.cpp
View file @
e090aa07
...
...
@@ -200,12 +200,14 @@ void CvtColorLoop(const Mat& src, Mat& dst, const Cvt& cvt)
}
#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR >= 7)
typedef
IppStatus
(
CV_STDCALL
*
ippiReorderFunc
)(
const
void
*
,
int
,
void
*
,
int
,
IppiSize
,
const
int
*
);
typedef
IppStatus
(
CV_STDCALL
*
ippiGeneralFunc
)(
const
void
*
,
int
,
void
*
,
int
,
IppiSize
);
typedef
IppStatus
(
CV_STDCALL
*
ippiColor2GrayFunc
)(
const
void
*
,
int
,
void
*
,
int
,
IppiSize
,
const
Ipp32f
*
);
template
<
typename
Cvt
>
class
CvtColorIPPLoop_Invoker
:
public
ParallelLoopBody
class
CvtColorIPPLoop_Invoker
:
public
ParallelLoopBody
{
public
:
...
...
@@ -251,8 +253,8 @@ bool CvtColorIPPLoopCopy(Mat& src, Mat& dst, const Cvt& cvt)
source
=
temp
;
}
bool
ok
;
parallel_for_
(
Range
(
0
,
source
.
rows
),
CvtColorIPPLoop_Invoker
<
Cvt
>
(
source
,
dst
,
cvt
,
&
ok
),
source
.
total
()
/
(
double
)(
1
<<
16
)
);
//ok = cvt(src.ptr<uchar>(0), (int)src.step[0], dst.ptr<uchar>(0), (int)dst.step[0], src.cols, src.rows
);
parallel_for_
(
Range
(
0
,
source
.
rows
),
CvtColorIPPLoop_Invoker
<
Cvt
>
(
source
,
dst
,
cvt
,
&
ok
),
source
.
total
()
/
(
double
)(
1
<<
16
)
);
return
ok
;
}
...
...
@@ -308,8 +310,8 @@ static ippiReorderFunc ippiSwapChannelsC4RTab[] =
static
ippiColor2GrayFunc
ippiColor2GrayC3Tab
[]
=
{
(
ippiColor2GrayFunc
)
ippiColorToGray_8u_C3C1R
,
0
,
(
ippiColor2GrayFunc
)
ippiColorToGray_16u_C3C1R
,
0
,
0
,
(
ippiColor2GrayFunc
)
ippiColorToGray_32f_C3C1R
,
0
,
0
/*(ippiColor2GrayFunc)ippiColorToGray_8u_C3C1R*/
0
,
0
,
/*(ippiColor2GrayFunc)ippiColorToGray_16u_C3C1R*/
0
,
0
,
0
,
/*(ippiColor2GrayFunc)ippiColorToGray_32f_C3C1R*/
0
,
0
,
0
};
static
ippiColor2GrayFunc
ippiColor2GrayC4Tab
[]
=
...
...
@@ -339,18 +341,18 @@ static ippiGeneralFunc ippiCopyP3C3RTab[] =
static
ippiGeneralFunc
ippiRGB2XYZTab
[]
=
{
(
ippiGeneralFunc
)
ippiRGBToXYZ_8u_C3R
,
0
,
(
ippiGeneralFunc
)
ippiRGBToXYZ_16u_C3R
,
0
,
0
,
(
ippiGeneralFunc
)
ippiRGBToXYZ_32f_C3R
,
0
,
0
0
,
/*(ippiGeneralFunc)ippiRGBToXYZ_32f_C3R*/
0
,
0
,
0
};
static
ippiGeneralFunc
ippiXYZ2RGBTab
[]
=
{
(
ippiGeneralFunc
)
ippiXYZToRGB_8u_C3R
,
0
,
(
ippiGeneralFunc
)
ippiXYZToRGB_16u_C3R
,
0
,
0
,
(
ippiGeneralFunc
)
ippiXYZToRGB_32f_C3R
,
0
,
0
0
,
/*(ippiGeneralFunc)ippiXYZToRGB_32f_C3R*/
0
,
0
,
0
};
static
ippiGeneralFunc
ippiRGB2HSVTab
[]
=
{
(
ippiGeneralFunc
)
ippiRGBToHSV_8u_C3R
,
0
,
(
ippiGeneralFunc
)
ippiRGBToHSV_16u_C3R
,
0
,
/*(ippiGeneralFunc)ippiRGBToHSV_8u_C3R*/
0
,
0
,
/*(ippiGeneralFunc)ippiRGBToHSV_16u_C3R*/
0
,
0
,
0
,
0
,
0
,
0
};
...
...
@@ -377,7 +379,7 @@ struct IPPGeneralFunctor
IPPGeneralFunctor
(
ippiGeneralFunc
_func
)
:
func
(
_func
){}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
return
func
(
src
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
))
>=
0
;
return
func
?
func
(
src
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
))
>=
0
:
false
;
}
private
:
ippiGeneralFunc
func
;
...
...
@@ -394,7 +396,7 @@ struct IPPReorderFunctor
}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
return
func
(
src
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
),
order
)
>=
0
;
return
func
?
func
(
src
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
),
order
)
>=
0
:
false
;
}
private
:
ippiReorderFunc
func
;
...
...
@@ -403,7 +405,8 @@ private:
struct
IPPColor2GrayFunctor
{
IPPColor2GrayFunctor
(
ippiColor2GrayFunc
_func
)
:
func
(
_func
)
IPPColor2GrayFunctor
(
ippiColor2GrayFunc
_func
)
:
func
(
_func
)
{
coeffs
[
0
]
=
0.114
f
;
coeffs
[
1
]
=
0.587
f
;
...
...
@@ -411,7 +414,7 @@ struct IPPColor2GrayFunctor
}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
return
func
(
src
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
),
coeffs
)
>=
0
;
return
func
?
func
(
src
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
),
coeffs
)
>=
0
:
false
;
}
private
:
ippiColor2GrayFunc
func
;
...
...
@@ -420,9 +423,16 @@ private:
struct
IPPGray2BGRFunctor
{
IPPGray2BGRFunctor
(
ippiGeneralFunc
_func
)
:
func
(
_func
){}
IPPGray2BGRFunctor
(
ippiGeneralFunc
_func
)
:
func
(
_func
)
{
}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
if
(
func
==
0
)
return
false
;
const
void
*
srcarray
[
3
]
=
{
src
,
src
,
src
};
return
func
(
srcarray
,
srcStep
,
dst
,
dstStep
,
ippiSize
(
cols
,
rows
))
>=
0
;
}
...
...
@@ -432,9 +442,16 @@ private:
struct
IPPGray2BGRAFunctor
{
IPPGray2BGRAFunctor
(
ippiGeneralFunc
_func1
,
ippiReorderFunc
_func2
,
int
_depth
)
:
func1
(
_func1
),
func2
(
_func2
),
depth
(
_depth
){}
IPPGray2BGRAFunctor
(
ippiGeneralFunc
_func1
,
ippiReorderFunc
_func2
,
int
_depth
)
:
func1
(
_func1
),
func2
(
_func2
),
depth
(
_depth
)
{
}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
if
(
func1
==
0
||
func2
==
0
)
return
false
;
const
void
*
srcarray
[
3
]
=
{
src
,
src
,
src
};
Mat
temp
(
rows
,
cols
,
CV_MAKETYPE
(
depth
,
3
));
if
(
func1
(
srcarray
,
srcStep
,
temp
.
data
,
(
int
)
temp
.
step
[
0
],
ippiSize
(
cols
,
rows
))
<
0
)
...
...
@@ -450,7 +467,8 @@ private:
struct
IPPReorderGeneralFunctor
{
IPPReorderGeneralFunctor
(
ippiReorderFunc
_func1
,
ippiGeneralFunc
_func2
,
int
_order0
,
int
_order1
,
int
_order2
,
int
_depth
)
:
func1
(
_func1
),
func2
(
_func2
),
depth
(
_depth
)
IPPReorderGeneralFunctor
(
ippiReorderFunc
_func1
,
ippiGeneralFunc
_func2
,
int
_order0
,
int
_order1
,
int
_order2
,
int
_depth
)
:
func1
(
_func1
),
func2
(
_func2
),
depth
(
_depth
)
{
order
[
0
]
=
_order0
;
order
[
1
]
=
_order1
;
...
...
@@ -459,6 +477,9 @@ struct IPPReorderGeneralFunctor
}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
if
(
func1
==
0
||
func2
==
0
)
return
false
;
Mat
temp
;
temp
.
create
(
rows
,
cols
,
CV_MAKETYPE
(
depth
,
3
));
if
(
func1
(
src
,
srcStep
,
temp
.
data
,
(
int
)
temp
.
step
[
0
],
ippiSize
(
cols
,
rows
),
order
)
<
0
)
...
...
@@ -474,7 +495,8 @@ private:
struct
IPPGeneralReorderFunctor
{
IPPGeneralReorderFunctor
(
ippiGeneralFunc
_func1
,
ippiReorderFunc
_func2
,
int
_order0
,
int
_order1
,
int
_order2
,
int
_depth
)
:
func1
(
_func1
),
func2
(
_func2
),
depth
(
_depth
)
IPPGeneralReorderFunctor
(
ippiGeneralFunc
_func1
,
ippiReorderFunc
_func2
,
int
_order0
,
int
_order1
,
int
_order2
,
int
_depth
)
:
func1
(
_func1
),
func2
(
_func2
),
depth
(
_depth
)
{
order
[
0
]
=
_order0
;
order
[
1
]
=
_order1
;
...
...
@@ -483,6 +505,9 @@ struct IPPGeneralReorderFunctor
}
bool
operator
()(
const
void
*
src
,
int
srcStep
,
void
*
dst
,
int
dstStep
,
int
cols
,
int
rows
)
const
{
if
(
func1
==
0
||
func2
==
0
)
return
false
;
Mat
temp
;
temp
.
create
(
rows
,
cols
,
CV_MAKETYPE
(
depth
,
3
));
if
(
func1
(
src
,
srcStep
,
temp
.
data
,
(
int
)
temp
.
step
[
0
],
ippiSize
(
cols
,
rows
))
<
0
)
...
...
@@ -495,6 +520,7 @@ private:
int
order
[
4
];
int
depth
;
};
#endif
////////////////// Various 3/4-channel to 3/4-channel RGB transformations /////////////////
...
...
@@ -3315,17 +3341,14 @@ void cv::cvtColor( InputArray _src, OutputArray _dst, int code, int dcn )
CV_Assert
(
scn
==
3
||
scn
==
4
);
_dst
.
create
(
sz
,
CV_MAKETYPE
(
depth
,
1
));
dst
=
_dst
.
getMat
();
/**/
#if defined (HAVE_IPP) && (IPP_VERSION_MAJOR >= 7)
/*
if
(
code
==
CV_BGR2GRAY
)
{
if
(
CvtColorIPPLoop
(
src
,
dst
,
IPPColor2GrayFunctor
(
ippiColor2GrayC3Tab
[
depth
]))
)
return
;
}
else
*/
if
(
code
==
CV_RGB2GRAY
)
else
if
(
code
==
CV_RGB2GRAY
)
{
if
(
CvtColorIPPLoop
(
src
,
dst
,
IPPGeneralFunctor
(
ippiRGB2GrayC3Tab
[
depth
]))
)
return
;
...
...
@@ -3341,7 +3364,7 @@ void cv::cvtColor( InputArray _src, OutputArray _dst, int code, int dcn )
return
;
}
#endif
/**/
bidx
=
code
==
CV_BGR2GRAY
||
code
==
CV_BGRA2GRAY
?
0
:
2
;
if
(
depth
==
CV_8U
)
...
...
modules/imgproc/src/deriv.cpp
View file @
e090aa07
...
...
@@ -341,6 +341,7 @@ static bool IPPDeriv(const Mat& src, Mat& dst, int ddepth, int dx, int dy, int k
if
(
src
.
type
()
==
CV_32F
&&
dst
.
type
()
==
CV_32F
)
{
#if 0
if ((dx == 1) && (dy == 0))
{
if (0 > ippiFilterSobelNegVertGetBufferSize_32f_C1R(ippiSize(src.cols, src.rows), (IppiMaskSize)(ksize*10+ksize), &bufSize))
...
...
@@ -374,6 +375,7 @@ static bool IPPDeriv(const Mat& src, Mat& dst, int ddepth, int dx, int dy, int k
ippiMulC_32f_C1R((Ipp32f *)dst.data, (int)dst.step, (Ipp32f)scale, (Ipp32f *)dst.data, (int)dst.step, ippiSize(dst.cols*dst.channels(), dst.rows));
return true;
}
#endif
if
((
dx
==
2
)
&&
(
dy
==
0
))
{
...
...
modules/imgproc/src/filter.cpp
View file @
e090aa07
...
...
@@ -1464,7 +1464,7 @@ private:
int
ippiOperator
(
const
uchar
*
_src
,
uchar
*
_dst
,
int
width
,
int
cn
)
const
{
int
_ksize
=
kernel
.
rows
+
kernel
.
cols
-
1
;
if
((
1
!=
cn
&&
3
!=
cn
)
||
width
<
_ksize
*
8
)
//
if ((1 != cn && 3 != cn) || width < _ksize*8)
return
0
;
const
float
*
src
=
(
const
float
*
)
_src
;
...
...
modules/imgproc/src/smooth.cpp
View file @
e090aa07
...
...
@@ -2329,13 +2329,14 @@ bilateralFilter_8u( const Mat& src, Mat& dst, int d,
Mat
temp
;
copyMakeBorder
(
src
,
temp
,
radius
,
radius
,
radius
,
radius
,
borderType
);
#if defined HAVE_IPP && (IPP_VERSION_MAJOR >= 7)
#if defined HAVE_IPP && (IPP_VERSION_MAJOR >= 7)
&& 0
if
(
cn
==
1
)
{
bool
ok
;
IPPBilateralFilter_8u_Invoker
body
(
temp
,
dst
,
sigma_color
*
sigma_color
,
sigma_space
*
sigma_space
,
radius
,
&
ok
);
parallel_for_
(
Range
(
0
,
dst
.
rows
),
body
,
dst
.
total
()
/
(
double
)(
1
<<
16
));
if
(
ok
)
return
;
if
(
ok
)
return
;
}
#endif
...
...
modules/imgproc/test/ocl/test_color.cpp
View file @
e090aa07
...
...
@@ -155,15 +155,23 @@ OCL_TEST_P(CvtColor, YCrCb2BGRA) { performTest(3, 4, CVTCODE(YCrCb2BGR)); }
// RGB <-> XYZ
OCL_TEST_P
(
CvtColor
,
RGB2XYZ
)
{
performTest
(
3
,
3
,
CVTCODE
(
RGB2XYZ
));
}
OCL_TEST_P
(
CvtColor
,
BGR2XYZ
)
{
performTest
(
3
,
3
,
CVTCODE
(
BGR2XYZ
));
}
OCL_TEST_P
(
CvtColor
,
RGBA2XYZ
)
{
performTest
(
4
,
3
,
CVTCODE
(
RGB2XYZ
));
}
OCL_TEST_P
(
CvtColor
,
BGRA2XYZ
)
{
performTest
(
4
,
3
,
CVTCODE
(
BGR2XYZ
));
}
#if IPP_VERSION_X100 > 0
#define IPP_EPS depth <= CV_32S ? 1 : 4e-5
#else
#define IPP_EPS 0
#endif
OCL_TEST_P
(
CvtColor
,
RGB2XYZ
)
{
performTest
(
3
,
3
,
CVTCODE
(
RGB2XYZ
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
BGR2XYZ
)
{
performTest
(
3
,
3
,
CVTCODE
(
BGR2XYZ
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
RGBA2XYZ
)
{
performTest
(
4
,
3
,
CVTCODE
(
RGB2XYZ
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
BGRA2XYZ
)
{
performTest
(
4
,
3
,
CVTCODE
(
BGR2XYZ
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
XYZ2RGB
)
{
performTest
(
3
,
3
,
CVTCODE
(
XYZ2RGB
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
XYZ2BGR
)
{
performTest
(
3
,
3
,
CVTCODE
(
XYZ2BGR
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
XYZ2RGBA
)
{
performTest
(
3
,
4
,
CVTCODE
(
XYZ2RGB
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
XYZ2BGRA
)
{
performTest
(
3
,
4
,
CVTCODE
(
XYZ2BGR
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor
,
XYZ2RGB
)
{
performTest
(
3
,
3
,
CVTCODE
(
XYZ2RGB
));
}
OCL_TEST_P
(
CvtColor
,
XYZ2BGR
)
{
performTest
(
3
,
3
,
CVTCODE
(
XYZ2BGR
));
}
OCL_TEST_P
(
CvtColor
,
XYZ2RGBA
)
{
performTest
(
3
,
4
,
CVTCODE
(
XYZ2RGB
));
}
OCL_TEST_P
(
CvtColor
,
XYZ2BGRA
)
{
performTest
(
3
,
4
,
CVTCODE
(
XYZ2BGR
));
}
#undef IPP_EPS
// RGB <-> HSV
...
...
@@ -191,15 +199,21 @@ OCL_TEST_P(CvtColor8u32f, HSV2BGRA_FULL) { performTest(3, 4, CVTCODE(HSV2BGR_FUL
// RGB <-> HLS
#if IPP_VERSION_X100 > 0
#define IPP_EPS depth == CV_8U ? 2 : 1e-3
#else
#define IPP_EPS depth == CV_8U ? 1 : 1e-3
#endif
OCL_TEST_P
(
CvtColor8u32f
,
RGB2HLS
)
{
performTest
(
3
,
3
,
CVTCODE
(
RGB2HLS
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
BGR2HLS
)
{
performTest
(
3
,
3
,
CVTCODE
(
BGR2HLS
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
RGBA2HLS
)
{
performTest
(
4
,
3
,
CVTCODE
(
RGB2HLS
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
BGRA2HLS
)
{
performTest
(
4
,
3
,
CVTCODE
(
BGR2HLS
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
RGB2HLS_FULL
)
{
performTest
(
3
,
3
,
CVTCODE
(
RGB2HLS_FULL
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
BGR2HLS_FULL
)
{
performTest
(
3
,
3
,
CVTCODE
(
BGR2HLS_FULL
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
RGBA2HLS_FULL
)
{
performTest
(
4
,
3
,
CVTCODE
(
RGB2HLS_FULL
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
BGRA2HLS_FULL
)
{
performTest
(
4
,
3
,
CVTCODE
(
BGR2HLS_FULL
),
depth
==
CV_8U
?
1
:
1e-3
);
}
OCL_TEST_P
(
CvtColor8u32f
,
RGB2HLS_FULL
)
{
performTest
(
3
,
3
,
CVTCODE
(
RGB2HLS_FULL
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor8u32f
,
BGR2HLS_FULL
)
{
performTest
(
3
,
3
,
CVTCODE
(
BGR2HLS_FULL
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor8u32f
,
RGBA2HLS_FULL
)
{
performTest
(
4
,
3
,
CVTCODE
(
RGB2HLS_FULL
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor8u32f
,
BGRA2HLS_FULL
)
{
performTest
(
4
,
3
,
CVTCODE
(
BGR2HLS_FULL
),
IPP_EPS
);
}
OCL_TEST_P
(
CvtColor8u32f
,
HLS2RGB
)
{
performTest
(
3
,
3
,
CVTCODE
(
HLS2RGB
),
1
);
}
OCL_TEST_P
(
CvtColor8u32f
,
HLS2BGR
)
{
performTest
(
3
,
3
,
CVTCODE
(
HLS2BGR
),
1
);
}
...
...
@@ -211,6 +225,8 @@ OCL_TEST_P(CvtColor8u32f, HLS2BGR_FULL) { performTest(3, 3, CVTCODE(HLS2BGR_FULL
OCL_TEST_P
(
CvtColor8u32f
,
HLS2RGBA_FULL
)
{
performTest
(
3
,
4
,
CVTCODE
(
HLS2RGB_FULL
),
1
);
}
OCL_TEST_P
(
CvtColor8u32f
,
HLS2BGRA_FULL
)
{
performTest
(
3
,
4
,
CVTCODE
(
HLS2BGR_FULL
),
1
);
}
#undef IPP_EPS
// RGB5x5 <-> RGB
typedef
CvtColor
CvtColor8u
;
...
...
modules/imgproc/test/test_precomp.hpp
View file @
e090aa07
...
...
@@ -11,6 +11,7 @@
#include <iostream>
#include "opencv2/ts.hpp"
#include "opencv2/core/private.hpp"
#include "opencv2/imgproc.hpp"
#include "opencv2/highgui.hpp"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment