Penulis : Joshua Alexander Heriyanto, Sarah Hasna Azzahra

Pengantar

Dalam menghadapi COVID-19, ilmu pengetahuan diperlukan untuk mencegah dan mengendalikan epidemi dan melanjutkan produksi di sisi lain. Tanpa pemulihan ekonomi, pertempuran tidak aman secara material. Untuk melawan wabah itu, Indonesia bersatu dalam persaingan melawan waktu. Banyak perusahaan teknologi, lembaga penelitian, dan pengembang juga terlibat sejak awal.

Menurut laporan media, masih ada sedikit orang yang tidak bekerja sama dan menolak untuk memakai masker di tempat umum. Beberapa kecanduan merokok, melepas masker, dan merokok kapan saja. Di tempat-tempat berskala besar seperti stasiun, pusat perbelanjaan, dan taman, kelalaian seringkali ditemui. Oleh karena itu, pemeriksaan pemakaian masker telah menjadi pekerjaan manajemen yang penting.

Untuk memenuhi persyaratan ini, developers dapat menggunakan teknologi AI HUAWEI CLOUD untuk mengembangkan aplikasi AI dengan cepat untuk deteksi penggunaan masker. Sederhananya, video di tempat umum dianalisis secara real time untuk menentukan apakah seorang individu mengenakan masker. Dokumen ini menjelaskan implementasi proses pengembangan menggunakan Huawei Cloud ModelArts + Huawei HiLens + Huawei HiLens Kit.

Apa itu Huawei HiLens Kit?

Atlas 200 HiLens Kit adalah perangkat multimedia dengan kemampuan inferensi AI. Alat ini mempunyai komputasi yang kuat, akses kamera HD, dan beberapa port ke dalam kit.

Atlas 200 HiLens Kit memiliki modul akselerator AI Atlas  200 terintegrasi (Atlas 200) untuk akses cepat ke jaringan dan memaksimalkan daya komputasi dari prosesor AI Ascend 310. Alat ini sempurna untuk developers AI dalam pra penelitian dan pengembangan, sekaligus sebagai CCTV. Gambar 1 dan Gambar 2 adalah penampakan dan penjelasan port yang dimiliki Atlas 200 HiLens Kit.

Gambar 1 Huawei HiLens

https://download.huawei.com/mdl/image/download?uuid=ae7d1566bf754237b5719ffba4826fdc

Gambar 2 Ports pada Huawei HiLens

Apa itu Huawei HiLens?

Huawei HiLens adalah platform pengembangan multimodal AI yang memungkinkan sinergi antar perangkat dengan cloud sehingga menyediakan framework yang mudah digunakan, out-of-the-box environment, konsol berbasis cloud, dan AI skill market. Dengan Huawei HiLens, anda dapat dengan mudah mengembangkan dan deploy aplikasi AI visual dan auditori secara daring, dan mengelola banyak perangkat komputer yang terhubung.

Fitur Produk

  • Inferensi dengan sinergi antar cloud dan perangkat, sehingga latensi komputasi rendah dan presisi tinggi
  • Data dianalisis di sisi perangkat, sehingga mengurangi biaya penyimpanan berbasis cloud.
  • One-stop skill development, mempersingkat masa pembangunan
  • Skill yang luas dengan pelatihan daring dan one-click deployment di skill market.

Arsitektur Produk

Huawei HiLens menyediakan framework yang mudah digunakan, out-of-the-box environment, konsol berbasis cloud, dan AI skill market. Dengan Huawei HiLens, anda dapat dengan mudah mengembangkan dan deploy skill AI secara online, rilis skill ke skill market dan membagikannya kepada user lain, serta mengelola banyak perangkat komputasi yang terhubung.

Gambar 3 Arsitektur Huawei HiLens

https://support.huaweicloud.com/en-us/productdesc-hilens/en-us_image_0274022486.png
  • Development framework: HiLens Framework

Mengenkapsulasi komponen dasar algoritma analisis video, seperti pemrosesan gambar, inferensi, dan log. Anda dapat mengembangkan skill anda sendiri dengan kode yang singkat.

  • Development environment: HiLens Studio

Lingkungan pengembangan terintegrasi multi-bahasa, termasuk code editor, compiler, dan debugger. Anda dapat menyusun dan membuat debug kode di Studio HiLens.

  • Management console

Menyediakan fungsi seperti manajemen model dan pengembangan skill bagi anda untuk mengelola model dan skill di cloud serta menginstall skill ke perangkat dalam sekali klik.

  • Multimodal AI skills

Berbagai skill AI sudah disediakan di skill market. Algoritma yang dapat diajalankan pada perangkat meliputi berbagai skenario komersial seperti pusat perbelanjaan, supermarket, rumah, dan kampus.

Apa itu ModelArts?

ModelArts adalah one-stop development platform bagi Al developers. Dengan praproses data, label data semi-otomatis, pelatihan terdistribusi, pembangunan model otomatis, dan model deployment sesuai permintaan pada perangkat, edge, dan cloud, ModelArts membantu AI developers dengan cepat membuat model dan mengelola siklus pengembangan AI.

ModelArts mencakup semua tahap pengembangan AI, termasuk pemrosesan data, pelatihan model, dan deployment. Teknologi pada ModelArts mendukung berbagai sumber daya komputasi heterogen, memungkinkan developers untuk secara fleksibel memilih dan menggunakan sumber daya. Sebagai tambahan, ModelArts mendukung framework pengembangan AI open source yang populer seperti TensorFlow dan MXNet. Developers juga dapat menggunakan kerangka algoritma yang dikembangkan sendiri untuk mencocokkan kebiasaan penggunaannya.

ModelArts bertujuan untuk menyederhanakan pengembangan AI.

ModelArts sangat cocok untuk developers AI dengan berbagai tingkat pengalaman. Service developers dapat menggunakan ExeML untuk membangun aplikasi AI dengan cepat tanpa koding. Pemula dapat menggunakan algoritma bawaan (built-in algorithm) untuk membuat aplikasi AI. Engineer AI dapat menggunakan beberapa development environtment untuk kompilasi kode dengan cepat untuk pemodelan dan pengembangan aplikasi.

Zero Code untuk Mengimplementasi Deteksi Penggunaan Masker

ModelArts menyediakan algoritma yang dibangun berdasarkan mainstream engine dalam industri untuk pemula AI dengan kemampuan pengembangan AI tertentu. Anda tidak perlu fokus pada proses pengembangan model, tetapi secara langsung dapat menggunakan algoritma bawaan untuk melatih data yang ada dan dengan cepat deploy model sebagai layanan. Algoritma bawaan dapat digunakan dalam skenario seperti deteksi objek dan lokasinya serta klasifikasi gambar.

Untuk service developers, Huawei HiLens menyediakan fungsi import (convert) model dan developing skills. Anda dapat mengembangkan model, kemudian import model tersebut ke Huawei HiLens, kompilasi code logic berdasarkan kebutuhan layanan, dan membuat skill berdasarkan model algoritma custom dan kode logika anda.

Artikel ini memberikan contoh deteksi penggunaan masker untuk membantu anda memahami lebih cepat proses pembuatan model menggunakan algoritma bawaan (Built-in Algorithm) ModelArts. Dalam contoh ini, anda akan memberikan label pada gambar yang ada pada dataset, menggunakan algoritma bawaan yolov3_resnet18 dalam melatih data untuk mendapatkan model, mengubahnya ke model offline, dan deploy ke perangkat HiLens.

Sebelum memulai, selesaikan tahap persiapan yang dijelaskan pada bagian Persiapan. Untuk menggunakan algoritma bawaan dalam membuat model, lakukan langkah-langkah berikut:

Langkah 1: Siapkan Data

Langkah 2: Training Model

Langkah 3: Konversi Model

Untuk mengembangkan skills menggunakan HiLens, lakukan langkah-langkah berikut:

Langkah 4: Import Model

Langkah 5: Membuat Skill

Langkah 6: (Pilihan) Rilis Skill

Langkah 7: Install Skill

Langkah 8: Mulai Skill

Langkah 9: Lihat Hasil pada Monitor

Persiapan

  • Akun HUAWEI CLOUD tidak boleh ditangguhkan atau dibekukan.
  • Otorisasi akses telah dikonfigurasi untuk akun Anda. Untuk detailnya, lihat Configuring Agency Authorization. Jika Anda telah berwenang menggunakan access key, hapus otorisasi dan konfigurasi otorisasi agensi.

Langkah 1: Siapkan Data

Klik di sini untuk mengunduh mask dataset yang diperlukan: mask_detection_200

Atau salin link pada browser: https://pan.baidu.com/s/1OCGvwt5P9N_jtCy9qev7YA

Kode ekstrak: xu24

Setelah download dan dekompresi, anda akan memperoleh dua folder:

  • train: dataset untuk training, termasuk beberapa skenario penggunaan masker dan file anotasi, digunakan untuk pelatihan model.
  • test: dataset untuk testing, termasuk beberapa skenario penggunaan masker, yang digunakan untuk tes setelah pelatihan model selesai.

Kemudian, upload data yang telah diunduh dalam folder train ke OBS.

Membuat bucket OBS

OBS dapat dianggap sebagai online web disk. ModelArts tidak memiliki fungsi penyimpanan data. Oleh karena itu, anda perlu memanggil data yang diupload dari OBS untuk training.

Klik untuk menuju: HUAWEI CLOUD OBS Console. Klik Create Bucket di sudut kanan atas. (Bucket di sini dapat dianggap sebagai unit dasar penyimpanan OBS. Semua data harus disimpan dalam sebuah bucket).

Gambar 4 Buat Bucket di OBS

Di halaman Create Bucket, atur parameter berdasarkan contoh berikut:

Region: AP-Singapore

Data Redundancy Storage Policy: Single AZ Storage.

Bucket name: Custom. Nama bucket harus unik secara global. Artinya, nama Bucket harus unik di HUAWEI CLOUD tidak boleh ada yang sama bukan hanya pada akun anda tetapi semua akun yang ada.

Gunakan nilai default pada opsi lain.

Gambar 5 Membuat Bucket

Klik Create Now di sudut kanan bawah dan konfirmasi. Tunggu beberapa detik untuk menyelesaikan pembuatan Bucket OBS.

Atau, buat bucket dengan OBS Browser+.

Gambar 6 Membuat Bucket di OBS+ Browser

OBS Browser+ adalah alat grafis untuk mengakses dan mengelola Object Storage Service (OBS). OBS Browser+ mendukung lengkap bucket dan manajemen objek. Tampilan antarmuka grafis OBS Browser+ memungkinkan anda mengelola OBS secara lokal, misalnya, membuat bucket, mengunggah dan mengunduh berkas, dan mencari berkas.

Pilih Developer > Resource Tools > Development Tools di halaman HUAWEI CLOUD. Unduh tool yang sesuai dengan konfigurasi PC anda.OBS Browser+:

Bagaimana Cara Masuk / Log In?

Klik “Console” di halaman untuk berpindah ke halaman konsol. Klik “My Credential” pada daftar drop-down nama akun untuk masuk pada halaman untuk membuat kunci akses manajemen (AK/SK). Posisinya dapat dilihat pada gambar berikut:

Gambar 7 My Credentials di HuaweiCloud

Gambar 8 Access Keys

Mengunggah Data Training ke OBS

Di halaman OBS, cari bucket baru dan klik nama bucket untuk mengakses halaman isi bucket.

Gambar 9 OBS Browser+

Klik Upload, klik Add Folder, pilih folder test dan train dari dataset yang diunduh, dan klik OK.

Folder test berisi file gambar untuk pengujian.

File gambar untuk training model berada dalam folder train.

Gambar 10 Upload Folder di OBS Browser+

Butuh waktu 10 detik untuk mengunggah ke cloud.

Gambar 11 Task Management di OBS Browser+

Langkah 2: Model Training

Setelah langkah persiapan data selseai, anda dapat membuat training job dan memilih built-in algorithm yolov3_resnet18 untuk menghasilkan model

Algoritma yolov3_resnet18 berdasarkan Tensorflow, TF-1.13.1-python3.6 engine dan digunakan untuk deteksi objek. Informasi lebih lanjut mengenai built-in algorithm, seperti pemakaian, tipe engine, dan presisi, pilih Training Jobs > Built-in Algorithms > Use Previous Version

  1. Login ke ModelArts management console. Pada panel navigasi bagian kiri, pilih Training Management > Training Jobs. Halaman Training Job akan muncul.
  2. Klik Create. Halaman Create Training Job akan muncul.
  3. Pada halaman Create Training Job, atur parameter yang dibutuhkan.
    1. Pada bagian basic information, Billing Mode dan Version akan terisi dengan default value. Sedangkan, Name dan Description dapat diisi secara bebas.

Gambar 12 Masukkan nama dan deskripsi

  1. Pada bagian konfigurasi parameter, anda dapat mengatur Algorithm SourceData SourceTraining Output PathRunning Parameter, dan Job Log Path

Gambar 13 Built-in Algorithm

Gambar 14 List Algorithm pada Built-in Algorithms

  • Data Source: Dataset yang diimport sudah mempunyai label. Maka dari itu, anda dapat langsung import dataset dari lokasi penyimpanannya. Pilih Data Path, klik Select pada bagian kanan text box, dan pilih path OBS sesuai dengan lokasi penyimpanan dataset
  • Training Output Path: Pilih path OBS untuk menyimpan model dan file prediksi.
  • Running Parameter: Biarkan terisi dengan default parameter.
  • Job Log Path: Pilih path OBS untuk menyimpan job logs

Gambar 15 Atur Parameter dan Resource

  1. Pada bagian resource setting, pilih Public resource pools, dan

atur spesifikasi dan compute nodes

Jika anda memilih free spesifications, baca pernyataan dengan seksama dan pilih I have read and agree to the above statements.

  1. Klik Next

Anda dapat klik nama dari training job untuk masuk ke halaman job details dan mempelajari konfigurasi, logs, dan penggunaan resource dari training job. Anda dapat mendapatkan file model dari path OBS yang terdapat di Training Output Path

Gambar 16 Detail dari Training Job

Langkah 3: Konversi Model

Setelah selesai training model, anda harus melakukan konversi model yang telah dilatih ke model yang kompatibel dengan ascend untuk dideploy ke Huawei HiLens Kit.

Dengan menggunakan model compression/conversion, anda dapat mengubah Tensorflow ke model yang kompatibel dengan ascend supaya dapat dideploy ke Huawei HiLens. Model compression/conversion dapat ditemukan di ModelArts > Model Management > Compression/Conversion.

  1. Klik Create Task. Halaman Create Compression/Conversion Job akan muncul.
  2. Pada halaman Create Compression/Conversion Job, lakukan konfigurasi parameter yang dibutuhkan

Gambar 17 Membuat Task di Compression/Conversion Task

  1. Pada bagian parameter configuration, atur NameDescription (Optional), Input FrameworkConversion Input PathConversion Output Path, dan Conversion Template.

Gambar 18 Penyimpanan di OBS

  • Output Framework : Pilihan default adalah Mindspore, kompatibel dengan ascend chips.
  • Conversion Output Path :. Pilih direktori untuk menyimpan model yang telah dikonversi.
  • Conversion Template : Gunakan parameter default ini.
  1. Klik Next untuk memulai conversion job.
  2. Klik nama job di halaman compression/conversion dan lihat apakah sukses atau tidak, dan lihat juga output dari model yang telah dikonversi.

Gambar 19 Convert Status

Langkah 4: Import Model

Model yang telah di import dapat berupa format .om, .pb, atau .caffemodel. Hanya model dengan format .om yang dapat dijalankan pada HiLens Kit devices. Model dalam format .pb atau .caffemodel dapat secara otomatis dikonversi menjadi format .om oleh Huawei HiLens

  1. Login ke Huawei HiLens management Console. Pada panel navigasi, pilih Skill Development > Model Management
  2. Pada halaman Model Management, klik Import (Convert) Model pada bagian atas kanan.
  3. halaman Import Model, atur parameter. Setelah konfirmasi informasi, klik OK.
  • Name: Custom
  • Version: Ketik 1.0.0.
  • Description: Deskripsi
  • Model Source: Klik Import From OBS. Pada bagian Model Address, klik https://support.huaweicloud.com/intl/en-us/bestpractice-hilens/en-us_image_0210505771.png. Masuk ke direktori /mask-model/output-2/om-maskdetection dimana terdapat .om model yang telah dikonversi sebelumnya, pilih file mask-model.om, dan klik OK.

Gambar 20 Import model

Setelah model diimport, halaman Model Management akan muncul. Anda dapat melihat status model import(conversion) pada list, termasuk ConvertingConversion failedConversion succeededImport failed, dan Import succeeded. Jika statusnya Import Succeded, anda dapat membuat skill pada management console Huawei Hilens

Langkah 5: Membuat Skill

  1. Pada panel navigasi di management console Huawei HiLens, pilih Skill Development > Skill Management. List skill akan muncul.
  2. Pada halaman Skill Management, klik Create Skill dibagian ujung kanan. Kemudian halaman Create Skill akan muncul.
  3. Pada halaman Create Skill, pilih Skill Templates dan pilih Mask Recognition Template seperti pada Gambar 21.

Gambar 21 Skill Template

  1. Masukkan basic information dan skill content.

Basic Information

  • Name: Custom.
  • Skill Version1.0.0.
  • Chip: Ascend310 sebagai default value.
  • Skill Code Value: Default value untuk parameter ini adalah mask
  • Application Scenario: Pilih Others dan masukkan mask_detection
  • Icon: Upload icon
  • Picture: Digunakan untuk memperkenalkan penggunaan skill atau efek terhadap user. Bagian ini tidak wajib.
  • OS Platform: Pilih Linux.
  • Description: Masukkan deskripsi dari skill.

Gambar 22 Basic Information

Skill Content

Masukkan skill content berdasarkan model dan logic code anda.

  • Skill Format: Pilih Skill package.
  • Runtime Language: Pilih Python3.7.
  • Function Execution Entry: index.py sebagai default value.
  • Model: Klik simbol (+), dapat dilihat pada Gambar 24. Pada dialog box yang muncul, pilih model mask-detection yang telah diimport pada step sebelumnya.
  • Code Entry Mode: Pilih Online Compilation 

Gambar 23 Skill Content

  1. Setelah memasukkan basic information dan skill content, lihat parameter value yang terdapat pada bagian kanan halaman. Jika parameter yang telah diatur salah, tanda silang berwarna merah akan muncul dibagian kanan. Konfirmasi informasi dan klik OK. Skill telah berhasil dibuat.

Gambar 24 Konfirmasi informasi dan membuat skill

Setelah skill dibuat, anda dapat merilis skill (dalam keadaan belum dirilis) ke skill market di Skill Development > Skill Management. Anda dapat deploy skill pada device dan melihat efek penggunaan skill

Setelah skill dirilis, skill akan dalam status Reviewing. Technical support Huawei HiLens akan melakukan review terhadap skill selama 3 hari kerja. Setelah review selesai, skill akan dalam keadaan Approved dan released status.

Langkah 6: (Pilihan) Rilis Skill

  1. Pada management console Huawei HiLens, pilih Skill Development > Skill Management pada panel navigasi. Halaman Skill Management akan muncul.
  2. Pilih skill yang akan dirilis dan klik Release pada kolom Operation.
  3. Pada dialog box Release Skill yang ditampilkan, atur informasi rilis, dan klik OK.

Tabel 1 Parameter untuk Rilis Skill

ParameterDeskripsi
PublishService untuk merilis skill. Pilih HiLens Skill Market pada contoh ini.
Billing PolicyKebijakan pembayaran untuk melakukan rilis skill ke skill market. Value dapat berupa Free atau Charged
Billed ByMode pembayaran setelah skill dirilisJika anda memilih Free billing policy, hanya dapat memilih One-off.Jika anda memilih Charged, dapat memilih Yearly/Monthly dan One-off
Measurement UnitSpesifikasi pada setiap license dalam setiap device. Value dapat berupa Number of channels atau QPS. Jika anda memilih Number of channels, satu license dapat diinstall pada device untuk satu channel video
Specification LimitationJumlah maksimum pada channel video yang dapat diproses oleh skill pada sebuah device atau jumlah maksimum channel video bersamaan
Privacy PolicyKebijakan privasi pengguna yang terlibat dalam skill ini.
  1. Setelah anda submit, service personnel Huawei HiLens akan melakukan review. Review akan selesai dengan waktu kerja 3 hari.

Langkah 7: Install Skill

  1. Pilih Skill Development > Skill Management, pilih developed skill, dan klik Install pada kolom Operation.
  2. Pilih device online yang telah terdaftar dan klik Install. Setelah instalasi selesai, klik OK. Selama proses instalasi, management console Huawei HiLens mengirimkan skill package ke device. Membutuhkan beberapa waktu untuk mengirimkan skill package. Anda dapat melihat progress instalasi skill pada bar progress. Setelah pengiriman selesai, progress bar akan menampilkan Installation succeeded.

Gambar 25 Instalasi Berhasil

https://support.huaweicloud.com/intl/en-us/bestpractice-hilens/en-us_image_0243641073.png

Setelah instalasi berhasil, anda dapat memulai skill untuk melihat output data dari skill.

Langkah 8: Memulai Skill

  1. Gunakan kabel video HDMI untuk menyambungkan HiLens Kit video output port ke display.

Gambar 26Connection Diagram

  1. Pada navigasi panel, pilih Device Management > HiLens Kit. Halaman list device akan muncul
  2. Klik Manage Skill dari device yang terdaftar. Status pada skill mask detection yang terinstall adalah Stopped. Klik start pada kolom Operation dan klik OK untuk memulai skill pada device. Status pada skill akan berubah menjadi Running setelah beberapa saat, menandakan bahwa skill telah berhasil berjalan pada device. Lalu, anda dapat melihat output data dari skill pada display.

Gambar 27 Melihat Status Skill

https://support.huaweicloud.com/intl/en-us/bestpractice-hilens/en-us_image_0243939586.png

Tabel 2 Status Instalasi skill

StatusDeskripsi
StoppedSkill berhenti berjalan pada device.
RunningSkill berhasil terinstall pada device dan sedang berjalan.

Langkah 9: Melihat Hasil pada Monitor

Gambar 28 Hasil pada Monitor

https://support.huaweicloud.com/bestpractice-hilens/zh-cn_image_0000001088301733.png