GPT
S

segformer_b2_clothes

קוד פתוח

mattmdjagaother2022-11-24

  • transformers
  • pytorch
  • onnx
  • safetensors
  • segformer

מודל סגמנטציה שמזהה חלקי לבוש וגוף ברמת הפיקסל. הוא שוקל מעט, רץ מהר, ומתאים למי שצריך לחתוך חולצה, מכנסיים או שיער מתמונה של אדם.

  • 27Mפרמטרים
  • 523 MBמשקל הקבצים
  • 219,901הורדות בחודש
  • 507לייקים

מה זה

מדובר בהתאמה של SegFormer B2 על בסיס הנתונים ATR לחלוקת גוף האדם ובגדיו. יש לו 18 תוויות שונות, שמכסות פריטים כמו חולצות, מכנסיים, שמלות, נעליים, וגם איברי גוף כמו ידיים, רגליים, פנים ושיער. בזכות 27 מיליון פרמטרים בלבד, הוא קל מאוד ביחס למודלי ראייה ממוחשבת מודרניים, אבל עדיין נותן דיוק ממוצע של 0.80 וציון IoU כללי של 0.69.

המספרים האלה מראים הבדל ברור בין פריטים גדולים לקטנים. אזורים רחבים וברורים כמו פנים, מכנסיים, רגליים ושיער מקבלים דיוק של 90 אחוז ומעלה וזיהוי גבולות יציב. לעומת זאת, פריטים מורכבים או דקים יותר מורידים את הממוצע בצורה חדה.

מתאים ל

  • מדידה וירטואלית

    זיהוי ובידוד של חולצות ומכנסיים בתמונות משתמשים לצורך החלפת בגדים.

  • עריכת תמונות אופנה

    חיתוך אוטומטי של בגדים ושיער להחלפת צבעים או שינוי רקע מהיר.

  • טשטוש או הסרת פריטים

    איתור משקפי שמש או כובעים על פנים לצורך פרטיות או עיבוד תמונה ממוקד.

איפה זה נופל

החולשה העיקרית היא אביזרים קטנים וצרים. לפי נתוני המדידה, חגורות מקבלות דיוק של 0.35 ו־IoU של 0.30 בלבד, וצעיפים צונחים ל־IoU של 0.29. שמלות מקבלות ציון IoU של 0.55 בלבד, כנראה בגלל בלבול עם חצאיות או חולצות. אם המוצר שלכם נשען על זיהוי מדויק של חגורה או צעיף, המודל הזה כנראה יאכזב אתכם לחלוטין בלי אימון נוסף.

שאלות
נפוצות

האם המודל יזהה רקע מאחורי הבגדים בצורה נקייה?

כן, זיהוי הרקע הוא החלק החזק ביותר שלו. יש לו דיוק וציון IoU של 0.99 עבור תגית הרקע, כך שהוא מפריד היטב בין האדם לסביבה.

אפשר להשתמש בו לזיהוי שמלות ערב?

הוא יודע לזהות שמלות, אבל ברמת דיוק נמוכה משמעותית משאר הבגדים. ציון ה־IoU של שמלות עומד על 0.55 בלבד, ולכן הוא נוטה לפספס חלקים מהשוליים או לבלבל בינן לבין חצאיות.

איך מריצים

המודל שוקל 523 מגה בייט, כך שכל מעבד גרפי פשוט ואפילו מעבד מרכזי רגיל יריצו אותו בלי בעיה דרך ספריית transformers. אין שום סיבה לשלם לשרת יקר או לקרוא ל־API חיצוני עבור משקל כזה, אלא אם כן אתם מתמודדים עם תעבורה כבדה של אלפי תמונות בשנייה שדורשת ניהול תשתית מורכב.

הקוד שפורסם פתוח בגיטהאב ומבוסס על הארכיטקטורה הסטנדרטית של SegFormer. טוענים את המשקולות, מעבירים תמונה, ומקבלים מסיכה עם האינדקסים של הפריטים.

from transformers import pipeline

pipe = pipeline("image-segmentation", model="mattmdjaga/segformer_b2_clothes")
print(pipe("שלום"))

הרישיון

הרישיון מוגדר בתור רישיון מותאם ומפנה ישירות לרישיון המקורי של SegFormer מבית אנבידיה. הרישיון המקורי של הפרויקט מגביל לעיתים קרובות שימוש מסחרי ומיועד למחקר, ולכן חובה לקרוא את נוסח הרישיון במאגר של אנבידיה לפני שמשלבים את המודל במוצר רווחי.

הרישיון המלא בעמוד המודל ↗