restoration op• Data kinds: measurement → voxel
• Call: import fullseye as fs; fs.ledger.vol_gaussian_psf(sigma, truncate=4.0) (implementation को सीधे call करना हो तो import volrestore; volrestore.vol_gaussian_psf(sigma, truncate=4.0), registry से लेना हो तो ops3d.get("vol_gaussian_psf"))
normalised (योग 1) 3-D Gaussian PSF kernel; *sigma* एक scalar है या हर axis के लिए अलग।
हर axis के लिए *sigma* (sz, sy, sx) है, voxel में; kernel हर axis पर +-truncate*sigma तक फैला होता है (odd size, center बीच वाले voxel पर)। जब instrument PSF को Gaussian से अच्छी तरह approximate किया जा सके, तब यह vol_richardson_lucy का सुविधाजनक साथी है। PSF_MAX_ELEMENTS (~256^3) से बड़े kernel ValueError देते हैं — इतना बड़ा PSF इनपुट की गलती है, instrument नहीं।
Shape: हर axis की त्रिज्या r = ceil(truncate * sigma), side length 2r + 1 (odd) वाला (2rz+1, 2ry+1, 2rx+1) float64 array। Axis क्रम (z, y, x) है; sigma को (sz, sy, sx) के रूप में देने पर उसी क्रम से मेल खाता है (anisotropic PSF)। 3 1-D Gaussian exp(-x^2 / (2 sigma^2)) के outer product को कुल योग से भाग दिया जाता है, इसलिए योग ठीक 1 है, और center voxel अधिकतम मान है। इकाई voxel है (mm वाली PSF चौड़ाई को spacing से भाग देकर पास करें)।
Arguments और validation (ValueError):
• sigma: धनात्मक finite scalar, या लंबाई 3 के धनात्मक finite मान। इतने छोटे मान कि 2 घात (square) 0 तक underflow हो जाए (~1.5e-154 से कम) 0/0 देते हैं, इसलिए reject होते हैं।
• truncate: धनात्मक finite मान (default 4.0 = हर तरफ 4σ पर कटौती)।
• Element संख्या prod(2r+1) के PSF_MAX_ELEMENTS (2**24) से अधिक होने पर reject (प्रेरणा: एक measured मामला जिसमें σ≈300 पर लगभग 64 GB allocate हो गया था)।
उपयोग: vol_richardson_lucy(vol, psf) का psf। RL तरफ भी योग 1 पर फिर से normalise होता है, इसलिए यहाँ बना kernel सीधे पास किया जा सकता है।
• 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 के स्रोत।
• deconv_fft_restore — py -3.11 examples_3d/deconv_fft_restore.py
voxel को input के रूप में लेते हैं)voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa
restoration)*Provenance: volrestore.py — 3D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.