Inspiration Our project basically came from the “Inclusion for All” AI hackathon theme. A lot of hiring still depends on super subjective stuff—like how someone looks on their resume or what they’re wearing—so tons of talented people get overlooked. We wanted to fix that. Seeing how biased some real-world AI models can be pushed us to build something that actually helps level the playing field. We focused on scoring resumes based on actual skills, and checking attire using simple color harmony rules instead of judging anything cultural or personal. I’ve always been into accessibility and fairness tech, so this felt like the perfect chance to build something that could make hiring more equitable.
What We Learned I ended up learning a ton of new things, especially around Python NLP. We used spaCy and pyresparser to pull out skills from resumes, then used Fairlearn to make sure the scoring wasn’t unfair toward any gender or ethnicity. On the computer vision side, I got comfortable with OpenCV—mainly using HSV color detection to figure out what colors someone is wearing. For example, navy blue falls in a certain H range, and we used that to score outfits like navy + white combos. We also dug into fairness metrics like demographic parity and used them to make sure our system didn’t accidentally discriminate based on appearance.
How We Built It We started with the Python backend, parsing resumes using spaCy and then training a simple scorer with scikit-learn. After that, we plugged everything into Fairlearn’s ThresholdOptimizer to debias the outputs. For attire, we built a whole OpenCV pipeline that converts images to HSV, checks different color masks, and compares clothing combos to what’s usually considered professional. Navy plus white, for example, earned bonus points. We put everything together in a Streamlit app with webcam support, and combined our scores into one final unbiased rating.
Challenges Faced Lighting was honestly one of the biggest problems—HSV is super sensitive, so colors kept getting misread. We ended up fixing it with adaptive thresholding and some masking so the system wouldn’t confuse skin tones with clothing (which would’ve been terrible for fairness). Another struggle was that making the model more fair sometimes lowered accuracy, so we had to mess around with a bunch of hyperparameters to balance both. We also didn’t have a ton of diverse test data, so we created synthetic resumes and outfit images to train with. And since it was a hackathon, we didn’t have time for fancy stuff like Mask R-CNN, so we stuck to basic contour methods for segmentation.
Log in or sign up for Devpost to join the conversation.