
About Team #24's Project


Gabriel Petersen
William Williams
Welcome! We are Team 24 and this is our capstone project. We have done a research study into how smoke can be detected using machine learning. We used 900 recordings of wildfire smoke from the AlertWildfire camera network and created training data from them to plug into a Convolutional Neural Network (CNN). Training and testing a CNN built off this data, it analyzes regions of pixels in video frames to try and learn the features of wildfire smoke. To demonstrate the project, we can submit a video to the CNN model via a desktop application. The output from the application displays a color coded grid emplaced on top of the video signifying areas of the frames that the CNN determines to contain smoke. The video below explains our project in greater detail, and provides a demo of how videos can be tested using our application.
The overarching goal of our project is to detect wildfire smoke and hence wildfires faster and more efficiently than conventional means. Although our model cannot be implemented due to the lack of complete accuracy, we hope our research and labeled data will help those in the future in trying to solve the problem of wildfire smoke detection. Our team hopes especially it can help benefit our advisors - who proposed this idea to us and helped guide us throughout the project. See resources section for links to Dr. Feng Yan's, Dr. Lei Yang's, and Heyang Qin's webpages.
Project Progress Timeline
4 . 25 . 2020
Progress Demo
Wrapping up our project, the team has displayed a final demo to the instructors and class. This included a fully functional desktop application where users can upload videos and generate test reports by running it against the CNN.
3 . 23 . 2020
Progress Demo
At this point, the team was tasked to show a working demo displaying the yearly progress to the class. We demonstrated our data labeled, our refinement of our CNN, and our continued development of our user application. We have also created a project poster, project video, and this website to showcase our project.
3 . 23 . 2020
Progress Demo
At this point, the team was tasked to show a working demo displaying the yearly progress to the class. We demonstrated our data labeled, our refinement of our CNN, and our continued development of our user application.
3 . 13 . 2020
User Stories and Testing Plan
At this stage our team was tasked to create user storeis, acceptence criteria, and a testing plan for our project. This point in the project, we have labled all 900 videos for training data. We also created our first Convolutional Neural Network (CNN) in Keras to try and predict smoke within the video frames. The user application prototype was also developed to work as a desktop application with some added features.
2 . 25 . 2020
Revised Spec
We revised our team's functional requirements, use cases, overall design, and UI design to be more realistic and fitting to the end goal. Our team also designed Frame Extractor program to grab 5 frames from each video evenly throughout, and then hash that data for input into the grid label program. Our team also decided to not use any computer-vision preprocessed data due to fear of any crucial feature loss.
2 . 7 . 2020
Revised Concept
Over the winter break, the team experimented with multiple computer vision methods to preprocess data. At this stage, we realized that it would be out of our current work abilities to construct a model that predicts smoke density, so we decided to construct a model that attempts to detect smoke first. Our also team developed a program to label regions of the video frames in an overlaying 16x9 grid. This outputs 120x120px images for the machine learning model to process as training data.
12 . 12 . 2019
Project Prototype
Near the end of the semester, we were tasked to prototype our project to the instructors. For the prototype, we took our previous prototype UI and updated it for mobile use. In our demo, we also presented a video database and a program to conduct some video frame preprocessing.
12 . 12 . 2019
Project Prototype
Near the end of the semester, we were tasked to prototype our project to the instructors. For the prototype, we took our previous prototype UI and updated it for mobile use. In our demo, we also presented a video database and a program to conduct some video frame preprocessing.
11 . 18 . 2019
UI and Project Structure Design
At this stage, our team has designed a prototype UI where the future machine learning model will be implemented into. We have also focused on updating our detailed design on how we want the overall project to function.
11 . 1 . 2019
Stakeholder Interviews, Functional Requirements, and Use Cases
To gain a better insight into how our project is viewed from different points of view, we interviewed stakeholders to get more information on how our project could affect them. We also modeled our functional requirements and use cases for better efficiency. Detailing our functional and non-functional requirements will not only help our team break down development into a series of easy steps, but it also gives priority to certain requirements over others and defines our core functionality. The Use Case modeling helps us maintain a standard of our goals related to how the project will end up, and it will help our team keep focused on our primary requirements.
10 . 11 . 2019
Project Concept
The original description of the project that included a variety of ideas to accomplish in the project scope. The main ideas brainstormed were detecting smoke density within a video frame, predicting where the smoke is coming from geographically, and integrating this into a large camera network. These ideas related to Machine Learning, Big Data Frameworks, and Internet of Things (IoT).
Resources
AlertWildfire. (2020). Network Map. http://www.alertwildfire.org/
Çetin, A. Enis, et al. (2016). Methods and Techniques for Fire Detection: Signal, Image and Video Processing Perspectives. Elsevier Science
Insurance Information Institute. (2019). Facts + Statistics: Wildfires.. https://www.iii.org/fact-statistic/facts-statistics-wildfires
The Nevada Seismological Laboratory. (2020). http://www.seismo.unr.edu/
This manual will be one of our main tools of reference when we begin to implement machine learning models. This is an extensive library with documentation on many different types of decision trees, deep learning, and convolutional neural networks. https://www.tensorflow.org/api_docs/python
A big thank you goes out to our advisors Dr. Feng Yan , Dr. Lei Yang, and PhD candidate Heyang Qin for helping us with our project