derivative op• Data kinds: voxel → hessian
• Call: import fullseye as fs; fs.ledger.voxel_to_hessian(vol, sigma=1.0, scale_normalize=False) (implementation को सीधे call करना हो तो import reprconv; reprconv.voxel_to_hessian(vol, sigma=1.0, scale_normalize=False), registry से लेना हो तो opsreprconv.get("voxel_to_hessian"))
• GPU: नहीं (केवल CPU reference implementation)
volume voxel → 3-D Hessian hessian के 6 components (zz, yy, xx, zy, zx, yx)। केवल numpy और scipy से बना hessian प्रकार का प्रवेश।
hessian3d (torch का conv3d) जैसा वही रूप लौटाता है: लंबाई 6 की list, हर एक (D,H,W) float32, क्रम (zz, yy, xx, zy, zx, yx) (axis 0=z, 1=y, 2=x), इकाई 1/voxel², किनारे replicate (scipy.ndimage का mode="nearest")। इसलिए hessian_determinant / hessian_vesselness इसे सीधे पढ़ते हैं, और torch के बिना सादे pip install fullseye में भी voxel → hessian → voxel की श्रृंखला चलती है।
sigma Gaussian smoothing का scale (voxel) है। विकर्ण components "उस axis का 2nd order × बाकी 2 axes का smoothing" हैं, cross components "2 axes का 1st order × बचे axis का smoothing" के separable convolution हैं। kernels Gaussian derivative के आकार के हैं, और उनका योग तथा 1st/2nd moments ठीक-ठीक मिलाए गए हैं (sample किया गया Gaussian derivative kernel का योग 0 नहीं होता, जिससे चमक 2nd derivative में रिसती है), इसलिए 2nd degree polynomial ½xᵀAx + bᵀx पर भीतरी भाग में rounding की सीमा तक H = A मिलता है। sigma=0 का अर्थ "smoothing नहीं" नहीं, बल्कि hessian3d जैसे ही 3-tap kernels ([1,−2,1] / [−0.5,0,0.5] / [1,2,1]/4) हैं —— torch संस्करण से float32 rounding की सीमा तक मेल खाता है। scale_normalize=True पर σ² से गुणा होता है (Lindeberg का γ=1 normalisation; scales के पार मान तुलना करने के लिए; vol_frangi के आंतरिक Hessian जैसा ही नियम)।
2-D images स्वीकार नहीं: hessian प्रकार 3-D के 6 components है, और इसे लेने वाले भी (D,H,W) चाहते हैं। 2-D Hessian response के लिए sk_hessian / sk_hessian_det / xsk_hessian_eig (image → image) इस्तेमाल करें।
Args:
vol: 3-D volume (D,H,W), वास्तविक, परिमित।
sigma: Gaussian smoothing का scale (voxel)। परिमित और >= 0। 0 पर hessian3d जैसे ही kernels। डिफ़ॉल्ट 1.0।
scale_normalize: True पर हर component को σ² से गुणा करता है (sigma=0 के साथ नहीं चल सकता)।
Returns:
6 np.ndarray की list, हर एक (D,H,W) float32, क्रम (zz, yy, xx, zy, zx, yx)।
Raises:
ValueError: खाली / 3-D नहीं / अपरिमित / sigma परिमित non-negative संख्या नहीं /
scale_normalize और sigma=0 एक साथ।
खाली इनपुट (vol में 0 elements) पर ValueError उठता है।
• 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 में दिए गए हैं।
• hessian_numpy_chain — py -3.11 examples/hessian_numpy_chain.py
hessian को input के रूप में लेते हैं)hessian_determinant · hessian_vesselness
derivative)gradient_magnitude · gradient_coherence · hessian_determinant · hessian_vesselness
*Provenance: reprconv.py — REPRCONV operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.