Database Schema Overview
This page outlines the database schema designed to support the core components of the wildfire detection pipeline. The schema is structured for scalability and maintainability, with a focus on enabling post-handoff use by the partner team.
images
Table
Tracks all image assets in the pipeline.
Field |
Type |
Description |
---|---|---|
|
String (UUID) |
Unique image identifier |
|
String |
Local path to the image file |
|
String |
Local path to the corresponding label JSON file |
|
JSON |
Array of class labels (e.g., |
|
JSON |
Array of bounding boxes ( |
|
Enum |
One of |
|
JSON |
Additional info from pre-labeling (if any) |
|
JSON |
Array of tags (e.g., |
models
Table
Stores metadata for each trained, distilled, or quantized model.
Field |
Type |
Description |
---|---|---|
|
String (UUID) |
Model identifier |
|
String |
Path to the model weights file |
|
Enum |
One of |
|
Enum |
|
|
JSON |
UUIDs of images used for training |
|
JSON |
UUIDs of images used for validation |
|
JSON |
UUIDs of images used for testing |
|
JSON |
Training metrics, loss, and other metadata |
experiments
Table
Tracks experiment configurations and evaluation metrics.
Field |
Type |
Description |
---|---|---|
|
String (UUID) |
Unique experiment identifier |
|
String |
Foreign key to |
|
JSON |
Augmentation settings (e.g., |
|
String |
Seed used for reproducibility |
|
JSON |
Model performance metrics (e.g., |
|
JSON |
Training configuration (e.g., |
.env
Configuration
Set up your database connection in a .env
file at the root of the project:
# Default SQLite setup
DATABASE_URL=sqlite:///db.sqlite3
# Optional PostgreSQL setup
# DATABASE_URL=postgresql://username:password@localhost:5432/your_database