Info

Testing and Issues

You can test this entry and submit issues during the testing period of the C++ Contest 2022 contest.

Entries with serious issues will not be able to win the contest, but even minor issues might be important for overall results.

Voting

Comments

Solution is implemented using minimum from OpeCV + standard Apple FaceTracker.

Currently it implement skin smoothing over detected face landmarks, without changing anything else. It works relatively well on the latest phones, performance on the old devices is slightly worse (mainly due to iOS Face Tracker, which can be replaced with more optimized version in the future).

Next steps might be to implement face mesh transforms using ARKit
iOS
С++ implementation is just in one module, which will for Android as well (with landmarks as an input). Compressed .ipa module is just 620kb.
iOS
Result of the smoothing looks pretty natural, without dramatical changes in the face structure. Smoothing parameters can be configured for a nicer view.

Also, result rendering can be optimized using some of the platform-specific features such as Metal (currently it's implemented using OpenCV functions) which can affect performance for low-end devices
iOS
You have not added any comments yet...
by rating

Issues

Fair Mammoth Mar 17 at 17:48
В приложении используется системная функция для определения черт лица (Vision Framework), после чего происходит выборочная модификация найденных областей при помощи библиотеки OpenCV. Приложение работает на CPU без использования GPU.

Размер библиотеки ≈ 1,5 MB с потенциальным уменьшением до требуемого размера.

Приложение в автоматическом режиме преобразовывает лицо пользователя – сглаживает тон кожи лица. Пользователю выводится два видеопотока – исходное видео с камеры и результат работы алгоритма. При движении устройства преобразованный видеопоток опускается ниже ожидаемых 30 FPS.

В ходе тестирования приложения и моделирования различных ситуаций реального мира были выявлены следующие недоработки как алгоритма, так и приложения:
– Глубина эффекта маски чрезмерно навязчивая, резкая. Лицо с наложенным фильтром выглядит искусственным, чересчур однородным.
– Пропорции видеопотоков нарушены. Так, на iPhone 6S Plus видео выводится растянутым по ширине. 
– Приложение часто вылетает после одной-двух минут в активном состоянии.
– Устройства, на которых запускалось приложения, сильно нагреваются.
iPhone 12 Pro (iOS 15.3); iPhone XS (iOS 15.3); iPhone 6S Plus (iOS 15.3).
10
Nobody added any issues yet...