Conclusions
Developing a card recognition model or really any image recognition model is a very hard problem. Given our initial
success when training with just four card objects, we felt that the rest of the project would go by without much of
a problem. For this reason, we determined that we would pursue a web application in addition to our trained card
recognition model. We also quickly determined that we would not be able to make this work for all 52 cards and cut our
dataset down to just 24 to limit the amount of grunt work we had to do.
As we continued to add cards, however, we rather rapidly found that things would not go as easy as we had hoped. Our
precision dropped off considerably and we struggled to get a basic web application off the ground. There are a lot of
variables that go into making a quality image detection model. Obtaining quality training data, using optimal
configuration settings on Google Cloud Platform's machine learning engine, and thoroughly evaluating the final trained
model are all very tough tasks to get right. In addition, we also wanted to deliver a quality web application in order
to give our project some kind of user interface, even if just as a toy.
After working our way through the project, we have now a great respect for the power of image recognition and the huge
amount of work that goes into frameworks such as Tensorflow that make using neural nets so easy. Despite this ease of use,
however, there is still a great deal of experimentation needed to achieve the desired end results. Due to the time
constraints of a semester long project and the sheer volume of possible development decisions and training experiments,
we were not able to fully explore all of the avenues available to us. This was an awesome project in a really exciting
area of technology and we feel fortunate to have had the opportunity to learn so much about it this semester. We also
believe that this would be a great project for a future group to continue to expand upon.