В настоящее время я работаю над приложением для телефонов Android. Мы хотим распознавать черты лица. Программа должна уметь определять положение глаз, носа, рта и края лица.
Точность должна быть хорошей, но не обязательно идеальной. Чтобы ускорить процесс, можно потерять некоторую точность. Все лица будут фронтальными, и мы заранее узнаем их приблизительное положение. Нам не нужно живое обнаружение. Характеристики должны быть извлечены из сохраненных изображений. Время обнаружения должно быть таким, чтобы оно не мешало работе пользователя. Так что, может быть, даже 2 или 3 секунды подойдут.
При таких предположениях не должно быть слишком сложно найти библиотеку, которая позволит нам достичь этого. Но у меня вопрос: какой подход лучше? Что вы предлагаете? Я впервые разрабатываю для Android, и я не хочу идти в неправильном направлении. Это хорошая идея для нас - библиотека или лучше (быстрее / с большей точностью) реализовать какой-то существующий алгоритм самостоятельно?
Я много гуглил и нашел много интересного. Также в Android API есть функция распознавания лиц. Но возвращенный класс лица (http://developer.android.com/reference/android/media/FaceDetector.Face.html) содержит только положение глаз. Это меньше для нашего приложения. Также есть OpenCV для Android или JavaCV. Как вы думаете, с чем лучше всего работать? Для какой библиотеки есть хорошая документация, учебные пособия?