Individual safety is of paramount importance at all times, whether at work or at home. To avoid any catastrophes, work sites have zones designated as prohibitive or restricted zones. Persons entering such prohibited zones are in great danger. Industries or concerned authorities must assure employee protection by implementing preventive measures such as providing suitable safety equipment, and providing occupational health and safety training. However, no workplace is completely safe from accidents, particularly for construction workers. When a person enters the restricted zone by accident, an alarm is generated in this situation. As a result, these systems are vital in guaranteeing worker safety. This app, built on Nvidia's Deepsteam SDK, would also help corporate buildings, commercial complexes , industries, unmanned areas to detect and help person safety.
An Intelligent Video Analytics Pipeline powered by Deepstream and NVIDIA Jetson Xavier NX.
This project is a proof-of-concept, trying to detect is person inside the restricted area.
This post assumes you have a fully functional Jetson device. If not, you can refer the documentation here.
sudo apt install \
libssl1.0.0 \
libgstreamer1.0-0 \
gstreamer1.0-tools \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad \
gstreamer1.0-plugins-ugly \
gstreamer1.0-libav \
libgstrtspserver-1.0-0 \
libjansson4=2.11-1
Download the DeepStream 5.1 Jetson Debian package deepstream-5.1_5.1.0-1_arm64.deb
, to the Jetson device from here. Then enter the command:
sudo apt install deepstream-5.1_5.1.0-1_arm64.deb
For more information, go to the get started page of Deepstream here.
This is a straightforward step, however, if you are new to git, I recommend glancing threw the steps.
First, install git
sudo apt install git
Next, clone the repository
# Using HTTPS
https://github.com/MANJUSHREE-GS/Person_Safety_Detection.git
# Using SSH
git@github.com:MANJUSHREE-GS/Person_Safety_Detection.git
Download the weights file from google-drive and place it in models/YOLOv4
directory.
First, build the application by running the following command:
make clean && make -j$(nproc)
This will generate the binary called person_safety
. This is a one-time step and you need to do this only when you make source-code changes.
Next, create a file called inputsources.txt
and paste the path of videos or rtsp url.
file:///home/zxcv/Downloads/specialization.mp4
rtsp://admin:admin%5346@194.162.5.14:554/stream
Now, run the application by running the following command:
./person_safety
Please find the Links of a Demo video, here