简体   繁体   中英

Distance from the camera to an object.. Error correction

I'm estimating the distance from camera to a chessboard. However, the error is increasing linearly as long as I get far from the pattern. Is that normal? How can I correct that error?

I corrected that error using a simple linear equation and it works but it doesn't depend on camera parameter as I believe it should be, so the correction will be robust: error = 72.51+distNorme*0.0278;

I compute the distance from the Chessboard using OpenCV and my camera parameters following those steps:

1- findChessboardCorners

2- solvePnP

3- ->Distance from the translation vector given by solvePnP

I'll be also interested in correcting the rotation and the translation errors later on when I'll have better pattern for tracking

I'll write an answer to the issue after doing some experiments. I corrected my distance as follow:

Distance_corrected = distNorme+distNorme*correction

distNorme is the distance to the chessboard which is the norm of the translation vector given by solvePnP OpenCV function.

correction is

correction=pixel_size/focal_mm/2 = 2/focal_pixel

The results are better, still have an error increasing linearly though but not very strong as distNorme (distance not corrected).

I'm still seeking for references or documentation of that correction error. I need more details about it.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM