camera_calibration_lm — CALIB calibrate op

• Data kinds: keypoints → table

• Call: import fullseye as fs; fs.ledger.camera_calibration_lm(object_points, image_points_list, dist_model='k1k2p1p2k3', image_shape=None) (implementation को सीधे call करना हो तो import calib_lm; calib_lm.camera_calibration_lm(object_points, image_points_list, dist_model='k1k2p1p2k3', image_shape=None), registry से लेना हो तो opscalib.get("camera_calibration_lm"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

Zhang विधि के आरंभिक अनुमान से intrinsics, distortion और सभी poses को LM से एक साथ optimize करके covariance सहित लौटाता है (table)।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

Monocular calibration: Zhang's closed form (calib.camera_calibration) gives the start, then a Levenberg-Marquardt refinement minimises the reprojection error over fx, fy, cx, cy, the distortion coefficients of dist_model and every board pose jointly (Zhang 2000, §3.3; the Brown-Conrady model with OpenCV's coefficient order). The Jacobian is analytic; poses are updated on the left by a small rotation vector. Skew is fixed at 0.

object_points: 板の点 (N, 2) の (x, y)(checkerboard_points など)。image_points_list: 視点ごとの (N, 2) の (row, col)。dist_model: "none"・"k1"・"k1k2"・ "k1k2p1p2"・"k1k2p1p2k3"(既定 = OpenCV の既定と同じ 5 係数)。image_shape: Zhang の閉形式が退化したとき(全部が正面平行など)の初期値に使う。

返す dict: K (3x3)、fx・fy・cx・cy、dist [k1, k2, p1, p2, k3]、poses(板 → カメラの 4x4 の list)、rvecs・tvecs、reproj_rms(全体)、per_view_rms、residuals(視点ごとの (N,2) (row, col))、sigma_px(残差から推定した角の雑音)、covariance(fx, fy, cx, cy, k1, k2, p1, p2, k3 の 9x9 の周辺共分散、固定の係数は 0)、param_std(名前 → 標準偏差)、param_names、init(Zhang の値)、iterations・converged、dist_model、object_points、image_shape。★再投影誤差が小さいことは配置が良いことを意味しない(camera_calibration のノートの実測)。配置の良し悪しは param_std と calibration_uncertainty_map で見る。

Raises ValueError: 視点が 3 未満、点の数が合わない・4 未満・非有限、未知の dist_model、初期値が作れない、LM の途中で板が背後へ回る。

उपयोग की विस्तृत guide

• camera_calibration family guide

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_calibration_truth_map — py -3.11 examples/poc_calibration_truth_map.py

• poc_caltab_chain_truth — py -3.11 examples/poc_caltab_chain_truth.py

• poc_real_chessboard_undistort — py -3.11 examples/poc_real_chessboard_undistort.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

image_points_to_world_plane · contour_to_world_plane_xld · sim_caltab · disp_caltab · calibration_error_map · calibration_uncertainty_map · calibration_next_pose

इसी category के (calibrate)

camera_calibration · find_marks_and_pose · hand_eye_calibration · stereo_calibration_lm


*Provenance: calib_lm.py — CALIB operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.