(57)【特許請求の範囲】
【請求項１】
画像に含まれるブロックを符号化する画像符号化装置であって、
前記画像の符号化モード、前記ブロックの符号化モード、及び前記ブロックに含まれる処理対象のサブブロックの符号化モードのうち、少なくともいずれか１つを取得する取得手段と、
前記取得手段によって取得された符号化モードがイントラ予測モードである場合に、前記処理対象のサブブロックの量子化パラメータと、当該処理対象のサブブロックとの位置関係に基づく第１のサブブロックの量子化パラメータとの差分値を符号化し、前記取得手段によって取得された符号化モードがインター予測モードである場合に、前記処理対象のサブブロックの量子化パラメータと、前記処理対象のサブブロックとの符号化順序関係に基づく第２のサブブロックの量子化パラメータとの差分値を符号化する符号化手段と、
を有することを特徴とする画像符号化装置。
【請求項２】
前記第１のサブブロックは、前記処理対象のサブブロックに隣接する位置のサブブロックであることを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記第２のサブブロックは、前記処理対象のサブブロックの直前に符号化されたサブブロックであることを特徴とする請求項１又は請求項２に記載の画像符号化装置。
【請求項４】
前記符号化手段は、前記処理対象のサブブロックが前記ブロックの左端に位置する場合に、前記処理対象のサブブロックの量子化パラメータと、前記処理対象のサブブロックとの位置関係に基づく前記第１のサブブロックの量子化パラメータとの差分値を符号化することを特徴とする請求項１乃至請求項３のいずれか一項に記載の画像符号化装置。
【請求項５】
前記符号化手段は、前記処理対象のサブブロックが前記ブロックの左端に位置する場合に、前記処理対象のサブブロックの量子化パラメータと、前記処理対象のサブブロックの上に位置する前記第１のサブブロックの量子化パラメータとの差分値を符号化することを特徴とする請求項１乃至請求項４のいずれか一項に記載の画像符号化装置。
【請求項６】
前記符号化手段は、前記取得手段によって取得された符号化モードがイントラ予測モードである場合に、前記ブロックに含まれるサブブロックであって前記処理対象のサブブロックと隣接する位置のサブブロックのうち、前記画像のイントラ予測の方向に基づくサブブロックである前記第１のサブブロックと、前記処理対象のサブブロックとの差分値を符号化することを特徴とする請求項１乃至請求項５のいずれか一項に記載の画像符号化装置。
【請求項７】
画像に含まれるブロックを符号化したデータを復号する画像復号装置であって、前記ブロックに含まれる処理対象のサブブロックの量子化パラメータと所定のパラメータとの差分値に関する符号データを復号する復号手段と、
前記画像の符号化モード、前記ブロックの符号化モード、及び前記処理対象のサブブロックの符号化モードのうち、少なくともいずれか１つを取得する第１の取得手段と、前記第１の取得手段によって取得された符号化モードがイントラ予測モードである場合に、前記処理対象のサブブロックとの位置関係に基づく第１のサブブロックの量子化パラメータと、前記復号手段によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得し、
前記第１の取得手段によって取得された符号化モードがインター予測モードである場合に、前記処理対象のサブブロックとの符号化順序関係に基づく第２のサブブロックの量子化パラメータと、前記復号手段によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得する第２の取得手段と、
を有することを特徴とする画像復号装置。
【請求項８】
前記第１のサブブロックは、前記処理対象のサブブロックに隣接する位置のサブブロックであることを特徴とする請求項７に記載の画像復号装置。
【請求項９】
前記第２のサブブロックは、前記処理対象のサブブロックの直前に符号化されたサブブロックであることを特徴とする請求項７又は請求項８に記載の画像復号装置。
【請求項１０】
前記第２の取得手段は、前記処理対象のサブブロックが前記ブロックの左端に位置する場合に、前記処理対象のサブブロックとの位置関係に基づく前記第１のサブブロックの量子化パラメータと、前記復号手段によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得することを特徴とする請求項７乃至請求項９のいずれか一項に記載の画像復号装置。
【請求項１１】
前記第２の取得手段は、前記処理対象のサブブロックが前記ブロックの左端に位置する場合に、前記処理対象のサブブロックの上に位置する前記第１のサブブロックの量子化パラメータと、前記復号手段によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得することを特徴とする請求項７乃至請求項１０のいずれか一項に記載の画像復号装置。
【請求項１２】
前記第２の取得手段は、前記第１の取得手段によって取得された符号化モードがイントラ予測モードである場合に、前記ブロックに含まれるサブブロックであって前記処理対象のサブブロックと隣接する位置のサブブロックのうち、前記画像のイントラ予測の方向に基づくサブブロックである前記第１のサブブロックと、前記復号手段によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得することを特徴とする請求項７乃至請求項１１のいずれか一項に記載の画像復号装置。
【請求項１３】
画像に含まれるブロックを符号化する画像符号化方法であって、
前記画像の符号化モード、前記ブロックの符号化モード、及び前記ブロックに含まれる処理対象のサブブロックの符号化モードのうち、少なくともいずれか１つを取得する取得工程と、
前記取得工程によって取得された符号化モードがイントラ予測モードである場合に、前記処理対象のサブブロックの量子化パラメータと、当該処理対象のサブブロックとの位置関係に基づく第１のサブブロックの量子化パラメータとの差分値を符号化し、前記取得工程によって取得された符号化モードがインター予測モードである場合に、前記処理対象のサブブロックの量子化パラメータと、前記処理対象のサブブロックとの符号化順序関係に基づく第２のサブブロックの量子化パラメータとの差分値を符号化する符号化工程と、
を有することを特徴とする画像符号化方法。
【請求項１４】
画像に含まれるブロックを符号化したデータを復号する画像復号方法であって、前記ブロックに含まれる処理対象のサブブロックの量子化パラメータと所定のパラメータとの差分値に関する符号データを復号する復号工程と、
前記画像の符号化モード、前記ブロックの符号化モード、及び前記処理対象のサブブロックの符号化モードのうち、少なくともいずれか１つを取得する第１の取得工程と、前記第１の取得工程によって取得された符号化モードがイントラ予測モードである場合に、前記処理対象のサブブロックとの位置関係に基づく第１のサブブロックの量子化パラメータと、前記復号工程によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得し、
前記第１の取得工程によって取得された符号化モードがインター予測モードである場合に、前記処理対象のサブブロックとの符号化順序関係に基づく第２のサブブロックの量子化パラメータと、前記復号工程によって復号された差分値とを用いて、前記処理対象のサブブロックの量子化パラメータを取得する第２の取得工程と、
を有することを特徴とする画像復号装置。
【請求項１５】
コンピュータが読み出して実行することにより、前記コンピュータを、請求項１乃至請求項６のいずれか一項に記載の画像符号化装置として機能させることを特徴とするプログラム。
【請求項１６】
コンピュータが読み出して実行することにより、前記コンピュータを、請求項７乃至請求項１２のいずれか一項に記載の画像復号装置として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像符号化方法・復号方法に関し、特に画像中の量子化パラメータの予測符号化方法・復号方法に関する。
【背景技術】
【０００２】
動画像の圧縮記録方法として、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ（以下Ｈ．２６４）が知られている。（非特許文献１）
Ｈ．２６４においてはｍｂ＿ｑｐ＿ｄｅｌｔａ符号を用いて、マクロブロック（１６画素×１６画素）単位に量子化パラメータを変更することできる。非特許文献１に記載されている７−２３式によれば、ブロックの符号化の順に復号されたマクロブロックの量子化パラメータＱＰＹＰＲＥＶに差分値であるｍｂ＿ｑｐ＿ｄｅｌｔａを加算することで量子化パラメータを変更している。
近年、Ｈ．２６４の後継としてさらに高効率な符号化方式の国際標準化を行う活動が開始された。ＪＣＴ−ＶＣ（Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）がＩＳＯ／ＩＥＣとＩＴＵ−Ｔの間で設立され、ＨＥＶＣ（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）符号化方式（以下、ＨＥＶＣ）として標準化が進められている。対象となる画面サイズの増大に伴い、従来のマクロブロック（１６画素×１６画素）より大きなブロックサイズでの分割が検討されている。この大きなサイズの基本ブロックはＬＣＵ（Ｌａｒｇｅｓｔ  Ｃｏｄｉｎｇ  Ｕｎｉｔ）と呼ばれ、そのサイズは最大６４画素×６４画素として検討が進められている。（非特許文献２）ＬＣＵはさらに分割されて、細かなサブブロックを形成し、変換や量子化等を行うサブブロックとしてＣＵ（Ｃｏｎｄｉｎｇ  Ｕｎｉｔ）に分割される。分割の方法としてはブロック内を縦横２分割していく領域四分木構造となっている。
図２（ａ）に領域四分木構造の様子を表す。太枠の１０００は基本ブロックを表し、説明を簡易にするため、６４画素×６４画素の構成とする。１００１と１０１０はサブブロックであり、３２画素×３２画素のサブブロックとする。１００２〜１００９もサブブロックであり、１６画素×１６画素のサブブロックとする。このように細かく分割して、変換等の符号化処理を行う。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ＩＳＯ／ＩＥＣ１４４９６−１０：２００４Ｉｎｆｏｒｍａｔｉｏｎ  ｔｅｃｈｎｏｌｏｇｙ−−Ｃｏｄｉｎｇ  ｏｆ  ａｕｄｉｏ−ｖｉｓｕａｌ  ｏｂｊｅｃｔｓ−−Ｐａｒｔ１０：Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ
【非特許文献２】ＪＣＴ−ＶＣ  寄書  ＪＣＴＶＣ−Ａ２０５．ｄｏｃ    インターネット＜  ｈｔｔｐ：／／ｗｆｔｐ３．ｉｔｕ．ｉｎｔ／ａｖ−ａｒｃｈ／ｊｃｔｖｃ−ｓｉｔｅ／２０１０＿０４＿Ａ＿Ｄｒｅｓｄｅｎ／＞
【非特許文献３】ＪＣＴ−ＶＣ  寄書  ＪＣＴＶＣ−Ｅ３９１．ｄｏｃ    インターネット＜  ｈｔｔｐ：／／ｐｈｅｎｉｘ．ｉｎｔ−ｅｖｒｙ．ｆｒ／ｊｃｔ／ｄｏｃ＿ｅｎｄ＿ＵＳＥＲ／ｄｏｃｕｍｅｎｔｓ／５＿Ｇｅｎｅｖａ／ｗｇ１１／ＪＣＴＶＣ−Ｅ３９２−ｖ３．ｚｉｐ＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＨＥＶＣにおいて、量子化パラメータの制御をＨ．２６４のマクロブロックと同様に基本ブロック単位で行うことが考えられている。しかしながら、実際にはサブブロック単位で量子化パラメータ制御を行うことが画質の観点から望ましい。
サブブロック単位で量子化パラメータ制御を行う場合、基本ブロックは領域四分木構造に従って処理される。すなわち、図２（ａ）において、３２画素×３２画素のサブブロック１００１につづき、１６画素×１６画素のサブブロック１００２から１００９が番号の順に処理され、最後に３２画素×３２画素のサブブロック１０１０が処理される。前のサブブロックの量子化パラメータを予測値として差分が算出され、それぞれのサブブロックの量子化パラメータが符号化される。図２（ｄ）にその様子を示す。矢印は量子化パラメータの予測の方向を表している。これは符号化と同じ順番であるため、符号量制御を行いながら処理を行うことができる。このため、処理時間の遅延が少なく、リアルタイムでの符号化が必要なアプリケーションには非常に有効である。
しかしながら、各サブブロックで量子化パラメータの最適化を図った場合、量子化パラメータの差分値の取得は領域四分木構造に従って処理が行われるため、差分値にばらつきがみられる。例えば、図２（ｂ）に各サブブロックの量子化パラメータ値を示す。本図では左上から右下に量子化パラメータの値がなだらかに変化した場合を想定している。サブブロック１００１の量子化パラメータは１２であり、サブブロック１００２ではその差分が＋２となる。順に、＋４、−６、＋６、−６、±０、＋２、＋４、＋２となっている。よって、このように領域四分木構造に従った場合、値が乱高下するため、発生する符号が大きくなるといった問題が生じる。
画像では隣接するサブブロック間では量子化パラメータは似た値になることが知られている。これを利用して、上述した問題を解決するために、図２（ｅ）のように、処理対象のサブブロックの左に隣接するサブブロックがある場合、その量子化パラメータを予測値とする方法が考えられる。また、ＪＣＴ−ＶＣに「ＣＵ−Ｌｅｖｅｌ  ＱＰ  Ｐｒｅｄｉｃｔｉｏｎ」（非特許文献３）では、図２（ｆ）、（ｇ）のように、サブブロック単位で横方向のサブブロックの量子化パラメータを予測値とする方法も提案されている。図２（ｆ）は左側にサブブロックが存在する場合を表す。この場合、左側のサブブロックの量子化パラメータから予測を行うことができる。一方、図２（ｇ）は画像の左端のようなサブブロックであり、左側にサブブロックが存在しない場合の量子化パラメータの予測を表している。
しかしながら、これらの方法では例えば急激に量子化パラメータを変更せざるを得ない場合に対応できない。すなわち、図２（ｃ）はサブブロック１００１まで符号化したところで符号量が増大し符号量を減少させるために、サブブロック１００２から急激に量子化パラメータの値を大きくした例を示している。この場合、例えば図２（ｅ）の予測値の参照順ではサブブロック１００２及びサブブロック１００４に対して２２と２０のような大きな差分値が発生してしまう。この点、図２（ｄ）の参照順ではサブブロック１００２に対してのみ大きな差分値２２が発生するものの、サブブロック１００４に対しては−６という比較的小さな差分値になる。
したがって、本発明は上述した課題を解決するためになされたものであり、その用途に応じて、処理時間の遅延が少ない符号化と高効率な符号化を適応的に使用することを目的としている。また、符号化モードを用いて、軽微な変更で更に符号化効率の向上を実現することを目的としている。
【課題を解決するための手段】
【０００５】
上述課題を解決するため、本発明の画像符号化装置は以下の構成を備える。即ち、画像に含まれるブロックを符号化する画像符号化装置であって、前記画像の符号化モード、前記ブロックの符号化モード、及び前記ブロックに含まれる処理対象のサブブロックの符号化モードのうち、少なくともいずれか１つを取得する取得手段と、前記取得手段によって取得された符号化モードがイントラ予測モードである場合に、前記処理対象のサブブロックの量子化パラメータと、当該処理対象のサブブロックとの位置関係に基づく第１のサブブロックの量子化パラメータとの差分値を符号化し、前記取得手段によって取得された符号化モードがインター予測モードである場合に、前記処理対象のサブブロックの量子化パラメータと、前記処理対象のサブブロックとの符号化順序関係に基づく第２のサブブロックの量子化パラメータとの差分値を符号化する符号化手段とを有することを特徴とする。
【発明の効果】
【０００６】
本発明により、処理時間の遅延が少ない符号化と高効率な符号化を適応的に使用することが可能になる。また、スライスやピクチャの符号化モードに合わせて量子化パラメータの予測方法を変更することにより、それぞれの符号化モードで最適な量子化パラメータの差分符号化が行えるようになる。
【図面の簡単な説明】
【０００７】
【図１】実施形態１における画像符号化装置の構成を示すブロック図
【図２】（ａ）〜（ｇ）ブロック分割と量子化パラメータの予測の一例を示す図
【図３】実施形態１に係る画像符号化装置における量子化パラメータ符号化部の詳細なブロック図
【図４】実施形態１に係る画像符号化装置における画像符号化処理を示すフローチャート
【図５】実施形態１で生成されるビットストリームの一例を示す図
【図６】実施形態２に係る画像復号装置の構成を示すブロック図
【図７】実施形態２に係る量子化パラメータ復号部の詳細なブロック図
【図８】実施形態２における画像復号装置における画像復号処理を示すフローチャート
【図９】実施形態３に係る画像符号化装置における量子化パラメータ符号化部の詳細なブロック図
【図１０】実施形態３に係る画像符号化装置における画像符号化処理を示すフローチャート
【図１１】実施形態４に係る画像復号装置における量子化パラメータ復号部の詳細なブロック図
【図１２】実施形態４における画像復号装置における画像復号処理を示すフローチャート
【図１３】実施形態５に係る画像符号化装置の構成を示すブロック図
【図１４】実施形態５に係る画像符号化装置における量子化パラメータ符号化部の詳細なブロック図
【図１５】実施形態５に係る画像符号化装置における画像符号化処理を示すフローチャート
【図１６】実施形態６に係る画像復号装置の構成をブロック図
【図１７】実施形態６に係る画像復号装置における量子化パラメータ復号部の詳細なブロック図
【図１８】実施形態６における画像復号装置における画像復号処理を示すフローチャート
【図１９】実施形態７に係る画像復号装置の構成をブロック図
【図２０】実施形態７に係る画像復号装置における量子化パラメータ復号部の詳細なブロック図
【図２１】実施形態７における画像復号装置における画像復号処理を示すフローチャート
【図２２】実施形態７で生成されるビットストリームの一例を示す図
【図２３】実施形態８に係る画像復号装置の構成をブロック図
【図２４】実施形態８に係る画像符号化装置における量子化パラメータ符号化部の詳細なブロック図
【図２５】実施形態８に係る画像符号化装置における画像符号化処理を示すフローチャート
【図２６】本発明の画像符号化装置、復号装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図
【図２７】実施形態１で生成される別なビットストリームの一例を示す図示すブロック図
【発明を実施するための形態】
【０００８】
以下、添付の図面を参照して、本願発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【０００９】
＜実施形態１＞
以下、本発明の実施形態を、図面を用いて説明する。図１は本実施形態の画像符号化装置を示すブロック図である。
【００１０】
図１において、１１０００は画像データを入力する端子である。１１００１は入力画像を複数の基本ブロック単位でブロックを切り出し、必要に応じてサブブロックに分割するブロック分割部である。説明を容易にするために、入力画像は８ビットの画素値を持つこととするが、これに限定されない。また、基本ブロックのサイズを６４画素×６４画素とし、サブブロックの最小サイズを８画素×８画素とする。またブロックの分割に関しては縦横１／２のサイズに４分割する方法を例にとって説明するが、これにブロックの形状、サイズは限定されない。サブブロックの分割に関しては、特に限定されない。例えば全体をサブブロックに分割し、エッジ量などを算出しクラスタリングして分割を行っても構わない。すなわち、エッジが多く集まる部分は細かくサブブロックを設定し、平坦な部分は大きなサブブロックを設定する。サブブロックの分割の状態はサブブロックごとに分割の有無を四分木分割の順番に表したサブブロック分割情報として後段に出力する。
【００１１】
サブブロックの量子化パラメータの差分値を算出するためのサブブロックの量子化パラメータ予測値の算出方法について図２（ｅ）及び（ｆ）を用いて説明する。図２（ｅ）は画像の左端等で基本ブロックの左にサブブロックがない場合を示している。図２（ｆ）は左側に符号化済みの基本ブロックが存在する場合を示している。両者において、各サブブロックは左隣りで当該サブブロックの左上隅の画素が接するサブブロックの量子化パラメータを予測値とする。もし、左側に参照可能なサブブロックがない場合、図２（ｄ）の復号する順と同じように参照を行う。図２（ｅ）に示すように、サブブロック１００６及び１００８において、サブブロックの符号化の順に符号化されたサブブロック１００５及び１００７の量子化パラメータを参照する。
【００１２】
１１００２は処理対象ブロックである各サブブロックの量子化パラメータを決定する量子化パラメータ決定部である。
１１００３はブロック分割部１１００１で分割された各基本ブロックを、サブブロック単位で予測を行い、差分値算出を行い、各サブブロックの予測誤差を算出するブロック予測部である。静止画または動画の場合のイントラフレームではイントラ予測を行い、動画の場合は動き補償予測も行うものとする。
１１００４は各サブブロックの予測誤差に対して直交変換を行い、直交変換係数を算出するブロック変換部である。直交変換に関しては特に限定しないが、離散コサイン変換やアダマール変換等を用いてもよい。１１００５は量子化パラメータ決定部１１００２で決定された量子化パラメータによって前記直交変換係数を量子化するブロック量子化部である。この量子化によって量子化係数を得ることができる。
１１００６はこのようにして得られた量子化係数を符号化して量子化係数符号データを生成するブロック符号化部である。符号化の方法は特に限定しないが、ハフマン符号や算術符号等を用いることができる。１１００７はブロック再生画像生成部である。ブロック量子化部１１００５、ブロック変換部１１００４の逆の動作を行って予測誤差を再生し、ブロック予測部１１００３の結果から基本ブロックの復号画像を生成する。再生された画像データは保持され、ブロック予測部１１００３での予測に用いられる。
１１０１１は操作部であり、ユーザが、処理時間の遅延が少ない符号化か高効率な符号化かを選択する操作部である。処理時間の遅延が少ない符号化を実施する場合は０を、高効率な符号化の場合は１を選択フラグとして出力する。１１００８は量子化パラメータ決定部１１００２で決定した各サブブロックの量子化パラメータを符号化して量子化パラメータ符号データを生成する量子化パラメータ符号化部である。
１１００９は統合符号化部である。ヘッダ情報や予測に関する符号を生成するとともに、量子化パラメータ符号化部１１００８で生成された量子化パラメータ符号データおよびブロック符号化部１１００６で生成された量子化係数符号データを統合する。１１０１０は端子であり、統合符号化部１１００９で統合されて生成されたビットストリームを外部に出力する端子である。
【００１３】
上記画像符号化装置における画像の符号化動作を以下に説明する。本実施形態では動画像データをフレーム単位に入力する構成となっているが、１フレーム分の静止画像データを入力する構成としても構わない。
【００１４】
端子１１０００から入力された１フレーム分の画像データはブロック分割部１１００１に入力され、６４画素×６４画素の基本ブロックに分割される。さらに必要に応じて最小８画素×８画素のサブブロックに分割される。サブブロックの分割に関する情報と分割された画像データは量子化パラメータ決定部１１００２とブロック予測部１１００３に入力される。
【００１５】
ブロック予測部１１００３ではブロック再生画像生成部１１００７に保持されている再生画像を参照して予測を行い、予測誤差を生成してブロック変換部１１００４及びブロック再生画像生成部１１００７に入力する。ブロック変換部１１００４では入力された予測誤差に対して直交変換を行い、直交変換係数を求め、ブロック量子化部１１００５に入力する。
【００１６】
一方、量子化パラメータ決定部１１００２では入力された各サブブロック単位で発生した符号量を鑑みて、サブブロック単位で画質と符号量のバランスから最適な量子化パラメータを決定する。決定された各サブブロックの量子化パラメータはブロック量子化部１１００５、ブロック再生画像生成部１１００７、量子化パラメータ符号化部１１００８に入力される。また、ブロック分割部１１００１から分割情報も同様に入力される。
【００１７】
ブロック量子化部１１００５において、ブロック変換部１１００４から出力された直交変換係数を量子化パラメータ決定部１１００２で決定した量子化パラメータで量子化して量子化係数を生成する。生成された量子化係数はブロック符号化部１１００６とブロック再生画像生成部１１００７に入力される。ブロック再生画像生成部１１００７では入力された量子化係数を量子化パラメータ決定部１１００２で決定した量子化パラメータで直交変換係数を再生する。直交変換係数は逆直交変換されて予測誤差を再生する。再生された予測誤差は予測時に参照した画素値等によって再生画像として生成され、保持される。一方、ブロック符号化部１１００６では量子化係数を符号化し、量子化係数符号データを生成して統合符号化部１１００９に出力する。
【００１８】
量子化パラメータ決定部１１００２で決定された量子化パラメータは量子化パラメータ符号化部１１００８で基本ブロック単位で符号化される。
【００１９】
図３に量子化パラメータ符号化部１１００８の詳細なブロック図を示す。図３において、１は図１の量子化パラメータ決定部１１００２から各サブブロックの量子化パラメータとサブブロック分割情報を入力する端子である。２は入力された各サブブロックの量子化パラメータを一旦格納する量子化パラメータ保持部である。３は符号化の順に符号化されたサブブロックの量子化パラメータを格納する量子化パラメータ保持部である。例えば、直前に符号化されたサブブロックの量子化パラメータを保持する。４は、符号化するサブブロックの周囲に存在する符号化されたサブブロック（本実施形態では左）の量子化パラメータを格納する量子化パラメータ保持部である。４に格納される量子化パラメータはサブブロック分割情報に基づいてリセットが行われる。例えば、図２（ａ）であれば、サブブロック１００２の符号化時にはサブブロック１００１の量子化パラメータが保持されている。また、サブブロック１００５の符号化時にはサブブロック１００１からサブブロック１００４の量子化パラメータが保持されている。サブブロック１００６やサブブロック１００８では横に符号化されたサブブロックがない。この時、量子化パラメータ保持部４はリセットされる。
【００２０】
５は量子化パラメータ保持部４に格納された各サブブロックの量子化パラメータから符号化するサブブロックの量子化パラメータの予測値を決定するサブブロック量子化パラメータ予測値決定部である。
【００２１】
６は図１の操作部１１０１１から選択フラグを受け取る端子である。７は受け取った選択信号を符号化する選択フラグ符号化部である。以後、この符号化結果をｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号と呼称する。８はこのｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を出力する端子である。９はセレクタであり、端子６から入力される選択フラグに基づいて、入力先を選択する。選択フラグが０であれば、量子化パラメータ保持部３からの出力を、１であれば、量子化パラメータ予測値決定部５からの出力を選択して入力する。１０はサブブロック量子化パラメータ差分部である。量子化パラメータ保持部２で保持された量子化パラメータからセレクタ９の出力値を減算し、サブブロック量子化パラメータ差分値を算出する。１１はサブブロック量子化パラメータ差分値を符号化するサブブロック量子化パラメータ符号化部である。生成された符号化データはｃｕ＿ｑｐ＿ｄｅｌｔａ符号として図１の統合符号部１１００９に出力される。
【００２２】
以上の構成において、処理に先駆け、端子６から選択フラグが入力され、セレクタ９と選択フラグ符号化部７に入力される。選択フラグ符号化部７は入力された選択フラグを符号化してｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を端子８から出力する。また、セレクタ９は選択フラグが０であれば、量子化パラメータ保持部３の出力を、そうでなければ、量子化パラメータ予測値決定部５の出力を入力として選択する。
【００２３】
量子化パラメータ保持部２は端子１から入力されるサブブロック量子化パラメータを格納する。これと並行して、量子化パラメータ予測値決定部５は量子化パラメータ保持部３及び４から周囲のサブブロックの量子化パラメータから当該サブブロックの量子化パラメータ予測値を決定する。量子化パラメータ保持部４を参照し、サブブロック分割情報に基づいて、符号化するサブブロックの周囲（本実施形態では左側）に符号化済みのサブブロックがあるか否かを判定する。もし、量子化パラメータ保持部４に当該サブブロックの左上隅の画素が接する位置のサブブロックが符号化済みであれば、そのサブブロックの量子化パラメータを予測値とする。符号化済みでなければ、ブロックの符号化の順に符号化したサブブロックが該当する場合は量子化パラメータ保持部３から量子化パラメータを予測値とする。
【００２４】
セレクタ９は選択フラグが０であれば、復号する順に従って量子化パラメータの予測値を決定するので、量子化パラメータ保持部３の出力をサブブロック量子化パラメータ差分部１０に入力する。選択フラグが１であれば、符号化効率向上のため、符号化するサブブロックの左隣または、ブロックの符号化の順に符号化されたサブブロックの量子化パラメータを予測値とする。このため、サブブロック量子化パラメータ予測値決定部５の出力をサブブロック量子化パラメータ差分部１０に入力する。
【００２５】
サブブロック量子化パラメータ差分部１０は符号化するサブブロックの量子化パラメータを量子化パラメータ保持部２から読み出し、セレクタ９から入力された量子化パラメータ予測値を減算し、差分値をサブブロック量子化パラメータ符号化部１１に入力する。サブブロック量子化パラメータ符号化部１１は入力された量子化パラメータ差分値をゴロム符号化してｃｕ＿ｑｐ＿ｄｅｌｔａ符号を端子１２から出力する。
【００２６】
図１に戻り、統合符号化部１１００９は画像のシーケンス、フレームのヘッダといった符号を生成する。また、シーケンスのヘッダ（Ｈ．２６４ではＳｕｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ（ＳＰＳ））にｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を挿入する。各基本ブロックに関しては、ブロック予測部１１００３から予測のモードといった情報を取得して符号化する。続いて量子化パラメータ符号化部１１００８から基本ブロックの分割状況を表すサブブロック分割情報を入力し、符号化する。符号化の方法は特に限定しないが、非特許分献２に記載の方法を使うことができる。以後、サブブロックごとにｃｕ＿ｑｐ＿ｄｅｌｔａ符号と各量子化係数符号データをビットストリームとして端子１１０１０から出力する。
【００２７】
図４は、実施形態１に係る画像符号化装置における画像符号化処理を示すフローチャートである。まず、ステップＳ００１にて、★ユーザは操作部１１０１１から処理時間の遅延が少ない符号化か高効率な符号化かを選択する。選択された機能に合わせて、選択フラグを生成する。
【００２８】
ステップＳ００２にて、選択フラグを符号化し、ｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を生成する。
ステップＳ００３にて、統合符号化部１１００９はシーケンス、フレームのヘッダといった符号を生成し、ｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を含めて出力する。
ステップＳ００４にて、ブロック分割部１１００１は入力された画像に対して、基本ブロックを画像の左上から順に切り出す。
ステップＳ００５にて、ブロック分割部１１００１はさらに基本ブロックをサブブロックに分割する。
ステップＳ００６にて、量子化パラメータ決定部１１００２は、各サブブロックの量子化パラメータを決定する。
ステップＳ００７にて、量子化パラメータ符号化部１１００８は、ステップＳ００１で決定した選択フラグが復号する順に量子化パラメータの予測を行うモードを示すものか否かを判定する。もし、復号する順に量子化パラメータの予測を行うモード（選択フラグが０）を選択していれば、ステップＳ００８に進み、そうでなければステップＳ００９に進む。
ステップＳ００８にて、量子化パラメータ符号化部１１００８は、ブロックの符号化の順に符号化したサブブロックの量子化パラメータを予測値として決定する。
ステップＳ００９にて、量子化パラメータ符号化部１１００８は、符号化するサブブロックの周囲（本実施形態では左隣）または、ブロックの符号化の順に符号化されたサブブロックの量子化パラメータを予測値として決定する。
ステップＳ０１０にて、量子化パラメータ符号化部１１００８は、符号化するサブブロックの量子化パラメータから予測値を引き、サブブロックの量子化パラメータ差分値を算出する。
ステップＳ０１１にて、量子化パラメータ符号化部１１００８は、サブブロック量子化パラメータ差分値にゴロム符号化を行い、ｃｕ＿ｑｐ＿ｄｅｌｔａ符号を出力する。
ステップＳ０１２にて、サブブロックの画像データに対して、予測を行い、予測誤差に対して、直交変換、量子化を行い、得られた量子化係数を符号化して量子化係数符号データを出力する。
ステップＳ０１３にて、得られた量子化係数を逆量子化、逆変換を行い、予測誤差を算出する。この予測誤差と再生画像から当該サブブロックの再生画像を生成する。
ステップＳ０１４にて、画像符号化装置は、当該基本ブロック内の全てのサブブロックの符号化が終了したか否かの判定を行い、終了していればステップＳ０１５に進み、終了していなければ次のサブブロックを対象としてステップＳ００５に戻る。
ステップＳ０１５にて、画像符号化装置は、全ての基本ブロックの符号化が終了したか否かの判定を行い、終了していれば全ての動作を停止して処理を終了し、そうでなければ次の基本ブロックを対象としてステップＳ００４に戻る。
【００２９】
この結果、図５に示すようなビットストリームを生成することができる。シーケンスヘッダ（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）２０００１にｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５が含まれ、本符号化データの量子化パラメータの差分値を求めるための予測値の算出方法を特定できる。また、基本ブロック（ＬＣＵ）には分割情報を符号化したｓｐｌｉｔ＿ｃｏｄｉｎｇ＿ｆｌａｇ符号２００１０が含まれている。さらに、各サブブロックの符号化データ（ｃｏｒｄｉｎｇ＿ｕｎｉｔ（））には各サブブロックの量子化パラメータ差分値の符号化結果であるｃｕ＿ｑｐ＿ｄｅｌｔａ符号２０００９が含まれている。
【００３０】
以上の構成と動作により、特にステップＳ００５からステップＳ０１１の処理により、用途に適合した各サブブロック量子化パラメータの差分値を符号化ができる。さらに、本実施形態では説明のために基本ブロックを６４画素×６４画素、サブブロックを８画素×８画素までとしたが、これに限定されない。例えば基本ブロックは１２８画素×１２８画素等のブロックサイズへの変更が可能であり、また、基本ブロック、サブブロックの形状も正方形に限定されず、８画素×４画素などの長方形でもよい。
【００３１】
なお、本実施形態で基本ブロック量子化パラメータ、サブブロック量子化パラメータ差分値および量子化係数の符号化にゴロム符号化を用いて説明したが、これに限定されない。例えばハフマン符号化やその他の算術符号化であってももちろん構わないし、値を符号化せずにそのままの値を出力しても構わない。また、選択フラグの符号と動作の組み合わせについても、これに限定されない。
【００３２】
さらに、復号する順ではない場合の量子化パラメータの参照についてもこれに限定されない。さらにはサブブロックの中に複数の直交変換サイズのブロックが存在してももちろん構わない。さらに、本実施形態ではｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５をシーケンスヘッダ（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）２０００１に含む形をとった。しかしこれに限定されずピクチャヘッダ（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）２０００２やスライスヘッダ（Ｓｌｉｃｅ  Ｈｅａｄｅｒ）２０００７など他のヘッダに含む形をとってももちろん構わない。図２７にスライスヘッダ（Ｓｌｉｃｅ  Ｈｅａｄｅｒ）２０００７にｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２００３０を挿入したビットストリームの一例を示す。
【００３３】
なお、本実施形態で復号する順で量子化パラメータを予測する手段と符号化するサブブロックの周囲のサブブロックの量子化パラメータから予測する手段を備えていた。しかしいずれか一方しか存在しない場合には、存在する手段を表すｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号が挿入される。
【００３４】
＜実施形態２＞
図６は、本発明の実施形態２に係る画像復号装置の構成を示すブロック図である。本実施形態では、図５に示す実施形態１で生成された符号化データの復号について説明する。
【００３５】
１１００は符号化されたビットストリームを入力する端子である。１１０１はビットストリームのヘッダ情報の復号、ビットストリームから必要な符号を分離して後段へ出力する復号・分離部である。復号・分離部１１０１は図１の統合符号化部１１００９の逆の動作を行う。１１０９はｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５を復号し、選択フラグを再生する選択フラグ復号部である。１１０２は量子化パラメータの符号化データを復号する量子化パラメータ復号部である。１１０３は各サブブロックの量子化係数符号を復号し、量子化係数を再生するブロック復号部である。１１０４は量子化パラメータ復号部１１０２で再生されたサブブロック量子化パラメータによって量子化係数に逆量子化を行い、直交変換係数を再生するブロック逆量子化部である。１１０５は図１のブロック変換部１１００４の逆直交変換を行い、予測誤差を再生するブロック逆変換部である。１１０６は予測誤差と復号済みの画像データからサブブロックの画像データを再生するブロック再生部である。１１０７は再生されたサブブロックの画像データをそれぞれの位置に配置し、基本ブロックの画像データを再生するブロック合成部である。
【００３６】
上記画像復号装置における画像の復号動作を以下に説明する。本実施形態では実施形態１で生成された動画像ビットストリームをフレーム単位に入力する構成となっているが、１フレーム分の静止画像ビットストリームを入力する構成としても構わない。
【００３７】
図６において、端子１１００から入力された１フレーム分のストリームデータは復号・分離部１１０１に入力され、画像を再生するのに必要なヘッダ情報が復号される。ヘッダに含まれるｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５は選択フラグ復号部１１０９に入力され、量子化パラメータの再生を行う予測の方法を選択するフラグが再生される。選択フラグは量子化パラメータ復号部１１０２に入力される。
【００３８】
また、基本ブロック単位で分割情報（ｓｐｌｉｔ＿ｃｏｄｉｎｇ＿ｆｌａｇ符号２００１０）も復号・分離部１１０１で復号され、量子化パラメータ復号部１１０２に入力される。これに続くサブブロックごとにサブブロックの量子化パラメータ差分値符号（ｃｕ＿ｑｐ＿ｄｅｌｔａ符号）ともに量子化パラメータ復号部１１０２に入力する。
【００３９】
図７は量子化パラメータ復号部１１０２の詳細を表すブロック図である。１００は復号・分離部１１０１から復号するサブブロックを含む基本ブロックのサブブロックの分割情報を入力する端子である。１０１は選択フラグ復号部１１０９から選択フラグを入力する端子である。１０２は図５の復号・分離部１１０１からサブブロック量子化パラメータ差分符号（ｃｕ＿ｑｐ＿ｄｅｌｔａ符号２０００９）を入力する端子である。１０３はサブブロック量子化パラメータ差分符号を入力して復号し、サブブロック量子化パラメータの差分値を再生するサブブロック量子化パラメータ差分値復号部である。１０４は決定されたサブブロック量子化パラメータの予測値とサブブロック量子化パラメータ差分値を加算してサブブロック量子化パラメータを再生するサブブロック量子化パラメータ加算部である。１０５は再生されたサブブロック量子化パラメータを図６のブロック逆量子化部１１０４に出力する端子である。
【００４０】
端子１０１から入力された選択フラグがセレクタ１０９に入力される。セレクタ１０９は、選択フラグが０であれば、量子化パラメータ保持部１０６を入力先とする。選択フラグが１であれば、量子化パラメータ予測値決定部１０８を入力先とする。
【００４１】
端子１０２から入力されたサブブロック量子化パラメータ差分値符号はサブブロック量子化パラメータ差分値復号部１０３に入力され、ゴロム符号の復号により、サブブロック量子化パラメータ差分値を再生し、サブブロック量子化パラメータ加算部１０４に入力する。サブブロック量子化パラメータ加算部１０４はセレクタ１０９を介して入力されるサブブロック量子化パラメータの予測値とサブブロック量子化パラメータ差分値を加算し、サブブロック量子化パラメータを再生する。再生されたサブブロック量子化パラメータは端子１０５から図６のブロック逆量子化部１１０４に出力される。また、再生されたサブブロック量子化パラメータは量子化パラメータ保持部１０６と量子化パラメータ保持部１０７に入力される。量子化パラメータ保持部１０６は常に前に復号されたサブブロックの量子化パラメータを保持している。量子化パラメータ保持部１０７は、実施形態１の図３の量子化パラメータ保持部４と同様に、復号の対象となるサブブロックの左側に存在する量子化パラメータを保持する。
【００４２】
量子化パラメータ予測値決定部１０８は端子１００からサブブロックの分割情報を入力する。また、量子化パラメータ保持部１０６からブロックの符号化の順に復号したサブブロックの量子化パラメータと、量子化パラメータ保持部１０７から周囲の（本実施形態では左）サブブロックの量子化パラメータを入力する。分割情報に従って、当該サブブロックの左上隅の画素が接する位置のサブブロックの量子化パラメータを予測値とする。もし、左側に該当するサブブロックがない場合は、量子化パラメータ保持部１０６のブロックの符号化の順に復号したサブブロックの量子化パラメータを予測値とする。
【００４３】
セレクタ１０９は選択フラグが０の時、すなわち、復号する順にサブブロックの量子化パラメータの予測値を決定する場合は、量子化パラメータ保持部１０６を入力先とする。選択フラグが０の時、すなわち、周囲のサブブロックから量子化パラメータを決定する場合は量子化パラメータ予測値決定部１０８を入力先とする。
【００４４】
図６に戻り、復号・分離部１１０１において分離されたサブブロックの量子化係数符号データはブロック復号部１１０３に入力され、ゴロム符号の復号により各量子化係数が再生される。サブブロックの量子化係数が再生されたら、ブロック逆量子化部１１０４に入力される。ブロック逆量子化部１１０４では、入力されたサブブロックの量子化係数とサブブロック量子化パラメータから逆量子化を行い、直交変換係数を再生する。再生された直交変換係数はブロック逆変換部１１０５にて逆変換を行い、予測誤差を再生する。再生された予測誤差はブロック再生部１１０６に入力され、復号済みの周囲の画素データ、または前のフレームの画素データから予測を行ってサブブロックの画像データを再生する。ブロック合成部１１０７は再生されたサブブロックの画像データをそれぞれの位置に配置し、基本ブロックの画像データを再生する。再生された基本ブロックの画像データは端子１１０８を介して外部に出力される。
【００４５】
図８は、実施形態２に係る画像復号装置における画像復号処理を示すフローチャートである。
【００４６】
まず、ステップＳ１０１にて、復号・分離部１１０１がヘッダ情報を復号する。ステップＳ１０２にて、ｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５を選択フラグ復号部１１０９で復号する。
ステップＳ１０３にて、サブブロック量子化パラメータ復号部１０３はサブブロック量子化パラメータ差分値符号化データを復号し、サブブロック量子化パラメータ差分値を再生する。
ステップＳ１０２で復号して得られた選択フラグが復号する順に量子化パラメータの予測を行うモード（処理時間の遅延が少ない符号化）を選択したか否かを判定する。もし、復号する順に量子化パラメータの予測を行うモード（選択フラグが０）を選択していれば、ステップＳ１０５に進み、そうでなければステップＳ１０６に進む。
ステップＳ１０５にて、ブロックの符号化の順に復号したサブブロックの量子化パラメータを予測値として決定する。
ステップＳ１０６にて、復号するサブブロックの周囲（本実施形態では左隣）または、ブロックの符号化の順に符号化されたサブブロックの量子化パラメータを予測値として決定する。
ステップＳ１０７にて、ステップＳ１０５またはステップＳ１０６にて得られた量子化パラメータの予測値とステップＳ１０３で得られた差分値を加算し、サブブロック量子化パラメータを再生する。
ステップＳ１０８にて、サブブロックの量子化係数符号データを復号し、量子化係数を再生し、逆量子化、逆直交変換を行い、予測誤差を再生する。さらに復号済みの周囲の画素データまたは前のフレームの画素データから予測を行い、サブブロックの復号画像を再生する。
ステップＳ１０９にて、サブブロックの復号画像を基本ブロックの復号画像に配置する。ステップＳ１１０にて、画像復号装置は、当該基本ブロック内の全てのサブブロックの復号が終了したか否かの判定を行い、終了していればステップＳ１１１に進み、終了していなければ次のサブブロックを対象としてステップＳ１０３に戻る。
ステップＳ１１１にて、基本ブロックの復号画像をフレームの復号画像に配置する。ステップＳ１１２にて、画像復号装置は、全ての基本ブロックの復号が終了したか否かの判定を行い、終了していれば全ての動作を停止して処理を終了し、そうでなければ次の基本ブロックを対象としてステップＳ１０３に戻る。
【００４７】
以上の構成と動作により、実施形態１で生成された、用途ごとに異なるビットストリームの復号を行い、再生画像を得ることができる。
【００４８】
また、実施形態１と同様にブロックのサイズ、処理ユニットのサイズ、参照する処理ユニットとその画素の配置、符号についてはこれに限定されない。さらに、復号する順ではない場合の量子化パラメータの参照についてもこれに限定されない。
なお、本実施形態でサブブロック量子化パラメータ、サブブロック量子化パラメータ差分値および量子化係数の復号にゴロム符号化を用いて説明したが、これに限定されない。例えばハフマン符号化やその他の算術符号化であってももちろん構わない。
【００４９】
＜実施形態３＞
本実施形態では符号化装置は実施形態１の図１と同じ構成をとる。ただし、量子化パラメータ符号化部１１００８の構成が異なる。
【００５０】
図９は本実施形態の量子化パラメータ符号化部１１００８の詳細な構成を示すブロック図である。図９において、実施形態１の図１と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００５１】
２００は端子１から入力されるサブブロックの分割情報を入力し、符号化するサブブロックがフレームやスライスの端部か否かを判定する端部判定部である。端部判定部２００は当該サブブロックが端部に位置するのであれば端部判定信号として１をそうでなければ０を出力する。
２０１は量子化パラメータ保持部４に格納された各サブブロックの量子化パラメータから符号化するサブブロックの量子化パラメータの予測値を決定するサブブロック量子化パラメータ予測値決定部である。すなわち、符号化処理を行うサブブロックの周囲（本実施形態では左）のサブブロックの量子化パラメータを参照して予測値を決定する。
２０２は符号化されたサブブロックの量子化パラメータを格納する量子化パラメータ保持部である。量子化パラメータ保持部２０２は量子化パラメータ保持部１０７から順に量子化パラメータを受け取る。これにより、符号化されたサブブロックの量子化パラメータを符号化対象のサブブロックの上のサブブロックまでの量子化パラメータを保持する。
２０３は量子化パラメータ保持部２０２に格納された各サブブロックの量子化パラメータから符号化するサブブロックの量子化パラメータの予測値を決定する端部量子化パラメータ予測値決定部である。すなわち、サブブロックがフレームやスライスの左端にあたる場合、符号化処理を行うサブブロックの上側のサブブロックの量子化パラメータを参照して予測値を決定する。
２０４はセレクタであり、実施形態１の図３のセレクタ９と同様に端子６から入力される選択フラグによって入力先を選択する。選択フラグが０であれば、量子化パラメータ保持部３を入力先に選択する。選択フラグが１であれば、端部量子化パラメータ予測値決定部２０３を入力先に選択する。
２０５もセレクタであり、端部判定部２００からの端部判定信号に基づいて入力先を選択する。端部判定信号が０であれば、セレクタ２０４を、そうでなければ量子化パラメータ予測値決定部２０１を入力先として選択する。
【００５２】
上記構成において、実施形態１と同様に、端子１１０００から画像データが入力され、ブロック分割部１１００１でサブブロックに分割され、量子化パラメータ決定部１１００２で各サブブロックの量子化パラメータが決定される。決定されたサブブロック量子化パラメータは量子化パラメータ符号化部１１００８に入力される。
【００５３】
図９に移り、実施形態１と同様に選択フラグ符号化部７は入力された選択フラグを符号化してｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を端子８から出力する。また、セレクタ２０４は選択フラグが０であれば、量子化パラメータ保持部３の出力を、そうでなければ、端部量子化パラメータ予測値決定部２０３の出力を入力として選択する。量子化パラメータ保持部２は端子１から入力されるサブブロック量子化パラメータを格納する。
【００５４】
これと並行して、量子化パラメータ予測値決定部２０１は量子化パラメータ保持部４から周囲（本実施形態では左）のサブブロックの量子化パラメータから当該サブブロックの量子化パラメータ予測値を決定する。量子化パラメータ保持部４を参照し、当該サブブロックの左上隅の画素が接する位置のサブブロックの量子化パラメータを予測値と決定する。
また、端部量子化パラメータ予測値決定部２０２は量子化パラメータ保持部２０２から周囲（本実施形態では上）のサブブロックの量子化パラメータから当該サブブロックの量子化パラメータ予測値を決定する。量子化パラメータ保持部２０２を参照し、当該サブブロックの左上隅の画素が接する位置のサブブロックの量子化パラメータを予測値と決定する。
量子化パラメータ保持部３はブロックの符号化の順に符号化した（例えば、直前に符号化された）サブブロックの量子化パラメータを予測値とする。
【００５５】
セレクタ２０４は選択フラグが０であれば、復号する順に従って量子化パラメータの予測値を決定するので、量子化パラメータ保持部３の出力をセレクタ２０５に入力する。選択フラグが１であれば、符号化効率向上のため、符号化するサブブロックの左隣のサブブロックの量子化パラメータを予測値とする。このため、端部量子化パラメータ予測値決定部２０２の出力をセレクタ２０５に入力する。
【００５６】
一方、端部判定部２００は入力された分割情報と処理の進捗から符号化するサブブロックがフレームまたはスライスの端部に位置するかどうかを判定して端部判定信号を生成する。
【００５７】
セレクタ２０５は端部判定信号が０であれば、処理するサブブロックは端部ではないと判定し、量子化パラメータ予測値決定部２０１を入力先に選択する。この時、符号化するサブブロックの左隣の量子化パラメータが予測値となり、サブブロック量子化パラメータ差分部１０に入力される。また、端部判定信号が１であれば、処理するサブブロックは端部であると判定し、セレクタ２０４を入力先に選択する。この時、選択フラグが０であれば、復号する順に選択された量子化パラメータが、１であれば、符号化するサブブロックの直上の量子化パラメータが予測値となり、サブブロック量子化パラメータ差分部１０に入力される。以下、実施形態１と同様に差分値を求め、符号化されて、サブブロック量子化パラメータ差分符号であるｃｕ＿ｑｐ＿ｄｅｌｔａ符号を端子１２から出力する。
【００５８】
図１０は、実施形態３に係る画像符号化装置における画像符号化処理を示すフローチャートである。図１０において、実施形態１の図４と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００５９】
ステップＳ００１からステップＳ００６にて、実施形態１と同様に量子化パラメータの予測方法を選択し、選択モードを決定して、ヘッダ情報とともに符号化する。フレームを基本ブロックに分割し、さらにサブブロックに分割する。さらにそれぞれのサブブロックの量子化パラメータを決定する。
【００６０】
ステップＳ２００にて、サブブロックの分割情報から符号化するサブブロックがフレームやスライスの端部にあるか否かを判定する。すなわち、符号化するサブブロックの左隣に符号化済みの参照可能なサブブロックが存在するか否かを判定する。存在するならばステップＳ００９に進む。そうでなければステップＳ２０１に進む。
ステップＳ２０１にて、実施形態１の図４のステップＳ００７と同様に選択フラグが０であれば、ステップＳ００８に進み、そうでなければステップＳ２０２に進む。
ステップＳ２０２にて、符号化対象のサブブロックの左上隅の画素が接する直上のサブブロックの量子化パラメータを予測値とする。符号化対象のサブブロックがフレームまたはスライスの左上に存在する場合、予測値はスライスで指定された量子化パラメータとするがこれに限定されない
以後、ステップＳ０１０からステップＳ０１３を行い、サブブロック量子化パラメータの差分値の算出と符号化、サブブロックの予測誤差の符号化と再生画像の生成を全てのサブブロック、基本ブロックに対して行う。
【００６１】
量子化パラメータの予測に関して図２（ｇ）を用いて説明を加える。図２（ｅ）の実施形態１で用いた予測と比較して、サブブロック１００６とサブブロック１００８の予測が異なる。選択フラグが０であれば、復号する順の予測が行われるため、実施形態１と同様に端部のこれらのサブブロックは符号順で予測される。選択フラグが１であれば、これらのサブブロックは端部量子化パラメータの予測決定部２０２からの出力で予測する。すなわち、隣接する直上のサブブロックの量子化パラメータから予測を行い、図２（ｇ）のようになる。
【００６２】
以上の構成と動作により、端部においても復号する順に量子化パラメータを予測するか周囲の参照できる量子化パラメータから予測するかを選択することにより、端部でも処理時間の遅延を優先するか、符号化効率を優先するか選択できる効果がある。
【００６３】
なお、実施形態１の図４のステップＳ００９では左隣に参照するサブブロックがない場合は復号する順に予測を行う方法で説明したが、これの代わりに図１０のステップＳ２０１、ステップＳ００８、ステップＳ２０２を用いてももちろん構わない。  
なお、本実施形態で基本ブロック量子化パラメータ、サブブロック量子化パラメータ差分値および量子化係数の符号化にゴロム符号化を用いて説明したが、これに限定されない。例えばハフマン符号化やその他の算術符号化であってももちろん構わない。
【００６４】
＜実施形態４＞
本実施形態では符号化装置は実施形態２の図６と同じ構成をとる。ただし、量子化パラメータ復号部１１０２の構成が異なる。本実施形態では、実施形態３で生成された符号化データの復号を例にとって説明する。
【００６５】
図１１は本実施形態の量子化パラメータ復号部１１０２の詳細な構成を示すブロック図である。図１１において、実施形態２の図７と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
図１１において、３００は復号対象となるサブブロックがフレームまたはスライスの端部にあるか否かを判定する端部判定部である。実施形態３の図７の端部判定部２００と同様に動作し、端部判定信号を生成する。
【００６６】
３０１は量子化パラメータ保持部１０７に格納された各サブブロックの量子化パラメータから復号するサブブロックの量子化パラメータの予測値を決定するサブブロック量子化パラメータ予測値決定部である。すなわち、本実施形態では復号処理を行うサブブロックの左のサブブロックの量子化パラメータを参照して予測値を決定する。
３０２は復号されたサブブロックの量子化パラメータを格納する量子化パラメータ保持部である。量子化パラメータ保持部３０２は量子化パラメータ保持部１０７から順に量子化パラメータを受け取る。これにより、復号されたサブブロックの量子化パラメータを復号対象のサブブロックの上のサブブロックまでの量子化パラメータを保持する。
３０３は量子化パラメータ保持部３０２に格納された各サブブロックの量子化パラメータから復号するサブブロックの量子化パラメータの予測値を決定する端部量子化パラメータ予測値決定部である。すなわち、復号処理を行うサブブロックの上のサブブロックの量子化パラメータを参照して予測値を決定する。
３０４はセレクタであり、実施形態２の図７のセレクタ１０９と同様に端子１０１から入力される選択フラグによって入力先を選択する。選択フラグが０であれば、量子化パラメータ保持部１０６を入力先に選択する。選択フラグが１であれば、端部量子化パラメータ予測値決定部３０３を入力先に選択する。
３０５もセレクタであり、端部判定部３００からの端部判定信号に基づいて入力先を選択する。端部判定信号が０であれば、セレクタ３０４を、そうでなければ量子化パラメータ予測値決定部３０１を入力先として選択する。
【００６７】
上記画像復号装置における画像の復号動作を以下に説明する。実施形態２と同様に、端子１００からサブブロックの分割情報、端子１０１から選択フラグ、端子１０２からサブブロックの量子化パラメータ差分値符号（ｃｕ＿ｑｐ＿ｄｅｌｔａ符号）が入力される。
上記の構成において、端子１０２から入力されたサブブロックのサブブロック量子化パラメータ差分値符号はサブブロック量子化パラメータ差分値復号部１０３に入力され、ゴロム符号の復号により、サブブロック量子化パラメータ差分値を再生する。サブブロック量子化パラメータ加算部１０４はセレクタ３０５を介して入力されるサブブロック量子化パラメータの予測値とサブブロック量子化パラメータ差分値を加算し、サブブロック量子化パラメータを再生する。また、量子化パラメータ保持部１０６と量子化パラメータ保持部１０７に入力される。量子化パラメータ保持部３０２は量子化パラメータ保持部１０７から、今後符号化対象サブブロックの上になることがある量子化パラメータを入力し、格納する。
【００６８】
実施形態２と同様に、量子化パラメータ保持部１０６は常に復号する順に前に復号されたサブブロックの量子化パラメータを保持している。量子化パラメータ保持部１０７は、復号の対象となるサブブロックの周囲（本実施形態では左）に存在する量子化パラメータを保持する。
【００６９】
量子化パラメータ予測値決定部３０３は量子化パラメータ保持部１０７から上にあるサブブロックの量子化パラメータを入力する。本実施形態では、当該サブブロックの左上隅の画素が接する位置のサブブロックの量子化パラメータを予測値とする。
【００７０】
セレクタ３０４は選択フラグが０の時、すなわち、復号する順にサブブロックの量子化パラメータの予測値を決定する場合は、量子化パラメータ保持部１０６を入力先とする。選択フラグが０の時、すなわち、周囲のサブブロックから量子化パラメータを決定する場合は量子化パラメータ予測値決定部３０３を入力先とする。
【００７１】
図１２は、実施形態４に係る画像復号装置における画像復号処理を示すフローチャートである。図１２において、実施形態２の図８と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００７２】
ステップＳ１０１とステップＳ１０２によって、実施形態２と同様にヘッダ情報と量子化パラメータ予測方法を表す絵ｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号の復号を行う。ステップＳ１０３でｃｕ＿ｑｐ＿ｄｅｌｔａ符号を復号して、サブブロックの量子化パラメータの差分値を算出する。
【００７３】
ステップＳ３００にて、サブブロックの分割情報から復号するサブブロックがフレームやスライスの端部にあるか否かを判定する。すなわち、復号するサブブロックの左隣に符号化済みの参照可能なサブブロックが存在するか否かを判定する。存在するならばステップＳ１０６に進む。そうでなければステップＳ３０１に進む。
ステップＳ３０１にて、量子化パラメータ復号部１１０２は、実施形態１の図４のステップＳ００７と同様に選択フラグが０であれば、ステップＳ１０５に進み、そうでなければステップＳ３０２に進む。
ステップＳ３０２にて、量子化パラメータ復号部１１０２は、符号化対象のサブブロックの左上隅の画素が接する直上のサブブロックの量子化パラメータを予測値とする。符号化対象のサブブロックがフレームまたはスライスの左上に存在する場合、予測値はスライスで指定された量子化パラメータとするが、これに限定されない。
以後、ステップＳ１０７からステップＳ１１２を行い、サブブロック量子化パラメータの再生、サブブロックの予測誤差の復号と再生画像の生成を全てのサブブロック、基本ブロックに対して行う。
【００７４】
以上の構成と動作により、実施形態３で生成した、端部においても復号する順に量子化パラメータを予測するか、周囲の参照できる量子化パラメータから予測するかを選択した符号化データを復号することができる。
【００７５】
なお、本実施形態で基本ブロック量子化パラメータ、サブブロック量子化パラメータ差分値および量子化係数の復号にゴロム符号化を用いて説明したが、これに限定されない。例えばハフマン符号化やその他の算術符号化であってももちろん構わない。なお、実施形態２の図８におけるステップＳ１０６では左隣に参照するサブブロックがない場合は復号する順に予測を行う方法で説明したが、これの代わりに図１２のステップＳ３０１、ステップＳ１０５、ステップＳ３０２を用いてももちろん構わない。
【００７６】
＜実施形態５＞
図１３は本実施形態の画像符号化装置を示すブロック図である。図１３において、実施形態１の図１と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００７７】
１１１００はスライス単位で符号化モードを決定するスライス符号化モード決定部である。ここでは説明を簡単にするため、フレーム内符号化を行いイントラ符号化のモードと動き補償を行って符号化するインター符号化のモードを例にとる。１１１０３はブロック予測部であり、スライスの符号化モードによって、イントラ予測か動き補償による予測を行う。１１１０８は量子化パラメータ符号化部である。実施形態１の図１の量子化パラメータ符号化部１１００８とはスライス符号化モードを入力する点にある。
【００７８】
フレームの符号化に先立ち、スライス符号化モード決定部１１１００は当該フレームのスライスをイントラ符号化するかインター符号化するかを決定する。例えば、それまで入力されたフレームの枚数から、周期的にイントラ符号化モードを選択し、残りはインター符号化モードを選択することができる。決定されたスライス符号化モードは量子化パラメータ符号化部１１１０８とブロック予測部１１１０３に入力される。ブロック予測部１１１０３ではスライスがイントラ予測を行う場合、そのイントラ予測を行ったモードも合わせて出力する。例えば、非特許文献１に記載の８つの予測モードを用いてもよい。この予測モードは量子化パラメータ符号化部１１１０８に入力される。
【００７９】
図１４は本実施形態の量子化パラメータ符号化部１１１０８の詳細な構成を示すブロック図である。図１４において、実施形態１の図３と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００８０】
４００は図１３のスライス符号化モード決定部１１１００からスライスの符号化モードを入力する端子である。４０１は端子４００から入力されたスライスの符号化モードと端子６から入力される選択フラグからセレクタ９の入力先を選択する選択信号を生成する制御部である。４０２は端子であり、図１３のブロック予測部１１１０３から係数の予測に用いたられるイントラ予測モードを入力する。４０３は端子４０２から入力されたイントラ予測モードに従って周囲のサブブロックの量子化パラメータを選択する量子化パラメータ予測値決定部である。
【００８１】
処理に先駆け、選択フラグ符号化部７で入力された選択フラグを符号化してｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号を端子８から出力する。
【００８２】
また、スライスの符号化の先頭で、スライスの符号化モードが端子４００から制御部４０１に入力される。
制御部４０１は入力されたスライス符号化モードと選択フラグからセレクタ９の選択信号を生成する。すなわち、選択フラグが０であり、スライスの符号化モードがイントラ予測であれば、セレクタ９の入力先を量子化パラメータ保持部３とする。この時の制御信号は０となる。選択フラグが０であり、スライスの符号化モードがインター予測であれば、セレクタ９の入力先を量子化パラメータ保持部３とする。この時の制御信号は０となる。選択フラグが１であり、スライスの符号化モードがイントラ予測であれば、セレクタ９の入力先を量子化パラメータ予測値決定部４０３とする。この時の制御信号は１となる。選択フラグが１であり、スライスの符号化モードがインター予測であれば、セレクタ９の入力先を量子化パラメータ保持部３とする。この時の制御信号は０となる。
【００８３】
量子化パラメータ予測値決定部４０３は端子４０２から入力されたイントラ予測モードを入力する。非特許文献１に記載されているイントラ予測を行った場合、予測モードが０、３、５、７の場合は符号化対象のサブブロックの上に存在するサブブロックの量子化パラメータを参照する。予測モード１、６、８の場合は左に存在するサブブロックの量子化パラメータを参照する。予測モード２、４の場合は上と左のサブブロックの量子化パラメータの平均値を予測値に用いる。本実施形態では、予測モードと量子化パラメータの参照対象の組み合わせは上記の通りとするが、これに限定されない。
【００８４】
セレクタ９は制御信号が０であれば、量子化パラメータ保持部３の出力を、そうでなければ、量子化パラメータ予測値決定部４０３の出力を入力として選択する。セレクタ９を介して得られた量子化パラメータはサブブロック量子化パラメータ差分部１０と量子化パラメータ保持部３及び４に入力される。
セレクタ９は制御信号が０であれば、復号する順に従って量子化パラメータの予測値を決定するので、量子化パラメータ保持部３の出力をサブブロック量子化パラメータ差分部１０に入力する。制御信号が１であれば、符号化効率向上のため、イントラ予測モードに従って、符号化するサブブロックの左隣または上のサブブロックの量子化パラメータを予測値とする。このため、サブブロック量子化パラメータ予測値決定部４０３の出力をサブブロック量子化パラメータ差分部１０に入力する。
【００８５】
サブブロック量子化パラメータ差分部１０は符号化するサブブロックの量子化パラメータを量子化パラメータ保持部２から読み出し、セレクタ９から入力された量子化パラメータ予測値を引き差分を  サブブロック量子化パラメータ符号化部１１に入力する。サブブロック量子化パラメータ符号化部１１は入力された量子化パラメータ差分値をゴロム符号化してｃｕ＿ｑｐ＿ｄｅｌｔａ符号を端子１２から出力する。
【００８６】
図１５は、実施形態５に係る画像符号化装置における画像符号化処理を示すフローチャートである。図１５において、実施形態１の図４と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００８７】
ステップＳ００１からステップＳ００３にて、実施形態１と同様に量子化パラメータの予測方法を選択し、選択モードを決定して、ヘッダ情報とともに符号化する。
ステップＳ４０１にて、スライスモード決定部１１１００は、スライスの先頭でスライスの符号化モードを決定し、符号化を行い、ｓｌｉｃｅ＿ｔｙｐｅ符号を生成する。図５にスライスのヘッダの符号化データの様子を示す。ｓｌｉｃｅ＿ｔｙｐｅ符号２００１１はスライスヘッダに含まれる。
ステップＳ００４からステップＳ００６で、ブロック分割部１１００１は、フレームを基本ブロックに分割し、さらにサブブロックに分割する。さらにそれぞれのサブブロックの量子化パラメータを決定する。
ステップＳ４０２にて、量子化パラメータ符号化部１１１０８は、スライス符号化モードがイントラ符号化モードかインター符号化モードかを判定する。イントラ符号化モードならばステップＳ４０３に進む。インター符号化モードでならばステップＳ００８に進む。
ステップＳ４０３にて、量子化パラメータ符号化部１１１０８は、実施形態１の図４のステップＳ００７と同様に選択フラグが０であれば、ステップＳ００８に進み、そうでなければステップＳ４０４に進む。
ステップＳ４０４にて、量子化パラメータ符号化部１１１０８は、符号化対象のサブブロックのイントラ予測モードに従って周囲のサブブロックの量子化パラメータから予測値を決定する。
以後、ステップＳ０１０からステップＳ０１６を行い、サブブロック量子化パラメータの差分値の算出と符号化、サブブロックの予測誤差の符号化と再生画像の生成を全てのサブブロック、基本ブロック、スライスに対して行う。
【００８８】
以上の構成と動作により、用途に適合した各サブブロック量子化パラメータの差分値を符号化ができるまた、インター符号化の場合、画像の構成と量子化パラメータの相関が低いため、復号する順に量子化パラメータの予測を行ってもよい。また、イントラ符号化の場合は画像の特性に合った量子化パラメータの予測を行うことができる。これらによって処理時間の遅延の減少と画質の向上の両方を行える効果もある。
【００８９】
なお、本実施形態ではサブブロック量子化パラメータの予測にイントラ予測モードを用いたが、これに限定されず、実施形態１や実施形態２のよそくの方法やそれ以外の方法でも構わない。
【００９０】
また、本実施形態では基本ブロック量子化パラメータを前の基本ブロックの各サブブロック量子化パラメータの平均値としたが、これに限定されない。例えばサブブロックの中央値としても構わないし、最も頻度の高いサブブロック量子化パラメータの値としてももちろん構わない。このように算出方法を複数用意し、最も効率の良い基本ブロック量子化パラメータを選択してその方法を表す符号を用いて符号化してももちろん構わない。
【００９１】
本実施形態ではスライス単位で符号化モードを決定したが、これに限定されず、ＭＰＥＧ‐１、２、４のようにフレームやピクチャ単位で符号化モードを設定できる場合はこれを用いても構わない。さらに、細かな単位としてマクロブロック等の基本ブロック単位で用いてももちろん構わない。
【００９２】
＜実施形態６＞
図１６は本実施形態の画像復号装置を示すブロック図である。図１６において、実施形態２の図６と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００９３】
１５０１はスライスの符号化タイプの符号化データ（ｓｌｉｃｅ＿ｔｙｐｅ符号）を復号するスライス符号化モード復号部である。１５０２は量子化パラメータ復号部であり、実施形態２の図６の量子化パラメータ復号部１１０２とはスライス符号化モードを入力する点が異なる。
【００９４】
図１６において、端子１１００から入力された１フレーム分のストリームデータは復号・分離部１１０１に入力され、画像を再生するのに必要なヘッダ情報が復号される。ヘッダに含まれるｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５は選択フラグ復号部１１０９に入力され、量子化パラメータの再生を行う予測の方法を選択するフラグが再生される。選択フラグは量子化パラメータ復号部１５０２に入力される。
【００９５】
さらに、スライスの先頭において、スライス符号化モードを表す符号（ｓｌｉｃｅ＿ｔｙｐｅ符号２００１１）がスライス符号化モード復号部１５０１に入力され、復号されてスライスの符号化モードが再生される。再生されたスライス符号化モードは量子化パラメータ復号部１５０２に入力される。
【００９６】
また、基本ブロック単位で分割情報（ｓｐｌｉｔ＿ｃｏｄｉｎｇ＿ｆｌａｇ符号２００１０）も復号・分離部１１０１で復号され、量子化パラメータ復号部１１０２に入力される。これに続くサブブロックごとにサブブロックの量子化パラメータ差分値符号（ｃｕ＿ｑｐ＿ｄｅｌｔａ符号）ともに量子化パラメータ復号部１５０２に入力する。
【００９７】
図１７は、本発明の実施形態６に係る量子化パラメータ復号部１５０２の構成を示すブロック図である。本実施形態では、実施形態５で生成された符号化データの復号を例にとって説明する。
図１７において、実施形態２の図７と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００９８】
５０１は端子であり、スライス符号化モード復号部１５０１で再生されたスライス符号化モードが入力される。５０２は端子５０１から入力されたスライスの符号化モードと端子１０１から入力される選択フラグからセレクタ１０９の入力先を選択する選択信号を生成する制御部である。５０３は端子４０２から入力されたイントラ予測モードに従って周囲のサブブロックの量子化パラメータを選択する量子化パラメータ予測値決定部である。
【００９９】
上記画像復号装置における画像の復号動作を以下に説明する。本実施形態では動画像ビットストリームをフレーム単位に入力する構成となっているが、１フレーム分の静止画像ビットストリームを入力する構成としても構わない。
【０１００】
スライス単位の復号処理に先立ち、スライスの符号化モードが端子５０１から制御部５０２に入力される。
制御部５０２は入力されたスライス符号化モードと選択フラグからセレクタ１０９の選択信号を生成する。すなわち、選択フラグが０であり、スライスの符号化モードがイントラ予測であれば、セレクタ９の入力先を量子化パラメータ保持部１０６とする。この時の制御信号は０となる。選択フラグが０であり、スライスの符号化モードがインター予測であれば、セレクタ１０９の入力先を量子化パラメータ保持部１０６とする。この時の制御信号は０となる。選択フラグが１であり、スライスの符号化モードがイントラ予測であれば、セレクタ１０９の入力先を量子化パラメータ予測値決定部５０３とする。この時の制御信号は１となる。選択フラグが１であり、スライスの符号化モードがインター予測であれば、セレクタ１０９の入力先を量子化パラメータ保持部１０６とする。この時の制御信号は０となる。
【０１０１】
量子化パラメータ予測値決定部５０３は端子５０１から入力されたイントラ予測モードを入力するイントラ予測を行った場合、予測モードが０、３、５、７の場合は符号化対象のサブブロックの上に存在するサブブロックの量子化パラメータを参照する。予測モード１、６、８の場合は左に存在するサブブロックの量子化パラメータを参照する。予測モード２、４の場合は上と左のサブブロックの量子化パラメータの平均値を予測値に用いる。本実施形態では予測モードと量子化パラメータの参照対象の組み合わせは上記の通りとするが、これに限定されない。
【０１０２】
セレクタ１０９を介して入力されたサブブロックの量子化パラメータの予測値はサブブロック量子化パラメータ加算部１０４に入力され、復号された差分値に加算されて量子化パラメータを再生する。再生された量子化パラメータは端子１０５からブロック逆量子化部１１０４に出力される。また、量子化パラメータ保持部１０６及び量子化パラメータ保持部１０７に入力され、以後のサブブロックの量子化の予測値算出に用いられる。
【０１０３】
図１８は、実施形態６に係る画像復号装置における画像復号処理を示すフローチャートである。
【０１０４】
ステップＳ１０１からステップＳ１０２にて、復号分離部１１０１と選択フラグ復号部１１０９は、ヘッダ情報とそれに含まれるｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号の復号を行う。
ステップＳ５０１にて、スライス復号化モード復号部１５０１は、スライスヘッダに含まれるｓｌｉｃｅ＿ｔｙｐｅ符号を復号し、スライス符号化モードを取得する。
ステップＳ１０３からサブブロック単位での処理を行う。ステップＳ１０３にて、量子化パラメータ復号部１５０２は、量子化パラメータ差分値符号であるｃｕ＿ｑｐ＿ｄｅｌｔａ符号を復号し、量子化パラメータ差分値を再生する。
ステップＳ５０２にて、量子化パラメータ復号部１５０２は、スライス符号化モードがイントラ符号化モードかインター符号化モードかを判定する。イントラ符号化モードならばステップＳ５０３に進む。インター符号化モードでならばステップＳ１０５に進む。
ステップＳ５０３にて、量子化パラメータ復号部１５０２は、実施形態２の図８のステップＳ１０４と同様に判定し、選択フラグが０であれば、ステップＳ１０５に進み、そうでなければステップＳ５０４に進む。
ステップＳ５０４にて、量子化パラメータ復号部１５０２は、復号対象のサブブロックのイントラ予測モードに従って周囲のサブブロックの量子化パラメータから予測値を決定する。
【０１０５】
以後、ステップＳ１０７からステップＳ１１３を行い、サブブロック量子化パラメータの差分値の再生、サブブロックの予測誤差の復号と再生画像の生成を全てのサブブロック、基本ブロック、スライスに対して行う。
【０１０６】
以上の構成と動作により、各サブブロック量子化パラメータの差分値を符号化ができるスライス等の符号化モードを参照して量子化パラメータの予測を適応的に変更して処理時間の遅延の減少と画質の向上の両方を行えるビットストリームを復号することができる。
【０１０７】
＜実施形態７＞
図１９は本実施形態の画像符号化装置を示すブロック図である。図１９において、実施形態５の図１３と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。実施形態５の図１３とは操作部１１０１１が不要な点が異なる。１４００８は量子化パラメータ符号化部である。実施形態５の図１３の量子化パラメータ符号化部１１００８とは選択フラグが入力されない点にある。
【０１０８】
実施形態５と同様に、フレームの符号化に先立ち、スライス符号化モード決定部１１１００は当該フレームのスライスをイントラ符号化するかインター符号化するかを決定する。決定されたスライス符号化モードは量子化パラメータ符号化部１４００８とブロック予測部１１１０３に入力される。
【０１０９】
図２０は本実施形態の量子化パラメータ符号化部１４００８の詳細な構成を示すブロック図である。図２０において、実施形態５の図１４と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【０１１０】
６００はセレクタであり、端子４００から入力されるスライス符号化モードによって入力先を切り替える。
【０１１１】
実施形態５と同様に、量子化パラメータ決定部１１００２で決定された量子化パラメータが量子化パラメータ保持部２に格納される。
【０１１２】
端子４００から入力されたスライス符号化モードはセレクタ６００に入力される。スライスの符号化モードがイントラ予測であれば、セレクタ６００の入力先を量子化パラメータ予測値決定部４０３とする。スライスの符号化モードがインター予測であれば、セレクタ６００の入力先を量子化パラメータ保持部３とする。
【０１１３】
量子化パラメータ予測値決定部４０３は実施形態５と同様にイントラ予測モードに従って周囲のサブブロックの量子化パラメータから予測値を算出する。
【０１１４】
セレクタ６００を介して得られた量子化パラメータはサブブロック量子化パラメータ差分部１０と量子化パラメータ保持部３及び４に入力される。量子化パラメータ保持部３及び４は以後のサブブロックの量子化パラメータの予測のために使われる。
【０１１５】
以後、実施形態５と同様にサブブロック量子化パラメータ差分部１０で量子化パラメータ差分値を算出し、サブブロック量子化パラメータ符号化部１１で符号化し、ｃｕ＿ｑｐ＿ｄｅｌｔａ符号を端子１２から出力する。
【０１１６】
図２１は、実施形態７に係る画像符号化装置における画像符号化処理を示すフローチャートである。図２１において、実施形態５の図１５と異なる点はステップＳ００１、ステップＳ００３、ステップＳ４０３が無い点である。
【０１１７】
統合符号化部１１００９は、実施形態５と同様にステップＳ００２でヘッダの符号化を行う。その後、各スライスの符号化処理を行う。ステップＳ４０１ではスライスの符号化モードの決定とその符号化を行う。
【０１１８】
ステップＳ００４からステップＳ００６でフレームを基本ブロックに分割し、さらにサブブロックに分割する。さらにそれぞれのサブブロックの量子化パラメータを決定する。
ステップＳ４０２にて、量子化パラメータ符号化部１４００８は、スライス符号化モードがイントラ符号化モードかインター符号化モードかを判定する。イントラ符号化モードならばステップＳ４０３に進む。インター符号化モードでならばステップＳ００８に進む。
ステップＳ４０４にて、量子化パラメータ符号化部１４００８は、符号化対象のサブブロックのイントラ予測モードに従って周囲のサブブロックの量子化パラメータから予測値を決定する。
【０１１９】
以後、ステップＳ０１０からステップＳ０１６を行い、サブブロック量子化パラメータの差分値の算出と符号化、サブブロックの予測誤差の符号化と再生画像の生成を全てのサブブロック、基本ブロック、スライスに対して行う。
【０１２０】
図２２に本実施形態で生成されたビットストリームの一例を示す。シーケンスヘッダ（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）２０００１にｑｐ＿ｄｅｌｔａ＿ｓｅｌｅｃｔ＿ｆｌａｇ符号２０００５が含まれていない。スライスの符号化モードを表す符号ｓｌｉｃｅ＿ｔｙｐｅ符号２００１１がスライスヘッダに含まれている。
【０１２１】
以上の構成と動作により、符号化モードを選択フラグの代わりに用いることで、そのオーバーヘッドを削減できる。さらに、簡易な構成で各サブブロック量子化パラメータの差分値を符号化ができるスライス等の符号化モードを参照して量子化パラメータの予測を適応的に変更して処理時間の遅延の減少と画質の向上の両方を行うことができる。
【０１２２】
本実施形態ではスライス単位で符号化モードを決定したが、これに限定されず、ＭＰＥＧ‐１、２、４のようにフレームやピクチャ単位で符号化モードを設定できる場合はこれを用いても構わない。さらに、細かな単位としてマクロブロック等の基本ブロック単位で用いてももちろん構わない。
【０１２３】
＜実施形態８＞
図２３は本実施形態の画像復号装置を示すブロック図である。図２３において、実施形態６の図１６と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。実施形態６の図１６とは選択フラグ復号部１１０９が不要な点が異なる。また、本実施形態は実施形態７で生成されたビットストリーム（図２２）を復号する。
【０１２４】
図２３において、端子１１００から入力された１フレーム分のストリームデータは復号・分離部１１０１に入力され、画像を再生するのに必要なヘッダ情報が復号される。
【０１２５】
さらに、スライスの先頭において、スライス符号化モードを表す符号（ｓｌｉｃｅ＿ｔｙｐｅ符号２００１１）がスライス符号化モード復号部１５０１に入力され、復号されてスライスの符号化モードが再生される。再生されたスライス符号化モードは量子化パラメータ復号部１５０２に入力される。
【０１２６】
また、基本ブロック単位で分割情報（ｓｐｌｉｔ＿ｃｏｄｉｎｇ＿ｆｌａｇ符号２００１０）も復号・分離部１１０１で復号され、量子化パラメータ復号部１１０２に入力される。これに続くサブブロックごとにサブブロックの量子化パラメータ差分値符号（ｃｕ＿ｑｐ＿ｄｅｌｔａ符号）ともに量子化パラメータ復号部１５０２に入力する。
【０１２７】
図２４は、本発明の実施形態８に係る量子化パラメータ復号部１５０２の構成を示すブロック図である。本実施形態では、実施形態７で生成された符号化データの復号を例にとって説明する。
図２４において、実施形態６の図１７と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。６００はセレクタであり、端子４００から入力されるスライス符号化モードによって入力先を切り替える。
【０１２８】
実施形態５と同様に、スライス単位の復号処理に先立ち、スライスの符号化モードが端子５０１からセレクタ７０１に入力される。
セレクタ７０１は入力されたスライス符号化モードがイントラ予測であれば、入力先を量子化パラメータ予測値決定部５０３とする。スライスの符号化モードがインター予測であれば、入力先を量子化パラメータ保持部１０６とする。
【０１２９】
以下、実施形態６と同様に、量子化パラメータ予測値決定部５０３は端子５０１から入力されたイントラ予測モードに従って周囲のサブブロックの量子化パラメータから予測値を算出する。
【０１３０】
セレクタ７０１を介して入力されたサブブロックの量子化パラメータの予測値はサブブロック量子化パラメータ加算部１０４に入力され、復号された差分値に加算されて量子化パラメータを再生する。再生された量子化パラメータは端子１０５からブロック逆量子化部１１０４に出力される。また、量子化パラメータ保持部１０６及び量子化パラメータ保持部１０７に入力され、以後のサブブロックの量子化の予測値算出に用いられる。
【０１３１】
図２５は、実施形態６に係る画像復号装置における画像復号処理を示すフローチャートである。図２５において、実施形態６の図１８と異なる点はステップＳ００２、ステップＳ５０３が無い点である。
【０１３２】
ステップＳ１０１にて、ヘッダ情報との復号を行う。ステップＳ５０１にて、スライス符号化モード復号部１５０１は、スライスヘッダに含まれるｓｌｉｃｅ＿ｔｙｐｅ符号を復号し、スライス符号化モードを取得する。
ステップＳ１０３からサブブロック単位での処理を行う。ステップＳ１０３にて、量子化パラメータ復号部１５０２は、量子化パラメータ差分値符号であるｃｕ＿ｑｐ＿ｄｅｌｔａ符号を復号し、量子化パラメータ差分値を再生する。
ステップＳ５０２にて、量子化パラメータ復号部１５０２は、スライス符号化モードがイントラ符号化モードかインター符号化モードかを判定する。イントラ符号化モードならばステップＳ５０４に進む。インター符号化モードでならばステップＳ１０５に進む。
ステップＳ５０４にて、量子化パラメータ復号部１５０２は、復号対象のサブブロックのイントラ予測モードに従って周囲のサブブロックの量子化パラメータから予測値を決定する。
【０１３３】
以後、ステップＳ１０７からステップＳ１１３を行い、サブブロック量子化パラメータの差分値の再生、サブブロックの予測誤差の復号と再生画像の生成を全てのサブブロック、基本ブロック、スライスに対して行う。
【０１３４】
以上の構成と動作により、各サブブロック量子化パラメータの差分値を符号化ができるスライス等の符号化モードを参照して量子化パラメータの予測を適応的に変更して処理時間の遅延の減少と画質の向上の両方を行えるビットストリームを復号することができる。
【０１３５】
また、実施形態１から８において、選択フラグは０と１の値しか持たないように説明したが、これに限定されない。実施形態１、３、５の其々の符号化方法を切り替えらえるように複数ビットで表す値であってももちろん構わない。
本実施形態においてスライス単位の符号化モードに基づいて予測値を復号する順に求めるか、周囲のサブブロックの量子化パラメータからも求めるかを判定したが、基本ブロック単位で判定しても構わない。例えば、Ｈ．２６４のマクロブロックの符号化モードに基づいて判定しても構わない。
【０１３６】
＜実施形態９＞
図１、図３、図６、図７、図９、図１１、図１３、図１４、図１６、図１７、図１９、図２０、図２３、図２４に示した各処理部はハードウェアでもって構成しているものとして上記実施形態では説明した。しかし、これらの図に示した各処理部で行なう処理をコンピュータプログラムでもって構成しても良い。
図２６は、上記各実施形態に係る画像表示装置に適用可能なコンピュータのハードウェアの構成例を示すブロック図である。
【０１３７】
ＣＰＵ１４０１は、ＲＡＭ１４０２やＲＯＭ１４０３に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記各実施形態に係る画像処理装置が行うものとして上述した各処理を実行する。即ち、ＣＰＵ１４０１は、図１、図３、図６、図７、図９、図１１、図１３、図１４、図１６、図１７、図１９、図２０、図２３、図２４に示した各処理部として機能することになる。
ＲＡＭ１４０２は、外部記憶装置１４０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ（インターフェース）１４０９を介して外部から取得したデータなどを一時的に記憶するためのエリアを有する。更に、ＲＡＭ１４０２は、ＣＰＵ１４０１が各種の処理を実行する際に用いるワークエリアを有する。即ち、ＲＡＭ１４０２は、例えば、フレームメモリとして割当てたり、その他の各種のエリアを適宜提供することができる。
ＲＯＭ１４０３には、本コンピュータの設定データや、ブートプログラムなどが格納されている。操作部１４０４は、キーボードやマウスなどにより構成されており、本コンピュータのユーザが操作することで、各種の指示をＣＰＵ１４０１に対して入力することができる。表示部１４０５は、ＣＰＵ１４０１による処理結果を表示する。また表示部１４０５は例えば液晶ディスプレイのようなホールド型の表示装置や、フィールドエミッションタイプの表示装置のようなインパルス型の表示装置で構成される。
【０１３８】
外部記憶装置１４０６は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置１４０６には、ＯＳ（オペレーティングシステム）や、図１、図６、図１３、図１６、図１９、図２３に示した各部の機能をＣＰＵ１４０１に実現させるためのコンピュータプログラムが保存されている。更には、外部記憶装置１４０６には、処理対象としての各画像データが保存されていても良い。
外部記憶装置１４０６に保存されているコンピュータプログラムやデータは、ＣＰＵ１４０１による制御に従って適宜ＲＡＭ１４０２にロードされ、ＣＰＵ１４０１による処理対象となる。Ｉ／Ｆ１４０７には、ＬＡＮやインターネット等のネットワーク、投影装置や表示装置などの他の機器を接続することができ、本コンピュータはこのＩ／Ｆ１４０７を介して様々な情報を取得したり、送出したりすることができる。１４０８は上述の各部を繋ぐバスである。
上述の構成からなる作動は前述のフローチャートで説明した作動をＣＰＵ１４０１が中心となってその制御を行う。
【０１３９】
＜その他の実施形態＞
本発明の目的は、前述した機能を実現するコンピュータプログラムのコードを記録した記憶媒体を、システムに供給し、そのシステムがコンピュータプログラムのコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたコンピュータプログラムのコード自体が前述した実施形態の機能を実現し、そのコンピュータプログラムのコードを記憶した記憶媒体は本発明を構成する。また、そのプログラムのコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した機能が実現される場合も含まれる。
【０１４０】
さらに、以下の形態で実現しても構わない。すなわち、記憶媒体から読み出されたコンピュータプログラムコードを、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。そして、そのコンピュータプログラムのコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行って、前述した機能が実現される場合も含まれる。
【０１４１】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するコンピュータプログラムのコードが格納されることになる。
本実施形態においてスライス単位の符号化モードに基づいて予測値を復号する順に求めるか、周囲のサブブロックの量子化パラメータからも求めるかを判定したが、基本ブロック単位で判定しても構わない。例えば、Ｈ．２６４のマクロブロックの符号化モードでｍｂ＿ｔｙｐｅ符号の復号結果に基づいて判定しても構わない。
【図１】
0006039163.tif 000002
【図２】
0006039163.tif 000003
【図３】
0006039163.tif 000004
【図４】
0006039163.tif 000005
【図５】
0006039163.tif 000006
【図６】
0006039163.tif 000007
【図７】
0006039163.tif 000008
【図８】
0006039163.tif 000009
【図９】
0006039163.tif 000010
【図１０】
0006039163.tif 000011
【図１１】
0006039163.tif 000012
【図１２】
0006039163.tif 000013
【図１３】
0006039163.tif 000014
【図１４】
0006039163.tif 000015
【図１５】
0006039163.tif 000016
【図１６】
0006039163.tif 000017
【図１７】
0006039163.tif 000018
【図１８】
0006039163.tif 000019
【図１９】
0006039163.tif 000020
【図２０】
0006039163.tif 000021
【図２１】
0006039163.tif 000022
【図２２】
0006039163.tif 000023
【図２３】
0006039163.tif 000024
【図２４】
0006039163.tif 000025
【図２５】
0006039163.tif 000026
【図２６】
0006039163.tif 000027
【図２７】
0006039163.tif 000028