Jerry’s Status Report for 11/11/2023

My deliverables this week changed from what I had planned for last week.  After meeting with my team it was decided that it would be better for me to work on a screen for renaming the custom images users uploaded.  Additionally, I learned from Eric that Openpose needs to be passed a directory of images instead of an image on its own, and so I reworked the image upload to the application as well.  A lot of the challenge in getting the image renaming to work is how awkward it is to pass information between screens in Kivy and the challenge of having screens and widgets be responsive to user input.

A simple demo with animal pictures can be seen below:

https://youtu.be/yKAvS6Dsj_U

 

I believe that in terms of meeting MVP, I am slightly behind schedule as I still have to finish some of the iteration process involved with giving users multiple training cycles per pose so they can correct their pose iteratively and will prevent us from throwing out a tons of verbal instructions and causing confusion for the users.  I also really wanted to get support for pose sequences to work and was unable to, but the team decided this was a stretch goal that was not to be included in the MVP so the multiple training cycles feature has taken priority.  To make up the lost ground, I will try to communicate more with Eric and Ray to be able to quickly understand how the existing code interacts with Openpose and be able to complete this feature in the next week.

The deliverables I hope to complete for next week is to get dynamic training cycles finished.  By dynamic training cycles, the vision is for the user to do a pose, and for the app to tell the user that it cannot to pose comparison if not all of the key body points of the user are in the frame, and then give the user 10 seconds to adjust their pose before repeating the process until it detects all of the user’s key points are in the frame.  When all of the user’s keypoints are in the frame we move on to the pose correction process and show the user the errors they have, give audio output for the highest priority error and then give the user 10 seconds to correct this error, then repeat the process until no errors are detected.

ABET Question:

We have not done many full system tests so far, and I have only performed unit testing on specific features.  However, for full system testing and validation, we plan to each recruit 5 different volunteers to test our system.  I am currently doing dynamic training cycles, so I plan to try and test that the system is able to accurately detect errors on a wide range of body types.  This means getting volunteers who have different body types than those of us on the team (i.e. not asian males).  I will see if users are able to adjust posture fast enough in the time we set for them in the dynamic training cycle loop through user feedback testing.  I will also use user feedback testing to see if the UI for file uploads is easy to use.  In the results for user feedback testing, if 3 or more users mention that there is not enough time between evaluation cycles to adjust their posture, I will lengthen the time necessary for the user to adjust their pose.  I also plan to do some logging of joint angles so if there are issues with the backend processing I can pass them to Shiheng and Eric so they can have more information to debug.

Leave a Reply

Your email address will not be published. Required fields are marked *