

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Memahami API deteksi alat pelindung diri
<a name="ppe-request-response"></a>

Informasi berikut menjelaskan API [DetectProtectiveEquipment](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DetectProtectiveEquipment.html). Untuk kode sampel, lihat [Mendeteksi alat pelindung diri dalam citra](ppe-procedure-image.md).

## Menyuplai citra
<a name="detect-protective-equipment-request"></a>

Anda dapat memberikan citra input (JPG atau format PNG), baik sebagai bit citra atau pun referensi citra yang disimpan dalam bucket Amazon S3. 

Sebaiknya gunakan citra yang menunjukkan wajah orang tersebut menghadap ke kamera.

Jika citra input Anda tidak diputar ke orientasi 0 derajat, sebaiknya putar ke orientasi 0 derajat sebelum mengirimkannya ke `DetectProtectiveEquipment`. Citra dalam format JPG mungkin berisi informasi orientasi dalam metadata format (Exif) file citra yang dapat ditukar. Anda dapat menggunakan informasi ini untuk menulis kode yang memutar citra Anda. Untuk informasi selengkapnya, lihat [Exif versi 2.32](http://cipa.jp/std/documents/download_e.html?DC-008-Translation-2019-E). Citra format PNG tidak berisi informasi orientasi citra. 

 Untuk meneruskan gambar dari bucket Amazon S3, gunakan pengguna dengan setidaknya priviliges `` ReadOnlyAccess AmazonS3. Gunakan pengguna dengan `AmazonRekognitionFullAccess` priviliges untuk menelepon `DetectProtectiveEquipment.` 

Pada contoh JSON input berikut, citra dilewatkan dalam bucket Amazon S3. Untuk informasi selengkapnya, lihat [Bekerja dengan citra](images.md). Contoh meminta ringkasan semua tipe APD (penutup kepala, penutup tangan, dan penutup wajah) dengan kepercayaan pendeteksian minimal (`MinConfidence`) dari 80%. Anda harus menentukan nilai `MinConfidence` yang berada antara 50-100% sebagai prediksi kembali `DetectProtectiveEquipment` hanya jika tingkat kepercayaan pendeteksian berada antara 50% - 100%. Jika Anda menentukan nilai yang kurang dari 50%, hasilnya sama dengan menentukan nilai 50%. Untuk informasi selengkapnya, lihat [Menentukan persyaratan peringkasan](#ppe-summarization-input-parameters). 

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

Jika koleksi citra yang akan diproses cukup besar, pertimbangkan untuk menggunakan [AWS Batch](https://docs.aws.amazon.com/batch/latest/userguide/) untuk memproses panggilan ke `DetectProtectiveEquipment` dalam batch di latar belakang. 

### Menentukan persyaratan peringkasan
<a name="ppe-summarization-input-parameters"></a>

Anda dapat secara opsional menggunakan parameter input `SummarizationAttributes` ([ProtectiveEquipmentSummarizationAttributes](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentSummarizationAttributes.html)) untuk meminta informasi ringkasan untuk tipe APD yang terdeteksi dalam citra.

Untuk menentukan tipe APD untuk meringkas, gunakan bidang array `RequiredEquipmentTypes`. Dalam array, masukkan satu atau beberapa `FACE_COVER`, `HAND_COVER` atau `HEAD_COVER`. 

Gunakan `MinConfidence` untuk menentukan kepercayaan pendeteksian minimum (50-100). Ringkasan tidak termasuk Orang, bagian tubuh, cakupan bagian tubuh, dan item APD, yang terdeteksi dengan kepercayaan kurang dari `MinConfidence`.

Untuk informasi tentang respons ringkasan dari `DetectProtectiveEquipment`, lihat [Memahami DetectProtectiveEquipment tanggapannya](#detect-protective-equipment-response). 



## Memahami DetectProtectiveEquipment tanggapannya
<a name="detect-protective-equipment-response"></a>

`DetectProtectiveEquipment` mengembalikan array orang yang terdeteksi dalam citra input. Untuk setiap orang, informasi tentang bagian tubuh yang terdeteksi dan item APD yang terdeteksi dikembalikan. JSON untuk citra seorang pekerja yang mengenakan penutup kepala, penutup tangan, dan penutup wajah adalah sebagai berikut.

![\[Pekerja konstruksi mengenakan kemeja kotak-kotak, topi keras dan masker wajah memegang alat listrik. Kotak hijau menonjolkan wajah, topi keras, tangan bersarung tangan, dan alat.\]](http://docs.aws.amazon.com/id_id/rekognition/latest/dg/images/worker-with-bb.png)


Dalam JSON, perhatikan hal berikut.
+ **Orang yang terdeteksi** — `Persons` adalah array orang yang terdeteksi pada citra (termasuk orang yang tidak memakai APD). `DetectProtectiveEquipment` dapat mendeteksi APD pada hingga 15 orang yang terdeteksi dalam sebuah citra. Setiap objek [ProtectiveEquipmentPerson](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentPerson.html) dalam array berisi ID orang, kotak pembatas untuk orang, bagian tubuh yang terdeteksi, dan item APD yang terdeteksi. Nilai dari `Confidence` dalam `ProtectiveEquipmentPerson` menunjukkan persentase kepercayaan yang dimiliki Amazon Rekognition jika kotak pembatas tersebut berisi seseorang.
+ **Bagian Tubuh** — `BodyParts` adalah array dari bagian tubuh ([ProtectiveEquipmentBodyPart](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentBodyPart.html)) yang terdeteksi pada seseorang (termasuk bagian tubuh yang tidak tertutup oleh APD). Setiap `ProtectiveEquipmentBodyPart` termasuk nama (`Name`) dari bagian tubuh yang terdeteksi. `DetectProtectEquipment` dapat mendeteksi bagian tubuh wajah, kepala, tangan kiri, dan tangan kanan. Bidang `Confidence` dalam `ProtectiveEquipmentBodyPart` menunjukkan persentase keyakinan yang dimiliki Amazon Rekognition dalam akurasi deteksi bagian tubuh. 
+ **Item PPE** — `EquipmentDetections` array dalam objek `ProtectiveEquipmentBodyPart` berisi array item APD yang terdeteksi. Tiap objek [EquipmentDetection](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_EquipmentDetection.html) berisi kolom-kolom berikut. 
  +  `Type` — tipe APD yang terdeteksi.
  + `BoundingBox` — kotak pembatas di sekitar APD yang terdeteksi.
  + `Confidence` — kepercayaan yang dimiliki Amazon Rekognition bahwa kotak pembatas berisi APD yang terdeteksi.
  + `CoversBodyPart` — Menunjukkan jika APD yang terdeteksi berada di bagian tubuh yang sesuai.

  Bidang [CoversBodyPart](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CoversBodyPart.html) `Value` adalah nilai boolean yang menunjukkan jika APD yang terdeteksi berada di bagian tubuh yang sesuai. Bidang `Confidence` menunjukkan kepercayaan dalam prediksi. Anda dapat menggunakan `CoversBodyPart` untuk memfilter kasus yang APDnya terdeteksi di dalam citra, namun tidak benar-benar pada orang tersebut. 
**catatan**  
`CoversBodyPart` tidak menunjukkan, atau menyiratkan, bahwa orang tersebut dilindungi secara memadai oleh peralatan pelindung atau bahwa peralatan pelindung itu sendiri sudah dipakai dengan benar. 
+ **Informasi ringkasan** — `Summary` berisi informasi ringkasan yang ditentukan dalam parameter input `SummarizationAttributes`. Untuk informasi selengkapnya, lihat [Menentukan persyaratan peringkasan](#ppe-summarization-input-parameters).

  `Summary` adalah obyek dari tipe [ProtectiveEquipmentSummary](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ProtectiveEquipmentSummary.html) yang berisi informasi berikut.
  + `PersonsWithRequiredEquipment`— Berbagai orang di mana setiap orang memenuhi kriteria berikut. IDs 
    + Orang tersebut mengenakan semua APD yang ditentukan dalam parameter input `SummarizationAttributes`. 
    + Parameter `Confidence` untuk orang (`ProtectiveEquipmentPerson`), bagian tubuh (`ProtectiveEquipmentBodyPart`), peralatan pelindung (`EquipmentDetection`) sama dengan atau lebih dari ambang batas kepercayaan minimum yang ditentukan (`MinConfidence`).
    + Nilai `CoversBodyPart` untuk semua item APD adalah betul. 
  + `PersonsWithoutRequiredEquipment`— Berbagai orang IDs yang memenuhi salah satu kriteria berikut. 
    + Nilai `Confidence` untuk orang (`ProtectiveEquipmentPerson`), bagian tubuh (`ProtectiveEquipmentBodyPart`), dan cakupan bagian tubuh (`CoversBodyPart`) lebih dari ambang batas minimum yang ditentukan (`MinConfidence`), namun orang tersebut tidak memakai satu atau beberapa APD yang ditentukan (`SummarizationAttributes`).
    + Nilai dari `CoversBodyPart` adalah salah untuk APD tertentu (`SummarizationAttributes`) yang memiliki nilai `Confidence` lebih dari ambang batas kepercayaan minimum yang ditentukan (`MinConfidence`). Orang tersebut juga memiliki semua APD yang ditentukan (`SummarizationAttributes`) dan nilai `Confidence` untuk orang (`ProtectiveEquipmentPerson`), bagian tubuh (`ProtectiveEquipmentBodyPart`), dan peralatan pelindung (`EquipmentDetection`) lebih dari atau sama dengan ambang batas kepercayaan minimum (`MinConfidence`).
  + `PersonsIndeterminate`— Array orang yang IDs terdeteksi di mana `Confidence` nilai untuk orang (`ProtectiveEquipmentPerson`), bagian tubuh (), peralatan pelindung (`EquipmentDetection`), atau `CoversBodyPart` boolean lebih rendah dari ambang kepercayaan minimum yang ditentukan (`MinConfidence`). `ProtectiveEquipmentBodyPart` 

  Gunakan ukuran array untuk mendapatkan hitungan untuk ringkasan tertentu. Misalnya, ukuran `PersonsWithRequiredEquipment` memberi tahu Anda jumlah orang yang terdeteksi memakai tipe APD tertentu.

  Anda dapat menggunakan ID orang untuk mengetahui informasi lebih lanjut tentang seseorang, seperti lokasi kotak pembatas orang tersebut. ID orang memetakan ke bidang ID `ProtectiveEquipmentPerson`) objek yang dikembalikan dalam `Persons` (array `ProtectiveEquipmentPerson`). Anda kemudian bisa mendapatkan kotak pembatas dan informasi lainnya dari objek `ProtectiveEquipmentPerson` yang sesuai. 

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