跳转至

计算机视觉

图像识别、目标检测、图像生成等视觉AI技术。

计算机视觉概述

**计算机视觉(Computer Vision, CV)**是使计算机能够"看懂"图像和视频的技术领域。

核心任务

图像 → [计算机视觉算法] → 理解/生成
任务 输入 输出 示例
图像分类 图像 类别标签 识别图中的动物
目标检测 图像 目标位置+类别 检测图中的车辆
图像分割 图像 像素级类别 分割出图像中的人
人脸识别 人脸图像 身份 解锁手机
图像生成 文本/噪声 图像 根据描述生成图片
视频分析 视频 行为/事件 监控异常行为

图像分类

任务定义

将输入图像分类到预定义的类别中。

输入:图像(如224×224×3) 输出:类别概率分布

经典网络演进

网络 年份 Top-5错误率 创新点
AlexNet 2012 16.4% 8层,ReLU,Dropout
VGGNet 2014 7.3% 16-19层,小卷积核
ResNet 2015 3.6% 152层,残差连接
DenseNet 2017 - 密集连接
EfficientNet 2019 - 复合缩放策略

迁移学习

概念:使用预训练模型作为起点,在新任务上微调。

流程: 1. 加载预训练模型(ImageNet上训练) 2. 替换最后一层(适应新类别数) 3. 冻结前面层或降低学习率 4. 在新数据上训练

优势: - 减少训练数据需求 - 加速收敛 - 提高泛化能力


目标检测

任务定义

在图像中定位并识别多个目标。

输出:边界框(x, y, w, h)+ 类别 + 置信度

两阶段检测器

R-CNN系列

模型 特点 速度 精度
R-CNN 选择性搜索+CNN分类
Fast R-CNN ROI池化,共享卷积 较快
Faster R-CNN RPN网络,端到端
Mask R-CNN 增加实例分割 较快 很高

流程

图像 → 候选区域提取 → 特征提取 → 分类+回归

单阶段检测器

YOLO系列

版本 特点 速度 适用场景
YOLOv1 开创性工作 实时检测
YOLOv3 多尺度预测 很快 通用检测
YOLOv5 PyTorch实现 极快 工程部署
YOLOv8 最新版本 多任务支持

SSD: - 多尺度特征图 - 不同尺度的anchor - 速度与精度平衡

检测器对比

精度:Faster R-CNN > YOLOv8 > YOLOv5
速度:YOLOv5 > YOLOv8 > Faster R-CNN

选择建议: - 精度优先:Faster R-CNN / Mask R-CNN - 速度优先:YOLO系列 - 平衡:YOLOv8 / SSD


图像分割

语义分割

任务:将每个像素分类到预定义类别。

应用: - 自动驾驶(道路/车辆/行人分割) - 医学影像(器官/病灶分割) - 遥感图像(地物分类)

经典网络

网络 特点 创新
FCN 全卷积网络 端到端分割
U-Net 编码器-解码器+跳跃连接 医学分割首选
DeepLab 空洞卷积+CRF 多尺度特征
PSPNet 金字塔池化 全局上下文

实例分割

任务:分割出每个独立实例。

与语义分割区别: - 语义分割:只分类,不区分实例 - 实例分割:每个目标单独标注

代表方法: - Mask R-CNN:在Faster R-CNN基础上增加分割分支 - YOLACT:实时实例分割

全景分割

任务:同时完成语义分割和实例分割。

统一框架: - 背景用语义分割 - 前景实例用实例分割


人脸识别

技术流程

人脸检测 → 关键点定位 → 特征提取 → 比对识别

人脸检测

方法: - MTCNN:多任务级联CNN - RetinaFace:单阶段检测 - YOLO-Face:基于YOLO

特征提取

经典模型: - DeepFace(Facebook) - FaceNet(Google) - ArcFace(当前主流)

损失函数: - Softmax Loss:基础分类 - Triplet Loss:学习embedding - ArcFace Loss:加性角度间隔

应用场景

场景 要求 技术
手机解锁 高精度,低误识率 3D结构光/ToF
门禁系统 实时,1:N比对 活体检测+识别
相册分类 大规模聚类 特征聚类
安防监控 远距离,低质量 超分+增强

图像生成

生成对抗网络(GAN)

原理:生成器与判别器对抗训练。

应用: - 人脸生成 - 风格迁移 - 图像超分辨率 - 图像修复

扩散模型(Diffusion Model)

原理: 1. 前向过程:逐步加噪 2. 反向过程:逐步去噪生成图像

代表模型: - DDPM:去噪扩散概率模型 - Stable Diffusion:潜在空间扩散 - DALL-E 2:OpenAI的文本到图像 - Midjourney:艺术创作

文本到图像生成

流程

文本描述 → 文本编码器 → 扩散模型 → 图像

关键技术: - CLIP:连接文本和图像 - 注意力机制:控制生成内容 - CFG:分类器自由引导


视频分析

任务类型

任务 说明 应用
动作识别 识别视频中人的行为 视频分类
时序检测 检测视频中的事件 异常检测
目标跟踪 跟踪视频中的目标 监控分析
视频分割 分割视频中的物体 视频编辑

动作识别

方法: - Two-Stream:空间流+时间流 - 3D CNN:直接处理时空信息 - LSTM+CNN:CNN提取特征,LSTM建模时序 - Transformer:ViT扩展到时序

目标跟踪

流程: 1. 第一帧初始化目标 2. 后续帧预测目标位置 3. 处理遮挡、形变、尺度变化

主流方法: - SiamFC:孪生网络 - YOLO+跟踪:检测+数据关联 - DeepSORT:深度学习+卡尔曼滤波


计算机视觉应用

自动驾驶

感知系统: - 目标检测(车辆、行人、交通标志) - 车道线检测 - 可行驶区域分割 - 深度估计

代表公司: - Tesla(纯视觉方案) - Waymo(激光雷达+视觉)

医疗影像

应用: - 病灶检测(肺结节、肿瘤) - 器官分割 - 疾病诊断辅助 - 病理分析

挑战: - 数据隐私 - 标注成本高 - 需要可解释性

工业质检

应用: - 缺陷检测 - 尺寸测量 - 装配验证 - OCR识别

优势: - 24小时工作 - 一致性高 - 可检测微小缺陷

零售与电商

应用: - 商品识别 - 货架分析 - 虚拟试衣 - 智能结算


计算机视觉工具

开源框架

框架 特点 适用场景
OpenCV 经典CV库,功能全面 传统CV算法
Pillow Python图像处理 基础图像操作
Detectron2 Facebook出品 目标检测/分割
MMDetection 商汤开源 检测模型库
Ultralytics YOLO官方 YOLO系列

预训练模型

  • ImageNet预训练:通用特征
  • COCO预训练:检测/分割
  • 人脸预训练:人脸识别

发展趋势

当前热点

  1. 视觉Transformer:ViT在CV领域崛起
  2. 自监督学习:减少标注依赖
  3. 多模态融合:视觉+语言
  4. 神经渲染:3D场景生成
  5. 高效模型:移动端部署

未来方向

  • 3D视觉:深度估计、点云处理
  • 神经辐射场(NeRF):3D重建
  • 具身智能:视觉+机器人

小结

计算机视觉是AI最成熟的应用领域之一,从图像分类到复杂的视频分析,技术不断进步。

学习路径: 1. 掌握深度学习基础 2. 学习经典网络架构 3. 实践项目(Kaggle、GitHub) 4. 关注最新论文


延伸阅读