Skip to content

RemoteCLIP: A Vision Language Foundation Model for Remote Sensing

  • 来源: https://arxiv.org/abs/2306.11029
  • 本地Markdown: ../raw/2023-06-19-remoteclip.md
  • 本地LaTeX: ../raw/2023-06-19-remoteclip-latex/
  • 日期: 2023-06-19
  • 标签: vision-language model, remote sensing, CLIP, data scaling, zero-shot
  • 研究方向: 基础模型 → 视觉-语言预训练 → 遥感
  • 作者: Delong Chen, Fan Liu, Zhangqingyun Guan, Xiaocong Zhou, Jiale Zhu, Qiaolin Ye, Liyong Fu, Jun Zhou (TGRS 2024)
  • 代码: https://github.com/ChenDelong1999/RemoteCLIP
  • 引用: 612

摘要

问题: 遥感基础模型主要基于 MIM(Masked Image Modeling)自监督训练,学到的是低层特征(遮挡不变性),缺乏语义。而遥感俯视图无遮挡,遮挡不变性不是刚需;低层特征对分类/检索等高级语义任务效果差。

方案: RemoteCLIP,首个遥感视觉-语言基础模型。核心贡献:

  1. 数据扩展:通过 B2C(Box-to-Caption)和 M2B(Mask-to-Box)策略,将异构标注(检测框、分割掩码)统一为图文对,扩展预训练数据 12 倍
  2. CLIP 范式:用 InfoNCE 损失对齐图文表征,学习语义丰富的高级视觉特征
  3. RemoteCount:新的遥感目标计数 benchmark

验证: 零样本分类、少样本学习、图文检索均超 CLIP baseline,最高提升 6.39% 准确率


1. Introduction

背景:

  • 遥感基础模型(SatMAE、Scale-MAE、RingMo 等)用 MIM 训练,学低层特征
  • MIM 的问题:(1) 学习遮挡不变性,但遥感俯视图无遮挡 (2) 缺乏语义,不适合高级认知任务
  • CLIP 类模型在自然图像上通过图文对齐学到强语义特征,但遥感领域缺乏大规模图文对数据

核心洞察: CLIP 的大模型(ViT-L)在遥感零样本分类上已经比 MIM 小模型强——问题不是架构,而是数据。遥感缺乏 CLIP 需要的大规模图文对

解决方案

  • 遥感有大量检测框和分割掩码标注,但没有图文对
  • 用 B2C(检测框 → 文本描述)和 M2B(分割掩码 → 检测框 → 文本描述)将异构标注转为统一图文对
  • 扩展数据 12 倍,在 CLIP 基础上继续预训练

2. RemoteCLIP 方法

2.1 CLIP 预训练

  • 标准 InfoNCE 损失,对齐图文表征
  • 图像编码器:ResNet-50 (38M) / ViT-B-32 (87M, 12层12头, 32×32 patch) / ViT-L-14 (304M, 24层16头, 14×14 patch)
  • 文本编码器:12 层 Transformer,8 个注意力头,63-124M 参数(与图像编码器配套),最大 token 长度 77,与 OpenAI CLIP 文本编码器结构一致
  • 在 OpenAI CLIP 权重基础上继续预训练(而非从零训练)
  • 图像预处理:RandomResizedCrop 到 224×224,加随机水平翻转和 0°/90°/180°/270° 旋转。未切图——165,745 张训练图与原始数据集图片数完全对应,每张原图就是一条样本。对大图(DOTA 1504×1395)直接 crop+resize,小目标信息严重丢失

实现细节(读代码确认,2026-07-14):RemoteCLIP 仓库只有推理/检索代码,无训练预处理;RandomResizedCrop 来自其依赖的 OpenCLIP preprocess_train(默认 scale=(0.08,1.0)ratio=(3/4,4/3)、输出 224),即裁出区域面积为原图 8%–100% 间随机。推理/评测用 preprocess_val = Resize(224)+CenterCrop(224)(无随机 crop)。对 DroneCLIP 的启示:方案 A 整图可走 preprocess_train(与 RemoteCLIP 同,接受随机 crop 噪声);但方案 B 的 224 crop 必须走确定性变换(避免再被随机裁而破坏 caption/crop 一致性)。

2.2 数据扩展:标注统一

问题: 遥感有大量异构标注但缺乏图文对

B2C(Box-to-Caption)

  • 输入:一张图 + 图中所有检测框(每个框有类别名+坐标)
  • 输出:该图的 5 条自然语言描述(与 MS-COCO 等数据集每图 5 条 caption 对齐)
  • 不裁剪框、不扩大上下文——是对整张图生成描述,不是对单个框
  • 具体流程(规则模板生成):
    1. Caption 1:描述位于图中心的物体(基于框中心点判断是否在图像中心区域)
    2. Caption 2:描述不在中心的物体
    3. Caption 3-5:从标注框中随机选择物体类别生成描述,考虑类别数量——当某类物体超过 10 个时用 "many"/"a lot of" 代替精确数量,增强可读性和多样性
  • 论文未详细说明模板的完整格式(代码未公开),但明确编码了物体类别空间位置(中心/非中心)信息

M2B(Mask-to-Box)

  • 输入:分割掩码标注
  • 步骤:掩码 → 外接矩形框 → 再用 B2C 转为文本
  • 让分割数据也能用于图文对齐训练

数据构成

  • RET-3:3 个检索数据集(RSITMD、RSICD、UCM)的原始图文对
  • DET-10:10 个检测数据集,用 B2C 转换
  • SEG-4:4 个分割数据集,用 M2B → B2C 转换
  • 总计扩展 12 倍于原始检索数据

2.3 数据分析

  • B2C/M2B 生成的 caption 长度分布与 RET-3 原始图文对接近
  • 关键词覆盖遥感常见概念(airplane、building、vehicle 等)
  • 检测数据贡献最多样本量
  • p-Hash 去重:用感知哈希(DCT 低频系数 → 64-bit 哈希)检测训练集与下游评测集之间的近似重复图像,汉明距离 < 2 判为重复并删除,防止 test-set contamination。各数据集删除 40~3k 张不等

数据统计

数据集来源类型图文对数说明
RET-3原始图文对~13kRSITMD + RSICD + UCM,人工标注 caption
DET-10检测→B2C~120k+6 个卫星数据集 + 4 个 UAV 数据集(含 VisDrone)
SEG-4分割→M2B→B2C~30k+iSAID, loveDA, Potsdam, Vaihingen
合计~165k扩展 12 倍于 RET-3

3. 训练与实验

3.0 预训练设置(IV-A Implementation Details)

数据:165,745 张图像 × 5 caption/图 = 828,725 图文对。

增强:RandomResizedCrop → 224×224 + 随机水平翻转 + 0°/90°/180°/270° 旋转。

优化器:Adam,linear warmup + cosine LR scheduler。

超参

BackboneLRBatch SizeSteps对应 epochs硬件事项
RN507e-5256108,215~33.4
ViT-B-324e-5256108,215~33.4
ViT-L-141e-428108,215~3.664×3090Ti, 233.4h

108,215 步的由来:论文未解释该数字的选择依据。反推 828,725 图文对 / bs=256 ≈ 3,237 steps/epoch × 33.4 ≈ 108,215;ViT-L-14 因 bs=28 故仅 ~3.66 epochs。更像是按 ViT-L-14 的训练时间预算(233h)倒推出步数,再统一给三个模型。对 DroneCLIP 的启示:CLIP 风格预训练无验证/无 early stopping,步数是人为选定的。我们应沿 OpenCLIP 惯例——训固定 epoch(建议 30-50),在每个 checkpoint 末尾跑一次下游评测集,选下游指标最高的 checkpoint 作为最终模型。

文本编码器:三种 backbone 共享同一结构(12 层 Transformer, 8 头注意力, max token 77, 与 OpenAI CLIP 一致)。参数量(64M / 63M / 124M)是 OpenAI CLIP 各 checkpoint 原生的固定搭配(RN50 / ViT-B-32 / ViT-L-14 的文本编码器宽度不同),非 RemoteCLIP 自行选择。论文未说明文本编码器的 LR 是否与图像编码器不同或共享——按 ITRA/OpenCLIP 惯例,两者共享同一优化器(Adam),即 LR 相同。

验证:无。论文未提及训练过程中使用验证集(no early stopping / no best checkpoint selection),全程训满 108,215 steps,符合 CLIP 风格预训练惯例。

3. Experiments

3.1 图文检索(RET-3 = RSITMD + RSICD + UCM,三数据集)

评测方式(论文 IV-B1):在 test split 上抽取图文表征 → L2 归一化 → 按点积相似度检索 top-k;不做任何数据集专属微调 / re-ranking

MeanRecall = [I2T(R@1+R@5+R@10) + T2I(R@1+R@5+R@10)] / 6

RSITMD(test gallery 约 474 张):

MethodI2T R@1I2T R@5I2T R@10T2I R@1T2I R@5T2I R@10MeanRecall
SOTA (Rahhal ViT-B-32)19.6940.2654.4217.6149.7366.5941.38
CLIP-CL ViT-B-3224.7850.0063.2722.6155.2769.8747.63
RemoteCLIP RN5023.6747.5764.6019.2951.5570.5846.21
RemoteCLIP ViT-B-3227.8850.6665.7122.1756.4673.4149.38
RemoteCLIP ViT-L-1428.7652.4363.9423.7659.5174.7350.52

RSICD(test gallery 约 1092 张):

MethodI2T R@1I2T R@5I2T R@10T2I R@1T2I R@5T2I R@10MeanRecall
SOTA (Rahhal ViT-B-32)10.7029.6441.539.1428.9644.5927.43
CLIP-CL ViT-B-3217.8435.9650.1413.8935.1550.0833.96
RemoteCLIP RN5013.3632.9444.8310.7632.8348.7530.58
RemoteCLIP ViT-B-3217.0237.9751.5113.7137.1154.2535.26
RemoteCLIP ViT-L-1418.3937.4251.0514.7339.9356.5836.35

UCM(test gallery 约 812 张):

MethodI2T R@1I2T R@5I2T R@10T2I R@1T2I R@5T2I R@10MeanRecall
SOTA (FBCLM)28.5763.8182.8627.3372.6794.3861.60
CLIP-CL ViT-B-3220.0055.2480.9518.1964.8692.3855.27
RemoteCLIP RN5013.3350.4874.7615.2457.1484.5749.25
RemoteCLIP ViT-B-3220.4859.8583.3318.6761.5294.2956.36
RemoteCLIP ViT-L-1419.0554.2980.9517.7162.1993.9054.68

小结:RemoteCLIP ViT-B-32 在 RSITMD / RSICD / UCM 的 R@1 分别约 22–28%。三集 gallery 均远小于 DroneCLIP RefDrone 的 1610,且都是场景级、卫星俯视;gallery 越小 R@k 越容易(候选池小、随机命中概率高),故其 R@1 数字本身被「小 gallery」抬高。DroneCLIP 在 RefDrone(gallery 1610、细粒度、低空倾斜视角)上 R@1≈12.4% 与它「同量级」,但基准更难(候选更多 + 视角/粒度更难)。

3.2 零样本分类(12 个场景分类数据集)

12 个零样本评测集(TABLE III,均不在训练集中): PatternNet、EuroSAT、OPTIMAL-31、RSC11、AID、MLRSNet、RSI-CB128、RSI-CB256、RESISC45、WHU-earth、WHU-RS19、RS2800。

评测方式:标准 template-based prompting("a satellite photo of {class name}."),用文本作零样本分类器;不微调;CLIP 与 RemoteCLIP 均用 RN50 / ViT-B-32 / ViT-L-14 三种 backbone 分别评测。无低空无人机场景集

结果(按数据集拆分,方便逐集对比;Δ 为 RemoteCLIP − CLIP)

DatasetCLIP RN50R-CLIP RN50ΔRN50CLIP ViT-B-32R-CLIP ViT-B-32ΔViT-BCLIP ViT-L-14R-CLIP ViT-L-14ΔViT-L
RSI-CB12826.5613.95-12.6128.8824.18-4.7040.2337.22-3.01
RSI-CB25634.2433.03-1.2137.3539.50+2.1547.9452.82+4.88
WHU-earth40.4256.25+15.8351.1863.12+11.9458.3370.83+12.50
EuroSAT42.0217.19-24.8347.1135.96-11.1560.2159.94-0.27
MLRSNet45.5440.68-4.8655.2959.28+3.9964.8966.32+1.43
PatternNet46.9645.51-1.4558.9557.71-1.2473.7868.75-5.03
RESISC4553.5753.24-0.3360.9270.33+9.4169.2379.84+10.61
AID57.3586.55+29.2065.6591.30+25.6569.8887.90+18.02
RS280062.1462.86+0.7259.3168.57+9.2672.1572.32+0.17
OPTIMAL-3164.5470.16+5.6468.6277.96+9.3476.8390.05+13.22
RSC1169.4266.93+2.3958.3564.94+6.5967.1174.90+7.79
WHU-RS1950.6195.15+25.7380.6196.12+15.5187.5094.66+7.16
Average50.6153.46+2.8556.0262.41+6.3965.6771.30+5.63
  • RemoteCLIP 在 12 个数据集中 9 个(75%)优于 CLIP(ViT-L-14)。
  • 低分辨率掉点:EuroSAT 仅 64×64,RemoteCLIP 全面落后(RN50 -24.83%、ViT-B-32 -11.15%、ViT-L-14 -0.27%),论文归因于高分辨率训练图与低分辨率评测图的域差距。
  • 最大增益在 AID / WHU-RS19 / WHU-earth(场景级卫星图,与训练域一致);最大掉点在 EuroSAT / PatternNet(分辨率或域差距)。

对 DroneCLIP 的参考价值:这 12 个均为卫星/航拍场景分类(俯视遥感),没有低空无人机场景。RESISC45/AID 等含机场、港口等粗粒度场景,与 DroneCLIP 关注的车辆/行人/建筑等细粒度低空目标不重叠,且无法评估 B2C 计数、检索能力。RemoteCLIP 的零样本分类评测体系不能直接复用;DroneCLIP 应使用 P3 列出的无人机专用分类集(ERA / CapERA)。

3.3 少样本分类(与零样本同 12 个评测集,1/4/8/16/32-shot)

评测方式(论文 IV-B4):从每类随机抽 N 张(N=1/4/8/16/32)作训练集,其余作测试;在冻结的图像编码器后加**线性层(logistic regression)**做下游分类——超参:lr=0.8、SGD、CosineAnnealingLR、1000 epochs、batch 10000、weight decay 4e-5,并用 5 次随机搜索挑最优超参。逐 shot 数(1→32)准确率随样本数显著提升。

结论:32-shot 时 RemoteCLIP 在全部 12 个数据集上优于所有基线(CLIP、SwAV/BarlowTwins/VICReg 等 SSL、ImageNet 预训练、ViTAE/SatMAE 遥感基础模型)。具体逐数据集数字只在论文 Fig.9(图,非表),此处不列。

3.3.1 全量线性探测 & k-NN(TABLE IV,ViT-B-32 backbone 对比)

论文 IV-B5 额外测了 full-shot 线性探测与 k-NN(k=20, T=0.07),同 12 个分类集。下表只列 ViT-B-32 backbone(DroneCLIP 同骨架),线性探测 / k-NN 各行均为 12 集平均准确率:

DatasetCLIP ViT-B LinearR-CLIP ViT-B LinearCLIP ViT-B k-NNR-CLIP ViT-B k-NN
RSI-CB12897.3698.0294.1795.82
RSI-CB25698.5599.0197.4098.51
WHU-earth95.0095.4292.0897.08
EuroSAT95.1596.1990.2893.50
MLRSNet85.4387.0082.2685.11
PatternNet97.5898.4794.3697.32
RESISC4592.6094.2789.7392.67
AID94.9595.9590.3592.55
RS280088.5786.9688.2187.86
OPTIMAL-3193.5595.9790.8694.35
RSC1190.8491.6386.8589.24
WHU-RS1997.0997.5793.6994.17
Average92.3193.9392.1593.77

RemoteCLIP ViT-B-32 线性探测 Avg 93.93、k-NN Avg 93.77,均高于 CLIP ViT-B-32(92.31 / 92.15)。RN50 / ViT-L-14 及 ImageNet/ViTAE/SwAV 等基线见 raw 论文 TABLE IV。

3.4 目标计数(RemoteCount)

  • 作者自建的 benchmark,非已有公开数据集
  • 从 DOTA 验证集中选取,947 个图文对,覆盖 13 类(plane, helicopter, roundabout, bridge, baseball diamond, ground track field, basketball court, tennis court, harbor, soccer field, swimming pool, ship, storage tank)
  • 计数 ground truth 从 DOTA 检测框标注自动统计,5 名研究生做的是验证/质控而非从零标注
  • 评测方式(论文 IV-B2):对每张图把 caption 里的数字替换为 1–10 生成 10 条候选 caption,取与图点积相似度最高的数字作为预测计数;abstract 称 "automatically-created counterfactual examples" 即指此自动化构造。结果以混淆矩阵 + Top-1…Top-10 准确率呈现(Fig.8,图非表)。
  • 结论:CLIP 在此任务表现差;RemoteCLIP 混淆矩阵呈明显对角线、Top-6 准确率仍显著优于 CLIP;且用数字 "1"–"10" 替代 "one"–"ten"(论文标 "(digit)")时 RemoteCLIP 仍鲁棒。
  • 注意:计数对象均为卫星俯视图的大目标(飞机、桥、球场),非低空无人机小目标,对 DroneCLIP 的小目标计数参考价值有限。

3.5 消融实验

注:消融表(TABLE V)里 Retrieval 列 = 三个检索集 MeanRecall 的再平均(如 ViT-B-32 全预训练 (49.38+35.26+56.36)/3 = 47.00),不是单集 R@1;Zero-shot 列 = 12 分类集平均准确率。

Backbone 预训练(ViT-B-32):图像预训练比文本预训练重要得多——

Image PTText PTRetrieval(Avg)Zero-shot(12 avg)
47.0064.52
21.5642.60
37.1354.30
18.9230.93

→ 去掉图像预训练掉点(−25.44 / −21.92)远大于去掉文本预训练(−9.87 / −10.22),图像编码器的 CLIP 预训练权重是关键

数据组合(RET-3 + DET-10 + SEG-4)

SEG-4DET-10RET-3RetrievalZero-shot
7.1514.55
9.8221.37
36.3248.75
10.2324.09
37.2446.94
39.7251.31
42.0153.46

→ 三者全用最好;缺 DET 掉点最多(SEG+RET 仅 37.24/46.94),检测数据量最大是主要贡献来源。

损失函数

LossRetrievalZero-shot
InfoNCE36.3248.57
Margin Ranking28.9348.47
SigLIP26.6845.66
N-pair25.3145.52
BarlowTwins21.0335.44

→ InfoNCE 最优(DroneCLIP 沿用 InfoNCE 正确)。

数据增强

PreprocessingRetrievalZero-shot
Rotation38.9047.98
No Augmentation37.7448.05
Super Resolution37.9847.18
SimCLR37.9948.07

→ 旋转增强略有帮助,超分辨率 / SimCLR 无明显收益。


4. Conclusion

  • 首个遥感视觉-语言基础模型
  • B2C + M2B 解决遥感缺乏图文对的问题,数据扩展 12 倍
  • 零样本/少样本/检索全面超 CLIP
  • RemoteCount 新 benchmark

与 DisDop / CastDet / LAE-DINO 的关系

RemoteCLIP 是三篇论文都依赖的基础模型:

  • CastDet:用 RemoteCLIP 做外部教师——对定位教师提出的候选框分类,生成伪标签。用的是 R50-RemoteCLIP
  • LAE-DINO:未直接用 RemoteCLIP,但 LAE-1M 数据构建参考了 RemoteCLIP 的数据思路
  • DisDop:用 RemoteCLIP-ViT-L/14 做视觉教师(跨模态对齐能力)和文本教师(类别语义关系)。核心观点:RemoteCLIP 视觉编码器对齐强但局部特征弱,需 DINOv3 补充

个人评价

核心价值: 首个遥感 VL 基础模型,B2C/M2B 是实用的数据工程创新。612 次引用说明影响力大

可借鉴点:

  • B2C/M2C 标注统一策略:将异构标注转为统一格式,是遥感数据稀缺场景的通用解法
  • 在 CLIP 上继续预训练而非从零训练:利用 CLIP 已有的语义对齐能力

局限性:

  • B2C 生成的 caption 质量有限(模板化,不够自然)
  • 图像级对齐(image-level),缺乏区域级(region-level)对齐——这也是 DisDop 要用 DINOv3 补充局部特征的原因
  • 检索/分类强,但检测/分割不是直接优化目标
  • 小目标困境:CLIP 输入 224×224,VisDrone 等数据集的小目标(10-30px)缩放后仅 1-3px,视觉编码器根本看不到。B2C caption 说"有 car"但图像中 car 不可辨识,图文对齐信号实质是噪声——模型被迫在语义空间强行匹配,对齐不可靠。这解释了 RemoteCLIP 在场景级分类(机场、农田)上好但在小目标检测上差的根本原因,也是 DisDop 引入 DINOv3 补充局部特征的直接动机
  • 卫星图与无人机图混合训练的隐患:DET-10 包含 6 个卫星数据集(DOTA/DIOR/HRRSD/RSOD/LEVIR/HRSC,~46k 图)和 4 个无人机数据集(AUAIR/Stanford/VisDrone/CARPK,~58k 图),但两类图像差异极大:(1) 观测角度不同——卫星近正射(90°),无人机倾斜/低角度 (2) 同名目标视觉特征完全不同——卫星图中的 car 是小白点,无人机图中的 car 有清晰形状 (3) B2C caption 都写"有 car",但图像视觉信号矛盾,CLIP 的 image-level 对齐无法同时满足两个域 (4) 论文未做 satellite vs UAV 消融,且评估全在卫星图数据集上(分类/检索/计数),无法判断无人机数据对无人机下游任务是否有帮助。对于低空遥感,单独建大规模数据训练很可能更有效

未来工作:低空遥感视觉-语言基础模型

价值

  • UAVBench & UAVIT-1M笔记,2026-03,arXiv 2603.14336)针对低空无人机场景构建了 benchmark + 1.24M 指令微调数据集(789k 无人机图),但走的是 MLLM 路线(instruction tuning),不是 CLIP 范式的对比预训练。且 instruction tuning 只训练对齐层+LoRA,没有改变视觉编码器(CLIP ViT)本身的低空表征能力,region-level 任务(检测/grounding)提升有限。两者目标不同(推理 vs 表征对齐)
  • 目前仍没有专门的低空遥感 CLIP 范式 VL 基础模型
  • 无人机应用爆发(巡检、配送、安防、农业),低空遥感是独立大场景,不是卫星遥感的附属
  • 专门针对一个域训练可消解卫星图与无人机图同名目标视觉特征冲突的问题

挑战

  • 数据量:UAVIT-1M 已整合 21 个无人机数据集共 789k 图像(笔记),远超 RemoteCLIP 的 165k——数据量不再是瓶颈。且源数据集都有检测框/分割标注,可直接用于 region-text 配对或 B2C 生成 caption
  • 小目标问题更严重:无人机图目标更小更密,RemoteCLIP 的 image-level CLIP 范式在此更不适用,需要 region-level 对齐
  • CLIP 224×224 输入硬限制:照搬 RemoteCLIP 架构小目标问题不仅没解决反而更严重,需考虑高分辨率输入、切图训练、或 region-text 对齐等改动

训练低空 CLIP 的两条路线

  • 数据来源:UAVIT-1M 的 21 个源数据集(789k 图像),但并非都有检测框:15 个 OD 数据集有检测框,10 个 SS 数据集有分割掩码(可 M2B 转框),OT/MOT 跟踪数据也有框;ER/VC/AR/NLG/REC/ITR 类数据集无框标注。
    • 有检测框(15 个 OD):VisDrone、AU-AIR、DroneVehicle、UAVDT、HazyDet 等
    • 有分割掩码(10 个 SS):可 M2B 转框,如 UAVid、AeroScapes 等
    • 有跟踪框(10 个 OT + 2 个 MOT):UAV123、WebUAV-3M 等
    • 无框标注:ER(事件识别)、VC(视频描述)、AR(动作识别)、NLG(地理定位)、REC(指代表达)、ITR(图文检索)
  • CLIP 路线:789k 图 + B2C 生成 caption → 标准 InfoNCE 对齐(但仍有小目标和 image-level 对齐的局限)
  • GLIP 路线:789k 图 + 检测框 → region-text 对齐,直接解决小目标对齐问题,不需要 B2C
    • 同时解决"数据统一"和"小目标对齐"两个问题
    • 与 RemoteCLIP 形成互补:RemoteCLIP 解决遥感 VL 有没有的问题,此路线解决低空遥感 VL 好不好的问题