查看全课大纲(第 1 / 93 节)
- 1.计算机视觉概述
- 2.计算机视觉应用场景
- 3.困难与挑战
- 4.开源库介绍
- 5.图像显示与存储
- 6.CLAHE
- 7.腐蚀膨胀与开闭运算
- 8.滤波与边缘填充
- 9.各种滤波
- 10.图像金字塔
- 11.傅里叶变换
- 12.短时傅里叶变换与小波变换
- 13.颜色特征与颜色直方图
- 14.几何特征_边缘
- 15.几何特征-角点与斑点
- 16.局部特征-SIFT特征描述子
- 17.局部特征-SURF特征描述子
- 18.局部特征-ORB特征描述子
- 19.其他特征描述子
- 20.传统图像分割技术
- 21.GraphCut
- 22.GrabCut
- 23.人脸检测的传统方法
- 24.行人检测的传统方法HOG+SVM
- 25.行人检测DPM
- 26.人工神经网络的架构
- 27.目标函数与梯度下降
- 28.误差反向传播
- 29.可手算的神经网络
- 30.改进目标函数与克服梯度消散
- 31.神经网络之传统神经网络与深度网络的差异
- 32.各种梯度下降算法
- 33.如何选择合适的梯度下降算法
- 34.避免过适应
- 35.CNN的架构
- 36.CNN的误差反向传播_卷积层
- 37.CNN的误差反向传播_池化层
- 38.分类所用的数据集
- 39.Alexnet详解
- 40.VGG详解
- 41.GoogLeNet_v1
- 42.BatchNormalization
- 43.GoogLeNet_v3v4
- 44.ResNet
- 45.ResNeXt
- 46.CNN设计准则
- 47.图像检索与推土机距离
- 48.基于颜色相似性
- 49.基于形状相似性
- 50.基于纹理相似性
- 51.基于局部特征相似性
- 52.DL的二值哈希编码
- 53.高维空间中检索KDTree
- 54.高维空间中检索LSH
- 55.目标识别任务综述
- 56.RCNN
- 57.SPP-Net
- 58.Fast R-CNN
- 59.Faster R-CNN
- 60.R-CNN系列模型回顾
- 61.R-FCN的设计思路
- 62.R-FCN的实现
- 63.YOLOv1
- 64.YOLOv2_9000
- 65.YOLOv3
- 66.图像分割应用场景与数据集
- 67.上采样的实现方式
- 68.FCN网络架构的由来
- 69.FCN构建细节
- 70.DeepLabv1
- 71.CRF
- 72.DeepLabv2
- 73.DeepLabv3
- 74.特定的医学影像分割任务
- 75.U-Net
- 76.3D U-Net
- 77.V-Net
- 78.DenseNet
- 79.病理切片分析任务及数据集
- 80.病理切片分析
- 81.图说任务及其传统处理方法
- 82.深度语言模型与RNN
- 83.LSTM及其变种
- 84.NIC模型
- 85.SAT模型
- 86.图说的性能指标
- 87.判别模型与生成模型
- 88.KL散度与JS散度
- 89.VAE
- 90.GAN的基本原理
- 91.DCGAN与CGAN
- 92.Wasserstein GAN
- 93.SRGAN
计算机视觉概述
小象实战讲义 · 基于深度学习的计算机视觉
欢迎来到《基于深度学习的计算机视觉》课程的第一节。在正式踏入深度学习与卷积神经网络的复杂世界之前,我们首先要建立对“计算机视觉”这一领域的基本认知。本节将为你勾勒出计算机视觉的全景图:它是什么,它试图解决什么问题,以及它如何融合多学科知识来“教会”计算机“看”世界。理解这些基础概念,是你后续学习图像分类、目标检测、图像生成等具体任务的坚实起点。
💡 核心导读
- 定义与目标:计算机视觉是一门让机器具备“看”的能力的科学,其核心是让计算机从图像数据中提取信息并做出解释,本质上是为计算机装上“眼睛”(摄像头)和“大脑”(算法)。
- 信息与挑战:图像信息量巨大,“一图胜千言”,但计算机视觉也面临诸多挑战,如人类视觉的“错觉”现象,这引出了一个关键问题:计算机视觉是应该模仿人类,还是超越人类的局限?
- 能力与局限:计算机视觉既能模拟人类视觉的优越能力(如识别、导航),也能弥补人类视觉的缺陷(如疲劳、主观性),但其发展仍处于“特定领域已赶上,多数领域任重道远”的阶段。
- 学科复合性:这是一个高度融合的交叉学科,涉及工程、计算机科学、数学、心理学、生物学等多个领域。
- 课程聚焦:本课程将聚焦于计算机视觉的“语义感知”维度,即理解图像内容(分类、检测、分割等),而暂不涉及“几何属性”维度(如3D建模、VR)。
什么是计算机视觉?
计算机视觉,顾名思义,是“计算机”与“视觉”的结合。这里的“视觉”指的是“看”的能力,而“计算机”则是承载这种能力的载体。因此,计算机视觉可以通俗地理解为:一门运用摄像设备和计算机技术,来获取被拍摄对象中为人类所需的数据与信息的学问。
更具体地说,计算机视觉的目标是用摄像设备和计算机来替代人眼乃至人脑的部分功能。它不仅包括对目标的识别、跟踪和测量等“感知”任务,还包括进一步的图形处理,使图像更适合人眼观察或传送给仪器检测。
我们可以形象地将这个过程描述为:给计算机安装上“眼睛”(摄像头)和“大脑”(算法)。摄像头作为感知设备,负责“看到”环境;而算法作为“大脑”,运行在计算设备(如CPU、GPU/FPGA)之上,负责对看到的信息进行“理解”和“解释”,最终让计算机能够感知其周围的环境。
图像的信息量与视觉挑战
在开始构建计算机的“视觉系统”前,我们必须认识到处理对象——图像——的复杂性。
一图胜千言
课程视频中展示了一张著名的爱因斯坦肖像。当你第一眼看到它时,会感受到什么?是深邃的目光、刀刻般的皱纹,还是凌乱的头发?无论你用何种语言描述,想要完整、客观地描述这张图像所包含的全部信息,恐怕需要大量的词汇,并且不可避免地会掺杂个人的主观色彩。这正是“一图胜千言”的生动体现——单张静态图像所蕴含的信息量可能远超千言万语的描述。
再想象一个篮球比赛的现场画面,其中包含了众多球员的动态、表情、动作以及复杂的背景。人类很难瞬间将其所有细节信息完整地提取并描述出来。图像信息的巨大、复杂和零散,是计算机视觉需要处理的首要难题。
视觉的“错觉”与启示
人类的视觉系统并非完美,有时甚至会“欺骗”我们。课程视频中展示了一个经典的棋盘阴影错觉:棋盘上圆柱投下阴影,其中有两个格子,A 位于明亮区域,是一个看上去很暗的格子;B 位于阴影之中,是一个看上去很亮的格子。其示意结构如下:
明亮区域 阴影区域
+----+----+ +----+----+
| | A | | B | |
+----+----+ +----+----+
| | | | | |
+----+----+ +----+----+
(A 看上去更暗、B 看上去更亮,但取色工具显示二者灰度完全相同)图中,A格子和B格子给你的直观感受是什么?大多数人会毫不犹豫地认为A是“黑格子”,B是“白格子”。然而,如果你使用取色工具进行验证,会发现A和B两个格子的颜色(灰度值)是完全一样的。我们的判断被圆柱体投影造成的阴影以及周围格子的对比所干扰,产生了错觉。
这个例子引出了一个深刻的思考题:对于计算机视觉系统而言,它应该感知到这种人类视觉的“错觉”,还是应该避免这种错觉,始终“看到”物理上真实的灰度值?
答案取决于具体的应用场景。在某些需要理解人类感知和行为的任务中(例如艺术分析、心理学研究),模仿这种错觉可能是正确的;而在需要精确测量和客观判断的任务中(例如工业质检、医学影像分析),避免错觉、还原物理真实才是目标。这个问题的存在,本身就说明了计算机视觉任务的复杂性和语境依赖性。
计算机视觉的能力:模拟与弥补
基于上述理解,计算机视觉的研究和应用主要围绕两个方向展开:模拟人类视觉的优越能力和弥补人类视觉的固有缺陷。
模拟人类的优越能力
人类视觉经过亿万年的进化,在许多方面表现卓越,计算机视觉致力于模拟这些能力:
- 识别:识别人脸、物体、场景等。
- 立体估计:估计物体的空间位置、距离和三维结构。
- 导航与避障:理解环境,规划路径,躲避障碍物(如自动驾驶)。
- 理解与描述:不仅看到像素,还能理解图像内容,并用语言进行描述(“看图说话”)。
弥补人类的固有缺陷
同时,人类视觉也存在诸多局限,计算机视觉可以在此方面进行增强:
- 注意力偏差:人类容易关注显著内容而忽略细节。看爱因斯坦照片时,你可能只被其眼神吸引。
- 易受干扰:如前所述的错觉和幻觉。
- 主观与模糊:人类的描述往往带有主观性和模糊性,不够精确。
- 易疲劳:不擅长长时间稳定执行同一任务。例如,放射科医生阅片一天后,效率和质量可能下降。
- 辅助障碍人士:为视觉障碍人士提供感知世界的“眼睛”,具有巨大的社会价值。
一门高度复合的交叉学科
计算机视觉并非一个孤立的领域,而是一个高度复合的交叉学科。它的发展与成熟,融合了来自多个学科的理论、方法和技术:
- 工程与硬件系统:提供摄像头、GPU/FPGA等计算设备。
- 计算机科学:提供算法、编程和系统实现的基础。
- 数学:提供概率统计、线性代数、优化理论等分析工具。
- 图像处理:提供滤波、增强、变换等底层处理技术。
- 机器学习/深度学习:提供从数据中自动学习规律的核心方法论。
- 心理学与神经科学:帮助理解人类视觉机理,为算法设计提供灵感。
- 认知科学:研究如何让机器像人一样“理解”看到的内容。
正是这些学科的深度交融,共同推动了计算机视觉领域的蓬勃发展。
发展现状与课程聚焦
赶上人类了吗?
这是一个常被问及的问题。答案是:在某些特定、定义明确的领域,计算机视觉已经达到甚至超越了人类水平。一个标志性的例子是ImageNet大规模图像分类挑战赛:最先进的深度学习模型在Top-5错误率上已经低于人类平均水平。这意味着在“从1000个类别中识别图像主要物体”这个任务上,算法确实超过了人。
然而,我们必须清醒地认识到,在绝大多数需要通用理解、复杂推理和常识判断的视觉任务中,机器距离人类还有很长的路要走。计算机视觉依然是一个充满机遇与挑战的前沿领域。
本课程的聚焦点:语义感知
计算机视觉的研究大致可分为两个维度:
- 语义感知(Semantic):关注图像“是什么”,理解其内容含义。包括分类、检测、分割、检索、图像描述等。
- 几何属性(Geometry):关注图像中物体的“空间关系”,涉及三维结构。包括3D建模、立体视觉、增强现实(AR)、虚拟现实(VR)等。
本课程将聚焦于“语义感知”这一维度。我们将系统学习如何利用深度学习技术,让计算机学会理解图像的内容。从基础的图像分类,到定位物体的目标检测,再到像素级理解的图像分割,以及更高层次的图像描述与生成,这些都是“语义感知”的核心任务。
关于“几何属性”维度的知识,如VR/AR,本身是另一门博大精深的学问,本课程暂不涵盖。希望这个明确的课程边界能帮助你更好地规划学习路径。
📝 动手练一练
- 概念辨析:计算机视觉中的“语义感知”和“几何属性”两个维度主要解决什么问题?请各举一个本课程会涉及和一个不会涉及的具体任务例子。
👉 点击查看参考答案
- 语义感知:解决图像“是什么”的问题,关注内容的理解和解释。
- 本课程涉及:图像分类(判断图片中是猫还是狗)。
- 本课程不涉及:但属于此维度的其他任务还有视频内容分析等。
- 几何属性:解决物体“在哪里、空间关系如何”的问题,关注三维结构和空间信息。
- 本课程不涉及:增强现实(AR,将虚拟物体叠加到真实世界并保持正确空间位置)。
- 属于此维度:三维重建、视觉SLAM(同步定位与地图构建)。
注意:答案中“本课程涉及/不涉及”的判断需严格遵循讲义中关于课程聚焦点的说明。
- 场景思考:在“棋盘阴影错觉”的例子中,如果我们要开发一个用于“室内机器人自主导航”的视觉系统,你认为它应该模仿人类的错觉(认为A是黑格子),还是避免错觉(识别出A和B灰度相同)?为什么?
👉 点击查看参考答案
应该避免错觉,识别出A和B灰度相同。
原因:室内机器人导航的核心需求是精确感知物理环境的结构。阴影是光照条件造成的,不代表地面的实际物理属性(是否有障碍、高度是否变化)。如果机器人模仿人类错觉,可能会将阴影区域误判为不同的地形(如坑洼或凸起),从而导致路径规划错误或不必要的避障动作。为了稳定、可靠地导航,视觉系统应尽可能消除光照等环境干扰,还原场景的几何和物理本质。
本章小结
本节作为课程的导论,为我们揭开了计算机视觉的序幕。我们了解到,计算机视觉是一门让机器获得视觉感知能力的交叉学科,其核心在于通过算法处理图像数据,提取并解释有用信息。我们探讨了图像信息的丰富性以及人类视觉的错觉现象所带来的启发,明确了计算机视觉在模拟人类优势和弥补人类缺陷两方面的目标。最后,我们划定了本课程将专注于“语义感知”这一主线,旨在系统掌握用深度学习理解图像内容的方法。
📋 行动清单
在进入下一节之前,你可以:
- 尝试用手机拍摄一张包含多个物体的照片,思考如果要向一个从未见过此场景的人描述它,你会如何组织语言?这与你第一眼看到它时的感受有何不同?
- 回忆一个你曾经经历过的“视觉错觉”例子(例如著名的“缪勒-莱尔错觉”),思考这种错觉在什么情况下可能是有益的,什么情况下可能是有害的?
- 浏览一些常见的AI应用(如手机相册的智能分类、社交媒体的图片滤镜、自动驾驶的宣传视频),尝试区分其中哪些功能属于“语义感知”,哪些可能涉及“几何属性”。
—— 小象教研组
配套资料 · 直接下载
课件、代码、数据集等配套资料全部免费,点击即可直接下载,无需分享或解锁。