了解個人防護設備檢測 API - Amazon Rekognition

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

了解個人防護設備檢測 API

下列資訊說明DetectProtectiveEquipmentAPI。如需範例程式碼,請參閱偵測影像中的個人防護裝備

提供圖像

您可以將輸入影像 (JPG 或 PNG 格式) 提供為影像位元組,也可以參考儲存在 Amazon S3 儲存貯體中的影像。

我們建議使用人臉朝向相機的影像。

如果您的輸入圖像沒有旋轉到 0 度方向,我們建議您將其旋轉到 0 度方向,然後再將其提交到DetectProtectiveEquipment。JPG 格式的影像可能包含可交換影像檔案格式 (Exif) 中繼資料中的方向資訊。您可以使用此資訊撰寫可旋轉影像的程式碼。如需詳細資訊,請參閱執行版本 2.32。PNG 格式影像不包含影像方向資訊。

若要從 Amazon S3 儲存貯體傳遞映像檔,請使用至少具有的使用者亞馬遜ReadOnlyAccess特權。使用具有的使用者AmazonRekognitionFullAccess特權打電話DetectProtectiveEquipment.

在下列範例輸入 JSON 中,映像檔會傳遞至 Amazon S3 儲存貯體。如需詳細資訊,請參閱使用映像。此範例要求所有 PPE 類型 (頭套、手套和面罩) 的摘要,並具有最低的偵測可信度 (MinConfidence) 的 80%。您應該指定MinConfidence在 50-100% 之間的值作為DetectProtectiveEquipment僅傳回偵測信賴度介於 50%-100% 之間的預測。如果您指定的值小於 50%,則結果會相同,指定 50% 的值。如需詳細資訊,請參閱指定彙總需求

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

如果您要處理大量的影像集合,請考慮使用AWS 批次處理處理呼叫DetectProtectiveEquipment在後台批量。

指定彙總需求

您可以選擇性地使用SummarizationAttributes(ProtectiveEquipmentSummarizationAttributes) 輸入參數以要求影像中偵測到的 PPE 類型的摘要資訊。

若要指定要摘要的 PPE 類型,請使用RequiredEquipmentTypes陣列欄位。在陣列中,包含一或多個FACE_COVER,HAND_COVER或者HEAD_COVER

使用MinConfidence用於指定最小偵測信賴度 (50-100) 的欄位。摘要不包括人員,身體部位,身體部位覆蓋和 PPE 項目,檢測到的信心低於MinConfidence

有關摘要響應的信息DetectProtectiveEquipment,請參閱了解DetectProtectiveEquipment回應

了解DetectProtectiveEquipment回應

DetectProtectiveEquipment返回在輸入圖像中檢測到的人的數組。對於每個人,返回有關檢測到的身體部位和檢測到的 PPE 物品的信息。戴著頭套,手套和面罩的工作人員的以下圖像的 JSON 如下。

在 JSON 中,請注意下列事項。

  • 偵測到的人Persons是在圖像上檢測到的一系列人(包括沒有佩戴個人防護裝備的人)。DetectProtectiveEquipment可以在圖像中檢測到的最多 15 個人身上檢測到的 PPE。每個ProtectiveEquipmentPerson陣列中的物件包含人員 ID、人員的邊界框、偵測到的身體部位,以及偵測到的 PPE 項目。的價值ConfidenceProtectiveEquipmentPerson表示 Amazon Rekognition 對邊界框包含一個人的百分比可信度。

  • 車身零件BodyParts是身體部位的陣列 (ProtectiveEquipmentBodyPart)在人身上檢測到(包括個人防護裝備未涵蓋的身體部位)。每個ProtectiveEquipmentBodyPart包括名稱 (Name) 偵測到的身體部位。DetectProtectEquipment可以檢測臉部,頭部,左側和右側身體部位。該Confidence欄位中ProtectiveEquipmentBodyPart表示 Amazon Rekognition 對身體部位偵測準確度的百分比可信度。

  • 個人防護裝— 陣列EquipmentDetections在一個ProtectiveEquipmentBodyPart對象包含檢測到的 PPE 項目的數組。每個EquipmentDetection對象包含以下字段。

    • Type— 檢測到的個人防護裝備的類型。

    • BoundingBox-圍繞檢測到的 PPE 的邊界框。

    • Confidence-亞馬遜 Rekognition 有信心,邊界框包含檢測到的 PPE。

    • CoversBodyPart— 指示偵測到的 PPE 是否在相應的身體部位上。

    CoversBodyPart領域Value是一個布爾值,表示檢測到的 PPE 是否在相應的身體部位上。該領域Confidence表示預測中的信賴度。您可以使用CoversBodyPart過濾掉檢測到的 PPE 在圖像中,但實際上不是在人身上的情況。

    注意

    CoversBodyPart並沒有表明該人受到防護設備的充分保護,或者防護設備本身已正確佩戴。

  • 摘要資訊Summary包含在中指定的摘要資訊SummarizationAttributes輸入參數。如需詳細資訊,請參閱指定彙總需求

    Summary是類型的物件ProtectiveEquipmentSummary其中包含以下信息。

    • PersonsWithRequiredEquipment— 每個人符合以下條件的人的 ID 陣列。

      • 該人穿著所有在指定的 PPESummarizationAttributes輸入參數。

      • Confidence對於該人(ProtectiveEquipmentPerson), 身體部位 (ProtectiveEquipmentBodyPart),防護設備(EquipmentDetection) 等於或大於指定的最小信賴閾值 (MinConfidence).

      • 的價值CoversBodyPart對於 PPE 的所有項目是真實的。

    • PersonsWithoutRequiredEquipment— 符合下列其中一個條件之一的人員 ID 陣列。

      • Confidence對於人的價值(ProtectiveEquipmentPerson), 身體部位 (ProtectiveEquipmentBodyPart) 和身體部位覆蓋 (CoversBodyPart) 大於指定的最小信賴閾值 (MinConfidence),但該人缺少一個或多個指定的 PPE(SummarizationAttributes).

      • 的價值CoversBodyPart就任何指定個人防護裝備而言屬虛SummarizationAttributes)具有Confidence大於指定的最小信賴閾值的值 (MinConfidence). 該人還擁有所有指定的 PPE(SummarizationAttributes) 和Confidence對於人的價值觀(ProtectiveEquipmentPerson), 身體部位 (ProtectiveEquipmentBodyPart)和防護設備(EquipmentDetection) 大於或等於最小信賴閾值 (MinConfidence

    • PersonsIndeterminate— 檢測到的人的 ID 的陣列,其中Confidence對於人的價值(ProtectiveEquipmentPerson), 身體部位 (ProtectiveEquipmentBodyPart),防護設備(EquipmentDetection),或CoversBodyPart布林值低於指定的最小信賴度閾值 (MinConfidence).

    使用數組大小來獲取特定摘要的計數。例如,大小PersonsWithRequiredEquipment告訴您檢測到佩戴指定類型 PPE 的人數。

    您可以使用人員 ID 來尋找有關人員的進一步資訊,例如人物的邊界方框位置。人員識別碼對應至的 ID 欄位ProtectiveEquipmentPerson) 傳回的物件Persons(陣列ProtectiveEquipmentPerson). 然後,您可以從相應的邊界框和其他信息ProtectiveEquipmentPerson物件。

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