オンデバイスのカットアウトモデルに表示されるもの
オンデバイスのカットアウト モデルには、人間の感覚で人、靴、ペット、椅子が表示されません。画像の数値表現を受け取り、どの領域が主要な被写体に属する可能性が高いかをピクセルごとに推定します。その有用な出力はマスク、つまり結果の透明度チャネルとなるグレースケール マップです。
この違いにより、自動カットアウトの速度とその限界の両方が説明されます。モデルはトレーニング中に学習した視覚的なパターンを使用できますが、ユーザーの意図は知りません。中心近くの鋭い物体は重要に見えるかもしれません。かすかなガラスの縁や抜け毛が背景のように見える場合があります。
画像ファイルからモデル入力まで
最初に選択したファイルはデコードする必要があります。圧縮された写真は、ファイル バイトのブロックとしてモデルに直接渡されません。ブラウザはそれを幅、高さ、色の値を持つピクセルに変換します。
次に、推論パイプラインはモデルサイズの入力を準備します。モデルとランタイムに応じて、準備には次のものが含まれます。
- デコードされた画像をモデルが期待する寸法にサイズ変更します。
- 赤、緑、青の値を数値チャネルとして配置します。
- それらの値をスケーリングまたは正規化する。
- 推論ランタイムで使用される配列形式であるテンソルにパッケージ化します。
正確なディメンションと正規化ルールはモデルの実装に属します。実務上重要な点は、推論は通常、元のサイズのすべてのソース ピクセルからではなく、準備された表現から機能するということです。
Easy Background Remover は、オンデバイス セグメンテーション モデルを使用してブラウザーでこの推論ステップを実行します。最初のカットアウトの前にモデル ファイルをダウンロードする必要がある場合がありますが、画像処理パスは、モデルの準備ができた後もローカルに残るように設計されています。モデルのダウンロードはアセットのリクエストです。これは、選択した写真をリモート推論用にアップロードすることと同じではありません。
出力は信頼度に似たマスクです
モデルは、出力内の各位置に対して、より被写体に近い、またはより背景に近いと解釈できる値を生成します。これをグレースケール画像として描くと便利です。
- 白はこの領域を維持することを意味します。
- 黒はこの領域を削除することを意味します。
- 灰色は、部分的なカバレッジまたはエッジ付近の不確実性を意味します。
ブラウザはその出力を有効なアルファ マスクに変換します。元のカラー ピクセルは、チェッカーボード、塗りつぶし、グラデーション、または別の画像上に合成できます。透明エクスポートでは、チェッカーボードをファイルにペイントするのではなく、マスクをアルファとして保存します。
ソフトな価値観が重要です。すべてのマスク値をただちに純粋な黒または白に強制すると、髪、毛皮、布地の繊維、モーション ブラー、および焦点のぼけたエッジが不自然に硬くなります。部分アルファにより、よりスムーズな遷移を維持できます。また、古い背景からのカラーフリンジが露出する可能性があるため、結果は視覚的に確認する価値があります。
モデルに役立つ視覚的証拠
セグメンテーション モデルは、一度に複数の手掛かりを利用できます。有力な手がかりとしては、次のようなものがよくあります。
- 被写体と背景のコントラスト。
- 主要なオブジェクトの周囲にある連続した境界。
- 形状、テクスチャ、位置のよく知られた組み合わせ。
- 焦点の違いなどの深さの手がかり;
- 視覚的に一緒に属する領域。
これらの手がかりはどれも保証するものではありません。暗い壁に対して暗いジャケットを使用すると、境界のコントラストが弱くなります。隙間が狭い椅子には、オブジェクトに似た背景領域が含まれる場合があります。模様のある背景は、実際の被写体と競合して注目を集める可能性があります。
モデルは利用可能なピクセルから最良の推定を行っています。画像に取り込まれなかった詳細を復元することはできません。
モデルが知らないこと
モデルは、複数の被験者が存在する場合、どのオブジェクトを保持するつもりだったのかを自動的には認識しません。透明なグラスが商業的に重要であること、写実性を高めるために影を残す必要があること、小さなストラップがバッグに付属していることなどを知りません。
また、ぼやけたソースの隠れた高解像度バージョンも受信しません。圧縮ブロック、ハイライトのクリップ、モーション ブラー、および非常に小さなディテールにより、入手可能な証拠が制限されます。プレビュー ズームを大きくすると、画面上のピクセルが大きくなります。欠落した情報が生じることはありません。
これが、「AI が検出した」と「エッジが公開する準備ができている」が異なる主張である理由です。検出すると編集が開始されます。レビューして終わります。
薄くて透明なディテールが難しい理由
薄いオブジェクトは数ピクセルを占めます。推論のために画像のサイズが変更されると、1 ピクセルのワイヤーまたは髪の毛の束がその周囲の背景と平均化されることがあります。透明なオブジェクトが難しいのには別の理由があります。それは、目に見える色の一部が古い背景であるということです。オブジェクトを理解できる人にとって境界は明らかですが、ピクセル パターンは曖昧なままです。
ソフトシャドウは意図的な曖昧さを生み出します。それらの外側のエッジは徐々に消えていき、客観的に正しい単一のカットオフはありません。完全なシャドウを維持すると、同様の背景では自然に見えますが、明るい新しい塗りつぶしでは汚く見える場合があります。外すと被写体が浮いて見える場合があります。
これらはモデルの問題であると同時に判断の問題でもあります。
モデルマスク、作業マスク、およびエクスポートマスク
次の 3 つの段階を分けるのに役立ちます。
- モデル マスク: 推論によって返される自動推定。
- 作業マスク: 追加または消去の調整後にエディターに表示されるマスク。
- エクスポート マスク: 現在の結果がダウンロードまたはコピーされるときに適用される作業マスク。
Easy Background Remover では、ブラシの調整により作業マスクが編集されます。エクスポートでは、何も触れずに自動マスクに戻るのではなく、現在の編集結果が使用されます。これにより、意図に応じて詳細を修正しながら、モデルで大まかな分離を処理できるようになります。
表示されるプレビューは、エディターに合わせて拡大縮小される場合があります。その表示サイズは、マスクの内部詳細の信頼できる尺度ではありません。区別については、マスク解像度とプレビュー サイズ を参照してください。
ローカル推論にはセットアップ手順がまだあります
デバイス上でモデルを実行するには、モデルの重みと互換性のあるブラウザー ランタイムが必要です。重みは通常のインターフェイス コードよりもはるかに大きいため、エディターを起動するたびにすべてをロードするのは無駄です。最初のセッションではモデルをダウンロードしてキャッシュできます。通常、後で通常のセッションでそれを再利用できます。
最初の実行でモデルがダウンロードされる理由 では、モデル アセットのダウンロードと写真のアップロードを混同することなく、その境界について説明しています。重い推論もメイン インターフェイス スレッドから逃げます。 Web Worker の画像処理の基本 を参照してください。
結果を判断するための実践的な方法
被写体の中心だけを検査しないでください。証拠が最も弱いマスクを確認します。
- 髪の毛、毛皮、ひげ、布地の繊維。
- メガネ、ストラップ、ワイヤー、狭い隙間。
- 低コントラストのエッジ。
- 半透明の素材。
- 接触影;
- 古い背景色が残っている可能性があるコーナー。
最終目的地が不明な場合は、明るい背景と暗い背景の両方で結果を表示します。淡いハローは、白では消え、黒では目立つことがあります。次に、使用目的に影響する領域のみを調整します。
自動セグメンテーションは、完全な理解を表明するものではなく、強力な最初のパスとして扱われる場合に最も役立ちます。完全なローカル カットアウトとリファインメント フローを試すには、はじめに を参照してください。