Forest Fire Image Classification Dataset
The dataset that turned a sixth-semester prototype into research and, later, a public classifier demo: fire, no fire, smoke, and fire+smoke.
Images
4,823 · JPEG · 250×250
Classes
fire · nofire · smoke · smokefire
Splits
3,200 / 800 / 800 (+23 tester)
Licence
CC BY-NC-SA 4.0
01 · What it contains
IndexChapter 01
What the dataset is
Forest imagery sorted into four conditions and standardised to 250×250 pixels, balanced across train/validation/test subsets. A separate Forest Fire Tester folder holds 23 additional images for eyeballing a trained model by hand — the sanity check before you trust a confusion matrix.
Chapter 02
Why it exists
Most fire datasets are binary: fire, or not fire. The original college-project question was more specific: could a simple image classifier tell fire, smoke, fire+smoke, and no-fire scenes apart? Smoke may appear before flame. Flame without visible smoke is different from smoke without visible flame. Collapsing them into one label throws away the distinction the model is supposed to learn.
Chapter 03
Structure, as published
Perfectly balanced by design — 1,200 images per class across the splits. The tiles are illustrative, not real samples.
Class distribution · 4,800 images · 4 classes
Selected class
fire
Visible flame
1,200 images · 25.0% of corpus
Illustrative tiles — not real samples
| Subset | fire | nofire | smoke | smokefire | Total |
|---|---|---|---|---|---|
| train | 800 | 800 | 800 | 800 | 3,200 |
| val | 200 | 200 | 200 | 200 | 800 |
| test | 200 | 200 | 200 | 200 | 800 |
Chapter 04
How people use it
It underpins the Fire Ecology paper and its Learning-without-Forgetting experiments, and it feeds public Kaggle notebooks training MobileNet and similar baselines for environmental monitoring. A small live demo of the trained classifier is published at forestfire.osnaren.com.
Chapter 05
The v2 demo
The current Forest Fire Classifier v2 is a Next.js and TensorFlow.js rewrite of the old project. It runs server-side inference, treats uploaded images as in-memory inputs, and rate-limits the API so the demo stays usable. The site is explicit about its scope: this is a serious technical showcase, not a replacement for real wildfire monitoring systems.
Lessons
What it taught me
- Choosing the label taxonomy is the real modelling decision. Everything downstream inherits it.
- Four balanced classes at 250×250 beat forty thousand messy images. Constraints made the corpus usable.
- Shipping a live demo alongside the dataset changed who engaged with it — people believe what they can click.