

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.

# Comprensión de la API de detección de equipos de protección individual
<a name="ppe-request-response"></a>

La siguiente información describe la [DetectProtectiveEquipment](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DetectProtectiveEquipment.html)API. Para ver el código de ejemplo, consulte [Detección de equipos de protección individual en una imagen](ppe-procedure-image.md).

## Suministrar una imagen
<a name="detect-protective-equipment-request"></a>

Puede proporcionar una imagen de entrada (formato JPG o PNG) como bytes de imagen o referencia a una imagen almacenada en un bucket de Amazon S3. 

Recomendamos utilizar imágenes en las que el rostro de la persona mire hacia la cámara.

Si la imagen de entrada no está girada en una orientación de 0 grados, le recomendamos girarla a una orientación de 0 grados antes de enviarla a `DetectProtectiveEquipment`. Las imágenes en formato JPG pueden contener información de orientación en los metadatos del formato de archivo de imagen intercambiable (Exif). Puede utilizar esta información para escribir código que haga una rotación. Para obtener más información, consulte [Exif Version 2.32](http://cipa.jp/std/documents/download_e.html?DC-008-Translation-2019-E). Las imágenes en formato PNG no contienen información sobre la orientación de la imagen. 

 Para transferir una imagen desde un bucket de Amazon S3, utilice un usuario con al menos los ReadOnlyAccess privilegios de `` Amazon S3. Utilice un usuario con privilegios de `AmazonRekognitionFullAccess` para llamar a `DetectProtectiveEquipment.` 

En el siguiente ejemplo, si introduce JSON, la imagen se pasa a un bucket de Amazon S3. Para obtener más información, consulte [Trabajar con imágenes](images.md). En el ejemplo se solicita un resumen de todos los tipos de EPI (cubierta para la cabeza, cubierta para las manos y cubierta para la cara) con una confianza de detección mínima (`MinConfidence`) del 80 %. Debe especificar un valor de `MinConfidence` que esté entre el 50 y el 100 %, ya que `DetectProtectiveEquipment` solo devuelve predicciones cuando la confianza de detección está entre el 50 y el 100 %. Si especifica un valor inferior al 50 %, los resultados son los mismos, especificando un valor del 50 %. Para obtener más información, consulte [Especificar los requisitos de resumen](#ppe-summarization-input-parameters). 

```
{
    "Image": {
        "S3Object": {
            "Bucket": "amzn-s3-demo-bucket",
            "Name": "worker.jpg"
        }
    },
    "SummarizationAttributes": {
        "MinConfidence": 80,
        "RequiredEquipmentTypes": [
            "FACE_COVER",
            "HAND_COVER",
            "HEAD_COVER"
        ]
    }
}
```

Si tiene una amplia gama de imágenes para procesar, considere la posibilidad de utilizar [AWS Batch](https://docs.aws.amazon.com/batch/latest/userguide/) para procesar las llamadas a `DetectProtectiveEquipment` en lotes en segundo plano. 

### Especificar los requisitos de resumen
<a name="ppe-summarization-input-parameters"></a>

Si lo desea, puede utilizar el parámetro de entrada `SummarizationAttributes` ([ProtectiveEquipmentSummarizationAttributes](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentSummarizationAttributes.html)) para solicitar información resumida sobre los tipos de PPE detectados en una imagen.

Para especificar los tipos de EPI que se van a resumir, utilice el campo de matriz de `RequiredEquipmentTypes`. En la matriz, incluya uno o más `FACE_COVER`, `HAND_COVER` o `HEAD_COVER`. 

Utilice el campo `MinConfidence` para especificar una confianza de detección mínima (50-100). El resumen no incluye las personas, las partes del cuerpo, la cobertura de partes del cuerpo ni los elementos de EPI detectados con una confianza inferior a `MinConfidence`.

Para obtener información sobre la respuesta de resumen de `DetectProtectiveEquipment`, consulte [Entender la DetectProtectiveEquipment respuesta](#detect-protective-equipment-response). 



## Entender la DetectProtectiveEquipment respuesta
<a name="detect-protective-equipment-response"></a>

`DetectProtectiveEquipment` devuelve una matriz de personas detectadas en la imagen de entrada. Para cada persona, se devuelve información sobre las partes del cuerpo detectadas y los elementos de EPI. El código JSON de la siguiente imagen de un trabajador con la cabeza, las manos y la cara cubiertas es el siguiente.

![\[Trabajador de la construcción con una camisa a cuadros, casco y máscara facial que sujeta una herramienta eléctrica. El rostro, el casco, los guantes y la herramienta se resaltan con cuadros verdes.\]](http://docs.aws.amazon.com/es_es/rekognition/latest/dg/images/worker-with-bb.png)


En el JSON, tenga en cuenta lo siguiente.
+ **Personas detectadas**: `Persons` es un conjunto de personas detectadas en la imagen (incluidas las personas que no llevan EPI). `DetectProtectiveEquipment` puede detectar el EPI en hasta 15 personas detectadas en una imagen. Cada [ProtectiveEquipmentPerson](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentPerson.html)objeto de la matriz contiene un carné de identidad, un recuadro delimitador para la persona, las partes del cuerpo detectadas y los elementos de protección personal detectados. El valor `Confidence` en `ProtectiveEquipmentPerson` indica el porcentaje de confianza que Amazon Rekognition tiene en que el recuadro delimitador contiene una persona.
+ **Partes del cuerpo**: `BodyParts` es un conjunto de partes del cuerpo ([ProtectiveEquipmentBodyPart](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentBodyPart.html)) detectadas en una persona (incluidas las partes del cuerpo que no están cubiertas por el EPP). Cada `ProtectiveEquipmentBodyPart` incluye el nombre (`Name`) de la parte del cuerpo detectada. `DetectProtectEquipment` puede detectar partes del cuerpo de la cara, la cabeza y las manos. El campo `Confidence` en `ProtectiveEquipmentBodyPart` indica el porcentaje de confianza que Amazon Rekognition tiene en la precisión de detección de la parte del cuerpo. 
+ **Elementos de EPI**: la matriz de `EquipmentDetections` en un objeto `ProtectiveEquipmentBodyPart` contiene una serie de elementos de EPI detectados. Cada [EquipmentDetection](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_EquipmentDetection.html)objeto contiene los siguientes campos. 
  +  `Type`: el tipo de EPI detectado.
  + `BoundingBox`: un recuadro delimitador alrededor del EPI detectado.
  + `Confidence`: la confianza que Amazon Rekognition tiene de que el recuadro delimitador contiene el EPI detectado.
  + `CoversBodyPart`: indica si el EPI detectado se encuentra en la parte del cuerpo correspondiente.

  El [CoversBodyPart](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CoversBodyPart.html)campo `Value` es un valor booleano que indica si el EPP detectado se encuentra en la parte del cuerpo correspondiente. El campo `Confidence` indica la confianza en la predicción. Se puede utilizar `CoversBodyPart` para filtrar los casos en los que el EPI detectado aparezca en la imagen, pero no en la persona. 
**nota**  
`CoversBodyPart` no indica ni implica que la persona esté adecuadamente protegida por el EPI o que el equipo de protección en sí esté debidamente colocado. 
+ **Información resumida**: `Summary` contiene la información resumida especificada en el parámetro de entrada `SummarizationAttributes`. Para obtener más información, consulte [Especificar los requisitos de resumen](#ppe-summarization-input-parameters).

  `Summary`es un objeto de tipo [ProtectiveEquipmentSummary](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentSummary.html)que contiene la siguiente información.
  + `PersonsWithRequiredEquipment`— Un conjunto IDs de personas en el que cada persona cumple los siguientes criterios.
    + La persona lleva puesto todo el EPI especificado en el parámetro de entrada `SummarizationAttributes`. 
    + El `Confidence` para la persona (`ProtectiveEquipmentPerson`), la parte del cuerpo (`ProtectiveEquipmentBodyPart`) y el equipo de protección (`EquipmentDetection`) es igual o superior al umbral de confianza mínimo especificado (`MinConfidence`).
    + El valor de `CoversBodyPart` para todos los elementos del EPI es true. 
  + `PersonsWithoutRequiredEquipment`— Un conjunto IDs de personas que cumplen uno de los siguientes criterios. 
    + El valor `Confidence` de la persona (`ProtectiveEquipmentPerson`), la parte del cuerpo (`ProtectiveEquipmentBodyPart`) y la cobertura de la parte del cuerpo (`CoversBodyPart`) superan el umbral de confianza mínimo especificado (`MinConfidence`), pero a la persona le faltan uno o más EPI específicos (`SummarizationAttributes`).
    + El valor de `CoversBodyPart` es falso para cualquier EPI (`SummarizationAttributes`) especificado que tenga un valor de `Confidence` superior al umbral de confianza mínimo especificado (`MinConfidence`). La persona también tiene todo el EPI especificado (`SummarizationAttributes`) y los valores `Confidence` de persona (`ProtectiveEquipmentPerson`), parte del cuerpo (`ProtectiveEquipmentBodyPart`) y equipo de protección (`EquipmentDetection`) son superiores o iguales al umbral mínimo de confianza (`MinConfidence`).
  + `PersonsIndeterminate`— Un conjunto IDs de personas detectadas en el que el `Confidence` valor correspondiente a la persona (`ProtectiveEquipmentPerson`), la parte del cuerpo (`ProtectiveEquipmentBodyPart`), el equipo de protección (`EquipmentDetection`) o el valor `CoversBodyPart` booleano es inferior al umbral mínimo de confianza especificado (`MinConfidence`). 

  Utilice el tamaño de la matriz para obtener el recuento de un resumen concreto. Por ejemplo, el valor de `PersonsWithRequiredEquipment` indica el número de personas detectadas que llevan el tipo de EPI especificado.

  Puede usar el ID de la persona para obtener más información sobre una persona, como la ubicación del recuadro delimitador de la persona. El ID de la persona se asigna al campo de ID de un objeto `ProtectiveEquipmentPerson` devuelto en `Persons` (matriz de `ProtectiveEquipmentPerson`). A continuación, puede obtener el cuadro delimitador y otra información del objeto `ProtectiveEquipmentPerson` correspondiente. 

```
 {
    "ProtectiveEquipmentModelVersion": "1.0",
    "Persons": [
        {
            "BodyParts": [
                {
                    "Name": "FACE",
                    "Confidence": 99.99861145019531,
                    "EquipmentDetections": [
                        {
                            "BoundingBox": {
                                "Width": 0.14528800547122955,
                                "Height": 0.14956723153591156,
                                "Left": 0.4363413453102112,
                                "Top": 0.34203192591667175
                            },
                            "Confidence": 99.90001678466797,
                            "Type": "FACE_COVER",
                            "CoversBodyPart": {
                                "Confidence": 98.0676498413086,
                                "Value": true
                            }
                        }
                    ]
                },
                {
                    "Name": "LEFT_HAND",
                    "Confidence": 96.9786376953125,
                    "EquipmentDetections": [
                        {
                            "BoundingBox": {
                                "Width": 0.14495663344860077,
                                "Height": 0.12936046719551086,
                                "Left": 0.5114737153053284,
                                "Top": 0.5744519829750061
                            },
                            "Confidence": 83.72270965576172,
                            "Type": "HAND_COVER",
                            "CoversBodyPart": {
                                "Confidence": 96.9288558959961,
                                "Value": true
                            }
                        }
                    ]
                },
                {
                    "Name": "RIGHT_HAND",
                    "Confidence": 99.82939147949219,
                    "EquipmentDetections": [
                        {
                            "BoundingBox": {
                                "Width": 0.20971858501434326,
                                "Height": 0.20528452098369598,
                                "Left": 0.2711356580257416,
                                "Top": 0.6750612258911133
                            },
                            "Confidence": 95.70789337158203,
                            "Type": "HAND_COVER",
                            "CoversBodyPart": {
                                "Confidence": 99.85433197021484,
                                "Value": true
                            }
                        }
                    ]
                },
                {
                    "Name": "HEAD",
                    "Confidence": 99.9999008178711,
                    "EquipmentDetections": [
                        {
                            "BoundingBox": {
                                "Width": 0.24350935220718384,
                                "Height": 0.34623199701309204,
                                "Left": 0.43011072278022766,
                                "Top": 0.01103297434747219
                            },
                            "Confidence": 83.88762664794922,
                            "Type": "HEAD_COVER",
                            "CoversBodyPart": {
                                "Confidence": 99.96485900878906,
                                "Value": true
                            }
                        }
                    ]
                }
            ],
            "BoundingBox": {
                "Width": 0.7403100728988647,
                "Height": 0.9412225484848022,
                "Left": 0.02214839495718479,
                "Top": 0.03134796395897865
            },
            "Confidence": 99.98855590820312,
            "Id": 0
        }
    ],
    "Summary": {
        "PersonsWithRequiredEquipment": [
            0
        ],
        "PersonsWithoutRequiredEquipment": [],
        "PersonsIndeterminate": []
    }
}
```