Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Why optimization is applied when only single camera calibration I am doing? #68

Open
santiago2389 opened this issue Sep 24, 2024 · 2 comments

Comments

@santiago2389
Copy link

santiago2389 commented Sep 24, 2024

I execute for one camera
multical calibrate --boards .\multical\example_boards\charuco_16x22.yaml --cameras cam_1

Is it required to do optimization for single camera calibration?
Logs
"
NFO - Using boards:
INFO - charuco_16x22 CharucoBoard {type='charuco', aruco_dict='4X4_1000', aruco_offset=0, size=(16, 22), num_ids=176, marker_length=0.01875, square_length=0.025, aruco_params={}}
INFO - Found camera directories ['cam_1'] with 1 matching images
INFO - Loading images..
INFO - Loaded 1 images
INFO - {'cam_1': (1920, 1920)}
INFO - Detecting boards..
INFO - Writing detection cache to .\calibration.detections.pkl
INFO - Detected point counts:
INFO - Total: 282, cameras: {'cam_1': 282}, Boards: {'charuco_16x22': 282}
INFO - Calibrating single cameras..
INFO - Calibrated cam_1, with RMS=0.82
INFO - Camera {'dist': array([[ 0.4591, -20.5511, 0.0069, -0.0208, 195.7524]]),
'image_size': (1920, 1920),
'intrinsic': array([[2017.653 , 0. , 893.3121],
[ 0. , 2250.542 , 1036.0125],
[ 0. , 0. , 1. ]])}
INFO -
INFO - Pose counts:
INFO - Total: 1, cameras: {'cam_1': 1}, Boards: {'charuco_16x22': 1}
INFO - Overlaps by camera:
INFO - [[0.]]
INFO - Selected master 0 and pairs []
INFO - Overlaps by board:
INFO - [[0.]]
INFO - Selected master 0 and pairs []
INFO - Initialisation reprojection RMS=0.822, n=282, quantiles=[0.04 0.3915 0.5945 0.9015 3.4076]
INFO - Beginning adjustments (3) enabled: {cameras=True, boards=False, camera_poses=True, board_poses=True, motion=True}, options: {'loss': 'linear', 'tolerance': 0.0001}
INFO - Adjust_outliers 0: reprojection RMS=0.822, n=282, quantiles=[0.04 0.3915 0.5945 0.9015 3.4076]
INFO - Rejecting 0 outliers with error > 4.51 pixels, keeping 282 / 282 inliers, (100.00%)
INFO - Iteration Total nfev Cost Cost reduction Step norm Optimality
INFO - 0 1 9.5335e+01 2.22e+02
INFO - 1 4 9.5126e+01 2.10e-01 4.32e+01 2.08e+04
INFO - 2 5 9.4865e+01 2.61e-01 4.19e+01 2.10e+04
INFO - 3 6 9.4433e+01 4.33e-01 4.66e+01 1.36e+04
INFO - 4 7 9.4034e+01 3.99e-01 5.32e+01 3.19e+03
INFO - 5 8 9.3962e+01 7.15e-02 6.02e+01 3.38e+03
INFO - 6 9 9.3357e+01 6.05e-01 7.62e+00 6.36e+02
INFO - 7 10 9.3293e+01 6.35e-02 1.68e+01 2.02e+03
INFO - 8 11 9.3214e+01 7.92e-02 3.38e+01 7.63e+03
INFO - 9 12 9.3121e+01 9.38e-02 3.42e+01 6.69e+03
INFO - 10 13 9.3029e+01 9.16e-02 3.53e+01 7.14e+03
INFO - 11 14 9.2928e+01 1.01e-01 3.63e+01 8.23e+03
INFO - 12 15 9.2820e+01 1.08e-01 3.71e+01 9.45e+03
INFO - 13 16 9.2725e+01 9.56e-02 3.84e+01 1.16e+04
INFO - 14 17 9.2619e+01 1.06e-01 3.92e+01 1.30e+04
INFO - 15 18 9.2518e+01 1.01e-01 3.97e+01 1.35e+04
INFO - 16 19 9.2442e+01 7.56e-02 4.12e+01 1.54e+04
INFO - 17 20 9.2354e+01 8.89e-02 4.22e+01 1.64e+04
INFO - 18 21 9.2272e+01 8.13e-02 4.30e+01 1.70e+04
INFO - 19 22 9.2193e+01 7.92e-02 4.39e+01 1.74e+04
INFO - 20 23 9.2117e+01 7.57e-02 4.47e+01 1.76e+04
INFO - 21 24 9.2044e+01 7.29e-02 4.56e+01 1.77e+04
INFO - 22 25 9.1975e+01 6.98e-02 4.64e+01 1.77e+04
INFO - 23 26 9.1908e+01 6.67e-02 4.72e+01 1.77e+04
INFO - 24 27 9.1845e+01 6.35e-02 4.79e+01 1.76e+04
INFO - 25 28 9.1782e+01 6.24e-02 4.89e+01 1.72e+04
INFO - 26 29 9.1730e+01 5.21e-02 4.90e+01 1.74e+04
INFO - 27 30 9.1667e+01 6.31e-02 5.07e+01 1.62e+04
INFO - 28 31 9.1632e+01 3.49e-02 4.95e+01 1.72e+04
INFO - 29 32 9.1570e+01 6.23e-02 5.09e+01 1.57e+04
INFO - 30 33 9.1537e+01 3.26e-02 5.08e+01 1.59e+04
INFO - 31 34 9.1487e+01 4.98e-02 5.15e+01 1.47e+04
INFO - 32 35 9.1461e+01 2.60e-02 5.04e+01 1.53e+04
INFO - 33 36 9.1413e+01 4.90e-02 5.27e+01 1.29e+04
INFO - 34 37 9.1400e+01 1.21e-02 5.06e+01 1.42e+04
INFO - 35 38 9.1349e+01 5.12e-02 1.95e+00 5.90e+01
INFO - 36 39 9.1343e+01 5.95e-03 1.25e+01 7.25e+02
INFO - ftol termination condition is satisfied.
INFO - Function evaluations 39, initial cost 9.5335e+01, final cost 9.1343e+01, first-order optimality 7.25e+02.
INFO - Adjust_outliers 1: reprojection RMS=0.805 (0.805), n=282 (282), quantiles=[0.0216 0.3597 0.6001 0.856 3.4226]
INFO - Rejecting 0 outliers with error > 4.28 pixels, keeping 282 / 282 inliers, (100.00%)
INFO - Iteration Total nfev Cost Cost reduction Step norm Optimality
INFO - 0 1 9.1343e+01 7.25e+02
INFO - 1 4 9.1336e+01 7.16e-03 2.76e+01 4.00e+03
INFO - ftol termination condition is satisfied.
INFO - Function evaluations 4, initial cost 9.1343e+01, final cost 9.1336e+01, first-order optimality 4.00e+03.
INFO - Adjust_outliers 2: reprojection RMS=0.805 (0.805), n=282 (282), quantiles=[0.0231 0.358 0.6006 0.8547 3.4226]
INFO - Rejecting 0 outliers with error > 4.27 pixels, keeping 282 / 282 inliers, (100.00%)
INFO - Iteration Total nfev Cost Cost reduction Step norm Optimality
INFO - 0 1 9.1336e+01 4.00e+03
INFO - 1 4 9.1326e+01 9.79e-03 2.60e+01 3.19e+03
INFO - 2 5 9.1316e+01 9.86e-03 2.59e+01 2.62e+03
INFO - 3 7 9.1310e+01 6.12e-03 1.25e+01 2.15e+02
INFO - ftol termination condition is satisfied.
INFO - Function evaluations 7, initial cost 9.1336e+01, final cost 9.1310e+01, first-order optimality 2.15e+02.
INFO - Adjust_outliers end: reprojection RMS=0.805 (0.805), n=282 (282), quantiles=[0.0256 0.3641 0.6001 0.8557 3.4193]
INFO - Exporting calibration to .\calibration.json
INFO - Dumping state and history to .\calibration.pkl
"

@santiago2389 santiago2389 changed the title Why optimization is applied when only one camera calibration I am doing? Why optimization is applied when only single camera calibration I am doing? Sep 24, 2024
@oliver-batchelor
Copy link
Owner

oliver-batchelor commented Sep 24, 2024 via email

@santiago2389
Copy link
Author

Thanks for the clarification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants