filter op• データ種: image2d × matrix → image2d
• 呼び出し: import fullseye as fs; fs.ledger.vx_nonlinear_filter(image, mask, *, function, border, constant_value=0, origin=None) (実装を直接呼ぶなら import vxcore; vxcore.vx_nonlinear_filter(image, mask, *, function, border, constant_value=0, origin=None)、台帳から引くなら opsvx.get("vx_nonlinear_filter"))
非線形フィルタ(3.38 節): マスクの真の画素の値の中央値 / 最小(収縮)/ 最大(膨張)(REQ-0325・0330)。
*function*: `"median" / "min" / "max"`(vx_non_linear_filter_e)。*mask*: 2-D の bool(BOX / CROSS / DISK / OTHER の
どれでも)。*origin*: マスクの原点 (行, 列)(VX_MATRIX_ORIGIN、既定は中央 `(rows // 2, cols // 2)`)。
*border*(必須): `"replicate" / "constant" / "undefined"`(端は 0 で埋めて計算する —— 値は規格上未定義)。
★マスクの画素数が偶数のときの中央値は規格に無い —— 昇順に並べた `n // 2` 番目(上側の中央値、scipy の median_filter と同じ)を取る。
REQ-0327: 9×9 までのマスクは必ず扱う(この実装に上限は無い)。
Raises `ValueError`: U8 の 2-D でない / function が一覧に無い / mask が 2-D の bool でない・空 / origin がマスクの外。
• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。
• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。
• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。
• (まだありません)
image2d を入力に取れる)vx_sobel3x3 · vx_magnitude · vx_phase · vx_table_lookup · vx_histogram · vx_nonmax_suppression · vx_warp_affine · vx_warp_perspective
filter)—
*Provenance: vxcore.py — VX operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.