我有流数据,浮点值介于-2和+4之间.我需要编写一个函数来将这些值归一化到-1和+1之间.
我有:
float normalize(float input)
{
int min = -1;
int max = 1;
float normalized_x = (input - min) / (max - min);
return normalized_x;
}
Run Code Online (Sandbox Code Playgroud)
但这给了我不正确的值,范围从-0.4到+2.3,粗略.我的功能需要调整什么?
谢谢.
您希望首先将范围居中于0左右,然后除以使其从-1变为1.
float normalize(float input)
{
float normalized_x = (input - 1) / 3;
return normalized_x;
}
Run Code Online (Sandbox Code Playgroud)
更广义:
const float min = -2;
const float max = 4;
float normalize(float input)
{
float average = (min + max) / 2;
float range = (max - min) / 2;
float normalized_x = (input - average) / range;
return normalized_x;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2991 次 |
| 最近记录: |