ISD is an AI-powered computer vision system designed to monitor, track, and enforce workplace safety gear compliance. It utilizes real-time image analysis to identify five essential safety items: helmet, gloves, jacket, goggles, and footwear. ISD verifies if personnel are wearing these items before granting access to the work area. For implementation of Industry saftey Yolo7 model of computer vision is used, which has smaller size.
- Yolov7 Github repo link (https://github.com/WongKinYiu/yolov7)
-
Data Acquisition: Image Annotation and Download: Images are annotated and labeled using Roboflow. The labeled data is downloaded as a ZIP file from an AWS S3 bucket and then unzipped.
-
Data Validation Ensuring Data Integrity: This stage verifies that all necessary files generated by the data acquisition component exist. Any missing files are captured in a validation report.
-
Model Training (if data validation passes): Leveraging YOLOv7 for Efficiency: Since no image preprocessing is required, the validated images are directly fed into a pre-trained YOLOv7 model for training. YOLOv7 is chosen for its faster inference speed and higher accuracy due to its smaller size and efficient architecture.
-
Model Deployment: Cloud Storage and Containerization: The trained model is uploaded to an AWS S3 bucket for storage. The entire pipeline, including the model, is containerized using Docker and deployed to AWS EC2 instances. CI/CD automation via GitHub Actions is implemented to manage the deployment process.
-
User Interface: Flask-based Application: A user-friendly application is built using Flask to interact with the deployed pipeline.
- Enhances workplace safety by ensuring proper safety gear usage.
- Improves efficiency with real-time monitoring and automated access control.
- constants
- config_entity
- artifact_entity
- components
- pipeline
- app.py
git add .
git commit -m "Updated"
git push origin main
#aws cli download link: https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
aws configure
conda create -n safety python=3.11.9 -y
conda activate safety
pip install -r requirements.txt
python app.py
#with specific access
1. EC2 access : It is virtual machine
2. ECR: Elastic Container registry to save your docker image in aws
#Description: About the deployment
1. Build docker image of the source code
2. Push your docker image to ECR
3. Launch Your EC2
4. Pull Your image from ECR in EC2
5. Lauch your docker image in EC2
#Policy:
1. AmazonEC2ContainerRegistryFullAccess
2. AmazonEC2FullAccess
- Save the URI: 136566696263.dkr.ecr.us-east-1.amazonaws.com/yolov7app
#optinal
sudo apt-get update -y
sudo apt-get upgrade
#required
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker ubuntu
newgrp docker
setting>actions>runner>new self hosted runner> choose os> then run command one by one
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_REGION = us-east-1
AWS_ECR_LOGIN_URI = demo>> 566373416292.dkr.ecr.ap-south-1.amazonaws.com
ECR_REPOSITORY_NAME = simple-app