Due: May 6th 2024 in class and then code shared by 11:59pm
Summary: Now we will take all you have learned all semester and work on something larger.
Details:
Create a new project. Make sure it has your name in it somewhere in the project name.
For all projects: you must write at least three automated
tests which run every time the you push to the github project. You don’t
have to test every aspect of your program but the three parts that are
tested should be properly tested (use table tests or other methods to
make sure you test a wide variety of good and bad test data, including
edge cases) We will cover automated tests next time.
Project 1) write a gocv project which will query an online face recognition cloud api (such as https://luxand.cloud/ [this one allows 500calls/month at the free trial]) to identify the face in the video, At this point put a little label in a filled rectangle above the face much like the character name floating over the character’s head in a video game. When you demo it to me, pretrain the face recognition on faces you have available. In your readme, explain how I should setup the training data myself to test it.
Project 2) Write a microservice. Build an API driven site that you host yourself (you can’t use something like rapidapi to host it but you can use the go built in libraries). Your program needs to read the “games-features.xlsx” file. Design a simple API which will allow users to search on a game and will return the game’s database entry as a json response. Then write an application that will query this API site and display the data in a graphical interface.
Submitting the project.
You will present your project during
the final period then submit the project by putting it on github and
sending me a collaboration invite. As before.