Popeye: A Unified Visual-Language Model for Multi-Source Ship Detection from Remote Sensing Imagery
1.11.主要工作内容
-
统一标注范式(image–instruction–answer):
把不同来源(光学/SAR)、不同标注方式(HBB/OBB)的检测任务都转换成“图像 + 指令 + 文本回答”的统一形式,实现多任务对齐。 -
Hybrid Experts Encoder:
提出“混合专家”视觉编码器,针对遥感图像尺度变化大、背景复杂的问题,强化多尺度、鲁棒视觉特征表示。 -
视觉–语言对齐(Visual-Language Alignment):
通过跨模态对齐模块,让图像特征与语言空间充分交互,提高模型对“用自然语言描述的检测请求”的理解能力。 -
指令自适应机制(Instruction Adaption):
在通用场景预训练 VLM 的基础上,引入额外可学习参数,将“自然场景知识”迁移到遥感船舶场景(领域自适应 + 指令微调)。 -
与 SAM 整合:
将 Segment Anything Model(SAM)无缝集成,使 Popeye 在无需额外训练的情况下支持语言驱动的像素级船舶分割。
1.1 统一标注范式
1.使用图像+指令+回答方式数据集来微调qwen大模型
MMShip
↓
YOLO标注
↓
自动转换脚本
↓
生成JSON
↓
Qwen2.5-VL微调
↓
得到舰船领域VLM
1.2 Hybrid Experts Encode
1.选择clip和dino原因
1)语义理解困难
目标外观相似,需要clip。clip在海量图文数据训练
2)细节定位困难
目标过小,模型需要使用dinov2关注 边缘纹理形状结构细节 。dino为自监督视觉模型
dino细节能力强原因:为vit模型,保留原有细节特征。vitpatch分块,全局局部多裁剪视图,多头注意力机制
clip语义能力强原因:图文双塔编码器、数据集4亿图文对
2.融合方式
使用concatenation方式,
Fclip ∈ R^(N×1024)
Fdino ∈ R^(N×1024)
↓
Fhybrid ∈ R^(N×2048)
优点:最大程度保留原始特征
3.多尺度拼接方式
使用多尺度为
224×224
448×448
896×896
使用Adaptive Pooling进行压缩token
自适应池化:输入特征图chw,输出为固定的chw 确保输出尺寸相同
通过输入输出尺寸自适应计算 窗口和步长
4.实际流程
Hybrid Experts Encoder
=
CLIP(语义专家)
+
DINOv2(结构专家)
+
多尺度输入
+
特征拼接融合
+
MLP映射
1.3 Instruction Adaption(指令自适应)
微调:在已经具备通用图文理解能力的 VLM 上,只增加少量可训练参数,让模型适应“遥感舰船检测指令”这种新领域任务。
1.3.1 普通的vlm模型训练流程
图像提取视觉token,文本提取文本token 输入llm中
图像
↓
视觉编码器
↓
视觉特征
↓
Alignment Projection
↓
视觉 token
文本指令
↓
Tokenizer / Embedding
↓
文本 token
视觉 token + 文本 token
↓
LLM
↓
输出答案
1.3.2 数据集不同下的大模型缺点
难点
自然图像学习到的习惯自然场景回答,但无法适配专业化下场景。如:
第一,视角不同。自然图像是地面视角,遥感图像是俯视视角。
第二,目标尺度不同。遥感中的舰船可能很小,只有几十个像素。
第三,输出格式不同。普通 VLM 输出描述句子,舰船检测需要输出坐标、框、类别、数量。
第四,任务指令不同。用户不是问“这是什么”,而是问“检测所有舰船”“输出 HBB/OBB 坐标”“定位指定船只”。
如何改进?
全部微调过程繁琐 成本高
1.3.3 微调传统大模型步骤
1)原始transformer层:
2)加入微调instruction adapter 的transformer层:
3)Adapter结构
4)Adapter参数维度
5)Adapter降维再生维
2.MMShip数据集
论文构建了一个名为 MMShip 的多源船舶“指令数据集”,由现有多源船舶检测数据转化而来:
-
多传感器:包括光学与 SAR 遥感图像。
-
多任务:水平框检测、旋转框检测、分割、图像描述等。
-
多轮对话式指令:支持通过自然语言多轮交互逐步细化检测需求。
所有样本都统一成 “图像 + 自然语言指令 + 文本形式目标信息” 的格式,为视觉–语言对齐和指令微调提供数据基础。
3.其他
3.1 大模型检测与传统检测器区别
大模型检测步骤
阶段1:图像被编码成视觉特征
输入图像->vit->patch1...patchn
阶段2:训练时获取正确坐标
输入训练样本:
图片信息
文本信息:Detect all ships.
坐标信息:Ship1:[120,85,200,150]
阶段3:其实是在预测数字 Token
图片 + Detect ship
↓
预测下一个Token
yolo检测步骤
图片
↓
卷积网络
↓
回归框坐标
结论
往往传统比大模型检测要准确,因为大模型考虑东西过多。
传统yolo与大模型结合方案
图片
↓
YOLO检测
↓
得到BBox
↓
裁剪舰船
↓
送给Qwen-VL
yolo负责定位 qwen负责理解
3.2 传统数据集转换为大模型微调数据集方案
1)主要步骤
- 解析原始 YOLO 标签
读取每张图片对应的.txt文件,获得类别和坐标。 - 生成指令问答对
把检测任务写成问题,比如“请检测图中的舰船”“图中有几艘船”“请给出船的位置”。 - 保存为大模型训练格式
每条数据包含图片路径、用户问题、标准回答。
2)流程
YOLO标签
↓
读取图片和对应txt
↓
把归一化坐标转成真实像素坐标
↓
设计问题模板
↓
把坐标写成自然语言答案
↓
保存成JSON/JSONL
↓
用于视觉语言模型微调
3)例子
原始yolo标签:
0 0.45 0.32 0.12 0.08
表示:
类别:ship
位置:一个归一化框
转换为
图片:0001.jpg
问题:
请检测图中的舰船。答案:
图中有1艘舰船,位置为 [x1,y1,x2,y2]。
最终样式
图片 + 问题 → 答案
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)