计算机视觉的深度学习实战-前言

计算机视觉的深度学习实战

更多精彩内容请关注微信公众号:听潮庭
计算机视觉的深度学习实战-前言_第1张图片

一、概述

  • 计算机视觉概述

    • 高度复合学科:工程、计算机科学、数学、心理学、生物学

    • 图像处理、机器人、神经科学、认知科学、机器学习、计算机图形学、信息获取、算法、硬件系统;

    • 两个主要研究维度:

      • 语义感知(semantic):

        • 分类 Classification :物体、属性、场景等
        • 检测 Detection:物体、行人、人脸等
        • 识别 Recognition:物体:车牌,文本;人:人脸、指纹、虹膜、步态、行为等;
        • 分割 Segmentation
        • 检索 Retrieval:以文搜图、以图搜图、图文联搜
        • 语言 language:图片描述,图片问答等;
      • 几何属性(Geometry):VR

        • 3D建模
        • 双目视觉
        • 增强现实

  • 研究挑战

    • 光照变化
    • 尺度变化
    • 形态变化
    • 背景混淆干扰
    • 遮挡
    • 类内物体的外观差异

  • 简介

    • 部分一:计算机视觉的基础

      • 图像预处理
        • 图像显示与存储原理
        • 图像增强的目标
        • 点运算:基于直方图的对比度增强
        • 形态学处理
        • 空间域处理:卷积
        • 卷积的应用(平滑、边缘检测、锐化等)
        • 频率域处理:傅里叶变换、小波变换
      • 图像特征及描述
        • 颜色特征:量化颜色直方图、聚类颜色直方图;
        • 几何特征:Edge(边缘)、Corner(角点)、Blob(斑块)
        • 基于关键点的特征描述子:SIFT、SURF、ORB;
        • 其他特征提取:LBP、Gabor
      • 深度学习之前的方法
        • 图像分割
          • 基于阈值、基于边缘
          • 基于区域、基于图论
        • 人脸检测
          • Haar-like特征+级联分类器
        • 行人检测
          • HOG+SVM
          • DPM

    • 部分二:深度学习的理论基础

      • BP神经网络详解
      • 深度学习基础
        • 神经网络
          1. 神经元
          2. 前馈网络
          3. 梯度下降
          4. 误差反向传播
        • 深度学习
          1. 与传统神经网络的区别
          2. 目标函数
          3. 改进的梯度下降
          4. 避免过适应

    • 部分三:深度学习在计算机视觉中的应用

      • 图像分类:卷积神经网络CNN
        • CNN:
          1. 计算机视觉中的基础网络
          2. 有监督深度模型时代的起点
          3. AlexNet->VGG->GeogleNet->ResNet->ResNeXt
          4. GeogleLeNet
          • Inception V1->V2->V3->V4
          • Inception ResNet V1->V2
          1. 结构趋势
          • 更深(Depth):8层->1000+层
          • 更宽(Width):1分支->4+分支
          • 更多基数(Cardinality):1->32
      • 图像检测:区域卷积神经网络R-CNN
        • 让基础网络具备区域输出能力
        • 第一阶段:R-CNN->SPP-Net->Fast/Faster R-CNN
        • 第二阶段:YOLO->SSD->R-FCN
        • 目的:检测更快、更准确
        • 工业应用:
          • 智能监控
          • 辅助驾驶
      • 图像分割:全卷积神经网络FCN
        • FCN:
          1. 让基础网络做像素输出
          2. FCN->SegNet/DeconvNet->DeepLab
          3. 反卷积/转置卷积
        • 目的
          1. 语义推断
          2. 分割更精确
        • 工业应用

          1. 辅助驾驶
          2. 对医学、生物影像中的器官、组织或细胞进行分割,及判断出影像中的每一个像素点是否属于器官、组织或细胞
          • 生物医学领域的图像分割:U-Net和V-Net
      • 图像描述:迭代神经网络RNN
        • 递归神经网络RNN
          1. 具有记忆功能,构建不定长序列数据的模型
          2. Vanilla RNN->LSTM->GRU
          3. 应用范围
          • 文本序列
          • 区域序列
          • 视频序列
          1. 研究问题
          • 图片描述、问答
          • 机器翻译
      • 图像生成:生成对抗网络GAN
        • 图片生成
          1. 样本分布学习
          2. 超分辨率
          3. 以图生文
          4. 语义分割
        • 生成对抗网络GAN
          • 网络结构
            • 生成器网络(Generator)
            • 判别器网络(Discriminator)
          • 网络改进
            • GAN->CGAN->DCGAN->wGAN
            • SRGAN
          • 应用范围:
            • 样本数据分布(生成)学习
            • 有监督问题的优化
  • 开源库与应用环境介绍

    • Anaconda Python 3.6
    • OpenCV 3.4+
    • TensorFlow 1.9+
    • DNN模型实践
      1. VGG、ResNet、
      2. Faster R-CNN、YOLO
      3. DeepLab、U-NET
      4. Show-and-Tell
      5. GAN
  • 参考书

    • Python基础教程 第二版
    • OpenCV3 计算机视觉:Python语言实现
    • TensorFlow实战
    • 深度学习 goodfellow的花书
    • 深度学习轻松学 核心算法与视觉实践
  • 环境搭建

    • Windows

      • OpenCV 3.4
      • Python 3.6+
      • TensorFlow 1.9+
      • Keras等
      • 开源库介绍:
        • OpenCV
          1. 函数库:计算机视觉、机器学习
          2. 优化算法2500+
          3. 编程语言:C、C++、Java、Python、Matlab
          4. 并行计算:CUDA、OpeenCL
        • Caffe:
          1. 函数库:深度学习
          2. 发布方:BVLC
          3. 编程语言:C++、Python
          4. 并行计算:CUDA
          5. 特色:
          • 在配置中定义模型并优化,不需要硬编码
          • 代码的可扩展性强
          • 运行速度非常快
        • Torch(PyTorch)
          1. 函数库:深度学习
          2. 发布方:Facebook
          3. 编程语言:Lua(Python)
          4. 并行计算:CUDA
          5. 特色:
          • 使用动态计算图,提供了更快速地方法
          • 提供了运行在GPU/CPU之上、基础的张量计算操作库;
          • 支持共享内存的多进程并发(multiprocessing)库
        • TensorFlow
          1. 函数库:深度学习
          2. 发布方:Geogle
          3. 编程语言:Python
          4. 并行计算:CUDA
          5. 特色:
          • 多级、多GPU分布式
          • 适用于超大模型,超大数据集
          • Tensorboard将训练过程可视化
          1. TensorFlow最简教程
          • 使用图graph来表示计算任务
          • 在被称之为会话session的上下文context中执行图
          • 使用张量tensor表示数据
          • 通过变量variable表示数据
          • 使用feed和fetch可以为任意的操作赋值或者从其中获取数据
          • 占位符
        • Keras
          1. 函数库:深度学习

          2. 编程语言:Python

            特色:

            • 兼容Theano和TensorFlow的深度学习高级包
            • 用户友好,高度模块化,易扩展性

你可能感兴趣的:(计算机视觉,深度学习,计算机视觉,深度学习,图像分割)