Inspiration

With recent events such as mass shootings and stabbings, there is a growing concern about safety in public places. An app that can detect weapons and alert authorities and community members could be a valuable tool for increasing safety in schools, churches, malls, and other public spaces.

What it does

SafetyVision is an app that uses security cameras and advanced machine learning technology to detect weapons in real-time. If a weapon is detected, the app immediately sends notifications to authorities and community members through a user-friendly web app, alerting them of the weapon's location. The app is designed to help keep communities safe by providing a quick and effective way to respond to potential threats.

How we built it

SafetyVision was built using React and Flask. React is a JavaScript library for building user interfaces, and Flask is a microweb framework written in Python. These tools were likely used to create the user-friendly web app that is used to receive notifications and display information about detected weapons. It's also possible that other technologies were used in the development of SafetyVision, such as machine learning libraries and security camera systems. We also implemented Firebase for backend, and the machine learning library is based on YOLOv5.

Challenges we ran into

Integrating all the backend elements with the frontend elements in ReactJS involves combining the different parts of the application so that they can work together seamlessly. The backend elements refer to the technologies and services that power the behind-the-scenes functionality of the app, such as Firebase (a cloud-based platform that provides a range of services for mobile and web app development), Flask (a microweb framework written in Python), and the machine learning (ML) model (which is responsible for detecting weapons in real-time). The frontend elements, on the other hand, refer to the user interface (UI) and the visual elements of the app that users interact with, which were built using ReactJS. To integrate these elements, we needed to ensure that the frontend can communicate with the backend and access the data and functionality it needs to provide a smooth and efficient user experience. This typically involves writing code that connects the different parts of the app and specifies how they should interact with each other.

Accomplishments that we're proud of

Some members of the team had little or no experience with ReactJS development, which is a JavaScript library for building user interfaces. Despite this, they were able to learn the necessary concepts and apply them to the live project. This likely involved learning about the principles and techniques of ReactJS development, as well as the specific requirements and constraints of the project. It may have also required them to work closely with more experienced teammates or seek help from online resources to help them get up to speed. Overall, it sounds like it was a challenging but rewarding experience for these team members, and the team as a whole is proud of their achievement in overcoming this challenge.

What we learned

We learned how to conquer new tech stacks and better programming methodology.

What's next for SafetyVision (SlightlyProfessional)

We believe this project can be improved. A better trained model with much better accuracy, a way to contact the authorities on detecting such weapons. A way to issue a public alert to notify nearby people to evacuate the premises, and so on.

Share this project:

Updates