2015-08-17 4 views
2

Я тестировал новый API-интерфейс Face для Android и заметил, что даже с включенным «ACCURATE_MODE» он не обнаруживает лиц, которые использовали для обнаружения старого API FaceDetector. Также мне хотелось бы знать, результаты битмап-кодирования «RGB_565» против «ARGB_888» при создании результатов.Новые ограничения API Face Face

+0

Можете ли вы привести несколько примеров? Есть ли что-то общее с примерами, которые не работают для вас? (например, очень маленькие грани?). – pm0733464

+0

Мне кажется, что размер лица должен быть в «правильном соотношении» по сравнению с измерением изображения для обнаружения. Поэтому лица не обязательно маленькие, чтобы их не обнаружить, но они малы по сравнению с размером изображения. Если я обрезаю изображение во время выполнения и передаю его в детектор, он обнаружит эти грани и столько, сколько я увеличу больше (обрезая меньший размер исходного изображения), он обнаружит больше лиц в случае, когда у меня есть несколько лица в изображении. – feisal

+0

Делает смысл. См. Изменения к моему ответу ниже, что объясняет эту проблему. – pm0733464

ответ

2

Обновление:

Вопрос заключается в том, что детектор лица устанавливается только обнаружить лица, которые являются по меньшей мере, 10% по умолчанию (в качестве оптимизации производительности).

Новый выпуск Google Play Services 8.4 поддерживает установку минимального размера лица, позволяя обнаруживать более мелкие грани. Смотрите метод setMinFaceSize здесь:

https://developers.google.com/android/reference/com/google/android/gms/vision/face/FaceDetector.Builder.html#setMinFaceSize(float)

+0

Я предполагаю, что нет никакого способа манипулировать этими цифрами, какие-либо предложения о том, как обнаружить меньшие лица в изображении, учитывая тот факт, что я не обязательно знаю, где на изображении они расположены, и какое отношение лицо может иметь по сравнению с изображением размер – feisal

+0

Основываясь на моем опыте, ширина изображения не является единственным фактором, и мне пришлось обрезать высоту, а также обнаруживать большую часть граней, например, перекрывающиеся фрагменты размером 400x400. – feisal

+0

См. Обновление выше, которое позволяет обнаруживать более мелкие грани без необходимости использования срезов. – pm0733464

1

Я видел эту проблему в нашем проекте ObscuraCam [0] и оставлен как старым, так и новым API, чтобы попытаться максимизировать обнаружение.

Кажется, что новый API только лучше в деталях, которые он дает вам о ориентирах лица и классификации выражений, а не в способности фактического обнаружения лиц или частичных лиц.

[0] https://github.com/guardianproject/obscuracam