Webデザインにおいてgif(ジフ・ギフ)ファイルというのは非常に使用頻度の高い画像ファイルです。
通常の画像から透過gif、果てにはアニメーションgifなんていうのも作れてしまいます。

そんなgifについて今までしっかり調べていなかったことがあります。
それは「ディザ」。
gif画像にはディザありとディザなしがあって、いままではそんなにこだわらずに初期設定で保存していたのですが、
これの設定により画質が結構異なるようなのです。

ということで、今日は「ディザ」についてしっかり勉強してみようと思います。


まずは「ディザ」という言葉の由来から辿って行きましょう。
ディザを英語で書くと「dither」となります。

ditherの意味 - 英和辞典 Weblio辞書
【動詞】 【自動詞】
1(心配・興奮などで)おろおろする,ためらう,うろたえる 〈about〉.
2〔…のことで〕うろたえる,おろおろする 〔about〕.
【名詞】
[a dither] うろたえ,ためらい,おろおろした状態.
残念ながらこれではよくわかりませんでした。
ということで、改めてWikipediaで調べてみると、

□ ディザ - Wikipedia
量子化誤差(端数)を、単純に丸めるのではなく、全体の量子化誤差が最小化するよう確率を調整して切り捨てまたは切り上げのどちらかをランダムにおこなうためによるゆらぎのことである。
ううむ。これでもいまいちピンときませんね。
「ゆらぎ」という表現がでてきましたが、ここが元の意味「おろおろする」「ためらう」などと繋がってきそうです。

続けます。
そのような一種のノイズ的データを追加する作業および技法はディザリング(Dithering)またはディザ法と呼ばれる。誤差を周囲のデータに拡散する手法をも含めて言うこともある。
「ノイズ」、「誤差」なんて言葉も出て来ました。
「ディザリング」という言葉もでてきましたが「あえて誤差を追加する手法」のようです。
ではなぜ誤差を生じさせる必要があるのでしょうか?

更にWikipediaにはこうあります。
ディザという言葉が最初に使われたのは第二次世界大戦の頃である。当時の爆撃機では、航法と爆撃の弾道を算出するうえで機械式の計算機が使用されていた。そういった(数百個の歯車などで満たされている箱としての)計算機は、奇妙なことに、地上で試された場合よりも飛行機上で用いられた場合の方がうまく機能した。これについて技術者が気づいたのは、固着した可動部に与えられた航空機の振動の刺激が(計算機の出力の)誤差を減らした、ということだった。−中略−(この発見にちなんで、)振動を発生させる小型のモーターが計算機に組み込まれるようになった。生成されるこの振動のことは、中期英語の "didderen"(震える)からとって "dither" と名づけられた。
「振動(ノイズ・誤差・ゆらぎ)」が加わる事でより正確に近づくという現象に気付き、
これをあえて加えることを言葉で表現したのが「ディザリング」、加えられた「振動(ノイズ・誤差・ゆらぎ)」が「ディザ」ということのことです。

ディザの意味がおおよそわかったところで、gif画像で言うディザとはなんなのか?

さらにWikipediaから、
コンピュータグラフィックスで使われる場合には、制限された色数でそれ以上の色調を表現する技法として使われる。
ああ、スッキリ。
ってか、最初からここだけ言及しておきゃ済んでたような気もします。

でも、それがなぜ誤差やゆらぎとつながるのか。
これ見てもらえればわかると思います。
赤と青で紫を表現しています。
gifの場合は色数を減らして軽量化しているのでこういったことが必要になってくるわけですね。
つまり、人間の目の特徴、いわゆる目の錯覚を「ゆらぎ」や「誤差」と表現し、それを利用するというとんでもない高等技術が「ディザ(ディザリング)」だったんですねぇ。。

これは使わない手はないです。

というところで実践編です。 
左の空のグラデーションを比較してみてください。

gifのディザ(ディザなし)
ディザなし

gifのディザ(誤差拡散法100%)
ディザあり(誤差拡散法100%)

明らかにディザありの方がグラデーションが綺麗に出ています。
拡大するともっとよく分かります。

ディザなし
ディザなし

誤差拡散法
ディザあり(誤差拡散法)

パターン
ディザあり(パターン)

ノイズ
ディザあり(ノイズ)

ディザにはいくつかの種類(誤差拡散法、ノイズ、パターン)がありますが容量とプレビューとを比較して最適なものを選んであげれば良いと思います。