CLARA Clever Artficial Assitant - Virtual Assistant using Python
CLARA, singkatan dari Clever Artificial Assitant, merupakan Projek Virtual Assistant berbasis Python yang dibuat oleh kelompok kami sebagai bentuk Tugas Besar Mata Kuliah ET3107
Dunia saat ini telah memasuki era digital 4.0 yang segalanya bersifat modern dan otomatis. Manusiapun di tuntut untuk bekerja lebih cepat dan praktis. Virtual assistant atau personal assistant berbasis kecerdasan buatan pada perangkat mobile merupakan suatu hal yang tidak asing lagi. Untuk mempermudah kegiatan sehari-hari sekaligus memberi pengalaman yang berkesan kepada pengguna, tercetus sebuah ide oleh kami untuk membuat suatu virtual assistant sederhana berbasis Python yang dapat digunakan di perangkat PC, bernama Clara (Clever Artificial Assistant). Terinspirasi dari produk Apple, yaitu Siri, Clara dapat mengubah cara pengguna berinteraksi dengan perangkat mereka.
Clara bertujuan untuk membantu penggunanya dalam melakukan pekerjaan nya seperti pekerjaan administrasi, dan mengolah data, serta dapat mengenali wajah pengguna-nya berdasarkan kecocokna id. Dengan hanya memberikan perintah suara saja, Clara dapat merespon dan melakukan perintah dari pengguna. Dalam pembuatannya, pemorgraman python untuk virtual assistant ini menggunakan beberapa library, diantaranya Pyttsx3, SpeechRecognition, sqlite3, cv2, pickle, Wikipedia, os, smtplib, pandas, numpy, matplotlib, dan time.
Clara memiliki fitur – fitur yakni diataranya dapat mendefinisikan sesuatu sesuai keinginan pengguna dengan menggunakan library Wikipedia, menyebutkan hari dan tanggal pada hari itu menggunakan library datetime, membuatkan, menyediakan, dan mengganti jadwal dari pengguna berdasarkan data file csv yang sudah ada, dapat memvisualisasikan suatu dataset csv yang diinput pengguna dalam bentuk barchart, dapat mencari video di youtube sesuai kata kunci yang disebutkan pengguna, dapat menyediakan data cuaca pada daerah pengguna di hari itu, dapat membuka google maps untuk menunjukkan lokasi pengguna, dapat mengambil gambar sekaligus mendeteksi wajah pengguna dengan menyediakan data seperti nama, kelamin, dan usia, berdasarkan kecocokan id pada database MySQL, dan dapat mengirimkan email ke email tujuan tertentu dengan pesan email yang dapat diucapkan oleh pengguna menggunakan library smtplib (menggunakan protocol smtp).
Pada fitur face recognition, program menggunakan library cv2 atau OpenCV untuk mengakses video kamera dan pendeteksian wajah menggunakan alogoritma haarcascade_frontalface serta library SQLite digunakan untuk pengaksesan database MySQL untuk disinkronkan dengan program. Program face recognition mengakses database people¬-_list pada MySQL dengan tujuan untuk menyediakan data pada frame kamera face recognizer berupa nama, kelamin dan usia. Pada mulanya, untuk acknowledgement program, pengguna harus menginput wajah mereka berdasarkan id, lalu kemudian mengisikan data pengguna berupa nama kelamin, dan usia, yang dimana informasi tersebut didata di MySQL database. Program secara otomatis akan mengambil wajah pengguna berkali-kali dan kemudian melakukan training. Setelah itu, program dapat mengenali pengguna. Terdapat beberapa kekurangan pada fitur ini yakni program yang masih terbilang sederhana karena face recognition bekerja bukan karena hasil training dari ribuan wajah yang berbeda, melainkan peng-input-an secara manual berdasarkan id oleh pengguna.
Secara keseluruhan, program dapat berjalan dengan lancer meskipun pada pengerjaannya terdapat beberapa kendala dan perubahan rencana, seperti tempat pengerjaan program yang pada mulanya dikerjakan di google colab menjadi di IDE local text editor, dan perubahan library suara text-to-speech dari Clara yang semula menggunakan library gtts atau Google text-to-speech library menjadi pyttsx3 Library suara diubah dikarenakan pemrosesan audio yang sangat lama. Adapun kekurangan dari program Virtual Assistant yang kami buat ini adalah kurang menariknya interface (tidak ada GUI), karena dijalankan di command prompt PC.
Project Author(s)
Anggietha Santoso (18118009), M. Pranaya Dafa S. (18118030), Sulthan Alam (18118041)