AM6x กำลังพัฒนากล้องหลายตัว
“
ข้อมูลจำเพาะ:
- ชื่อผลิตภัณฑ์: อุปกรณ์ตระกูล AM6x
- ประเภทกล้องที่รองรับ: AM62A (มีหรือไม่มี ISP ในตัว)
AM62P (พร้อม ISP ในตัว) - ข้อมูลเอาต์พุตของกล้อง: AM62A (Raw/YUV/RGB), AM62P (YUV/RGB)
- ISP HWA: AM62A (ใช่), AM62P (ไม่ใช่)
- Deep Learning HWA: AM62A (ใช่), AM62P (ไม่ใช่)
- กราฟิก 3 มิติ HWA: AM62A (ไม่ใช่), AM62P (ใช่)
คำแนะนำการใช้ผลิตภัณฑ์:
1. บทนำสู่แอปพลิเคชันหลายกล้องบน AM6x:
กล้องฝังตัวมีบทบาทสำคัญในระบบการมองเห็นสมัยใหม่
การใช้กล้องหลายตัวในระบบจะช่วยเพิ่มความสามารถและ
ช่วยให้สามารถทำภารกิจที่ไม่สามารถทำได้ด้วยกล้องเพียงตัวเดียว
2. การใช้งานโดยใช้กล้องหลายตัว:
- การรักษาความปลอดภัย: เพิ่มประสิทธิภาพการเฝ้าระวัง
การครอบคลุม การติดตามวัตถุ และความแม่นยำในการจดจำ - ล้อมรอบ View: ช่วยให้มองเห็นภาพสามมิติสำหรับงานต่างๆ
เช่น การตรวจจับสิ่งกีดขวางและการจัดการวัตถุ - ระบบบันทึกภาพในห้องโดยสารและกระจกกล้อง:
ให้การปกปิดที่ขยายมากขึ้น และขจัดจุดบอด - การถ่ายภาพทางการแพทย์: มอบความแม่นยำที่เพิ่มขึ้นใน
การนำทางการผ่าตัดและการส่องกล้อง - โดรนและการถ่ายภาพทางอากาศ: การจับกุม
ภาพความละเอียดสูงจากมุมต่างๆ สำหรับ
การประยุกต์ใช้งาน
3. การเชื่อมต่อกล้อง CSI-2 หลายตัวเข้ากับ SoC:
หากต้องการเชื่อมต่อกล้อง CSI-2 หลายตัวเข้ากับ SoC ให้ทำตามขั้นตอนต่อไปนี้
แนวทางปฏิบัติที่ให้ไว้ในคู่มือผู้ใช้ ตรวจสอบให้แน่ใจว่าการจัดตำแหน่งถูกต้องและ
การเชื่อมต่อของกล้องแต่ละตัวเข้ากับพอร์ตที่กำหนดบน SoC
คำถามที่พบบ่อย (FAQ) :
ถาม: ฉันสามารถใช้กล้องประเภทใดก็ได้กับตระกูล AM6x หรือไม่
อุปกรณ์?
A: ตระกูล AM6x รองรับกล้องประเภทต่างๆ รวมถึง
ที่มีหรือไม่มี ISP ในตัว โปรดดูรายละเอียดเพิ่มเติม
รายละเอียดเพิ่มเติมเกี่ยวกับประเภทกล้องที่รองรับ
ถาม: อะไรคือความแตกต่างหลักระหว่าง AM62A และ AM62P ใน
การประมวลผลภาพ?
A: การเปลี่ยนแปลงที่สำคัญ ได้แก่ ประเภทกล้องที่รองรับ กล้อง
ข้อมูลเอาต์พุต การมีอยู่ของ ISP HWA, Deep Learning HWA และ 3-D
กราฟิก HWA ดูรายละเอียดเพิ่มเติมในส่วนข้อมูลจำเพาะ
การเปรียบเทียบ.
-
www.ti.com
สารบัญ
หมายเหตุการสมัคร
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
เจียนซ่ง ซู, คูไท่บา ซาเลห์
เชิงนามธรรม
รายงานนี้อธิบายการพัฒนาแอปพลิเคชันโดยใช้กล้อง CSI-2 หลายตัวบนอุปกรณ์ตระกูล AM6x นำเสนอการออกแบบอ้างอิงสำหรับการตรวจจับวัตถุด้วยการเรียนรู้เชิงลึกบนกล้อง 4 ตัวบน SoC AM62A พร้อมการวิเคราะห์ประสิทธิภาพ หลักการทั่วไปของการออกแบบนี้ใช้ได้กับ SoC อื่นๆ ที่มีอินเทอร์เฟซ CSI-2 เช่น AM62x และ AM62P
สารบัญ
1 บทนำ………………………………………………………………………………………………………………………………………………………..2 2 การเชื่อมต่อกล้อง CSI-2 หลายตัวเข้ากับ SoC…………………………………………………………………………………………………………………… 3
2.1 ตัวรวบรวม CSI-2 ที่ใช้ SerDes…………………………………………………………………………………………………………………. 3 2.2 ตัวรวบรวม CSI-2 โดยไม่ใช้ SerDes……………………………………………………………………………………………………………. 4 3 การเปิดใช้งานกล้องหลายตัวในซอฟต์แวร์………………………………………………………………………………………………………………………………….. 5 3.1 สถาปัตยกรรมซอฟต์แวร์ระบบย่อยของกล้อง…………………………………………………………………………………………………………… 5 3.2 สถาปัตยกรรมซอฟต์แวร์ Image Pipeline………………………………………………………………………………………………………………………………….. 5 4 การออกแบบอ้างอิง……………………………………………………………………………………………………………………………………………………………. 7 4.1 กล้องที่รองรับ……………………………………………………………………………………………………………………………………….. 7 4.2 การตั้งค่ากล้อง IMX219 สี่ตัว………………………………………………………………………………………………………………………………….. 7 4.3 การกำหนดค่ากล้องและอินเทอร์เฟซ CSI-2 RX…………………………………………………………………………………………………………………. 8 4.4 การสตรีมจากกล้องสี่ตัว………………………………………………………………………………………………………………………………………..10 4.5 การอนุมานการเรียนรู้เชิงลึกแบบหลายกล้อง…………………………………………………………………………………………………………….. 12 5 การวิเคราะห์ประสิทธิภาพ………………………………………………………………………………………………………………………………………. 16 6 สรุป………………………………………………………………………………………………………………………………………………………. 18 7 อ้างอิง………………………………………………………………………………………………………………………………………………………. 19
เครื่องหมายการค้า
เครื่องหมายการค้าทั้งหมดเป็นทรัพย์สินของเจ้าของที่เกี่ยวข้อง
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
1
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การแนะนำ
www.ti.com
1 บทนำ
กล้องฝังตัวมีบทบาทสำคัญในระบบการมองเห็นสมัยใหม่ การใช้กล้องหลายตัวในระบบจะขยายขีดความสามารถของระบบเหล่านี้ และเปิดใช้งานความสามารถที่กล้องตัวเดียวไม่สามารถทำได้ ด้านล่างนี้เป็นตัวอย่างบางส่วนampตัวอย่างของแอปพลิเคชันที่ใช้กล้องฝังหลายตัว:
การเฝ้าระวังความปลอดภัย: กล้องหลายตัวที่ติดตั้งอย่างมีกลยุทธ์ช่วยให้ครอบคลุมการเฝ้าระวังได้อย่างครอบคลุม ช่วยให้สามารถถ่ายภาพพาโนรามาได้ views ลดจุดบอดและเพิ่มความแม่นยำในการติดตามและการจดจำวัตถุ
การปรับปรุงมาตรการรักษาความปลอดภัยโดยรวม
ล้อมรอบ View:มีการใช้กล้องหลายตัวเพื่อสร้างการตั้งค่าภาพสามมิติ ซึ่งช่วยให้สามารถรับรู้ข้อมูลสามมิติและประเมินความลึกได้ ซึ่งเป็นสิ่งสำคัญสำหรับงานต่างๆ เช่น การตรวจจับสิ่งกีดขวางในยานพาหนะอัตโนมัติ
ยานพาหนะ การจัดการวัตถุอย่างแม่นยำในหุ่นยนต์ และความสมจริงที่เพิ่มขึ้นของประสบการณ์ความจริงเสริม
ระบบบันทึกภาพในห้องโดยสารและระบบกล้องมองหลัง: เครื่องบันทึกภาพในห้องโดยสารรถยนต์ที่มีกล้องหลายตัวสามารถครอบคลุมพื้นที่ได้มากขึ้นโดยใช้โปรเซสเซอร์เพียงตัวเดียว เช่นเดียวกัน ระบบกล้องมองหลังที่มีกล้องสองตัวหรือมากกว่าสามารถขยายขอบเขตการครอบคลุมได้
สนามขับรถของ view และขจัดจุดบอดจากทุกด้านของรถยนต์
การถ่ายภาพทางการแพทย์: สามารถใช้กล้องหลายตัวในการถ่ายภาพทางการแพทย์สำหรับงานต่างๆ เช่น การนำทางผ่าตัด ช่วยให้ศัลยแพทย์มองเห็นภาพได้หลายมุมมองเพื่อความแม่นยำยิ่งขึ้น ในการส่องกล้อง กล้องหลายตัวช่วยให้สามารถตรวจได้อย่างละเอียด
การตรวจอวัยวะภายใน
โดรนและการถ่ายภาพทางอากาศ: โดรนมักมาพร้อมกับกล้องหลายตัวเพื่อจับภาพหรือวิดีโอความละเอียดสูงจากมุมต่างๆ ซึ่งมีประโยชน์ในการใช้งาน เช่น การถ่ายภาพทางอากาศ เกษตรกรรม
การติดตามและการสำรวจที่ดิน
ด้วยความก้าวหน้าของไมโครโปรเซสเซอร์ กล้องหลายตัวจึงสามารถรวมเข้าไว้ใน System-on-Chip (SoC) ตัวเดียว เพื่อมอบโซลูชันที่กะทัดรัดและมีประสิทธิภาพ AM62Ax SoC มาพร้อมการประมวลผลวิดีโอ/ภาพประสิทธิภาพสูงและการเร่งความเร็วการเรียนรู้เชิงลึก จึงเป็นอุปกรณ์ที่เหมาะอย่างยิ่งสำหรับกรณีการใช้งานที่กล่าวถึงข้างต้น AM6P อีกหนึ่งอุปกรณ์ AM62x ถูกสร้างขึ้นมาเพื่อแอปพลิเคชันการแสดงผล 3 มิติแบบฝังตัวประสิทธิภาพสูง AM3P มาพร้อมการเร่งความเร็วกราฟิก 62 มิติ จึงสามารถรวมภาพจากกล้องหลายตัวเข้าด้วยกันได้อย่างง่ายดายและสร้างภาพพาโนรามาความละเอียดสูง viewคุณสมบัติเชิงนวัตกรรมของ AM62A/AM62P SoC ได้รับการนำเสนอในสิ่งพิมพ์ต่างๆ เช่น [4], [5], [6] เป็นต้น บันทึกการใช้งานนี้จะไม่อธิบายคุณสมบัติเหล่านั้นซ้ำ แต่จะเน้นไปที่การผสานรวมกล้อง CSI-2 หลายตัวเข้ากับแอปพลิเคชันการมองเห็นแบบฝังใน AM62A/AM62P แทน
ตารางที่ 1-1 แสดงให้เห็นความแตกต่างหลักระหว่าง AM62A และ AM62P ในส่วนที่เกี่ยวข้องกับการประมวลผลภาพ
ตารางที่ 1-1 ความแตกต่างระหว่าง AM62A และ AM62P ในการประมวลผลภาพ
โซซี
เอเอ็ม62เอ
AM62P
ประเภทกล้องที่รองรับ
มีหรือไม่มี ISP ในตัว
พร้อม ISP ในตัว
ข้อมูลเอาต์พุตของกล้อง
ดิบ/YUV/RGB
ยูวี/RGB
ผู้ให้บริการอินเทอร์เน็ต HWA
ใช่
เลขที่
การเรียนรู้เชิงลึก HWA
ใช่
เลขที่
กราฟิก 3 มิติ HWA
เลขที่
ใช่
2
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การเชื่อมต่อกล้อง CSI-2 หลายตัวเข้ากับ SoC
2 การเชื่อมต่อกล้อง CSI-2 หลายตัวเข้ากับ SoC
ระบบย่อยกล้องบน AM6x SoC ประกอบด้วยส่วนประกอบต่อไปนี้ ดังที่แสดงในรูปที่ 2-1:
· ตัวรับ MIPI D-PHY: รับสตรีมวิดีโอจากกล้องภายนอก รองรับสูงสุด 1.5 Gbps ต่อเลนข้อมูลสำหรับ 4 เลน
· ตัวรับ CSI-2 (RX): รับสตรีมวิดีโอจากตัวรับ D-PHY และส่งสตรีมไปยัง ISP โดยตรง หรือถ่ายโอนข้อมูลไปยังหน่วยความจำ DDR โมดูลนี้รองรับช่องสัญญาณเสมือนได้สูงสุด 16 ช่อง
· SHIM: ตัวห่อ DMA ที่ช่วยให้สามารถส่งสตรีมที่บันทึกได้ไปยังหน่วยความจำผ่าน DMA ตัวห่อนี้สามารถสร้างบริบท DMA ได้หลายบริบท โดยแต่ละบริบทจะสอดคล้องกับช่องสัญญาณเสมือนของตัวรับ CSI-2
เลนข้อมูล 0
ผู้ให้บริการอินเทอร์เน็ต
เอ็มไอพี
เลนข้อมูล 1
ซีเอสไอ2 อาร์เอ็กซ์
ดี-พีเอชวาย
เลนข้อมูล 2
ตัวรับสัญญาณ
เลนข้อมูล 3
เลนนาฬิกา
ชิม
หน่วยความจำ DDR
โมดูลระบบกล้อง SoC AM62A/AM62P
รูปที่ 2-1 แผนผังบล็อกระดับสูงของระบบย่อยกล้องบน SoC AM62A/AM62P
AM6x สามารถรองรับกล้องหลายตัวได้ผ่านช่องสัญญาณเสมือนของ CSI-2 RX แม้ว่าจะมีอินเทอร์เฟซ CSI-2 RX เพียงตัวเดียวบน SoC ก็ตาม จำเป็นต้องมีส่วนประกอบรวมสัญญาณ CSI-2 ภายนอกเพื่อรวมสตรีมกล้องหลายตัวและส่งไปยัง SoC ตัวเดียว โซลูชันการรวมสัญญาณ CSI-2 มีสองประเภทที่สามารถใช้ได้ ซึ่งจะอธิบายไว้ในหัวข้อถัดไป
2.1 ตัวรวบรวม CSI-2 ที่ใช้ SerDes
วิธีหนึ่งในการรวมสตรีมข้อมูลกล้องหลายตัวเข้าด้วยกันคือการใช้โซลูชัน serializing และ deserializing (SerDes) ข้อมูล CSI-2 จากกล้องแต่ละตัวจะถูกแปลงโดย serializer และถ่ายโอนผ่านสายเคเบิล deserializer จะรับข้อมูล serialized ทั้งหมดที่ถ่ายโอนจากสายเคเบิล (หนึ่งสายเคเบิลต่อกล้องหนึ่งตัว) แปลงสตรีมข้อมูลกลับเป็นข้อมูล CSI-2 จากนั้นจึงส่งสตรีม CSI-2 แบบสลับไปยังอินเทอร์เฟซ CSI-2 RX ตัวเดียวบน SoC แต่ละสตรีมข้อมูลกล้องจะถูกระบุด้วยช่องสัญญาณเสมือนเฉพาะ โซลูชันการรวมนี้ให้ประโยชน์เพิ่มเติมคือการเชื่อมต่อระยะไกลสูงสุด 15 เมตรจากกล้องไปยัง SoC
FPD-Link หรือ V3-Link serializers และ deserializers (SerDes) ซึ่งรองรับใน AM6x Linux SDK เป็นเทคโนโลยีที่ได้รับความนิยมมากที่สุดสำหรับโซลูชันการรวม CSI-2 ประเภทนี้ ทั้ง FPD-Link และ deserializers V3-Link มีช่องสัญญาณด้านหลังที่สามารถใช้ส่งสัญญาณเฟรมซิงค์เพื่อซิงโครไนซ์กล้องทั้งหมด ดังที่อธิบายไว้ใน [7]
รูปที่ 2-2 แสดง exampประโยชน์ของการใช้ SerDes เพื่อเชื่อมต่อกล้องหลายตัวเข้ากับ SoC AM6x ตัวเดียว
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
3
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การเชื่อมต่อกล้อง CSI-2 หลายตัวเข้ากับ SoC
กล้อง
ซีเรียลไลเซอร์
ฮับดีซีเรียลไลเซอร์
www.ti.com
กล้องติดกล้อง
ซีเรียลไลเซอร์ ซีเรียลไลเซอร์
CSI-2 Tx
ซีเอสไอ-2 ยาเอ็กซ์
AM62A/ AM62P
โซซี
กล้อง
ซีเรียลไลเซอร์
รูปที่ 2-2 การเชื่อมต่อกล้องหลายตัวโดยใช้ SerDes
อดีตampโซลูชันการรวมสัญญาณนี้สามารถพบได้ในชุดโซลูชันกล้อง Arducam V3Link ชุดนี้มีฮับ deserilizer ซึ่งรวมสัญญาณกล้อง CSI-4 จำนวน 2 ชุด รวมถึง V4link serializer จำนวน 3 คู่ และกล้อง IMX219 ซึ่งรวมถึงสายโคแอกเชียล FAKRA และสาย FPC 22 พิน การออกแบบอ้างอิงที่กล่าวถึงในภายหลังได้ถูกสร้างขึ้นบนชุดนี้
2.2 ตัวรวบรวม CSI-2 โดยไม่ใช้ SerDes
ตัวรวบรวมประเภทนี้สามารถเชื่อมต่อโดยตรงกับกล้อง MIPI CSI-2 หลายตัวและรวบรวมข้อมูลจากกล้องทั้งหมดไปยังสตรีมเอาต์พุต CSI-2 เดียว
รูปที่ 2-3 แสดง example ของระบบดังกล่าว โซลูชันการรวมข้อมูลประเภทนี้ไม่ได้ใช้ serializer/deserializer ใดๆ แต่ถูกจำกัดด้วยระยะทางสูงสุดของการถ่ายโอนข้อมูล CSI-2 ซึ่งสูงสุด 30 ซม. AM6x Linux SDK ไม่รองรับตัวรวมข้อมูล CSI-2 ประเภทนี้
ฮับดีซีเรียลไลเซอร์
กล้อง
ซีเอสไอ-2 ยาเอ็กซ์
กล้อง กล้อง กล้อง
ซีเอสไอ-2 อาร์เอ็กซ์ ซีเอสไอ-2 อาร์เอ็กซ์
CSI-2 Tx
ซีเอสไอ-2 ยาเอ็กซ์
ซีเอสไอ-2 ยาเอ็กซ์
AM62A/ AM62P
โซซี
รูปที่ 2-3 การเชื่อมต่อกล้องหลายตัวโดยใช้ CSI-2 Aggregator
4
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การเปิดใช้งานกล้องหลายตัวในซอฟต์แวร์
3 การเปิดใช้งานกล้องหลายตัวในซอฟต์แวร์
3.1 สถาปัตยกรรมซอฟต์แวร์ระบบย่อยกล้อง
รูปที่ 3-1 แสดงแผนผังบล็อกระดับสูงของซอฟต์แวร์ระบบจับภาพกล้องใน Linux SDK AM62A/AM62P ซึ่งสอดคล้องกับระบบ HW ในรูปที่ 2-2
แอปพลิเคชันสำหรับผู้ใช้
ยูทิลิตี้ V4L2
ตัวควบคุมสื่อ
ไดรเวอร์ TI CSI2RX (SHIM, DMASS)
Cadence CSI2 – ไดรเวอร์ RX
Cadence D – ไดรเวอร์ PHY
ไดรเวอร์ Deserializer
ไดรเวอร์ Serializer
ไดรเวอร์เซ็นเซอร์กล้อง
กรอบงาน V4L2
รูปที่ 3-1 แผนผังบล็อกระดับสูงของระบบจับภาพกล้องโดยใช้ SerDes
สถาปัตยกรรมซอฟต์แวร์นี้ช่วยให้ SoC สามารถรับสตรีมกล้องได้หลายสตรีมโดยใช้ SerDes ดังแสดงในรูปที่ 2-2 SerDes ของ FPD-Link/V3-Link จะกำหนดที่อยู่ I2C และช่องสัญญาณเสมือนเฉพาะให้กับกล้องแต่ละตัว ควรสร้างโอเวอร์เลย์ทรีอุปกรณ์เฉพาะที่มีที่อยู่ I2C เฉพาะสำหรับกล้องทุกตัว ไดรเวอร์ CSI-2 RX จะจดจำกล้องแต่ละตัวโดยใช้หมายเลขช่องสัญญาณเสมือนเฉพาะ และสร้างบริบท DMA สำหรับแต่ละสตรีมกล้อง โหนดวิดีโอจะถูกสร้างขึ้นสำหรับบริบท DMA ทุกรายการ จากนั้นข้อมูลจากกล้องแต่ละตัวจะถูกรับและจัดเก็บโดยใช้ DMA ไปยังหน่วยความจำตามลำดับ แอปพลิเคชันพื้นที่ผู้ใช้จะใช้โหนดวิดีโอที่สอดคล้องกับกล้องแต่ละตัวเพื่อเข้าถึงข้อมูลของกล้อง ตัวอย่างampวิธีการใช้สถาปัตยกรรมซอฟต์แวร์นี้มีอยู่ในบทที่ 4 การออกแบบอ้างอิง
ไดรเวอร์เซ็นเซอร์เฉพาะใดๆ ที่สอดคล้องกับเฟรมเวิร์ก V4L2 สามารถเสียบและใช้งานได้ทันทีในสถาปัตยกรรมนี้ โปรดดู [8] เกี่ยวกับวิธีการรวมไดรเวอร์เซ็นเซอร์ใหม่เข้ากับ Linux SDK
3.2 สถาปัตยกรรมซอฟต์แวร์ Image Pipeline AM6x Linux SDK มีเฟรมเวิร์ก GStreamer (GST) ซึ่งสามารถใช้ในพื้นที่ผู้ใช้เพื่อรวมส่วนประกอบการประมวลผลภาพสำหรับแอปพลิเคชันต่างๆ ตัวเร่งความเร็วฮาร์ดแวร์ (HWA) บน SoC เช่น Vision Pre-processing Accelerator (VPAC) หรือ ISP ตัวเข้ารหัส/ถอดรหัสวิดีโอ และกลไกการประมวลผลการเรียนรู้เชิงลึก สามารถเข้าถึงได้ผ่าน GST pluginsVPAC (ISP) เองมีหลายบล็อก รวมถึง Vision Imaging Sub-System (VISS), Lens Distortion Correction (LDC) และ Multiscalar (MSC) โดยแต่ละบล็อกสอดคล้องกับปลั๊กอิน GST
รูปที่ 3-2 แสดงแผนผังแบบบล็อกของกระบวนการประมวลผลภาพทั่วไปจากกล้องไปยังแอปพลิเคชันการเข้ารหัสหรือการเรียนรู้เชิงลึกบน AM62A สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการไหลของข้อมูลแบบ end-to-end โปรดดูเอกสารประกอบ EdgeAI SDK
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
5
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การเปิดใช้งานกล้องหลายตัวในซอฟต์แวร์
การควบคุมการเปิดรับแสงอัตโนมัติ
อัลกอริทึม 2A
กล้อง
วี4แอล2เอสอาร์ซี
ภาษีมูลค่าเพิ่ม plugins สำหรับ ISP
การเข้ารหัส HWA
ภาษีมูลค่าเพิ่ม plugins สำหรับการเข้ารหัส
ภาษีมูลค่าเพิ่ม plugins สำหรับการเรียนรู้เชิงลึก
www.ti.com
แอปพลิเคชันปลายน้ำ
ผู้ให้บริการอินเทอร์เน็ต HWA
การเรียนรู้เชิงลึก HWA
ปลั๊กอิน Gstreamer (GST) ตัวเร่งความเร็วฮาร์ดแวร์ AM62A (HWA)
รูปที่ 3-2 อิมเมจไพล์ไลน์ AM62A ทั่วไปที่ใช้ GStreamer สำหรับ AM62P อิมเมจไพล์ไลน์จะเรียบง่ายกว่าเนื่องจากไม่มี ISP บน AM62P
การเข้ารหัส HWA
กล้อง
วี4แอล2เอสอาร์ซี
ภาษีมูลค่าเพิ่ม plugins สำหรับการเข้ารหัส
ภาษีมูลค่าเพิ่ม plugins สำหรับกราฟิก 3 มิติ
แอปพลิเคชันปลายน้ำ
การเรียนรู้เชิงลึก HWA
ปลั๊กอิน Gstreamer (GST) ตัวเร่งความเร็วฮาร์ดแวร์ AM62P (HWA)
รูปที่ 3-3 อิมเมจไพพ์ไลน์ AM62P ทั่วไปที่ใช้ GStreamer
ด้วยโหนดวิดีโอที่สร้างขึ้นสำหรับกล้องแต่ละตัว ไพพ์ไลน์ภาพที่ใช้ GStreamer ช่วยให้สามารถประมวลผลอินพุตจากกล้องหลายตัว (เชื่อมต่อผ่านอินเทอร์เฟซ CSI-2 RX เดียวกัน) ได้พร้อมกัน การออกแบบอ้างอิงโดยใช้ GStreamer สำหรับการใช้งานกล้องหลายตัวจะกล่าวถึงในบทถัดไป
6
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การออกแบบอ้างอิง
4 การออกแบบอ้างอิง
บทนี้จะนำเสนอการออกแบบอ้างอิงของการรันแอปพลิเคชันกล้องหลายตัวบน AM62A EVM การใช้ Arducam V3Link Camera Solution Kit เพื่อเชื่อมต่อกล้อง CSI-4 จำนวน 2 ตัวเข้ากับ AM62A และการรันการตรวจจับวัตถุสำหรับกล้องทั้ง 4 ตัว
4.1 กล้องที่รองรับ
ชุด Arducam V3Link ใช้งานได้กับทั้งกล้องที่ใช้ FPD-Link/V3-Link และกล้อง CSI-2 ที่ใช้งานร่วมกับ Raspberry Pi ได้ กล้องต่อไปนี้ได้รับการทดสอบแล้ว: · D3 Engineering D3RCM-IMX390-953 · Leopard Imaging LI-OV2312-FPDLINKIII-110H · กล้อง IMX219 ในชุด Arducam V3Link Camera Solution Kit
4.2 การตั้งค่ากล้อง IMX219 สี่ตัว
ทำตามคำแนะนำในคู่มือเริ่มต้นใช้งานฉบับย่อของ AM62A Starter Kit EVM Quick Start Guild เพื่อตั้งค่า SK-AM62A-LP EVM (AM62A SK) และคู่มือเริ่มต้นใช้งานฉบับย่อของ ArduCam V3Link Camera Solution เพื่อเชื่อมต่อกล้องเข้ากับ AM62A SK ผ่านชุด V3Link ตรวจสอบให้แน่ใจว่าพินบนสายเคเบิลแบบยืดหยุ่น กล้อง บอร์ด V3Link และ AM62A SK ทั้งหมดอยู่ในแนวเดียวกันอย่างถูกต้อง
รูปที่ 4-1 แสดงการตั้งค่าที่ใช้ในการออกแบบอ้างอิงในรายงานนี้ ส่วนประกอบหลักในการตั้งค่าประกอบด้วย: · บอร์ด SK-AM1A-LP EVM 62 ตัว · บอร์ดอะแดปเตอร์ Arducam V1Link d-ch 3 ตัว · สาย FPC เชื่อมต่อ Arducam V3Link เข้ากับ SK-AM62A · อะแดปเตอร์กล้อง V4Link 3 ตัว (ตัวซีเรียลไลเซอร์) · สายโคแอกเชียล RF 4 เส้นสำหรับเชื่อมต่อตัวซีเรียลไลเซอร์ V3Link เข้ากับชุด V3Link d-ch · กล้อง IMX4 219 ตัว · สาย CSI-4 2 พิน 22 เส้นสำหรับเชื่อมต่อกล้องกับตัวซีเรียลไลเซอร์ · สายเคเบิล: สาย HDMI, USB-C สำหรับจ่ายไฟให้กับ SK-AM62A-LP และแหล่งจ่ายไฟ 12V สำหรับชุด V3Link d-ch · ส่วนประกอบอื่นๆ ที่ไม่ได้แสดงในรูปที่ 4-1: การ์ด micro-SD, สาย micro-USB สำหรับเชื่อมต่อ SK-AM62A-LP และ
อีเธอร์เน็ตสำหรับการสตรีม
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
7
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การออกแบบอ้างอิง
www.ti.com
รูปที่ 4-1 บอร์ด V3link และการตั้งค่ากล้อง 4 ตัวที่ใช้ในการออกแบบอ้างอิง
4.3 การกำหนดค่ากล้องและอินเทอร์เฟซ CSI-2 RX
ตั้งค่าซอฟต์แวร์ตามคำแนะนำในคู่มือเริ่มต้นใช้งานฉบับย่อของ Arducam V3Link หลังจากรันสคริปต์ตั้งค่ากล้อง setup-imx219.sh, รูปแบบกล้อง, รูปแบบอินเทอร์เฟซ CSI-2 RX และเส้นทางจากกล้องแต่ละตัวไปยังโหนดวิดีโอที่เกี่ยวข้องจะได้รับการกำหนดค่าอย่างถูกต้อง โหนดวิดีโอสี่โหนดจะถูกสร้างขึ้นสำหรับกล้อง IMX219 ทั้งสี่ตัว คำสั่ง "v4l2-ctl –list-devices" จะแสดงอุปกรณ์วิดีโอ V4L2 ทั้งหมด ดังแสดงด้านล่าง:
รูท@am62axx-evm:~# v4l2-ctl –list-devices j721e-csi2rx (แพลตฟอร์ม: 30102000.ticsi2rx):
/dev/video2 /dev/video3 /dev/video4 /dev/video5 /dev/video6 /dev/video7 /dev/media0
wave5-dec (แพลตฟอร์ม: wave5-dec): /dev/video0
wave5-enc (แพลตฟอร์ม: wave5-enc): /dev/video1
8
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การออกแบบอ้างอิง
มีโหนดวิดีโอ 6 โหนดและโหนดสื่อ 1 โหนดภายใต้ tiscsi2rx แต่ละโหนดวิดีโอสอดคล้องกับบริบท DMA
จัดสรรโดยไดรเวอร์ CSI2 RX จากโหนดวิดีโอ 6 โหนด จะใช้ 4 โหนดสำหรับกล้อง IMX4 219 ตัว ดังที่แสดงใน
โครงสร้างท่อสื่อดังต่อไปนี้:
รูท@am62axx-evm:~# media-ctl -p
โทโพโลยีอุปกรณ์ – เอนทิตี 1: 30102000.ticsi2rx (7 แพด, 7 ลิงก์, 4 เส้นทาง)
ประเภท V4L2 subdev subtype แฟล็กที่ไม่รู้จัก 0 ชื่อโหนดอุปกรณ์ /dev/v4l-subdev0 เส้นทาง:
0/0 -> 1/0 [ใช้งาน] 0/1 -> 2/0 [ใช้งาน] 0/2 -> 3/0 [ใช้งาน] 0/3 -> 4/0 [ใช้งาน] pad0: ซิงค์ [สตรีม:0 fmt:UYVY8_1X16/640×480 ฟิลด์:ไม่มี พื้นที่สี: srgb xfer: srgb ycbcr: 601 การหาปริมาณ: ช่วง lim] [สตรีม:1 fmt:UYVY8_1X16/640×480 ฟิลด์:ไม่มี พื้นที่สี: srgb xfer: srgb ycbcr: 601 การหาปริมาณ: ช่วง lim] [สตรีม:2 fmt:UYVY8_1X16/640×480 ฟิลด์:ไม่มี พื้นที่สี: srgb xfer: srgb ycbcr: 601 การหาปริมาณ: ช่วง lim] [สตรีม:3 fmt:UYVY8_1X16/640×480 ฟิลด์:ไม่มี พื้นที่สี: srgb xfer: srgb ycbcr: 601 การวัดปริมาณ: lim-range] <- “cdns_csi2rx.30101000.csi-bridge”:1 [เปิดใช้งาน, ไม่เปลี่ยนแปลง] pad1: แหล่งที่มา [สตรีม: 0 fmt:UYVY8_1X16/640×480 ฟิลด์:ไม่มี พื้นที่สี: srgb xfer: srgb ycbcr: 601 การวัดปริมาณ: lim-range] -> “30102000.ticsi2rx บริบท 0”: 0 [เปิดใช้งาน, ไม่เปลี่ยนแปลง] pad2: แหล่งที่มา [สตรีม: 0 fmt:UYVY8_1X16/640×480 ฟิลด์:ไม่มี พื้นที่สี: srgb xfer: srgb ycbcr: 601 quantization:lim-range] -> “30102000.ticsi2rx context 1”:0 [ENABLED, IMMUTABLE] pad3: Source [stream:0 fmt:UYVY8_1X16/640×480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range] -> “30102000.ticsi2rx context 2”:0 [ENABLED, IMMUTABLE] pad4: Source [stream:0 fmt:UYVY8_1X16/640×480 field:none colorspace:srgb xfer:srgb ycbcr:601 quantization:lim-range] -> “30102000.ticsi2rx context 3”:0 [ENABLED, IMMUTABLE] pad5: Source -> “30102000.ticsi2rx บริบท 4”:0 [เปิดใช้งาน, ไม่เปลี่ยนแปลง] pad6: แหล่งที่มา -> “30102000.ticsi2rx บริบท 5”:0 [เปิดใช้งาน, ไม่เปลี่ยนแปลง]
ดังที่แสดงไว้ด้านบน เอนทิตีสื่อ 30102000.ticsi2rx มีแผ่นต้นทาง 6 แผ่น แต่ใช้เพียง 4 แผ่นแรกเท่านั้น โดยแต่ละแผ่นใช้สำหรับ IMX219 หนึ่งตัว โทโพโลยีของท่อสื่อสามารถแสดงเป็นกราฟิกได้เช่นกัน รันคำสั่งต่อไปนี้เพื่อสร้างจุด file:
รูท @am62axx-evm: ~# media-ctl –print-dot > media.dot
จากนั้นรันคำสั่งด้านล่างบนโฮสต์พีซี Linux เพื่อสร้าง png file:
$ dot -Tpng media-top.dot -o media-top.png
รูปที่ 4-2 เป็นภาพที่สร้างขึ้นโดยใช้คำสั่งที่ระบุไว้ข้างต้น ส่วนประกอบในสถาปัตยกรรมซอฟต์แวร์ของรูปที่ 3-1 สามารถดูได้ในกราฟนี้
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
9
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การออกแบบอ้างอิง
กล้องซีเรียลไลเซอร์
Imx219 6-0010 /dev/v4l-subdev9
0
0 ds90ub953 4-0044 /dev/v41-subdev8
1
Imx219 7-0010 /dev/v4l-subdev5
0
0 ds90ub953 4-0045 /dev/v41-subdev3
1
Imx219 8-0010 /dev/v4l-subdev7
0
0 ds90ub953 4-0046 /dev/v41-subdev4
1
ฮับดีซีเรียลไลเซอร์
0
1
2
3
ds90ub960 4-0030 /dev/v4l-subdev2
4
5
สะพาน D-PHY และ CSI-2 Rx
0
cdns_csi2rx.30101000.csi-bridge /dev/v4l-subdev1
1
2
3
4
TI CSI-2 RX (SHIM, DMASS)
0 30102000.ticsi2rx /dev/v4l-subdev0
1 23 4 5 6
www.ti.com
Imx219 9-0010 /dev/v4l-subdev10
0
0 ds90ub953 4-0047 /dev/v41-subdev6
1
30102000.ticsi2rx บริบท 0 /dev/video2
30102000.ticsi2rx บริบท /dev/video3
1text3010200/d0e.tvic/vsiid2erxo4context
2
30102000.ticsi2rx บริบท 3 /dev/video5
30102000.ticsi2rx บริบท 4 /dev/video6
30102000.ticsi2rx บริบท 5 /dev/video7
โหนดวิดีโอ: ใช้โหนด 4 โหนดแรก โหนดละหนึ่งกล้อง
รูปที่ 4-2 โทโพโลยีสื่อของระบบกล้องหลายตัว
4.4 การสตรีมจากกล้องสี่ตัว
เมื่อตั้งค่าทั้งฮาร์ดแวร์และซอฟต์แวร์อย่างถูกต้อง แอปพลิเคชันกล้องหลายตัวจะสามารถทำงานจากพื้นที่ผู้ใช้ได้ สำหรับ AM62A จำเป็นต้องปรับแต่ง ISP เพื่อให้ได้ภาพที่มีคุณภาพ โปรดดูคู่มือการปรับแต่ง ISP AM6xA สำหรับวิธีการปรับแต่ง ISP หัวข้อต่อไปนี้จะอธิบายตัวอย่างampน้อยกว่าการสตรีมข้อมูลกล้องไปยังจอแสดงผล การสตรีมข้อมูลกล้องไปยังเครือข่าย และการจัดเก็บข้อมูลกล้องไปยัง files.
4.4.1 การสตรีมข้อมูลกล้องเพื่อแสดง
การใช้งานพื้นฐานของระบบกล้องหลายตัวนี้คือ การสตรีมวิดีโอจากกล้องทุกตัวไปยังจอแสดงผลที่เชื่อมต่อกับ SoC เดียวกัน ต่อไปนี้คือตัวอย่างขั้นตอนการทำงานของ GStreamerampการสตรีม IMX219 สี่ตัวไปยังจอแสดงผล (หมายเลขโหนดวิดีโอและหมายเลข v4l-subdev ในไปป์ไลน์อาจเปลี่ยนแปลงไปทุกครั้งที่รีบูตเครื่อง)
gst-launch-1.0 v4l2src อุปกรณ์=/dev/video2 โหมด io=5 ! วิดีโอ/xbayer, ความกว้าง=1920, ความสูง=1080, อัตราเฟรม=30/1, รูปแบบ=bggr ! คิวรั่ว=2 ! tiovxisp sink_0::device=/dev/v4l-subdev9 ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/เลือก/ การถ่ายภาพ/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin format-msb=7 sink_0::pool-size=8 src::pool-size=8 ! video/x-raw,format=NV12, width=1920,height=1080 ! queue ! mosaic.sink_0 v4l2src device=/dev/video3 io-mode=5 ! video/xbayer,width=1920,height=1080,framerate=30/1,format=bggr ! queue leaky=2 ! tiovxisp sink_0::device=/dev/v4l-subdev5 sensor-name=SENSOR_SONY_IMX219_RPI dcc-isp-file=/เลือก/ การถ่ายภาพ/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin format-msb=7 sink_0::pool-size=8 src::pool-size=8 ! video/x-raw,format=NV12, width=1920,height=1080 ! queue ! mosaic.sink_1 v4l2src device=/dev/video4 io-mode=5 ! video/x-
10
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การออกแบบอ้างอิง
bayer, ความกว้าง = 1920, ความสูง = 1080, อัตราเฟรม = 30/1, รูปแบบ = bggr ! คิวรั่ว = 2 ! tiovxisp sink_0::device=/dev/v4l-subdev7 ชื่อเซ็นเซอร์ = SENSOR_SONY_IMX219_RPI dcc-isp-file=/เลือก/ การถ่ายภาพ/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin format-msb=7 sink_0::pool-size=8 src::pool-size=8 ! video/x-raw,format=NV12, width=1920,height=1080 ! queue ! mosaic.sink_2 v4l2src device=/dev/video5 io-mode=5 ! video/xbayer,width=1920,height=1080,framerate=30/1,format=bggr ! queue leaky=2 ! tiovxisp sink_0::device=/dev/v4l-subdev10 sensor-name=SENSOR_SONY_IMX219_RPI dcc-isp-file=/เลือก/ การถ่ายภาพ/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin format-msb=7 sink_0::pool-size=8 src::pool-size=8 ! video/x-raw,format=NV12, width=1920,height=1080 ! queue ! mosaic.sink_3 tiovxmosaic name=mosaic sink_0::startx=”<0>” sink_0::starty=”<0>” sink_0::widths=”<640>” sink_0::heights=”<480>” sink_1::startx=”<0>” sink_1::starty=”<480>” sink_1::widths=”<640>” sink_1::heights=”<480>” sink_2::startx=”<640>” sink_2::starty=”<0>” sink_2::widths=”<640>” sink_2::heights=”<480>” sink_3::startx=”<640>” sink_3::starty=”<480>” sink_3::widths=”<640>” sink_3::heights=”<480>” ! คิว ! วิดีโอ/x-raw, ความกว้าง=1920, ความสูง=1080 ! kmssink ชื่อไดรเวอร์=tidss ซิงค์=false forcemodesetting=true
4.4.2 การสตรีมข้อมูลกล้องผ่านอีเธอร์เน็ต
แทนที่จะสตรีมไปยังจอแสดงผลที่เชื่อมต่อกับ SoC เดียวกัน ข้อมูลกล้องก็สามารถสตรีมผ่านอีเทอร์เน็ตได้เช่นกัน ฝั่งรับอาจเป็นโปรเซสเซอร์ AM62A/AM62P ตัวอื่นหรือโฮสต์พีซี ต่อไปนี้คือตัวอย่างampสำหรับการสตรีมข้อมูลกล้องผ่านอีเทอร์เน็ต (ใช้กล้องสองตัวเพื่อความเรียบง่าย) (โปรดทราบปลั๊กอินตัวเข้ารหัสที่ใช้ในขั้นตอนการผลิต):
gst-launch-1.0 v4l2src อุปกรณ์=/dev/video2 โหมด io=5 ! วิดีโอ/xbayer, ความกว้าง=1920, ความสูง=1080, อัตราเฟรม=30/1, รูปแบบ=bggr ! คิวรั่ว=2 ! tiovxisp ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin sink_0::device=/dev/v4l-subdev9 ! queue ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc ! rtph264pay ! udpsink port=5000 host= อุปกรณ์ v4l2src=/dev/video3 โหมด io=5 ! วิดีโอ/xbayer, ความกว้าง=1920, ความสูง=1080, อัตราเฟรม=30/1, รูปแบบ=bggr ! คิวรั่ว=2 ! tiovxisp ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin sink_0::device=/dev/v4l-subdev5 ! queue ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc ! rtph264pay ! udpsink port=5001 host=
ต่อไปนี้เป็นอดีตampการรับข้อมูลกล้องและสตรีมไปยังจอแสดงผลบนโปรเซสเซอร์ AM62A/AM62P อื่น:
ไทย: gst-launch-1.0 -v udpsrc พอร์ต=5000 ! 'application/x-rtp, ชื่อการเข้ารหัส=H264, payload=96' ! rtph264depay ! avdec_h264 ! queue ! videoconvert ! queue ! video/x-raw,format=NV12,width=1920,height=1080 ! queue ! mosaic.sink_0 udpsrc พอร์ต=5001 ! 'application/x-rtp, ชื่อการเข้ารหัส=H264, payload=96' ! rtph264depay ! avdec_h264 ! queue ! videoconvert ! queue ! video/x-raw,format=NV12,width=1920,height=1080 ! queue ! mosaic.sink_1 tiovxmosaic ชื่อ = โมเสก sink_0::startx=”<0>” sink_0::starty=”<0>” sink_0::widths=”<960>” sink_0::heights=”<540>” sink_1::startx=”<960>” sink_1::starty=”<540>” sink_1::widths=”<960>” sink_1::heights=”<540>” ! queue ! kmssink driver-name = tidss sync=false
4.4.3 การจัดเก็บข้อมูลกล้องลงใน Files
แทนที่จะสตรีมไปยังจอแสดงผลหรือผ่านเครือข่าย ข้อมูลกล้องสามารถจัดเก็บลงในเครื่องได้ files. ไพพ์ไลน์ด้านล่างนี้จะจัดเก็บข้อมูลของกล้องแต่ละตัวไว้ใน file (ใช้กล้องสองตัวเป็นตัวอย่างample เพื่อความเรียบง่าย)
gst-launch-1.0 v4l2src อุปกรณ์=/dev/video2 โหมด io=5 ! วิดีโอ/xbayer, ความกว้าง=1920, ความสูง=1080, อัตราเฟรม=30/1, รูปแบบ=bggr ! คิวรั่ว=2 ! tiovxisp ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin sink_0::device=/dev/v4l-subdev9 !
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
11
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การออกแบบอ้างอิง
www.ti.com
คิว ! วิดีโอ/x-raw, รูปแบบ=NV12, ความกว้าง=1920, ความสูง=1080, อัตราเฟรม=30/1 ! v4l2h264enc ! fileตำแหน่งซิงก์=camcap-1.mp4 v4l2src อุปกรณ์=/dev/video3 โหมด io=5 ! วิดีโอ/xbayer, ความกว้าง=1920, ความสูง=1080, อัตราเฟรม=30/1, รูปแบบ=bggr ! คิวรั่ว=2 ! tiovxisp ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/dcc_viss_1920x1080.bin sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a_1920x1080.bin sink_0::device=/dev/v4l-subdev5 ! queue ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1 ! v4l2h264enc ! fileตำแหน่งอ่างล้างจาน=cam-cap-2.mp4
4.5 การอนุมานการเรียนรู้เชิงลึกแบบหลายกล้อง
AM62A มาพร้อมกับตัวเร่งการเรียนรู้เชิงลึก (C7x-MMA) ที่มี TOPS สูงสุดสองตัว ซึ่งสามารถรันโมเดลการเรียนรู้เชิงลึกได้หลากหลายประเภทสำหรับการจำแนกประเภท การตรวจจับวัตถุ การแบ่งส่วนทางความหมาย และอื่นๆ อีกมากมาย ส่วนนี้แสดงให้เห็นว่า AM62A สามารถรันโมเดลการเรียนรู้เชิงลึกสี่โมเดลพร้อมกันบนฟีดกล้องสี่ตัวที่แตกต่างกันได้อย่างไร
4.5.1 การเลือกแบบ
EdgeAI-ModelZoo ของ TI นำเสนอโมเดลล้ำสมัยหลายร้อยโมเดล ซึ่งจะถูกแปลง/ส่งออกจากเฟรมเวิร์กการฝึกดั้งเดิมไปยังฟอร์แมตที่ใช้งานง่ายแบบฝังตัว เพื่อให้สามารถถ่ายโอนไปยังตัวเร่งความเร็วการเรียนรู้เชิงลึก C7x-MMA ได้ ส่วน Edge AI Studio Model Analyzer บนคลาวด์ เป็นเครื่องมือ “การเลือกโมเดล” ที่ใช้งานง่าย อัปเดตแบบไดนามิกเพื่อรวมโมเดลทั้งหมดที่รองรับใน TI EdgeAI-ModelZoo เครื่องมือนี้ไม่จำเป็นต้องมีประสบการณ์มาก่อน และมีอินเทอร์เฟซที่ใช้งานง่ายสำหรับป้อนคุณสมบัติที่จำเป็นในโมเดลที่ต้องการ
TFL-OD-2000-ssd-mobV1-coco-mlperf ถูกเลือกสำหรับการทดลองการเรียนรู้เชิงลึกแบบหลายกล้องนี้ โมเดลการตรวจจับวัตถุหลายวัตถุนี้ได้รับการพัฒนาในเฟรมเวิร์ก Tensor Flow ที่มีความละเอียดอินพุต 300×300 ตารางที่ 4-1 แสดงคุณสมบัติสำคัญของโมเดลนี้เมื่อฝึกบนชุดข้อมูล coco ที่มีคลาสต่างๆ ประมาณ 80 คลาส
ตารางที่ 4-1 คุณสมบัติเด่นของรุ่น TFL-OD-2000-ssd-mobV1-coco-mlperf
แบบอย่าง
งาน
ปณิธาน
เฟรมต่อวินาที
ความแม่นยำ 50% บน COCO
เวลาแฝง/เฟรม (มิลลิวินาที)
การใช้ DDR BW (MB/ เฟรม)
TFL-OD-2000-ssd-
หลายวัตถุ 300×300
~152
15.9
6.5
mobV1-coco-mlperf
การตรวจจับ
18.839
4.5.2 การตั้งค่าท่อส่ง
รูปที่ 4-3 แสดงขั้นตอนการเรียนรู้เชิงลึก GStreamer แบบ 4 กล้อง TI มีชุด GStreamer plugins ที่อนุญาตให้ถ่ายโอนการประมวลผลสื่อบางส่วนและการอนุมานการเรียนรู้เชิงลึกไปยังตัวเร่งความเร็วฮาร์ดแวร์ ตัวอย่างบางส่วนampเหล่านี้ plugins รวมถึง tiovxisp, tiovxmultiscaler, tiovxmosaic และ tidlinferer ไพพ์ไลน์ในรูปที่ 4-3 ประกอบด้วยไฟล์ที่จำเป็นทั้งหมด plugins สำหรับไปป์ไลน์ GStreamer แบบหลายเส้นทางสำหรับอินพุตกล้อง 4 ตัว โดยแต่ละตัวมีการประมวลผลสื่อล่วงหน้า การอนุมานการเรียนรู้เชิงลึก และการประมวลผลหลังการประมวลผล ข้อมูลที่ซ้ำกัน plugins สำหรับแต่ละเส้นทางของกล้องจะถูกซ้อนกันในกราฟเพื่อการสาธิตที่ง่ายขึ้น
ทรัพยากรฮาร์ดแวร์ที่มีอยู่จะกระจายอย่างเท่าเทียมกันในเส้นทางกล้องทั้งสี่เส้นทาง ตัวอย่างเช่น AM62A ประกอบด้วยตัวปรับขนาดภาพสองตัว ได้แก่ MSC0 และ MSC1 ไพพ์ไลน์นี้กำหนดให้ MSC0 ประมวลผลเส้นทางกล้อง 1 และกล้อง 2 อย่างชัดเจน ขณะที่ MSC1 จัดสรรให้กับกล้อง 3 และกล้อง 4
12
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
CSI IMX219 กล้อง(1) กล้อง(2) กล้อง(3) กล้อง(4)
เครื่องเร่งอนุภาค VISS
เครื่องเร่งความเร็ว MSC
1920×1080
1920×1080
อาร์จีบี
NV12
การจับข้อมูลอินพุต
อัตราการรับแสง
วี4แอล2เอสอาร์ซี
tiovxisp
ปรับขนาดและแยก tiovxmultiscaler
1110×690 NV12
1110×690 NV12
คิว
เครื่องเร่งความเร็ว MSC
มาตราส่วน tiovxmultiscaler
640×480 NV12
ตัวเร่งความเร็วการเรียนรู้เชิงลึก C7x/MMA
คิว
การออกแบบอ้างอิง
เครื่องเร่งความเร็ว MSC
มาตราส่วน tiovxmultiscaler
300×300 NV12
การประมวลผลล่วงหน้า tiovxdlpreproc
300×300RGB
ทิดลินเฟอเรอร์
โพสต์โปรเซส tidlpostproc
เครื่องเร่งความเร็ว DSS
เครื่องเร่งความเร็ว MSC
192×1080
NV12 HDMI
เพื่อแสดง kmssink
โอเวอร์เลย์ประสิทธิภาพ
Conc Images tiovxmosaic
4x640x480 NV12
ปลั๊กอิน GST ARM NEON ที่ปรับให้เหมาะสม ปลั๊กอิน GST ARM Deep Learning รันไทม์
ปลั๊กอิน GST พร้อมรหัสแอปพลิเคชัน HW HW Accelerator บนคอร์ ARM A53
รูปที่ 4-3 GStreamer Pipeline สำหรับการอนุมานการเรียนรู้เชิงลึกของกล้อง Quad CSI IMX219 บน AM62A
ผลลัพธ์ของไปป์ไลน์กล้องทั้งสี่ตัวถูกปรับขนาดลงและเชื่อมต่อเข้าด้วยกันโดยใช้ปลั๊กอิน tiovxmosaic ผลลัพธ์จะแสดงบนหน้าจอเดียว รูปที่ 4-4 แสดงผลลัพธ์ของกล้องทั้งสี่ตัวที่มีโมเดลการเรียนรู้เชิงลึกกำลังรันการตรวจจับวัตถุ โดยไปป์ไลน์แต่ละตัว (กล้อง) ทำงานที่ 30 FPS และรวมทั้งหมด 120 FPS
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
13
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การออกแบบอ้างอิง
www.ti.com
รูปที่ 4-4 ภาพหน้าจอของการอนุมานการเรียนรู้เชิงลึกด้วยการตรวจจับวัตถุด้วยกล้องสี่ตัวโดยใช้ AM62A พร้อมการซ้อนทับประสิทธิภาพแบบกราฟิก
ถัดไปคือสคริปต์ไปป์ไลน์แบบเต็มสำหรับกรณีการใช้งานการเรียนรู้เชิงลึกแบบหลายกล้องที่แสดงในรูปที่ 4-3
gst-launch-1.0 -v v4l2src อุปกรณ์=/dev/video2 โหมด io=5 ! คิวรั่ว=2 ! วิดีโอ/x-bayer, ความกว้าง=1920, ความสูง=1080, รูปแบบ=rggb ! tiovxisp ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/ dcc_viss.bin format-msb=7 sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a.bin sink_0::device=/dev/ v4l-subdev2 ! video/x-raw, format=NV12 ! tiovxmultiscaler target=0 name=split_01 split_01. ! queue ! video/x-raw, width=1110, height=690 ! tiovxmultiscaler target=0 ! video/xraw, width=300, height=300 ! tiovxdlpreproc data-type=3 channel-order=1 tensor-format=rgb outpool-size=4 ! application/x-tensor-tiovx ! tidlinferer target=1 model=/opt/model_zoo/TFL-OD-2000ssd-mobV1-coco-mlperf-300×300 ! post_0.tensor split_01. ! queue ! video/x-raw, width=640, height=360 ! post_0.sink tidlpostproc name=post_0 model=/opt/model_zoo/TFL-OD-2000-ssd-mobV1-coco-mlperf-300×300 alpha=0.400000 viz-threshold=0.600000 top-N=5 ! queue ! mosaic_0. v4l2src device=/dev/video3 io-mode=5 ! queue leaky=2 ! video/x-bayer, width=1920, height=1080, format=rggb ! tiovxisp sensor-name=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/ dcc_viss.bin format-msb=7 sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a.bin sink_0::device=/dev/ v4l-subdev2 ! video/x-raw, format=NV12 ! tiovxmultiscaler target=0 name=split_11 split_11. ! queue ! video/x-raw, width=1110, height=690 ! tiovxmultiscaler target=0 ! video/xraw, width=300, height=300 ! tiovxdlpreproc data-type=3 channel-order=1 tensor-format=rgb outpool-size=4 ! application/x-tensor-tiovx ! tidlinferer target=1 model=/opt/model_zoo/TFL-OD-2000ssd-mobV1-coco-mlperf-300×300 ! post_1.tensor split_11. ! queue ! video/x-raw, width=640, height=360 ! post_1.sink tidlpostproc name=post_1 model=/opt/model_zoo/TFL-OD-2000-ssd-mobV1-coco-mlperf-300×300 alpha=0.400000 viz-threshold=0.600000 top-N=5 ! queue ! mosaic_0. v4l2src device=/dev/video4 io-mode=5 ! queue leaky=2 ! video/x-bayer, width=1920, height=1080, format=rggb ! tiovxisp sensor-name=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/ dcc_viss.bin format-msb=7 sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a.bin sink_0::device=/dev/ v4l-subdev2 ! video/x-raw, format=NV12 ! tiovxmultiscaler target=1 name=split_21 split_21. ! queue ! video/x-raw, width=1110, height=690 ! tiovxmultiscaler target=1 ! video/xraw, width=300, height=300 ! tiovxdlpreproc data-type=3 channel-order=1 tensor-format=rgb outpool-size=4 ! application/x-tensor-tiovx ! tidlinferer target=1 model=/opt/model_zoo/TFL-OD-2000ssd-mobV1-coco-mlperf-300×300 ! post_2.tensor split_21. ! คิว ! วิดีโอ/x-raw, ความกว้าง=640, ความสูง=360 ! post_2.sink tidlpostproc name=post_2 model=/opt/model_zoo/TFL-OD-2000-ssd-mobV1-coco-mlperf-300×300 alpha=0.400000 viz-threshold=0.600000 top-N=5 ! คิว ! mosaic_0.
14
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การออกแบบอ้างอิง
อุปกรณ์ v4l2src=/dev/video5 โหมด io=5 ! คิวรั่ว=2 ! วิดีโอ/x-bayer, ความกว้าง=1920, ความสูง=1080, รูปแบบ=rggb ! tiovxisp ชื่อเซ็นเซอร์=SENSOR_SONY_IMX219_RPI dcc-isp-file=/opt/imaging/imx219/ dcc_viss.bin format-msb=7 sink_0::dcc-2a-file=/opt/imaging/imx219/dcc_2a.bin sink_0::device=/dev/ v4l-subdev2 ! video/x-raw, format=NV12 ! tiovxmultiscaler target=1 name=split_31 split_31. ! queue ! video/x-raw, width=1110, height=690 ! tiovxmultiscaler target=1 ! video/xraw, width=300, height=300 ! tiovxdlpreproc data-type=3 channel-order=1 tensor-format=rgb outpool-size=4 ! application/x-tensor-tiovx ! tidlinferer target=1 model=/opt/model_zoo/TFL-OD-2000ssd-mobV1-coco-mlperf-300×300 ! post_3.tensor split_31. ! คิว ! วิดีโอ/x-raw, ความกว้าง=640, ความสูง=360 ! post_3.sink tidlpostproc name=post_3 model=/opt/model_zoo/TFL-OD-2000-ssd-mobV1-coco-mlperf-300×300 alpha=0.400000 viz-threshold=0.600000 top-N=5 ! คิว ! mosaic_0. tiovxmosaic src::pool-size=3 name=mosaic_0 sink_0::startx=”<320>” sink_0::starty=”<180>” sink_0::widths=”<640>” sink_0::heights=”<360>” sink_1::startx=”<960>” sink_1::starty=”<180>” sink_1::widths=”<640>” sink_1::heights=”<360>” sink_2::startx=”<320>” sink_2::starty=”<560>” sink_2::widths=”<640>” sink_2::heights=”<360>” sink_3::startx=”<960>” sink_3::starty=”<560>” sink_3::widths=”<640>” sink_3::heights=”<360>” ! video/x-raw,format=NV12, width=1920, height=1080 ! queue ! tiperfoverlay title=”AM62A: การตรวจจับวัตถุด้วยกล้องสี่ตัว” ! kmssink sync=false driver-name=tidss force-modesetting=true
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
15
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
การวิเคราะห์ประสิทธิภาพการทำงาน
www.ti.com
5 การวิเคราะห์ประสิทธิภาพ
การตั้งค่าด้วยกล้องสี่ตัวโดยใช้บอร์ด V3Link และ AM62A SK ได้รับการทดสอบในสถานการณ์การใช้งานต่างๆ รวมถึงการแสดงผลโดยตรงบนหน้าจอ การสตรีมผ่านอีเทอร์เน็ต (ช่อง UDP สี่ช่อง) และการบันทึกไปยัง 4 ช่องแยกกัน fileและด้วยการอนุมานการเรียนรู้เชิงลึก ในแต่ละการทดลอง เราตรวจสอบอัตราเฟรมและการใช้งานคอร์ CPU เพื่อสำรวจความสามารถของระบบทั้งหมด
ดังที่แสดงในรูปที่ 4-4 ก่อนหน้านี้ ไพพ์ไลน์การเรียนรู้เชิงลึกใช้ปลั๊กอิน tiperfoverlay GStreamer เพื่อแสดงภาระงานของแกนประมวลผล CPU เป็นกราฟแท่งที่ด้านล่างของหน้าจอ โดยค่าเริ่มต้น กราฟจะอัปเดตทุกสองวินาทีเพื่อแสดงภาระงานเป็นเปอร์เซ็นต์การใช้งานtage. นอกจากปลั๊กอิน tiperfoverlay GStreamer แล้ว เครื่องมือ perf_stats ยังเป็นตัวเลือกที่สองในการแสดงประสิทธิภาพของคอร์โดยตรงบนเทอร์มินัลพร้อมตัวเลือกสำหรับการบันทึกลงใน fileเครื่องมือนี้มีความแม่นยำมากกว่า tiperfoverlay เนื่องจาก tiperfoverlay เพิ่มภาระให้กับแกนประมวลผล Arm และ DDR ในการวาดกราฟและซ้อนทับบนหน้าจอ เครื่องมือ perf_stats ส่วนใหญ่ใช้เพื่อรวบรวมผลการใช้งานฮาร์ดแวร์ในทุกกรณีทดสอบที่แสดงในเอกสารนี้ แกนประมวลผลและตัวเร่งความเร็วที่สำคัญบางส่วนที่ศึกษาในการทดสอบเหล่านี้ประกอบด้วยโปรเซสเซอร์หลัก (แกนประมวลผล Arm A53 สี่แกนที่ความถี่ 1.25 GHz), ตัวเร่งความเร็วการเรียนรู้เชิงลึก (C7x-MMA ที่ความถี่ 850 MHz), VPAC (ISP) ที่มี VISS และมัลติสเกลเลอร์ (MSC0 และ MSC1) และการทำงานของ DDR
ตาราง 5-1 แสดงประสิทธิภาพและการใช้ทรัพยากรเมื่อใช้ AM62A กับกล้องสี่ตัวสำหรับสามกรณีการใช้งาน ได้แก่ การสตรีมกล้องสี่ตัวไปยังจอแสดงผล การสตรีมผ่านอีเทอร์เน็ต และการบันทึกไปยังกล้องแยกกันสี่ตัว files. มีการทดสอบสองแบบในแต่ละกรณีการใช้งาน ได้แก่ การทดสอบแบบใช้กล้องอย่างเดียวและแบบใช้การอนุมานการเรียนรู้เชิงลึก นอกจากนี้ แถวแรกในตาราง 5-1 แสดงการใช้งานฮาร์ดแวร์เมื่อระบบปฏิบัติการทำงานบน AM62A โดยไม่มีแอปพลิเคชันของผู้ใช้ใดๆ ข้อมูลนี้ใช้เป็นพื้นฐานในการเปรียบเทียบกับการประเมินการใช้งานฮาร์ดแวร์ของกรณีทดสอบอื่นๆ ดังแสดงในตาราง กล้องสี่ตัวที่มีการเรียนรู้เชิงลึกและการแสดงผลบนหน้าจอทำงานที่ 30 FPS ต่อตัว และมีเฟรมเรตรวม 120 FPS สำหรับกล้องทั้งสี่ตัว อัตราเฟรมที่สูงนี้ทำได้โดยใช้เพียง 86% ของประสิทธิภาพเต็มของตัวเร่งความเร็วการเรียนรู้เชิงลึก (C7x-MMA) นอกจากนี้ สิ่งสำคัญที่ต้องทราบคือตัวเร่งความเร็วการเรียนรู้เชิงลึกมีความเร็วสัญญาณนาฬิกาที่ 850MHz แทนที่จะเป็น 1000MHz ในการทดลองเหล่านี้ ซึ่งคิดเป็นประมาณ 85% ของประสิทธิภาพสูงสุด
16
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
การวิเคราะห์ประสิทธิภาพการทำงาน
ตาราง 5-1 ประสิทธิภาพ (FPS) และการใช้ทรัพยากรของ AM62A เมื่อใช้กับกล้อง IMX4 219 ตัวสำหรับการแสดงผลบนหน้าจอ สตรีมอีเธอร์เน็ต และการบันทึก Fileและการดำเนินการอนุมานการเรียนรู้เชิงลึก
ผลลัพธ์ของท่อส่งแอปพลิเคชัน
n
(การดำเนินการ
)
FPS เฉลี่ย FPS รวมไปป์ไลน์ s
MPU A53s ที่ความถี่ 1.25 GHz [%]
เอ็มซียู R5 [%]
DLA (C7xMMA) ที่ 850 MHz [%]
วิส [%]
MSC0 MSC1 DDR DDR DDR
[%] [%]Rd
Wr
ทั้งหมด
[เมกะไบต์/วินาที] [เมกะไบต์/วินาที] [เมกะไบต์/วินาที]ไม่มีแอพ
พื้นฐาน NA ไม่มีการดำเนินการ
NA
NA
1.87 1
0
0
0
0
560 19
579
สตรีมกล้องไปยังหน้าจอ 30
เท่านั้น
หน้าจอ
120 12
12
0
70
61
60
1015 757 1782
สตรีม UDP: 4 30
120 23
6
0
70
0
0
2071 1390 3461
เกิน
พอร์ต
อีเธอร์เน็ต 1920×1080
บันทึกถึง 4 files
30
120 25
3
0
70
0
0
2100 1403 3503
files
1920×1080
แคมกับดีพ
หน้าจอ 30
ลึก
การเรียนรู้:
วัตถุการเรียนรู้
การตรวจจับ
MobV1-
มะพร้าว
120 38
25
86
71
85
82
2926 1676 4602
การเรียนรู้เชิงลึก: การตรวจจับวัตถุ MobV1coco และสตรีมผ่านอีเทอร์เน็ต
UDP: 4 28 พอร์ต 1920×1080
112 84
20
99
66
65
72
4157 2563 6720
การเรียนรู้เชิงลึก: การตรวจจับวัตถุ MobV1coco และบันทึกเป็น files
4 files
28
1920×1080
112 87
22
98
75
82
61
2024 2458 6482
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
17
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
สรุป
www.ti.com
6 สรุป
รายงานแอปพลิเคชันนี้อธิบายวิธีการนำแอปพลิเคชันกล้องหลายตัวไปใช้งานบนอุปกรณ์ตระกูล AM6x รายงานนี้ได้นำเสนอการออกแบบอ้างอิงที่อ้างอิงจากชุดโซลูชันกล้อง V3Link ของ Arducam และ AM62A SK EVM โดยมีแอปพลิเคชันกล้องหลายตัวที่ใช้กล้อง IMX219 สี่ตัว เช่น การสตรีมและการตรวจจับวัตถุ ขอแนะนำให้ผู้ใช้ซื้อชุดโซลูชันกล้อง V3Link จาก Arducam และนำไปจำลองแบบเหล่านี้ampรายงานยังให้การวิเคราะห์โดยละเอียดเกี่ยวกับประสิทธิภาพของ AM62A ขณะใช้กล้องสี่ตัวภายใต้การกำหนดค่าต่างๆ รวมถึงการแสดงผลบนหน้าจอ การสตรีมผ่านอีเทอร์เน็ต และการบันทึกไปยัง files. นอกจากนี้ยังแสดงความสามารถของ AM62A ในการดำเนินการอนุมานการเรียนรู้เชิงลึกบนสตรีมกล้องสี่ตัวที่แยกจากกันแบบขนาน หากมีคำถามใดๆ เกี่ยวกับการรัน ex เหล่านี้ampโปรดส่งคำถามไปที่ฟอรั่ม TI E2E
18
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
www.ti.com
7 อ้างอิง
1. คู่มือเริ่มต้นใช้งานฉบับย่อสำหรับชุดเริ่มต้นใช้งาน AM62A Starter Kit EVM 2. คู่มือเริ่มต้นใช้งานฉบับย่อสำหรับโซลูชันกล้อง ArduCam V3Link 3. เอกสารประกอบ SDK ของ Edge AI สำหรับ AM62A 4. กล้องอัจฉริยะ Edge AI ที่ใช้โปรเซสเซอร์ AM62A ที่ประหยัดพลังงาน 5. ระบบกระจกกล้องบน AM62A 6. ระบบตรวจสอบผู้ขับขี่และการเข้าใช้งานบน AM62A 7. แอปพลิเคชันกล้อง Quad Channel สำหรับระบบเสียงรอบทิศทาง View และระบบกล้อง CMS 8. AM62Ax Linux Academy เกี่ยวกับการเปิดใช้งานเซ็นเซอร์ CIS-2 9. Edge AI ModelZoo 10. Edge AI Studio 11. เครื่องมือ Perf_stats
ชิ้นส่วน TI ที่อ้างอิงในหมายเหตุการใช้งานนี้: · https://www.ti.com/product/AM62A7 · https://www.ti.com/product/AM62A7-Q1 · https://www.ti.com/product/AM62A3 · https://www.ti.com/product/AM62A3-Q1 · https://www.ti.com/product/AM62P · https://www.ti.com/product/AM62P-Q1 · https://www.ti.com/product/DS90UB960-Q1 · https://www.ti.com/product/DS90UB953-Q1 · https://www.ti.com/product/TDES960 · https://www.ti.com/product/TSER953
อ้างอิง
SPRADH2 กุมภาพันธ์ 2024 ส่งเอกสาร คำติชม
การพัฒนาแอปพลิเคชันกล้องหลายตัวบน AM6x
19
ลิขสิทธิ์ © 2024 Texas Instruments Incorporated
ประกาศสำคัญและการปฏิเสธความรับผิดชอบ
TI ให้ข้อมูลทางเทคนิคและความน่าเชื่อถือ (รวมถึงเอกสารข้อมูล) ทรัพยากรการออกแบบ (รวมถึงการออกแบบอ้างอิง) แอปพลิเคชันหรือคำแนะนำการออกแบบอื่น ๆ WEB เครื่องมือ ข้อมูลความปลอดภัย และทรัพยากรอื่นๆ “ตามที่เป็น” และกับความผิดพลาดทั้งหมด และขอปฏิเสธการรับประกันทั้งหมด ทั้งโดยชัดแจ้งและโดยนัย ซึ่งรวมถึงแต่ไม่จำกัดเพียงการรับประกันโดยนัยของความสามารถในการขายได้ ความเหมาะสมสำหรับเงื่อนไขเฉพาะของฝ่ายใดฝ่ายหนึ่ง .
ทรัพยากรเหล่านี้มีไว้สำหรับนักพัฒนาที่มีทักษะในการออกแบบผลิตภัณฑ์ TI คุณมีหน้าที่รับผิดชอบแต่เพียงผู้เดียวในการ (1) การเลือกผลิตภัณฑ์ TI ที่เหมาะสมสำหรับแอปพลิเคชันของคุณ (2) การออกแบบ ตรวจสอบ และทดสอบแอปพลิเคชันของคุณ และ (3) ตรวจสอบให้แน่ใจว่าแอปพลิเคชันของคุณตรงตามมาตรฐานที่บังคับใช้ และความปลอดภัย ความมั่นคง ข้อบังคับ หรือข้อกำหนดอื่นๆ .
ทรัพยากรเหล่านี้อาจเปลี่ยนแปลงได้โดยไม่ต้องแจ้งให้ทราบล่วงหน้า TI อนุญาตให้คุณใช้ทรัพยากรเหล่านี้สำหรับการพัฒนาแอปพลิเคชันที่ใช้ผลิตภัณฑ์ TI ที่อธิบายไว้ในทรัพยากรเท่านั้น ห้ามทำซ้ำและแสดงทรัพยากรเหล่านี้ในลักษณะอื่น ไม่มีการอนุญาตสำหรับสิทธิ์ในทรัพย์สินทางปัญญาอื่นใดของ TI หรือสิทธิ์ในทรัพย์สินทางปัญญาของบุคคลที่สาม TI ปฏิเสธความรับผิดชอบและคุณจะชดใช้ค่าเสียหายให้กับ TI และตัวแทนอย่างเต็มที่ต่อการเรียกร้อง ความเสียหาย ค่าใช้จ่าย ความสูญเสีย และความรับผิดใดๆ ที่เกิดขึ้นจากการใช้ทรัพยากรเหล่านี้ของคุณ
ผลิตภัณฑ์ของ TI อยู่ภายใต้เงื่อนไขการขายของ TI หรือข้อกำหนดอื่นๆ ที่เกี่ยวข้องซึ่งมีอยู่ใน ti.com หรือจัดให้ร่วมกับผลิตภัณฑ์ TI ดังกล่าว การจัดหาทรัพยากรเหล่านี้ของ TI จะไม่ขยายหรือเปลี่ยนแปลงการรับประกันที่เกี่ยวข้องของ TI หรือการปฏิเสธการรับประกันสำหรับผลิตภัณฑ์ TI
TI คัดค้านและปฏิเสธข้อกำหนดเพิ่มเติมหรือแตกต่างใดๆ ที่คุณอาจเสนอ ประกาศสำคัญ
ที่อยู่ทางไปรษณีย์: Texas Instruments, ตู้ไปรษณีย์ 655303, Dallas, Texas 75265 ลิขสิทธิ์ © 2024, Texas Instruments Incorporated
เอกสาร / แหล่งข้อมูล
![]() |
Texas Instruments AM6x กำลังพัฒนากล้องหลายตัว [พีดีเอฟ] คู่มือการใช้งาน AM62A, AM62P, AM6x พัฒนากล้องหลายตัว, AM6x, พัฒนากล้องหลายตัว, กล้องหลายตัว, กล้อง |