Функция возвращает дискретных данных в диапазоне от 0 до 128. Я хочу, чтобы преобразовать эти данные в масштабе таким образом, что значение ...Дискретные данные по логарифмической шкале
0 приведет к 0 128 приведет к 128
Значения между ними следует взвешивать таким образом, чтобы меньшее число преобразовывалось «быстрее» в более высокие числа, где более высокое число увеличивалось бы медленнее.
фон: Я хочу сделать метр VU по шкале дБ (-inf до 0дБа), как это (обратите внимание, как расстояния убывают для того же абсолютное изменение в дБ)
L |||||||||||||||||||| |
R ||||||||||||||||||||||||||| |
-inf -36 -18 -6 -3 0
0 128
Как я преобразовать значения, чтобы отразить ширину пика на VU шириной 255 пикселей, например?
Вау - это было быстро! Боюсь, я не тот журнал. Таким образом, x будет значением, заданным моей функцией, a будет некоторым количеством «настройки», но я не понимаю, как b вступает в игру. Не могли бы вы объяснить? Благодаря! –
Потому что вы хотите 'f (128) = 128' правильно? Если у вас нет 'b', тогда' f (128) = log (128 + a) -log (a) ', поэтому вам нужно' b' масштабировать его. –