זיהוי שפת סימנים: MediaPipe, Transformer, CTC

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

תחומי פיתוח AI

שאלות נפוצות

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

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

למה זיהוי שפת סימנים עם AI נשבר בווידאו חי

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

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

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

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

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

מה משתנה אחרי ההטמעה: מהירות, דיוק, עומס

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

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

שיעור זיהויים בטוחים ודחיות של המודל

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

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

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

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

אפשרויות בנייה: מודל זרימה, היברידי, ניתוח לא מקוון

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

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

מתי מספיק ניתוח הקלטה

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

מתי נדרשת זרימה על המכשיר

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

איך מתבצעת ההטמעה: מביקורת וידאו ועד מסירת המודל

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

סימון ואוצר סימנים

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

קבלה בזרימה חיה

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

מה מוסרים לידיים: מודלים, סכמות, נהלים

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

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

תיעוד ואוצר סימנים

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

נוהל כיוונון עדין ובקרת איכות

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

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

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

מדידות לפני ההטמעה

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

מה השתנה בזרימה חיה

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

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

מה לעשות אם הזיהוי כבר עובד אבל נותן תקלות?

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

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

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

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

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

שאלות נפוצות של מהנדסים: דיוק, נתונים, פריסה

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

עד כמה מדויק מזוהים סימנים נדירים ומורכבים?

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

כמה הקלטות צריך לאימון?

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

לאן הולכות הקלטות הווידאו?

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

האם המערכת עובדת בלי רשת?

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

איך לכוונן אצלנו?

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

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

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

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

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

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

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