The significant risk that could jeopardize the success of the project right now is that we haven’t integrated our system yet and each team member is still working on perfecting our individual parts. To manage this risk, we will be dedicating the majority of the …
This week, I’ve been working on minimizing the margin of error that the algorithm produces. The reason for the margin of error that we saw from our results was because the checkout “region” was not clearly defined which made the recorded wait time for each …
This week, I made changes to the AJAX implementation when I realized during testing that it had some bugs. I also used the knowledge about SQLite queries in Django that I learned in past weeks to test whether the implementation works as it should. It is with great delight that I write here that it does indeed work for the required update time of 2 seconds!! The updated AJAX is written keeping in mind our database implementation on the backend side where we are utilizing three tables for the three different data values we are displaying in the frontend. I tested the times in the browser console with time stamps to see whether the data is updating in 2 seconds as desired, and it does as shown in the image below.
I’ve been learning React JS and D3 JS over the past few weeks to be able to implement the barometric needle display better. D3 is very useful to display data in graphical format but React and D3 are both notoriously tricky to learn due to their complexity. My current implementation of the needle is very crude HTML, CSS and lots of self-written Javascript, which while difficult to do still doesn’t provide an elegant design. This is why I’m working on updating the implementation using React JS and D3 JS to give a smoother UI experience.
[Insert image of updated implementation]
Meanwhile, I’ve managed to write an implementation using React to display the vectors representations of the number of people in line as follows.
I’m on schedule at the moment – I did some user tests on 4/22 and based on the feedback received from the users and the TA+Prof, am making changes to the app accordingly. One feedback I thought useful was a feature I thought of implementing earlier – to display whether or not a dining hall is open or close in the menu html page. I added that feature. For the upcoming week, the challenge is to integrate our systems. I do not have prior experience with integrating frontend and backend systems, and will be working with the rest of my teammates on this.
I made a lot of progress this week after a few weeks of being confused about how to get to the solution efficiently and putting things together. A major part of the wait time algorithm is how to calculate the average wait time each person …
The most significant risk that could jeopardize the success of the project currently are the accuracy of our wait time algorithm and how to transfer the data from our Jetson to our database SQLite. Now that Nii has almost finished his duties, he will be …
This week I was able to finally download all the packages with compatible version types to allow the jetson to run our Computer Vision code. The jetson now successfully runs our base current YOLO algorithm:
Additionally, I was able to integrate the webcam into the YOLO algorithm. In the following picture I had the algorithm running within my room, and at one point had 2 of my friends also enter the room:
This weeks progress was very good, but I am still a little behind. Tomorrow I should be able to finish my portion of the project and get the information sending between the jetson and our front end. Then I can begin helping better our wait time algorithm for the final demo.
This next week is our final presentation for the course staff and other students so I will be working on those slides and presenting them. Additionally as I stated above I should have some data sending between our jetson and the front end.
This week, I worked on updating the UI and am reworking the AJAX portion of the web app. I made slight changes to the design of the barometer on the Javascript end so that it should render differently when functioning i.e. the colors fill up …
After the interim demo last Monday, I have been working on the final part of the project which is to integrate the system and do more testing, making sure that the code can count the number of people correctly at any given time and output …
We believe that the current most significant risk that could jeopardize the success of the project is that we are still working on integrating the hardware and software parts which means performance and accuracy are still our main concerns because we aren’t sure what the current results are if we run the algorithm on the Jetson Nano. However, given how much progress we were able to make, we believe that our work is achievable within this upcoming week. We are managing these risks by putting more hours of work into our team meetings to make sure we’ll speed up our progress and meet our goals quickly to leave room for any risk mitigation. Currently, the contingency plan is that we use a mp4 video to work on the software side while waiting for the other team member to figure out the hardware side. Once that is resolved, the next step is to ensure the software side works well with the Jetson Nano and the live video footage captured by the camera.
To answer the week-specific question, we are planning to set up the camera in the lab and test the whole system with live video footages captured in the lab since the environment in the lab is similar to the environment where we’ll showcase our final demo. Our output result is very straightfoward, which is simply wait time at any given point. We’ll compare them directly against the actual result we record using a timer on our phone to calculate the margin of error to evaluate the accuracy. In order to evaluate the performance, we can simply set up timer directly within the code and have it automatically calculated for us how fast the algorithm runs.
There were no changes to the existing design of the system and hence no additional costs were incurred.
This week I was finally able to figure out why our Jetson was not working. It turned out to be an issue with the board, which I was able to figure out after trying another group’s (A5) board. With a new working board, I was able …