End of the month is the worst because...we have no money in our banks. Starbucks, Cinemark, McDonalds is your best friend when you receive your paycheck, while ramen is your saviour during the end. We, human beings, are inherently bad at money management. We aren’t great with all the numbers being accrued as we drink Starbucks every morning, nor do apps of banks/credit cards take any proper step to visualize our spendings in front of us. Presenting to you Money_Tracker, which helps you understand your spendings by categorizing and visualizing in front of you. It can categorize your weekly or monthly spendings, visualize them in graphs so that it is easier for you to understand, and help you track the percentage of paycheck you spent already- all with the simple scanning of receipts, whenever you shop. As college students, we found it hard to truly visualize our spendings. Financial statements from bank accounts only the total you spent for the month- not spending by category. This makes it difficult for us to decide in which category I should cut back my spendings, which category I spend the most, and which category is the shark for my paycheck. In order to make the life of college students’ like us easier, we built Money_Tracker to help us make conscious decisions based on statistics generated by the app.
We started out by selecting an approach and a design aesthetic for our app. The tasks were then designated to individual teammates. The application interface and deep learning pipelines were built in parallel. The current pipeline is based primarily on MLKit, where a text-detector figures out bounding boxes from the receipt shown and a Tesseract model extracts strings from the specified boxes. These strings are then post-processed using RegeX parsers to filter out artifacts.
Integrating Android code with Python models turned out to be a major hurdle, which we then had to change to an MLKit NLP model. Coordinating with teammates across time zones with over an 11 hour difference proved to cause communication problems.
We successfully created a financial management application with a polished interface in a 24 hour time-frame. Not only that, we were able to integrate modern deep learning frameworks into our already functional app, making it a solid state-of-the-art program. This makes for a solid user experience. Did we mention that we did this in just 24 hours?
People like visualization. A clean interface is aesthetically pleasing. Integrating scripts across different frameworks is a challenging procedure when DL frameworks are involved, and oftentimes it can be considered better to just stick to one language natively. NLP models require a significant amount of fine-tuning and preprocessing to output respectable results. The importance of image preprocessing cannot be overstated. Financial management apps are pretty darn useful.
We want to improve the usefulness of this app by adding a feature that would provide instant insights and make projections based on spending habits and offer rewards based on good financial behavior. We also want to add a feature that would allow users to sync across devices. We also want to fine-tune our deep-learning models and replace the ML-Kit detectors with more specialized ones specifically detecting receipts. This would make for a lighter but more accurate system.