Brady Corp Innovation Lab (1st Place)

Problem Statement: Brady Corp wanted a software and A.I. solution that focuses on solving critical industry problems related to liquid measurement and analysis. Teams were tasked with designing AI-based solutions to predict liquid levels in containers using images. Additionally, teams were encouraged to explore attributes like liquid color, container dimensions, and other innovative applications that expand the problem's scope.

Solution: I worked on a team to create a comprehensive software solution that runs machine learning models locally with no internet connection. This software is used to track containers in a lab environment. It uses computer vision to identify containers and measure liquid levels. The software also includes a user-friendly GUI for easy interaction and data visualization.

Skills Used:

  • C#
  • .NET MAUI
  • Android Development
  • Desktop Development
  • ONNX Runtime
  • GitHub
  • Agile Development

Source Code

Development Process

Initial Research

Step image 1

The first step in the development process was to research the problem and come up with a plan. We researched existing solutions and technologies that could be used to solve the problem. We also researched the requirements and constraints of the project. We identified datasets that existed for training machine learning models to identify liquid levels in containers. Crucially, we interviewed the sponsor to determine business requirements which lead us to run our ML models locally as opposed to in the cloud.

Prototyping

Step image 1

The next step was to create a prototype of the software. We created a basic version of the software that included the core functionality. This prototype was used to test the feasibility of the solution and to gather feedback from the sponsor.

Development

Step image 1

After gathering feedback from the sponsor, we began the development process. We used an agile development process to iteratively develop the software. We used GitHub for version control and collaboration. We also used ONNX Runtime to run our machine learning models locally on the device.

Testing

Step image 1

Once the software was developed, we began testing it. We tested the software for functionality, usability, and performance. We also tested the machine learning models to ensure they were accurate and reliable.

Presentation and Awards

Step image 1

The final step was to present the software. We created a presentation that included a demo of the software and a summary of the development process. We presented the software at the Brady Corp Innovation Lab final event where we got 1st place in the competition for our solution.