(57)【要約】  【課題】高能率の動画像符号化を可能にし、かつ高能率符号化の符号化モードを判定するに際し、符号化を実行しなければならない符号化モードの数の低減を可能にすること。  【解決手段】第１モード符号化器２０は、第１符号化モードで動画像の符号化を実行し、符号化後の画素データと制御データを出力する。コスト関数計算器４０は、第１符号化モードでのコスト関数の値を計算し、符号化モード選択器５０は、該コスト関数の値と各符号化モードごとの閾値を比較して、実行する符号化モードを判定する。該判定に従い第２〜第ｎモード符号化器３０は符号化を実行する。最終モード判定器６０は、符号化を実行した符号化モードのうちコスト関数の値が最小となる符号化モードを最終モードとして選択する。  【選択図】図１
2006157208.tif 000002
【特許請求の範囲】
【請求項１】
第１〜第ｎ（ｎは２以上の自然数）符号化モードのうち１つのモードを選択して符号化を行なう手段を有し、量子化パラメータの値に基づいて画質および圧縮率を制御する機能を有する動画像符号化装置において、
第１符号化モードで動画像の符号化を実行し、符号化後の画素データと制御データを出力する第１モード符号化手段と、
コスト関数計算手段と、
符号化を実行する符号化モードを判定する符号化モード選択手段と、
第２〜第ｎモード符号化手段と、
最終モード選択手段とを備え、
前記コスト関数計算手段は、前記第１モード符号化手段によって出力された画素データと制御データ、および量子化パラメータに基づいて第１符号化モードでのコスト関数の値を計算し、また、符号化モード選択手段により実行することと判定された符号化モードでのコスト関数の値を計算し、
前記符号化モード選択手段は、前記コスト関数計算手段により求められた、少なくとも第１符号化モードでのコスト関数の値に応じて第２〜第ｎの符号化モードのうち符号化を実行する符号化モードを判定し、
前記第２〜第ｎモード符号化手段のうち前記符号化モード選択手段により実行することと判定された符号化モードでの符号化を実行する符号化手段は符号化を実行し、それ以外の符号化手段は符号化を実行せず、
前記最終モード選択手段は、符号化を実行した符号化手段の符号化モードにおいてコスト関数の値が最小となる符号化モードを最終モードとして選択することを特徴とする動画像符号化装置。
【請求項２】
前記第１の符号化モードは、全ての符号化モードのうちでコスト関数の最小値が最も小さい値をとることが予測される符号化モードであることを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記第１の符号化モードは、全ての符号化モードのうちで符号化処理が最もシンプルな符号化モードであることを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記符号化モード選択手段は、第２〜第ｎの符号化モードそれぞれに対して異なるモード判定閾値を与え、第１モード符号化手段において求められたコスト関数の値よりモード判定閾値が小さい符号化モードで符号化を実行するものとして判定することを特徴とする請求項１に記載の動画像符号化装置。
【請求項５】
前記モード判定閾値は、量子化パラメータの値に応じて異なる値をとることを特徴とする請求項４に記載の動画像符号化装置。
【請求項６】
前記モード判定閾値は、前記コスト関数と同様の関数に、符号化モードごとに与えられた定数を与えることによって計算される値であることを特徴とする請求項４または５に記載の動画像符号化装置。
【請求項７】
前記符号化モード選択手段は、モード判定閾値に０を超える任意の実数値の係数を乗算してモード判定閾値を調節することによって、符号化後の画質および符号化速度を調節する機能を有することを特徴とする請求項４ないし６のいずれかに記載の動画像符号化装置。
【請求項８】
前記第２〜第ｎモード符号化手段は、前記符号化モード選択手段ににより実行することと判定された符号化モードのうちの１つで符号化を実行し、前記符号化モード選択手段は、該符号化モードにおいて前記コスト関数計算手段により求められたコスト関数の値に基づいてさらに符号化を実行する符号化モードを選択することを特徴とする請求項１ないし３のいずれかに記載の動画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化装置に関し、特に、複数の符号化モードにより符号化を行う符号化手段を備え、動画像信号の高能率符号化を達成するために符号化モードの判定を必要とする動画像符号化装置に関する。
【背景技術】
【０００２】
従来、複数の符号化モードにより符号化を行う符号化手段を備え、それらの符号化モードのうち高能率符号化を達成する符号化モードを判定し、これにより判定された符号化モードで動画像信号を符号化する動画像符号化装置が知られている。
【０００３】
例えば、画像符号化の国際標準であるH.264では、動き補償を行う面積単位を８×８画素、８×１６画素、１６×８画素、１６×１６画素の４種類のブロックサイズとする符号化モードがあり、そのうちから符号化効率の高いブロックサイズを選択して符号化を行う。また、８×８画素のブロックサイズが選択される場合は、各ブロックを４×４画素、４×８画素、８×４画素に分割することも可能である。
【０００４】
また、フレーム内符号化の符号化効率を向上させる方法として、隣接するブロックの特徴に基づいて予測符号化を行う予測符号化を行うフレーム内予測符号化がある。例えば、H.264では符号化するブロックに隣接する画素値に基づいて予測画像を生成し、その予測画像との誤差を符号化する。この符号化においても、ブロックを４×４画素とする符号化モードや１６×１６画素とする符号化モードがある。
【０００５】
複数の符号化モードから高能率符号化を達成する符号化モードを判定する基準としてはコスト関数が知られている。コスト関数は、H.264参照ソフトウェアＪＭ(http://iphome.hhi.de/suehring/tml/index.htm)にみられるように、下記式で表される。
RDCost＝D＋λR
【０００６】
ここで、Dは、画素データから計算されるものであり、例えば予測誤差のSAD（差分絶対値和）である。また、λは、QP(量子化パラメータ)から計算されるものであり、JMではλ(QP)＝(0.85×2（ＱＰ−１２）／３)１／２である。また、Rは、制御データから計算されるものであり、制御データ(動きベクトルやモード番号など)の符号量である。
【０００７】
通常、Dを小さくしようとして高度な符号化モードを選択すると、制御データの符号量Rが大きくなり、かえって全体の圧縮率が低下してしまうという結果を招いてしまう。このため、DとRのトレードオフを考慮するためにRDCost最小化を符号化モード判定の基準とする。RDCost最小化を基準として符号化モードを判定する方式には、以下の２つの方式(1),(2)がある。
(1)第１の方式: 全ての符号化モード（第１〜第ｎ符号化モード）で符号化を実行し、各符号化モードでのコスト関数の値を計算し、該値が最小となる符号化モードを選択する総当り方式。
(2)第２の方式: 第１符号化モード(SKipモード)でのコスト関数の値がモード判定閾値より小さい場合は第１符号化モードで確定する。ここでのモード判定閾値は、第２〜第ｎ符号化モードでのコスト関数の理論上の最小値であり、N×λ(QP)（N：定数）で表される。確定しなかった場合には、他の符号化モードでの符号化を実行し、例えば「第２符号化モードでのコスト＜第３符号化モードでのコスト」ならば第４符号化モード以降の符号化を行なわない方式。第２の方式は、非特許文献１に記載されている。
【非特許文献１】P. Yiny, H.-Y. C. Tourapis et al, “FAST MODE DECISION AND MOTION ESTIMATION FOR JVT/H.264”, IEEE Trans. ICIP 2003
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、第１の方式では、全ての符号化モードで符号化を実行してコスト関数の値を計算しなければならないため、計算量が膨大になり処理速度が低下するという課題がある。
【０００９】
第２の方式では、モード判定閾値が第２〜第ｎ符号化モードでのコスト関数の理論上の最小値、すなわちD＝0かつR＝(最低の制御データ符号量)におけるRDCostの値であり、処理を行なわないと判定される確率が低くなる。実際には、コスト関数の理論上の値よりもある程度大きな値でも符号化モード間でのコスト関数の値の大きさに差が無いことが多く、もう少し大きな値をモード判定閾値にしてもよい場合がある。
【００１０】
また、第２の方式では、第１符号化モードでの符号化の段階では「第１符号化モードのみで符号化する」か「他の全ての符号化モードでも符号化する」かのどちらかという選択肢しか存在しないため、符号化モードの省略が効率的ではないという課題がある。
【００１１】
さらに、第２の方式では、 第１符号化モードでのコスト関数の値とモード判定閾値を比較して第１符号化モードと確定しなかった場合には、他の複数の符号化モードで符号化を実行しないと他の符号化モードでの符号化を判定できず、どの符号化が高能率であるかを効率的に判定できないという課題もある。
【００１２】
本発明の目的は、上記課題を解決し、符号化効率を殆ど落とすことなく高能率で動画像符号化を行うことができ、かつ高能率符号化を達成するために符号化モードを判定するに際し、符号化を実行しなければならない符号化モードの数を低減することができる動画像符号化装置を提供することにある。
【課題を解決するための手段】
【００１３】
上記課題を解決するため、本発明は、第１〜第ｎ（ｎは２以上の自然数）符号化モードのうち１つのモードを選択して符号化を行なう手段を有し、量子化パラメータの値に基づいて画質および圧縮率を制御する機能を有する動画像符号化装置において、第１符号化モードで動画像の符号化を実行し、符号化後の画素データと制御データを出力する第１モード符号化手段と、コスト関数計算手段と、符号化を実行する符号化モードを判定する符号化モード選択手段と、第２〜第ｎモード符号化手段と、最終モード選択手段とを備え、前記コスト関数計算手段は、前記第１モード符号化手段によって出力された画素データと制御データ、および量子化パラメータに基づいて第１符号化モードでのコスト関数の値を計算し、また、符号化モード選択手段により実行することと判定された符号化モードでのコスト関数の値を計算し、前記符号化モード選択手段は、前記コスト関数計算手段により求められた、少なくとも第１符号化モードでのコスト関数の値に応じて第２〜第ｎの符号化モードのうち符号化を実行する符号化モードを判定し、前記第２〜第ｎモード符号化手段のうち前記符号化モード選択手段により実行することと判定された符号化モードでの符号化を実行する符号化手段は符号化を実行し、それ以外の符号化手段は符号化を実行せず、前記最終モード選択手段は、符号化を実行した符号化手段の符号化モードにおいてコスト関数の値が最小となる符号化モードを最終モードとして選択することを第１の特徴としている。
【００１４】
また、本発明は、前記第１の符号化モードが、全ての符号化モードのうちでコスト関数の最小値が最も小さい値をとることが予測される符号化モードであることを第２の特徴としている。
【００１５】
また、本発明は、前記第１の符号化モードが、全ての符号化モードのうちで符号化処理が最もシンプルな符号化モードであることを第３の特徴としている。
【００１６】
また、本発明は、前記符号化モード選択手段が、第２〜第ｎの符号化モードそれぞれに対して異なるモード判定閾値を与え、第１モード符号化手段において求められたコスト関数の値よりモード判定閾値が小さい符号化モードで符号化を実行するものとして判定するようにすることを第４の特徴としている。
【００１７】
また、本発明は、前記モード判定閾値が、量子化パラメータの値に応じて異なる値をとることを第５の特徴としている。
【００１８】
また、本発明は、前記モード判定閾値が、前記コスト関数と同様の関数に、符号化モードごとに与えられた定数を与えることによって計算される値であることを第６の特徴としている。
【００１９】
また、本発明は、前記符号化モード選択手段が、モード判定閾値に０を超える任意の実数値の係数を乗算してモード判定閾値を調節することによって、符号化後の画質および符号化速度を調節する機能を有することを第７の特徴としている。
【００２０】
また、本発明は、前記第２〜第ｎモード符号化手段が、前記符号化モード選択手段ににより実行することと判定された符号化モードのうちの１つで符号化を実行し、前記符号化モード選択手段は、該符号化モードにおいて前記コスト関数計算手段により求められたコスト関数の値に基づいてさらに符号化を実行する符号化モードを選択することを第７の特徴としている。
【発明の効果】
【００２１】
本発明では、符号化モードごとに適切なモード判定閾値を用い、コスト関数による符号化モード判定を行なうため、画質を損なうことなく、動画像の符号化をより高速に実行することが可能になる。
【００２２】
また、符号化モード判定のための閾値を調節することによって、利用目的に応じて、画質を優先して符号化するか、処理速度を優先して符号化するかのどちらかを任意に選択することも可能になる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して本発明を説明する。以下では、動画像符号化方式としてH.264/MPEG-4 AVC(Advanced Video Coding)を用い、フレーム間予測符号化方式を用い、一種類以上の大きさに固定されたブロック（矩形画素領域）を単位として符号化を行なうものとして説明するが、本発明は、これに限定されるものではない。
【００２４】
図１は、本発明に係る動画像符号化装置の第１の実施形態を示すブロック図である。第１の実施形態の動画像符号化装置は、フレーム記憶メモリ１０、第１モード符号化器２０、第２〜第ｎモード符号化器３０、コスト関数計算器４０、符号化モード選択器５０、最終モード判定器６０、および切替スイッチ７０、８０を備える。
【００２５】
フレーム記憶メモリ１０は、入力される画像信号を記憶する。第１モード符号化器２０は、画像信号を第１符号化モードで符号化し、第２〜第ｎモード符号化器３０は、画像信号を第２〜第ｎの符号化モードでそれぞれ符号化する。
【００２６】
コスト関数計算器４０は、第１モード符号化器２０によって出力された画素データと制御データ、および量子化パラメータに基づいてコスト関数を計算する。量子化パラメータは、出力側バッファメモリの符号化データ占有率を符号化制御部にフィードバックすることにより符号化制御部から出力されるが、図示を省略している。
【００２７】
符号化モード選択器５０は、コスト関数計算器４０で求められたコスト関数の値に応じて第２〜第ｎ符号化モードのうち符号化を実行する符号化モードを判定し、この判定結果に従って切替スイッチ７０を切り替えることにより、符号化を実行することとされた第２〜第ｎモード符号化器３０を選択する。
【００２８】
最終符号化モード判定器６０は、第１〜第ｎモード符号化手段のうち、符号化が実行された符号化モードについてコスト関数の値が最小となる符号化モードを最終モードと判定し、該最終モードでの符号化を実行する第１〜第ｎモード符号化器２０、３０からの出力が出力画像信号として送出されるように切替スイッチ８０を切り替える。
【００２９】
図２は、第１の実施形態の動作を示すフローチャートである。まず、入力画像信号をフレーム記憶メモリ１０に記憶した後、第１モード符号化器２０に入力し、第１符号化モードで符号化する(S01)。ここで、第１符号化モードとしては、RDCostの最小値が最も小さくなるモードを選択する。例えばH.264の場合、Skipモードは動きベクトルもモード番号も含まず、R＝0となるので、第１の符号化モードとしてSkipモードを選択すればよい。
【００３０】
第１モード符号化器２０からは画素データD(例えばフレーム間予測符号化の場合は予測誤差の差分絶対値和(SAD))と制御データR(動きベクトルやモード番号の符号量)が出力される。これらのデータをコスト関数計算器４０に入力する。コスト関数計算器４０には第１モード符号化器２０での量子化パラメータQPも入力する。
【００３１】
コスト関数計算器４０は、画素データDと制御データR、量子化パラメータQPに基づいて第１符号化モードでのRDCost(1)を計算し、符号化モード選択器５０に出力する(S02)。
【００３２】
符号化モード選択器５０は、まず、第２〜第ｎ符号化モードに対する閾値Thr(mode)を下記式により求める。この閾値Thr(mode)は、符号化モードごと、量子化パラメータの値に応じて異なる値となる。また、D(mode)やR(mode)は、符号化モードごとに異なる適宜の値であり、例えば各モードごとの予測誤差や制御データ量の実測値から統計的に得ることができる。
Thr(mode)＝D(mode)＋λ(QP)×R(mode)
【００３３】
ここで、第Ｎ符号化モード(Nは2以上nまでの自然数)に対する閾値をThr(N)とすると、Thr(N)＞RDCost(1)であれば、第Ｎ符号化モードでの符号化は実行しないものとして判定する。すなわち、第１モード符号化で求められたコスト関数の値よりThr(N)が小さい符号化モードで符号化を実行するものとして判定する。この判定結果に従って切替スイッチ７０を切り替えることにより、符号化を実行しないものとして判定された符号化モード以外の符号化モードでの符号化が実行されるように符号化器３０を選択する(S03)。
【００３４】
第Ｎの符号化モードに対する閾値としては、Thr(N)に代えてα×Thr(N)(α＞0)を用いることもできる。この場合、αに小さい値を代入すると、符号化を実行しないものと判定されるモードが減少し、処理速度が低下するが画質は向上する。逆に、αに大きい値を代入すると、符号化を実行しないものと判定されるモードが増加し、処理速度が上昇するが画質は低下する。
【００３５】
符号化を実行するものと判定された符号化モードの符号化器３０は符号化を実行する(S04)。それ以外の符号化モードの符号化器３０は符号化を実行しない。
【００３６】
コスト関数計算器４０は、符号化を実行するものと判定された符号化モードでのRDCostを計算し(S05)、それらの計算値を第１符号化モードで計算されたRDCost(1)とともに最終モード判定器６０に出力する。
最終モード判定器６０は、入力されたRDCostのうち最も小さい値を示す符号化モードを最終モードとして決定する(S06)。これにより決定された符号化モードで符号化された出力が出力画像信号として送出されるように切替スイッチ８０を切り替える。
【００３７】
図３は、本発明に係る動画像符号化装置の第２の実施形態を示すブロック図であり、図１と同一あるいは同等部分には同じ符号を付してある。第２の実施形態は、第１符号化モードでのコスト関数の値に応じて第２〜第ｎの符号化モードのうち符号化を実行する符号化モードを判定し、そのうちの１つの符号化モードで符号化を実行した後、さらに該符号化モードでのコスト関数の値に応じて符号化を実行する符号化モードを選択するという処理を繰り返すことにより、符号化処理を実行する符号化モードを削減するようにしている点で第１の実施形態と異なる。
【００３８】
図４は、第２の実施形態の動作を示すフローチャートであり、図２と同一あるいは同等部分には同じ符号を付してある。まず、切替スイッチ７０によりフレーム記憶メモリ１０に第１モード符号化器２０を接続し、画像信号を第１符号化モードで符号化し(S01)、続いてコスト関数計算器４０で第１符号化モードでのRDCost(1)を計算し、それを符号化モード判定器５０に出力する(S02)。
【００３９】
符号化モード選択器５０は、第１の実施形態と同様に、符号化を実行する符号化モードを選択する(S03)。次に、実行するものと選択された符号化モードで、まだ実行されていない符号化モードがあるかを判定する(S07)。まだ実行されていない符号化モードがある(残りの符号化モード数≠0)と判定した場合には、それらのうちの１つの符号化モードで符号化を実行し(S04)、コスト関数計算器４０で該符号化モードでのRDCostを計算する(S05)。
【００４０】
ここで求めたRDCostを符号化モード選択器５０に出力する。符号化モード選択器５０は、入力されたRDCostに基づいて符号化を実行しない符号化モードの判定を再び行なって符号化を実行する符号化モードを選択する(S03)。この選択により符号化するモードの数がさらに削減される。
【００４１】
以上のようにしてコスト関数計算(S02,S05)に基づく符号化モード選択(S03)と選択されたモードでの符号化(S04)を繰り返し、残りのモード数が０となった場合(S07で、残りの符号化モード数＝0と判定された場合)、 最終モード判定器６０は、入力されたRDCostのうち最も小さい値を示す符号化モードを最終モードとして決定する(S06)。これにより決定された符号化モードで符号化された出力が出力画像信号として送出されるように切替スイッチ８０を切り替える。
【００４２】
上記実施形態では、第１の符号化モードを、全ての符号化モードのうちでコスト関数の最小値が最も小さい値をとることが予測される符号化モードとしているが、第１の符号化モードを、全ての符号化モードのうちで符号化処理が最もシンプルな符号化モードにしてもよい。この場合、複雑な符号化処理を行う他の符号化モードが符号化実行対象外となることがあるので、符号化処理の高速化が期待できる。
【図面の簡単な説明】
【００４３】
【図１】本発明に係る動画像符号化装置の第１の実施形態を示すブロック図である。
【図２】第１の実施形態の動作を示すフローチャートである。
【図３】本発明に係る動画像符号化装置の第２の実施形態を示すブロック図である。
【図４】第２の実施形態の動作を示すフローチャートである。
【符号の説明】
【００４４】
１０・・・フレーム記憶メモリ、２０・・・第１モード符号化器、３０・・・第２〜第ｎモード符号化器、４０・・・コスト関数計算器、５０・・・符号化モード選択器、６０・・・最終モード判定器、７０，８０・・・切替スイッチ
【図１】
2006157208.tif 000003
【図２】
2006157208.tif 000004
【図３】
2006157208.tif 000005
【図４】
2006157208.tif 000006