Monday: Today I worked on computing the Fast Fourier Transform (FFT) from a CSV file and selecting frequencies from 0.5 to 10 Hz. Last week I learned how to visualize data, but today I got to take the FFT of the signals, and filter data to a particular range of frequencies. I spent a good amount of time reading about the Fourier Transform and how to apply it, but it was pretty complicated. I watched videos too, but it was still confusing. I used chat GPT for some breakdown explanation and after 2 hours, I finally figured it out. Sent the graph to Matt to see if I had done it right, and he approved (:
My next steps are to identify heart rate and calculate goodness metric.
Tuesday & Wednesday: For these two days, I worked on understanding the “goodness metric”, in which it’s used as a substitute for the signal quality or signal-to-noise ratio (SNR) of the PPG signal obtained. For our lab, I will be using scipy.signal.find_peaks to identify heart rate and the goodness metric. I’ve also been assigned to read a paper written by our PI and fellow Rice members called “DistancePPG: Robust non-contact vital signs monitoring using a camera” (by Mayank Kumar, Ashok Veeraraghavan, and Ashutosh Sabharwal).
Thursday: I had my first meeting with our PI Ashok and other REU members. The meeting was pretty interesting. A few of the REU members talked about any problems or updates over the projects they are working on. And the PI made it VERY clear on taking lab safety precautions. Afterwards, Matt had to attend two meetings, so I stayed with Rachel (the undergrad I am working with) to work on some ideas.
Ashok told Matt to come up with a way to cover the device, so that it’s not exposed to light because it is creating extra noise, causing our data to be wonky. So, I came up with an idea.
My idea was to get a small box and put it on top and around our device. Sadly, there were no boxes available that we could use. Rachel suggested we’d use aluminum foil, and I agreed. But I wanted to use something that goes around or on top of the device, something that will hold the aluminum foil steady. I walked around the lab and remembered that there are weigh boats. Weigh boats are used to weigh powdered solutions. So, I got the boat, covered it in foil, made a hole where the device’s cables can go through, and put it on top of the device. From there, we tapped the two opened sides of the boat to our skin. We put foil under our wrist/hand and covered it up to the cables.
I felt very proud today because for the first time since I started this program, I spoke my ideas and I knew they were going to work.
I learned something about myself today. I hate reading. I cannot concentrate on reading something that does not interest my brain. As much as I push myself to learn computer programming, my brain just doesn’t want to cooperate. But I am a creative person. Tell me to come up with a physical idea or solution, and my brain will right away put itself to work. I can create things, and I am happy that I confirmed myself with that.
Friday: For today, I continued working with scipy.signal.find_peaks. This is honestly a bit more challenging. I understand what it’s saying, but I don’t know how to implement it in the program. But I’ll figure it out.