How zhasion/rsar works
RSAR is a rotated-object-detection research repository built on MMRotate, with its distinctive contribution being the Unit Cycle Resolver (UCR) for weakly supervised angle prediction and the RSAR SAR benchmark. The principal workflow configures a detector and dataset, trains it, then evaluates or runs inference on images; huge-image inference additionally slices images and merges patch results. The README documents optical-dataset experiments and full dataset preparation. Sampled source supports the inference and data/model primitives; several broader training and evaluation links are documented rather than verified in source excerpts.
Main entry points: detectors Detectors · inference.py Image Inference · train.py Training Runner · configs Experiment Configs
Components 19
Training Workflow
- Experiment Configs
configs - Training Runner
tools/train.py
Data and Evaluation
- SAR and Optical Data
- Dataset Loaders
mmrotate/datasets - Image Transforms
mmrotate/datasets/transforms - Detection Metrics
mmrotate/evaluation
Detection Models
- Feature Backbones
mmrotate/models/backbones - Detectors
mmrotate/models/detectors - Detection Heads
mmrotate/models/dense_heads - ROI Heads
mmrotate/models/roi_heads - Detection Losses
mmrotate/models/losses - Rotated Box Types
mmrotate/structures/bbox - UCR Resolver
mmrotate/models/losses/h2rbox_v2_consistency_loss.py
Inference and Results
- Image Inference
mmrotate/apis/inference.py - Huge-Image Patches
mmrotate/apis/inference.py - Detection Visualization
mmrotate/visualization - TorchServe Handler
tools/deployment/mmrotate_handler.py
Other components
- Researcher
- Image User
Connections 22
- Researcher → Experiment Configs: selects experiment
- Experiment Configs → Training Runner: configures training
- SAR and Optical Data → Dataset Loaders: provides annotations
- Dataset Loaders → Image Transforms: transforms samples
- Training Runner → Dataset Loaders: loads batches
- Training Runner → Detectors: trains detector
- Experiment Configs → UCR Resolver: enables UCR
- Detectors → Feature Backbones: extracts features
- Detectors → Detection Heads: predicts boxes
- Detectors → ROI Heads: refines proposals
- Detection Heads → Detection Losses: computes objectives
- Detection Heads → Rotated Box Types: represents boxes
- UCR Resolver → Detection Losses: constrains angles
- Training Runner → Detection Metrics: evaluates predictions
- Image User → Image Inference: submits images
- Image Inference → Detectors: runs prediction
- Image Inference → Huge-Image Patches: dispatches patches
- Huge-Image Patches → Detectors: infers patches
- Huge-Image Patches → Rotated Box Types: merges detections
- TorchServe Handler → Image Inference: calls inference
- Image Inference → Detection Visualization: renders results
- Detection Metrics → Researcher: reports accuracy