・JPEG圧縮の話 その4
今回はJPEG圧縮に使用されているアルゴリズムの
離散コサイン変換について簡単に説明します。
離散とは離散値のことで、デジタルデータの事です。
連続値がアナログです。
コサイン変換とは、三角関数のコサイン関数で
近似することを意味します。
三角関数のコサインのグラフは
波の形であることを高校数学で習ったのを覚えているかと思います。
y=cosθ のグラフ θはラジアン単位。
コサイン関数の係数は下の数式のAとB。位相は省略。
y = A cos( Bθ )
簡単にする為に、まずは一次元で考えます。
次の数列をコサイン変換することを考えます。
この数列をグラフにプロットしていくと下のようになります。
けっこう複雑な曲線ですが、
コサイン関数の組み合わせで表現できます。
下の5つのコサイン関数の和です。
y = cos( 2 θ)
y = -7cos(0.3θ)
y = 1.5cos( 15θ)
y = 13cos(0.7θ)
y = 0.5cos( 29θ)
これらの関数の和が先ほどの曲線となります。
情報量としてはAとBの係数 × 5 で表せます。
これと同じようなことを画像(二次元)で行います。
画像ではコサインのグラフは濃淡で表されます。
イメージ図
こういったコサインを濃淡で表した画像を
基底画像と言います。
JPEGでの離散コサイン変換では64個の基底画像を用います。
さすがにどんな画像や写真でもこの64この基底画像の組み合わせ
だけで表現できるのかというと、無理があるので
画像を8×8のブロックに格子状に分割します。
このそれぞれのブロックで離散コサイン変換を行うことで
大きな画像データをコサインの関数(画像)で表すことができます。
次回、離散コサイン変換の後の処理
« ・JPEG圧縮の話 その3 | トップページ | ・JPEG圧縮の話 その5 »
「写真講座」カテゴリの記事
- ・グローバルシャッターって何が凄いの(2023.11.14)
- ・写真に枠を付けて正方形にするプログラム(2023.10.30)
- ・レンズ光学性能とセンサー解像度(2023.10.11)
- ・フィルターに最適なガラス素材は?(2023.10.05)
- ・コンピュテーショナルフォトグラフとは(2023.09.21)
コメント