(57)【要約】【課題】画面を分割して並列処理する場合にて、符号化効率の低下を抑制するとともに、復号側でも遅延の増大を抑制した並列処理を実現する。【解決手段】スライスデータ分割部１０４は、画面を複数のスライスに分割する。複数のスライスデータ符号化部１０５、１０６、１０７、１０８は、スライスデータ分割部１０４により分割された複数のスライスを並列的に符号化する。符号化ビット列生成部１０２は、符号化に関するパラメータを符号化する。複数のスライスデータ符号化部１０５、１０６、１０７、１０８の少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化する。符号化ビット列生成部１０２は、符号化に関するパラメータの一つとして、複数のスライス間の参照依存関係を示す情報を符号化する。【選択図】図１
2011217082.tif 000002
【特許請求の範囲】
【請求項１】
画面を複数のスライスに分割するスライス分割部と、
前記スライス分割部により分割された複数のスライスを並列的に符号化する複数のスライス符号化部と、
符号化に関するパラメータを符号化するパラメータ符号化部と、を備え、
前記複数のスライス符号化部の少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化し、
前記パラメータ符号化部は、前記符号化に関するパラメータの一つとして、前記複数のスライス間の参照依存関係を示す情報を符号化することを特徴とする画像符号化装置。
【請求項２】
前記複数のスライス符号化部の少なくとも一つは、前記対象スライス内の前記隣接スライスと接している対象ブロックの画素信号をイントラ予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの画素信号を参照候補とすることを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記複数のスライス符号化部の少なくとも一つは、前記対象スライス内の前記隣接スライスと接している対象ブロックの動きベクトルを予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの動きベクトルを参照することを特徴とする請求項１または２に記載の画像符号化装置。
【請求項４】
前記スライスを構成する複数のブロックの符号化順序として、複数の符号化順が設定されており、
前記複数のスライス符号化部のそれぞれは、他のスライス符号化部により参照されるブロックの符号化順序が参照されないブロックの符号化順序よりも先にくる符号化順で符号化し、
前記パラメータ符号化部は、前記符号化に関するパラメータの一つとして、各スライスの符号化順序を示す情報を符号化することを特徴とする請求項１から３のいずれかに記載の画像符号化装置。
【請求項５】
前記複数のスライス符号化部の少なくとも一つは、前記対象スライス内の前記隣接スライスと接している対象ブロックの符号化の際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータを利用することを特徴とする請求項１に記載の画像符号化装置。
【請求項６】
前記複数のスライス符号化部の少なくとも一つは、前記対象スライス内の前記隣接スライスと接している対象ブロックの符号化の際、その対象ブロックと符号化順序で一つ前の隣接ブロックの符号化時点の算術符号化パラメータを用いるか、前記対象ブロックと前記対象スライス内で隣接する隣接ブロックの符号化時点の算術符号化パラメータを用いるか、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータを用いるかを、選択し、
前記パラメータ符号化部は、前記符号化に関するパラメータの一つとして、前記算術符号化パラメータの選択情報を符号化することを特徴とする請求項５に記載の画像符号化装置。
【請求項７】
画面を複数のスライスに分割するスライス分割ステップと、
前記スライス分割ステップにより分割された複数のスライスを並列的に符号化するスライス符号化ステップと、
符号化に関するパラメータを符号化するパラメータ符号化ステップと、を備え、
前記スライス符号化ステップは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化し、
前記パラメータ符号化ステップは、前記符号化に関するパラメータの一つとして、前記複数のスライス間の参照依存関係を示す情報を符号化することを特徴とする画像符号化方法。
【請求項８】
前記スライス符号化ステップでは、前記対象スライス内の前記隣接スライスと接している対象ブロックの画素信号をイントラ予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの画素信号を参照候補とすることを特徴とする請求項７に記載の画像符号化方法。
【請求項９】
前記スライス符号化ステップでは、前記対象スライス内の前記隣接スライスと接している対象ブロックの動きベクトルを予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの動きベクトルを参照することを特徴とする請求項７または８に記載の画像符号化方法。
【請求項１０】
前記スライス符号化ステップでは、前記対象スライス内の前記隣接スライスと接している対象ブロックの符号化の際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータを利用することを特徴とする請求項９に記載の画像符号化方法。
【請求項１１】
画面を複数のスライスに分割するスライス分割処理と、
前記スライス分割処理により分割された複数のスライスを並列的に符号化するスライス符号化処理と、
符号化に関するパラメータを符号化するパラメータ符号化処理と、をコンピュータに実行させ、
前記スライス符号化処理は、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化し、
前記パラメータ符号化処理は、前記符号化に関するパラメータの一つとして、前記複数のスライス間の参照依存関係を示す情報を符号化することを特徴とする画像符号化プログラム。
【請求項１２】
前記スライス符号化処理では、前記対象スライス内の前記隣接スライスと接している対象ブロックの画素信号をイントラ予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの画素信号を参照候補とすることを特徴とする請求項１１に記載の画像符号化プログラム。
【請求項１３】
前記スライス符号化処理では、前記対象スライス内の前記隣接スライスと接している対象ブロックの動きベクトルを予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの動きベクトルを参照することを特徴とする請求項１１または１２に記載の画像符号化プログラム。
【請求項１４】
前記スライス符号化処理では、前記対象スライス内の前記隣接スライスと接している対象ブロックの符号化の際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータを利用することを特徴とする請求項１２に記載の画像符号化プログラム。
【請求項１５】
画面を複数のスライスに分割し、その複数のスライスが並列的に符号化された複数の符号化スライスを分離する分離部と、
前記分離部により分離された複数の符号化スライスを並列的に復号する複数のスライス復号部と、
符号化に関するパラメータが符号化された符号化パラメータを復号するパラメータ復号部と、
前記パラメータ復号部により復号された符号化に関するパラメータに応じて、前記複数のスライス復号部による復号を管理する復号管理部と、を備え、
前記複数の符号化スライスの少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化されており、
前記復号管理部は、前記符号化に関するパラメータに含まれる前記複数のスライス間の参照依存関係を示す情報をもとに、前記複数のスライス復号部のそれぞれの復号開始タイミングを決定することを特徴とする画像復号装置。
【請求項１６】
前記複数の符号化スライスには、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照せずに符号化された基底符号化スライスが含まれており、
前記復号管理部は、前記基底符号化スライス以外の符号化スライスの復号開始タイミングを、前記基底符号化スライスの復号開始タイミングに対して、前記参照依存関係を示す情報にもとづいて決定される時間、遅延させることを特徴とする請求項１５に記載の画像復号装置。
【請求項１７】
前記複数の符号化スライスの少なくとも一つは、前記対象スライス内の前記隣接スライスと接している対象ブロックの画素信号をイントラ予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの画素信号を参照しており、
前記復号管理部は、前記隣接ブロックの画素信号の復号が終了するまで、前記対象ブロックの画素信号の復号を待機させることを特徴とする請求項１５に記載の画像復号装置。
【請求項１８】
前記複数の符号化スライスの少なくとも一つは、前記対象スライス内の前記隣接スライスと接している対象ブロックの動きベクトルを予測符号化する際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの動きベクトルを参照しており、
前記復号管理部は、前記隣接ブロックの動きベクトルの復号が終了するまで、前記対象ブロックの動きベクトルの復号を待機させることを特徴とする請求項１５または１７に記載の画像復号装置。
【請求項１９】
前記スライスを構成する複数のブロックの符号化順序として、複数の符号化順が設定されており、
前記複数の符号化スライスのそれぞれは、他の符号化スライスにより参照されるブロックの符号化順序が参照されないブロックの符号化順序よりも先にくる符号化順で、符号化されており、
前記復号管理部は、前記符号化に関するパラメータに含まれる各スライスの符号化順序を示す情報をもとに、前記複数のスライス復号部に各スライスの復号順序を指定することを特徴とする請求項１５から１８のいずれかに記載の画像復号装置。
【請求項２０】
前記複数の符号化スライスの少なくとも一つでは、前記対象スライス内の前記隣接スライスと接している対象ブロックの符号化の際、前記隣接スライス内の前記対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータが利用されており、
前記復号管理部は、前記隣接ブロックの符号化終了時点の算術符号化パラメータを利用して、前記対象ブロックを復号するよう指示することを特徴とする請求項１５に記載の画像復号装置。
【請求項２１】
前記複数の符号化スライスの少なくとも一つでは、前記対象スライス内の前記隣接スライスと接している対象ブロックの符号化の際、その対象ブロックと符号化順序で一つ前の隣接ブロックの符号化時点の算術符号化パラメータ、前記対象ブロックと前記対象スライス内で隣接する隣接ブロックの符号化時点の算術符号化パラメータ、及び前記隣接スライス内の前記対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータのうち、いずれかが選択されており、
前記復号管理部は、前記符号化に関するパラメータに含まれる前記算術符号化パラメータの選択情報をもとに、前記対象ブロックの復号の際に利用する算術符号化パラメータを指定することを特徴とする請求項２０に記載の画像復号装置。
【請求項２２】
画面を複数のスライスに分割し、その複数のスライスが並列的に符号化された複数の符号化スライスを分離する分離ステップと、
前記分離ステップにより分離された複数の符号化スライスを並列的に復号する複数のスライス復号ステップと、
符号化に関するパラメータが符号化された符号化パラメータを復号するパラメータ復号ステップと、
前記パラメータ復号ステップにより復号された符号化に関するパラメータに応じて、前記符号化スライスの復号を管理する復号管理ステップと、を備え、
前記複数の符号化スライスの少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化されており、
前記復号管理ステップは、前記符号化に関するパラメータに含まれる前記複数のスライス間の参照依存関係を示す情報をもとに、前記複数の符号化スライスのそれぞれの復号開始タイミングを決定することを特徴とする画像復号方法。
【請求項２３】
前記複数の符号化スライスには、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照せずに符号化された基底符号化スライスが含まれており、
前記復号管理ステップは、前記基底符号化スライス以外の符号化スライスの復号開始タイミングを、前記基底符号化スライスの復号開始タイミングに対して、前記参照依存関係を示す情報にもとづいて決定される時間、遅延させることを特徴とする請求項２２に記載の画像復号方法。
【請求項２４】
画面を複数のスライスに分割し、その複数のスライスが並列的に符号化された複数の符号化スライスを分離する分離処理と、
前記分離処理により分離された複数の符号化スライスを並列的に復号する複数のスライス復号処理と、
符号化に関するパラメータが符号化された符号化パラメータを復号するパラメータ復号処理と、
前記パラメータ復号処理により復号された符号化に関するパラメータに応じて、前記符号化スライスの復号を管理する復号管理処理と、をコンピュータに実行させ、
前記複数の符号化スライスの少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化されており、
前記復号管理処理は、前記符号化に関するパラメータに含まれる前記複数のスライス間の参照依存関係を示す情報をもとに、前記複数の符号化スライスのそれぞれの復号開始タイミングを決定することを特徴とする画像復号プログラム。
【請求項２５】
前記複数の符号化スライスには、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照せずに符号化された基底符号化スライスが含まれており、
前記復号管理処理は、前記基底符号化スライス以外の符号化スライスの復号開始タイミングを、前記基底符号化スライスの復号開始タイミングに対して、前記参照依存関係を示す情報にもとづいて決定される時間、遅延させることを特徴とする請求項２４に記載の画像復号プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のスライスを並列に符号化／復号する、画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラムに関する。
【背景技術】
【０００２】
近年、４ｋ×２ｋやスーパーハイビジョン等の、ＨＤ画像より高精細・大画面の画像を扱うことができる撮像装置、表示装置が開発されている。これに伴い、今後、高精細・大画面の画像コンテンツが増えていくと予想される。しかしながら、現状使用されているプロセッサの性能では、４ｋ×２ｋやスーパーハイビジョン等の画像が符号化されているビットストリーム（以下、符号化ビット列という）を、１プロセスで復号することは困難である。そこで、限られたプロセッサ能力で、リアルタイムデコードを実現するために、並列処理を用いる手法が提案されている。
【０００３】
ここで、プロセスとは符号化／復号の独立した実行主体を指し、基本的に１ハードウェア資源＝１プロセスの関係にあるが、１ハードウェア資源を時分割に利用する場合、１ハードウェア資源＝複数プロセスの関係となる。
【０００４】
ところで、ビデオ符号化の一方式であるＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４符号化方式には、並列処理を実現するための仕組みとして、画面をスライス単位で分割する仕組みが取り入れられている。このスライス分割においては、画面を複数のスライスに分割し、各スライスを、スライス間の相関を用いずに符号化／復号する。
【０００５】
また、分割領域間の相関を考慮した並列処理も提案されている。この並列処理では、符号化側で画面を分割し、分割領域をそれぞれ符号化するプロセス間で符号化タイミングをずらすことにより、プロセス間で隣接データの受け渡しを行っている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平２００６−２９５７２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４符号化方式に取り入れられているスライス分割では、スライス間の相関を利用しないため、符号化効率が低下するという難しい面がある。
【０００８】
上述した分割領域間の相関を考慮した並列処理では、プロセス間で隣接データの受け渡しを行なうことにより、分割による符号化効率の低下を抑制している面がある。しかしながら、その並列処理は復号に関して考慮されておらず、復号側ではプロセスに分割すべき区切りが分からないため、復号側で並列処理を用いて復号することが難しいという面がある。
【０００９】
また、当該並列処理では、分割領域間の相関を用いるために必要な情報を、隣接するプロセスの符号化が終了するまで、その情報を使用するプロセスは取得することができない。したがって、そのプロセスの符号化処理の開始を、隣接するプロセスの符号化が終了するまで待機させる必要があり、遅延が増大するという難しい面もある。
【００１０】
本発明はこうした状況に鑑みなされたものであり、この目的は、画面を分割して並列処理する場合にて、符号化効率の低下を抑制するとともに、復号側でも遅延の増大を抑制することができる技術を提供することにある。
【課題を解決するための手段】
【００１１】
本発明のある態様の画像符号化装置は、画面を複数のスライスに分割するスライス分割部と、スライス分割部により分割された複数のスライスを並列的に符号化する複数のスライス符号化部と、符号化に関するパラメータを符号化するパラメータ符号化部と、を備える。複数のスライス符号化部の少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化し、パラメータ符号化部は、符号化に関するパラメータの一つとして、複数のスライス間の参照依存関係を示す情報を符号化する。
【００１２】
本発明のさらに別の態様は、画像復号装置である。この装置は、画面を複数のスライスに分割し、その複数のスライスが並列的に符号化された複数の符号化スライスを分離する分離部と、分離部により分離された複数の符号化スライスを並列的に復号する複数のスライス復号部と、符号化に関するパラメータが符号化された符号化パラメータを復号するパラメータ復号部と、パラメータ復号部により復号された符号化に関するパラメータに応じて、複数のスライス復号部による復号を管理する復号管理部と、を備える。複数の符号化スライスの少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化されており、復号管理部は、符号化に関するパラメータに含まれる複数のスライス間の参照依存関係を示す情報をもとに、複数のスライス復号部のそれぞれの復号開始タイミングを決定する。
【００１３】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１４】
画面を分割して並列処理する場合にて、符号化効率の低下を抑制するとともに、復号側でも遅延の増大を抑制することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態１に係る画像符号化装置の構成例を示すブロック図である。
【図２】図１の画像符号化装置を構成するスライスデータ符号化部の構成例を示すブロック図である。
【図３】図１の画像符号化装置、画像符号化方法及び画像符号化プログラムの処理手順を説明するためのフローチャートである。
【図４】実施の形態１に係る画像を４つのスライスに分割した一例を示す図である。
【図５】実施の形態１に係る画面内のマクロブロックの符号化／復号順序とイントラ予測の方向を説明するための図である。図５（ａ）は、左上から右下に符号化／復号する例を示し、図５（ｂ）は、左下から右上に符号化／復号する例を示し、図５（ｃ）は、右上から左下に符号化／復号する例を示し、図５（ｄ）は、右下から左上に符号化／復号する例を示す。
【図６】本発明の実施の形態１に係る画像復号装置の構成例を示すブロック図である。
【図７】図６の画像復号装置を構成するスライスデータ復号部の構成例を示すブロック図である。
【図８】図６の画像復号装置、画像復号方法及び画像復号プログラムの処理手順を説明するためのフローチャートである。
【図９】実施の形態１の変形例に係る画像を４つのスライスに分割した一例を示す図である。
【図１０】本発明の実施の形態２に係る画像符号化装置の構成例を示すブロック図である。
【図１１】図１０の画像符号化装置を構成するスライスデータ符号化部の構成例を示すブロック図である。
【図１２】図１０の画像符号化装置、画像符号化方法及び画像符号化プログラムの処理手順を説明するためのフローチャートである。
【図１３】実施の形態２に係る画像を４つのスライスに分割した一例を示す図である。
【図１４】実施の形態２に係る画像を３つのスライスに分割した一例を示す図である。
【図１５】コンテキスト変数情報の管理テーブルの一例を示す図である。
【図１６】本発明の実施の形態２に係る画像復号装置の構成例を示すブロック図である。
【図１７】図１６の画像復号装置を構成するスライスデータ復号部の構成例を示すブロック図である。
【図１８】図１６の画像復号装置、画像復号方法及び画像復号プログラムの処理手順を説明するためのフローチャートである。
【発明を実施するための形態】
【００１６】
以下、図面と共に本発明の各実施の形態を説明する。まず、本発明の実施の形態に係る画像符号化装置、方法、及びプログラムについて図面を参照しながら説明する。
【００１７】
図１は、本発明の実施の形態１に係る画像符号化装置１００の構成例を示すブロック図である。図２は、図１の画像符号化装置１００を構成するスライスデータ符号化部１０５、１０６、１０７、１０８の構成例を示すブロック図である。図３は、図１の画像符号化装置１００、画像符号化方法及び画像符号化プログラムの処理手順を説明するためのフローチャートである。なお、本実施の形態ではＡＶＣ／Ｈ.２６４符号化方式をベースとする画像符号化装置１００を説明する。
【００１８】
図１、図２に示す構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００１９】
図１に示すように、画像符号化装置１００は、符号化管理部１０１、符号化ビット列生成部１０２、画像バッファ１０３、スライスデータ分割部１０４、スライスデータ符号化部１０５、１０６、１０７、１０８、符号化ビット列多重化部１０９及び復号画像バッファ１１０を備える。図１において、Ｍ（ｖ）（ｖ＝０、１、２、３）は、画像符号化装置１００に供給される画像が分割された各スライスデータを示しており、ｖはスライスを特定するためのスライスＩＤを示している。また、Ｓ（ｖ）（ｖ＝０、１、２、・・・）は、符号化の結果得られる各スライスの符号化ビット列を示している。以下、スライスＩＤがｖのスライスをスライスｖとする。図１ではｖ＝０、１、２、３の４スライス（スライス０、スライス１、スライス２、スライス３）に分割した例を描いている。なお、スライスの分割数は４に限るものではない。
【００２０】
図１の画像符号化装置１００を構成するスライスデータ符号化部１０５、１０６、１０７、１０８はそれぞれ同一構成である。図２に示すように、スライスデータ符号化部１０５、１０６、１０７、１０８はそれぞれ、スライスデータバッファ２０１、イントラ予測部２０２、符号化モード判定部２０３、残差信号演算部２０４、残差信号符号化部２０５、残差信号復号部２０６、残差信号重畳部２０７、復号スライスデータバッファ２０８、符号化ビット列生成部２０９、インター予測部２１０、スイッチ２１１、２１２、２１３、２１４、２１５を備える。
【００２１】
なお、スイッチ２１１を経由して他のスライスデータ符号化部からイントラ予測用の参照画素信号Ｒ（ｖ'）が入力され、スイッチ２１２を経由して他のスライスデータ符号化部へイントラ予測用の参照画素信号Ｒ（ｖ）が出力される。また、スイッチ２１４を経由して他のスライスデータ符号化部から動きベクトル予測用の動きベクトルが入力され、スイッチ２１５を経由して他のスライスデータ符号化部へ動きベクトル予測用の動きベクトルが出力される。
【００２２】
スライスデータ分割部１０４は、画面を複数のスライスに分割する。スライスデータ符号化部１０５、１０６、１０７、１０８は、スライスデータ分割部１０４により分割された複数のスライスを並列に符号化する。スライスデータ符号化部１０５、１０６、１０７、１０８の少なくとも一つは、符号化すべき対象スライスを、それに隣接する隣接スライスの符号化により得られる情報を参照して、符号化する。
【００２３】
例えば、スライスデータ符号化部１０５、１０６、１０７、１０８の少なくとも一つは、上記対象スライスの上記隣接スライスと接している対象ブロックの画素信号をイントラ予測符号化する際、当該隣接スライスの当該対象ブロックと接している隣接ブロックの画素信号を参照候補とすることができる。また、スライスデータ符号化部１０５、１０６、１０７、１０８の少なくとも一つは、上記対象スライスの上記隣接スライスと接している対象ブロックの動きベクトルを予測符号化する際、当該隣接スライスの当該対象ブロックと接している隣接ブロックの動きベクトルを参照することができる。これらの処理の詳細は後述する。
【００２４】
符号化ビット列生成部１０２は、主に、符号化に関するパラメータを符号化するパラメータ符号化部として機能する。当該符号化に関するパラメータの一つとして、複数のスライス間の参照依存関係を示す情報を符号化することができる。
【００２５】
次に、図１に示す画像符号化装置１００の動作について、図３のフローチャートを参照しながら説明する。図１において、符号化管理部１０１は、外部から設定された符号化パラメータをもとに、必要に応じて新たにパラメータを計算し、シーケンス全体に関連する情報、ピクチャに関連する情報、及びピクチャのスライスに関連する情報の管理を含む符号化に関する管理を行う。
【００２６】
また、符号化管理部１０１は、撮影／表示時間順に入力された画像のインター予測における参照依存関係及び符号化順序を管理するとともに、スライスデータＭ（０）、Ｍ（１）、Ｍ（２）、Ｍ（３）のイントラ予測及び動きベクトル予測における参照依存関係、並びに各スライスの符号化／復号順序を管理する。イントラ予測及び動きベクトル予測における参照依存関係について以下の管理を行う。すなわち、スライス単位で対象画像を符号化する際に、他のスライスデータの復号画像信号を参照用として用いるイントラ予測、または動きベクトル予測を行うか否かについて管理する。
【００２７】
また、符号化管理部１０１は、対象画像を符号化後に復号して得られる復号画像信号が、他のスライスの画像を符号化する際にイントラ予測、または動きベクトル予測の参照画像信号として用いられるか否かについて管理する。また、スライスの符号化／復号順序について以下の管理を行う。すなわち、上記参照依存関係において、復号側で、復号する符号化ビット列の画像が参照する参照スライスが復号された後に復号を開始できるようにスライスの空間的な符号化／復号順序を管理する。
【００２８】
さらに、符号化管理部１０１は、上述した管理を行うための情報を符号化ビット列生成部１０２に供給すると共に、スライスデータ分割部１０４、スライスデータ符号化部１０５、１０６、１０７、１０８を制御する。
【００２９】
ここで、各スライスデータを符号化、及び符号化された符号化ビット列を復号する際のスライス間の参照依存関係、並びに符号化／復号順序について、４つのスライスに分割して符号化する場合を例にとって説明する。本実施の形態では、スライスを構成する複数のブロックの符号化順序として、複数のスキャンモードが設定されている。スライスデータ符号化部１０５、１０６、１０７、１０８はそれぞれ、他のスライスデータ符号化部により参照されるブロックの符号化順序が参照されない符号化順序よりも先にくるスキャンモードで、符号化する。符号化ビット列生成部１０２は、上記符号化に関するパラメータの一つとして、各スライスの符号化順序を示す情報を符号化する。以下、具体例を参照しながら説明する。
【００３０】
図４は、実施の形態１に係る画像を４つのスライスに分割した一例を示す図である。図５は、実施の形態１に係る画面内のマクロブロックの符号化／復号順序とイントラ予測の方向を説明するための図である。図５（ａ）は、左上から右下に符号化／復号する例を示し、図５（ｂ）は、左下から右上に符号化／復号する例を示し、図５（ｃ）は、右上から左下に符号化／復号する例を示し、図５（ｄ）は、右下から左上に符号化／復号する例を示す。
【００３１】
ここで、従来のＡＶＣ／Ｈ.２６４符号化方式の符号化／復号順序、及びイントラ予測、動きベクトル予測について図５（ａ）を参照して説明する。図５（ａ）に示すように、ＡＶＣ／Ｈ.２６４符号化方式では、スライスの最も左上のマクロブロックから主走査方向を左から右、副走査方向を上から下に符号化／復号する。また、イントラ予測の際には、対象ブロックに対して、既に復号済みの左上、上、右上、左の４つのブロックを参照して、画素値を予測する。ただし、スライスの境界に接しているブロックで、参照するブロックがない場合は、イントラ予測の候補から除外する。また、動きベクトル予測の際には、対象ブロックに対して、既に復号済みの上、右上、左の３つのブロックの動きベクトルの中央値を用いて予測する。ただし、スライスの境界に接しているブロックで、参照するブロックがない場合や、符号化するブロックが正方形でない場合は例外的な処理法が用いられる。
【００３２】
本実施の形態においては、符号化／復号の開始マクロブロック、符号化／復号順序を変更したスキャンモードを用意する。用意するスキャンモードは、図５（ａ）に示す従来のＡＶＣ／Ｈ．２６４符号化方式と同様のスライスの最も左上のマクロブロックから主走査方向を左から右、副走査方向を上から下に符号化／復号するスキャンモードＡに加えて、図５（ｂ）に示すスライスの最も左下のマクロブロックから主走査方向を左から右、副走査方向を下から上に符号化／復号するスキャンモードＢ、図５（ｃ）に示すスライスの最も右上のマクロブロックから主走査方向を右から左、副走査方向を上から下に符号化／復号するスキャンモードＣ、及び図５（ｄ）に示すスライスの最も右下のマクロブロックから主走査方向を右から左、副走査方向を下から上に符号化／復号するスキャンモードＤである。
【００３３】
図５（ａ）に示すスキャンモードＡでは、従来のＡＶＣ／Ｈ．２６４符号化方式と同様に、対象ブロックに対して、既に復号済みの左上、上、右上、左の４つのブロックを参照して、イントラ予測を行い、上、右上、左の３つのブロックの動きベクトルの中央値を用いて動きベクトル予測を行う。また、図５（ｂ）に示すスキャンモードＢでは、対象ブロックに対して、既に復号済みの左下、下、右下、左の４つのブロックを参照してイントラ予測を行い、下、右下、左の３つのブロックの動きベクトルの中央値を用いて動きベクトル予測を行う。また、図５（ｃ）に示すスキャンモードＣでは、対象ブロックに対して、既に復号済みの右上、上、左上、右の４つのブロックを参照してイントラ予測を行い、上、左上、右の３つのブロックの動きベクトルの中央値を用いて動きベクトル予測を行う。また、図５（ｄ）に示すスキャンモードＤでは、対象ブロックに対して、既に復号済みの右下、下、左下、右の４つのブロックを参照してイントラ予測を行い、下、左下、右の３つのブロックの動きベクトルの中央値を用いて動きベクトル予測を行う。
【００３４】
イントラ予測モードに関しては従来のイントラ予測モードをそのまま用い、上記スキャンモードと当該イントラ予測モードを組み合わせて、イントラ予測の方向を決定する。スキャンモードＡでは従来と同様の方向でイントラ予測を行う。スキャンモードＢでは、従来のイントラ予測の方向を上下反転させて、即ち、従来の左上、上、右上、左からの予測をそれぞれ左下、下、右下、左からの予測とする。スキャンモードＣでは、従来のイントラ予測の方向を左右反転させて、即ち、従来の左上、上、右上、左からの予測をそれぞれ右上、上、左上、右からの予測とする。スキャンモードＤでは、従来のイントラ予測の方向を１８０°回転させて、即ち、従来の左上、上、右上、左からの予測をそれぞれ右下、下、左下、右からの予測とする。
【００３５】
スライス０のデータは、すべてのマクロブロックにおいて他のスライスデータを参照せず符号化する。本明細書では他のスライスの復号画像信号をイントラ予測、動きベクトル予測のために参照しないスライスを基底スライスと定義し、少なくとも基底スライスを１つ以上設定する。ただし、従来のＡＶＣ／Ｈ．２６４符号化方式では、最も左上のマクロブロックから主走査方向を左から右、副走査方向を上から下に符号化／復号するのに対して、本実施の形態では、図４に示したスライス０はスキャンモードＤを用いて、最も右下のマクロブロックＡから主走査方向を右から左、副走査方向を下から上に符号化／復号する。スライス１はスキャンモードＢを用いて、最も左下のマクロブロックＥから主走査方向を左から右、副走査方向を下から上に符号化／復号する。スライス２はスキャンモードＣを用いて、最も右上のマクロブロックＩから主走査方向を右から左、副走査方向を上から下に符号化／復号する。スライス３はスキャンモードＡを用いて、従来のＡＶＣ／Ｈ．２６４符号化方式と同様に最も左上のマクロブロックＭから主走査方向を左から右、副走査方向を上から下に符号化／復号する。
【００３６】
図４においては、スライス０が基底スライスとなり、スライス０以外のスライス１、スライス２、スライス３の境界に接するマクロブロックでは、他のスライスの復号画像信号から予測する、イントラ予測や動きベクトル予測を用いている。例えば、スライス１の最も左端のマクロブロックは、スライス０の最も右端のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。また、スライス２の最も上のマクロブロックは、スライス０の最も下のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。また、スライス３の最も上のマクロブロックは、スライス１の最も下のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。スライス３の最も左端のマクロブロックは、スライス２の最も右端のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。特に、スライス３の最も左上のマクロブロックＭは、スライス０のマクロブロックＡ、スライス１のマクロブロックＥ、Ｆ及びスライス２のマクロブロックＩを、イントラ予測の参照画像信号の候補とする。
【００３７】
基底スライスであるスライス０の符号化ビット列は、他のスライスに依存することなく復号できる。これに対し、スライス０以外のスライス１、スライス２、スライス３は、他のスライスの復号画像信号から予測するイントラ予測や動きベクトル予測を用いるため、復号の際には参照するスライスに依存する。例えば、スライス１の最も左端のマクロブロックは、それぞれスライス０の復号画像信号を参照画像信号としてイントラ予測や動きベクトル予測を行う。
【００３８】
従って、スライス１、スライス２のデータが符号化された符号化ビット列を復号する際には、それぞれの参照スライスとして用いるスライス０の符号化ビット列と同時に復号を開始することはできない。イントラ予測を行う場合には、それぞれのイントラ予測の参照画像信号となるマクロブロックの画像信号の復号処理が完了し、参照することができるようになるまで待機させる必要がある。また、インター予測により生成される動きベクトル予測を行う場合には、それぞれの参照するブロックの動きベクトルの復号処理が完了し、参照することができるようになるまで待機させる必要がある。
【００３９】
さらに、スライス３のデータが符号化された符号化ビット列を復号する際には、それぞれの参照スライスとして用いるスライス０、スライス１、スライス２の符号化ビット列と同時に復号を開始することはできない。それぞれのイントラ予測の参照画像信号となるマクロブロックの画像信号の復号処理、または、参照するブロックの動きベクトルの復号処理が完了し、それらのデータを参照することができるようになるまで待機させる必要がある。
【００４０】
その条件を満たすためには、スライス１の符号化ビット列の復号にはスライス０に対して少なくとも１マクロブロックを復号する時間分の遅延が必要である。また、スライス２の符号化ビット列の復号にはスライス０に対して少なくとも２マクロブロックを復号する時間分の遅延が必要である。また、スライス３の符号化ビット列の復号にはスライス０に対して少なくとも１マクロブロック、スライス１に対して少なくとも２マクロブロック、スライス２に対して少なくとも１マクロブロックを復号する時間分の遅延が必要である。
【００４１】
本実施の形態では、異なる符号化／復号順序の４つのスキャンモードを用意することにより、従来手法に比べて並列処理における遅延時間を短く設定することができる。従来手法の符号化／復号順序では、例えば、スライス１の最も下のマクロブロックを復号してからでないと、スライス３の復号を開始することができないため、長い遅延時間を必要とするからである。
【００４２】
本実施の形態では、符号化時に、各スライスに対応するスライス参照依存情報を符号化する。これにより、復号側で各スライスを並列処理によりリアルタイムに復号する際に、そのスライス参照依存情報により基底スライスの復号開始時刻（タイミング）に対する各スライスの復号開始時刻（タイミング）の遅延時間を容易に認識することができる。そして、当該スライス参照依存情報に応じて、各スライスの復号開始時刻（タイミング）を遅延させて符号化ビット列の復号を開始する。これにより、スライス間の同期を取ることができ、イントラ予測を用いる画像の復号時に、参照画像となる他のスライスの画像の復号処理、または、参照するブロックの動きベクトルの復号処理が完了していることを保証することができる。
【００４３】
また、符号化時に、スライス参照依存情報により基底スライスの復号開始時刻（タイミング）に対する各スライスの復号開始時刻（タイミング）や遅延時間（遅延量）を符号化してもよい。その符号化された遅延時間（遅延量）に応じて、各スライスの復号開始時刻（タイミング）を遅延させて符号化ビット列の復号を開始する。これにより、スライス間の同期を取ることができる。イントラ予測を用いる画像の復号時に、参照画像となる他のスライスの画像の復号処理が完了していることを保証する値を、復号開始時刻（タイミング）や遅延時間（遅延量）として設定する。復号開始時刻（タイミング）や遅延時間（遅延量）の単位には、例えば１つのマクロブロックを復号する時間を用いることができる。
【００４４】
次に、上記のスキャンモードを符号化する方法について説明する。スキャンモードを符号化する方法には、各スライスのスキャンモードを纏めてシーケンス全体に関連するパラメータとして符号化する方法と、スキャンモードをスライス毎に独立でそれぞれ符号化する方法がある。
【００４５】
図１に戻る。符号化ビット列生成部１０２は、符号化管理部１０１から供給されるシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータ、補足付加情報等のそれぞれのパラメータを符号化して符号化ビット列を生成する（図３のステップＳ１０１）。ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳ、ＰＰＳ、ＳＥＩ情報を符号化した符号化ビット列を生成する。
【００４６】
本実施の形態では復号側で各スライスが基底スライスか否かを判別する必要があるため、復号側で各スライスについて基底スライスか否かを判別することができるパラメータを直接的に符号化するか、または他の符号化パラメータから計算できるように間接的に符号化する必要がある。
【００４７】
また、各スライスのスライス参照依存情報、スキャンモードを纏めてシーケンス全体に関連するパラメータとして符号化する場合は、各スライスのスライス参照依存情報を符号化する。ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳのパラメータの一つとして符号化される。ここで、符号化するスライス参照依存情報は、各スライスを特定するスライスＩＤと、どのスライスを参照するかを特定する参照スライスのスライスＩＤである。
【００４８】
画像符号化装置１００に供給される画像データは、撮影／表示時間順に画像バッファ１０３に格納される（図３のステップＳ１０３）。スライスデータ分割部１０４は、符号化管理部１０１により制御され、復号時間順に画像をスライスに分割し、スライスデータ符号化部１０５、１０６、１０７、１０８に供給する（図３のステップＳ１０５）。
【００４９】
スライスデータ符号化部１０５は、符号化管理部１０１により制御され、入力されるスライスデータＭ（０）を符号化し、符号化ビット列Ｓ（０）を得る（図３のステップＳ１０４〜Ｓ１１９）。同様に、スライスデータ符号化部１０６、１０７、１０８も、符号化管理部１０１により制御され、それぞれ入力されるスライスデータＭ（１）、スライスデータＭ（２）及びスライスデータＭ（３）を符号化し、符号化ビット列Ｓ（１）、符号化ビット列Ｓ（２）及び符号化ビット列Ｓ（３）を得る（図３のステップＳ１０４〜Ｓ１１９）。
【００５０】
スライスデータ符号化部１０６、１０７はそれぞれ、スライスデータ符号化部１０５から供給される境界近傍の参照画素信号Ｒ（０）を用いて符号化する。スライスデータ符号化部１０８は、スライスデータ符号化部１０５、１０６、１０７からそれぞれ供給される参照画素信号Ｒ（０）、Ｒ（１）、Ｒ（２）を用いて符号化する。符号化／復号順序、イントラ予測、動きベクトル予測の方向は異なるが、スライスデータ符号化部１０５、１０６、１０７、１０８は共通の符号化方法で符号化することができる。
【００５１】
次に、スライスデータ符号化部１０５、１０６、１０７、１０８の構成について図２を用いて説明する。符号化管理部１０１による制御は、図２に示したスライスデータ符号化部１０５、１０６、１０７、１０８を構成するすべてのブロックに対して及ぶ。符号化管理部１０１の制御により、スイッチ２１１、２１４をオフにして、他のスライスを参照するイントラ予測、動きベクトル予測の機能を停止し、スイッチ２１２、２１５をオンにした場合、スライスデータ符号化部１０５と等価となる。また、符号化管理部１０１の制御により、スイッチ２１１、２１２、２１４、２１５をすべてオンにした場合、スライスデータ符号化部１０６、１０７と等価となる。また、スイッチ２１１、２１４をオンにし、スイッチ２１２、２１５をオフにした場合、スライスデータ符号化部１０８と等価となる。
【００５２】
図１のスライスデータ分割部１０４は、画面を４つのスライスデータに分割する（図３のステップＳ１０５）。図２のスライスデータバッファ２０１は、スライスデータ分割部１０４から供給されるスライスデータＭ（ｖ）（ｖ＝０、１、２、３）を格納する。また、符号化管理部１０１は、１つの画像を１つのアクセス・ユニットと呼ばれる単位で管理し（図３のステップＳ１０４〜Ｓ１１９）、さらにアクセス・ユニットをピクチャのスライスに分割して管理する（図３のステップＳ１０５〜Ｓ１１７）。
【００５３】
符号化ビット列生成部２０９は、符号化管理部１０１で管理されるそれぞれのピクチャのスライスに関連する情報を、スライス毎に符号化ビット列に符号化する（図３のステップＳ１０６）。ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニットとして符号化する。
【００５４】
ここで、スライスを特定するための上記スライスＩＤも、ピクチャのスライスに関連する情報として符号化する。また、スキャンモードをスライス毎に独立で符号化する場合、ピクチャのスライスに関連するパラメータの一つとして、当該スライスが採用するスキャンモードを符号化する。さらに、符号化ビット列生成部２０９は、符号化モード、動きベクトル、符号化残差信号等の画素ブロックの情報を符号化するが、それについては後述する。符号化残差信号とは、符号化された予測残差信号を指す。
【００５５】
スライスデータバッファ２０１は、符号化管理部１０１で管理される符号化／復号順序に応じて、格納されたスライスデータを画素ブロック単位でイントラ予測部２０２及び残差信号演算部２０４に供給する。また、Ｐスライス、Ｂスライス等のインター予測を行う場合はインター予測部２１０にも供給する。
【００５６】
イントラ予測部２０２は、従来のＡＶＣ／Ｈ．２６４符号化方式等と同様に、スライス内の符号化済みのブロックの復号画素を参照画素として、イントラ予測を行う。それに加えて、基底スライス以外のスライスでは、スライス境界のマクロブロックについて、隣接するスライスの符号化済みのブロックの復号画素を参照画素として、イントラ予測を行う（図３のステップＳ１０８）。イントラ予測では、隣接するスライスの参照画素を用いない場合、後述する復号スライスデータバッファ２０８から供給される符号化／復号順序で、前のブロックの復号画素を参照画素として用いる。隣接するスライスの参照画素を用いる場合、スイッチ２１１を経由して供給される参照画素信号Ｒ（ｖ'）を用いる。
【００５７】
インター予測部２１０は、符号化管理部１０１の制御に応じて、スライスデータバッファ２０１から供給される画素ブロックと、復号画像バッファ１１０から供給される参照画像との間でブロックマッチングを行い、動きベクトルを検出する。その動きベクトルを用いてインター予測ブロック信号を作成して、インター予測ブロック信号及び動きベクトルを符号化モード判定部２０３に供給する（図３のステップＳ１０９）。
【００５８】
イントラ予測、インター予測のどちらの手法を行うか、参照画像の数、どの復号画像を参照画像とするか、画素ブロックのサイズ等の候補の組み合わせは、符号化管理部１０１で制御される。この制御に応じて、イントラ予測部２０２またはインター予測部２１０は、イントラ／インター予測に関するすべての符号化モードの候補となるすべての組み合わせについて、イントラ予測またはインター予測を行う。イントラ予測部２０２またはインター予測部２１０は、その予測結果として、符号化モード情報、それぞれのイントラ予測／インター予測ブロック信号、及び動きベクトルを符号化モード判定部２０３に供給する。
【００５９】
ここで、上記画素ブロックのサイズの候補とは、画素ブロックを更に分割したそれぞれの小ブロックのことである。例えば、画素ブロックを水平方向１６画素、垂直方向１６画素（すなわち、１６×１６）とした場合、８×８、４×４等の小ブロックに分割してイントラ予測を行い、候補とする。また、１６×８、８×１６、８×８、８×４、４×８、４×４等の小ブロックに分割してインター予測を行い、候補とする。
【００６０】
符号化モード判定部２０３は、イントラ予測またはインター予測のどちらの手法を、どの参照画像を用いて、どのような画素ブロック単位で選択、組み合わせると効率の良い符号化が実現できるかを判定することにより、符号化モードを決定する。例えば、レート歪み理論にしたがい、符号量及び歪みの関係が最適な組み合わせを選択する。符号化モード判定部２０３は、得られた符号化モード及び動きベクトルを、符号化ビット列生成部２０９に供給する。それと共に、当該予測ブロック信号を選択、または必要に応じて生成し、残差信号演算部２０４に供給する（図３のステップＳ１１０）。
【００６１】
残差信号演算部２０４は、スライスデータバッファ２０１から供給される符号化対象のスライスデータＭ（ｖ）の信号から、符号化モード判定部２０３から供給される予測信号を減算することにより、予測残差信号を得て残差信号符号化部２０５へ出力する（図３のステップＳ１１１）。残差信号符号化部２０５は、入力された予測残差信号に対して直交変換、量子化等の残差信号符号化処理を行い、符号化残差信号を算出する（図３のステップＳ１１２）。
【００６２】
残差信号復号部２０６は、符号化残差信号を復号し（図３のステップＳ１１３）、それにより得られた復号画像信号を、残差信号重畳部２０７を介して復号スライスデータバッファ２０８に供給するとともに、当該復号画像バッファ１１０に画素ブロック単位で順次格納する（図３のステップＳ１１４〜Ｓ１１６）。
【００６３】
より具体的には、残差信号復号部２０６は、残差信号符号化部２０５から入力された符号化残差信号に対して、逆量子化、逆直交変換等の残差信号復号処理を行い、復号残差信号を生成する（図３のステップＳ１１３）。残差信号重畳部２０７は、符号化モード判定部２０３から供給される予測信号に、残差信号復号部２０６から供給される復号残差信号を重畳して復号画像信号を算出する（図３のステップＳ１１４）。残差信号重畳部２０７は、その復号画像信号を復号スライスデータバッファ２０８に順次格納する（図３のステップＳ１１５）。
【００６４】
この復号スライスデータバッファ２０８に格納された復号画像信号は、必要に応じて、符号化順で後に続く画像の、イントラ予測の参照となる。残差信号重畳部２０７は、当該復号画像信号を復号画像バッファ１１０にも画素ブロック単位で順次格納する（図３のステップＳ１１６）。この復号画像バッファ１１０に格納された復号画像信号は、必要に応じて、符号化順で後に続く画像の、インター予測の参照画像となる。
【００６５】
符号化ビット列生成部２０９は、符号化モード判定部２０３から入力される符号化モード及び動きベクトル、残差信号符号化部２０５から入力される符号化残差信号等を、算術符号化等のエントロピー符号化を用いて順次符号化し、符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、３）を生成する（図３のステップＳ１１７）。
【００６６】
なお、符号化ビット列生成部２０９が動きベクトル予測を用いて動きベクトルを符号化する際に、他のスライスの動きベクトルを参照する場合、スイッチ２１４を経由して、他のスライスの動きベクトルが入力される。
【００６７】
以上、ステップＳ１０８からステップＳ１１７までの処理を、画素ブロック単位で、ピクチャのスライス内のすべての画素ブロックの符号化が完了するまで繰り返す（図３のステップＳ１０７〜Ｓ１１８）。また、ステップＳ１０５からステップＳ１１８までの処理を、アクセス・ユニット内の全てのスライスの符号化が完了するまで繰り返す（図３のステップＳ１０４〜Ｓ１１９）。さらに、ステップＳ１０３からステップＳ１１９までの処理を、各プロセスの符号化対象画像（アクセス・ユニット）毎に繰り返す（図３のステップＳ１０２〜Ｓ１２０）。
【００６８】
再び、図１に戻る。符号化ビット列生成部１０２からシーケンス情報、ピクチャ情報、補足付加情報等の符号化ビット列が出力され、スライスデータ符号化部１０５、１０６、１０７、１０８から各スライスの符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）が出力される。符号化ビット列多重化部１０９は、これらを必要に応じて多重化し、１本の符号化ビット列にする。多重化しない場合、上記の各符号化ビット列は、独立した符号化ビット列として出力される。
【００６９】
次に、本発明の実施の形態１に係る画像復号装置、方法、及びプログラムについて説明する。実施の形態１に係る画像復号装置は、上述した実施の形態１に係る画像符号化装置により符号化された符号化ビット列を、スライス毎に並列処理によりリアルタイムに復号する装置である。
【００７０】
図６は、本発明の実施の形態１に係る画像復号装置３００の構成例を示すブロック図である。図７は、図６の画像復号装置３００を構成するスライスデータ復号部３０６、３０９、３１２、３１５の構成例を示すブロック図である。図８は、図６の画像復号装置３００、画像復号方法及び画像復号プログラムの処理手順を説明するためのフローチャートである。図６の画像復号装置３００は、図１の画像符号化装置１００と同様に、ＡＶＣ／Ｈ．２６４符号化方式をベースとし、並列処理を実現する画像復号装置であるものとして説明する。
【００７１】
図６、図７に示す構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００７２】
図６に示すように、画像復号装置３００は、符号化ビット列復号部３０１、３０４、３０７、３１０、３１３、復号管理部３０２、分離部３０３、バッファ３０５、３０８、３１１、３１４、スライスデータ復号部３０６、３０９、３１２、３１５及び復号画像バッファ３１６を備える。符号化ビット列復号部３０４、３０７、３１０、３１３に供給される符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、３）は、図１の画像符号化装置１００によりスライス毎に生成された各スライスの符号化ビット列（以下適宜、符号化スライスともいう）である。Ｍ’（ｖ）（ｖ＝０、１、２、３）は復号の結果、出力される画像の各スライスデータである。図６ではｖ＝０、１、２、３の４スライスに分割した例を図示している。
【００７３】
また、符号化ビット列復号部３０１に供給される符号化ビット列（シーケンス・パラメータ等）は、図１の画像符号化装置１００により生成されたシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータ、補足付加情報等のそれぞれのパラメータを符号化して得られた符号化ビット列である。
【００７４】
また、画像復号装置３００の一部を構成するスライスデータ復号部３０６、３０９、３１２、３１５はそれぞれ同一構成である。図７に示すように、スライスデータ復号部３０６、３０９、３１２、３１５はそれぞれ、符号化ビット列復号部４０１、イントラ予測部４０２、残差信号復号部４０４、残差信号重畳部４０５、復号スライスデータバッファ４０６、インター予測部４０７、スイッチ４０８、４０９、４１０、４１１、４１２、４１３、４１４を備える。
【００７５】
なお、スイッチ４０９を経由して他のスライスデータ復号部から、イントラ予測用の参照画素信号Ｒ（ｖ’）が入力され、スイッチ４１０を経由して他のスライスデータ復号部へイントラ予測用の参照画素信号Ｒ（ｖ）が出力される。また、スイッチ４１３を経由して他のスライスデータ復号部から動きベクトル予測用の動きベクトルが入力され、スイッチ４１４を経由して他のスライスデータ復号部へ動きベクトル予測用の動きベクトルが出力される。
【００７６】
分離部３０３は、画面を複数のスライスに分割し、その複数のスライスが並列に符号化された複数の符号化スライスを分離する。スライスデータ復号部３０６、３０９、３１２、３１５は、分離部３０３により分離された複数の符号化スライスを並列に復号する。符号化ビット列復号部３０１は、主に、符号化に関するパラメータが符号化された符号化パラメータを復号するパラメータ復号部として機能する。復号管理部３０２は、符号化ビット列復号部３０１により復号された符号化に関するパラメータに応じて、スライスデータ復号部３０６、３０９、３１２、３１５による復号を管理する。
【００７７】
例えば、復号管理部３０２は、当該符号化に関するパラメータに含まれる上述した複数のスライス間の参照依存関係を示す情報をもとに、スライスデータ復号部３０６、３０９、３１２、３１５のそれぞれの復号開始タイミングを決定する。その際、復号管理部３０２は、隣接スライスの符号化により得られる情報を参照せずに符号化された基底符号化スライス以外の符号化スライスの復号開始タイミングを、当該基底符号化スライスの復号開始タイミングに対して、当該参照依存関係を示す情報にもとづいて決定される時間、遅延させる。
【００７８】
また、復号管理部３０２は、対象ブロックの画素信号または動きベクトルの復号を、隣接スライス内の当該対象ブロックと隣接する隣接ブロックの画素信号または動きベクトルの復号が終了するまで、待機させる。復号管理部３０２は、それぞれ該当するスライスデータ復号部に待機を指示する。また、復号管理部３０２は、上記符号化に関するパラメータに含まれる各スライスの符号化順序を示す情報をもとに、スライスデータ復号部３０６、３０９、３１２、３１５に各スライスの復号順序を指定する。これらの処理の詳細は後述する。
【００７９】
次に、図６に示す画像復号装置３００の動作について、図８のフローチャートを参照しながら説明する。まず、本実施の形態に係る画像復号装置３００に供給される符号化ビット列が多重化されている場合、分離部３０３はＡＶＣ／Ｈ．２６４符号化方式のＮＡＬユニット単位で分離する。その際、ＮＡＬユニットのヘッダ部分を復号して、ＮＡＬユニットの種類を判別し、分離する。
【００８０】
ＮＡＬユニットがシーケンス全体に関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳ）、ピクチャに関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＰＰＳ）、補足付加情報（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＥＩ）の場合、符号化ビット列復号部３０１に供給される。ＮＡＬユニットがピクチャのスライスデータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニット）の場合、分離部３０３は、スライスデータに係る符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）を、スライスＩＤに応じた符号化ビット列復号部３０４、３０７、３１０、３１３に供給する。
【００８１】
図６において、符号化ビット列復号部３０１は、図１の画像符号化装置１００により符号化された符号化ビット列を復号する（図８のステップＳ２０１）。ここで、復号する符号化ビット列は、シーケンス全体に関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳ）、ピクチャに関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＰＰＳ）、補足付加情報（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＥＩ）等である。
【００８２】
各スライスのスライス参照依存情報、スキャンモードを纏めてシーケンス全体に関連するパラメータとして符号化された符号化ビット列が供給される場合、符号化ビット列復号部３０１は、各スライスのスライス参照依存情報、スキャンモードを復号する。ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳのパラメータの一つとして復号する。復号されたシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータ、補足付加情報等は、復号管理部３０２にそれぞれ供給される。
【００８３】
復号管理部３０２は、供給される参照依存情報、スキャンモードから各プロセス（実施の形態１に係る画像復号装置３００では、スライスデータ復号部３０６、３０９、３１２、３１５に相当する）の復号開始タイミングを算出する（図８のステップＳ２０２）。なお、復号開始時刻（タイミング）や遅延時間（遅延量）が符号化される手法では、これらのパラメータが復号され、このパラメータの値に応じて各プロセスが復号を行う。
【００８４】
この処理に続く以下の処理（図８のＳ２０３〜Ｓ２１７）は、プロセス毎に並列で処理される。まず、符号化ビット列復号部３０４、３０７、３１０、３１３は、各スライス毎に供給される符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）内の所定のデータを復号する（図８のステップＳ２０４）。ここで、符号化ビット列復号部３０４、３０７、３１０、３１３が復号するデータは、ピクチャのスライスに関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニットのヘッダ及びスライス・ヘッダとして符号化されたパラメータ）であり、画素ブロックに関連する符号化モード、動きベクトル、符号化残差信号等は、ここでは復号されない。なお、符号化残差信号は量子化されたＤＣＴ係数で規定される。
【００８５】
各スライスのスライス参照依存情報、スキャンモードがスライス毎に独立で符号化された符号化ビット列が供給される場合、符号化ビット列復号部３０４、３０７、３１０、３１３は、ピクチャのスライスに関連するパラメータの一つとして、各スライスのスライス参照依存情報、スキャンモードを復号する。スライス毎に復号されたピクチャのスライスに関連するパラメータは、復号管理部３０２に供給される。復号管理部３０２は、それらのパラメータを管理し、新たなパラメータが設定されると、現在のパラメータの値を新たなパラメータの値に更新する。
【００８６】
符号化ビット列復号部３０４、３０７、３１０、３１３は、ここでは復号しない画素ブロックに関連する符号化モード、動きベクトル、符号化残差信号等の符号化ビット列を随時、バッファ３０５、３０８、３１１、３１４に供給する（図８のステップＳ２０５）。
【００８７】
上述したように、各スライスのスライス参照依存情報、スキャンモードがスライス毎に、例えばスライス・ヘッダで符号化されている場合、復号管理部３０２は、符号化ビット列復号部３０１から供給されるシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータと、符号化ビット列復号部３０４、３０７、３１０、３１３から供給される復号されたピクチャのスライスに関連するパラメータとに基づいて、復号に関する管理を行う。
【００８８】
本実施の形態では、基底スライスの復号開始時刻（タイミング）に対して、基底スライスではない他のスライスの復号開始時刻（タイミング）を遅延させる。したがって、復号管理部３０２は、供給されたパラメータを基に、各スライスが基底スライスか否かを判別して、各プロセスを管理する。
【００８９】
復号管理部３０２は、各スライスが基底スライスであるか否かを、スライス参照依存情報に基づいて判断する。参照するスライスを持たないスライスが基底スライスである。また、復号管理部３０２は、符号化ビット列復号部３０４、３０７、３１０、３１３から供給されるスライス参照依存情報に基づいて、各スライスの復号開始時刻（タイミング）を管理する（この場合、ステップＳ２０２がステップＳ２０４とＳ２０５の間に位置する）。
【００９０】
バッファ３０５、３０８、３１１、３１４は、符号化ビット列復号部３０４、３０７、３１０、３１３からそれぞれ供給される、スライス単位の画素ブロックに関連する符号化モード、動きベクトル、符号化残差信号等の符号化ビット列を保持する。
【００９１】
復号管理部３０２は、各スライスの復号を開始する復号開始時刻（タイミング）を管理し、それぞれの復号開始時刻（タイミング）で、各スライスの復号を開始することが可能か否かを判断する。当該マクロブロックがイントラ予測であり、他のスライスを参照する場合（すなわち、遅延が必要な場合（図８のステップＳ２０７のＹＥＳ））、復号管理部３０２は、他のスライスの参照画素の復号が終了するまで、当該マクロブロックの復号処理を待機させる（図８のステップＳ２０８）。ここでの復号開始時刻（タイミング）の同期管理は、他のスライスを参照してイントラ予測や動きベクトル予測を行うマクロブロックに対してのみ実行されればよい。
【００９２】
バッファ３０５、３０８、３１１、３１４は、復号管理部３０２に制御され、復号処理が開始できるようになったら（図８のステップＳ２０７のＮＯ）、それぞれ保持している符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）を読み出して、スライスデータ復号部３０６、３０９、３１２、３１５に供給する。スライスデータ復号部３０６、３０９、３１２、３１５は、供給された符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）に含まれるマクロブロックの復号処理を開始する。
【００９３】
ここで、復号順序及び復号開始時刻（タイミング）について、図４に示したスライス参照依存関係をもとに符号化された符号化ビット列を、並列処理により復号する場合を例に説明する。
【００９４】
まず、プロセス０（スライスデータ復号部３０６に対応）は、スライス０の先頭のマクロブロックＡを復号する。スライス１の先頭のマクロブロックＥ、スライス２の先頭のマクロブロックＩ、スライス３の先頭のマクロブロックＭは、マクロブロックＡの復号画素をイントラ予測の際、参照する必要がある。したがって、プロセス１（スライスデータ復号部３０９に対応する）、プロセス２（スライスデータ復号部３１２に対応する）、プロセス３（スライスデータ復号部３１５に対応する）は、マクロブロックＡの復号が終了するまで、待機する。
【００９５】
プロセス０がマクロブロックＡを復号した後、プロセス１はスライス１のマクロブロックＥを復号する。また、プロセス０がマクロブロックＢを復号した後、プロセス２はスライス２の先頭のマクロブロックＩを復号する。さらに、プロセス１がマクロブロックＦを復号し、プロセス２がマクロブロックＩを復号した後、プロセス３はスライス３の先頭のマクロブロックＭを復号する。
【００９６】
このように、スライスデータ復号部３０６は、復号管理部３０２により制御され、バッファ３０５から供給される符号化ビット列Ｓ（０）を復号し、スライスデータＭ’（０）を得る（図８のステップＳ２０９〜Ｓ２１５）。同様に、スライスデータ復号部３０９、３１２、３１５も復号管理部３０２により制御され、それぞれ符号化ビット列Ｓ（１）、Ｓ（２）、Ｓ（３）を復号し、スライスデータＭ’（１）、スライスデータＭ’（２）、スライスデータＭ’（３）を得る（図８のステップＳ２０９〜Ｓ２１５）。
【００９７】
その際、スライスデータ復号部３０９、３１２は、スライスデータ復号部３０６から供給される参照画像信号も用いて復号する。スライスデータ復号部３１５は、スライスデータ復号部３０６、３０９、３１２から供給される参照画像も用いて復号する。スライスデータ復号部３０６、３０９、３１２、３１５は、共通の復号方法で復号することができる。ただし、スキャンモードに応じて、復号順序とイントラ予測の方向は異なる。
【００９８】
次に、スライスデータ復号部３０６、３０９、３１２、３１５の構成及び動作について図７及び図８を用いて説明する。図７は、一つのスライスデータ復号部の構成を示しており、復号管理部３０２の制御は、図７に示す一つのスライスデータ復号部のすべての構成要素に対して及ぶ。復号管理部３０２の制御により、スイッチ４０９、４１３をオフにして、スイッチ４１０、４１４をオンにした場合、スライスデータ復号部３０６と等価となる。また、復号管理部３０２の制御により、スイッチ４０９、４１０、４１３、４１４を全てオンにした場合、スライスデータ復号部３０９、３１２と等価となる。さらに、復号管理部３０２の制御により、スイッチ４０９、４１３をオンにし、スイッチ４１０、４１４をオフにした場合、スライスデータ復号部３１５と等価となる。
【００９９】
符号化ビット列復号部４０１は、算術符号化等のエントロピー符号化を用いて符号化された符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、・・・）を復号し、画素ブロック単位で、符号化モード、動きベクトル、符号化残差信号等の情報を得る（図８のステップＳ２０９）。
【０１００】
なお、符号化ビット列復号部４０１が動きベクトル予測を用いて動きベクトルを復号する際に、他のスライスの動きベクトルを参照する場合、スイッチ４１３を経由して、他のスライスの動きベクトルが入力される。
【０１０１】
復号された符号化モードにより、復号するブロックがイントラ予測、インター予測のどちらの手法を、どの参照画像を用いて、どのような画素ブロック単位で選択、組み合わせられているかが分かる。当該ブロックがイントラ予測を用いて符号化されている場合（図８のステップＳ２１０のＹＥＳ）、スイッチ４０８がイントラ予測部４０２側に接続される。
【０１０２】
イントラ予測部４０２は、復号スライスデータバッファ４０６から供給される復号画素を参照画素として、符号化ビット列復号部４０１からスイッチ４０８を介して供給される復号された符号化モード（ここでは、イントラ予測モード）に応じたイントラ予測を行い、イントラ予測信号を得る（図８のステップＳ２１１）。または、イントラ予測部４０２は、他のスライスデータ復号部からスイッチ４０９を介して供給される参照画素信号Ｒ（ｖ’）を用いて、符号化ビット列復号部４０１からスイッチ４０８を介して供給される復号された符号化モード（ここでは、イントラ予測モード）に応じたイントラ予測を行い、イントラ予測信号を得る（図８のステップＳ２１１）。
【０１０３】
当該画素ブロックがインター予測を用いて符号化されている場合（図８のステップＳ２１０のＮＯ）、スイッチ４０８がインター予測部４０３側に接続される。インター予測部４０３は、復号画像バッファ３１６からスイッチ４１１を介して供給される復号画素を参照画素として、符号化ビット列復号部４０１からスイッチ４０８を介して供給される復号された符号化モード、動きベクトルに応じたインター予測を行い、インター予測信号を得る（図８のステップＳ２１２）。
【０１０４】
残差信号復号部４０４は、符号化ビット列復号部４０１から供給された符号化残差信号に対して、逆量子化、逆直交変換等の残差信号復号処理を行い、復号残差信号を生成する（図８のステップＳ２１３）。残差信号重畳部４０５は、イントラ予測部４０２またはインター予測部４０７からスイッチ４１２を介して供給される予測信号に、残差信号復号部４０４から供給される復号残差信号を重畳して、復号画像信号を算出する（図８のステップＳ２１４）。当該復号画像信号は、復号スライスデータバッファ４０６に画素ブロック単位で順次格納される（図８のステップＳ２１５）。
【０１０５】
以上、ステップＳ２０７からステップＳ２１５までの処理を、画素ブロック単位で、ピクチャのスライス内のすべての画素ブロックの復号が完了するまで繰り返す（図８のステップＳ２０６〜Ｓ２１６）。
【０１０６】
復号画像バッファ３１６は、格納された復号画像信号を、復号管理部３０２により制御される時刻（タイミング）で表示時間順に表示装置等に出力する。また、復号スライスデータバッファ４０６に格納された復号画像信号は、必要に応じて、スイッチ４１０を介して他のスライスデータ復号部へ参照画素信号Ｒ（ｖ）として出力される。そして、ステップＳ２０４からステップＳ２１６までの処理を、復号画像（アクセス・ユニット）毎に繰り返す（図８のステップＳ２０３〜Ｓ２１７）。ここで、ステップＳ２０３からステップＳ２１７までの処理はプロセス毎に並列に行う。
【０１０７】
なお、以上の説明においては、各スライスを並列処理によりリアルタイムに復号する際に、それぞれの１つのスライスを１つのプロセス（スライスデータ復号部）で復号する例について述べた。この点、本実施の形態はこれに限定されない。すなわち、スライスとプロセスの数が一致していなくてもよい。例えば、８つのスライスを４つのプロセスで復号することも可能である。この場合、２つのスライスを１つのプロセスで復号し、復号周期を２倍速とする。プロセス内の処理としては、２つのスライスのうちの一方のスライスのＮＡＬユニットを復号した後、他方のスライスのＮＡＬユニットを復号する。
【０１０８】
以上説明したように実施の形態１では、画像符号化装置１００は、各スライスのスライス参照依存情報、スキャンモードを符号化する。これにより、画像復号装置３００は、各スライスの符号化ビット列を並列処理によりリアルタイムに復号する際、各プロセスの遅延時間を容易に認識することができる。すなわち、スライス参照依存情報に応じて、各スライスのマクロブロックの復号開始時刻（タイミング）を遅延させて、符号化ビット列の復号を開始することができる。したがって、それぞれ別のスライスを復号するプロセス間の同期をとることができる。また、それぞれ符号化／復号順序が異なる複数（本実施の形態では４種類）のスキャンモードを用意することにより、符号化／復号遅延時間を短縮することができる。
【０１０９】
なお、上述した実施の形態１の説明では、スキャンモードに応じて、符号化／復号順序、並びにイントラ予測及び動きベクトル予測の方向を変更する例を説明した。この点、スキャンモードに応じて、各スライスの画像を空間的に反転または回転させることにより、符号化／復号順序、並びにイントラ予測及び動きベクトル予測の方向を変更せずに、実施の形態１に係る処理を実現することもできる。
【０１１０】
図９は、実施の形態１の変形例に係る画像を４つのスライスに分割した一例を示す図である。以下、図９と図４とを比較しながら説明する。図４ではスライス０はスキャンモードＤで符号化される。すなわち、右下のマクロブロックから、主走査方向を右から左、副走査方向を下から上に符号化した。これに対して、図９ではスライス０を１８０°回転させて、従来と同様に、左上のマクロブロックから主走査方向を左から右、副走査方向を上から下に符号化する。これにより、実質的にスキャンモードＤの符号化順番で符号化することができる。
【０１１１】
また、図４ではスライス１はスキャンモードＢで符号化される。これに対して、図９ではスライス１を上下反転させて、従来と同様の走査順序で符号化する。これにより、実質的にスキャンモードＢの符号化順番で符号化することができる。また、図４ではスライス２はスキャンモードＣで符号化される。これに対して、図９ではスライス１を左右反転させて、従来と同様の走査順序で符号化する。これにより、実質的にスキャンモードＣの符号化順番で符号化することができる。また、図４ではスライス３はスキャンモードＡで符号化される。図９でもスライス３を回転させずに、従来と同様の走査順序で符号化する。
【０１１２】
当該変形例では、他のスライスを参照するイントラ予測を行う場合、回転、反転前の位置に存在する隣接ブロックの復号画素を参照画素として用いる。このように、スライスの画像を空間的に回転、反転させることにより、イントラ予測及び動きベクトル予測の方向を変更せずに、符号化／復号することができる。
【０１１３】
次に、本発明の実施の形態２について説明する。図１０は、本発明の実施の形態２に係る画像符号化装置５００の構成例を示すブロック図である。図１１は、図１０の画像符号化装置５００を構成するスライスデータ符号化部５０５、５０６、５０７、５０８の構成例を示すブロック図である。図１２は、図１０の画像符号化装置５００、画像符号化方法及び画像符号化プログラムの処理手順を説明するためのフローチャートである。本実施の形態においても、実施の形態１と同様に、ＡＶＣ／Ｈ．２６４符号化方式をベースとする画像符号化装置を説明する。
【０１１４】
図１０、図１１に示す構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【０１１５】
図１０に示すように、実施の形態２に係る画像符号化装置５００は、符号化管理部１０１、符号化ビット列生成部１０２、画像バッファ１０３、スライスデータ分割部１０４、スライスデータ符号化部５０５、５０６、５０７、５０８、符号化ビット列多重化部１０９及び復号画像バッファ１１０を備える。図１０において、Ｍ（ｖ）（ｖ＝０、１、２、３）は、画像符号化装置５００に供給される画像が分割された各スライスデータを示しており、ｖはスライスを特定するためのスライスＩＤを示している。また、Ｓ（ｖ）（ｖ＝０、１、２、・・・）は、符号化の結果得られる各スライスの符号化ビット列を示している。以下、スライスＩＤがｖのスライスをスライスｖとする。図１０ではｖ＝０、１、２、３の４スライス（スライス０、スライス１、スライス２、スライス３）に分割した例を描いている。
【０１１６】
図１０において、符号化管理部１０１、符号化ビット列生成部１０２、画像バッファ１０３、スライスデータ分割部１０４、符号化ビット列多重化部１０９及び復号画像バッファ１１０は、実施の形態１に係る画像符号化装置１００と基本的に同様であるため、それらの説明を適宜省略する。以下、実施の形態１と異なるスライスデータ符号化部５０５、５０６、５０７、５０８の説明を、図１１を用いて行う。
【０１１７】
図１０の画像符号化装置５００を構成するスライスデータ符号化部５０５、５０６、５０７、５０８はそれぞれ同一構成である。図１１に示すように、スライスデータ符号化部５０５、５０６、５０７、５０８はそれぞれ、スライスデータバッファ２０１、イントラ予測部２０２、符号化モード判定部２０３、残差信号演算部２０４、残差信号符号化部２０５、残差信号復号部２０６、残差信号重畳部２０７、復号スライスデータバッファ２０８、インター予測部２１０、符号化ビット列生成部６０９、算術符号化パラメータ判定部６１６、算術符号化パラメータバッファ６１７、スイッチ２１１、２１２、２１３、２１４、２１５、６１８、６２０を備える。
【０１１８】
なお、スイッチ２１１を経由して他のスライスデータ符号化部からイントラ予測用の参照画素信号Ｒ（ｖ’）が入力され、スイッチ２１２を経由して他のスライスデータ符号化部へイントラ予測用の参照画素信号Ｒ（ｖ）が出力される。また、スイッチ２１４を経由して他のスライスデータ符号化部から動きベクトル予測用の動きベクトルが入力され、スイッチ２１５を経由して他のスライスデータ符号化部へ動きベクトル予測用の動きベクトルが出力される。さらに、スイッチ６１８を経由して他のスライスデータ符号化部から算術符号化パラメータが入力され、スイッチ６２０を経由して他のスライスデータ符号化部へ算術符号化パラメータが出力される。ここで、算術符号化パラメータは後述する、算術符号化されるべきシンタックス要素のコンテキスト変数情報であってもよい。
【０１１９】
スライスデータ符号化部５０５、５０６、５０７、５０８の少なくとも一つは、符号化すべき対象スライスの隣接スライスと接している対象ブロックの符号化の際、当該隣接スライスの当該対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータを利用可能である。
【０１２０】
より具体的には、スライスデータ符号化部５０５、５０６、５０７、５０８の少なくとも一つは、当該対象スライスの当該隣接スライスと接している当該対象ブロックの符号化の際、その対象ブロックと符号化順序で一つ前の隣接ブロックの符号化時点の算術符号化パラメータを用いるか、当該対象ブロックと当該対象スライス内で隣接する隣接ブロックの符号化時点の算術符号化パラメータを用いるか、当該隣接スライスの当該対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータを用いるかを、選択可能である。符号化ビット列生成部１０２は、符号化に関するパラメータの一つとして、当該算術符号化パラメータの選択情報を符号化する。
【０１２１】
なお、当該対象ブロックと当該対象スライス内で隣接する隣接ブロックは、既に符号化が終了している隣接ブロックである必要がある。したがって、当該隣接スライスが当該対象スライスの上に位置する場合、通常の走査順では、当該対象ブロックと符号化順序で一つ前の隣接ブロックと、当該対象ブロックと当該対象スライス内で隣接する隣接ブロックとが一致する。当該隣接スライスが当該対象スライスの下、左または右に位置する場合、通常の走査順では、当該対象ブロックと当該対象スライス内で隣接する隣接ブロックは、当該対象ブロックの左上、真上または右上に位置するブロックに設定される。
【０１２２】
次に、図１０に示す画像符号化装置５００の動作について、図１２のフローチャートを参照しながら説明する。図１０において、符号化管理部１０１は実施の形態１と同様に、外部から設定された符号化パラメータをもとに、必要に応じて新たにパラメータを計算し、シーケンス全体に関連する情報、ピクチャに関連する情報、及びピクチャのスライスに関連する情報の管理を含む符号化に関する管理を行う。
【０１２３】
また、符号化管理部１０１は、撮影／表示時間順に入力された画像のインター予測における参照依存関係及び符号化順序を管理するとともに、スライスデータＭ（０）、Ｍ（１）、Ｍ（２）、Ｍ（３）のイントラ予測及び動きベクトル予測における参照依存関係、並びに各スライスの符号化／復号順序を管理する。イントラ予測及び動きベクトル予測における参照依存関係について以下の管理を行う。すなわち、スライス単位で符号化対象画像を符号化する際に、他のスライスデータの復号画像信号を参照用として用いるイントラ予測、または動きベクトル予測を行うか否かについて管理する。
【０１２４】
また、符号化管理部１０１は、対象画像を符号化後に復号して得られる復号画像信号が他のスライスの画像を符号化する際にイントラ予測、または動きベクトル予測の参照画像信号として用いられるか否かについて管理する。さらに、符号化管理部１０１は、上述した管理を行うための情報を符号化ビット列生成部１０２に供給すると共に、スライスデータ分割部１０４、スライスデータ符号化部５０５、５０６、５０７、５０８を制御する。
【０１２５】
図１３は、実施の形態２に係る画像を４つのスライスに分割した一例を示す図である。以下、図１３に示すスライスの分割構成とその符号化動作に関して説明する。図１３では、水平方向に４分割するスライスの分割構成をとり、それぞれのスライスが従来のＡＶＣ／Ｈ．２６４符号化方式と同様に、最も左上のマクロブロックから主走査方向を左から右、副走査方向を上から下に符号化／復号される。
【０１２６】
図１３において、スライス０が基底スライスとなり、スライス０以外のスライス１、スライス２、スライス３の境界に接するマクロブロックでは、他のスライスの復号画像信号から予測する、イントラ予測や動きベクトル予測を用いている。スライス１の最も左端のマクロブロックは、スライス０の最も右端のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。また、スライス２の最も左端のマクロブロックは、スライス１の最も右端のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。また、スライス３の最も左端のマクロブロックは、スライス２の最も右端のマクロブロックの各復号画像信号も参照画像信号とし、イントラ予測や動きベクトル予測を用いて、符号化／復号する。
【０１２７】
実施の形態２においては、算術符号化において参照する情報（すなわち、算術符号化パラメータ）を、隣接する２つのスライスの内、左のスライスを符号化するスライスデータ符号化部から右のスライスを符号化するスライスデータ符号化部に伝達する手段を持つ。
【０１２８】
ＡＶＣ／Ｈ．２６４符号化方式では、量子化されたＤＣＴ係数、動きベクトル、予測モード等のシンタックス要素のエントロピー符号化手法として、算術符号化を用いることが可能である。算術符号化は、符号化対象のシンタックス要素を複数束ねた状態で、発生確率に応じた符号化を行うことにより、情報量を圧縮する手法である。算術符号化は、シンタックス要素毎に固有の発生確率で定義された可変長符号を用いる可変長符号化に比べて高い符号化効率を示す。
【０１２９】
ＡＶＣ／Ｈ．２６４符号化方式では、シンタックス要素は２値で表現され、２値化された情報が算術符号化される。２値化されたシンタックス要素を、以下、シンボルと表記する。２値の算術符号化においては、発生確率が高い優勢シンボル（以下、ＭＰＳと表記する）と発生確率が低い劣勢シンボル（以下、ＬＰＳと表記する）のそれぞれの発生確率に基づいて実数直線を分割する。分割した領域のＭＰＳ領域をｒＭＰＳ、ＭＰＳ領域をｒＬＰＳとする。ｒＭＰＳとｒＬＰＳの内、符号化出力対象となるシンボルが属する領域を選択する。ここでは仮にｒＭＰＳを選択したとする。その後、選択したｒＭＰＳを次のｒａｎｇｅとし、このｒａｎｇｅを同様にｒＭＰＳとｒＬＰＳとに分割し、符号化出力対象となるシンボルが属する領域を選択する。この動作を符号化出力対象となるシンボルがなくなるまで繰り返す。そして、最終的に特定された領域であるｒａｎｇｅの範囲内に収まる値を、出力値ｖａｌｕｅとして出力する。通常はｒａｎｇｅの下限値を出力値ｖａｌｕｅとして出力する。これにより、符号化が完了する。
【０１３０】
上述した基本的な算術符号化では、ｒａｎｇｅとｖａｌｕｅが実数値であり、そのまま使用するには、演算精度の問題から現実的ではない。そこで、ＡＶＣ／Ｈ．２６４符号化方式では、実数直線を有限のビット幅を持つ整数区間とし、特定した区間の幅であるｒａｎｇｅと特定した区間の下限値であるｖａｌｕｅに対して正規化処理を導入することで上記問題を解決している。正規化処理は、左シフト演算により行われ、この正規化処理によって、ｒａｎｇｅとｖａｌｕｅの演算精度を確保している。
【０１３１】
ＡＶＣ／Ｈ．２６４符号化方式では、予め特定できない実際の発生確率に追従して、実際の発生確率に即した発生確率を算術符号化を行う際に使用する。それを実現するために、以下に説明するコンテキスト変数情報を保持し、シンタックス要素毎に発生確率の推移に適した発生確率テーブルを選択する。
【０１３２】
コンテキスト変数情報は、算術符号化を行う際に利用される発生確率の状態を示す、ステート情報（以下、ｐＳｔａｔｅＩｄｘと表記する）と、ＭＰＳ情報（以下、ｖａｌＭＰＳと表記する）とから構成される。ｐＳｔａｔｅＩｄｘとは、発生確率テーブル番号を表す情報である。ｖａｌＭＰＳとは、あるシンタックス要素におけるシンボル系列を算術符号化する場合において、現在までに符号化した０、１のシンボルのうち、どちらがＭＰＳであるかを表す情報である。また、複数のシンタックス要素に対するコンテキスト変数情報を特定するために、各シンタックス要素のコンテキスト変数情報の構造に対してコンテキストインデックス（以下、ｃｔｘＩｄｘと表記する）が付与される。
【０１３３】
コンテキスト変数情報のｐＳｔａｔｅＩｄｘ及びｖａｌＭＰＳは、シンタックス要素毎に符号化したシンボルがＭＰＳであるかＬＰＳであるかに基づいて、所定の手順に従って更新される。この更新動作により、各シンタックス要素における、シンボルの実際の発生確率と算術符号化に用いる発生確率テーブルの差が収束する方向に、発生確率テーブルが選択されていくことにより、符号化効率の低下を防いでいる。
【０１３４】
このようにして構成されるＡＶＣ／Ｈ．２６４符号化方式における算術符号化は、ＣＡＢＡＣ（コンテキスト適応型２値算術符号化）とよばれている。ＣＡＢＡＣにおいて、コンテキスト変数情報を用いた発生確率テーブルの収束には、ある程度の時間がかかる。また、シンタックス要素の性質が急激に変化した場合の追従に関しても、ある程度の時間がかかる。したがって、これらは符号化効率が低下する要因の一つとなっている。
【０１３５】
実施の形態２では、隣接する２つのスライスの内、左のスライスの右端におけるマクロブロックの符号化終了時のコンテキスト変数情報を、左のスライスを符号化するスライスデータ符号化部から、右のスライスを符号化するスライスデータ符号化部に伝達する手段を有する。右のスライスを符号化するスライスデータ符号化部は、右のスライスの左端におけるマクロブロックの符号化時に、左のスライスを符号化するスライスデータ符号化部から伝達されたコンテキスト変数情報を用いるか、自ら格納したコンテキスト変数情報を用いるかを選択する機能を有する。これにより、それぞれのシンタックス要素の性質が変わりやすい、スライスの左端での発生確率テーブルの追従性を向上させることが可能となる。
【０１３６】
次に、各スライスの復号開始時刻（タイミング）について説明する。実施の形態１と同様に、基底スライスであるスライス０の符号化ビット列は、他のスライスに依存することなく復号できる。これに対し、スライス０以外のスライス１、スライス２、スライス３は、左隣のスライスの復号画像信号から予測するイントラ予測や動きベクトル予測を用い、左隣のスライスのコンテキスト変数情報を受け取る。
【０１３７】
したがって、スライス１、スライス２、スライス３の復号開始時刻（タイミング）はそれぞれ、参照する左隣のスライスの復号時刻（タイミング）に依存する。イントラ予測の参照画像信号となるマクロブロックの画像信号の復号処理、及び参照するマクロブロックの動きベクトルの復号処理が完了し、コンテキスト変数情報が格納され、それらのデータを参照することができるようになるまで、スライス１、スライス２、スライス３の復号開始時刻（タイミング）を遅延させる必要がある。
【０１３８】
具体的には、主走査方向を左から右に連続して符号化／復号する処理単位をマクロブロックラインと定義すると、隣接する２つのスライスの内、左のスライスのマクロブロックラインに対する復号処理が完了するまで、右のスライスのマクロブロックラインに対する復号処理を遅延させる。すなわち、右のスライスを復号するプロセスは、左のスライスを復号するプロセスに対して、１マクロブロックライン遅延して復号する。
【０１３９】
本実施の形態でも実施の形態１と同様に、符号化時に各スライスのスライス参照依存情報を符号化する。これにより、復号側で各スライスを並列処理によりリアルタイムに復号する際に、そのスライス参照依存情報により基底スライスの復号開始時刻（タイミング）に対する各スライスの復号開始時刻（タイミング）の遅延時間を容易に認識することができる。そして、当該スライス参照依存情報に応じて、各スライスの復号開始時刻（タイミング）を遅延させて符号化ビット列の復号を開始する。これにより、スライス間の同期を確保することができる。
【０１４０】
図１０に戻る。符号化ビット列生成部１０２は、符号化管理部１０１から供給されるシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータ、補足付加情報等のそれぞれのパラメータを符号化して符号化ビット列を生成する（図１２のステップＳ１０１）。ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳ、ＰＰＳ、ＳＥＩ情報を符号化した符号化ビット列を生成する。本実施の形態においても実施の形態１と同様に、符号化ビット列生成部１０２は、各スライスのスライス参照依存情報も符号化する。
【０１４１】
画像符号化装置５００に供給される画像データは、撮影／表示時間順に画像バッファ１０３に格納される（図１２のステップＳ１０３）。スライスデータ分割部１０４は、符号化管理部１０１により制御され、復号時間順に画像をスライスに分割し、スライスデータ符号化部５０５、５０６、５０７、５０８に供給する（図１２のステップＳ１０５）。
【０１４２】
スライスデータ符号化部５０５は、符号化管理部１０１により制御され、入力されるスライスデータＭ（０）を符号化し、符号化ビット列Ｓ（０）を得る（図１２のステップＳ１０４〜Ｓ１１９）。同様に、スライスデータ符号化部５０６、５０７、５０８も、符号化管理部１０１により制御され、それぞれ入力されるスライスデータＭ（１）、スライスデータＭ（２）及びスライスデータ符号化Ｍ（３）を符号化し、符号化ビット列Ｓ（１）、符号化ビット列Ｓ（２）、符号化ビット列Ｓ（３）を得る（図１２のステップＳ１０４〜Ｓ１１９）。その際、スライスデータ符号化部５０６、５０７、５０８はそれぞれ、スライスデータ符号化部５０５、５０６、５０７からそれぞれ供給される境界近傍の参照画素信号Ｒ（０）、Ｒ（１）、Ｒ（２）を用いて符号化する。
【０１４３】
次に、スライスデータ符号化部５０５、５０６、５０７、５０８の構成について図１１を用いて説明する。符号化管理部１０１による制御は、図１１に示したスライスデータ符号化部５０５、５０６、５０７、５０８を構成するすべての構成要素に対して及ぶ。符号化管理部１０１の制御により、スイッチ２１１、２１４、６１８をオフにして、他のスライスデータ符号化部から、参照画素信号Ｒ（ｖ）、動きベクトル及び算術符号化パラメータを受け取らず、スイッチ２１２、２１４、６２０をオンにした場合、スライスデータ符号化部５０５と等価となる。
【０１４４】
また、符号化管理部１０１の制御により、スイッチ２１１、２１２、２１４、２１５、６１８、６２０をすべてオンにした場合、スライスデータ符号化部５０６、５０７と等価となる。また、符号化管理部１０１の制御により、スイッチ２１２、２１５、６２０をオフにして、他のスライスデータ符号化部への、参照画素信号Ｒ（ｖ’）、動きベクトル及び算術符号化パラメータの出力を停止し、スイッチ２１１、２１４、６１８をオンにした場合、スライスデータ符号化部５０８と等価となる。
【０１４５】
スライスデータバッファ２０１は、供給されたスライスデータＭ（ｖ）（ｖ＝０、１、２、３）を格納する（図１２のステップＳ１０５）。また、符号化管理部１０１は、１つの画像を１つのアクセス・ユニットと呼ばれる単位で管理し（図１２のステップＳ１０４〜Ｓ１１９）、さらにアクセス・ユニットをピクチャのスライスに分割して管理する（図１２のステップＳ１０５〜Ｓ１１７）。
【０１４６】
符号化ビット列生成部６０９は、実施の形態１と同様に、符号化管理部１０１で管理されるそれぞれのピクチャのスライスに関連する情報を、スライス毎に符号化ビット列に符号化する（図１２のステップＳ１０６）。ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニットとして符号化する。さらに、符号化ビット列生成部６０９は、符号化モード、動きベクトル、符号化残差信号等の画素ブロックの情報を符号化すると共に、スライスの左端のマクロブロックにおいて算術符号化パラメータを引き継ぐ方法を指定するための情報を符号化する。それについては後述する。
【０１４７】
スライスデータバッファ２０１、イントラ予測部２０２、符号化モード判定部２０３、残差信号演算部２０４、残差信号符号化部２０５、残差信号復号部２０６、残差信号重畳部２０７、復号スライスデータバッファ２０８、インター予測部２１０及びスイッチ２１１、２１２、２１３、２１４、２１５の動作、並びに図１２のフローチャートにおけるステップＳ１０６からステップＳ１１６までの処理については、実施の形態１と同様の処理であるため、その説明を省略する。
【０１４８】
以下、図１１における算術符号化パラメータ判定部６１６、算術符号化パラメータバッファ６１７及び符号化ビット列生成部６０９の動作、並びに図１２のフローチャートにおけるステップＳ３２１、ステップＳ３１７の処理について説明する。
【０１４９】
符号化ビット列生成部６０９は、符号化モード判定部２０３から入力される符号化モード及び動きベクトル、残差信号符号化部２０５から入力される符号化残差信号等を、算術符号化パラメータ判定部６１６を介して受け取る。符号化ビット列生成部６０９は、それらを、算術符号化を用いて順次符号化し、符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、３）を生成する（図１２のステップＳ３１７）。算術符号化パラメータ判定部６１６の動作は後述する。
【０１５０】
なお、符号化ビット列生成部６０９が動きベクトル予測を用いて動きベクトルを符号化する際に、他のスライスの動きベクトルを参照する場合、スイッチ２１４を経由して、他のスライスの動きベクトルが入力される。その動きベクトルを用いて動きベクトル予測を行う動作については、実施の形態１と同様である。
【０１５１】
符号化ビット列生成部６０９は、各プロセスが符号化を行うスライスの右端及び左端におけるマクロブロックの場合、コンテキスト変数情報を算術符号化パラメータバッファ６１７に格納する。コンテキスト変数情報は、算術符号化に用いられた結果における、各シンタックス要素のシンボルの内部状態を示す。また、符号化ビット列生成部６０９は、スライスの右端におけるマクロブロックの場合、コンテキスト変数情報をスイッチ６２０を介して、画面内で右に隣接するスライスを担当するプロセスに出力する。
【０１５２】
実施の形態２では、算術符号化パラメータ判定部６１６は、各プロセスが符号化を行うスライスの左端におけるマクロブロックの場合、算術符号化パラメータバッファ６１７に格納されたコンテキスト変数情報、及びスイッチ６１８を介して入力されたコンテキスト変数情報から、その左端のマクロブロックを符号化する際に用いる最適なコンテキスト変数情報を選択する。そして、算術符号化パラメータ判定部６１６は、どのコンテキスト変数情報を用いたかを示すパラメータ選択情報（以下単に、選択情報と表記する）を、符号化ビット列生成部６０９に出力する（図１２のステップＳ３２１）。
【０１５３】
以下、コンテキスト変数情報の選択処理の具体例を説明する。図１４は、実施の形態２に係る画像を３つのスライスに分割した一例を示す図である。図１５は、コンテキスト変数情報の管理テーブルの一例を示す図である。図１４では、水平方向に３分割するスライスの分割構成をとり、それぞれのスライスが従来のＡＶＣ／Ｈ．２６４符号化方式と同様に、最も左上のマクロブロックから主走査方向を左から右、副走査方向を上から下に符号化／復号される。
【０１５４】
図１４において、符号化対象スライス（図１４の真ん中のスライス）のＳ１（１，０）のマクロブロックを符号化する際、算術符号化パラメータ判定部６１６は、算術符号化パラメータバッファ６１７に格納されているＳ１（０，０）及びＳ１（０，Ｎ）のマクロブロックにおけるコンテキスト変数情報、並びに左隣接スライスのＳ０（１，Ｎ）のマクロブロックにおけるコンテキスト変数情報の３つの変数情報の中から、最もコンテキストの状態が安定する情報を選択する。例えば、算術符号化パラメータ判定部６１６は、該当するマクロブロックに対して、３つの変数情報をそれぞれ用いて算術符号化を施した際のそれぞれの符号量を算出し、最小の符号量で符号化できる変数情報を選択する。なお、該当するマクロブロックより数マクロブロック後までの符号化処理を３つの変数情報を用いて行い、その結果をもとに選択してもよい。
【０１５５】
図１５に示す管理テーブルでは、コンテキスト群がパラメータ群１とパラメータ群２に分類される。コンテキスト群のシンタックス要素の種類として、パラメータ群１には、マクロブロックタイプ、ＤＣＴサイズ、イントラ予測モード及び量子化パラメータが含まれる。パラメータ群２には、予測ブロックモード、動きベクトルおよび参照画像ナンバーが含まれる。各パラメータ群には、シンボルの出現頻度パターンが類似する複数のシンタックス要素が含まれることが好ましい。図１５では、画面内のテクスチャを符号化するために必要なシンタックス要素は、パラメータ群１に分類されている。また、動き補償予測などの時間相関を用いるために必要なシンタックス要素は、パラメータ群２に分類されている。
【０１５６】
ｐＳｔａｔｅＩｄｘは、その値が大きいほど、ＭＰＳの発生確率が高いことを示す。すなわち、ｐＳｔａｔｅＩｄｘの値が大きいほど、算術符号化による情報の圧縮効率が高い状態であることを示す。ｖａｌＭＰＳは、ＭＰＳが０であるか１であるかを示す。
【０１５７】
算術符号化パラメータ判定部６１６は、図１５に示すような管理テーブルを参照して、コンテキストのシンタックス要素毎に符号化されたシンボルがＭＰＳであった頻度の高い変数情報を選択してもよい。たとえば、上述した３つの変数情報の内、ｐＳｔａｔｅＩｄｘの値の合計値が最も大きい変数情報を選択してもよい。
【０１５８】
また、算術符号化パラメータ判定部６１６は、パラメータ群ごとに、変数情報を独立に選択してもよい。例えば、図１５のパラメータ群１とパラメータ群２とで、別々の変数情報を選択してもよい。この場合、算術符号化パラメータ判定部６１６は、パラメータ群１の選択情報と、パラメータ群２の選択情報の両方を、符号化ビット列生成部６０９に出力する。また、算術符号化パラメータ判定部６１６は、シンタックス要素ごとに、変数情報を選択してもよい。これらの処理により、より最適な発生確率テーブルを用いて算術符号化を行うことができ、情報量の圧縮効率を向上させることができる。
【０１５９】
また、図１４の符号化対象スライスのＳ１（０，０）のマクロブロックを符号化する際には、スライス符号化処理開始時に定義される初期コンテキスト変数情報を用いるか、左隣接スライスのＳ０（０，Ｎ）のマクロブロックにおけるコンテキスト変数情報を用いる。算術符号化パラメータ判定部６１６は、この２つの変数情報から選択することが可能である。同様に、符号化対象スライスが画面の左端にあるプロセスにおいて、当該スライスの左端のマクロブロックを符号化する際には、そのマクロブロックの上のマクロブロックのコンテキスト変数情報と、走査順で一つ前のマクロブロック（当該スライスの右端に位置する）のコンテキスト変数情報から、選択することが可能である。両方のコンテキスト変数情報も、算術符号化パラメータバッファ６１７に格納されている。
【０１６０】
符号化ビット列生成部６０９に供給された選択情報は、スライスデータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニット）と合わせて、スライスの先頭で符号化ビット列に符号化される。また、符号化ビット列生成部６０９に供給された選択情報は、該当するマクロブロックの符号化ビット列の先頭において符号化される。
【０１６１】
以上、ステップＳ１０８からステップＳ３１７までの処理を、画素ブロック単位で、ピクチャのスライス内のすべての画素ブロックの符号化が完了するまで繰り返す（図１２のステップＳ１０７〜Ｓ１１８）。また、ステップＳ１０５からステップＳ１１８までの処理を、アクセス・ユニット内の全てのスライスの符号化が完了するまで繰り返す（図１２のステップＳ１０４〜Ｓ１１９）。さらに、ステップＳ１０３からステップＳ１１９までの処理を、各プロセスの符号化対象画像（アクセス・ユニット）毎に繰り返す（図１２のステップＳ１０２〜Ｓ１２０）。
【０１６２】
再び、図１０に戻る。符号化ビット列生成部１０２からシーケンス情報、ピクチャ情報、補足付加情報等の符号化ビット列が出力され、スライスデータ符号化部５０５、５０６、５０７、５０８から各スライスの符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）が出力される。符号化ビット列多重化部１０９は、これらを必要に応じて多重化し、１本の符号化ビット列にする。多重化しない場合、上記の各符号化ビット列は、独立した符号化ビット列として出力される。
【０１６３】
次に、本発明の実施の形態２に係る画像復号装置、方法、及びプログラムについて説明する。実施の形態２に係る画像復号装置は、上述した実施の形態２に係る画像符号化装置により符号化された符号化ビット列を、スライス毎に並列処理によりリアルタイムに復号する装置である。
【０１６４】
図１６は、本発明の実施の形態２に係る画像復号装置７００の構成例を示すブロック図である。図１７は、図１６の画像復号装置７００を構成するスライスデータ復号部７０６、７０９、７１２、７１５の構成例を示すブロック図である。図１８は、図１６の画像復号装置７００、画像復号方法及び画像復号プログラムの処理手順を説明するためのフローチャートである。図１６の画像復号装置７００も、図１の画像符号化装置１００と同様に、ＡＶＣ／Ｈ．２６４符号化方式をベースとし、並列処理を実現する画像復号装置であるものとして説明する。
【０１６５】
図１６、図１７に示す構成は、ハードウェア的には、任意のプロセッサ、メモリ、その他のＬＳＩで実現でき、ソフトウェア的にはメモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【０１６６】
図１６に示すように、画像復号装置７００は、符号化ビット列復号部３０１、３０４、３０７、３１０、３１３、復号管理部３０２、分離部３０３、バッファ３０５、３０８、３１１、３１４、スライスデータ復号部７０６、７０９、７１２、７１５及び復号画像バッファ３１６を備える。符号化ビット列復号部３０４、３０７、３１０、３１３に供給される符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、３）は、図１０の画像符号化装置５００によりスライス毎に生成された各スライスの符号化ビット列である。Ｍ’（ｖ）（ｖ＝０、１、２、３）は復号の結果、出力される画像の各スライスデータである。図１６ではｖ＝０、１、２、３の４スライスに分割した例を図示している。
【０１６７】
また、符号化ビット列復号部３０１に供給される符号化ビット列（シーケンス・パラメータ等）は、図１０の画像符号化装置５００により生成されたシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータ、補足付加情報等のそれぞれのパラメータを符号化して得られた符号化ビット列である。
【０１６８】
また、画像復号装置７００の一部を構成するスライスデータ復号部７０６、７０９、７１２、７１５はそれぞれ同一構成である。図１７に示すように、スライスデータ復号部７０６、７０９、７１２、７１５はそれぞれ、符号化ビット列復号部８０１、イントラ予測部４０２、残差信号復号部４０４、残差信号重畳部４０５、復号スライスデータバッファ４０６、インター予測部４０７、算術符号化パラメータバッファ８１５、スイッチ４０８、４０９、４１０、４１１、４１２、４１３、４１４、８１６、８１７、８１８を備える。
【０１６９】
なお、スイッチ４０９を経由して他のスライスデータ復号部からイントラ予測用の参照画素信号Ｒ（ｖ’）が入力され、スイッチ４１０を経由して他のスライスデータ復号部へイントラ予測用の参照画素信号Ｒ（ｖ）が出力される。また、スイッチ４１３を経由して他のスライスデータ復号部から動きベクトル予測用の動きベクトルが入力され、スイッチ４１４を経由して他のスライスデータ復号部へ動きベクトル予測用の動きベクトルが出力される。さらに、スイッチ８１６を経由して他のスライスデータ復号部から算術符号化パラメータが入力され、スイッチ８１８を経由して他のスライスデータ復号部へ算術符号化パラメータが出力される。
【０１７０】
復号管理部３０２は、隣接スライスの隣接ブロックの符号化終了時点の算術符号化パラメータを利用して、対象ブロックを復号するようスライスデータ復号部７０６、７０９、７１２、７１５に指示することができる。より具体的には、復号管理部３０２は、符号化に関するパラメータに含まれる上述した算術符号化パラメータの選択情報をもとに、対象ブロックの走査順で一つ前の隣接ブロックの符号化時点の算術符号化パラメータ、当該対象ブロックと対象スライス内で隣接する隣接ブロックの符号化時点の算術符号化パラメータ、及び当該隣接スライスの当該対象ブロックと接している隣接ブロックの符号化終了時点の算術符号化パラメータのうち、当該対象ブロックの復号の際に利用する算術符号化パラメータを、該当するスライスデータ復号部に指定することができる。これらの処理の詳細は後述する。
【０１７１】
次に、図１６に示す実施の形態２に係る画像復号装置７００の動作について、図１８のフローチャートを参照しながら説明する。まず、本実施の形態に係る画像復号装置７００に供給される符号化ビット列が多重化されている場合、分離部３０３はＡＶＣ／Ｈ．２６４符号化方式のＮＡＬユニット単位で分離する。その際、ＮＡＬユニットのヘッダ部分を復号してＮＡＬユニットの種類を判別し、分離する。
【０１７２】
ＮＡＬユニットがシーケンス全体に関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳ）、ピクチャに関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＰＰＳ）、補足付加情報（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＥＩ）の場合、符号化ビット列復号部３０１に供給される。ＮＡＬユニットがピクチャのスライスデータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニット）の場合、分離部３０３は、スライスデータに係る符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）を、スライスＩＤに応じた符号化ビット列復号部３０４、３０７、３１０、３１３に供給する。
【０１７３】
図１６において、符号化ビット列復号部３０１は、図１０の画像符号化装置５００により符号化された符号化ビット列を復号する（図１８のステップＳ２０１）。ここで、復号する符号化ビット列は、シーケンス全体に関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳ）、ピクチャに関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＰＰＳ）、補足付加情報（ＡＶＣ／Ｈ．２６４符号化方式では、ＳＥＩ）等である。
【０１７４】
各スライスのスライス参照依存情報を纏めてシーケンス全体に関連するパラメータとして符号化された符号化ビット列が供給される場合、符号化ビット列復号部３０１は、各スライスのスライス参照依存情報を復号する。ＡＶＣ／Ｈ．２６４符号化方式では、ＳＰＳのパラメータの一つとして復号する。復号されたシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータ、補足付加情報等は、復号管理部３０２にそれぞれ供給される。
【０１７５】
復号管理部３０２は、供給される参照依存情報から各プロセス（実施の形態２に係る画像復号装置７００では、スライスデータ復号部７０６、７０９、７１２、７１５に相当する）の復号開始タイミングを算出する（図１８のステップＳ２０２）。なお、復号開始時刻（タイミング）や遅延時間（遅延量）が符号化される手法では、これらのパラメータが復号され、このパラメータの値に応じて各プロセスが復号を行う。
【０１７６】
この処理に続く以下の処理（図１８のステップＳ２０３〜Ｓ２１７）は、プロセス毎に並列で処理される。まず、符号化ビット列復号部３０４、３０７、３１０、３１３は、各スライス毎に供給される符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）内の所定のデータを復号する（図１８のステップＳ２０４）。ここで、符号化ビット列復号部３０４、３０７、３１０、３１３が復号するデータは、ピクチャのスライスに関連するパラメータ（ＡＶＣ／Ｈ．２６４符号化方式では、ＶＣＬ  ＮＡＬユニットのヘッダ及びスライス・ヘッダとして符号化されたパラメータ）であり、画素ブロックに関連する符号化モード、動きベクトル、符号化残差信号等は、ここでは復号されない。
【０１７７】
各スライスのスライス参照依存情報がスライス毎に独立で符号化された符号化ビット列が供給される場合、符号化ビット列復号部３０４、３０７、３１０、３１３は、ピクチャのスライスに関連するパラメータの一つとして、各スライスのスライス参照依存情報を復号する。スライス毎に復号されたピクチャのスライスに関連するパラメータは、復号管理部３０２に供給される。復号管理部３０２は、それらのパラメータを管理し、新たなパラメータが設定されると、現在のパラメータの値を新たなパラメータの値に更新する。
【０１７８】
符号化ビット列復号部３０４、３０７、３１０、３１３は、ここでは復号しない画素ブロックに関連する符号化モード、動きベクトル、符号化残差信号等の符号化ビット列を随時、バッファ３０５、３０８、３１１、３１４に供給する（図１８のステップＳ２０５）。
【０１７９】
上述したように、各スライスのスライス参照依存情報がスライス毎に、例えばスライス・ヘッダで符号化されている場合、復号管理部３０２は、符号化ビット列復号部３０１から供給されるシーケンス全体に関連するパラメータ、ピクチャに関連するパラメータと、符号化ビット列復号部３０４、３０７、３１０、３１３から供給される復号されたピクチャのスライスに関連するパラメータとに基づいて、復号に関する管理を行う。本実施の形態においても、実施の形態１と同様の管理を行い、各スライスの復号開始時刻（タイミング）を管理する。
【０１８０】
バッファ３０５、３０８、３１１、３１４は、符号化ビット列復号部３０４、３０７、３１０、３１３からそれぞれ供給される、スライス単位の画素ブロックに関連する符号化モード、動きベクトル、符号化残差信号等の符号化ビット列を保持する。
【０１８１】
復号管理部３０２は、各スライスの復号を開始する復号開始時刻（タイミング）を管理し、それぞれの復号開始時刻（タイミング）で、各スライスの復号を開始することが可能か否かを判断する。コンテキスト変数情報の選択情報が、スライスの先頭に纏めて符号化されている場合、符号化ビット列復号部３０４、３０７、３１０、３１３は、スライスの先頭でスライス・ヘッダと共にコンテキスト変数情報の選択情報を復号する。
【０１８２】
コンテキスト変数情報の選択情報が、該当するマクロブロックの先頭に符号化されている場合、スライスデータ復号部７０６、７０９、７１２、７１５は、該当するマクロブロックの先頭でコンテキスト変数情報の選択情報を復号する。より具体的には、符号化ビット列復号部３０４、３０７、３１０、３１３によりスライス・ヘッダが復号された後、スライスデータ復号部７０６、７０９、７１２、７１５は、最初の該当するマクロブロック（図１５では、Ｓ１（０，０）のマクロブロック）の、コンテキスト変数情報の選択情報を復号する。以下、該当するマクロブロックが出現する度に、そのコンテキスト変数情報の選択情報を復号する。
【０１８３】
実施の形態２では、復号対象マクロブロックがスライス間を跨ぐイントラ予測であるか、または、スライスの左端のマクロブロックにおいて選択されるコンテキスト変数情報が、左隣接スライスからのコンテキスト変数情報である場合、左隣接スライスを参照する必要がある。この場合（すなわち、遅延が必要な場合（図１８のステップＳ２０７のＹＥＳ））、復号管理部３０２は、左隣接スライスの該当する参照画素または参照マクロブロックの復号が終了するまで、復号対象マクロブロックの復号処理を待機させ、その復号開始時刻（タイミング）を遅延させる（図１８のステップＳ２０８）。ここでの復号開始時刻（タイミング）の同期管理は、他のスライスを参照してイントラ予測や動きベクトル予測、またはコンテキスト変数情報の選択が行われたマクロブロックに対してのみ実行されればよい。
【０１８４】
バッファ３０５、３０８、３１１、３１４は、復号管理部３０２に制御され、復号処理が開始できるようになったら（図８のステップＳ２０７のＮＯ）、それぞれ保持している符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）を読み出して、スライスデータ復号部７０６、７０９、７１２、７１５に供給する。スライスデータ復号部７０６、７０９、７１２、７１５は、供給された符号化ビット列Ｓ（０）、Ｓ（１）、Ｓ（２）、Ｓ（３）に含まれるマクロブロックの復号処理を開始する。
【０１８５】
次に、スライスデータ復号部７０６、７０９、７１２、７１５の構成及び動作について図１７及び図１８を用いて説明する。図１７は、一つのスライスデータ復号部の構成を示しており、復号管理部３０２の制御は、図１７に示す一つのスライスデータ復号部のすべてのブロックに対して及ぶ。復号管理部３０２の制御により、スイッチ４０９、４１３、８１６をオフにして、スイッチ４１０、４１４、８１８をオンにした場合、スライスデータ復号部７０６と等価となる。また、復号管理部３０２の制御により、スイッチ４０９、４１０、４１３、４１４、８１６、８１８を全てオンにした場合、スライスデータ復号部７０９、７１２と等価となる。さらに、復号管理部３０２の制御により、スイッチ４０９、４１３、８１６をオンにし、スイッチ４１０、４１４、８１８をオフにした場合、スライスデータ復号部７１５と等価となる。
【０１８６】
符号化ビット列復号部８０１は、算術符号化等のエントロピー符号化を用いて符号化された符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、・・・）を復号し、画素ブロック単位で、符号化モード、動きベクトル、符号化残差信号等の情報を得る。ここで、符号化ビット列復号部８０１は、コンテキスト変数情報の選択情報が、スライスの先頭に纏めて符号化されている場合、該当するマクロブロックの選択情報を復号管理部３０２から取得する。コンテキスト変数情報の選択情報が、該当するマクロブロックの先頭に符号化されている場合、符号化ビット列Ｓ（ｖ）（ｖ＝０、１、２、・・・）からコンテキスト変数情報の選択情報を取得する。符号化ビット列復号部８０１は、取得したコンテキスト変数情報の選択情報を復号する（図１８のステップＳ４１８）。
【０１８７】
図１４に示すＳ１（１，０）のマクロブロックを例に説明すると、復号したコンテキスト変数情報の選択情報により、スライスの右端のマクロブロックＳ１（０，Ｎ）のコンテキスト変数情報が選択されている場合、次のように処理する。すなわち、現在保持されているコンテキスト変数情報をそのまま継続するため、符号化ビット列復号部８０１は、算術符号化パラメータバッファ８１５を参照せず（図１８のステップＳ４１９のＮＯ）、符号化ビット列に対して、従来の算術符号化の復号処理を行う（図１８のステップＳ４２０）。
【０１８８】
それ以外のコンテキスト変数情報が選択されている場合において（図１８のステップＳ４１９のＹＥＳ）、左隣接スライスからのコンテキスト変数情報Ｓ０（１，Ｎ）が選択されている場合（図１８のステップＳ４２１のＹＥＳ）、次のように処理する。すなわち、符号化ビット列復号部８０１は、スイッチ８１６を経由して他のスライスデータ復号部から、左隣接スライスの該当マクロブロックのコンテキスト変数情報を取得し、符号化ビット列の復号処理を行う（図１８のステップＳ４２３）。
【０１８９】
自己が担当するスライスの、復号対象マクロブロックの上のマクロブロックＳ１（０，０）のコンテキスト変数情報が選択されている場合（図１８のステップＳ４２１のＮＯ）、次のように処理する。すなわち、符号化ビット列復号部８０１は、スイッチ８１６を経由して算術符号化パラメータバッファ８１５から、当該コンテキスト変数情報を取得し、符号化ビット列の復号処理を行う（図１８のステップＳ４２２）。
【０１９０】
符号化ビット列復号部８０１は、復号対象マクロブロックがスライスの右端及び左端のマクロブロックにおいて、そのマクロブロックの復号後の算術符号化パラメータであるコンテキスト変数情報を、スイッチ８１７を経由して算術符号化パラメータバッファ８１５に格納する。また、符号化ビット列復号部８０１は、復号対象マクロブロックがスライスの右端のマクロブロックにおいて、スイッチ８１８を介して、算術符号化パラメータバッファ８１５から右隣接スライスを担当するスライスデータ復号部へ、当該マクロブロックのコンテキスト変数情報を出力する。
【０１９１】
符号化ビット列の復号後の処理については、実施の形態１と同様の処理が、イントラ予測部４０２、残差信号復号部４０４、残差信号重畳部４０５、復号スライスデータバッファ４０６、インター予測部４０７、スイッチ４０８、４０９、４１０、４１１、４１２、４１３、４１４を用いて行われる（図１８のステップＳ２１０〜Ｓ２１５）。
【０１９２】
以上、ステップＳ２０７からステップＳ２１５までの処理を、画素ブロック単位で、ピクチャのスライス内のすべての画素ブロックの復号が完了するまで繰り返す（図１８のステップＳ２０６〜Ｓ２１６）。
【０１９３】
復号画像バッファ３１６は、格納された復号画像信号を、復号管理部３０２により制御される時刻（タイミング）で表示時間順に表示装置等に出力する。また、復号スライスデータバッファ４０６に格納された復号画像信号は、必要に応じて、スイッチ４１０を介して他のスライスデータ復号部へ参照画素信号Ｒ（ｖ）として出力される。そして、ステップＳ２０４からステップＳ２１６までの処理を、復号画像（アクセスユニット）毎に繰り返す（図８のステップＳ２０３〜Ｓ２１７）。ここで、ステップＳ２０３からステップＳ２１７までの処理はプロセス毎に並列に行う。
【０１９４】
なお、以上の説明においては、各スライスを並列処理によりリアルタイムに復号する際に、それぞれの１つのスライスを１つのプロセス（スライスデータ復号部）で復号する例について述べた。この点、本実施の形態は、実施の形態１と同様にこれに限定されない。すなわち、スライスとプロセスの数が一致していなくてもよい。例えば、８つのスライスを４つのプロセスで復号することも可能である。この場合、２つのスライスを１つのプロセスで復号し、復号周期を２倍速とする。プロセス内の処理としては、２つのスライスのうちの一方のスライスのＮＡＬユニットを復号した後、他方のスライスのＮＡＬユニットを復号する。
【０１９５】
以上説明したように実施の形態２では、画像符号化装置５００は、スライス間の参照依存関係を示す情報として、スライス内のマクロブロックのスタート位置及び符号化／復号順序と共に、算術符号化におけるパラメータ情報であるコンテキスト変数情報の選択情報を符号化する。これにより、画像復号装置７００は、各スライスの符号化ビット列を並列処理によりリアルタイムに復号する際に、各プロセスの遅延時間を容易に認識することができる。すなわち、スライス参照依存情報に応じて、各スライスのマクロブロックの復号開始時刻（タイミング）を遅延させて、符号化ビット列の復号を開始することができる。したがって、それぞれ別のスライスを復号するプロセス間の同期をとることができる。
【０１９６】
また、画像復号装置７００では、コンテキスト変数情報を、参照依存関係のある隣接スライスを担当するプロセスに出力する機能を有する。そして、各プロセスは、スライスの境界となるマクロブロックにおいて、隣接スライスのコンテキスト情報を用いるか、自己の内部で管理されているコンテキスト情報を用いるかを、復号した選択情報を用いて切り替える機能を有する。これにより、算術符号化における発生確率テーブルの追従性を向上させることができる。よって、複数のスライスを並列処理しても、符号化効率の低下を抑制することができる。
【０１９７】
以上の画像符号化及び画像復号に関する処理は、ハードウェアを用いた伝送、蓄積、受信装置として実現することができるのは勿論のこと、ＲＯＭ（リード・オンリ・メモリ）やフラッシュメモリ等に記憶されているファームウェアや、コンピュータ等のソフトウェアによっても実現することができる。そのファームウェアプログラム、ソフトウェアプログラムをコンピュータ等で読み取り可能な記録媒体に記録して提供することも、有線あるいは無線のネットワークを通してサーバから提供することも、地上波あるいは衛星ディジタル放送のデータ放送として提供することも可能である。
【０１９８】
以上、本発明をいくつかの実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１９９】
１００  画像符号化装置、  １０１  符号化管理部、  １０２  符号化ビット列生成部、  １０３  画像バッファ、  １０４  スライスデータ分割部、  １０５，１０６，１０７，１０８  スライスデータ符号化部、  １０９  符号化ビット列多重化部、  １１０  復号画像バッファ、  ２０１  スライスデータバッファ、  ２０２  イントラ予測部、  ２０３  符号化モード判定部、  ２０４  残差信号演算部、  ２０５  残差信号符号化部、  ２０６  残差信号復号部、  ２０７  残差信号重畳部、  ２０８  復号スライスデータバッファ、  ２０９  符号化ビット列生成部、  ２１０  インター予測部、  ２１１，２１２，２１３，２１４，２１５  スイッチ、  ３００  画像復号装置、  ３０１  符号化ビット列復号部、  ３０２  復号管理部、  ３０３  分離部、  ３０４，３０７，３１０，３１３  符号化ビット列復号部、  ３０５，３０８，３１１，３１４  バッファ、  ３０６，３０９，３１２，３１５  スライスデータ復号部、  ３１６  復号画像バッファ、  ４０１  符号化ビット列復号部、  ４０２  イントラ予測部、  ４０４  残差信号復号部、  ４０５  残差信号重畳部、  ４０６  復号スライスデータバッファ、  ４０７  インター予測部、  ４０８，４０９，４０９，４１０，４１１，４１２，４１３，４１４  スイッチ、  ５００  画像符号化装置、  ５０５，５０６，５０７，５０８  スライスデータ符号化部、  ６０９  符号化ビット列生成部、  ６１６  算術符号化パラメータ判定部、  ６１７  算術符号化パラメータバッファ、  ６１８，６２０  スイッチ、  ７００  画像復号装置、  ７０６，７０９，７１２，７１５  スライスデータ復号部、  ８１５  算術符号化パラメータバッファ、  ８１６，８１７，８１８  スイッチ、  ８０１  符号化ビット列復号部。
【図１】
2011217082.tif 000003
【図２】
2011217082.tif 000004
【図３】
2011217082.tif 000005
【図４】
2011217082.tif 000006
【図５】
2011217082.tif 000007
【図６】
2011217082.tif 000008
【図７】
2011217082.tif 000009
【図８】
2011217082.tif 000010
【図９】
2011217082.tif 000011
【図１０】
2011217082.tif 000012
【図１１】
2011217082.tif 000013
【図１２】
2011217082.tif 000014
【図１３】
2011217082.tif 000015
【図１４】
2011217082.tif 000016
【図１５】
2011217082.tif 000017
【図１６】
2011217082.tif 000018
【図１７】
2011217082.tif 000019
【図１８】
2011217082.tif 000020