一、标准化处理与归一化
对图像做数据预处理,最常见的对图像预处理方法有两种:
(1)白化处理(图像标准化处理);
图像标准化是将数据通过去均值实现中心化的处理,根据凸优化理论与数据概率分布相关知识,数据中心化符合数据分布规律,更容易取得训练之后的泛化效果,数据标准化是数据预处理的常见方法之一。
(2)归一化处理。
归一化不会改变图像本身的信息存储,取值范围从0~255已经转化为0~1之间。
源码:
import numpy as np
import cv2
pic_path = 'F:/a.jpg'
def normalization(input):
pic = cv2.imread(input)
pic = pic.astype(np.float32)
# zero-center
pic -= [np.mean(pic[..., 0]), np.mean(pic[..., 1]), np.mean(pic[..., 2])]
# normalize
pic /= [np.std(pic[..., 0]), np.std(pic[..., 1]), np.std(pic[..., 2])]
print(pic[..., 0])
pic *= (pic>0)
pic *= 100
pic = pic * (pic<=255) + 255 * (pic>255)
pic = pic.astype(np.uint8)
print(pic[..., 0])
#cv2.imshow('',