2 归一化 / Normalized
1、什么是归一化?
所谓图像归一化, 就是通过一系列变换, 将待处理的原始图像转换成相应的唯 一标准形式(该标准形式图像对平移、旋转、缩放等仿射变换具有不变特性)。
2、为什么归一化?
图像归一化使得图像可以抵抗几何变换的攻击,也就是转换成唯 一的标准形式以抵抗仿射变换。
// 仿射函数,将3个原图点坐标,和得到结果图的3个点坐标, 生成参数带入函数得到结果 pts1 = np.float32([[50,50],[200,50],[50,200]]) pts2 = np.float32([[10,100],[200,50],[100,250]]) M = cv2.getAffineTransform(pts1,pts2) dst = cv2.warpAffine(img,M,(cols,rows))
2 图像预处理 / Image preprocessing
②几何变换
通过平移、转置、镜像、旋转、缩放等 几何变换对采集的图像进行处理,用于改正 图像采集系统的系统误差。
④归一化
归一化工作的目标是取得尺寸一致,灰 度取值范围相同的标准化人脸图像。
①灰度化
将彩色图像转换为灰度图,其中有三种 方法:最大值法、平均值法、以及加权平均 法。
imadjust(I,[low_in; high_in],[low_out; high_out],gamma)
rgbImage = imread('Lena.jpg'); grayImage=rgb2gray(rgbImage); J1 = imadjust(grayImage,[0 1],[0 1],2.5); J2 = imadjust(grayImage,[0 1],[0 1],1.5); J3 = imadjust(grayImage,[0 1],[0 1],0.67); J4 = imadjust(grayImage,[0 1],[0 1],0.4); subplot(1,5,1);imshow(J1);title('gamma=2.5'); subplot(1,5,2);imshow(J2);title('gamma=1.5'); subplot(1,5,3);imshow(grayImage);title('原灰度图像'); subplot(1,5,4);imshow(J3);title('gamma=0.67'); subplot(1,5,5);imshow(J4);title('gamma=0.4');