Replicate のデモと Docker イメージ
自動オブジェクト削除ツール Inpainter は、写真から指定されたオブジェクトを削除するために、セマンティック セグメンテーションと EdgeConnect アーキテクチャをわずかな変更で組み合わせたプロジェクトです。セマンティック セグメンテーションの場合は pytorch のコードが適用され、EdgeConnect の場合は https://github.com/knazeri/edge-connect のコードが適用されます。
このプロジェクトは、20 個の異なるオブジェクトのリストからオブジェクトを削除できます。写真編集ツールとしても、データ拡張にも使用できます。
このプロジェクトでは Python 3.8.5 と pytorch 1.5.1 が使用されています。
deeplabv3/fcn resnet 101 のセマンティック セグメネーター モデルが EdgeConnect と結合されました。オブジェクトのセグメンテーション (検出されたオブジェクトの周囲にマスクを生成) には、事前トレーニングされたセグメンテーション ネットワークが使用されており、その出力は、マスクの一部が除去された入力画像とともに EdgeConnect ネットワークに供給されます。 EdgeConnect は 2 段階の敵対的アーキテクチャを使用しており、最初の段階ではエッジ ジェネレーター、次にイメージ補完ネットワークが続きます。 EdgeConnect のペーパーはここにあり、コードはこのリポジトリにあります。
git clone https://github.com/sujaykhandekar/Automated-objects-removal-inpainter.git
cd Automated-objects-removal-inpainter
または、zip ファイルをダウンロードします。
conda install pytorch==1.5.1 torchvision==0.6.1 -c pytorch
pip install -r requirements.txt
または、次のコマンドを使用することもできます。
bash ./scripts/download_model.sh
迅速に予測するには、このコマンドを実行できます。 cuda/GPU がない場合は、2 番目のコマンドを実行してください。
python test.py --input ./examples/my_small_data --output ./checkpoints/resultsfinal --remove 3 15
./examples/my_small_data ディレクトリ内のサンプル画像を取得し、./checkpoints/resultsfinal ディレクトリに結果を作成して生成します。これらの入出力ディレクトリを任意のディレクトリに置き換えることができます。 --remove の後の数字は、イメージ内で削除するオブジェクトを指定します。上記のコマンドは、画像から 3(鳥) と 15(人) を削除します。すべての削除オプションとその番号については、segmentation-classes.txt を確認してください。
出力画像はすべて 256x256 になります。 NVIDIA GeForce GTX 1650 で 1,000 枚の画像を作成するには約 10 分かかります
品質は向上しますが、実行時間が遅くなる場合は、このコマンドを使用できます
python test.py --input ./examples/my_small_data --output ./checkpoints/resultsfinal --remove 3 15 --cpu yes
CPU 上でセグメンテーション モデルを実行します。 GPU (デフォルト) よりも 5 倍遅くなります。異なるセグメンテーション モデルや EdgeConnect パラメーターを含むその他のオプションを変更するには、.checkpoints/config.yml ファイルで対応する変更を行ってください。
独自のセグメンテーション モデルをトレーニングするには、このリポジトリを参照し、.src/segmentor_fcn.py をモデルに置き換えます。
Edgeconnect モデルのトレーニングについては、元の EdgeConnect リポジトリを参照してください。トレーニング後にモデルの重みを .checkpoints/ にコピーできます。
クリエイティブ コモンズ表示 - 非営利 4.0 インターナショナルに基づいてライセンスされています。
特に明記されていない限り、このコンテンツは CC BY-NC ライセンスに基づいて公開されています。つまり、商業目的で素材を使用せず、適切なクレジットを付与し、提供する限り、コンテンツをコピー、リミックス、変換、構築することができます。ライセンスへのリンク。
@inproceedings{nazeri2019edgeconnect,
title={EdgeConnect: Generative Image Inpainting with Adversarial Edge Learning},
author={Nazeri, Kamyar and Ng, Eric and Joseph, Tony and Qureshi, Faisal and Ebrahimi, Mehran},
journal={arXiv preprint},
year={2019},
}
@InProceedings{Nazeri_2019_ICCV,
title = {EdgeConnect: Structure Guided Image Inpainting using Edge Prediction},
author = {Nazeri, Kamyar and Ng, Eric and Joseph, Tony and Qureshi, Faisal and Ebrahimi, Mehran},
booktitle = {The IEEE International Conference on Computer Vision (ICCV) Workshops},
month = {Oct},
year = {2019}
}