深度学习:计算机视觉

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

深度学习:计算机视觉 [2026/03/02 20:30] – 创建 张叶安深度学习:计算机视觉 [2026/03/03 12:55] (当前版本) 张叶安
行 8: 行 8:
  
 计算机视觉(Computer Vision, CV)是人工智能的一个重要分支,旨在使计算机能够从图像或多维数据中"理解"视觉世界。其核心任务包括: 计算机视觉(Computer Vision, CV)是人工智能的一个重要分支,旨在使计算机能够从图像或多维数据中"理解"视觉世界。其核心任务包括:
-- 从数字图像中提取有意义的信息 +  - 从数字图像中提取有意义的信息 
-- 理解场景的内容和结构 +  - 理解场景的内容和结构 
-- 做出基于视觉信息的决策+  - 做出基于视觉信息的决策
  
 **计算机视觉与人类视觉** **计算机视觉与人类视觉**
  
 人类视觉系统的特点: 人类视觉系统的特点:
-- 并行处理大量信息 +  - 并行处理大量信息 
-- 具有先验知识和推理能力 +  - 具有先验知识和推理能力 
-- 对光照、视角变化具有鲁棒性 +  - 对光照、视角变化具有鲁棒性 
-- 可以处理模糊和不完整的输入+  - 可以处理模糊和不完整的输入
  
 计算机视觉的挑战: 计算机视觉的挑战:
-- 从2D图像恢复3D信息是病态问题 +  - 从2D图像恢复3D信息是病态问题 
-- 光照、遮挡、形变等因素增加复杂性 +  - 光照、遮挡、形变等因素增加复杂性 
-- 需要大量数据学习视觉概念+  - 需要大量数据学习视觉概念
  
 **计算机视觉的主要任务** **计算机视觉的主要任务**
  
 1. **图像分类**:给整张图像打标签 1. **图像分类**:给整张图像打标签
 +
 2. **目标检测**:定位并识别图像中的物体 2. **目标检测**:定位并识别图像中的物体
 +
 3. **语义分割**:像素级别的类别标注 3. **语义分割**:像素级别的类别标注
 +
 4. **实例分割**:区分同一类别的不同实例 4. **实例分割**:区分同一类别的不同实例
 +
 5. **目标跟踪**:追踪视频中的目标 5. **目标跟踪**:追踪视频中的目标
 +
 6. **图像生成**:创造新的图像 6. **图像生成**:创造新的图像
 +
 7. **图像恢复**:去噪、超分辨率、去模糊 7. **图像恢复**:去噪、超分辨率、去模糊
  
行 40: 行 46:
  
 **LeNet(1998)**: **LeNet(1998)**:
-- 首个成功的卷积神经网络 +  - 首个成功的卷积神经网络 
-- 5层结构:2个卷积层 + 3个全连接层 +  - 5层结构:2个卷积层 + 3个全连接层 
-- 应用于手写数字识别(MNIST) +  - 应用于手写数字识别(MNIST) 
-- 奠定了CNN的基础架构+  - 奠定了CNN的基础架构
  
 **AlexNet(2012)**: **AlexNet(2012)**:
-- 深度学习的里程碑 +  - 深度学习的里程碑 
-- 8层网络,首次使用ReLU和Dropout +  - 8层网络,首次使用ReLU和Dropout 
-- GPU加速训练,大规模数据(ImageNet) +  - GPU加速训练,大规模数据(ImageNet) 
-- 错误率比传统方法降低10%以上+  - 错误率比传统方法降低10%以上
  
 **VGGNet(2014)**: **VGGNet(2014)**:
-- 探索网络深度的影响 +  - 探索网络深度的影响 
-- 使用更小的3×3卷积核替代大卷积核 +  - 使用更小的3×3卷积核替代大卷积核 
-- VGG-16和VGG-19成为标准架构 +  - VGG-16和VGG-19成为标准架构 
-- 证明深度是提升性能的关键因素+  - 证明深度是提升性能的关键因素
  
 **ResNet(2015)**: **ResNet(2015)**:
-- 引入残差连接解决梯度消失 +  - 引入残差连接解决梯度消失 
-- 可以训练超过100层的深层网络 +  - 可以训练超过100层的深层网络 
-- ResNet-152在ImageNet上取得突破性成果 +  - ResNet-152在ImageNet上取得突破性成果 
-- 成为后续网络的标配组件+  - 成为后续网络的标配组件
  
 **EfficientNet(2019)**: **EfficientNet(2019)**:
-- 系统研究网络的深度、宽度、分辨率平衡 +  - 系统研究网络的深度、宽度、分辨率平衡 
-- 使用复合系数统一缩放三个维度 +  - 使用复合系数统一缩放三个维度 
-- 在精度和效率之间取得最佳平衡+  - 在精度和效率之间取得最佳平衡
  
 **1.2.2 图像分类的核心技术** **1.2.2 图像分类的核心技术**
  
 **数据增强**: **数据增强**:
-- 几何变换:翻转、旋转、裁剪、缩放 +  - 几何变换:翻转、旋转、裁剪、缩放 
-- 颜色变换:亮度、对比度、色调调整 +  - 颜色变换:亮度、对比度、色调调整 
-- 高级增强:Mixup、CutMix、AutoAugment+  - 高级增强:Mixup、CutMix、AutoAugment
  
 **正则化技术**: **正则化技术**:
-- Dropout:随机丢弃神经元 +  - Dropout:随机丢弃神经元 
-- Batch Normalization:批归一化 +  - Batch Normalization:批归一化 
-- Label Smoothing:标签平滑 +  - Label Smoothing:标签平滑 
-- Stochastic Depth:随机深度+  - Stochastic Depth:随机深度
  
 **迁移学习**: **迁移学习**:
-- 在大规模数据集(ImageNet)上预训练 +  - 在大规模数据集(ImageNet)上预训练 
-- 在目标任务上微调 +  - 在目标任务上微调 
-- 小样本场景下的有效策略+  - 小样本场景下的有效策略
  
 ==== 1.3 目标检测 ==== ==== 1.3 目标检测 ====
行 91: 行 97:
  
 目标检测需要同时解决两个子问题: 目标检测需要同时解决两个子问题:
 +
 1. **定位**:确定物体的位置(边界框) 1. **定位**:确定物体的位置(边界框)
 +
 2. **分类**:确定物体的类别 2. **分类**:确定物体的类别
  
 输出格式:$(x, y, w, h, class, confidence)$ 输出格式:$(x, y, w, h, class, confidence)$
-- $(x, y)$:边界框中心坐标 +  - $(x, y)$:边界框中心坐标 
-- $(w, h)$:边界框宽度和高度 +  - $(w, h)$:边界框宽度和高度 
-- $class$:物体类别 +  - $class$:物体类别 
-- $confidence$:置信度+  - $confidence$:置信度
  
 **1.3.2 两阶段检测器** **1.3.2 两阶段检测器**
行 105: 行 113:
  
 **R-CNN(2014)**: **R-CNN(2014)**:
 +
 1. 使用Selective Search生成候选区域(约2000个) 1. 使用Selective Search生成候选区域(约2000个)
 +
 2. 每个候选区域缩放到固定尺寸 2. 每个候选区域缩放到固定尺寸
 +
 3. 使用CNN提取特征 3. 使用CNN提取特征
 +
 4. SVM分类 + 边界框回归 4. SVM分类 + 边界框回归
  
行 113: 行 125:
  
 **Fast R-CNN(2015)**: **Fast R-CNN(2015)**:
 +
 1. 整张图像输入CNN得到特征图 1. 整张图像输入CNN得到特征图
 +
 2. ROI Pooling从特征图提取候选区域特征 2. ROI Pooling从特征图提取候选区域特征
 +
 3. 全连接层同时进行分类和回归 3. 全连接层同时进行分类和回归
  
行 120: 行 135:
  
 **Faster R-CNN(2015)**: **Faster R-CNN(2015)**:
 +
 1. 引入区域提议网络(RPN)替代Selective Search 1. 引入区域提议网络(RPN)替代Selective Search
 +
 2. RPN与检测网络共享特征 2. RPN与检测网络共享特征
 +
 3. 端到端训练 3. 端到端训练
  
行 129: 行 147:
  
 **YOLO(You Only Look Once)**: **YOLO(You Only Look Once)**:
-- 将检测视为回归问题 +  - 将检测视为回归问题 
-- 图像划分为$S \times S$网格 +  - 图像划分为$S \times S$网格 
-- 每个网格预测$B$个边界框和类别概率 +  - 每个网格预测$B$个边界框和类别概率 
-- 单次前向传播完成检测和分类+  - 单次前向传播完成检测和分类
  
 优点:速度快,适合实时应用 优点:速度快,适合实时应用
 +
 缺点:小目标和密集目标检测效果较差 缺点:小目标和密集目标检测效果较差
  
 **YOLO演进**: **YOLO演进**:
-- YOLOv2/v3:引入Batch Norm、Anchor Box、多尺度预测 +  - YOLOv2/v3:引入Batch Norm、Anchor Box、多尺度预测 
-- YOLOv4/v5:各种优化技巧的组合 +  - YOLOv4/v5:各种优化技巧的组合 
-- YOLOv8:Anchor-Free、解耦头、CIOU Loss+  - YOLOv8:Anchor-Free、解耦头、CIOU Loss
  
 **SSD(Single Shot MultiBox Detector)**: **SSD(Single Shot MultiBox Detector)**:
-- 多尺度特征图预测 +  - 多尺度特征图预测 
-- 使用不同尺度和长宽比的默认框(Default Boxes) +  - 使用不同尺度和长宽比的默认框(Default Boxes) 
-- 在多个层同时进行检测+  - 在多个层同时进行检测
  
 **RetinaNet**: **RetinaNet**:
-- 引入Focal Loss解决正负样本不平衡 +  - 引入Focal Loss解决正负样本不平衡 
-- Focal Loss降低易分样本的权重,聚焦难分样本+  - Focal Loss降低易分样本的权重,聚焦难分样本
  
 **1.3.4 Anchor-Free检测器** **1.3.4 Anchor-Free检测器**
行 156: 行 175:
  
 **CenterNet**: **CenterNet**:
-- 将目标表示为中心点 +  - 将目标表示为中心点 
-- 预测中心点偏移、尺寸、方向等 +  - 预测中心点偏移、尺寸、方向等 
-- 无需NMS后处理+  - 无需NMS后处理
  
 **FCOS(Fully Convolutional One-Stage)**: **FCOS(Fully Convolutional One-Stage)**:
-- 逐像素预测 +  - 逐像素预测 
-- 引入中心度(Center-ness)抑制低质量预测 +  - 引入中心度(Center-ness)抑制低质量预测 
-- 完全避免Anchor相关计算+  - 完全避免Anchor相关计算
  
 ==== 1.4 语义分割与实例分割 ==== ==== 1.4 语义分割与实例分割 ====
行 172: 行 191:
  
 **FCN(Fully Convolutional Network)**: **FCN(Fully Convolutional Network)**:
-- 首个端到端分割网络 +  - 首个端到端分割网络 
-- 将全连接层替换为卷积层 +  - 将全连接层替换为卷积层 
-- 使用转置卷积(上采样)恢复分辨率 +  - 使用转置卷积(上采样)恢复分辨率 
-- 跳跃连接融合不同层次特征+  - 跳跃连接融合不同层次特征
  
 **U-Net**: **U-Net**:
-- 编码器-解码器结构 +  - 编码器-解码器结构 
-- 跳跃连接保留空间细节 +  - 跳跃连接保留空间细节 
-- 在医学图像分割中广泛应用+  - 在医学图像分割中广泛应用
  
 **DeepLab系列**: **DeepLab系列**:
  
 **空洞卷积(Atrous/Dilated Convolution)**: **空洞卷积(Atrous/Dilated Convolution)**:
-- 在卷积核中插入空洞 +  - 在卷积核中插入空洞 
-- 扩大感受野而不增加参数 +  - 扩大感受野而不增加参数 
-- 保留高分辨率特征图+  - 保留高分辨率特征图
  
 **ASPP(Atrous Spatial Pyramid Pooling)**: **ASPP(Atrous Spatial Pyramid Pooling)**:
-- 使用不同空洞率的并行卷积 +  - 使用不同空洞率的并行卷积 
-- 捕获多尺度上下文+  - 捕获多尺度上下文
  
 **PSPNet(Pyramid Scene Parsing Network)**: **PSPNet(Pyramid Scene Parsing Network)**:
-- 金字塔池化模块 +  - 金字塔池化模块 
-- 聚合不同区域的上下文+  - 聚合不同区域的上下文
  
 **1.4.2 实例分割** **1.4.2 实例分割**
行 202: 行 221:
  
 **Mask R-CNN**: **Mask R-CNN**:
-- 在Faster R-CNN基础上增加Mask分支 +  - 在Faster R-CNN基础上增加Mask分支 
-- ROI Align替代ROI Pooling,解决量化误差 +  - ROI Align替代ROI Pooling,解决量化误差 
-- 同时输出类别、边界框、分割掩码+  - 同时输出类别、边界框、分割掩码
  
 **PANet(Path Aggregation Network)**: **PANet(Path Aggregation Network)**:
-- 增强信息传播路径 +  - 增强信息传播路径 
-- 自适应特征池化+  - 自适应特征池化
  
 **SOLO(Segmenting Objects by Locations)**: **SOLO(Segmenting Objects by Locations)**:
-- 将实例分割转化为位置分类 +  - 将实例分割转化为位置分类 
-- 引入坐标卷积(CoordConv)+  - 引入坐标卷积(CoordConv)
  
 ==== 1.5 目标跟踪 ==== ==== 1.5 目标跟踪 ====
行 221: 行 240:
  
 **主要挑战**: **主要挑战**:
-- 遮挡、形变、尺度变化 +  - 遮挡、形变、尺度变化 
-- 光照变化、运动模糊 +  - 光照变化、运动模糊 
-- 相似物体干扰 +  - 相似物体干扰 
-- 实时性要求+  - 实时性要求
  
 **1.5.2 跟踪算法分类** **1.5.2 跟踪算法分类**
  
 **基于相关滤波的跟踪**: **基于相关滤波的跟踪**:
-- MOSSE、KCF、CSR-DCF +  - MOSSE、KCF、CSR-DCF 
-- 利用循环矩阵性质加速训练 +  - 利用循环矩阵性质加速训练 
-- 速度快,但精度有限+  - 速度快,但精度有限
  
 **基于Siamese网络的跟踪**: **基于Siamese网络的跟踪**:
-- SiamFC、SiamRPN、SiamMask +  - SiamFC、SiamRPN、SiamMask 
-- 孪生网络提取模板和搜索区域的特征 +  - 孪生网络提取模板和搜索区域的特征 
-- 相关操作定位目标 +  - 相关操作定位目标 
-- 端到端训练,精度高+  - 端到端训练,精度高
  
 **基于Transformer的跟踪**: **基于Transformer的跟踪**:
-- TransT、STARK、MixFormer +  - TransT、STARK、MixFormer 
-- 利用自注意力和交叉注意力建模模板与搜索区域关系 +  - 利用自注意力和交叉注意力建模模板与搜索区域关系 
-- 当前SOTA方法+  - 当前SOTA方法
  
 ==== 1.6 视觉Transformer ==== ==== 1.6 视觉Transformer ====
行 249: 行 268:
  
 CNN在计算机视觉中的局限: CNN在计算机视觉中的局限:
-- 局部感受野限制长距离建模 +  - 局部感受野限制长距离建模 
-- 平移等变性可能不是最佳选择 +  - 平移等变性可能不是最佳选择 
-- 需要大量归纳偏置+  - 需要大量归纳偏置
  
 Transformer在NLP的成功启发了视觉领域的探索。 Transformer在NLP的成功启发了视觉领域的探索。
行 258: 行 277:
  
 **图像分块(Patch Embedding)**: **图像分块(Patch Embedding)**:
-- 将图像分割为固定大小的patch(如16×16) +  - 将图像分割为固定大小的patch(如16×16) 
-- 每个patch展平并线性投影为向量 +  - 每个patch展平并线性投影为向量 
-- 加入位置编码+  - 加入位置编码
  
 **Transformer编码器**: **Transformer编码器**:
-- 标准的多头自注意力 + MLP结构 +  - 标准的多头自注意力 + MLP结构 
-- 在大规模数据集上预训练 +  - 在大规模数据集上预训练 
-- 在下游任务上微调+  - 在下游任务上微调
  
 **1.6.2 ViT的关键发现** **1.6.2 ViT的关键发现**
  
 **归纳偏置的权衡**: **归纳偏置的权衡**:
-- CNN具有局部性、平移等变性等归纳偏置 +  - CNN具有局部性、平移等变性等归纳偏置 
-- ViT依赖自注意力学习空间关系 +  - ViT依赖自注意力学习空间关系 
-- 在小数据集上CNN更好,在大数据集上ViT可以超越+  - 在小数据集上CNN更好,在大数据集上ViT可以超越
  
 **数据规模的重要性**: **数据规模的重要性**:
-- ViT需要大规模数据(如JFT-300M)预训练 +  - ViT需要大规模数据(如JFT-300M)预训练 
-- 在ImageNet上从头训练效果不如ResNet+  - 在ImageNet上从头训练效果不如ResNet
  
 **1.6.3 ViT的改进变体** **1.6.3 ViT的改进变体**
  
 **DeiT(Data-efficient Image Transformer)**: **DeiT(Data-efficient Image Transformer)**:
-- 使用知识蒸馏从CNN迁移知识 +  - 使用知识蒸馏从CNN迁移知识 
-- 在ImageNet上从头训练即可达到好效果+  - 在ImageNet上从头训练即可达到好效果
  
 **Swin Transformer**: **Swin Transformer**:
-- 层次化金字塔结构 +  - 层次化金字塔结构 
-- 移位窗口(Shifted Window)自注意力 +  - 移位窗口(Shifted Window)自注意力 
-- 线性复杂度,适合高分辨率图像+  - 线性复杂度,适合高分辨率图像
  
 **PVT(Pyramid Vision Transformer)**: **PVT(Pyramid Vision Transformer)**:
-- 金字塔结构降低计算复杂度 +  - 金字塔结构降低计算复杂度 
-- 空间缩减注意力(Spatial Reduction Attention)+  - 空间缩减注意力(Spatial Reduction Attention)
  
 ==== 1.7 自监督学习与对比学习 ==== ==== 1.7 自监督学习与对比学习 ====
行 306: 行 325:
  
 **SimCLR**: **SimCLR**:
 +
 1. 对每个样本生成两个增强视图 1. 对每个样本生成两个增强视图
 +
 2. 使用同一网络编码两个视图 2. 使用同一网络编码两个视图
 +
 3. 最大化同一样本不同视图的相似度 3. 最大化同一样本不同视图的相似度
 +
 4. 最小化不同样本的相似度 4. 最小化不同样本的相似度
  
行 318: 行 341:
  
 **MoCo(Momentum Contrast)**: **MoCo(Momentum Contrast)**:
-- 使用动量编码器维护动态字典 +  - 使用动量编码器维护动态字典 
-- 解决大批量训练的需求 +  - 解决大批量训练的需求 
-- 引入队列存储负样本+  - 引入队列存储负样本
  
 **BYOL和SimSiam**: **BYOL和SimSiam**:
-- 无需负样本的对比学习 +  - 无需负样本的对比学习 
-- 使用非对称结构防止平凡解 +  - 使用非对称结构防止平凡解 
-- 在线网络和目标网络+  - 在线网络和目标网络
  
 **1.7.3 掩码图像建模(Masked Image Modeling)** **1.7.3 掩码图像建模(Masked Image Modeling)**
行 332: 行 355:
  
 **BEiT**: **BEiT**:
-- 使用离散VAE将图像转换为视觉token +  - 使用离散VAE将图像转换为视觉token 
-- 掩码部分patch,预测离散token+  - 掩码部分patch,预测离散token
  
 **MAE(Masked Autoencoder)**: **MAE(Masked Autoencoder)**:
-- 高掩码率(75%) +  - 高掩码率(75%) 
-- 非对称编码器-解码器 +  - 非对称编码器-解码器 
-- 仅编码可见patch,解码器重建完整图像+  - 仅编码可见patch,解码器重建完整图像
  
 **1.7.4 自监督学习的应用** **1.7.4 自监督学习的应用**
  
-- 预训练后微调下游任务 +  - 预训练后微调下游任务 
-- 数据高效的迁移学习 +  - 数据高效的迁移学习 
-- 特征表示的可视化和分析+  - 特征表示的可视化和分析
  
 ==== 1.8 生成式视觉模型 ==== ==== 1.8 生成式视觉模型 ====
行 351: 行 374:
  
 **VAE和GAN**: **VAE和GAN**:
-- 生成高质量图像 +  - 生成高质量图像 
-- 支持条件生成(类别、文本、草图)+  - 支持条件生成(类别、文本、草图)
  
 **扩散模型**: **扩散模型**:
-- DDPM、Stable Diffusion +  - DDPM、Stable Diffusion 
-- 逐步去噪生成图像 +  - 逐步去噪生成图像 
-- 当前最高质量的生成方法+  - 当前最高质量的生成方法
  
 **1.8.2 文本到图像生成** **1.8.2 文本到图像生成**
  
 **DALL-E / DALL-E 2**: **DALL-E / DALL-E 2**:
-- GPT风格的文本编码 +  - GPT风格的文本编码 
-- 自回归或扩散模型生成图像+  - 自回归或扩散模型生成图像
  
 **Stable Diffusion**: **Stable Diffusion**:
-- 在潜在空间进行扩散 +  - 在潜在空间进行扩散 
-- 大幅降低计算成本 +  - 大幅降低计算成本 
-- 开源,社区生态丰富+  - 开源,社区生态丰富
  
 **ControlNet**: **ControlNet**:
-- 在扩散模型上添加条件控制 +  - 在扩散模型上添加条件控制 
-- 支持边缘、姿态、深度等多种条件+  - 支持边缘、姿态、深度等多种条件
  
 **1.8.3 神经辐射场(NeRF)** **1.8.3 神经辐射场(NeRF)**
行 391: 行 414:
  
 **题目**:给定两个边界框: **题目**:给定两个边界框:
-- Box A:左上角$(0, 0)$,右下角$(4, 4)$ +  - Box A:左上角$(0, 0)$,右下角$(4, 4)$ 
-- Box B:左上角$(2, 2)$,右下角$(6, 6)$+  - Box B:左上角$(2, 2)$,右下角$(6, 6)$
  
 计算IoU(Intersection over Union)。 计算IoU(Intersection over Union)。
行 401: 行 424:
  
 Box A: Box A:
-- 左下角:$(0, 0)$ +  - 左下角:$(0, 0)$ 
-- 右上角:$(4, 4)$ +  - 右上角:$(4, 4)$ 
-- 宽度:$w_A = 4$,高度:$h_A = 4$ +  - 宽度:$w_A = 4$,高度:$h_A = 4$ 
-- 面积:$Area_A = 4 \times 4 = 16$+  - 面积:$Area_A = 4 \times 4 = 16$
  
 Box B: Box B:
-- 左下角:$(2, 2)$ +  - 左下角:$(2, 2)$ 
-- 右上角:$(6, 6)$ +  - 右上角:$(6, 6)$ 
-- 宽度:$w_B = 4$,高度:$h_B = 4$ +  - 宽度:$w_B = 4$,高度:$h_B = 4$ 
-- 面积:$Area_B = 4 \times 4 = 16$+  - 面积:$Area_B = 4 \times 4 = 16$
  
 **步骤2:计算交集区域** **步骤2:计算交集区域**
  
 交集的左下角: 交集的左下角:
-- $x_1 = \max(0, 2) = 2$ +  - $x_1 = \max(0, 2) = 2$ 
-- $y_1 = \max(0, 2) = 2$+  - $y_1 = \max(0, 2) = 2$
  
 交集的右上角: 交集的右上角:
-- $x_2 = \min(4, 6) = 4$ +  - $x_2 = \min(4, 6) = 4$ 
-- $y_2 = \min(4, 6) = 4$+  - $y_2 = \min(4, 6) = 4$
  
 交集宽度:$w_{inter} = x_2 - x_1 = 4 - 2 = 2$ 交集宽度:$w_{inter} = x_2 - x_1 = 4 - 2 = 2$
 +
 交集高度:$h_{inter} = y_2 - y_1 = 4 - 2 = 2$ 交集高度:$h_{inter} = y_2 - y_1 = 4 - 2 = 2$
  
 交集面积: 交集面积:
 +
 $$Area_{inter} = 2 \times 2 = 4$$ $$Area_{inter} = 2 \times 2 = 4$$
  
行 431: 行 456:
  
 $$Area_{union} = Area_A + Area_B - Area_{inter}$$ $$Area_{union} = Area_A + Area_B - Area_{inter}$$
 +
 $$= 16 + 16 - 4 = 28$$ $$= 16 + 16 - 4 = 28$$
  
行 440: 行 466:
  
 **分析**: **分析**:
-- IoU是目标检测中评估定位精度的重要指标 +  - IoU是目标检测中评估定位精度的重要指标 
-- 通常IoU阈值设为0.5判断正负样本 +  - 通常IoU阈值设为0.5判断正负样本 
-- 此例中IoU较低,说明两个框重叠较少+  - 此例中IoU较低,说明两个框重叠较少
  
 ==== 例题2:语义分割上采样计算 ==== ==== 例题2:语义分割上采样计算 ====
行 453: 行 479:
  
 输入特征图:$8 \times 8 \times C$(假设$C$为通道数) 输入特征图:$8 \times 8 \times C$(假设$C$为通道数)
 +
 1×1卷积将通道数映射到类别数: 1×1卷积将通道数映射到类别数:
-- 权重尺寸:$1 \times 1 \times C \times 21$ + 
-- 输出:$8 \times 8 \times 21$ +  - 权重尺寸:$1 \times 1 \times C \times 21$ 
-- 参数数量:$1 \times 1 \times C \times 21 = 21C$+  - 输出:$8 \times 8 \times 21$ 
 +  - 参数数量:$1 \times 1 \times C \times 21 = 21C$
  
 **步骤2:双线性插值上采样** **步骤2:双线性插值上采样**
行 463: 行 491:
  
 使用双线性插值将$8 \times 8$上采样到$256 \times 256$: 使用双线性插值将$8 \times 8$上采样到$256 \times 256$:
-- 输出尺寸:$256 \times 256 \times 21$ +  - 输出尺寸:$256 \times 256 \times 21$ 
-- 双线性插值是确定性的,无需学习参数+  - 双线性插值是确定性的,无需学习参数
  
 **步骤3:最终输出** **步骤3:最终输出**
行 471: 行 499:
  
 **尺寸总结**: **尺寸总结**:
-- 输入:$8 \times 8 \times C$ +  - 输入:$8 \times 8 \times C$ 
-- 1×1卷积后:$8 \times 8 \times 21$ +  - 1×1卷积后:$8 \times 8 \times 21$ 
-- 上采样后:$256 \times 256 \times 21$+  - 上采样后:$256 \times 256 \times 21$
  
 **参数总结**: **参数总结**:
-- 1×1卷积参数:$21C$ +  - 1×1卷积参数:$21C$ 
-- 上采样层参数:0+  - 上采样层参数:0
  
 **分析**: **分析**:
-- 1×1卷积用于将特征映射到类别空间 +  - 1×1卷积用于将特征映射到类别空间 
-- 上采样恢复空间分辨率 +  - 上采样恢复空间分辨率 
-- 可以调换顺序:先上采样再1×1卷积,但计算量更大+  - 可以调换顺序:先上采样再1×1卷积,但计算量更大
  
 ==== 例题3:ViT的patch嵌入计算 ==== ==== 例题3:ViT的patch嵌入计算 ====
  
 **题目**:ViT处理$224 \times 224$的图像,patch大小为$16 \times 16$,嵌入维度为768。计算: **题目**:ViT处理$224 \times 224$的图像,patch大小为$16 \times 16$,嵌入维度为768。计算:
 +
 1. patch数量 1. patch数量
 +
 2. patch嵌入后的序列长度 2. patch嵌入后的序列长度
 +
 3. 可学习的线性投影参数数量 3. 可学习的线性投影参数数量
  
行 496: 行 527:
  
 图像尺寸:$224 \times 224$ 图像尺寸:$224 \times 224$
 +
 Patch尺寸:$16 \times 16$ Patch尺寸:$16 \times 16$
  
 每行的patch数:$224 / 16 = 14$ 每行的patch数:$224 / 16 = 14$
 +
 每列的patch数:$224 / 16 = 14$ 每列的patch数:$224 / 16 = 14$
  
行 514: 行 547:
  
 输入维度:$16 \times 16 \times 3 = 768$ 输入维度:$16 \times 16 \times 3 = 768$
 +
 输出维度:$768$ 输出维度:$768$
  
 线性投影矩阵:$768 \times 768$ 线性投影矩阵:$768 \times 768$
 +
 偏置向量:$768$ 偏置向量:$768$
  
行 526: 行 561:
  
 **总结**: **总结**:
-- Patch数量:196 +  - Patch数量:196 
-- 序列长度:197(含类别token) +  - 序列长度:197(含类别token) 
-- Patch嵌入参数:590,592 +  - Patch嵌入参数:590,592 
-- 位置编码参数:151,296+  - 位置编码参数:151,296
  
 **分析**: **分析**:
-- ViT将图像转化为类似NLP的序列 +  - ViT将图像转化为类似NLP的序列 
-- 计算复杂度高($O(n^2)$的自注意力) +  - 计算复杂度高($O(n^2)$的自注意力) 
-- 需要大规模数据预训练+  - 需要大规模数据预训练
  
 ===== 3. 训练题 ===== ===== 3. 训练题 =====
行 572: 行 607:
 ==== 二、填空题 ==== ==== 二、填空题 ====
  
-6. 目标检测需要同时解决________________两个子问题。+6. 目标检测需要同时解决$\_\_\_\_$$\_\_\_\_$两个子问题。
  
-7. IoU的全称是________,用于评估边界框的重叠程度。+7. IoU的全称是$\_\_\_\_$,用于评估边界框的重叠程度。
  
-8. ResNet通过引入________连接解决了深层网络的梯度消失问题。+8. ResNet通过引入$\_\_\_\_$连接解决了深层网络的梯度消失问题。
  
-9. 语义分割为图像中每个________分配类别标签。+9. 语义分割为图像中每个$\_\_\_\_$分配类别标签。
  
-10. MAE(Masked Autoencoder)采用________%的掩码率。+10. MAE(Masked Autoencoder)采用$\_\_\_\_$%的掩码率。
  
 ==== 三、计算题 ==== ==== 三、计算题 ====
行 604: 行 639:
  
 4. **答案:B** 4. **答案:B**
-   解析:$(224/16) \times (224/16) = 14 \times 14 = 196$个patch。+ 
 +解析:$(224/16) \times (224/16) = 14 \times 14 = 196$个patch。
  
 5. **答案:A** 5. **答案:A**
行 630: 行 666:
 11. **解答:** 11. **解答:**
          
-    Box A:$(0, 0)$到$(4, 4)$,面积$= 4 \times 4 = 16$+Box A:$(0, 0)$到$(4, 4)$,面积$= 4 \times 4 = 16$
          
-    Box B:$(3, 3)$到$(7, 7)$,面积$= 4 \times 4 = 16$+Box B:$(3, 3)$到$(7, 7)$,面积$= 4 \times 4 = 16$
          
-    交集: +交集: 
-    - 左下角:$(\max(0,3), \max(0,3)) = (3, 3)$ +  - 左下角:$(\max(0,3), \max(0,3)) = (3, 3)$ 
-    - 右上角:$(\min(4,7), \min(4,7)) = (4, 4)$ +  - 右上角:$(\min(4,7), \min(4,7)) = (4, 4)$ 
-    - 宽度:$4 - 3 = 1$ +  - 宽度:$4 - 3 = 1$ 
-    - 高度:$4 - 3 = 1$ +  - 高度:$4 - 3 = 1$ 
-    - 交集面积:$1 \times 1 = 1$ +  - 交集面积:$1 \times 1 = 1$ 
-     + 
-    并集:$16 + 16 - 1 = 31$+并集:$16 + 16 - 1 = 31$
          
-    IoU:$1/31 \approx 0.032$+IoU:$1/31 \approx 0.032$
  
 12. **解答:** 12. **解答:**
          
-    空洞卷积有效核大小:$k_{effective} = k + (k-1)(d-1) = 3 + 2 \times 1 = 5$+空洞卷积有效核大小:$k_{effective} = k + (k-1)(d-1) = 3 + 2 \times 1 = 5$
          
-    输出尺寸公式:$H_{out} = \lfloor(H_{in} + 2p - k_{effective})/s\rfloor + 1$+输出尺寸公式:$H_{out} = \lfloor(H_{in} + 2p - k_{effective})/s\rfloor + 1$
          
-    假设stride=1: +假设stride=1: 
-    $H_{out} = (16 + 2 \times 2 - 5)/1 + 1 = 16 + 4 - 5 + 1 = 16$+ 
 +$H_{out} = (16 + 2 \times 2 - 5)/1 + 1 = 16 + 4 - 5 + 1 = 16$
          
-    输出尺寸:$16 \times 16$+输出尺寸:$16 \times 16$
  
 13. **解答:** 13. **解答:**
          
-    $(384/16) \times (384/16) = 24 \times 24 = 576$+$(384/16) \times (384/16) = 24 \times 24 = 576$
          
-    共576个patch。+共576个patch。

该主题尚不存在

您访问的页面并不存在。如果允许,您可以使用创建该页面按钮来创建它。

  • 深度学习/计算机视觉.txt
  • 最后更改: 2026/03/03 12:55
  • 张叶安