Inspiration

People deserve to be connected with media in an intimate and intuitive way. Media content should not only resonates with how we feel, but does that instantly. That's why we created Emotica, a proof-of-concept media platform that connects media like music and literature with you on an intimate level through emotion detection technology.

What it does

Just open your browser, go to the URL serving Emotica node.js app, enable web camera, and music and literature will be delivered to you that resonate with your mood. Enjoy the media and refresh the page for more!

How we built it

Emotica uses AI-powered emotion detection technology to convert user's facial expression into emotion parameters such as 'Sadness', 'Contempt', etc. Specifically, millions of faces and tagged emotions are trained through deep neural network and are able to infer new faces and related emotions with high accuracy. We used Affectiva API to enable instant emotion detection and embed it in an node.js app. For content, for music, due to constraint of time, we discussed and carefully hand-picked the most appropriate music that relates to different moods. For literature, we wrote Python script to scrape hundreds of quotes related with emotions by writers and link these quotes to their books.

Challenges we ran into

At first, we wanted to try using Rust Iron web framework to build it. Of course, it was not the most informed choice since we both did not know Rust. Also, Rust is difficult to use, at least for now, in terms of building a web service. We also dealt with security issues as to how to set up HTTPS on a local host.

Accomplishments that we're proud of

I would actually want to use it and keep developing its features. Think about, you just sit there and constant flow of pictures, videos and text will just flow with you smiling or grinning - it is a surreal experience... I love the concept I came up and am lucky to meet my team of awesome hackers. By the way, we are also proud of ourselves because well, who aren't?

What we learned

Rust, Rust, Rust.

What's next for Emotica

Implement more machine learning to scale it up, so that with more people using this service, we get better idea of what media content to be served to people feeling differently.

Built With

Share this project:

Updates