(57)【要約】【課題】符号化コストの演算量を削減すること。【解決手段】動画像符号化装置は、直交変換処理が実行された直交変換係数が量子化処理に用いられる量子化ステップから定まる閾値以下であるか否かを判定する閾値判定部を有する。動画像符号化装置１０は、直交変換係数のうち閾値判定部によって閾値以下である判定された第１の係数と、閾値判定部によって閾値よりも大きいと判定された第２の係数の数とから符号化誤差を算出する符号化誤差算出部を有する。動画像符号化装置１０は、第２の係数の数から、量子化処理が実行された後の直交変換係数に可変長符号化処理が実行される場合に発生する情報量を見積もる情報量見積り部を有する。動画像符号化装置１０は、符号化誤差算出部によって算出された符号化誤差と、情報量見積り部によって見積もられた情報量とから符号化コストを算出する符号化コスト算出部を有する。【選択図】図２
2015015595.tif 000002
【特許請求の範囲】
【請求項１】
直交変換処理が実行された直交変換係数が量子化処理に用いられる量子化ステップから定まる閾値以下であるか否かを判定する閾値判定部と、
前記直交変換係数のうち前記閾値判定部によって閾値以下である判定された第１の係数と、前記閾値判定部によって閾値よりも大きいと判定された第２の係数の数とから符号化誤差を算出する符号化誤差算出部と、
前記第２の係数の数から、前記量子化処理が実行された後の直交変換係数に可変長符号化処理が実行される場合に発生する情報量を見積もる情報量見積り部と、
前記符号化誤差算出部によって算出された符号化誤差と、前記情報量見積り部によって見積もられた情報量とから符号化コストを算出する符号化コスト算出部と
を有することを特徴とする動画像符号化装置。
【請求項２】
前記情報量見積り部は、前記第２の係数の数とともに、所定のスキャンオーダでスキャンされた第２の係数の最終位置をさらに用いて、前記情報量を見積もることを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記情報量見積り部は、前記第２の係数の数とともに、前記第２の係数の絶対値の和をさらに用いて、前記情報量を見積もることを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記量子化ステップの半値を前記閾値判定部が判定に用いる閾値に設定する設定部をさらに有することを特徴とする請求項１、２または３に記載の動画像符号化装置。
【請求項５】
前記閾値判定部が判定に用いる閾値を当該閾値と比較する直交変換係数が低周波成分または高周波成分のいずれであるかによって複数の値を切り換えて設定する設定部をさらに有することを特徴とする請求項１〜４のいずれか１つに記載の動画像符号化装置。
【請求項６】
コンピュータが、
直交変換処理が実行された直交変換係数が量子化処理に用いられる量子化ステップから定まる閾値以下であるか否かを判定し、
前記直交変換係数のうち前記閾値以下である判定された第１の係数と、前記閾値よりも大きいと判定された第２の係数の数とから符号化誤差を算出し、
前記第２の係数の数から、前記量子化処理が実行された後の直交変換係数に可変長符号化処理が実行される場合に発生する情報量を見積り、
前記符号化誤差と前記情報量とから符号化コストを算出する
処理を実行することを特徴とする符号化モード判定方法。
【請求項７】
コンピュータに、
直交変換処理が実行された直交変換係数が量子化処理に用いられる量子化ステップから定まる閾値以下であるか否かを判定し、
前記直交変換係数のうち前記閾値以下である判定された第１の係数と、前記閾値よりも大きいと判定された第２の係数の数とから符号化誤差を算出し、
前記第２の係数の数から、前記量子化処理が実行された後の直交変換係数に可変長符号化処理が実行される場合に発生する情報量を見積り、
前記符号化誤差と前記情報量とから符号化コストを算出する
処理を実行させることを特徴とする符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化装置、符号化モード判定方法及び符号化プログラムに関する。
【背景技術】
【０００２】
動画像のデータサイズを圧縮するために、動画像の符号化が行われる。動画像の符号化方式の一例としては、Ｈ．２６４／ＡＶＣやＨ．２６４／ＡＶＣの２倍以上の符号化効率を持つＨＥＶＣ（High  Efficiency  Video  Coding）などが標準化されている。
【０００３】
動画像を符号化する場合には、符号化効率を高めるために、複数の符号化モードのうち１つの符号化モードが選択される。かかる符号化モードの一例としては、動画像のフレームを形成する画像を分割するブロックサイズが挙げられる。例えば、ＨＥＶＣの場合には、４×４、８×８、１６×１６、３２×３２及び６４×６４の５種類のブロックサイズを選択することができ、５種類のブロックサイズの中から最も符号化効率が高いブロックサイズが選択される。
【０００４】
このように、符号化モードを選択する場合には、一例として、符号化の前後で画質および圧縮率の両面から符号化モードのコストを評価する符号化コストが求められる。かかる符号化コストは、一例として、下記の式（１）を用いて符号化モード別に算出される。下記の式（１）における「符号化誤差Dist」は、復号画像（Recon[i]）と原画像（Org[i]）の差分の２乗和である。また、下記の式（１）における「情報量bit」は、予測画像と原画像の差分画像に直交変換および量子化が実行された直交変換係数を可変長符号化する場合に発生する情報量である。また、下記の式（１）における「λ」は、ラグランジュ乗数である。
【０００５】
符号化コスト＝Dist(符号化誤差)＋λ＊Bit(情報量)・・・式（１）
【０００６】
これを具体的に説明すると、予測画像と原画像の差分画像に直交変換および量子化を実行した後に逆量子化および逆直交変換を実行することによって復号画像を求めてから、復号画像と入力画像の誤差である符号化誤差を算出する。さらに、差分画像に直交変換および量子化を実行した量子化係数に可変長符号化を実行し、可変長符号化で発生する情報量を見積もる。その上で、先に算出された符号化誤差および情報量から符号化コストが算出される。かかる符号化コストが符号化モードごとに算出された後に、符号化コストが最も低い符号化モードが最適な符号化モードとして選択される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２００５−５２７１５９号公報
【特許文献２】特開２００６−２６２００４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記の技術では、符号化コストの演算量が膨大になる。
【０００９】
すなわち、上記の技術の場合には、予測画像と原画像の差分画像に対し、直交変換、量子化、逆量子化および逆直交変換を実行することによって復号画像を求めてからしか符号化誤差を算出することができない。さらに、差分画像に直交変換および量子化を実行した後に可変長符号化を実行しないと情報量を見積もることはできない。このように、上記の技術では、直交変換、量子化、逆量子化、逆直交変換、さらには、可変長符号化を実行しないと符号化コストを算出できないので、符号化コストの計算に莫大な演算量が発生することになる。
【００１０】
１つの側面では、符号化コストの演算量を削減できる動画像符号化装置、符号化モード判定方法及び符号化プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
一態様の動画像符号化装置は、直交変換処理が実行された直交変換係数が量子化処理に用いられる量子化ステップから定まる閾値以下であるか否かを判定する閾値判定部を有する。さらに、前記動画像符号化装置は、前記直交変換係数のうち前記閾値判定部によって閾値以下である判定された第１の係数と、前記閾値判定部によって閾値よりも大きいと判定された第２の係数の数とから符号化誤差を算出する符号化誤差算出部を有する。さらに、前記動画像符号化装置は、前記第２の係数の数から、前記量子化処理が実行された後の直交変換係数に可変長符号化処理が実行される場合に発生する情報量を見積もる情報量見積り部を有する。さらに、前記動画像符号化装置は、前記符号化誤差算出部によって算出された符号化誤差と、前記情報量見積り部によって見積もられた情報量とから符号化コストを算出する符号化コスト算出部とを有する。
【発明の効果】
【００１２】
符号化コストの演算量を削減できる。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施例１に係る動画像符号化装置の機能的構成を示すブロック図である。
【図２】図２は、実施例１に係る符号化モード判定部の機能的構成を示すブロック図である。
【図３】図３は、直交変換係数及び量子化誤差の関係例を示す模式図である。
【図４】図４は、０係数の量子化誤差の一例を示す模式図である。
【図５】図５は、非０係数の量子化誤差の一例を示す模式図である。
【図６】図６は、直交変換係数の量子化誤差の一例を示す模式図である。
【図７】図７は、実施例１に係る動画像符号化処理の手順を示すフローチャートである。
【図８】図８は、実施例１に係る符号化モード判定処理の手順を示すフローチャートである。
【図９】図９は、実施例１に係る符号化コスト算出処理の手順を示すフローチャートである。
【図１０】図１０は、スキャンオーダの一例を示す図である。
【図１１】図１１は、スキャンオーダの一例を示す図である。
【図１２】図１２は、スキャンオーダの一例を示す図である。
【図１３】図１３は、応用例１に係る符号化コスト算出処理の手順を示すフローチャートである。
【図１４】図１４は、応用例２に係る符号化コスト算出処理の手順を示すフローチャートである。
【図１５】図１５は、実施例１及び実施例２に係る符号化プログラムを実行するコンピュータの一例について説明するための図である。
【発明を実施するための形態】
【００１４】
以下に添付図面を参照して本願に係る動画像符号化装置、符号化モード判定方法及び符号化プログラムについて説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１５】
［動画像符号化装置の構成］
図１は、実施例１に係る動画像符号化装置の機能的構成を示すブロック図である。図１に示す動画像符号化装置１０は、入力される画像を符号化することによって動画像を生成するものである。
【００１６】
図１に示すように、動画像符号化装置１０は、画像入力部１１と、予測画像生成部１２と、差分画像生成部１３と、直交変換部１４ａと、量子化部１５ａと、可変長符号化部１６とを有する。さらに、動画像符号化装置１０は、逆量子化部１５ｂと、逆直交変換部１４ｂと、復号画像生成部１７と、復号画像記憶部１８と、符号化モード判定部１００とを有する。
【００１７】
画像入力部１１は、後段のユニットに対し、原画像を入力する。一態様としては、画像入力部１１は、ハードディスクや光ディスクなどの補助記憶装置またはメモリカードやＵＳＢ（Universal  Serial  Bus）メモリなどのリムーバブルメディアから読み出した原画像を差分画像生成部１３及び符号化モード判定部１００へ入力する。このうち、差分画像生成部１３へ入力するのは、原画像を符号化することによって動画像を得るためである一方で、符号化モード判定部１００へ入力するのは、原画像の符号化に適用する最適な符号化モードを選択させるためである。なお、ここでは、記憶装置から原画像を読み出す場合を例示したが、外部装置からネットワークを介して受信した原画像を差分画像生成部１３及び符号化モード判定部１００へ入力することとしてもかまわない。
【００１８】
予測画像生成部１２は、符号化モード判定部１００によって選択される符号化モードにしたがって、復号画像記憶部１８に記憶された復号画像を参照し、符号化対象ブロックの予測画像を生成する。かかる予測画像の生成には、一例として、フレーム内の相関を利用するイントラ予測またはフレーム間の相関を利用するインター予測が適用される。このようにして生成された予測画像が差分画像生成部１３へ出力される。
【００１９】
差分画像生成部１３は、予測画像生成部１２によって出力される符号化対象ブロックの予測画像と、画像入力部１１によって入力される原画像との差分画像を生成する。このようにして生成された差分画像が直交変換部１４ａへ出力される。
【００２０】
直交変換部１４ａは、差分画像生成部１３によって出力される差分画像に直交変換を実行する。このようにして直交変換された直交変換係数が量子化部１５ａへ出力される。
【００２１】
量子化部１５ａは、直交変換部１４ａによって出力される直交変換係数を量子化する。このようにして量子化された量子化信号が可変長符号化部１６及び逆量子化部１５ｂへ出力される。
【００２２】
可変長符号化部１６は、量子化部１５ａによって出力される量子化信号に可変長符号化を実行する。このようにして可変長符号化がなされたストリームを出力する。ここで言う「可変長符号化」とは、シンボルの出現頻度に応じて可変長の符号を割り当てる方式であり、エントロピー符号化とも呼ばれる。
【００２３】
逆量子化部１５ｂは、量子化部１５ａによって量子化される量子化信号を逆量子化する。このようにして逆量子化された直交変換係数が逆直交変換部１４ｂへ出力される。
【００２４】
逆直交変換部１４ｂは、逆量子化部１５ｂによって逆量子化される直交変換係数に逆直交変換を実行する。このようにして逆直交変換された差分画像が復号画像生成部１７へ出力される。
【００２５】
これら逆量子化部１５ｂ及び逆直交変換部１４ｂによって復号化された場合には、符号化前の差分画像と同程度の信号が得られる。
【００２６】
復号画像生成部１７は、予測画像生成部１２によって生成された予測画像と、逆量子化部１５ｂおよび逆直交変換１４ｂによって復号化される差分画像とを加算することにより、符号化対象ブロックの復号画像を生成する。このようにして生成された符号化対象ブロックの復号画像が復号画像記憶部１８へ出力される。
【００２７】
符号化モード判定部１００は、複数の符号化モードのうち最も符号化コストが低い符号化モードを判定する。かかる符号化モードとは、符号化コストの多寡によって切り換え可能なパラメータの型を指し、一例としては、動画像のフレームを形成する画像を分割するブロックサイズのパターンが挙げられる。例えば、ＨＥＶＣの場合には、４×４、８×８、１６×１６、３２×３２及び６４×６４の５種類のブロックサイズを選択することができ、５種類のブロックサイズの中から最も符号化コストが低いブロックサイズが選択される。
【００２８】
［符号化モード判定部の構成］
図２は、実施例１に係る符号化モード判定部の機能的構成を示すブロック図である。図２に示すように、符号化モード判定部１００は、モード情報記憶部１１０と、予測画像生成部１２０と、差分画像生成部１３０と、直交変換部１４０とを有する。さらに、符号化モード判定部１００は、閾値判定部１５０と、計数部１５０ａと、符号化誤差算出部１６０と、情報量見積り部１７０と、符号化コスト算出部１８０と、符号化モード選択部１９０とを有する。
【００２９】
このうち、モード情報記憶部１１０は、符号化モードに関する情報を記憶する。一態様としては、モード情報記憶部１１０は、動画像符号化装置１０が符号化に適用できる複数種類のブロックサイズを記憶する。例えば、動画像符号化装置１０がＨＥＶＣを採用するとしたとき、モード情報記憶部１１０には、４×４、８×８、１６×１６、３２×３２及び６４×６４の５種類のブロックサイズが記憶される。
【００３０】
予測画像生成部１２０は、上記の予測画像生成部１２と同様に符号化対象ブロックの予測画像を生成するが、その目的は、複数の符号化モードのうち動画像符号化に最適な符号化モードを選択することにある。このため、予測画像生成部１２０は、モード情報記憶部１１０に記憶された各符号化モードのブロックサイズごとに符号化対象ブロックの予測画像を生成する。
【００３１】
差分画像生成部１３０は、予測画像生成部１２０によって出力される符号化対象ブロックの予測画像と、画像入力部１１によって入力される原画像との差分画像を生成する。このようにして生成された差分画像が直交変換部１４０へ出力される。
【００３２】
直交変換部１４０は、差分画像生成部１３０によって出力される差分画像に直交変換を実行する。このようにして直交変換された直交変換係数が閾値判定部１５０へ出力されるとともに、符号化誤差算出部１６０にも出力される。
【００３３】
閾値判定部１５０は、直交変換部１４０によって出力される直交変換係数が量子化に用いられる量子化ステップから定まる閾値以下であるか否かを判定する。このようにして閾値判定が実行された結果が計数部１５０ａへ出力される。かかる閾値には、一例として、量子化ステップＱの半値である「Ｑ／２」が用いられる。このように、閾値判定を実行するのは、直交変換係数ｋが量子化による丸め処理によって量子化後に係数の値がゼロとなる０係数と、量子化後に係数の値がゼロにならない非０係数とに選別するためである。以下では、上記の非０係数のことを「有効係数」と記載する場合がある。
【００３４】
計数部１５０ａは、有効係数の数を計数する。一態様としては、計数部１５０ａは、閾値判定部１５０によって閾値「Ｑ／２」よりも大きいと判定される度に、有効係数をカウントするカウンタ、例えば図示しないカウントレジスタの値をインクリメントする。このようにして計数された有効計数の数が符号化誤差算出部１６０及び情報量見積り部１７０へ出力される。
【００３５】
符号化誤差算出部１６０は、直交変換部１４０によって直交変換された直交変換係数のうち０係数と、計数部１５０ａによって計数された有効計数の数とから符号化誤差を算出する。このようにして算出された符号化誤差が符号化コスト算出部１８０へ出力される。
【００３６】
情報量見積り部１７０は、計数部１５０ａによって計数された有効計数の数から可変長符号化によって発生する情報量を見積もる。このようにして見積もられた情報量が符号化コスト算出部１８０へ出力される。
【００３７】
符号化コスト算出部１８０は、符号化誤差算出部１６０によって算出された符号化誤差と、情報量見積り部１７０によって算出された情報量とから符号化コストを算出する。このようにして算出された符号化コストが符号化モード選択部１９０へ出力される。
【００３８】
これら予測画像生成部１２０から符号化コスト算出部１８０までの一連の処理は、動画像符号化を目的とする処理ではなく、符号化モードの選択を目的とするものであり、各符号化モード間で符号化コストを比較するために実行される。したがって、上記の一連の処理は、符号化モードごとに当該符号化モードで設定される符号化対象ブロックの各々に個別に実行される。なお、１つの符号化モードで符号化対象ブロックが複数存在する場合には、符号化対象ブロックごとに求めた符号化コストの合計が当該符号化モードの符号化コストとして算出される。
【００３９】
符号化モード選択部１９０は、符号化コスト算出部１８０によって算出された符号化コストのうち符号化コストが最小である符号化モードを選択する。
【００４０】
［符号化誤差の算出方法］
符号化誤差は、符号化の後に復号された復号画像と原画像の誤差である。かかる誤差は、下記の式（２）のように、量子化の段階で直交変換係数ｋに丸め処理が実行されることにその一因がある。そして、直交変換の特性から、直交変換後の周波数領域の量子化誤差は、画素領域で計算する符号化誤差と比例する。したがって、画素領域の符号化誤差は、「周波数領域の量子化誤差／ａ」と線形の式で表すことができる。なお、前述の比率ａは、事前に算出しておくことができる。
【００４１】
【数１】
2015015595.tif 000003
【００４２】
このことから、上記の符号化誤差算出部１６０は、周波数領域の量子化誤差を推定することによって画素領域の符号化誤差を求める。一般に、量子化は、上記の式（２）にしたがって丸め処理が実行されることによって下記の式（３）に示す量子化誤差が生じる。
【００４３】
【数２】
2015015595.tif 000004
【００４４】
上記の式（３）から、量子化前の直交変換係数ｋが量子化ステップＱの整数倍であるとき、量子化誤差が最小となるとともに、Ｑの整数倍±Ｑ／２のところで量子化誤差が最大になることがわかる。
【００４５】
図３は、直交変換係数ｋ及び量子化誤差の関係例を示す模式図である。図３に示すグラフの縦軸は、量子化誤差Dist_kを指し、同図に示すグラフの横軸は、直交変換係数ｋを指す。図３に示すように、量子化前の直交変換係数ｋが量子化ステップＱの整数倍に近づくほど丸め処理によって切り捨てまたは切り上げが行われる値が小さくなるので、量子化誤差Dist_kは小さくなる。一方、量子化前の直交変換係数ｋが量子化ステップＱ±Ｑ／２に近づくほど丸め処理によって切り捨てまたは切り上げが行われる値が大きくなるので、量子化誤差Dist_kは大きくなる。
【００４６】
ここで、本実施例では、下記の式（４）に示すように、符号化対象ブロックの量子化誤差を０係数の量子化誤差と非０係数の量子化誤差とに分けて算出する。
【００４７】
量子化誤差＝０係数の量子化誤差＋非０係数の量子化誤差・・・（４）
【００４８】
［０係数の量子化誤差の推定］
まず、０係数の量子化誤差の推定方法について説明する。直交変換係数ｋは、Ｑ／２以下である場合に量子化の丸め処理によって値が０になる。上記の式（３）にｋ≦Ｑ／２という条件を与えることによって上記の式（３）を下記の式（５）へ変形できる。かかる式（５）から、量子化誤差Dist_k（Dist：Distortion）は、係数ｋの２乗となることが分かる。図４は、０係数の量子化誤差の一例を示す模式図である。図４に示すように、図３に示した量子化誤差のグラフの全体のうち実線で図示された部分が０係数の量子化誤差と言える。つまり、０係数の量子化誤差は、図４に示すように、ｋの２乗で表される関数の曲線のうちｋ≦Ｑ／２の範囲の値のいずれかをとることになる。
【００４９】
【数３】
2015015595.tif 000005
【００５０】
したがって、符号化対象ブロックの０係数の量子化誤差は、下記の式（６）に示すように、Ｑ／２以下の直交変換係数の２乗和から求めることができる。
【００５１】
０係数の量子化誤差ＳＳＥ０＝Σｋ２・・・（６）
【００５２】
［非０係数の量子化誤差の推定］
次に、非０係数の量子化誤差の推定方法について説明する。直交変換係数ｋは、Ｑ／２より大きい場合、量子化の丸め処理によって０以外の値となる。また、直交変換係数ｋが［ＮＱ−Ｑ／２，ＮＱ＋Ｑ／２］の区間にある場合、量子化後の直交変換係数ｋ’はＮになる。実際には、非０係数の量子化誤差は、式（３）によって算出することができるが、ここでは、処理を簡素化する観点から、下記の式（７）のように、［ＮＱ−Ｑ／２，ＮＱ＋Ｑ／２］の区間の平均量子化誤差を用いて、非０係数ｋの量子化誤差に近似する。
【００５３】
【数４】
2015015595.tif 000006
【００５４】
ここで、上記のＰ（ｋ）は、［ＮＱ−Ｑ／２，ＮＱ＋Ｑ／２］の区間における係数ｋの分布確率である。Ｐ（ｋ）と量子化ステップＱが既知であれば、平均量子化誤差を計算できる。図５は、非０係数の量子化誤差の一例を示す模式図である。図５に示すように、実際には、塗りつぶしの部分が［ＮＱ−Ｑ／２，ＮＱ＋Ｑ／２］の区間における個々の非０係数の量子化誤差となるが、ここで、非０係数の量子化誤差を上記の式（７）で表される平均量子化誤差に近似させる。
【００５５】
非０係数の量子化誤差ＳＳＥ１＝Ｎ×平均量子化誤差・・・（８）
【００５６】
このように、符号化対象ブロックの非０係数の量子化誤差は、上記の式（８）に示すように、Ｑ／２より大きい全ての直交変換係数の数Ｎと個々の係数の平均量子化誤差とから求めることができる。
【００５７】
［全区間の符号化誤差］
まとめると、符号化誤差算出部１６０は、直交変換係数ｋがｋ≦Ｑ／２である場合にｋの２乗とし、ｋ＞Ｑ／２である場合に平均量子化誤差として量子化誤差を算出する。図６は、直交変換係数ｋの量子化誤差の一例を示す模式図である。図６に示すように、直交変換係数ｋがｋ≦Ｑ／２である場合には、直交変換係数ｋの出現頻度が高いので、直交変換係数ｋの実値から量子化誤差を求める。一方、直交変換係数ｋがｋ＞Ｑ／２である場合には、ｋ≦Ｑ／２の区間よりも直交変換係数ｋの出現頻度が低いので、ｋ＞Ｑ／２の区間の代表値である平均量子化誤差から量子化誤差を求める。
【００５８】
そして、符号化対象ブロックの量子化誤差は、下記の式（１０）によって計算できる。その上で、下記の式（１０）から求められた周波数領域の量子化誤差に比率ａを除算することによって画素領域の符号化誤差を求める。
【００５９】
量子化誤差＝Σｋ２＋Ｎ×平均量子化誤差・・・（１０）
【００６０】
このように、量子化誤差を０係数の量子化誤差と非０係数の量子化誤差に分けて求めるのは、次のような理由が挙げられる。すなわち、直交変換の特性として、直交変換係数の値は空間周波数のゼロ付近に集中するという特性を持つからである。このため、出現頻度が高いｋ≦Ｑ／２の区間は、直交変換係数ｋの実値を用いて量子化誤差を算出するとともに、出現頻度が低いｋ＞Ｑ／２の区間は、平均量子化誤差という代表値を用いて量子化誤差を算出する。これによって、量子化誤差の推定精度は維持しつつ、量子化誤差を算出するための演算量は削減できる。
【００６１】
［情報量の見積り］
上記の情報量見積り部１７０は、下記の式（１１）に示すように、有効係数の数から量子化後の直交変換係数の情報量を見積もる。なお、下記の式（１１）における「Bit」は、情報量を指し、「d1」は、係数を指し、「N」は、有効係数の数を指す。
【００６２】
Bit＝d1×N・・・（１１）
【００６３】
このように、有効係数を使って情報量を見積もる理由を説明する。例えば、ＨＥＶＣ規格では、符号化対象ブロックの直交変換係数を量子化し、量子化された直交変換係数を可変長符号化する場合に、まずは、符号化対象ブロックに有効係数があるか否かが判定される。このとき、有効係数がない場合には、係数の符号化は実行されず、「このブロックには有効係数がない」という事象を示すフラグだけが符号化される。一方、有効係数がある場合には、はじめに、所定のスキャンオーダで読み取られた有効係数の最終座標位置が符号化される。次に、各直交変換係数ごとに、有効係数であるかないかを示すフラグが符号化される。最後に、有効係数が符号化される。
【００６４】
以上の係数の符号化処理の流れによって、直交変換係数を可変長符号化する場合、可変長符号化で発生する情報量は、有効係数の数、最終位置及び有効係数の大きさと相関がある公算が高い。このため、本実施例では、情報量への影響度が最も高い有効係数の数を用いて符号化対象ブロックの係数の情報量を見積もる。
【００６５】
［処理の流れ］
次に、本実施例に係る動画像符号化装置の処理の流れについて説明する。なお、以下では、（１）動画像符号化処理について説明した後にそのサブルーチンとして実行される（２）符号化モード判定処理を説明し、さらに、符号化モード判定処理のサブルーチンとして実行される（３）符号化コスト算出処理について説明することとする。
【００６６】
（１）動画像符号化処理
図７は、実施例１に係る動画像符号化処理の手順を示すフローチャートである。この処理は、画像入力部１１から原画像が入力された場合に処理が起動し、原画像の入力が終了するまで繰り返し実行される。
【００６７】
図７に示すように、符号化モード判定部１００は、各符号化モードごとに当該符号化モードを用いて符号化する場合の符号化コストを算出した上で符号化コストを符号化モード間で比較し、符号化コストが最小である符号化モードを最適な符号化モードとして選択する「符号化モード判定処理」を実行する（ステップＳ１０１）。
【００６８】
続いて、予測画像生成部１２は、ステップＳ１０１で選択された符号化モードにしたがって、復号画像記憶部１８に記憶された復号画像を参照し、符号化対象ブロックの予測画像を生成する（ステップＳ１０２）。
【００６９】
そして、差分画像生成部１３は、ステップＳ１０２で生成された符号化対象ブロックの予測画像と、画像入力部１１によって入力された原画像との差分画像を生成する（ステップＳ１０３）。続いて、直交変換部１４ａは、ステップＳ１０３で生成された差分画像に直交変換を実行する（ステップＳ１０４）。
【００７０】
その後、量子化部１５ａは、ステップＳ１０４で画素領域から周波数領域へ直交変換された直交変換係数を量子化する（ステップＳ１０５）。続いて、可変長符号化部１６は、ステップＳ１０５で量子化された量子化信号に可変長符号化を実行する（ステップＳ１０６）。なお、ステップＳ１０６で可変長符号化がなされたストリームは、任意の出力先、例えば記憶デバイスやネットワークを介して接続される外部装置へ出力できる。
【００７１】
また、ステップＳ１０５で量子化された量子化信号に対し、逆量子化部１５ｂと逆直交変換部１４ｂによって逆量子化及び逆直交変換が実行されることで符号化前の差分画像と同程度の差分画像が得られる。その後、予測画像生成部１２から出力された予測画像と、その差分画像が復号画像生成部１７によって加算される。これによって、原画像と同一フレームの符号化対象ブロックの画像を再現する（ステップＳ１０７）。
【００７２】
このようにして得られた符号化対象ブロックの画像を復号画像記憶部１８に保存する。かかる復号画像記憶部１８に記憶された符号化対象ブロックの画像は、原画像の次のフレームの符号化で予測画像を生成するために、予測画像生成部１２へ出力される。
【００７３】
（２）符号化モード判定処理
図８は、実施例１に係る符号化モード判定処理の手順を示すフローチャートである。この処理は、図７に示したステップＳ１０１で実行される動画像符号化の前処理である。なお、下記のステップＳ２０１〜ステップＳ２０４までの処理は、モード情報記憶部１１０に記憶された各符号化モードのブロックサイズごとに当該符号化モードで設定された全ての符号化対象ブロックを対象に実行される。
【００７４】
図８に示すように、予測画像生成部１２０は、符号化対象ブロックの予測画像を生成する（ステップＳ２０１）。そして、差分画像生成部１３０は、ステップＳ２０１で生成された符号化対象ブロックの予測画像と、画像入力部１１によって入力された原画像との差分画像を生成する（ステップＳ２０２）。続いて、直交変換部１４０は、ステップＳ２０２で生成された差分画像に直交変換を実行する（ステップＳ２０３）。
【００７５】
その後、ステップＳ２０３で画素領域から周波数領域へ直交変換された直交変換係数を入力とし、符号化コストを算出する「符号化コスト算出処理」が閾値判定部１５０、計数部１５０ａ、符号化誤差算出部１６０、情報量見積り部１７０及び符号化コスト算出部１８０によって実行される（ステップＳ２０４）。
【００７６】
そして、符号化モード選択部１９０は、ステップＳ２０４で符号化モードごとに算出された符号化コストのうち符号化コストが最小である符号化モードを選択し（ステップＳ２０５）、処理を終了する。
【００７７】
（３）符号化コスト算出処理
図９は、実施例１に係る符号化コスト算出処理の手順を示すフローチャートである。この処理は、図８に示したステップＳ２０４で実行される処理であり、ステップＳ２０３で差分画像が画素領域から周波数領域へ直交変換された場合に処理が起動される。
【００７８】
図９に示すように、まず、閾値判定部１５０は、各種のパラメータ、例えば０係数の量子化誤差ＳＳＥ０、有効係数の数Ｃｏｕｎｔ及び直交変換係数の数Ｎの各々をカウントするカウンタの値をゼロに初期化する（ステップＳ３０１）。
【００７９】
続いて、閾値判定部１５０は、直交変換係数の数Ｎのカウンタの値を１つインクリメントする（ステップＳ３０２）。その上で、閾値判定部１５０は、直交変換係数の値が量子化に用いられる量子化ステップから定まる閾値、すなわち「Ｑ／２」以下であるか否かを判定する（ステップＳ３０３）。
【００８０】
ここで、直交変換係数の値が「Ｑ／２」以下である場合（ステップＳ３０３Ｙｅｓ）には、符号化誤差算出部１６０は、０係数の量子化誤差ＳＳＥ０のカウンタの値に当該直交変換係数ｋの２乗値、すなわちｋ２（＝ｋ＊ｋ）をインクリメントする（ステップＳ３０４）。
【００８１】
一方、直交変換係数の値が「Ｑ／２」よりも大きい場合（ステップＳ３０３Ｎｏ）には、計数部１５０ａは、有効係数の数Ｃｏｕｎｔのカウンタの値を１つインクリメントする（ステップＳ３０５）。
【００８２】
その後、直交変換係数の数Ｎのカウンタの値が直交変換係数の総数と等しくない場合（ステップＳ３０６Ｎｏ）には、上記のステップＳ３０２に戻って直交変換係数の数Ｎのカウンタの値を１つインクリメントし、上記のステップＳ３０５までの処理が繰り返し実行される。
【００８３】
その後、直交変換係数の数Ｎのカウンタの値が直交変換係数の総数と等しくなると（ステップＳ３０６Ｙｅｓ）、符号化誤差算出部１６０は、上記の式（１０）にしたがって次のような処理を実行する。すなわち、符号化誤差算出部１６０は、０係数の量子化誤差ＳＳＥ０のカウンタの値と、有効係数の平均量子化誤差および有効係数の数Ｃｏｕｎｔのカウンタの値の乗算値とを加算することによって量子化誤差を算出した上で量子化誤差を比率ａで除算することによって符号化誤差を算出する（ステップＳ３０７）。
【００８４】
続いて、情報量見積り部１７０は、上記の式（１１）にしたがって有効係数の数Ｃｏｕｎｔのカウンタの値に係数ｄ１を乗算することによって情報量を見積もる（ステップＳ３０８）。
【００８５】
そして、符号化コスト算出部１８０は、上記の式（１）にしたがってステップＳ３０７で算出された符号化誤差及びステップＳ３０８で見積もられた情報量を加算することによって符号化コストを算出し（ステップＳ３０９）、処理を終了する。
【００８６】
［実施例１の効果］
上述してきたように、本実施例に係る動画像符号化装置１０は、量子化後に値が０になる０係数の直交変換係数の実値及び量子化後に値が０以外となる有効係数の数から符号化誤差を求め、有効係数の数から可変長符号化の情報量を見積もって符号化コストを算出する。このため、符号化コストを算出するにあたって量子化、逆量子化、逆直交変換、さらには、可変長符号化を実行せずともよい。したがって、本実施例に係る動画像符号化装置１０によれば、符号化コストの演算量を削減できる。
【００８７】
加えて、本実施例に係る動画像符号化装置１０は、出現頻度が高い直交変換係数ｋについては実値から量子化誤差を求める一方で出現頻度が低い直交変換係数ｋについては代表値である平均量子化誤差から量子化誤差を求める。よって、本実施例に係る動画像符号化装置１０によれば、符号化コストの算出精度を低下させずに、符号化コストの演算量を削減できる。
【実施例２】
【００８８】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００８９】
［情報量見積りの応用例１］
例えば、上記の実施例１では、情報量の見積りに有効係数の数を使用する場合を例示したが、情報量の見積り精度をさらに向上させるために、有効係数の数と有効係数の最終位置を用いて、情報量を見積もることもできる。
【００９０】
ここで、上記の実施例１で説明したように、有効係数を可変長符号化する場合に発生する情報量は、有効係数の数以外に、有効係数の最終位置とも相関がある。このため、動画像符号化装置１０は、下記の式（１２）に示すように、有効係数の数とともに有効係数の最終位置をさらに加えて情報量を見積もってもよい。
【００９１】
Bit＝d1×N＋d2×LastPos・・・（１２）
【００９２】
上記の式（１２）において、「N」は、量子化ステップＱ／２より大きい直交変換係数、すなわち有効係数の数を指す。「LastPos」は、所定のスキャンオーダで取得した有効係数の最終位置（ＥＯＢ：End  Of  Block）を指す。図１０、図１１及び図１２は、スキャンオーダの一例を示す図である。例えば、ＨＥＶＣの場合には、図１０に示す「Zig-Zag  scan」、図１１に示す「horizontal  scan」及び図１２に示す「vertical  scan」の３種類のスキャンオーダが用いられる。このうち、インター予測には、「Zig-Zag  scan」が適用されるとともに、イントラ予測には、予測方向によって「horizontal  scan」または「vertical  scan」が適用される。「d1」は、有効係数の数に乗算する係数を指す。また、「d2」は、最終位置に乗算する係数を指す。これら「d1」及び「d2」は、両者の和が「１」となるように重み付けの係数として機能させることもできる。
【００９３】
さらに、上記の実施例１では、量子化ステップＱから定める閾値として定数Ｑ／２を使って符号化コストを算出する場合を例示したが、本実施例では、直交変換係数の空間周波数の高低によって、当該閾値の値を動的に切り替えることもできる。例えば、直交変換係数ｋが低周波成分である場合には、閾値をＱ／２に設定し、直交変換係数ｋが高周波成分である場合には、閾値を０．６Ｑに設定する。このように、低周波成分と比較する閾値よりも高周波成分と比較する閾値を大きくするのは、有効係数の可変長符号化に伴って発生する情報量を低減するためである。すなわち、可変長符号化では、高周波成分の係数の符号化が原因となって情報量が増加するので、高周波成分と比較する閾値を大きくすれば、高周波成分の係数が０になる数が増え、有効係数の最終位置がオーダースキャン時に早く出現する公算が高まる結果、係数の符号化で発生する情報量を低減できるからである。
【００９４】
図１３は、応用例１に係る符号化コスト算出処理の手順を示すフローチャートである。この処理は、図９に示した符号化コスト算出処理と同様に、図８に示したステップＳ２０４で実行される処理であり、ステップＳ２０３で差分画像が画素領域から周波数領域へ直交変換された場合に処理が起動される。
【００９５】
図１３に示すように、まず、閾値判定部１５０は、各種のパラメータ、例えば０係数の量子化誤差ＳＳＥ０、有効係数の数Ｃｏｕｎｔ及び直交変換係数の数Ｎの各々をカウントするカウンタの値をゼロに初期化する（ステップＳ４０１）。
【００９６】
続いて、閾値判定部１５０は、直交変換係数の数Ｎのカウンタの値を１つインクリメントする（ステップＳ４０２）。その上で、閾値判定部１５０は、判定対象とする直交変換係数が低周波成分であるか否かを判定する（ステップＳ４０３）。
【００９７】
このとき、直交変換係数が低周波成分である場合（ステップＳ４０３Ｙｅｓ）には、閾値判定部１５０は、直交変換係数と比較する閾値Ｔｈに０．５Ｑを設定する（ステップＳ４０４）。一方、直交変換係数が高周波成分である場合（ステップＳ４０３Ｎｏ）には、閾値判定部１５０は、直交変換係数と比較する閾値Ｔｈに０．６Ｑを設定する（ステップＳ４０５）。
【００９８】
その後、閾値判定部１５０は、直交変換係数の値がステップＳ４０４またはステップＳ４０５のいずれかで設定された閾値Ｔｈ以下であるか否かを判定する（ステップＳ４０６）。
【００９９】
ここで、直交変換係数の値が閾値Ｔｈ以下である場合（ステップＳ４０６Ｙｅｓ）には、符号化誤差算出部１６０は、０係数の量子化誤差ＳＳＥ０のカウンタの値に当該直交変換係数ｋの２乗値、すなわちｋ２（＝ｋ＊ｋ）をインクリメントする（ステップＳ４０７）。
【０１００】
一方、直交変換係数の値が閾値Ｔｈよりも大きい場合（ステップＳ４０６Ｎｏ）には、計数部１５０ａは、有効係数の数Ｃｏｕｎｔのカウンタの値を１つインクリメントする（ステップＳ４０８）。
【０１０１】
その後、直交変換係数の数Ｎのカウンタの値が直交変換係数の総数と等しくない場合（ステップＳ４０９Ｎｏ）には、上記のステップＳ４０２に戻って直交変換係数の数Ｎのカウンタの値を１つインクリメントし、上記のステップＳ４０８までの処理が繰り返し実行される。
【０１０２】
そして、直交変換係数の数Ｎのカウンタの値が直交変換係数の総数と等しくなると（ステップＳ４０９Ｙｅｓ）、符号化誤差算出部１６０は、上記の式（１０）にしたがって次のような処理を実行する。すなわち、符号化誤差算出部１６０は、０係数の量子化誤差ＳＳＥ０のカウンタの値と、有効係数の平均量子化誤差および有効係数の数Ｃｏｕｎｔのカウンタの値の乗算値とを加算することによって量子化誤差を算出した上で量子化誤差を比率ａで除算することによって符号化誤差を算出する（ステップＳ４１０）。
【０１０３】
続いて、情報量見積り部１７０は、符号化対象ブロックのうち直交変換係数の読み出しに適用されたスキャンオーダを適用し、有効係数の最終位置、すなわちＥＯＢを取得する（ステップＳ４１１）。その後、情報量見積り部１７０は、上記の式（１２）にしたがって有効係数の数Ｃｏｕｎｔのカウンタの値と係数ｄ１との乗算値、及び、有効係数の最終位置と係数ｄ２との乗算値を加算することによって情報量を見積もる（ステップＳ４１２）。
【０１０４】
そして、符号化コスト算出部１８０は、上記の式（１）にしたがってステップＳ４１０で算出された符号化誤差及びステップＳ４１２で見積もられた情報量を加算することによって符号化コストを算出し（ステップＳ４１３）、処理を終了する。
【０１０５】
このように、有効係数の数と有効係数の最終位置を用いて、情報量を見積もることによって、情報量の見積り精度をさらに向上させることができる。さらに、低周波成分と比較する閾値よりも高周波成分と比較する閾値を大きく設定することによって、有効係数の可変長符号化で発生する情報量を低減できる。
【０１０６】
［情報量見積りの応用例２］
本応用例２では、情報量の見積り精度をさらに向上させるために、有効係数の数、有効係数の最終位置及び有効係数の絶対値和を用いて、情報量を見積る例について説明する。
【０１０７】
ここで、上記の実施例１で説明したように、有効係数を可変長符号化する場合に発生する情報量は、有効係数の数と有効係数の最終位置以外にも、有効係数の大きさとの相関が高い。このことから、下記の式（１３）に示すように、有効係数の数および有効係数の最終位置に加えて、有効係数の大きさをさらに用いて情報量を見積もることとしてもよい。
【０１０８】
Bit＝d1×N＋d2×LastPos＋d3×Cost・・・（１３）
【０１０９】
上記の式（１３）において、「N」は、量子化ステップＱ／２より大きい直交変換係数、すなわち有効係数の数を指す。「LastPos」は、所定のスキャンオーダで取得した有効係数の最終位置（ＥＯＢ）を指す。「Cost」は、有効係数の絶対値和を指す。「d1」は、有効係数の数に乗算する係数を指す。「d2」は、最終位置に乗算する係数を指す。また、「d3」は、有効係数の絶対値和に乗算する係数を指す。これら「d1」、「d2」及び「d3」は、３つの係数の和が「１」となるように重み付けの係数として機能させることもできる。
【０１１０】
図１４は、応用例２に係る符号化コスト算出処理の手順を示すフローチャートである。この処理は、図９に示した符号化コスト算出処理と同様に、図８に示したステップＳ２０４で実行される処理であり、ステップＳ２０３で差分画像が画素領域から周波数領域へ直交変換された場合に処理が起動される。
【０１１１】
図１４に示すように、まず、閾値判定部１５０は、各種のパラメータ、例えば０係数の量子化誤差ＳＳＥ０、有効係数の数Ｃｏｕｎｔ、直交変換係数の数Ｎ及び有効係数の絶対値和Ｃｏｓｔの各々をカウントするカウンタの値をゼロに初期化する（ステップＳ５０１）。
【０１１２】
続いて、閾値判定部１５０は、直交変換係数の数Ｎのカウンタの値を１つインクリメントする（ステップＳ５０２）。その上で、閾値判定部１５０は、直交変換係数の値が量子化に用いられる量子化ステップから定まる閾値、すなわち「Ｑ／２」以下であるか否かを判定する（ステップＳ５０３）。
【０１１３】
ここで、直交変換係数の値が「Ｑ／２」以下である場合（ステップＳ５０３Ｙｅｓ）には、符号化誤差算出部１６０は、０係数の量子化誤差ＳＳＥ０のカウンタの値に当該直交変換係数ｋの２乗値、すなわちｋ２（＝ｋ＊ｋ）をインクリメントする（ステップＳ５０４）。
【０１１４】
一方、直交変換係数の値が「Ｑ／２」よりも大きい場合（ステップＳ５０３Ｎｏ）には、計数部１５０ａは、有効係数の数Ｃｏｕｎｔのカウンタの値を１つインクリメントする（ステップＳ５０５）。続いて、符号化誤差算出部１６０は、有効係数の絶対値和Ｃｏｓｔのカウンタの値に当該直交変換係数ｋの絶対値をインクリメントする（ステップＳ５０６）。
【０１１５】
その後、直交変換係数の数Ｎのカウンタの値が直交変換係数の総数と等しくない場合（ステップＳ５０７Ｎｏ）には、上記のステップＳ５０２に戻って直交変換係数の数Ｎのカウンタの値を１つインクリメントし、上記のステップＳ５０６までの処理が繰り返し実行される。
【０１１６】
その後、直交変換係数の数Ｎのカウンタの値が直交変換係数の総数と等しくなると（ステップＳ５０７Ｙｅｓ）、符号化誤差算出部１６０は、上記の式（１０）にしたがって次のような処理を実行する。すなわち、符号化誤差算出部１６０は、０係数の量子化誤差ＳＳＥ０のカウンタの値と、有効係数の平均量子化誤差および有効係数の数Ｃｏｕｎｔのカウンタの値の乗算値とを加算することによって量子化誤差を算出した上で量子化誤差を比率ａで除算することによって符号化誤差を算出する（ステップＳ５０８）。
【０１１７】
続いて、情報量見積り部１７０は、符号化対象ブロックのうち直交変換係数の読み出しに適用されたスキャンオーダを適用し、有効係数の最終位置、すなわちＥＯＢを取得する（ステップＳ５０９）。その後、情報量見積り部１７０は、上記の式（１３）にしたがって有効係数の数Ｃｏｕｎｔのカウンタの値と係数ｄ１との乗算値、有効係数の最終位置と係数ｄ２との乗算値、及び、有効係数の絶対値和Ｃｏｓｔのカウンタの値と係数ｄ３との乗算値を加算することによって情報量を見積もる（ステップＳ５１０）。
【０１１８】
そして、符号化コスト算出部１８０は、上記の式（１）にしたがってステップＳ５０８で算出された符号化誤差及びステップＳ５１０で見積もられた情報量を加算することによって符号化コストを算出し（ステップＳ５１１）、処理を終了する。
【０１１９】
このように、有効係数の数及び有効係数の最終位置に加え、有効係数の絶対値和をさらに用いて、情報量を見積もることによって、情報量の見積り精度をさらに向上させることができる。なお、ここでは、３つ全てを用いる場合を例示したが、各々を単独または２つ組み合わせて情報量を見積もることとしてもかまわない。
【０１２０】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、符号化モード判定部１００を動画像符号化装置１０の外部装置としてネットワーク経由で接続するようにしてもよい。さらに、閾値判定部１５０、計数部１５０ａ、符号化誤差算出部１６０、情報量見積り部１７０または符号化コスト算出部１８０を符号化モード判定部１００の外部装置としてネットワーク経由で接続するようにしてもよい。また、符号化モード判定部１００を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の動画像符号化装置１０の機能を実現するようにしてもよい。さらに、閾値判定部１５０、計数部１５０ａ、符号化誤差算出部１６０、情報量見積り部１７０または符号化コスト算出部１８０を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の符号化モード判定部１００の機能を実現するようにしてもよい。
【０１２１】
［符号化プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１５を用いて、上記の実施例と同様の機能を有する符号化プログラムを実行するコンピュータの一例について説明する。
【０１２２】
図１５は、実施例１及び実施例２に係る符号化プログラムを実行するコンピュータの一例について説明するための図である。図１５に示すように、コンピュータ１０００は、操作部１１００ａと、スピーカ１１００ｂと、カメラ１１００ｃと、ディスプレイ１２００と、通信部１３００とを有する。さらに、このコンピュータ１０００は、ＣＰＵ１５００と、ＲＯＭ１６００と、ＨＤＤ１７００と、ＲＡＭ１８００とを有する。これら１１００〜１８００の各部はバス１４００を介して接続される。
【０１２３】
ＨＤＤ１７００には、図１５に示すように、上記の実施例１で示した符号化モード判定部１００と同様の機能を発揮する符号化プログラム１７００ａが予め記憶される。この符号化プログラム１７００ａについては、図２に示した各々の符号化モード判定部１００の各構成要素と同様、適宜統合又は分離しても良い。すなわち、ＨＤＤ１７００に格納される各データは、常に全てのデータがＨＤＤ１７００に格納される必要はなく、処理に必要なデータのみがＨＤＤ１７００に格納されれば良い。
【０１２４】
そして、ＣＰＵ１５００が、符号化プログラム１７００ａをＨＤＤ１７００から読み出してＲＡＭ１８００に展開する。これによって、図１５に示すように、符号化プログラム１７００ａは、符号化プロセス１８００ａとして機能する。この符号化プロセス１８００ａは、ＨＤＤ１７００から読み出した各種データを適宜ＲＡＭ１８００上の自身に割り当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。なお、符号化プロセス１８００ａは、図２に示した符号化モード判定部１００にて実行される処理、例えば図９、図１３、図１４に示す処理を含む。また、ＣＰＵ１５００上で仮想的に実現される各処理部は、常に全ての処理部がＣＰＵ１５００上で動作する必要はなく、処理に必要な処理部のみが仮想的に実現されれば良い。
【０１２５】
なお、上記の符号化プログラム１７００ａについては、必ずしも最初からＨＤＤ１７００やＲＯＭ１６００に記憶させておく必要はない。例えば、コンピュータ１０００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ１０００がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１０００に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ１０００がこれらから各プログラムを取得して実行するようにしてもよい。
【符号の説明】
【０１２６】
１０    動画像符号化装置
１１    画像入力部
１２    予測画像生成部
１３    差分画像生成部
１４ａ  直交変換部
１５ａ  量子化部
１６    可変長符号化部
１５ｂ  逆量子化部
１４ｂ  逆直交変換部
１７    復号画像生成部
１８    復号画像記憶部
１００    符号化モード判定部
１１０    モード情報記憶部
１２０    予測画像生成部
１３０    差分画像生成部
１４０    直交変換部
１５０    閾値判定部
１５０ａ  計数部
１６０    符号化誤差算出部
１７０    情報量見積り部
１８０    符号化コスト算出部
１９０    符号化モード選択部
【図１】
2015015595.tif 000007
【図２】
2015015595.tif 000008
【図３】
2015015595.tif 000009
【図４】
2015015595.tif 000010
【図５】
2015015595.tif 000011
【図６】
2015015595.tif 000012
【図７】
2015015595.tif 000013
【図８】
2015015595.tif 000014
【図９】
2015015595.tif 000015
【図１０】
2015015595.tif 000016
【図１１】
2015015595.tif 000017
【図１２】
2015015595.tif 000018
【図１３】
2015015595.tif 000019
【図１４】
2015015595.tif 000020
【図１５】
2015015595.tif 000021