This folder contains the full pipeline for training a Mask R-CNN fire instance segmentation model using synthetic data auto-generated from FDS simulations.
Renders two image sequences per FDS scenario:
- RGB frames – realistic smoke/fire scene
- Mask frames – white fire isosurface (HRRPUV) on black background
python extract_frames.py
# Or test with a single scenario:
python extract_frames.py --scenario A1_small_room_opening_0Binarizes the masks and creates a manifest.csv with train/val/test splits.
python prepare_dataset.pyUses transfer learning from ResNet-50-FPN (ImageNet weights).
python train_maskrcnn.py --manifest Dataset/manifest.csv --epochs 25Fire Detection/
Dataset/
images/ ← RGB frames from Smokeview
masks/ ← Raw HRRPUV masks from Smokeview
masks_binary/ ← Binarized masks (generated by prepare_dataset.py)
manifest.csv ← Generated by prepare_dataset.py
checkpoints/ ← Saved model weights (.pt)
logs/ ← training_log.csv
extract_frames.py
prepare_dataset.py
train_maskrcnn.py
torch>=2.0
torchvision>=0.15
Pillow
numpy