传统计算机视觉很长一段时间都在靠手工特征做图像表示。无论是边缘检测、角点提取,还是 SIFT、HOG、LBP 这类局部描述子,关注的都不是像素本身,而是怎样从原始图像里提炼出更稳定、更有判别力的中间表示。到了深度学习时代,这件事本身并没有变,只是做法变了:图像表示不再主要靠研究者显式设计,而是交给模型在数据和目标函数的约束下自己学出来。

所以,从手工特征走到卷积神经网络,说到底不是换了一套工具,而是换了一种构造图像表示的方式。前者靠人工规定哪些局部模式值得保留,后者则通过可训练卷积核和层次化结构,把表示构造本身放进统一的优化过程里。顺着这条线看,传统图像处理和深度学习视觉其实是接得上的。

下面我主要想把三个问题讲清楚:原始像素为什么不足以构成有效表示,手工特征为什么会在复杂视觉任务上碰到边界,以及卷积神经网络为什么能够以数据驱动的方式学出从低层结构到高层语义的层次化表示。

1. 图像表示问题:像素为何不足以支撑视觉理解

从形式上看,图像只是定义在离散网格上的标量场或向量场。对于灰度图像,可写为矩阵 ;对于彩色图像,则往往包含多个通道。然而,视觉任务并不直接作用于像素本身,而是作用于由像素关系形成的结构模式。单个像素值缺乏上下文,因而难以承载稳定语义。

这一点可以从不变性与判别性的张力中理解。同一对象在光照、尺度、姿态和背景变化下,原始像素分布会发生明显改变;与此同时,不同对象之间的差异往往体现在边缘排列、纹理组织、几何关系与局部组合方式上。因此,图像分类、检测和分割等任务真正依赖的,并不是某个像素的绝对取值,而是局部与全局结构的组织方式。

视觉问题的关键不在“读到多少像素”,而在“怎么把像素组织成表示”。所谓图像表示,就是一种比原始像素更稳定、对任务更有判别力的中间形式。传统特征提取和卷积神经网络虽然走的是两条路,但本质上都在处理同一件事:保留哪些局部模式,抑制哪些无关变化,以及怎样把局部模式一步步组织成更高层的语义结构。

一个有效的图像表示通常至少满足两个条件:

  • 判别性:不同类别或结构在表示空间中应具有可分性;
  • 稳定性:同一对象在平移、形变、光照扰动下不应产生灾难性表示漂移。

原始像素很难同时满足这两个要求。它们对局部扰动极其敏感,却缺乏足够的结构抽象能力。因此,视觉系统必须从像素空间转向特征空间,通过某种映射

将原始图像 转换为表示 。后续分类、检测或分割,本质上都建立在表示空间 上,而不是直接建立在原始像素空间上。

如下图所示,图像表示学习的核心并不是直接在像素空间中完成决策,而是通过映射 将原始输入变换到更具有判别性与稳定性的表示空间。

2. 手工特征范式:从局部结构到显式描述子

在深度学习出现之前,视觉系统普遍采用“特征提取 + 分类器”的两阶段范式。该范式的基本假设是:如果能够依据领域知识设计出稳定特征,那么后续分类任务便可交由传统统计学习方法处理。由此形成了一个较为系统的手工特征体系。

2.1 低层结构特征

手工特征首先关注的是局部结构响应:

  • 边缘特征:通过一阶或二阶导数估计灰度突变位置,例如 Sobel、Prewitt、Laplacian。
  • 角点特征:通过局部灰度在多个方向上的变化程度寻找稳定兴趣点,例如 Harris、Shi-Tomasi。
  • 纹理特征:通过局部二值模式、统计关系或滤波器组刻画重复结构,例如 LBP、Gabor。

这类方法的共同出发点是:局部结构比单个像素更具稳定性,因而更适合作为中间表示。

2.2 描述子与特征聚合

仅有局部响应仍不足以支撑分类或匹配,因此传统视觉进一步发展出显式描述子,将局部结构编码为可比较的数值向量:

  • SIFT:围绕关键点建立梯度方向直方图,强调尺度与旋转稳定性;
  • SURF:在计算效率上对 SIFT 进行近似优化;
  • HOG:统计局部梯度方向分布,适于描述轮廓与形状;
  • LBP:通过局部邻域比较获得纹理编码。

这些方法本质上都在回答同一问题:如何将局部结构响应压缩为对扰动更稳定、对任务更有判别力的显式表示。这里的关键并不只是“提取响应”,而是“规定响应如何被编码”。例如,SIFT 通过方向直方图编码局部梯度统计,HOG 通过网格化区域上的梯度分布保留轮廓信息,LBP 则将邻域灰度比较离散化为纹理模式编码。换言之,传统描述子并不是简单保存局部信号,而是在人工先验下选择哪些局部统计量应当被保留。

2.3 两阶段范式的结构

典型的传统视觉流水线通常包含以下步骤:

  1. 对原图做预处理,如灰度化、去噪、归一化;
  2. 提取人工设计的局部特征;
  3. 将局部特征聚合成固定长度向量;
  4. 交给 SVM、随机森林或浅层神经网络进行分类。

这一范式在样本规模较小、算力有限的时代相当有效。但它的限制也很明确:最关键的表示构造过程位于学习算法之外,依赖人工经验预先定义。学习器只能在既定特征空间中寻找决策边界,却无法根据任务误差反向修正特征本身。

如下图所示,传统计算机视觉通常遵循严格的两阶段流程:前一阶段负责人工设计并提取特征,后一阶段再在既定特征空间中完成分类或判别。

3. 手工特征的理论边界

手工特征并非无效,相反,它们构成了现代视觉表示学习的重要历史基础。但在更复杂的识别任务中,其边界逐渐显现出来。

3.1 表示空间受限于人工先验

手工特征的结构由研究者显式指定,因此其表达能力本质上受限于人工先验。研究者可以预设边缘、角点或纹理的重要性,但难以在特征设计阶段穷尽复杂场景中的全部判别模式。

一旦任务从低层结构分析扩展到复杂物体识别,人工先验往往难以充分描述真正有用的高阶模式。

3.2 难以形成层次化语义表示

传统特征擅长表示中低层结构,例如方向变化、局部纹理与几何响应,但这些表示并不能自然导出高层语义。

高层语义往往来自多层局部模式的组合关系,而非单一结构响应本身。手工特征可以提取局部信号,却很难在统一框架下递归地构造“边缘-纹理-部件-语义”这类层次化表示。

3.3 任务迁移成本较高

手工特征高度依赖任务类型与数据分布。行人检测、纹理分类、局部匹配等问题通常采用不同特征体系,不同任务之间缺乏统一的表示学习机制。因此,任务迁移往往伴随新的特征工程成本。

因此,手工特征的主要局限并不在于局部结构分析本身,而在于这种分析方式主要由人工指定,难以随任务复杂度同步扩展。

4. 从特征工程到表示学习的范式转变

传统方法遇到瓶颈之后,视觉研究才逐渐从“特征工程”转向“表示学习”。这里真正变化的,不是还要不要使用局部结构,而是表示构造这件事能不能一起被学习。

在手工特征范式中,整个流程可以概括为:

人先定义特征提取器,机器再基于这些特征完成决策。

这意味着最关键的表示设计过程并未进入优化闭环。分类器能够学习决策边界,但无法反向修正特征提取器本身。

在深度学习范式下,表示不再是预先固定的输入,而是参数化映射

的输出,其中 可由数据驱动学习。模型通过最小化损失函数

同时调整表示与最终预测函数。这一变化意味着表示构造不再独立于任务目标,而是直接受目标函数约束。

对图像任务来说,这种变化最典型的实现就是卷积神经网络:卷积核不再是固定模板,而是可学习参数。局部模式提取过程也因此被纳入端到端训练。和两阶段范式相比,CNN 重要的地方不只是参数更多,而是它能根据任务误差不断修正“到底该提取什么模式”。

如下图所示,特征工程与表示学习的根本差异,并不只在于模型结构是否更复杂,而在于表示本身是否被纳入任务损失驱动的联合优化过程。

5. 卷积为何适合图像表示学习

卷积为什么适合图像表示学习,不能只盯着网络结构本身看,还得回到图像数据的统计性质上来。卷积之所以有效,不是因为它天然比所有线性算子都强,而是因为图像通常有几个很稳定的特点:局部像素之间高度相关,相似的局部模式会在不同位置反复出现,高层语义又往往是由低层结构一步步组合出来的。卷积的结构设计刚好贴着这几件事,所以它天然适合拿来做图像建模。

说得再直接一点,卷积默认了三件事:先看局部,同一种模式可以共享检测器,复杂语义可以由简单结构逐层组合。这些假设不是拍脑袋定出来的,而是和自然图像本身的组织方式基本一致。

5.1 局部感受野与结构先验

图像中的大多数基础结构都首先表现为局部现象。边缘对应局部灰度突变,角点对应多个方向上的局部变化,纹理则表现为有限邻域内的重复模式。因此,如果模型一开始就对整张图像做全局连接,不仅参数代价极高,也会在低层阶段混入大量不必要的自由度。

卷积层通过局部感受野将每个神经元的输入限制在一个小邻域内,这是一种明确的结构先验:在表示学习的初始阶段,局部结构比全局关系更值得优先建模。卷积网络通常先学习边缘、纹理和简单形状,再在更深层中组合这些局部结构。

5.2 参数共享与平移等变性

图像中的局部模式并不绑定于固定坐标。垂直边缘既可能出现在图像左侧,也可能出现在中央;局部纹理既可能属于背景,也可能属于目标表面。如果每个空间位置都使用完全独立的一组参数,那么模型实际上是在重复学习同一种局部模式,只是把它分配给不同位置的检测器。

卷积通过参数共享使同一组卷积核在整张图像上滑动,用统一的方式检测相同类型的局部结构。这样做的直接结果有两点:其一,模型参数大幅减少;其二,卷积映射具有平移等变性(translation equivariance),即输入发生平移时,响应也会以对应方式平移,而不会立刻破坏结构对应关系。对于图像表示而言,这意味着模型可以把“某种模式是否存在”与“它出现在哪个位置”部分解耦,从而获得更稳定的中间表示。

5.3 多层结构与表示层次化

即使解决了局部建模和模式复用的问题,单层卷积仍不足以支撑高层语义理解。原因在于,高层语义通常并不直接对应某一个局部模板,而是由多个低层结构经过组合后形成。例如,部件由边缘和纹理组合而成,目标类别又由多个部件关系进一步构成。

卷积网络的关键优势不在于单个卷积核,而在于多层卷积的函数复合结构。第一层通常学习方向边缘与简单纹理,后续层逐步组合出局部形状、部件表示以及更抽象的语义模式。卷积真正适合图像表示学习,并不只是因为它能提取局部结构,而是因为它允许局部结构在统一参数化框架下逐层组合,最终形成层次化表示。

这种从低层到高层的表示递进,恰恰是手工特征体系最难自然实现的部分。手工算子可以稳定地检测某类局部响应,却很难在统一框架下自动完成多层抽象与任务驱动的重新组织。

归结起来,卷积之所以适合图像表示学习,主要就是三点:局部感受野对应图像的局部相关性,参数共享对应局部模式的空间复用性,多层复合对应语义结构的层次性。卷积网络学到的也不是某个预先写好的“答案”,而是在这些结构约束下,一层层长出来的中间表示。

如下图所示,卷积网络中的表示学习通常呈现出由低层局部模式到高层语义概念的层次化递进;这一过程应被理解为典型趋势,而非对每一层语义内容的严格一一对应。

6. 可学习卷积核与手工特征的关系

卷积神经网络第一层的可视化结果常常呈现出类似边缘检测器或纹理滤波器的形态。这一现象具有明确的理论合理性。

对于自然图像而言,边缘、方向变化与基础纹理是最稳定的局部统计结构。因此,只要优化目标要求模型区分图像内容,训练过程通常会优先学习这类低层模式。也正因为如此,第一层卷积核在视觉外观上常与 Sobel、Prewitt 或 Gabor 等手工滤波器相似。

这种相似性说明,传统视觉在低层结构提取上的一些判断本身是有统计依据的。手工特征并不是被深度学习简单推翻了,而是被放进了一个更一般的学习框架里重新理解。CNN 第一层和手工滤波器之间之所以会长得像,反映的不是实现路径相同,而是自然图像的统计结构本来就有这些共性。

然而,相似不意味着二者在方法论上等价。关键区别在于其来源:

  • 手工核是人根据数学或经验直接写出来的;
  • CNN 的卷积核是通过数据和损失函数优化出来的。

真正的差异不在第一层外观,而在整个表示构造过程是不是可学习的,能不能随着数据分布和任务目标一起调整。手工特征在低层判断上也许是合理的,但一旦设计完成,表达形式基本就固定了;卷积网络则可以在训练中持续修正表示形式,再通过多层组合把表达能力继续往上推。也正是从这里开始,卷积神经网络走出了手工特征范式的边界。

如下图所示,手工滤波器与 CNN 第一层卷积核在低层结构响应上常表现出相似性,但二者的根本差异在于前者依赖人工设计,而后者来源于数据驱动的参数学习。

7. 总结

从手工特征到卷积神经网络,变化的核心始终是“图像表示怎么来”。传统方法靠人工设计局部算子与描述子,把经验和先验直接写进特征空间;卷积神经网络则保留了局部结构分析这条主线,同时把卷积核参数化并放进端到端优化里,让表示能够跟着数据和任务一起调整。

所以,卷积能够自动学习图像表示,并不只是因为它会检测局部模式,更因为它把局部感受野、参数共享和多层组合这些结构约束放在了一个可学习的统一框架里。这样再回头看,深度学习视觉并不是和传统图像处理断开的,它更像是在继承“局部结构分析”这条思路之后,把它继续往前推了一步。