如果深度学习的源数据为图像数据时,首先需要对图像做数据预处理,最常用的图像预处理方法有两种,正常白化处理又叫图像标准化处理,另外一种方法为图像归一化处理,本文将对这两种预处理方法进行简要介绍。

1 图像标准化

图像标准化处理公式如下:

\text{image} = \frac{image - \mu }{max(\sigma ,\frac{1.0}{\sqrt{N} } )}

其中,image为输入图像,\mu为图像均值,\sigma为标准方差,N为图像的像素数量。

图像标准化是将图像数据通过去均值实现中心化的处理,根据凸优化理论与数据概率分布相关知识,数据中心化符合数据分布规律,更容易取得训练之后的泛化效果, 数据标准化是数据预处理的常见方法之一。

2 图像归一化处理的方法

对图像数据进行归一化处理不会改变原有图像的分布,但是会有利于深度学习网络进行处理,有利于加快模型收敛速度。

2.1 数据归一化到[0,1]之间

此种方法将图像数据所有通道的数据全部除以255.0,将图像数据的数值归一化到[0.0,1.0]之间,这是属于常规的图像数据归一化方式,本质上是一种min-max归一化方法。

\text{image} = \frac{\text{image} }{255.0}

2.2 数据归一化到[-1,1]

此种方法将图像数据所有通道数据先除以127.5,然后减去1.0,将图像数据的数值归一化到[-1.0,1.0]之间,本质上是一种z-score标准化,输入有正值有负值,可以加快模型训练。

\text{image} = \frac{\text{image} }{127.5} - 1

3 图像标准化与图像归一化的比较

对图像进行归一化实际上是将图像所有数值压缩到一个范围,其操作只受所使用的最小值最大值的影响;而图像标准化与每一个像素点的值都有关系,通过图像的均值和标准差对图像中的所有点的像素值进行影响。

图像在进行归一化后,不同维度之间的特征在数值上有一定比较性,可以大大提高分类器的准确性。
图像在进行标准化后,最优解的寻优过程明显会变得平缓,更容易正确的收敛到最优解。