Memigrasikan algoritme visi perakitan ke Ascend NPU tidak berarti menyalin file model asli ke perangkat Atlas, tetapi menyelesaikan adaptasi sistem dari format model, operator, input dan output, antarmuka runtime, dan kriteria penerimaan. Jalur umumnya adalah: memperbaiki garis dasar model asli, mengekspor ONNX, memeriksa struktur grafik dan operator, menggunakan ATC untuk menghasilkan model OM untuk prosesor Ascend target, mengakses inferensi melalui AscendCL, dan kemudian menyelesaikan verifikasi konsistensi sebelum dan sesudah pemrosesan, hasil deteksi, kinerja berjalan, dan pengiriman versi.
Perangkat lunak inspeksi visual perakitan Winge Technology dan aplikasi algoritma sudah berjalan pada Huawei Ascend Atlas 200I DK A2. Untuk proyek yang menggunakan model klasifikasi, deteksi objek, atau segmentasi, tautan inferensi model Ascend NPU dapat ditambahkan berdasarkan akses kamera yang ada, konfigurasi ROI, perekaman hasil, dan penerapan lokal.
Masukan apa yang perlu diperbaiki sebelum migrasi?
Sebelum memulai migrasi, harus dibentuk paket dasar yang dapat direproduksi, yang setidaknya mencakup:
- Kerangka pelatihan asli, struktur model, bobot dan skrip ekspor;
- Nama masukan, ukuran masukan, tipe data, dan persyaratan dimensi dinamis untuk model ONNX;
- Metode pemesanan warna gambar, penskalaan, pemotongan, normalisasi dan pengaturan tensor;
- Label klasifikasi, decoding bingkai deteksi, ambang batas kepercayaan, NMS atau aturan pemrosesan pasca-segmentasi;
- Satu set sampel OK, NG dan batas tetap serta hasil yang diharapkan;
- Perangkat Target Atlas, model prosesor Ascend, sistem operasi, CANN dan versi paket operator;
- Indikator penerimaan proyek seperti akurasi, deteksi yang terlewat, alarm palsu, konsumsi waktu tunggal, throughput, dan memori.
Jika masukan ini tidak tetap, meskipun konversi model berhasil, tidak mungkin menentukan apakah perbedaan sebelum dan sesudah migrasi berasal dari lingkungan model, pra-pemrosesan, pasca-pemrosesan, atau versi.
Langkah 1: Tetapkan garis dasar hasil model asli
Gunakan kumpulan gambar penerimaan yang sama untuk menjalankan model asli dan menyimpan tensor masukan, keluaran asli, hasil pascapemrosesan, dan keputusan bisnis akhir. Proyek deteksi objek juga harus menyimpan bingkai deteksi, kategori, kepercayaan, dan hasil NMS; proyek segmentasi harus menyimpan ukuran topeng, pemetaan kategori, dan hasil kontur.
Peran garis dasar bukan untuk memberikan tingkat akurasi terpadu, namun untuk memberikan dasar perbandingan sampel demi sampel untuk hasil ONNX dan OM berikutnya. Indikator proyek harus ditentukan berdasarkan sampel pelanggan, definisi cacat, dan kondisi tempat kerja.
Langkah 2: Ekspor dan periksa model ONNX
Setelah mengekspor ONNX dari kerangka pelatihan, Anda perlu memeriksa:
- Apakah nama node input dan output stabil?
- Apakah ukuran masukan adalah ukuran tetap atau ukuran dinamis;
- Apakah versi operator dan struktur grafik sesuai dengan lingkungan konversi target;
- Apakah akan menyertakan node yang hanya digunakan selama fase pelatihan;
- Apakah hasil pengoperasian ONNX dan hasil model asli berada dalam rentang kesalahan yang disepakati.
Pada langkah ini, pertama-tama Anda harus menyelesaikan masalah ekspor model itu sendiri, lalu memasukkan konversi sisi Ascend untuk menghindari perbedaan model sumber ke sisi perangkat.
Langkah 3: Periksa kompatibilitas operator dan struktur grafik
Sebelum konversi ATC, operator, atribut, tipe data, dan batasan bentuk yang digunakan oleh model harus diperiksa. Jika ada operator atau kombinasi yang tidak didukung, Anda dapat memilih penulisan ulang grafik, penggantian operator yang setara, pemisahan dan pasca-pemrosesan, atau operator yang disesuaikan berdasarkan struktur model. Anda tidak boleh hanya menggunakan "eksekusi perintah konversi selesai" sebagai kriteria penyelesaian adaptasi.
Untuk batch dinamis, ukuran gambar dinamis, atau dimensi dinamis, roda gigi yang sesuai perlu dikonfigurasikan sesuai dengan input stasiun kerja sebenarnya. Stasiun perakitan dengan kamera tetap dan dimensi deteksi tetap biasanya dapat menggunakan bentuk tetap terlebih dahulu untuk mengurangi cabang runtime dan memfasilitasi penerimaan.
Langkah 4: Gunakan ATC untuk menghasilkan model OM
Dokumentasi resmi Ascend Huawei menyatakan bahwa ATC digunakan untuk mengubah model kerangka sumber terbuka seperti ONNX menjadi model offline OM yang dapat dikenali oleh prosesor Ascend AI. Struktur perintah yang khas adalah sebagai berikut:
atc --model=model.onnx
--kerangka=5
--keluaran=model_atlas
--input_shape="gambar:1,3,T,W"
--soc_version=<target model prosesor Ascend>
Parameter sebenarnya harus konsisten dengan masukan model, pemroses target, dan lingkungan proyek. Selama konversi, SHA-256 dari perintah ATC, versi lingkungan, log konversi, laporan inspeksi, dan file yang dihasilkan harus disimpan untuk melacak dan mereproduksi proses pembuatan model OM.
Langkah 5: Hubungkan ke tautan inferensi AscendCL
Setelah model OM dibuat, inisialisasi sumber daya, pemilihan perangkat, pemuatan model, manajemen memori input dan output, eksekusi model, pembacaan hasil, dan pelepasan sumber daya perlu diselesaikan di aplikasi sisi perangkat. Jalur data lengkap untuk sistem visi perakitan biasanya:
Kamera industri atau file gambar
-> Decoding, cropping dan pemeriksaan kualitas gambar
-> mengubah ukuran, konversi warna, normalisasi dan pengaturan tensor
-> Penalaran model OM
-> Klasifikasi, bingkai deteksi atau decoding hasil segmentasi
-> ROI dengan aturan bisnis perakitan
-> PASS / FAIL / UNKNOWN
-> Diagram bukti, catatan hasil dan antarmuka stasiun kerja
Antarmuka inferensi hanya bertanggung jawab untuk penghitungan model, dan penentuan stasiun kerja akhir juga menangani deduplikasi pemicu, kualitas gambar, bukti hasil, status abnormal, antarmuka PLC atau I/O, dan penelusuran data.
Langkah 6: Verifikasi konsistensi pra-pemrosesan dan pasca-pemrosesan
Perbedaan umum dalam proyek migrasi tidak selalu berasal dari modelnya sendiri. Urutan warna, metode interpolasi, koefisien normalisasi, metode kuantisasi, tata letak tensor, penskalaan koordinat, dan parameter NMS dapat mengubah keluaran.
Disarankan untuk membandingkan berdasarkan level berikut:
- Lapisan masukan: bandingkan tensor yang masuk model asli dan model OM;
- Lapisan keluaran: membandingkan bentuk, rentang nilai, dan urutan simpul dari keluaran asli model;
- Lapisan algoritma: membandingkan kategori, kotak deteksi, masker dan kepercayaan;
- Lapisan bisnis: Bandingkan hasil PASS, FAIL atau UNKNOWN dari setiap sampel;
- Lapisan bukti: Bandingkan lokasi cacat, peta anotasi, dan catatan hasil untuk melihat apakah semuanya sesuai dengan benda kerja yang sama.
Hanya dengan menemukan perbedaannya lapis demi lapis kita dapat menilai apakah konversi model, pemrosesan data, atau aturan bisnis perlu disesuaikan.
Langkah 7: Selesaikan verifikasi kinerja dan stabilitas perangkat
Pengujian kinerja harus dilakukan pada perangkat Atlas target, ukuran gambar formal, dan tautan pemrosesan aktual, dengan membedakan antara:
- Waktu perolehan atau penguraian gambar;
- Waktu pra-pemrosesan;
- Waktu inferensi model tunggal;
- Waktu pasca-pemrosesan dan aturan bisnis;
- gambar bukti dan waktu penulisan berkas hasil;
- Waktu respons stasiun kerja ujung ke ujung.
Hasil pengujian juga harus mencatat versi model, hash file OM, versi CANN, model prosesor, ukuran input, batch, mode presisi, jumlah pemanasan, dan jumlah sampel. Akurasi, waktu siklus produksi, dan stabilitas jangka panjang dikonfirmasi oleh inspeksi independen terhadap proyek tertentu dan kondisi pengoperasian berkelanjutan.
Langkah 8: Bentuk pengiriman versi yang dapat digulung
Penyampaian formal sekurang-kurangnya memuat:
- Model asli atau file sumber model dalam cakupan yang disepakati;
- model ONNX dan instruksi ekspor;
- Model OM, perintah ATC, log konversi dan nilai pemeriksaan;
- Kode pra-pemrosesan, inferensi, pasca-pemrosesan, dan antarmuka bisnis;
- Sistem operasi, CANN, paket operator dan daftar versi dependen;
- Contoh hasil verifikasi, catatan perbedaan dan laporan pengujian kinerja;
- Konfigurasi, startup layanan, logging, upgrade, backup dan instruksi rollback.
Winge Technology dapat mengimplementasikan pekerjaan migrasi model bersama dengan kamera, optik, ROI, I/O, antarmuka, ketertelusuran hasil, dan penerapan lokal, menjadikan inferensi model sebagai bagian dari sistem inspeksi perakitan lengkap, bukan demonstrasi model yang terisolasi.
Permasalahan apa yang paling mungkin mempengaruhi hasil migrasi?
| pertanyaan | Gejala umum | arah pemrosesan |
|---|---|---|
| Definisi masukan tidak konsisten | Pergeseran keseluruhan dalam hasil atau tingkat kepercayaan yang tidak normal | Memperbaiki warna, ukuran, normalisasi, dan tata letak tensor |
| Operator atau bentuknya tidak kompatibel | Konversi ATC gagal atau struktur keluaran berubah | Penulisan ulang grafik, penggantian operator, roda gigi dinamis, atau operator yang disesuaikan |
| Pasca-pemrosesan yang tidak konsisten | Jumlah, lokasi, atau kategori bingkai deteksi berbeda-beda | Dekode terpadu, ambang batas, NMS, dan restorasi koordinat |
| Kombinasi versi tidak tetap | Model yang sama mempunyai kinerja yang berbeda di lingkungan yang berbeda | Sistem tetap, CANN, paket operator dan catatan konstruksi OM |
| Hanya pengujian model yang membutuhkan waktu | Live beat masih belum memenuhi persyaratan | Tautan lengkap dari perolehan pengukuran hingga keluaran hasil |
| Kurangnya pengumpulan validasi independen | Tidak dapat menentukan apakah migrasi mempertahankan hasil bisnis | Gunakan sampel OK, NG, dan batas yang tidak terlibat dalam penyetelan parameter |
Pertanyaan Umum
Bisakah model ONNX dijalankan langsung di Ascend NPU?
Biasanya ATC perlu digunakan untuk mengubah model ONNX menjadi model offline OM berdasarkan prosesor Ascend target dan lingkungan CANN, lalu memuat dan menjalankannya melalui antarmuka sisi perangkat seperti AscendCL.
Apakah konversi untuk menghasilkan file OM berarti migrasi telah selesai?
Tidak sama dengan. Hal ini juga diperlukan untuk menyelesaikan docking input dan output, konsistensi sebelum dan sesudah pemrosesan, perbandingan hasil sampel demi sampel, pengujian kinerja sisi perangkat, penanganan pengecualian, dan verifikasi pengiriman versi.
Apakah semua aturan visi tradisional harus diubah menjadi jaringan saraf?
Tidak perlu. Aturan ROI dengan posisi tetap dan batasan yang jelas dapat terus dipertahankan; model klasifikasi, deteksi objek, atau segmentasi digunakan untuk menangani perubahan kategori, latar belakang kompleks, dan tugas pengenalan semantik, dan keduanya dapat digabungkan dalam aplikasi Atlas yang sama.
Bisakah model OM yang sama digunakan langsung untuk semua perangkat Atlas?
Parameter konversi model OM terkait dengan target prosesor Ascend dan lingkungan perangkat lunak. Saat mengimplementasikan proyek, model prosesor, CANN, dan versi paket operator harus dikonfirmasi sesuai dengan perangkat target, dan catatan build yang sesuai harus disimpan.
Bagaimana menilai apakah hasil sebelum dan sesudah migrasi konsisten?
Sampel tetap harus digunakan untuk membandingkan tensor masukan, keluaran asli model, hasil algoritme, dan penilaian bisnis akhir lapis demi lapis, dan penerimaan harus didasarkan pada kesalahan, keakuratan, dan aturan stasiun kerja yang dikonfirmasi oleh kedua belah pihak. Anda tidak bisa hanya membandingkan sejumlah kecil gambar demonstrasi.
sumber resmi
- Huawei Ascend: Model ONNX diubah menjadi model OM
- Huawei Ascend: Parameter baris perintah ATC dan batasan operator
https://www.hiascend.com/document/detail/en/canncommercial/850/devaids/atctool/atlasatc_16_0039.html
- Huawei Ascend: Konstruksi model AscendCL dan pengembangan aplikasi
Atlas, Ascend, CANN, AscendCL dan nama terkait adalah milik pemegang haknya. Artikel ini menjelaskan metode adaptasi yang disediakan oleh Winge Technology untuk proyek visi perakitan, dan tidak berarti bahwa pemegang hak terkait berpartisipasi atau mendukung proyek tertentu. Kemampuan peralatan dan perkakas tunduk pada dokumen versi resmi yang sesuai, dan hasil proyek tunduk pada model, sampel, peralatan, dan kondisi penerimaan aktual.
Sumber daya inspeksi visual Atlas terkait
- Inspeksi visi perakitan yang sepenuhnya dilokalkan di Tiongkok: studi kasus proyek Huawei Ascend Atlas
- Winge Technology telah menyelesaikan adaptasi inspeksi visi perakitan pada perangkat di Atlas 200I DK A2
- Pekerjaan teknik apa yang termasuk dalam adaptasi inspeksi penglihatan Atlas 200I DK A2?
- Dari validasi kit pengembang Atlas hingga sistem visi produksi yang dilokalkan di Tiongkok
- Bagaimana platform edge Tiongkok mendukung kelengkapan perakitan dan pemeriksaan bagian yang hilang?
- Cara menyebarkan dan mengirimkan inspeksi visi perakitan Huawei Ascend Atlas secara lokal
- Inspeksi Visual Huawei Ascend Atlas
Online
Phone
WeChat
Top