图书目录

目    录

第1篇  基础篇

第1章  DINOv3全景导览与学习指南 2

1.1  DINOv3:一种自监督学习的思想范式 2

1.1.1  产生背景:数据标注的局限与DINOv3的出现 2

1.1.2  核心贡献:DINOv3的技术里程碑与范式突破 3

1.2  DINOv3:一种通用的视觉骨干网络 4

1.2.1  无须标注的自监督学习 5

1.2.2  多种视觉任务上的统一骨干网络 6

1.2.3  模型参数规模与部署的工程化设计 6

1.2.4  DINOv3的实际应用与开放理念 7

1.3  DINOv3:从DINO开始的发展历程 7

1.3.1  DINO模型 7

1.3.2  DINOv2模型 8

1.3.3  DINOv3模型 8

1.4  本书架构与学习路径 9

1.4.1  设计逻辑:从原理、应用到训练的渐进式学习法 9

1.4.2  要点梳理:实战篇章与关键技能 9

1.5  本章小结 10

第2章  DINOv3的训练原理与核心机制 11

2.1  训练数据准备:多种数据集的混合 11

2.1.1  数据收集与筛选 11

2.1.2  数据混合策略 13

2.2  大规模自监督训练:架构创新与算法优化 13

2.2.1  创新的学习目标设计 14

2.2.2  模型架构的改进与优化 14

2.3  Gram锚定:提升密集特征一致性 15

2.3.1  密集特征退化问题分析 15

2.3.2  Gram锚定目标设计 16

2.3.3  高分辨率特征增强 16

2.4  模型蒸馏:多场景模型家族的形成 17

2.4.1  算力需求:DINOv3多模型家族算力估算 17

2.4.2  知识迁移:DINOv3蒸馏模型的基本原理 18

2.4.3  并行蒸馏:高效的学生模型蒸馏流程 18

2.5  多模态理解:图像-开放词汇文本对齐训练 19

2.5.1  泛化过程:图像-开放词汇文本对齐的基本原理 19

2.5.2  图像与标题匹配:DINOv3图像-开放词汇文本对齐训练方法 20

2.6  本章小结 20

第3章  DINOv3实验配置要求与环境搭建 21

3.1  DINOv3实验环境要求 21

3.1.1  实验环境概览 21

3.1.2  硬件环境要求 22

3.1.3  软件环境要求 23

3.2  DINOv3实验环境配置方法 24

3.2.1  显卡(或推理卡)驱动程序的安装 24

3.2.2  CUDA安装 27

3.2.3  Python虚拟环境安装 30

3.2.4  Git客户端安装 33

3.2.5  wget工具安装 34

3.2.6  实验环境验证 34

3.3  DINOv3模型概览 35

3.3.1  DINOv3官方模型 35

3.3.2  DINOv3第三方模型 37

3.4  本章小结 38

第2篇  应用篇

第4章  特征提取:视觉基础表示 41

4.1  图像特征基础理论 41

4.1.1  图像特征的基本概念 41

4.1.2  全局特征的基本概念 42

4.1.3  局部特征的基本概念 42

4.2  获取图像特征向量 43

4.2.1  特征提取程序解析 43

4.2.2  特征提取实验过程 44

4.3  图像特征向量结构分析 46

4.3.1  特征向量结构分析程序解析 46

4.3.2  特征向量结构分析实验过程 47

4.4  图像特征可视化 48

4.4.1  图像的分块可视化 48

4.4.2  token的分布位置分析 49

4.4.3  图像特征可视化程序解析 50

4.4.4  图像特征可视化实验过程 51

4.5  基于特征的图像相似度计算应用 52

4.5.1  图像相似度计算程序解析 52

4.5.2  图像相似度计算实验过程 53

4.6  本章小结 54

第5章  零样本分类:文本与图像对齐 56

5.1  零样本分类概述 56

5.2  DINOv3的零样本分类基础 57

5.2.1  零样本分类基础程序解析 57

5.2.2  零样本分类实验过程 60

5.3  DINOv3的零样本图块级分类 62

5.3.1  零样本图块级分类程序解析 62

5.3.2  零样本图块级分类实验过程 65

5.4  DINOv3的零样本图块级分类可视化 66

5.4.1  零样本图块级分类可视化程序解析 66

5.4.2  零样本图块级分类可视化实验过程 67

5.5  评估DINOv3零样本分类能力 68

5.5.1  评估零样本分类能力的原理 68

5.5.2  零样本分类能力评估程序解析 73

5.5.3  零样本分类能力评估实验过程 77

5.6  本章小结 78

第6章  语义分割:像素级分类 79

6.1  语义分割任务概述 79

6.2  语义分割基础应用 79

6.2.1  语义分割模型介绍 80

6.2.2  语义分割程序解析 80

6.2.3  语义分割实验过程 83

6.3  前景分割任务头训练 84

6.3.1  前景分割训练数据准备 84

6.3.2  前景分割训练程序解析 85

6.3.3  前景分割训练实验过程 89

6.4  前景分割任务头训练应用 90

6.4.1  前景分割应用程序解析 90

6.4.2  前景分割应用实验过程 93

6.5  主成分分析应用 94

6.5.1  主成分分析的原理 94

6.5.2  主成分分析程序解析 95

6.5.3  主成分分析实验过程 98

6.6  本章小结 100

第7章  目标检测:定位与识别 101

7.1  目标检测任务概述 101

7.2  DINOv3目标检测基础应用 102

7.2.1  DINOv3目标检测实现原理 102

7.2.2  DINOv3目标检测基础程序解析 102

7.2.3  DINOv3目标检测实验过程 107

7.3  DINOv3蒸馏模型实现目标检测 110

7.3.1  蒸馏模型目标检测原理 110

7.3.2  蒸馏模型目标检测程序解析 110

7.3.3  蒸馏模型目标检测实验过程 111

7.4  本章小结 113

第8章  特征匹配:密集稀疏关联 114

8.1  密集稀疏匹配任务概述 114

8.2  密集稀疏匹配程序解析 115

8.3  密集稀疏匹配实验过程 126

8.4  本章小结 128

第9章  3D赋能:SAM 3D Body应用 129

9.1  SAM3与SAM 3D Body模型简介 129

9.1.1  图像分割模型SAM3 129

9.1.2  三维人体重建模型SAM 3D Body 130

9.2  基于SAM3的图像分割实例 130

9.2.1  基于SAM3的图像分割程序解析 130

9.2.2  基于SAM3的图像分割实验过程 133

9.3  基于SAM 3D Body的人体网格重建任务实例 136

9.3.1  SAM 3D Body进行人体网格重建的原理 136

9.3.2  基于SAM 3D Body的人体网格重建任务程序解析 137

9.3.3  基于SAM 3D Body的人体网格重建实验过程 138

9.4  本章小结 140

第3篇  训练篇

第10章  DINOv3图像分类:轻量级任务头训练 143

10.1  图像分类训练概述 143

10.1.1  CIFAR-10数据集介绍 144

10.1.2  Timm训练框架介绍 144

10.1.3  图像分类训练任务介绍 144

10.2  图像分类训练程序解析 145

10.2.1  导入依赖库 145

10.2.2  加载骨干网络 145

10.2.3  定义模型结构 146

10.2.4  加载CIFAR-10数据集 148

10.2.5  训练分类任务头 149

10.2.6  保存训练结果 151

10.2.7  评估训练结果 152

10.2.8  训练流程组合 153

10.3  图像分类训练实验过程 153

10.3.1  创建虚拟环境 153

10.3.2  下载数据集 154

10.3.3  训练分类任务头 154

10.4  图像分类训练成果应用 155

10.4.1  图像分类训练成果应用程序解析 155

10.4.2  图像分类训练成果应用实验过程 157

10.5  本章小结 159

第11章  DINOv3图像分类:基于自有数据训练 160

11.1  自有数据集的组织方式 160

11.2  自有数据集的整理示例 161

11.3  基于自有数据的分类任务头训练程序解析 164

11.4  基于自有数据的分类任务头训练实验过程 169

11.5  基于自有数据的分类任务头训练成果应用 171

11.5.1  自有数据训练成果应用程序 171

11.5.2  自有数据训练成果应用实验过程 172

11.6  本章小结 173

第12章  DINOv3语义分割:卫星遥感图像分割训练 174

12.1   卫星遥感语义分割任务头训练的基本原理 174

12.1.1  卫星遥感语义分割概述 174

12.1.2  DeepGlobe Land Cover Classification遥感数据集 175

12.1.3  基于DINOv3的训练方案 177

12.2  卫星遥感语义分割任务头训练程序解析 177

12.2.1  导入依赖库 177

12.2.2  定义训练参数 178

12.2.3  设计分割模型结构 180

12.2.4  DeepGlobe遥感数据集处理类 183

12.2.5  加载训练数据 185

12.2.6  训练分割任务头 186

12.2.7  验证模型训练效果 189

12.2.8  训练流程组合 191

12.3  卫星遥感语义分割任务头训练实验过程 192

12.3.1  创建虚拟环境 192

12.3.2  下载数据集 192

12.3.3  训练分割任务头 192

12.4  语义分割任务头训练成果的应用 194

12.4.1  语义分割任务头应用程序解析 194

12.4.2  语义分割任务头应用实验过程 198

12.5  本章小结 199

第13章  DINOv3目标检测:基于COCO数据集训练 200

13.1  目标检测任务头训练的基本原理 200

13.1.1  目标检测任务头训练概述 200

13.1.2  Ultralytics COCO128数据集 201

13.1.3  基于DINOv3的训练方案 202

13.2  目标检测任务头训练程序解析 203

13.2.1  导入依赖库 203

13.2.2  设计检测模型结构 203

13.2.3  COCO128数据集处理类 206

13.2.4  批次数据整理函数 208

13.2.5  加载训练数据 208

13.2.6  设计损失函数 209

13.2.7  训练目标检测任务头 211

13.2.8  组合训练流程 213

13.3  目标检测任务头训练实验过程 214

13.3.1  创建虚拟环境 214

13.3.2  下载数据集 214

13.3.3  训练目标检测任务头 214

13.4  目标检测任务头应用 216

13.4.1  目标检测任务头应用程序解析 216

13.4.2  目标检测任务头应用实验过程 221

13.5  本章小结 222

第14章  DINOv3知识蒸馏:构建轻量化视觉模型 223

14.1  知识蒸馏技术概述 223

14.2  LightlyTrain框架介绍 224

14.3  知识蒸馏过程的实现 224

14.3.1  模型蒸馏过程 224

14.3.2  模型微调过程 227

14.4  知识蒸馏模型的应用 229

14.4.1  目标检测程序解析 230

14.4.2  目标检测实验过程 231

14.5  本章小结 232

第15章  DINOv3蒸馏应用:轻量化图像分割 233

15.1  全景分割应用 233

15.1.1  全景分割模型程序解析 233

15.1.2  全景分割模型实验过程 235

15.2  实例分割应用 237

15.2.1  实例分割模型程序解析 238

15.2.2  实例分割模型实验过程 239

15.2.3  训练实例分割模型 240

15.3  前景分割应用 247

15.3.1  数据集的整理 247

15.3.2  前景分割模型训练程序解析 250

15.3.3  前景分割模型训练实验过程 252

15.3.4  前景分割模型训练成果验证 252

15.4  自动生成标签应用 255

15.4.1  自动标注程序解析 256

15.4.2  自动标注程序实验过程 256

15.5  本章小结 257

第16章  DINOv3扩展应用:与YOLO和DEIMv2整合应用 258

16.1  DINOv3与YOLO整合应用 258

16.1.1  DINOv3与YOLO的整合原理 259

16.1.2  模型知识蒸馏 259

16.1.3  蒸馏模型微调 262

16.1.4  目标检测实验 264

16.2  DINOv3与DEIMv2整合应用 266

16.2.1  基于DEIMv2的目标检测程序解析 266

16.2.2  基于DEIMv2的目标检测实验过程 272

16.3  本章小结 274