
Model Detektor Alat Pelindung Diri (APD) membantu Anda memverifikasi kehadiran peralatan yang membatasi paparan terhadap bahaya di tempat kerja atau lingkungan masyarakat.
Model ini mendeteksi orang dan item APD (sarung tangan, masker, dan helm) pada orang tertentu. Model mendeteksi item APD, dan apakah item tersebut menutupi bagian tubuh manusia yang sesuai. Model melaporkan informasi cakupan ini sebagai skor cakupan yang berkisar dari [0, 1]. Model menerima streaming video sebagai input. Model menghasilkan hasil deteksi sebagai buffer protokol yang dapat Anda lihat di BigQuery. Model berjalan pada satu FPS.
Operator deteksi APD memiliki tiga parameter kontrol yang dapat Anda tetapkan:
enableHeadCoverageDetection
ke true diPersonalProtectiveEquipmentDetectionConfig
.
Penutup kepala: Operator
mengeluarkan informasi item APD terkait penutup kepala. Tetapkan nilai ini di konsol Google Cloud, atau tetapkan enableFaceCoverageDetection
ke true diPersonalProtectiveEquipmentDetectionConfig
.
Penutup wajah: Operator menampilkan informasi item PPE terkait
penutup wajah. Tetapkan nilai ini di konsol Google Cloud, atau tetapkan enableHandsCoverageDetection
true diPersonalProtectiveEquipmentDetectionConfig
.
Pelindung tangan: Operator menampilkan informasi item PPE
terkait pelindung tangan. Tetapkan nilai ini di konsol Google Cloud, atau tetapkan
Spesifikasi aplikasi model pendeteksi APD
Gunakan petunjuk berikut untuk membuat model pendeteksi PPE di konsol Google Cloud.
Konsol
Membuat aplikasi di konsol Google Cloud
Untuk membuat aplikasi pendeteksi APD, ikuti petunjuk dalam Mem-build aplikasi.
Menambahkan model pendeteksi APD
Saat menambahkan node model, pilih PPE detector dari daftar model terlatih.
Tetapkan jenis APD yang ingin Anda deteksi di menu opsi.
Menambahkan konektor BigQuery
Untuk menggunakan output, hubungkan aplikasi ke konektor BigQuery.
Untuk informasi tentang cara menggunakan konektor BigQuery, lihat Menghubungkan dan menyimpan data ke BigQuery. Untuk mengetahui informasi harga BigQuery, lihat halaman harga BigQuery.
Melihat hasil output di BigQuery
Setelah model menghasilkan output data ke BigQuery, lihat anotasi output di dasbor BigQuery.
Jika tidak menentukan jalur BigQuery, Anda dapat melihat jalur yang dibuat sistem di halaman
Studio Vertex AI Vision.Di konsol Google Cloud, buka halaman BigQuery.
Pilih
Expand di samping project target, nama set data, dan nama aplikasi.Di tampilan detail tabel, klik Pratinjau. Lihat hasil di kolom anotasi. Untuk deskripsi format output, lihat output model.
Aplikasi menyimpan hasil dalam urutan kronologis. Hasil terlama adalah awal tabel, sedangkan hasil terbaru ditambahkan ke akhir tabel. Untuk memeriksa hasil terbaru, klik nomor halaman untuk membuka halaman tabel terakhir.
Output model
Output model mencakup stempel waktu, kotak deteksi, label objek yang sesuai dengan kotak, dan skor keyakinan dari objek tersebut. Kecepatan stream output adalah satu frame per detik.
Output model adalah format buffer protokol yang menyertakan informasi tentang frame video dan hasil prediksi deteksi PPE. Sasaran model ini adalah untuk memeriksa apakah orang mengenakan peralatan perlindungan dengan benar. Akibatnya, model ini berfokus pada mendeteksi orang dan PPE yang dikenakan orang tersebut. Output model berfokus pada deteksi orang. Untuk setiap orang yang terdeteksi, model ini mencantumkan APD di sekitar orang tersebut dan skor cakupan setiap peralatan.
Dalam contoh buffering protokol yang akan datang, perhatikan hal berikut.
- Waktu saat ini - Stempel waktu mencatat waktu pembuatan hasil inferensi.
- Orang yang terdeteksi - Hasil deteksi utama yang mencakup satu kotak yang diidentifikasi orang, beberapa kotak yang diidentifikasi PPE, dan skor cakupan untuk setiap bagian tubuh.
- Kotak yang mengidentifikasi orang - Kotak pembatas, skor keyakinan, dan entitas orang.
- Kotak yang diidentifikasi APD - Kotak pembatas, skor keyakinan, dan entitas APD.
Contoh objek JSON output anotasi
{ "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" } } } ] }
Definisi buffering protokol
// 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;
}
Praktik terbaik dan batasan
Untuk mendapatkan hasil terbaik saat menggunakan detektor PPE, pertimbangkan hal berikut saat Anda mendapatkan data dan menggunakan model.
Rekomendasi data sumber
Direkomendasikan: Jika memungkinkan, minta subjek deteksi untuk berdiri diam dan menghadap kamera.
Contoh data gambar yang dapat diproses dengan benar oleh pendeteksi APD:
![]() |
![]() |
![]() |
Tidak direkomendasikan: Hindari data gambar dengan item PPE utama yang terlalu kecil dalam bingkai.
Contoh data gambar yang tidak dapat diproses dengan benar oleh detektor PPE:
![]() |
Tidak direkomendasikan: Hindari data gambar yang menampilkan item APD utama dari sudut pandang yang tidak biasa atau sudut yang tidak beraturan.
Contoh data gambar yang tidak dapat diproses dengan benar oleh detektor PPE:
![]() |
Batasan
- Resolusi: Resolusi video input maksimum yang direkomendasikan adalah 1920x1080, dan resolusi minimum yang direkomendasikan adalah 160x120.
- Ukuran objek minimum yang dapat dideteksi: Model mengabaikan objek apa pun dalam adegan yang menempati kurang dari 5% ukuran frame.
- Pencahayaan: Pencahayaan video harus normal. Kecerahan atau kegelapan yang ekstrem dalam data video dapat menyebabkan performa detektor yang lebih rendah.
- Penempatan item APD: Model APD berfokus pada analisis apakah orang menggunakan item APD dengan benar. Akibatnya, jika seseorang tidak mengenakan item APD, model akan mengabaikan item tersebut.
- Jenis item APD: Model ini berfokus pada peralatan perlindungan konstruksi dan bukan item APD medis. Oleh karena itu, detektor mungkin tidak berfungsi dengan baik di pusat medis atau rumah sakit.
- Jenis PPE kustom: Model PPE tidak mendukung item PPE yang ditentukan pelanggan. Model ini mendukung deteksi helm, masker, dan sarung tangan.
Daftar ini tidak dimaksudkan untuk menjadi daftar lengkap, dan batasan serta fungsi ini dapat berubah sewaktu-waktu sesuai modifikasi produk.