Inspiration

We were inspired by the recent fires in Canada that pushed over 120,000 people out of their homes. After researching this massive issue we were dumbfounded by the fact that over 330,000 are killed by wildfires. Knowing the powers of AI Technology, we decided that we wanted to leverage both to make a difference.

What it does

FireAI is an AI smoke detection platform that monitors and uses live streams from around the world for smoke, the precursor to fire. FireAI monitors frames from live streams and uses a custom-trained AI model to identify smoke within an environment. FireAI is currently streaming over 20 different views with more than 7 different public locations. When the ai detects smoke in a live stream from a public location, the image will be sent for review, and soon after law enforcement services will be contacted. FireAi's capabilities can be tested by a user by downloading a test image and uploading it to the platform,

How we built it

We used a variety of technologies to tackle this massive issue. For the smoke detection, we leveraged AI object detection which checks for smoke in every frame/image. We custom-trained a YoloV8 object detection model, with an annotated smoke dataset, to ensure detections were accurate and efficient. We trained our ai model for over 200 epochs and augmented our data to allow the model to handle more situations. For the front end, we used reactjs to create a dynamic single-page application. We used HTML, CSS, and JavaScript on our site to make a seamless experience. We live-stream over 20 cameras from over 7 locations and semd specific frames to the detector to ensure detection is live 24/7.

Challenges faced

The first challenge we faced was training an Artificial intelligence model within 12 hours. We tried multiple models but many of them were not a good fit for our data and not fast enough to be trained within 12 hours. Regardless of what was holding us back we persevered and found a model that we could train quickly and deploy, but would still give us high accuracy. We custom-trained a Yolov8 model with a lot of data and we ended up with a really accurate model. The second challenge we faced was serving our artificial intelligence model. We tackled this by creating a 2 part system. One part of the system was a custom file server that could have images uploaded to it and images downloaded from it, the second part of our system was our AI model deployed on a flask api where we could request inference from. These systems worked together to return an annotated image that had the detection, along with a confidence score that showed the confidence score the ai model predicted. We eventually combined these systems into one program to make it far more efficient. The final challenge: Frontend library delays: being somewhat new to React made rapidly creating an app difficult, as we were learning how React worked every step of the way. We had to embrace the time-consuming, painful process of frontend development. In the end, we created a frontend that we are really proud of.

Accomplishments that we're proud of

We are very proud of how accurate our model is, when detecting from the test set. Given only 12 hours we believe that we achieved a really good accuracy score of 87 percent. We are also proud of creating a seamless frontend because at the start we didn't know much about frontend development.

What we learned

We learned a lot about AI and react in this project. We learned how to train an object detection AI model from scratch and we learned how to use react components, DOM and live reloading.

What's next for FireAi

We are already in the process of improving our AI detection model and we also hope to gain access to more camera streams to make a bigger impact.

Share this project:

Updates