DEV Community на русском
Подписаться
Как я создал приложение для оценки лиц, работающее только в браузере, с помощью Next.js + MediaPipe (без загрузки, $0 за сканирование)
Автор создал PSLRate для решения проблем существующих инструментов "оцени мое лицо", которые загружают селфи или требуют оплаты за каждый запрос к API. Основной принцип PSLRate заключается в вычислении оценок привлекательности лица полностью в браузере пользователя, устраняя необходимость загрузки на сервер или регулярных платежей. Этот клиентский подход фокусируется на измеримых геометрических особенностях лица, таких как симметрия, деление лица на трети и пятые, наклон глазных щелей и соотношение ширины лица к его высоте. Эти геометрические расчеты детерминированы и не требуют внешних моделей или облачной обработки. Инструмент использует FaceLandmarker от MediaPipe для извлечения 478 3D-ориентиров (landmarks) лица непосредственно на устройстве пользователя. Затем эти ориентиры используются для расчета различных геометрических метрик, каждая из которых оценивается по шкале от нуля до единицы в зависимости от ее близости к идеальным пропорциям. Взвешенное сочетание этих геометрических оценок используется для генерации окончательной оценки привлекательности по десятибалльной шкале. Этот бесплатный уровень полностью клиентский, что делает его по-настоящему бесплатным и сохраняющим конфиденциальность, поскольку фотография пользователя никогда не покидает его браузер. Доступен платный уровень, который отправляет фотографию один раз в LLM для анализа личности и "преображения", покрывая стоимость API за счет кредитов пользователя. Это архитектурное решение по переносу детерминированной работы на клиентскую сторону подчеркивается как ключ к созданию ценного и надежного бесплатного продукта.