Wildfire flame detection based on deep learning & image processing
In this project, we propose a drone-based wildfire monitoring system for remote and hard-to-reach areas. This system utilizes autonomous unmanned aerial vehicles (UAVs) with the main advantage of providing on-demand monitoring service faster than the current approaches of using satellite images, manned aircraft and remotely controlled drones.
Avalible datasets for now: THE FLAME DATASET: AERIAL IMAGERY PILE BURN DETECTION USING DRONES (UAVS)
More information, please reference our previous paper: Wildfire Monitoring in Remote Areas using Autonomous Unmanned Aerial Vehicles
This module only uses image processing method to detect flame zone on IR pictures, then draw bounding boxes on related RGB images.
For codes, please go to: Flame_detection
This module uses GAN-based deep learning method to generate RGB flame images from given IR image. For example, input an arbitrary IR image of wildfire, the model will generate a virtual RGB image to describe the fire situation.
This part is only on experimental stage, but it's good to research the relationship between the wildfire and its smoke.
For codes, please go to: Flame_GAN
This project uses Python 3.8 based on Spyder
This project is based on Pytorch 1.7.0 & cudnn 1.10 Official website: Previous PyTorch Versions
pip install -f https://download.pytorch.org/whl/cu110/torch_stable.html torch==1.7.0+cu110 torchvision==0.8.0 --user
This list gives all recommended packages (may not necessary)
import datetime
import os
import random
import numpy as np
import cv2
import math
import matplotlib.pyplot as plt
import torch
import torch.nn as nn
import torchvision.transforms as transforms
import torch.nn.functional as F
import torch.optim as optim
import torchvision.models as models
from torch.nn import Module
from torch.nn import CrossEntropyLoss
from torch.nn import ModuleList
from torch.nn.modules.loss import _WeightedLoss
from torchsummary import summary
from torch.utils.data import DataLoader
import os
import copy
import matplotlib.pyplot as plt
import numpy as np
import scipy.misc
import shutil
import cv2
import random
import copy
from glob import glob
This project is contributed by: hao9@clemson.edu xiwenc@clemson.edu bryceh@clemson.edu