首页 AI学术青年与开发者社区

计算机视觉基础入门课程(从算法到实战应用)

开课时间:所有课时已更新完成,可随时开始学习
开课时长:24个课时,12次课
机器学习 基础入门
会员免费
现价:¥699.00
原价:¥999.00

  开通会员,立省699元 立即开通

  当前课程,会员领券立减59元>>

该课程已关闭

图像分类:

挑战:1、光照条件;

2、形变;

3、同一类的多种展现形式。

定义:基于误差最小化构建分类函数模型,然后使用模型预测。

如何评价分类器的好坏:泛化能力

如何提高泛化能力:通过特征描述图像。

三部曲:a)提取特征;b)根据数据和标签训练分类器;c)预测分类。

图片特征:

全局特征:颜色直方图,形状;

局部特征:某个部位;

纹理特征:经过滤波得到纹理。

例如:sift(局部特征)、hog(检测)、LBP(人脸识别)、harr

分类器:svm间隔最大化

更好的特征:CNN特征

原因:学习出来的CNN特征具有更好的泛化能力,具有平移、尺度、旋转等不变性,鲁棒性比较好。

如何学习CNN特征:构建神经网络。

构建卷及网络:激活函数;卷基层(底层特征、中层以及高层);池化层;全连接层;损失函数

误差反传:正传计算出损失;反向传播误差,计算梯度和更新参数。

[展开全文]
zzy1030 · 2019-03-13 · 图像分类介绍 2

人脸识别上中老师提到对于每一张图像,要减去平均脸,老师的解释为降低variance,我觉得这里应该是降低bias。

 

特征脸组成了将维特征子空间,之后对于新的图像可以将每一章图象投影到特征子空间,来获得坐标参数,而这些参数即为低维表达。

 

特征脸的一大缺点就是表达能力有限,因为毕竟子空间有一定信息丢失。深度学习方法要好很多,因为其泛华能力要比传统方法好很多。

 

cs229 可以进行进一步了解。

[展开全文]

人脸识别的时代 如何进行人脸识别?

具体流程如下:

1.找到人脸,也就是人脸检测,用bb表示;

2.有了bb表示的人脸,将人脸对齐,也就是变换为水平方向放置;

3.有了对齐的人脸,可以提取特征;

4.之后进行识别;

 

各部分难点如下:

1.人脸提取:人脸有尺度,肤色,遮挡,角度,光照等等问题;人脸检测有两种解决方式,一种用回归方法来解决,具体是学习一个f(Image)=[x,y,w,h]函数来进行BB检测,但是问题是这种方法输入可能只能是一张图片,对于一张图片上有几千张脸这个函数的复杂度会很高;第二种人脸检测方法是基于proposal的方法,类似FCNN中的region proposal,有了多个滑窗,我们可以用二分类器来进行是否为人脸的判断,判断出来的滑窗可以进行进一步滑窗融合来实现最终的人脸bb检测。当然这个proposal的生成也有多种方法,可以基于grid按照固定步长产生,也可以使用selective search进行处理(我自己的观点)。有了几个人脸的proposal,我们使用NMS进行region合并。NMS的具体原理就是,对于每个bb,我们都能得到一个置信度,选置信度最高的bb,之后将与这个bb重合面积大于一定阀值的bb进行剔除。

2.人脸对齐:个人理解是希望给人脸识别提供一个强先验,我们希望学习的是人脸身份信息,而不是人脸的位置信息。如何对齐?首先要进行关键点监测,检测到两只眼睛和嘴角或嘴巴中心的三个点的位置,只需要三个点是因为二维平面内只需要三个点就可以确定一个仿射变换,前提是三点不共线。总的来说就是如果知道三点的位置而且三点不共线,可以确定一个二维平面内的仿射变换。经过仿射变换就可以得到一个对齐的图片。不过一般使用五个点,两个眼睛,鼻头,嘴唇两个点。特征点的选取可以使用cnn来做,具体的误差函数可以是欧几里得距离或者softmax损失函数,cnn的输出结果就是五个点的具体位置。一般来说cnn的结构是cnn级连的,效果较好。

3.人脸识别:有了对齐的脸,可以进行特征学习,基本架构为cnn+分类层,这种网络架构有一个问题就是网络参数绝大部分都在后面的全连接层,而cnn层的参数较少。google提出的FaceNet使用triplet loss进行网络学习。

每一个triplet loss由三张图片构成:anchor,negative以及positive。基本思想是学习一个特征表达,使得positve和anchor的距离小于anchor和negative的距离。这种loss是直接对于距离进行学习,而不是学习softmax。

4.人脸验证:

a)给定两张人脸图片,判断是否为同一个人。可以用欧氏距离,余弦距离等判断。注意,判断方法和训练方法中的距离计算要保持一致。不过这种方法用来判断是不是一个人并不是一个很好的方法。Joint Bayesian可能是一种比较好的方法,这种方法学术上用的比较广泛,工业界一般使用余弦距离或者欧氏距离。

b)给定一张人脸图片,判断身份。为了提高搜索速度,我们可以使用hash编码来对人脸特征进行处理,得到只包含01的向量,比对时是需要使用向量之间的汉明距离。

[展开全文]

挑战:光照,形变,大小尺度,类内变化
分类任务:y=f(x)
f是预测函数,x是图像特征。需要训练这样的f分类框架。
为了提供模型的泛化能力,需要对图像的特征进行很好的刻画。训练集应该尽可能多的包含样本不同形态,不能以RGB图像扔进网络,而是图像特征。

**手工设计的特征:**
全局特征:颜色、形状(把形状扣出来,加一个PCA的降维);
局部特征:shape context、纹理(很多目标有均匀分布的纹理,gabor对纹理特征提取)
**SIFT特征**:局部特征,128维,计算一个小的图像区域,分成4×4的16个格,每个格子计算一个8维的梯度vector,然后将16个vector拼成一个128的特征。主要用于**图像分类**、**图像匹配**。
**Hog特征**:可以很好地捕捉目标的形状,用于**检测**、**目标跟踪**。
**LBP特征**:对局部区域进行编码,用于**人脸分类**。
**Harr特征**:多个滤波器,对不同部分有不同相位。

[展开全文]

目标检测:

数据集:

数据集PASCAL VOC

特点:目标稀少,类别简单(20类)

数据集coco

特点:目标稠密,类别较多(80类)

怎么评价检测器的性能:

1、Intersection over Union(IoU)交并比

当真实与预测的IOU大于0.5时说明检测器成功预测出目标的位置。

2、precision-recall curve(PR曲线)

改变置信度的阀值计算精度和召回,做出曲线

特点:整体趋势随着召回率的增加精度下降,但局部会发生增加现象。

原因:整体下降:随着置信度阀值的降低召回率基本不变,而精度会逐渐降低;局部增加:整理中含有假真例子还造成局部增加。

[展开全文]

计算机视觉概述和深度学习简介

• 1. 计算机视觉回顾
定义:计算机视觉(computer vision)是从图像和视频中提出数值或符号信息的计算系统,更形象一点说,计算机视觉是让计算机具备像人类一样的眼睛,看到图像,并理解图像。

主要内容:

图像识别 image classification

eg:车牌识别,人脸识别

目标检测 object detection=classification + localization(图像识别的进一步发展)

eg:行人检测,车辆检测

分割:图像语义分割,个体分割=检测+分割

视觉目标跟踪(Tracking)

视频分割

图像风格迁移

生成对抗网络(GAN)

如何实现直播换脸

视频生成(应用无人驾驶,电影拍摄)

• 2.深度学习简介
• 3.课程介绍

本课程将系统的介绍计算机视觉的图像识别,目标检测,图像和视频分割,目标跟踪,图像和视频生成。并结合深度学习讲解实现这些任务需要的算法,模型以及实战应用。
图像识别:
Alexnet, VGGnet, GoogleNet, ResNet, RetinaNet
目标检测:
Fast-rcnn, faster-rcnn, Yolo, Retina-Net
图像分割:
FCN,Mask-Rcnn
目标跟踪:
GOTURN, ECO
图像生成:
GAN,WGAN
光流:
FlowNet
视频分割:
Segnet

 

 

[展开全文]

课时10 目标检测原理与应用(中)

怎么实现物体检测

物体检测:搜索+分类

传统检测方法:

滑动窗,提取窗口内的部分进行物体检测。

框的大小固定,将图像resize为各种大小的图片集合(图像金字塔),使得框内的部分大小变化,从而实现用固定大小的框检测不同大小的物体

 

传统方法

论文1 Robust Real-Time Face Detection

使用了滑动窗+图像金字塔

Haar特征,用白框的像素值减去灰框中的像素值,得到的结果是该区域的Haar特征值

级联分类器

论文2 Deformable Part Models----------

特征HOG

分类器SVM

 

深度学习方法

论文1 R-CNN-------------------

传统方法与神经网络结合,使用传统方法生成候选区域,resize后,送入CNN分类。

主要贡献:用CNN取代了原来的特征提取和分类器。

论文2 Fast RCNN-------------------

RCNN的问题是会重复计算。

FastRCNN将图片送入CNN,得到特征图,

使用了ROI pooling,转为固定尺寸的大小

主要贡献:避免了相同区域的特征重复提取

论文3 Faster RCNN-------------------

引入了RPN结构

论文4 R-FCN------------------

论文5 YOLO-------------------

对一张图片直接计算回归,得到bb的位置和类别

论文6 SSD-------------------

可以看做强化版的RPN

用不同阶段的特征图进行预测,所以可以检测不同尺度的物体。

论文7 FPN-------------------

多尺度检测

将深层的特征图与浅层的特征图相加,提升表达能力。

论文8 Mask RCNN-------------------

论文9 Focal Loss-------------------

one stage准确率低于two stage的原因:

样本不均衡,负样本太多

 

 

 

 

 

 

[展开全文]
模型泛化能力
遮挡、尺度、旋转、位移不变性
颜色直方图
全局轮廓特征
局部轮廓特征
滤波器 纹理信息
神经网络:
神经元:激励函数Sigmoid ReLU
卷积:
输出 = ( 输入 + 2 * pad - kernel_size )/ stride + 1
pad:填充
池化:特征更加紧凑,位移不变性 maxpooling
全连接层:网络最后
损失函数:交叉熵、SOFTMAX、欧式距离、 
 
[展开全文]

1. CV回顾

(1)计算机视觉定义:看到图片理解图片的系统

【问题】人类是怎么分类的?(过程原理)

 

(2)计算机视觉三大任务:

         a. 识别:车牌、人脸(精细:表情)

         b. 目标检测:行人、车辆

             object detection 

             = localization + classification

         c. 分割:语义分割、个体分割

                   (个体分割更难=检测+分割)

 

(3)计算机视觉其他任务

         I. 视频目标跟踪(单/多目标、车辆)

         II. 视频分割(静态图片在时态域)

 

(4)计算机视觉的应用

  • 风格迁移(风景画->艺术画)

代表技术GAN,【预测孩子.app】

  • 视频换脸
  • 视频生成(预测:股票、无人车、静态人走起来)         

 

2. 深度学习简介

1) 代表性模型

 2006 Hinton --- BP

 2012 Hinton --- CNN

1989                    RNN (预测、决策)

1997                    LSTM(预测、决策)

2)发展情况

人脸识别:-->错误率超越人类,0.5%

图像分割:-->50%—75% 交并比

看图说话:

3)网络模型

VGG,Google,Res,Dense

【为什么模型这么发展?期待后面哲学层面的解释】

4)开发平台

Torch(Pytorch),TensorFlow,Caffe,MatConvNet

 

3. 课程介绍

按照算法演进的过程

建议:通过博客来学习

[展开全文]

得到了数据首先需要进行人脸对齐:

1.关键点监测:MTCNN可以同时进行人脸检测和对齐

[展开全文]

相关课程

开课日期:深度学习鼻祖Hinton公开课视频,随到随学开始
免费课 29882
开课日期:2020-07-04 08:50开始
4906

授课教师

暂无教师
微信扫码分享课程