认识 Prithvi:NASA × IBM 的遥感基础模型

认识 Prithvi:NASA × IBM 的遥感基础模型

HuggingFace 上最受欢迎的遥感 AI 模型。读完你会用 Prithvi 提取卫星图像特征,用于分类、分割、变化检测。


Prithvi 是什么?

Prithvi(梵语「地球」)是 NASA 和 IBM 联合训练的遥感基础模型(Foundation Model)。2023 年发布后迅速成为 HuggingFace 上最受欢迎的遥感模型------初代 100M 版本获 282 次点赞,2.0 300M 版本被下载 13,000+ 次。

核心思路:在海量卫星数据上预训练一个 Vision Transformer → 学到通用的「遥感视觉」→ 任何下游任务只需微调。


模型家族

模型 参数 下载量 用途
Prithvi-EO-1.0-100M 100M 2,123 · ⭐282 初代经典,社区最认可
Prithvi-EO-2.0-300M 300M 13,568 · ⭐40 升级版,下载量最高
Prithvi-EO-2.0-600M 600M 2,707 · ⭐15 大杯,精度最高
Prithvi-EO-2.0-300M-TL 300M 17,911 Timm 格式,推荐用于微调
Prithvi-EO-2.0-300M-BurnScars 300M 2,962 火灾烧伤检测
Prithvi-EO-2.0-tiny-TL Tiny 4,866 轻量版,适合快速实验

TL 后缀 = Timm 库格式,社区推荐用于下游微调任务。


技术特点

训练方式

  • 数据:NASA HLS(Harmonized Landsat Sentinel-2),覆盖全球的多时相卫星图像
  • 方法:掩码自编码器(Masked Autoencoder, MAE)------随机遮挡图像中的 patch,训练模型从剩余部分重建被遮挡内容
  • 架构:Vision Transformer (ViT)

多光谱支持

Prithvi 不像普通 ViT 只能处理 RGB。它原生支持 HLS 的 6 个光谱波段:

波段 波长 用途
Blue 0.49 μm 水体、大气
Green 0.56 μm 植被
Red 0.66 μm 植被健康
NIR 0.83 μm 植被核心指标
SWIR1 1.61 μm 水分、矿物
SWIR2 2.20 μm 地质、土壤

这比 RGB 多出整整一个数量级的信息------尤其是 NIR(近红外),是计算 NDVI 等植被指数的关键波段。

多时相

Prithvi 能处理不同时间拍摄的同一地点图像。这让它天然适合:

  • 变化检测(城市扩张、森林砍伐)
  • 灾害响应(火灾前后、洪水前后)
  • 作物物候分析(不同生长阶段)

快速上手

Prithvi 不是标准 HuggingFace 模型,不能用 AutoModel.from_pretrained() 直接加载。需下载快照后用自定义类加载。

python 复制代码
import torch, sys

# 从 HF 下载模型快照: huggingface.co/ibm-nasa-geospatial/Prithvi-EO-2.0-300M
SNAP = "Prithvi-EO-2.0-300M"
sys.path.insert(0, SNAP)
from prithvi_mae import PrithviMAE

# 实测参数(img_size=448, patch_size=16, 不同于默认值)
model = PrithviMAE(
    img_size=448, patch_size=(1, 16, 16), num_frames=1, in_chans=6,
    embed_dim=1024, depth=24, num_heads=16,
    decoder_embed_dim=512, decoder_depth=8, decoder_num_heads=16,
    mlp_ratio=4., norm_pix_loss=False, mask_ratio=0.0
)

# 加载权重(需要丢弃不可插值的 pos_embed)
sd = torch.load(f"{SNAP}/Prithvi_EO_V2_300M.pt", map_location="cpu")
if "model_state" in sd: sd = sd["model_state"]
for k in list(sd.keys()):
    if "pos_embed" in k: del sd[k]
model.load_state_dict(sd, strict=False)

model = model.cuda().eval()
# 单图推理: ~31ms, 约32 fps (RTX 4060)

模型输出 (loss, pred, mask),mask_ratio=0 时不做掩码,pred 为 B, N, C 的重建图。


与 TorchGeo 互补使用

TorchGeo 负责数据加载,Prithvi 负责特征提取。由于 Prithvi 不是标准 HF 模型,需配合自定义加载流程------参考上方快速上手或 demo.py。

TorchGeo 提供标准化数据接口,Prithvi 提供预训练特征------配合使用效果最佳。


Prithvi 在技术栈中的位置

scss 复制代码
数据层 (TorchGeo)          → 加载 + 预处理
    ↓
特征层 (Prithvi)           → 通用遥感特征提取
    ↓
时空层 (DeepEarth)         → 加入时间/空间编码
    ↓
知识层 (EVE)               → RAG 检索相关文献
    ↓
写作层 (SciAssistant)      → 自动生成分析报告

参考


首次发布于 2026-05-24 · 掘金 / 知乎

相关推荐
SelectDB3 分钟前
Apache Doris 企业版怎么选?SelectDB 提供同源商业支持、私有化部署与信创适配
人工智能
乐维_lwops7 分钟前
案例解读:大型综合性科创产业园运维监控落地实践
运维·网络·人工智能·安全·it监控·国产运维智能体
杨杨杨大侠34 分钟前
AI 怎么知道自己改对了?从 Astra 修千问说到 Harness²
人工智能·agent
tellmewhoisi37 分钟前
深度学习39:RNN基础介绍,api参数解惑和代码api
人工智能·rnn·深度学习
金融Tech趋势派1 小时前
企业微信客户管理工具哪个好?按企业规模、行业与合规要求的三层判断标准
人工智能·企业微信
组工部管理能手李哥1 小时前
一次政务知识库体验:AI回答之外,我更在意那行引用来源
大数据·人工智能·大模型·政务
硅谷秋水1 小时前
AgenticRoboRL:将“编程智能体”后训练引入智能体化机器人领域
人工智能·机器学习·语言模型·机器人
武天旭1 小时前
AI安全--AI大模型的毒性偏见与安全对齐实践
人工智能·python·深度学习
wordbaby2 小时前
构建高效的智能体(Building Effective Agents)— Anthropic 官方全文精译与图解
人工智能
xsd202411182 小时前
AI 短剧怎么做?
人工智能