calibration.cpp.patch

João Lima, 2012-04-23 04:50 am

Download (1.3 kB)

 
modules/calib3d/src/calibration.cpp (working copy)
166 166
    errNorm = cvNorm( err, 0, CV_L2 );
167 167
    if( errNorm > prevErrNorm )
168 168
    {
169
        lambdaLg10++;
170
        step();
171
        _param = param;
172
        cvZero( err );
173
        _err = err;
174
        state = CHECK_ERR;
175
        return true;
169
        if( ++lambdaLg10 <= 16 )
170
        {
171
            step();
172
            _param = param;
173
            cvZero( err );
174
            _err = err;
175
            state = CHECK_ERR;
176
            return true;
177
        }
176 178
    }
177 179

  
178 180
    lambdaLg10 = MAX(lambdaLg10-1, -16);
......
233 235
    assert( state == CHECK_ERR );
234 236
    if( errNorm > prevErrNorm )
235 237
    {
236
        lambdaLg10++;
237
        step();
238
        _param = param;
239
        errNorm = 0;
240
        _errNorm = &errNorm;
241
        state = CHECK_ERR;
242
        return true;
238
        if( ++lambdaLg10 <= 16 )
239
        {
240
            step();
241
            _param = param;
242
            errNorm = 0;
243
            _errNorm = &errNorm;
244
            state = CHECK_ERR;
245
            return true;
246
        }
243 247
    }
244 248

  
245 249
    lambdaLg10 = MAX(lambdaLg10-1, -16);