วิธีการออกแบบและปรับใช้ระบบวิชันซิสเต็มอัจฉริยะอย่างรวดเร็ว
Contributed By DigiKey's North American Editors
2022-08-31
ความต้องการแมชชีนวิชั่นกำลังเพิ่มขึ้นในการใช้งานแบบต่าง ๆ รวมถึงการรักษาความปลอดภัย กล้องจราจรและเมือง การวิเคราะห์การค้าปลีก การตรวจสอบอัตโนมัติ การควบคุมกระบวนการ และหุ่นยนต์นำทางด้วยการมองเห็น แมชชีนวิชั่นมีความซับซ้อนในการนำไปใช้และต้องการการผสานรวมเทคโนโลยีและระบบย่อยที่หลากหลาย รวมถึงฮาร์ดแวร์ประสิทธิภาพสูงและซอฟต์แวร์ปัญญาประดิษฐ์/แมชชีนเลิร์นนิง (AI/ML) ขั้นสูง เริ่มต้นด้วยการปรับเทคโนโลยีการจับภาพวิดีโอและ I/O การมองเห็นให้เหมาะสม เพื่อตอบสนองความต้องการในการใช้งานและขยายไปยังการประมวลผลภาพหลายช่องทางเพื่อการเชื่อมต่อที่มีประสิทธิภาพ ท้ายที่สุดมันก็ขึ้นอยู่กับการเปิดใช้งานระบบวิชันซิสเต็มเพื่อทำการวิเคราะห์ตามวิสัยทัศน์แบบเรียลไทม์โดยใช้ฮาร์ดแวร์ที่มีประสิทธิภาพสูง เช่น Field Programmable Gate Array (FPGA) ระบบบนโมดูล (SOM) ระบบบนชิป (SoC) และ แม้แต่ระบบมัลติโปรเซสเซอร์บนชิป (MPSoC) เพื่อรันซอฟต์แวร์ประมวลผลภาพและการรับรู้ AI/ML ที่จำเป็น นี่อาจเป็นกระบวนการที่ซับซ้อน มีค่าใช้จ่ายสูงและใช้เวลานาน ซึ่งมีความเป็นไปได้สูงที่จะทำให้ต้นทุนสูงเกินและกำหนดเวลาล่าช้า
แทนที่จะเริ่มต้นจากศูนย์ นักออกแบบสามารถหันไปใช้แพลตฟอร์มการพัฒนาที่ได้รับการดูแลจัดการอย่างดีและมีประสิทธิภาพสูง ซึ่งช่วยเร่งเวลาในการออกสู่ตลาด ควบคุมต้นทุน และลดความเสี่ยงในการพัฒนา ในขณะเดียวกันก็รองรับความยืดหยุ่นและประสิทธิภาพของการใช้งานในระดับสูง แพลตฟอร์มการพัฒนาที่ใช้ SOM สามารถจัดเตรียมสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์แบบบูรณาการ ทำให้นักพัฒนาสามารถมุ่งเน้นไปที่การปรับแต่งตามการใช้งานและประหยัดเวลาในการพัฒนาได้ถึงเก้าเดือน นอกจากสภาพแวดล้อมการพัฒนาแล้ว สถาปัตยกรรม SOM เดียวกันยังมีให้ใช้งานในการกำหนดค่าที่ปรับให้เหมาะสมสำหรับการผลิตสำหรับสภาพแวดล้อมเชิงพาณิชย์และอุตสาหกรรม เพิ่มความน่าเชื่อถือและคุณภาพของการใช้งาน ลดความเสี่ยงเพิ่มเติม และเร่งเวลาออกสู่ตลาด
บทความนี้เริ่มต้นด้วยการทบทวนความท้าทายที่เกี่ยวข้องกับการพัฒนาระบบแมชชีนวิชันที่มีประสิทธิภาพสูง จากนั้นนำเสนอสภาพแวดล้อมการพัฒนาที่ครอบคลุมที่นำเสนอโดย Kria KV260 vision AI ชุดเริ่มต้นจาก AMD Xilinx และปิดท้ายด้วยตัวอย่าง SOM ที่พร้อมใช้งานจริงบนแพลตฟอร์ม Kira 26 ที่ออกแบบมาเพื่อเสียบเข้ากับการ์ดผู้ให้บริการที่มีอุปกรณ์ต่อพ่วงเฉพาะแต่ละโซลูชัน
เริ่มต้นด้วยการเพิ่มประสิทธิภาพประเภทข้อมูล
ความต้องการของอัลกอริธึมการเรียนรู้เชิงลึกกำลังพัฒนา ไม่ใช่ทุกการใช้งานที่ต้องการการคำนวณที่มีความแม่นยำสูง กำลังใช้ชนิดข้อมูลที่มีความแม่นยำต่ำกว่า เช่น INT8 หรือรูปแบบข้อมูลที่กำหนดเอง ระบบที่ใช้ GPU อาจท้าทายด้วยการพยายามปรับเปลี่ยนสถาปัตยกรรมที่ปรับให้เหมาะสมสำหรับข้อมูลที่มีความแม่นยำสูง เพื่อรองรับรูปแบบข้อมูลที่มีความแม่นยำต่ำกว่าได้อย่างมีประสิทธิภาพ Kria K26 SOM สามารถกำหนดค่าใหม่ได้ ทำให้สามารถรองรับประเภทข้อมูลได้หลากหลายตั้งแต่ FP32 ถึง INT8 และอื่น ๆ ความสามารถในการกำหนดค่าใหม่ยังส่งผลให้การใช้พลังงานโดยรวมลดลง ตัวอย่างเช่น การทำงานที่ปรับให้เหมาะสมสำหรับ INT8 จะใช้พลังงานน้อยกว่าเมื่อเทียบกับการทำงาน FP32 (รูปที่ 1)
รูปที่ 1: ต้องการลำดับความสำคัญของพลังงานน้อยกว่าสำหรับการดำเนินการ INT8 (8b Add) เมื่อเทียบกับการดำเนินการ FP32 (32b Add) (ที่มาของภาพ: AMD Xilinx)
สถาปัตยกรรมที่เหมาะสมที่สุดสำหรับการใช้พลังงานน้อยที่สุด
การออกแบบที่ปรับใช้ตามสถาปัตยกรรม GPU แบบมัลติคอร์หรือ CPU อาจใช้พลังงานมากตามรูปแบบการใช้พลังงานทั่วไป:
- 30% สำหรับแกน
- 30% สำหรับหน่วยความจำภายใน (L1, L2, L3)
- 40% สำหรับหน่วยความจำภายนอก (เช่น DDR)
GPU ต้องการการเข้าถึงหน่วยความจำ DDR ที่ไม่มีประสิทธิภาพบ่อยครั้งเพื่อรองรับความสามารถในการตั้งโปรแกรมและอาจเป็นคอขวดสำหรับความต้องการในการประมวลผลแบนด์วิดท์สูง สถาปัตยกรรม Zynq MPSoC ที่ใช้ใน Kria K26 SOM รองรับการพัฒนาการใช้งานด้านที่มีการเข้าถึงหน่วยความจำภายนอกเพียงเล็กน้อยหรือไม่มีเลย ตัวอย่างเช่น ในการใช้งานด้านยานยนต์ทั่วไป การสื่อสารระหว่าง GPU และโมดูลต่างๆ ต้องการการเข้าถึงหน่วยความจำ DDR ภายนอกหลายครั้ง ในขณะที่โซลูชันที่ใช้ Zynq MPSoC รวมไปป์ไลน์ที่ออกแบบมาเพื่อหลีกเลี่ยงการเข้าถึง DDR ส่วนใหญ่ (รูปที่ 2)
รูปที่ 2: ในการใช้งานด้านยานยนต์ทั่วไปนี้ GPU ต้องการการเข้าถึง DDR หลายครั้งเพื่อการสื่อสารระหว่างโมดูลต่างๆ (ซ้าย) ในขณะที่สถาปัตยกรรมไปป์ไลน์ของ Zynq MPSoC (ขวา) หลีกเลี่ยงการเข้าถึง DDR ส่วนใหญ่ (ที่มาของภาพ: AMD Xilinx)
การตัดแต่งเลือกใช้ประโยชน์จากข้อดี
ประสิทธิภาพของโครงข่ายประสาทเทียมบน K26 SOM สามารถปรับปรุงได้โดยใช้เครื่องมือเพิ่มประสิทธิภาพ AI ที่เปิดใช้งานการปรับข้อมูลให้เหมาะสมและตัดแต่ง เป็นเรื่องปกติมากที่โครงข่ายประสาทเทียมจะมีการกำหนดพารามิเตอร์เกิน นำไปสู่ความซ้ำซ้อนในระดับสูงที่สามารถปรับให้เหมาะสมได้โดยใช้การตัดข้อมูลและการบีบอัดแบบจำลอง การใช้ AI Optimizer ของ Xilinx สามารถลดความซับซ้อนของแบบจำลองลงได้ 50 เท่า โดยมีผลกระทบเพียงเล็กน้อยต่อความแม่นยำของแบบจำลอง ตัวอย่างเช่น เครื่องตรวจจับแบบนัดเดียว (SSD) บวกกับสถาปัตยกรรม VGG convolution neural net (CNN) ที่มี 117 Giga Operations (Gops) ได้รับการขัดเกลามากกว่า 11 ครั้งของการตัดแต่งโดยใช้ AI Optimizer ก่อนการปรับให้เหมาะสม โมเดลรัน 18 เฟรมต่อวินาที (FPS) บน Zynq UltraScale+ MPSoC หลังจากทำซ้ำ 11 ครั้ง การรันโมเดลครั้งที่ 12 ความซับซ้อนลดลงจาก 117 Gops เป็น 11.6 Gops (10X) ประสิทธิภาพเพิ่มขึ้นจาก 18 เป็น 103 FPS (5X) และความแม่นยำลดลงจาก 61.55 ความแม่นยำเฉลี่ยเฉลี่ย (mAP) สำหรับการตรวจจับวัตถุเป็น 60.4 mAP (เพียง 1 % ต่ำกว่า) (รูปที่ 3)
รูปที่ 3: หลังจากการทำซ้ำหลายครั้ง การตัดแต่งกิ่งสามารถลดความซับซ้อนของแบบจำลอง (Gop) ลง 10 เท่า และปรับปรุงประสิทธิภาพ (FPS) ได้ 5 เท่า โดยลดความแม่นยำ (mAP) ลงเพียง 1% (ที่มาของภาพ: AMD Xilinx)
ตัวอย่างการใช้งานจริง
แอปพลิเคชันการเรียนรู้ของเครื่องสำหรับการตรวจจับและจดจำป้ายทะเบียนรถยนต์ หรือที่เรียกว่าการรู้จำป้ายทะเบียนรถยนต์ (ANPR) อัตโนมัติ ได้รับการพัฒนาโดยใช้ซอฟต์แวร์การวิเคราะห์ด้วยภาพจาก Uncanny Vision ANPR ใช้ในระบบเก็บค่าผ่านทางอัตโนมัติ การตรวจสอบทางหลวง รักษาความปลอดภัยของทางเข้าและการเข้าถึงที่จอดรถ และแอปพลิเคชันอื่น ๆ แอปพลิเคชัน ANPR นี้ประกอบด้วยไปป์ไลน์ที่ใช้ AI ที่ถอดรหัสวิดีโอและประมวลผลภาพล่วงหน้า ตามด้วยการตรวจจับ ML และการรับรู้อักขระ OCR (รูปที่ 4)
รูปที่ 4: ขั้นตอนการประมวลผลภาพทั่วไปสำหรับแอปพลิเคชัน ANPR ที่ใช้ AI (ที่มาของภาพ: AMD Xilinx)
การนำ ANPR ไปใช้ต้องใช้ฟีดโปรโตคอลการสตรีมแบบเรียลไทม์ (RTSP) ที่เข้ารหัส H.264 หรือ H.265 อย่างน้อยหนึ่งรายการที่มีการถอดรหัสหรือไม่บีบอัด เฟรมวิดีโอที่ถอดรหัสจะถูกปรับขนาด ครอบตัด แปลงพื้นที่สี และทำให้เป็นมาตรฐาน (ประมวลผลล่วงหน้า) จากนั้นส่งไปยังอัลกอริธึมการตรวจจับ ML การใช้งาน ANPR ที่มีประสิทธิภาพสูงต้องใช้ไปป์ไลน์ AI แบบหลายขั้นตอน ขั้นตอนแรกจะตรวจจับและกำหนดตำแหน่งรถในภาพ สร้าพื้นที่ความสนใจ (ROI) ในเวลาเดียวกัน อัลกอริธึมอื่น ๆ จะปรับคุณภาพของภาพให้เหมาะสมสำหรับการใช้งานในภายหลังโดยอัลกอริธึมการรู้จำอักขระ OCR และติดตามการเคลื่อนไหวของยานพาหนะในหลายเฟรม ROI ของยานพาหนะจะถูกครอบตัดเพิ่มเติมเพื่อสร้าง 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 แบบ Quad-core, ลอจิกเซลล์มากกว่า 250,000 เซลล์ และตัวแปลงสัญญาณวิดีโอ H.264/265 SOM ยังมีหน่วยความจำ DDR4 ขนาด 4 GB, 245 IO และการประมวลผล AI 1.4 เทรา-ออปส์ เพื่อรองรับการสร้างแอปพลิเคชัน AI ที่มีวิสัยทัศน์ประสิทธิภาพสูงซึ่งให้ประสิทธิภาพการทำงานที่สูงกว่า 3 เท่าในเวลาแฝงและพลังงานที่ต่ำกว่าเมื่อเทียบกับแนวทางฮาร์ดแวร์อื่น ๆ แอปพลิเคชันที่สร้างไว้ล่วงหน้าช่วยให้การออกแบบเริ่มต้นทำงานได้ภายในเวลาไม่ถึงหนึ่งชั่วโมง
รูปที่ 5: ชุดเริ่มต้น AI สำหรับวิชั่น Kria KV260 เป็นสภาพแวดล้อมการพัฒนาที่ครอบคลุมสำหรับการใช้งานวิชันซิสเต็ม (ที่มาของภาพ: AMD Xilinx)
เพื่อช่วยในการเริ่มต้นกระบวนการพัฒนาโดยใช้ Kria K26 SOM AMD Xilinx ขอเสนอ ชุดเริ่มต้น AI vision KV260 ซึ่งประกอบด้วยอะแดปเตอร์แปลงไฟ, สาย Ethernet, การ์ด microSD, สาย USB, สาย HDMI และโมดูลกล้อง (ภาพที่ 6) หากไม่จำเป็นต้องใช้ชุดเริ่มต้นทั้งหมด นักพัฒนาสามารถซื้อ อะแดปเตอร์ไฟฟ้า เป็นอุปกรณ์เสริมได้เพื่อใช้งาน Kira K26 SOM
รูปที่ 6: ชุดอุปกรณ์เริ่มต้น AI สำหรับวิสัยทัศน์ KV260 ประกอบด้วย: แหล่งจ่ายไฟ (แถวบน ซ้ายไปขวา) สายเคเบิลอีเทอร์เน็ต การ์ด microSD และสาย USB (แถวล่าง ซ้ายไปขวา) สาย HDMI โมดูลกล้อง (ภาพ: AMD Xilinx)
ปัจจัยอีกประการหนึ่งที่ช่วยเร่งการพัฒนาคือ อาร์เรย์ของคุณสมบัติที่ครอบคลุม รวมถึง I/O แบบปลายเดี่ยว 1.8 V, 3.3 V และดิฟเฟอเรนเชียลที่มีตัวรับส่งสัญญาณ 6 Gb/s สี่ตัวและตัวรับส่งสัญญาณ 12.5 Gb/s สี่ตัว คุณสมบัติเหล่านี้ช่วยให้สามารถพัฒนาการใช้งานที่มีเซ็นเซอร์ภาพจำนวนมากขึ้นต่อ SOM และอินเทอร์เฟซเซ็นเซอร์ที่หลากหลาย เช่น MIPI, LVDS, SLVS และ SLVS-EC ซึ่งไม่รองรับผลิตภัณฑ์มาตรฐานเฉพาะแอปพลิเคชัน (ASSP) หรือ GPU เสมอไป นักพัฒนาสามารถใช้ DisplayPort, HDMI, PCIe, USB2.0/3.0 และมาตรฐานที่กำหนดโดยผู้ใช้ด้วย programmable logic แบบฝัง
สุดท้าย การพัฒนาแอปพลิเคชัน AI นั้นง่ายขึ้นและสามารถเข้าถึงได้มากขึ้นโดยการผสมผสานความสามารถด้านฮาร์ดแวร์และสภาพแวดล้อมซอฟต์แวร์ที่ครอบคลุมของ K26 SOM เข้ากับแอปพลิเคชันวิชันซิสเต็มสำหรับการผลิต แอปพลิเคชันวิชันซิสเต็มเหล่านี้สามารถใช้งานได้โดยไม่ต้องมีการออกแบบฮาร์ดแวร์ FPGA และช่วยให้นักพัฒนาซอฟต์แวร์สามารถผสานรวมโมเดล AI ที่กำหนดเองและโค้ดแอปพลิเคชันได้อย่างรวดเร็ว หรือแม้แต่ปรับเปลี่ยนไปป์ไลน์การมองเห็น แพลตฟอร์มการพัฒนาซอฟต์แวร์แบบครบวงจรของ Vitis และไลบรารีจาก Xilinx รองรับสภาพแวดล้อมการออกแบบทั่วไป เช่น กรอบงาน TensorFlow, Pytorch และ Café ตลอดจนภาษาโปรแกรมหลายภาษา เช่น C, C++, OpenCL™ และ Python นอกจากนี้ยังมี App Store แบบฝังสำหรับแอพพลิเคชั่น Edge โดยใช้ Kria SOM จาก Xilinx และพันธมิตรในระบบนิเวศ ข้อเสนอของ Xilinx เป็นโอเพ่นซอร์สฟรีและรวมถึงการติดตามกล้องอัจฉริยะและการตรวจจับใบหน้า การประมวลผลภาษาธรรมชาติด้วยการมองเห็นอัจฉริยะ และอื่นๆ
การผลิตที่ปรับให้เหมาะสม Kira 26 SOMs
เมื่อกระบวนการพัฒนาเสร็จสิ้นลง K26 SOM เวอร์ชันที่พร้อมสำหรับการผลิตจะได้รับการออกแบบให้เสียบเข้ากับการ์ดผู้ให้บริการที่มีอุปกรณ์ต่อพ่วงเฉพาะโซลูชันที่สามารถเพิ่มความเร็วในการเปลี่ยนไปสู่การผลิตได้ (รูปที่ 7) K26 SOM พื้นฐานคือ หน่วยเกรดเชิงพาณิชย์ ด้วยพิกัดอุณหภูมิ 0°C ถึง +85°C อุณหภูมิจุดเชื่อมต่อ ที่วัดโดยเซ็นเซอร์อุณหภูมิภายใน สำหรับ เวอร์ชั่นระดับอุตสาหกรรม ของ K26 SOM ที่มีระดับการทำงานตั้งแต่ -40°C ถึง +100°C ก็มีเช่นกัน
ตลาดอุตสาหกรรมต้องการอายุการใช้งานที่ยาวนานในสภาพแวดล้อมที่ไม่เอื้ออำนวย Kria SOM ระดับอุตสาหกรรมได้รับการออกแบบมาเป็นเวลาสิบปีของการทำงานที่จุดเชื่อมต่อ 100°C และความชื้นสัมพัทธ์ 80% และทนต่อแรงสั่นสะเทือนสูงสุด 40 กรัม และการสั่นสะเทือนระดับรากเฉลี่ย 5 กรัม (RMS) นอกจากนี้ยังมาพร้อมกับความพร้อมในการผลิตขั้นต่ำสิบปีเพื่อรองรับวงจรชีวิตของผลิตภัณฑ์ที่ยาวนาน
รูปที่ 7: Kira 26 SOM ที่ปรับให้เหมาะสมกับการผลิตสำหรับสภาพแวดล้อมทางอุตสาหกรรมและเชิงพาณิชย์ ได้รับการออกแบบให้เสียบเข้ากับการ์ดผู้ให้บริการที่มีอุปกรณ์ต่อพ่วงเฉพาะโซลูชัน (ภาพ: DigiKey)
บทสรุป
นักออกแบบการใช้งานวิชันซิสเต็ม เช่น การรักษาความปลอดภัย การจราจร และกล้องในเมือง การวิเคราะห์การค้าปลีก การตรวจสอบอัตโนมัติ การควบคุมกระบวนการ และหุ่นยนต์นำทางด้วยการมองเห็น สามารถหันไปใช้ Kria K26 SOM AI Starter เพื่อเร่งเวลาออกสู่ตลาด ช่วยควบคุมต้นทุนและลด ความเสี่ยงในการพัฒนา แพลตฟอร์มการพัฒนาที่ใช้ SOM นี้เป็นสภาพแวดล้อมของฮาร์ดแวร์และซอฟต์แวร์แบบบูรณาการ ทำให้นักพัฒนาสามารถมุ่งเน้นไปที่การปรับแต่งแอปพลิเคชันและประหยัดเวลาในการพัฒนาได้ถึงเก้าเดือน สถาปัตยกรรม SOM เดียวกันมีอยู่ในการกำหนดค่าที่ปรับให้เหมาะสมกับการผลิตสำหรับสภาพแวดล้อมเชิงพาณิชย์และอุตสาหกรรม ซึ่งช่วยเร่งเวลาในการออกสู่ตลาด รุ่นอุตสาหกรรมมีความพร้อมในการผลิตขั้นต่ำ 10 ปีเพื่อรองรับวงจรชีวิตของผลิตภัณฑ์ที่ยาวนาน

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.