matlab 归一化和反归一化

一、归一化函数mapminmax()

1、默认的归一化范围是(-1,1),使用mapminmax(data,0,1)将范围控制在(0,1)。

2、按行归一化,矩阵则每行归一化一次。若要完全归一化,则

FlattenedData = OriginalData(:)\'; % 展开矩阵为一列,然后转置为一行。

MappedFlattened = mapminmax(FlattenedData, 0, 1); % 归一化。

MappedData = reshape(MappedFlattened, size(OriginalData)); % 还原为原始矩阵形式。此处不需转置回去,因为reshape恰好是按列重新排序

例:A=(......)

[B,PS]=mapminmax(A,0,1)

二、反归一化

A=mapminmax(\'reverse\',B,PS)