BackgroundRemover هي أداة سطر أوامر لإزالة الخلفية من الصور والفيديو باستخدام الذكاء الاصطناعي، تم إنشاؤها بواسطة nadermx لتشغيل https://BackgroundRemoverAI.com. إذا كنت تتساءل عن سبب إنشاء هذا المقال، فاقرأ منشور المدونة القصير هذا.
بيثون >= 3.6
python3.6-dev # أو أي إصدار من بايثون تستخدمه
نسخة مستقرة من الشعلة وtorchvision (https://pytorch.org)
فمبيج 4.4+
للتوضيح، يجب عليك تثبيت كل من python وأي إصدار مطور من python قمت بتثبيته. أي؛ python3.10-dev مع python3.10 أو python3.8-dev مع python3.8
انتقل إلى https://pytorch.org وانتقل لأسفل إلى قسم INSTALL PYTORCH
واتبع التعليمات.
على سبيل المثال:
PyTorch Build: Stable (1.7.1) Your OS: Windows Package: Pip Language: Python CUDA: None
لتثبيت ffmpeg و python-dev
sudo apt install ffmpeg python3.6-dev
لتثبيت مزيل الخلفية، قم بتثبيته من pypi
تثبيت النقطة - ترقية النقطة نقطة تثبيت مزيل الخلفية
يرجى ملاحظة أنه عند تشغيل البرنامج لأول مرة، سوف يتحقق لمعرفة ما إذا كان لديك نماذج u2net، وإذا لم يكن لديك، فسوف يسحبها من هذا الريبو
من الممكن أيضًا تشغيل هذا دون تثبيته عبر النقطة، ما عليك سوى استنساخ git لبدء بيئة افتراضية محلية وتثبيت المتطلبات وتشغيلها
بايثون -m الخلفيةremover.cmd.cli -i "video.mp4" -mk -o "output.mov"
وللنوافذ
python.exe -m الخلفيةremover.cmd.cli -i "video.mp4" -mk -o "output.mov"
استنساخ بوابة https://github.com/nadermx/backgroundremover.gitcd الخلفيةremover docker build -t bgremover .alias الخلفيةremover='docker run -it --rm -v "$(pwd):/tmp" bgremover:latest'
إزالة الخلفية من صورة ملف محلي
مزيل الخلفية -i "/path/to/image.jpeg" -o "output.png"
في بعض الأحيان يكون من الممكن تحقيق نتائج أفضل من خلال تشغيل ألفا ماتينغ. مثال:
مزيل الخلفية -i "/path/to/image.jpeg" -a -ae 15 -o "output.png"
قم بتغيير النموذج لطرق إزالة الخلفية المختلفة بين u2netp
أو u2net
أو u2net_human_seg
مزيل الخلفية -i "/path/to/image.jpeg" -m "u2net_human_seg" -o "output.png"
مزيل الخلفية -i "/path/to/video.mp4" -tv -o "output.mov"
مزيل الخلفية -i "/path/to/video.mp4" -tov "/path/to/videtobeoverlayed.mp4" -o "output.mov"
مزيل الخلفية -i "/path/to/video.mp4" -toi "/path/to/videtobeoverlayed.mp4" -o "output.mov"
مزيل الخلفية -i "/path/to/video.mp4" -tg -o "output.gif"
قم بإنشاء ملف غير لامع للعرض الأول
مزيل الخلفية -i "/path/to/video.mp4" -mk -o "output.matte.mp4"
تغيير معدل إطارات الفيديو (يتم ضبطه افتراضيًا على 30)
مزيل الخلفية -i "/path/to/video.mp4" -fr 30 -tv -o "output.mov"
قم بتعيين العدد الإجمالي لإطارات الفيديو (يتم ضبط الإعداد الافتراضي على -1، أي إزالة الخلفية من الفيديو الكامل)
مزيل الخلفية -i "/path/to/video.mp4" -fl 150 -tv -o "output.mov"
تغيير حجم دفعة وحدة معالجة الرسومات للفيديو (يتم تعيين الإعداد الافتراضي على 1)
مزيل الخلفية -i "/path/to/video.mp4" -gb 4 -tv -o "output.mov"
تغيير عدد العاملين على الفيديو (يتم تعيين الإعداد الافتراضي على 1)
مزيل الخلفية -i "/path/to/video.mp4" -wn 4 -tv -o "output.mov"
قم بتغيير النموذج لطرق إزالة الخلفية المختلفة بين u2netp
أو u2net
أو u2net_human_seg
وحدد الإطارات بـ 150
مزيل الخلفية -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()
تحويل المنطق من الفيديو إلى الصورة للاستفادة من المزيد من GPU في إزالة الصور
تنظيف الوثائق أكثر قليلا
إضافة القدرة على ضبط الصور أو مقاطع الفيديو وتقديم التعليقات عليها في مجموعات البيانات
إضافة القدرة على إزالة الخلفية في الوقت الفعلي لمقاطع الفيديو والبث المباشر
إنهاء واجهة برمجة تطبيقات خادم قارورة
إضافة القدرة على استخدام نماذج أخرى غير u2net، أي النموذج الخاص بك
آخر
مقبول
قم بإعطاء رابط لمشروعنا PictureRemoverAI.com أو هذه البوابة، وأخبر الأشخاص أنك تحبه أو تستخدمه.
لقد جعلناها حزمة خاصة بنا بعد دمج أجزاء من أجزاء أخرى معًا، وأضفنا بعض الميزات الخاصة بنا عبر نشر الأجزاء كأسئلة مكافأة على المستخدم المتميز، وما إلى ذلك. بالإضافة إلى طلبنا على hackernews سابقًا لفتح مصدر جزء الصورة، لذلك قررنا إضافته في الفيديو، وأكثر من ذلك بقليل.
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
حقوق النشر (ج) 2021 إلى الوقت الحاضر لجوناثان نادر
حقوق الطبع والنشر (ج) 2020 إلى الوقت الحاضر لوكاس نيستلر
حقوق الطبع والنشر (ج) 2020 إلى الوقت الحاضر للدكتور تيم سكارف
حقوق الطبع والنشر (ج) 2020 إلى الوقت الحاضر لدانيال جاتيس
الكود مرخص بموجب نماذج ترخيص MIT المرخصة بموجب ترخيص Apache 2.0