fixed compile warnings and opencv_perf_imgproc failures
This commit is contained in:
parent
944588e732
commit
16d825adbc
@ -31,11 +31,12 @@ PERF_TEST_P(Image_RhoStep_ThetaStep_Threshold, HoughLines,
|
||||
|
||||
Canny(image, image, 0, 0);
|
||||
|
||||
Mat lines;
|
||||
Mat lines_t, lines;
|
||||
declare.time(60);
|
||||
|
||||
TEST_CYCLE() HoughLines(image, lines, rhoStep, thetaStep, threshold);
|
||||
TEST_CYCLE() HoughLines(image, lines_t, rhoStep, thetaStep, threshold);
|
||||
|
||||
transpose(lines, lines);
|
||||
if( !lines_t.empty() )
|
||||
transpose(lines_t, lines);
|
||||
SANITY_CHECK(lines);
|
||||
}
|
||||
|
@ -766,7 +766,7 @@ icvDistanceATS_L1_8u( const cv::Mat& src, cv::Mat& dst )
|
||||
CV_IMPL void
|
||||
cvDistTransform( const void* srcarr, void* dstarr,
|
||||
int distType, int maskSize,
|
||||
const float *mask,
|
||||
const float * /*mask*/,
|
||||
void* labelsarr, int labelType )
|
||||
{
|
||||
cv::Mat src = cv::cvarrToMat(srcarr), dst = cv::cvarrToMat(dstarr);
|
||||
|
@ -88,10 +88,10 @@ HoughLinesStandard( const Mat& img, float rho, float theta,
|
||||
int numrho = cvRound(((width + height) * 2 + 1) / rho);
|
||||
|
||||
AutoBuffer<int> _accum((numangle+2) * (numrho+2));
|
||||
AutoBuffer<int> _sort_buf(numangle * numrho);
|
||||
vector<int> _sort_buf;
|
||||
AutoBuffer<float> _tabSin(numangle);
|
||||
AutoBuffer<float> _tabCos(numangle);
|
||||
int *accum = _accum, *sort_buf = _sort_buf;
|
||||
int *accum = _accum;
|
||||
float *tabSin = _tabSin, *tabCos = _tabCos;
|
||||
|
||||
memset( accum, 0, sizeof(accum[0]) * (numangle+2) * (numrho+2) );
|
||||
@ -124,19 +124,19 @@ HoughLinesStandard( const Mat& img, float rho, float theta,
|
||||
if( accum[base] > threshold &&
|
||||
accum[base] > accum[base - 1] && accum[base] >= accum[base + 1] &&
|
||||
accum[base] > accum[base - numrho - 2] && accum[base] >= accum[base + numrho + 2] )
|
||||
sort_buf[total++] = base;
|
||||
_sort_buf.push_back(base);
|
||||
}
|
||||
|
||||
// stage 3. sort the detected lines by accumulator value
|
||||
std::sort( sort_buf, sort_buf + total, hough_cmp_gt(accum));
|
||||
cv::sort(_sort_buf, hough_cmp_gt(accum));
|
||||
|
||||
// stage 4. store the first min(total,linesMax) lines to the output buffer
|
||||
linesMax = MIN(linesMax, total);
|
||||
linesMax = min(linesMax, (int)_sort_buf.size());
|
||||
double scale = 1./(numrho+2);
|
||||
for( i = 0; i < linesMax; i++ )
|
||||
{
|
||||
LinePolar line;
|
||||
int idx = sort_buf[i];
|
||||
int idx = _sort_buf[i];
|
||||
int n = cvFloor(idx*scale) - 1;
|
||||
int r = idx - (n+1)*(numrho+2) - 1;
|
||||
line.rho = (r - (numrho - 1)*0.5f) * rho;
|
||||
@ -362,11 +362,11 @@ HoughLinesSDiv( const Mat& img,
|
||||
}
|
||||
}
|
||||
|
||||
for( size_t i = 0; i < lst.size(); i++ )
|
||||
for( size_t idx = 0; idx < lst.size(); idx++ )
|
||||
{
|
||||
if( lst[i].rho < 0 )
|
||||
if( lst[idx].rho < 0 )
|
||||
continue;
|
||||
lines.push_back(Vec2f(lst[i].rho, lst[i].theta));
|
||||
lines.push_back(Vec2f(lst[idx].rho, lst[idx].theta));
|
||||
}
|
||||
}
|
||||
|
||||
@ -604,9 +604,9 @@ void cv::HoughLines( InputArray _image, OutputArray _lines,
|
||||
vector<Vec2f> lines;
|
||||
|
||||
if( srn == 0 && stn == 0 )
|
||||
HoughLinesStandard(image, rho, theta, threshold, lines, INT_MAX);
|
||||
HoughLinesStandard(image, (float)rho, (float)theta, threshold, lines, INT_MAX);
|
||||
else
|
||||
HoughLinesSDiv(image, rho, theta, threshold, srn, stn, lines, INT_MAX);
|
||||
HoughLinesSDiv(image, (float)rho, (float)theta, threshold, (float)srn, (float)stn, lines, INT_MAX);
|
||||
|
||||
Mat(lines).copyTo(_lines);
|
||||
}
|
||||
@ -618,7 +618,7 @@ void cv::HoughLinesP(InputArray _image, OutputArray _lines,
|
||||
{
|
||||
Mat image = _image.getMat();
|
||||
vector<Vec4i> lines;
|
||||
HoughLinesProbabilistic(image, rho, theta, threshold, minLineLength, maxGap, lines, INT_MAX);
|
||||
HoughLinesProbabilistic(image, (float)rho, (float)theta, threshold, cvRound(minLineLength), cvRound(maxGap), lines, INT_MAX);
|
||||
Mat(lines).copyTo(_lines);
|
||||
}
|
||||
|
||||
|
@ -205,7 +205,7 @@ void getRectSubPix_Cn_(const _Tp* src, int src_step, Size src_size,
|
||||
|
||||
for( j = r.x*cn; j < r.width*cn; j++ )
|
||||
{
|
||||
_WTp s0 = src[j]*a11 + src[j+cn]*a12 + src2[j]*a21 + src2[j+cn]*a22;
|
||||
s0 = src[j]*a11 + src[j+cn]*a12 + src2[j]*a21 + src2[j+cn]*a22;
|
||||
dst[j] = cast_op(s0);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user