Inspiration

Bag Alert was built because we were thinking about how many people have to wait by the baggage carousel for a long time. We wanted to minimize this wait. We decided to go about this by coming up with an idea that involves a camera that would constantly check for baggage that comes through. Upon successful rendering of the owner's baggage, it sends a text to the owner to let them know where their baggage is and that it came through. Additionally, we wanted to build a security layer on this feature via facial recognition to make sure that only people whose luggage is their own would be able to see their own luggage.

What it does

We built a frontend that has a log in button for someone to click on and start the requests to the backend. Later on, at the final stage, we then send a Google Cloud Platform Vision API call to detect what the object is in the picture. Upon GCP returning that it's the luggage we were looking for, we use a Twilio API call to send a text to the user of the luggage that it has arrived and that it is there.

How we built it

We used HTML/CSS/JS for the frontend and post requests to the backend to call on other functions. In the backend, we used flask to render all the CSS and HTML and direct program logic flows to the correct locations based on which events were detected. Then, we read up on documentation for GCP Vision API, Twilio, and Transposit to use the Transposit platform to help the frontend connect with the api calls of GCP and Twilio. We built a frontend that has a log in button for someone to click on and start the requests to the backend. Later on, at the final stage, we then send a Google Cloud Platform Vision API call to detect what the object is in the picture. Upon GCP returning that it's the luggage we were looking for, we use a Twilio API call to send a text to the user of the luggage that it has arrived and that it is there.

Challenges we ran into

Getting the facial detection system to work, making sure that the frontend sends post requests to the server backend, and having the server act on that. Installing openCV was painful as well, and we originally had the backend on node.js but after many failed attempts at installing openCV on nodeJS, we switched over to Python and Flask for the backend. We then had to make sure that all the processes synchronized with each other as we wanted to deliver the final minimum viable product.

Accomplishments that we're proud of

We're proud of being able to deliver a fully functioning product that has a secure log in with facial detection which then checks for baggage that comes through. Upon successful detection of the luggage, it sends a text to the user to let them know the baggage has arrived.

What we learned

We learned how to connect the frontend with the backend and how to use Python's Flask. We also got familiar with openCV and how to train models for facial detection. Additionally, we got more familiar with GCP's Vision API and how to authenticate with it. We also learned how to use Twilio's API to send text messages to people.

What's next for Bag Alert

We hope to switch over the luggage check to continuous video streaming so that it is more accurate and can process higher FPS. Additionally, we would like to further build upon our facial recognition model to make it more accurate. Potentially, in the future we may place a subscription based system for people to check in so that they do not have to stress about constantly waiting for their luggage, and they can get reassurance that their luggage arrived and is in a certain place. We could also have it as an add-on service for companies such as Clear.

Share this project:

Updates