Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Detección de rostros en un vídeo almacenado
Amazon Rekognition Video puede detectar rostros en vídeos almacenados en un bucket de Amazon S3 y proporcionar información como:
-
Las veces que los rostros se detectan en un vídeo.
-
La ubicación de los rostros en un fotograma de vídeo a la hora en la que se detectan.
-
Referencias faciales como, por ejemplo, la posición del ojo izquierdo.
La detección de rostros de Amazon Rekognition Video en vídeos almacenados una operación asíncrona. Para iniciar la detección de rostros en vídeos llame a StartFaceDetection. Amazon Rekognition Video publica el estado de la realización del análisis de vídeo en un tema de Amazon Simple Notification Service (Amazon SNS). Si el análisis de vídeo es correcto, puede llamar a GetFaceDetection para obtener los resultados del análisis de vídeo. Para obtener más información sobre cómo iniciar el análisis de vídeo y obtener los resultados, consulte Llamada a operaciones deAmazon Rekognition Video.
Este procedimiento amplía el código de Análisis de un vídeo almacenado en un bucket de Amazon S3 con Java o Python (SDK), que utiliza una cola de Amazon Simple Queue Service (Amazon SQS) para obtener el estado de realización de una solicitud de análisis de vídeo.
Para detectar rostros en un vídeo almacenado en un bucket de Amazon S3 (SDK)
-
Realice Análisis de un vídeo almacenado en un bucket de Amazon S3 con Java o Python (SDK).
-
Añada el código siguiente a la clase
VideoDetect
que ha creado en el paso 1.nota Si ya ha ejecutado un ejemplo de vídeo distinto de Análisis de un vídeo almacenado en un bucket de Amazon S3 con Java o Python (SDK), el nombre de la función que se va a reemplazar es distinto.
-
Ejecute el código. Se muestra información sobre los rostros detectados en el vídeo.
Respuesta de la operación GetFaceDetection de
GetFaceDetection
devuelve una matriz (Faces
) que contiene información sobre los rostros detectados en el vídeo. Un elemento de
matriz, FaceDetection, existe para cada vez que se detecta un rostro en el vídeo. Los elementos de la matriz
se devuelven ordenados por tiempo, en milisegundos desde el inicio del vídeo.
El siguiente ejemplo es una respuesta JSON parcial de GetFaceDetection
. En la respuesta, tenga en cuenta lo siguiente:
-
Información de rostro – El elemento de matriz
FaceDetection
contiene información sobre el rostro detectado (FaceDetail) y el momento en que se detectó en el vídeo (Timestamp
). -
Información de paginación – El ejemplo muestra una página de información de detección de rostros. Puede especificar la cantidad de elementos de persona que se van a devolver en el parámetro de entrada
MaxResults
paraGetFaceDetection
. Si existen más resultados queMaxResults
,GetFaceDetection
devuelve un token (NextToken
) que se utiliza para obtener la siguiente página de resultados. Para obtener más información, consulte Obtención de resultados de análisis deAmazon Rekognition Video. -
Información de vídeo – La respuesta incluye información acerca del formato de vídeo (
VideoMetadata
) de cada página de información devuelta porGetFaceDetection
.
{ "Faces": [ { "Face": { "BoundingBox": { "Height": 0.23000000417232513, "Left": 0.42500001192092896, "Top": 0.16333332657814026, "Width": 0.12937499582767487 }, "Confidence": 99.97504425048828, "Landmarks": [ { "Type": "eyeLeft", "X": 0.46415066719055176, "Y": 0.2572723925113678 }, { "Type": "eyeRight", "X": 0.5068183541297913, "Y": 0.23705792427062988 }, { "Type": "nose", "X": 0.49765899777412415, "Y": 0.28383663296699524 }, { "Type": "mouthLeft", "X": 0.487221896648407, "Y": 0.3452930748462677 }, { "Type": "mouthRight", "X": 0.5142884850502014, "Y": 0.33167609572410583 } ], "Pose": { "Pitch": 15.966927528381348, "Roll": -15.547388076782227, "Yaw": 11.34195613861084 }, "Quality": { "Brightness": 44.80223083496094, "Sharpness": 99.95819854736328 } }, "Timestamp": 0 }, { "Face": { "BoundingBox": { "Height": 0.20000000298023224, "Left": 0.029999999329447746, "Top": 0.2199999988079071, "Width": 0.11249999701976776 }, "Confidence": 99.85971069335938, "Landmarks": [ { "Type": "eyeLeft", "X": 0.06842322647571564, "Y": 0.3010137975215912 }, { "Type": "eyeRight", "X": 0.10543643683195114, "Y": 0.29697132110595703 }, { "Type": "nose", "X": 0.09569807350635529, "Y": 0.33701086044311523 }, { "Type": "mouthLeft", "X": 0.0732642263174057, "Y": 0.3757539987564087 }, { "Type": "mouthRight", "X": 0.10589495301246643, "Y": 0.3722417950630188 } ], "Pose": { "Pitch": -0.5589138865470886, "Roll": -5.1093974113464355, "Yaw": 18.69594955444336 }, "Quality": { "Brightness": 43.052337646484375, "Sharpness": 99.68138885498047 } }, "Timestamp": 0 }, { "Face": { "BoundingBox": { "Height": 0.2177777737379074, "Left": 0.7593749761581421, "Top": 0.13333334028720856, "Width": 0.12250000238418579 }, "Confidence": 99.63436889648438, "Landmarks": [ { "Type": "eyeLeft", "X": 0.8005779385566711, "Y": 0.20915353298187256 }, { "Type": "eyeRight", "X": 0.8391435146331787, "Y": 0.21049551665782928 }, { "Type": "nose", "X": 0.8191410899162292, "Y": 0.2523227035999298 }, { "Type": "mouthLeft", "X": 0.8093273043632507, "Y": 0.29053622484207153 }, { "Type": "mouthRight", "X": 0.8366993069648743, "Y": 0.29101791977882385 } ], "Pose": { "Pitch": 3.165884017944336, "Roll": 1.4182015657424927, "Yaw": -11.151537895202637 }, "Quality": { "Brightness": 28.910892486572266, "Sharpness": 97.61507415771484 } }, "Timestamp": 0 }....... ], "JobStatus": "SUCCEEDED", "NextToken": "i7fj5XPV/fwviXqz0eag9Ow332Jd5G8ZGWf7hooirD/6V1qFmjKFOQZ6QPWUiqv29HbyuhMNqQ==", "VideoMetadata": { "Codec": "h264", "DurationMillis": 67301, "FileExtension": "mp4", "Format": "QuickTime / MOV", "FrameHeight": 1080, "FrameRate": 29.970029830932617, "FrameWidth": 1920 } }