2. 图像模态(Image / Vision)
在 AI 能力中,图像模态负责“用视觉理解世界”。不管最终想做的是安防监控、自动驾驶、短视频特效、电商智能修图,还是多模态问答、AI 画画,本质上都离不开一条路径:从原始像素出发,逐步获得对画面的结构化理解与可控生成能力。
2.1 底层视觉(Low‑Level Vision)
在上一节中,我们从整体上介绍了视觉模态在多模态系统中的角色,以及它与语言、语音之间的衔接方式。但在真正进入目标检测、图像理解、视觉问答这些“高层语义任务”之前,还有一个往往被忽略、却至关重要的基础能力层——底层视觉。你可以把它理解为:在“看懂图里是什么”之前,系统需要先解决“这张图本身质量如何”“有哪些稳定的局部结构可以被上层复用”这两个问题,用一层通用的复原、增强和结构抽取,将原始像素转化为更干净、更稳定的图像表示。
从工程角度看,底层视觉既直接影响用户肉眼看到的“画质体验”,也决定了上层检测、识别、分割等任务的输入分布是否健康。如果这一层做得不好,后面所有模型都要在“噪声大、畸变重、光照极端”的环境下硬扛;相反,如果在这一层就把图像尽可能修好、结构信息提炼好,高层任务就可以在一个更友好的基座上发挥能力。下面我们同样从场景、原理和模型三个角度来梳理这一层:
- 场景
- 相机与拍摄设备:手机/相机的自动去噪、HDR、夜景模式、防抖,多帧融合提升细节和动态范围。
- 内容平台与短视频:上传图片/视频的一键画质增强,去压缩块、提高清晰度和对比度,提升主观观感。
- 老照片与文档修复:老照片的去噪、上色、超分辨率;拍歪、拍暗的票据、合同、书页自动拉正、增强,方便 OCR。
- 监控与安防:低照度监控画面的降噪、去雾、防雨滴、提升分辨率,为后续人脸/车牌识别打基础。
- AR/VR 与三维重建:为 SLAM、全景拼接、三维重建提供稳定的角点、边缘和局部描述子,保证跟踪与配准鲁棒性。
- 原理 围绕“图像质量”和“局部结构”两个核心目标,对像素级信息进行物理与统计建模:
- 图像复原与增强:假设观测图像是理想图像经过噪声、模糊核、压缩和成像非线性等退化后得到,在这一假设下进行去噪、去模糊、去压缩伪影、低光照增强和超分辨率重建,使输出更接近真实场景成像,同时符合人眼感知习惯。
- 结构特征抽取:在不引入具体语义标签的前提下,从像素梯度和纹理统计中提取边缘、角点、局部纹理、显著区域等特征,为后续的检测、配准、跟踪、分割提供“几何骨架”。
- 几何与光照预处理:基于相机模型和简单几何线索(直线、消失点、对称性等)估计畸变与透视关系,通过去畸变、拉正、对比度与光照归一化等操作,将原始图像对齐到一个更标准、更稳定的输入空间。
- 模型 综合使用经典图像处理方法和深度学习模型,在效率与效果之间做权衡:
- 传统图像处理:双边滤波、非局部均值、引导滤波、Retinex、直方图均衡、Canny/LoG 边缘检测、Harris/FAST 角点、SIFT/SURF/ORB 描述子、Hough 变换、相机标定与几何校正等。
- 深度复原与增强模型:基于 CNN 或视觉 Transformer 的去噪、去模糊、超分辨率、去雨/去雾/去压缩伪影模型(如 EDSR、RCAN、SwinIR、ESRGAN 等),以及多帧/视频增强网络,用端到端方式学习从退化图到高质量图的映射,或使用现代的图像编辑模型实现例如即梦和 qwen 编辑模型。
2.1.1 图像复原与增强:从“看得见”到“看得清”
在底层视觉里,图像复原与增强首先面对的是各种退化:噪声、模糊、压缩失真、低光照、动态范围不足等。很多真实场景下的原始图像并不“干净”:夜景和室内弱光会让画面布满颗粒和色斑,抓拍和监控画面常常因为运动、对焦不准而发虚,视频压缩会带来一块一块的方块噪声。复原与增强的目标,就是在不改变图像语义内容的前提下,尽可能恢复清晰的细节和自然的观感,把“模糊、灰暗、脏”的输入变得“清楚、明亮、舒适”。
典型任务包括去噪、去模糊、低光照增强和超分辨率等。去噪和去模糊需要在局部纹理和整体结构之间权衡:既要压制高频噪声、反卷积掉模糊核的影响,又不能把真实细节一起抹平;低光照增强则要在提升亮度与对比度的同时,避免暗部噪声被一并拉起,并校正偏色、压住过曝区域;超分辨率则侧重在放大的同时补出合理的高频信息,让放大后的图像既不显得“糊”和“塑料感严重”,又不过度“凭空捏造”细节。现代方法大多采用深度网络(CNN 或视觉 Transformer),在大量“退化–清晰”成对数据上学习从观测图像 y 到理想图像 x 的映射,同时使用包含像素误差、感知损失和对抗损失的组合目标,在“指标好看”和“人眼好看”之间取得平衡。
这些能力在产品中的呈现往往是隐性的:手机相机的夜景模式和 HDR 拍照、短视频平台的一键画质增强、老照片修复工具、监控系统的云端增强服务,本质上都依赖这一层的复原与增强模块。对业务而言,它们既直接影响用户对“画质”的主观感受,也间接决定了上层检测、识别、分割等算法的输入质量。可以说,越是复杂的上层视觉任务,越依赖底层有一个高质量、分布稳定的“图像地基”。
2.1.2 结构特征与预处理:为高层理解搭好“脚手架”
当图像质量被修复到一个可用水平之后,底层视觉的第二项关键工作,是从像素中抽取出与具体语义暂时无关、但对几何结构和视觉感知非常重要的特征,并对几何和光照进行统一。这一步不会直接告诉你“这里是一辆车”或“这是某个人的脸”,但会回答“哪里有清晰的轮廓和拐角”“哪些区域纹理结构显著”“图像是否发生畸变或倾斜”等问题,为上层模型提供可靠的结构性输入。
在特征提取方面,边缘和角点是最基础的元素。通过 Canny、Sobel 等算子,系统可以在整张图上标出灰度或颜色变化最剧烈的“边缘”,这些往往对应物体轮廓、部件分界和纹理走向;角点检测(如 Harris、FAST)则找到局部梯度在多个方向上都变化显著的“拐角”,通常出现在物体的角、线条交汇处。进一步地,像 SIFT、SURF、ORB 这样的局部描述子,会在这些关键点周围编码一小片区域的纹理模式,使得同一物理点在不同视角、尺度和一定光照变化下仍然可以被匹配出来,这为图像配准、全景拼接、SLAM、AR 跟踪和三维重建提供了基础支撑。
与特征提取并行的,是各种几何和光照预处理操作。广角镜头带来的桶形/枕形畸变、拍摄文档时的倾斜和透视拉伸,都会通过直线检测、消失点估计等底层几何线索被识别出来,并通过去畸变、拉正、透视矫正等步骤被“拉回正常”;全局或自适应直方图均衡、对比度拉伸和光照归一化,则在保证细节不丢失的前提下,提升局部对比度、减弱光照不均和阴影的影响。颜色空间变换(RGB→HSV/Lab)与颜色直方图统计,为简单的基于颜色的分割、显著性区域检测、色偏校正等任务提供直接可用的输入。
在端到端深度学习成为主流之后,这些结构特征和预处理有一部分被“内化”到了网络前几层的卷积核和归一化策略中,不再以显式算子的形式出现在系统架构图上。但从功能上看,它们依然扮演着同样的角色:先用一层相对通用的、与具体类别无关的底层处理,把原始像素整理成在几何形态、光照条件和局部结构上更稳定的表示,再交给上层的分类、检测、分割和多模态模块去完成“理解这是什么”的任务。没有这层“脚手架”,上层模型就不得不在噪声大、畸变重、结构模糊的原始图上硬扛,整体系统的鲁棒性和泛化能力都会显著下降。
2.2 图像分类与识别(Image Classification & Recognition)
在大部分图像任务中,业务方真正关心的问题是:这张图整体属于哪一类?图里的这个人是谁?这名行人在不同摄像头下是不是同一个? 你可以把这一层理解为:在一个统一、干净的输入空间上,为整张图像或者整个人/目标打上“类别标签”或“身份标签”,把视觉信号转化为最直接可用的识别结果。
从产品视角看,图像分类与识别是最早大规模落地的一批视觉能力,也是很多上层应用的“入口模块”。电商和内容平台用它来自动给图片打标签、识别主体品类;安防和门禁系统用它来确认“是不是同一个人”;行人重识别系统则在多路摄像头之间抽丝剥茧,找出同一目标的跨场景轨迹。下面我们同样从场景、原理和模型三个角度来梳理这一层:
- 场景
- 通用图片理解:为用户上传的图片自动打上“风景 / 美食 / 宠物 / 文档”等主题标签,用于检索、推荐、内容审核。
- 人脸识别与门禁:在人脸门禁、考勤系统中,根据人脸图像识别个人身份,实现“刷脸通行”“刷脸打卡”。
- 行人/人员重识别:在不同摄像头画面中判断是否为同一行人或同一人员,用于安防检索、轨迹分析。
- 人体属性识别:在不直接确认身份的前提下,识别性别、年龄段、是否戴帽子/背包/穿制服等属性,为检索和行为分析提供线索。
- 原理 在统一的视觉特征空间中,对整张图或整个人/目标进行判别式建模:
- 图像分类:以整张图像为输入,通过卷积网络或视觉 Transformer 提取全局特征,并在特征顶层接一个分类头,输出单标签或多标签的类别概率,用于回答“这是一张什么类型的图片”。
- 身份/实例识别:将“是谁”的问题转化为特征空间中的度量学习问题,即学习一个嵌入空间,使同一身份的图像特征彼此接近,不同身份的特征彼此远离,然后用最近邻搜索或聚类完成识别与检索。
- 属性识别:在共享的行人/人体特征之上,增加多任务输出头,预测性别、年龄段、衣着颜色、是否携带物品等属性标签,使得同一特征可以服务于多种下游检索与分析需求。
- 模型 以深度卷积网络和视觉 Transformer 为主干,结合分类头或度量学习头实现不同类型的识别任务:
- 图像分类 Backbone:ResNet、DenseNet、EfficientNet、ConvNeXt、Vision Transformer (ViT)、Swin Transformer 等,通常在 ImageNet 等大规模数据集上进行预训练,再在具体业务数据上微调。
- 通用分类结构:Backbone + 全连接分类层(Softmax / Sigmoid),用于单标签或多标签图像分类任务,可通过类别重加权、focal loss 等应对长尾分布。
- 身份/实例识别:在 Backbone 的特征输出之上,使用 ArcFace、CosFace、SphereFace 等带角度约束的损失函数,显式拉大不同身份之间的类间间隔,提升在特征空间中的可分性,并通过向量检索(ANN)完成大规模库上的比对。
- 行人/属性识别结构:针对行人 Re-ID 和人体属性识别,常见做法是采用共享 Backbone 提取行人特征,再在顶层分出“身份分支”和“属性分支”,既优化跨摄像头的身份区分能力,又兼顾多属性预测。
对应到具体产品形态,这一层的能力常以“图片内容识别 / 分类 API”“人脸识别 SDK / SaaS”“行人重识别平台”等方式对外提供。它们往往既直接驱动业务决策(如门禁放行、内容标签写入),又作为上游,为后续的检索、推荐、行为分析和多模态理解提供结构化标签与稳定的身份表征。下面,我们分别从图像分类和身份/属性识别两个角度展开。
2.2.1 图像分类:回答“这是一张什么图”
在最基础的图像分类任务中,系统面对的是整张图片,目标是给它贴上一个或若干个语义类别标签。最常见的是单标签分类,例如在 ImageNet 这样的数据集中,每张图被标注为“狗”“猫”“汽车”“飞机”等一个主类别;在业务场景中,这类能力被广泛用于给用户上传的图片加上“风景 / 美食 / 宠物 / 人像 / 文档”等主题标签,支持检索、推荐和内容审核。与文本分类类似,模型会在预训练 Backbone 提取的全局视觉特征之上接一个全连接 + Softmax 层,对所有候选类别输出一个概率分布。
在很多实际应用中,一张图往往同时属于多个类别,比如一张“海边日落自拍”图片,既可以是“风景”,也是“人像”,还可能被标注为“旅行”“海边”。这时就需要多标签分类(Multi‑label Classification):模型依然从整图特征出发,但输出层不再是互斥的 Softmax,而是对每个标签单独预测有/无的概率(Sigmoid),并采用多标签损失函数来训练。为了应对现实数据中大量“长尾类别”(冷门标签样本极少),多标签分类模型常会加入类别重加权、难例挖掘或标签结构建模等机制,提升对小众类别的召回。
在人机接口层面,图像分类通常以“图片内容识别 API”的形式对外提供。上游业务只需上传一张图片,即可获得一组类别标签及其置信度,用于后续的策略判断:比如广告投放系统可以根据图片内容限制某些敏感类目,电商平台可以利用图片分类辅助商品类目纠错,内容平台则用来丰富推荐特征和审核信号。虽然从技术上看,这类能力相对成熟,但它仍然是后续目标检测、实例分割、视觉问答等更复杂能力的基石。
2.2.2 图像识别与属性识别:回答“这是谁 / 这是什么实例”
与“这是一张什么类型的图”不同,图像识别更关心的是“图中的这个人/目标是谁”,也就是身份级、实例级的区分。典型代表是人脸识别和行人重识别:前者在门禁、考勤、支付等场景中判断“当前人脸与库中哪一个身份最接近”;后者则在多路摄像头与不同时间段的监控画面中,寻找是否存在同一行人,辅助案件回溯和轨迹分析。这类任务的核心,不再是简单的多分类,而是如何在特征空间中学习到一个“类内紧凑、类间分离”的嵌入,使同一身份在不同姿态、光照、摄像头下拍摄的图像仍能被聚到一起。
在模型设计上,人脸识别和行人重识别通常采用类似的范式:先用 ResNet、ConvNeXt、ViT、Swin 等 Backbone 提取以人脸/行人为中心的特征,再接上专门为度量学习设计的损失函数,如 ArcFace、CosFace 等。与普通分类损失不同,这些损失直接在角度空间或特征空间上约束类间边界,显式拉大不同身份特征之间的间隔,从而使得训练好之后的特征可以拿来做大规模向量检索,而不必局限于训练时见过的固定类别。在线服务时,系统会先对图库中每个身份的特征进行预计算和索引,再对上线查询的人脸/行人特征进行近似最近邻搜索,找到最相似的若干候选,并结合业务阈值和多模态信息做最终决策。
与“直接身份识别”相对应的,是不指向具体人的 属性识别 。在很多安防和零售场景下,系统只需要知道“是男性还是女性”“大概年龄段”“是否戴帽子/口罩”“衣服颜色和款式”“是否背包/拉行李”等属性,用于快速筛选目标,而不必、也不适合直接输出个人身份。这类任务通常在共享的行人/人体特征之上,接多个并行的属性头(头的意思是输出概率的位置,可以多几个概率输出的结果用于判断类别),每个头负责预测一个或一组属性标签,形成一个多任务学习框架。一方面,多任务训练可以让特征更加丰富、泛化更好;另一方面,属性本身也可以作为 Re-ID 或检索的辅助条件,提升系统在复杂场景下的可用性。
在产品形态上,这一类能力通常打包为“人脸识别 SDK/云服务”“行人重识别平台”“人体属性识别 API”等,被集成进门禁闸机、考勤机、安防平台和视频结构化系统。与通用图像分类相比,它们对数据安全和隐私保护要求更高,对误识率和召回率的权衡也更敏感,因此在算法之外,还会辅以质量检测(如是否为真人、是否为遮挡/翻拍)、活体检测、多模态交叉验证等机制,构成更完整、更负责任的身份识别方案。
2.3 目标检测(Object Detection)
在前面的图像分类与识别中,我们只对“整张图”或“整个人”给出一个整体标签,而忽略了它在图中出现的位置和大小。然而,真实业务更常见的问题是:这张图里有哪些物体?它们分别在什么位置? 比如一张街景图中,我们希望同时标出所有的行人、车辆、交通标志牌;在工业产线上,需要在同一画面中标出所有瑕疵区域、零件位置。目标检测就是为这些需求而生的:它在单张图像或视频帧中,同时预测每一个物体的 位置(bounding box)和类别 ,是众多下游视觉任务(跟踪、分割、行为分析、多目标计数等)的基础能力。
从工程使用角度看,目标检测是很多视觉系统的“第一步结构化”,把一张原始图分解为若干个带标签的矩形框,每个框都可以进一步送到其他模块做识别、跟踪、属性分析乃至语义生成。安防摄像头中行人/车辆的检测、无人零售货架上商品的检测、工业质检中缺陷/异物的检测、以及云厂商提供的「目标检测 / 物体检测」API,本质上都依赖这一层能力。下面我们从 场景 、原理和模型三个角度来梳理目标检测,并在后续小节中分别展开关键方向。
- 场景
- 安防与交通监控:在摄像头画面中实时检测行人、车辆、非机动车、交通标志、逆行/占道目标等,为后续的行为分析和告警提供基础。
- 工业质检与制造:在生产线上检测产品缺陷(划痕、破损、异物)、零部件位置、装配是否缺失,支持自动剔除与机器人定位。
- 零售与物流:无人零售货架商品检测、结算;仓储中包裹、托盘、码垛的目标检测与定位,辅助库存盘点和机器人抓取。
- 内容理解与审核:在图像/视频中检测人、logo、武器、敏感物品等,为内容审核、广告合规和品牌识别提供结构化信号。
- 原理 目标检测的核心,是在图像上构建一个密集预测机制:
- 将输入图像通过 Backbone 提取为多尺度特征图,在这些特征图上,对每个“位置”(或候选区域)同时预测“是否有目标”“是什么类别”“对应的 bbox 参数”。
- 按照架构划分,有先生成候选框再精修的 双阶段检测(Two‑stage) ,以及直接在特征图上做分类+回归的一体化 单阶段检测(One‑stage) ,两者在精度与速度上各有侧重。
- 按候选框设计划分,有依赖预定义锚框(anchor)的 anchor‑based 方法,也有直接预测中心点/边界的 anchor‑free 与基于集合匹配的 DETR 家族 。
- 为应对现实数据中的小目标、密集目标、遮挡和尺度变化,检测器通常会结合多尺度特征(FPN)、更高分辨率输入、特定损失函数与后处理策略(如 NMS 变体、多尺度测试)进行优化。
- 模型 检测模型大体由骨干网络 + 特征金字塔 / 头部结构 + 损失与后处理三部分构成:
- 经典双阶段检测器:Faster R‑CNN、Mask R‑CNN 等,先通过 RPN 产生候选框,再对每个候选区域做精细分类与回归,精度高、结构清晰,适合对精度要求极高的场景。
- 单阶段检测器:SSD、RetinaNet、YOLO 系列(YOLOv5/6/7/8、YOLOX、YOLOv10 等)等,在一个统一的网络中完成检测,结构紧凑、延迟低,是工业界实时检测的主力。
- Anchor‑free / Transformer 检测器:FCOS、CenterNet、ATSS 等以像素点为中心直接预测框;DETR / Deformable DETR 等通过 Transformer 和集合匹配,将检测视为“从一组查询中生成一组目标”的问题,简化多种手工设计。
- 视频检测与跟踪:在图像检测器的基础上,引入时序信息与关联策略(如跟踪头、光流、轨迹匹配),形成 Detection + Tracking 的统一框架,支撑长时间、多目标的行为分析。
综合来看,目标检测处于视觉能力谱系的“中枢位置”——它一方面承接底层视觉提供的干净图像输入,另一方面把图像解构成可供识别、跟踪、分割和多模态理解使用的“目标级”元素。下面,我们分别从 单/双阶段检测架构 、Anchor‑based / Anchor‑free / Transformer 检测以及小目标与视频检测三个方向展开。
2.3.1 单阶段与双阶段检测:精度–速度的结构权衡
从架构上看,目标检测最经典的划分是 双阶段(Two‑stage)与单阶段(One‑stage) 。二者的主要区别在于:是先“粗选一批候选框,再进行精修”,还是在特征图上“一次性预测完所有框和类别”。
双阶段检测以 Faster R‑CNN 为代表。它首先在 Backbone 特征图上通过 RPN(Region Proposal Network)生成一批“高概率包含目标”的候选框(第一阶段),然后对每个候选区域进行 RoI 对齐与特征提取,再做更精细的分类与边框回归(第二阶段)。这种设计的好处是:大量负样本在 RPN 阶段就被过滤掉,第二阶段可以集中精力在少数候选区域上做高质量的判别,因此在精度上往往更有优势,也更容易扩展到实例分割(Mask R‑CNN)、关键点检测(Keypoint R‑CNN)等任务。不过,多阶段结构带来的计算与实现复杂度相对较高,更适合对实时性要求不那么苛刻、但强调精度和可扩展性的离线或准实时场景。
单阶段检测则力图打通整个流程,在一个统一的网络中同时完成类别分类和边框回归。代表模型包括 SSD、RetinaNet 和 YOLO 系列等:它们直接在多尺度特征图的每个位置上预测若干候选框的“前景/背景 + 类别 + bbox”,省去了显式 proposal 阶段,更适合做端到端加速与部署。早期的单阶段检测器相对双阶段在精度上有一定差距,但凭借结构简单、速度快,在工业界迅速占据主导;随着 FPN、focal loss、IoU‑aware loss,以及更强 Backbone 和 Neck 的引入,RetinaNet、YOLOX、YOLOv7/8/10 等新一代模型已经在很多任务上实现了“接近甚至赶超双阶段”的精度–速度平衡。
在应用层面,工程上通常会根据需求在这两类架构间做取舍:对于云端批量离线分析、需要较高精度和可扩展性(如同时做检测+分割+关键点)的任务,双阶段检测仍然是一个稳定可靠的选择;而对于边缘设备、移动端应用、摄像头实时检测等延迟敏感场景,YOLO 系列等单阶段检测器几乎是默认首选,并且往往会结合量化、剪枝、蒸馏等技巧,以进一步压缩模型和提升吞吐。
2.3.2 Anchor‑based 与 Anchor‑free:从手工设定到端到端学习
在如何定义“候选框”这一问题上,检测方法又可以分为 Anchor‑based 和 Anchor‑free 两大类。早期主流方法(如 Faster R‑CNN、SSD、RetinaNet、YOLOv3/v4/v5 等)采用 Anchor‑based 思路:在特征图的每个位置预先定义若干具有不同尺度和长宽比的锚框(anchor),然后学习每个 anchor 对应的前景概率和 bbox 偏移量。这种方式实现简单、效果好,但需要人工对 anchor 的尺寸和比例进行较多调参,且在小目标、密集目标场景下容易出现 anchor 数量庞大、正负样本极度不平衡的问题。
Anchor‑free 方法则尝试摆脱对预定义 anchor 的依赖。以 FCOS、CenterNet、ATSS 等为代表,它们通常直接在特征图的每个像素点上预测“这里是否是某个目标的中心(或属于该目标)”以及对应的边界距离,从而完全避免了预设 anchor 的复杂性。这样的好处是:模型结构更简洁,训练样本分配策略可以更加自然,尤其在面对尺度变化大、目标形状复杂的真实场景时,具有更好的泛化和可扩展性。与此同时,Anchor‑free 检测器也推动了更多基于像素/点的统一框架,使得检测与关键点、分割等任务更易共同建模。
更进一步,DETR / Deformable DETR 等 Transformer‑based 检测器从另一个维度重新思考了检测问题:它们不在特征图上密集铺设 anchor,而是引入一组固定数量的“查询向量”(object queries),通过 Transformer 的自注意力和交叉注意力机制,从全局特征中“生成”一组目标预测,并通过匈牙利匹配(Hungarian Matching)实现一一对齐。这种集合预测(set prediction)的思路彻底消除了 NMS 和手工样本分配等传统组件,在概念上非常简洁,但在早期实现中存在收敛慢、对小目标不友好等问题;后续的 Deformable DETR 通过引入可变形注意力和多尺度机制,在收敛速度和性能上都有明显提升,逐渐在检测与多任务场景中获得更多应用。
对于工程实践而言,Anchor‑based、Anchor‑free 与 Transformer 检测并不是互斥的选择,而更像是一条演化链:从 heavily engineered 的 anchor 设计,到更为端到端的点/中心预测,再到完全基于集合预测与注意力的统一框架。当前工业落地中,YOLO 系列等成熟 Anchor‑based 模型依然是主力,Anchor‑free 和 DETR 家族则更多出现在对结构简洁性、多任务统一性、可扩展性要求较高的系统中。
2.3.3 小目标与视频检测:走向真实场景的鲁棒性
在公开数据集上的目标检测往往给人一种“问题已经基本解决”的错觉,但一旦进入真实场景,就会立刻遇到两类棘手问题:小目标/密集目标与 视频中的稳健检测与跟踪 。
小目标检测中,目标在原图中往往只占极少的像素区域,例如远处的行人、遥远的车辆、空中无人机,或者高分辨率工业图像上的微小瑕疵。随着 Backbone 下采样和特征图分辨率的降低,这些小目标在高层特征中很容易被“淹没”,导致漏检。为此,检测器通常会采用多尺度特征金字塔(FPN/PAFPN 等)、提高输入分辨率、在浅层特征图上增加检测头,甚至专门设计针对小目标的分支和损失加权策略。同时,在数据层面也需要通过裁剪、放大、小目标重采样等方式,提升模型对小尺度目标的感知与记忆能力。
密集目标(如拥挤人群、密集停车场、排列紧凑的商品/零件)则会暴露出锚框重叠、NMS 误杀、遮挡严重等问题。改进策略包括更精细的标签分配(如 ATSS 等自适应分配方法)、软 NMS 或基于学习的去重策略、以及通过中心点/密度图建模等方式缓解框间竞争。在工业质检中,许多系统还会结合检测与像素级分割,实现更精确的缺陷定位,以便后续自动处理。
当检测从单帧扩展到视频时,另一个挑战是 时间连续性与目标稳定性 。单帧检测器在每一帧上独立做出预测,难以避免短时丢检、ID 抖动和虚警,而现实应用中的告警、计数、轨迹分析往往需要跨帧一致的目标轨迹。为此,视频目标检测通常会叠加一个 Tracking 模块,把“检测 + 目标跟踪”打通:经典做法是以图像检测器为前端,在后端利用卡尔曼滤波、匈牙利匹配、外观特征相似度等实现多目标跟踪(如 SORT、DeepSORT 等);更进一步的做法是将跟踪头直接整合到检测网络中,联合学习检测与跨帧关联,提高短时遮挡、快速运动等场景下的鲁棒性。
在实际系统中,小目标、密集目标和视频检测往往不是孤立的问题,而是同时出现:例如城市道路监控中的远处行人/车辆、车站广场中的密集人群、产线视频中的高速运动零件。这也决定了,高质量的目标检测模块,除了在标准 benchmark 上有亮眼指标外,更需要在多尺度、多密度、长时间视频等真实条件下,经受住各种复杂因素的考验,才能真正支撑上层的行为分析、智能告警和多模态理解。
2.4 图像分割(Image Segmentation)
有了目标检测,我们已经可以知道“图里有哪些物体、它们大致在哪里”,但很多任务还需要更精细的结构化理解:精确到每一个像素,判断它属于哪一类、属于哪个实例 。例如自动驾驶中要知道哪些像素是路、哪些是人和车;抠图工具要把头发丝和背景分得干干净净;医学图像里要精确描出肿瘤和器官的边界。这类任务统称为图像分割,它直接在像素层面输出语义或实例标签,相比检测提供了更细粒度的空间结构信息。
从产品角度看,图像分割是“像素级结构化”的核心能力:抠图和背景替换工具依赖它决定哪些像素需要保留;自动驾驶的感知模块依赖它构建精细的“可行驶区域 + 障碍物”地图;医学影像软件依赖它测量病灶大小、形状和体积;遥感平台依赖它区分农田、水体、建筑、道路等地物。下面我们从 场景 、原理和模型三个角度来梳理图像分割,并在后续子项中展开语义/实例/全景/大模型分割等方向。
- 场景
- 内容编辑与抠图:人像抠图、头发丝级别的背景替换、物体抠出和分层编辑,用于图片美化、短视频特效、广告创意制作。
- 自动驾驶与机器人:对每个像素标注路面、车道线、行人、车辆、护栏、建筑、天空等,用于路径规划、碰撞预警和环境建模。
- 医学影像分析:在 CT、MRI、超声等图像中精确分割器官、肿瘤、病灶区域,支持辅助诊断、手术规划和疗效评估。
- 遥感与地理信息:在卫星/航拍图中分割农田、水体、道路、建筑、林地等地物,支持国土规划、土地利用监测和灾害评估。
- 原理 图像分割本质上是“密集预测”,对输入图像通过编码器(Backbone)提取多尺度特征,再通过解码器或上采样模块,将特征图逐步还原到与输入同尺寸的分割图,在每个像素位置上输出一个语义或实例标签。
- 语义分割(Semantic Segmentation) :为每个像素分配一个语义类别(如路、人、车、天空),不区分同类的不同个体,适合描述“场景组成”。
- 实例分割(Instance Segmentation) :在语义信息之上进一步区分同类不同实例,为“每一辆车、每一个人”生成独立掩膜,是检测与分割的结合。
- 全景分割(Panoptic Segmentation) :统一处理“可数的物体(thing,如人、车)”与“不可数的背景(stuff,如路、天空)”,为每个像素同时给出语义标签和实例 ID。 与检测相比,分割对空间细节与边界质量更加敏感,需要更丰富的多尺度上下文信息和更精细的上采样/融合策略。
- 模型 经典到最新的分割模型大致沿着“FCN → 编码器–解码器 → 多尺度上下文 → 检测+分割一体化 → 大模型分割”的路线演化:
- 语义分割:FCN、U‑Net 及其变体、DeepLab 系列(DeepLabv3/v3+)、PSPNet 等,通过空洞卷积、金字塔池化、跳跃连接等方式获取多尺度上下文和精细边界。
- 实例/全景分割:Mask R‑CNN、Panoptic FPN、Mask2Former 等,将检测头与分割头结合,实现目标级分割和全景分割。
- 大模型与通用分割:Segment Anything Model (SAM) 等基础分割模型,将分割从“每个任务单独训练”提升为“一个模型适配多数分割场景”,支持交互式、提示驱动(prompt‑based)的分割。
总体而言,图像分割相比目标检测提供了更精细的空间结构表达,是构建高可靠感知系统和高级编辑工具时不可或缺的一环。下面,我们从 语义分割与实例分割, 全景分割与检测一体化, 以及通用分割, 大模型, 与无监督分割三个方向展开。
2.4.1 语义分割与实例分割:从“像素类别”到“像素实例”
语义分割(Semantic Segmentation) 的目标,是为图像中的每一个像素指定一个语义类别,使得网络学会“这片区域是路,那片区域是车,这里是人,那边是天空和建筑”。经典做法通常采用编码器–解码器结构:编码器(如 ResNet、EfficientNet、Swin Transformer 等)提取逐渐下采样的高层特征,解码器通过上采样、跳跃连接(skip connection)和多尺度融合,将粗糙的高层语义特征与底层细节结合,还原到原始分辨率。FCN 首次将这种密集预测形式系统化,U‑Net 通过对称的 U 型结构与大量 skip connection 在医学影像中取得了巨大成功;DeepLab 系列通过空洞卷积(dilated convolution)和 ASPP(金字塔空洞池化)在不降低分辨率的情况下扩大感受野;PSPNet 则通过金字塔池化获取全局上下文信息。这些模型共同推动了在道路场景、遥感、医学等领域的大规模应用。
实例分割(Instance Segmentation) 进一步在像素语义标签的基础上区分同类不同个体:不只要知道哪些像素是“车”,还要知道这些像素分别属于哪一辆车。最具代表性的模型是 Mask R‑CNN,它在 Faster R‑CNN 的检测框架上增加了一个并行的分割分支:先通过检测头预测每个候选框的类别和位置,再在每个框内生成一个二值掩膜,从而得到“框 + 掩膜”的目标级分割结果。与纯语义分割相比,这种方法能够很好地处理物体重叠和遮挡,是人像/商品抠图、多目标计数、细粒度编辑等任务的基础。后续的实例分割方法在 mask 质量、多尺度与速度上不断改进,也出现了基于 anchor‑free 和 Transformer 的新架构,但“检测 + 局部分割”的思路仍然非常主流。
在产品层面,语义分割通常出现在“场景级”的应用中,例如自动驾驶道路分割、遥感地物识别、医学器官分割等;实例分割则更常用于“物体级”抠图、计数和编辑,例如一键选中并分离每一辆车、每一个人、每一件商品。两者结合,可以为上层任务提供既精细又结构化的空间信息。
仅做语义分割会把同类对象混在一起(所有“车”像素都属于同一个类);仅做实例分割又往往只关注可数的“东西”(things,如人、车、动物),而忽视大面积的不可数“背景”(stuff,如路、草地、天空)。在很多场景中,我们既需要知道每一个对象的实例级掩膜 ,又想了解 整体场景构成 。这就催生了全景分割(Panoptic Segmentation) :为每一个像素同时给出语义类和实例 ID,实现对 thing + stuff 的统一建模。
早期的全景分割系统通常通过“语义分割模型 + 实例分割模型 + 后处理合成”的方式实现:先用一个网络预测每个像素的语义类别,再用另一个网络输出各个实例的掩膜与类别,最后通过一套规则(如优先级、重叠处理)将两者合并为一个一致的全景分割结果。Panoptic FPN 代表了一条工程上更优雅的路径:在一个共享 Backbone 与特征金字塔(FPN)上,分别挂载语义分割头和实例分割头,通过联合训练与特征共享,同时得到两种输出,再通过轻量的后处理将它们融合。这样不仅提高了效率,也增强了语义和实例之间的一致性。
在模型层面,随着检测/分割一体化与 Transformer 架构的发展,出现了如 Mask2Former 等统一的全景分割框架:它们倾向于使用一套通用的“query + mask decoder”结构,在同一网络中同时预测语义、实例乃至其他下游任务的掩膜,从而在架构上大幅简化系统、方便多任务扩展。对于自动驾驶、机器人导航、AR 场景理解等复杂任务来说,全景分割提供了一种更接近“人眼主观感受”的完整场景描述,让上层决策和规划可以在更准确的空间语义上进行。
在产品形态上,全景分割往往内嵌在自动驾驶、机器人系统和高端视觉分析平台中,用户未必直接感知到“全景分割”这个概念,但会真实受益于更稳健的场景理解和更自然的交互体验。
2.4.2 通用分割与无监督分割:从任务定制到“Segment Anything”
传统分割模型往往围绕特定数据集和任务训练:比如“道路场景 19 类语义分割”“某种肿瘤分割”“某几类商品分割”等,每换一个任务就要重新标注、重新训练。在实际业务中,这种强依赖精标数据的方式代价巨大,并且难以覆盖长尾类别和不断涌现的新场景。近年来,随着大规模预训练视觉模型和提示驱动(prompt‑based)范式的发展,出现了以 Segment Anything Model (SAM) 为代表的通用分割大模型 ,试图把分割能力从“任务定制”提升为“基础设施”。
以 SAM 为例,它通过一个强大的图像编码器(通常是大规模预训练的 ViT)学习全图的通用特征,再通过轻量的提示编码器和掩膜解码器,将用户给出的点、框、文本提示等转化为分割结果。在训练阶段,SAM 利用了海量、多源、多任务的掩膜标注,使得模型学到的是一种“泛化的分割能力”,而不是对某个数据集标签的死记硬背;在使用阶段,用户只需给出极少量提示(一个点或者一个粗框),就能在各种未见过的图像类型和物体类别上得到质量较高的掩膜。这种范式大大降低了构建新分割应用的门槛,也为无监督/弱监督场景提供了强有力的工具。
与之相关的,是更广义的无监督 / 自监督分割方向:不依赖或极少依赖人工掩膜,通过图像内部的相似性、时序一致性、多视角约束等信号,自动将图像划分为若干有意义的区域。早期工作多侧重于“视觉聚类”和区域提议(proposal generation),如今则更多地被大模型内化为一种表征学习方式,为下游的分割任务提供良好的初始化。结合 CLIP 等文本–图像对比学习模型,越来越多的方法能够在“只给文本类别名称、不提供掩膜标注”的条件下,进行零样本或少样本分割,为冷启动场景和长尾类提供新解法。
在实际产品中,通用分割大模型往往以“交互式抠图工具”“智能选区”“一键抠背景”等形式出现,也逐步被整合进医学、遥感、工业等领域的专业软件中,作为半自动标注与辅助分割的加速器。与传统定制模型相比,它们不一定在某个特定任务上达到极致,但在“什么都能做一点、多场景快速落地”上有显著优势,也为后续构建真正的多模态基础视觉模型打下了基础。
2.5 关键点检测与动作识别(Keypoint Detection & Action Recognition)
在分类、检测、分割之后,我们已经可以知道“图里有什么、在哪儿、每个像素属于什么”。但在很多真实任务中,业务关心的不仅是“物体存在与位置”,而是姿态和动作 :一个人是在走路还是在奔跑?这只手是否举起、是否做出某个手势?工人是否正确佩戴安全设备、执行规范动作?运动员的技术动作是否标准?这些问题需要我们进一步理解 物体内部的结构与时序变化 。
关键点检测与动作识别就是面向这一需求的两层能力:
- 关键点检测(Keypoint Detection) :在图像或视频帧上,预测目标(通常是人体、手部、面部或特定机械结构)的若干“骨架点”(如关节、指尖、五官),得到一个精细的结构化姿态表示(pose)。
- 动作识别(Action Recognition) :在时序上分析这些关键点或外观特征随时间的变化,判断“这个人/这群人正在做什么动作或行为”。
从产品视角看,这一能力广泛服务于:人机交互(手势控制)、体育分析(技术动作评估)、安防(跌倒检测、打架/奔跑等异常行为识别)、工业安全(违规动作检测)、虚拟人驱动(依靠人体/面部关键点驱动 3D 骨骼与动画)等场景。下面我们从 场景 、原理和模型三个角度梳理这一层能力,并在子节中分别展开关键点检测与动作识别。
- 场景
- 人机交互与 AR/VR:通过手势识别、身体姿态检测,实现“比划一下就能控制”的自然交互,或在 AR/VR 中实时驱动虚拟形象。
- 体育训练与运动分析:对跑步、跳高、投篮、举重等动作进行关键点追踪与角度分析,给出技术动作评估与纠错建议。
- 安防与公共安全:检测跌倒、打架、剧烈奔跑、翻越护栏等异常行为,用于及时告警;在工地、厂区中识别是否规范操作。
- 工业与人机协作:检测工人是否按规范姿态操作、与机器人协作时的安全距离、是否出现危险动作。
- 面部/表情驱动与虚拟人:通过面部关键点捕捉表情细节,用于表情迁移、数字人驱动、视频会议虚拟形象等。
- 原理 两类任务分别侧重空间结构与时序变化,但本质上都是在高维特征空间中做结构化预测:
- 关键点检测:在图像上定位一组预定义关键点(如 17/25 个人体关节、21 个手部关节、68/106 个面部关键点),常用方式是在特征图上预测每个关键点的热力图(heatmap),再通过峰值位置反推坐标;多人的场景下,还需要进行“关节到人的组装”。
- 单帧/短时动作识别:基于单张图或短时间窗口,通过人体姿态(关键点)和外观特征,判断该帧/该片段中发生的动作类别(如走、跑、举手、挥手、坐下等)。
- 时序动作识别:在更长的时间尺度上,分析特征序列(图像特征、关键点序列或光流等),建模动作的起始、持续与结束,识别“正在打电话”“正在做俯卧撑”“两人互相推搡”等复杂行为。
- 结构化表示:关键点序列提供了一种比原始像素更紧凑、更稳定的结构化表示,便于在动作识别中处理视角变化、背景干扰和外观差异。
- 模型 常见模型大致沿着“卷积/Transformer 特征提取 + 关键点/时序头”这一统一范式发展:
- 关键点检测:OpenPose 系列、Hourglass Network、HRNet、基于自顶向下(先检测人再估计姿态)和自底向上(先检测关节再组装)两大分支;近年来也有基于 Transformer 的姿态估计器。
- 视频动作识别:基于 2D/3D CNN 的视频模型(I3D、SlowFast 等)、基于骨架的 GCN 模型(ST‑GCN 等,直接在关键点图上建模时空关系)、以及基于视频 Transformer(Video Swin、TimeSformer 等)的端到端方案。
- 统一多任务与大模型:在通用视觉 Backbone 上同时输出检测、分割、关键点和动作标签,或利用多模态大模型通过文本提示直接理解“这个人在做什么动作”,将结构化预测与语义理解连接起来。
下面我们分别从关键点检测与姿态估计以及动作识别与行为理解两个方向展开。
2.5.1 关键点检测与姿态估计:给人和物“画骨架”
关键点检测(也常被称为姿态估计,Pose Estimation)关注的是 单帧或单幅图像中的空间结构 :在二维图像中找到一组具有语义意义的关键点,并将它们连接成骨架。例如,在人体姿态估计中,我们通常需要检测头部、肩膀、肘、腕、髋、膝、踝等关节;在面部姿态中则是眼角、嘴角、鼻尖、脸廓等;在手部姿态中则是指根、指关节、指尖。对于机械臂、关节结构件等非人体对象,也可以同样定义一套关键点体系。
在模型设计上,关键点检测常用的是 **“特征提取 + 热力图预测”**范式:
- 首先使用 CNN 或视觉 Transformer(如 ResNet、HRNet、Swin 等)对输入图像提取多尺度特征。
- 然后通过一个解码头或多层卷积,为每一个关键点类型输出一张热力图(heatmap),其中每个像素值表示“该位置是该关键点的可能性”。
- 推理阶段,通常取每张热力图的峰值位置作为关键点坐标,并通过双线性插值、局部拟合等方式进行亚像素级优化。
针对多人场景,姿态估计方法大致分为两路:
- 自顶向下(Top‑down) :先使用行人检测器在图中找到每个人的边界框,再对每个框内的图像分别做单人姿态估计。这种方式对单人精度高、框架简单,但在多人密集场景中计算代价大、对检测质量敏感。代表系统包括许多基于 Faster R‑CNN/YOLO + Hourglass/HRNet 的组合。
- 自底向上(Bottom‑up) :不先区分每个人,而是在全图上直接预测所有潜在关键点(及其类型),同时预测关键点之间的连接关系或亲和场(如 OpenPose 的 PAF)。然后通过图匹配/聚类算法,将关键点组装成多个独立的人体骨架。这类方法在多人密集场景中更高效、对人数规模更鲁棒,但组装过程复杂,对连接质量敏感。
近年来,基于 Transformer 的姿态估计模型也逐渐出现,将关键点检测看作一组“查询–响应”任务,与 DETR 类似,可以在架构上统一对象检测与姿态估计。在工程应用中,关键点检测能力通常被封装为“人体/手势/面部关键点 SDK 或 API”,上游应用只需传入图像或视频帧,即可获取结构化的骨架坐标,用于后续的动作识别、交互控制或动画驱动。
2.5.2 动作识别与行为理解:让“骨架”动起来
在得到关键点或高层视觉特征之后,下一步就是理解 时间维度上的变化 ——也就是动作识别(Action Recognition)和行为分析(Behavior Understanding)。与关键点检测不同,动作识别不再局限于单帧;它关心的是一段时间内特征的演化模式:从“抬手”到“挥手”,从“走路”到“奔跑”,从“站立”到“跌倒”。
在输入表示上,大致有三条路线:
- 基于原始 视频帧 /光流 :直接对视频帧序列建模,或额外引入光流(描述局部运动速度的场)作为输入,让模型从外观 + 运动信息中联合学习。
- 基于骨架/关键点序列 :先用姿态估计得到人体关键点坐标序列,再在“时空骨架图”上建模,弱化背景与光照干扰,更关注人体结构与运动模式。
- 多模态融合 :将视频特征、关键点序列、甚至音频、文本等多模态一起纳入,处理复杂行为场景(如多人互动、事件级动作)。
对应地,模型结构也呈现出多样化发展:
- 早期的动作识别主要依赖 2D CNN + 时间 n 池化 或 3D CNN (如 I3D、C3D):前者对每一帧提特征再在时间维上做池化或 RNN;后者直接在空间和时间上做三维卷积,捕捉短时运动模式。
- 针对骨架序列,典型方法是 时空图卷积网络(ST ‑ GCN) :把人体关键点看作图结构节点,关节之间的连接是边,在时间维上也连边,通过图卷积在时空图上传播信息,从而学习动作模式。这类方法轻量、对背景鲁棒,适合在资源有限的设备上部署。
- 近年来, 视频 Transformer (如 TimeSformer、Video Swin)在动作识别中表现突出,它们将视频切分为时空 patch,通过自注意力机制建模长时间依赖,能够更好地捕捉复杂动作与多目标交互。
在业务侧,动作识别往往会与检测、跟踪、关键点检测结合,形成端到端的行为分析系统:
- 在安防中,先检测并跟踪人员,再对每条轨迹的关键点序列进行动作分类,实现跌倒检测、打架/奔跑识别等;
- 在体育和健身应用中,通过关键点序列分析动作是否标准、幅度是否合适,并给出纠正建议;
- 在人机交互场景中,对实时姿态流进行轻量级动作分类,实现挥手、比心、手势指令等交互;
- 在工业安全中,对工人操作动作进行持续监测,识别危险姿态(如俯身进入危险区、越过安全线等)。
面向未来,多模态大模型正在将“动作识别”提升为更高层的“事件与意图理解”:模型不仅可以标注“走路、跑步、打电话”,还能够回答“这个人似乎在示意招呼某人”“这两人正在发生争执”等更接近日常语言的描述。关键点检测和动作识别在其中,作为重要的结构化运动线索,与外观特征和语言提示一起,共同支撑更复杂的时空理解能力。
2.6 开放词汇 / 开放世界 / 开放域检测
(Open‑Vocabulary / Open‑World / Open‑Domain Detection)
前面的检测与分割能力,基本都默认一个前提: 训练和推理时的类别集合是固定的 。也就是说,模型在训练阶段就完整地见过“所有要识别的类别”,推理时只需要在这套封闭标签里做选择。但真实世界远比数据集复杂:新商品、新品牌、新路牌、新物种、新场景随时出现,不可能为每个新类都准备充足的标注数据重新训练检测器。这就催生了 开放词汇 / 开放世界 / 开放域检测 :在训练数据只覆盖有限“已知类”的情况下,让模型在推理时仍然能够感知、定位和识别 未见的新类 ,并且在视觉风格和拍摄域(domain)变化时保持鲁棒性。
你可以把这一层理解为:在传统检测之上,加入“对语言空间与开放世界的对齐和泛化能力”。模型不再只会说“这是 80 类 COCO 之一”,而是可以在任意文本描述的空间里理解和检索目标,例如“检测图里所有‘红色运动鞋’”“标出所有‘疑似小型飞行器’”,即便这些精细类别在训练集中从未显式出现。下面我们从 场景 、原理和模型三个角度来梳理这一层,并在子小节中分别展开开放词汇检测、开放世界检测和开放域泛化。
- 场景
- 通用场景理解 API:用户给出任意自然语言描述(类别词或短句),系统在任意风格的图像中返回对应目标的检测框或分割掩膜,例如“图中所有安全帽”“所有疑似品牌 logo”“所有带轮子的物体”。
- 大规模商品 / 物种识别:电商中不断上新的长尾商品、自然界中数量巨大的动植物物种,训练数据只能覆盖一部分已知类,但系统需要对海量新类进行定位与粗识别,并支持通过文本或图像检索。
- 跨域安防 / 自动驾驶感知:训练数据多来自白天城市道路/少数摄像头视角,实际部署却面临不同城市、乡村、高速、极端天气、红外/鱼眼摄像头等“新域”,其中还会出现训练集中从未标注过的新型目标(新款车型、新交通设施、新类型障碍物)。
- 原理 这类方法的核心,是用视觉–语言对齐的嵌入空间替代传统的“固定 one‑hot 类别头”,并通过多种机制处理“未见类”和“新域”:
- 开放词汇检测(Open‑Vocabulary Detection):在训练阶段,利用大规模图文对(image–text pairs)预训练得到类似 CLIP 的对齐空间,使得图像区域和文本嵌入可以直接在同一语义空间中做相似度匹配;检测头不再输出固定的类别 logit,而是输出一个区域特征向量,与任意文本描述向量进行对比,从而支持“训练只见部分类别,推理可指定任意文本类别”。
- 开放世界检测(Open‑World Detection):进一步处理“训练集中完全没有标注的新类”,要求模型可以将这类目标检测为“未知类(unknown)”,并在后续通过交互标注或持续学习,把这些未知类逐步纳入已知类别集合,形成一个可以不断扩充类目的在线学习系统。
- 开放域 / 跨域检测(Open‑Domain Detection):面对图像风格、成像设备、环境条件等大幅变化(domain shift),通过领域自适应(Domain Adaptation)、领域泛化(Domain Generalization)等技术,让检测器在未见过的新域中保持稳定检测性能;常见手段包括对抗性域对齐、多域训练、风格随机化、元学习等。
- 分割与检测一体的开放词汇:将上述思路扩展到像素级,对任意文本描述生成分割掩膜(open‑vocabulary segmentation),通过 Region–Word 或 Mask–Word 对齐损失,实现“用自然语言描述一个区域/物体,就能得到对应 mask 或框”。
- 模型 当前开放词汇 / 开放世界 / 开放域检测的主流技术路线,基本围绕“大规模视觉–语言预训练 + 检测头适配 + 域泛化机制”展开:
- CLIP‑based 检测器:以 CLIP 风格的图像编码器和文本编码器为基础,在区域级特征(ROI、特征图 patch、mask 区域)与文本嵌入之间应用对比学习和 Region–Word 对齐损失;典型实现包括在 Faster R‑CNN / RetinaNet / YOLO / DETR 等架构上替换或扩展分类头,使其以“cosine 相似度 + 文本嵌入”方式输出类别分数。
- Caption‑driven / Prompt‑based Detection:利用大规模图文描述(caption)数据,为图像中的区域或 mask 自动生成文字描述,再用这些自动生成的文字与检测/分割区域对齐训练,从而减少对人工类别标签的依赖;推理时则通过自然语言 prompt(如“所有穿红色衣服的人”“所有电动车”)驱动检测/分割。
- Open‑World Detection 系列工作:在传统检测框架中显式引入“未知类(unknown)”建模、渐进式类别扩展和增量学习机制,一部分方法通过度量空间的距离与不确定性估计来判断“是否为未知类”,另一部分引入记忆库与在线重训练,使系统能随时间积累新类别知识。
- 域自适应 / 域泛化检测:在 Backbone 和检测头层面增加域判别器、对抗性损失、多域 batch normalization、风格随机化增强等模块,使检测器在不同域之间学习到更域不变的表示;也有工作在 Transformer 检测框架(如 Deformable DETR)上引入多源域训练和元学习策略,提升跨域泛化能力。
- 通用 / Foundation 检测模型:把检测问题上升到“基础模型”层面,预训练一个在类别和域上都尽可能通用的 Detection Foundation Model,再通过轻量微调或文本 prompt 适配特定场景;这类模型通常结合大规模检测标注、多源图文对、甚至视频数据,目标是让“任意文本 + 任意风格图像”的通用理解成为可能。
在具体产品形态上,开放词汇/开放世界/开放域检测往往体现为“更自然、更少限制”的视觉接口:用户不必提前约定一小撮固定标签,而是可以用自然语言描述想找的目标;系统也不需要为每个业务场景从零开始重训检测器,而是基于统一的通用模型,通过 prompt 或少量样本快速适配。对于大规模商品 / 物种识别、全球化部署的安防与自动驾驶感知系统而言,这一层能力正在成为从“封闭数据集性能”走向“真实开放世界可用性”的关键跳板。
2.6.1 开放词汇检测:从固定类别头到文本驱动类别空间
开放词汇检测(Open‑Vocabulary Detection)的出发点,是突破传统检测中“固定类别头”的限制。以往的检测器在顶层接一个大小固定的分类层(对应训练集中的 N 个类别),训练完成后只能在这 N 个类别中选择;而开放词汇检测则通过引入文本, 编码器, 和共享的语义嵌入空间,让检测头输出的区域特征可以与任意文本描述进行相似度对比,从而在推理时接纳未见过的新类别。
典型做法是使用类似 CLIP 的视觉–语言预训练模型:
- 文本端:对类别名称或自然语言描述(如“person”、“red sports car”、“yellow construction helmet”)进行编码,得到文本向量。
- 视觉端:在检测框架(Faster R‑CNN、RetinaNet、YOLO、DETR 等)中,对每个候选区域或特征点提取区域特征向量。
- 对齐训练:通过对比损失、Region–Word 对齐损失,使同一语义的文本和区域特征在嵌入空间中靠近,不同语义的向量远离。训练时即便只对一部分类别提供显式框标注,也可以利用图文对或图像 caption 扩展语义覆盖。
推理阶段,系统不再依赖训练时固定的一组类名,而是允许用户在线提供任意类别词或自然语言描述,通过文本编码器转为嵌入,再与区域特征做相似度匹配。这使得检测器可以在不重新训练的前提下,支持诸如“检测所有滑板”“检测所有绿植”“检测所有安全相关设备”等灵活需求,即便某些具体类目在训练集中从未出现过完整标注,只要语义上与预训练的图文空间有重叠,就能被一定程度地识别和定位。
在工程实践中,开放词汇检测需要在效果与效率之间平衡:一方面,保持与大规模预训练的视觉–语言 Backbone 的语义对齐;另一方面,又要承载检测任务对多尺度、实时性的要求。主流 CLIP‑based 检测器往往采用“预计算文本嵌入 + 高效向量相似度计算”的方式,避免在在线服务中反复编码文本,同时对区域特征进行量化或蒸馏,兼顾精度和推理速度。
2.6.2 开放世界检测:从“未见类”到“可学习的未知”
开放世界检测(Open‑World Detection)在开放词汇的基础上,进一步要求模型显式处理“未知类” :训练数据中只标注了部分类别,其余物体要么未被标注,要么被统称为背景;推理时,这些“未被标注的真实物体”既不应该被简单视为背景,也不应被错误归入已知类别,而应作为“未知类(unknown)”被检测出来,并具备后续转化为“新已知类”的可能。
在建模上,开放世界检测通常需要解决三个问题:
- 未知类感知 :如何在训练阶段避免将所有未标注目标都学成“背景”?常见做法包括:引入显式“未知类”槽位,通过负例挖掘和不确定性建模让模型学会在低置信度区域输出“unknown”;或者利用无标注数据和自监督机制,对高置信度的潜在目标区域进行聚类和伪标签生成。
- 错误归类控制 :模型需要在“宁可判为 unknown,也不要错误归入错误已知类”之间做权衡,这涉及到损失设计(如 margin、开放集判别)、决策阈值和后处理策略。
- 渐进式类别扩展 :当业务方对一批“unknown”目标人工标注出新类别后,模型应能够通过增量学习将这些新类别纳入“已知类”集合,而不显著遗忘旧类。为此,很多工作引入了记忆库、蒸馏损失、参数隔离或重放机制,实现对新类别的稳定吸收。
从产品视角看,开放世界检测特别适合那些类目不断增长、长尾极度严重的场景,例如自然物种识别、新品快速上新的商品识别、复杂安防场景中的异常目标检测等。系统可以先用开放世界检测将“任何非背景的可疑目标”标出,并逐步通过人工或半自动标注,将其中有价值的聚类升级为正式类目,从而形成一个“类目可持续生长”的检测系统,而不是被固定数据集束缚。
2.6.3 开放域 / 开放分布检测:跨风格、跨设备、跨场景的鲁棒性
即使类别集合保持不变,检测器仍然会在现实部署中遭遇严重的 域偏移(Domain Shift) :训练数据可能来自少数城市的白天高清摄像头,而部署环境却包含不同国家、乡村、高速路、隧道、夜间、雨雪、低分辨率摄像头、鱼眼镜头甚至红外成像;电商商品摄影与用户实拍、广告图/插画/动漫风格之间也存在巨大差异。**开放域检测(Open‑Domain Detection)**关注的正是:在图像分布发生显著变化的条件下,保持检测性能的稳定与可靠。
典型的技术路径包括:
- 领域自适应(Domain Adaptation) :在拥有目标域无标注数据或少量标注数据的前提下,通过对抗性域对齐(在特征空间上混淆源域/目标域)、多级域对齐(图像风格、特征、检测头输出)、风格迁移(如将源域图像风格迁移到目标域)等方式,让模型学到对域不敏感的特征。
- 领域泛化(Domain Generalization) :在仅有多个源域数据、没有目标域数据的前提下,利用多域训练、风格随机化、特征扰动、元学习等手段,使模型在训练阶段就尽可能暴露于多样化分布,提升对未知新域的泛化能力。
- 通用 / Foundation 检测模型 :通过在极大规模、多源、多风格数据上预训练检测 Backbone 和头部结构(包括自然图像、视频帧、合成数据、跨模态数据等),再在特定业务场景轻量微调,从而获得比“单域训练”更强的开放域鲁棒性。
这些开放域机制往往与开放词汇/开放世界能力相互叠加:一个面向真实世界的通用检测系统,既要能听懂用户的自然语言类别描述(开放词汇),又要能对新出现的目标给出合理的“未知”判断和渐进吸收(开放世界),还要能在不同国家、不同设备、不同天气和风格下保持性能(开放域)。在工程落地中,这三者并不是彼此孤立的研究方向,而是共同构成了从“封闭 benchmark”迈向“开放世界可用”的关键能力组合。
2.7 视觉–语言任务(Vision–Language Tasks)
前面的章节主要围绕“单模态视觉”展开:输入是一张图像,输出是检测框、分割掩膜、类别标签或质量分数。而在很多真实应用中,视觉信息并不是孤立存在的——一张图往往伴随标题、说明文字、对话或搜索查询;用户想问的是“图里在讲什么”“这张图和这句话匹不匹配”。视觉–语言任务正是解决这类问题:它们以图像 + 文本为输入或输出,通过 跨模态对齐与联合建模 ,让系统能够“看图说话”“看图回答问题”“用文字找图 / 用图找文”。
从产品视角看,视觉–语言模型(VLM)是多模态系统的中枢能力:搜索引擎依赖它实现“以文搜图 / 以图搜文”;内容平台用它做智能配图、广告审核、图文一致性检查;多模态助手则将其作为基础能力,实现“看图聊天”“对文档/截图提问”等功能。下面我们从 场景 、原理和模型三个角度梳理这一层,并在后续小节中分别展开图像描述、视觉问答与图文检索。
- 场景
- 图像描述(Image Captioning):为图片自动生成一两句自然语言描述,用于无障碍辅助阅读、智能相册说明、搜索索引丰富。
- 图像问答(VQA):用户针对图片提出自然语言问题(“这个人拿着什么?”“车牌号是多少?”),系统给出精准回答,可用于教育、辅助决策和多模态助手。
- 图文检索(Cross‑modal Retrieval):以文本检索相关图片(Text‑to‑Image)、以图片检索相关文本(Image‑to‑Text),支撑“以文搜图 / 以图搜文”搜索、创意选图和广告投放审核。
- 图文一致性与审核:判断图片与标题/广告语是否相符,有没有“图文不符”“诱导性描述”等风险,用于内容审核和品牌安全。
- 原理 核心问题是:如何把图像和文本映射到 同一个语义空间 ,并在这个空间内进行对齐与推理:
- 跨模态对齐:通过联合训练的图像编码器和文本编码器,让对应的“图–文对”在表示空间中彼此靠近,不相关对彼此远离(典型如 CLIP);这为检索、匹配提供了基础。
- 联合理解与生成:在对齐的表示基础上,引入跨模态注意力,让语言模型在“看着图像特征”的前提下生成文本(图像描述)、推理和回答问题(VQA)。
- 提示化与指令化:用自然语言指令统一描述多种视觉–语言任务(“为这张图写标题”“回答关于这张图的问题”“判断这段文字是否描述了图片”),让一个模型通过不同提示完成多种任务。
- 模型 主流视觉–语言模型大致演化为两类:对比学习型 VLM 与 生成式多模态 大模型 :
- 对比学习型:CLIP、ALIGN 等,将图像和文本分别编码成向量,通过大规模图–文配对训练,使其在检索和匹配任务上表现出色,是“以文搜图 / 以图搜文”的基础。
- 视觉–语言生成模型:BLIP / BLIP‑2、Flamingo、Kosmos、LLaVA 等,将视觉编码器与大语言模型(LLM)衔接,通过跨模态注意力和指令微调,支持图像描述、VQA、多轮对话等复杂任务。
- 通用多模态大模型:如 GPT‑4.1 with Vision、Gemini 1.5 等,进一步将视觉与更多模态(语音、代码等)统一在一个大模型中,通过统一的接口完成检索、问答、推理和生成。
总体而言,视觉–语言任务标志着“视觉不再是一个单独的感知通道”,而是与语言共同参与到更高层的知识表达和推理之中。下面,我们从 图像描述与视觉问答 、图文检索与跨模态对齐两个方向展开(这里按内容合并为两小节)。
2.7.1 图像描述与视觉问答:从“看图描述”到“看图推理”
**图像描述(Image Captioning)**的目标,是输入一张图像,输出一段自然语言描述,比如“一个小女孩在草地上放风筝”。传统做法通常采用“CNN + RNN”结构:用卷积网络提取整图特征,再用 LSTM/GRU 逐词生成描述;随着 Transformer 和预训练 VLM 的出现,主流范式逐渐转向“图像编码器 + 文本解码器”结构,如 BLIP / BLIP‑2、ViT + GPT 等。训练上,模型通常在大量图–文对上进行自回归训练,有时还会采用强化学习或对比损失,优化描述的多样性与正确性。在产品层面,图像描述被广泛用于无障碍阅读(为盲人读屏软件生成图片说明)、智能相册自动加标题,以及为搜索系统提供更多文本索引。
视觉问答(VQA)则进一步把人类交互引入进来:模型的输入不再是“图 + 空白提示”,而是“图 + 问题”,输出一个简短答案或者自然语言解释。与图像描述相比,VQA 更强调可控性与推理能力 :问题可以关注局部细节(“男人的帽子是什么颜色?”)、关系(“哪辆车离路口更近?”)、计数(“有几只狗?”),甚至需要外部知识(“这道菜属于哪种菜系?”)。早期 VQA 模型通常使用图像编码器 + 问题编码器 + 融合模块(如双线性池化、注意力)+ 分类头,输出一个有限词表中的答案;现代多模态大模型则直接用图像编码器 + LLM,在“看图”的基础上进行自然语言生成,在开放式回答和多轮对话上有明显优势。
两者在统一的 VLM 框架下可以被视为不同的“提示模板”:
- Captioning:
<图像> + "Describe this image in one sentence."→ 文本; - VQA:
<图像> + "Q: ... A:"→ 文本。
通过指令微调(Instruction Tuning),同一个多模态大模型可以兼容描述、问答、解释、打标签等多种任务,这也是现代 VLM 产品(多模态助手、图像问答机器人等)的基础工程思路。
2.7.2 图文检索与跨模态对齐:以文搜图 & 以图搜文
**图文检索(Cross‑modal Retrieval)**解决的是另一个高频需求:给定一段文本,找到匹配的图片(Text‑to‑Image Retrieval);或给定一张图,找到相关的文字描述、商品信息、新闻报道等(Image‑to‑Text Retrieval)。这些能力构成了“以文搜图 / 以图搜文”“看图找商品”“给新闻配图”等产品的核心。
核心技术是 跨模态对齐 :以 CLIP 为代表的模型,对图像和文本分别使用各自的编码器(如 ViT 和 Transformer 文本编码器),在大规模图–文配对数据上使用对比学习训练:
- 对于同一对(图像,文本),让它们的向量在嵌入空间中彼此靠近;
- 对于不匹配的图–文对,则推远它们的向量。
训练完成后,只需将所有图片和文本编码成向量,就可以通过向量检索(最近邻搜索)在共享空间中进行快速匹配:
- Text‑to‑Image:文本 → 文本向量 → 最近的图像向量;
- Image‑to‑Text:图像 → 图像向量 → 最近的文本向量。
在工程实践中,这类模型通常采用两阶段结构:
- 第一阶段用轻量快速的双编码器(Bi‑Encoder,如 CLIP)做粗检索,在亿级图像库中快速筛选出一小部分候选;
- 第二阶段可选用更强的交叉编码器(Cross‑Encoder)或多模态大模型对候选进行精排与重排序,以提升相关性和鲁棒性。
在产品侧,图文检索与跨模态对齐被广泛用于:图片搜索、广告检索(根据广告文案找到合适图片)、合规审核(检查广告图文是否一致)、内容推荐(基于用户阅读文本历史向其推荐相关图片/视频)等。随着多模态大模型的兴起,这类检索能力也逐渐被统一进更大的多模态框架中,以“自然语言指令 + 多模态记忆/向量库”的形式,对外提供统一接口。
2.8 光学字符识别(OCR)
在很多业务中,最重要的信息既不体现在“画面里的物体和场景”,也不在自然语言对图像的描述里,而是直接写在图像上的 文字 :合同条款、发票金额、路牌名称、仪表读数、屏幕截图上的错误信息等。**光学字符识别(OCR)**就是围绕“图像 + 文档版式”的结构化理解任务:从复杂的视觉输入中,自动检测并识别文字内容,理解文档的布局和结构,进而支持搜索、统计、自动录入和智能问答。
从产品视角看,OCR 是“把纸质/图像信息变成可计算文本”的关键桥梁,是电子化、自动化与智能化办公的基础设施:合同审阅、票据入账、政企档案数字化、办公软件中的 PDF 转 Word、文档问答助手等,都建立在 OCR 能力之上。下面从 场景 、原理和模型三个角度梳理 OCR 体系,并在后续小节中展开核心方向。
- 场景
- 场景文本识别:街景中店铺招牌、路牌、广告牌、包装盒文案等,用于导航、搜索、零售洞察和合规审核。
- 文档 OCR:扫描件、传真件、PDF、照片版合同/发票/报告等的文字识别与结构化,还原成可编辑文本。
- 专用场景:车牌识别、仪表盘读数(电表、水表、气表)、屏幕截图文字提取、试卷/表单识别等。
- 文档理解:在布局复杂的长文档中,抽取标题、段落、表格、注释等结构,为搜索、摘要、问答奠定基础。
- 原理 OCR 体系通常分成几个关键步骤:
- 文本检测:在图像上检测出所有文字区域(文本行或文本块),输出定位框(水平或四点多边形),这是后续识别的输入。
- 文本识别:对每个检测到的文字区域进行序列识别,将像素序列转化为字符序列(如中文、英文、数字、符号等)。
- 版式分析(Layout Analysis):在文档场景中,识别各区域的角色(标题、正文、图片、表格、页眉页脚等),恢复阅读顺序和层次结构。
- 表格结构识别:对表格区域进行行列划分、单元格边界解析、合并单元格恢复,重建逻辑表格结构。
- 文档问答(DocVQA):在 OCR 和版式理解的基础上,让模型能够回答“这份合同的付款日期是什么?”“发票的金额是多少?”这类跨区域、多步骤推理的问题。
- 模型 工程上常见的是“专用 OCR 模块 + 文档理解模型 + 多模态大模型”组合:
- 文本检测与识别:
- 检测:EAST、DBNet/DBNet++ 等基于分割或边缘学习的方法,擅长处理弯曲文本和复杂背景;
- 识别:CRNN、RARE、SAR 等序列模型(CNN + RNN/Attention + CTC 或自回归解码),支持多语种和多字体。
- 文档版式与结构理解:
- LayoutLM / LayoutLMv2/v3、DocFormer 等,将文本内容(token)、位置信息(bounding box)和视觉特征联合编码;
- Donut 等“端到端文档理解”模型,直接从图像到结构化输出(如 JSON / Markdown),弱化传统 OCR 的边界。
- 文档问答与多模态理解:
- 在布局模型基础上,叠加任务头进行 DocVQA;
- 或直接使用多模态大模型(VLM)读取文档图像,在自然语言层面完成问答和摘要,同时隐式利用 OCR 能力。
- 文本检测与识别:
综合来看,OCR 已经从早期“简单的字符识别”发展为涵盖文字 + 版式 + 结构 + 问答的整体文档理解体系,是企业数字化、政务档案管理和智能办公的关键支柱。下面,我们从 文本检测与识别 、 文档版式与表格结构分析 、文档问答与多模态 DocVQA三个方向展开。
2.8.1 文本检测与识别:从像素到可用文本
OCR 的第一步是 文本检测 :在输入图像中找到所有包含文字的区域。街景/场景文本面临字体多样、倾斜扭曲、光照复杂、背景干扰严重等挑战;文档场景则强调对密集文本和多栏排版的鲁棒支持。EAST、DBNet 等方法通过将检测问题转化为“像素级分割 + 边缘学习”,在特征图上预测文本概率和几何参数,再通过后处理获得精确的文本框(可为水平框或任意四边形/多边形),兼顾精度和速度。
文本识别则把每个检测出的文本区域切下来,转化为字符序列。经典做法以 CRNN 为代表:先用 CNN 提取特征,再通过 RNN 或 Transformer 进行序列建模,最后使用 CTC 或注意力解码输出字符序列。对于不定长文本、弯曲文字和复杂语言(中英文混排、多语种),识别模型需要在视觉特征建模和字符语言建模上同时发力。诸如 RARE、SAR 等方法会引入空间变换网络(STN)或注意力对齐机制,以纠正几何畸变、提升对复杂布局的适应能力。
在工程系统中,检测与识别通常作为两个解耦的服务组成一条 OCR pipeline:前端检测将图像拆成若干文本行/块,后端识别对每个块做字符识别,并可叠加语言模型做错误纠正(如拼写修复、数字/金额校验)。对于车牌、仪表读数等特定场景,还会使用专门微调的检测/识别模型,以利用场景先验(固定字体、有限字符集)换取更高精度和更低延迟。
2.8.2 文档版式与表格结构分析:还原“文档的形状”
单纯把文字识别出来还不够,尤其在长文档、报告、合同和票据等场景中,版式结构往往决定了信息的含义和重要性:标题与正文的层级关系、图表与配文的位置、页眉页脚的作用、表格内外文段的逻辑顺序等。**文档版式分析(Document Layout Analysis)**的目标,就是在二维页面上识别出不同区域的角色和边界,并恢复出合理的阅读顺序与层级结构。
LayoutLM / LayoutLMv2/v3、DocFormer 等模型,将每个文本 token 的内容(文本 embedding)、空间位置(bounding box 坐标)以及局部视觉特征(来自 CNN/ViT)联合编码,通过 Transformer 建模 token 间的语义–空间关系。通过在带版式标注的数据集上训练,模型可以学会区分“标题/段落/列表/表格/图片说明/页眉页脚”等多种区域类型,并在输出中给出对应标签和层级。这类模型通常作为“中间层”,为合同审阅系统、报告解析、档案数字化平台提供结构化的文档骨架。
表格结构识别(Table Structure Recognition) 是版式分析中特别关键的一支:它不仅要检测出表格区域,还要进一步解析行列边界、单元格坐标和合并单元格,最终重建一份逻辑表格(通常表示为 HTML、Markdown 表、或带坐标的结构化 JSON)。实现方法包括:
- 基于规则/视觉:使用线检测、分割网络、对象检测等手段提取表格线和单元格区域,再进行拓扑建图;
- 基于 Transformer:将表格区域的文本块与几何信息编码成序列,直接预测单元格结构和关联关系。
在产品上,这些能力支撑了“PDF 转 Word/Excel”“票据/发票结构化录入”“报表解析与指标抽取”等高价值场景,是政企办公自动化的关键组件。
2.8.3 文档问答与 DocVQA:从“读文档”到“问文档”
当 OCR 与版式分析能力足够强时,下一步自然需求就是: 不再让人自己翻阅文档,而是直接“问文档” 。这就是 文档问答(DocVQA) :模型在合同、报告、票据、说明书等复杂文档上回答问题,比如“这份合同的生效日期是什么时候?”“这页报表中 2023 年 Q4 的净利润是多少?”“发票上的购方名称是谁?”。
传统 DocVQA 系统通常以“OCR + 版式模型 + QA 头”的方式构建:
- 先使用 OCR 提取文本及坐标;
- 用 LayoutLM / DocFormer 等建模文本–版式–视觉三模态关系;
- 最后在这个表示上叠加任务头(分类 / 抽取 / span 预测),根据问题在文档中定位答案或相关片段。
随着多模态大模型的发展,越来越多系统开始直接使用“文档图像 + 问题”作为输入,让一个 VLM 或多模态 LLM 直接生成答案或带引用的解释。在这种架构下,OCR、版式、语义理解和推理能力在模型内部以端到端的方式协同工作:模型既能看到原始版式和视觉线索,又能利用语言世界知识和推理模式完成复杂问题的解答。
在产品形态上,DocVQA 通常以“合同审阅助手”“发票/报表问答”“长文档智能问答”形式出现,帮助用户从大量文档中快速定位关键信息、自动生成摘要、进行条款比对等,大幅减轻人工审阅和信息检索的负担。
2.9 图像生成与编辑(Image Generation & Editing)
前面介绍的视觉能力大多是“判别式”的:输入图像,输出标签、框、掩膜或文本;而近年来快速发展的另一条主线是 生成式视觉 :模型不再只是理解图像,而是 创造或修改图像 ,在给定文本/图像条件下生成高质量、多风格的视觉内容。图像生成与编辑正是这一方向的核心能力,支撑了从 AIGC 绘图平台到智能修图/特效工具的大量产品。
从业务视角看,生成式视觉已经从“技术演示”变成切实可用的生产力工具:设计师用它做灵感草图和细化稿;营销团队用它批量生成海报和广告素材;普通用户用它制作头像、插画、壁纸;视频创作者用它做抠图、背景替换和特效。下面我们从 场景 、原理和模型三个角度梳理这一层,并在后续小节中展开文本生成图像、图像到图像与编辑能力。
- 场景
- 文本生成图像:用户输入一段描述(“赛博朋克风的夜景城市”),系统自动生成符合描述的多张图片,支持选图与迭代修改。
- 风格迁移与图像翻译:将真实照片转换为动漫/素描/油画/水彩风格,或在不同领域间做映射(白天 ↔ 夜晚、夏天 ↔ 冬天)。
- 条件重绘与扩展:在原图的局部进行重绘(Inpainting)、对画面外扩(Outpainting),用于修补瑕疵、移除/添加对象、扩展构图。
- 文本驱动编辑:用自然语言指令修改图像(“把天空改成日落”“让这辆车变成红色跑车”),用户无需掌握复杂的图像编辑软件。
- 原理 生成式视觉模型主要通过学习“图像分布”和“条件控制”来完成生成与编辑:
- 分布建模:GAN、扩散模型(Diffusion)、Flow Matching 等从大量图像中学习高维分布,使得模型能从随机噪声中逐步“采样”出逼真的图像。
- 条件生成:在纯图像分布建模基础上,引入文本/草图/分割图/关键点/深度图等条件,使生成过程受到外部信号约束(Text‑to‑Image、Image‑to‑Image、ControlNet 等)。
- 可控编辑:在已有图像的潜在空间中,通过文本或局部 mask 对局部特征进行引导和修改,实现局部重绘、风格变化、构图调整等。
- 模型 当前主流图像生成与编辑模型以扩散模型 + 条件控制为主:
- GAN 系列:StyleGAN 等在高分辨率人脸和样式控制方面表现突出;但训练不稳定、难以覆盖复杂多模态分布。
- 扩散模型:Stable Diffusion、Imagen、DALL·E 系列等,通过“正向加噪 + 反向去噪”的过程进行采样,兼具质量和多样性,是当前 Text‑to‑Image 的主力方向。
- 可控生成与编辑:ControlNet、T2I‑Adapter 等,在基础扩散模型上叠加条件通道(边缘、姿态、分割等),实现精确控制;结合文本引导的 Inpainting/Outpainting 实现局部编辑和画面扩展。
- Flow Matching 与新一代生成模型:通过学习连续流场将噪声分布变换到图像分布,在效率、可控性与稳定性上探索新的平衡。
在产品层面,这些技术以即梦、阿里 qwen 图像模型、FLUX、OpenAI 或者 Gemini nanobanana、Stable Diffusion 生态、Photoshop Generative Fill、Canva AI、剪映/CapCut 智能抠图与特效等形态面向用户,逐步从“玩具”演进为内容生产链条中的正式环节。下面,我们从 文本生成图像 、图像到图像翻译和文本驱动编辑三个方向展开。
2.9.1 文本生成图像(Text‑to‑Image):从一句话到一张画
文本生成图像(Text‑to‑Image) 的核心任务是:给定一段自然语言描述,生成一张尽可能匹配其语义和风格的图像。现代 Text‑to‑Image 模型主要基于扩散架构:
- 首先使用文本编码器(如 CLIP Text Encoder 或 T5/LLM)将输入文本编码为条件向量;
- 然后在图像潜空间中,从高噪声状态开始,通过多步反向去噪采样,在每一步都利用文本条件引导生成方向;
- 最终得到符合描述的高分辨率图像,可进一步放大或后处理。
Stable Diffusion、Imagen、DALL·E 系列等方法在大规模图–文对上进行训练,使模型既掌握视觉谱系(形状、纹理、构图、光影),又获得一定程度的语言–视觉对齐能力(理解“风格”“材质”“构图”等复杂描述)。在产品层面,这种能力让“不会画画的人也能画图”:用户只需用自然语言描述想法,系统就能给出多种视觉实现,支持迭代试探和细化。
Text‑to‑Image 模型通常同时支持多风格、多分辨率输出:通过在训练或推理时加入风格 token、尺寸条件等,使同一个模型在“写实照片风、扁平插画风、3D 渲染风”等不同风格之间切换。工程上常用的技巧包括:
- 文本提示工程(Prompt Engineering),用于细化和稳定输出风格;
- LoRA / DreamBooth 等轻量微调技术,在通用模型上快速适配特定人物、IP 或品牌风格。
2.9.2 图像到图像(Image‑to‑Image):翻译、风格迁移与局部重绘
Image‑to‑Image 任务在给定输入图像的基础上,生成另一个“受其约束”的图像版本:既保留原图的整体结构或内容,又实现某种转换或增强。典型形态包括:
- 图像翻译 / 风格迁移:在不同视觉域之间进行映射,如“照片 → 动漫”“夏天 → 冬天”“白天 → 夜晚”“素描 → 彩色图像”。早期多基于 GAN(CycleGAN、Pix2Pix 等),现在也可以用扩散模型在条件控制下完成。
- 条件生成:以草图、分割图、深度图、边缘图等为条件,通过 ControlNet、T2I‑Adapter 等模块引导扩散过程,让生成图严格遵守几何/布局条件,同时在纹理、光影、风格上自由发挥。
- Inpainting / Outpainting:在原图上划定某个区域,将其视为待重绘部分(inpainting),或在画面外延展生成新内容(outpainting),实现“填坑”“扩图”等操作。
这类任务的关键是 在保留约束的前提下创造新内容 。扩散模型在这方面表现突出:在 inpainting 中,模型只对 mask 区域进行采样,而在未被遮挡的区域保持原图不变,通过语义理解与上下文信息,使新内容与周围区域在风格与光影上自然融合。对于风格迁移,模型在保留输入结构的同时,从目标风格分布中采样纹理和颜色,实现“换壳不换骨”。
在产品里,Image‑to‑Image 能力支撑了大量创意工具:风格滤镜、漫画化、一键天空替换、自动美颜、旧照修复、局部修图等,通常以高度可视化的界面呈现给用户。
2.9.3 文本驱动图像编辑:自然语言当“画笔”
在传统图像编辑软件中,用户需要掌握图层、蒙版、选区、滤镜等一整套专业概念;而文本驱动图像编辑(Text‑guided Editing) 尝试用自然语言替代大部分专业操作:
- “把背景换成夜晚城市天际线”;
- “让这个人穿黑色西装”;
- “把这辆车变成蓝色跑车,增加运动模糊效果”。
技术上,文本驱动编辑通常建立在 Text‑to‑Image 扩散模型之上,通过几种方式实现:
- 在原图附近的潜空间中搜索或采样,使编辑后的图与原图保持高相似度,只在受文本影响的局部发生变化;
- 使用显式 mask(用户圈定区域),将编辑范围限制在特定区域(这就是许多工具中的“选中区域后输入文本指令”);
- 引入“指令控制”模块(如 ControlNet、可学习控制 token),增强模型对编辑请求的可控性与稳定性。
即梦、FLUX、阿里 qwen 图像模型、Stable Diffusion 生态、Canva AI 等产品都提供了类似能力:用户通过简单文字和少量交互即可完成复杂编辑。对专业用户而言,这成为加速创作流程的“智能助手”;对普通用户而言,则极大降低了图像编辑的门槛。
2.10 图像质量评估(Image Quality Assessment, IQA)
在底层视觉增强、压缩编码、图像生成与编辑等任务中,我们经常需要回答一个看似主观的问题: “这张图看起来好不好?” 。手工检查显然无法规模化,而像 PSNR 这类传统指标又常常与人眼主观感受不一致。图像质量评估(Image Quality Assessment, IQA) 的目标,就是建立一套自动化机制,对图像的主观/客观质量进行评分或排序,成为连接“底层算法输出”和“用户真实体验”的关键环节。
从系统角度看,IQA 是很多流水线中的“看门人”和“调参参考”:电商/内容平台用它筛掉模糊、噪声重、压缩过度的上传图片;手机相机/相册用它在连拍中挑出“最好的一张”;云端增强和压缩服务用它进行前后对比评估,以指导模型迭代。下面从 场景 、原理和模型三个维度梳理 IQA,并在后续小节中展开评估类型与指标/学习范式。
- 场景
- 上传质检与审核:对用户上传的图片/视频做质量评分,过滤严重模糊、曝光异常、噪声明显和压缩伪影严重的内容。
- 智能选片与去重:在手机相册、相机应用中,从多张相似照片中选择清晰度、表情、构图更好的版本,同时识别质量差或冗余图片用于清理。
- 增强/压缩算法评估:在图像增强、降噪、超分辨率、编解码等算法 A/B 测试中,用 IQA 指标客观衡量“哪种策略更好”,辅助参数搜索与模型选择。
- 海报/缩略图自动选取:在视频或多图集合中自动选择视觉质量和吸引力更高的帧作为封面或海报候选。
- 原理 IQA 的核心是从两个维度刻画图像质量:相对于参考图的失真程度与 人眼主观感知的好坏 :
- 全参考 IQA(FR‑IQA):在有高质量参考图的前提下,将待评估图与参考图进行逐像素或特征对比,衡量失真程度,用于算法研发和实验评估。
- 无参考 IQA(NR‑IQA / Blind IQA):实际场景中更常见,没有参考图,只能从单张图的统计特征或深度特征中推断质量,需要模型从大量图像与主观评分中学习到“人眼喜欢什么样的图”。
- 伪参考 / 降采样参考:在某些场景中,可以使用压缩前的低分辨率版本、模型预测的“理想图”等作为近似参考,兼顾可实现性与评估精度。
- 模型 IQA 模型大致分为传统手工特征指标与**深度学习****式质量预测**两大类:
- 传统指标:
- FR‑IQA:PSNR、SSIM、MS‑SSIM、FSIM 等,侧重结构、对比度和相位信息,对简单退化(如加噪、模糊)较敏感。
- 感知指标:LPIPS、DISTS 等,在深度特征空间衡量图像间感知差异,与人眼主观感受有更高相关性。
- 无参考 / 学习式 IQA:
- 早期方法:BRISQUE、NIQE、BLIINDS 系列等,从自然场景统计(NSS)和手工特征出发,训练浅层模型预测质量分数。
- 深度 NR‑IQA:RankIQA、DBCNN、HyperIQA、MUSIQ 等,直接用 CNN / ViT 从图像中抽取特征,并在 MOS(Mean Opinion Score,主观评分均值)数据上监督训练,使输出质量分数尽可能拟合人眼评价。
- 预训练表征:利用 CLIP、ViT 等大模型的特征,作为质量预测网络的输入或 backbone,在有限 MOS 数据上微调,提升对复杂失真类型的泛化能力。
- 传统指标:
整体来看,IQA 并不是“越高越好”的单一指标,而是一套与具体业务目标相关的评估体系:在某些场景(如监控增强)中,保留细节和可识别性比视觉自然更重要;在内容创作平台中,主观观感和审美标准则占主导。因此,工业界常见做法是:在通用 IQA 模型基础上,通过少量业务数据微调或学习加权,构建“任务感知”的质量评估器。
2.10.1 评估类型:有参考、无参考与伪参考
按照是否存在高质量参考图,IQA 可以分为三类: 全参考(FR‑IQA) 、 无参考(NR‑IQA)和伪参考 。
在 全参考 IQA 中,我们假设存在一张理想的高质量参考图像,待评估图是其经过压缩、传输或处理后的退化版本。模型通过对两者进行逐像素或特征级比较,量化失真程度。PSNR 是最简单的度量(基于均方误差),SSIM/MS‑SSIM/FSIM 等进一步考虑亮度、对比度、结构或相位信息,在一定程度上更接近人眼感受。这类指标非常适合在算法开发阶段评估编解码、超分辨率、去噪等方法,但在真实业务中往往缺乏参考图,应用场景有限。
无参考 IQA(Blind IQA) 是实际系统中更常见的设定:只有待评估图像本身,没有任何参考。早期无参考方法(如 BRISQUE、NIQE、BLIINDS 等)主要基于自然场景统计:假设高质量自然图像在某些统计分布上有稳定形态,失真会引起统计特征变化,从而可以训练模型根据这些特征预测质量分数。深度学习时代,NR‑IQA 模型通常直接利用 CNN / ViT 提取特征,并在带有人眼主观评分(MOS)的数据集上回归质量分数或学习排序关系,使其能够覆盖噪声、模糊、压缩伪影、曝光异常等多种失真类型。
伪参考 / 降采样参考 IQA 介于两者之间:在没有真正高质量参考的情况下,使用某种可获得的近似版本(如压缩前低分辨率图、模型预测的“干净图”)作为参考,对退化程度进行估计。这种方式常见于在线视频质量监控、编解码优化任务中,可以在成本与精度之间取得平衡。
2.10.2 指标与学习范式:从 PSNR 到感知质量预测
在具体实现层面,IQA 采用多种指标和学习范式来逼近人眼主观感受。
传统指标方面:
- PSNR 直接基于像素级误差,简单高效,但对人眼不敏感的变化(如轻微平移、结构保持的滤波)也会给出较大惩罚;
- SSIM、MS‑SSIM、FSIM 等从亮度、对比度、结构、相位等多个维度建模图像相似性,对结构性失真更敏感,也一定程度反映人眼对结构信息的偏好。
感知指标方面:LPIPS、DISTS 等通过在预训练深度网络(VGG、AlexNet、ViT 等)内部特征层计算向量差异,并按照不同层的重要性加权,得到一种“特征空间中的距离”,与主观感知相似性有更高相关性。它们特别适合作为生成式任务(超分、生成、编辑)的训练目标或评估指标,用来衡量“看起来像不像”。
学习式质量预测方面,深度 NR‑IQA 模型(如 RankIQA、DBCNN、HyperIQA、MUSIQ 等)直接对图像打分或排序:
- 训练数据中,每张图像附带一组主观评分(MOS),模型以此为监督训练质量回归或排序网络;
- 模型结构上,多采用 CNN/ViT + 全局池化 + MLP 输出质量分数,或输出一组质量分布再取期望;
- 有些方法还利用对比学习或排序学习(pairwise ranking),让模型更关注“相对好/坏”的关系,而不是绝对分数。
随着大规模预训练视觉模型的普及,越来越多 IQA 方法采用“预训练 Backbone + 轻量头”的范式:利用 CLIP、ViT 等丰富的视觉表征,在较少 MOS 数据上进行微调,从而在跨失真类型、跨场景上保持良好的泛化。
在工程落地中,通常会将上述多种指标组合使用:例如 FR‑IQA 指标用于实验阶段评估算法改进;深度 NR‑IQA 模型用于线上实时质检;感知指标用于生成任务的内部优化。通过 A/B 实验将这些自动指标与真实用户数据(点击率、完播率、投诉率等)对齐,逐步构建起与业务目标高度相关的“感知质量度量体系”。