| CPC G06V 20/52 (2022.01) [G06Q 50/08 (2013.01); G06V 10/764 (2022.01); G06V 10/82 (2022.01); G06V 20/46 (2022.01); G06V 20/64 (2022.01); G06V 40/10 (2022.01)] | 17 Claims |

|
1. A system for real-time personal protective equipment (PPE) compliance monitoring at a worksite, the worksite including (1) a preparatory area where workers put on PPE and (2) an operations area where the workers are required to perform tasks while wearing the PPE, the system comprising:
a processor configured to execute a computer instruction;
a host memory connected to the processor;
a graphical processing unit (GPU) connected to the processor;
a GPU memory connected to the GPU;
a storage device connected to the processor;
an input device positioned in the preparatory area, and configured to feed first video frames to the storage device;
a plurality of cameras positioned in the operations area, and configured to feed second video frames to the storage device; and
a display device connected to the processor;
wherein:
the processor loads a trained model on the GPU to configure the GPU as a PPE compliance inference engine,
by concurrently operating a plurality of input threads, a plurality of inference threads, and a plurality of output threads, the GPU applies the trained model to determine PPE compliance statuses of the workers in the operations area,
the plurality of input threads include:
performing preprocessing on the first and second video frames, the preprocessing including at least one operation selected from video frame resizing, video frame normalizing, and video frame augmenting, and
enqueuing the pre-processed first and second video frames to form an input queue,
the plurality of inference threads include:
dequeuing the pre-processed first and second video frames from the input queue, and
using the pre-processed first video frames as reference video frames, applying the trained model to identify PPE in the pre-processed second video frames,
based on an identifying result, generating PPE annotations for the pre-processed second video frames, and
enqueuing the pre-processed second video frames with the PPE annotations overlaid thereon to form an output queue,
the plurality of output threads include:
dequeuing the pre-processed second video frames with the PPE annotations overlaid thereon from the output queue, and
generating an output file including (1) the pre-processed second video frames with the PPE annotations overlaid thereon, and (2) PPE compliance statistics,
the display device is configured to, based on the output file, present via a web-based dashboard interface to a user of the system, the PPE compliance statuses of the workers in the operations area.
|