
Mit dem Modell Persönliche Schutzausrüstung (PSA)-Detektor können Sie prüfen, ob Ausrüstung vorhanden ist, die die Exposition gegenüber Gefahren am Arbeitsplatz oder in der Umgebung einschränkt.
Das Modell erkennt Personen und die persönliche Schutzausrüstung (PSA) (Handschuhe, Masken und Helme) einer bestimmten Person. Das Modell erkennt die persönlichen Schutzausrüstungen und ob sie die entsprechenden Körperteile bedecken. Das Modell gibt diese Abdeckungsinformationen als Abdeckungsbewertung im Bereich [0, 1] an. Das Modell akzeptiert einen Videostream als Eingabe. Das Modell gibt die Erkennungsergebnisse als Protokollpuffer aus, den Sie in BigQuery aufrufen können. Das Modell wird mit einer Framerate von 1 fps ausgeführt.
Der PSA-Detektor hat drei Steuerparameter, die Sie festlegen können:
enableHeadCoverageDetection
inPersonalProtectiveEquipmentDetectionConfig
auf „wahr“.
Kopfbedeckungen: Der Bediener gibt Informationen zu Artikeln der persönlichen Schutzausrüstung für die Kopfbedeckung aus. Legen Sie diesen Wert in der Google Cloud -Konsole fest oder setzen Sie enableFaceCoverageDetection
inPersonalProtectiveEquipmentDetectionConfig
auf „wahr“.
Gesichtsbedeckungen: Der Betreiber gibt Informationen zu Artikeln der persönlichen Schutzausrüstung aus, die Gesichtsbedeckungen sind. Legen Sie diesen Wert in der Google Cloud -Konsole fest oder setzen Sie enableHandsCoverageDetection
in derPersonalProtectiveEquipmentDetectionConfig
auf „wahr“.
Handschutz: Der Bediener gibt Informationen zu persönlichen Schutzausrüstungen für die Handabdeckung aus. Legen Sie diesen Wert in der Google Cloud -Konsole fest oder setzen Sie
App-Spezifikationen für PSA-Detektormodelle
Folgen Sie der folgenden Anleitung, um ein Modell für einen Schutzausrüstungs-Detektor in derGoogle Cloud Console zu erstellen.
Console
App in der Google Cloud Console erstellen
Folgen Sie der Anleitung unter Anwendung erstellen, um eine App zum Erkennen von persönlicher Schutzausrüstung zu erstellen.
PSA-Detektormodell hinzufügen
Wählen Sie beim Hinzufügen von Modellknoten den PPE-Detektor aus der Liste der vortrainierten Modelle aus.
Legen Sie im Optionsmenü die Arten von persönlicher Schutzausrüstung fest, die erkannt werden sollen.
BigQuery-Connector hinzufügen
Wenn Sie die Ausgabe verwenden möchten, stellen Sie eine Verbindung zwischen der App und einem BigQuery-Connector her.
Informationen zur Verwendung des BigQuery-Connectors finden Sie unter Verbinden und Daten in BigQuery speichern. Informationen zu den Preisen für BigQuery finden Sie auf der Seite BigQuery-Preise.
Ergebnisse in BigQuery ansehen
Nachdem das Modell Daten nach BigQuery exportiert hat, können Sie die Anmerkungen zur Ausgabe im BigQuery-Dashboard aufrufen.
Wenn Sie keinen BigQuery-Pfad angegeben haben, können Sie den vom System erstellten Pfad auf der Seite
Vertex AI Vision Studio aufrufen.Öffnen Sie in der Google Cloud Console die Seite „BigQuery“.
Wählen Sie neben dem Zielprojekt, dem Dataset-Namen und dem Anwendungsnamen die Option
Maximieren aus.Klicken Sie in der Detailansicht der Tabelle auf Vorschau. Die Ergebnisse finden Sie in der Spalte annotation. Eine Beschreibung des Ausgabeformats finden Sie unter Modellausgabe.
Die Anwendung speichert die Ergebnisse in chronologischer Reihenfolge. Die ältesten Ergebnisse stehen am Anfang der Tabelle, die neuesten am Ende. Wenn Sie die neuesten Ergebnisse sehen möchten, klicken Sie auf die Seitenzahl, um die letzte Tabellenseite aufzurufen.
Modellausgabe
Die Modellausgabe enthält einen Zeitstempel, die Erkennungsboxen, Objektlabels, die den Boxen entsprechen, und Konfidenzwerte dieses Objekts. Die Rate des Ausgabestreams beträgt ein Frame pro Sekunde.
Die Modellausgabe ist ein Protokollbuffer-Format, das Informationen zum Videoframe und zum Ergebnis der PPE-Erkennungsvorhersage enthält. Mit dem Modell soll überprüft werden, ob Personen die Schutzausrüstung richtig tragen. Daher konzentriert sich das Modell darauf, Personen und die von ihnen getragene Schutzausrüstung zu erkennen. Der Schwerpunkt der Modellausgabe liegt auf der Personenerkennung. Für jede erkannte Person listet das Modell die PSA in der Nähe der Person und die Abdeckungsbewertung jedes Ausrüstungsteils auf.
Beachten Sie im folgenden Beispiel für einen Protokoll-Buffer Folgendes:
- Aktuelle Uhrzeit: Der Zeitstempel gibt an, wann das Inferenzergebnis erstellt wurde.
- Gefundene Personen: Das Haupterkennungsergebnis, das einen von Personen erkannten Rahmen, mehrere von Schutzausrüstung erkannte Rahmen und einen Abdeckungswert für jeden Körperteil enthält.
- Feld „Person erkannt“ – Begrenzungsrahmen, Konfidenzwert und Personenentität.
- Begrenzungsrahmen für PSA – Begrenzungsrahmen, Konfidenzwert und PSA-Entität.
Beispiel für ein JSON-Objekt für die Annotationsausgabe
{ "currentTime": "2022-11-10T21:02:13.499255040Z", "detectedPersons": [ { "personId": "0", "detectedPersonIdentifiedBox": { "boxId": "0", "normalizedBoundingBox": { "xmin": 0.486749, "ymin": 0.35927793, "width": 0.048630536, "height": 0.21746585 }, "confidenceScore": 0.31775203, "personEntity":{ "personEntityId":"0" } }, "detected_ppe_identified_boxes": { "normalized_bounding_box": { "xmin": 0.07268746, "ymin": 0.80575824, "width": 0.22973709, "height": 0.18754286 }, "confidence_score": 0.45171335, "ppe_entity": { "ppe_label_string": "Glove", "ppe_supercategory_label_string": "Hand Coverage" } }, "detected_ppe_identified_boxes":{ "normalized_bounding_box":{ "xmin": 0.35457548, "ymin": 0.016402662, "width": 0.31828704, "height": 0.18849815 }, "confidence_score": 0.44129524, "ppe_entity":{ "ppe_label_string": "Helmet", "ppe_supercategory_label_string": "Head Coverage" } } } ] }
Definition des Protokollpuffers
// Output format for Personal Protective Equipment Detection Operator
message PersonalProtectiveEquipmentDetectionOutput {
// Current timestamp
protobuf.Timestamp current_time = 1;
// The entity info for annotations from person detection prediction result
message PersonEntity {
// Entity id
int64 person_entity_id = 1;
}
// The entity info for annotations from PPE detection prediction result
message PPEEntity {
// Label id
int64 ppe_label_id = 1;
// Human readable string of the label (Examples: helmet, glove, mask)
string ppe_label_string = 2;
// Human readable string of the super category label (Examples: head_cover,
// hands_cover, face_cover)
string ppe_supercategory_label_string = 3;
// Entity id
int64 ppe_entity_id = 4;
}
// Bounding Box in the normalized coordinates
message NormalizedBoundingBox {
// Min in x coordinate
float xmin = 1;
// Min in y coordinate
float ymin = 2;
// Width of the bounding box
float width = 3;
// Height of the bounding box
float height = 4;
}
// PersonIdentified box contains the location and the entity info of the
// person
message PersonIdentifiedBox {
// An unique id for this box
int64 box_id = 1;
// Bounding Box in the normalized coordinates
NormalizedBoundingBox normalized_bounding_box = 2;
// Confidence score associated with this box
float confidence_score = 3;
// Person entity info
PersonEntity person_entity = 4;
}
// PPEIdentified box contains the location and the entity info of the PPE
message PPEIdentifiedBox {
// An unique id for this box
int64 box_id = 1;
// Bounding Box in the normalized coordinates
NormalizedBoundingBox normalized_bounding_box = 2;
// Confidence score associated with this box
float confidence_score = 3;
// PPE entity info
PPEEntity ppe_entity = 4;
}
// Detected Person contains the detected person and their associated
// PPE and their protecting information
message DetectedPerson {
// The id of detected person
int64 person_id = 1;
// The info of detected person identified box
PersonIdentifiedBox detected_person_identified_box = 2;
// The info of detected person associated ppe identified boxes
repeated PPEIdentifiedBox detected_ppe_identified_boxes = 3;
// Coverage score for each body part
// Coverage score for face
optional float face_coverage_score = 4;
// Coverage score for eyes
optional float eyes_coverage_score = 5;
// Coverage score for head
optional float head_coverage_score = 6;
// Coverage score for hands
optional float hands_coverage_score = 7;
// Coverage score for body
optional float body_coverage_score = 8;
// Coverage score for feet
optional float feet_coverage_score = 9;
}
// A list of DetectedPersons
repeated DetectedPerson detected_persons = 2;
}
Best Practices und Einschränkungen
Damit Sie mit dem PPE-Detektor die besten Ergebnisse erzielen, sollten Sie beim Erheben von Daten und Verwenden des Modells Folgendes beachten.
Empfehlungen für Quelldaten
Empfohlen:Die Personen, die erkannt werden sollen, sollten möglichst still stehen und zur Kamera schauen.
Beispielbilddaten, die vom PSA-Detektor korrekt verarbeitet werden können:
![]() |
![]() |
![]() |
Nicht empfohlen:Verwenden Sie keine Bilddaten, in denen die wichtigsten persönlichen Schutzausrüstungen im Frame zu klein sind.
Beispielbilddaten, die der PPE-Detektor nicht richtig verarbeiten kann:
![]() |
Nicht empfohlen:Vermeiden Sie Bilddaten, in denen die wichtigsten persönlichen Schutzausrüstungen aus einem ungewöhnlichen Blickwinkel oder aus unregelmäßigen Winkeln zu sehen sind.
Beispielbilddaten, die der PPE-Detektor nicht richtig verarbeiten kann:
![]() |
Beschränkungen
- Auflösung: Die empfohlene maximale Auflösung des Eingabevideos ist 1920 × 1080 und die empfohlene minimale Auflösung 160 × 120.
- Minimale Größe eines erkennbaren Objekts: Das Modell ignoriert alle Objekte in der Szene, die weniger als 5% der Framegröße einnehmen.
- Beleuchtung: Die Videobeleuchtung sollte normal sein. Extreme Helligkeit oder Dunkelheit in Videodaten kann die Leistung des Detektors beeinträchtigen.
- Anwendung von PSA: Das PSA-Modell konzentriert sich darauf zu analysieren, ob Personen PSA richtig verwenden. Wenn jemand also keine persönliche Schutzausrüstung trägt, wird das Modell ignoriert.
- PSA-Artikeltyp: Das Modell konzentriert sich auf Schutzausrüstung für die Baubranche und nicht auf PSA für medizinische Zwecke. Daher funktioniert der Detektor möglicherweise nicht gut in Arztpraxen oder Krankenhäusern.
- Benutzerdefinierte PSA-Typen: Das PSA-Modell unterstützt keine vom Kunden definierten PSA-Artikel. Das Modell unterstützt die Erkennung von Helmen, Masken und Handschuhen.
Diese Liste ist nicht vollständig. Die Einschränkungen und Funktionen können sich durch zukünftige Produktänderungen ändern.