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

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

开课时间:1月1日正式开课,每周定时更新
开课时长:24个课时,12次课
机器学习 基础入门
现价:¥699.00
原价:¥1,099.00

GAN网络:

应用:1、图像上色;

2、图形生成;

3、风格迁移;

4、图像分辨率修复。

问题:不知道原图形的分布等,如何解决?

模型:完全可见信念网络;变分自编码器;GAN

GAN:判别器(判别是否是是真实图片(可导函数))和生成器(根据输入信息生成真实图像)

 

[展开全文]

物体检测:

搜索+分类

原始方法:滑动窗口,但是只能检测固定尺寸的目标;针对变化的尺寸,我们可是使用图像金字塔。

传统的方法:

人工手动特征+浅层分类器

基于深度学习网络:

带有标签的数据+深度神经网络

[展开全文]

目标检测:

数据集:

数据集PASCAL VOC

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

数据集coco

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

怎么评价检测器的性能:

1、Intersection over Union(IoU)交并比

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

2、precision-recall curve(PR曲线)

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

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

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

[展开全文]

深度学习网络:

AlexNet、VGGNet、GoogleNet和Resnet

vggnet滤波器的尺寸减小但个数增加,深度增加;

GOOGLEnet发明了inception网络的宽度增加,去掉了全连接层,降低参数;

Resnet发明了参差层,网络的深度急剧增加,避免了梯度消失。

 

[展开全文]

图像分类:

挑战:1、光照条件;

2、形变;

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

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

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

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

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

图片特征:

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

局部特征:某个部位;

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

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

分类器:svm间隔最大化

更好的特征:CNN特征

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

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

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

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

 

 

 

 

[展开全文]

图像分类:

 

[展开全文]

RPN 网络

卷积输出的为是否有目标的置信度

rpn 中每个pixel 生成9个anchor 与groundtruth 的IOU >0.7 为正例

<0.3为负例

anchor的实际坐标为(x+0.5)*16

(y+0.5)*16,映射到原始的原始的图像

 

预测值为偏移量

计算的groundturnth 与anchor 的偏移量

 

softmax+entropy

网络对应类别的输出,每个anchor都判定这个anchor是否包含物体

label 看IOU>0.7为1 <0.3为0

rpn label 9 个anchor的偏移量

利用

smooth L1 损失计算变差

克服大的误差梯度的影响

propose就有了

 

将Pf 降序排序 取前12000 个框 取NMS后取前2000个框

 

2000个框与交并比大于0.5 前景小于0.5

总共取128个

 

最后用全连接计算类别和回归

 

利用双线性插值,插出来的值,找到该点的值,利用mask

[展开全文]

DCGAN

利用深度卷积模型来生成目标

1、取消所有池华层,利用反卷积上采样

D的网络中,加入步幅为二的卷积

反卷积:

把feature map做padding

把featue map 扩大

 

将输入数据作为0均值,标准化为1 的归一化,可以解决梯度消失或梯度爆炸的问题

 

全连接变为全卷积

G网络 用RELU 最后一层用Tanh

tanh 取值范围更大,具有对称性

 

D的判别用sigmod函数

 

RELU 和 leakrelu

relu x<0 输出为0,

leakrelu 输入加了很小的参数,

 

D、G均用了batch normalrelize

 

AC-GAN

限定生成某一类的物体

噪声串联一个label 的到新的,并且送入到生成器中

 

判别器不但要判别真假,还要判别类别

 

image2image

图像对,用来训练

生成器改为u-Net,根据不同的标签,将图像生成

判别函数也用图片对来做判别

[展开全文]

生成对抗网络:分割迁移

超分辨率图像修复

补全残缺数据

 

对抗生成模型:

利用高斯噪声采样,生成高维模数据

判别器

生成器

判别输入图像是否为真实图像,输出为真实图像的概率,输出为1 真实,0 判别为generator的图像

判别器训练,尽可能让判别器能够判断出假的图像D(G(z))->0

 

生成器对信息(输入噪声/)生成真实他图像,生成器尽可能输出的结果去迷惑生成器,使得判别器无法判别

以至于生成器可以生成最接近真值图像的网络

 

 

100 维噪声 全连接层1024维

reshape n*n*m

w,h不断变大,channel值不断减小

转置卷积(反卷积的操作)

 

最终生成为H*W*3的图像

 

判别器

 

minmaxV(D,G)

生成器训练判别器是生成器参数固定

同理判别器训练生成器的时候判别器的参数也固定

 

采样m个noisy

采样m个x真值

先训练k次D

再训练K次G

求导

 

两个数据分布的

JS散度,表明的是数据分布的距离

生成器优化min Ezlogd(1-g(z))

0~-无穷

当判别器很好的判别的时候,其很容易接近1/0容易造成梯度消失

min Ez(-logD(g(z)))

0~正无穷

优化目标不合理,容易生成很少类别的图片

model collapse

 

W-GAN

另一种衡量标准,werssitan distance

 

 

[展开全文]

课时6笔记:

人脸识别——deep learning age

1. 人脸识别流程

a. 检测

b. 对齐

c.特征提取

d.识别

2. 检测

1)回归

2)proposal+分类+合并

3)关键点检测

3.对齐(三个点即可 )

不共线的三对对应点决定了一个唯一的仿射变换

仿射变换

4.特征学习

1)Triplet Loss “ 同类相近,异类相远”

2)度量学习

5. 识别

1)人脸验证

2)人脸检索

6.回归问题

回归需要用UPDM loss

分类需要用softmax loss

[展开全文]

人脸检测(上)——前深度学习时代

 

1. 为什么选择人脸识别?

    容易采集。

2. 人脸识别缺点?

    计算复杂(算法的事),安全性低(伪造)

3. 人脸识别防伪技术——活体检测

  【问】支付宝的,眨眼,低头,转头,是活体检测技术吗?

4. 人脸识别应用有哪些?

    1:1比对,刷脸登录,如检票,登录

    1:N比对(10^2-10^3),智能门禁,如打卡

    1:N比对(N>10^9),智能寻亲

5. 人脸识别要解决的问题?

    1:1人脸识别-两个人是否为同一个人?

          [input:两张图片; output:是或否]

    1:1人脸检索-在数据库中找到同一个人?

          [input:query; output:ranked list]

6.特征表达

[展开全文]

1. 卷积神经网络介绍

2. 用caffe实战——图像分类

【问题1】卷积核大小的选择动机?

【问题2】con3-64?

3X3的卷积核,64通道

【问题3】什么是残差网络?

H(x) = F(x) + x

例:

5映射到5.1

F'(5)=5.1

H(5)=F(5)+5=5.1

F(x)=0.1

F'为引入残差前的映射,F为引入残差后的映射

【问题4】为什么说FC的参数过多,容易过拟合?

【问题5】怎么理解不同平台下(caffe版)的Alexnet的权重?

[展开全文]

计算机视觉应用:图像识别、目标检测、分割

VGGNet GoogleNet ResNet DenseNet

深度学习开发平台:Torch,TensorFlow,Caffe,MatConvNet Theano

[展开全文]

1. 图像分类介绍

1) 把图像归为某一类

2)图像分类的挑战:

   a.光照变化 

   b.形变

   c.大小变化(尺度)

   d.类内变化

【问题1】图像分类的应用场景有什么?

【问题2】a.深度学习,学习的图像特征效果更好,具体就是泛化能力更好,这里的“学习”怎么理解?特征表示更好是什么意思?

b. 为什么深度学习提的特征对遮挡有效?

个人理解:深度学习的特征是更高层的语义特征

 

2. 图像分类的定义

                y = f(x)

3. 图像特征

1)传统方法及特征:

颜色、全局形状、局部形状、纹理

SIFT特征、HOG特征、LBP特征、Harr特征(这些特征维度很低)

http://www.olfeat.org

 

4. 支持向量机

5. CNN特征

【问题3】为什么CNN特征对遮挡有效?

传统的特征为什么不行?

物理意义上怎么理解?

(在维度上的解释)

个人理解:CNN特征拿到了语义特征

6. 用神经网络做图像分类

【问题4】每层网络做非线性操作,在前传的过程中,达到了什么效果?

在数学上,非线性函数主要用来解决什么问题?

 

【问题5】1X3072这个向量是如何得来的?

 

【问题6】 全连接层作为输出层。Sigmoid函数作为输出层。怎么理解一个函数可以作为一个全连接层?

 

【问题7】损失函数的物理意义是什么?

 

7. 神经网络达到了实用的效果。深度学习让计算机视觉得到了广泛的发展。

 

[展开全文]

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. 课程介绍

按照算法演进的过程

建议:通过博客来学习

[展开全文]

Segmentation includes semantic segmentation and instance segmentation.

Semantic segmentation requires telling which category each pixel falls while instance segmenation requires separating each object.

We can use IoU to evaluate the performance of one object and use mean IoU to evaluete the general performance on the entire image.

Segmentation is widely used in areas like remote sensing, medeical image analysis , scene understanding and SLAM etc.

traditional method includes: graph-cut, super-pixel segmentaion and edge detection etc.

modern method: finding a mapping between certain input X and P(i,j) where i, j means each pixel. The output is a tensor of shape [w, h, k] where k means number of classes.

this mapping is normally realized using Fully Convoluitional Networks, also known as FCN. 

But how to find out the perfect mapping?

1. Large number of traininng samples;

2. resonalble loss;

3, optimization method.

As it is fundamentally a classification problem, we should use cross-entropy loss to meausre the mismatch between label and output. the loss is not a scalar, but a matrix as each pixel has a scalar output.

something we need to note:

1. why batch norm?

increase nonlinearity, improve noise resistance, prevent overfitting.

2. why pooling during downsampling?

improve receptive field, decrease parameters.

3. softmax in the last layer.

1.deconv:  apply conv after apply padding .

2.context shareing : introduce the help from other image levels.

example: Pyramid scene parsing network (best performance in cityscope) also known as PspNet.

3.Full-resolution residual network.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Instance Segmentation Problem:

Approaches:

1. Mask R-CNN

2. detect the edge of each object  -> Deep Watershed Transform.

The output of Direction Net outputs the direction of each pixel towards the nearest boundary inside each object.  Each direction can be represented as the combination of two channels vector field.

3. Instance-sensitive fully convolutional networks.

 

[展开全文]

相关课程

开课日期:2018-11-28 20:00开始
5196
开课日期:2018-07-31 20:00开始
3578

授课教师

上海交通大学五年级博士
上海交通大学 博士