Я создаю php-приложение для распознавания лиц с помощью веб-камеры с помощью Amazon Rekognition API.
я сделал базовые совпадения лиц, используя API из приведенных ниже документов.
http://docs.aws.amazon.com/aws-sdk-php/v3/api/api-rekognition-2016-06-27.html#comparefaces
Теперь, когда я снимаю свои лица перед веб-камерой, Amazon API проверяет лицо и ищет лица из коллекции. И проблема в том, что когда я показываю изображение / фотографии в моей телефонной галерее перед веб-камерой, оно также проверяется AWS API и возвращает спички. Я обнаружил, что есть API-интерфейс DetectionLables, но он неправильно определяет, является ли он реальным или изображением другого изображения.
Есть ли способ преодолеть эту проблему? я хочу определить, было ли захваченное изображение получено в реальном или из другого изображения?
Если я вас правильно понимаю, изображения на экране вашего телефона видны на изображении с веб-камеры, которое вы отправляете в Rekognition. Я не думаю, что есть способ остановить это — я на самом деле надеялся на подобную вещь — больший контроль над запросом indexFaces через параметр QualityFilter, но это очень ограниченно, только AUTO / NONE.
Однако, в зависимости от того, как вы потребляете ответ Rekognition, может быть обходной путь — использовать только грани, имеющие ограничивающий прямоугольник выше определенного порога измерения. Я предполагаю, что лица, которые вы хотите обнаружить, вы и другие люди на видеоизображении намного больше, чем лица, обнаруженные на экране телефона.
Предупреждение о BoundingBox — я считаю его немного ненадежным, оно не всегда точно отображает границы лица. Вместо этого я сам использовал Ориентиры для определения «границ».
Других решений пока нет …