【计算机视觉】计算机视觉课程要点总结

2025博客之星年度评选已开启 10w+人浏览 1.2k人参与

⏱️ 预计阅读时间:50-60分钟
🎯 学习目标:理解计算机视觉的核心问题、从传统方法到深度学习的演进关系


一、课程定位与视觉本质(Course Positioning & Vision Essence)

计算机视觉是一门研究如何让机器"看懂"图像和视频的学科,位于人工智能和图像处理之间,为后续的应用(如自动驾驶、医学影像、机器人视觉)提供理论基础。就像人眼识别世界一样,这门课程教会机器如何从像素中理解世界。

核心问题:如何让机器从2D图像中理解3D世界?如何从像素中提取有意义的信息?如何识别、定位和理解图像中的物体?

解决方案的逻辑

通过图像形成理解(从3D到2D的投影过程)、图像处理(滤波、变换、特征提取)、几何理解(3D重建、多视图几何)、深度学习(CNN、端到端学习)四个层次,实现从像素到理解的完整流程。

其中传统方法(图像处理、几何)提供理论基础,深度学习方法(CNN)提供强大的特征提取和识别能力。

从视觉任务视角,计算机视觉可以分解为四个层次,每个层次对应不同的技术:

视觉层次对应技术核心能力
图像形成相机模型、几何投影理解3D到2D的投影过程
图像处理滤波、变换、特征检测从像素中提取有意义信息
几何理解多视图几何、3D重建从2D图像恢复3D结构
语义理解CNN、深度学习识别、分类、检测、分割
计算机视觉
Vision
图像形成
3D→2D投影
图像处理
滤波/特征
几何理解
3D重建
语义理解
CNN/深度学习
相机模型
针孔/镜头
传统方法
滤波/特征检测
多视图几何
SfM
深度学习
CNN/检测/分割

 


二、计算机视觉四大核心层次(Four Core Layers)

核心结论

层次分配:计算机视觉包括图像形成(理解投影过程)、图像处理(提取特征)、几何理解(3D重建)、语义理解(深度学习)四个层次,从底层到高层,从传统方法到深度学习方法。

四大层次的关系

  • 图像形成:理解3D世界如何投影到2D图像,是理解图像的基础
  • 图像处理:从像素中提取有意义的信息,是特征提取的基础
  • 几何理解:从2D图像恢复3D结构,是多视图几何的基础
  • 语义理解:识别、分类、检测、分割,是深度学习的核心
40% 30% 20% 10% 计算机视觉层次分配 语义理解(深度学习) 图像处理(传统方法) 几何理解(多视图) 图像形成(基础)

💡 说明:深度学习占最大比重,因为现代计算机视觉主要依赖数据驱动的方法

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 模型能力:需要足够的数据来训练复杂模型
语义理解40%
神经网络基础
神经元/反向传播/损失函数
CNN架构
卷积/池化/全连接
CNN演进
AlexNet/VGG/ResNet
CNN应用
分类/检测/分割
训练方法
优化器/正则化/超参数
神经元模型
输入加权+激活函数
反向传播
链式法则
损失函数
交叉熵/均方误差
卷积层
局部特征提取
池化层
降维
全连接层
分类
AlexNet
第一个深度CNN
VGG
更深网络
ResNet
残差连接
图像分类
识别类别
目标检测
R-CNN/YOLO/SSD
语义分割
FCN/U-Net
实例分割
Mask R-CNN
优化器
SGD/Adam
正则化
Dropout/数据增强
超参数
学习率/批量大小

 


三、四大层次的关系与演进(Relationships & Evolution)

核心结论

层次关系:四大层次从底层到高层,从传统方法到深度学习方法,相互支撑,共同构成完整的计算机视觉系统。

演进逻辑:计算机视觉从传统方法(图像处理、几何理解)演进到深度学习方法(语义理解),呈现从手工特征到自动特征、从规则到数据驱动的趋势。

1. 层次-任务映射(Layer-Task Mapping)

不同的任务需要不同层次的技术,四大层次各有适用场景:

计算机视觉任务
图像形成
理解投影过程
图像处理
提取特征
几何理解
3D重建
语义理解
分类/检测/分割
相机标定
估计参数
特征检测
Harris/SIFT
多视图几何
SfM
CNN
深度学习

2. 方法的演进逻辑(Evolution Logic)

计算机视觉方法的发展遵循从传统到深度学习的演进逻辑,经历了三个阶段:

第一阶段:传统方法时代(1960s-2010s)

  • 主要方法:图像处理、几何理解
  • 特点:基于手工特征和几何模型,可解释性强
  • 局限:难以处理复杂场景和语义理解

第二阶段:深度学习时代(2010s-至今)

  • 主要方法:CNN、端到端学习
  • 特点:自动特征提取,强大的表达能力
  • 突破:ImageNet、AlexNet、ResNet

第三阶段:大模型时代(2020s-至今)

  • 主要方法:大规模预训练模型、Transformer
  • 特点:统一架构,多任务能力
  • 突破:Vision Transformer、CLIP、多模态模型

融合趋势

  • 传统+深度学习:传统方法提供几何约束,深度学习方法提供语义理解
  • 多任务融合:检测+分割、分类+定位
  • 多模态融合:视觉+语言、视觉+音频
传统方法
图像处理+几何
深度学习
CNN+端到端
大模型
Transformer+多模态
融合:传统+深度学习
几何约束+语义理解
融合:多任务
检测+分割
融合:多模态
视觉+语言

 


四、核心设计原理(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)

核心结论

实践价值:课程通过理论学习和实践项目,将理论知识应用到实际问题中,加深对计算机视觉方法的理解。

实践内容:课程包括多个实践项目,分别对应四大层次:

  1. 图像处理实践:特征检测与匹配 - 理解传统图像处理方法
  2. 几何理解实践:多视图几何与3D重建 - 理解几何理解方法
  3. 深度学习实践:CNN图像分类 - 理解深度学习方法
  4. 应用实践:目标检测与分割 - 理解CNN在实际任务中的应用

这些实践项目帮助理解理论知识在实际问题中的应用,加深对计算机视觉方法的理解。

 


📝 课程总结

核心结论(金字塔顶层回顾)

课程核心:计算机视觉是研究如何让机器"看懂"图像和视频的学科,通过图像形成(理解投影过程)、图像处理(提取特征)、几何理解(3D重建)、语义理解(深度学习)四个层次实现从像素到理解的完整流程。

核心要点

  1. 课程定位:计算机视觉是AI的重要分支,为后续应用提供理论基础
  2. 视觉本质:从图像形成到语义理解,从底层到高层,从传统方法到深度学习方法
  3. 四大层次:图像形成(10%)、图像处理(30%)、几何理解(20%)、语义理解(40%),语义理解是核心
  4. 演进逻辑:从传统方法到深度学习,从手工特征到自动特征,方法不断融合
  5. 设计原理:计算机视觉方法的设计本质是在多个维度之间权衡,没有完美的算法

知识地图

计算机视觉课程
图像形成10%
3D→2D投影
图像处理30%
滤波/特征
几何理解20%
3D重建
语义理解40%
CNN/深度学习
相机模型
针孔/镜头
相机参数
焦距/光圈/快门/ISO
图像滤波
空间域/频域/模板匹配
几何变换
平移/旋转/缩放
特征检测
Harris/SIFT
特征匹配
RANSAC
3D几何
点/变换
多视图几何
对极几何/基础矩阵
运动恢复结构
SfM/Bundle Adjustment
神经网络基础
神经元/反向传播/损失函数
CNN架构
卷积/池化/全连接
CNN演进
AlexNet/VGG/ResNet
CNN应用
分类/检测/分割
训练方法
优化器/正则化/超参数
课程实践
多个项目

关键洞察

  1. 语义理解是核心:现代计算机视觉主要依赖深度学习方法,占40%比重。通过CNN和端到端学习,实现图像分类、目标检测、语义分割等高级视觉任务。深度学习提供了强大的特征提取和识别能力,是计算机视觉的核心。

  2. 图像处理是基础:传统图像处理方法(滤波、特征检测)提供了理论基础,占30%比重。这些方法虽然被深度学习部分替代,但在某些场景下仍然有效,并且为深度学习提供了设计灵感。

  3. 设计权衡是核心:计算机视觉方法的设计本质是在多个维度之间权衡,没有完美的算法,只有适合不同场景的算法。图像形成在清晰度、进光量、景深之间权衡;图像处理在效果、速度、鲁棒性之间权衡;几何理解在精度、效率、视图数量之间权衡;语义理解在模型复杂度、泛化能力、数据量之间权衡。

  4. 方法演进体现融合趋势:从传统方法到深度学习,从手工特征到自动特征,计算机视觉方法不断演进和融合。现代计算机视觉系统往往结合传统方法和深度学习方法,如传统方法提供几何约束,深度学习方法提供语义理解。

  5. 从局部到全局的演进:图像处理从局部特征(角点、边缘)到全局特征(SIFT描述符);CNN从局部特征(卷积层)到全局特征(全连接层);从单任务(分类)到多任务(检测+分割)。这种演进使得计算机视觉方法能够处理越来越复杂的任务。

  6. 数据驱动与几何约束结合:深度学习方法主要依赖数据驱动,从数据中学习特征;几何理解方法主要依赖几何约束,从多视图恢复3D结构。现代计算机视觉系统往往结合两者,如深度学习提供语义理解,几何约束提供精确的3D结构。

学习建议

  1. 建立知识框架:先理解计算机视觉四大层次的整体框架
  2. 重点突出:重点关注语义理解(40%),这是现代计算机视觉的核心
  3. 理解演进:理解从传统方法到深度学习的发展逻辑
  4. 实践应用:通过实践项目加深理解,理论结合实践
  5. 持续学习:计算机视觉领域发展迅速,需要持续学习新知识

💡 提示:本课程是计算机视觉学习的起点,建立扎实的基础对后续学习至关重要。建议在学习过程中多思考、多实践、多总结,理解计算机视觉方法的设计逻辑和演进关系,而不是死记硬背技术细节。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

roman_日积跬步-终至千里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值