vol_fft_bandpass — 3D frequency op

Data kinds: voxelvoxel

Call: import fullseye as fs; fs.ledger.vol_fft_bandpass(vol, low, high, spacing=None) (to call the implementation directly, import volfreq; volfreq.vol_fft_bandpass(vol, low, high, spacing=None); from the registry, ops3d.get("vol_fft_bandpass"))

Usage

Gaussian band-pass `lowpass(high) - lowpass(low)`: keeps structure

> The detailed description below is the original text — the summary and the headings are translated.

between the two scales (`low < high` required, both in cycles/voxel or

cycles/mm with *spacing*). Typical use: isolate one texture scale, or a

periodic artefact band before subtracting it.

伝達関数は `exp(-|f|^2 / (2 high^2)) - exp(-|f|^2 / (2 low^2))`。DC では

`1 - 1 = 0 なので平均輝度は落ち、lowhigh` の間に山を持つ Gaussian 差分

(DoG 型)の帯域だけが残る。山の高さは 1 に届かない(2 つの Gaussian の差なので、

`lowhigh が近いほど通過量は小さい)。返り値は入力と同じ (D, H, W)` の

float64、符号付き。

引数: `low < high が必須(両方とも正の有限値)。単位は spacing=None` で

cycles/voxel、`spacing` 指定で cycles/mm。周期(voxel または mm)で考えるなら

`1/high が最小構造サイズ、1/low` が最大構造サイズ。

検証(`ValueError): 3-D でない / NaN・Inf / MAX_VOXELS 超 / lowhigh`

が非正・非有限・2 乗がアンダーフロー / `low >= high / spacing` 不正。

使いどころ: 1 つのテクスチャスケールの抽出、周期的な縞・リングアーティファクト帯

を取り出して入力から引く。`vol_fft_lowpass(vol, high) - vol_fft_lowpass(vol, low)`

と同値。

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

Runnable examples (verified samples that actually call this op)

deconv_fft_restorepy -3.11 examples_3d/deconv_fft_restore.py

Ops the type connects to (they accept voxel as input)

voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa

Same category (frequency)

vol_fft_lowpass · vol_fft_highpass


*Provenance: volfreq.py — 3D operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.