morphology op• Data kinds: voxel → voxel
• Call: import fullseye as fs; fs.ledger.morph_erode3d(vol, r=1, device='cpu', se='cube') (implementation को सीधे call करना हो तो import match3d; match3d.morph_erode3d(vol, r=1, device='cpu', se='cube'), registry से लेना हो तो ops3d.get("morph_erode3d"))
• GPU: इस op का GPU path है (device="cuda")
3D grayscale erosion (SE का local min)। उजले regions को सिकोड़ता है। se वही है जो dilate में।
Side length 2r+1 के cube या त्रिज्या r के ball के अंदर न्यूनतम मान लेता है। Border के बाहर को +∞ माना जाता है (min केवल image के अंदर के मानों पर; torch path -max_pool3d(-v) है, scipy path cval=+inf), इसलिए किनारों पर मान 0 तक नहीं गिरता। r=0 identity है। se अगर "cube"/"ball" के अलावा हो तो ValueError। device केवल cube+torch में प्रभावी है। Return value (D,H,W) float32 numpy है। 2-valued volume में इसका अर्थ है "केवल वे voxel रखो जिनमें SE पूरा समा जाए" = पतली structures और पतले shells हटाना।
आगे: morph_dilate3d के साथ जोड़ी में opening/closing; vol − erosion से अंदरूनी boundary मिलती है।
• 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 के स्रोत।
• morphology_3d — py -3.11 examples_3d/morphology_3d.py
voxel को input के रूप में लेते हैं)voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa
morphology)morph_dilate3d · morph_open3d · morph_close3d · morph_gradient3d · morph_tophat3d · morph_blackhat3d
*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.