ขั้นตอนใดบ้างที่จำเป็นในการโยกย้ายอัลกอริธึม Assembly Vision ไปยัง Ascend NPU-การประมวลผลภาพด้วย Huawei Ascend Atlas-Winge Technology | การพัฒนาซอฟต์แวร์ AI และฮาร์ดแวร์

หัวข้อการแก้ปัญหา

ขั้นตอนใดบ้างที่จำเป็นในการโยกย้ายอัลกอริธึม Assembly Vision ไปยัง Ascend NPU

ขั้นตอนการทำงานทางวิศวกรรมสำหรับการย้ายอัลกอริธึมการมองเห็นแอสเซมบลีไปยัง Ascend NPU ซึ่งรวมถึงการควบคุมพื้นฐาน การส่งออก 00000 การตรวจสอบความเข้ากันได้ของผู้ปฏิบัติงานโมเดล การแปลง ATC การปรับใช้ OM การบูรณาการ AscendCL การตรวจสอบความสอดคล้อง และการปรับใช้เวอร์ชัน

2026-08-30Winge Technologyการประมวลผลภาพด้วย Huawei Ascend Atlas

การย้ายอัลกอริธึมการมองเห็นแอสเซมบลีไปยัง Ascend NPU ไม่ได้หมายถึงการคัดลอกไฟล์โมเดลดั้งเดิมไปยังอุปกรณ์ Atlas แต่เป็นการปรับแต่งระบบของรูปแบบโมเดล ตัวดำเนินการ อินพุตและเอาท์พุต อินเทอร์เฟซรันไทม์ และเกณฑ์การยอมรับให้เสร็จสิ้น วิธีทั่วไปคือ: แก้ไขพื้นฐานโมเดลดั้งเดิม, ส่งออก ONNX, ตรวจสอบโครงสร้างกราฟและตัวดำเนินการ, ใช้ ATC เพื่อสร้างโมเดล OM สำหรับโปรเซสเซอร์เป้าหมาย Ascend, เข้าถึงการอนุมานผ่าน AscendCL จากนั้นทำการตรวจสอบความสอดคล้องก่อนและหลังการประมวลผล ผลลัพธ์การตรวจจับ ประสิทธิภาพการทำงาน และการนำเวอร์ชันไปใช้

ซอฟต์แวร์ตรวจสอบด้วยภาพและแอปพลิเคชันอัลกอริทึมสำหรับการประกอบของ Winge Technology ทำงานบน Huawei Ascend Atlas 200I DK A2 แล้ว สำหรับโปรเจ็กต์ที่ใช้โมเดลการจำแนกประเภท การตรวจจับวัตถุ หรือการแบ่งส่วน คุณสามารถเพิ่มลิงก์การอนุมานโมเดล Ascend NPU ตามการเข้าถึงกล้องที่มีอยู่ การกำหนดค่า ROI การบันทึกผลลัพธ์ และการปรับใช้ในพื้นที่

รายการใดบ้างที่ต้องแก้ไขก่อนการย้ายข้อมูล

ก่อนที่จะเริ่มการย้ายข้อมูล ควรรวบรวมแพ็คเกจพื้นฐานที่สามารถทำซ้ำได้ซึ่งมีอย่างน้อยดังต่อไปนี้:

  • กรอบการฝึกอบรมดั้งเดิม โครงสร้างแบบจำลอง น้ำหนัก และสคริปต์การส่งออก
  • ชื่ออินพุต ขนาดอินพุต ประเภทข้อมูล และข้อกำหนดมิติไดนามิกสำหรับโมเดล ONNX
  • วิธีการจัดลำดับ การปรับขนาด การครอบตัด การทำให้เป็นมาตรฐาน และการเทนเซอร์สีของรูปภาพ
  • ป้ายการจำแนกประเภท การถอดรหัสเฟรมการรู้จำ เกณฑ์ความเชื่อมั่น NMS หรือกฎการประมวลผลหลังการแบ่งส่วน
  • ชุดตัวอย่าง OK, NG และขีดจำกัดคงที่และผลลัพธ์ที่คาดหวัง
  • อุปกรณ์ Target Atlas, รุ่นโปรเซสเซอร์ Ascend, ระบบปฏิบัติการ, CANN และเวอร์ชันแพ็คเกจของผู้ปฏิบัติงาน;
  • ตัวบ่งชี้การยอมรับโครงการ เช่น ความถูกต้อง ผลบวกลวง ผลบวกลวง การใช้เวลาเฉพาะ ปริมาณงาน และการจัดเก็บ

หากอินพุตเหล่านี้ไม่ได้รับการแก้ไข แม้ว่าการแปลงโมเดลจะสำเร็จ ก็ไม่สามารถระบุได้ว่าความแตกต่างก่อนและหลังการโยกย้ายนั้นเนื่องมาจากโมเดล การประมวลผลล่วงหน้า การประมวลผลภายหลัง หรือสภาพแวดล้อมการกำหนดเวอร์ชัน

ขั้นตอนที่ 1: สร้างพื้นฐานของผลลัพธ์ของโมเดลดั้งเดิม

ใช้ชุดภาพการยอมรับชุดเดียวกันเพื่อเรียกใช้โมเดลดั้งเดิมและจัดเก็บเทนเซอร์อินพุต ผลลัพธ์ดั้งเดิม ผลลัพธ์หลังการประมวลผล และการตัดสินใจทางธุรกิจขั้นสุดท้าย โครงการตรวจจับวัตถุควรบันทึกกรอบการตรวจจับ หมวดหมู่ ความเชื่อมั่น และผลลัพธ์ NMS โครงการการแบ่งส่วนควรจัดเก็บขนาดมาสก์ การแมปหมวดหมู่ และผลลัพธ์ของเส้นขอบ

บทบาทของข้อมูลพื้นฐานไม่ใช่การให้อัตราความแม่นยำที่สม่ำเสมอ แต่เป็นการให้ตัวอย่างพื้นฐานในการเปรียบเทียบสำหรับผลลัพธ์ ONNX และ OM ที่ตามมา ตัวชี้วัดโครงการควรพิจารณาจากตัวอย่างลูกค้า คำจำกัดความของข้อบกพร่อง และสภาพสถานที่ทำงาน

ขั้นตอนที่ 2: ส่งออกและตรวจสอบโมเดล ONNX

หลังจากเอ็กซ์พอร์ต ONNX จากเฟรมเวิร์กการฝึก คุณต้องตรวจสอบสิ่งต่อไปนี้:

  1. ชื่อโหนดอินพุตและเอาต์พุตเสถียรหรือไม่
  2. ไม่ว่าขนาดอินพุตจะเป็นขนาดคงที่หรือขนาดไดนามิก
  3. เวอร์ชันของตัวดำเนินการและโครงสร้างกราฟสอดคล้องกับสภาพแวดล้อมการแปลงเป้าหมายหรือไม่
  4. ไม่ว่าจะรวมโหนดที่ใช้ระหว่างระยะการฝึกเท่านั้น
  5. ไม่ว่าผลลัพธ์การรัน ONNX และผลลัพธ์ของโมเดลดั้งเดิมจะอยู่ภายในช่วงข้อผิดพลาดที่ตกลงกันไว้หรือไม่

ในขั้นตอนนี้ คุณควรแก้ไขปัญหาการส่งออกโมเดลก่อน จากนั้นจึงทำการแปลงในด้าน Ascend เพื่อหลีกเลี่ยงความแตกต่างในโมเดลต้นทางที่จะถูกถ่ายโอนไปยังฝั่งอุปกรณ์

ขั้นตอนที่ 3: ตรวจสอบความเข้ากันได้ของผู้ปฏิบัติงานและโครงสร้างแผนภูมิ

ก่อนการแปลง ATC ควรตรวจสอบตัวดำเนินการ คุณลักษณะ ประเภทข้อมูล และข้อจำกัดของรูปร่างที่แบบจำลองใช้ หากมีตัวดำเนินการหรือชุดค่าผสมที่ไม่รองรับ คุณสามารถเลือกระหว่างการเขียนกราฟใหม่ การแทนที่ตัวดำเนินการที่เทียบเท่า การแยกและการประมวลผลภายหลัง หรือตัวดำเนินการแบบกำหนดเองตามโครงสร้างของโมเดล คุณไม่ควรใช้ "การดำเนินการคำสั่งการแปลงเสร็จสมบูรณ์" เป็นเกณฑ์สำหรับการปรับแต่งให้เสร็จสิ้นเท่านั้น

สำหรับสแต็กไดนามิก ขนาดรูปภาพไดนามิก หรือขนาดไดนามิก จำเป็นต้องกำหนดค่าเกียร์ที่เกี่ยวข้องตามอินพุตเวิร์กสเตชันจริง สถานีประกอบที่มีกล้องคงที่และขนาดการจับคงที่โดยทั่วไปสามารถใช้รูปร่างคงที่ในขั้นต้นเพื่อลดการแตกแขนงรันไทม์และทำให้การยอมรับง่ายขึ้น

ขั้นตอนที่ 4: ใช้ ATC เพื่อสร้างโมเดล OM

เอกสาร Ascend อย่างเป็นทางการของ Huawei ระบุว่า ATC ใช้ในการแปลงโมเดลเฟรมเวิร์กโอเพ่นซอร์ส เช่น ONNX ไปเป็นโมเดลออฟไลน์ OM ที่โปรเซสเซอร์ Ascend AI สามารถรับรู้ได้ โครงสร้างคำสั่งทั่วไปมีดังนี้:

“ทุบตี

atc --model=model.onnx

--เฟรมเวิร์ค=5

--output=model_atlas

--input_shape="ภาพ:1,3,H,W"

--soc_version=<เป้าหมายโมเดลตัวประมวลผล Ascend>

พารามิเตอร์จริงจะต้องตรงกับอินพุตของโมเดล ตัวประมวลผลเป้าหมาย และสภาพแวดล้อมของโปรเจ็กต์ ในระหว่างการแปลง ควรบันทึกคำสั่ง ATC SHA-256 เวอร์ชันสภาพแวดล้อม บันทึกการแปลง รายงานการตรวจสอบ และไฟล์ที่สร้างขึ้นเพื่อติดตามและทำซ้ำกระบวนการสร้างแบบจำลอง OM

ขั้นตอนที่ 5: เชื่อมต่อกับลิงก์การอนุมาน AscendCL

หลังจากสร้างโมเดล OM แล้ว แอปพลิเคชันฝั่งอุปกรณ์จำเป็นต้องดำเนินการเริ่มต้นทรัพยากร การเลือกอุปกรณ์ การโหลดโมเดล การจัดการหน่วยความจำอินพุตและเอาท์พุต การดำเนินการโมเดล การอ่านผลลัพธ์ และการปล่อยทรัพยากร เส้นทางข้อมูลที่สมบูรณ์สำหรับระบบวิชันซิสเต็มแอสเซมบลีโดยทั่วไปคือ:

กล้องอุตสาหกรรมหรือไฟล์ภาพ

-> ถอดรหัส ครอบตัด และตรวจสอบคุณภาพของภาพ

-> การปรับขนาด การแปลงสี การทำให้เป็นมาตรฐาน และการจัดเรียงเทนเซอร์

-> การให้เหตุผลแบบจำลอง OM

-> ถอดรหัสการจำแนกประเภท กรอบการตรวจจับ หรือผลการแบ่งส่วน

-> ROI พร้อมกฎเกณฑ์การประกอบธุรกิจ

-> ผ่าน / FAIL / ไม่ทราบ

-> แผนภูมิหลักฐาน บันทึกผลลัพธ์ และอินเทอร์เฟซเวิร์กสเตชัน

อินเทอร์เฟซการอนุมานมีหน้าที่รับผิดชอบในการคำนวณแบบจำลองเท่านั้น และการกำหนดเวิร์กสเตชันขั้นสุดท้ายยังจัดการการขจัดความซ้ำซ้อนของทริกเกอร์ คุณภาพของภาพ การพิสูจน์ผลลัพธ์ สถานะที่ผิดปกติ อินเทอร์เฟซ PLC หรือ I/O และการติดตามข้อมูล

ขั้นตอนที่ 6: ตรวจสอบความสอดคล้องของก่อนและหลังการประมวลผล

ความแตกต่างทั่วไปในโครงการการย้ายข้อมูลไม่จำเป็นต้องเกิดจากตัวโมเดลเองเสมอไป ลำดับสี วิธีการประมาณค่า ค่าสัมประสิทธิ์การทำให้เป็นมาตรฐาน วิธีการหาปริมาณ เค้าโครงเทนเซอร์ การปรับขนาดพิกัด และพารามิเตอร์ NMS สามารถเปลี่ยนเอาต์พุตได้

ขอแนะนำให้เปรียบเทียบในระดับต่อไปนี้:

- เลเยอร์อินพุต: เปรียบเทียบเทนเซอร์อินพุตกับรุ่นดั้งเดิมและรุ่น OM - เลเยอร์เอาต์พุต: เปรียบเทียบรูปร่าง ช่วงของค่า และลำดับโหนดของเอาต์พุตดั้งเดิมของโมเดล - ระดับอัลกอริทึม: เปรียบเทียบหมวดหมู่ ช่องการตรวจจับ มาสก์ และความมั่นใจ - ชั้นธุรกิจ: เปรียบเทียบผลลัพธ์ PASS, FAIL หรือ UNKNOWN ของแต่ละตัวอย่าง - ระดับหลักฐาน: เปรียบเทียบตำแหน่งของข้อบกพร่อง แผนที่คำอธิบายประกอบ และบันทึกผลลัพธ์ เพื่อพิจารณาว่าสิ่งเหล่านั้นสอดคล้องกับชิ้นงานเดียวกันหรือไม่

การระบุความแตกต่างทีละชั้นเท่านั้นที่ทำให้เราตัดสินได้ว่าจำเป็นต้องปรับเปลี่ยนการแปลงโมเดล การประมวลผลข้อมูล หรือกฎเกณฑ์ทางธุรกิจหรือไม่

ขั้นตอนที่ 7: ตรวจสอบประสิทธิภาพและความเสถียรของอุปกรณ์ให้เสร็จสิ้น

การทดสอบประสิทธิภาพควรทำบนอุปกรณ์เป้าหมาย Atlas ขนาดภาพที่เป็นทางการ และการเชื่อมต่อการประมวลผลจริง โดยแยกความแตกต่างระหว่าง:

- เวลาจับภาพหรือถอดรหัส - เวลาก่อนการประมวลผล - เวลาอนุมานสำหรับรุ่นเดียว - เวลาสำหรับการประมวลผลภายหลังและกฎเกณฑ์ทางธุรกิจ - เวลาในการเขียนภาพหลักฐานและไฟล์ผลลัพธ์ - เวลาตอบสนองเวิร์กสเตชันแบบ end-to-end

ผลการทดสอบควรบันทึกเวอร์ชันของโมเดล, แฮชของไฟล์ OM, เวอร์ชัน CANN, รุ่นโปรเซสเซอร์, ขนาดอินพุต, แบทช์, โหมดความแม่นยำ, จำนวนการอุ่นเครื่อง และจำนวนตัวอย่าง ความแม่นยำ ระยะเวลาของวงจรการผลิต และความเสถียรในระยะยาวได้รับการยืนยันโดยการตรวจสอบอิสระของโครงการเฉพาะและสภาพการทำงานที่ต่อเนื่อง

ขั้นตอนที่ 8: สร้างการจัดส่งเวอร์ชันแบบม้วนได้

การส่งมอบอย่างเป็นทางการควรมีอย่างน้อยดังต่อไปนี้:

- โมเดลต้นฉบับหรือไฟล์ต้นฉบับของโมเดลอยู่ในขอบเขตที่ตกลงกันไว้ - ONNX รุ่นและคำแนะนำในการส่งออก - โมเดล OM, คำสั่ง ATC, โปรโตคอลการแปลงและตรวจสอบค่า - โค้ดก่อนการประมวลผล การอนุมาน หลังการประมวลผล และโค้ดอินเทอร์เฟซทางธุรกิจ - ระบบปฏิบัติการ, CANN, แพ็คเกจโอเปอเรเตอร์ และรายการเวอร์ชันที่ต้องพึ่งพา - ตัวอย่างผลการตรวจสอบ บันทึกความแตกต่าง และรายงานผลการทดสอบประสิทธิภาพ - การกำหนดค่า การเริ่มต้นบริการ การบันทึก การอัพเกรด การสำรองข้อมูล และคำแนะนำในการย้อนกลับ

Winge Technology สามารถทำงานการย้ายโมเดลร่วมกับกล้อง เลนส์ ROI

ประเด็นใดมีแนวโน้มที่จะส่งผลกระทบต่อผลลัพธ์ของการย้ายถิ่นมากที่สุด

| คำถาม | อาการทั่วไป | ทิศทางการประมวลผล | |---|---|---| | คำจำกัดความอินพุตไม่สอดคล้องกัน | การเปลี่ยนแปลงทั่วไปของผลลัพธ์หรือระดับความเชื่อมั่นที่ผิดปกติ | แก้ไขสี ขนาด การทำให้เป็นมาตรฐาน และเค้าโครงเทนเซอร์แล้ว | ตัวดำเนินการหรือแบบฟอร์มเข้ากันไม่ได้ | การแปลง ATC ล้มเหลวหรือการเปลี่ยนแปลงโครงสร้างเอาต์พุต | เขียนกราฟใหม่ แทนที่ตัวดำเนินการ เฟืองไดนามิก หรือตัวดำเนินการแบบกำหนดเอง | | หลังการประมวลผลไม่สอดคล้องกัน | จำนวน ตำแหน่ง หรือหมวดหมู่ของเฟรมการจดจำต่างกัน | การถอดรหัสแบบครบวงจร การกำหนดขีดจำกัด NMS และการกู้คืนพิกัด | การรวมเวอร์ชันไม่ได้รับการแก้ไข | รุ่นเดียวกันมีพฤติกรรมแตกต่างกันในสภาพแวดล้อมที่แตกต่างกัน | ระบบคงที่, CANN, แพ็คเกจผู้ปฏิบัติงาน และบันทึกการก่อสร้าง OM | | แค่การทดสอบโมเดลต้องใช้เวลา | จังหวะสดยังไม่ตรงตามข้อกำหนด | การเชื่อมโยงที่สมบูรณ์ตั้งแต่การวัดค่าไปจนถึงเอาต์พุตผลลัพธ์ | | ไม่มีการรวบรวมการตรวจสอบอิสระ | ไม่มีวิธีใดในการพิจารณาว่าการย้ายข้อมูลจะรักษาผลลัพธ์ทางธุรกิจหรือไม่ | ใช้ OK, NG และจำกัดตัวอย่างที่ไม่เกี่ยวข้องกับการเพิ่มประสิทธิภาพพารามิเตอร์ |

คำถามที่พบบ่อย

### รุ่น ONNX สามารถรันโดยตรงบน Ascend NPU ได้หรือไม่

โดยทั่วไป จำเป็นต้องใช้ ATC เพื่อแปลงโมเดล ONNX เป็นโมเดล OM ออฟไลน์โดยยึดตามโปรเซสเซอร์ Ascend เป้าหมายและสภาพแวดล้อม CANN จากนั้นโหลดและดำเนินการผ่านอินเทอร์เฟซฝั่งอุปกรณ์ เช่น AscendCL

### การแปลงเพื่อสร้างไฟล์ OM หมายความว่าการย้ายข้อมูลเสร็จสมบูรณ์หรือไม่

ไม่ทันที. นอกจากนี้ ยังจำเป็นต้องดำเนินการเชื่อมต่ออินพุตและเอาต์พุตให้เสร็จสมบูรณ์ ความสอดคล้องก่อนและหลังการประมวลผล การเปรียบเทียบผลลัพธ์แบบสุ่ม การทดสอบประสิทธิภาพฝั่งอุปกรณ์ การจัดการข้อยกเว้น และการตรวจสอบการส่งมอบเวอร์ชัน

### กฎการมองเห็นแบบเดิมทั้งหมดจำเป็นต้องแปลงเป็นโครงข่ายประสาทเทียมหรือไม่

ไม่จำเป็น. กฎ ROI ที่มีตำแหน่งคงที่และขอบเขตที่ชัดเจนยังคงสามารถรักษาไว้ได้ โมเดลการจำแนกประเภท การตรวจจับวัตถุ หรือการแบ่งส่วนใช้เพื่อจัดการกับการเปลี่ยนแปลงหมวดหมู่ พื้นหลังที่ซับซ้อน และงานการจดจำความหมาย และทั้งสองอย่างสามารถรวมกันได้ในแอปพลิเคชัน Atlas เดียวกัน

### สามารถใช้ OM รุ่นเดียวกันโดยตรงกับอุปกรณ์ Atlas ทั้งหมดได้หรือไม่

พารามิเตอร์การแปลงของโมเดล OM เกี่ยวข้องกับโปรเซสเซอร์เป้าหมาย Ascend และสภาพแวดล้อมของซอฟต์แวร์ เมื่อดำเนินโครงการ ควรยืนยันรุ่นโปรเซสเซอร์, CANN และเวอร์ชันแพ็คเกจของผู้ปฏิบัติงานตามอุปกรณ์เป้าหมาย และควรเก็บบันทึกการสร้างที่เกี่ยวข้องไว้

### จะประเมินได้อย่างไรว่าผลลัพธ์ก่อนและหลังการย้ายข้อมูลมีความสอดคล้องกันหรือไม่

การสุ่มตัวอย่างแบบคงที่ควรใช้เพื่อเปรียบเทียบเทนเซอร์อินพุต ผลลัพธ์ดั้งเดิมของแบบจำลอง ผลลัพธ์ของอัลกอริทึม และการตัดสินทางธุรกิจขั้นสุดท้ายทีละชั้น การยอมรับควรขึ้นอยู่กับข้อผิดพลาด ความถูกต้อง และกฎของเวิร์กสเตชันที่ได้รับการยืนยันจากทั้งสองฝ่าย คุณไม่สามารถเปรียบเทียบภาพสาธิตจำนวนเล็กน้อยได้

แหล่งที่มาอย่างเป็นทางการ

- Huawei Ascend: รุ่น ONNX เปลี่ยนเป็นรุ่น OM https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/81RC1beta1/quickstart/quickstart/quickstart_18_0010.html - Huawei Ascend: พารามิเตอร์บรรทัดคำสั่ง ATC และข้อจำกัดของผู้ปฏิบัติงาน https://www.hiascend.com/document/detail/th/canncommercial/850/devaids/atctool/atlasatc_16_0039.html - Huawei Ascend: การสร้างโมเดล AscendCL และการพัฒนาแอปพลิเคชัน https://www.hiascend.com/document/detail/zh/canncommercial/850/appdevg/acldevg/aclcppdevg_000027.html

Atlas, Ascend, CANN, AscendCL และชื่อที่เกี่ยวข้องเป็นของผู้ถือลิขสิทธิ์ บทความนี้จะอธิบายวิธีการปรับแต่งสำหรับโครงการ Assembly Vision ที่จัดทำโดย Winge Technology ไม่ได้หมายความว่าผู้ถือสิทธิ์ที่เกี่ยวข้องมีส่วนร่วมหรือสนับสนุนโครงการเฉพาะ ความสามารถของอุปกรณ์และเครื่องมือขึ้นอยู่กับเอกสารเผยแพร่อย่างเป็นทางการที่เกี่ยวข้อง และผลลัพธ์ของโครงการขึ้นอยู่กับแบบจำลอง ตัวอย่าง อุปกรณ์ และเงื่อนไขการยอมรับจริง

ออนไลน์
โทรศัพท์
13910119357
WeChat
WhatsApp
Winge Technology WhatsApp รหัส QR สแกน QR Code หรือคลิกเพื่อติดต่อ
กลับไปด้านบน