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.
Analizar un vídeo con el AWS Command Line Interface
Puede usar AWS Command Line Interface (AWS CLI) para llamar a las operaciones de Amazon Rekognition Video. El patrón de diseño es el mismo que cuando se usa el Amazon Rekognition API Video con uno u otro. AWS SDK for Java AWS SDKs Para obtener más información, consulte Descripción general de Amazon Rekognition Video API. Los siguientes procedimientos muestran cómo utilizarlos AWS CLI para detectar etiquetas en un vídeo.
Comienza la detección de etiquetas en un vídeo llamando a start-label-detection
. Cuando Amazon Rekognition termine de analizar el vídeo, el estado de finalización se enviará al tema de SNS Amazon especificado en el parámetro de. --notification-channel
start-label-detection
Puedes obtener el estado de finalización suscribiendo una cola de Amazon Simple Queue Service SQS (Amazon) al tema de Amazon. SNS A continuación, sondea el mensaje de recepción para obtener el estado de finalización de la encuesta en la cola de AmazonSQS.
Al llamar a StartLabelDetection
, puede filtrar los resultados proporcionando argumentos de filtrado a los argumentos LabelsInclusionFilter
y/o LabelsExclusionFilter
. Para obtener más información, consulte Detección de etiquetas en un vídeo.
La notificación de estado de finalización es una JSON estructura incluida en la respuesta. receive-message
Debe extraerlo JSON de la respuesta. Para obtener información sobre el estado de finalizaciónJSON, consulteReferencia: notificación de resultados de análisis de vídeo. Si el valor del Status
campo del estado completado JSON esSUCCEEDED
, puede obtener los resultados de la solicitud de análisis de vídeo llamando al teléfonoget-label-detection
. Al llamar a GetLabelDetection
, puede ordenar y agregar los resultados devueltos utilizando los argumentos SortBy
y AggregateBy
.
Los siguientes procedimientos no incluyen código para sondear la SQS cola de Amazon. Además, no incluyen código para analizar lo JSON que se devuelve de la SQS cola de Amazon. Para ver un ejemplo en Java, consulte Análisis de un vídeo almacenado en un bucket de Amazon S3 con Java o Python (SDK).
Requisitos previos
Para ejecutar este procedimiento, debe tener el AWS CLI instalado. Para obtener más información, consulte Introducción a Amazon Rekognition. La AWS cuenta que utilice debe tener permisos de acceso a Amazon Rekognition. API Para obtener más información, Acciones definidas por Amazon Rekognition.
Para configurar Amazon Rekognition Video y subir un vídeo
-
Configure el acceso de los usuarios a Amazon Rekognition Video y configure el acceso de Amazon Rekognition Video a Amazon. SNS Para obtener más información, consulte Configuración de Amazon Rekognition Video.
-
Cargue un archivo de vídeo en formato MPEG 4 MOV o 4 a su bucket de S3. Para desarrollo y pruebas, le aconsejamos que utilice vídeos cortos con una duración inferior a 30 segundos.
Para ver las instrucciones, consulte Carga de objetos en Amazon S3 en la Guía del usuario de Amazon Simple Storage Service.
Para detectar etiquetas en un vídeo
-
Ejecute el siguiente AWS CLI comando para empezar a detectar etiquetas en un vídeo.
aws rekognition start-label-detection --video '{"S3Object":{"Bucket":"bucket-name","Name":"video-name"}}' \ --notification-channel '{"SNSTopicArn":"TopicARN","RoleArn":"RoleARN"}' \ --region region-name \ --features GENERAL_LABELS \ --profile profile-name \ --settings "{"GeneralLabels":{"LabelInclusionFilters":["Car"]}}
Actualice los siguientes valores:
-
Cambie
bucketname
yvideofile
por el nombre del bucket de Amazon S3 y el nombre de archivo que especificó en el paso 2. -
Cambia
us-east-1
a la AWS región que estás utilizando. -
Sustituya el valor de
profile_name
en la línea que crea la sesión de Rekognition por el nombre de su perfil de desarrollador. -
Cambia
TopicARN
al SNS tema ARN de Amazon que creaste en el paso 3 deConfiguración de Amazon Rekognition Video. -
Cambie
RoleARN
al rol ARN de IAM servicio que creó en el paso 7 deConfiguración de Amazon Rekognition Video. -
Si es necesario, puede especificar la
endpoint-url
. AWSCLIDebería determinar automáticamente el punto final adecuado en URL función de la región proporcionada. Sin embargo, si está utilizando un punto final desde su punto de conexión privado VPC, es posible que deba especificar elendpoint-url
. El recurso AWSService Endpoints muestra la sintaxis para especificar las direcciones URL de los puntos finales y los nombres y códigos de cada región. -
También puede incluir criterios de filtrado en el parámetro de configuración. Por ejemplo, puede utilizar un
LabelsInclusionFilter
o unLabelsExclusionFilter
junto a una lista de los valores deseados.
Si accede a él desde un dispositivo Windows, utilice comillas dobles CLI en lugar de comillas simples y evite las comillas dobles interiores con una barra invertida (es decir,\) para corregir cualquier error que pueda producirse en el analizador. Consulte a continuación un ejemplo:
aws rekognition start-label-detection --video "{\"S3Object\":{\"Bucket\":\"bucket-name\",\"Name\":\"video-name\"}}" --notification-channel "{\"SNSTopicArn\":\"TopicARN\",\"RoleArn\":\"RoleARN\"}" \ --region us-east-1 --features GENERAL_LABELS --settings "{\"GeneralLabels\":{\"LabelInclusionFilters\":[\"Car\"]}}" --profile profile-name
-
-
Anote el valor de
JobId
en la respuesta. La respuesta es similar a la del siguiente ejemplo. JSON{ "JobId": "547089ce5b9a8a0e7831afa655f42e5d7b5c838553f1a584bf350ennnnnnnnnn" }
-
Escribe un código para sondear el estado de finalización de la SQS lista de Amazon JSON (mediante receive-message).
-
Escribe el código para extraer el
Status
campo del estado de finalización. JSON -
Si el valor
Status
esSUCCEEDED
, ejecute el siguiente AWS CLI comando para mostrar los resultados de la detección de etiquetas.aws rekognition get-label-detection --job-id
JobId
\ --regionus-east-1
--sort-by TIMESTAMP aggregate-by TIMESTAMPSActualice los siguientes valores:
-
Cambie
JobId
para que coincida con el identificador de trabajo que ha anotado en el paso 2. -
Cambie
Endpoint
yus-east-1
al AWS punto final y a la región que esté utilizando.
Los resultados son similares a los del siguiente ejemploJSON:
{ "Labels": [ { "Timestamp": 0, "Label": { "Confidence": 99.03720092773438, "Name": "Speech" } }, { "Timestamp": 0, "Label": { "Confidence": 71.6698989868164, "Name": "Pumpkin" } }, { "Timestamp": 0, "Label": { "Confidence": 71.6698989868164, "Name": "Squash" } }, { "Timestamp": 0, "Label": { "Confidence": 71.6698989868164, "Name": "Vegetable" } }, .......
-