BACKROUND / app.py
mrdilaw's picture
Update app.py
b3134cc verified
import torch
from PIL import Image
import numpy as np
import gradio as gr
from transformers import AutoFeatureExtractor
from huggingface_hub import snapshot_download
import sys
import os
# تحميل ملفات النموذج بالكامل
model_path = snapshot_download(repo_id="briaai/RMBG-1.4", trust_remote_code=True)
# إضافة مجلد النموذج إلى المسار
sys.path.insert(0, model_path)
# استيراد الكلاس المخصص للنموذج
from model import RMBGModel
# تهيئة النموذج
model = RMBGModel.from_pretrained(model_path, trust_remote_code=True)
model.eval()
# تحميل الـ feature extractor
extractor = AutoFeatureExtractor.from_pretrained("briaai/RMBG-1.4")
def process(image):
inputs = extractor(images=image, return_tensors="pt")
with torch.no_grad():
result = model(**inputs)
alpha = result["output"].squeeze().numpy()
alpha = (alpha * 255).astype(np.uint8)
alpha = Image.fromarray(alpha).resize(image.size)
image = image.convert("RGBA")
alpha = alpha.convert("L")
image.putalpha(alpha)
return image
demo = gr.Interface(
fn=process,
inputs=gr.Image(type="pil"),
outputs=gr.Image(type="pil"),
title="إزالة خلفية الصور باستخدام RMBG",
description="ارفع صورة وسيتم إزالة الخلفية تلقائيًا باستخدام نموذج RMBG من briaai."
)
demo.launch()