明細書
信号処理方法及び装置 技術分野 本発明は、 符号語を処理する信号処理方法及び装置に関し、 詳し く は、 画像信号を符号化した符号語の処理に好適な信号処理方法及 び装置に関する。 京技休丁 従来、 静止画像、 動画像などのデジタル信号の編集においては、 静止画像又は動画像 (以下、 単に画像と称する。 ) の 1画像フ レー ム全体を編集加工の単位と している。 特に圧縮や色空間変換等の各 種変換が施されたデジタル信号に対しては、 画像全体を逆変換して 原信号 (例えば R G B信号) を得た後に、 編集加工を行って、 その 後再変換を施している。 また、 静止画像や動画像等のデジタル信号 は、 データ量が膨大なため、 一般に圧縮されて伝送又は保管されて いる。
図 1には、 いわゆるデジタルビデオ (di gi ta l v i deo ; DV) の 1画 像フレームに対して、 編集加工する場合の処理手順の例を示してい
る。 ここでは、 エン トロ ピ一符号化等により符号化されている画像 について行う編集加工を示している。
編集加工は、 この図 1 に示すように、 テープ又はハードディスク から入力されたデジタル信号を、 エン ト ロ ピ一復号化 (ステップ S 1 0 1 ) 、 逆量子化 (ステップ S 1 0 2 ) 、 逆離散コサイン変換 (discrete cosine transform; DCT) (スアップ S 1 0 3 ) 、 R G B変換ブロック合成 (ステップ S 1 0 4 ) の順に処理し、 この処理 により再生したデータに対して編集加工処理を行う (ステップ S 1 0 5) 。
編集したデータについては、 今度は逆の変換を施す。 すなわち、 Y C b C r変換ブロ ック化 (ステップ S 1 0 6 ) 、 D C T (ステツ プ S 1 0 7) 、 量子化 (ステップ S 1 0 8 ) 、 ェントロピー符号化 (ステップ S 1 0 9) の処理を順に施す。
ところで、 上述したよ うに圧縮されている D Vなどの圧縮画像は、 この圧縮画像を構成するある単位ごとの符号量の上限が決められて おり、 この符号量に収まるよ うに圧縮量を制御する必要がある。 例えば、 DVでは 1 ビデオセグメ ン トの符号量が所定の符号量以 下に収まるように固定長化されている。 このため、 従来は、 マク ロ ブロ ック単位に量子化器番号を小さく して量子化を粗く し、 それを 可変長符号であるハフマン符号化することによ り、 符号量を制御し ていた。
しかし、 この方法では、 必要以上に圧縮され、 目標符号量を大き く下回る場合があり、 結果と して必要以上に画質が劣化してしまう 傾向がある。 例えば、 医療、 美術、 映画をはじめとする高精細映像 の制作においては、 画質劣化に対する危惧から非圧縮画像が用いら
れる。 特に、 繰り返し画面合成を行う場合、 劣化が累積されてしま うため、 圧縮画像は一層敬遠される傾向にある。
また、 一段粗い量子化によっても目標符号量に達しない場合、 目 標符号量が得られるまで、 量子化と可変長符号化を繰り返す必要が あり、 負荷の大きな処理となっていた。
もし、 これら伸長及び再圧縮に伴う劣化の問題を改善できれば、 いわゆる D Vなどの圧縮画像による編集がよ り広く受け入れられる よ うになると期待できる。 発明の開示 本発明は、 上述の課題に鑑みて提案されるものであって、 圧縮画 像の符号語を処理する際に画質を維持すると共に、 処理の負担を低 減するよ うな信号処理方法及び装置を提供することを目的とする。
上述の課題を解決するために、 本発明に係る信号処理方法は、 入 力信号に量子化を施して数列と し、 この数列に可変長符号化を施し て符号語列に変換する信号処理方法において、 上記符号語列中の一 部の符号語を、 長さがより短くかつ値が近似した他の符号語に置換 するものである。
本発明に係る信号処理装置は、 入力信号に量子化を施して数列と し、 この数列に可変長符号化を施して符号語列に変換する信号処理 装置において、 上記符号語列中の一部の符号語を、 長さがより短く かつ値が近似した他の符号語に置換する手段を有するものである。 図面の簡単な説明
図 1は、 デジタルビデオの編集加工処理を示す図である。
図 2は、 本実施の形態の編集装置の概略的な構成を示すプロ ック 図である。
図 3は、 編集装置の画像編集ソフ トウェアに関連する部分の構成 を示すブ口ック図である。
図 4は、 いわゆる DV規格によるフォーマツ トを示す図である。 図 5は、 いわゆる D V規格によ り圧縮画像を作成する手順を示す フローチヤ一トである。
図 6は、 量子化器番号、 ク ラス番号及びエリア番号による量子化 ステップを示す量子化表を示す図である。
図 7 Aは、 8— 8— D C Tのブロ ックのエリア分割を示す図であ る。
図 7 Bは、 2 _ 4 _ 8— D C Tのブロ ックのエリア分割を示す図 である。
図 8 Aは、 8 _ 8— D C Tのブロ ックにおけるジグザグスキャン を示す図である。
図 8 Bは、 2— 4— 8— D C Tのブロ ックにおけるジグザグスキ ヤンを示す図である。
図 9は、 対 ( r u n , a m ) からの可変長符号語への変換を示 す図である。
図 1 0は、 対 ( r u n , a m p ) からの可変長符号語への変換を 示す、 図 9に続く図である。
図 1 1は、 可変長符号語と符号長との関係を示す図である。
図 1 2は、 圧縮されたマク口プロックに対するビッ ト割り当てを 示す図である。
図 1 3 Aは、 ブロックに対するジグザグスキャンを示す図である。 図 1 3 Bは、 図 1 3 Aの数列を量子化することを示す図である。 図 1 4 Aは、 図 1 3 Aのジグザグスキャンの数列を示す図である。 図 1 4 Bは、 図 1 4 Aの数列を可変長符号化した結果を示す図で ある。
図 1 4 Cは、 図 1 4 Bの量子化した数列を示す図である。
図 1 4 Dは、 図 1 4 Cの量子化した数列を可変長符号化した結果 を示す図である。
図 1 5 Aは、 符号化された数列から伸長されたプロ ックを示す図 である。
図 1 5 Bは、 図 1 5 Aをさらに逆量子化した結果を示す図である。 図 1 6は、 異なった量子化器番号によって同一の伸長結果が得ら れる例を示す図である。
図 1 7 Aは、 ブロック内における数列を示す図である。
図 1 7 Bは、 図 1 7 Aの数列を圧縮して伸長した結果を示す図で ある。
図 1 7 Cは、 図 1 7 Aの数列を圧縮して伸長した他の結果を示す 図である。
図 1 8 Aは、 数列を可変長符号化した第 1 の結果を示す図である。 図 1 8 Bは、 数列を可変長符号化した第 2の結果を示す図である。 図 1 8 Cは、 数列を可変長符号化した第 3の結果を示す図である。 図 1 9は、 符号語置換による削減ビッ ト数を返す関数のプロダラ ムを示す図である。
図 2 0は、 量子化情報により削減可能か否かを判定する関数のプ ログラムを示す図である。
図 2 1は、 符号語置換を行う関数のプログラムを示す図である。 図 2 2は、 符号語置換を行う関数のプログラムを示す図である。 図 2 3は、 符号語を置換する表を示す図である。
図 2 4は、 各プロ ックの削減目標ビッ ト数の求め方を説明する図 である。
図 2 5は、 ワイプの処理を示す図である。 発明を実施するための最良の形態 以下、 本発明の実施の形態について、 図面を参照して説明する。 本発明の実施の形態は、 本発明をいわゆるデジタルビデオ (d i gi ta 1 v i deo ; DV) を編集する編集装置に適用したものである。
本実施の形態の編集装置は、 いわゆる D Vを対象とする合成加工 処理に対して、 圧縮信号を可能な限りそのまま複製することで劣化 0を目指し、 再量子化が必要に待った場合のみ、 可変長符号語単位 で圧縮を行う ものである。
編集装置は、 図 2に示すように、 画像を撮像して画像信号を出力 するカメラデッキ 1 1 と、 画像デ一タを蓄積するハー ドディスク ド ライブ 1 2 とを有している。 カメラデッキ 1 1は、 画像を撮像し て画像信号を出力すると共に、 この画像信号をいわゆる D V規格に よって記録されるテープ状媒体、 いわゆる D Vテープに記録するも のである。 また、 カメラデッキ 1 1は、 いわゆる D Vテープに記録 された画像データを再生して画像信号を出力する。
ハードディスク ドライブ 1 2は、 画像データや音声データのいわ ゆる A V ( audiov i sual ) データを蓄積する大容量の記録メディアで
ある。 ハードディスク ドライブ 1 2は、 カメラデッキ 1 1 との間で、 例えばいわゆる I E E E 1 3 9 4規格に従って画像データを送受す る。
編集装置は、 制御状態を表示する制御モニタ 1 3 と、 編集のため に画像を表示する画像モニタ 1 4 とを有している。
制御モニタ 1 3は、 編集装置における画像処理などの制御状態を ユーザに表示するものである。 制御モニタ 1 3 と しては、 例えば文 字や記号を表示することが可能な陰極線管 (ca thode-ray tube ; CR T) を用いることができる。
画像モニタ 1 4は、 編集装置で編集中の画像や、 編集装置で編集 された画像をユーザに表示する。 画像モニタ 1 4 と しては、 例えば 高精細の C R Tを用いることができる。
編集装置は、 文字データや記号データが入力されるキ一ボード 1 5 と、 位置情報を入力されるマウス 1 6 とを有している。
キーボード 1 5は、 文字や記号に対応する複数のキーにより、 文 字データや記号データが入力される。 マウス 1 6は、 滑動されたり、 そのボタンをタ リ ックされることにより、 位置情報等を入力される。 編集装置は、 画像データの編集その他の処理を行うパーソナルコ ンピュ一タ 1 7を有している。 パーソナルコンピュータ 1 7は、 C P U 、 R〇M、 R A M等を有し、 例えば R A Mに読み込まれた処理 プログラムに基づいて、 画像編集などの処理を実行する自立型の情 報処理装置である。
パーソナルコンピュータ 1 7は、 例えば内蔵ハー ドディスク ドラ イブのよ うな記憶装置を内蔵している。 この記憶装置には、 画像を 編集するための画像編集ソフ トウ ア 2 0が記録されている。
すなわち、 パーソナルコンピュータ 1 7は、 画像編集ソフ トウェ ァ 2 0と して、 グラフィ ックュ一ザインタ一フェース (graph i c u s er interface ; GUI ) 2 1 と、 複数の画像を合成する合成処理プログ ラム 2 2 と、 一旦は伸長した圧縮画像データを再び圧縮する再圧縮 処理プログラム 2 3 とを有している。
また、 画像編集ソフ トウエア 2 0は、 例えば!3 C I ボード上の L S I と してハードウェア化され、 P C I バスを介して動作するよ う に実装することもできる。
これらの画像編集ソフ トウエア 2 0で、 再圧縮処理プログラム 2 3は、 いわゆる D V規格などに基づく可変長符号語を再圧縮する場 合に、 符号語を他の符号語に置換することによって、 最小限の量子 化を行う。 すなわち、 本実施の形態においては、 符号語に対する再 量子化を最小限にすることにより、 再量子化によるデータの劣化を 最小限に止めよう とするものである。
この再圧縮プログラムにより、 パーソナルコンピュータ 1 7を中 心とする編集装置において、 画像圧縮の処理が行われる。 編集装置 にて行われる本実施の形態の画像圧縮の方法については、 さらに後 述する。
パーソナルコンピュータ 1 7は、 例えばいわゆる I E E E 1 3 9 4規格に基づいて、 カメラデッキ 1 1 との間で、 画像データなどを 相互に送受することができる。 パーソナルコンピュータ 1 7は、 ノヽ — ドディスク ドライブ 1 2 との間で、 例えばいわゆる U 1 t r a S C S I規格に従って、 画像データを高速に送受することができる。 続いて、 上述した編集装置の構成を、 画像編集ソフ トウェア 2 0 との関連において説明する。
図 3に示すように、 編集装置には、 記録媒体と して、 いわゆる C Dやいわゆる D V Dのよ うなディスク状媒体 3 1や、 ハードディス ク 3 2や、 いわゆる D Vテープのようなテープ状媒体 3 3が備えら れる。 これらの記録媒体には、 編集装置で編集する画像や、 画像編 集ソフ トウェア 2 0が記録される。
編集装置においては、 例えば、 ディスク状媒体 3 1はパーソナル コンピュータ 1 7に挿入されて用いられる。 また、 ハ一ドディスク 3 2は、 ハー ドディスク ドライブ 1 2やパーソナルコンピュータ 1 7に備えられる。 テープ状媒体 3 3は、 カメラデッキ 1 1 にて用い られる。
編集装置においては、 ディスク状媒体 3 1は第 1のインターフエ ース 3 4を、 ハードディスク ドライブ 3 2は第 2のインターフエ一 ス 3 5を、 テープ状記録媒体 3 6は第 3のインターフェース 3 6を、 それぞれ介してデータを送受している。 第 1のインターフェース 3 4、 第 2のイ ンターフェース 3 5及び第 3のイ ンターフェース 3 6 は、 記録媒体と送受するデータの形式やタイ ミングを調整する。 編集装置は、 ユーザから制御データを入力されるユーザ制御装置 3 7 と、 文字や画像を表示する表示装置 3 8 とを有している。
ユーザ制御装置 3 7には、 編集装置にて実行される画像編集ソフ トウエア 2 0に対するユーザによる制御が入力される。 表示装置 3 8には、 編集装置における画像編集ソフ トウユア 2 0の実行の状況 や、 この画像編集ソフ トウエア 2 0で編集している画像が表示され る。
編集装置には、 データを記憶するメモリ 3 9 と、 高速の記憶バッ ファであるキャッシュメモリ 4 0 と、 画像編集ソフ トウェア 2 0を
実行する C P U 4 1 とが設けられている。
メモリ 3 9には、 揮発性の R A Mや不揮発性の R〇Mが用いられ、 画像データや画像編集ソフ トウ ア 2 0を記憶する。 キャ ッシュメ モリ 4 0は、 C P U 4 1 と一体となってデータの高速にバッファす ることにより、 データ処理の速度を向上させる。
C P U 4 1は、 例えばメモリ 3 9に記憶された画像編集ソフ トゥ エア 2 0の処理手順に基づいて、 画像編集のためのデータ処理を実 行する。 C P U 4 1で実行される画像編集ソフ トウェア 2 0は、 例 えばユーザ制御装置 3 7に入力されたユーザによる制御に基づいて、 その実行する処理を決定する。 C P U 4 1は、 画像データを処理し て結果と して、 画像データを表示装置 3 8に表示したり、 ディスク 状記憶媒体 3 1 、 ハードディスク 3 2又はテープ状記憶媒体 3 3に 記録したりする。
続いて、 編集装置における本実施の形態の画像処理の方法の前提 となる、 いわゆる D V規格による圧縮画像について説明する。 本実 施の形態の編集装置は、 いわゆる D V規格による圧縮画像を編集す ることを想定している。
図 4には、 いわゆる D Vフォーマツ トの仕様の概要を示している。 D Vフォ一マツ トにおける画像フレーム F Rは、 固定長のビデオセ グメント V Sにより構成されている。
各ビデオセグメ ント V Sは、 5つの固定長の圧縮されたマク口ブ ロック M Bより構成されている。 各ビデオセグメント V Sを構成す る圧縮されたマクロブロ ック M Bは、 1画面において分散、 いわゆ るシャッフルされている。
各圧縮されたマクロブロ ック M Bは、 6つの圧縮されたブロ ック
B Lより構成されている。 各圧縮されたブロ ック B Lにおける有効 なデータの長さは様々である。 有効なデータの最後には、 ブロ ック B Lにおける有効なデータの終端を示す E O B ( end of b l ock) が マークされている。
各圧縮されたプロック B Lが格納される領域の先頭位置と大きさ は固定されている。 一のブロック B Lに記録すべきデータが固定さ れた領域に収まらない場合には、 そのデータは他の領域に記録され る。
すなわち、 固定された領域に収まらなかったデータは、 その圧縮 されたブロック B Lを含む圧縮されたマクロブ口ック M Bにおける、 又はその圧縮されたマクロブロ ック M Bを含むビデオセグメン ト V Sにおける、 他の圧縮されたブロ ック B Lにおいて、 有効なデータ が記録されていない余白の領域に格納される。
例えば、 第 1の圧縮されたプロック B L,に書き込むべきデータが この領域に収まらないことがある。 この場合には、 矢印 a に示すよ うに、 第 2のブロ ック B L 2の余白の領域に第 1 の圧縮されたブロ ッ ク B L ,に収まらなかったデータが書き込まれる。
このよ うないわゆる D V規格のフォ一マツ トの仕様について、 図 5に示すフローチヤ一トを参照して、 その構成の手順を説明する。 本実施の形態における画像圧縮の方法は、 このような手順によ り作 成されたいわゆる D V規格の圧縮画像に対して適用されるものであ る。
いわゆる D V規格により圧縮される画像信号は、 通常は、 輝度信 号 Y、 2つの色差信号 C r , C bのコンポーネント信号と して供給 される。 このコンポーネント信号について、 画像信号を構成する画
像フレーム F Rを単位と して、 色差信号 C r , C bは、 輝度信号 Y をサンプリ ングする周波数に比較して 1 / 2の周波数でサンプリ ン グされる。 さ らに、 色差信号 C r, C bは、 データが 1 Z 2になる よ うにサブサンプリ ングされる。
ステップ S 1 1 においては、 1画像フ レーム F Rのデータは、 2 次元離散コサイ ン変換 (discrete cosine transform; DCT) の基本 単位である 8 X 8画素のブロ ック B Lに分割される。
上述したように、 輝度信号 Yと色差信号 C r, C bはサンプリ ン グ数が異なるために、 輝度信号 Yの画素から構成される 4ブロ ック B L、 色差信号 C r, C bカゝら構成される各 1ブロック B Lが画面 上同じ位置の同じ面積に相当する。 マクロブロック MBは、 この 6 ブロック B L単位で構成される。
ステップ S 1 2においては、 ビデオセグメン ト V Sを構成する 5 マクロブ口ック MB力 1画像フレーム F Rの画面内力 ら所定のノレ ールでシャッフルして集められる。 シャ ッフルする目的は、 ビデオ セグメン ト V Sに含まれる情報量を均一化するためである。 ビデオ セグメン ト V Sは、 所定のビッ ト数を超えないように圧縮されて固 定長化される。
ステップ S 1 3においては、 ビデオセグメン ト V S内の各ブロッ ク B Lは、 被写体がカメラに対して動いているかを検出する動き検 出により、 静止モードか動きモードか判断される。
ステップ S 1 4においては、 ステップ S 1 1でのシャ ッフルによ り構成された各ビデオセグメン ト V Sは、 その中の各ブロック B L ごとに D C T変換される。 また、 高域にいくにつれて小さくなるよ うな重み付けが施される。
ステップ S 1 2により静止モードとされた場合には、 ブロック B L内の 8 X 8画素に対して 8 X 8の 2次元 D C T変換 ( 8— 8 D C T ) が施される。 この D C T変換により、 8 X 8の D C T係数 (以 下単に係数と称する) が得られる。
ステップ S 1 2により動きモードとされた場合には、 8 X 8画素 から構成されるブロック B Lを第 1 フィール ドと第 2フィール ドの 各々の 4 X 8カゝら構成されるブロック B Lに分割し、 各 4 X 8画素 に対して 4 X 8の 2次元 D C T変換 (4一 8 D C T) を施す。 この D C T変換により 2組の 4 X 8の係数が得られる。
この動きモードにより、 カメラに対して被写体が動いている場合 に、 このステップ S 1 4での D C T変換の際に、 インタ一レースに よるエネルギー分散を防止することができる。
以下のステップ S 1 5及びステップ S 1 6においては、 D C T変 換と重み付けされた係数に対する、 量子化に関連する処理が施され る。 いわゆる DV規格による量子化の処理は、 図 6に示す量子化表 に基づいて行われる。
各係数に適用される量子化のステップとなる量子化ステップは、 マクロブロック MB単位に決められる 「量子化器番号」 (QNO) と、 ブロック B Lごとに決められる 「クラス番号」 (C NO) と、 D C T変換されたブロック B L内の係数の周波数帯によって決まる 「エリア番号」 (ANO) とによって決定される。
以下、 これの 3つの番号の組み合わせを 「量子化情報」 と呼び、 < Q N O , CN〇, AN O〉と記すことにする。 なお、 これらの量 子化器番号、 クラス番号及びエリア番号の意味については、 以下で 説明する。
ステップ S 1 4において、 全てのブロック B Lが D C T変換と重 み付けがなされたビデオセグメ ン ト V Sは、 一旦バッファに格納さ れ、 データ量推定により このビデオセグメントを量子化する量子化 器が選択される。
ステップ S 1 5においては、 図 6の量子化表に示したように、 ビ デォセグメント V S内の各ブロ ック B Lは 4種類のクラスの内の 1 つにク ラス分けされる。 量子化器を構成する量子化ステップは、 そ のクラス番号 (C N O ) によって異なる。
これは、 クラス番号が大きいブロック B Lほど、 そのブロック B Lの精細度、 すなわちァクティ ビティが大きいことを示しており、 相対的に粗く量子化することを目的と している。
なお、 係数の絶対値が 2 5 5を超える係数を含むブロ ック B Lは、 クラス番号 (C N〇) が 3 となり、 イニシャルシフ トと呼ばれる操 作を量子化前に受ける。 イニシャルシフ トでは、 その係数は 2で除 算される。
ステップ S 1 6においては、 D C T変換によ り得られた各ブロッ ク B Lの係数は、 量子化ステップと呼ばれる整数値で除算される。 この操作は、 量子化又は再量子化と呼ばれる。 実際には、 図 6の量 子化表に示したように、 1 6種類の量子化器を予め用意し、 その中 から 1つの量子化器を選択する。
量子化器番号 (Q N O ) が減少するにつれて、 ビデオセグメン ト V Sのビッ ト数も減少していく。 また、 量子化器番号が減少すると 各係数は粗く量子化されるため、 この量子化による誤差、 すなわち 量子化誤差も増大し、 画質劣化につながる。
従って、 ビデオセグメント V Sに与えられたビッ ト数、 すなわち
ターゲッ トビッ ト数を超えないような最大の量子化器番号 (QN O) を符号量推定によ り選択する。 符号量推定により量子化器番号 が選択されると、 バッファに貯えられていたビデオセグメン トはこ の量子化器番号により実際に量子化される。
図 6に示した量子化表によると、 各量子化器はクラス番号 (CN 〇) による 4つの量子化ステップのセッ トで構成される。 図 7 A及 び図 7 Bは、 静止モード及び動きモードの場合のそれぞれについて のエリア分けを示している。 1ブロック B L内の各係数は 4つのェ リァに分割されて、 そのエリァによって異なる量子化ステップで量 子化される。
図 7 Aに示すよ うに、 静止モー ドの場合には、 1ブロック B Lは 1個の D C係数と 6 3個の A C係数から構成される。
図 7 Bに示すよ うに、 動きモー ドの場合には、 本来は 2個の 4 X 8画素のブロック B Lのそれぞれが 1個の D C係数と 3 1個の AC 係数から構成される。 しかし、 これらの 2つのモー ドを画一的に扱 えるようにするために、 各 4 X 8画素に対する D C T変換後、 各ブ ロック B Lの同じ次数の係数どう しで和と差を取り、 8 X 8画素の ブロ ック B Lを構成する。
この処理により、 動きモー ドのブロック B Lも、 静止モー ドのブ ロック B Lと同様に 1個の D C係数と 6 3個の A C係数から構成さ れているように取り扱う ことができる。
ステップ S 1 7においては、 量子化された係数は、 さらに可変長 符号ィ匕 (variable length coding; VLC) される。
この可変長符号化は、 D C T係数の統計的な性質を利用し、 出現 確率の高いものに短い符号を、 出現確率の低いものに長い符号を割
り 当てることによ り統計的冗長度を削減し、 効率のよい符号化を行 う もので、 エン ト ロ ピー符号化とも呼ばれる。
本実施の形態での可変長符号化は、 モディファイ ド 2次元ハフマ ン符号化と呼ばれるものである。 この符号化によると、 既に出現確 率がわかっている情報に対して最小の平均符号長を構成することが できる。
すなわち、 ステップ S 1 7においては、 各ブロック B Lごとに出 現する係数の出現確率から、 出現頻度の高いものには少ないビッ ト 数 (短い符号) を割り当て、 出現頻度の低いものには多いビッ ト数 (長い符号) を割り当てることにより、 各ブロ ック B Lに割り 当て るビッ ト数を平均と して少なくする。
具体的には、 図 8 Aの静止モー ドの場合、 図 8 Bの動きモー ドの 場合に示すように、 量子化後の各係数をジグザクスキャン操作によ り一次元化した数列に対して、 係数 0が連続する個数であるランレ ングス (run length; run) とそ; Hに続く ^ 零 t罕、数のィ直 (amplitude : 振幅; amp) の対 ( r u n , a m p ) に対して符号が割り当てられ る。
図 9及び図 1 0に示す可変長符号の符号割り 当て表においては、 符号語は、 ジグザクスキャンにより得られた数列中にある非零の係 数の絶対値 a m p と、 a m pの前にある 0の係数が連続する個数で ある r u nの对 ( r u n , a m ) に与 られる。
これは、 係数を量子化してジグザグスキヤンすることにより得ら れた数列が◦を多く含む傾向があることを利用したものであり、 対 ( r u n , a m p ) に対して出現確率に応じて可変長符号化するこ とにより高い圧縮効率が得られる。
図 1 1 には、 対 ( r u n , a m p ) と符号長の関係が示されてい る。 この図は、 図 9及び図 1 0に示した可変長符号の符号割り 当て 表における符号割り当てを、 対 ( r u n , a m p ) について表した ものである。
各符号語は、 サインビッ トを含めて 1 6 ビッ トを超えないよ うに 設定されている。 この表において、 符号語の割り当てられていない 対は、 次式により 2つの対に分割される。
(run, amp) = (run - 1, 0) + (0, amp;
これによ り、 分割された各対は、 必ず符号語が割り当てられるよ う になる。
なお、 図 1 1 中の記号〇は、 本実施の形態に基づいて置換による 圧縮が可能な符号語を示すものである。 この符号語置換については、 さらに後述する。
ステップ S 1 7における符号化によって得られた符号語は、 図 1 2に示すように、 圧縮されたマクロブロ ック M Bに割り当てられる。 この圧縮されたマクロブロック M Bは、 図 4に示したビデオセグメ ン ト V Sを構成している。
この圧縮されたマクロブ口 ック M Bに対するビッ ト割り当てのフ ォ一マッ トにおいては、 バイ ト位置番号 5において、 上位 4ビッ ト に圧縮されたマクロブ口ックのエラー情報を格納する S T A (stat us of the compressed macroblockj 力、、 卜位 4 ヒ ッ トに 子ィ匕^番 号 (QN O) が割り当てられている。
また、 バイ ト位置番号 6からバイ ト位置番号 1 9までが輝度信号 Yに対応する第 0の輝度プロ ック Y 0に、 バイ ト位置番号 2 0から バイ ト位置番号 3 3までが第 1の輝度プロック Y 1に、 バイ ト位置
番号 3 4からバイ ト位置番号 4 7までが第 2の輝度ブロック Y 2に、 バイ ト位置番号 4 8からバイ ト位置番号 6 1までが第 3の輝度ブロ ック Y 3にそれぞれ割り 当てられている。
さらに、 バイ ト位置 6 2からバイ ト位置 7 1 までが色差信号 C R に対応するブロ ック B Lに、 バイ ト位置 7 2カゝらバイ ト位置 8 1ま でが色差信号 C Bに対応するブロック B Lに、 それぞれ割り 当てら れている。
これらの各ブロ ック B Lに割り当てられた各領域においては、 最 初の 9ビッ トが D C係数に、 これに続いて動きモードか否かを示す 1 ビッ トの動きビッ ト ( m ) 及び 0から 3までの値を取る 2 ビッ ト のクラス番号 (C N O) が配置される。 これらによって占められる、 各プロック B Lにおける以降の領域は、 A C係数が配置される。 続いて、 上述したステップ S 1 4までの処理により得られた D C T変換及び重み付けされたブロ ック B Lについて行う、 本実施の形 態による画像圧縮の方法の前提となる符号化の処理を具体例を挙げ て説明する。
なお、 以下では、 8 X 8係数から構成されるブロック B Lにおけ る、 横に i ( 0 i ≤ 7 ) 番目、 縦に j ( O j ≤ 7 ) 番目の係数 を係数 a iと して参照することにする。
図 1 3 Aに示すブロック B Lにおいては、 図 8に示したジグザグ スキャンによると、 D C係数、 すなわち係数 a 。力 S " 1 0 0 " 、 係 数 a 3から係数 a 5, 。までの数列が " 0 1 5 0 , 0 7 " 、 係 数 a 6, 5から係数 a 5.6までの数列が " 0 9 " である。 なお、 ジグ ザグスキャンにおける係数 a ,, 3の直前の係数 a 4及び係数 a 5の 直前の係数 a 7.4はともに 0ではないものとする。 以下も同様に、 図
面に示されている 0の直前の係数は◦ではないものとする。
この量子化前のブロック B Lは、 図 6に示した量子化表に基づい て、 クラス番号 (C NO) 0、 量子化器番号 (QNO) 5にて量子 ィ匕されるものとする。 図 7に示したエリア番号 (ANO) によると、 数歹 IJ " 0, 1 5, 0, 0, 7 " は、 エリア番号 1であるので量子化 ステップ 2である。 数列 "0 , 9 " は、 エリア番号 3であるので量 子化ステップ 4である。
従って、 量子化を施したブロ ック B Lは、 図 1 3 Bに示すよ うに、 数歹 IJ " 0 , 1 5, 0 , 0 , 7 " は数列 " 0 , 7, 0 , 0, 3 " にな る。 数歹 IJ " 0 , 9 " は数列 0, 2 となる。
対 ( r u n , a m p ) によると、 数列 " 0, 7 , 0 , 0 , 3 " は ( 1 , 7 ) , ( 2, 3 ) と表される。 数列 " 0 , 2" は ( 1, 2 ) と表される。
従って、 図 9及び図 1 0に示した可変長符号化の符号化表による と、 数歹 IJ " 0, 7 , 0, 0, 3 " は符号語 " 1 1 1 0 1 0 0 1 0 " , 符号語 " 1 1 1 0 0 1 1 0 0 " となる。 数歹 ϋ " 0, 2 " は符号語 " 1 0 1 0 1 0" となる。
このよ うな符号化によ り得られた符号語は、 可変長符号とは同様 な逆の復号、 すなわち同じ量子化情報く QNO, CN O, AN Ο > により復号される。
ここで、 量子化による画像圧縮の効果について、 図 1 4を参照し て説明する。 図 1 3 Aに示した量子化の前のブロック B Lにおいて、 図 1 4 Aに示す、 ジグザグスキャンによる数列 " 0, 1 5 , 0, 0, 7 " 、 数列 " 0, 9 " に対して、 量子化を施さずに、 直接に可変長 符号化する場合をまず説明することにする。
この場合には、 数列 " 0, 1 5 , 0, 0 , 7 " は、 上記対 ( r u n, a m p ) によ り、 ( 1 , 1 5 ) , ( 2, 7 ) と、 数歹 U " 0, 9 " は ( 1, 9 ) と表される。 従って、 図 9及び図 1 0に示した可 変長符号化の符号化表によると、 図 1 4 Bに示すように、 数列 " 0 , 1 5, 0, 0, 7 " は符号語 " 1 1 1 1 1 0 1 1 1 1 0 1 0 " , 符 号語 " 1 1 1 1 1 0 1 1 1 0 0 0 1 " と符号化される。 数列 " 0, 9 " は符号語 " 1 1 1 1 1 0 0 1 0 0 0 " と符号化される。 すなわ ち、 数列 " 0, 1 5 , 0, 0 , 7 " は 1 3 ビッ ト及び 1 3 ビッ トに 符号化される。 数列 " 0 , 9 " は 1 1 ビッ トに符号化される。
一方、 上述した量子化後においては、 図 1 4 Cに示すように、 量 子化した係数をジグザグスキャンした、 数列 " 0, 7, 0 , 0, 3 " 、 数列 " 0, 2 " を可変長符号化すると、 図 1 4 Dに示すよう に、 それぞれ符号語 " 1 1 1 0 1 0 0 1 ◦ " の 9 ビッ ト及び符号語 " 1 1 1 0 0 1 1 ◦ 0 " の 9 ビッ トと、 符号語 " 1 0 1 0 1 0 " の 6 ビッ トに可変長符号化される。
従って、 量子化した後に可変長符号化すると、 量子化をしないで 可変長符号化する場合より も、 可変長符号の符号長を短くすること ができる。 これが、 画像圧縮の際の量子化の効果である。
すなわち、 量子化によ り、 数列 " 0、 1 5 " に対応する符号長が 1 3 ビッ トから 9 ビッ トに、 数列 " 0, 0, 7 " に対応する符号長 が 1 3 ビッ トから 9 ビッ トに、 数列 " 0, 9 " に対応する符号長が 1 1 ビッ トから 6 ビッ トに低減される。
係数の量子化とは逆に、 符号化された数列からプロック B Lに伸 長する場合には、 符号語 " 1 1 1 0 1 0 0 1 0 " , 符号語 " 1 1 1 0 0 1 1 0 0 " から ( 1, 7) , ( 2, 3 ) が得られる。 符号語
" 1 0 1 0 1 0" 力、ら ( 1, 2 ) が得られる。
さらに、 復元された対 ( r u n , a m ) の順序をも考慮すると、 図 1 5 Aに示すように、 数歹 IJ " 0, 7, 0 , 0 , 3 " であり、 数列 " 0 , 2 " が得られる。 また、 D C係数の値は 1 0 0であることも 同様にして明らかになつている。
この量子化が施されたプロック B Lを、 量子化と同じクラス番号 (CNO) 0及び同じ量子化器番号 (QNO) 5にて逆量子化する。 上述したように、 数列 " 0, 1 5, 0, 0 , 7 " は量子化ステツ プ 2であり、 数列 "0, 9 " は量子化ステップ 4である。 このよ う な量子化ステップによって逆量子化を施すと、 図 1 5 Bに示すよう に、 数列 " 0, 1 4, 0, 0 , 6 " と、 数列 " 8 , 0 " が得られる。 図 1 5 Bに示す、 符号語から伸長されたブロック B Lを、 図 1 3 Aに示す、 圧縮前のブロック B Lと比較すると、 変化している係数 がある。
すなわち、 図 1 3 Aに示した数列 " 0, 1 5, 0, 0 , 7 " に対 して、 1 5は 1 4に、 7は 6に変化している。 また、 数列 " 0, 9 " に対して、 9は 8に変化してレ、る。 このよ うに、 ブロ ック B L を符号語に圧縮して、 その符号語を伸長すると、 係数が元の値と変 化するいわゆる劣化が見られる。
いわゆる DV規格による量子化及び符号化による圧縮によると、 このような劣化と引き換えに符号量を小さくすることができる。 以上述べたようないわゆる D V規格による画像圧縮の前提となる 符号化に基づいて、 本実施の形態の画像圧縮についてさらに説明す る。
まず、 符号量と量子化情報 < QN 0, CNO, AN 0>の組み合
わせによつては、 異なる符号語であっても同じ数列にデコ一ドされ る場合があるという ことについて説明する。
例えば、 図 1 6の a に示すよ うに、 量子化情報く 5, 0, 1 >、 すなわち量子化器番号 (QNO) 5、 クラス番号 (C NO) 0及び エリア番号 (AN〇) 1なる条件にて可変長符号化された 9 ビッ ト 可変長符号語 " 1 1 1 0 0 1 1 0 ◦ " は、 図 9及び図 1 0に示した 可変長符号化の符号化表により、 対 ( r u n , a m ) と して、 ( 2, 3 ) に変換され、 対応する数列 " 0 , 0, 3" が得られる。 また、 図 6に示した量子化表によると、 量子化情報 < 5 , 0、 1 〉の量子化ステップは 2である。 従って、 図 1 6の cに示すよ うに、 エリア番号 (ANO) 1内でジグザグスキャンした量子化前の係数 の数列 " 0, 0, 6 " に伸長される。
一方、 図 1 6の bに示すように、 量子化情報 < 6, 0, 1 〉、 す なわち量子化器番号 (QNO) 6、 クラス番号 (CNO) 0及びェ リア番号 (ANO) 1なる条件にて可変長符号化された 1 1 ビッ ト 可変長符号語 " 1 1 1 1 1 0 0 0 1 1 0 " は、 図 9及び図 1 0に示 した可変長符号化の符号化表により ( 2 , 6 ) に変換され、 図 1 6 の cに示すように、 エリア番号 1内においてジグザグスキャンした 数列 "0, 0 , 6 " が得られる。 また、 図 6に示した量子化表によ ると、 量子化情報 < 6 , 0 , 1 〉の量子化ステップは 1である。 従 つて、 量子化前の D C T係数の数列 " 0, 0, 6 " に伸長される。 このよ うに、 9 ビッ トの符号語 " 1 1 1 0 0 1 1 0 0 " 及び 1 1 ビッ トの符号語 " 1 1 1 1 1 0 0 0 1 1 0 " に対して、 異なる量子 化情報く QNO, CNO, ANO〉によ り、 D C T係数の同一の数 列 " 0, 0, 6 " が得られた。 このことは、 適当な量子化情報く Q
NO, C NO, AN O〉を選択することにより、 係数をジグザグス キャンした数列を符号化した符号語の長さを短くすることができる ことを示唆している。
本実施の形態の画像圧縮の方法は、 このような符号語及び量子化 情報の組み合わせによる等価性に着目 したものである。 すなわち、 本実施の形態では、 例えば量子化器番号 (QNO) を変更せずに、 よ り一般的には、 量子化情報く QN〇, C NO, ANO >を変更せ ずに、 符号語単位で他の符号語に置換することによって、 最小限の 圧縮を可能にするものである。 すなわち、 本実施の形態においては、 符号語単位での再量子化を最小限にすることにより、 再量子化によ るデータの劣化を最小限に止めよ う とするものである。
このよ うに量子化器番号 (QN〇) 等を変更せずに符号語単位で 他の符号語に置換することによる本実施の形態による画像圧縮につ いて、 具体例を挙げて説明する。
図 1 7 Aに示す量子化前のブロ ック B Lにおいては、 図 1 3 Aに 示した量子化前のブロック B Lと同じく、 ジグザクスキヤンにより 得られる数列と して、 数列 " 0 , 1 5, 0, 0, 7 " が示されてい る。
この数列 " 0, 1 5, 0, 0 , 7 " を、 量子化条件く QNO, C NO, AN〇 >をく 6, 0 , 1 〉、 すなわち量子化器番号 (QN O) 6、 クラス番号 (C NO) 0及びエリア番号 (ANO) 1 によ り量子化することにする。
図 6に示した量子化表を参照すると、 この場合の量子化ステップ は 1であるので、 数列 " 0, 1 5, 0, 0 , 7 " は量子化によって 変化しない。 量子化された数列 " 0, 1 5, 0, 0, 7" は、 対
( r u n , a m p ) により、 ( 1 , 1 5 ) , ( 2、 7 ) となる。 図 9及び図 1 0に示した可変長符号化の符号化表を参照すると、 図 1 8 Aに示すよ うに、 数列 " 0, 1 5 , 0, 0, 7 " に対応する 1 3 ビッ トの符号語 " 1 1 1 1 1 0 1 1 1 1 0 1 0 " 及び 1 3 ビッ トの符号語 " 1 1 1 1 1 0 1 1 1 0 0 0 1 " が得られる。
このよ うに可変長符号化した符号語 " 1 1 1 1 1 0 1 1 1 1 0 1 0 " , 符号語 " 1 1 1 1 1 0 1 1 1 0 0 0 1 " を圧縮と同一の量子 化情報 < 6, 0, 1〉により伸長することにする。
図 6に示した可変長符号化表により、 符号語 " 1 1 1 1 1 0 1 1 1 1 0 1 0" , 符号語 " 1 1 1 1 1 0 1 1 1 0 0 0 1 " に対応する ( 1, 1 5) , ( 2, 7 ) が得られる。 上述したように量子化ステ ップは、 1であるので、 ( 1, 1 5 ) , ( 2, 7 ) に対応する元の 数列 "0 , 1 5 , 0, 0 , 7 " に伸長される。
このよ うに、 可変長符号化への圧縮及び伸長によって劣化が起こ らないよ うにする場合には、 0じ丁係数の数列 " 0, 1 5, 0, 0, 7 " は、 1 3 ビッ トの符号語及び 1 3 ビッ トの符号語に変換される。 続いて、 量子化器番号 (QNO) を 6から 5に変更した場合につ いて説明する。
図 1 3を参照して上述したよ うな符号化によると、 図 1 7 Aに示 した数列 "0, 1 5, 0, 0, 7 " は、 量子化情報く QN〇, C N O, ANO〉がく 5、 0、 1 〉、 すなわち量子化器番号 (QNO) 5、 クラス番号 (CN〇) 0及びエリア番号 (ANO) 1 における 量子化ステップ 2により "0, 7, 0, 0, 3 " に量子化された。
さらに、 数列 " 0, 7, 0 , 0, 3 " は、 上記対 ( r u n , a m p ) によ り、 ( 1, 7) , ( 2, 3 ) と表され、 図 9及び図 1 0に
示した可変長符号化の符号化表を参照することにより、 図 1 8 Bに 示すよ うに、 9 ビッ トの符号語 " 1 1 1 0 1 0 0 1 0 " 及び 9 ビッ トの符号語 " 1 1 1 0 0 1 1 0 0 " に可変長符号化された。
このよ うに可変長符号化した符号語 " 1 1 1 0 1 0 0 1 0" , 符 号語 " 1 1 1 0 0 1 1 0 0 " は、 図 1 7 Bに示すよ うに、 符号化と は逆の手順により、 圧縮と同一の量子化情報 < 5, 0, 1 〉を用い ることにより劣化した数列 " 0, 1 4 , 0 , 0, 6 " に伸長される。 この方法によると、 上述のよ うに可変長符号語への圧縮と伸長に よ り D C T係数の劣化を発生しないよ うに量子化器番号 (QN O) 6を選択した場合と比較すると、 可変長符号語のビッ ト数は 1 3 ビ ッ ト及び 1 3ビッ トカゝら 9 ビッ ト及び 9 ビッ 卜まで、 すなわち 8 ビ ッ ト削減されている。
本実施の形態の画像圧縮の方法は、 図 1 7 Cに示すように、 図 1 7 Aに示した D C T係数の数列 "0 , 1 5, 0 , 0, 7 " において、 数列 " 0, 0, 7 " の部分を " 0 , 0, 6 " と置換した後に、 量子 化器番号 (QNO) 6 と したまま変化させないで量子化及び可変長 符号化を行う ものである。
上述したように、 量子化情報く QNO, C NO, ANO〉をく 6, 0, 1 >とすると、 量子化ステップは 1であるので、 置換をした数 列 " 0, 1 5, 0 , 0, 6 " は量子化によって変化しない。
量子化した数列 " 0 , 1 4 , 0 , 0, 6 " を、 上記対 ( r u n , a m ) により、 ( 1, 1 5 ) , ( 2 , 6 ) と表し、 図 9及び図 1 0に示した可変長符号化の符号化表を参照すると、 図 1 8 Cに示す よ うに、 1 3 ビッ トの符号語 " 1 1 1 1 1 0 1 1 1 1 0 1 0 " 及び 1 1 ビッ トの符号語 " 1 1 1 1 1 0 0 0 1 1 0 " が得られる。
このように、 本実施の形態の圧縮方法によると、 量子化器番号
(QNO) を 6に保ったまま、 係数をジグザグスキャンした数列を 置換することによ り、 上述のよ うに可変長符号語への圧縮と伸長に よ り係数の劣化を発生しないよ うにした場合と比較すると、 可変長 符号語のビッ ト数は 1 3 ビッ ト及び 1 3 ビッ トカゝら 1 3 ビッ ト及び 1 1 ビッ トになり、 すなわち 2 ビッ ト削減される。
本実施の形態の圧縮方法によると、 量子化及び符号化による圧縮 及び伸長により D C T係数に劣化が起こらないように量子化条件 < QNO, CNO, AN O >を選択した場合に比較して、 量子化器番 号 (QNO) を変更したり、 D C T係数の数列を置換することによ つて、 伸長した際に D C T係数が数列 " 0, 0, 7 " 力 ら " 0, 0, 6 " と劣化することと引き換えに、 圧縮した際の符号語の符号長が 短縮される。
また、 本実施の形態の画像圧縮の方法によると、 量子化条件 < Q NO, C NO, A N〇〉の内で量子化器番号 (QNO) を変更して 圧縮した場合と比較すると、 圧縮率は小さいものの、 量子化器番号
(QNO) が変わらないため、 他のブロ ック B Lやエリアの符号語 に影響が波及しないという利点がある。
本実施の形態の画像圧縮の方法は、 図 9及び図 1 0に示した可変 長符号化の符号化表の中から、 量子化条件 < QNO, C NO, AN 0〉の内で量子化器番号 (QN〇) を変更して一段粗く量子化した 場合と、 同じデコ一ド結果が得られるよ うな符号語が存在する符号 語に対して、 符号語を置換することによ り圧縮するものである。 例 えば、 上述の例では、 係数の数列 "0, 0, 7 " を量子化器番号
(QNO) を変化させないままで数列 " 0 , 0, 6 " に置換して圧
縮した。
本実施の形態の画像圧縮の方法では、 これ以外にも、 a m p == 1 の符号語について、 一段粗い量子化によ り a m p = 0の符号語に置 換することにより符号長を短くすることができる場合がある。
図 1 1 に示した可変長符号化の符号語長の表においては、 本実施 の形態の画像圧縮の方法による置換が可能な符号語の対 ( r u n , a m p ) を〇にて示されている。 すなわち、 図に示すように、 置換 による符号語の長さが削減可能な符号語は、 ( 0, 3 ) , ( 1, 3 ) , ( 2 , 3 ) 、 ( 3 , 3 ) , (4, 3 ) 、 ( 5, 3 ) , ( 6, 3 ) , ( 0, 5 ) , ( 1 , 5 ) , (4, 5 ) , (0, 7 ) 、 ( 2, 7 ) , ( 4, 7 ) , ( 0 , 9 ) , ( 1 , 9 ) , ( 1 , 1 5 ) 及び ( 0 , 2 3 ) である。
なお、 上述した置換により符号語の長さの削減が可能な符号語は、 例えば次の図 1 9で示すような関数を用いて求められる。
以下、 本実施の形態の圧縮方法による符号語置換による削減され るビッ ト数を表す関数のプログラムについて、 図 1 9を参照して説 明する。
削減ビッ ト数を返す関数 sHuffmanReducibleには、 削減ビッ ト数を 調べる符号語 (nRun, nAmp) を引数とする。 戻り値は、 削減ビッ ト 数であるが、 削減されない場合には 0を返す。
但し、 nAmpの範囲は、
nAmp> 1
又は
nAmp、- 1
である。 なお、 ここで除かれた nAtnpの範囲の削減ビッ ト数を返す関
数については、 後に述べる。
この関数においては、 まず ηΑηιρの絶対値が取られ、 絶対値が 3よ り小さいか 2 3より大きい場合には、 削減されないと して 0が返さ れる。 そして、 符号化した符号長を返す関数 sHuffmannLengthを用い て、 nAmpの符号長と、 ηΑπ -lの符号長の差が取られる。 差が 0より 大きいときには削減ビッ ト数と してその値を返し、 そうでないとき には削減されないと して 0を返す。
符号長を返す関数 sHuffmannLengthは、 例えば図 1 1 に示した符号 化の符号語長の表を参照することにより実現される。
関数 sHuffmanReducibleの対象力 ら除レヽた、
nAmp=-l, 0, 1
ίこつ ヽて ίま、 関数 sHuffmanReducibleToAmpO (こよ り扱われる。 戻りィ直 は削減ビッ ト数であるが、 削減できない場合は 0又は負数を返す。
この関数は、 削減ビッ ト数を調べる符号語 (nRun,nAmp) 及び次の 符号語 (nNextRun, nNex rap) を引数とする。 まず、 次の符号語の n NextRunが E〇 Bであるときには、 関数 sHuf f manLengthを用いて、 肖 U 減ビッ ト数を調べる符号語のハフマン符号長を返す。
そうでないときには、 関数 sHuffmanLengthを用いて、 削減ビッ ト 数を求める符号語及び削減ビッ ト数を求める符号語の次の符号語の 符号語長の和カ ら (nNextRun, nRun + 1+nNextRun) によって表される 符号の符号長の差を求め、 この値を削減ビッ ト数と して返す。
本実施の形態の圧縮方式においては、 符号語のビッ ト数を削減す ることが可能か否かは、 量子化条件く QN〇, CNO, AN〇 >、 すなわち、 量子化器番号 (QNO) 、 クラス番号 (C NO) 及びェ リア番号 (ANO) の組に依存している。
量子化条件 < Q NO C NO, A N〇〉に基づいた符号語のビッ ト数の削減が可能であるか否かの判別は、 図 2 0に示すよ うに、 関 数 sQstepRducibleと して実現される。
この関数は、 量子ィ匕条件く nQno, nClassNo, nAreaNo〉、 すなわち、 量子化器番号 nQno、 クラス番号 nClassNo及びェリァ番号 nAreaNoを引 数と している。 そして、 量子化条件と削減可能であるかを 2値で表 した 歹1 J sQStepReductionTableO, sQStepReductionTablel, sQStep ReductionTable2, sQStepReduc t ionTab le3を参照して、 ビッ 卜削減 が可能であるか否かを 1又は 0の 2値にて返す。
本実施の形態の圧縮方法によると、 上述したような置換を、 量子 化されたブロック B Lの高域にある符号語から低域にある符号語に 順次に適用している。 図 1 7 Cを参照した本実施の形態は、 この一 例である。
すなわち、 ある量子化情報 < Q N O C N O, AN O〉に対して 関数 sQStepReducibleにより可変長符号化によるビッ ト削減が可能で あるか否かが判別される。 また対 ( r u n , a m p ) によって表さ れる符号語に対して関数 sHuffmanReduc ible又は sHuff Reducible ToAmpOにより ビッ ト削減が可能であるか否かが判別される。
そして、 これらの関数を用いて、 例えば図 2 1に示す関数 Requan tizeRunAmpを用いて、 符号語置換を行っていく。 この関数は、 ある ブロック B Lの ( r u n , a m p ) 対の配列と 目標削減ビッ ト数、 量子化器番号 (Q N O) 、 クラス番号 (C NO) を入力し、 置換後 の結果を対 ( r u n , a m p ) による配列に格納するものである。 すなわち、 この関数 RequantizeRunAmpは、 ( r u n , a m p ) の 配列 (pRuns, pAmps) 、 このブロ ック B Lの目標削減ビッ ト数 nRedu
cingSize、 このブロ ック B Lの量子化器番号 nQno及びクラス番号 nC lassNoを引数と してレヽる。
この関数 RequantizeRunAmpにおレ、ては、 以下のような手順により 処理が行われる。 まず、 図 2 1 中の aの部分においては、 入力され た対 (pRuns, pAmps) の配列に対するエリア分けが施される。 すなわ ち、 入力された (pRuns, pAmps) の配列は、 図 7に示したよ うなエリ ァに分けられる。
図 2 2中の bの部分においては、 図 2 0で示した量子化条件く Q N O, C N〇, A N〇 >によ り ビッ ト削減が可能であるか否かを判 別する関数 sQStepReducibleを用いて、 ェリァ分けされた各領域が削 減可能であるかを調べる。
図 2 2中の cの部分においては、 関数 sQStepReducibleによ り削減 可能であると判断されたときには、 図 1 9に示した関数 sHuffmanRe ducible又は sHuffmanReducibleToAmpOを用レヽて、 各ェリァ内の酉己歹リ
(pRuns, pAmps) を後ろ、 すなわち高域から削減可能であるかを調べ、 削減可能であるときにはビッ ト数削減するように符号語を置換する。 図 2 2中の dの部分においては、 そのエリアについて、 符号語を 1つ置換するごとに、 これまでの削減ビッ ト数の合計を調べる。 そ して、 目標削減ビッ ト数に達していれば終了し、 削減したビッ ト数 の総数を返す。
図 2 2中の eの部分においては、 配歹 U (pRuns, pAmps) について全 てのエリァについて上述の処理が行われたので、 最後に削減された ビッ ト数を返す。
この関数 RequantizeRunAmpで(ま、 対 ( r u n , a m ) に対して 置換処理を行ったが、 後述する図 2 4に示すような入力コード (in
put code) と新コード (new code) との対応関係の表を用いて、 可 変長符号化されて符号語とされた D C T係数を直接に置換すること も可能である。
例えば、 置換可能なェリアに 1 0 0 0 0 という符号語が見つかつ た場合、 図 2 3の対応関係の表を参照することにより、 これを 0 1 0 0に置換することができる。
ブロック B Lの係数をジグザクスキャンした数列において高域か ら低域にビッ ト削減可能な符号語を順次に削減していく過程におい て、 ターゲッ トビッ ト数、 すなわち目標符号量に達した場合、 それ 以上置換する必要はなく 、 低域部は元の値のままとなる。 一般に低 域部には画像情報の重要な係数が集中しており、 低域部が維持され れば画質劣化が少ないといえる。
ブロック B L内すベての符号語に対して、 上記の置換を施しても 目標符号量が得られない場合、 図 1 7 Bに示した方法と同様に、 量 子化器番号 (Q N O ) を変更する。 それでも目標符号量に達しない 場合、 新しい量子化器番号に対して本実施の形態による圧縮方式に よる置換を行う。 これを目標符号量に達するまで繰り返す。
なお、 各ブロック B Lの目標符号量の決め方の一例と して、 図 2 4に示すよ うに、 ビデオセグメン ト V S容量を越えたビッ ト数を各 ブロック B Lに分配し、 これを各プロック B Lの削減目標符号量 R m nとする。 各ブロック B Lに対して、 本実施の形態による符号語 単位での圧縮を行い、 削減量の合計が R m nに達するまで反復する。
ここで、 圧縮前の各ブロック B Lの符号量を B m n ビッ トとする。 ここで、 m ( 0 < m < 4 ) はマクロブロ ック M Lの番号であり、 n ( 0 < n < 5 ) はブロック B Lの番号である。
ビデオセグメン トの容量を Mビッ トとするとき、 ビデオセグメン ト V S全体で削減しなければならないビッ ト数 Rは、
R =∑ 4〖=。∑ 5 ' =。 B i j - M
である。 これより、 各ブロック B Lの削減目標 R m nは、 式
R m n = R X B m n Z∑ 4 i =。∑ 5 , =。 B i j
により求められる。
また、 以上説明した本実施の形態による画像圧縮の方式は、 原画 像を圧縮する場合にも適用することができる。
従来は、 目標符号量が得られるまでブロック B L単位で、 ターゲ ッ トビッ トを目標と して何度か圧縮し直していた。 すなわち、 再量 子化に続いて再可変長符号化を行う ことを繰り返していた。
しかし、 本実施の形態の画像圧縮の方法によると、 一度圧縮した 結果を元にさらに 「符号語単位」 で圧縮することができるため、 よ り 目標符号量に近い符号化を行う ことができる。
すなわち、 本実施の形態の画像圧縮の方法によると、 決められた 符号容量をより効率よく利用でき、 画質劣化がそれだけ少なくて済 む。 さらに 2回目以降の圧縮が符号語の置換で行うため、 ブロ ック B L全体を圧縮し直す従来法よ り高速に処理できる。
さらに、 本実施の形態による画像圧縮の方法は、 別の応用と して、 既に圧縮された画像の加工の際にも適用できる。
従来、 圧縮画像に対してタイ トル挿入や画面合成といった合成処 理を行う場合など、 一度フレーム全体を伸長し直した後、 所望の処 理を施し、 再圧縮するのが通例であった。
これに対し、 よ り効率的で、 演算誤差に伴う劣化を回避する方法 と して、 必要最低限の部分のみ伸長'際圧縮する方法が提案されてい
る。 この方法はデジタル信号を、 加工処理単位と してのブロ ック B Lに分割し、 このブロ ック B Lごとに独立に上記デジタル信号を加 ェ処理するものである。 これにより、 例えば画像全体において編集 が必要な最小限の部分のみについて加工処理を行うことができる。
この方法によれば、 合成処理されるまでの部分を含む周辺のみ伸 長 · 合成処理 · 再圧縮が必要となり、 フレーム内の残りの大部分は 圧縮されたまま複製すれば済む。
しかし、 一般に圧縮画像はある単位ごとの符号量に上限が決めら れており、 複製しただけではこの上限値を超えてしま う場合がある。 この場合、 何らかの再圧縮が必要になる。 このようなとき、 本実施 の形態による圧縮方式により効率よく、. 劣化を少なく再圧縮するこ とが可能である。
2つの入力 D V画像 A, Bを合成して出力 D V画像 Cを得る場合 について、 図 2 5を参照して説明する。
このとき、 合成境界に係らないプロ ック B Lは圧縮されたまま複 製可能である。 また、 合成境界に係るブロック B Lは例えば伸長し、 圧縮し、 再圧縮することで圧縮された合成プロ ック B Lを生成する ことができる。
いま、 セグメン トの中の 5マクロブロ ック M Bの内、 4つが A力 らの複製で、 1つが Bからの複製、 又は合成ブロック B Lであると する。 このとき、 B力 ら複製ブロック B L、 又は合成ブロック B L の符号量によってはビデオセグメント V S容量を越えてしまい、 再 圧縮する必要がある場合がある。
このよ うな場合に、 本実施の形態による圧縮方法により、 可変長 符号語レベルで圧縮することが効果的である。
なお、 上述の実施の形態においては、 いわゆる D V形式のフォー マッ トに対して適用されるものと して説明したが、 本実施の形態が これに限定されるものでないことはもちろんである。
上述のように、 本発明によると、 可変長符号語に対して、 量子化 番号等の量子化情報を変更することなく、 さらに圧縮することがで さる。
また、 本発明によると、 符号語単位で圧縮できるため、 例えば D C T係数の低域は変更せず、 高域のみ本方式により部分的に圧縮す ることができ、 よ り劣化の少ない、 すなわち元の信号をより多く維 持した画像が得られる。 このため、 最悪でも量子化番号等を変更す る従来の圧縮と同じ結果を得ることができる。
さらに、 本発明によると、 符号語という小さな単位で処理するた め、 より 目標符号量に近づけることができ、 符号容量を有効利用で さる。
そして、 本発明によると、 符号語に対して、 デコー ドせずに置換 するだけなので、 処理が簡単で高速に行える。 また、 本発明による と、 ェンコ一ド時などに行った符号化が無駄になりにくい。
さらにまた、 本発明によると、 既に圧縮された画像に対して、 一 部変更した結果、 圧縮が必要になった場合に、 再量子化及び再符号 化せずにさらに圧縮できる。