יצירת מקורות נתונים והוספת נתונים

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

יצירת עדכוני תוכן

כדי להזרים נתוני וידאו, קודם צריך ליצור זרם.

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

המסוף

יוצרים סטרימינג במסוף Google Cloud .

  1. פותחים את הכרטיסייה Streams במרכז הבקרה של Vertex AI Vision.

    עוברים לכרטיסייה Streams

  2. לוחצים על הרשמה.

  3. מזינים את שם מקור הנתונים ובוחרים אזור. אפשר ללחוץ על הוספת שורה כדי לרשום כמה מקורות בו-זמנית.

  4. כדי ליצור זרם אחד או יותר, לוחצים על הלחצן Register (הרשמה).

הטמעת סרטונים

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

יש מגבלות ושיקולים מסוימים שחלים על סרטונים שהועלו:

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

    אם הסרטון לא עומד במפרטים האלה, יכול להיות ש-Vertex AI Vision לא יעבד את הקלט בצורה טובה.

  • האודיו נשמט במהלך ההטמעה.
  • אם הסטרימינג הוא חלק מאפליקציה שמחוברת למחסן נתונים, הפרמטרים של הווידאו (כמו FPS או רזולוציה) צריכים להיות זהים לכל הסטרימינג. לא נתמכות וריאציות בפרמטרים של נתוני הווידאו ב-RTSP או בפרמטרים של נתוני הווידאו המקומיים.
  • בגלל זמן האחזור של הפעלת המודל, יכול להיות שבסרטונים שהועלו יחסרו כמה שניות ראשונות של תוכן. הזמן הזה יכול להגיע עד 15 שניות.
  • יכול להיות שההעברה תופסק אחרי חיבור ארוך (בממוצע, אחרי 5 שעות). אין אפשרות להתחבר מחדש דרך הכלי vaictl, ולכן המשתמשים צריכים להתחבר מחדש באופן ידני.
  • vaictl הוא כלי שימושי להוספת נתוני וידאו, אבל הוא לא מטפל אוטומטית בשחזור משגיאות בחיבור לרשת. השגיאות האלה יכולות להגיע מצד מקור הנתונים או מצד ההטמעה ב-Cloud. באחריות המשתמש ליצור סקריפט להפעלה מחדש כדי לטפל בסיום לא צפוי של פעולות vaictl.

Vertex AI Vision SDK

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

מחליפים את המשתנים הבאים:

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION_ID: מזהה המיקום. לדוגמה, us-central1. מידע נוסף אזורים נתמכים
  • LOCAL_FILE.EXT: שם הקובץ של קובץ וידאו מקומי. לדוגמה, my-video.mp4.
  • STREAM_ID: מזהה הזרם שיצרתם באשכול, לדוגמה input-1.
  • RTSP_ADDRESS: הכתובת של פיד הפרוטוקול להעברת סטרימינג בזמן אמת (RTSP). לדוגמה, rtsp://my-ip-camera.

נתוני וידאו מקומיים:

# This command streams a video file to a stream. Streaming ends when the video ends.
vaictl -p PROJECT_ID \
         -l LOCATION_ID \
         -c application-cluster-0 \
         --service-endpoint visionai.googleapis.com \
send video-file to streams STREAM_ID --file-path LOCAL_FILE.EXT

נתוני וידאו מקומיים (בסרטון חוזר):

# This command streams a video file to a stream. Video is looped into the stream until you stop the command.
vaictl -p PROJECT_ID \
         -l LOCATION_ID \
         -c application-cluster-0 \
         --service-endpoint visionai.googleapis.com \
send video-file to streams STREAM_ID --file-path LOCAL_FILE.EXT --loop

נתונים מפיד של פרוטוקול סטרימינג בזמן אמת (RTSP):

# This command will send an RTSP feed into the stream.
# This command has to run in the network that has direct access to the RTSP feed.
vaictl -p PROJECT_ID \
         -l LOCATION_ID \
         -c application-cluster-0 \
         --service-endpoint visionai.googleapis.com \
send rtsp to streams STREAM_ID --rtsp-uri RTSP_ADDRESS

הפעלת סרטונים שהועלו

אחרי שיוצרים שידור ושולחים אליו תוכן וידאו, אפשר להפעיל את תוכן הווידאו.

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

המסוף

להפעיל סרטון שהועלה במסוף Google Cloud .

  1. פותחים את הכרטיסייה Streams במרכז הבקרה של Vertex AI Vision.

    עוברים לכרטיסייה Streams

  2. לוחצים על שם הערוץ ברשימת הערוצים.

  3. בדף הפרטים של זרם הווידאו, התצוגה החיה של הווידאו שהועבר מוצגת באופן אוטומטי.