Inspiration

I wanted to make a fun experience with an unconventional search method, and what I came up with was making a moodboard complete with GIFs and a Spotify playlist, all depending on what your current facial expression was.

What it does

The user clicks to take a picture of their current facial expression, then the server takes the photo and passes it to the Google Cloud Vision API, where the facial emotions are evaluated then returned to the server and evaluated. Depending on the analyzed mood, a GIF board and Spotify playlist are selected to match your current mood.

How I built it

I used Node.js to build the backend to run an Express server and also to use the Giphy, Google Cloud Vision, and Spotify Web API wrappers. On the frontend, its HTML, JS, and CSS with a Pug template as well so I can pass variables from the backend to the frontend.

Challenges I ran into

A challenge I ran into was the limited amount of emotion that Google Cloud Vision analyzes, so I had to get creative and use some feature detection to analyze emotions that I programmed. Also, the sheer amount of callbacks I had to deal with made my life a little more miserable.

Accomplishments that I'm proud of

First and foremost, I am proud of being able to use the Google Cloud Vision API to add some machine learning/computer vision into my project. I am also proud of the integration of Giphy and Spotify for a true multimedia experience that is very fun and easy-to-use.

What I learned

I learned how to use Google Cloud Platform, and how machine learning is utilized to analyze facial expressions through computer vision and advanced mathematics.

What's next for Big Mood Analyzer

A switch to invert some of the moods, so if you are sad, it will show happy things, or if you're tired, it will show things to energize you.

Built With

Share this project:

Updates