実時間のデータ圧縮が可能なためには、各画素を2つのクラスに分類するためのアル ゴリズムは簡単で高速なものでなければならない。しかし、一般に使われている k-mean 法に基づくベクトル量子化法[107]は、データを繰り返し処理する アルゴリズムであるため計算に時間が掛かる。ここでは、ブロック内の画素の色情報 を主成分分析[22,68] することによって得られた主成分スコアを 用いてベクトル量子化器を設計する。各画素はその主成分スコアによって2つのクラ スに分類し、その分類結果に基づいて2つのクラスの代表色を決定する。
今、ブロック内の画素数を とし、そのブロックの 番目の画素の色の赤、緑、
そして青成分を
とする。以下では、
を色ベクトルと呼ぶ。このとき、ブロック内の色の平均ベクトルおよび
共分散行列は、それぞれ、
(282) |
また、共分散行列 は、3行3列の実対称行列であるから、 3次の代数方程式の根を求めるための Cardano の公式を用いることによる最大固有 値 を求めることができ、対応する固有ベクトルも簡単に計算できる。
主成分スコアに基づいて各画素を2つのクラス( と )に分類するために は、1ビットのスカラー量子化器が利用できる。ここでは、1ビットのスカラー量子 化法として最も簡単な平均値による方法を用いるものとする。主成分スコアの平均値 は常に であるから、各画素の主成分スコアの符号を調べることによって2つの クラスに分類することができる。つまり、主成分スコアが 以下ならクラス に分類し、主成分スコアが 以上ならクラス に分類する。
ブロック内の各画素を2つのクラスに分類した後、その分類結果に基づいて各クラス の代表色を決定する。平均2乗誤差最小の意味で最適な代表色は各クラスの平均色で ある。