# Log Aktivitas Harian MBKM Wearable AI
### Achmad Rifqy Pratama (13218069)<br />Kelompok Wearable AI Contact-based ITB
---
## Pekan-1 : 30 Agustus 2021 - 3 September 2021
|Hari, tanggal|Aktivitas|Deskripsi|Kendala|Rencana|
| ----------- | ------- | ------- | ----- | ---------------- |
| Senin, 30 Agustus 2021 | WFH <br />(1) Vidcon pertemuan perdana MBKM ITB 2021 Magang Riset <br /><br />(2) Mempelajari dan eksplorasi salah satu AI Framework yaitu TensorFlow 2.0 melalui TensorFlow 2.0 Complete Course pada kanal Youtube freeCodeCamp.org <br /><br />(3) Membaca dan memahami rujukan : Biswas, Dwaipayan, et al. “Heart rate estimation from wrist-worn photoplethysmography: A review.” IEEE Sensors Journal 19.16 (2019): 6560-6570.| WFH <br />(1) Vidcon pertemuan perdana MBKM ITB 2021 Magang Riset berisi topik penelitian yang akan diangkat, bentuk, teknis pelaksanaan, dan informasi kegiatan, serta kriteria penilaian <br /><br />(2) Proses pembelajaran hingga 3 modul, yaitu : (a) Module 1 : Machine Learning Fundamentals (b) Module 2 : Introduction to TensorFlow (c) Module 3 : Core Learning Algorithms <br /><br />(3) Pembacaan dan pemahaman paper dilakukan meliputi bagian : Abstract : Menjelaskan apa itu PPG, keuntungan dan kegunaan pengaplikasian PPG secara umum, serta rencana inovasi penggunaan teknologi PPG pada pergelangan tangan untuk memantau aktivitas jantung (b) Introduction : prinsip kerja PPG berdasarkan prinsip oksimetri nadi yakni sensor memancarkan cahaya ke kulit dan mengukur intensitas cahaya yang dipantulkan kembali atau ditransmisikan melalui kulit. Lalu, disebutkan beberapa kendala yang dapat merusak sinyal PPG yang diletakkan di pergelangan tangan, yaitu rentan terhadap motion artifacts (MA). Terakhir, pada bagian ini dijelaskan beberapa cakupan pemrosesan sinyal EKG yang akan dibahas dalam paper dengan mempertimbangkan pengaruh MA, yaitu secara garis besar akan berfokus pada pengembangan algoritma PPG yang diletakkan pada pergelangan tangan di sekitar basis data SPC. (c) PPG Signal Acquisition : pengenalan PPG lebih lanjut serta cara kerja PPG hingga terdeteksi sinyal komponen DC dan AC. (d) HR Estimation from PPG : menjelaskan metodologi penghilangan MA berupa teknik penghilangan MA dan metrik evaluasi yang umum digunakan, evaluasi algoritma pada basis data SPC, algoritma yang menargetkan pengurangan kompleksitas komputasi, algoritma berbasis ML, tinjauan singkat pada perangkat komersial menggunakan pergelangan tangan-PPG, serta estimasi HRV. | - | WFH <br />Mempelajari Machine Learning melalui Machine Learning course by Andrew Ng |
| Selasa, 31 Agustus 2021 | WFH <br />Mempelajari Machine Learning melalui Machine Learning course by Andrew Ng | WFH <br />Mempelajari dasar-dasar Machine Learning dari mulai konsep berpikir Machine Learning, hubungan Machine Learning dengan AI, tipe-tipe konsep problem solving berbasis Machine Learning berupa Supervised Learning dan Unsupervised Learning, hingga dasar-dasar operasi algoritmik yang diperlukan untuk problem solving berbasis Machine Learning seperti Regresi Linear satu variabel hingga multi variabel, serta Logistic Regression 1 class hingga multiclass dengan menggunakan gradient descent sebagai optimization algorithm | - | WFH <br />Melanjutkan pembacaan dan pemahaman rujukan paper berikut : Biswas, Dwaipayan, et al. “Heart rate estimation from wrist-worn photoplethysmography: A review.” IEEE Sensors Journal 19.16 (2019): 6560-6570. |
| Rabu, 1 September 2021 | WFH <br />(1) Melanjutkan pembacaan dan pemahaman rujukan paper berikut : Biswas, Dwaipayan, et al. “Heart rate estimation from wrist-worn photoplethysmography: A review.” IEEE Sensors Journal 19.16 (2019): 6560-6570. <br /><br />(2) Diskusi isi pemahaman rujukan paper bersama kelompok | WFH<br /> (1) Pembacaan dan pemahaman rujukan paper difokuskan pada metodologi untuk ekstraksi informasi denyut jantung yang terdeteksi oleh fotodioda berupa teknik adaptive filter untuk melemahkan MA, algoritma untuk estimasi HR dari PPG, serta perbandingan beberapa teknik komputasi yang digunakan berdasarkan nilai AAE, executing time, dan battery lifetime. <br /><br />(2) Diskusi mengangkat bahasan tentang pemilihan gelombang cahaya yang ideal untuk ditembakkan oleh PPG pada pergelangan tangan. Panjang gelombang cahaya yang ditembakkan mempengaruhi kedalaman penetrasi pada pembuluh darah. Pada umumnya PPG menggunakan pancaran cahaya merah dan pancaran cahaya hijau. Masing-masing memiliki kelebihan dan kekurangan yang membuat kedua cahaya tersebut memiliki lokasi penempatan dan aktivitas ideal yang dilakukan penggunanya. | - | WFH <br />(1) Melanjutkan pembacaan dan pemahaman rujukan paper berikut : Biswas, Dwaipayan, et al. “Heart rate estimation from wrist-worn photoplethysmography: A review.” IEEE Sensors Journal 19.16 (2019): 6560-6570. <br /><br />(2) Membuat ringkasan dari rujukan paper. <br /><br />(3) Install AI Framework : Tensorflow/Keras with Anaconda |
| Kamis, 2 September 2021 | WFH <br />(1) Melanjutkan pembacaan dan pemahaman rujukan paper berikut : Biswas, Dwaipayan, et al. “Heart rate estimation from wrist-worn photople-thysmography: A review.” IEEE Sensors Journal 19.16 (2019): 6560-6570. <br /><br />(2) Membuat ringkasan dari rujukan paper. <br /><br />(3) Install AI Framework : Tensorflow/Keras with Anaconda | WFH <br />(1) Ringkasan rujukan paper Biswas, Dwaipayan, et al. “Heart rate estimation from wrist-worn photoplethysmography: A review.” IEEE Sensors Journal 19.16 (2019): 6560-6570. telah selesai dan dapat diakses melalui : https://drive.google.com/file/d/1IHvJudzWMlD6bFt-7-P9urF56yoxkMuZ/view?usp=sharing <br /><br />(2) Dokumentasi proses instalasi dapat diakses pada tautan berikut :https://drive.google.com/file/d/1wqdiTazuqBwxEk5DYlrZnk1wOcNS5Y25/view?usp=sharing | - | WFH <br />(1) Membaca dan memahami rujukan paper : Ni, Aoxin, Arian Azarang, and Nasser Kehtarnavaz. “A Review of Deep Learning-Based Contactless Heart Rate Measurement Methods.” Sensors 21.11 (2021): 3719. <br /><br />(2) Membaca dan memahami rujukan paper : Rouast, Philipp V., et al. “Remote heart rate measurement using low-cost RGB face video: a technical literature review.” Frontiers of Computer Science 12.5 (2018): 858-872. <br /><br />(3) Membuat ringkasan dari rujukan paper |
| Jumat, 3 September 2021 | WFH <br />(1) Membaca dan memahami rujukan paper : Ni, Aoxin, Arian Azarang, and Nasser Kehtarnavaz. “A Review of Deep Learning-Based Contactless Heart Rate Measurement Methods.” Sensors 21.11 (2021): 3719. <br /><br />(2) Membaca dan memahami rujukan paper : Rouast, Philipp V., et al. “Remote heart rate measurement using low-cost RGB face video: a technical literature review.” Frontiers of Computer Science 12.5 (2018): 858-872. <br /><br />(3) Membuat ringkasan dari rujukan paper | WFH <br />(1) Ringkasan rujukan paper Ni, Aoxin, Arian Azarang, and Nasser Kehtarnavaz. “A Review of Deep Learning-Based Contactless Heart Rate Measurement Methods.” Sensors 21.11 (2021): 3719. telah selesai dan dapat diakses melalui : https://drive.google.com/file/d/1CR_P7c3-SrI23ND_V3lGlrCIuckQimY2/view?usp=sharing <br /><br />(2) Ringkasan rujukan paper Rouast, Philipp V., et al. “Remote heart rate measurement using low-cost RGB face video: a technical literature review.” Frontiers of Computer Science 12.5 (2018): 858-872. telah selesai dan dapat diakses melalui :https://drive.google.com/file/d/1ITSK7vRxrKQbBdT7o7ijr_L1GHO2xLim/view?usp=sharing <br /><br />(3) Laporan mingguan pekan 1 telah selesai dan dapat diakses pada tautan berikut : https://drive.google.com/file/d/19qmZw-UVwIWsNsqLJs18usaVESrPJBOO/view?usp=sharing | - | WFH <br />(1) Membuat laporan kemajuan mingguan dalam format presentasi <br /><br />(2) Melanjutkan tutorial pembelajaran Machine Learning dan TensorFlow/Keras |
---
## Pekan-2 : 6 September 2021 - 10 September 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 6 September 2021 | WFH <br />Presentasi/pelaporan kemajuan mingguan pekan 1 via Zoom | WFH <br />(1) Progress pekan 1 yang dilaporkan yaitu meliputi review ketiga paper yang telah dibaca dan dipahami, proses instalasi dan aktivasi Python, Arduino IDE, serta TensorFlow/Keras sebagai AI Framework, file presentasi yang dilaporkan dapat diakses melalui tautan berikut : https://docs.google.com/presentation/d/1YSzunV75I8Biu3le4ntI8E9L5FSYCjvB/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true <br /><br />(2) Vidcon juga membahas teknis pelaksanaan WFO | - | WFO <br />Pengenalan tools dan pembuatan rencana teknis (penentuan spesifikasi, pembagian subtask, dll) |
| Selasa, 7 September 2021 | WFO<br />(1) Bimbingan MBKM yang diberikan oleh Dosen Pembimbing : <br />1. Prof. Trio Adiono, S.T., M.T., Ph.D.<br />2. Nur Ahmadi, S.T., M.Eng., Ph.D.<br /><br />(2) Software Updating untuk operasikan Health Sensor Band MAXREFDES103#<br /><br />(3) Mengoperasikan Health Sensor Band MAXREFDES103 watch dengan user interface di Windows 10 | WFO<br />(1) Bimbingan membahas mengenai :<br />1. Perbedaan produk output TA dan MBKM serta keterkaitan antara keduanya<br />2. Perbandingan beberapa device yang telah diterbitkan dan/atau dirancang oleh PT. Xirka dengan output project dari TA dan MBKM<br />3. Beberapa konstrain dari output produk TA dan MBKM<br />4. Pengarahan mengenai bagaimana cara menyeleksi jurnal yang akan dijadikan sebagai referensi, dapat menggunakan website scimagojr.com<br />5. Pemberian tugas melakukan eksplorasi jurnal untuk menemukan informasi mengenai alternatif lokasi sensor serta spesifikasi teknis wearable device, lalu melakukan pendataan jurnal yang dieksplorasi pada repository kelompok<br /><br />(2) Langkah-langkah yang dilakukan adalah sebagai berikut.<br />1. Install Maxim DeviceStudio PC GUI melalui https://www.maximintegrated.com/en/design/reference-design-center/system-board/6312.html lalu download Evaluation Package dan lakukan instalasi HSP Eval Kit 5.7.0.6 pada file .msi<br />2. Flash micro broad MAXREFDES103# dengan cara drag and drop binary file dari micro board firmware ke folder DAPLINK untuk upgrade firmware menuju MAX32630<br />3. Flash algoritma file .msbl menuju MAX32664 menggunakan Maxim DeviceStudio PC GUI.<br /><br />(3) Komunikasi yang dilakukan antara device dengan PC menggunakan Bluetooth LE Connection, kemudian pengoperasian dan evaluasi menggunakan Maxim DeviceStudio yang telah terinstall. | - | WFH<br />(1) Eksplorasi jurnal<br /><br />(2) Eksplorasi fitur dan spesifkasi MAXREFDES103# |
| Rabu, 8 September 2021 | WFH<br />(1) Membaca rujukan paper<br /><br />(3) Memahami dataset | WFH<br />(1) Pencarian data-data berikut.<br />* Penyakit penyebab kasus kematian tertinggi di dunia (WHO, 2021)<br />* Persebaran tenaga medis di Indonesia (Badan PPSDM Kesehatan, 2020)<br />* Prosedur dan durasi pemeriksaan EKG di Indonesia (Alodokter, 2020)<br /><br />(2) Paper yang dibaca :<br />Reiss, Attila, et al. "Deep PPG: large-scale heart rate estimation with convolutional neural networks." Sensors 19.14 (2019): 3079.<br /><br />(3) Dataset yang dipelajari adalah PPG-DaLiA sebagai dataset PPG yang digunakan untuk kompensasi MA untuk estimasi HR selama aktivitas sehari-hari | - | WFO<br />(1) Melanjutkan pembacaan paper : <br />Reiss, Attila, et al. "Deep PPG: large-scale heart rate estimation with convolutional neural networks." Sensors 19.14 (2019): 3079.<br /><br />(2) Mengerjakan tugas pekan 2 MBKM |
| Kamis, 9 September 2021 | WFO<br />(1) Membaca dan membuat ringkasan dari rujukan paper<br /><br />(2) Mengoperasikan Health Sensor Band MAXREFDES103# watch dengan user interface di Android. | WFO<br />(1) Paper rujukan yang dibaca :<br />Reiss, Attila, et al. "Deep PPG: large-scale heart rate estimation with convolutional neural networks." Sensors 19.14 (2019): 3079.<br /><br />(2) Program pembacaan heart rate menggunakan MAXREFDES103# watch dengan UI di Android berjalan dengan baik dan akurat. Hasil yang didapatkan dapat diverifikasi dengan hasil yang didapatkan dengan UI di Windows 10. Perubahan keadaan subjek menghasilkan perubahan heart rate. Dalam kondisi resting terkadang pembacaan HR fluktuatif dikarenakan adanya MA yang belum sepenuhnya dapat dikompensasi oleh algoritma. Program dapat pula mendeteksi jumlah steps yang dilakukan oleh subjek dengan memanfaatkan tri-axial accelerometer-nya. | - | WFH<br />(1) Membuat analisis dan visualisasi (exploratory data analysis) dari data publik tentang PPG (rPPG) untuk pemantauan detak jantung<br /><br />(2) Diskusi kelompok mengenai rancangan dan spesifikasi hardware yang akan diusulkan |
| Jumat, 10 September 2021 | WFH<br />(1) Membuat ringkasan dari rujukan paper :<br />Reiss, Attila, et al. "Deep PPG: large-scale heart rate estimation with convolutional neural networks." Sensors 19.14 (2019): 3079.<br /><br />(2) Diskusi kelompok mengenai rancangan dan spesifikasi hardware yang akan diusulkan | WFH<br />Ringkasan rujukan paper telah selesai dan dapat diakses melalui : https://drive.google.com/file/d/1vL0cGHr-VYqY9beFLbSMX6PX6Zf0D9NK/view?usp=sharing | - | WFH<br />Membuat laporan kemajuan mingguan dalam format presentasi |
---
## Pekan-3 : 13 September 2021 - 17 September 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 13 September 2021 | WFH<br />(1) Membuat dan mempersiapkan progress report pekan-2<br /><br />(2) Mempelajari dasar kerja protokol komunikasi yang digunakan antar MCU board dengan sensor hub pada Health Sensor Band MAXREFDES103 | WFH<br />(1) Progress report dapat diakses pada tautan berikut.<br />https://docs.google.com/presentation/d/1KnQtpO7Y1YRF5Rz5s8FSLowCtVq5nhR8/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br />(2) Dasar-dasar protokol komunikasi yang dipelajari, yaitu I2C, UART, SPI | - | WFO<br />Mengkaji algoritma pemrosesan sinyal PPG |
| Selasa, 14 September 2021 | WFO<br />(1)Pelaporan/presentasi progress kelompok pekan 2<br /><br />(2)Membaca paper [Photoplethysmographic Time-Domain Heart Rate Measurement Algorithm for Resource-Constrained Wearable Devices and its Implementation](https://www.mdpi.com/1424-8220/20/6/1783) | WFO<br />(1) Progress report terdiri dari 4 topik utama, yaitu review device Health Sensor Band MAXREFDES103 dari mulai hardware, software, system diagram, architecture system, communication protocol, hingga pengoperasian via platform PC GUI dan App Android, serta pengambilan data dari kedua platform tersebut.<br /><br />(2) Paper membahas mengenai algoritma untuk pengukuran HR menggunakan PPG yang diletakkan pada pergelangan tangan. Algoritma dievaluasi dengan dataset PPG-DaLia. Solusi yang diajukan dari algoritma time-domain heart rate measurement (TDHR) terdiri dari 3 blok utama: signal conditioning, peak detection, dan blok heart-rate-measurement. Algoritma Automatic Multiscale-based Peak Detection (AMPD) dengan bandpass filter/limiter digunakan untuk estimasi HR dalam paper ini. | - | WFH<br />Mempelajari prinsip kerja berbagai communication protocol beserta kelebihan kekurangan dalam implementasinya |
| Rabu, 15 September 2021 | WFH<br />Mempelajari prinsip kerja dan konsep transmisi data pada beberapa protokol komunikasi serial yang digunakan untuk transfer data antar MCU-MCU serta MCU-sensor | WFH<br />Review dari prinsip kerja dan prosedur transmisi data pada protokol komunikasi serial SPI, UART, serta I2C dapat diakses pada tautan berikut.<br />https://docs.google.com/document/d/1Le8EPA8ONBWd9QZuTI4gpAhJB9seIlBP/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFO<br />Evaluasi perangkat bersama engineer Xirka |
| Kamis, 16 September 2021 | WFO<br />Mencoba dan mengevaluasi program dari Perangkat Diagnosis Respirasi Portable Covid-19 yang telah dibuat oleh Xirka bersama Kak Chitrya | WFO<br />Dijelaskan mengenai komponen penyusun alat respirasi portable dan cara pengoperasiannya melalui Arduino IDE. Device menggunakan mikroprosesor ESP32 serta sensor PPG yang memancarkan cahaya hijau. Alat respirasi ini dapat mencetak raw PPG data dan rate SpO2, namun memiliki algoritma deteksi motion artifact yang terbatas. Selain itu juga pada alat ini tidak digunakan accelerometer, sehingga dapat diamati bahwa pemrosesan motion artifact tidak menjadi fokus dalam pembuatannya. Hasil dari pembacaan telah nampak pada serial plotter Arduino IDE. | - | WFH<br />Mempelajari wireless communication protocol |
| Jumat, 17 September 2021 | WFH<br />Mempelajari perbandingan detail teknis pada beberapa protokol komunikasi nirkabel yang digunakan untuk transfer data antar MCU-device | WFH<br />Review dari perbandingan detail teknis pada protokol komunikasi wireless Bluetooth LE, ANT+, ZigBee, serta Z-wave dapat diakses pada tautan berikut.<br />https://docs.google.com/document/d/1gIAu38fiP4NJKEXdbS4mZpEaKKA7Q-2C/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFH<br />Membuat laporan progress mingguan pekan 3 |
---
## Pekan-4 : 20 September 2021 - 24 September 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 20 September 2021 | WFH<br />Diskusi kelompok untuk membahas progress report dan merangkum informasi yang telah didapat selama pekan 3 | WFH<br />Dokumentasi progress report mingguan pekan 3 dapat diakses pada tautan berikut.<br />https://docs.google.com/presentation/d/1BorVsX2kwkq2G2dyMWR9SLaaQXS_t_m2/edit#slide=id.gf107345875_1_14 | - | WFO<br />Pelaporan progress mingguan pekan 3 |
| Selasa, 21 September 2021 | WFO<br />(1) Pelaporan/presentasi progress mingguan pekan 3<br /><br />(2) Mempelajari algoritma pemrosesan raw PPG data | WFO<br />Dokumentasi progress report mingguan pekan 3 dapat diakses pada tautan berikut.<br />https://docs.google.com/presentation/d/1BorVsX2kwkq2G2dyMWR9SLaaQXS_t_m2/edit#slide=id.gf107345875_1_14<br />direvisi agar memuat finger-worn heart rate sensor, salah satunya bernama Oura Ring. | - | WFH<br />Analisis bisnis dan kompetitivitas pasar. |
| Rabu, 22 September 2021 | WFH<br />Diskusi kelompok membahas analisis solusi, analisis pasar, serta model bisnis dari produk perangkat wearable pemantau detak jantung | Pembahasan meliputi (1) finalisasi alternatif solusi serta rubrik penilaian diantara kesemua solusi menggunakan pembobotan kriteria berupa pairwise comparison, kemudian didapatkan solusi untuk diimplementasikan yaitu wrist-worn monitoring device, (2) analisis pasar serta didalamnya dirumuskan rincian biaya masuk-keluar, (3) analisis finansial dengan metode BEP dan NPV untuk melihat proyeksi 5 tahun kedepan apakah investasi yang dilakukan diawal pada biaya NRE menguntungkan atau tidak, sehingga didapatkan kesimpulan proyek layak dijalankan atau tidak, serta (4) model bisnis dari produk perangkat wearable untuk pemantauan detak jantung dengan menggunakan business model canvas | - | WFO<br />Diskusi bersama Pak Nur dan Pak Trio |
| Kamis, 23 September 2021 | WFO<br />Diskusi kemajuan kinerja kelompok pada MBKM bersama Pak Nur dan Pak Trio | WFO<br />Dua masukan utama yang didapat dalam diskusi yaitu<br />(1) Adanya dua jenis biaya yakni non-recurring engineering dan recurring engineering yang perlu diperhitungkan dalam proyek, dimana biaya non-recurring engineering dapat dikatakan sebagai 'investasi awal' yang dikeluarkan sekali untuk biaya development produk, sedangkan biaya recurring engineering besarnya bergantung dengan jumlah unit yang diproduksi karena berkaitan dengan proses manufaktur produk<br /><br />(2) PT Xirka sebagai partner yang melakukan peran dalam proses pengembangan, pembuatan prototipe, testing, dan proses manufaktur | - | WFH<br />Riset mengenai algoritma pengolahan sinyal PPG dan metode penghilangan MA |
| Jumat, 24 September 2021 | WFH<br />Melakukan riset algoritma pengolahan sinyal PPG untuk mendapatkan data Heart Rate subyek dalam beat per minute | WFH<br />Algoritma yang digunakan untuk mendapatkan data Heart Rate dalam bpm dari raw PPG data adalah dengan Digital Signal Processing, referensi didapat dari sumber berikut.<br />(1) [Heart-rate tuned comb filters for processing photoplethysmogram (PPG) signals in pulse oximetry](https://www.researchgate.net/publication/342275366_Heart-rate_tuned_comb_filters_for_processing_photoplethysmogram_PPG_signals_in_pulse_oximetry)<br />(2) https://docs.scipy.org/doc/scipy/tutorial/signal.html <br />(3) https://pythontic.com/visualization/signals/fouriertransform_fft <br />(4) https://www.dsprelated.com/showarticle/194.php <br />(5) https://github.com/waskita/embedded <br /> Raw PPG data didapat dari dataset PPG DaLiA pada subyek 1 dimana pengambilan data dilakukan dengan frekuensi 64 Hz | - | WFH<br />Membuat dokumentasi laporan kemajuan pekan 4 |
---
## Pekan-5 : 27 September 2021 - 1 Oktober 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 27 September 2021 | WFH<br />Implementasi algoritma Digital Signal Processing untuk mendapatkan Heart Rate dari raw PPG data yang diambil dari dataset PPG DaLiA | WFH<br />Implementasi algoritma dilakukan menggunakan Jupyter Notebook dengan bahasa Python 3, dapat diakses melalui tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR.ipynb | - | WFO<br />Membuat dan melakukan progress report pekan 4 |
| Selasa, 28 September 2021 | WFO<br />(1)Melakukan pelaporan/presentasi progress report pekan 4<br /><br />(2) evaluasi terhadap algoritma DSP yang digunakan untuk mendapatkan Heart Rate dari raw PPG data | WFO<br />(1) Dokumentasi presentasi progress report dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/17pmfTIxAuOWKiRJc5DUPfA1s467-j-KL/edit#slide=id.p1 <br /><br />(2) Revisi algoritma dapat diakses melalui tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR.ipynb <br />Beberapa evaluasi dari algoritma yang perlu diperbaiki dan ditinjau ulang yaitu berkaitan dengan penghilangan MA, metode peak detection, serta processing signal dalam domain frekuensi | Masih kesulitan implementasi processing signal dalam domain frekuensi | WFH<br />Memanfaatkan library signal processing yang sudah ada untuk menyederhanakan script code |
| Rabu, 29 September 2021 | WFH<br />Implementasi algoritma Digital Signal Processing dalam domain waktu untuk estimasi Heart Rate dari data mentah PPG dengan penyederhanaan fungsi-fungsi pada library signal processing numpy | WFH<br />Implementasi filtering sinyal dilakukan dengan filter Butterworth IIR 4 pole dengan fs = 64Hz sesuai dengan sampling data Heart Rate yang dilakukan pada dataset PPG_DaLiA. Filter ini dipilih karena respons frekuensinya paling halus, dimana seluruh riak baik pada passband maupun stopband harus dihilangkan, selain itu filter IIR 4 pole dipilih agar perhitungan tidak memberatkan mengingat implementasi algoritma akan dijalankan oleh mikrokontroler. Secara garis besar, proses dimulai dengan melalukan raw PPG signal pada filter lowpass 4 pole dengan fc = 4Hz, yang didapat dari BPM maks 220 ekuivalen dengan 3,667Hz, sehingga frekuensi diatasnya diblok. Kemudian, hasil filter akan diberikan offset dengan cara mengurangkannya dengan hasil filter lowpass 0,2Hz dari raw ppg signal. Lalu, hasil filter dengan offset tersebut akan disearahkan untuk didapatkan threshold yang digunakan untuk peak detection. Threshold ini didapatkan dari hasil filter lowpass 0,2Hz dari sinyal yang disearahkan sebelumnya. Terakhir dilakukan peak detection sehingga didapatkan estimasi Heart Rate. <br /><br />Evaluasi dilakukan dengan membandingkan hasil estimasi Heart Rate dengan data Heart Rate yang didapat dari dataset PPG_DaLiA pada data sampel yang bersesuaian, sehingga didapatkan nilai AAE = 7,621541644128749 ; ARE = 0,13763064561897592 ; SAE = 8,804468215735994. Nilai ini cukup baik mengingat belum dilakukan removal MA.<br /><br />Algoritma dapat diakses melalui akses jupyter notebook berikut.<br />http://localhost:8888/notebooks/analisis_HR_v6_DSP.ipynb | - | WFO<br />Mempelajari pemrosesan sinyal dalam domain frekuensi |
| Kamis, 30 September 2021 | WFO<br />Mencoba estimasi Heart Rate berbasis analisis dalam domain frekuensi | WFO<br />Implementasi algoritma dilakukan menggunakan library signal processing yang tersedia pada python scipy dengan platform jupyter notebook. Pemrosesan dilakukan dengan windowing 8s untuk pengambilan data setiap FFT dengan frekuensi sampling 64Hz sesuai dengan frekuensi sampling data pada dataset PPG_DaLiA. Artinya, tiap FFT akan terbentuk dari 64x8 sampel data untuk selanjutnya didapatkan estimasi Heart Rate. Estimasi Heart Rate didapatkan dengan mencari frekuensi terjadinya peak maksimum pada FFT kemudian dikali 60, sehingga didapatkan BPM.<br /><br />Algoritma dapat diakses melalui akses jupyter notebook berikut.<br />http://localhost:8888/notebooks/analisis_HR_v7_freqdomain.ipynb | - | WFH<br />Membandingkan hasil estimasi Heart Rate yang didapat dengan metode estimasi Heart Rate lainnya |
| Jumat, 1 Oktober 2021 | WFH<br />Membandingkan hasil estimasi Heart Rate dengan algoritma DSP baik time-domain maupun frequency-domain dengan metode estimasi Heart Rate lain | WFH<br />Berdasarkan rujukan paper berikut.<br />(1) https://drive.google.com/file/d/1W2RS-QM0FWNw5Hrv5A296ljCAI2ESLct/view?usp=sharing <br />(2) https://drive.google.com/file/d/1-XB6jxJ3_K81QUFxGdAMMPelsQ9DJpyl/view?usp=sharing <br /><br />Didapatkan bahwa AAE senilai 7,621541644128749 masih terlalu besar dibandingkan implementasi algoritma lain, selain itu running time algoritma DSP masih terlalu lama, sehingga output rate yang dihasilkan terlalu kecil mengingat target output rate minimal 1Hz. | - | WFH<br />Mempelajari metode pemrosesan deep learning untuk menghasilkan kualitas estimasi Heart Rate yang lebih baik |
---
## Pekan-6 : 4 Oktober 2021 - 8 Oktober 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 4 Oktober 2021 | WFH<br />(1) Membuat dan mempersiapkan progress report pekan-5<br /><br />(2) Diskusi kelompok mengenai target akhir spesifikasi produk MBKM | WFH<br />(1) Dokumentasi progress report pekan-5 dapat diakses melalui tautan berikut.<br /> https://docs.google.com/presentation/d/1a0e323LoRB6CmpP9cqOuCZ7FvXr0lfDP/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true <br /><br />(2) Target akhir produk harus didapatkan algoritma detak jantung dengan error dibawah 10 BPM, yang mampu digunakan secara real time untuk embedded system, dibuatnya metode deteksi arrhythmia (contoh: tachycardia, bradycardia, atrial fibrillation) yang mampu membedakan detak jantung normal dan tidak normal di segala kondisi (baik intensitas pergerakan rendah maupun tinggi), dibuatnya aplikasi Android yang mampu menayangkan data detak jantung serta pernyataan adanya ketidaknormalan atau tidak secara real time, serta adanya prototype pembangunan sistem baik software maupun hardware | Verifikasi tiap spesifikasi perlu dilakukan riset lebih mendalam karena beberapa spesifikasi perlu beberapa verifikasi sekaligus | WFO<br />Riset nilai dari spesifikasi serta pemenuhan dari tiap syaratnya |
| Selasa, 5 Oktober 2021 | WFO<br />(1) Melakukan pelaporan/presentasi laporan progress kelompok pekan-5<br /><br />(2) Riset mengenai nilai ideal untuk diimplementasikan dari beberapa spesifikasi | WFO<br />(1) Dokumentasi progress report pekan-5 dapat diakses melalui tautan berikut.<br /> https://docs.google.com/presentation/d/1a0e323LoRB6CmpP9cqOuCZ7FvXr0lfDP/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true <br /><br />(2) Riset mengenai nilai ideal untuk diimplementasikan dari Output Rate (HR), Output Rate (HRV), Akurasi HR, Akurasi HRV, dan Delay untuk pemenuhan kelima syarat dari spesifikasi produk | - | WFH<br />Riset lanjutan nilai dari spesifikasi serta pemenuhan dari tiap syaratnya |
| Rabu, 6 Oktober 2021 | WFH<br />(1) Mencari kelemahan dari algoritma DSP yang telah diimplementasikan sebelumnya<br /><br />(2) Mencari solusi untuk mengatasi kelemahan algoritma DSP | WFH<br />(1) Evaluasi yang dilakukan sebelumnya dengan membandingkan hasil estimasi Heart Rate dengan data Heart Rate yang didapat dari dataset PPG_DaLiA pada data sampel yang bersesuaian hanya dilakukan pada 620 sampel, sehingga error yang didapat yaitu AAE = 7,621541644128749 kurang merepresentasikan kualitas algoritma. Kemudian dilakukan modifikasi algoritma sehingga dapat melakukan pengambilan seluruh sampel data dan dicari AAE yang lebih merepresentasikan kualitas algoritma, sehingga didapat AAE = 23,724227503084556. Setelah dicari tahu penyebabnya mengapa nilai AAE begitu besar, didapatkan salah satu alasan, yaitu dikarenakan pada algoritma ini tidak dilakukan sama sekali dekomposisi sinyal, namun hanya dilakukan filtering saja, sehingga komponen MA yang diblok hanya komponen frekuensi yang diblok oleh filtering, padahal masih ada komponen MA berfrekuensi yang dilewatkan filtering. Maka dari itu sinyal masih bercampur MA.<br /><br />(2) Solusinya yaitu dengan melewatkan hasil filtering bandpass menuju dekomposisi sinyal, kemudian sinyal disimpan pada temporal filtering, kemudian barulah sinyal direkonstruksi ulang dengan resolusi tinggi. Solusi ini mengadaptasi algoritma TROIKA dimana untuk dekomposisi sinyal digunakan metode SSA, sedangkan rekonstruksi sinyal menggunakan metode SSR. Kemudian, sinyal hasil rekonstruksi inilah yang ditransform FFT dan dianalisis 3 puncak yang saling bertetangga.<br /><br />Implementasi algoritma dilakukan pada Jupyter Notebook dengan mengakses tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR_v9_TROIKA.ipynb | - | WFO<br />Melanjutkan implementasi algoritma TROIKA |
| Kamis, 7 Oktober 2021 | WFO<br />(1) Menyelesaikan implementasi algoritma TROIKA<br /><br />(2) Proses debugging algoritma | WFO<br />(1) Implementasi algoritma dilakukan berdasarkan rujukan alur framework TROIKA yang dipaparkan pada rujukan berikut.<br />Zhilin Zhang, Zhouyue Pi, Benyuan Liu, ‘‘TROIKA: A General Framework for Heart Rate Monitoring Using Wrist-Type Photoplethysmographic Signals During Intensive Physical Exercise,’’IEEE Trans. on Biomedical Engineering, vol. 62, no. 2, pp. 522-531, February 2015.<br /><br />(2) Implementasi algoritma sekaligus proses debugging dilakukan pada Jupyter Notebook dengan mengakses tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR_v9_TROIKA.ipynb | - | WFH<br />Evaluasi algoritma menggunakan dataset IEEE |
| Jumat, 8 Oktober 2021 | WFH<br />(1) Evaluasi algoritma TROIKA yang telah diimplementasikan<br /><br />(2) Membuat presentasi progress report mingguan pekan-6 | WFH<br />(1) Evaluasi dilakukan dengan membandingkan hasil estimasi Heart Rate dengan data ground truth Heart Rate yang didapat dari dataset IEEE pada data sampel yang bersesuaian, sehingga didapatkan nilai AAE = 13,625362412820511. Nilai ini lebih baik dibandingkan algoritma DSP yang diimplementasikan pekan sebelumnya. Hal ini dikarenakan pada algoritma TROIKA telah dilakukan blocking terhadap seluruh komponen MA, dimana spektrum frekuensinya yang diantara 0,4-5Hz diblok pada tahap preprocessing menggunakan bandpass filter, sedangkan spektrum frekuensi yang diluar 0,4-5Hz diblok pada tahap dekomposisi sinyal menggunakan SSA. Selain itu, pada algoritma ini juga telah dibentuk agregat dari 3 sumbu data accelerometer, sehingga dapat dibentuk pula FFT-nya. FFT accelerometer dan FFT ppg kemudian dianalisis untuk didapatkan puncak yang tepat merepresentasikan estimasi HR. Pada algoritma ini juga dibentuk parameter confidence yang merepresentasikan derajat keterpercayaan dari estimasi HR, 90% estimasi HR terbaik diambil dari data diatas persentil ke-10.<br /><br />(2) Dokumentasi presentasi progress report mingguan pekan-6 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1cvAvXHTckE4xPyKo8hzEfTDx_dDUczYa/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFH<br />Eksplorasi metode pendekatan AI untuk estimasi HR |
---
## Pekan-7 : 11 Oktober 2021 - 15 Oktober 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 11 Oktober 2021 | WFH<br />(1) Mempelajari dan memahami konsep neural network dan Convolutional Neural Network (CNN)<br /><br />(2) Memahami framework dari pendekatan algoritma Deep Learning untuk estimasi HR menggunakan model architecture CNN | WFH<br />(1) Pemahaman konsep neural network dan Convolutional Neural Network dilakukan melalui penjelasan oleh channel 3Blue1Brown dan open course yang diselenggarakan institusi MIT berikut.<br />- https://www.youtube.com/watch?v=aircAruvnKk<br />- https://www.youtube.com/watch?v=iaSUYvmCekI<br /><br />(2) Pemahaman framework dari pendekatan algoritma Deep Learning untuk estimasi HR menggunakan model architecture CNN dilakukan berdasarkan rujukan paper berikut.<br />Ni, Aoxin, Arian Azarang, and Nasser Kehtarnavaz. “A Review of Deep Learning-Based Contactless Heart Rate Measurement Methods.” Sensors 21.11 (2021): 3719.<br />Ringkasan model architecture berdasarkan paper tersebut dapat diakses melalui tautan berikut.<br />https://docs.google.com/document/d/1Y3yZHBFG5BXx0U0N_-0UTKyAWtFpXmom/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | Butuh waktu lama memahami pendekatan deep learning karena sesuatu yang baru bagi pribadi | WFO<br />Implementasi preprocessing signal untuk persiapan pendekatan algoritma deep learning model CNN |
| Selasa, 12 Oktober 2021 | WFO<br />(1) Melakukan pelaporan/presentasi progress report mingguan pekan-6<br /><br />(2) Implementasi preprocessing signal untuk persiapan pendekatan algoritma deep learning model CNN | WFO<br />(1) Presentasi memuat 6 topik utama, yaitu wiener filtering, RLS adaptive tracking, kalman filtering, wavelet transform, estimasi HR menggunakan algoritma TROIKA dan perbandingannya dengan algoritma DSP, serta bluetooth-to-android connection. Dokumentasi presentasi progress report mingguan pekan-6 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1cvAvXHTckE4xPyKo8hzEfTDx_dDUczYa/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br /><br />(2) Proses preprocessing signal dilakukan dengan sinyal time-series disegmentasi menggunakan sliding 8-s window dengan shifting 2-s window (step time 2s) atau dengan kata lain overlap 6s. Kemudian diterapkan FFT pada tiap segmentasi sinyal time-series ini, lalu frekuensi diatas 4 Hz dipotong untuk memastikan spektrum hanya pada interval 0-4Hz (4Hz -> 240bpm). Terakhir, FFT ini akan dinormalisasi.<br />Implementasi algoritma dilakukan pada Jupyter Notebook dengan mengakses tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR_v8_CNN.ipynb | - | WFH<br />Melanjutkan implementasi dan pemahaman pendekatan deep learning model CNN |
| Rabu, 13 Oktober 2021 | WFH<br />(1) Mencari referensi penggunaan Machine Learning untuk mengenali aktifitas subjek<br /><br />(2) Mencoba metode Transfer Learning untuk Human Activity Recognation hingga melakukan training dataset | WFH<br />(1) Didapatkan paper yang menurut saya sangat baik dijadikan rujukan awal karena alur dan teknis berpikir algoritma dijelaskan secara rinci.<br />Brophy, Eoin and Muehlhausen, Willie and Smeaton, Alan F. and Ward, Tomas. "CNNs for Heart Rate Estimation and Human Activity Recognition in Wrist Worn Sensing Applications." {IEEE} International Conference on Pervasive Computing and Communications, 2020.<br /><br />(2) Dataset yang digunakan terdiri dari 9 subjek dengan perlakuan 4 aktivitas berbeda, yaitu bersepeda santai, bersepeda berat, jalan kaki, dan berlari. Tipe ML yang digunakan adalah supervised learning dengan label {'high', 'low', 'walk', 'run'}. Modifikasi implementasi algoritma sesuai kebutuhan, implementasi dilakukan pada Google Colab dan dapat diakses melalui tautan berikut.<br />https://drive.google.com/drive/folders/1WmHfpPuBW2mUXED0J17aXLTgQY7nvpwc?usp=sharing | Training dataset membutuhkan waktu sekitar 5 jam, sehingga menghambat progress pengembangan dan modifikasi algoritma, salah satunya disebabkan karena hanya mengeksploitasi CPU. Masih kesulitan untuk memanfaatkan distributed programming dengan GPU. | WFO<br />Melanjutkan implementasi algoritma untuk testing dataset |
| Kamis, 14 Oktober 2021 | WFO<br />(1) Membuat model pendekatan deep learning untuk training metode CNN<br /><br />(2) Testing data untuk mendapatkan error estimasi HR dan akurasi HAR dengan metode pendekatan CNN | WFO<br />(1) Modifikasi model arsitektur CNN untuk pengenalan objek berupa gambar plotting grafik raw ppg dan acc 3-axis dilakukan dengan menggabungkan recurrent connection ke masing-masing convolutional layer sehingga membentuk model arsitektur RCNN. Model RCNN ini diterapkan untuk mengatasi sedikitnya parameter yang tersedia. Implementasi pembuatan model arsitektur RCNN dilakukan pada Google Colab pada tautan berikut.<br />https://drive.google.com/file/d/1xCvQ-5Qx2txvTvRElxK1RwhTHViL-T2A/view?usp=sharing<br /><br />(2) Testing data dilakukan pada 256Hz (frekuensi sampling asli) yang kemudian didownsampling menjadi 3 frekuensi sampling 30Hz, 10Hz, 5Hz. Kemudian, dengan menggunakan keempat frekuensi sampling ini didapatkan akurasi HAR masing-masing 90.8%, 82.3%, 83%, 80.2%. Didapatkan ternyata dengan model RCNN ini dapat diturunkan frekuensi sampling dari pengolahan data sehingga mengurangi beban komputasi MCU sehingga konsumsi daya device berkurang. Kemudian dengan menggunakan frekuensi sampling 10Hz, error estimasi didapatkan dengan teknik regresi untuk memetakan sinyal PPG dari campuran MA, sehingga didapatkan AAE 19.3, 21.87, 18.49, 28.41 masing-masing untuk label aktivitas (high, low, run, walk). Implementasi algoritma pada Google Colab pada tautan berikut dengan pemrosesan dilakukan pada GPU.<br />https://drive.google.com/file/d/1iPXuepzUvCMN0DNgVqDU306un_Rl9JtJ/view?usp=sharing | Running time terlalu lama sehingga jumlah epoch perlu diturunkan sebanyak 80%, sehingga error dan akurasi tidak terlalu baik | WFH<br />Membandingkan hasil estimasi HR dengan frekuensi sampling 10Hz dengan frekuensi sampling asli 256Hz |
| Jumat, 15 Oktober 2021 | WFH<br />(1) Merumuskan 3 konsep sistem yang akan dikaji model arsitektur hingga algoritma utamanya untuk dianalisis yang mana yang paling reliable dengan kebutuhan dan spesifikasi produk<br /><br />(2) Membuat dokumentasi laporan kemajuan pekan-7 | WFH<br />(1) Konsep sistem yang akan dikaji didasarkan pada letak pemrosesan raw data yang diakuisisi oleh sensor, yaitu pada wearable device (on-board), android, atau cloud. Beberapa konsiderasi yang harus dipertimbangkan yaitu perihal kompleksitas dalam implementasi, biaya perancangan, pengembangan, serta keandalan yang mencakup konsumsi daya, akurasi estimasi, dan konektivitas. Sampai sejauh ini pilihan yang paling reliable adalah konsep sistem dengan pemrosesan data pada android dimana tahap preprocessing dapat dilakukan on-board.<br /><br />(2) Dokumentasi dapat diakses pada tautan berikut.<br />https://docs.google.com/presentation/d/1l-y0qV6kG9fPua2h6PQGq5b1RKlJJvqn/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFH<br />Mencari cara mengatasi running time yang terlalu lama namun tetap mengeutamakan akurasi |
---
## Pekan-8 : 18 Oktober 2021 - 22 Oktober 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 18 Oktober 2021 | WFH<br />(1) Mempelajari dan memahami konsep Recurrent Neural Network (RNN)<br /><br />(2) Memahami perbedaan penggunaan pendekatan deep learning model RNN dengan model RCNN untuk mengenali aktivitas subjek | WFH<br />(1) Ide utama RNN adalah memorisasi, dimana pemrosesannya dipanggil berulang-ulang untuk memroses masukan yang biasanya adalah data sekuensial, artinya pada model ini raw data tidak dianggap sebagai image, namun sebagai data yang berurut berdasarkan waktu yang kemudian akan diproses sampel per sampel. Teknik training RNN yaitu dengan mempropagasi error dengan adanya efek dari next states of hidden layer. Rujukan eksplorasi konsep pada tautan berikut.<br />https://www.youtube.com/watch?v=LHXXI4-IEns<br />https://www.youtube.com/watch?v=WCUNPb-5EYI<br /><br />(2) RCNN sangat baik dilakukan untuk object recognition dimana masukan berupa gambar, sedangkan RNN masukannya berupa data sekuensial yang kemudian diproses sampel per sampel. Pemrosesan menggunakan RNN jauh lebih ringan dibandingkan RCNN namun akurasi tetap bagus. Pemahaman dilakukan berdasarkan rujukan paper berikut.<br />Ming L, Xiaolin H. Recurrent Convolutional Neural Network for Object Recognition. CVPR2015, 3367. | - | WFH<br />Membuat laporan kemajuan pekan-7 |
| Selasa, 19 Oktober 2021 | WFO<br />(1) Pelaporan/presentasi progress mingguan pekan-7<br /><br />(2) Implementasi preliminary cleaning data mentah PPG dan 3-axis accelerometer untuk persiapan pendekatan algoritma deep learning model RNN | WFO<br />(1) Dokumentasi dapat diakses pada tautan berikut.<br />https://docs.google.com/presentation/d/1l-y0qV6kG9fPua2h6PQGq5b1RKlJJvqn/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br />(2) Preliminary cleaning data dilakukan untuk mendeteksi adanya spikes, termasuk data-data yang tidak valid yang dapat disebabkan karena gangguan pada saluran komunikasi pada saat proses akusisi oleh sensor. Biasanya hanya berupa data tunggal, sehingga dapat dibersihkan dengan mudah dengan menginterpolasikan dua titik yang berdekatan. Implementasi algoritma dilakukan pada Google Colab melalui akses tautan berikut.<br />https://drive.google.com/file/d/1zldKOsq3Y-7Y0yBkEoGReDzNM4fic-X9/view?usp=sharing | Kesulitan dalam implementasi pendekatan deep learning model RNN dengan menggunakan data sekuensial karena sebelumnya lebih sering masukan berupa image pada pendekatan deep learning | WFH<br />Mencari referensi mengenai bagaimana pengenalan aktivitas subjek dengan model RNN |
| Rabu, 20 Oktober 2021 | Libur Maulid Nabi SAW | Libur Maulid Nabi SAW | Libur Maulid Nabi SAW | Libur Maulid Nabi SAW |
| Kamis, 21 Oktober 2021 | WFH<br />(1) Memahami framework dari pendekatan algoritma Deep Learning untuk pengenalan aktivitas subjek menggunakan model architecture RNN<br /><br />(2) Mencoba metode RNN untuk Human Activity Recognation hingga melakukan training dataset | WFH<br />(1) Pemahaman framework dari pendekatan algoritma Deep Learning untuk pengenalan aktivitas subjek menggunakan model architecture RNN dilakukan berdasarkan rujukan paper berikut.<br />Alessandrini, M.; Biagetti, G.; Crippa, P.; Falaschetti, L.; Turchetti, C. Recurrent Neural Network for Human Activity Recognition in Embedded Systems Using PPG and Accelerometer Data. Electronics 2021, 10, 1715.<br /><br />(2) Dataset yang digunakan terdiri dari 7 subjek dengan perlakuan 3 aktivitas berbeda, yaitu resting, squat, stepper. Sensor yang digunakan pada dataset ini adalah MAXREFDES100 dengan frekuensi sampling 400Hz yang akan mengakuisisi raw data PPG dan 3-axis accelerometer data. Training set diambil dari 5 subjek, sedangkan data dari 2 subjek lainnya akan digunakan sebagai test set. Modifikasi implementasi algoritma sesuai kebutuhan, implementasi dilakukan pada Google Colab dan dapat diakses melalui tautan berikut.<br />https://drive.google.com/file/d/1zldKOsq3Y-7Y0yBkEoGReDzNM4fic-X9/view?usp=sharing | - | WFH<br />Mempelajari cara membuat model arsitektur RNN |
| Jumat, 22 Oktober 2021 | WFH<br />(1) Membuat model pendekatan deep learning untuk training metode RNN<br /><br />(2) Training dan testing RNN untuk mendapatkan akurasi HAR dengan metode pendekatan RNN | WFH<br />(1) Sebelum pembuatan model, raw data yang telah dilalui preprocessing yang memuat preliminary cleaning data akan didownsampling dengan menggunakan teknik decimation untuk menghindari signal processing yang akan membebani komputasi, kemudian dilalui sliding window dengan lebar 1200 dan overlap 600, kemudian data akan di oversampling. Setelah itu barulah dimulai pembuatan model arsitektur RNN dengan mengkombinasikan fully connected layers dan sel LSTM.<br /><br />(2) Testing dilakukan menggunakan beberapa decimation factor (sehingga frekuensi samplingnya bervariasi) dengan total 50 training epoch.<br /><br />Implementasi algoritma pada Google Colab dapat diakses pada tautan berikut.<br />https://drive.google.com/file/d/1zldKOsq3Y-7Y0yBkEoGReDzNM4fic-X9/view?usp=sharing | - | WFH<br />Evaluasi akurasi pengenalan aktivitas subjek menggunakan model RNN |
---
## Pekan-9 : 25 Oktober 2021 - 29 Oktober 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 25 Oktober 2021 | WFH<br />(1) Evaluasi akurasi HAR dari pendekatan deep learning dengan model arsitektur RNN<br /><br />(2) Membandingkan performansi algoritma pendekatan signal processing dengan pendekatan deep learning | WFH<br />(1) Didapatkan akurasi pengenalan aktivitas subjek 1,2,3,4,5,6,7 masing-masing sebesar 89.11%, 72.59%, 92.54%, 96.68%, 90.27%, 95.19%, 96.47%. Implementasi algoritma pada Google Colab dapat diakses pada tautan berikut.<br />https://drive.google.com/file/d/1zldKOsq3Y-7Y0yBkEoGReDzNM4fic-X9/view?usp=sharing<br /><br />(2) Pada analisis perbandingan performansi algoritma berbasis signal processing (DSP, TROIKA) dengan algoritma berbasis deep learning (CNN, RNN) terhadap dua parameter (AAE HR, akurasi HAR) didapatkan kesimpulan bahwa untuk estimasi HR, pendekatan signal processing lebih baik dari segi kompleksitas dan running time (perlu dipertimbangkan untuk pemrosesan real time) serta banyak AAE pada pendekatan ini lebih baik dibandingkan deep learning. Sedangkan untuk pengenalan aktivitas subjek, pada algoritma yang telah dieksplorasi, hanya pendekatan deep learning yang bisa melakukannya. Kemudian dengan meninjau kompleksitas dengan akurasi yang tidak jauh berbeda, maka disimpulkan RNN lebih cocok untuk dipilih. | - | WFH<br />Membuat dokumentasi laporan kemajuan pekan-8 |
| Selasa, 26 Oktober 2021 | WFO<br />(1) Pelaporan/presentasi progress mingguan pekan-8<br /><br />(2) Merumuskan algoritma apa saja yang akan diperbandingkan performansinya serta dataset apa saja yang akan digunakan | WFO<br />(1) Dokumentasi laporan kemajuan pekan-8 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1J2bQQMhyK3TPVkMhGQlY3L2UsAqPZ_jV/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br />(2) Dari pendekatan signal processing, algoritma yang akan diuji yaitu algoritma SpaMA, DSP, dan TROIKA, sedangkan dari pendekatan deep learning, algortima yang akan diuji yaitu model CNN dan RNN. Dataset yang akan digunakan dalam pengujian tiap algoritma adalah dataset IEEE_Training, IEEE_Test, WESAD, dan PPG_DaLiA. | - | WFH<br />Menguji algoritma SpaMA dan DSP menggunakan dataset IEEE_Training dan IEEE_Test |
| Rabu, 27 Oktober 2021 | WFH<br />(1) Implementasi dan modifikasi algoritma SpaMA/DSP pada dataset IEEE_Training, IEEE_Test, dan PPG_DaLiA<br /><br />(2) Evaluasi AAE tiap algoritma berdasarkan dataset yang bersesuaian | WFH<br />(1) Implementasi dan modifikasi algoritma dilakukan pada Jupyter Notebook dan dapat diakses melalui tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR_v6_DSP.ipynb<br /><br />(2) Evaluasi menggunakan dataset PPG_DaLiA didapatkan rata-rata AAE tiap subjek sebesar 23,724227503084556 dikarenakan pada algoritma ini tidak dilakukan sama sekali dekomposisi sinyal, namun hanya dilakukan filtering saja, sehingga komponen MA yang diblok hanya komponen frekuensi yang diblok oleh filtering, padahal masih ada komponen MA berfrekuensi yang dilewatkan filtering. Maka dari itu sinyal masih bercampur MA. Evaluasi menggunakan dataset lain tidak berhasil dilakukan dikarenakan format data yang belum berhasil dibaca dikarenakan single-channel PPG yang digunakannya | Format dataset selain PPG_DaLiA belum berhasil dibaca | WFO<br />Mengevaluasi algoritma menggunakan dataset lain |
| Kamis, 28 Oktober 2021 | WFO<br />(1) Implementasi dan modifikasi algoritma TROIKA pada dataset IEEE_Training, IEEE_Test, dan WESAD<br /><br />(2) Evaluasi AAE tiap algoritma berdasarkan dataset yang bersesuaian | WFO<br />(1) Implementasi dan modifikasi algoritma dilakukan pada Jupyter Notebook dan dapat diakses melalui tautan berikut.<br />http://localhost:8888/notebooks/analisis_HR_v10_TROIKAv2.ipynb<br />Pada algoritma ini dilakukan modifikasi dari sebelumnya sehingga dapat diperoleh data estimasi dan referensi HR yang berkorespodensi<br /><br />(2) Evaluasi yang berhasil dilakukan menggunakan dataset IEEE_Training dan IEEE_Test. Pada dataset IEEE_Training dilakukan evaluasi pada 12 subjek dengan hasil rata-rata AAE subjek 1 hingga 12 sebesar 13.2591667, cukup berbeda jauh dengan AAE yang didapatkan oleh referensi paper sebesar 2.42083333. Sedangkan pada dataset IEEE_Test dilakukan evaluasi pada 10 subjek dengan hasil rata-rata AAE sebesar 11.8730. | Dataset WESAD tidak berhasil dibaca karena menggunakan dual-channel PPG | WFH<br />Mencari cara untuk evaluasi algoritma TROIKA menggunakan dataset WESAD |
| Jumat, 29 Oktober 2021 | WFH<br />(1) Implementasi dan modifikasi algoritma estimasi HR dan pengenalan/klasifikasi aktifitas subjek dengan menggunakan pendekatan deep learning pada model arsitektur CNN dan Transfer Learning<br /><br />(2) Evaluasi AAE dan error akurasi algoritma berdasarkan dataset yang bersesuaian | WFH<br />(1) Implementas dan modifikasi algoritma dilakukan pada Google Colab dan dapat diakses melalui tautan berikut.<br />https://drive.google.com/drive/folders/1AE1eJjXuzATbyhoL7GbwYA_WDOGeyAJs?usp=sharing<br /><br />(2) Evaluasi AAE yang berhasil dilakukan hanya menggunakan dataset bawaan dari referensi yang terdiri dari 9 subjek dengan perlakuan 4 aktivitas berbeda, dan didapatkan AAE 19.3, 21.87, 18.49, 28.41 masing-masing untuk label aktivitas (high, low, run, walk). Dari dataset tersebut juga berhasil dievaluasi akurasi pengenalan aktivitas subjek dengan menggunakan 3 frekuensi sampling 30Hz, 10Hz, 5Hz dan didapatkan akurasi HAR masing-masing 90.8%, 82.3%, 83%, 80.2%. Sedangkan untuk dataset lain didapatkan evaluasi dari referensi paper. Untuk IEEE_Training didapatkan rata-rata AAE dari 12 subjek sebesar 3.995. Untuk IEEE_Test didapatkan rata-rata AAE dari 10 subjek sebesar 16.506. Untuk dataset WESAD didapatkan rata-rata AAE untuk 17 subjek sebesar 7.47. | Training dan testing model CNN sangat berat dengan penggunaan CPU | WFH<br />Mengevaluasi akurasi pengenalan aktivitas subjek dengan model RNN |
## Pekan-10 : 1 November 2021 - 5 November 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 1 November 2021 | WFH<br />(1) Implementasi dan modifikasi algoritma pengenalan/klasifikasi aktifitas subjek dengan menggunakan pendekatan deep learning pada model arsitektur RNN<br /><br />(2) Evaluasi error akurasi algoritma berdasarkan dataset yang bersesuaian<br /><br />(3) Analisis perbandingan keandalan tiap algoritma pada dataset yang bersesuaian | WFH<br />(1) Implementasi dan modifikasi algoritma dilakukan pada Google Colab dan dapat diakses melalui tautan berikut.<br />https://drive.google.com/drive/folders/188-JhEFz8GLhqVktsHqax4q1gGAaHYls?usp=sharing<br /><br />(2) Didapatkan akurasi pengenalan aktivitas subjek 1,2,3,4,5,6,7 masing-masing sebesar 89.11%, 72.59%, 92.54%, 96.68%, 90.27%, 95.19%, 96.47%. Dataset yang digunakan masih bawaan dari referensi paper. Untuk AAE tidak didapatkan karena pada dataset tersebut tidak disertakan gound-truth HR dari subjek.<br /><br />(3) Analisis perbandingan performansi AAE tiap algoritma yang dievaluasi ditampilkan dalam bentuk tabel masing-masing dataset, dapat diakses pada tautan dokumentasi pelaporan kemajuan pekan-9 berikut.<br />https://docs.google.com/presentation/d/1fO0guT8lVTewAMfaBddbTzk3fegZBRco/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | Masih belum dapat mengevaluasi AAE dari estimasi HR menggunakan model RNN | WFO<br />Pelaporan progress mingguan pekan 9 |
| Selasa, 2 November 2021 | WFO<br />(1) Pelaporan/presentasi progress mingguan pekan-9<br /><br />(2) Eksplorasi cara mengkombinasikan estimasi HR yang menggunakan signal processing dengan pengenalan/klasifikasi aktifitas subjek yang menggunakan pendekatan deep learning | WFO<br />(1) Dokumentasi pelaporan kemajuan pekan-9 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1fO0guT8lVTewAMfaBddbTzk3fegZBRco/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br />(2) Rencana pemrosesan yang akan dilakukan yaitu pemrosesan signal processing dan deep learning berjalan secara paralel, dimana dari akusisi data oleh sensor kemudian akan diproses dengan pendekatan deep learning untuk mengenali aktivitas subjek, kemudian dari klasifikasi aktivitas ini dapat diperoleh range HR normalnya, sehingga estimasi HR yang didapatkan dari pemrosesan signal processing dapat diketahui apakah kelainan atau tidak dari range HR normal berdasarkan aktivitas subjeknya. | Kesulitan dalam mencari referensi karena paper yang menjelaskan crossing dua algoritma pendekatan ini sangat sedikit | WFH<br />Eksplorasi lebih lanjut mengenai metode yang akan diimplementasikan |
| Rabu, 3 November 2021 | WFH<br />(1) Menetapkan metode pendekatan deep learning yang paling sesuai untuk pengenalan aktivitas subjek<br /><br />(2) Melakukan preprocessing terhadap dataset MAXREFDES | WFH<br />(1) Beberapa yang harus dipertimbangkan yaitu aktivitas subjek dikenali dari data akuisisi time-based (PPG dan 3-axis accelerometer) yang diakuisisi menggunakan sensor yang diletakkan pada pergelangan tangan. Pemrosesan akan dilakukan pada android, artinya sangat bergantung pada RAM dan storage android. Sehingga model arsitektur yang paling realiable adalah model RNN-LSTM untuk mengatasi back propagation yang timbul pada data yang berbentuk time-series.<br /><br />(2) Dalam perancangan model deep learning digunakan dataset yang diakuisisi menggunakan sensor MAX30102 pada MAXREFDES. Preprocessing raw data PPG dan 3-axis accelerometer memuat preliminary cleaning data untuk membuang data-data yang tidak valid. | - | WFO<br />Melakukan variasi terhadap sliding window dan overlap yang akan mempengaruhi spesifikasi input dari model |
| Kamis, 4 November 2021 | WFO<br />(1) Melakukan variasi terhadap besar sliding window dan overlap sampel untuk mendapatkan variasi terbaik<br /><br />(2) Memodifikasi model arsitektur RNN dengan 3 layer LSTM | WFO<br />(1) Variasi besar sliding window dilakukan pada besar 1200 (3s) dan 1600 (4s), sedangkan overlap ditetapkan sebesar 50% dari window yang dipilih dimana menghasilkan akurasi yang tinggi secara konstan didasarkan pada referensi berikut.<br />Alessandrini, M.; Biagetti, G.; Crippa, P.; Falaschetti, L.; Turchetti, C. Recurrent Neural Network for Human Activity Recognition in Embedded Systems Using PPG and Accelerometer Data. Electronics 2021, 10, 1715.<br /><br />(2) Pada preprocessing data setelah preliminary cleaning data, data yang telah bersih kemudian dioversampling untuk menyetarakan penyebaran kelas aktivitas. Model RNN dibangun dengan 3 layer LSTM dimana tiap setelah layer data didropout untuk menghindari overfitting. Dua dense layer ditambahkan pula sebagai input dan output layer. Pada bagian input, data dinormalisasi terlebih dahulu. Input shape : (window, 4) | - | WFH<br />(1) Melakukan pemisahan pada dataset untuk training dan testing<br /><br />(2) Training dan testing model |
| Jumat, 5 November 2021 | WFH<br />(1) Melakukan training model<br /><br />(2) Menguji model terhadap data uji yang telah disiapkan | WFH<br />Dataset yang digunakan terdiri dari 7 subjek dengan perlakuan 3 aktivitas berbeda, yaitu resting, squat, stepper. Training set diambil dari 5 subjek pertama, sedangkan 2 subjek lainnya digunakan sebagai testing set. Dengan sliding window 1600 dan 1200, overlap 50%, RNN-LSTM 3 layer, 4 fitur (PPG dan 3-axis accelerometer), dan 3 kelas aktivitas, implementasi dilakukan pada Google Colab dan dapat diakses melalui tautan berikut.<br />https://colab.research.google.com/drive/1OjhJppnAiYpqP-3BTqDWocR3ReyEAYku?usp=sharing | Training model dengan hyper-parameter yang tidak sesuai dapat sangat membebani prosesor | WFH<br />Evaluasi hasil training dan testing model dan menentukan desain model terbaik |
## Pekan-11 : 8 November 2021 - 12 November 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 8 November 2021 | WFH<br />(1) Melakukan evaluasi terhadap pendekatan deep learning dengan arsitektur RNN-LSTM untuk pengenalan aktivitas subjek<br /><br />(2) Membuat dokumentasi pelaporan kemajuan pekan 10 | WFH<br />(1) Evaluasi terhadap pendekatan deep learning dengan arsitektur RNN-LSTM untuk pengenalan aktivitas subjek dilakukan dengan menggunakan confusion matrix dan visualisasi akurasi dan error pada tensorboard. Didapatkan pada window 1600, epoch 50, menghasilkan training akurasi 0.9879 dan testing akurasi 0.9642, sedangkan pada window 1200, epoch 100, menghasilkan training akurasi 0.9391 dan testing akurasi 0.9428.<br /><br />(2) Dokumentasi pelaporan kemajuan pekan-10 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/15mfklBeXGirRxLOGZGXkLgjiWvNaACVL/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFO<br />Melaporkan kemajuan pekan 10 |
| Selasa, 9 November 2021 | WFO<br />(1) Pelaporan/presentasi kemajuan pekan 10<br /><br />(2) Mempelajari cara ekstraksi fitur pada data accelerometer termasuk fitur-fitur apa yang diperlukan | WFO<br />(1) Pada pekan 10 telah dilakukan variasi hyper parameter pada jumlah epoch dan besar sliding window untuk menentukan kombinasi terbaik dengan pertimbangan besar testing akurasi, kompleksitas komputasi, serta durasi training data<br /><br />(2) Penentuan fitur-fitur accelerometer domain waktu dan domain frekuensi apa saja yang esensial untuk mengenali aktivitas subjek dilakukan berdasarkan rujukan paper berikut.<br />Zhu et al, Feature extraction for robust physical activity recognition, Human-cenctic computing and information sciences. (2017) 7:16 | Sangat sedikit kajian mengenai fitur-fitur esensial pada data accelerometer yang berguna untuk pengenalan aktivitas subjek | WFH<br />Memvariasikan hyper-parameter pada jumlah layer dan hidden unit, dan jumlah fitur |
| Rabu, 10 November 2021 | WFH<br />(1) Eksplorasi cara mengoptimalkan kombinasi penggunaan hyper-parameter<br /><br />(2) Modifikasi model arsitektur RNN menjadi 2-layer LSTM namun hidden-unit ditingkatkan | WFH<br />(1) Hyper parameter yang perlu divariasikan yaitu jumlah epoch, jumlah layer beserta hidden unitnya, jumlah fitur, batch size (overlap), timesteps (window) untuk ditemukan kombinasi terbaik agar memaksimalkan testing akurasi, serta meminimalkan kompleksitas komputasi dan durasi training data<br /><br />(2) Model arsitektur RNN dimodifikasi pada bagian LSTM layer menjadi hanya 2 layer namun hidden-unit per layernya ditingkatkan dari 32 unit menjadi 64 unit kemudian 1024 unit. | - | WFO<br />Mencoba mengeliminasi fitur PPG untuk pengenalan aktivitas subjek |
| Kamis, 11 November 2021 | WFO<br />(1) Mengeliminasi penggunaan raw data PPG pada pendekatan deep learning untuk pengenalan aktivitas subjek ini<br /><br />(2) Mengekstraksi fitur-fitur accelerometer pada 3-sumbu | WFO<br />(1) Dari hipotesis dan kajian literatur, seharusnya dengan menggunakan data 3-axis accelerometer saja sudah cukup untuk mengenali aktivitas subjek, sehingga dilakukan eksperimen dengan mengeliminasi penggunaan raw data PPG, sehingga diharapkan sangat mengurangi beban komputasi. Input shape menjadi (1600, 3).<br /><br />(2) Berdasarkan rujukan paper sebelumnya, implementasi feature extraction dilakukan terhadap 3-axis accelerometer sehingga dihasilkan 11 fitur (domain waktu dan domain frekuensi) dari tiap sumbu. Fitur yang diekstraksi dari tiap sumbunya pada domain waktu yaitu mean value, standar deviasi, mean absolute deviation, minimum value, maximum value, besar energi, quartil 25%, quartil 75%, sedangkan pada domain frekuensi yaitu indeks komponen frekuensi yang menyatakan peak FFT, skew, dan kurtosis. Data accelerometer yang diekstraksi merupakan data yang telah melewati preprocessing dan telah disetarakan persebaran kelasnya (dioversampling). | Untuk mendapatkan fitur-fitur yang esensial, perlu dilakukan manual | WFH<br />Melakukan training dan testing terhadap model yang telah dimodifikasi beberapa hyper-parameternya |
| Jumat, 12 November 2021 | WFH<br />(1) Melakukan training dan testing model dengan metode evaluasi penuh<br /><br />(2) Menguji perfomansi dari model dengan metode evaluasi LOOCV | WFH<br />(1) Training set diambil dari 5 subjek pertama, sedangkan 2 subjek lainnya digunakan sebagai testing set. Dengan sliding window 1600 dan 1200, overlap 50%, RNN-LSTM 2 layer dengan hidden unit 32, 64, dan 1024, dengan dan tanpa feature extraction, epoch 20 dan 50, serta 3 kelas aktivitas.<br /><br />(2) Dengan metode evaluasi cross-validation, dapat lebih menginterpretasikan performansi dari model karena validasi dilakukan pada semua subjek data. Karena terdapat 7 subjek, maka terdapat 7 permutasi yang masing-masing menghasilkan akurasi validasi. Permutasi pertama, training data untuk subjek 1,2,3,4,5,6, validasi pada subjek 7. Permutasi kedua, training data untuk subjek 1,2,3,4,5,7, validasi pada subjek 6, dan seterusnya. Kemudian 7 data akurasi validasi dirata-ratakan dan didapatkan performansi model.<br /><br />Implementasi dilakukan pada Google Colab dan dapat diakses melalui tautan berikut.<br />https://colab.research.google.com/drive/1V_8HM3IOU5IuXcfAee9Lo2XLZeDmTHjk?usp=sharing | - | WFH<br />Mengevaluasi bagaimana kombinasi hyper-parameter terbaik untuk membangun model RNN-LSTM |
## Pekan-12 : 15 November 2021 - 19 November 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 15 November 2021 | WFH<br />(1) Mengevaluasi arsitektur model RNN-LSTM terbaik lalu menyimpannya<br /><br />(2) Membuat dokumentasi pelaporan kemajuan pekan 11 | WFH<br />(1) Dari variasi hyper parameter yang dilakukan, didapatkan bahwa kombinasi terbaik untuk membangun arsitektur model RNN yaitu dengan sliding window 1600, overlap 50%, RNN-LSTM 2 layer dengan hidden unit 1024, dengan 33-feature extraction, epoch 20, serta 3 kelas aktivitas. Dimana menghasilkan akurasi training 0.9771, durasi training 1225.67 detik (20.43 menit), akurasi testing 0.9365, durasi testing 6.08 detik. Kemudian model yang didesain disimpan dalam format data hierarki (.h5)<br /><br />(2) Dokumentasi pelaporan kemajuan pekan-11 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1PtqOIoMorLQ5PynPoWGUOK_8Rc2sSt7u/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFO<br />Melaporkan kemajuan pekan 11 |
| Selasa, 16 November 2021 | WFO<br />(1) Pelaporan/presentasi kemajuan pekan 11<br /><br />(2) Eksplorasi tools paling lengkap dan reliable untuk implementasi python pada android app development | WFO<br />(1) Pada pekan 11 telah dilakukan eliminasi penggunaan fitur PPG, feature extraction terhadap 3-axis accelerometer, penipisan layer arsitektur RNN-LSTM, peningkatan hidden-unit pada tiap layer LSTM, pengurangan jumlah epoch, peningkatan besar sliding window, dimana kesemuanya dilakukan untuk memaksimalkan testing akurasi, serta meminimalkan kompleksitas komputasi dan durasi training data<br /><br />(2) Terdapat beberapa tools yang tersedia seperti BeeWare, Chaquopy, Kivy, Pyqtdeploy, Qpython, SL4A, PySide, dan Termux berdasarkan rujukan berikut.<br />https://medium.com/@umerfarooq_26378/tools-to-run-python-on-android-9060663972b4<br />Kemudian berdasarkan website resmi masing-masing tools didapatkan kesimpulan bahwa chaquopy menyediakan fitur untuk implementasi library python paling lengkap pada android studio, sehingga dipilih tools chaquopy untuk implementasi python pada android studio<br />https://chaquo.com/chaquopy/ | - | WFO<br />Implementasi python menggunakan tools terpilih pada android app development terpilih |
| Rabu, 17 November 2021 | WFO<br />(1) Implementasi python dengan chaquopy pada android studio<br /><br />(2) Implementasi neural network pada android studio | WFO<br />(1) Spesifikasi yang akan digunakan yaitu Chaquopy 10.0, included python 3.8.11, android gradle plugin 7.0.0, minimum android API level 16. Kemudian langkah-langkah basic setup, development, setup, dan packaging dilakukan berdasarkan rujukan website resmi chaquopy berikut.<br />https://chaquo.com/chaquopy/doc/current/android.html<br /><br />(2) Implementasi berhasil dilakukan, artinya reliabilitas implementasi neural network pada android app sudah terbukti. Implementasi dilakukan dengan mengacu pada rujukan berikut.<br />https://youtu.be/OJpKnFqUes | Kesulitan dalam pemrograman di android studio dengan menggunakan bahasa Java | WFO<br />Implementasi testing dataset menggunakan model RNN-LSTM pada android studio |
| Kamis, 18 November 2021 | WFO<br />(1) Implementasi pada android studio untuk loading model neural network yang telah dibentuk<br /><br />(2) Konversi model RNN-LSTM yang telah didesain agar dapat di-load pada android studio | WFO<br />(1) Implementasi pada android studio dapat diakses pada github berikut.<br />https://github.com/AchmadRifqyP/Python_to_AndroidStudio/tree/master/MBKM%20Wearable%20AI/HAR_LSTM_AndroidSensor<br /><br />(2) Model RNN-LSTM yang telah didesain sebelumnya pada ekstensi .h5 tidak dapat direalisasikan pada android app karena terlalu berat, maka perlu dikonversi ke format tflite atau .pb agar dapat digunakan pada android | Kesulitan dalam pemrograman di android studio dengan menggunakan bahasa Java | WFH<br />Mendesain user interface sederhana untuk display prediksi aktivitas subjek |
| Jumat, 19 November 2021 | WFH<br />(1) Desain user interface sederhana untuk display hasil prediksi tiap aktivitas<br /><br />(2) Integrasi Back-End dan Front-End | WFH<br />(1) Desain user interface hanya ditujukan agar dapat menampilkan hasil prediksi pengenalan aktivitas subjek dimana data uji yang digunakan adalah dataset MAXREFDES.<br /><br />(2) Integrasi diperlukan agar id variabel yang menyatakan nilai yang perlu ditampilkan pada GUI memanggil variabel yang sesuai pada Back-End<br /><br />Implementasi dapat diakses melalui tautan github berikut.<br />https://github.com/AchmadRifqyP/Python_to_AndroidStudio/tree/master/MBKM%20Wearable%20AI/HAR_LSTM_AndroidSensor | - | WFH<br />Melakukan pengujian dengan menggunakan dataset yang sudah ada (non-realtime) |
## Pekan-13 : 22 November 2021 - 26 November 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 22 November 2021 | WFH<br />(1) Pengujian HAR pada aplikasi Android Studio dengan data berasal dari testing dataset<br /><br />(2) Membuat dokumentasi pelaporan kemajuan pekan 12 | WFH<br />(1) Pengujian berhasil dilakukan dengan 6 klasifikasi aktivitas, yaitu walking, upstairs, downstairs, sitting, standing, laying dengan akurasi 93,2%. 3-axis accelerometer belum diproses secara realtime, namun diproses per window dari testing dataset yang di-import pada file assets Android Studio dalam format .txt<br /><br />(2) Dokumentasi pelaporan kemajuan pekan 12 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1Gmur6nuYdPcgdi1tBwe3dCA4LzoDyc_I/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true | - | WFO<br />Pelaporan kemajuan pekan 12 |
| Selasa, 23 November 2021 | WFO<br />(1) Pelaporan/presentasi kemajuan pekan 12<br /><br />(2) Eksplorasi cara pemrosesan realtime pada Android Studio | WFO<br />(1) Secara garis besar, hal-hal yang dilaporkan adalah mengenai implementasi python pada Android Studio menggunakan tools Chaquopy, serta percobaan menggunakan model .tflite pada Android Studio untuk HAR<br /><br />(2) Pemrosesan realtime yang akan dikerjakan pada pekan ini yaitu estimasi detak jantung dimana data PPG memasuki algoritma data per data. | - | WFH<br />Implementasi pemrosesan realtime pada Android App |
| Rabu, 24 November 2021 | WFH<br />(1) Interpretasi algoritma pemrosesan detak jantung pada Android Studio<br /><br />(2) Debugging algoritma agar dapat dilakukan pemrosesan realtime pada Android Studio | WFH<br />Implementasi pada Android Studio dapat diakses melalui tautan github berikut.<br />https://github.com/AchmadRifqyP/Python_to_AndroidStudio/tree/master/MBKM%20Wearable%20AI/HAR_LSTM_App | - | WFO<br />Debugging Back-End Android App |
| Kamis, 25 November 2021 | WFO<br />(1) Pengujian algoritma Kalman Filtering dengan dataset MAXREFDES103 pada Android<br /><br />(2) Debugging pemanggilan hasil pemrosesan pada Back-End java Android Studio | WFO<br />Algoritma Kalman Filtering diadaptasi dari pekerjaan teman tim kemudian bagian main procedure diubah menuju main function yang me-return satu data hasil estimasi detak jantung, hal ini dilakukan karena MainActivity.java hanya dapat memanggil hasil return dari main function tersebut. | - | WFH<br />Membuat desain GUI sederhana |
| Jumat, 26 November 2021 | WFH<br />(1) Membuat desain user interface sederhana<br /><br />(2) Debugging penampilan hasil pemrosesan pada Front-End GUI Android Studio | WFH<br />Desain user interface sederhana hanya dibuat untuk menampilkan hasil estimasi detak jantung, hasil yang diharapkan adalah hasil estimasi detak jantung yang tertampilkan akan saling overwrite dengan data estimasi detak jantung setelahnya<br /><br />Implementasi pada Android Studio dapat diakses melalui tautan github berikut.<br />https://github.com/AchmadRifqyP/Python_to_AndroidStudio/tree/master/MBKM%20Wearable%20AI/HAR_LSTM_App | - | WFH<br />Pengujian pemrosesan estimasi detak jantung pada Android App |
## Pekan-14 : 29 November 2021 - 3 Desember 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 29 November 2021 | WFH<br />(1) Pengujian pemrosesan detak jantung dengan algoritma Kalman Filtering pada Android<br /><br />(2) Debugging program | WFH<br />Pengujian menghasilkan hasil yang kurang memuaskan, hasil estimasi detak jantung yang tercetak pada GUI Android App hanya satu data dan tidak terupdate, hal ini dikarenakan ketika return sudah dicapai pada suatu fungsi maka fungsi tersebut berakhir, sehingga perlu dicari cara lain untuk passing value estimasi detak jantung dari python ke Back-End Android berupa MainActivity.java | - | WFO<br />Pelaporan kemajuan pekan 13 |
| Selasa, 30 November 2021 | WFO<br />(1) Pelaporan/presentasi kemajuan pekan 13<br /><br />(2) Eksplorasi cara mengaktifkan dan menggunakan sensor Accelerometer Android pada Android Studio | WFO<br />(1) Dokumentasi pelaporan kemajuan pekan 13 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1Zdf6Y-c_PYQ98h_s8In1gMV14tx-z0ty/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br />(2) Informasi cukup lengkap diperoleh melalui tautan berikut.<br />https://developer.android.com/guide/topics/sensors/sensors_motion | - | WFH<br />Implementasi pembacaan sensor Accelerometer Android pada Android Studio |
| Rabu, 1 Desember 2021 | WFH<br />(1) Menggunakan sensor Accelerometer Android<br /><br />(2) Membuat program Back-End Android untuk HAR dengan data realtime dari sensor Accelerometer Android | WFH<br />Sensor Accelerometer Android digunakan untuk sementara menggantikan MPU6050 sebelum program diintegrasikan dengan sistem komunikasi bluetooth, agar dapat merepresentasikan pemrosesan realtime<br />Implementasi pada Android Studio dapat diakses melalui tautan github berikut.<br />https://github.com/AchmadRifqyP/Python_to_AndroidStudio/tree/master/MBKM%20Wearable%20AI/HAR_LSTM_AndroidSensor | - | WFO<br />Implementasi pengujian realtime untuk HAR |
| Kamis, 2 Desember 2021 | WFO<br />(1) Implementasi HAR secara realtime pada Android Studio menggunakan model .tflite pekan sebelumnya<br /><br />(2) Modifikasi desain user interface sederhana untuk display hasil prediksi tiap aktivitas | WFO<br />(1) Model yang digunakan berasal dari training model menggunakan dataset UCI Machine Learning Repository : Daily and Sports Activities Data Set, dimana hanya diambil 6 aktivitas saja, yaitu walking, sitting, standing, upstairs, downstairs, running, dengan masing-masing aktivitas dilakukan pada 60 segmen masing-masing oleh 8 subjek berbeda. Dari keenam aktivitas ini nantinya akan merepresentasikan kondisi resting atau non-resting. Data langsung diakusisi oleh 3-axis acceleremeter Android sensor dengan window 5-sec, overlap 1-sec<br /><br />(2) Desain user interface akan menampilkan nilai X, Y, Z accelerometer sensor secara realtime, serta hasil prediksi aktivitas dalam bentuk probabilitas | - | WFH<br />Integrasi Back-End dan Front-End Android App |
| Jumat, 3 Desember 2021 | WFH<br />(1) Mengintegrasikan Front-End dan Back-End HAR Android App<br /><br />(2) Debugging sistem perangkat Android | WFH<br />Integrasi antara Front-End dan Back-End dilakukan dengan cara memvalidasi bahwa nilai X,Y,Z dapat di-passing menuju GUI dan juga masuk sebagai input model .tflite. Nilai X,Y,Z ini juga dipastikan akan masuk array buffer untuk dikumpulkan hingga jumlah window terpenuhi. | - | WFH<br />Pengujian HAR secara realtime pada Android App |
## Pekan-15 : 6 Desember 2021 - 10 Desember 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 6 Desember 2021 | WFH<br />Pengujian HAR pada aplikasi Android Studio dengan data realtime berasal dari 3-axis sensor Accelerometer Android | WFH<br />Pengujian dilakukan dengan 6 klasifikasi aktifitas berbeda, yaitu walking, sitting, standing, upstairs, downstairs, running. Hasilnya, probabilitas tertinggi diperoleh pada aktivitas yang tepat pada sitting dan upstairs saja, sedangkan sisanya terprediksi diantara kedua aktivitas tersebut saja. Hal ini dikarenakan hanya digunakan sensor accelerometer yang hanya membaca perubahan kecepatan subjek, namun ini sudah cukup karena untuk integrasi sistem keseluruhan hanya perlu pengelompokan 2 aktifitas besar saja, yaitu resting atau non-resting. Resting terdiri dari aktivitas sitting, standing, walking, sedangkan non-resting terdiri dari aktivitas upstairs, downstairs, running. | - | WFO<br />Integrasi sistem HAR dan pemrosesan detak jantung |
| Selasa, 7 Desember 2021 | WFO<br />(1) Pelaporan/presentasi kemajuan pekan 14<br /><br />(2) Integrasi sistem HAR dan estimasi detak jantung pada Back-End Android | WFO<br />(1) Dokumentasi pelaporan kemajuan pekan 14 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1WfW1x5btjoi7lqJkEWkn_z0oMeB_q9pi/edit?usp=sharing&ouid=102528335837626685845&rtpof=true&sd=true<br /><br />(2) Sistem HAR diimplementasikan pada class java, sedangkan estimasi detak jantung diimplementasikan pada Python lalu dengan menggunakan Chaquopy sebagai tools interpreter Python di Android App. Kemudian kedua sistem ini dipanggil sebagai fungsi pada Back-End Android App. | - | WFH<br />Integrasi sistem komunikasi Bluetooth dengan sistem HAR |
| Rabu, 8 Desember 2021 | WFH<br />Integrasi sistem HAR dengan sistem komunikasi Bluetooth pada Back-End Android | WFH<br />Dengan menggunakan model arsitektur RNN-LSTM final, dimana dokumentasi dapat diakses melalui tautan berikut.<br />https://drive.google.com/drive/folders/1pWc3BpXIO1YlYNf0cx7oXH9oEarP603A?usp=sharing<br />Kemudian integrasi dilakukan pada Android Studio agar sistem dapat mengenali level aktivitas subjek secara realtime dimana masukan berasal dari akuisisi data 3-axis accelerometer MPU6050 yang dikirimkan menuju Android melalui sistem komunikasi Bluetooth. Data 3-axis accelerometer yang diterima kemudian masing-masing dimasukkan pada sebuah array buffer hingga terkumpul 100 data yang akan dijadikan input model RNN-LSTM (shape: (1,100,3)) untuk diklasifikasikan level aktivitasnya apakah ringan atau menengah-berat. Setelah diproses, array buffer ini akan dihapus untuk menampung data selanjutnya | - | WFO<br />Memastikan integrasi sistem berjalan dengan baik |
| Kamis, 9 Desember 2021 | WFO<br />Integrasi sistem pemrosesan detak jantung dengan sistem komunikasi Bluetooth pada Back-End Android | WFO<br />Sistem pemrosesan detak jantung didesain menggunakan bahasa pemrograman Python, untuk mengimplementasikannya pada Back-End Android Studio digunakan Chaquopy 10.0.1 sebagai tools interpreter Python. Pemrograman Python perlu dibuat menjadi function-based, dimana Back-End Android Studio (MainActivity.java) hanya akan menjalankan main function pada pemrograman Python, kemudian return value-nya berupa nilai estimasi detak jantung akan diterima Back-End Android sebagai Object, kemudian Object dikonversi menuju string agar dapat ditampilkan pada Front-End Android. Pemrosesan dilakukan secara realtime(online) dimana data PPG-2 kanal hasil akuisisi sensor MAX30102 (Fs = 100Hz) akan dikirimkan ke Android melalui komunikasi Bluetooth, yang kemudian pada Back-End Android akan disimpan pada array buffer hingga tercapai window 8-s (dengan overlap 1-s pada pemrosesan berikutnya), kemudian array ini barulah dijadikan input main function pemrosesan detak jantung pada Python | - | WFH<br />Memastikan integrasi sistem berjalan dengan baik |
| Jumat, 10 Desember 2021 | WFH<br />Debugging integrasi sistem pada Back-End Android Studio | WFH<br />Debugging integrasi sistem HAR dan sistem pemrosesan detak jantung pada pemrosesan realtime dengan data dari ESP32 melalui sistem komunikasi Bluetooth. Debugging dilakukan mayoritas pada penampungan data akuisisi sensor dari komunikasi Bluetooth pada array buffer sebelum diproses pada sistem HAR serta sistem pemrosesan detak jantung | - | WFH<br />Desain user interface sederhana untuk menampilkan hasil pengujian kedua sistem integrasi |
## Pekan-16 : 13 Desember 2021 - 17 Desember 2021
| Hari, Tanggal | Aktivitas | Deskripsi | Kendala | Rencana |
| ------------- | --------- | --------- | ------- | ------- |
| Senin, 13 Desember 2021 | WFH<br />Pengujian secara fungsionalitas dua sistem integrasi yang telah dibuat | WFH<br />Secara fungsionalitas, integrasi sistem HAR dan sistem komunikasi Bluetooth telah berjalan dengan baik, saya uji dengan aktivitas duduk, berdiri di tempat, serta berjalan kecil terdeteksi probabilitas level aktivitas ringan (resting) lebih dari 0.5, sedangkan ketika saya uji dengan aktivitas berlari, menaiki tangga, serta menuruni tangga hingga membuat sedikit 'ngos-ngosan' terdeteksi probabilitas level aktivitas menengah-berat (Non-resting) lebih dari 0.5. Namun sistem integrasi pemrosesan detak jantung realtime dengan komunikasi Bluetooth masih belum memenuhi secara fungsionalitas, dikarenakan masih terdapat bug pada manajemen array buffer data akuisisi sensor.| - | WFH<br />Membuat dokumentasi pelaporan kemajuan pekan 15 |
| Selasa, 14 Desember 2021 | WFH<br />(1) Pelaporan/presentasi kemajuan pekan 15<br /><br />(2) Integrasi sistem HAR, sistem estimasi HR, serta sistem komunikasi Bluetooth pada Android Studio | WFH<br />(1) Dokumentasi pelaporan kemajuan pekan 15 dapat diakses melalui tautan berikut.<br />https://docs.google.com/presentation/d/1Oq4VXrSiJQfx-c78U8-GIs5cvWDOBw-p/edit#slide=id.gf72f98b056_0_0<br /><br />(2) Sistem HAR dan sistem estimasi detak jantung berjalan secara paralel, dimana keduanya menerapkan pemrosesan relatime (online), dengan data berasal dari akuisisi sensor PPG 2-channel MAX30102 dan sensor 3-axis accelerometer MPU6050 dengan fs=100Hz. Data ini diterima oleh Back-End Android melalui komunikasi Bluetooth dengan ESP32. Sistem estimasi HR akan menghasilkan estimasi detak jantung pengguna, kemudian hasil estimasi ini akan diproses dengan metode moving average untuk mendeteksi adanya abnormalitas ketika dikenali level aktivitas ringan melalui sistem HAR, dimana range normal 60-100 BPM. | - | WFH<br />Memastikan integrasi sistem keseluruhan berjalan dengan baik |
| Rabu, 15 Desember 2021 | WFH<br />(1) Debugging integrasi sistem keseluruhan<br /><br />(2) Desain user interface sederhana untuk menampilkan hasil pengujian sistem<br /><br />(3) Integrasi Back-End dan Front-End sistem keseluruhan pada Android Studio | WFH<br />Implementasi pada Android Studio dapat diakses melalui tautan Github berikut.<br />https://github.com/AchmadRifqyPratama/Wearable-HR-Monitoring-System-with-HAR-in-Android-App.git | - | WFO<br />Menguji sistem keseluruhan |
| Kamis, 16 Desember 2021 | WFO<br />Pengujian fungsionalitas sistem keseluruhan | WFO<br />Pengujian dilakukan dengan menguji apakah ketika sedang beristirahat terdeteksi level aktivitas ringan (resting) lebih dari 0.5, kemudian nilai estimasi detak jantung yang terdeteksi dibandingkan dengan hasil detak jantung yang terdeteksi pada MAXREFDES103, lalu proses pendeteksian abnormalitas akan terus berlangsung dengan metode moving average, dimana nilai tiap iterasi moving average akan dikumpulkan hingga 100 nilai (hanya ketika resting), jika diluar range normal 60-100BPM maka terdeteksi bahwa detak jantung tidak normal | - | WFH<br />Memastikan sistem keseluruhan telah berjalan dengan baik |
| Jumat, 17 Desember 2021 | WFH<br />(1) Diskusi pembagian kerja pengerjaan manuscript paper dan presentasi akhir MBKM<br /><br />(2) Memulai pengerjaan draft manuscript paper | WFH<br />Terdapat 11 poin perencanaan pengerjaan draft manuscript paper, dimana mencakup seluruh project yang telah dikerjakan masing-masing anggota kelompok Contact ITB, baik yang dikerjakan secara individu maupun kelompok | - | Mengerjakan manuscript paper dan mempersiapkan presentasi akhir MBKM |