Some changes in sum and mean functions
This commit is contained in:
parent
4dfd40bec0
commit
6af10a2937
@ -464,21 +464,16 @@ cv::Scalar cv::sum( InputArray _src )
|
|||||||
0;
|
0;
|
||||||
if( ippFunc )
|
if( ippFunc )
|
||||||
{
|
{
|
||||||
Ipp64f *res = new Ipp64f[cn];
|
Ipp64f res[4];
|
||||||
if( ippFunc(src.data, src.step[0], sz, res, ippAlgHintAccurate) == ippStsNoErr )
|
if( ippFunc(src.data, src.step[0], sz, res, ippAlgHintAccurate) >= 0 )
|
||||||
{
|
{
|
||||||
Scalar sc;
|
Scalar sc;
|
||||||
for( int i = 0; i < cn; i++ )
|
for( int i = 0; i < cn; i++ )
|
||||||
{
|
{
|
||||||
sc[i] = res[i];
|
sc[i] = res[i];
|
||||||
}
|
}
|
||||||
delete []res;
|
|
||||||
return sc;
|
return sc;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
delete []res;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -575,7 +570,7 @@ cv::Scalar cv::mean( InputArray _src, InputArray _mask )
|
|||||||
if( ippFuncC1 )
|
if( ippFuncC1 )
|
||||||
{
|
{
|
||||||
Ipp64f res;
|
Ipp64f res;
|
||||||
if( ippFuncC1(src.data, src.step[0], mask.data, mask.step[0], sz, &res) == ippStsNoErr )
|
if( ippFuncC1(src.data, src.step[0], mask.data, mask.step[0], sz, &res) >= 0 )
|
||||||
{
|
{
|
||||||
return Scalar(res);
|
return Scalar(res);
|
||||||
}
|
}
|
||||||
@ -589,9 +584,9 @@ cv::Scalar cv::mean( InputArray _src, InputArray _mask )
|
|||||||
if( ippFuncC3 )
|
if( ippFuncC3 )
|
||||||
{
|
{
|
||||||
Ipp64f res1, res2, res3;
|
Ipp64f res1, res2, res3;
|
||||||
if( ippFuncC3(src.data, src.step[0], mask.data, mask.step[0], sz, 1, &res1) == ippStsNoErr &&
|
if( ippFuncC3(src.data, src.step[0], mask.data, mask.step[0], sz, 1, &res1) >= 0 &&
|
||||||
ippFuncC3(src.data, src.step[0], mask.data, mask.step[0], sz, 2, &res2) == ippStsNoErr &&
|
ippFuncC3(src.data, src.step[0], mask.data, mask.step[0], sz, 2, &res2) >= 0 &&
|
||||||
ippFuncC3(src.data, src.step[0], mask.data, mask.step[0], sz, 3, &res3) == ippStsNoErr )
|
ippFuncC3(src.data, src.step[0], mask.data, mask.step[0], sz, 3, &res3) >= 0 )
|
||||||
{
|
{
|
||||||
return Scalar(res1, res2, res3);
|
return Scalar(res1, res2, res3);
|
||||||
}
|
}
|
||||||
@ -616,21 +611,16 @@ cv::Scalar cv::mean( InputArray _src, InputArray _mask )
|
|||||||
0;
|
0;
|
||||||
if( ippFunc )
|
if( ippFunc )
|
||||||
{
|
{
|
||||||
Ipp64f *res = new Ipp64f[cn];
|
Ipp64f res[4];
|
||||||
if( ippFunc(src.data, src.step[0], sz, res, ippAlgHintAccurate) == ippStsNoErr )
|
if( ippFunc(src.data, src.step[0], sz, res, ippAlgHintAccurate) >= 0 )
|
||||||
{
|
{
|
||||||
Scalar sc;
|
Scalar sc;
|
||||||
for( int i = 0; i < cn; i++ )
|
for( int i = 0; i < cn; i++ )
|
||||||
{
|
{
|
||||||
sc[i] = res[i];
|
sc[i] = res[i];
|
||||||
}
|
}
|
||||||
delete []res;
|
|
||||||
return sc;
|
return sc;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
delete []res;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user