ガウス関数の性質を5分で学ぶ

シェーダを書いているとガウス関数はそこそこ頻繁に出てくるのですが、
調べようとするとわけのわからない理論と式がいきなり出てきてそっ閉じしがちです。

まずは性質を知るのが第一歩ということで、
難しい説明は他サイトに任せてここでは性質だけ追ってみます。

ガウス関数

ガウス関数とはこんな感じの釣鐘型を示す関数です。

f:id:halya_11:20180517235154p:plain

式は例えばこのようになります。

f:id:halya_11:20180517235118p:plain

ここではガウス関数の一例Wikipediaに載っている正規分布関数を使います。
この時点ではとりあえずyがxの関数だってことだけわかればいいです。

1. μを変えてみる

性質を知るためにまずμを変えてみます。

f:id:halya_11:20180517235212p:plain

ここをいろんな値に変えると、

f:id:halya_11:20180517235231p:plain

横にずれます。
μの値は釣鐘型の中央位置を表しています。
μ=0なら中央の位置もゼロ。

2. σを変えてみる

次にσを変えてみます。

f:id:halya_11:20180517235252p:plain

前節のμをゼロに固定して、この値をいろいろと変えると、

f:id:halya_11:20180517235353p:plain

なだらかさが変わります。
σが大きいほどなだらか。

3. 定数をなくす

f:id:halya_11:20180517235430p:plain

赤枠の定数部分をなくす、というか1に置き換えてみます。

f:id:halya_11:20180517224644p:plain

最大値がすべて1になりました。
ちなみに今回1に置き換えたこの定数部分には、関数の積分値を一定(1)にするという役割があります。

まとめ

ガウス関数の性質をまとめてみました。
とりあえずこれだけ知っておけば十分ではないかと思います。

シェーダでの使い方は別の記事で紹介します。

参考

ガウス関数 - Wikipedia