Team Status Report for 4/10/2021

The most significant risk to the success of our project is the TX2 board freezing or failing to execute our pose comparison code. It used to run once in 6 tries, but now it runs half the time. The failures are caused by memory errors. We think it might be using too much memory because we keep getting memory notifications. If we restart the board, we found that the memory errors are less likely to happen. But we want to find a more permanent fix.

We do have a backup plan of running everything on a laptop, but we don’t think we’ll need to resort to this backup plan.

 

Sarah’s Status Report for 4/10/2021

This week, I added labels to the exercise and rest screens. The labels are of the current exercise name (or “rest” if rest) and the next exercise name. I also made the demo video slightly larger to better match the camera feed’s size on the screens. I found a stretch video for the end of each workout, I just need to add it to the UI. I will be playing only a portion of it. I also started creating a workout preview screen before the actual workout starts (so users can familiarize themselves with the exercises in the workout).

This week, I also met with Maddie (on Sunday, Monday, Wednesday) to help set up the TX2 and download the necessary libraries/code onto it. For some reason, the installation of the NVIDIA package froze around 40% for her, and when we tried it on a lab computer, the virtual box couldn’t connect to the CMU wifi so we weren’t able to start the installation of the NVIDIA packages for the board. We eventually got the installation to work when I installed the virtual box on my laptop. I tried to take the board home and finish the installation there, but the board couldn’t find my wifi, so I finished it the next day with Maddie.

I am on schedule.

I hope to finish the workout preview before the interim demo.

Zixuan’s Status Report for 4/10/2021

This week I finished the code for pose comparison. We can enter the exercise name and number of loops we want to do, and the program will return the angle differences for each loop, and the sum of angle differences after the exercise is done. Later in the week I also modified and finished the code for frame selection, which looks for the frame with best fit pose for each frame we are comparing. Thus the users are allowed to do the exercise at slightly different speeds. For example, if we are comparing frame 10 of an exercise, we will look at frame 5~15 of the user video, and find the frame with the most similar pose to the standard one. I have tested it several times by doing some of the exercises myself, and the output does reflect my performance.

We were able to run OpenPose on TX2 successfully, however, there were some issues related to memory allocation when running my code on TX2. The error would occur about half the time we run it, and we want to fix that soon.

We are on schedule. Next week I will do more tests with the pose comparison code and fix some bugs.

Maddie’s Status Report for 4/10/2021

This week I spent a lot of time using the TX2 and transferring our code from CPU to GPU.

Me and Sarah were able to finish all of the Jetpack and CUDA installs using a Virtual Box on her laptop, since I came to the realization that my USB-C to USB converter was being finicky and my computer wasn’t recognizing that the TX2 was plugged in.  I also spent a lot of time in the lab on Tuesday night to get all of the correct dependencies for the open pose code installed on the board.  We were able to get our pose comparison code running on the TX2 by the end of the week.

This week I also began work on the user profiles and leaderboard.  I am currently setting up databases with SQLite to track the top 3 scores, as well as an individual  chart of scores for the user.

Next week, I plan to continue testing and debugging our pose comparison code on the TX2, as well as continuing with the user profiles.