העולם הטכנולוגי ידע כמה אבני דרך משמעותיות: בשנת 1985 יצאה לראשונה מערכת ההפעלה Windows, ב-2007 הושק מכשיר האייפון הראשון וב-2021 נכנס לחיינו יישומון Brickit ומשנה את כללי המשחק. איך יישומון פשוט יכול להפיח חיים בערימת הלגו המאובקת שלכם?
לגו הוא אחד המשחקים המוכרים ביותר בעולם, והוא מאפשר לנו לבנות דגמים של כל העולה על רוחנו מלבני פלסטיק צבעוניות כבר כמעט 100 שנה [1]. היתרון המשמעותי של המשחק על פני צעצועים רבים הוא המודולריות שלו והיצירתיות שהיא מאפשרת למשתמש. ניסיתם פעם להרכיב פאזל שחסר בו חלק? הפאזל כולו על 10,000 חלקיו יהפוך לחסר תועלת בן רגע. אבל אם חסר לכם חלק לגו - קחו חלק מהרכבה אחרת, או צרפו כמה חלקים ובנו מהם את החלק החסר לכם. ובכלל, מי אמר שאתם צריכים לבנות אך ורק את המודל המקורי שהופיע על האריזה? תנו דרור לדמיון והרכיבו כל דבר בעולם, דולפין יורק אש (מפלסטיק כמובן) ואפילו מארז לערגליות תות או לוופלים האהובים עליכם בטעם לימון [2].
משתמשי לגו רבים יודעים כי אוסף לבני לגו יכול להכיל חלקים ממודלים שונים שנקנו עם הזמן, ושחלק מהוראות ההרכבה אבדו לעד. האם נגזר עלינו לא לבנות את המודלים האלו שוב לעולם? אולי, אבל כאן נכנס יישומון חדש ומגניב שמשלב למידת מכונה וראייה ממוחשבת עם סטטיסטיקה בסיסית, ומאפשר לכם להרכיב מודלים חדשים שלא דמיינתם שאפשר להרכיב עם לבני הלגו שלכם.
היישומון החדשני נקרא Brickit, והוא נתמך כרגע רק במכשירי אייפון [3]. השימוש ביישומון פשוט מאוד: מפזרים את ערימת הלגו ומצלמים אותה בעזרת היישומון ומצלמת הטלפון. יש לפזר את הערימה כך שהתמונה תכלול כמה שיותר חלקי לגו ולצפות בקסם [4].
האפליקציה עובדת בכמה שלבים. בשלב הראשון היישומון מנסה לזהות את כל חלקי הלגו בתמונה. ייתכן שבערימה שלנו יש אלפי חלקים, ולכן שלב זה אינו מתבצע מיידית אלא לוקח כמה שניות ואפילו עשרות שניות. נזכור גם כי החומרה במכשיר האייפון אינה מתקדמת במיוחד ביחס למחשבים ניידים או נייחים המשמשים לחישובים מורכבים בהרבה - בכל זאת מדובר במכשיר שנדרש להיכנס לכיס [5]. התהליך האלגוריתמי המתבצע בשלב זה נקרא זיהוי עצמים (Object Detection), וכתבנו עליו בעבר [6]. שיטה זו מסמנת מלבן זיהוי מסביב לכל עצם בתמונה, לבנת לגו במקרה שלנו, והמלבן מציג את מיקומה בתמונה. בנוסף, המערכת הלומדת עוברת אימון לסינון חלקים. המטרה באימון היא שהמערכת תדע לזהות את גיאומטריית החלקים השונים בשלל זוויות וסוגי תאורה ולהפריד אותם מעצמים אחרים שהשתחלו לערימה אך אינם שייכים ללגו (כמו אבק, שערות או חלקי משחקים אחרים).
בשלב הבא היישומון סופר את החלקים מכל סוג, ובונה היסטוגרמה (כלי סטטיסטי שכתבנו עליו ממש לא מזמן [8]). בעזרת היסטוגרמה אפשר לחפש מודלים של הרכבות לגו שכוללים את החלקים שבערימה. המודלים האלו הם חלק מקבוצה סגורה של מודלים השמורים ביישומון, וכנראה שמודל לחבילת ופלים לא נמצא ביניהם; מה שכן נמצא זה תפריט אינטראקטיבי של אלפי הרכבות אפשריות (המדורגות באופן פעיל על ידי המשתמשים) כך שהמגוון מובטח. לאחר הבחירה היישומון מציע הוראות הרכבה בסדר הגיוני ומציג היכן בערימה נמצא כל חלק - מידע השמור אצלו מהשלב הראשון. אם חסרים חלקים היישומון מציין זאת, ואף מציע חלקים חלופיים.
היישומון מסוגל לזהות מאות ואף אלפי חלקים בתמונה, ובכך ייחודיותו. הזיהוי המצוין מתאפשר בזכות העובדה שיש מעט מאוד סוגים לחלקים הפשוטים והנפוצים. חלקים מיוחדים ונדירים קשה יותר לזהות. כך מוזנת ליישומון תמונה נקייה למדי ללא הפרעות או הסתרות; חלקים מוסתרים פשוט לא יזוהו, ואין בכך הפסד משמעותי. כזכור, זיהוי עצמים הוא אלגוריתם חשוב מאוד בעולם הראייה הממוחשבת כי הוא מאפשר לנו לזהות מצבים. למשל, רכב אוטונומי שמזהה מולו הולך רגל או מפגע על הכביש [7]. בנוסף, השיטה עוזרת לרובוטים להתמצא במרחב, לנהל קווי ייצור ולספק לנו את המוצר הנכון מהמחסן הלוגיסטי.
Brickit הוא יישומון מעניין ומהנה אשר מנגיש לנו בצורה נוחה ונעימה אלגוריתם מרכזי בעולם הראייה הממוחשבת ומאפשר לנו להפיח חיים ויצירתיות בערימת הלגו הישנה שלנו. יש לכם מכשיר שתומך ביישומון? מוזמנים לשתף אותנו במודלים שהרכבתם בזכותו בתגובות.
עריכה: שיר רוזנבלום-מן
מקורות וקריאה נוספת:
[1] - חדשנות ויצירתיות בחברת לגו
[2] - שאלת סקר המופנית לאוהבי ערגליות תות וופלים בטעם לימון
[3] - מדוע חלק מהיישומונים מפותחים אך ורק למכשירי אייפון?
[4] - סרטון הדגמה של היישומון
[5] - סרטון השוואה בין מאיצים חישוביים של מחשבים למאיצים חישוביים של טלפונים סלולריים
[6] - פוסט בנושא זיהוי עצמים בתמונות - מדע גדול, בקטנה
[7] - פוסט בנושא רכבים אוטונומיים - מדע גדול, בקטנה
[8] - פוסט בנושא היסטוגרמות של תמונות - מדע גדול, בקטנה