Love the engineering angle – surprised no one’s bit yet, given this crowd usually loves a good optimization problem 😄
To your question: yes, I’ve actually gone down that rabbit hole. Tried combining OpenCV for face landmark detection, some basic ML for shape classification, and even scraped texture/color data. The theory works – you can map face proportions to classic rules (oval, square, etc.) and match them to haircut archetypes. But the real pain point is routine – how much time you’re willing to spend, how it handles wind/humidity, and whether it fits your daily grind. That part is harder to quantify without real-world testing.
Since you’re after something practical, there’s a tool called HairPick https://hairpick.net that essentially does all that heavy lifting for you. You upload a selfie, answer a few questions about texture and lifestyle, and it generates realistic previews of different styles on your own face – so you’re not just guessing from a single photo. It’s not open-source Python, but it’s the closest thing to a data-driven decision without building your own CNN from scratch.
I’d say: use it to shortlist 2–3 options, then go to your barber with those images and a clear brief. Saves you the “hope for the best” step and actually accounts for maintenance. Way more engineering than trusting your buddy’s opinion 😉
Brilliant, you have chosen not to reinvent the wheel. Download rfsims products and and save your time.