

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Comprendre l’API de détection des équipements de protection individuelle
<a name="ppe-request-response"></a>

Les informations suivantes décrivent l'[DetectProtectiveEquipment](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DetectProtectiveEquipment.html)API. Pour obtenir un exemple de code, consultez [Détection d’un équipement de protection individuelle dans une image](ppe-procedure-image.md).

## Fourniture d’une image
<a name="detect-protective-equipment-request"></a>

Vous fournissez une image d’entrée (format JPG ou PNG) sous forme d’octets d’image ou en référençant une image stockée dans un compartiment S3. 

Nous recommandons d’utiliser des images où le visage de la personne fait face à l’appareil photo.

Si votre image d’entrée n’est pas pivotée à 0 degré, nous vous recommandons de la faire pivoter à 0 degré avant de la soumettre à `DetectProtectiveEquipment`. Les images au format JPG peuvent contenir des informations d’orientation dans des métadonnées Exif (Exchangeable Image File Format). Vous pouvez utiliser ces informations pour écrire le code permettant de faire pivoter l’image. Pour en savoir plus, consultez [Exif Version 2.32](http://cipa.jp/std/documents/download_e.html?DC-008-Translation-2019-E). Les images au format PNG ne contiennent aucune information d’orientation de l’image. 

 Pour transmettre une image depuis un compartiment Amazon S3, utilisez un utilisateur possédant au moins les privilèges `` Amazon S3ReadOnlyAccess . Utiliser un utilisateur ayant des privilèges `AmazonRekognitionFullAccess` pour appeler `DetectProtectiveEquipment.` 

Dans l’exemple JSON d’entrée suivant, l’image est transmise dans un compartiment Amazon S3. Pour de plus amples informations, veuillez consulter [Travail avec les images](images.md). L’exemple demande un résumé de tous les types d’EPI (couvre-tête, couvre-main et couvre-visage) avec un niveau de confiance de détection minimum (`MinConfidence`) de 80 %. Vous devez spécifier une valeur `MinConfidence` comprise entre 50 et 100 % car `DetectProtectiveEquipment` ne renvoie des prédictions que lorsque le niveau de confiance de détection est compris entre 50 % et 100 %. Si vous spécifiez une valeur inférieure à 50 %, les résultats sont identiques si vous spécifiez une valeur de 50 %. Pour de plus amples informations, veuillez consulter [Spécifier les exigences de synthèse](#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 vous disposez d’une grande collection d’images à traiter pour le processus, pensez à utiliser [AWS Batch](https://docs.aws.amazon.com/batch/latest/userguide/) afin de traiter les appels de `DetectProtectiveEquipment` par lots en arrière-plan. 

### Spécifier les exigences de synthèse
<a name="ppe-summarization-input-parameters"></a>

Vous pouvez éventuellement utiliser le paramètre d'entrée `SummarizationAttributes` ([ProtectiveEquipmentSummarizationAttributes](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentSummarizationAttributes.html)) pour demander des informations récapitulatives sur les types d'EPI détectés dans une image.

Pour spécifier les types de PPE à résumer, utilisez le tableau `RequiredEquipmentTypes`. Dans le tableau, incluez un ou plusieurs des éléments suivants : `FACE_COVER`, `HAND_COVER` ou `HEAD_COVER`. 

Utilisez le champ `MinConfidence` pour spécifier un niveau de confiance de détection minimal (50 à 100). Le résumé n’inclut pas les personnes, les parties du corps, les parties du corps couvertes et les articles d’EPI détectés avec un niveau de confiance inférieur à `MinConfidence`.

Pour plus d’informations sur la réponse en résumé de `DetectProtectiveEquipment` consultez [Comprendre la DetectProtectiveEquipment réponse](#detect-protective-equipment-response). 



## Comprendre la DetectProtectiveEquipment réponse
<a name="detect-protective-equipment-response"></a>

`DetectProtectiveEquipment` renvoie un tableau des personnes détectées dans l’image d’entrée. Pour chaque personne, des informations sur les parties du corps détectées et les articles d’EPI détectés sont renvoyées. Le JSON de l’image suivante d’un travailleur portant un couvre-chef, un couvre-main et un couvre-visage est le suivant.

![\[Travailleur du bâtiment portant une chemise à carreaux, un casque de sécurité et un masque facial tenant un outil électrique. Les cases vertes mettent en valeur le visage, le casque, la main gantée et l'outil.\]](http://docs.aws.amazon.com/fr_fr/rekognition/latest/dg/images/worker-with-bb.png)


Dans JSON, notez les éléments suivants :
+ **Personnes détectées** : `Persons` ensemble de personnes détectées sur l’image (y compris les personnes ne portant pas d’EPI). `DetectProtectiveEquipment` peut détecter l’EPI sur un maximum de 15 personnes détectées sur une image. Chaque [ProtectiveEquipmentPerson](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentPerson.html)objet du tableau contient un identifiant personnel, un cadre de délimitation pour la personne, des parties du corps détectées et des articles d'EPI détectés. La valeur `Confidence` dans `ProtectiveEquipmentPerson` indique le pourcentage de confiance d’Amazon Rekognition quant à la présence d’une personne dans le cadre de délimitation.
+ **Parties du corps** : `BodyParts` ensemble de parties du corps ([ProtectiveEquipmentBodyPart](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentBodyPart.html)) détectées sur une personne (y compris les parties du corps non couvertes par un EPI). Chaque `ProtectiveEquipmentBodyPart` inclut le nom (`Name`) de la partie du corps détectée. `DetectProtectEquipment` peut détecter le visage, la tête, les parties du corps gauches et droites. Le champ `Confidence` dans `ProtectiveEquipmentBodyPart` indique le pourcentage de confiance d’Amazon Rekognition quant à la précision de détection de la partie du corps. 
+ **Articles EPI** : le tableau `EquipmentDetections` d’un objet `ProtectiveEquipmentBodyPart` contient un ensemble d’articles EPI détectés. Chaque [EquipmentDetection](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_EquipmentDetection.html)objet contient les champs suivants. 
  +  `Type` : le type d’EPI détecté.
  + `BoundingBox` : un cadre de délimitation autour de l’EPI détecté.
  + `Confidence` : la confiance d’Amazon Rekognition quant au fait que le boîtier de sélection contient l’EPI détecté.
  + `CoversBodyPart` : indique si l’EPI détecté se trouve sur la partie du corps correspondante.

  Le [CoversBodyPart](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CoversBodyPart.html)champ `Value` est une valeur booléenne qui indique si l'EPI détecté se trouve sur la partie du corps correspondante. Le champ `Confidence` indique le niveau de confiance dans la prédiction. Vous pouvez utiliser `CoversBodyPart` pour filtrer les cas où l’EPI détecté se trouve sur l’image, mais pas réellement sur la personne. 
**Note**  
`CoversBodyPart` n’indique pas ou n’implique pas que la personne est correctement protégée par l’équipement de protection, ou que l’équipement de protection lui-même est correctement porté. 
+ **Informations récapitulatives** : `Summary` contient les informations récapitulatives spécifiées dans le paramètre d’entrée `SummarizationAttributes`. Pour de plus amples informations, veuillez consulter [Spécifier les exigences de synthèse](#ppe-summarization-input-parameters).

  `Summary`est un objet de type [ProtectiveEquipmentSummary](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentSummary.html)qui contient les informations suivantes.
  + `PersonsWithRequiredEquipment`— Un ensemble IDs de personnes où chaque personne répond aux critères suivants.
    + La personne porte tous les équipements de protection individuelle spécifiés dans le paramètre d’entrée `SummarizationAttributes`. 
    + Le niveau de `Confidence` pour la personne (`ProtectiveEquipmentPerson`), la partie du corps (`ProtectiveEquipmentBodyPart`), l’équipement de protection (`EquipmentDetection`) est égal ou supérieur au seuil de confiance minimum spécifié (`MinConfidence`).
    + La valeur de `CoversBodyPart` pour tous les articles de protection individuelle est vraie. 
  + `PersonsWithoutRequiredEquipment`— Un ensemble IDs de personnes répondant à l'un des critères suivants. 
    + Les valeurs `Confidence` pour la personne (`ProtectiveEquipmentPerson`), la partie du corps (`ProtectiveEquipmentBodyPart`) et la couverture des parties du corps (`CoversBodyPart`) sont supérieures au seuil de confiance minimum spécifié (`MinConfidence`), mais il manque un ou plusieurs EPI spécifiés (`SummarizationAttributes`) à la personne.
    + La valeur de `CoversBodyPart` est fausse pour tout PPE spécifié (`SummarizationAttributes`) dont la valeur `Confidence` est supérieure au seuil de confiance minimum spécifié (`MinConfidence`). La personne possède également tous les équipements de protection individuelle spécifiés (`SummarizationAttributes`) et les valeurs `Confidence` pour la personne (`ProtectiveEquipmentPerson`), la partie du corps (`ProtectiveEquipmentBodyPart`) et l’équipement de protection (`EquipmentDetection`) sont supérieures ou égales au seuil de confiance minimum (`MinConfidence`).
  + `PersonsIndeterminate`— Un tableau IDs des personnes détectées dont la `Confidence` valeur pour la personne (`ProtectiveEquipmentPerson`), la partie du corps (`ProtectiveEquipmentBodyPart`), l'équipement de protection (`EquipmentDetection`) ou le `CoversBodyPart` booléen est inférieure au seuil de confiance minimum spécifié (`MinConfidence`). 

  Utilisez la taille du tableau pour obtenir le nombre d’un résumé particulier. Par exemple, la taille de `PersonsWithRequiredEquipment` indique le nombre de personnes détectées comme portant le type d’EPI spécifié.

  Vous pouvez utiliser l’identifiant de la personne pour obtenir de plus amples informations sur une personne, telles que l’emplacement de la personne dans le cadre de délimitation. L’ID de personne correspond au champ ID d’un objet (`ProtectiveEquipmentPerson`) renvoyé dans `Persons` (tableau de `ProtectiveEquipmentPerson`). Vous pouvez ensuite obtenir le cadre de délimitation et d’autres informations à partir de l’objet `ProtectiveEquipmentPerson` correspondant. 

```
 {
    "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": []
    }
}
```