אימון מודלים לסגמנטציה: SAM, U-Net, SegFormer

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

תחומי פיתוח AI

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1365
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1330
  • עיצוב לוגו לחברת B2B Advance
    עיצוב לוגו לחברת B2B Advance
    776
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1077
  • פיתוח לוגו חברת AIDER
    פיתוח לוגו חברת AIDER
    1022
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1113

מדוע סגמנטציה של תמונות נשברת על נתונים אמיתיים

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

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

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

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

מה משתנה לאחר ההטמעה: אפקטים ומטריקות

האפקט המדיד הראשון — שיעור הפריימים שעוברים לבדיקה ידנית. לפני ההטמעה המפעיל סוקר כמעט את כל הזרם, אחרי — רק מקרים שנויים במחלוקת, בדרך כלל 10–20% מהפריימים. הזמן שלו מוקדש למצבי גבול שבהם המודל לא בטוח, ולא לסקירה מכנית של כל הארכיון.

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

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

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

בנפרד אנחנו בודקים עמידות לשינוי בתנאי הצילום: תאורה אחרת, אופטיקה חדשה, זווית שהשתנתה, מנת חומר גלם שהתחלפה. המטריקה כאן היא ירידת האיכות על סט מושהה של פריימים חדשים; אם היא גבוהה מהמוסכם, מאמנים מחדש את המודל על 5–10% דוגמאות טריות ומריצים את הבדיקה שוב.

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

השוואת גישות: מודל מוכן, אימון מחדש, ארכיטקטורה עצמאית

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

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

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

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

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

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

שלבי העבודה: מביקורת נתונים ועד מסירת המודל

סגמנטציה בהתחלה נתקלת בנתונים, לא בארכיטקטורה: הבחירה בין U-Net, SegFormer וגישה מבוססת SAM — שאלה של הצעד האחרון. הסימון והמטריקות קובעים אם המודל יהיה כשיר לעבודה, ולכן הפרויקט מתנהל ברצף קבוע שבו כל שלב נסגר בארטיפקט שניתן לבדוק.

  1. פירוק המשימה והמטריקות. קובעים מה נחשב אובייקט בתצלום: מחלקות, גבולות, גודל מינימלי של אזור משמעותי. מסכמים על מטריקת היעד — IoU ו-Dice לכל מחלקה בנפרד, ולא מספר ממוצע אחד.

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

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

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

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

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

מה מקבלים לידיים: סימון, משקלים, תיעוד

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

  • סט נתונים מסומן — מסכות לכל מחלקות היעד בפורמט אחיד, עם חלוקה קבועה לאימון, ולידציה ובקרה מושהה. הסימון מנוהל בגרסאות: רואים אילו אזורים תוקנו, בידי מי ועל איזה בסיס, והמטריקה של כל גרסת מודל משוחזרת על אותו חתך נתונים.
  • משקלי המודל המאומן — התוצאות הסופיות ונקודות הבקרה של האימון יחד עם התצורה שבה הושגו: ארכיטקטורה (U-Net, SegFormer, גישת SAM — לפי המשימה), סכמת אוגמנטציות, פרמטרי אימון, קיבוע האקראיות. ההרצה חוזרת ומניבה תוצאה דומה.
  • גרסאות הסימון — יומן שינויים עם הסיבה לתיקונים וקשירת "גרסת נתונים → מטריקה". זה מאפשר להבדיל בין שיפור המודל לשיפור הסימון ולא לאמן יתר על שגיאות המסמנים.
  • סכמת הצינור — עיבוד מקדים, חיתוך תמונות גדולות לשברים עם חפיפה והרכבה חזרה, עיבוד מסכות לאחר מעשה (סינון אזורים קטנים, החלקת גבולות), פורמט פלט למערכת שלכם.
  • תקנון בקרת איכות — מטריקת ההסכמה בין המסמנים (IoU לפי מחלקות) ושיעור הפיקסלים השנויים במחלוקת; מסכה עוברת בדיקה חוזרת אם הפער גבוה מהסף, ולא "בעין".
  • תקנון אימון מחדש — טריגרים (ירידת מטריקה בדומיין חדש, דריפט צילום, מחלקת אובייקטים חדשה), סדר הפעולות, מי מקבל את ההחלטה על הפריסה ואיך מאמתים גרסה חדשה לפני החלפת הנוכחית.
  • תיעוד המודל — כרטיס מודל עם נתוני האימון, גבולות התחולה, מחלקות שגיאה ידועות, הוראות הרצה ונסיגה למשקלים קודמים.
  • סקריפטים לאימון והערכה — הרצה ניתנת לשחזור בתשתית שלכם, כדי שאימון מחדש לא יהפוך לפרויקט חד-פעמי.

מקרה בוחן: בקרת פגמים בקו ייצור

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

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

מטריקות לפני ואחרי

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

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

אימון מחדש על פריימים חדשים הולך באותו מסלול: סימון, בדיקה על סט מושהה, החלפת משקלים לאחר אישור המטריקות.

במה שונה סגמנטציה של תמונות מזיהוי אובייקטים?

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

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

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

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

בפועל זו לא בחירה שמדירה אחת את השנייה: גלאי מציע אזורים, ומודל סגמנטציה (U-Net, SegFormer וארכיטקטורות קרובות) מדייק את הגבולות בתוכם. סכמה היברידית מקטינה את היקף הסימון היקר ושומרת על דיוק ברמת הפיקסל במקום שצריך אותו.

ספקות טכניים לפני תחילת הפרויקט

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

כמה תמונות צריך לסמן?

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

איך לדעת שהמודל אומן יתר על המידה?

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

מה עושים כשהפריימים מתיישנים?

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

אפשר להריץ את הפתרון על הציוד שלנו?

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

נדון במשימה ונחזור עם הערכה ותוכנית

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

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

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

  • מה יידרש מכם: 100–300 צילומים לכל תרחיש צילום, מומחה לבדיקת מקרים שנויים במחלוקת, גישה לסביבת הפריסה.
  • פירוק המשימה: סוג הסגמנטציה — בינארית, רב-מחלקתית, לפי מופעים — ופורמט התוצאה: מסכות, פוליגונים, שטחי אובייקטים.
  • הרכב העבודות: סימון סט הנתונים, אימון והשוואת ארכיטקטורות, עיבוד מסכות לאחר מעשה, השתלת המודל בתהליך שלכם.
  • סכמת בקרת איכות: סט מושהה, שיעור הפיקסלים הנכונים וחפיפת המסכות החזויות עם הייחוס, בקרה נפרדת על מחלקות נדירות.
  • הרצת פיילוט: אימון על חלק מהנתונים ומדידת מטריקות על צילומים אמיתיים; קריטריוני הקבלה נקבעים לפני תחילת העבודות.
  • תוכנית עבודה: שלבים, לוחות זמנים, נקודות תיאום ואחראי מכל צד. תוכנית מסירה: משקלי המודל, תצורות הרצה, הוראות לאימון מחדש על נתונים חדשים.

תארו את המשימה — נחזור עם הערכה ותוכנית.