BackgroundRemover adalah alat baris perintah untuk menghapus latar belakang dari gambar dan video menggunakan AI, dibuat oleh nadermx untuk mendukung https://BackgroundRemoverAI.com. Jika Anda bertanya-tanya mengapa itu dibuat, bacalah posting blog singkat ini.
ular piton >= 3.6
python3.6-dev #atau versi python apa pun yang Anda gunakan
versi stabil obor dan torchvision (https://pytorch.org)
ffmpeg 4.4+
Untuk memperjelas, Anda harus menginstal python dan versi dev python apa pun yang Anda instal. YAITU; python3.10-dev dengan python3.10 atau python3.8-dev dengan python3.8
Buka https://pytorch.org dan gulir ke bawah ke bagian INSTALL PYTORCH
dan ikuti petunjuknya.
Misalnya:
PyTorch Build: Stable (1.7.1) Your OS: Windows Package: Pip Language: Python CUDA: None
Untuk menginstal ffmpeg dan python-dev
sudo apt install ffmpeg python3.6-dev
Untuk Menginstal backgroundremover, instal dari pypi
instalasi pip --upgrade pip pip instal penghapus latar belakang
Harap dicatat bahwa ketika Anda pertama kali menjalankan program, program akan memeriksa apakah Anda memiliki model u2net, jika tidak, program akan menariknya dari repo ini
Dimungkinkan juga untuk menjalankan ini tanpa menginstalnya melalui pip, cukup kloning git ke lokal mulai env virtual dan instal persyaratan dan jalankan
python -m backgroundremover.cmd.cli -i "video.mp4" -mk -o "output.mov"
dan untuk jendela
python.exe -m backgroundremover.cmd.cli -i "video.mp4" -mk -o "output.mov"
git clone https://github.com/nadermx/backgroundremover.gitcd backgroundremover docker build -t bgremover .alias backgroundremover='docker run -it --rm -v "$(pwd):/tmp" bgremover:latest'
Hapus latar belakang dari gambar file lokal
penghapus latar belakang -i "/path/to/image.jpeg" -o "output.png"
Terkadang hasil yang lebih baik dapat dicapai dengan mengaktifkan matting alfa. Contoh:
penghapus latar belakang -i "/path/to/image.jpeg" -a -ae 15 -o "output.png"
ubah model untuk metode penghapusan latar belakang yang berbeda antara u2netp
, u2net
, atau u2net_human_seg
penghapus latar belakang -i "/path/to/image.jpeg" -m "u2net_human_seg" -o "output.png"
penghapus latar belakang -i "/path/to/video.mp4" -tv -o "output.mov"
penghapus latar belakang -i "/path/to/video.mp4" -tov "/path/to/videtobeoverlayed.mp4" -o "output.mov"
penghapus latar belakang -i "/path/to/video.mp4" -toi "/path/to/videtobeoverlayed.mp4" -o "output.mov"
penghapus latar belakang -i "/path/to/video.mp4" -tg -o "output.gif"
Buat file matte untuk pemutaran perdana
penghapus latar belakang -i "/path/to/video.mp4" -mk -o "output.matte.mp4"
Ubah framerate video (default diatur ke 30)
penghapus latar belakang -i "/path/to/video.mp4" -fr 30 -tv -o "output.mov"
Tetapkan jumlah total frame video (default diatur ke -1, yaitu menghapus latar belakang dari video penuh)
penghapus latar belakang -i "/path/to/video.mp4" -fl 150 -tv -o "output.mov"
Ubah ukuran kumpulan GPU video (default disetel ke 1)
penghapus latar belakang -i "/path/to/video.mp4" -gb 4 -tv -o "output.mov"
Ubah jumlah pekerja yang mengerjakan video (default diatur ke 1)
penghapus latar belakang -i "/path/to/video.mp4" -wn 4 -tv -o "output.mov"
ubah model untuk metode penghapusan latar belakang yang berbeda antara u2netp
, u2net
, atau u2net_human_seg
dan batasi frame hingga 150
penghapus latar belakang -i "/path/to/video.mp4" -m "u2net_human_seg" -fl 150 -tv -o "output.mov"
from backgroundremover.bg import remove def remove_bg(src_img_path, out_img_path): model_choices = ["u2net", "u2net_human_seg", "u2netp"] f = open(src_img_path, "rb") data = f.read() img = remove(data, model_name=model_choices[0], alpha_matting=True, alpha_matting_foreground_threshold=240, alpha_matting_background_threshold=10, alpha_matting_erode_structure_size=10, alpha_matting_base_size=1000) f.close() f = open(out_img_path, "wb") f.write(img) f.close()
mengonversi logika dari video ke gambar untuk memanfaatkan lebih banyak GPU pada penghapusan gambar
bersihkan dokumentasi sedikit lagi
menambahkan kemampuan untuk menyesuaikan dan memberikan umpan balik gambar atau video ke kumpulan data
tambahkan kemampuan untuk menghapus latar belakang secara realtime untuk video, untuk streaming
selesaikan api server labu
tambahkan kemampuan untuk menggunakan model lain selain u2net, yaitu milik Anda sendiri
lainnya
Diterima
Berikan tautan ke proyek kami BackgroundRemoverAI.com atau git ini, beri tahu orang-orang bahwa Anda menyukainya atau menggunakannya.
Kami menjadikannya paket kami sendiri setelah menggabungkan bagian-bagian yang lain, menambahkan beberapa fitur kami sendiri melalui pengeposan bagian sebagai pertanyaan hadiah pada pengguna super, dll. Seperti yang ditanyakan di hackernews sebelumnya untuk membuka sumber bagian gambar, jadi memutuskan untuk menambahkan dalam video, dan banyak lagi.
https://arxiv.org/pdf/2005.09007.pdf
https://github.com/NathanUA/U-2-Net
https://github.com/pymatting/pymatting
https://github.com/danielgatis/rembg
https://github.com/ecsplendid/rembg-greenscreen
https://superuser.com/questions/1647590/have-ffmpeg-merge-a-matte-key-file-over-the-normal-video-file-removing-the-backg
https://superuser.com/questions/1648680/ffmpeg-alphamerge-two-videos-into-a-gif-with-transparent-background/1649339?noredirect=1#comment2522687_1649339
https://superuser.com/questions/1649817/ffmpeg-overlay-a-video-after-alphamerging-two-others/1649856#1649856
Hak Cipta (c) 2021-sekarang Johnathan Nader
Hak Cipta (c) 2020-sekarang Lucas Nestler
Hak Cipta (c) 2020-sekarang Dr. Tim Scarfe
Hak Cipta (c) 2020-sekarang Daniel Gatis
Kode Berlisensi di bawah Lisensi MIT Model Berlisensi di bawah Lisensi Apache 2.0