(57)【要約】【課題】ＱＰインデックスを画像サイズに比例して増大する大きな記憶領域に蓄えることなく、マクロブロック毎に、画像の特性に合わせ、適応的にＱＰインデックスを割り当てることが可能な量子化部を備えた画像符号化装置を提供する。【解決手段】画像符号化装置は、色空間変換部、周波数変換部、量子化部１０、係数予測部、適応型スキャン部、ＶＬＣ符号化部、ビットストリーム出力部とを備える。量子化部１０は、隣接するブロックにおける各係数データを基に、１つのＱＰインデックスｉを適応的に選択するアダプティプＱＰインデックス選択部２０と、前記ＱＰインデックスｉに対応する量子化パラメータＱ（ｉ）を選択する量子化パラメータ選択部３０と、前記量子化パラメータＱ（ｉ）を用いて、ブロック内の各係数データを量子化する量子化演算処理部４０と、ブロック等の数をカウントするブロックカウンタ部５０から構成される。【選択図】図２
2015103982.tif 000002
【特許請求の範囲】
【請求項１】
画像データを水平及び垂直の各方向にｎ画素からなるブロックを単位として、水平及び垂直の各方向にｍ個のブロックからなるマクロブロックについて周波数変換し、マクロブロック内の各ブロックの左上の画素位置以外の画素位置に相当するデータを高周波数成分の係数データとし、マクロブロック内の各ブロックの左上の画素位置に相当するデータを集めてさらに周波数変換し、該周波数変換後の左上の画素位置に相当するデータを直流成分の係数データとし、左上以外の画素位置に相当するデータを低周波数成分の係数データとする周波数変換部と、
前記周波数変換部により周波数変換された各成分の係数データを、内部又は外部の記憶領域に保持された量子化パラメータで除算することにより量子化して量子化係数データとする量子化部と、
前記量子化部により量子化された低周波数成分及び高周波数成分の量子化係数データのブロック内における画素の並び順を入れ替える処理をして入替後係数データとする係数スキャン部と、
前記量子化部による量子化後の直流成分の量子化係数データ及び前記係数スキャン部による入替処理後の入替後係数データを符号化して符号化データを生成する符号化部とを備えた画像符号化装置において、
前記量子化部は、
前記マクロブロック内の上側の各ブロックにおいて左右に隣接し、左側の各ブロックにおいて上下に隣接するブロックの直流成分の係数データと低周波数成分の係数データとの差分、及び前記隣接するブロックにおける低周波数成分の係数データ同士での差分をとり、絶対値化し、その平均をとった差分平均値と、０〜ｐ−１のｐ個の数値により１つの前記量子化パラメータを指定するものである各ＱＰインデックスに、対応する基準値であって、外部又は内部の記憶領域に保持された基準値とを、基準値の小さい方から順に比較し、最初に該差分平均値がその基準値よりも小さくなった基準値に対応するＱＰインデックスを選択されたＱＰインデックス（ｉ）とするアダプティプＱＰインデックス選択部と、
前記選択したＱＰインデックス（ｉ）に対応する量子化パラメータＱ（ｉ）を選択する量子化パラメータ選択部と、
前記選択した量子化パラメータＱ（ｉ）を用いて、マクロブロック内の各ブロックにおける低周波数成分及び高周波数成分の各係数データを量子化する量子化演算処理部とを備えて構成されることを特徴とする画像符号化装置。
但し、前記ｎ，ｍ及びｐは２以上の整数であり、前記ｉは０〜ｐ−１の整数である。
【請求項２】
前記アダプティプＱＰインデックス選択部は、
前記マクロブロック内の前記隣接する各ブロック間の、直流成分の係数データから低周波数成分の係数データを減算、又は低周波数成分の係数データから上下又は左右に隣接するブロックの低周波数成分の係数データを減算してその差分データを生成する差分処理部と、
前記差分処理部で生成した各差分データの絶対値をとって絶対値データを生成する絶対値算出部と、
前記絶対値算出部で生成した各絶対値データの平均をとって、前記隣接するブロック間の直流成分及び低周波数成分の係数データについての差分平均値データを生成する平均値算出部と、
前記平均値算出部で生成した差分平均値データとＱＰインデックス毎に定められた各基準値とを基準値の小さい方から順に比較し、最初に該差分平均値がその基準値よりも小さくなった基準値に対応するＱＰインデックスを選択されたＱＰインデックス（ｉ）とする基準値比較部とを備えて構成されることを特徴とする請求項１記載の画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを圧縮して符号化する画像符号化装置に関する。
【背景技術】
【０００２】
従来、通信における負荷等を軽減する目的で、画像データを圧縮して符号化する画像符号化装置が知られている。そして、近年では、さらに圧縮効率を高めた画像符号化の規格が提案されている（非特許文献１参照）。
【０００３】
前記規格に従った画像符号化装置の概略構成を図１３に示す。同図１３に示すように、この画像符号化装置１００は、色空間変換部１１０、周波数変換部１２０、量子化部１３０、係数予測部１４０、適応型スキャン部１５０、ＶＬＣ符号化部１６０、ビットストリーム出力部１７０より構成される。なお、前記ＶＬＣ符号化部１６０の名称中のＶＬＣは、可変長符号化方式（Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）の略称である。
【０００４】
画像データは、画像の最小単位である画素（ピクセル）から構成され、１６画素（水平方向）×１６画素（垂直方向）で区切られた２５６画素の画像領域を１つの単位として、これをマクロブロックと呼び、このマクロブロックを水平方向、垂直方向にそれぞれ４分割した４画素×４画素の単位をブロックと呼ぶ。前記規格に従った画像処理では、このマクロブロック及びブロックを単位として処理が進められる。
【０００５】
前記色空間変換部１１０は、入力された画像データをマクロブロック単位で画素毎に色空間変換処理する。色空間変換処理は、非特許文献１の規格で定められたピクセルフォーマットに依存する。ピクセルフォーマットが色空間変換を必要とするものである場合、ＲＧＢフォーマットである原画像データはＹＵＶフォーマットに変換される処理がされ、ＣＭＹＫフォーマットである原画像データはＹＵＶＫフォーマットに変換される処理がされる。また、ピクセルフォーマットが色空間変換を必要とするものでない場合、原画像データは色空間変換されない処理がなされる。そして、前記色空間変換部１１０は、前記処理をした画像データを前記周波数変換部１２０に入力する。
【０００６】
前記周波数変換部１２０は、前記色空間変換部１１０によって色空間処理された画像データを、マクロブロック単位でラスター順に、各マクロブロック内では前記色空間変換後の色成分順に、各色成分内の１６個のブロックについて、各画素のデータを周波数帯域毎の係数データに変換する処理（周波数変換）を行う。この周波数変換部１２０は、各ブロック内の４×４画素の１６個の画素データについて、周波数変換をして係数データに変換した後、１６個のブロックの各左上の係数データを除く残りの各１５個の係数データを集めて、第１階層データを形成する。これは、高周波成分であるＨＰ係数（ハイパス係数）データとなる。次に、１６個のブロックの各左上の係数データを集めて、４×４の１６個の係数データを生成し、この集められた４×４の係数データをさらに周波数変換して、４×４の係数データとし、この周波数変換した４×４の係数データの内、左上の１個の係数データを除く残りの１５個の係数データで第２階層データを形成し、前記２回目の周波数変換後の４×４の係数データの内、左上の１個の係数データで第３階層データを形成する。この第２階層データは、低周波成分であるＬＰ係数（ローパス係数）データに相当し、第３階層データは、直流成分であるＤＣ係数（ディーシー係数）データに相当する。このように前記周波数変換部１２０は、前記第１階層データ（ＨＰ係数）、第２階層データ（ＬＰ係数）、第３階層データ（ＤＣ係数）を生成し、これらの各階層データを前記量子化部１３０に入力する。
【０００７】
前記量子化部１３０は、前記周波数変換部１２０から入力された周波数変換後の第１階層データ、第２階層データ、及び第３階層データを、それぞれ選択された量子化パラメータで除算して量子化する処理を行い、処理後の前記第１階層データ、第２階層データ、及び第３階層データを前記係数予測部１４０に入力する。
【０００８】
前記量子化部１３０は、図１４に示すように、ＱＰインデックス取得・記憶部１１１、量子化パラメータ選択部１１２、量子化演算部１１３、ブロックカウンタ部１１４から構成される。以下、図１５に示す量子化処理部１３０を中心とした処理フロー、図１６〜図１９に示すＱＰインデックスの具体的設定例を参照しながら説明する。
【０００９】
非特許文献１の規格では、ＱＰインデックスと呼ばれるパラメータを使って量子化処理を実施することができる。ＱＰインデックスとは、１６画素×１６画素のマクロブロック毎に、０〜１５の数値からなる１６個のＱＰインデックスと呼ばれるパラメータの中からその１つを指定し、指定されたＱＰインデックスに対応する量子化パラメータを用いて、そのマクロブロックに含まれる周波数変換後のＬＰ係数データ及びＨＰ係数データを除算して、量子化するためのものである。
【００１０】
図１６及び図１７に、ＱＰインデックスの具体的な設定例を示す。図１６は、ＱＰインデックスが０〜７までの量子化パラメータの設定例、図１７は、ＱＰインデックスが８〜１５までの量子化パラメータの設定例となっている。ＤＣ係数については、量子化パラメータは１種類しか取り得ないので、ＱＰインデックスの指定はないが、仮に、ＱＰインデックスが０に対応するとして、ＱＰインデックスが０の部分に、第１色成分〜第４色成分について１〜４の量子化パラメータを指定している。同図１６及び図１７に示した例によれば、例えば、ＬＰ係数の第１色成分については、ＱＰインデックス０〜１５に対応させて、ＱＰパラメータを１０〜２５と指定することができ、ＬＰの第２色成分、第３色成分、及び第４色成分については、ＱＰインデックス０〜１５に対応させて、ＱＰパラメータをそれぞれ、３０〜４５、５０〜６５、及び７０〜８５と指定することができる。ＨＰ係数についても同様であり、ＱＰインデックス０〜１５に対応する量子化パラメータに異なる値、もしくは同じ値を指定することができる。なお、量子化パラメータには０〜２５５の範囲の整数を指定することができる。同図１６及び図１７に示した設定例は、指定の一例であって、ＱＰインデックスに対応する量子化パラメータにこの他の値を指定してもよい。なお、設定例として、第１色成分〜第４色成分、ＱＰインデックス０〜１５の全てに量子化パラメータを指定した例を示したが、色成分の数は、元となる画像フォーマットにより決定され、使用するＱＰインデックスの数については、圧縮の際の設定により１から１６の範囲で指定できるものであり、使用の用途、目的等により増減させることができる。
【００１１】
図１８に画像を１６×１６画素のマクロブロック単位の領域に分け、領域毎にＱＰインデックスを指定する例を示す。細線で区切った矩形領域をマクロブロック、太線で区切った画像の内側の領域を領域１とし、太線で区切った画像の外側の領域を領域２としている。例えば、領域１に指定するＱＰインデックスを０とし、領域２に指定するＱＰインデックスを１として、それぞれのＱＰインデックスに対応する量子化パラメータを指定することができる。なお、一般的に、画像の中央部に重要で精細なイメージがあり、周辺部にはあまり重要でないイメージがあることが多く、例えば、画像中央部の領域１に指定したＱＰインデックスが０に対応する量子化パラメータの値を小さな値として、低圧縮にすることで繊細な画像とし、周辺部の領域２に設定したＱＰインデックスが１に対応する量子化パラメータの値を大きな値として、高圧縮にすることで粗い画像とすることができる。
【００１２】
図１９に画像をマクロブロック単位の領域に分け、領域毎にＱＰインデックスを指定する別の例を示す。太線で区切った画像の中央部の内、左側の領域を領域１、右側の領域を領域２とし、太線で区切った画像の上部の領域を領域３、太線で区切った画像の下部の領域を領域４とし、領域１にはＱＰインデックスとして０〜５を割り当て、領域２にはＱＰインデックスとして６〜１１を割り当て、領域３にはＱＰインデックスとして１２〜１３を割り当て、領域４にはＱＰインデックスとして１４〜１５を割り当てたものである。図１８と同様、例えば、中央部の領域１と領域２に指定したＱＰインデックスが０〜１１に対応する量子化パラメータの値を小さな値として低圧縮にすることで、繊細な画像とし、周辺部の領域３と領域４に設定したＱＰインデックスが１２〜１５に対応する量子化パラメータの値を大きな値として高圧縮にすることで、粗い画像とすることもできる。
【００１３】
このような指定ができるＱＰインデックスを用いた量子化処理の動作を図１４及び図１５を用いて説明する。
【００１４】
前記量子化パラメータ選択部１１２は、圧縮処理の開始前に、外部コントローラ等から各ＱＰインデックスに対応する量子化パラメータを取得し、記憶する（ステップＳ２１）。ブロックカウンタ部１１４は、圧縮処理の開始時に、マクロブロックのカウント値ｍ、色成分のカウント値ｃ、ブロックのカウント値ｎをそれぞれ１に初期化して（ステップＳ２２）、圧縮処理の進行とともに入力される係数データの数をカウントしながら、これらｍ，ｃ，ｎのカウント値を更新していく（ステップＳ２８，Ｓ３０，Ｓ３２）。
【００１５】
前記周波数変換部１２０は、最初のマクロブロック（カウント値ｍは１）の画像データを周波数変換して、第１階層データ（ＨＰ係数）、第２階層データ（ＬＰ係数）、第３階層データ（ＤＣ係数）からなる係数データを生成し、前記量子化部１３０に入力する（ステップ２３）。以降の処理は、第１階層データ（ＨＰ係数）について説明する。第２階層データ（ＬＰ係数）については、マクロブロック内のブロックの数を１として、同様の処理となるが、第３階層データ（ＤＣ係数）については、量子化処理にＱＰインデックスを用いないため、ＱＰインデックスの取得は不要となる。
【００１６】
前記ＱＰインデックス取得・記憶部１１１は、最初のマクロブロック（カウント値ｍは１）に対応するＱＰインデックスについて、データ要求信号を出力し、データ記憶部よりＱＰインデックスを取得し、記憶する（ステップＳ２４）。なお、ＱＰインデックスの値は、マクロブロック毎に指定され、画像サイズが大きくなると、その画像データに含まれるマクロブロックの数も増大し、各マクロブロックに対応するＱＰインデックスの数も増大するため、各マクロブロックに対応するＱＰインデックスは、外部又は内部のデータ記憶領域に保持しておくのが一般的である。
【００１７】
前記量子化パラメータ選択部１１２は、前記ＱＰインデックス取得・記憶部１１１に記憶された最初のマクロブロック（カウント値ｍは１）に対応するＱＰインデックスｉを参照し、ＱＰインデックスｉに対応する量子化パラメータＱ（ｉ）を、圧縮処理の起動前に取得した量子化パラメータの中から選択し、選択した量子化パラメータＱ（ｉ）を量子化演算部１１３に入力する（ステップＳ２５）。
【００１８】
前記量子化演算部１１３は、前記周波数変換部１２０より入力された最初のマクロブロック（カウント値ｍは１）の第１色成分（カウント値ｃは１）の最初のブロック（カウント値ｎは１）に対応するブロックの係数データを前記量子化パラメータ選択部１１２より取得したＱＰパラメータＱ（ｉ）で除算し、量子化データを生成するとともに、生成した量子化データを前記係数予測部１４０へ入力する（ステップＳ２６）。
【００１９】
最終ブロック（カウンタ値ｎが１５）でなければ（ステップＳ２７）、前記ブロックカウンタ部１１４は、カウント値ｎを１だけカウントアップし（ステップＳ２８）、同様に量子化演算部１１３は、最初のブロックと同じ量子化パラメータＱ（ｉ）を用いて、次のブロックの量子化処理を実施する（ステップＳ２６）。そして、順次、カウント値ｎをカウントアップしていき、各ブロックの量子化処理を実施する。該ブロックの量子化処理後、処理したブロックが最終ブロックであれば、前記ブロックカウンタ部１１４は、色成分が最終のものであるかどうかを確認する（ステップＳ２９）。
【００２０】
最終の色成分でなければ、前記ブロックカウンタ部１１４は、ブロックのカウント値ｎを１に初期化し、色成分のカウント値ｃを１だけカウントアップした上で（ステップＳ３０）、前記量子化パラメータ選択部１１２は、現状の色成分（カウント値ｃに対応する色成分）における最初のマクロブロック（カウント値ｍは１）のＱＰインデックスｉに対応する量子化パラメータＱ（ｉ）を選択し（ステップＳ２５）、前記量子化演算部１１３は、選択された量子化バラメータにて、ブロック数分の係数データの量子化処理を実施する（ステップＳ２６）。そして、同様にブロック毎に量子化処理を進め、最終のブロックの量子化処理を終了する毎に、前記ブロックカウンタ部１１４は、色成分のカウント値ｃを確認し、そのカウント値ｃが最終の色成分のものでなければ、カウント値ｃをカウントアップし、最終の色成分のものであれば、マクロブロックのカウント値が最終のものであるかどうかを確認する（ステップＳ３１）。
【００２１】
最終のマクロブロックでなければ、前記ブロックカウンタ部１１４は、ブロックのカウント値ｎと色成分のカウント値ｃを１に初期化し、マクロブロックのカウント値ｍを１だけカウントアップした上で（ステップＳ３２）、前記周波数変換部１２０は、該マクロブロックの画像データを周波数変換してブロック単位の係数データに変換し（ステップＳ２３）、前記ＱＰインデックス取得・記憶部１１１は、前記データ記憶部よりＱＰインデックスを取得し（ステップＳ２４）、前記量子化パラメータ選択部１１２は、取得したＱＰインデックスｉに対応する量子化パラメータＱ（ｉ）を選択し（ステップＳ２５）、前記量子化演算部１１３は、前記周波数変換部１２０により生成された係数データを前記量子化パラメータ選択部１１２により選択された量子化パラメータＱ（ｉ）で除算して、量子化データを生成し、前記係数予測部１４０へ出力する。そして、マクロブロック単位での量子化処理が進み、処理したマクロブロックが最終のマクロブロックになれば、前記量子化部１３０は、一連の量子化処理を終了する。なお、最終のマクロブロックであるか否かは、マクロブロックのカウンタ値ｍが、（水平方向の画像サイズ／１６）×（垂直方向の画像サイズ／１６）に一致するか否かで判断する。
【００２２】
以上のように、前記量子化部１３０は、前記ブロックカウンタ部１１４にて、マクロブロック、色成分、ブロックのカウント値を更新しながら、前記ＱＰインデックス取得・記憶部１１１にて、各マクロブロック毎のＱＰインデックスを取得し、前記量子化パラメータ選択部１１２にて、取得した量子化インデックスより量子化パラメータを選択し、前記量子化演算部１１３にて、現在のマクロブロックにおける係数データを選択された量子化パラメータで除算して、量子化データを生成するという量子化処理を、マクロブロックの数だけ繰り返すというものである。そして、量子化パラメータを選定する基となるＱＰインデックスは、データ記憶部より、マクロブロック毎に取得していく。
【００２３】
前記係数予測部１４０は、前記量子化部１３０から入力されたブロック毎の前記第１階層データ、第２階層データ、及び第３階層データについて、それぞれ、隣接するブロック間の係数値の比較を行って予測モードを算出し、所定の演算式に基づいて、導出された予測モードの方向に、相関の高いブロック間で減算する処理を行う。そして、前記係数予測部１４０は、処理後の第１階層データ、第２階層データ、及び第３階層データをブロック毎に、適応型スキャン部１５０に入力する。
【００２４】
前記適応型スキャン部１５０は、前記係数予測部１４０から入力された第１階層データ及び第２階層データについて、ブロック毎にその係数データを入れ替える処理を行う。この入替処理は、周波数変換後のブロック内の画素位置が小さい側（低周波数側）に非ゼロの係数データを集め、ブロック内の画素位置が大きい側（高周波数側）にゼロ値が連続する係数データを集めるので、符号化の圧縮率を高めることができる。そして、前記適応型スキャン部１５０は、係数データを入れ替えた第１階層データ、第２階層データ、及び入替処理を実施しない第３階層データを、前記ＶＬＣ符号化部１６０に入力する。
【００２５】
前記ＶＬＣ符号化部１６０は、前記適応型スキャン部１５０で処理された第１階層データ、第２階層データ、及び第３階層データに対して、エントロピー符号化処理を施し、コードストリームを生成して、そのコードストリームを前記ビットストリーム出力部１７０に入力する。
【００２６】
前記ビットストリーム１７０は、ヘッダ情報としての画像設定データに、前記ＶＬＣ符号化部１６０で符号化されたコードストリームを順次連接し、１画像データ分のビットストリームとして１纏めにして、１つのファイルを形成し、形成したファイルを外部に出力する。
【先行技術文献】
【非特許文献】
【００２７】
【非特許文献１】ＪＰＥＧ  ＸＲ勧告書ITU-T T.832 : Information technology -JPEG XR image coding system - Image coding specification. [online].Recommendation T.832(01/12). Approval 2012-01-13. Status : In force.2012-9-14, ITU(International Telecommunication Union).[retrieved on 2013-10-29]. Retrieved from the Internet : <URL : http://www.itu.int/rec/T-REC-T.832-201201-I/en>.
【発明の概要】
【発明が解決しようとする課題】
【００２８】
ところで、図１４に示す従来の画像符号化装置では、予めマクロブロック毎のＱＰインデックスを蓄えておくため、画像サイズに比例して増大する記憶領域をもったデータ記憶部を備える必要があり、マクロブロックの周波数変換が終了する毎に、該データ記憶部からＱＰインデックスを取得する必要があった。このため、画像サイズの増大とともに大きな記憶領域を必要とし、マクロブロックの処理毎にＱＰインデックスのデータ転送のためにデータ記憶部へのアクセスが必要であるという問題があった。
【００２９】
また、このＱＰインデックスを用いた画像圧縮における量子化は、各マクロブロック毎に予めＱＰインデックス値を定めておく必要があり、図１８及び図１９について前述したように、例えば、画像を、マクロブロックを単位として、複数のマクロブロックで区切った領域毎にＱＰインデックスを割り当てるといったＱＰインデックスの指定が行われている。このため、この画像領域の区切り毎でしかＱＰインデックスを割り当てることができず、マクロブロック毎の画像の特性に合わせて、符号化処理中に、適応的にＱＰインデックスを割り当てることができないという問題があった。
【００３０】
本発明は、以上の実情に鑑み、なされたものであって、ＱＰインデックスを大きな記憶領域に蓄えることなく、マクロブロック毎に、画像の特性に合わせ、適応的にＱＰインデックスを割り当てることが可能な量子化部を備えた画像符号化装置の提供を、その目的とする。
【課題を解決するための手段】
【００３１】
上記課題を解決するため、発明の画像符号化装置は、
画像データを水平及び垂直の各方向にｎ画素からなるブロックを単位として、水平及び垂直の各方向にｍ個のブロックからなるマクロブロックについて周波数変換し、マクロブロック内の各ブロックの左上の画素位置以外の画素位置に相当するデータを高周波数成分の係数データとし、マクロブロック内の各ブロックの左上の画素位置に相当するデータを集めてさらに周波数変換し、該周波数変換後の左上の画素位置に相当するデータを直流成分の係数データとし、左上以外の画素位置に相当するデータを低周波数成分の係数データとする周波数変換部と、
前記周波数変換部により周波数変換された各成分の係数データを、内部又は外部の記憶領域に保持された量子化パラメータで除算することにより量子化して量子化係数データとする量子化部と、
前記量子化部により量子化された低周波数成分及び高周波数成分の量子化係数データのブロック内における画素の並び順を入れ替える処理をして入替後係数データとする係数スキャン部と、
前記量子化部による量子化後の直流成分の量子化係数データ及び前記係数スキャン部による入替処理後の入替後係数データを符号化して符号化データを生成する符号化部とを備えた画像符号化装置において、
前記量子化部は、
前記マクロブロック内の上側の各ブロックにおいて左右に隣接し、左側の各ブロックにおいて上下に隣接するブロックの直流成分の係数データと低周波数成分の係数データとの差分、及び前記隣接するブロックにおける低周波数成分の係数データ同士での差分をとり、絶対値化し、その平均をとった差分平均値と、０〜ｐ−１のｐ個の数値により１つの前記量子化パラメータを指定するものである各ＱＰインデックスに、対応する基準値であって、外部又は内部の記憶領域に保持された基準値とを、基準値の小さい方から順に比較し、最初に該差分平均値がその基準値よりも小さくなった基準値に対応するＱＰインデックスを選択されたＱＰインデックス（ｉ）とするアダプティプＱＰインデックス選択部と、
前記選択したＱＰインデックス（ｉ）に対応する量子化パラメータＱ（ｉ）を選択する量子化パラメータ選択部と、
前記選択した量子化パラメータＱ（ｉ）を用いて、マクロブロック内の各ブロックにおける低周波数成分及び高周波数成分の各係数データを量子化する量子化演算処理部とを備える。
但し、前記ｎ，ｍ及びｐは２以上の整数であり、前記ｉは０〜ｐ−１の整数である。
【００３２】
上記構成を備えた本発明に係る画像符号化装置によれば、まず、１画像分の画像データが周波数変換部に入力され、周波数変換部においては、画像データは水平及び垂直の各方向にｎ画素からなるブロックを単位として、水平及び垂直の各方向にｍ個のブロックからなるマクロブロックについて周波数変換されて高周波数成分、低周波数成分、及び直流成分の係数データとされ、量子化部に入力される。
【００３３】
そして、量子化部において、周波数変換された各成分の係数データは、内部又は外部の記憶領域に保持された量子化パラメータで除算することにより量子化される。
【００３４】
量子化された係数データは、係数予測部に入力され、係数予測部において、予測モードを導出するとともに、相関の高いブロック間で減算される処理を行った後、係数スキャン部に入力され、係数スキャン部において、非ゼロの係数データをブロック内の低周波数側に集中させるように、ブロック内の画素の並び順を入れ替える処理が行われ、入れ替え後のブロック単位の係数データが符号化部において符号化され、符号化データが生成される。
【００３５】
そして、量子化部では、アダプティプＱＰインデックス選択部において、マクロブロック内の上側の各ブロックにおいて左右に隣接し、左側の各ブロックにおいて上下に隣接するブロックの直流成分の係数データと低周波数成分の係数データとの差分、及び前記隣接するブロックにおける低周波数成分の係数データ同士での差分をとり、絶対値化し、その平均をとった差分平均値と、各ＱＰインデックスに対応する基準値とを、基準値の小さい方から順に比較し、最初に該差分平均値がその基準値よりも小さくなった基準値に対応するＱＰインデックスを選択されたＱＰインデックス（ｉ）とし、量子化パラメータ選択部において、選択されたＱＰインデックス（ｉ）に対応する量子化パラメータＱ（ｉ）が選択され、量子化演算処理部において、選択された量子化パラメータＱ（ｉ）を用いて、ブロック単位の各係数データが除算され、量子化される。
【００３６】
このように、本発明の構成によれば、量子化部内にアダプティプＱＰインデックス選択部を設け、マクロブロックの上側及び左側のブロック内で隣接する各ブロックにおける直流成分及び低周波数成分の係数データについて差分平均値をとり、ＱＰインデックスに対応する設定した基準値の小さい方から順に比較することで、所定個数のＱＰインデックスの中から１つのＱＰインデックスを選択するようにしているので、従来の構成のように、画像サイズに比例して増大するＱＰインデックスを記憶するデータ記憶部を設ける必要がなく、該データ記憶部からＱＰインデックスを取得する処理も不要となる。また、隣接するブロックにおける直流成分及び低周波数成分の係数データから差分平均値を求め、ＱＰインデックスに対応する基準値と大小比較することで、１つのＱＰインデックスを選択するようにしているので、処理している画像領域の特性に合致するようなＱＰインデックスを決定でき、このＱＰインデックスに対応する量子化パラメータで、ブロック単位の各係数データを除算するので、画像の各領域の画像特性に適した量子化処理が可能となり、画像符号化処理の最適化を図ることができる。
【００３７】
また、本発明の画像符号化装置のアダプティプＱＰインデックス選択部は、
前記マクロブロック内の前記隣接する各ブロック間の、直流成分の係数データから低周波数成分の係数データを減算、又は低周波数成分の係数データから上下又は左右に隣接するブロックの低周波数成分の係数データを減算してその差分データを生成する差分処理部と、
前記差分処理部で生成した各差分データの絶対値をとって絶対値データを生成する絶対値算出部と、
前記絶対値算出部で生成した各絶対値データの平均をとって、前記隣接するブロック間の直流成分及び低周波数成分の係数データについての差分平均値データを生成する平均値算出部と、
前記平均値算出部で生成した差分平均値データとＱＰインデックス毎に定められた各基準値とを基準値の小さい方から順に比較し、最初に該差分平均値がその基準値よりも小さくなった基準値に対応するＱＰインデックスを選択されたＱＰインデックス（ｉ）とする基準値比較部とを備える。
【００３８】
上記構成を備えた本発明に係る画像符号化装置におけるアダプティプＱＰインデックス選択部によれば、まず、差分処理部において、マクロブロックの上側及び下側ブロックの隣接するブロック間における直流成分及び低周波数成分の係数データの差分データを生成し、絶対値算出部において、その差分データの絶対値を取り、平均値算出部において、絶対値化した差分データの平均値である差分平均値を求める。そして、基準値比較部において、前記差分平均値とＱＰインデックス毎に定めた基準値とを大小比較して、所定個数のＱＰインデックスの中から１つのＱＰインデックスを選択する。
【００３９】
このように、本発明の構成によれば、差分処理部にてマクロブロックの上側及び下側ブロックの隣接するブロック間における直流成分及び低周波数成分の係数データの差分データを取り、絶対値算出部にてその差分データを絶対値化し、平均値算出部にて差分データを絶対値化したものの平均値である差分平均値をとり、基準値比較部にてその差分平均値とＱＰインデックス毎の基準値とを大小比較して１つのＱＰインデックスを選択しているので、処理している画像領域の画像の状態に対応したＱＰインデックスの選定ができるようになり、選定したＱＰインデックスに対応する量子化パラメータで量子化することで、処理している画像領域の特性に合った量子化が可能となる。
【発明の効果】
【００４０】
以上のように、本発明によれば、処理している画像領域における、マクロブロックの上側及び左側に隣接するブロック間における直流成分及び低周波数成分の各係数データから差分平均値を求め、差分平均値とＱＰインデックスに対応する基準値と大小比較することで、１つのＱＰインデックスを選択しているので、ＱＰインデックスを記憶するデータ記憶部を設ける必要がなく、従って、データ記憶部からＱＰインデックスを取得する処理も不要となり、また、処理している画像領域の特性に合致するＱＰインデックスを決定し、これに対応するＱＰパラメータで、ブロック単位の各係数データを除算するので、画像の各領域の画像特性に適した量子化処理が可能となり、画像符号化処理の最適化を図ることができる。
【図面の簡単な説明】
【００４１】
【図１】本発明の一実施形態に係る画像符号化装置の概略構成を示したブロック図である。
【図２】本実施形態に係る量子化部の構成を示したブロック図である。
【図３】本実施形態に係るアダプティブＱＰインデックス選択部の構成を示したブロック図である。
【図４】本実施形態に係る基準値比較部の構成を示したブロック図である。
【図５】本実施形態に係るプライオリティエンコーダの機能を示した真理値表である。
【図６】本実施形態に係る量子化部を中心とした処理手順を示したフローチャートである。
【図７】本実施形態に係るアダプティブＱＰインデックス選択部における差分平均値処理方法の一例を説明するための説明図である。
【図８】本実施形態に係るアダプティブＱＰインデックス選択部における差分平均値処理の一例を説明するための説明図である。
【図９】本実施形態に係るアダプティブＱＰインデックス選択部における差分平均値処理の一例を説明するための説明図である。
【図１０】本実施形態に係るアダプティブＱＰインデックス選択部における差分平均値処理の一例を説明するための説明図である。
【図１１】本実施形態に係る量子化部における基準値比較と量子化パラメータ選択の一例を説明するための説明図である。
【図１２】本実施形態に係る量子化部における基準値比較と量子化パラメータ選択の一例を説明するための説明図である。
【図１３】従来の画像符号化装置の概略構成を示したブロック図である。
【図１４】従来の量子化部の構成を示したブロック図である。
【図１５】従来の量子化部を中心とした処理手順を示したフローチャートである。
【図１６】ＱＰインデックスと量子化パラメータの関係を説明するための説明図である。
【図１７】ＱＰインデックスと量子化パラメータの関係を説明するための説明図である。
【図１８】従来の画像を領域分割してＱＰインデックスを割り当てる方式の一例を説明するための説明図である。
【図１９】従来の画像を領域分割してＱＰインデックスを割り当てる方式の一例を説明するための説明図である。
【発明を実施するための形態】
【００４２】
以下、本発明の具体的な実施形態について、図面を参照しながら説明する。尚、図１は本実施形態に係る画像符号化装置１の構成を示したブロック図であり、図２〜図５は、本実施形態に係る量子化部の構成及び機能を示したブロック図及び真理値表である。また、図６は本実施形態に係る量子化部を中心とした処理手順を示したフローチャートである。
【００４３】
図１に示すように、本実施形態の画像符号化装置１は、図１３の従来の画像符号化装置１００における量子化部１３０に代えて、これとはその構成の異なる量子化部１０を備えるもので、この点においてのみ、従来の画像符号化装置１００とその構成が異なっている。従って、他の構成については、上記画像符号化装置１００におけるものと同一の符号を付して、その詳しい説明は省略する。
【００４４】
前記量子化部１０は、図２に示すように、適応的にＱＰインデックスを選択するアダプティブＱＰインデックス選択部２０、選択したＱＰインデックスに対応する量子化パラメータを選択する量子化パラメータ選択部３０、選択した量子化パラメータを用いて量子化を行う量子化演算部４０、及びブロック等のカウンタ値をカウントするブロックカウンタ部５０から構成される。
【００４５】
この量子化部１０においても、上述した量子化部１３０と同様に、前記周波数変換部１２０から出力される第１階層データ及び第２階層データについて、マクロブロック単位で扱われ、更にマクロブロックでは、ブロック単位で処理を行う。尚、以下では、第１階層データの処理について説明するが、第２階層データの処理についても同様である。また、図６の本発明の量子化部１０を中心とした動作フローを併せて説明する。
【００４６】
まず、画像符号化処理前に、前記アダプティブＱＰインデックス選択部２０は、外部コントローラ等から各ＱＰインデックスに対応する基準値を取得して記憶し（ステップＳ１）、前記量子化パラメータ選択部３０は、同様に外部コントローラ等から各ＱＰインデックスに対応する量子化パラメータを取得して記憶する（ステップＳ２）。
【００４７】
次に、画像符号化処理開始時に、前記ブロックカウンタ部５０は、マクロブロック、色成分、及びブロックの各カウント値ｍ、ｃ及びｎをそれぞれ１に初期化する（ステップＳ３）。以降、前記ブロックカウンタ部５０は、周波数変換部１２０より入力される係数データの数をカウントしながら、各カウント値ｍ、ｃ、及びｎを更新する（ステップＳ１３、Ｓ１５、Ｓ１７）。
【００４８】
画像符号化処理開始後、前記周波数変換部１２０は最初のマクロブロックを周波数変換し（ステップＳ４）、前記アダプティブＱＰインデックス選択部２０は、隣接したブロックのＤＣ係数データ及びＬＰ係数データを取得する（ステップＳ５）。これ以降の処理を説明するため、アダプティブＱＰインデックス選択部２０のブロック構成を図３に示す。
【００４９】
前記アダプティブＱＰインデックス選択部２０は、隣接するブロックのＤＣ係数データ及びＬＰ係数データ間の差分を求める差分処理部２１、差分処理した差分データを絶対値化する絶対値算出部２２、絶対値化した差分データの平均を求める平均値算出部２３、ＱＰインデックス毎の基準値を記憶しておく基準値記憶部２４、及び算出した差分平均値と基準値を比較してＱＰインデックスを選定する基準値比較部２５から構成されている。
【００５０】
本実施形態における差分平均値算出の具体例を図７に示す。１６×１６画素からなるマクロブロックを１６個のブロック（１つのブロックは４×４画素）に分割し、各ブロックの左上の画素をＤＣ（ＤＣ係数データ）又はＬＰ（ＬＰ係数データ）とし、それ以外の画素をＨＰ（ＨＰ係数データ）としている。マクロブロックの上側のブロックのＤＣ／ＬＰ係数を左から順にＤＣ，ＬＰ１，ＬＰ２，ＬＰ３とし、マクロブロックの左側のブロックのＤＣ／ＬＰ係数を上から順にＤＣ，ＬＰ４，ＬＰ５，ＬＰ６としたとき、隣接するブロックのそれぞれの差分結果をａ＝ＤＣ−ＬＰ１，ｂ＝ＬＰ１−ＬＰ２，ｃ＝ＬＰ２−ＬＰ３，ｄ＝ＤＣ−ＬＰ４，ｅ＝ＬＰ４−ＬＰ５，ｆ＝ＬＰ５−ＬＰ６とし、差分結果ａ，ｂ，ｃ，ｄ，ｅ，ｆのそれぞれについて絶対値をとり、平均した（｜ａ｜＋｜ｂ｜＋｜ｃ｜＋｜ｄ｜＋｜ｅ｜＋｜ｆ｜）／６を差分平均値とするものである。
【００５１】
自然画の画像の一部を周波数変換して得られた係数データの具体的数値について、差分平均値を求めた一例を図８〜図１０に示す。図８は周波数変換して得られた係数データの具体的数値である。ＤＣは−６０，ＬＰ１〜ＬＰ６はそれぞれ、２６２，−１１６，４５，−９３５，−４４，２２３である。このとき、図９において、該係数データの差分値ＤＣ−ＬＰ１，ＬＰ１−ＬＰ２，ＬＰ２−ＬＰ３，ＤＣ−ＬＰ４，ＬＰ４−ＬＰ５，ＬＰ５−ＬＰ６を求めると、それぞれ、−３２２，３７８，−１６１，８７５，−８９１，−２６７となる。図１０において、この差分値の絶対値を取ると、それぞれ、３２２，３７８，１６１，８７５，８９１，２６７となり、これらの平均値（差分平均値）を求めると４８２となる。このような手順で差分平均値を算出する。そして、この差分平均値を後述する基準値比較に用いる。
【００５２】
前記アダプティブＱＰインデックス選択部２０の処理について説明する。前記差分処理部２１は、周波数変換部１２０より入力された隣接ブロックのＤＣ係数データ及びＬＰ係数データについての差分を求め、差分データを前記絶対値算出部２２に入力する（ステップＳ６）。
【００５３】
前記絶対値算出部２２は、前記差分処理部２１により減算処理された差分データを絶対値化し、差分絶対値データを前記平均値算出部２３に入力する（ステップＳ７）。
【００５４】
前記平均値算出部２３は、前記絶対値算出部２２により絶対値化された差分絶対値データの平均値である差分平均値を算出し、その差分平均値データを前記基準値比較部２５に入力する（ステップＳ８）。
【００５５】
前記基準値比較部２５は、前記平均値算出部２３により平均された差分平均値データを、前記基準値記憶部２４に予め保持されたＱＰインデックスの小さい方から順に、該ＱＰインデックスに対応する基準値と大小比較して、最初にその基準値よりも小さいと判断した基準値に対応するＱＰインデックスを選定する（ステップＳ９）。なお、基準値は、ＱＰインデックスの値の小さい方から順に、小さい基準値を割り当てるものとする。
【００５６】
図４に前記基準値比較部２５のブロック構成を示す。前記基準値比較部２５は、基準値Ｔ０〜Ｔ１４と差分平均値Ｐを比較して比較結果Ｃ０〜Ｃ１４を出力する比較器２６ａ〜２６ｏ、及び優先度をつけて該比較結果からＱＰインデックスの値をエンコードするプライオリティエンコーダ２７から構成される。
【００５７】
比較器２６ａ〜２６ｏは、それぞれ、前記基準値記憶部２４より入力された基準値Ｔ０〜Ｔ１４と前記平均値算出部２３により平均された差分平均値Ｐの大小を比較する。すなわち、比較器２６ａは差分平均値Ｐと基準値Ｔ０を比較し、差分平均値Ｐの方が小さければ１を、そうでなければ０を比較結果Ｃ０として出力する。
【００５８】
前記比較器２６ｂは差分平均値Ｐと基準値Ｔ１を前記比較器２６ａと同様の要領で比較し、比較結果Ｃ１を出力する。同様に、比較器２６ｃ〜２６ｏまで、それぞれ差分平均値Ｐと基準値Ｔ２〜Ｔ１４を比較し、比較結果Ｃ２〜Ｃ１４を出力する。なお、基準値Ｔ０〜Ｔ１４は、基準値Ｔ０を最小値として添え字の番号が昇順のものの順に、値が大きくなるように設定されているものとする。
【００５９】
基準値Ｔ０〜Ｔ１４が上記の設定となっている場合、例えば、差分平均値Ｐが基準値Ｔ１以上で基準値Ｔ２未満であれば、基準値Ｔ０及びＴ１は差分平均値Ｐよりも小さく、基準値Ｔ２〜Ｔ１４は差分平均値Ｐ以上（小さくない）という関係になるので、比較結果Ｃ０及びＣ１は０、比較結果Ｃ２〜Ｃ１４までは１ということになる。このように、比較結果Ｃ０〜Ｃ１４は、差分平均値Ｐがある基準値よりも小さくなるところを境に、境となる比較結果をＣｎとして、比較結果Ｃ０〜Ｃｎ−１までは０、比較結果Ｃｎ〜Ｃ１４までは１という値をとる。また、差分平均値Ｐが基準値Ｔ０よりも小さいとき、比較結果Ｃ０〜Ｃ１４は全て１となり、差分平均値Ｐが基準値Ｔ１４以上のとき、比較結果Ｃ０〜Ｃ１４は全て０となる。
【００６０】
図５に前記プライオリティエンコーダ２７の機能を示した真理値表を示す。左側の比較結果Ｃ０〜Ｃ１４までが入力であり、右側のＱＰインデックスｉが出力となっている。なお、真理値表中の入力のｘは任意（０でも１でもどちらでもよい）であることを示している。
【００６１】
同図５の真理値表の上から順に、まず、Ｃ０が１になったとき、ＱＰインデックスｉは０となり、次にＣ０が０でＣ１が１となったとき、ＱＰインデックスｉは１となり、そして、Ｃ０及びＣ１が０でＣ２が１となったとき、ＱＰインデックスｉは２となる。同様に、Ｃ０〜Ｃｎ−１が０でＣｎが１となったとき、それに対応するエンコード結果として、ＱＰインデックスｉはｎの値（ｎは１〜１４の整数）を出力する。また、最下部のＣ０〜Ｃ１４が全て０の場合は、ＱＰインデックス値は１５を出力する。これにより、最初に差分平均値Ｐが基準値よりも小さくなった場合に相当するＱＰインデックスｉを適応的に選定することができる。
【００６２】
前記量子化パラメータ選択部３０は、前記ブロックカウンタ部５０でカウントする色成分のカウントｃの値が変わる毎に、前記アダプティブＱＰインデックス選択部２０で選定したＱＰインデックスｉに応じた色成分毎に異なる量子化パラメータＱ（ｉ）を選択する（ステップＳ１０）。
【００６３】
前記量子化演算部４０は、前記量子化パラメータ選択部３０により選択された量子化パラメータＱ（ｉ）を用いて、周波数変換部１２０より入力される係数データをブロック毎に量子化する（ステップＳ１１）。
【００６４】
上記の量子化の処理を具体的に説明するため、図１０で自然画の画像の一部より得られた係数データから算出した差分平均値である４８２に対応するＱＰインデックスと量子化パラメータを具体的に選択する実施例を示す。図１１及び図１２は、具体的な基準値とそれに対応するＱＰインデックス、及び各ＱＰインデックスに対応するＬＰ係数、ＨＰ係数毎の量子化パラメータを示している。本実施例では基準値を３０〜４０００、量子化パラメータを２５〜９０の範囲で指定しているが、指定の範囲はこれに限られるものではなく、画像特性や画像圧縮の条件等により随時変更することができる。また、本例は各ブロックにおける係数データの差分値（差分平均値）が大きい程、即ち、基準が大きい側に小さい量子化パラメータを指定して、画像の微細な成分を残すよう、画質優先の量子化パラメータの指定としているが、量子化パラメータの指定は、これに限られない。
【００６５】
前記算出した差分平均値である４８２を同図１１及び図１２に適用すると、差分平均値４８２を基準値の小さい方から比較していき、最初にその差分平均値より小さくなる基準値を求めると５００となり、従って、対応するＱＰインデックスは基準値５００におけるＱＰインデックス８となる。ＱＰインデックス８に対しては量子化パラメータとして、ＬＰ係数及びＨＰ係数について８０の値が選択されることになる。
【００６６】
このようにして、隣接ブロックにおける係数データ（本例では、ＤＣ係数及びＬＰ係数）の差分平均値より、適応的にＱＰインデックスを選定し、それに対応する量子化パラメータを選択し、処理している画像領域であるマクロブロック毎に選択した量子化パラメータを用いて、係数データを量子化していく。
【００６７】
１つのブロックの量子化処理が終了する毎に、前記ブロックカウンタ部５０は、処理したブロックが最終ブロックかどうか確認し、最終ブロックでなければ、ブロックカウンタ値を更新（ｎ＝ｎ＋１）し（ステップＳ１３）、最終ブロックであれば（ステップＳ１２）、最終色成分であるかどうかを確認する（ステップＳ１４）。
【００６８】
前記ブロックカウンタ部５０は、色成分のカウンタ値を確認し、最終色成分でなければ、ブロックカウンタ値を初期化（ｎ＝１）するとともに、色成分カウンタ値を更新（ｃ＝ｃ＋１）し（ステップＳ１５）、最終色成分であれば（ステップＳ１４）、最終マクロブロックであるかどうかを確認する（ステップＳ１６）。
【００６９】
前記ブロックカウンタ部５０は、マクロブロックのカウンタ値を確認し、最終マクロブロックでなければ、ブロックカウンタ値及び色成分カウンタ値を初期化（ｎ＝１，ｃ＝１）するとともに、マクロブロックカウンタ値を更新（ｍ＝ｍ＋１）し（ステップＳ１７）、最終マクロブロックであれば（ステップＳ１６）、１画像分の量子化処理を終了する。なお、前述のように、最終のマクロブロックであるか否かは、マクロブロックのカウンタ値ｍが、（水平方向の画像サイズ／１６）×（垂直方向の画像サイズ／１６）に一致するか否かで判断する。
【００７０】
以上の構成を備えた本例の画像符号化装置１によれば、まず、色空間変換部１１０に、１画像分の画像データが入力され、画像データのピクセルフォーマットに従い、色空間変換され、又は色空間変換されず、前記色空間変換部１１０での処理を経由した画像データが周波数変換部１２０へ入力される。
【００７１】
周波数変換部１２０は、マクロブロック単位（１６×１６画素）でラスター方向に順次、各画素のデータを周波数帯域毎の係数に変換する処理を行い、処理後の第１階層データ（ＨＰ係数）、第２階層データ（ＬＰ係数）、及び第３階層データ（ＤＣ係数）をブロック単位（４×４画素）で量子化部１０に入力する。
【００７２】
量子化部１０は、周波数変換部１２０により係数化された第１階層データ、第２階層データ、及び第３階層データを、隣接するブロックにおける係数データを基に選定されたＱＰインデックスに対応する量子化パラメータで除算して量子化する処理を行い、処理後の第１階層データ、第２階層データ、及び第３階層データを係数予測部１４０に入力する。
【００７３】
係数予測部１４０は、同じく、ブロック毎の第１階層データ、第２階層データ、及び第３階層データについて、予測モードを導出するとともに、相関の高いブロック間で減算する処理を行い、処理後の第１階層データ、第２階層データ、及び第３階層データをブロック毎に適応型スキャン部１５０に入力する。
【００７４】
適応型スキャン部１５０は、第１階層データ及び第２階層データについて、ブロック毎にその係数データを入れ替える処理を行う。この入替処理は、周波数変換後、ブロック内の画素位置が小さい側（低周波数側）に非ゼロの係数を集め、ブロック内の画素位置が大きい側（高周波数側）にゼロ値が連続する係数データを集めることで、符号化の圧縮率を高めるためのものである。係数データが入れ替えられた第１階層データ、第２階層データ、及び入替処理が実施されない第３階層データは、ＶＬＣ符号化部１６０に入力される。
【００７５】
ＶＬＣ符号化部１６０は、適応型スキャン部１５０で処理された第１階層データ、第２階層データ、及び第３階層データに対して、エントロピー符号化処理を施し、コードストリームを生成して、そのコードストリームをビットストリーム出力部１７０に入力する。
【００７６】
ビットストリーム出力部１７０は、ヘッダ情報としての画像設定データに、ＶＬＣ符号化部１６０で符号化されたコードストリームを順次連接し、１画像データ分のビットストリームとして１纏めにして１つのファイルを形成し、形成したファイルを外部に出力する。
【００７７】
以上詳述したように、本実施形態の画像符号化装置１によれば、その量子化部１０において、処理している画像領域内の隣接するブロックにおけるＤＣ係数並びにＬＰ係数の差分平均値を求め、その差分平均値を予め設定した基準と比較することで、ＱＰインデックスを選定し、選定したＱＰインデックスに対応する量子化パラメータで、係数データを除算して量子化するので、従来の量子化部１３０に比べ、各画像領域に対応するＱＰインデックスを画像サイズに比例して増大する大容量の記憶領域に蓄える必要がなく、処理している画像領域の画像特性に応じた量子化ができ、画像符号化処理の最適化が実現できる。また、差分平均値と比較する基準を外部から設定できるようにしているので、画像データの特性が変わっても基準を変えることで、柔軟な対応ができる。
【００７８】
以上、本発明の一実施形態について説明したが、本発明が採り得る具体的な態様は、何らこれに限定されるものではない。例えば、上例では、量子化部１０における差分平均値を求める隣接するブロックの係数データとして、ＤＣ係数データとＬＰ係数データを用いたが、これに限られるものではなく、ＨＰ係数データを用いてもよい。また、前記係数データとして、マクロブロック内の上側と左側のブロックのＤＣ係数データとＬＰ係数データを用いたが、マクロブロック内のそれ以外のブロックのＬＰ係数データを用いてもよく、マクロブロック内のＤＣ係数データと全てのＬＰ係数データを用いてもよい。
【００７９】
本実施形態では、処理している領域に対応するＱＰインデックスとして、ＬＰ係数データ及びＨＰ係数データに共通した１つのＱＰインデックスを選定するようにしているが、これに限られるものではなく、ＬＰ係数データ及びＨＰ係数データ毎にそれぞれ別のＱＰインデックスを選定するようにしてもよい。
【００８０】
また、本実施形態では、係数の変化が大きい程、即ち、基準値が大きくなる程（ＱＰインデックスが大きくなる程）、小さい量子化パレメータを指定して、画質を優先する実施例を挙げたが、本発明はこれに限られず、逆に、係数の変化が大きい程、即ち、基準値が大きくなる程、大きい量子化パラメータを指定して、圧縮率を高めるように各ＱＰインデックスに対応する量子化パラメータの指定をしてもよい。
【符号の説明】
【００８１】
１      画像符号化装置
１０    量子化部
２０    アダプティブＱＰインデックス選択部
２１    差分処理部
２２    絶対値算出部
２３    平均値算出部
２４    基準値記憶部
２５    基準値比較部
２６ａ〜２６ｏ  比較器
２７    プライオリティエンコーダ
３０    量子化パラメータ選択部
４０    量子化演算部
５０    ブロックカウンタ部
１００  画像符号化装置
１１０  色空間変換部
１１１  ＱＰインデックス取得・記憶部
１１２  量子化パラメータ選択部
１１３  量子化演算部
１１４  ブロックカウンタ部
１２０  周波数変換部
１３０  量子化部
１４０  係数予測部
１５０  適応型スキャン部
１６０  ＶＬＣ符号化部
１７０  ビットストリーム出力部
【図１】
2015103982.tif 000003
【図２】
2015103982.tif 000004
【図３】
2015103982.tif 000005
【図４】
2015103982.tif 000006
【図５】
2015103982.tif 000007
【図６】
2015103982.tif 000008
【図７】
2015103982.tif 000009
【図８】
2015103982.tif 000010
【図９】
2015103982.tif 000011
【図１０】
2015103982.tif 000012
【図１１】
2015103982.tif 000013
【図１２】
2015103982.tif 000014
【図１３】
2015103982.tif 000015
【図１４】
2015103982.tif 000016
【図１５】
2015103982.tif 000017
【図１６】
2015103982.tif 000018
【図１７】
2015103982.tif 000019
【図１８】
2015103982.tif 000020
【図１９】
2015103982.tif 000021