transform op• Data kinds: depth → sdf
• Call: import fullseye as fs; fs.ledger.tsdf_from_depth(depth, fx, fy, cx, cy, size=64, bounds=None, trunc=3.0) (implementation को सीधे call करना हो तो import match3d; match3d.tsdf_from_depth(depth, fx, fy, cx, cy, size=64, bounds=None, trunc=3.0), registry से लेना हो तो ops3d.get("tsdf_from_depth"))
depth map (2.5D) → TSDF volume (RGB-D reconstruction का मानक representation)। depth→TSDF conversion।
हर voxel को image पर project किया जाता है, और line of sight पर observed depth से signed truncated distance [-1,1] रखा जाता है (surface के आगे +, पीछे −, surface पर 0)। KinectFusion परिवार का बुनियादी representation।
Grid: bounds=(lo, hi) (X, Y, Z) camera coordinates में हैं (depth_to_points जैसे ही); None हो तो depth को back-project करके बने point cloud का min−2 / max+2 (depth की इकाई में)। Output (size,size,size) float32 है, axis क्रम (Z, Y, X), voxel केंद्र = lo + (i + 0.5)/size·(hi − lo)। ध्यान दें कि bounds का क्रम (x,y,z) और array के axis (z,y,x) उल्टे हैं।
मान: हर voxel केंद्र को u = X·fx/Z + cx, v = Y·fy/Z + cy से pixel पर round किया जाता है, और उस pixel की observed depth d से clip((d − Z)/trunc, −1, 1) निकाला जाता है (trunc depth वाली इकाई में)। Image से बाहर गिरने वाले voxel, जिनकी observed depth 0 या कम हो, और जिनका Z 0 या कम हो, उन्हें +1 (unobserved = free) रखा जाता है (border pixel पर clip करके उन्हें observed जैसा नहीं दिखाया जाता)। नियम: depth 0 invalid मान है।
• सभी depth 0 हों और bounds=None हो, तो point cloud खाली हो जाता है और numpy का min exception देता है।
• यह 1 viewpoint का TSDF है, इसलिए line of sight का पिछला हिस्सा −1 से भर जाता है (बंद object नहीं बनता)।
आगे: voxel_to_mesh(tsdf, iso=0.0) से surface निकालें। Occupancy के लिए sdf_to_occupancy।
• 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 के स्रोत।
• transforms_repr — py -3.11 examples_3d/transforms_repr.py
sdf को input के रूप में लेते हैं)sdf_to_occupancy · fuse_to_voxel · integrate · extract_surface_points · query_distance · sdf_union · sdf_intersect · sdf_subtract
transform)points_to_voxel · gaussians_to_voxel · mesh_to_voxel · mesh_to_points · depth_to_points · voxel_to_mips · voxel_to_mesh · signed_distance_field
*Provenance: match3d.py — 3D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.