Bagaimana Inovasi Alat Mempermudah Vision AI untuk Sistem Tertanam
Mengintegrasikan visi ke dalam produk sehari-hari menawarkan manfaat transformatif di berbagai industri, namun mengekstrak data kamera, menyematkan model machine learning, dan memberikan wawasan yang dapat ditindaklanjuti tetap menjadi tantangan kompleks.
Kunci terletak pada memilih perangkat lunak, alat, perpustakaan, dan compiler yang sesuai. Sumber daya ini biasanya tidak dapat diakses oleh non-engineer, dan bahkan banyak pengembang sistem tertanam tidak memiliki keahlian spesialis yang diperlukan untuk desain sistem visi.
Salah satu hambatan besar adalah kurangnya kesadaran tentang perangkat lunak dan alat yang memfasilitasi pengembangan visi sistem tertanam, sebagaimana dijelaskan oleh Jeff Bier, pendiri Edge AI and Vision Alliance, dalam briefing dengan EE Times sebelum 2021 Embedded Vision Summit. Meskipun investasi dan penelitian besar telah dilakukan pada algoritma dan silikon, alat perangkat lunak yang menjadi perantara di antaranya—compiler, perpustakaan fungsi yang dioptimalkan, dan lainnya—telah cukup diabaikan, kata Bier.
Menggunakan alat perangkat lunak, compiler, dan perpustakaan yang tepat dapat menghasilkan implementasi yang sangat efisien dari algoritma untuk mikrokontroler atau prosesor tertentu. Namun “selama 30 tahun terakhir, perusahaan semikonduktor biasanya kurang berinvestasi dalam alat perangkat lunak,” kata Bier, veteran industri sistem tertanam dan pemrosesan sinyal khususnya. “[Perangkat lunak] sering dianggap sebagai kejahatan yang diperlukan—ini adalah pusat biaya dalam bisnis yang sangat sensitif terhadap biaya—dan ini terlihat. Sebagai pengembang perangkat lunak sistem tertanam, Anda mungkin melihat alat yang tersedia bagi Anda dibandingkan dengan apa yang dimiliki pengembang PC atau cloud dan merasa seperti anak tiri yang tidak disayangi.”
Membawa argumen ini ke tingkat berikutnya, ia menambahkan, “Anda mungkin memiliki keahlian sistem tertanam, tetapi ada kemungkinan pengembang ini belum pernah bekerja dengan data citra atau jaringan saraf dalam.”
Keterampilan adalah tantangan besar, kata Bier. “Mungkin kita telah melakukan beberapa perhitungan spreadsheet, dan berkata, ‘Ya, mungkin untuk menjalankan jaringan saraf dalam jenis ini dengan performa yang cukup dalam aplikasi kita.’ Namun apakah kita tahu cara melakukannya? Apakah kita memiliki keterampilan? Untuk sebagian besar organisasi jawabannya tidak, karena mereka belum pernah memiliki kesempatan untuk menggunakan teknologi ini di masa lalu. Karena ini adalah teknologi yang relatif baru di dunia komersial, mereka tidak memiliki keahlian. Mereka tidak memiliki departemen machine learning atau departemen computer vision di perusahaan mereka.”
Dalam beberapa tahun terakhir, ini telah menjadi hambatan yang sangat besar dengan respecto aplikasi komersial computer vision dan jaringan saraf dalam—hanya keahliannya.
Namun teknologi menjadi lebih mudah diakses, seiring perusahaan telah mencoba menutupi kesenjangan keterampilan selama beberapa tahun terakhir. “Kesenjangan pengetahuan dan keterampilan telah cukup besar tetapi semakin mengecil,” kata Bier, menambahkan bahwa “beberapa perusahaan,” satu besar dan satu kecil, “telah memimpin perjuangan ini.” Perusahaan besar adalah Intel; yang kecil adalah Edge Impulse.
Intel sering mengagumkan saya dengan menolak tren dan bersedia melakukan investasi besar dalam alat perangkat lunak dalam beberapa cara,” kata Bier. “Misalnya, mereka memiliki rangkaian alat OpenVINO untuk computer vision dan inferensi edge, dan DevCloud untuk Edge. Edge Impulse juga adalah lingkungan berbasis cloud. Bagi pengembang sistem tertanam, lingkungan [cloud] itu terasa aneh. Semua untuk mereka sering berada di meja mereka — papan pengembangan, workstation, alat — dan mereka bahkan tidak perlu koneksi internet. Semua sangat lokal. Jadi, terasa sangat aneh untuk berkata, ‘Masukkan kode Anda ke cloud’ dan jalankan alat di cloud.”
Tren ini mengatasi waktu penerapan serta kesenjangan keterampilan. Frustrasi umum bagi pengembang sistem tertanam adalah mendapatkan akses ke papan dan alat dan menginstal mereka dengan benar, kata Bier. Garis waktu “biasanya diukur dalam minggu, kadang dalam bulan, dan itu menyakitkan, terutama jika di akhir dari itu Anda menyadari itu bukan yang Anda butuhkan dan Anda perlu mengulang proses dengan papan lain.” Misalnya, Anda mungkin menemukan di akhir proses bahwa “Anda membutuhkan yang berikutnya, dengan performa lebih tinggi atau seperangkat antarmuka I/O yang berbeda.”
Tetapi jika supplier “memiliki semua papan pengembangan di cloud yang terhubung ke mesin mereka dan [dapat] mengaksesnya kapan saja, itu menawarkan kenyamanan yang luar biasa. Demikian pula, mereka memiliki versi terbaru dari alat perangkat lunak, dan mereka telah menguruti semua ketergantungan di antaranya.”
Mempercepat Penerapan Vision AI
Jadi bagaimana Anda mempercepat penerapan visi sistem tertanam untuk mengaktifkan fitur seperti deteksi dan analisis objek, baik untuk kota pintar, pabrik, ritel, atau aplikasi lainnya?
Setelah menyadari titik nyeri yang dijelaskan Bier, perusahaan sekarang mengatasi mereka. Beberapa sekarang menawarkan alat seperti sistem pengembangan berbasis cloud yang memungkinkan Anda menyampaikan kode atau data Anda dan mendapatkan evaluasi dalam waktu singkat. Yang lain menyediakan desain referensi yang memungkinkan Anda cukup menyatukan output kamera Anda dan memilih dari perpustakaan atau aplikasi yang menyediakan algoritma inferensi untuk aplikasi umum.
Di kamp pertama, Intel DevCloud untuk Edge dan Edge Impulse menawarkan platform berbasis cloud yang menghilangkan sebagian besar titik nyeri dengan akses mudah ke alat dan perangkat lunak terbaru. Di yang kedua, Xilinx dan lainnya telah mulai menawarkan sistem-on-module lengkap dengan aplikasi siap produksi yang dapat diterapkan dengan alat pada tingkat abstraksi yang lebih tinggi, menghilangkan kebutuhan akan beberapa keterampilan spesialis yang lebih.
Prototipe, benchmark, dan uji inferensi AI di cloud
Intel DevCloud untuk Edge memungkinkan pengguna mengembangkan, membuat prototipe, benchmark, dan menguji aplikasi inferensi AI pada berbagai hardware Intel, termasuk CPU, GPU terintegrasi, FPGA, dan unit pemrosesan visi (VPU). Dengan antarmuka Jupyter Notebook, platform ini berisi tutorial dan contoh yang sudah dimuat dengan semua yang diperlukan untuk segera mulai. Ini mencakup model terlatih, data contoh, dan kode yang dapat dieksekusi dari versi terbaru distribusi Intel OpenVINO toolkit, serta alat lain untuk deep learning. Semua perangkat pendukung dikonfigurasi untuk performa optimal dan siap untuk eksekusi inferensi.
Manfaat terbesar bagi pengembang adalah platform ini tidak memerlukan setup hardware di sisi pengguna. Lingkungan pengembangan berbasis browser Jupyter Notebook memungkinkan pengembang menjalankan kode dari dalam browser mereka dan memvisualisasikan hasil secara instan. Ini memungkinkan mereka membuat prototipe solusi computer vision di lingkungan cloud Intel dan melihat kode mereka berjalan pada kombinasi manapun dari sumber daya hardware yang tersedia.
Ada tiga manfaat utama dari penawaran berbasis cloud ini. Pertama, ia mengatasi masalah kebingungan pilihan hardware. Pengembang dapat menjalankan aplikasi AI secara jarak jauh pada berbagai hardware untuk menentukan yang terbaik untuk solusi mereka berdasarkan faktor seperti waktu eksekusi inferensi, konsumsi daya, dan biaya.
Kedua, ia menawarkan akses jarak jauh langsung ke hardware edge Intel terbaru. Di sisi perangkat lunak, ia mengatasi masalah harus menghadapi perangkat lunak yang usang, karena memberikan akses instan ke versi terbaru Intel Distribution of OpenVINO toolkit dan hardware edge yang kompatibel.
Dan ketiga, ia menawarkan akses ke benchmark performa spesifik aplikasi dalam format samping-samping yang mudah dibandingkan.
(Tutorial tentang menjalankan model deteksi objek menggunakan Intel DevCloud untuk Edge tersedia di sini.)
Bangun model di cloud, lihat apa yang terjadi secara langsung
Pendekatan lain adalah memasukkan data ke platform cloud untuk memvisualisasikan dan membuat model pelatihan dan menerapkannya ke perangkat sistem tertanam. Edge Impulse melakukan tepat itu, menawarkan lingkungan pengembangan berbasis cloud yang bertujuan untuk memudahkan penambahan machine learning pada perangkat edge tanpa memerlukan Ph.D. dalam machine learning, menurut perusahaan.
Platformnya memungkinkan pengguna mengimpor data citra yang dikumpulkan dari lapangan, membangun klasifikasi dengan cepat untuk menafsirkan data tersebut, dan menerapkan model kembali ke perangkat produksi hemat daya. Kunci platform web Edge Impulse adalah kemampuan untuk melihat dan melabeli semua data yang diperoleh, membuat blok pra-pemrosesan untuk melengkapi dan mentransformasi data, memvisualisasikan kumpulan data citra, dan mengklasifikasi serta memvalidasi model pada data pelatihan langsung dari antarmuka pengguna.
Karena bisa cukup sulit untuk membangun model computer vision dari nol, Edge Impulse menggunakan proses transfer learning untuk membuatnya lebih mudah dan lebih cepat untuk melatih model. Ini melibatkan memanfaatkan model yang sudah terlatih dengan baik dan melatih ulang hanya lapisan atas jaringan saraf, menghasilkan model yang jauh lebih andal yang dilatih dalam waktu singkat dan bekerja dengan kumpulan data yang jauh lebih kecil. Dengan model yang dirancang, dilatih, dan divalidasi, maka mungkin untuk menerapkan model ini kembali ke perangkat. Model kemudian dapat berjalan di perangkat tanpa koneksi internet, dengan semua manfaat inherentnya, seperti meminimalkan latensi, dan berjalan dengan konsumsi daya minimum. Model lengkap dikemas dengan langkah pra-pemrosesan, bobot jaringan saraf, dan kode klasifikasi dalam satu perpustakaan C++ yang dapat disertakan dalam perangkat lunak sistem tertanam.
Pergi ke tingkat abstraksi yang lebih tinggi
Pendekatan lain yang ditawarkan oleh vendor adalah mengurangi waktu pengembangan dengan menawarkan sistem berbasis modul dan memungkinkan desain pada tingkat abstraksi yang lebih tinggi. Xilinx mengatakan bahwa pendekatan sistem-on-module (SOM) baru mereka dapat menghemat hingga sembilan bulan waktu pengembangan untuk sistem visi, dengan mengatasi kompleksitas yang meningkat dalam visi AI serta tantangan dalam menerapkan AI di edge.
Xilinx baru-baru ini mengumumkan produk pertama dalam portofolio SOM baru mereka: Kria K26 SOM, yang secara spesifik menargetkan aplikasi visi AI di kota pintar dan pabrik pintar, bersama dengan kit pengembangan siap pakai, hemat biaya, Kria KV260 AI vision starter kit.
Chetan Khona, direktur industri, visi, dan kesehatan di Xilinx, mengatakan pada briefing pers untuk meluncurkan keluarga modul baru, “Sistem siap produksi penting untuk penerapan cepat [visi AI sistem tertanam]. Pelanggan dapat menghemat hingga sembilan bulan waktu pengembangan dengan menggunakan desain berbasis modul daripada berbasis perangkat.” Ia menambahkan bahwa dengan starter kit, pengguna dapat memulai dalam satu jam, “tanpa pengalaman FPGA yang diperlukan.” Pengguna menghubungkan kamera, kabel, dan monitor, memasukkan kartu microSD yang sudah diprogram, dan menyalakan papan, lalu dapat memilih dan menjalankan aplikasi dipercepat pilihan mereka.
Portofolio Kria SOM menggabungkan platform perangkat lunak dan hardware dengan aplikasi visi dipercepat siap produksi. Aplikasi turnkey ini menghilangkan semua pekerjaan desain hardware FPGA; pengembang perangkat lunak hanya perlu mengintegrasikan model AI khusus dan kode aplikasi mereka, dan secara opsional memodifikasi pipa visi — menggunakan lingkungan desain yang familiar, seperti framework TensorFlow, Pytorch, atau Café serta bahasa pemrograman C, C++, OpenCL, dan Python.
Kria SOM juga memungkinkan kustomisasi dan optimisasi untuk pengembang sistem tertanam dengan dukungan untuk PetaLinux berbasis Yocto standar. Xilinx mengatakan kolaborasi dengan Canonical juga sedang berjalan untuk menyediakan dukungan Ubuntu Linux, distribusi Linux yang sangat populer digunakan oleh pengembang AI. Ini menawarkan kesesuaian yang luas dengan pengembang AI dan interoperabilitas dengan aplikasi yang ada. Pelanggan dapat mengembangkan di salah satu lingkungan dan mengambil salah satu pendekatan ke produksi. Keduanya akan datang dengan infrastruktur perangkat lunak yang sudah dibangun dan utilitas yang berguna.
Kami telah menyoroti tiga pendekatan yang diambil vendor untuk mengatasi kesenjangan keterampilan dan pengetahuan, serta waktu penerapan, untuk pengembangan sistem visi sistem tertanam. Pendekatan berbasis cloud menawarkan alat yang “democratize” kemampuan untuk membuat dan melatih model serta mengevaluasi hardware untuk penerapan yang sangat cepat ke perangkat sistem tertanam. Dan pendekatan yang menawarkan modul, atau desain referensi, dengan perpustakaan aplikasi memungkinkan pengembang AI menggunakan alat yang ada untuk membuat sistem visi sistem tertanam dengan cepat. Semua ini membawa kita ke cara yang berbeda dalam melihat papan pengembangan dan alat. Mereka menghilangkan misteri dari visi sistem tertanam dengan naik di rantai nilai, meninggalkan pekerjaan tingkat dasar pada alat dan modul vendor.
Konten Terkait:
Embedded Vision at the Tipping Point
Five Trends to Watch in Embedded Vision and Edge AI
Will Machines Ever Fully Understand What They Are Seeing?
Xilinx SOM targets broader adoption of edge AI and embedded vision
Embedded Vision Summit: ML perception on tiny FPGAs
GWM adopts Ambarella AI vision SoC for new SUV
AImotive shows 98% edge vision efficiency on Nextchip Apache5
Low power AI vision board lasts ‘years’ on single battery
OmniVision shrinks medical image sensor for deeper endoscopy