מעקב אחר אובייקטים בווידאו בזמן אמת עם מרכוז ושחזור אוטומטיים
צוות הפקת וידאו נזקק לכלי שיכול לעקוב אחר אובייקט נבחר בצילום וידאו ולשמור אותו ממורכז אוטומטית בפריים תוך כדי תנועה – עם מעברים חלקים, אפשרויות מרובות לאלגוריתמים של מעקב, ושחזור אוטומטי כאשר עוקב האובייקט איבד את היעד.
דון בפרויקט שלךהאתגר
שמירה על נושא נע ממורכז בווידאו דרשה מאמץ ידני או ציוד מיוחד ויקר:
- מסגור מחדש ידני — עורכים בילו שעות רבות בתיקון ידני של מיקומים באמצעות Keyframes כדי לשמור על הנושאים ממורכזים
- כשלים במעקב — אובייקטים נעו מאחורי מכשולים, שינו מראה, או נעו מהר מדי עבור עוקבי אובייקטים פשוטים
- ללא שחזור — כאשר עוקב אובייקטים איבד את היעד שלו, כל סשן המעקב היה צריך להתחיל מחדש מאפס
- פלט רועד — קואורדינטות מעקב גולמיות הפיקו תנועות מצלמה קופצניות ולא טבעיות
- פשרות באלגוריתם — תרחישים שונים דרשו אלגוריתמים שונים של מעקב (דיוק מול מהירות), אך המעבר ביניהם היה מורכב
- בחירה אינטראקטיבית — משתמשים נזקקו לדרך אינטואיטיבית לבחור את יעד המעקב בזמן ריצה
הפתרון שלנו
בנינו מערכת מעקב ומרכוז אובייקטים בזמן אמת עם מספר אלגוריתמי מעקב של OpenCV, שחזור אוטומטי מבוסס התאמת מאפיינים, ממוצע אקספוננציאלי חלק לתנועה טבעית, ו-GUI אינטראקטיבי לבחירת אובייקטים.
ארכיטקטורה
- מנוע מעקב: OpenCV עם מימושי עוקבי CSRT, KCF ו-MOSSE
- מערכת שחזור: מיצוי מאפייני ORB עם זיהוי מחדש מבוסס Homography
- מנוע מרכוז: טרנספורמציה אפינית עם החלקת ממוצע נע אקספוננציאלי
- ממשק בחירה: GUI של לחיצה וגרירה עם משוב ויזואלי
- תצורה: הגדרות מבוססות YAML עבור כל הפרמטרים של מעקב, תצוגה ומרכוז
אלגוריתמי מעקב
המערכת תומכת בשלושה אלגוריתמי מעקב, הניתנים לבחירה באמצעות תצורה:
CSRT (Channel and Spatial Reliability)
הדיוק הטוב ביותר לתרחישים מורכבים. משתמש במפות אמינות מרחביות ובמשקולות ספציפיות לערוץ כדי לטפל בחסימה חלקית ושינויים במראה. מתאים כאשר דיוק חשוב יותר ממהירות.
KCF (Kernelized Correlation Filters)
ביצועים מאוזנים עבור רוב מקרי השימוש. משתמש בקורלציה מעגלית בתחום פורייה למעקב יעיל עם דיוק טוב. מתאים למעקב כללי בקצבי פריימים בינוניים.
MOSSE (Minimum Output Sum of Squared Error)
עוקב האובייקטים המהיר ביותר עבור יישומים בזמן אמת. משתמש במסנני קורלציה אדפטיביים עם עלות חישובית נמוכה במיוחד. מתאים כאשר קצב הפריימים קריטי והאובייקט עוקב אחר נתיבים צפויים.
מערכת שחזור אוטומטי
כאשר עוקב האובייקטים הראשי מאבד את היעד (אובייקט מוסתר, יצא מחוץ לפריים, שינוי מראה), המערכת מנסה זיהוי מחדש אוטומטי:
- מיצוי מאפיינים — תיאורי ORB (Oriented FAST and Rotated BRIEF) ממוצים גם מאזור האובייקט הראשוני וגם מהפריים הנוכחי
- התאמת מאפיינים — התאמה ברוט-פורס עם מרחק Hamming, מסוננת לפי מבחן היחס של Lowe כדי לשמור רק התאמות ודאיות
- אמידת Homography — Homography מבוסס RANSAC מחושבת מנקודות מאפיינים מותאמות, תוך דחיית חריגים
- שחזור תיבת תוחם — פינות תיבת התוחם הראשונית עוברות טרנספורמציה באמצעות ה-Homography למיקום החדש של האובייקט
- אתחול מחדש של עוקב האובייקטים — אם המיקום המשוחזר תקף (מימדים חיוביים, בתוך גבולות הפריים), עוקב האובייקטים מאותחל מחדש במיקום החדש
זה מאפשר למערכת להתאושש מחסימות קצרות ולרכוש מחדש את היעד ללא התערבות משתמש.
מרכוז חלק
הזזת פריים
ברגע שמיקום האובייקט ידוע, המערכת ממקדת אותו באמצעות טרנספורמציה אפינית:
- מיקומי מרכז האובייקט ומרכז הפריים מחושבים
- היסט הזזה נדרש מחושב
- הפריים מוזז באמצעות טרנספורמציה אפינית עם צבע ריפוד הניתן להגדרה
הפחתת ריצוד
קואורדינטות המעקב הגולמיות רועשות. המערכת מיישמת החלקת ממוצע נע אקספוננציאלי:
- גורם החלקה הניתן להגדרה שולט בפשרה בין תגובתיות ליציבות
- ערכים נמוכים יותר מייצרים תנועה חלקה יותר, קולנועית יותר, עם השהיה קלה
- ערכים גבוהים יותר עוקבים בצורה הדוקה יותר אך מציגים יותר ריצוד
- התוצאה היא התנהגות מעקב מצלמה בעלת מראה טבעי
בחירת אובייקט אינטראקטיבית
נתמכות שלוש שיטות בחירה:
- מצב GUI — לחיצה וגרירה על מסגרת הווידאו עם משוב ויזואלי על גודל, אישור באמצעות מקש רווח/אנטר, ביטול באמצעות מקש Escape
- מצב ROI — בורר אזור עניין (region-of-interest) המובנה של OpenCV
- מצב קואורדינטות — תיבת תוחם מוגדרת מראש מקובץ תצורה
תצוגה בזמן אמת
שכבת העל של הצופה מציגה:
- תיבת תוחם סביב האובייקט הנעקב
- צלב מרכוז להתייחסות ליישור
- מחוון מצב מעקב (במעקב / אבוד / מושהה)
- FPS נוכחי לניטור ביצועים
- שם אלגוריתם המעקב הפעיל
פקדי הפעלה
- הפעלה/השהיה — הפעלת/הפסקת מעקב באמצעות מקש רווח
- איפוס — בחר יעד מעקב חדש באמצע הסשן
- לולאה — הפעלה מחדש אוטומטית של הווידאו עם שמירת מצב המעקב
- יציאה — שחרור משאבים נקי
תכונות עיקריות
- שלושה אלגוריתמי מעקב — CSRT (דיוק), KCF (מאוזן), MOSSE (מהירות) – ניתנים להחלפה באמצעות תצורה
- שחזור אוטומטי — התאמת מאפייני ORB עם Homography מאתרת מחדש יעדים אבודים
- מרכוז חלק — ממוצע נע אקספוננציאלי מבטל ריצוד לתנועה טבעית
- בחירה אינטראקטיבית — GUI של לחיצה וגרירה עם משוב ויזואלי לבחירת יעד
- ביצועים בזמן אמת — 25-60+ FPS בהתאם לבחירת האלגוריתם
- הפעלה בלולאה — הפעלה חוזרת רציפה של הווידאו עם מעקב מתמשך
- תצורת YAML — כל הפרמטרים (אלגוריתם, החלקה, תצוגה, רזולוציה) ניתנים להגדרה
- עיצוב מודולרי — הפרדה נקייה בין רכיבי עוקב האובייקטים, בורר האובייקטים ומעבד הווידאו
תוצאות
מחסנית טכנולוגית
caseStudyDetail.more מקרי בוחן
גלה עוד מהיישומים הטכניים שלנו
עריכת וידאו חוצת פלטפורמות למובייל עם ניתוח מבוסס AI
יוצרי תוכן ואנשי מקצוע בתחום המדיה היו זקוקים לפתרון עריכת וידאו מבוסס מובייל שיוכל למנף תוצאות ניתוח מונעות AI עבור תהליכי עריכה חכמים יותר תוך כדי תנועה.
זיהוי דובר פעיל מבוסס AI להפקת וידאו מרובה מצלמות
חברת הפקות מדיה העוסקת בצילומי ראיונות ודיוני פאנל מרובי מצלמות נזקקה לדרך אוטומטית לזהות מי מדבר בכל רגע נתון על פני צילומי וידאו מורכבים.
שאלות נפוצות
MicrocosmWorks הטמיעה מודול זיהוי מחדש (re-identification module) שמאחסן הטמעות של מאפיינים ויזואליים של האובייקט הנעקב באמצעות CNN קל משקל. כאשר המעקב אובד עקב הסתרה או יציאה מהפריים, המערכת מפעילה מצב חיפוש המשווה אובייקטים שזוהו מול ההטמעה המאוחסנת, ומשחזרת את המעקב תוך 2-3 פריימים מרגע הופעתו מחדש של האובייקט.
MicrocosmWorks ביצעה אופטימיזציה ל-pipeline המעקב כדי לתמוך בעיבוד של 60fps בחומרת NVIDIA Jetson Orin ו-30fps במעבדי GPUs ברמת צרכן כמו ה-RTX 3060. חישובי המרכוז האוטומטיים, כולל אינטרפולציית פאן חלקה כדי למנוע תנועות פתאומיות, מוסיפים פחות מ-2ms של תקורה לכל פריים לעלות המעקב הבסיסית.
MicrocosmWorks תכננה מערכת שיכוך תנועה עם פרמטרים ניתנים להגדרה עבור מגבלות תאוצה, מהירות צידוד מרבית, ורדיוס אזור מת סביב מרכז הפריים. אלגוריתם המרכוז משתמש בפיזיקת קפיץ בשיכוך קריטי כדי לייצר תנועות מצלמה חלקות ובאיכות שידור, העוקבות אחר הנושא מבלי לתנודד או לחרוג.
כן, MicrocosmWorks תכננה את המערכת במיוחד עבור דרישות latency של שידור חי, כאשר כל pipeline המעקב והריפריימינג פועל עם השהיה של פריים בודד. המערכת נפרסה עבור שידורי כדורסל, כדורגל וטניס, שם היא מייצרת אוטומטית פלט follow-cam צמוד ממצלמה סטטית רחבת זווית.
MicrocosmWorks בונה מערכות עיבוד וידאו בזמן אמת בתעריפים של $30-$50 לשעה, כאשר פתרון מעקב ומיקום אוטומטי הכולל אימון מודלים, אופטימיזציית GPU ושילוב שידורים דורש בדרך כלל 400-600 שעות פיתוח. אופטימיזציית פריסה בקצה עבור חומרה כמו Jetson מוסיפה כ-80-120 שעות נוספות.
מוכן לשנות את העסק שלך?
בואו נדון כיצד נוכל ליישם פתרונות דומים לאתגרים שלך.