
2026/07/28 1:59
Show HN:FeyNoBg – 自動背景除去モデルとトレーニングライブラリ
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Summary:
FeyNoBg は、自動背景除去を目的とした最先端のオープンソースモデルであり、8 つのベンチマークのうち 4 つで公表された結果を上回るパフォーマンスを発揮しています(DAVIS-SE および CAMO-TE で S-measure のリードを獲得)。開発者である Feyn らが実装し、特徴抽出器のブロック数を 18 から 24 に増やすことで、BiRefNet の基礎モデルを拡張し、パラメータ数を 2 億 2,200 万から 2 億 6,300 万へと増加させました。この拡張により、多様な 26,100 枚の画像(10 つのデータセットにわたる)から学習する新たなスキルの習得能力——混雑したシーン、カモフラージュ、高解像度の被写体への対応など——が向上し、基盤知識の忘却を防ぐため、すべて互換性のある事前学習済みウェイトを保持しました。大規模なソースからのデータが学習を支配することを防ぐために、各データセットソースは 4,000 枚に制限され、様々なアノテーション形式は二値化された前景マスクに標準化されました。
その結果として得られたシステムは、先行モデルと比較して処理速度が高く、レイテンシが低く、ピーク GPU メモリ使用量が削減されています。導入を容易にするために、開発チームは"NoBg"という Python ライブラリを提供し、推論タスク(入力正規化、アルファマットの生成、透明 PNG の保存)を扱い、Hugging Face Trainer を介したカスタムトレーニングをアダプターなしで、複雑なコーディングなしで実行できるようにしています。Hugging Face または pip から入手可能な NoBg は、開発者のワークフローに高品質な背景除去機能を統合するための障壁を低下させます。
本文
FeyNoBg:忘却せず、さらに優れた背景除去を実現
当社は、自動化された背景除去のための最先端モデル FeyNoBg を発表します。このモデルは以下の卓越した性能を発揮しました。
- S-スコア:8 つのベンチマークのうち、4 つで既存の最良な公開結果を上回っています。
- 高い安定性:残りの 4 つにおいても、リーダーとの差は 2% 以内 です。
ベンチマーク結果
主要なテストにおける FeyNoBg と BiRefNet の性能比較です。
| ベンチマーク | FeyNoBg | BiRefNet | 説明 |
|---|---|---|---|
| UHRSD-TE | 0.981 | 0.957 | 4K や 8K の超高解像度画像における注目オブジェクトのマスクを検証します。 |
背景除去に必要な両立した能力
コンピュータ上のイメージはピクセルのグリッドとして格納されており、アルゴリズムの目標は各ピクセルに対して**不透明度(Opacity)**値を予測することです。これにより背景は透明化し、前景是不透明、境界付近は半透明となります。
この不透明度マップ生成には以下の 2 つの能力が必要です。
-
前景と背景を分離する
- 単調な背景の場合:色相の比較だけで実現可能。
- コントラストが低く混雑している場合:形状、テクスチャ、文脈を活用して、どのピクセルが被写体を構成するか認識する必要があります。
-
前景の境界線を精密にトレースする(画像マットイング)
- 単純な画像の場合:色やテクスチャの急激な変化からエッジ信号を得られます。
- 現実的な画像の場合:髪、毛皮、細いワイヤー、モーションブラーなどによって要素が混ざり合うため、モデルはエッジピクセルのうち被写体に属する割合を測定し、それに応じた不透明度を設定する必要があります。
通常、これらは異なるデータで学習されがちですが、トレーニングデータの組み合わせが不適切だとアンバランスなモデル(前景の欠落や境界線の不明瞭さ)が生じることがあります。実際の画像は複雑であり、両方の能力に優れた技術が必要です。これは FeyNoBg を開発する際の主要な知見です。
学習のための余地を作る
FeyNoBg の基礎には BiRefNet が選ばれました。そのアーキテクチャが以下の役割をすでに担っており、我々の目標と一致したためです。
- ローカリゼーションモジュール:前景を検出。
- リコンストラクションモジュール:被写体の境界線を描く。
モデルは入力画像を特徴抽出器(4 つの段階)に通すことで始まります。
- 初期段階:局所的な詳細を捉える。
- 後期段階:詳細情報を統合し、広範な画像表現(特徴マップ)へと変換する。
特に重要なのは、被写体全体を推理しつつ空間的詳細を保つ必要がある3 つ目の段階です。ここでの深さを増やせば情報が保持されやすく性能向上につながると考え、ブロック数を 18 から 24 に拡張しました。これによりパラメータ数は 2.22 億から 2.63 億へと増加しました。
重要なのは、拡張プロセスにおいて互換性のある事前学習済み重みをすべて保持しており、新しいブロックのみ未学習の状態からスタートした点です。このアプローチにより、ベースモデルが既に知っている知識を忘却することなく、新たな能力を学習する追加的な容量を得られました。「学び取る余地」が確保され、古きモデルに新しき技を授けることに成功しました。
多様なデータによる強み
最初の試行では合成画像とマスクペアのコレクション MaskFactory を単独で使用しましたが、結果は偏っていました(CAMO で改善しつつ DIS5K では退步)。そこで、より多様なデータセットの構築に焦点を当てました。
- 対象シナリオ:混雑シーン、カモフラージュ、高解像度被写体、ポートレート、アニメなどを網羅。
- 構成:10 のデータセットから計 26,100 枚の画像を組み立て、7,000 ステップでトレーニング。
| データセット | 加えた価値 |
|---|---|
| 合成シーン (S3OD) | 既知の画像コレクションを超えた汎化能力を助けるように設計されています。 |
最終的にはデータセットを見直しました。S3OD から 4,000 枚を追加し、Anime の使用数を減らして一貫性を高め、ThinObject-5K、HIM-2K、COIFT を削除しました。これにより有用で一貫したトレーニング例のみを残しました。
データセットを組み合わせた際に対処した主な課題は以下の通りです。
- サイズの変動:制限を設けないと最大のソースが支配し特化(過学習)を引き起こすため、各ソースの使用枚数に 4,000 を上限として設定し、シャッフルして結合しました。
- 異なる注釈形式:セグメンテーションデータセットは前景マスク、マットイングデータセットはアルファマットを提供していました。両方をバイナリ前景マスクに変換し、すべての画像が同じトレーニング目標(ターゲット)を共有するように処理しました。
このアプローチにより、マットングデータセットからは明確な輪郭情報や正確な不透明度情報を提供でき、広範なシナリオに対応できる統一的なトレーニングセットができました。
結果
パフォーマンス評価には S-スコア(S-measure) を使用しました。
- 評価範囲:0 から 1。
- 意味:予測された前景と正しいマスクの類似度を比較します。完全な被写体と忠実な形状を高く評価し、スコアが高いほど良い結果です。
FeyNoBg は以下の 8 つのベンチマークで最良の公開結果と比較され、4 つでリード、残り 4 つでも差は 2% 以内でした。
- UHRSD-TE
- HRSOD-TE
- DIS5K(当初の退步を逆転しリーダーシップに)
- DAVIS-S
- UTS-TE
- COD10K-TE
- DUT-OMRON
- CAMO-TE
特に注目的是、幅広いトレーニングミックスにより、DIS5K における退步を克服しベンチマークでのリーダーシップへと逆転させた点です。
NoBg ライブラリ
画像マットイングモデルは通常、独立したリポジトリとしてリリースされますが、比較やファインチューニングのためにはアダプタ作成の手間がかかります。これを解決するために NoBg という Python ライブラリを作成し、一貫したインターフェースを提供します。
- FeyNoBg のトレーニングにも使用。
- 背景除去モデルの実行・トレーニングのための統一プラットフォーム。
- さらに開発を促すため、オープンソースとして公開されています。
パフォーマンスと使いやすさ
一貫したインターフェースは性能コストを増大させません。BiRefNet と元の実装の比較(バッチサイズ 1, 2, 4)で確認した通り、NoBg は以下の利点があります。
- より高いスループット
- 低いレイテンシ
- 低いピーク GPU メモリ使用量
FeyNoBg を実行する
推論前に画像のサイズ変更と正規化が行われ、出力は元のサイズでアルファマットに変換され透明 PNG ファイルとして保存されます。
import torch from loadimg import load_img from nobg import AutoModel, AutoProcessor model = AutoModel.from_pretrained("feyninc/FeyNobg").eval() processor = AutoProcessor.from_pretrained("feyninc/FeyNobg") # 画像読み込みと処理 image = load_img("input.jpg").convert("RGB") inputs = processor(image, return_tensors="pt") with torch.inference_mode(): outputs = model(pixel_values=inputs["pixel_values"]) # 結果を透明画像として保存 alpha = processor.post_process_alpha_matting( outputs, target_sizes=[(image.height, image.width)], )[0] processor.cutout(image, alpha).save("output.png")
ご自身でモデルをトレーニングする
ご自身の画像とマスクペアに対して BiRefNet をトレーニングできます。トレーニングループ、チェックポイント保存、評価機能は Hugging Face Trainer と互換性があります。
from nobg import AutoModel, AutoProcessor from transformers import Trainer, TrainingArguments model = AutoModel.from_pretrained("feyninc/FeyNobg") processor = AutoProcessor.from_pretrained("feyninc/FeyNobg") def collate(examples): batch = processor( images=[example["image"] for example in examples], segmentation_maps=[ example["mask"].convert("L") for example in examples ], return_tensors="pt", ) return { "pixel_values": batch["pixel_values"], "labels": batch["labels"], } trainer = Trainer( model=model, args=TrainingArguments( output_dir="outputs", learning_rate=2e-5, ), train_dataset=dataset, data_collator=collate, ) trainer.train()
入門
- ダウンロードと実行: Hugging Face から FeyNoBg をダウンロードし、NoBg ライブラリでモデルを実行してください。また、当社の Hugging Face スペースでオンラインでもお試しください。
- インストール:
コマンドで NoBg をインストール可能이며、GitHub からも入手可能です。pip install nobg
FeyNoBg と NoBg は Feyn が構築しました。 私たちは X、GitHub、LinkedIn で皆様とお話しできます。
謝辞
FeyNoBg は、BiRefNet および Peng Zheng、Dehong Gao、Deng-Ping Fan、Li Liu、Jorma Laaksonen、Wanli Ouyang、Nicu Sebe の方々の研究成果を築き上げています。また、ここで使用されたモデル、コード、データセットを提供してくださったチームにも心から感謝申し上げます。
参考文献
- Zheng et al., "Bilateral Reference for High-Resolution Dichotomous Image Segmentation," CAAI Artificial Intelligence Research 3 (2024). arXiv:2401.03407.
- Sargsyan and Navasardyan, "FlowDIS: Language-Guided Dichotomous Image Segmentation with Flow Matching," CVPR 2026. arXiv:2605.05077.
- Kupyn, Kataoka, and Rupprecht, "S3OD: Towards Generalizable Salient Object Detection with Synthetic Data," arXiv:2510.21605 (2025).
引用方法
@note{feynobg2026, title = {FeyNoBg: Better Background Removal Without Forgetting}, author = {Hichri, Hafedh and Nigam, Shreyash and Feyn Research}, year = {2026}, venue = {Feyn Field Notes} }