“Hello AI World!”, Mulai Bermain dengan “Kecerdasan Buatan” Pada Nvidia Jetson Nano
Sebagaimana pernah diulas pada artikel embeddednesia sebelumnya, Nvidia Jetson Nano hadir ke hadapan publik dengan tagline “AI for Everyone“, bertujuan ingin mendemokratisasikan kecerdasan buatan agar dapat diakses oleh siapa saja. Setelah, pada tulisan sebelumnya, Jetson Nano berhasil dijalankan dengan Sistem Operasi Ubuntu, kini saatnya bereksperimen untuk menginstall dan menjalankan sebuah program demo kecerdasan buatan yang sudah disediakan oleh Nvidia, bernama Hello AI World.
Baca Juga :
Project Hello AI World adalah project demo yang disediakan oleh Nvidia untuk pengguna agar lebih memahami tentang apa yang dapat dilakukan Jetson Nano khususnya di sektor kecerdasan buatan. Di dalam project ini terdapat sejumlah program yang dapat dijalankan menggunakan JetPack SDK dan NVIDIA TensorRT seperti deep learning inference, realtime image classification dan object detection. Selain itu pengguna juga dapat bereksperimen sendiri dengan source code program image recognition yang ditulis dala bahasa Python dan C++ serta melatihnya pada model – model DNN secara onboard pada Jetson Nano menggunakan PyTorch
Yang harus pertama dilakukan adalah mengunduh source code jetson-inference
, namun sebelumnya jangan lupa memastikan git
dan cmake
dan beberpa aplikasi telah terinstall di Jetson Nano.
Perhatikan, pengguna juga mengginstall libpython3-dev
dan python3-numpy,
hal ini dikarenakan secara default package tersebut tidak hadir secara preinstal pada Ubuntu untuk Python 3, meskipun untuk Python 2.7 package serupa sudah terinstal secara default. Dimana secara fungsi, Python digunakan dalam project ini adalah implementasi dari ekstensi Python yang menyediakan ‘binding‘ ke code C++ secara native
Berikutnya, setelah project jetson-inference
berhasil di-clone dari repository, masuk ke dalam direktori project tersebut, lalu buat direktori baru bernama build
dan ketikkan command cmake ../
Saat proses cmake
dijalankan sebuat script bernama CMakePreBuild
dijalankan secara otomatis untuk menginstal sejumlah dependensi dan mengunduh model – model DNN (Deep Neural Network). Secara default tidak semua model – model ini akan diunduh guna menghemat ruang penyimpanan sdcard. Oleh karena itu sebuah screen Model Downloader akan tampil supaya pengguna dapat memilah dan memilih model mana yang sebaiknya diunduh dan mana yang tidak.
Dalam tutorial ini penulis akan membiarkan pada kondisi default, agar proses pengunduhan tidak terlalu lama. Toh jika nanti pengguna merasa ingin mengunduh model tambahan, dapat menjalankan Model Downloader dengan mengeksekusi skrip berikut secara manual.
Berikutnya, pengguna diberi pilihan apakah ingin menginstal PyTorch atau tidak. PyTorch dapat digunakan untuk melatih ulang (re-train) jaringan syaraf dengan metode transfer learning. Langkah ini bersifat opsional, sehingga pengguna dapat memilih melewatinya dan dapat menginstalnya secara manual nanti.
Namun jika ingin menginstal, pengguna dapat memilih PyTorch untuk Python versi berapa yang ingin diinstal 2.7 atau Python 3.6 dan tekan Enter untuk melanjutkan, jika tidak ingin menginstal, biarkan terlebih dahulu dalam kondisi tidak terpilh.
- Compiling
Berikutnya pastikan pengguna masih berada pada direktorijetson-inference/build
sebagaimana dijelaskan pada langkah sebelumnya, kemudian jalankan perintah berikut,
Command tersebut berguna untuk mem-build source library dan contoh – contoh code yang telah diunduh tersebut. Tunggu beberapa saat hingga proses selesei. Selamat, Projet Hello AI World
telah siap digunakan. Project ini terdiri dari beberapa bagian sebagai berikut
- Klasifikasi images menggunakan ImageNet
- Lokalisasi objects menggunakan DetectNet
- Semantic Segmentation menggunakan SegNet
- Transfer Learning menggunakan PyTorch
- Klasifikasi Image
Bagian pertama yang menarik untuk dicoba adalah klasifikasi image, untuk bereksperimen dengan ini, pengguna memerlukan perangkat tambahan berupa kamera Raspberry Pi v2
Kamera ini dapat dipasang pada port konektor MIPI CSI, dengan kamera membelakangi board Jetson Nano.
Alternatif lainnya adalah menggunakan kamera webcam dengan antarmuka USB, meskipun tidak semua kamera webcam dapat digunakan, beberapa tipe yang dikonfirmasi dapat digunakan untuk project ini adalah
- Logitech C270
- Logitech C920 Pro (digunakan penulis)
Setelah kamera terpasang, periksa dimana kamera terbaca dengan menggunakan perintah berikut
Perhatikan, pada jetson nano penulis terbaca kamera di /dev/video0
. Kini jalankan aplikasi imagenet-camera
untuk memulai menjalankan program klasifikasi image
Perintah tersebut secara default akan menggunakan jaringan syaraf milik GoogleNet untuk dilatih pada dataset ImageNet yang berisi 1000 kelas object. Setelah selesei pelatihan dilakukan, sebuah jendela kamera akan terbuka, dan pengguna dapat meletakkan objek – objek di depan kamera untuk dapat diidentifikasi oleh aplikasi
[…] “Hello AI World!”, Mulai Bermain dengan “Kecerdasan Buatan”… […]