1

次の条件に基づいて、最大 6 つのパラメーターと入力値の配列を取得し、入力値を出力にマップする関数を作成したいと考えています。

  1. 入力値の最小値と最大値がわかっています。
  2. 出力の最小値と最大値は定数値 (-10,100 など) にする必要があります。
  3. パラメータに基づいて、inputmax に近い入力値よりも小さな入力値を増幅します。
  4. マッピング後、出力の最小値と最大値は定数値になります。

ある種の対数増幅が必要だと思います。しかし、上記の条件に一致するように定義する方法がわかりません。

これにはどのような数式を使用できますか?

C++ と C# の両方で実装する必要があります。それらのいずれかでそれを実装する方法を知っていれば、それを他のものに変換できます。

4

1 に答える 1

1

どこに問題があるのか​​ よくわかりません。私は何かを逃していますか?あなたの言うことは、次のような単純なコンポーネント単位の操作が必要なようです。

forall x in range
    out[x] = ((in[x]-in_min)/(in_max-in_min))^gamma * (out_max-out_min)+out_min

gamma低い値を高い値よりも増幅したい場合は、おそらく 1 より小さい定数です。「ガンマ補正」のようなものと考えてください。

しかし、あなたの「6つのパラメーター」がどのように機能するのかわかりませんか?

于 2013-06-12T19:53:27.480 に答える