Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 2.702756e-08.

1 view (last 30 days)
hello all
I am using pcregrigid and i am getting this warning.I fell this may detoriate my reconstruction result.
" Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 2.624234e-08.
In pcregrigid>pointToPlaneMetric (line 466)
In pcregrigid (line 253)
In Finalpointcloudstitchingwiththebust (line 27) "
This are the following code in the difffernt lines
--> In pcregrigid>pointToPlaneMetric (line 466)
line 466 X = C\b;
cx = cos(X(1));
cy = cos(X(2));
cz = cos(X(3));
sx = sin(X(1));
sy = sin(X(2));
sz = sin(X(3));
R = [cy*cz, sx*sy*cz-cx*sz, cx*sy*cz+sx*sz;
cy*sz, cx*cz+sx*sy*sz, cx*sy*sz-sx*cz;
-sy, sx*cy, cx*cy];
T = X(4:6);
---> In pcregrigid (line 253)
else % PointToPlane
line 253 [R, T] = pointToPlaneMetric(locA(inlierIndicesA, :), ...
ptCloudB.Location(inlierIndicesB, :), ptCloudB.Normal(inlierIndicesB, :));
end
--> In Finalpointcloudstitchingwiththebust (line 27)
line 27 [tform, ~, Err] = pcregrigid(moving, fixed, 'Metric','pointToPlane','Extrapolate', true);
Can anyone please help me ?
  1 Comment
Christine Tobler
Christine Tobler on 8 Apr 2020
The warning is that the matrix C is badly conditioned, so the first question would be how C is constructed and what could cause it to be badly conditioned.

Sign in to comment.

Answers (1)

Harshendra Shah
Harshendra Shah on 8 Apr 2020
Edited: Harshendra Shah on 8 Apr 2020
This warning message can occur when solving a linear system using the backslash operator (\). They indicate that the system being solved may be poorly conditioned or rank deficient; this can produce incorrect answers. In general the solutions you'll receive are correct, but if you receive these messages it's a good idea to check your results.
Problems with poor conditioning are generally a result of using double-precision arithmetic; you can find more useful information on double-precision arrays here:
Also, if you wish to ignore these warning messages, you can turn the warning indicator by typing ' warning off ' at the MATLAB command prompt. Alternatively, if you do not want to turn these warnings off entirely, you can use the command 'warning on', which will give shorter warning messages.
I hope this helps.

Categories

Find more on Mathematics in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!