GPT
C

thibaud/controlnet-openpose-sdxl-1.0

קוד פתוח

thibaudother2023-08-13

  • diffusers
  • stable-diffusion-xl
  • stable-diffusion-xl-diffusers
  • text-to-image
  • controlnet

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

  • 10.0 GBמשקל הקבצים
  • 71,189הורדות בחודש
  • 432לייקים

מה זה

מדובר במשקולות ControlNet שאומנו ישירות על גבי הגרסה הראשונה של SDXL Base, במטרה לקבל שלדי OpenPose ולהכתיב לפיהם את מבנה הדמות. המפתח אימן את המודל במשך 15,000 צעדים על תת קבוצה של LAION בגודל מינימלי של 768 פיקסלים, תוך שימוש בכרטיס A100 יחיד ובדיוק fp16.

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

מתאים ל

  • הכתבת פוזות לדמויות ב־SDXL

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

  • עבודה בתהליכי ComfyUI

    שילוב ישיר בתהליכי עבודה מוכנים של ComfyUI באמצעות גרירת תמונות הדוגמה ישירות לממשק.

  • מחקר והתנסות מקומית

    בדיקת התנהגות מנגנון ה־ControlNet על מודל הבסיס של SDXL בסביבת diffusers עם כרטיסי מסך חזקים.

איפה זה נופל

האימון הסתכם ב־15,000 צעדים בלבד עם batch size קטן יחסית של שתיים וצבירת גרדיאנטים של שמונה, על כרטיס A100 בודד. זה היקף אימון צנוע יחסית לגודל של SDXL. המשמעות היא שבתנוחות מורכבות במיוחד, בזוויות צילום חריגות או כשיש מספר דמויות צפופות בפריים, הוא עלול לאבד אחיזה ולא לדייק בהתאמה לשלד. מומלץ לבדוק אותו מראש על מגוון רחב של פוזות לפני שמשלבים אותו בזרימת עבודה קבועה.

שאלות
נפוצות

איך אפשר לשלב אותו מהר בפרויקט קיים?

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

האם המודל מתאים למוצר מסחרי שפתוח למשתמשים משלמים?

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

איך מריצים

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

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

from diffusers import DiffusionPipeline

pipe = DiffusionPipeline.from_pretrained("thibaud/controlnet-openpose-sdxl-1.0")
img = pipe("a photo").images[0]

הרישיון

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

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