RS-OVC: Open-Vocabulary Counting for Remote-Sensing Data
Pytorch Implementation for the paper RS-OVC: Open-Vocabulary Counting for Remote-Sensing Data - an open-vocabulary object-counting model for remote-sensing data, ICPR 2026.
Tamir Shor1,2, George Leifman2, Genady Beryozkin21Technion – Israel Institute of Technology 2Google Research
We present RS-OVC – the first open-vocabulary object counting framework for remote-sensing imagery.
We show our model enables counting of novel object classes using textual and/or visual conditioning, without retraining.
Set-up
1. Clone repository
git clone https://github.com/tamirshor7/RS-OVC.git
cd RS-OVC
We curate a designated dataset from a set of common aerial imagery object counting and detection dataset, and adapt them for our task of novel-class counting.
Download Original Datasets
To replicate creation of our curated dataset used in the paper, download the following public dataset
Single-GPU training also works with minimal performance degradation.
Baselines
Mode
Description
fused
RS-OVC (ours)
rs_only
RS encoder only
rsft
RS finetuning
countgd
Original CountGD
to train any of the baselines from the paper, set the mode argument to either of ‘rs_only’, ‘rsft’,’countgd’ (naming matches naming conventions from the paper).
To train in RSFT mode pass –config_file config/cfg_fndd_rsft.py (additionaly to –mode rsft). To train in RS-Only mode pass –config_file config/cfg_fndd_rs_only.py (additionaly to –mode rs_only).
This work builds upon CountGD.
Our method extends its architecture and training framework, and parts of this codebase reuse and adapt components from the original implementation.
We thank the authors for publicly-releasing their code and enabling our work to build-upon theirs.
Citation
@article{shor2026rs,
title={RS-OVC: Open-Vocabulary Counting for Remote-Sensing Data},
author={Shor, Tamir and Leifman, George and Beryozkin, Genady},
journal={arXiv preprint arXiv:2604.08704},
year={2026}
}
RS-OVC: Open-Vocabulary Counting for Remote-Sensing Data
Pytorch Implementation for the paper RS-OVC: Open-Vocabulary Counting for Remote-Sensing Data - an open-vocabulary object-counting model for remote-sensing data, ICPR 2026.
Tamir Shor1,2, George Leifman2, Genady Beryozkin2 1Technion – Israel Institute of Technology 2Google Research
Correspondence to: tamir.shor@campus.technion.ac.il
arXiv preprint: [pdf]
Overview
We present RS-OVC – the first open-vocabulary object counting framework for remote-sensing imagery. We show our model enables counting of novel object classes using textual and/or visual conditioning, without retraining.
Set-up
1. Clone repository
2. Create environment
Data
We curate a designated dataset from a set of common aerial imagery object counting and detection dataset, and adapt them for our task of novel-class counting.
Download Original Datasets
To replicate creation of our curated dataset used in the paper, download the following public dataset
NWPU-MOC https://github.com/lyongo/NWPU-MOC
FAIR-1M https://www.kaggle.com/code/ollypowell/fair1m-satellite-dataset-eda
DOTA https://captain-whu.github.io/DOTA/dataset.html
DIOR https://huggingface.co/datasets/torchgeo/dior
RSOC (Building class only) https://github.com/gaoguangshuai/Counting-from-Sky-A-Large-scale-Dataset-for-Remote-Sensing-Object-Counting-and-A-Benchmark-Method
Data Preprocessing
NWPU-MOC
FAIR-1M
DOTA
DIOR
RSOC (Building)
Pretrained Weights (CountGD Initialization)
Download:
https://drive.google.com/file/d/1RbRcNLsOfeEbx6u39pBehqsgQiexHHrI
Place at:
Configure Dataset Paths
Update dataset paths inside:
Example (Linux):
Training
RS-OVC (main model)
If you encounter NCCL issues:
Single-GPU training also works with minimal performance degradation.
Baselines
fusedrs_onlyrsftcountgdto train any of the baselines from the paper, set the mode argument to either of ‘rs_only’, ‘rsft’,’countgd’ (naming matches naming conventions from the paper). To train in RSFT mode pass –config_file config/cfg_fndd_rsft.py (additionaly to –mode rsft). To train in RS-Only mode pass –config_file config/cfg_fndd_rs_only.py (additionaly to –mode rs_only).
Examples:
Evaluation
Example (NWPU-MOC)
Checkpoints
RS-OVC trained checkpoints:
Acknowledgments
This work builds upon CountGD. Our method extends its architecture and training framework, and parts of this codebase reuse and adapt components from the original implementation. We thank the authors for publicly-releasing their code and enabling our work to build-upon theirs.
Citation