Skip to content
Back to skills

Rsvg Eval

ASecurity

This benchmark evaluates a model's ability to localize specific objects in remote sensing satellite imagery using natural language queries. It probes the model's robustness to scale variations, cluttered backgrounds, and multi-granularity textual descriptions common in aerial/satellite scenes. Use when the user wants to benchmark on RSVGD, or asks about evaluating this task. Reports Pr@0.5.

  • 3 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 11, 2026
researchpythongoexpressgit

Security analysis

A100/100

Scanned September 11, 2026

npx -y skills add qhjqhj00/research-skills-pool --skill rsvg-eval --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Rsvg Eval?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Rsvg Eval
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/qhjqhj00-rsvg-eval/badge)](https://www.skillsdirectory.com/skills/qhjqhj00-rsvg-eval)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: rsvg-eval
description: This benchmark evaluates a model's ability to localize specific objects in remote sensing satellite imagery using natural language queries. It probes the model's robustness to scale variations, cluttered backgrounds, and multi-granularity textual descriptions common in aerial/satellite scenes. Use when the user wants to benchmark on RSVGD, or asks about evaluating this task. Reports Pr@0.5.
metadata:
  skill_kind: dataset_eval
  source_arxiv: 2210.12634
  bibtex_key: zhan2022rsvg
  confidence: high
---

# rsvg-eval

> RSVG: Exploring Data and Models for Visual Grounding on Remote Sensing Data — Zhan et al. (2022) (arXiv:2210.12634, 2022)

## What this evaluates

This benchmark evaluates a model's ability to localize specific objects in remote sensing satellite imagery using natural language queries. It probes the model's robustness to scale variations, cluttered backgrounds, and multi-granularity textual descriptions common in aerial/satellite scenes.

## Datasets

- **RSVGD** — total 38320; splits: train (-1), val (-1), test (-1); repo https://github.com/ZhanYang-nwpu/RSVG-pytorch

## Metrics

- `Pr@0.5` **(primary)** — range: percent
  - Percentage of image-query pairs where the predicted bounding box has an Intersection-over-Union (IoU) with the ground-truth box greater than or equal to 0.5.
- `Pr@0.6` — range: percent
  - Percentage of image-query pairs where the predicted bounding box has an IoU with the ground-truth box greater than or equal to 0.6.
- `Pr@0.7` — range: percent
  - Percentage of image-query pairs where the predicted bounding box has an IoU with the ground-truth box greater than or equal to 0.7.
- `Pr@0.8` — range: percent
  - Percentage of image-query pairs where the predicted bounding box has an IoU with the ground-truth box greater than or equal to 0.8.
- `Pr@0.9` — range: percent
  - Percentage of image-query pairs where the predicted bounding box has an IoU with the ground-truth box greater than or equal to 0.9.
- `meanIoU` — range: [0, 1]
  - Average IoU across all test samples: (1/M) * sum(I_t / U_t), where I_t and U_t are the intersection and union areas for sample t, and M is the dataset size.
- `cumIoU` — range: [0, 1]
  - Cumulative IoU across all test samples: sum(I_t) / sum(U_t), aggregating intersection and union areas before division.

## Input / output format

**Input**: A remote sensing image and a natural language query describing a target object within the image.

**Output**: A single predicted bounding box (typically [x_min, y_min, x_max, y_max]) localizing the described object.

## Scoring recipe

```python
def score(predictions, gold_boxes):
    ious = [compute_iou(p, g) for p, g in zip(predictions, gold_boxes)]
    metrics = {}
    for thresh in [0.5, 0.6, 0.7, 0.8, 0.9]:
        metrics[f'Pr@{thresh}'] = sum(1 for i in ious if i >= thresh) / len(ious) * 100
    metrics['meanIoU'] = sum(ious) / len(ious)
    # cumIoU = sum(I_t) / sum(U_t). Since IoU = I_t/U_t, I_t = IoU * U_t.
    metrics['cumIoU'] = sum(iou * union_area(p, g) for iou, p, g in zip(ious, predictions, gold_boxes)) / \
                        sum(union_area(p, g) for p, g in zip(predictions, gold_boxes))
    return metrics
```

## Common pitfalls

- IoU thresholds are strict in remote sensing due to small object sizes; Pr@0.9 often drops significantly compared to Pr@0.5.
- Cluttered backgrounds and scale variations in satellite imagery frequently cause false positives, making meanIoU and cumIoU more informative than binary precision at high thresholds.
- The dataset split is randomized by expression (40/10/50), not by image, which can lead to data leakage if the same image appears in train and test with different queries.

## Evidence (verbatim from paper)

> Given an RS image-query pair, the predicted bounding box is considered right if the intersection-over-union (IoU) with the ground-truth bounding box is above a threshold. In previous visual grounding works, a threshold of 0.5 is used as an accuracy metric. We report the metrics with IoU thresholds at 0.5, 0.6, 0.7, 0.8, and 0.9, termed as Pr@0.5, Pr@0.6, Pr@0.7, Pr@0.8, and Pr@0.9, respectively. In addition, we follow the evaluation metrics of [[59]], including mean IoU and cumulative IoU (cumIoU), with the following equations: meanIoU = 1/M sum(I_t/U_t), and cumIoU = (sum I_t)/(sum U_t).

## Citation

```bibtex
@misc{zhan2022rsvg,
  title={RSVG: Exploring Data and Models for Visual Grounding on Remote Sensing Data},
  author={Zhan et al. (2022)},
  year={2022},
  note={arXiv:2210.12634}
}
```

- arXiv: 2210.12634

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.