【深度学习基本概念】上采样、下采样、卷积、池化

【深度学习基本概念】上采样、下采样、卷积、池化

上采样

概念
上采样(upsampling):又名放大图像、图像插值;

主要目的是放大原图像,从而可以显示在更高分辨率的显示设备上;

上采样有3种常见的方法:双线性插值(bilinear),反卷积(Transposed Convolution),反池化(Unpooling);

原理
上采样原理:

图像放大几乎都是采用内插值方法,即在原有图像像素的基础上在像素点之间采用合适的插值算法插入新的元素。

插值算法还包括了传统插值,基于边缘图像的插值,还有基于区域的图像插值。

下采样

概念
下采样(subsampled):又名降采样、缩小图像;

主要目的有两个:
1、使得图像符合显示区域的大小;
2、生成对应图像的缩略图;

其实下采样就是池化;

原理
下采样原理:

对于一副图像Ⅰ尺寸为MN,对其进行s倍下采样,即得到(M/s)(N/s)尺寸的分辨率图像,当然,s应该是M和N的公约数才可以;

如果考虑是矩阵形式的图像,就是把原始图像s*s窗口内的图像变成一个像素,这个像素点的值就是窗口内所有像素的均值或者最大值(也就是Pooling池化操作等)。

对图像的缩放操作并不能带来更多关于该图像的信息, 因此图像的质量将不可避免地受到影响。然而,确实有一些缩放方法能够增加图像的信息,从而使得缩放后的图像质量超过原图质量的。

Pk = Σ Ii / s2

其实下采样就是池化。

采样层是使用 pooling 的相关技术来实现的,目的就是用来降低特征的维度并保留有效信息,一定程度上避免过拟合;

但是pooling的目的不仅仅是这些,他的目的是保持旋转、平移、伸缩不变形等。采样有最大值采样,平均值采样,求和区域采样和随机区域采样等;

池化也是这样的,比如最大值池化,平均值池化,随机池化,求和区域池化等。

卷积

一次卷积运算指的是:如下图,当我们有一个过滤器(黄色矩阵块,又称卷积核,也是矩阵);

移动卷积核,将这个方块对应要处理的输入矩阵的一部分,位置一一对应相乘,然后把结果再相加得到一个数;

image

图源:Convolution schematic

上面这幅图是对一个55的矩阵进行33的矩阵的卷积;

那么就从左上角到右下角,生成卷积之后的矩阵的大小是(5-3+1)*(5-3+1)的矩阵,生成之后的矩阵的元素值,是之前的两个矩阵对应元素的乘积之和;

池化

池化最直观的作用便是降维,常见的池化有最大池化、平均池化和随机池化;池化层不需要训练参数;

最大池化可以获取局部信息,可以更好保留纹理上的特征;如果不用观察物体在图片中的具体位置,只关心其是否出现,则使用最大池化效果比较好。
平均池化往往能保留整体数据的特征,能凸出背景的信息。
随机池化中元素值大的被选中的概率也大,但不是像最大池化总是取最大值。随机池化一方面最大化地保证了Max值的取值,一方面又确保了不会完全是max值起作用,造成过度失真;除此之外,其可以在一定程度上避免过拟合。
如下图,左侧是44的矩阵,要进行大小为22的池化;

Max pooling,即对邻域内特征点只求最大值;

Average pooling,即对邻域内特征点只求平均值;

image


参考:
https://blog.csdn.net/tingzhiyi/article/details/114368433
https://gsy00517.github.io/computer-vision20200202133216/
https://www.cnblogs.com/cy0628/p/14192078.html

posted @ 2022-08-28 11:48  michaelchengjl  阅读(1994)  评论(0编辑  收藏  举报