from pathlib import Path
readme_content = """
SARAD is a modular, intelligent pipeline designed to detect and filter anomalous satellite images — especially noisy, artifact-heavy Synthetic Aperture Radar (SAR) data — using a fusion of classic statistical methods and deep learning.
SARAD runs through the following steps:
- Preprocessing: Cleans noisy raw images (e.g., stripes, edge glitches) with FFT filters and splits them into patches.
- RX Detection: Uses the Reed-Xiaoli (RX) algorithm to detect statistical outliers based on Mahalanobis distance.
- Autoencoder Detection: Reconstructs patches using a deep convolutional autoencoder and measures reconstruction error.
- Fusion & Clustering: Combines RX and AE scores, then clusters them using DBSCAN to determine anomaly groupings.
- Export: Saves scores, heatmaps, clustering results, and visualizations.
SARPreprocessor: Cleans and splits raw SAR imagesRXDetector: Computes RX anomaly scores and heatmapsAutoencoderAnomalyDetector: Evaluates AE-based reconstruction errorSARAutoencoderTrainer: Trains a convolutional autoencoder on clean SAR patchesJointAnomalyClassifier: Combines RX + AE scores and clusters using DBSCANSARADPipelineManager: Orchestrates the full pipeline end-to-end
from sarad.pipeline import SARPreprocessor
pre = SARPreprocessor("data/raw", "data/cleaned")
pre.process_all()