כיצד לתכנן ולפרוס במהירות מערכות ראיית מכונה חכמות

מאת ‎Jeff Shepard

באדיבות ‎DigiKey's North American Editors

הצורך בראיית מכונה גדל לרוחב מגוון יישומים כולל אבטחה, תנועה ומצלמות עירוניות, ניתוח קמעונאי, ביקורת אוטומטית, בקרת תהליכים ורובוטיקה מונחית-ראיה. ראיית מכונה היא מורכבת למימוש ודורשת את האינטגרציה של טכנולוגיות ותת--מערכות מגוונות, כולל חומרה בעלת ביצועים-עיליים ותוכנת בינה מלאכותית/למידת מכונה (AI/ML) מתקדמת. זה מתחיל עם מיטוב טכנולוגיית הלכידה של וידאו ו-I/O ראיה כדי לעמוד בצרכי היישום, ומתרחב לאמצעי העברה של עיבוד תמונה עבור קישוריות יעילה. בסופו של דבר זה תלוי באפשור מערכת ראיה-משובצת לבצע ניתוח מבוסס-ראיה בזמן-אמת תוך שימוש בחומרה בעלת ביצועים עיליים כגון מערכי שער ניתנים לתכנות בשדה (FPGAs), מערכות במודול (SOMs), מערכות על שבב (SoCs) ואפילו מערכות מרובות-מעבדים על שבב (MPSoCs) כדי להריץ את תוכנת הזיהוי ועיבוד התמונה AI/ML. זה יכול להיות תהליך מורכב, יקר וגוזל-זמן החשוף למספר גדול של הזדמנויות לחרוג בעלויות ולהשהיות בלוח זמנים.

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

מאמר זה מתחיל בסקירת האתגרים הקשורים לפיתוח מערכות ראיית מכונה ביצועים-עיליים, אחר כך מציג את סביבת הפיתוח המקיפה המוצעת על ידי ערכת האתחול Kria KV260 vision AI מבית AMD Xilinx, ומסיים עם דוגמאות של מערכות SOM מוכנות-יצור‏ מבוססות על פלטפורמת ה-Kira 26 המתוכננות להיות תקועות בכרטיס נושא עם רכיבים היקפיים יחודיים-לפתרון.

זה מתחיל עם מיטוב סוג נתונים

עולה הצורך באלגוריתמים של למידה עמוקה. לא כל יישום צריך חישובים מדויקים. משתמשים בסוגי נתונים בעלי דיוק נמוך יותר כמו INT8, או תבניות נתונים מותאמות-במיוחד. מערכות מבוססות-GPU יכולות להיות מאותגרות על ידי הנסיון לשנות ארכיטקטורות ממוטבות עבור נתוני דיוק-גבוה להתאים לתבניות נתוני דיוק-נמוך-יותר באופן יעיל. ה-Kria K26 SOM ניתנת להגדרת תצורה מחדש, בכך מאפשרים לה לתמוך במגוון רחב של סוגי נתונים מ-FP32 עד INT8, ואחרים. אפשרות הגדרת-תצורה מחדש, באופן כללי, מביאה גם לצריכת אנרגיה נמוכה יותר. לדוגמה, פעולות ממוטבות במיוחד עבור INT8 צורכות פחות אנרגיה בסדר גודל בהשוואה לפעולת FP32‏ (איור 1‏).

תמונה של אנרגיה נחוצה עבור פעולות INT8 בהשוואה לפעולות FP32איור 1: אנרגיה פחותה בסדר גודל נדרשת עבור פעולות INT8‏ (8b Add) בהשוואה לפעולות FP32 ‏(32b Add). (מקור תמונה: AMD Xilinx‏)

ארכיטקטורה אופטימלית עבור צריכת הספק מינימלית

תכנים ממומשים המבוססים על ארכיטקטורת‏ GPU או CPU מרובת-ליבות יכולים להיות רעבי-הספק לפי תבניות צריכת הספק אופיניות:

  • %30 עבור הליבות
  • %30 עבור הזיכרון הפנימי (L1,‏ L2,‏ L3)
  • %40 עבור הזיכרון החיצוני (כגון DDR)

גישות תכופות לזיכרון DDR בלתי יעיל נדרשות על ידי יחידות GPU כדי לתמוך ביכולת תכנות ויכולות להיות‏ צוואר בקבוק לדרישות חישוב רוחב-פס גבוה. ארכיטקטורת ה-Zynq MPSoC‏ המשמשת ב-Kria K26 SOM תומכת בפיתוח של יישומים עם גישה מועטה או ללא גישה בכלל לזיכרון חיצוני. לדוגמה, ביישום רכב‏ אופייני, תקשורת בין ה-GPU ומודולים שונים דורשת גישות מרובות אל זיכרון DDR חיצוני, בעוד הפיתרון על בסיס Zynq MPSoC‏ כולל צנרת (pipeline) המתוכננת למנוע את מרבית הגישות אל DDR (איור 2‏).

תרשים של SOC אופיינית לעומת AMD Xilinx Zynq MPSoC‏איור 2: ביישום רכב‏ אופייני זה, יחידת ה-GPU דורשת גישות מרובות אל זיכרון DDR עבור תקשורת בין המודולים השונים (שמאל), בעוד ארכיטקטורת הצנרת (pipeline) של ה-Zynq MPSoC‏ (ימין) מונעת את מרבית הגישות אל DDR. (מקור תמונה: AMD Xilinx‏)

קיצוץ (Pruning) ממנף את היתרונות

ניתן לשפר את הביצועים של רשתות נוירוניות ב-K26 SOM על ידי שימוש בכלי אופטימיזציה AI המאפשר אופטימיזציית נתונים וקיצוץ (Pruning). מקובל ביותר שרשתות נוירוניות הן בעלות יותר מדי פרמטרים, דבר שמוביל לרמות גבוהות של יתירות הניתנות לאופטימיזציה על ידי קיצוץ נתונים ודחיסת מודל. שימוש ב-AI Optimizer של Xilinx יכול להביא להפחתה 50x במורכבות מודל, עם השפעה נומינלית על דיוק מודל.‏ לדוגמה, גלאי single-shot‏ (SSD) וארכיטקטורת VGG convolution neural net‏ (CNN) עם 117 ג'יגה פעולות (Gops) עודן ב-11 איטרציות של קיצוץ על ידי שימוש ב-AI Optimizer. לפני אופטימיזציה, המודל רץ 18 חלונות (Frames‏) לשנייה (FPS) על‏ Zynq UltraScale+ MPSoC. לאחר 11 איטרציות—הריצה ה-12‏של המודל—המורכבות פחתה מ-‎117 Gops ל-‎11.6 Gops‏ (10X), הביצועים גדלו מ-18 ל-‎103 FPS‏ (5X), והדיוק ירד מ-61.55 ממוצע ממוצעי דיוק (mAP) עבור גילוי אובייקט ל-60.4‎ mAP (נמוך ב-1% בלבד) (איור 3‏).

גרף של יתרון קיצוץ (Pruning)איור 3‏: אחרי יחסית מספר‏ איטרציות, קיצוץ יכול להפחית מורכבות מודל (Gop) פי 10 ולשפר ביצועים (FPS) פי 5, עם ירידה בדיוק (mAP) של 1% בלבד. (מקור תמונה: AMD Xilinx‏)

דוגמת יישום מהעולם-האמיתי

יישום‏ למידת מכונה עבור גילוי וזיהוי לוחית רישוי מכונית, שגם נקרא זיהוי לוח מספר רכב (ANPR), פותח על בסיס תוכנת ניתוח ראיה מבית Uncanny VISION. ה-ANPR משמש במערכות אגרה אוטומטיות,‏ ניטור כבישים מהירים, גישה לשערים מאובטחים ולמגרשי חניה, ויישומים אחרים. יישום ANPR זה כולל צנרת (pipeline) מבוססת AI‏ המפענחת את הסרטון ומעבדת את התמונה, ולאחר מכן מתבצע גילוי ML וזיהוי תווי OCR (איור 4‏).

תרשים של תזרים עיבוד תמונה אופייני עבור יישום ANPR מבוסס-AI (הקלק להגדלה)‏איור 4‏: תזרים עיבוד תמונה אופייני עבור יישום ANPR מבוסס-AI.‏ (מקור תמונה: AMD Xilinx‏)

מימוש ANPR דורש אחד או יותר H.264 או H.265 הזנות תזרים פרוטוקול זמן-אמת (RTSP) מקודדות שמפוענחות. חלונות (frames) הסרטון המפוענחים עוברים התאמת גודל (scaled), מקוצצים (cropped), מוחלפים מרחב צבעים ומנורמלים (קדם-מעובדים), אחר כך נשלחים לאלגוריתם הגילוי ML‏. מימושי ANPR ביצועים-עיליים דורשים צנרת (Pipeline) ‏AI ‏מרובת-דרגות. הדרגה הראשונה מגלה וממקמת את כלי-הרכב בתמונה, יוצרת את אזור הענין (ROI). במקביל, אלגוריתמים אחרים ממטבים את איכות התמונה לשימוש עוקב על ידי אלגוריתם זיהוי תווי OCR ועוקבים אחר תנועת כלי-הרכב לרוחב חלונות (Frames‏) מרובים. ה-ROI של כלי-הרכב עובר קיצוץ נוסף (cropped) כדי לקבל את ROI לוח מספר הרכב, שמעובד על ידי אלגוריתם ה-OCR כדי לקבוע את תווי לוח מספר הרכב. בהשוואה עם מערכות SOM מסחריות אחרות מבוססות על יחידות GPU או CPU, יישום ה-ANPR של Uncanny Vision רץ פי 2 עד פי 3 מהר יותר על ה-Kira KV260 SOM, עולה פחות מ-$100 להזנת RTSP.

סביבת פיתוח ראיה חכמה

מתכננים של יישומי ראיה חכמה כמו מצלמות עירוניות ותנועה, ניתוח קמעונאי, אבטחה, אוטומציה תעשייתית ורובוטיקה יכולים לפנות אל סביבת הפיתוח Kria K26 SOM AI Starter. סביבה זו בנויה תוך שימוש בארכיטקטורת ה-Zynq® UltraScale+™ MPSoC והיא בעלת ספריה הולכת וגדלה של חבילות תוכנת יישום‏ אצורות (איור 5‏). ה-AI Starter SOM כוללת מעבד‏ ארבע-ליבות Arm Cortex-A53, מעל 250 אלף תאים לוגיים ו‏מקודד/מפענח וידאו H.264/265. מערכת ה-SOM היא גם בעלת GB‏ 4 זיכרון‏ DDR4,‏ 245 כניסות/יציאות ו-1.4‎ tera-ops של חישובי AI כדי לתמוך ביצירת יישומי vision AI ביצועים-עיליים המציעים ביצועים גבוהים יותר ביותר מפי 3, עם שיהוי והספק נמוכים יותר בהשוואה לגישות חומרה אחרות. היישומים הבנוים-מראש מאפשרים לתכנים ראשוניים לרוץ בפחות משעה.

תמונה של ערכת התחלה AMD Xilinx Kria KV260 vision AIאיור 5‏: ערכת ההתחלה Kria KV260 vision AI היא סביבת פיתוח מקיפה עבור יישומי ראיית מכונה. (מקור תמונה: AMD Xilinx‏)

כדי לעזור בהתנעת תהליך הפיתוח תוך שימוש ב-Kria K26 SOM, ‏AMD Xilinx מציעה את ערכת ההתחלה KV260 vision AI הכוללת מתאם אספקת-כוח, כבל Ethernet‏, כרטיס microSD‏, כבל USB‏, כבל HDMI‏ ומודול מצלמה (איור 6‏). אם אין צורך בערכת התחלה שלמה, מפתחים יכולים לרכוש פשוט את מתאם אספקת-הכוח האופציונלי כדי להתחיל להשתמש ב-Kira K26 SOM.

תמונה של ערכת התחלה AMD Xilinx KV260 vision AIאיור 6‏: ערכת ההתחלה KV260 vision AI כוללת: (שורה עליונה, משמאל לימין) ספק-כוח, כבל Ethernet‏, כרטיס microSD, ו-(שורה תחתונה, משמאל לימין) כבל USB‏, כבל HDMI‏ ומודול מצלמה. (תמונה: AMD Xilinx‏)

גורם נוסף המזרז פיתוח הוא המערך המקיף של המאפיינים, כולל שפע של כניסות/יציאות single-ended והפרשיות ‎1.8 V,‏ 3.3‎ V עם ארבעה מקמ"שים 6‎ Gb/s‏ וארבעה מקמ"שים ‎12.5 Gb/s‏. מאפיינים אלו מאפשרים את הפיתוח של יישומים עם מספר גבוה יותר של חיישני תמונה ל-SOM ווריאציות רבות של ממשקי חיישן כגון MIPI‏, LVDS‏, SLVS ו-SLVS-EC‏, שלא תמיד נתמכים על ידי מוצרים סטנדרטיים ספציפיים-ליישום (ASSPs) או יחידות GPU. מפתחים יכולים גם לממש DisplayPort‏, HDMI‏, PCIe‏, USB2.0/3.0 וסטנדרטים מוגדרים-משתמש עם הלוגיקה המשובצת הניתנת-לתכנות.

לבסוף, הפיתוח של יישומי AI הפך לפשוט יותר ונגיש יותר על ידי זיווג יכולות החומרה הנרחבות וסביבת התוכנה של ה-K26 SOM עם יישומי ראיה מוכנים ליצור. יישומי ראיה אלו ניתנים למימוש ללא דרישת תכנון של חומרת FPGA‏ ומאפשרים למפתחי תוכנה לשלב במהירות מודלים של AI מותאמים-במיוחד וקוד יישום, ואפילו לשנות את צנרת הראיה. פלטפורמת פיתוח תוכנה מאוחדת Vitis‏ וספריות מבית Xilinx‏ תומכות בסביבות תכנון נפוצות, כמו מסגרות עבודה TensorFlow,‏ PyTorch ו-Café, כמו גם שפות תכנות מרובות כולל C,‏ ++C,‏ ™OpenCL ו-Python‏. ישנה גם חנות אפליקציות משובצת עבור יישומי קצה תוך שימוש במערכות ‏Kria SOM מבית Xilinx‏ ושותפיה למערכת האקולוגית. ההצעות של Xilinx‏ הן חינמיות ומקור-פתוח וכוללות מעקב מצלמה חכמה וזיהוי פנים, עיבוד שפה טבעית עם ראיה חכמה, ועוד.

מערכות Kira 26 SOM ממוטבות יצור

עם השלמת תהליך הפיתוח, זמינות גרסאות מוכנות-יצור של ה-K26 SOM המתוכננות להיות תקועות בכרטיס נושא עם רכיבים היקפיים מיוחדים-לפתרון, שיכולות לזרז את המעבר ליצור (איור 7) . ה-K26 SOM הבסיסית היא יחידה בדרגה מסחרית עם דרוג טמפרטורה של 0°C עד 85‎°C+ טמפרטורת צומת, כפי שנמדד על ידי חיישן הטמפרטורה הפנימי. זמינה גם גרסה בדרגה תעשייתית של ה-K26 SOM המדורגת לעבוד מ-‎40°C- עד ‎100°C+.

השוק התעשייתי דורש חי עבודה ארוכים בתנאי סביבה קשים. ה-Kria SOM בדרגה-תעשייתית מתוכננת לעבודה של עשר שנים בטמפרטורת צומת של 100‎°C ולחות יחסית של 80% ולעמוד בזעזועים של עד ‎40 g ורעידות של ‎5 g שורש ממוצע הריבועים (RMS). היא גם מסופקת עם זמינות יצור מינימלית של עשר שנים כדי לתמוך במחזורים של חי‏ מוצר ארוכים.

תמונה של מערכות Xilinx Kira 26 SOM ממוטבות-ייצוראיור 7‏: מערכות Kira 26 SOM ממוטבות-יצור עבור סביבות תעשייתיות ומסחריות הן מתוכננות להיות תקועות בכרטיס נושא עם רכיבים היקפיים מיוחדים-לפתרון. (תמונה: DigiKey‏)

סיכום

מתכננים של יישומי ראיית מכונה כגון אבטחה, תנועה ומצלמות עירוניות, ניתוח קמעונאי, ביקורת אוטומטית, בקרת תהליכים ורובוטיקה מונחית-ראיה יכולים לפנות אל Kria K26 SOM AI Starter כדי לזרז זמן יציאה לשוק, לסייע בבקרת עלויות ולהקטין סיכוני פיתוח. פלטפורמת פיתוח מבוססת-SOM זו היא סביבת חומרה ותוכנה משולבת, מאפשרת למפתחים להתמקד בהתאמה-מיוחדת של היישום ולחסוך עד תשעה חודשים של זמן פיתוח. אותה ארכיטקטורת SOM זמינה בתצורות ממוטבות-יצור עבור סביבות מסחריות ותעשייתיות, דבר המזרז עוד יותר את זמן היציאה לשוק. הגרסה התעשייתית היא בעלת זמינות יצור מינימלית של עשר שנים כדי לתמוך במחזורים של חי‏ מוצר ארוכים.

DigiKey logo

מיאון אחריות: דעות, אמונות ונקודות מבט המובעות על ידי מחברים שונים ו/או משתתפי פורום באתר אינטרנט זה לא בהכרח משקפות את הדעות, האמונות ונקודות המבט של חברת DigiKey או את המדיניות הרשמית של חברת DigiKey.

אודות כותב זה

Image of Jeff Shepard

Jeff Shepard

ג'ף כותב על מוצרי אלקטרוניקה, רכיבים אלקטרוניים ונושאים טכנולוגיים אחרים מזה למעלה מ- 30 שנה. הוא התחיל לכתוב על מוצרי אלקטרוניקה כעורך בכיר ב- EETimes‏. לאחר מכן הוא הקים את Powertechniques, מגזין לתכנון אלקטרוניקת הספק, ובהמשך הקים את Darnell Group, חברת מחקר ופרסום אלקטרוניקת הספק כלל-עולמית. בין פעילויותיה פרסמה Darnell Group‏ את PowerPulse.net, אשר סיפקה חדשות יומיות לקהילת הנדסת אלקטרוניקת ההספק הכלל-העולמית. הוא מחברו של ספר על ספקי-כוח ממותגים, שכותרתו היא "Power Supplies", ואשר יצא לאור על ידי חטיבת Reston‏ של הוצאת Prentice Hall‏.

ג'ף גם הקים את Jeta Power Systems, יצרנית ספקי כוח ממותגים בהספק גבוה, שנרכשה על ידי Computer Products. ג'ף הוא גם ממציא שעל שמו רשומים 17 פטנטים בארה"ב בתחומי קצירת אנרגיה תרמית ומטה-חומרים אופטיים, הוא נחשב כמקור מהימן בתעשייה ומרצה לעיתים קרובות על מגמות כלל-עולמיות בתחום אלקטרוניקת הספק. הוא בעל תואר שני בשיטות כמותיות ומתמטיקה מאוניברסיטת קליפורניה.

אודות מוציא לאור זה

DigiKey's North American Editors