المستوى: مبتدئ
أنت بتدفع $0.20 لكل صورة على remove.bg، ولو موقعك بيرفع 500 صورة شهريًا ده $100 يطير من جيبك بدون أي قيمة مضافة. السكربت اللي هتبنيه هنا يشيل خلفية أي صورة محليًا في 1.4 ثانية على CPU عادي، بدون API key، وبدون إنترنت أصلاً.
Background Remover محلي بـ Python: ليه و إزاي
إزالة الخلفية مش رفاهية. لو عندك متجر إلكتروني فيه 5000 منتج، أو بتعمل تصاميم سوشيال يومية، أو بتبني CV بصور احترافية، أنت محتاج الخدمة دي بشكل مستمر. السوق عنده 3 خيارات شائعة، اتنين منهم بيكلّفوك بدون داعي.
المشكلة باختصار
الخدمات السحابية زي remove.bg بتاخد $0.20 لكل صورة عالية الجودة. شركة فيها مصمّم واحد بيعالج 50 صورة يوميًا بتدفع $300 شهريًا. ده غير إن كل صورة بتروح لسيرفر طرف تالت، يعني صور منتجاتك قبل الإطلاق ممكن تتسرّب أو تتخزّن في لوجات.
الطريقة دي بتفشل في 3 سيناريوهات: لو الإنترنت بطيء و عندك 200 صورة، لو الصور حساسة (وثائق، طبية، عقود)، أو لو بتشتغل على pipeline أوتوماتيكي محتاج زمن استجابة ثابت. مكتبة rembg بتحل الثلاثة في سطرين كود.
إيه هو rembg وإزاي بيشتغل (مثال للمبتدئ)
تخيل صورة شخص واقف قدّام جدار. مخّك بيفصل الشخص عن الجدار في جزء من الثانية لأنه فاهم فكرة "الحدود" — فين بيخلص الجسم وفين بتبدأ الخلفية. لما تشوف صورة قطة على سجادة، أنت مش بتفكّر "إيه القطة وإيه السجادة"، عينك بتفصلهم تلقائيًا من سنين تدريب على ملايين الصور.
rembg بيعمل نفس الكلام بنموذج اسمه U²-Net. النموذج اتدرّب على 10 آلاف صورة موسومة يدويًا (segmentation masks) لحد ما اتعلّم يميّز الـ foreground عن الـ background. لما بتديله صورة جديدة، بيرجّع mask أبيض وأسود: الأبيض هو اللي تفضل، الأسود يتشال.
التعريف الدقيق: rembg مكتبة Python مفتوحة المصدر مبنية على ONNX Runtime، بتشغّل نماذج segmentation زي U²-Net و BRIA RMBG-1.4 محليًا. بتقبل bytes أو PIL Image وبترجّع PNG شفاف بنفس الأبعاد.
التركيب في 30 ثانية
# 1. بيئة نظيفة
python -m venv .venv
source .venv/bin/activate
# 2. تركيب
pip install "rembg[cpu]" pillow
# 3. تحميل النموذج (مرة واحدة، 176MB)
python -c "from rembg import new_session; new_session('u2net')"
بعد التركيب الأول النموذج بيتخزّن في ~/.u2net/ فالمرات الجاية بتشتغل بدون إنترنت. لو على ويندوز استخدم .venv\Scripts\activate.