two_view op• Data kinds: image2d × image2d → matrix
• Call: import fullseye as fs; fs.ledger.essential_8point(pts1, pts2, K1, K2=None) (implementation को सीधे call करना हो तो import twoview; twoview.essential_8point(pts1, pts2, K1, K2=None), registry से लेना हो तो ops3d.get("essential_8point"))
corresponding points + K से essential matrix E सीधे। → E (3,3)।
प्रक्रिया: fundamental_8point(pts1, pts2) से F का अनुमान लगाकर E = K2ᵀ F K1 बनाया जाता है, फिर SVD से singular values को (1, 1, 0) से बदला जाता है (essential matrix का गुण। परिणाम का Frobenius norm √2 पर स्थिर होता है)।
• K1 (3,3) image 1 का intrinsic matrix है, K2 छोड़ने पर K1 दोनों images के लिए उपयोग होता है (एक ही camera की मान्यता)।
• correspondence points pixel coordinates (N,2) हैं। सत्यापन और exceptions fundamental_8point जैसे ही हैं (8 points से कम, points की संख्या में बेमेल, non-finite, या (N,2) न होने वाला input ValueError देता है)।
• E का चिह्न अनिश्चित है, और (R, t) 4 candidates में बँट जाता है। decomposition और cheirality से अद्वितीय चुनाव तक सब एक साथ recover_pose करता है।
• outliers के सामने असुरक्षित। planar और pure rotation की degeneracy भी यह op नहीं पकड़ता (recover_pose पकड़ता है)। deterministic।
• depth_sensors — Depth sensors — ranging के सिद्धांत, असली devices के आँकड़े, dropouts कैसे दिखते हैं
• 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 के स्रोत।
• sfm_recon — py -3.11 examples_3d/sfm_recon.py
matrix को input के रूप में लेते हैं)two_view)fundamental_8point · recover_pose · triangulate · sampson_distance
*Provenance: twoview.py — 3D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.