计算机视觉 与 OpenMMLab 开源算法体系 | 学习笔记

179 阅读4分钟

计算机视觉 与 OpenMMLab 开源算法体系 | 学习笔记

内容概括

计算机视觉是什么

  • 概念

    • 计算机视觉是一门让计算机学会 "看"的学科,研究如何自动理解图像和视频中的内容
  • 应用

    • 动漫特效、航拍转地图、虚拟主播、视频理解与自动剪辑等

计算机视觉的发展

概述

阶段时期代表
早期萌芽1960~1980
  • Machine perception of 3d solids Larry Roberts 1964
  • 三维的视觉计算理论 David Marr 1982
统计机器学习与模式识别1990~2000
  • Eigen Face Turk & Pentland 1991
  • Haar 小波特征
  • Adaboost 级联分类器
  • VJ 人脸检测 Viola & Jones 2001
视觉特征
  • Local Binary Pattern
  • Scale Invariant Feature Transform
  • Histogram of Oriented Gradients
ImageNet 大型数据库2006ImageNet
初有成效的视觉系统~2010
  • ImageNet Classification 72% Top-5 Accuracy NEC-UIUC 2010
  • Deformable Part Model for object detection
深度学习的时代2012~
  • AlexNet 突破传统视觉系统性能
  • Fast R-CNN 目标检测走入深度学习时代
  • 深度生成对抗网络实现图像生成
时至今日
  • 文字描述生成图片
  • 视觉大模型
  • 神经渲染 CityNeRF

规律

开源成为人工智能领域发展引擎

O p e n M M L a b 深 度 学 习 时 代 最 完 整 的 计 算 机 视 觉 开 源 算 法 体 系

OpenMMLab 总体现状

  • 提供统一先进的底层架构
  • 覆盖计算机视觉众多方向
  • 提供最经典、最前沿的算法支持
  • 提供统一的基准和开箱即用的工作

总体架构概览

架构概览
部署框架MMDeploy
算法框架
  • MMClassification 图像分类
  • MMDetection 目标检测
  • MMDetection3D 3D目标检测
  • ……
  • 20+ 视觉算法库
视觉基础库 MMCV
  • 公用底层模块
  • 抽象训练接口
训练框架PyTorch

算法训练

部署一体化

OpenMMLab 2.0

整体介绍

  • 通用
  • 灵活
  • 开放统一
  • 迭代计划

2.0架构

架构概览
部署框架MMDeploy
算法框架
  • MMClassification 图像分类
  • MMDetection 目标检测
  • MMDetection3D 3D目标检测
  • ……
  • 30+ 视觉算法库
基础库
  • MMCV 神经网络算子 数据增强
  • MMEngine 训练引擎 评测引擎 模块管理
训练框架PyTorch

机器学习和神经网络简介

机器学习基础

机器学习是什么

  • A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P if its performance at tasks in T, as measured by P, improves with experience E."——Tom M. Mitchell (1997)
  • 从数据中学习经验,以解决特定问题

机器学习的典型范式

  • 监督学习

    • 数据之间存在某种映射关系,如何基于有限的数据样本推断出这种关系?
  • 无监督学习

    • 数据自身是否存在某种“结构”或“规律”?
  • 强化学习

    • 如何与环境交互,以获得最大收益?

机器学习中的分类问题

  • 特征与分类

  • 线性分类器

  • 如何求解分界面

  • 感知器 Perceptron:从数据中学习

  • 机器学习的基本流程

    • 训练
    • 验证
    • 应用

神经网络的结构

  • 线性分类器与非线性分类器
  • 异或问题
  • 非线性分类器
  • 神经元
  • 多层感知器
  • 多分类任务

神经网络的训练

  • 衡量神经网络的性能

    • 损失函数
  • 调整 𝑤,降低损失函数的值

    • 梯度下降算法
    • 梯度的计算
    • 反向传播算法
    • 梯度下降算法的具体实现
    • 梯度下降算法存在的问题与改进:优化器
    • 自适应梯度算法
    • ……

卷积神经网络

  • 卷积神经网络的整体结构

    • 卷积层 Convolutional Layer

      • 卷积的变形
      • 卷积的边缘填充
      • 卷积的步长
    • 激活层 Activation Layer

      • 常用激活函数
    • 池化层 Pooling Layer

    • 全连接层 Fully Connected Layer

    • 概率输出层

    • 特征与分类的角度理解CNN

Pytorch环境配置与基础使用

  • PyTorch 介绍

    • PyTorch 是由 Facebook 开发的开源 深度学习框架。
    • PyTorch 提供了完整的工具链用于构 建、训练和部署深度学习模型。
    • pytorch.org/
  • PyTorch 环境配置

  • PyTorch 的基本模块

    • 数值计算库 torch

      • 自动求导 torch.autograd
      • 函数库 torch.nn.functional
      • 通用模型封装 torch.nn.Modul
      • 优化器 torch.optim
      • 数据工具 torch.utils.data
      • PyTorch 神经网络 demo 演示及讲解
    • ……

课程链接:

www.bilibili.com/video/BV1Ty…