(57)【特許請求の範囲】
【請求項１】
画面をブロック化して圧縮量子化を行う映像信号の圧縮装置であって、
画面のブロック化が行われた映像信号を周波数領域へ直交変換する直交変換手段と、
前記直交変換手段で直交変換された信号を量子化する量子化手段と、
前記量子化手段で量子化された信号を符号化する可変長符号化手段と、
画面上の各ブロック内の信号のダイナミックレンジと平均値を求め、これらに基づいて量子化値を決定して前記量子化手段に与える前処理手段とを備え、
前記前処理手段は、前記可変長符号化手段で符号化された圧縮コードのビット長を全画面に亘って計測するとともに、この全コードビット長をコード長の上限値と比較し、該上限値を越えている場合には、ＡＣ成分、ＤＣ成分個別に量子化を粗くするためのクオリティファクタを求めて前記量子化手段に与え、
前記量子化手段は、前記前処理手段から与えられる前記クオリティファクタに基づいて再度量子化を実施し、その結果を前記可変長符号化手段に与える
ことを特徴とする映像信号の圧縮装置。
【請求項２】
前記量子化手段は、指定された圧縮倍率に応じて予め経験的に求めた量子化値を初期値として量子化を実施し、
前記前処理手段は、全コードビット長が前記上限値を越えた場合、先ずＡＣ成分のクオリティファクタを求め、これに基づいてＡＣ成分だけの符号化を実行させて再度全コードビット長を求め、この全コードビット長が前記上限値を越えるがある許容偏差内に収まる場合はＤＣ成分のクオリティファクタを求め、これに基づいてＤＣ成分の符号化を実行させる
ことを特徴とする請求項１記載の映像信号の圧縮装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、映像信号の圧縮装置に関し、特にＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ），ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ），Ｈ．２６１／２６３などの国際標準規格に代表される画面をブロック化して圧縮量子化を行う圧縮方式を用いた映像信号の圧縮装置に関する。
【０００２】
【従来の技術】
従来、この種の圧縮装置においては、画面上の各ブロック毎の信号振幅の標準偏差を求め、この標準偏差に基づいて圧縮量子化を行う際の量子化値を決定する構成を採っていた。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の圧縮装置では、標準偏差を求めていることから、その演算量が多く、時間もかかるため、消費電力が増大するとともに、スループットタイムを大きくするという問題があった。
【０００４】
本発明は、上記課題に鑑みてなされたものであり、その目的とするところは、計算量が少なく、スループットタイムの向上に寄与し得る映像信号の圧縮装置を提供することにある。
【０００５】
【課題を解決するための手段】
本発明による映像信号の圧縮装置は、画面をブロック化して圧縮量子化を行う圧縮装置であって、画面のブロック化が行われた映像信号を周波数領域へ直交変換する直交変換手段と、この直交変換手段で直交変換された信号を量子化する量子化手段と、この量子化手段で量子化された信号を符号化する可変長符号化手段と、画面上の各ブロック内の信号のダイナミックレンジと平均値を求め、これらに基づいて量子化値を決定して量子化手段に与える前処理手段とを備え、前記前処理手段が、前記可変長符号化手段で符号化された圧縮コードのビット長を全画面に亘って計測するとともに、この全コードビット長をコード長の上限値と比較し、該上限値を越えている場合には、ＡＣ成分、ＤＣ成分個別に量子化を粗くするためのクオリティファクタを求めて前記量子化手段に与え、前記量子化手段が、前記前処理手段から与えられる前記クオリティファクタに基づいて再度量子化を実施し、その結果を前記可変長符号化手段に与える構成となっている。
【０００６】
上記構成の圧縮装置において、量子化のための量子化値の決定の際、画面上の各ブロック内の信号のダイナミックレンジと平均値を求め、これを基に視感評価上好ましい量子化値を決定する。すなわち、輪郭部ではマスキング効果によりノイズが目立ちにくく、暗いところではノイズが目立ちにくい、という視感特性を利用し、前者ではダイナミックレンジを、後者では平均値をそれぞれ参照して量子化値を決定する。
【０００７】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照しつつ詳細に説明する。図１は、例えばＪＰＥＧのエンコーダに適用された本発明の一実施形態を示すブロック図である。
【０００８】
図１において、映像信号はＡ／Ｄ変換器１でディジタル化されてバッファ２に入力され、ここで画面のブロック化が行われた後、ＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ；離散コサイン変換）回路３に供給される。ここに、ＤＣＴとは、フーリエ変換の一種で、画像信号の空間周波数成分を求めるための直交変換の一手法であり、画像を横方向の細かさと縦方向の細かさに分解する。このＤＣＴ回路３で周波数領域へ直交変換された信号は、量子化器４で量子化され、しかる後可変長符号化器５に入力される。
【０００９】
一方、ユーザーインタフェース６からは、前処理回路７に対して圧縮倍率がユーザーによって指定入力される。前処理回路７は、バッファ２から各ブロックデータを読み出し、ダイナミックレンジ（ＤＲ）と平均値（ＤＣ）を求め、ユーザーインタフェース６から指定された圧縮倍率に応じて予め経験的に求められた量子化値を初期値として量子化器４に与える。なお、量子化値は、予め定められた重み係数とスケールファクタからなる。量子化器４で量子化された信号は、可変長符号化器５で符号化されて最終圧縮コードになる。
【００１０】
前処理回路７は、この圧縮コードのビット長を全画面に亘って計測するとともに、この全コードビット長をユーザーインタフェース６から指定される圧縮倍率から求まるコード長の上限値と比較し、当該上限値を越えていれば、ＡＣ成分、ＤＣ成分個別に量子化を粗くするためのクオリティファクタを求め、これを量子化器４に与える。これにより、量子化器４は再度量子化を実施し、その結果を可変長符号化器５に与える。これを前処理回路７がチェックし、圧縮コードのビット長がコード長の上限値を越えていれば、以上の処理を当該上限値内に収まるまで繰り返す。
【００１１】
ここで、決定論的に決められないのは可変長符号化器５に起因する故である。前処理回路７において、クオリティファクタを求める場合、処理を早く済ませるために全コードビット長を計測する際に推定を行っている。これは、量子化を粗くしてコード長が短くなるのが期待できるのは、ＤＣ成分（サイズ，振幅）、ＡＣ成分（ラン（Ｒｕｎ）／サイズ，振幅）の振幅だけである。サイズ，ラン／サイズは可変長符号化のため必ずしも短くなると期待できない。したがって、クオリティファクタを求める際に推定せざるを得ない。
【００１２】
ところで、同じＤＣＴベースの圧縮法といえども、ＪＰＥＧ等の静止画圧縮法とＨ．２６１／２６３で代表される動画圧縮法ではその量子化則に違いがある。先ず、ＪＰＥＧでは、ＤＣＴを掛けて量子化した後、ＤＣ成分は隣りのブロックとの差分値が可変長符号化に掛けられ、ＡＣ成分はそのまま可変長符号化に掛けられる。量子化については、画面全体に亘って一様な量子化値が用いられる。量子化値は重み係数とスケールファクタの２因子からなる。ただし、ＤＣ他各ＡＣ係数毎に違ったスケールファクタを定義できる。さらに、ＵＶに異なったスケールファクタが用いられる。
【００１３】
一方、Ｈ．２６１／２６３では、重み係数はピクチュア単位で一定であり、スケールファクタはマクロブロック（ＭＢ）毎に変えられる。Ｉ（Ｉｎｔｒａ）  ピクチュア（フレーム内符号化画像）は基本的にＪＰＥＧと同じである。Ｐ（Ｐｒｅｄｉｃｔｉｖｅ）ピクチュア（フレーム間順方向予測符号化画像）およびＢ（Ｂｉｄｉｒｅｃｔｉｏｎａｌｌｙ  ｐｒｅｄｉｃｔｉｖｅ）ピクチュア（双方向予測符号化画像）は時間領域で前フレームとの差分をとった後ＤＣＴを掛け、そのまま量子化に移る。ただし、いずれの場合にも、ＡＣ成分は全てマクロブロック内で一様なスケールファクタを用いる。ＵＶには異なったスケールファクタが定義できる。以上のことを整理して表１に示す。
【００１４】
【表１】
0003624581.tif 000002
【００１５】
なお、表１において、Ｗは重み係数（Ｗｅｉｇｈｔｉｎｇ  Ｆｕｎｃｔｉｏｎ）を、Ｙは輝度信号を、Ｃはクロマ信号を、ＤＣはＤＣ成分を、ＡＣはＡＣ成分を、ＪはＪＰＥＧを、ＨはＨ．２６１／２６３をそれぞれ示している。また、（ｉ）は一画面全体でマクロブロック（ＭＢ）毎に変わることはないが、係数毎に異なった値を持つ。一方、（ＭＢｉ）は係数毎ではなく、マクロブロック毎に値が異なることを示している。
【００１６】
上記の流れ作業に入る前に、入力信号を時間領域で評価した上で意思決定し、フィードフォワード形式で上記パイプライン動作に入る方が円滑であり、かつ合理的である。以降、この線に沿って具体例について説明する。この具体例では、基本的には、ＡＤＲＣ（Ａｄａｐｔｉｖｅ  Ｄｙｎａｍｉｃ  Ｒａｎｇｅ  Ｃｏｄｉｎｇ）  の圧縮方式をベースにしている。
【００１７】
このＡＤＲＣは、実際の信号の振幅がいつもフルに変化しないことに着目して適応的に量子化則を変えて圧縮を実行する方式である。簡単に言えば、ブロック内の信号の最小値と最大値を求め、そのダイナミックレンジの大きさに応じて量子化ビット数を決定して量子化を実行した後、先の最小値とダイナミックレンジのペアと共に伝送するものである。ダイナミックレンジに応じた量子化ビット数の割り当て方は、表２に示す通りである。
【００１８】
【表２】
0003624581.tif 000003
【００１９】
表２から明らかなように、ダイナミックレンジは大きくなるにつれ、そのレベル数の割りには量子化ビット数は増えていない。これは変化の激しいところは輪郭部であり、そこではマスキング効果により量子化雑音が目立ちにいくことを勘案しているためである。しかし、これはあくまでダイナミックレンジだけに着目した量子化であり、絶対的な振幅レベル（あるいは平均値）の違いまで考慮した量子化ではない。本来、高圧縮よりは高画質を目指したものである。
【００２０】
次に、周波数領域での量子化則の決定について説明する。Ｈ．２６１／２６３のＩピクチュア、ＪＰＥＧに関して時間領域で周波数領域での適切な量子化則を決定するために、下記▲１▼，▲２▼の視感評価上の特徴を考慮に入れる。
▲１▼暗い（低輝度）ところでは雑音が目立ちにくい。
▲２▼輪郭部では雑音が目立ちにくい（マスキング効果）。
【００２１】
このために、ダイナミックレンジ以外に平均値（ＤＣ成分）を判断材料に加える。平均値の属するゾーンをダイナミックレンジの分類と同様に非線形で低い方からＡ，Ｂ，Ｃ，Ｄの４つに分け、各ゾーン間の相対的なスケールファクタを表３に示すように定める。これは、低輝度部では結果として、粗い量子化を行おうとするものである。非線形にしたのは、ＤＣ成分の画質への影響度を考えると、輝度が中から大の領域はあまり細く区切って手を加え過ぎない方が無難なのと、判断処理の簡略化のためである。
【００２２】
【表３】
0003624581.tif 000004
【００２３】
ＪＰＥＧないしＨ．２６１／２６３のＩピクチュアのＤＣ成分は量子化後隣り合うブロック間の差分値を可変長符号化に掛けるので、低輝度のところで粗く量子化することは差分値がさらに低い方に集中しやすく符号化効率向上に寄与するものと考えられる。平均値を求めながら信号のダイナミックレンジを計測する。ダイナミックレンジに応じた量子化ビット数の割り当て方はＡＤＲＣにならったものである。
【００２４】
結局、総合的なスケールファクタは概念的に次式のように定義される。
ＤＣ用スケールファクタ＝相対スケールファクタ×圧縮率
ＡＣ用スケールファクタ＝ダイナミックレンジ×圧縮率
上式において、圧縮率の項には実際の圧縮倍率に０．１〜０．２の係数を掛けた値が手頃と思われる。ダイナミックレンジの項に使用すべき値は、表４に示すものが目安となる。
【００２５】
【表４】
0003624581.tif 000005
【００２６】
ＪＰＥＧは、画面全体で一定のスケールファクタを用いることから、ＤＣ成分については、相対スケールファクタを１に固定する。ＡＣ成分については、ダイナミックレンジの出現頻度をとり、一番高いもののスケールファクタで代表させる。
【００２７】
一方、Ｈ．２６１／２６３では、ＩピクチュアはＪＰＥＧに似ているが、上記ルールを適用しＤＣ／ＡＣ成分共にマクロブロックごとにスケールファクタを変化させる。Ｐ，Ｂピクチュアは時間領域で前フレームとの差分信号をＤＣＴし量子化する点で違いがあるが、同様にＤＣ／ＡＣ成分共に上記ルールを適用する。特に、差分値は情報が縮退しているので、ＤＣＴの結果から直接量子化を考えるのはなおさら難しい。これに比して時間領域で平均値、ダイナミックレンジから予め量子化法を判断してＤＣＴ後の量子化を実行する方が理にかなっている。
【００２８】
続いて、レートコントロールについて説明する。応用によって例えば静止画カメラのように１フレームの量子化ビット数をある値以内に抑えなければならない場合がある。また、ビデオコンファランスにしても倍率を指定して所望のフレームレートを設定できることが望ましい。これがレートコントロールである。予め複数の画像を基に圧縮倍率とスケールファクタの関係を把握し、スケールファクタの上限値を求めておく。しかし、これでコードビット量が枠内に必ず入るとは限らない。
【００２９】
そこで、量子化を行いながら全コードビット量を求めた後、はみ出した場合は最終調整に入る。このとき規定枠内に収めるために、ＤＣ成分とＡＣ成分の現スケールファクタ個々に一様に乗ずる係数をクオリティファクタと称する。
【００３０】
以下、上記構成の本発明に係る映像信号の圧縮装置において、量子化のための量子化値を決定する際の処理手順について、図２のフローチャートにしたがって説明する。
【００３１】
先ず、各マクロブロックのダイナミックレンジ（ＤＲ）および平均値（以下、ＤＣ値と称する））を求め（ステップＳ１）、さらにダイナミックレンジおよびＤＣ値からスケールファクタを求める（ステップＳ２）。次に、ＡＣ成分用クオリティファクタＱＦＡおよびＡＣ成分用クオリティファクタＱＦＤの各逆数ＱＦＡＩ，ＱＦＤＩを１．０に設定する（ステップＳ３）。そして、量子化を実行し（ステップＳ４）、続いて可変長符号化を実行する（ステップＳ５）。
【００３２】
ここで、ＤＣ成分のサイズの全コード長ＳＤＣＳ、ＤＣ成分の振幅の全コード長ＳＤＣＡ、ＡＣ成分のラン／サイズの全コード長ＳＡＣＲＳ、ＡＣ成分の振幅の全コード長ＳＡＣＡ、ＤＣ成分の振幅のビット長毎の発生頻度行列ＦＤＣＡ（ｉ）  、ＡＣ成分の振幅のビット長毎の発生頻度行列ＦＡＣＡ（ｉ）  の統計をとり（ステップＳ６）、これらに基づいて全コードビット長（あるいはその推定値）ＴＳを求める（ステップＳ７）。すなわち、ＴＳ＝ＳＤＣＳ＋ＳＤＣＡ＋ＳＡＣＲＳ＋ＳＡＣＡなる演算を行う。そして、この全コードビット長（あるいはその推定値）ＴＳをコード長の上限値ＬＣと比較する（ステップＳ８）。
【００３３】
ここで、ＴＳ＜ＬＣの場合、即ち全コードビット長（あるいはその推定値）ＴＳが枠内に収まった場合は、一連の処理を終了する。ＴＳ≧ＬＣの場合、即ち枠内に収まらない場合には、先ず、ＡＣコードのクオリティファクタを以下の処理手順によって求める。すなわち、ＡＣ成分用クオリティファクタＱＦＡの逆数ＱＦＡＩを０．９に設定し、ＡＣ成分の振幅のビット長毎の発生頻度行列ＦＡＣＡ（ｉ）  を再度求め（ステップＳ９）、次いで全コードビット長（あるいはその推定値）ＴＳを求め（ステップＳ１０）、全コードビット長（あるいはその推定値）ＴＳとコード長の上限値ＬＣとの差分の絶対値｜ＴＳ−ＬＣ｜と全コード長の上限に対する許容偏差ｅとを比較する（ステップＳ１１）。
【００３４】
｜ＴＳ−ＬＣ｜≧ｅであれば、ステップＳ９に戻って同様の処理を実行する。｜ＴＳ−ＬＣ｜＜ｅであれば、全コードビット長（あるいはその推定値）ＴＳをコード長の上限値ＬＣと比較する（ステップＳ１２）。ここで、ＴＳ＜ＬＣであれば、ＡＣコードのクオリティファクタＱＦＡを求め（ステップＳ１３）、しかる後ステップＳ４に移行して先述した処理と同様の処理を実行する。一方、ＴＳ≧ＬＣであれば、以下の処理手順によってＤＣコードのクオリティファクタを求める。
【００３５】
すなわち、ＤＣ成分用クオリティファクタＱＦＤの逆数ＱＦＤＩを０．９に設定し、ＤＣ成分の振幅のビット長毎の発生頻度行列ＦＤＣＡ（ｉ）  を再度求め（ステップＳ１４）、次に全コードビット長（あるいはその推定値）ＴＳを求め（ステップＳ１５）、全コードビット長（あるいはその推定値）ＴＳをコード長の上限値ＬＣと比較する（ステップＳ１６）。そして、ＴＳ≧ＬＣであれば、ステップＳ１４に戻って同様の処理を実行する。ＴＳ＜ＬＣであれば、ＤＣコードのクオリティファクタＱＦＤを求め（ステップＳ１７）、しかる後ステップＳ４に移行して先述した処理と同様の処理を実行する。
【００３６】
ここで、上述した手順の有効性について説明するために、先ず、クオリティファクタを大きくしたときのコードビット長に与える影響について述べる。ＤＣ成分のコードは（サイズ，振幅）、ＡＣ成分のそれは（ラン／サイズ，振幅）であるが、クオリティファクタが大きくなっても、サイズ，ラン／サイズのコードビット長はホフマンコーディングの性格上必ずしも小さくなるとは期待できない。一方、振幅は確実に小さくなる。
【００３７】
したがって、クオリティファクタの決定は、振幅への影響だけを考慮に入れてＡＣ成分についてだけ求めた後、全コードビット長の推定値が枠内に入ればＡＣ成分だけの符号化を再実行し、再度コード長の総計を調べる。枠内に収まらないが偏差がある値以内であれば、ＤＣ成分のクオリティファクタを求める処理に移行する。その後、全体の符号化を実行し、コードビット長を計算する。これでもホフマンコーディングの不確定性のために枠内に収まらない可能性がある。
【００３８】
ここで、ＤＣ成分とＡＣ成分を別けて扱うのは、ＤＣ成分のスケーリングの画質に及ぼす影響が大きいので、できるだけＡＣ成分だけの調整で済ませた方が良いからである。このように、視感評価上の効果を考慮に入れたレートコントロールにより、ビデオコンファランス時には倍率を指定して所望のフレームレートを設定でき、静止画時には圧縮コード長をある値（上限値）以下に確実に抑えることができる。
【００３９】
なお、上記実施形態において示したパラメータセットについては一例であり、用途によってパラメータセットを適正なものに変え得ることは勿論である。
【００４０】
【発明の効果】
以上説明したように、本発明によれば、画面上の各ブロック内の信号のダイナミックレンジと平均値を求め、これを基に視感特性を利用して量子化値を決定する際に、符号化された圧縮コードのビット長を全画面に亘って計測するとともに、この全コードビット長をコード長の上限値と比較し、該上限値を越えている場合には、ＡＣ成分、ＤＣ成分個別に量子化を粗くするためのクオリティファクタを求めるようにしたので、視感評価上の画質を重んじた能率の良い量子化値を決定でき、しかも標準偏差を求めるのではなく、ダイナミックレンジと平均値を求めれば良いため、計算量が少なく、スループットタイムの向上に寄与できる。
【図面の簡単な説明】
【図１】本発明の一実施形態を示すブロック図である。
【図２】量子化値を決定する際の処理手順を示すフローチャートである。
【符号の説明】
１  Ａ／Ｄ変換器    ２  バッファ    ３  ＤＣＴ（離散コサイン変換）回路
４  量子化器    ５  可変長符号化器    ７  前処理回路
【図１】
0003624581.tif 000006
【図２】
0003624581.tif 000007