1.SiamFC工作概述
SiamFC (Fully-Convolutional Siamese Networks) 开创性单目标视觉跟踪算法
核心是用全卷积孪生网络 做离线端到端相似性学习

(1)核心解决的问题
- 传统跟踪痛点
-
- 基于手工特征 + 在线学习(如 KCF、CSK):特征弱、复杂场景易漂移、速度有限
- 早期深度跟踪:需在线微调网络,速度极慢(<1FPS),无法实时
- 传统的跟踪是通过在线学习物体外观模型来解决,视频本身是唯一的训练数据
- SiamFC 目标
-
- 用离线训练 的深度网络,不在线更新 ,兼顾速度(>80FPS) 与 精度。
- 把跟踪转为模板匹配 :第一帧目标为模板(z) ,后续帧为搜索图(x),找最相似区域。
(2)核心工作与创新点
1. 全卷积孪生网络架构(核心)
- 孪生分支(权重共享):
-
- 模板分支:输入目标小图(z)→ CNN(修改版 AlexNet,无全连接层)→ 特征图
φ(z) - 搜索分支:输入当前帧大图(x)→ 同网络 → 特征图
φ(x)
- 模板分支:输入目标小图(z)→ CNN(修改版 AlexNet,无全连接层)→ 特征图
- 全卷积(FC):
-
- 无全连接层,支持任意尺寸输入 ,输出响应图(Score Map)。
- 互相关(Cross-Correlation)匹配:
-
- 用
φ(z)作卷积核,在φ(x)上卷积 → 响应图(相似度),峰值即目标中心。 - 公式:
f(z, x) = φ(z) * φ(x)(* 为互相关)
- 用
2. 训练范式:离线端到端
- 数据集 :ILSVRC15(ImageNet VID),大量视频对做相似性学习。
- 损失函数:逻辑回归损失(Logistic Loss)。
-
- 响应图峰值附近为正样本 ,外围为负样本。
- 学习目标:让真目标处响应最大、背景最小。
- 关键优势:
-
- 离线训练 :跟踪时仅前向推理 ,无反向传播 / 在线更新 → 极快。
- 端到端 :从像素到响应图,无手工特征、无后处理。
3. 跟踪流程(极简)
- 初始化 :第 1 帧框选目标 → 裁剪为模板 z。
- 逐帧跟踪:
-
- 裁剪当前帧搜索区域 x(大于目标数倍)。
- 双分支前向 → 特征
φ(z)、φ(x)。 - 互相关 → 响应图 → 找峰值 → 目标中心。
- 多尺度测试:缩放搜索图,找响应最强尺度 → 目标尺寸。
- 输出:当前帧目标框(中心 + 尺寸)。
(3)全卷积孪生网络介绍
全卷积孪生网络 (Fully Convolutional Siamese Network, FCSN/SiamFC) 是一种结合了孪生网络 (Siamese Network) 与全卷积网络 (FCN) 特性的深度学习架构,核心用于图像相似性比较与目标定位 ,最经典的应用是单目标视觉跟踪。
1)孪生网络 (Siamese)-> 双分支共享权重
- 双分支结构:网络包含两个完全相同的子网络(分支)。
- 权重共享 :两个分支的网络结构与参数完全一致。
- 作用 :确保对两张不同输入图像 采用完全相同的规则 提取特征,保证特征空间的一致性与可比性。
2)全卷积 (Fully Convolutional) -> 无全连接层
- 整个网络仅由卷积层、池化层、上采样层 构成,无全连接层。
- 优势:
-
- 输入灵活 :可接受任意尺寸的图像输入。
- 保留空间信息 :输出是特征图 (Feature Map) 而非一维向量,保留了图像的位置信息。
- 平移不变性:目标在图像中平移时,网络响应具有一致性。
(4) SiamFC工作流程
- 输入
-
- 模板图像 (z):第一帧中框选的目标(待跟踪对象)。
- 搜索图像 (x):当前帧中待搜索的大范围区域。
- 特征提取
-
- 两个分支分别对
z和x进行卷积,提取高维特征图φ(z)和φ(x)。
- 两个分支分别对
- 相似性计算(核心)
-
- 将模板特征图
φ(z)作为卷积核 ,在搜索特征图φ(x)上进行 卷积(互相关) 操作。 - 输出一张响应分数图 (Score Map) ,每个像素值代表搜索区域对应位置与目标模板的相似度。
- 将模板特征图
- 定位目标
-
- 在分数图中找到最大值的位置,即为当前帧目标的中心坐标。