VEDARSHMISHRA

Selected work · 13

MARS.

Finding craters in Mars CTX imagery with a controlled Faster R-CNN experiment: geospatial labels, frozen data splits, and an honest accounting of detections and misses.

Mars project cover
MARS
Region
S2 Eastern Hellas
Data
Murray Lab CTX · approximately 5 m/pixel
Model
Faster R-CNN · ResNet50-FPN-v2
Latest saved test
F1 0.400 · AP50 0.263

Images & documentation

Inside the project.

Same-test comparison
01 / 07
Same-test comparison

Experiment 2 and Experiment 3 use the same frozen test split.

Recovered craters
02 / 07
Recovered craters

Experiment 3 true-positive examples from the saved test gallery.

False positives
03 / 07
False positives

Terrain detections that did not match catalog labels.

Missed craters
04 / 07
Missed craters

Catalog craters missed at the locked operating threshold.

Choosing the threshold
05 / 07
Choosing the threshold

Validation threshold sweep; the chosen score cutoff was 0.80.

Recall by diameter
06 / 07
Recall by diameter

Saved size-dependent recall analysis; small sample sizes limit interpretation.

Original baseline workflow
07 / 07
Original baseline workflow

Historical 20-train / 20-test baseline. Later experiments use 150 / 25 / 25 splits.

Method, step by step

From images to evidence.

  1. 01

    Source & align

    CTX mosaic + S2 crater catalog; align map coordinates.

  2. 02

    Tile & label

    1024 × 1024 crops; crater coordinates and diameters become boxes.

  3. 03

    Freeze splits

    150 train / 25 validation / 25 test; no shared crater IDs or footprint overlaps.

  4. 04

    Train candidates

    Compare two candidates within the same Faster R-CNN family.

  5. 05

    Lock on validation

    Candidate A, epoch 11; score threshold 0.80 chosen before test inference.

  6. 06

    Evaluate once

    IoU 0.50; inspect precision, recall, AP50, diameter effects and failures.

Evidence, explained

What changed on the same test set?

Same 25 test images and IoU 0.50. Each system uses its own selected confidence cutoff: 0.50 for Experiment 2 and 0.80 for Experiment 3.

Experiment 2 and 3 test metricsExp 2 · Precision0.111Exp 3 · Precision0.375Exp 2 · Recall0.143Exp 3 · Recall0.429Exp 2 · F10.125Exp 3 · F10.400Exp 2 · AP500.123Exp 3 · AP500.263

Precision asks how many detections were correct; recall asks how many catalog craters were recovered. F1 balances both. AP50 summarizes the precision–recall ranking at IoU 0.50. Higher scores here do not establish performance on another region.

Evidence, explained

Inside the learning algorithm.

The shared model family stays fixed while sampling, augmentation and candidate settings are controlled.

ComponentImplementation
BackboneResNet-50 with a feature pyramid; COCO initialization; crater/background head
Candidate ADefault torchvision resize and anchors
Candidate B1024 px transform; custom nine-anchor RPN; no validation detections before early stop
Balanced batches4 tiles: 2 positive and 2 negative; 38 candidate steps per epoch
AugmentationHorizontal/vertical flips, quarter turns, contrast and gamma variation
OptimizationSGD, learning rate 0.002, momentum 0.9, weight decay 0.0005; warmup then cosine schedule
SelectionValidation AP50 chooses model; validation F1 chooses cutoff; explicit tie-break rules
Final fitReinitialize chosen model; train on 175 train+validation images for 11 locked epochs
EvaluationOne-to-one matching at IoU 0.50; test accessed after locking model and threshold

Evidence, explained

Every test tile counts.

The saved per-tile table includes empty and crater-containing tiles; aggregate scores alone can hide terrain false positives.

Inspect all 25 test-tile records
tile_idTPFPFNprecisionrecallF1
ctx_slice_31360_00100.00.00.0
ctx_slice_31360_62720300.00.00.0
ctx_slice_31360_107520000.00.00.0
ctx_slice_33152_17920000.00.00.0
ctx_slice_34048_89600000.00.00.0
ctx_slice_34048_116480000.00.00.0
ctx_slice_35840_71680100.00.00.0
ctx_slice_35840_98560000.00.00.0
ctx_slice_37632_00100.00.00.0
ctx_slice_39424_98560000.00.00.0
ctx_slice_40320_00000.00.00.0
ctx_slice_40320_80640000.00.00.0
ctx_slice_40320_107520100.00.00.0
ctx_slice_42112_44800000.00.00.0
ctx_slice_42112_53760000.00.00.0
ctx_slice_32256_26880110.00.00.0
ctx_slice_36736_17920010.00.00.0
ctx_slice_36736_26881001.01.01.0
ctx_slice_37632_17920120.00.00.0
ctx_slice_37632_26881001.01.01.0
ctx_slice_39424_8960110.00.00.0
ctx_slice_39424_17920010.00.00.0
ctx_slice_40320_17921021.00.33333333333333330.5
ctx_slice_40320_26881001.01.01.0
ctx_slice_41216_17922001.01.01.0

The research question

Can a crater detector turn orbital imagery into measurable, reviewable crater candidates? The work follows a CTX-to-labels-to-detector workflow, with evaluation and geospatial consistency treated as part of the system.

From baseline to controlled comparison

The original baseline used one Murray Lab CTX mosaic and a small 20-training / 20-testing tile dataset. Experiment 3 uses a byte-copied, hash-verified Experiment 2 split: 150 training, 25 validation and 25 test images. The saved handoff records zero shared crater IDs and zero cross-split footprint overlaps.

The later experiments retain the Faster R-CNN ResNet50-FPN-v2 model family and IoU = 0.50 matching definition. The original baseline diagram remains in the gallery as historical context, not as the current split.

Model selection before testing

Candidate A achieved validation AP50 0.291979 and was selected at epoch 11. Candidate B’s custom nine-anchor RPN produced no validation detections before patience stopped training. A score threshold of 0.80 was locked using validation F1 before test inference.

Saved test results

MetricExperiment 2Experiment 3
Precision0.11110.3750
Recall0.14290.4286
F10.12500.4000
AP500.12250.2631
True / false positives2 / 166 / 10
False negatives128
Score threshold0.500.80

These are saved results on the same 25-image test split, at each experiment’s selected operating threshold. Experiment 3’s median matched IoU was 0.6632. The thresholds differ, so this is a comparison of selected systems rather than a fixed-threshold comparison.

What the failures teach

Experiment 3 still has 10 false positives and 8 missed catalog craters. Seven false positives occur on negative test tiles. The gallery includes true positives, false positives, false negatives and recall by diameter so the improvement can be assessed alongside its remaining failure modes.

Limits & next questions

This is a small, regional experiment. The saved report does not establish performance across Mars or support automated morphology claims. A stronger next test would expand geographically held-out data and inspect size-dependent misses while preserving the split and evaluation protocol.

Results here are transcribed from saved experiment artifacts; training was not rerun for this portfolio update.

Saved research data
Experiment 3 test metrics · Experiment 2 test metrics

Private repository · access required

Read the algorithm.

Implementation, configuration, tests and methodology.

Explore source code ↗

Explore more of the work.

← Back to Selected Builds