CV_USE_UNROLLED for imgproc
This commit is contained in:
@@ -248,8 +248,9 @@ thresh_8u( const Mat& _src, Mat& _dst, uchar thresh, uchar maxval, int type )
|
||||
{
|
||||
const uchar* src = (const uchar*)(_src.data + _src.step*i);
|
||||
uchar* dst = (uchar*)(_dst.data + _dst.step*i);
|
||||
|
||||
for( j = j_scalar; j <= roi.width - 4; j += 4 )
|
||||
j = j_scalar;
|
||||
#if CV_ENABLE_UNROLLED
|
||||
for( ; j <= roi.width - 4; j += 4 )
|
||||
{
|
||||
uchar t0 = tab[src[j]];
|
||||
uchar t1 = tab[src[j+1]];
|
||||
@@ -263,7 +264,7 @@ thresh_8u( const Mat& _src, Mat& _dst, uchar thresh, uchar maxval, int type )
|
||||
dst[j+2] = t0;
|
||||
dst[j+3] = t1;
|
||||
}
|
||||
|
||||
#endif
|
||||
for( ; j < roi.width; j++ )
|
||||
dst[j] = tab[src[j]];
|
||||
}
|
||||
@@ -619,13 +620,16 @@ getThreshVal_Otsu_8u( const Mat& _src )
|
||||
for( i = 0; i < size.height; i++ )
|
||||
{
|
||||
const uchar* src = _src.data + _src.step*i;
|
||||
for( j = 0; j <= size.width - 4; j += 4 )
|
||||
j = 0;
|
||||
#if CV_ENABLE_UNROLLED
|
||||
for( ; j <= size.width - 4; j += 4 )
|
||||
{
|
||||
int v0 = src[j], v1 = src[j+1];
|
||||
h[v0]++; h[v1]++;
|
||||
v0 = src[j+2]; v1 = src[j+3];
|
||||
h[v0]++; h[v1]++;
|
||||
}
|
||||
#endif
|
||||
for( ; j < size.width; j++ )
|
||||
h[src[j]]++;
|
||||
}
|
||||
@@ -682,8 +686,10 @@ public:
|
||||
{
|
||||
int row0 = std::min(cvRound(range.begin() * src.rows / nStripes), src.rows);
|
||||
int row1 = std::min(cvRound(range.end() * src.rows / nStripes), src.rows);
|
||||
|
||||
//printf("Size = (%d, %d), range[%d,%d), row0 = %d, row1 = %d\n", src.rows, src.cols, range.begin(), range.end(), row0, row1);
|
||||
|
||||
if(0)
|
||||
printf("Size = (%d, %d), range[%d,%d), row0 = %d, row1 = %d\n",
|
||||
src.rows, src.cols, range.begin(), range.end(), row0, row1);
|
||||
|
||||
Mat srcStripe = src.rowRange(row0, row1);
|
||||
Mat dstStripe = dst.rowRange(row0, row1);
|
||||
|
||||
Reference in New Issue
Block a user