# Data Module Per-modality preprocessing for satellite imagery. ## Files | File | Description | |------|-------------| | `preprocessing.py` | Per-modality transforms (optical, SAR, multispectral) | | `dataset.py` | Dataset loading, splitting, and DataLoader creation | ## Supported Modalities | Modality | Channels | Description | |----------|----------|-------------| | Optical | 3 (RGB) | Sentinel-2 bands B4, B3, B2 | | SAR | 2 (VV/VH) | Sentinel-1 C-band | | Multispectral | 12 | Sentinel-2 all bands | ## Usage ```python from src.data.preprocessing import preprocess_image from src.data.dataset import CrisisLandMarkDataset, create_splits # Preprocess a single image tensor = preprocess_image(image, modality="optical", size=224) # Create dataset dataset = CrisisLandMarkDataset(modality="optical") # Split into query/gallery query_idx, gallery_idx = create_splits(dataset, query_ratio=0.2) ```