We have all experienced the feeling of looking at a makeup look online and thinking, "I want that." You follow the same steps, buy similar shades, and somehow it still doesn't look the same.
The problem isn't necessarily that the makeup was done incorrectly. The same shade does not look the same on everyone. Skin tone, undertone, facial features, and skin characteristics all change how a makeup color appears.
We wanted to solve a simple question:
How can I recreate the makeup look I love, without having to look like the person who inspired it?
What I Built
Look, For You lets users upload two images:
- Image A: the makeup look they want to recreate
- Image B: their own face/the face they want to recreate the look on
The application analyzes the makeup look in Image A and the user's complexion, skin type, facial features, undertone in Image B. It then translates the original look into personalized shades and colors for the user, rather than simply copying the original colors.
The result is a personalized makeup recipe that preserves the inspiration while adapting it to the individual.
The final step lets users preview the adapted look on their own face through virtual makeup try-on.
How I Built It
We use Perfect Corp's AI and AR technology for facial and skin analysis, makeup analysis, and virtual makeup try-on.
The core of our application is the translation layer between the two images. Instead of asking, "What color is this makeup?", we ask, "What color would create the same visual effect on this person?"
This allows the system to account for the user's own complexion when determining the appropriate shades.
One of the biggest things we learned is that makeup shade matching is not simply a matter of comparing colors. The appearance of a makeup shade depends on the complexion underneath it, the undertone, placement, intensity, and the surrounding makeup.
That made the problem much more interesting than simply extracting colors from an image. We had to think about makeup as something that interacts with a person's individual features rather than as a fixed set of colors.
Challenges I Faced
The biggest challenge was translating a makeup look between two different faces without losing the character of the original look.
A shade that looks soft and subtle on one complexion may appear completely different on another. We therefore had to distinguish between copying a color and recreating an effect.
Another challenge was working within the capabilities of the available AI APIs. We had to determine what could be handled directly by Perfect Corp and where our own logic needed to bridge the gap.
What's Next
The next step for my app is to bridge the gap between finding the right shade and actually finding something you can buy. Once we determine the personalized shades needed to recreate a look, we want to search online for makeup products that closely match those shades, giving users real options they can purchase. This would take Look, For you from simply telling users what shades would work for them to helping them find those shades in the real world.
Built With
- ai
- cielab
- js-camera-kit
- makeup-transfer
- makeup-vto
- mediapipe
- ml
- next.js
- perfect-corp-api
- react
- rest-api
- tailwindcss
- typescript
Log in or sign up for Devpost to join the conversation.