对png的caffe.io.load_image()
函数调用返回一个numpy 3d数组,rgb值为0-1范围内的标准化浮点值,而不是0-255。
这是吗
- 将图像加载到类似阵列的结构中时的常见做法
- 与caffe网络层如何使用图像有关
- 与png文件的存储方式有关
感谢
将像素值归一化到范围[0..1]
(而不是[0..255]
(不仅在深度学习中是常见的做法,在图像处理/计算机视觉的其他领域也是常见的做法
之所以这样做,主要是因为原生uint8
像素值不容易使用-uint8
容易上溢/下溢。因此,在[0..1]
范围内将像素值转换为float
类型更方便。
为了应对深网中的消失/爆炸梯度,有许多理论论文分析了激活值的分布(例如,见本工作(。这些工作通常假设值的正态分布,因此就是缩放。你还会遇到许多网络,除了缩放网络之外,还会从输入中减去"图像平均值"。