GPT
M

mgp-str-base

קוד פתוח

alibaba-damoרישיון לא דווח2022-11-23

  • transformers
  • pytorch
  • safetensors
  • mgp-str
  • image-to-text

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

  • 148Mפרמטרים
  • 1.1 GBמשקל הקבצים
  • 111,650הורדות בחודש
  • 65לייקים

מה זה

מדובר במודל ראייה טהור למשימות זיהוי טקסט בסצנות טבעיות, המבוסס על ארכיטקטורת ViT עם משקולות התחלתיות של DeiT-base ו־12 שכבות. הרעיון המרכזי כאן הוא חיזוי בכמה רמות פירוט שונות בו-זמנית: אותיות בודדות, חלקי מילים לפי BPE וחלקי מילים לפי WordPiece. מודול ייעודי מחבר את המידע מכל הרמות כדי להוציא את המילה הסופית, מה שמחדיר ידע לשוני בלי להוסיף מודל שפה נפרד.

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

מתאים ל

  • זיהוי מילים בשלטים

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

  • קריאת תוויות מוצרים

    פענוח מקטים, שמות מותגים ומספרים מתוך חיתוכי תמונות באריזות ומחסנים.

  • סריקת לוחיות רישוי

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

איפה זה נופל

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

שאלות
נפוצות

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

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

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

לא. הוא אומן על MJSynth ו־SynthText שמכילים טקסטים באנגלית ובתווים לטיניים בלבד. זיהוי תווים בעברית ידרוש אימון מחדש של ראשי החיזוי על נתונים בעברית.

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("image-to-text", model="alibaba-damo/mgp-str-base")
print(pipe("שלום"))

הקבצים

7 קבצים במאגר, 1.1 GB סך הכול. הקישורים מובילים ישירות ל־Hugging Face.

הרישיון

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

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