זיהוי עצמים (Object Detection)

יסודות בינה מלאכותית

הגדרה

זיהוי עצמים (Object Detection) הוא משימה בראייה ממוחשבת המזהה גם את המיקום וגם את הסיווג של כמה עצמים בתוך תמונה או וידאו בו-זמנית, ולא רק קובעת את תוכנה הכללי.

מה זה זיהוי עצמים, ובמה הוא שונה מסיווג תמונה

זיהוי עצמים הוא משימה בראייה ממוחשבת שמטרתה לא רק לקבוע מה מופיע בתמונה, אלא גם היכן. אלגוריתם זיהוי-עצמים מקבל תמונה או פריים-וידאו כקלט, ומחזיר כפלט רשימה של "תיבות-תיחום" (bounding boxes) — מלבנים שמסמנים את מיקום כל עצם שזוהה — יחד עם תווית-סיווג לכל תיבה, כמו "מכונית", "כלב" או "אדם". זה שונה מהותית מסיווג-תמונה (Image Classification) הקלאסי, שמניח בדרך-כלל עצם דומיננטי בודד ומחזיר רק תווית אחת עבור התמונה כולה. תמונת-רחוב עם כמה מכוניות והולכי-רגל תסווג פשוט כ"רחוב", בעוד זיהוי-עצמים ימקם ויסווג כל רכב והולך-רגל בנפרד.

גישות קלאסיות, לפני עידן הלמידה העמוקה

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

2014: R-CNN ותחילת עידן הלמידה העמוקה בזיהוי עצמים

התפנית המכרעת הגיעה ב-2014, כשרוס גירשיק ועמיתיו מאוניברסיטת קליפורניה בברקלי פרסמו את R-CNN (Regions with CNN features) — שיטה שהחליפה את חילוץ-המאפיינים הידני ברשת-קונבולוציה (CNN) שלומדת את המאפיינים בעצמה מהנתונים. R-CNN עובד בשני שלבים: קודם אלגוריתם נפרד מציע כמה אלפי "אזורים חשודים" בתמונה שעשויים להכיל עצם, ואז CNN מסווג כל אזור כזה בנפרד. הגישה הזאת, המכונה "דו-שלבית" (two-stage), שיפרה את הדיוק בפער ניכר מכל מה שקדם לה, ובהמשך התפתחה לגרסאות מהירות יותר כמו Fast R-CNN ו-Faster R-CNN.

שיטות חד-שלביות: YOLO ומהירות בזמן אמת

ב-2016 הציג ג'וזף רדמון, אז מאוניברסיטת וושינגטון, גישה שונה לגמרי: YOLO (You Only Look Once), שמוותרת על שלב הצעת-האזורים הנפרד ומפעילה רשת-נוירונים אחת בלבד שמנתחת את כל התמונה בבת-אחת ומנבאת ישירות את כל תיבות-התיחום והסיווגים שלהן. הגישה ה"חד-שלבית" (one-stage) הזאת מהירה משמעותית משיטות דו-שלביות כמו R-CNN, ולכן מתאימה לעיבוד בזמן-אמת — מצלמת-רכב אוטונומי או מצלמת-אבטחה — במחיר של דיוק מעט נמוך יותר במקרים מסוימים. הפשרה הזאת בין מהירות לדיוק היא שיקול-מפתח בבחירת ארכיטקטורת זיהוי-עצמים לכל יישום בפועל.

איך מודדים הצלחה: מאגרי-נתונים ומדדי-הערכה

התקדמות התחום נמדדת מול מאגרי-נתונים ותחרויות סטנדרטיות. PASCAL VOC, שרץ מדי שנה בין 2005 ל-2012 ביוזמת קונסורציום אקדמי אירופי, היה מהראשונים שקבעו פרוטוקול-הערכה משותף לתחום. MS COCO, שפרסמה מיקרוסופט ב-2014, הרחיב את קנה-המידה למאות-אלפי תמונות ותוויות מפורטות יותר, והפך לבנצ'מרק המוביל כיום. מדד-ההצלחה המקובל, mAP (Mean Average Precision), משלב דיוק וכיסוי תוך שימוש ב-IoU (Intersection over Union) — מדד-חפיפה שבודק כמה תיבת-התיחום שהאלגוריתם ניבא חופפת לתיבה האמיתית — לציון מספרי יחיד שמאפשר להשוות אלגוריתמים שונים בצורה הוגנת.

יישומים בעולם האמיתי

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

שאלות נפוצות ❓

מה ההבדל בין סיווג תמונה לזיהוי עצמים?

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

מה ההבדל בין שיטות דו-שלביות לחד-שלביות?

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

איך מודדים כמה טוב אלגוריתם זיהוי עצמים?

באמצעות מדד mAP (Mean Average Precision), המחושב מתוך IoU — מדד-חפיפה בין תיבת-התחזית לתיבה האמיתית — על מאגרי-בנצ'מרק סטנדרטיים כמו PASCAL VOC או MS COCO, כדי לאפשר השוואה הוגנת בין אלגוריתמים שונים.

היכן זיהוי עצמים בשימוש בפועל?

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