GPT
C

coreml-depth-anything-v2-small

קוד פתוח

appleapache-2.02024-06-15

  • coreml
  • depth-estimation

המרת Core ML רשמית של מודל עומק שרץ ישירות על ה־Neural Engine במכשירי אפל. הוא שוקל מעט מאוד ומחזיר מפת עומק בקצב שמספיק לעבודה בזמן אמת.

  • 275 MBמשקל הקבצים
  • 1,482הורדות בחודש
  • 102לייקים

מה זה

מדובר בגרסת ה־small של Depth Anything V2 שהוסבה לעבודה בסביבת אפל. הארכיטקטורה מבוססת על DPT עם שלד של DINOv2 ומכילה 24.8 מיליון פרמטרים. האימון שלה נעשה על כ־600 אלף תמונות מתויגות סינתטיות וכ־62 מיליון תמונות אמיתיות ללא תיוג, במטרה לשפר את הדיוק של קווי המתאר והפרדת האובייקטים בעומק יחסי ומוחלט.

היתרון הגדול של המימוש הזה הוא הירידה בביצועים מול גרסת הפייתורץ' המקורית, שהיא כמעט אפסית. גרסת ה־Float16 מגיעה למשקל של 49.8 מגה בייט בלבד עם שגיאה יחסית זניחה של 0.0089 בהשוואה למקור. הזמנים שנמדדו מראים שהוא רץ בפחות מ־35 מילי-שניות על מכשירי אייפון ומק, מה שהופך אותו לפרקטי על החומרה עצמה בלי צורך בשרתים מרוחקים.

מתאים ל

  • אפקטי טשטוש באפליקציות צילום

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

  • הפרדת רקע בווידאו במק

    ביצועים של 24.58 מילי-שניות במעבדי M3 Max מאפשרים עיבוד רציף לכל פריים ישירות על ה־Neural Engine.

  • מיפוי מרחבי במובייל

    משקל קובץ של 49.8 מגה בייט בגרסת Float16 מאפשר לשלב חישוב מרחקים בלי לנפח את גודל ההורדה של האפליקציה.

איפה זה נופל

ההערכה של המודל נבדקה רק על תמונות שנמתחו לגודל קבוע של 518 על 396 ביחס תצוגה של 4:3. אם תזינו תמונות ברזולוציות אחרות או ביחסי תצוגה שונים, העיוות עלול לפגוע באיכות מפת העומק. בנוסף מדובר בגרסת ה־small בלבד, כך שאובייקטים דקים במיוחד או סצנות עמוסות בפרטים יקבלו פחות חדות ביחס לגרסאות הגדולות של המשפחה הזו.

שאלות
נפוצות

האם גרסת ה־Float16 פחות מדויקת מהמקור?

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

האם אפשר להריץ את המודל על מערכות שאינן של אפל?

הקבצים בחבילה הזו שמורים בפורמט mlpackage של Core ML. הפורמט הזה עובד רק על iOS ו־macOS, כך שלמערכות אחרות צריך לקחת את גרסת הפייתורץ' הרגילה.

איך מריצים

את המודל מורידים כקובץ mlpackage דרך כלי הפקודה של huggingface ומשלבים ישירות בקוד Swift דרך Core ML. הוא מיועד לרוץ מקומית על מעבדי אפל תוך ניצול מלא של ה־Neural Engine. יש שתי גרסאות בחבילה, Float32 במשקל 99.2 מגה בייט ו־Float16 בחצי הגודל.

בפועל כמעט אין סיבה לגעת בגרסת ה־Float32. גרסת ה־Float16 רצה ב־24 עד 34 מילי-שניות על מכשירי אייפון 12 ומעלה ומחשבי מק עם סיליקון, בלי לפגוע כמעט בתוצאה. אם אתם בונים אפליקציה לאקוסיסטם של אפל, אין טעם לשלם על API חיצוני כשזה רץ מקומית בכלום משאבים ובחינם.

pip install -U huggingface_hub
hf download apple/coreml-depth-anything-v2-small

הקבצים

26 קבצים במאגר, 275 MB סך הכול. הקישורים מובילים ישירות ל־Hugging Face.

הרישיון

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

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש
  • שימוש בפטנטים

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