oliver-batchelor / multical

Multi-camera calibration using one or more calibration patterns
Other
360 stars 68 forks source link

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

Open santiago2389 opened 3 hours ago

santiago2389 commented 3 hours ago

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 "

oliver-batchelor commented 2 hours ago

No, not really - but then I didn't expect anyone would use this for single-camera calibration!

Cheers, Oliver

On Wed, Sep 25, 2024 at 1:53 AM SANTOSHKAMBLE @.***> wrote:

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 INFO - 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 - Loaded detections from .\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

"

— Reply to this email directly, view it on GitHub https://github.com/oliver-batchelor/multical/issues/68, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAITRZI2SANN4UECYI5MQDTZYFVGVAVCNFSM6AAAAABOYL2HB6VHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2DKNBYGQ2TAOI . You are receiving this because you are subscribed to this thread.Message ID: @.***>