在计算机视觉领域,图像分类解决了 “图中有什么” 的问题,目标检测回答了 “目标在哪里”,而图像分割则实现了更精细的突破 —— 它能精准划分图像中每个像素的归属,让机器像人眼一样 “看清” 目标的轮廓与细节。无论是手机修图里的人像抠图,还是医院里的医学影像分析,图像分割都在背后扮演着关键角色。今天,我们就从基础概念出发,带你全面了解图像分割的核心知识。
一、什么是图像分割?—— 像素级的 “精细分类”
简单来说,图像分割的本质是像素级分类:它将图像中的每个像素分配到特定类别(比如 “行人”“天空”“肿瘤”),最终输出一张与原图尺寸一致的 “掩膜图”(Mask),用不同颜色或标签标记出不同目标的轮廓。
举个直观的例子:在一张包含 “小狗” 和 “草地” 的照片中,图像分割会把属于 “小狗” 的所有像素归为一类,属于 “草地” 的像素归为另一类,甚至能区分 “小狗的耳朵”“小狗的爪子”—— 这种细粒度的划分,让机器对图像的理解从 “整体” 深入到 “局部”。
二、图像分割的 “前景与背景”:Things 和 Stuff
在进行分割前,我们首先要明确图像中 “目标” 的两类属性,这是理解分割任务的基础:
- 前景目标(Things):指 “可数” 的独立物体,比如行人、汽车、小狗。这类目标有明确的轮廓和个体差异,比如同一场景中的两个行人,虽然都属于 “行人” 类,但却是不同的实例。
- 背景事物(Stuff):指 “不可数” 的场景背景,比如天空、草地、路面、墙面。这类目标没有明确的个体边界,更像是 “一片区域” 而非 “一个物体”,无法用 “数量” 来描述。
比如在自动驾驶的街景图中,“汽车”“行人” 属于 Things,“道路”“天空” 则属于 Stuff—— 分割任务需要同时区分这两类元素,才能为后续决策(如 “避开行人”“沿道路行驶”)提供支持。
三、图像分割的 “三层境界”:从粗到精的进阶
根据对 “类别” 和 “实例” 的区分程度,图像分割可分为三个核心层次,难度依次递增:
1. 语义分割(Semantic Segmentation):只分 “类别”,不分 “个体”
语义分割是最基础的分割任务,核心是 “给每个像素贴类别标签”,但不区分同一类别的不同个体。比如在一张有三只小猫的照片中,语义分割会把所有小猫的像素都标记为 “猫” 类,却不会区分 “猫 A”“猫 B”“猫 C”。它的输出是 “类别掩膜图”,重点解决 “每个像素是什么类别” 的问题,常见于场景理解(如 “街景中的道路 / 建筑 / 植被划分”)。
2. 实例分割(Instance Segmentation):既分 “类别”,又分 “个体”
实例分割在语义分割的基础上更进一步:不仅要区分类别,还要区分同一类别的不同实例。还是以三只小猫为例,实例分割会给每只小猫分配独立的 “实例 ID”(比如用红色标记猫 A、蓝色标记猫 B、绿色标记猫 C),同时输出每个实例的边界框和像素掩膜。它的核心是 “定位并区分个体目标”,常见于需要精准识别个体的场景,比如 “工业质检中区分多个缺陷零件”“安防监控中追踪不同行人”。
3. 全景分割(Panoptic Segmentation):兼顾 “前景实例” 与 “背景事物”
全景分割是目前最全面的分割任务,它同时覆盖了 Things 和 Stuff:既对前景的 “实例”(如行人、汽车)进行个体区分,也对背景的 “事物”(如天空、路面)进行类别划分,最终实现 “一张图搞定所有像素的归属”。比如在自动驾驶场景中,全景分割能同时标记出 “汽车 1”“汽车 2”“行人 1”(实例)和 “道路”“天空”“绿化带”(背景),为车辆提供完整的环境认知 —— 这也是未来自动驾驶、机器人视觉的核心技术之一。
四、支撑分割任务的 “数据基石”:三大经典数据集
想要训练出精准的分割模型,高质量的标注数据集是关键。目前行业内最常用的三大数据集,各有侧重,覆盖了不同场景:
1. VOC 数据集:入门级 “标杆” 数据集
VOC(Pascal Visual Object Classes)是计算机视觉领域的 “经典老数据集”,从 2007 年开始引入语义分割和实例分割标注,是很多初学者的入门选择。
- 类别规模:包含 4 大类(动物、交通工具、家具、人物)、20 小类(如猫、狗、汽车、自行车、餐桌等);
- 数据量:VOC 2007 含 9963 张图片、24640 个目标;VOC 2012 含 23080 张图片、54900 个目标;专门用于分割的标注图共 2913 张(1464 张训练图、1449 张验证图);
- 特点:类别少、数据量适中,标注清晰,适合入门级模型的训练与测试。
2. Cityscape 数据集:街景分割 “专用” 数据集
Cityscape 专注于 “城市街景” 场景,是自动驾驶领域最常用的分割数据集之一。
- 场景覆盖:包含 50 个城市在春、夏、秋三季的街景图,涵盖不同天气(晴天、阴天)、不同时间段(白天、黄昏)的场景;
- 类别规模:共 30 个类别,细分到 “道路”“人行道”“行人”“汽车”“交通灯” 等街景核心元素;
- 数据量:5000 张精细标注图(2975 张训练图、500 张验证图、1525 张测试图),另有 20000 张粗略标注图;
- 特点:场景针对性强,标注精细,能有效支撑自动驾驶相关的分割模型训练。
3. COCO 数据集:复杂场景 “全能” 数据集
COCO(Common Objects in Context)以 “场景理解” 为目标,专门选取复杂的日常场景(如客厅、街道、超市),更贴近真实世界的应用需求。
- 类别规模:共 91 类,以 “人类 4 岁小孩能辨识” 为标准,其中 82 类有超过 5000 个实例标注(如 “苹果”“沙发”“雨伞” 等日常物品);
- 数据特点:图像中目标数量多、场景复杂(比如一张图中同时有 “人”“桌子”“杯子”“植物”),更考验模型的多目标分割能力;
- 应用场景:适合训练需要处理复杂日常场景的模型,如智能家居视觉、机器人导航等。
五、怎么评估分割效果?——4 个核心指标
分割模型的 “好坏” 不能凭肉眼判断,需要量化指标来衡量。常用的 4 个核心指标,都围绕 “像素分类的准确性” 展开:
1. 逐像素精度(Pixel Accuracy, PA)
最直观的指标:正确分类的像素数 / 总像素数。比如一张 1000×1000 的图(共 100 万像素),其中 90 万像素分类正确,PA 就是 90%。但 PA 有个缺点:如果背景像素占比极高(比如天空占 80%),即使只对背景分类正确,PA 也会很高,无法反映模型对 “小目标” 的分割能力。
2. 平均像素精度(Mean Pixel Accuracy, MPA)
为了解决 PA 的缺陷,MPA 先计算每个类别的像素精度(该类中正确分类的像素数 / 该类总像素数),再对所有类别的精度取平均值。比如 “猫” 类的像素精度是 85%,“狗” 类是 78%,“天空” 类是 95%,MPA 就是(85%+78%+95%)/3≈86%—— 这样能更公平地反映模型对每个类别的分割能力,尤其是对小类别的表现。
3. 交并比(Intersection over Union, IoU)
分割任务的 “核心指标”,也叫 “Jaccard 系数”:计算模型预测的目标区域与真实目标区域的重叠程度,公式为:IoU = (预测区域 ∩ 真实区域) / (预测区域 ∪ 真实区域)IoU 的取值范围是 0~1,越接近 1,说明预测区域与真实区域重合度越高,分割越精准。比如预测的 “行人” 区域与真实行人区域完全重叠,IoU 就是 1;完全不重叠则为 0。
4. 平均交并比(mIoU)
在 IoU 的基础上,计算所有类别的 IoU 平均值,是目前语义分割最常用的评估指标。比如 “汽车” 类 IoU 是 82%,“行人” 类是 75%,“道路” 类是 90%,mIoU 就是(82%+75%+90%)/3≈82.3%——mIoU 能综合反映模型对所有类别的分割精度,是衡量模型性能的 “金标准”。
六、图像分割网络的 “核心架构”:编码器与解码器
分割模型的核心逻辑是 “先压缩、再恢复”,对应两大模块:卷积模块(编码器) 和反卷积模块(解码器),两者配合实现 “从图像到像素标签” 的转换。
1. 编码器(Encoder):提取图像特征
编码器通常由 “卷积层” 和 “池化层” 组成,核心作用是将原始图像压缩为低维度的特征图。
- 卷积层:通过卷积核对图像进行滑动计算,提取局部特征(比如边缘、纹理、形状);
- 池化层(如最大池化):缩小特征图的尺寸(比如将 4×4 的特征图压缩为 2×2),减少计算量,同时保留关键特征(比如 “最大像素值” 对应的重要信息)。
简单来说,编码器就像 “提炼精华” 的过程:把原始图像的 “细节” 去掉,留下能代表目标类别的 “核心特征”(比如 “猫” 的特征是 “尖耳朵、长尾巴”)。
2. 解码器(Decoder):恢复像素标签
经过编码器压缩后,特征图的尺寸远小于原图(比如从 224×224 压缩到 7×7),无法直接作为分割结果。解码器的作用就是将低维度特征图 “上采样”,恢复到与原图相同的尺寸,最终输出像素级的类别标签。
解码器的核心技术是 “反卷积(转置卷积)”—— 它与普通卷积的过程相反:普通卷积是 “输入大、输出小”(比如 4×4 输入→2×2 输出),反卷积则是 “输入小、输出大”(比如 2×2 输入→4×4 输出)。通过反卷积的 “放大” 作用,特征图逐渐恢复细节,最终与原图尺寸一致,每个像素都能对应到具体的类别标签。
3. 经典架构逻辑
以一个简单的分割网络为例:原始图像(224×224)→ 编码器(经 4 次卷积 + 池化,压缩到 7×7 特征图)→ 解码器(经 4 次反卷积 + 上采样,恢复到 224×224)→ 输出分割掩膜图。整个过程就像 “先把纸揉成小球(压缩特征),再把小球展开回原来的纸(恢复尺寸)”,但展开后纸上多了 “每个像素的类别标签”。
写在最后:图像分割的价值与未来
从手机修图的 “一键抠图”,到医学影像中 “精准定位肿瘤”,再到自动驾驶的 “实时环境感知”,图像分割正在让机器的 “视觉能力” 不断贴近人类。随着技术的发展,分割模型会更精准(比如区分 “细小血管”“早期肿瘤”)、更高效(比如实时处理 4K 视频),未来还会与 3D 视觉、多模态融合(如结合文本指令的 “指定分割”)结合,开拓更多应用场景。
79

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



