JP2010130522A - 動画像符号化装置及び動画像符号化方法 - Google Patents

動画像符号化装置及び動画像符号化方法 Download PDF

Info

Publication number
JP2010130522A
JP2010130522A JP2008304959A JP2008304959A JP2010130522A JP 2010130522 A JP2010130522 A JP 2010130522A JP 2008304959 A JP2008304959 A JP 2008304959A JP 2008304959 A JP2008304959 A JP 2008304959A JP 2010130522 A JP2010130522 A JP 2010130522A
Authority
JP
Japan
Prior art keywords
encoding
data
unit
code amount
arithmetic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008304959A
Other languages
English (en)
Inventor
Tsutomu Ando
勉 安藤
Jun Otsuki
純 大槻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2008304959A priority Critical patent/JP2010130522A/ja
Publication of JP2010130522A publication Critical patent/JP2010130522A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】動画像の符号化時に、例えばマクロブロックごとの算術符号長を正確に推定できるようにする。
【解決手段】動画像の各フレームを所定のブロックサイズに分割し、ブロックごとに符号化を行う動画像符号化装置において、前記ブロックの各符号化要素を二値化する二値化手段と、前記二値化手段によって二値化されたデータを算術符号化する算術符号化手段と、前記二値化手段によって二値化されたデータにおいて、連続した少なくとも2ビットの値の変化パターンを検出するビットパターン検出手段と、前記ビットパターン検出手段の検出結果を用いて前記算術符号化手段による発生符号量を推定する符号量推定手段とを設け、動画像の符号化時における算術符号化の符号出力特性に応じた符号量を予測する精度を向上できるようにすることにより、符号量制御を正確に行うことを可能にする。
【選択図】図1

Description

本発明は動画像符号化装置及び動画像符号化方法に関し、特に、発生符号量を予測して、適切な符号量調整を行うために用いて好適な技術に関する。
動画像符号化の規格としては、ISO/IECの国際標準規格である、MPEG-1, MPEG-2, MPEG-4が広く使用されている。近年、より高い符号化効率を持つ規格として、ITU-T H.264(あるいはISO/IEC MPEG-4 AVCと呼称される)が勧告され、その実用化が急速に進んでいる。
H.264規格に対応した符号化装置の構成例を、図13のブロック図を参照しながら説明する。
図13において、701は画像メモリであり、符号化の対象となるフレーム及び、動き補償で使用する参照フレームを一時的に記憶するために用いられる。702は動き検出部であり、動きベクトルの検出を行う。703はマクロブロックタイプ判定部であり、符号化の単位となるマクロブロックのそれぞれに対して、フレーム内符号化(イントラ)か、フレーム間符号化(ノンイントラ)かの判定を行う。そして、イントラの場合はフレーム内予測モードの決定、また、マクロブロック内のサブマクロブロックへのパーティション分割判定を行う。
704は動き補償部であり、動き検出部702で求められた動きベクトルやマクロブロックタイプを用いて、指定された動き補償処理を行い、局所デコード画像を生成する。705は整数変換部であり、所定のマクロブロックデータを周波数スペクトルに変換する。
直交変換の方式としては、MPEG-4規格までは離散コサイン変換が用いられていた。しかし、離散コサイン変換の場合、有限精度での演算においては、逆変換時の変換誤差が蓄積されるという問題があった。このため、H.264規格においては、原理的に変換誤差の生じない整数変換が採用されている。
706は量子化部であり、整数変換によって得られた係数データを量子化する。708は逆量子化部であり、局所(ローカル)デコード画像のための逆量子化処理を行う。707は逆変換部であり、逆整数変換処理を行う。
逆量子化部708で量子化された係数データは、CABAC (Content Adaptive Binary Arithmetic Coding)と呼ばれるエントロピー符号化部に送られる。CABACの構成要素としては、二値化部709、及び算術符号化部710がある。
二値化部では、量子化済みの係数データ、動きベクトル、及びマクロブロックに付随する各種情報など、すべての符号化要素(シンタックスエレメントと呼称される)の二値化を行う。二値化の方式については、各シンタックスエレメントによって異なった符号表が定義されている。
二値化の具体的な方法としては、図14に示すごとく、Unary Binarization(ユーナリ符号)。Truncated Unary Binarization(トランケートユーナリ符号)。Exponential Golomb Binarization(指数ゴロム符号:以下EG法と略す)等がある。また、この他に、各種フラグやテーブル参照方式がある。この中でも、マクロブロックデータ中の符号量において支配的に高い割合となる動きベクトルや変換係数の二値化には、EG法が使用されている。図6は、ユーナリ符号の例を一覧的に説明する図である。
図14に、EG法での二値化手法を示す。図14に示すように、EG法は、3つの二値符号が結合した形式をとる。最初の符号はプリフィックスであり、「1」が連続して発生し、この「1」の連続数により後述するポストフィックスの次数(桁数)を指定する。2つめの符号はセパレータであり、これは1ビットの「0」であり、プリフィックスの終了ビットであることを示す。
3つめの符号はポストフィックスであり、プリフィックスで指定されたビット数分の任意の二値データが付加される。ポストフィックスは、たとえばビット数が5と指定された場合は、「00000」〜「11111」までの値をとりうる。二値化部709では、このように、すべてのシンタックスエレメントについて二値化し、それらをマクロブロック単位で所定の順序で連結する。
一方、算術符号化部710は、二値化されたデータを1ビットずつの順次処理によって符号化を行う。したがって、マクロブロックの総処理時間は、入力される二値データのビット数によって変動する。しかも、各ビットの処理結果を、後続するビットの符号化処理に反映させて、適応的に符号化効率を向上させるフィードバック型アルゴリズムであるため、複数ビットの一括処理が原理的に困難であるという特徴がある。
713は、量子化ステップ制御部であり、ピクチャ単位での符号量制御を行う。量子化ステップ制御を行うためには、ピクチャの符号化過程において、マクロブロックごとの既発生符号量の観測を行いつつ、目標とするピクチャの総発生符号量との差異を観測しながら量子化ステップを随時更新することによって実現される。
しかしながら、前述したように、算術符号化は処理時間が入力(=二値化済みデータ)のビット数によって変動してしまうため、マクロブロック単位での処理時間のワースト値をあらかじめ推測することが困難である。しいては、ピクチャ全体での総処理時間に破綻が生じてしまうという可能性もある。
したがって、従来は、符号量補正部714において、算術符号化部710への入力となる二値化出力の符号長を観測し、これを補正することにより、算術符号化部710から出力される符号長として推測・代用し、符号量制御処理を行っていた。
実際には、二値データの符号長をN(ビット)、推測された算術符号後の符号長をM(ビット)とすると、その比率α(=M/N)は想定されるビットレートや画像によって変化する。実験による統計上では、α≒0.6〜0.9というような比率になることが知られている。
したがって、αをこの範囲内での任意の実数値として、
M=αN・・・(式1)
というような補正を行って、二値データ符号長から算術符号長の推測を行っている。このため、このα自体をどのようにして正確に予測するかが、正確な符号量制御を実現するために重要な案件となっている。
特許文献1においては、二値化出力の符号長を監視する機能が記載されている。また、特許文献2においては、最終的な算術符号出力は、二値化出力よりも必ずサイズが小さくなる(二次圧縮が可能である)という特性を考慮して、二値化出力の符号長を補正して符号化制御に使用する機能が記載されている。これは、従来例の説明での(式1)の演算に該当する。
特開2004−135251号公報 特開2007−20141号公報
CABACにおける算術符号器の処理時間は、入力となる二値化データ符号長により変動してしまうため、算術符号後の実際の符号長をマクロブロック単位の符号量制御部へフィードバックすることが困難である。
このため、算術符号化部710への二値符号入力の符号長を元に補正を行い、この値を算術符号化部710から出力される符号長として推定することが行われる。このとき、マクロブロックの各シンタックスエレメントの構成要素の二値化状況によっては、補正が的確に行われないことがある。このため、符号量制御が最適ではなくなり、しいては、符号化後の画質の劣化(あるいは画質の不安定さ)や、符号化処理の破綻を招く可能性もあった。
前述のように、二値データ符号長に基づいた算術符号長の推定が正確に行われない理由としては、以下の要因が考えられる。すなわち、二値化処理は一種の可変長符号化になっているが、ハフマン符号化のように各シンタックスエレメントのエントロピーに最適化された符号長割り当ては行われていない。
これは、後段の算術符号部により再符号化が行われることを前提としており、算術符号化において再圧縮効率が高い符号表となっている。具体的には、ユーナリ符号(トランケーテッドユーナリ符号を含む)、指数ゴロム符号ともに、「1」の連続パターンを多く発生させる。これは、算術符号内部のシンボル予測機能においてMPS(Most Probable Symbol)が発生する確率を高める効果が期待されるからである。また、符号化効率を落とさずに、かつ「1」の連続するビット数により、各シンタックスエレメントに対して固有な符号語を発生可能だからである。
図12に、特定の双予測画像にて、二値符号長と算術符号長との比率αをマクロブロックごとにあらわしたグラフを載せる。スキップマクロブロック(二値ビット長=1)は除外している。この表からも分かるとおり、マクロブロック単位でαの値をモニタすると、「0.48〜0.95」程度までばらついており、ピクチャ全体では平均して0.7程度の値となっている。
したがって、従来例では、ピクチャ全体の平均としてα=0.7と仮定して計算を行うと、二値符号長と補正した算術符号長間には最大30%程度の誤差が発生し、最適な符号量制御が行われない可能性が生じる。また、αを実測値よりも低く設定してしまったケースでは、推定値よりも算術符号量がより多く出力されることになり、デコーダバッファモデルの破綻を招く可能性もある。
本発明は前述の問題点に鑑み、動画像の符号化時に、例えばマクロブロックごとの算術符号長を正確に推定できるようにすることを目的としている。
本発明の動画像符号化装置は、動画像の各フレームを所定のブロックサイズに分割し、ブロックごとに符号化を行う動画像符号化装置において、前記ブロックの各符号化要素を二値化する二値化手段と、前記二値化手段によって二値化されたデータを算術符号化する算術符号化手段と、前記二値化手段によって二値化されたデータにおいて、連続した少なくとも2ビットの値の変化パターンを検出するビットパターン検出手段と、前記ビットパターン検出手段の検出結果を用いて前記算術符号化手段による発生符号量を推定する符号量推定手段とを具備することを特徴とする。
また、本発明の動画像符号化装置の他の特徴とするところは、画像データを所定のブロック単位に量子化し、量子化データを生成する量子化手段と、前記量子化データを二値化データに変換する二値化手段と、前記二値化データを算術符号化する算術符号化手段とを有する動画像符号化装置において、前記量子化データの値が所定の範囲に含まれるか否かを判定する第1の判定手段と、前記第1の判定手段より前記量子化データの値が前記所定の範囲に含まれると判定された個数をカウントするカウント手段と、前記カウント手段より得られるカウント値が閾値以上か否かを前記ブロック単位に判定する第2の判定手段と、前記二値化データと、前記第2の判定手段の判定結果とを用いて前記算術符号化手段による発生符号量を推定する符号量推定手段とを具備することを特徴とする。
本発明の動画像符号化方法は、動画像の各フレームを所定のブロックサイズに分割し、ブロックごとに符号化を行う動画像符号化方法において、前記ブロックの各符号化要素を二値化する二値化工程と、前記二値化工程において二値化されたデータを算術符号化する算術符号化工程と、前記二値化工程において二値化されたデータにおける連続した少なくとも2ビットの値の変化パターンを検出するビットパターン検出工程と、前記ビットパターン検出工程において検出された検出結果を用いて前記算術符号化工程における発生符号量を推定する符号量推定工程とを有することを特徴とする。
また、本発明の動画像符号化方法の他の特徴とするところは、画像データを所定のブロック単位に量子化し、量子化データを生成する量子化工程と、前記量子化データを二値化データに変換する二値化工程と、前記二値化データを算術符号化する算術符号化工程とを有する動画像符号化方法において、前記量子化データの値が所定の範囲に含まれるか否かを判定する第1の判定工程と、前記第1の判定工程において前記量子化データの値が前記所定の範囲に含まれると判定された個数をカウントするカウント工程と、前記カウント工程において得られるカウント値が閾値以上か否かを前記ブロック単位に判定する第2の判定工程と、前記二値化データと、前記第2の判定工程において判定された判定結果とを用いて前記算術符号化工程における発生符号量を推定する符号量推定工程とを有することを特徴とする。
本発明によれば、動画像の符号化時における算術符号化の符号出力特性に応じた符号量を予測する精度を向上することができることにより、符号量制御を正確に行うことが可能となり、符号化後の画質を向上することができる。
(第1の実施形態)
図1は、本発明の第1の実施形態の動画像符号化装置の構成例を説明するブロック図である。
図1において、100は動画像符号化装置である。本実施形態の動画像符号化装置100は、動画像の各フレームを所定のブロックサイズに分割し、ブロックごとに符号化を行う。所定のブロックサイズとしては、16×16(画素)、或いは8×8(画素)などである。当該ブロックのことを以降ではマクロブロックと称す。また、101〜110までの各ブロックは、図13の従来例における701〜710の各ブロックとそれぞれ同等のモジュールである。
すなわち、101は画像メモリであり、符号化の対象となるフレーム及び、動き補償で使用する参照フレームを一時的に記憶するために用いられる。102は動き検出部であり、動きベクトルの検出を行う。本実施形態の動画像符号化装置100は、ISO/IECの国際標準規格である、MPEG-1, MPEG-2, MPEG-4などを使用して符号化を行う。また、より高い符号化効率を持つ規格として、ITU-T H.264(あるいはISO/IEC MPEG-4 AVCと呼称される)を使用して符号化を行う。
103はマクロブロックタイプ判定部であり、符号化の単位となるマクロブロックのそれぞれに対して、フレーム内符号化(イントラ)か、フレーム間符号化(ノンイントラ)かの判定を行う。そして、イントラの場合はフレーム内予測モードの決定、また、マクロブロック内のサブマクロブロックへのパーティション分割判定を行う。
104は動き補償部であり、動き検出部102で求められた動きベクトルやマクロブロックタイプを用いて、指定された動き補償処理を行い、局所デコード画像を生成する。105は整数変換部であり、所定のマクロブロックデータを周波数スペクトルに変換する。
直交変換の方式としては、MPEG-4規格までは離散コサイン変換が用いられていた。しかし、離散コサイン変換の場合、有限精度での演算においては、逆変換時の変換誤差が蓄積されるという問題があった。このため、H.264規格においては、原理的に変換誤差の生じない整数変換が採用されている。
106は量子化部であり、整数変換によって得られた係数データを量子化する。108は逆量子化部であり、局所(ローカル)デコード画像のための逆量子化処理を行う。107は逆変換部であり、逆整数変換処理を行う。
逆量子化部108で量子化された係数データは、CABAC (Content Adaptive Binary Arithmetic Coding)と呼ばれるエントロピー符号化部に送られる。CABACの構成要素としては、二値化部109、及び算術符号化部110である。
111〜113は本実施形態の動画像符号化装置100の根幹となるブロックである。111は二値化データエッジカウンタ部(エッジカウンタ)であり、0から1、あるいは1から0への遷移点の出現回数をカウントする。112は二値化データエッジカウンタ部111のカウンタ出力Cから算術符号長を推定する算術符号長推定部、113は量子化ステップ制御部であり、算術符号長推定部112より出力された発生符号量推定値f(c)を基に、量子化ステップを制御する。
図2に、二値化データエッジカウンタ部111の内部構成を示す。
本実施形態の二値化データエッジカウンタ部111は3つの内部ユニットから構成される。すなわち、フリップフロップ201により、入力される二値化データに対して1ビット単位での遅延を行う。
202は排他的論理和回路であり、連続する2ビット間の符号に対して演算を行う。203はカウンタであり、排他的論理和回路の出力が「1」となる場合のみカウントアップを行う。カウンタのクロックとしては、二値データの出力ビットに同期したクロックが入力され、排他的論理和の出力は、カウンタのイネーブル信号として使用される。
204はマクロブロック境界検出部であり、二値化データのマクロブロック境界を検知し、カウンタをリセットする信号を発生する。このような構成により、本実施形態の二値化データエッジカウンタ部111は、二値化符号データの連続する2ビットのデータ間において、「0」から「1」、または「1」から「0」への移行回数を計数することができる。図3に、二値化データエッジカウンタ部111のカウント例を示す。
図7に、二値化データ符号量とカウント数の例を示す。従来例で前述した算術符号長をM、カウント数をCとし、この比をベータとすると、β=2.0〜2.13となり、算術符号長とカウント値の間に優位な相関があることがわかる。これについては、以下のような事象により説明が可能である。
すなわち、プレフィックスは「1」の連続であり、算術符号ではMPSが連続発生する確率が高いため、高い符号化効率を得ることができる。一方、カウント値についても、「1」の連続点についてはカウントされないため、プレフィックス部のカウント値としては「0」あるいは「1」が出力され、算術符号の特性により近い値となる。ポストフィックスについては、ランダムな二値データをとり得るが、ここでも値の変化点のみをカウントすることによって、算術符号の振る舞いをエミュレーション(emulation)することができる。
具体的には、値の変化点では算術符号化においても予測が外れ、LPSが出現する確率が増加するため、符号化効率が低下する。これは値の変化点において、カウントアップするというカウンタの動作仕様と近似だからである。
したがって、符号量推定関数をf(C)とすれば、式2のごとくCを求めてβの値を掛けることによってMを推定することが可能である。
M=F(C)=βC・・・(式2)
たとえば、図7の例においては、β=2.07と指定した上で推測を行うことにより、算術符号量に対して、誤差7%程度の範囲での符号量推測が可能である。なお、実施形態においては、F(C)をリニアな関数としたが、統計的に求めた、より高度なノンリニア関数を用いることでより精度が高まる可能性があることは言うまでも無い。
前述したように、本実施形態の動画像符号化装置100の場合は、二値化部109によって二値化されたデータにおいて、連続した少なくとも2ビットの値の変化パターン、すなわち、ビット変化パターン検出(ビットパターン検出:遷移情報検出)を行う。そして、値の変化点を二値化データエッジカウンタ部(エッジカウンタ)111によってカウントするようにした。さらに、算術符号長推定部112が、ビットパターンの変化の検出結果、具体的には二値化データエッジカウンタ部111のカウント検出を用いて、前記算術符号化手段による発生符号量を推定する。これにより、符号量を予測する精度を向上することができ、符号量制御を正確に行うことが可能となり、符号化後の画質を向上することができる。
また、本実施形態の動画像符号化装置100においては、画像データの各フレームを所定のブロックサイズに分割する。そして、ブロックごとに符号化を行う際に、ITU-T H.264あるいはISO/IEC 14496-10 (MPEG-4 Advanced Video Coding)規格に準拠して行う。
さらに、前記ITU-T H.264あるいはISO/IEC 14496-10 (MPEG-4 Advanced Video Coding)規格に準拠するものとする。そして、特定の符号化要素をユーナリ符号化、トランケーテッドユーナリ符号化、または指数ゴロム符号化のうちのどれかを用いて二値化が行われる。
(第2の実施形態)
次に、第2の実施形態の動画像符号化装置500を、図5のブロック図を参照しながら説明する。本実施形態の動画像符号化装置500は、ブロックの符号化属性に対応する複数の符号量推定機能を有している。
図5において、符号101〜113を付したブロックの構成は、前述した図1において、符号101〜113を付して説明したブロックの構成と同様であるので、詳細な説明を省略する。
第1の実施形態の動画像符号化装置100では、補正値βの値を、たとえば「2.07」に固定して演算を行っていた。実際にはこの値は、マクロブロックの属性に応じて修正することにより高精度な推測が可能になる。
図5においては、複数の符号量推定機能を設けた例を示している。すなわち、ノンイントラマクロブロック用符号量推定部514、イントラマクロブロック用符号量推定部515を設け、これをセレクタ516で切り替えるようにしている。セレクト信号は、マクロブロックタイプ判定部503から導出される。本実施形態のマクロブロックタイプ判定部503は、ブロックの符号化属性を判定する符号化属性判定機能を有している。また、セレクタ516は、マクロブロックタイプ判定部503の判定結果に応じて、符号量推定手段が有する複数の符号量推定機能をの中から1つを選択する。
実際には、決定されたマクロブロックタイプに応じてβ値を切り替える。本実施形態では、マクロブロックタイプによって推測する関数を、f1(C)及びf2(C)として表記している。これらの関数については、マクロブロック属性ごとにCとMの統計を取って求めることが可能である。
(第3の実施形態)
以下、図8のブロック図を参照しながら本発明の第3の実施形態を説明する。
図8において、2101は画像メモリであり、符号化の対象となるフレーム及び動き補償で用いる参照フレームを一時的に保持する。2102は動き検出部であり、動きベクトルの検出を行う。
2103はマクロブロックタイプ判定部であり、各マクロブロックに対して、フレーム内符号化(イントラ)か、フレーム間符号化(インター/ノンイントラ)かの判定を行う。この判定の結果、イントラの場合はフレーム内予測モードの決定を行う。また、マクロブロック内のサブマクロブロックへのパーティション分割判定を行う。
2104は動き補償部であり、動き検出部2102で求められた動きベクトルやマクロブロックタイプを用いて、指定された動き補償処理を行い、局所(ローカル)デコード画像を生成する。2105は整数変換部であり、所定のマクロブロックデータを周波数スペクトルに変換する。
2106は量子化部であり、整数変換によって得られた係数データを量子化する。2107は逆量子化部であり、局所(ローカル)デコード画像を生成するための逆量子化処理を行う。2108は逆変換部であり、逆整数変換処理を行う。二値化部2109では、量子化部2106より出力される量子化済みの係数データ、動きベクトル、及びマクロブロックに付随する各種情報など、すべての符号化要素(シンタックスエレメントと呼称される)の二値化を行う。二値化の方式については、各シンタックスエレメントによって異なった符号表が定義されている。
二値化の具体的な方法としては、図4に示すごとく、Unary Binarization(ユーナリ符号)。Truncated Unary Binarization(トランケートユーナリ符号)。Exponential Golomb Binarization(指数ゴロム符号:以下EG法と略す)のほかに、各種フラグやテーブル参照方式がある。この中でも、マクロブロックデータ中の符号量において支配的に高い割合となる動きベクトルや変換係数の二値化には、EG法が使用されている。
算術符号化部2110は、二値化部2109より出力された二値化データを1ビットずつの順次処理によって、算術符号化を行い出力するストリームを生成する。
次に、レベルコンパレータ部2111は、量子化部2106より出力される量子化済データを観測し、そのカウント値を判定して得られる、二値化データに対する補正処理を制御するための信号を、符号量補正部2112へ送る。符号量補正部2112は、二値化部2109より出力された2値データの観測値と、レベルコンパレータ部2111における判定結果とから、算術符号化後の発生符号量を推定し、発生符号量推定値を出力する。2113は量子化ステップ制御部であり、符号量補正部2112より出力された発生符号量推定値を基に、量子化ステップを制御する。
次に、図9を用いて、図8のレベルコンパレータ部2111の詳細な説明を行う。
図9に示す量子化データレベルコンパレータ部2201は、入力された量子化済データが所定の範囲に含まれる値であるか否かを判定する、第1の判定を行う。ここで、所定の範囲内の値である場合には、カウンタ2202をカウントアップする。本実施形態においては、第1の判定を行う所定の範囲は、前記量子化データの要素に応じて切替えるようにしている。
カウンタ値観測&判定部2203では、カウンタ2202のカウンタ値を観測しており、マクロブロック終了信号を受けた時点でのカウンタ値が、所定の閾値以上であるか否かを判定する、第2の判定を行う。この所定の閾値以上であるか否かの結果を出力する。また、マクロブロック終了信号を受けるとカウンタ2202のカウンタ値をリセットし、次のマクロブロック処理への準備をする。本実施形態においては、第2の判定を行う閾値は量子化データの要素に応じて切替えるようにしている。
次に、図10のフローチャートを参照しながら図8のレベルコンパレータ部2111の処理手順を説明する。ここでは、入力される量子化済データのシンタックスエレメントが、周波数変換係数の係数絶対値情報(coeff_abs_level_minus1)の場合について具体的に説明する。
まず、ステップS101において、入力される量子化済データの値が、閾値以上か否かを、量子化データレベルコンパレータ部2201にて判定する。ここでは、閾値を15と設定する。つまり、入力される量子化後のデータが15以上か否かを判定する。ここで閾値を15と設定している理由を簡単に説明する。周波数変換係数の係数絶対値情報において、量子化済データと二値化データについては図11のような関係がある。
図11において、量子化済データが15以上の場合には、出力される2値データに「1」の連続性が顕著に見られる。算術符号化の特性として、入力される2値データにおいて同一データが連続して発生する場合には、発生符号量が減少し、2値データの符号長と発生符号量間の差異が大きくなる。本実施形態においては、このような理由により、閾値を「1」の連続性が顕著に現れる15としている。
ステップS101において入力される量子化済データが15以上と判定された場合にはステップS102に進み、カウンタ2202をカウントアップさせる。次に、ステップS103において、カウンタ値観測&判定部2203において、入力されるマクロブロック終了信号において、終了信号を検知した場合には、処理を次のステップであるステップS104へ移行する。ステップS101の判定の結果、入力される量子化済データが15以上ではなかった場合にはステップS102を経由せずにステップS103に進む。
一方、ステップS103において終了信号が検知されない場合には、終了信号を検知するまで、ステップS101、ステップS102、ステップS103を繰り返す。
次に、ステップS104において、カウンタ値観測&判定部2203において、マクロブロック終了信号を検知した際のカウンタ値が閾値以上か否かを判定する。ここでの閾値は、マクロブロック16×16の過半数以上となる129を設定する。また、ここでのカウンタ値は、該マクロブロック単位で、ステップS101において量子化済データが閾値以上と判定された個数を示すものである。
ステップS104の判定の結果、カウンタ2202のカウンタ値が閾値未満と判定された場合には、ステップS106に進み、該マクロブロックのカウンタ値が閾値未満であることを示す信号(ここでは「0」とする)を出力する。その後、ステップS107に進んでカウンタ値をクリアして処理を終了する。
また、ステップS104の判定の結果、カウンタ値が閾値以上と判定された場合には、ステップS105に進み、カウンタ値が閾値以上であることを示す信号(ここでは「1」とする)を出力する。その後、ステップS107に進んでカウンタ値をクリアして処理を終了する。
以上、説明した実施形態では、入力される量子化済データのシンタックスエレメントが周波数変換係数の係数絶対値情報(coeff_abs_level_minus1)である場合について説明した。しかしながら、量子化後のデータにおいては、該データよりシンタックスエレメントを判定することが可能である。このために、他のシンタックスエレメント(例えば、動きベクトル情報や参照インデックス情報など)の量子化済データが入力される場合には、図11で示したような量子化データと二値化データの関連テーブルがシンタックスエレメントに応じて異なる。したがって、該シンタックスエレメントに応じて閾値を設定することで、適切な処理及び結果を得ることが可能となる。
次に、符号量補正部2112の動作について詳細に説明する。
符号量補正部2112では、観測した2値データから算術符号化後の発生符号量を推定する。2値データの符号長をN(ビット)、推測された算術符号後の符号長をM(ビット)とし、その比率をα(=M/N)とおくと、次の式が得られる。M=αN ・・・(式3)
上記式3のαの値を制御することで、発生符号量の推定を算出する。ここで、レベルコンパレータ部2111において、レベルコンパレータ内のカウンタ値が閾値未満と判定された信号(ここでは「0」とする)が出力された場合にはα=0.75とする。これは、(従来例の統計値であるα≒0.6〜0.9の平均値)として、二値化データより発生符号量の推定値を算出する。また、該カウンタ値が閾値未満と判定された信号(ここでは「1」とする)が出力された場合にはα=0.6と設定して、二値化データより発生符号量の推定値を算出する。
このように、レベルコンパレータ内のカウンタ値が閾値以上と判定された場合には、閾値未満と判定された場合のα値より小さい値を設定することで、発生符号量の推定値を小さく見積もる。これは、上記で説明したように、算術符号化の特性として、入力される2値データにおいて同一データが連続して発生する場合には、発生符号量が減少し、2値データの符号長と発生符号量間の差異が大きくなることによる。
次に、上記周波数変換係数の係数絶対値情報において、直流成分(DC)と交流成分(AC)の特徴を用いた制御方法を説明する。
一般的に、直流成分と交流成分を比較すると、直流成分の係数のほうが大きい。よって比較的値の大きい直流成分を二値化すると、「1」の連続する二値化データが出力されることになり、算術符号後の発生符号量との差分が大きくなる。
したがって、図8のレベルコンパレータ部2111において、内部のカウンタ値が閾値以上であることを検知し、対応する信号を出力することで、後段の符号量補正部2112において上記差分を吸収する。交流成分においては、基本的には係数値が小さいために、2値データと発生符号量との関連が一様となる。
また、AC成分にて突発的に係数値が大きくなる場合には、発生符号量も大きくなるが、マクロブロック単位でカウンタ値の閾値を観測することで、カウンタ値は閾値未満となる。したがって、後段の符号量補正部2112にてα値を下げる制御を行わないことにより、直流成分、交流成分各々に対して精度の高い符号量補正を行う。
前述した実施形態において説明した値の範囲や閾値については、シンタックスエレメントに応じて設定を変更することが可能であることはもちろんのこと、符号化装置の特性や画質に応じても設定可能である。
また、前述したように、発生符号量の推定値において、二値化データの符号長からのみ算出するのではなく、量子化済データをシンタックスエレメントに応じて、適応的に使用することで、より精度高く発生符号量を推定することを可能とする。
(本発明に係る他の実施形態)
前述した本発明の実施形態における動画像符号化装置を構成する各手段は、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
なお、本発明は、前述した動画像符号化方法における各工程を実行するソフトウェアのプログラム(実施形態では図10に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接、あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては種々の記録媒体を使用することができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行うことによっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
本発明の第1の実施形態を示し、動画像符号化装置の構成例を説明するブロック図である。 本発明の第1の実施形態を示し、本発明の第1の実施形態におけるエッジカウンタ部の構成例を説明するブロック図である。 本発明の第1の実施形態を示し、エッジカウンタのカウント例を示す図である。 本発明の第3の実施形態を示し、二値化方式の例を一覧的に説明する図である。 本発明の第2の実施形態を示し、動画像符号化装置の構成例を説明する図である。 ユーナリ符号の例を一覧的に説明する図である。 本発明の第1の実施形態を示し、本発明によるM/Cの比率の例を示す図である。 本発明の第3の実施形態を示し、動画像符号化装置の構成例を説明するブロック図である。 本発明の第3の実施形態を示し、レベルコンパレータ部の詳細な構成例を示すブロック図である。 本発明の第3の実施形態を示し、レベルコンパレータ部の処理手順を説明するフローチャートである。 本発明の第3の実施形態を示し、量子化済データと二値化データとの関係を示す図である。 従来例を示し、従来例の発生符号量/2値データ符号長の比率の例を示す特性図である。 従来例を示し、H.264規格に対応した符号化装置の構成例を示すブロック図である。 従来例を示し、指数ゴロム符号の符号の一例を一覧的に説明する図である。
符号の説明
100 動画像符号化装置
101 画像メモリ
102 動き検出部
103 マクロブロックタイプ判定部
104 動き補償部
105 整数変換部
106 量子化部
107 逆変換部
108 逆量子化部
109 二値化部
110 算術符号化部
111 二値化データエッジカウンタ部(エッジカウンタ)
112 算術符号長推定部
113 量子化ステップ制御部

Claims (12)

  1. 動画像の各フレームを所定のブロックサイズに分割し、ブロックごとに符号化を行う動画像符号化装置において、
    前記ブロックの各符号化要素を二値化する二値化手段と、
    前記二値化手段によって二値化されたデータを算術符号化する算術符号化手段と、
    前記二値化手段によって二値化されたデータにおいて、連続した少なくとも2ビットの値の変化パターンを検出するビットパターン検出手段と、
    前記ビットパターン検出手段の検出結果を用いて前記算術符号化手段による発生符号量を推定する符号量推定手段とを具備することを特徴とする動画像符号化装置。
  2. 前記ビットパターン検出手段により検出されるビット変化パターンとは、前記二値化されたデータの連続する2ビット間で、値の0から1、あるいは1から0への遷移情報であることを特徴とする請求項1に記載の動画像符号化装置。
  3. 前記ビットパターン検出手段は、連続する2ビットのデータ間において、0から1、あるいは1から0への遷移点の出現回数をカウントするカウンタを具備することを特徴とする請求項2に記載の動画像符号化装置。
  4. 前記カウンタは、所定のブロックごとにリセットされることを特徴とする請求項3に記載の動画像符号化装置。
  5. 前記符号量推定手段は、前記カウンタのカウント値から、前記ブロックごとに算術符号化された後の符号量を推定することを特徴とする請求項3または4に記載の動画像符号化装置。
  6. 前記符号量推定手段は、ブロックの符号化属性に対応する複数の符号量推定機能を有することを特徴とする請求項5に記載の動画像符号化装置。
  7. 前記ブロックの符号化属性を判定する符号化属性判定手段と、
    前記符号化属性判定手段の判定結果に応じて、前記符号量推定手段が有する複数の符号量推定機能の中から1つを選択する選択手段とを具備することを特徴とする請求項6に記載の動画像符号化装置。
  8. 画像データを所定のブロック単位に量子化し、量子化データを生成する量子化手段と、前記量子化データを二値化データに変換する二値化手段と、前記二値化データを算術符号化する算術符号化手段とを有する動画像符号化装置において、
    前記量子化データの値が所定の範囲に含まれるか否かを判定する第1の判定手段と、
    前記第1の判定手段より前記量子化データの値が前記所定の範囲に含まれると判定された個数をカウントするカウント手段と、
    前記カウント手段より得られるカウント値が閾値以上か否かを前記ブロック単位に判定する第2の判定手段と、
    前記二値化データと、前記第2の判定手段の判定結果とを用いて前記算術符号化手段による発生符号量を推定する符号量推定手段とを具備することを特徴とする動画像符号化装置。
  9. 前記第1の判定手段による前記所定の範囲は、前記量子化データの要素に応じて切替えることを特徴とする請求項8に記載の動画像符号化装置。
  10. 前記第2の判定手段による前記閾値は、前記量子化データの要素に応じて切替えることを特徴とする請求項8に記載の動画像符号化装置。
  11. 動画像の各フレームを所定のブロックサイズに分割し、ブロックごとに符号化を行う動画像符号化方法において、
    前記ブロックの各符号化要素を二値化する二値化工程と、
    前記二値化工程において二値化されたデータを算術符号化する算術符号化工程と、
    前記二値化工程において二値化されたデータにおける連続した少なくとも2ビットの値の変化パターンを検出するビットパターン検出工程と、
    前記ビットパターン検出工程において検出された検出結果を用いて前記算術符号化工程における発生符号量を推定する符号量推定工程とを有することを特徴とする動画像符号化方法。
  12. 画像データを所定のブロック単位に量子化し、量子化データを生成する量子化工程と、前記量子化データを二値化データに変換する二値化工程と、前記二値化データを算術符号化する算術符号化工程とを有する動画像符号化方法において、
    前記量子化データの値が所定の範囲に含まれるか否かを判定する第1の判定工程と、
    前記第1の判定工程において前記量子化データの値が前記所定の範囲に含まれると判定された個数をカウントするカウント工程と、
    前記カウント工程において得られるカウント値が閾値以上か否かを前記ブロック単位に判定する第2の判定工程と、
    前記二値化データと、前記第2の判定工程において判定された判定結果とを用いて前記算術符号化工程における発生符号量を推定する符号量推定工程とを有することを特徴とする動画像符号化方法。
JP2008304959A 2008-11-28 2008-11-28 動画像符号化装置及び動画像符号化方法 Pending JP2010130522A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008304959A JP2010130522A (ja) 2008-11-28 2008-11-28 動画像符号化装置及び動画像符号化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008304959A JP2010130522A (ja) 2008-11-28 2008-11-28 動画像符号化装置及び動画像符号化方法

Publications (1)

Publication Number Publication Date
JP2010130522A true JP2010130522A (ja) 2010-06-10

Family

ID=42330543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008304959A Pending JP2010130522A (ja) 2008-11-28 2008-11-28 動画像符号化装置及び動画像符号化方法

Country Status (1)

Country Link
JP (1) JP2010130522A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8350283B2 (en) 2010-06-07 2013-01-08 Kabushiki Kaisha Toshiba Semiconductor light emitting device and method for manufacturing same
WO2013154008A1 (ja) * 2012-04-13 2013-10-17 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2014518595A (ja) * 2011-03-31 2014-07-31 トムソン ライセンシング Cabac復号化のための技術
JP2016213735A (ja) * 2015-05-12 2016-12-15 日本電信電話株式会社 符号量推定方法、映像符号化装置及び符号量推定プログラム
TWI608728B (zh) * 2012-01-19 2017-12-11 三菱電機股份有限公司 Image decoding device, image decoding method, image coding device, image coding method, coding data

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8350283B2 (en) 2010-06-07 2013-01-08 Kabushiki Kaisha Toshiba Semiconductor light emitting device and method for manufacturing same
JP2014518595A (ja) * 2011-03-31 2014-07-31 トムソン ライセンシング Cabac復号化のための技術
TWI608728B (zh) * 2012-01-19 2017-12-11 三菱電機股份有限公司 Image decoding device, image decoding method, image coding device, image coding method, coding data
KR101764037B1 (ko) * 2012-04-13 2017-08-01 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
KR101847365B1 (ko) * 2012-04-13 2018-04-09 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
KR101612217B1 (ko) * 2012-04-13 2016-04-12 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
KR102024518B1 (ko) * 2012-04-13 2019-09-24 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
TWI583183B (zh) * 2012-04-13 2017-05-11 Mitsubishi Electric Corp Image coding apparatus, image decoding apparatus, image encoding method, image decoding method, and recording medium
CN104221383A (zh) * 2012-04-13 2014-12-17 三菱电机株式会社 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法
WO2013154008A1 (ja) * 2012-04-13 2013-10-17 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JPWO2013154008A1 (ja) * 2012-04-13 2015-12-17 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
KR20180037309A (ko) * 2012-04-13 2018-04-11 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
US10009616B2 (en) 2012-04-13 2018-06-26 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
CN104221383B (zh) * 2012-04-13 2018-09-11 三菱电机株式会社 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
KR20190017061A (ko) * 2012-04-13 2019-02-19 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
KR101950657B1 (ko) * 2012-04-13 2019-02-20 미쓰비시덴키 가부시키가이샤 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법 및 기록 매체
JP2016213735A (ja) * 2015-05-12 2016-12-15 日本電信電話株式会社 符号量推定方法、映像符号化装置及び符号量推定プログラム

Similar Documents

Publication Publication Date Title
JP4828925B2 (ja) 符号化装置
US7848579B2 (en) Image coding device, method and computer program with data coding amount prediction
JP4513841B2 (ja) 符号化装置、符号化方法、符号化方法のプログラム及び符号化方法のプログラムを記録した記録媒体
JP2018534835A (ja) 短距離イントラ予測(sdip)ベースのビデオコーディング
US8780980B2 (en) Video image encoding device
US20150215621A1 (en) Rate control using complexity in video coding
JP2016528789A (ja) データ符号化及び復号化
JP2014523186A (ja) エントロピー符号化/復号化方法及びその装置
JP2007300455A (ja) 算術符号化装置、および算術符号化装置におけるコンテキストテーブル初期化方法
US9491491B2 (en) Run-mode based coefficient coding for video coding
WO2019075063A1 (en) BINARY ARITHMETIC CODING WITH PROGRESSIVE CHANGE OF ADAPTATION PARAMETERS
JP5231243B2 (ja) 符号化装置及び符号化方法
JP2009038746A (ja) 画像情報符号化装置
TW201919398A (zh) 視頻數據解碼方法及裝置
US8675726B2 (en) Method and encoder for constrained soft-decision quantization in data compression
JP2010130522A (ja) 動画像符号化装置及び動画像符号化方法
JP5116704B2 (ja) 画像符号化装置及び画像符号化方法
US20080144721A1 (en) Video coding apparatus
JP5961189B2 (ja) 算術符号化及び終了のための方法及び装置
JP2010193398A (ja) 画像符号化装置及び画像符号化方法
JP2010087771A (ja) 画像符号化装置及び方法
JP2009021775A (ja) 符号化装置及び符号化方法
JP2015515812A (ja) ビデオ符号化のための量子化係数を提供するための機器および方法
US20110019735A1 (en) Image encoding device and image encoding method
JP5197428B2 (ja) 画像符号化装置及び画像符号化方法