Subtract Background Plusによる背景減算
バージョン: v0.1.2 / ライセンス: MIT
概要
暗い・低シグナルの画像で、Fiji標準のSubtract Backgroundが作りがちなアーティファクトを避けることが目的。
なぜ作ったか(標準機能との違い)
Fiji標準の Subtract Background...(BackgroundSubtracter)は、暗い画像で2つのアーティファクトを起こす:
内部での縮小処理: 半径>10pxだと画像をmin-poolで縮小(2/4/8倍)→ローリングボール→バイリニア補間で背景を再拡大。平坦な暗部でブロック状/波状パターンが残る。Disable smoothingをオンにしても止まらない 事前スムージング: デフォルトで3×3平均が推定前にかかり、明るいエッジ周りに負のハロー(黒縁)を作ることがある
📝 補足
本プラグインは背景をフル解像度で推定(縮小も補間もしない)するので暗部のブロック/波が出ない。
一方でガウシアン事前スムージング(デフォルトsigma 2px)は残す。これはオープニング系に必須で、切るとボール/ディスクがノイズ表面のピークだけに接触して自分の形を背景に押し込む(「ボール痕」のドーム状アーティファクト)ため。
v0.1.0 → v0.1.2
「きれいにしたい」と事前スムージングを切ったのは誤りで、実画像で強いボール痕ドームが出た。元の暗部アーティファクトの原因は標準機能の縮小+バイリニア再拡大であって事前スムージングではない。v0.1.2は事前スムージングを残し、縮小/補間だけをやめた
手法(Methods)
Rolling ball (full resolution): 半球の構造要素によるグレースケール・オープニング(縮小なしの忠実なSternbergローリングボール)。いちばん馴染みがあるが大半径だと最も遅い
Sliding paraboloid (separable, fast): 分離可能な放物面オープニング、走査線あたりO(n)、フル解像度。大きい画像/スタックに推奨。速くてアーティファクトが出にくい
Morphological opening (flat disk): 平らなディスクの構造要素。よりシャープな背景モデル
すべて8/16/32-bitのグレースケール画像・スタックで動作。計算はfloatで行いImageJが元の型に戻す
インストール
Subtract_Background_Plus-0.1.2.jar をImageJの plugins/ フォルダにコピー
ImageJを再起動
Plugins ▸ Background ▸ Subtract Background Plus に出ればOK
パラメータ
Radius (pixels): ボール/ディスク半径(放物面では曲率スケール)。残したい最大の物体より大きい値を使う
Light background (dark objects): 明るい背景に暗い物体がある場合。出力は平坦なゼロ上に物体を正の偏差として載せる(実質コントラスト反転)ので後段の解析に便利
Create background (don't subtract): 推定した背景そのものを出力(確認用/自前で減算したいとき)
Smoothing sigma (px): 推定前のガウシアン事前スムージング。ローリングボール/ディスクでは1〜2(デフォルト2)に保つ。切るとボール痕ドームが出る。すでに滑らかなら0でもよい。背景は常に元画像を超えないようクランプ(過減算防止)
Background post-smoothing sigma (px): 推定背景面への追加スムージング(任意)。0でオフ。事前スムージングが効いていればほぼ不要
Shrink factor (ball/disk): モルフォロジー手法の速度/品質ノブ。1=フル解像度(最もクリーン)。速度が必要でブロックノイズを許容できる時だけ上げる(放物面には影響なし)
Preview: 現在のスライスでライブプレビュー
パフォーマンスのめやす
フル解像度ローリングボールはO(幅·高さ·πr²)。大きいスタックで大半径ならSliding paraboloid(走査線あたりO(n))推奨、同等にクリーンな背景がはるかに速い。スタックはスライス間で並列化、モルフォロジー/放物面パスは行/走査線方向に並列化
リンク
created by y-goto.icon
created at 2026/6/24
last edit