文章目录
⏱️ 预计阅读时间:50-60分钟
🎯 学习目标:理解计算机视觉的核心问题、从传统方法到深度学习的演进关系
一、课程定位与视觉本质(Course Positioning & Vision Essence)
计算机视觉是一门研究如何让机器"看懂"图像和视频的学科,位于人工智能和图像处理之间,为后续的应用(如自动驾驶、医学影像、机器人视觉)提供理论基础。就像人眼识别世界一样,这门课程教会机器如何从像素中理解世界。
核心问题:如何让机器从2D图像中理解3D世界?如何从像素中提取有意义的信息?如何识别、定位和理解图像中的物体?
解决方案的逻辑:
通过图像形成理解(从3D到2D的投影过程)、图像处理(滤波、变换、特征提取)、几何理解(3D重建、多视图几何)、深度学习(CNN、端到端学习)四个层次,实现从像素到理解的完整流程。
其中传统方法(图像处理、几何)提供理论基础,深度学习方法(CNN)提供强大的特征提取和识别能力。
从视觉任务视角,计算机视觉可以分解为四个层次,每个层次对应不同的技术:
| 视觉层次 | 对应技术 | 核心能力 |
|---|---|---|
| 图像形成 | 相机模型、几何投影 | 理解3D到2D的投影过程 |
| 图像处理 | 滤波、变换、特征检测 | 从像素中提取有意义信息 |
| 几何理解 | 多视图几何、3D重建 | 从2D图像恢复3D结构 |
| 语义理解 | CNN、深度学习 | 识别、分类、检测、分割 |
二、计算机视觉四大核心层次(Four Core Layers)
核心结论
层次分配:计算机视觉包括图像形成(理解投影过程)、图像处理(提取特征)、几何理解(3D重建)、语义理解(深度学习)四个层次,从底层到高层,从传统方法到深度学习方法。
四大层次的关系:
- 图像形成:理解3D世界如何投影到2D图像,是理解图像的基础
- 图像处理:从像素中提取有意义的信息,是特征提取的基础
- 几何理解:从2D图像恢复3D结构,是多视图几何的基础
- 语义理解:识别、分类、检测、分割,是深度学习的核心
💡 说明:深度学习占最大比重,因为现代计算机视觉主要依赖数据驱动的方法
1. 图像形成(Image Formation):理解3D到2D的投影过程
核心结论:图像形成是理解图像的基础,通过针孔相机模型和镜头系统,理解3D世界如何投影到2D图像平面。
核心问题:
- 图像是什么?像素值代表什么?
- 为什么需要小孔?如何形成清晰图像?
- 针孔相机的困境是什么?如何解决?
- 相机参数如何影响图像?
解决方案的逻辑:
- 首先理解图像的本质(2D像素阵列,每个像素记录亮度值);
- 然后理解为什么需要针孔(限制光线路径,避免光线混合);
- 理解针孔相机的困境(孔径大小矛盾:太小进光不足,太大图像模糊);
- 理解镜头的解决方案(通过折射汇聚光线,增加进光量);
- 掌握相机参数(焦距、光圈、快门、ISO)的作用和平衡。
图像形成的发展脉络:
图像的本质:
- 2D像素阵列:图像是2D矩形阵列的像素集合,每个像素记录一个亮度值
- 像素值的含义:像素值越大越亮,越小越暗(0-255)
- 数字表示:每个像素用8位(0-255)表示亮度
为什么需要针孔相机:
- 问题:没有小孔时,多个点的光线会混合,无法形成清晰图像
- 解决方案:用小孔限制光线路径,让每个像素只接收来自一个点的光线
- 核心机制:光线限制、一一对应、清晰成像
针孔相机的困境:
- 孔径大小的矛盾:孔径太小→进光不足;孔径太大→图像模糊
- 没有完美孔径:无法同时满足清晰度和进光量
- 引出的问题:需要其他解决方案(如镜头)
镜头的解决方案:
- 折射汇聚光线:镜头通过折射汇聚更多光线,增加进光量
- 需要聚焦:但必须将镜头聚焦到特定距离
- 本质理解:镜头是对多个针孔图像的叠加和对齐,但只能对一个距离完美对齐
相机参数基础:
- 焦距:决定视角和放大倍数(焦距大→视角小→远摄;焦距小→视角大→广角)
- 光圈:控制进光量和景深(F-number小→孔径大→进光多;F-number大→孔径小→进光少)
- 快门速度:控制曝光时间(时间长→进光多但可能运动模糊;时间短→进光少但可以冻结运动)
- ISO:传感器灵敏度(ISO高→更敏感但噪声更大;ISO低→噪声小但需要更多光线)
设计权衡:
- 清晰度 vs 进光量:小孔径清晰但进光少,大孔径进光多但模糊
- 景深 vs 进光量:小光圈景深大但进光少,大光圈进光多但景深小
- 运动模糊 vs 进光量:慢速快门进光多但可能模糊,快速快门可以冻结运动但进光少
2. 图像处理(Image Processing):从像素中提取有意义信息
核心结论:图像处理是计算机视觉的基础,通过滤波、几何变换、特征检测等方法,从像素中提取有意义的信息。
核心问题:
- 如何改变图像特性?如何提取特征?
- 如何检测图像中的关键点?
- 如何匹配不同图像中的特征?
解决方案的逻辑:
- 通过图像滤波(空间域、频域、模板匹配)改变图像特性;
- 通过几何变换(平移、旋转、缩放)处理图像变形;
- 通过特征检测(角点、边缘、blob)提取关键点;
- 通过特征描述和匹配建立图像对应关系。
图像处理的发展脉络:
图像滤波:
- 三种视角:空间域(直接操作像素值)、频域(修改频率成分)、模板匹配(寻找相似模式)
- 空间域滤波:平滑(去除噪声)、锐化(增强边缘)、边缘检测(提取边界)
- 频域滤波:通过傅里叶变换转换到频域,修改频率成分后转回空间域
- 模板匹配:在图像中寻找与模板相似的区域,结合图像金字塔处理不同大小的目标
图像几何变换:
- 基本变换:平移(改变位置)、旋转(改变方向)、缩放(改变大小)
- 线性变换:可以用2×2矩阵表示(缩放、旋转、剪切、镜像)
- 齐次坐标:通过添加坐标维度,用3×3矩阵统一表示包括平移在内的所有变换
- 变换层次:线性变换 → 仿射变换 → 投影变换,功能越来越强大
特征检测:
- 特征点的特性:可重复性、显著性、高效性、局部性
- 角点检测:Harris角点检测器,通过计算图像导数和二阶矩矩阵判断角点
- 尺度不变特征:SIFT特征检测器,通过DoG近似拉普拉斯,检测特征尺度和主方向
- 特征描述:SIFT描述符,用4×4子区域的8方向梯度直方图描述特征点(128维)
特征匹配:
- 匹配流程:特征检测 → 特征描述 → 特征匹配 → 特征对应
- 匹配方法:最近邻、阈值、比率测试、相互最近邻
- RANSAC:从候选匹配中找到一致的特征对应集合,去除误匹配
设计权衡:
- 空间域 vs 频域:空间域直观但计算慢,频域高效但需要转换
- 滤波器大小 vs 效果:大滤波器效果好但计算慢,小滤波器计算快但效果差
- 特征数量 vs 匹配精度:特征多匹配机会多但计算慢,特征少计算快但可能漏匹配
- 匹配速度 vs 匹配精度:快速匹配可能误匹配,精确匹配可能漏匹配
3. 几何理解(Geometric Understanding):从2D图像恢复3D结构
核心结论:几何理解通过多视图几何和运动恢复结构(SfM),从2D图像恢复3D世界结构。
核心问题:
- 如何从2D图像恢复3D结构?
- 如何估计相机参数?
- 如何从多个视角重建场景?
解决方案的逻辑:
- 通过相机标定估计相机内参和外参;
- 通过多视图几何(对极几何、基础矩阵、本质矩阵)建立视图间关系;
- 通过运动恢复结构(SfM)从多个视角重建3D场景。
几何理解的发展脉络:
3D几何基础:
- 3D点表示:齐次坐标表示3D点
- 3D变换:旋转、平移、缩放
- 相机模型:针孔相机模型,内参矩阵和外参矩阵
多视图几何:
- 对极几何:两个视图之间的几何关系
- 基础矩阵:描述两个视图之间的对应关系
- 本质矩阵:描述两个相机之间的相对位置和姿态
- 三角化:从两个视图的对应点恢复3D点
运动恢复结构(SfM):
- 特征检测与匹配:在不同视角的图像中检测和匹配特征点
- 相机参数估计:估计每个视角的相机参数
- 3D重建:从多个视角重建3D场景结构
- Bundle Adjustment:优化所有参数,提高重建精度
设计权衡:
- 精度 vs 效率:高精度重建需要更多计算,快速重建可能精度较低
- 视图数量 vs 重建质量:更多视图提高重建质量但计算量大
- 特征数量 vs 匹配精度:更多特征提高匹配精度但计算慢
4. 语义理解(Semantic Understanding):深度学习的核心
核心结论:语义理解是深度学习的核心,通过CNN和端到端学习,实现图像分类、目标检测、语义分割等高级视觉任务。
核心问题:
- 如何让机器识别图像中的物体?
- 如何定位和检测多个物体?
- 如何对图像进行像素级分类?
解决方案的逻辑:
- 通过神经网络和反向传播实现端到端学习;
- 通过CNN(卷积层、池化层、全连接层)提取层次化特征;
- 通过不同的CNN架构(AlexNet、VGG、ResNet)提高性能;
- 通过不同的任务架构(分类、检测、分割)解决不同问题。
语义理解的发展脉络:
神经网络基础:
- 神经元模型:输入加权求和+激活函数
- 网络结构:前馈网络、反向传播
- 损失函数:交叉熵损失、均方误差
- 优化方法:梯度下降、SGD、Adam
卷积神经网络(CNN):
- 卷积层:通过卷积操作提取局部特征,保留空间结构
- 池化层:通过池化操作降低空间维度,减少参数数量
- 全连接层:在CNN末尾进行最终分类
- 优势:局部连接、参数共享、平移不变性
CNN架构演进:
- AlexNet:第一个深度CNN,在ImageNet上取得突破
- VGG:更深的网络,使用3×3卷积核堆叠
- ResNet:残差连接,解决深度网络的梯度消失问题
- 设计原则:从浅到深,从简单到复杂
CNN应用:
- 图像分类:识别图像中的主要物体类别
- 目标检测:定位多个物体并分类(R-CNN系列、YOLO、SSD)
- 语义分割:对每个像素进行分类(FCN、U-Net)
- 实例分割:检测+分割,区分不同实例(Mask R-CNN)
训练神经网络:
- 优化器:SGD、Momentum、AdaGrad、RMSProp、Adam
- 学习率调度:Step decay、Cosine、Linear
- 正则化:L2正则化、Dropout、数据增强
- 超参数选择:系统化的超参数调优方法
设计权衡:
- 模型复杂度 vs 泛化能力:复杂模型可能过拟合,简单模型可能欠拟合
- 深度 vs 宽度:更深网络表达能力强但训练难,更宽网络训练容易但表达能力弱
- 准确率 vs 速度:高准确率模型可能计算慢,快速模型可能准确率较低
- 数据量 vs 模型能力:需要足够的数据来训练复杂模型
三、四大层次的关系与演进(Relationships & Evolution)
核心结论
层次关系:四大层次从底层到高层,从传统方法到深度学习方法,相互支撑,共同构成完整的计算机视觉系统。
演进逻辑:计算机视觉从传统方法(图像处理、几何理解)演进到深度学习方法(语义理解),呈现从手工特征到自动特征、从规则到数据驱动的趋势。
1. 层次-任务映射(Layer-Task Mapping)
不同的任务需要不同层次的技术,四大层次各有适用场景:
2. 方法的演进逻辑(Evolution Logic)
计算机视觉方法的发展遵循从传统到深度学习的演进逻辑,经历了三个阶段:
第一阶段:传统方法时代(1960s-2010s)
- 主要方法:图像处理、几何理解
- 特点:基于手工特征和几何模型,可解释性强
- 局限:难以处理复杂场景和语义理解
第二阶段:深度学习时代(2010s-至今)
- 主要方法:CNN、端到端学习
- 特点:自动特征提取,强大的表达能力
- 突破:ImageNet、AlexNet、ResNet
第三阶段:大模型时代(2020s-至今)
- 主要方法:大规模预训练模型、Transformer
- 特点:统一架构,多任务能力
- 突破:Vision Transformer、CLIP、多模态模型
融合趋势:
- 传统+深度学习:传统方法提供几何约束,深度学习方法提供语义理解
- 多任务融合:检测+分割、分类+定位
- 多模态融合:视觉+语言、视觉+音频
四、核心设计原理(Design Principles)
核心结论
设计原理的核心:计算机视觉方法的设计本质是在多个维度之间权衡,没有完美的算法,只有适合不同场景的算法。
四大层次的设计本质:
- 图像形成:在清晰度、进光量、景深之间权衡
- 图像处理:在效果、速度、鲁棒性之间权衡
- 几何理解:在精度、效率、视图数量之间权衡
- 语义理解:在模型复杂度、泛化能力、数据量之间权衡
1. 图像形成的本质:在权衡中成像
图像形成的核心:通过相机参数(焦距、光圈、快门、ISO)控制图像质量,在清晰度、进光量、景深、运动模糊之间权衡。没有完美的参数设置,只有适合不同场景的设置。
关键洞察:
- 清晰度 vs 进光量:小孔径清晰但进光少,大孔径进光多但模糊
- 景深 vs 进光量:小光圈景深大但进光少,大光圈进光多但景深小
- 运动模糊 vs 进光量:慢速快门进光多但可能模糊,快速快门可以冻结运动但进光少
- 噪声 vs 进光量:高ISO可以在暗光下拍摄但噪声大,低ISO噪声小但需要更多光线
2. 图像处理的本质:从像素中提取信息
图像处理的核心:通过滤波、变换、特征检测等方法,从像素中提取有意义的信息。在效果、速度、鲁棒性之间权衡。
关键洞察:
- 空间域 vs 频域:空间域直观但计算慢,频域高效但需要转换
- 滤波器大小 vs 效果:大滤波器效果好但计算慢,小滤波器计算快但效果差
- 特征数量 vs 匹配精度:特征多匹配机会多但计算慢,特征少计算快但可能漏匹配
- 匹配速度 vs 匹配精度:快速匹配可能误匹配,精确匹配可能漏匹配
3. 几何理解的本质:从2D恢复3D
几何理解的核心:通过多视图几何和运动恢复结构,从2D图像恢复3D世界结构。在精度、效率、视图数量之间权衡。
关键洞察:
- 精度 vs 效率:高精度重建需要更多计算,快速重建可能精度较低
- 视图数量 vs 重建质量:更多视图提高重建质量但计算量大
- 特征数量 vs 匹配精度:更多特征提高匹配精度但计算慢
- 几何约束 vs 语义理解:几何约束提供精确的3D结构,语义理解提供语义信息
4. 语义理解的本质:从特征到理解
语义理解的核心:通过CNN和端到端学习,从图像特征中提取语义信息。在模型复杂度、泛化能力、数据量之间权衡。
关键洞察:
- 模型复杂度 vs 泛化能力:复杂模型可能过拟合,简单模型可能欠拟合
- 深度 vs 宽度:更深网络表达能力强但训练难,更宽网络训练容易但表达能力弱
- 准确率 vs 速度:高准确率模型可能计算慢,快速模型可能准确率较低
- 数据量 vs 模型能力:需要足够的数据来训练复杂模型
- 表达能力 vs 计算效率:复杂模型表达能力强但计算慢,简单模型计算快但能力弱
5. 设计权衡的核心思想(Design Trade-offs)
计算机视觉设计的核心:没有完美的算法,只有适合不同场景的算法。设计计算机视觉系统时需要在多个维度之间权衡:
图像形成的设计权衡:
- 清晰度 vs 进光量:小孔径清晰但进光少,大孔径进光多但模糊
- 景深 vs 进光量:小光圈景深大但进光少,大光圈进光多但景深小
- 运动模糊 vs 进光量:慢速快门进光多但可能模糊,快速快门可以冻结运动但进光少
- 噪声 vs 进光量:高ISO可以在暗光下拍摄但噪声大,低ISO噪声小但需要更多光线
图像处理的设计权衡:
- 空间域 vs 频域:空间域直观但计算慢,频域高效但需要转换
- 滤波器大小 vs 效果:大滤波器效果好但计算慢,小滤波器计算快但效果差
- 特征数量 vs 匹配精度:特征多匹配机会多但计算慢,特征少计算快但可能漏匹配
- 匹配速度 vs 匹配精度:快速匹配可能误匹配,精确匹配可能漏匹配
几何理解的设计权衡:
- 精度 vs 效率:高精度重建需要更多计算,快速重建可能精度较低
- 视图数量 vs 重建质量:更多视图提高重建质量但计算量大
- 特征数量 vs 匹配精度:更多特征提高匹配精度但计算慢
- 几何约束 vs 语义理解:几何约束提供精确的3D结构,语义理解提供语义信息
语义理解的设计权衡:
- 模型复杂度 vs 泛化能力:复杂模型可能过拟合,简单模型可能欠拟合
- 深度 vs 宽度:更深网络表达能力强但训练难,更宽网络训练容易但表达能力弱
- 准确率 vs 速度:高准确率模型可能计算慢,快速模型可能准确率较低
- 数据量 vs 模型能力:需要足够的数据来训练复杂模型
- 表达能力 vs 计算效率:复杂模型表达能力强但计算慢,简单模型计算快但能力弱
五、课程实践:理论结合实践(Course Practice)
核心结论
实践价值:课程通过理论学习和实践项目,将理论知识应用到实际问题中,加深对计算机视觉方法的理解。
实践内容:课程包括多个实践项目,分别对应四大层次:
- 图像处理实践:特征检测与匹配 - 理解传统图像处理方法
- 几何理解实践:多视图几何与3D重建 - 理解几何理解方法
- 深度学习实践:CNN图像分类 - 理解深度学习方法
- 应用实践:目标检测与分割 - 理解CNN在实际任务中的应用
这些实践项目帮助理解理论知识在实际问题中的应用,加深对计算机视觉方法的理解。
📝 课程总结
核心结论(金字塔顶层回顾)
课程核心:计算机视觉是研究如何让机器"看懂"图像和视频的学科,通过图像形成(理解投影过程)、图像处理(提取特征)、几何理解(3D重建)、语义理解(深度学习)四个层次实现从像素到理解的完整流程。
核心要点:
- 课程定位:计算机视觉是AI的重要分支,为后续应用提供理论基础
- 视觉本质:从图像形成到语义理解,从底层到高层,从传统方法到深度学习方法
- 四大层次:图像形成(10%)、图像处理(30%)、几何理解(20%)、语义理解(40%),语义理解是核心
- 演进逻辑:从传统方法到深度学习,从手工特征到自动特征,方法不断融合
- 设计原理:计算机视觉方法的设计本质是在多个维度之间权衡,没有完美的算法
知识地图
关键洞察
-
语义理解是核心:现代计算机视觉主要依赖深度学习方法,占40%比重。通过CNN和端到端学习,实现图像分类、目标检测、语义分割等高级视觉任务。深度学习提供了强大的特征提取和识别能力,是计算机视觉的核心。
-
图像处理是基础:传统图像处理方法(滤波、特征检测)提供了理论基础,占30%比重。这些方法虽然被深度学习部分替代,但在某些场景下仍然有效,并且为深度学习提供了设计灵感。
-
设计权衡是核心:计算机视觉方法的设计本质是在多个维度之间权衡,没有完美的算法,只有适合不同场景的算法。图像形成在清晰度、进光量、景深之间权衡;图像处理在效果、速度、鲁棒性之间权衡;几何理解在精度、效率、视图数量之间权衡;语义理解在模型复杂度、泛化能力、数据量之间权衡。
-
方法演进体现融合趋势:从传统方法到深度学习,从手工特征到自动特征,计算机视觉方法不断演进和融合。现代计算机视觉系统往往结合传统方法和深度学习方法,如传统方法提供几何约束,深度学习方法提供语义理解。
-
从局部到全局的演进:图像处理从局部特征(角点、边缘)到全局特征(SIFT描述符);CNN从局部特征(卷积层)到全局特征(全连接层);从单任务(分类)到多任务(检测+分割)。这种演进使得计算机视觉方法能够处理越来越复杂的任务。
-
数据驱动与几何约束结合:深度学习方法主要依赖数据驱动,从数据中学习特征;几何理解方法主要依赖几何约束,从多视图恢复3D结构。现代计算机视觉系统往往结合两者,如深度学习提供语义理解,几何约束提供精确的3D结构。
学习建议
- 建立知识框架:先理解计算机视觉四大层次的整体框架
- 重点突出:重点关注语义理解(40%),这是现代计算机视觉的核心
- 理解演进:理解从传统方法到深度学习的发展逻辑
- 实践应用:通过实践项目加深理解,理论结合实践
- 持续学习:计算机视觉领域发展迅速,需要持续学习新知识
💡 提示:本课程是计算机视觉学习的起点,建立扎实的基础对后续学习至关重要。建议在学习过程中多思考、多实践、多总结,理解计算机视觉方法的设计逻辑和演进关系,而不是死记硬背技术细节。
918

被折叠的 条评论
为什么被折叠?



