Android FaceDetector.Face Euler углы – 0 все время

Я пытаюсь получить угол Эйлера лица, обнаруженный FaceDetector.

Вот что я использую для вывода в Logcat:

Log.v("debug", " X: " + face.pose(Face.EULER_X) + " Y: " + face.pose(Face.EULER_Y) + " Z: " + face.pose(Face.EULER_Z) ); 

Но он всегда возвращает 0.0 для всех трех, независимо от того, на каком углу находится лицо. Любые идеи почему?

Solutions Collecting From Web of "Android FaceDetector.Face Euler углы – 0 все время"

Да, FaceDetector от API 1 никогда не возвращает угол позы. Вы можете посмотреть исходный код для проверки.

Новый FaceDetectionListener из API 14 вернет угол позы, но он доступен только на ограниченном количестве устройств прямо сейчас. Не все устройства, использующие API 14, могут использовать его. Вы должны вызвать getMaxNumDetectedFaces (), чтобы узнать, поддерживает ли ваше устройство этот API.

Вы можете поочередно попробовать использовать OpenCV. Пара вариантов для этого: http://code.opencv.org/projects/opencv/wiki/OpenCV4Android и http://code.google.com/p/javacv/ . По моему опыту, они не стоят хлопот, если вам действительно не нужен угловой позы.

Здесь есть несколько подобных вопросов. Посмотрите первый ответ по этой ссылке:

Значения по умолчанию для Facedetector Android всегда равны 0

И см. Ниже, чтобы кто-то сказал, что они решили проблему:

Android Face Detection