(57)【要約】  画像復号方法は、復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率とによって、復号対象信号を算術復号する算術復号ステップ（Ｓ１０１〜Ｓ１０５）と、算術復号した結果に応じて更新するコンテキスト更新処理を、ある一定の大きさに区分された処理単位毎にまとめて実行するコンテキスト更新ステップ（Ｓ１０７）とを含む。
2012114711.tif 000002
【特許請求の範囲】
【請求項１】
符号化画像データを復号する画像復号方法であって、
復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率とによって、復号対象信号を算術復号する算術復号ステップと、
算術復号した結果に応じて更新するコンテキスト更新処理を、ある一定の大きさに区分された処理単位毎にまとめて実行するコンテキスト更新ステップとを含む
画像復号方法。
【請求項２】
前記処理単位は、ブロック単位である
請求項１に記載の画像復号方法。
【請求項３】
前記コンテキスト更新ステップでは、各処理単位に対するコンテキスト更新処理を、復号順とは逆順に実行する
請求項１又は２に記載の画像復号方法。
【請求項４】
前記コンテキスト更新ステップでは、一定量の復号シンボルに対しては処理単位の最後に逆順に更新処理を実行する
請求項１又は２に記載の画像復号方法。
【請求項５】
画像データを圧縮符号化する画像符号化方法であって、
符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率とによって、符号化対象信号を算術符号化する算術符号化ステップと、
算術符号化の結果に応じて更新するコンテキスト更新処理を、ある一定の大きさに区分された処理単位毎にまとめて実行するコンテキスト更新ステップとを含む
画像符号化方法。
【請求項６】
前記処理単位は、ブロック単位である
請求項５に記載の画像符号化方法。
【請求項７】
前記コンテキスト更新ステップでは、各処理単位に対するコンテキスト更新処理を、符号化順とは逆順に実行する
請求項５又は６に記載の画像符号化方法。
【請求項８】
前記コンテキスト更新ステップでは、一定量の符号化シンボルに対しては処理単位の最後に逆順に更新処理を実行する
請求項５又は６に記載の画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置に関し、特に、算術符号化及び算術復号を行う画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置に関する。
【背景技術】
【０００２】
近年、インターネットを介したビデオ会議、デジタルビデオ放送及び映像コンテンツのストリーミングを含む、例えば、ビデオ・オン・デマンドタイプのサービスのためのアプリケーションの数が増えており、これらのアプリケーションは、映像情報の送信に頼っている。映像データが送信され、又は、記録される時、かなりの量のデータは、限られたバンド幅の従来の伝送路を通って送信され、又は、限られたデータ容量の従来の記憶媒体に記憶される。従来の伝送チャネル及び記憶媒体に映像情報を送信及び記憶するためには、デジタルデータの量を圧縮又は削減することが不可欠である。【０００３】
そこで、映像データの圧縮のために、複数の映像符号化規格が開発されている。このような映像符号化規格は、例えばＨ．２６ｘで示されるＩＴＵ−Ｔ（国際電気通信連合電気通信標準化部門）規格、及び、ＭＰＥＧ−ｘで示されるＩＳＯ／ＩＥＣ規格である。最新かつ最も進んだ映像符号化規格は、現在、Ｈ．２６４／ＡＶＣ、又はＭＰＥＧ−４  ＡＶＣで示される規格である（非特許文献１及び非特許文献２参照）。【０００４】
Ｈ．２６４／ＡＶＣ規格では、大きく分けると、予測、変換、量子化、エントロピー符号化という処理で構成される。この中でエントロピー符号化は、予測に用いられる情報や、量子化された情報から冗長な情報を削減する。エントロピー符号化としては、可変長符号化、適応符号化、固定長符号化等が知られている。可変長符号化にはハフマン符号化、ランレングス符号化、算術符号化等がある。このうち、算術符号化は、シンボルの発生確率を計算しながら出力符号を決める方式であり、画像データの特徴に応じて符号が決められるため、固定した符号化テーブルを使用するハフマン符号化等に比べて符号化効率が高いことが知られている。【０００５】
図２２〜図２４を用いて、従来の算術復号方法について説明する。【０００６】
まず、図２２〜図２４を用いて、算術復号の流れを以下に説明する。【０００７】
図２２は、従来のＨ．２６４／ＡＶＣの算術復号の処理を表した算術復号部の構成を示すブロック図である。図２２に示されるように、算術復号部９０は、コンテキスト導出部（Ｃｏｎｔｅｘｔ  Ｓｅｌｅｃｔｉｏｎ）９１と、コンテキスト読出部（Ｃｏｎｔｅｘｔ  Ｌｏａｔ）９２と、２値算術復号部（Ｂｉｎ  Ｄｅｃｏｄｅｒ）９３と、多値化部（Ｄｅ−Ｂｉｎａｒｉｚｅｒ）９４と、コンテキスト更新部（Ｃｏｎｔｅｘｔ  Ｕｐｄａｔｅ）９５と、コンテキスト格納部（Ｃｏｎｔｅｘｔ  Ｍｅｍｏｒｙ）９６とを含む。【０００８】
図２３は、算術復号の処理の流れを示すフローチャートである。【０００９】
まず、コンテキスト導出部９１において、復号対象の信号に対するコンテキストの導出処理を行う（ステップＳ０１）。コンテキストの導出には、例えば、既に復号済みの復号シンボルや、既に復号済みであり、多値化された隣接ブロックの復号信号を取得し、あらかじめ決められた方法により、コンテキストを決定し、決定したコンテキスト番号をコンテキスト読出部９２に伝える。【００１０】
コンテキスト読出部９２では、コンテキスト番号に従い、コンテキスト格納部９６より指定されたコンテキストに対応するシンボル発生確率を読み出す（ステップＳ０２）。読み出されたシンボル発生確率に基づき、２値算術復号部９３において、算術復号処理が施される（ステップＳ０３）。【００１１】
コンテキスト更新部９５は、算術復号することにより得られる復号シンボルより復号に使用したコンテキストの更新処理を行う（ステップＳ０４）。コンテキストの更新では、コンテキストに対応するシンボル発生確率を変更し、更新したシンボル発生確率をコンテキスト格納部９６に格納する。一方、算術復号により得られる復号シンボルに対し、多値化処理を施し（ステップＳ０５）、復号対象信号の復号信号を出力する。【００１２】
図２４は、算術復号処理をより高速に処理するために、処理を並列に実装した場合の、処理のタイミングを示す概要図である。【００１３】
図２４は、プロセス１（Ｐｒｏｃ１）の処理回路で、コンテキスト導出処理（ＣＳ）、コンテキスト読み出し処理（ＣＬ）、２値算術復号処理（ＢＡＤ）、コンテキスト更新（ＣＵ）の動作を時間軸に沿って記述しており、簡単のため、それぞれの処理時間は同じものとして示している。同様に、プロセス２（Ｐｒｏｃ２）、プロセス３（Ｐｒｏｃ３）、プロセス４（Ｐｒｏｃ４）を含んでいる例である。【００１４】
図中の矢印で示す部分は、矢印の根元から、矢印の先端部に対して、順番を維持する必要があるという依存関係を示している。２値算術復号処理では、２値算術復号の内部状態を復号毎に更新するため、２値算術復号処理に対して依存関係がある。また、同一コンテキストを使う場合（図中はこの場合を説明）、コンテキストを更新した結果をさらに参照するため、コンテキスト更新（ＣＵ）と次の復号のためのコンテキスト読み出し（ＣＬ）とに依存関係がある。
【先行技術文献】
【非特許文献】
【００１５】
【非特許文献１】ＩＳＯ／ＩＥＣ  １４４９６−１０  「ＭＰＥＧ−４  Ｐａｒｔ１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」
【非特許文献２】Ｔｈｏｍａｓ  Ｗｉｅｇａｎｄ  ｅｔ  ａｌ、“Ｏｖｅｒｖｉｅｗ  ｏｆ  ｔｈｅ  Ｈ．２６４／ＡＶＣ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｓｔａｎｄａｒｄ”、ＩＥＥＥ  ＴＲＡＮＳＡＣＴＩＯＮＳ  ＯＮ  ＣＩＲＣＵＩＴＳ  ＡＮＤ  ＳＹＳＴＥＭＳ  ＦＯＲ  ＶＩＤＥＯ  ＴＥＣＨＮＯＬＯＧＹ、ＪＵＬＹ  ２００３、ＰＰ．１−１９．
【発明の概要】
【発明が解決しようとする課題】
【００１６】
しかしながら、上記従来の技術では、同一コンテキストを使う場合には、図２４で説明したように、コンテキストを更新した結果をさらに参照するため、コンテキスト更新（ＣＵ）と次の復号のためのコンテキスト読み出し（ＣＬ）とに依存関係がある。このため、図２４で示すように３処理単位の遅延（ｌａｔｅｎｃｙ）が必要となり、並列処理による実行時間の短縮効果が小さくなる。【００１７】
そこで、本発明は、上記従来の課題を解決するためになされたものであって、処理の並列化を容易とし、符号化効率を維持することができる画像符号化方法及び画像復号方法を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明の一形態に係る画像復号方法は、符号化画像データを復号する方法である。具体的には、画像復号方法は、復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率とによって、復号対象信号を算術復号する算術復号ステップと、算術復号した結果に応じて更新するコンテキスト更新処理を、ある一定の大きさに区分された処理単位毎にまとめて実行するコンテキスト更新ステップとを含む。【００１９】
これにより、処理単位内では導出されるコンテキストに依存せずに処理順番を決定できる。このため、処理単位内での並列化を容易にすることができ、並列処理により多くのデータ（例えば解像度の高い映像信号）に対する復号処理を高速に処理することを可能とする。【００２０】
一例として、前記処理単位は、ブロック単位であってもよい。【００２１】
また、前記コンテキスト更新ステップでは、各処理単位に対するコンテキスト更新処理を、復号順とは逆順に実行してもよい。【００２２】
また、前記コンテキスト更新ステップでは、一定量の復号シンボルに対しては処理単位の最後に逆順に更新処理を実行してもよい。【００２３】
本発明の一形態に係る画像符号化方法は、画像データを圧縮符号化する方法である。具体的には、画像符号化方法は、符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率とによって、符号化対象信号を算術符号化する算術符号化ステップと、算術符号化の結果に応じて更新するコンテキスト更新処理を、ある一定の大きさに区分された処理単位毎にまとめて実行するコンテキスト更新ステップとを含む。【００２４】
一例として、前記処理単位は、ブロック単位であってもよい。【００２５】
また、前記コンテキスト更新ステップでは、各処理単位に対するコンテキスト更新処理を、符号化順とは逆順に実行してもよい。【００２６】
また、前記コンテキスト更新ステップでは、一定量の符号化シンボルに対しては処理単位の最後に逆順に更新処理を実行してもよい。【００２７】
なお、本発明は、画像符号化方法及び画像復号方法として実現できるだけではなく、当該画像符号化方法及び画像復号方法に含まれる処理ステップを実行する処理部を備える装置として実現することもできる。また、これらステップをコンピュータに実行させるプログラムとして実現してもよい。さらに、当該プログラムを記録したコンピュータ読み取り可能なＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）などの記録媒体、並びに、当該プログラムを示す情報、データ又は信号として実現してもよい。そして、それらプログラム、情報、データ及び信号は、インターネットなどの通信ネットワークを介して配信してもよい。【００２８】
また、上記の画像符号化装置及び画像復号装置を構成する構成要素の一部又は全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されていてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを含んで構成されるコンピュータシステムである。【００２９】
本発明の他の形態に係る画像復号方法は、符号化画像データを復号する方法である。具体的には、画像復号方法は、号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、復号対象信号を算術復号する場合に、復号した結果に応じて更新するコンテキスト更新処理を、ある一定処理単位毎にまとめて実施することにより、復号時に参照するコンテキストの処理順番との依存関係を少なくする。【００３０】
本発明の他の形態に係る画像符号化方法は、画像データを圧縮符号化する方法である。具体的には、画像符号化方法は、符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、符号化対象信号を算術符号化する場合に、符号化対象信号に応じて更新するコンテキスト更新処理を、ある一定処理単位毎にまとめて実施することにより、符号化時に参照するコンテキストの処理順番との依存関係を少なくする。【００３１】
本発明の他の形態に係る画像復号方法は、符号化画像データを復号する方法である。具体的には、画像復号方法は、復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、復号対象信号を算術復号する場合に、復号した結果に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実行し、復号時に参照するコンテキストの処理順番との依存関係を少なくし、さらに、更新処理を実施する場合に、従来のコンテキスト格納部に加えて対となるコンテキスト格納部を備え、連動スイッチにより切り替えることにより、追加メモリ量を抑制しつつ、符号化ストリームを適切により高速に復号することができる。【００３２】
本発明の他の形態に係る画像復号方法は、符号化画像データを復号する方法である。具体的には、画像復号方法は、復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、復号対象信号を算術復号する場合に、復号した結果に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実行し、復号時に参照するコンテキストの処理順番との依存関係を少なくする。この処理単位をブロック処理単位とすることにより、画像特徴に応じて変更されるブロック形状に適応し、複雑な部分での更新を頻繁に、簡単な部分での更新を緩やかにすることができ、符号化効率の劣化を抑制しつつ、並列に符号化ストリームを復号することができる。【００３３】
本発明の他の形態に係る画像復号方法は、符号化画像データを復号する方法である。具体的には、画像復号方法は、復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、復号対象信号を算術復号する場合に、復号した結果に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実行し、復号時に参照するコンテキストの処理順番との依存関係を少なくし、さらに、更新処理を実施する場合に、復号順とは逆順に更新処理を実施することにより、次の処理単位でのシンボル発生確率を効率的に用いることを可能とし、符号化効率を向上させた符号化ストリームを適切に復号することができる。【００３４】
本発明の他の形態に係る画像復号方法は、符号化画像データを復号する方法である。具体的には、画像復号方法は、復号対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、復号対象信号を算術復号する場合に、復号した結果に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実行し、復号時に参照するコンテキストの処理順番との依存関係を少なくし、さらに、更新処理を実施する場合に、一定量の復号シンボルに対しては処理区分の最後に逆順に更新処理を実施することにより、次の処理単位でのシンボル発生確率を効率的に用いることを可能とし、符号化効率を向上させた符号化ストリームを適切に復号することができる。【００３５】
本発明の他の形態に係る画像符号化方法は、画像データを圧縮符号化する方法である。具体的には、画像符号化方法は、符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、符号化対象信号を算術符号化する場合に、符号化対象信号に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実施することにより、符号化時に参照するコンテキストの処理順番との依存関係を少なくし、さらに、更新処理を実施する場合に、従来のコンテキスト格納部に加えて対となるコンテキスト格納部を備え、連動スイッチにより切り替えることにより、追加メモリ量を抑制しつつ、高速に符号化することができる。【００３６】
本発明の他の形態に係る画像符号化方法は、画像データを圧縮符号化する方法である。具体的には、画像符号化方法は、符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、符号化対象信号を算術符号化する場合に、符号化対象信号に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実施することにより、符号化時に参照するコンテキストの処理順番との依存関係を少なくする。この処理単位をブロック処理単位とすることにより、画像特徴に応じて変更されるブロック形状に適応し、複雑な部分での更新を頻繁に、簡単な部分での更新を緩やかにすることができ、符号化効率の劣化を抑制しつつ、並列に符号化することができる。【００３７】
本発明の他の形態に係る画像符号化方法は、画像データを圧縮符号化する方法である。具体的には、画像符号化方法は、符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、符号化対象信号を算術符号化する場合に、符号化対象信号に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実施することにより、符号化時に参照するコンテキストの処理順番との依存関係を少なくし、さらに、更新処理を実施する場合に、復号順とは逆順に更新処理を実施することにより、次の処理単位でのシンボル発生確率を効率的に用いることを可能とし、符号化効率を向上しつつ、並列に符号化することができる。【００３８】
本発明の他の形態に係る画像符号化方法は、画像データを圧縮符号化する方法である。具体的には、画像符号化方法は、符号化対象信号の種別によって決定されるコンテキストと、そのコンテキストに対応して決められるシンボル発生確率によって、符号化対象信号を算術符号化する場合に、符号化対象信号に応じて更新するコンテキスト更新処理を、ある一定処理単位毎に区分して実施することにより、符号化時に参照するコンテキストの処理順番との依存関係を少なくし、さらに、更新処理を実施する場合に、一定量の復号シンボルに対しては処理区分の最後に逆順に更新処理を実施することにより、次の処理単位でのシンボル発生確率を効率的に用いることを可能とし、符号化効率を向上しつつ、並列に符号化することができる。
【発明の効果】
【００３９】
本発明によれば、符号化効率を維持しつつ、効率的な処理の並列化を実現することができる。
【図面の簡単な説明】
【００４０】
【図１】図１は、実施の形態１に係る算術復号部のブロック図である。
【図２】図２は、実施の形態１に係る算術復号処理のフローチャートである。
【図３】図３は、実施の形態１に係るシンボル発生確率テーブルを示す図である。
【図４】図４は、実施の形態１に係る状態保持部の動作を説明するための図である。
【図５】図５は、ｔｒａｎｓＩｄｘＭＰＳと、ｔｒａｎｓＩｄｘＬＰＳとの対応関係を示すテーブルである。
【図６】図６は、実施の形態１に係る算術復号処理のタイミングを示す図である。
【図７】図７は、実施の形態１に係る画像復号装置のブロック図である。
【図８】図８は、実施の形態２に係る算術符号化部のブロック図である。
【図９】図９は、実施の形態２に係る算術符号化処理のフローチャートである。
【図１０】図１０は、実施の形態２に係る算術符号化処理のタイミングを示す図である。
【図１１】図１１は、実施の形態２に係る画像符号化装置の示すブロック図である。
【図１２】図１２は、実施の形態３に係る算術復号部のブロック図である。
【図１３】図１３は、実施の形態３に係る算術復号化処理のフローチャートである。
【図１４】図１４は、実施の形態３に係る状態保持部の動作を説明するための図である。
【図１５】図１５は、実施の形態３に係る算術復号処理のタイミングを示す図である。
【図１６Ａ】図１６Ａは、実施の形態３の変形例に係る算術復号部のブロック図である。
【図１６Ｂ】図１６Ｂは、図１５の（ａ）のコンテキスト更新を実現する算術復号部のフローチャートである。
【図１６Ｃ】図１６Ｃは、コンテキストの更新方法の処理単位の一例を説明するための模式図である。
【図１６Ｄ】図１６Ｄは、コンテキスト並列更新処理の例を示す図である。
【図１７】図１７は、実施の形態４に係る算術符号化部のブロック図である。
【図１８】図１８は、実施の形態４に係る算術符号化部のフローチャートである。
【図１９】図１９は、実施の形態４に係る算術符号化処理のタイミングを示す図である。
【図２０】図２０は、実施の形態４の変形例に係る算術符号化部のブロック図である。
【図２１】図２１は、図１９のコンテキスト更新を実現する算術符号化部のフローチャートである。
【図２２】図２２は、従来のＨ．２６４／ＡＶＣの算術復号の処理を表した算術復号部のブロック図である。
【図２３】図２３は、従来の算術復号の処理の流れを示すフローチャートである。
【図２４】図２４は、従来の算術復号処理のタイミングを示す図である。
【図２５】図２５は、コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成図である。
【図２６】図２６は、デジタル放送用システムの全体構成図である。
【図２７】図２７は、テレビの構成例を示すブロック図である。
【図２８】図２８は、光ディスクである記録メディアに情報の読み書きを行う情報再生／記録部の構成例を示すブロック図である。
【図２９】図２９は、光ディスクである記録メディアの構造例を示す図である。
【図３０】図３０は、（ａ）携帯電話の一例を示す図（ｂ）携帯電話の構成例を示すブロック図である。
【図３１】図３１は、多重化データの構成を示す図である。
【図３２】図３２は、各ストリームが多重化データにおいてどのように多重化されているかを模式的に示す図である。
【図３３】図３３は、ＰＥＳパケット列に、ビデオストリームがどのように格納されるかを更に詳しく示した図である。
【図３４】図３４は、多重化データにおけるＴＳパケットとソースパケットの構造を示す図である。
【図３５】図３５は、ＰＭＴのデータ構成を示す図である。
【図３６】図３６は、多重化データ情報の内部構成を示す図である。
【図３７】図３７は、ストリーム属性情報の内部構成を示す図である。
【図３８】図３８は、映像データを識別するステップを示す図である。
【図３９】図３９は、各実施の形態の動画像符号化方法および動画像復号化方法を実現する集積回路の構成例を示すブロック図である。
【図４０】図４０は、駆動周波数を切り替える構成を示す図である。
【図４１】図４１は、映像データを識別し、駆動周波数を切り替えるステップを示す図である。
【図４２】図４２は、映像データの規格と駆動周波数を対応づけたルックアップテーブルの一例を示す図である。
【図４３】図４３は、（ａ）信号処理部のモジュールを共有化する構成の一例を示す図（ｂ）信号処理部のモジュールを共有化する構成の他の一例を示す図である。
【発明を実施するための形態】
【００４１】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００４２】
（実施の形態１）
本実施の形態の算術復号方法の概要について説明する。本実施の形態の算術復号方法は、復号対象となる信号に対応するコンテキストの更新を一定の大きさの処理単位に区分し、処理単位毎に一括して実施する。これにより、一定の処理単位内で算術復号処理の並列化を実現することができる。
【００４３】
以上が、本実施の形態の算術復号方法の概要についての説明である。
【００４４】
次に、本実施の形態の算術復号方法を行う算術復号部の構成について説明する。図１は本実施の形態１に係る算術復号部の構成の一例を示すブロック図である。なお、後述するように、本実施の形態１に係る算術復号部１０は、圧縮符号化された符号化画像データを復号する画像復号装置４００の一部に相当する。
【００４５】
図１に示されるように、算術復号部１０は、コンテキスト導出部（Ｃｏｎｔｅｘｔ  Ｓｅｌｅｃｔｉｏｎ）１１と、コンテキスト読出部（Ｃｏｎｔｅｘｔ  Ｌｏａｔ）１２と、２値算術復号部（Ｂｉｎ  Ｄｅｃｏｄｅｒ）１３と、多値化部（Ｄｅ−Ｂｉｎａｒｉｚｅｒ）１４と、状態保持部（Ｒｅｓｅｒｖｏｉｒ）１５と、コンテキスト一括更新部（Ｇｒｏｕｐ  Ｃｏｎｔｅｘｔ  Ｕｐｄａｔｅ）１６と、コンテキスト格納部（Ｃｏｎｔｅｘｔ  Ｍｅｍｏｒｙ）１７を含む。本実施の形態１に係る算術復号部１０の動作について、図２を用いてさらに詳しく説明する。
【００４６】
図２は、算術復号の処理の流れを示すフローチャートである。
【００４７】
まず、コンテキスト導出部１１において、復号対象の信号に対するコンテキストの導出処理を行う（ステップＳ１０１）。コンテキストの導出には、例えば、既に復号済みの復号シンボルや、既に復号済みであり、多値化された隣接ブロックの復号信号を取得し、あらかじめ決められた方法により、コンテキストを決定し、決定したコンテキスト番号をコンテキスト読出部１２に伝える。
【００４８】
次に、コンテキスト読出部１２では、コンテキスト番号に従い、コンテキスト格納部１７より指定されたコンテキストに対応するシンボル発生確率を読み出す（ステップＳ１０２）。なお、シンボル発生確率とコンテキストとの対応については、例えばテーブルにおいて管理されてもよい。シンボル発生確率テーブルについては、後で詳しく説明する。
【００４９】
次に、読み出されたシンボル発生確率に基づき、２値算術復号部１３において、算術復号処理が施される（ステップＳ１０３）。具体的には、コンテキスト読出部１２より取得するシンボル発生確率に基づいて、２値算術復号部１３の内部状態を更新し、状態に応じて復号対応のシンボルを出力する。ここで、２値算術復号部１３の内部状態とは、初期化もしくはリセット処理が施されるまで逐次的に更新処理されていく値のことである。ここでの２値算術復号部１３の動作の詳細は、例えば、Ｈ．２６４規格で用いられるものとしてよい。
【００５０】
次に、算術復号処理により得られる復号シンボルを状態保持部１５に対して出力する（ステップＳ１０４）。ここでは、コンテキスト毎に復号シンボルを保持し、コンテキストの状態を管理する。なお、状態保持部１５の詳細については、後で詳しく説明する。
【００５１】
一方、多値化部１４は、算術復号により得られる復号シンボルに対し、多値化処理を施し（ステップＳ１０５）、復号対象信号の復号信号を出力する。
【００５２】
コンテキスト一括更新部１６は、復号処理の単位が、コンテキスト一括更新処理の処理単位に達していなければ（ステップＳ１０６でＮＯ）、次の復号対象信号に対するコンテキスト導出処理（Ｓ１０１）に戻る。
【００５３】
一方、コンテキスト一括更新処理の処理単位に達した場合（ステップＳ１０６でＹＥＳ）、コンテキスト一括更新部１６は、状態保持部１５よりコンテキスト毎の復号シンボル群を取得し、コンテキスト一括更新処理を実行する（ステップＳ１０７）。なお、ここでコンテキスト一括更新部１６は、状態保持部１５の内容をリセットする。
【００５４】
コンテキストの一括更新処理では、コンテキスト毎に、コンテキストに対応するシンボル発生確率を変更し、更新したシンボル発生確率をコンテキスト格納部１７に格納する。具体的な処理の詳細については、後で詳しく説明する。
【００５５】
以上が、本実施の形態の算術復号部１０の構成についての説明である。
【００５６】
ここで、シンボル発生確率テーブルについて説明する。図３は、本実施の形態１に係るシンボル発生確率テーブルの一例を示す図である。
【００５７】
シンボル発生確率テーブルは、コンテキストとシンボル発生確率とを対応付けたテーブルである。図３におけるインデックス（ｃｔｘＩｄｘ）は、コンテキストを表すインデックスであり、具体的には、コンテキスト導出部１１で符号化中のマクロブロックの周辺の情報、又は、ブロック内の既に符号化済みの情報、又は、符号化するビット位置によって決められるインデックスである。
【００５８】
各インデックスが示すエントリは、シンボル発生確率を示す確率情報（ｐＳｔａｔｅＩｄｘ）と、発生確率の高いシンボル（Ｍｏｓｔ  Ｐｒｏｂａｂｌｅ  Ｓｙｍｂｏｌ）を示すシンボル（ｖａｌＭＰＳ）とを含んでいる。これらは、Ｈ．２６４規格に示されるものと同等である。すなわち、ｐＳｔａｔｅＩｄｘは、シンボル発生確率の値を示すインデックスである。コンテキスト格納部１７は、さらに、ｐＳｔａｔｅＩｄｘに対応するシンボル発生確率の値を示すテーブルを保持している。
【００５９】
次に、状態保持部１５について説明する。図４は、本実施の形態１に係る状態保持部１５の動作の一例を示すフローチャートである。
【００６０】
（一括更新方式その１）
図４の（ａ）は、状態保持部１５が算術復号処理により得られる復号シンボルから、コンテキスト更新処理を行い、更新したコンテキストを保持する場合の例である。まず、状態保持部１５は、２値算術復号部１３より復号シンボルを取得し（ステップＳ２０１）、取得した復号シンボルと、その算術復号に使用したコンテキストとに対して更新処理を行う（ステップＳ２０２）。
【００６１】
ここで、従来手法では、コンテキスト格納部１７内のシンボル発生確率値を、コンテキストの更新毎に行っていたが、コンテキスト格納部１７ではなく、状態保持部１５で保持する（ステップＳ２０３）。この場合、図２のステップＳ１０７において、コンテキスト一括更新部１６は、状態保持部１５で保持している更新されたコンテキストの結果をコンテキスト格納部１７内のシンボル発生確率値に反映させる。
【００６２】
この場合のコンテキストの更新処理は、例えば図５に示す遷移テーブルに基づいて実施してもよい。図５は、発生したシンボル確率値（ｐＳｔａｔｅＩｄｘ）毎に、発生確率の高いシンボル（ＭＰＳ）が発生した場合の次のシンボル発生確率値（ｐＳｔａｔｅＩｄｘ）であるｔｒａｎｓＩｄｘＭＰＳと、発生確率の低いシンボル（ＬＰＳ）が発生した場合の次のシンボル発生確率値（ｐＳｔａｔｅＩｄｘ）であるｔｒａｎｓＩｄｘＬＰＳとを示すテーブルである。図４の（ａ）の例では、コンテキスト毎に復号シンボルがＭＰＳかＬＰＳかに応じてシンボル発生確率値を更新し、保持しておく例である。
【００６３】
なお、メモリの効率的な使用のために、コンテキスト格納部１７内の別のメモリ領域に保持してもよい。この場合、コンテキスト更新部分は信号発生毎に実施することができるため、実行タイミングを制御しやすいというメリットがある。
【００６４】
（一括更新方式その２）
一方、図４の（ｂ）は、状態保持部１５が算術復号処理により得られる復号シンボルそのものを保持する場合の例である。
【００６５】
まず、状態保持部１５は、２値算術復号部１３より復号シンボルを取得し（ステップＳ３０１）、取得した復号シンボルを、その算術復号に使用したコンテキストに対応する方法で保持する（ステップＳ３０２）。この保持する方法としては、例えば図４の（ｃ）に示すテーブルのようにコンテキスト毎に発生シンボルを保持しておいてもよい。発生シンボル長は、前述のコンテキスト一括更新処理単位によって最大値が決められる。
【００６６】
この場合、図２のステップＳ１０７において、コンテキスト一括更新部１６は、状態保持部１５で保持しているコンテキスト毎の発生シンボル結果を元に、コンテキスト更新処理を施し、コンテキスト格納部１７内のシンボル発生確率値に反映させる。
【００６７】
なお、コンテキスト一括更新部１６は、図５に示す遷移テーブルに基づいて、図４の（ｃ）で保持された発生シンボルに応じて順番に更新処理をしてもよい（一括更新方式その２Ａ）。
【００６８】
この場合、コンテキスト一括更新処理の処理単位に達した時点で逐次処理を実行して更新処理を行うこととなり、算術復号処理時にコンテキスト更新処理を実行しなくてよい。このため、処理負荷を分散できる可能性がある。
【００６９】
また、コンテキスト一括更新部１６は、図４の（ｃ）で保持された発生シンボルを事前処理した信号に対して更新処理を行ってもよい（一括更新方式その２Ｂ）。
【００７０】
具体的に事前処理とは、例えば次の方法がある。
【００７１】
第１の方法として、１と０の発生回数の差分を算出し、数の多い側の更新しかしない。具体的には、図４の（ｃ）のｃｔｘＩｄｘ＝０の場合では、１が３回、０が２回発生しているため、更新処理としては、１が１回発生したものとして更新処理を行う。
【００７２】
これにより、更新に係る処理量を削減することができる。
【００７３】
第２の方法として、あらかじめＭＰＳが連続して発生する回数をカウントし、更新処理を一括して行う。具体的には、図４の（ｃ）のｃｔｘＩｄｘ＝１の場合では、０が２回発生している。０がＭＰＳである場合、図５に示す遷移テーブルのように、現在のｐＳｔａｔｅＩｄｘに＋２する処理を行うだけでよく、逐次演算をしなくてよい。
【００７４】
これにより、更新に係る処理量を削減することができる。
【００７５】
第３の方法として、シンボル発生順を変更し、ＭＰＳを先にＬＰＳを後に発生したものとする。具体的には、図４の（ｃ）のｃｔｘＩｄｘ＝０の場合では、１がＭＰＳとした場合、１１１００と順番に発生したものとして処理してもよい。ＬＰＳが発生した場合の更新が大きく変更されるため、ＭＰＳを先にすることにより、安定したシンボル発生確率を導出することができる。また、逆にＬＰＳを先にしてもよい。どちらを先に固めるかについては、あらかじめ決めておいてもよいし、ヘッダ情報として符号化された情報を用いてもよい。
【００７６】
これにより、さらに符号化効率を向上させることができる可能性がある。なお、上記の第１、第２、及び第３の方法はそれぞれ単独であってもよいし、組み合わせて実行してもよい。
【００７７】
図６は、算術復号処理をより高速に処理するために、処理を並列に実装した場合の、処理のタイミングを示す概要図である。
【００７８】
図６の（ａ）は一括更新方式その１、図６の（ｂ）は一括更新方式その２Ａ、図６の（ｃ）は一括更新方式その２Ｂにそれぞれ対応している。
【００７９】
図６は、プロセス１（Ｐｒｏｃ１）の処理回路で、コンテキスト導出処理（ＣＳ）、コンテキスト読み出し処理（ＣＬ）、２値算術復号処理（ＢＡＤ）、コンテキスト更新（ＣＵ）の動作を時間軸に沿って記述しており、簡単のため、それぞれの処理時間は同じものとして示している。同様に、プロセス２（Ｐｒｏｃ２）、プロセス３（Ｐｒｏｃ３）、プロセス４（Ｐｒｏｃ４）を含んでいる例である。また、図６の（ｃ）のＧｒｏｕｐＣＵとは、発生シンボルを事前処理した場合の一括コンテキスト処理を示しており、事前処理の内容によって処理時間は変わるため、１処理単位以上のサイズで表現している。
【００８０】
また、図中の矢印で示す部分は、矢印の根元から、矢印の先端部に対して、順番を維持する必要があるという依存関係を示している。２値算術復号処理では、２値算術復号部１３の内部状態を復号毎に更新するため、２値算術復号処理に対して依存関係がある。また、同一コンテキストを使う場合（図中はこの場合を説明）、コンテキストを更新した結果をさらに参照するため、コンテキスト更新（ＣＵ）と次の復号のためのコンテキスト読み出し（ＣＬ）とに依存関係がある。しかしながら、本実施の形態によれば、この依存関係を分離することができるため、図６中にこの依存関係を示す矢印は不要となる。
【００８１】
図６の（ａ）に示される一括更新方式その１の場合、プロセス１は、それぞれの処理（コンテキスト導出処理、コンテキスト読み出し処理、２値算術復号処理）と順番に処理し、最後にコンテキスト更新処理を行う。ここでのコンテキスト更新処理は、更新結果をコンテキストメモリに反映しない。このため、プロセス２によるコンテキスト読み出し時には、常に過去の、より具体的には、コンテキストの一括更新処理直後の、シンボル発生確率値を読み出す。このため、プロセス１のコンテキスト更新処理が、プロセス２、プロセス３のコンテキスト読み出し処理よりも後にある（図中）場合であっても、正確に復号処理を実現することができる。
【００８２】
これにより、並列処理を行った場合であっても、処理遅延（ｌａｔｅｎｃｙ）を最低限（図中は１処理時間）とすることができる。この処理遅延は、算術復号中の状態値の依存関係に起因しており、状態値の推定等によりさらに処理遅延を削減することができる。なお、本実施の形態は、このようなさらに処理遅延を削減する場合であっても、コンテキストの依存関係による処理遅延を削減するという観点で有効である。
【００８３】
次に、図６の（ｂ）に示される一括更新方式その２Ａの場合、図６の（ａ）と比べて、算術復号の直後にコンテキスト更新処理を行わず、コンテキストの一括更新処理の処理単位毎に、まとめて更新する場合の例である。この場合であっても、図６の（ａ）と同様に、算術復号時の処理遅延（ｌａｔｅｎｃｙ）は１処理時間とすることができる。
【００８４】
次に、図６の（ｃ）に示される一括更新方式その２Ｂの場合、図６の（ａ）と比べて、コンテキストの一括更新処理の処理単位毎に、前処理を行った後に、まとめて更新する場合の例である。この場合であっても、図６の（ａ）と同様に、算術復号時の処理遅延（ｌａｔｅｎｃｙ）は１処理時間とすることができる。また、図６の（ｂ）と比べて一括更新に必要な処理時間を短縮できる可能性がある。
【００８５】
なお、ここで、復号処理の単位が、コンテキスト一括更新処理の処理単位とは、例えば係数符号化単位である変換ブロック単位（ＴＵ）であってもよいし、予測符号化の予測方法を切り替える単位である予測ブロック単位（ＰＵ）であってもよいし、さらに符号化処理をまとめた単位である符号化ブロック単位（ＣＵ）であってもよいし、さらに取りうる最大の符号化処理単位ブロック単位（ＬＣＵ）であってもよい。処理単位が大きいほど、並列度を高めることができる一方、コンテキストの更新が遅くなるため、シンボル発生確率の画面内での適応度が下がり、符号化効率が劣化する可能性が高くなる。
【００８６】
これらの処理単位は、符号化する信号種別毎にどの処理単位を用いるかをあらかじめ決めておいてもよいし、ヘッダ情報（例えばプロファイルを示す情報）によって切り替えてもよい。これにより、処理の並列度が必要かどうかによって、処理単位を制御することができるため、符号化効率の劣化を抑制しつつ処理の並列度を上げることができる。
【００８７】
なお、本実施の形態に係る算術復号部１０は、圧縮符号化された符号化画像データを復号する画像復号装置に備えられる。図７は、本実施の形態に係る画像復号装置４００の構成の一例を示すブロック図である。
【００８８】
画像復号装置４００は、圧縮符号化された符号化画像データを復号する。例えば、画像復号装置４００には、符号化画像データがブロック毎に復号対象信号として入力される。画像復号装置４００は、入力された復号対象信号に、可変長復号、逆量子化及び逆変換を行うことで、画像データを復元する。
【００８９】
図７に示すように、画像復号装置４００は、エントロピー復号部４１０と、逆量子化・逆変換部４２０と、加算器４２５と、デブロッキングフィルタ４３０と、メモリ４４０と、イントラ予測部４５０と、動き補償部４６０と、イントラ／インター切換スイッチ４７０とを備える。
【００９０】
エントロピー復号部４１０は、入力信号（入力ストリーム）を可変長復号することで、量子化係数を復元する。なお、ここで、入力信号（入力ストリーム）は、復号対象信号であり、符号化画像データのブロック毎のデータに相当する。また、エントロピー復号部４１０は、入力信号から動きデータを取得し、取得した動きデータを動き補償部４６０に出力する。
【００９１】
逆量子化・逆変換部４２０は、エントロピー復号部４１０によって復元された量子化係数を逆量子化することで、変換係数を復元する。そして、逆量子化・逆変換部４２０は、復元した変換係数を逆変換することで、予測誤差を復元する。加算器４２５は、復元された予測誤差と予測信号とを加算することで、復号画像を生成する。
【００９２】
デブロッキングフィルタ４３０は、生成された復号画像にデブロッキングフィルタ処理を行う。デブロッキングフィルタ処理された復号画像は、復号信号として出力される。メモリ４４０は、動き補償に用いられる参照画像を格納するためのメモリである。具体的には、メモリ４４０には、デブロッキングフィルタ処理が施された復号画像を格納する。
【００９３】
イントラ予測部４５０は、イントラ予測を行うことで、予測信号（イントラ予測信号）を生成する。具体的には、イントラ予測部４５０は、加算器４２５によって生成された復号画像における、復号対象ブロック（入力信号）の周囲の画像を参照してイントラ予測を行うことで、イントラ予測信号を生成する。
【００９４】
動き補償部４６０は、エントロピー復号部４１０から出力された動きデータに基づいて動き補償を行うことで、予測信号（インター予測信号）を生成する。
【００９５】
イントラ／インター切換スイッチ４７０は、イントラ予測信号及びインター予測信号のいずれかを選択し、選択した信号を予測信号として加算器４２５に出力する。
【００９６】
以上の構成により、本実施の形態に係る画像復号装置４００は、圧縮符号化された符号化画像データを復号する。
【００９７】
なお、図７において、本実施の形態に係る算術復号部１０は、エントロピー復号部４１０が備える。すなわち、算術復号部１０は、入力ストリームＩＳとして、予測符号化が実行された符号化画像データを算術復号及び多値化する。また、信号種別情報ＳＥは、量子化係数の位置、動きデータ、又は、イントラ予測部４５０が用いるイントラ予測方向などを示す情報である。
【００９８】
なお、一括コンテキスト更新処理の処理単位の情報（処理単位や区分する信号種別）を示す情報が、ビットストリームの先頭（ストリームヘッダ）に記録されている場合、その記録された情報を読み取って、コンテキスト更新処理を切り替えてもよい。これにより、並列化処理をより適当に実行できるよう構成された符号化ストリームを復号することができる。
【００９９】
なお、ヘッダに記録する単位は、スライス、ピクチャに対応する単位であっても、同様に復号できる。また、符号化側と復号側とで共通として、何も伝送しなくてもよい。
【０１００】
以上のように、本実施の形態に係る画像復号装置及び画像復号方法によれば、算術復号処理の並列処理を可能にし、高速に処理することが可能となる。
【０１０１】
具体的には、従来必要であった、コンテキストに対する依存関係を適切な単位で切り離すことができる。このため、符号化効率を維持しつつ、並列処理を実現し、例えば高解像度の映像のリアルタイム再生処理などで必要な、高速演算回路によって実現することができる。
【０１０２】
（実施の形態２）
本実施の形態の算術復号方法の概要について説明する。本実施の形態の算術符号化方法は、符号化対象となる信号に対応するコンテキストの更新を一定の大きさに区分された処理単位毎に一括して実施する。これにより、一定の処理単位内で算術符号化処理の並列化を実現することができる。
【０１０３】
以上が、本実施の形態の算術符号化方法の概要についての説明である。
【０１０４】
次に、本実施の形態の算術符号化方法を行う算術符号化部の構成について説明する。図８は本実施の形態２に係る算術符号化部の構成の一例を示すブロック図である。なお、後述するように、本実施の形態２に係る算術符号化部２０は、画像信号を圧縮符号化し、符号化画像データを出力する画像符号化装置２００の一部に相当する。
【０１０５】
図８に示されるように、算術符号化部２０は、２値化部（Ｂｉｎａｒｉｚｅｒ）２１と、コンテキスト導出部（Ｃｏｎｔｅｘｔ  Ｓｅｌｅｃｔｉｏｎ）２２と、コンテキスト読出部（Ｃｏｎｔｅｘｔ  Ｌｏａｔ）２３と、２値算術符号化部（Ｂｉｎ  Ｅｎｃｏｄｅｒ）２４と、状態保持部（Ｒｅｓｅｒｖｏｉｒ）２５と、コンテキスト一括更新部（Ｇｒｏｕｐ  Ｃｏｎｔｅｘｔ  Ｕｐｄａｔｅ）２６と、コンテキスト格納部（Ｃｏｎｔｅｘｔ  Ｍｅｍｏｒｙ）２７とを含む。本実施の形態２に係る算術符号化部２０の動作について、図９を用いてさらに詳しく説明する。
【０１０６】
図９は、算術符号化部２０の処理の流れを示すフローチャートである。
【０１０７】
まず、２値化部２１によって、対象信号をあらかじめ決められた手法で２値信号に変換する（ステップＳ４０１）。例えば、０−３の信号に対して、１、０１、００１、０００１といった２値化方法を用いても良い。
【０１０８】
次に、２値化した信号に対して１ビットずつ算術符号化を行う。このため、対象２値信号に対して、コンテキスト導出部２２において、コンテキストの導出処理を行う（ステップＳ４０２）。コンテキストの導出には、例えば、既に符号化済みの信号や、既に符号化済みである隣接ブロックの信号を取得し、あらかじめ決められた方法により、コンテキストを決定し、決定したコンテキスト番号をコンテキスト読出部２３に伝える。
【０１０９】
コンテキスト読出部２３では、コンテキスト番号に従い、コンテキスト格納部２７より指定されたコンテキストに対応するシンボル発生確率を読み出す（ステップＳ４０３）。なお、シンボル発生確率とコンテキストとの対応については、例えばテーブルにおいて管理されてもよい。シンボル発生確率テーブルについては、実施の形態１で説明したテーブルと同じものである。
【０１１０】
次に、読み出されたシンボル発生確率に基づき、２値算術符号化部２４において、算術符号化処理が施される（ステップＳ４０４）。具体的には、コンテキスト読出部２３より取得するシンボル発生確率に基づいて、２値算術符号化部２４の内部状態を更新し、状態に応じて符号化信号を出力する。ここで、２値算術符号化部２４内部状態とは、初期化もしくはリセット処理が施されるまで逐次的に更新処理されていく値のことである。ここでの２値算術符号化部２４の動作の詳細は、例えば、Ｈ．２６４規格で用いられるものとしてよい。
【０１１１】
次に、算術符号化処理した符号化対象シンボルを状態保持部２５に対して出力する（ステップＳ４０５）。ここでは、コンテキスト毎に符号化対象シンボルを保持し、コンテキストの状態を管理する。なお、状態保持部２５の詳細については、実施の形態１で説明したものと同じ動作を行う。
【０１１２】
符号化処理の単位が、コンテキスト一括更新処理の処理単位に達していなければ（ステップＳ４０６でＮＯ）、次の符号化対象シンボルに対する２値化処理（Ｓ４０１）に戻る（既に２値化されている場合には、コンテキスト導出処理（Ｓ４０２））。
【０１１３】
一方、コンテキスト一括更新処理の処理単位に達した場合（ステップＳ４０６でＹＥＳ）、コンテキスト一括更新部２６は、状態保持部２５よりコンテキスト毎の符号化対象シンボル群を取得し、コンテキスト一括更新処理を実行する（ステップＳ４０７）。なお、ここでコンテキスト一括更新部２６は、状態保持部２５の内容をリセットする。
【０１１４】
コンテキストの一括更新処理では、コンテキスト毎に、コンテキストに対応するシンボル発生確率を変更し、更新したシンボル発生確率をコンテキスト格納部２７に格納する。具体的な処理の詳細については、実施の形態１のコンテキスト一括更新部１６と同じであるので、再度の説明は省略する。
【０１１５】
以上が、本実施の形態の算術符号化部２０の構成についての説明である。
【０１１６】
図１０は、算術符号化処理をより高速に処理するために、処理を並列に実装した場合の、処理のタイミングを示す概要図である。
【０１１７】
図１０は、実施の形態１で説明した一括更新方式その１の場合について示している。なお、実施の形態１の一括更新方式その２Ａ、一括更新方式その２Ｂにおいても同様に説明できる。
【０１１８】
図１０は、プロセス１（Ｐｒｏｃ１）の処理回路で、コンテキスト導出処理（ＣＳ）、コンテキスト読み出し処理（ＣＬ）、２値算術符号化処理（ＢＡＣ）、コンテキスト更新（ＣＵ）の動作を時間軸に沿って記述しており、簡単のため、それぞれの処理時間は同じものとして示している。同様に、プロセス２（Ｐｒｏｃ２）、プロセス３（Ｐｒｏｃ３）、プロセス４（Ｐｒｏｃ４）を含んでいる例である。
【０１１９】
また、図中の矢印で示す部分は、矢印の根元から、矢印の先端部に対して、順番を維持する必要があるという依存関係を示している。２値算術符号化処理では、２値算術符号化部２４の内部状態を符号化毎に更新するため、２値算術符号化処理に対して依存関係がある。また、同一コンテキストを使う場合（図中はこの場合を説明）、コンテキストを更新した結果をさらに参照するため、コンテキスト更新（ＣＵ）と次の符号化のためのコンテキスト読み出し（ＣＬ）とに依存関係がある。しかしながら、本実施の形態によれば、この依存関係を分離することができるため、図１０中にこの依存関係を示す矢印は不要となる。
【０１２０】
実施の形態１で説明した一括更新方式その１の場合、プロセス１は、それぞれの処理（コンテキスト導出処理、コンテキスト読み出し処理、２値算術符号化処理）と順番に処理し、最後にコンテキスト更新処理を行う。ここでのコンテキスト更新処理は、更新結果をコンテキストメモリに反映しない。このため、プロセス２によるコンテキスト読み出し時には、常に過去の、より具体的には、コンテキストの一括更新処理直後の、シンボル発生確率値を読み出す。このため、プロセス１のコンテキスト更新処理が、プロセス２、プロセス３のコンテキスト読み出し処理よりも後にある（図中）場合であっても、正確に符号化処理を実現することができる。
【０１２１】
これにより、並列処理を行った場合であっても、処理遅延（ｌａｔｅｎｃｙ）を最低限（図中は１処理時間）とすることができる。この処理遅延は、算術符号化中の状態値の依存関係に起因しており、状態値の推定等によりさらに処理遅延を削減することができる。なお、本実施の形態は、このようなさらに処理遅延を削減する場合であっても、コンテキストの依存関係による処理遅延を削減するという観点で有効である。
【０１２２】
なお、ここで、符号化処理の単位が、コンテキスト一括更新処理の処理単位とは、例えば係数符号化単位である変換ブロック単位（ＴＵ）であってもよいし、予測符号化の予測方法を切り替える単位である予測ブロック単位（ＰＵ）であってもよいし、さらに符号化処理をまとめた単位である符号化ブロック単位（ＣＵ）であってもよいし、さらに取りうる最大の符号化処理単位ブロック単位（ＬＣＵ）であってもよい。処理単位が大きいほど、並列度を高めることができる一方、コンテキストの更新が遅くなるため、シンボル発生確率の画面内での適応度が下がり、符号化効率が劣化する可能性が高くなる。
【０１２３】
これらの処理単位は、符号化する信号種別毎にどの処理単位を用いるかをあらかじめ決めておいてもよいし、ヘッダ情報（例えばプロファイルを示す情報）によって切り替えてもよい。これにより、処理の並列度が必要かどうかによって、処理単位を制御することができるため、符号化効率の劣化を抑制しつつ処理の並列度を上げることができる。
【０１２４】
なお、本実施の形態２に係る算術符号化部２０は、画像データを圧縮符号化する画像符号化装置に備えられる。図１１は、本実施の形態２に係る画像符号化装置２００の構成の一例を示すブロック図である。
【０１２５】
画像符号化装置２００は、画像データを圧縮符号化する。例えば、画像符号化装置２００には、画像データがブロック毎に入力信号として入力される。画像符号化装置２００は、入力された入力信号に、変換、量子化及び可変長符号化を行うことで、符号化信号を生成する。
【０１２６】
図１１に示すように、画像符号化装置２００は、減算器２０５と、変換・量子化部２１０と、エントロピー符号化部２２０と、逆量子化・逆変換部２３０と、加算器２３５と、デブロッキングフィルタ２４０と、メモリ２５０と、イントラ予測部２６０と、動き検出部２７０と、動き補償部２８０と、イントラ／インター切換スイッチ２９０とを備える。
【０１２７】
減算器２０５は、入力信号と予測信号との差分、すなわち、予測誤差を算出する。
【０１２８】
変換・量子化部２１０は、空間領域の予測誤差を変換することで、周波数領域の変換係数を生成する。例えば、変換・量子化部２１０は、予測誤差にＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）変換を行うことで、変換係数を生成する。さらに、変換・量子化部２１０は、変換係数を量子化することで、量子化係数を生成する。
【０１２９】
エントロピー符号化部２２０は、量子化係数を可変長符号化することで、符号化信号を生成する。また、エントロピー符号化部２２０は、動き検出部２７０によって検出された動きデータ（例えば、動きベクトル）を符号化し、符号化信号に含めて出力する。
【０１３０】
逆量子化・逆変換部２３０は、量子化係数を逆量子化することで、変換係数を復元する。さらに、逆量子化・逆変換部２３０は、復元した変換係数を逆変換することで、予測誤差を復元する。なお、復元された予測誤差は、量子化により情報が失われているので、減算器２０５が生成する予測誤差とは一致しない。すなわち、復元された予測誤差は、量子化誤差を含んでいる。
【０１３１】
加算器２３５は、復元された予測誤差と予測信号とを加算することで、ローカル復号画像を生成する。デブロッキングフィルタ２４０は、生成されたローカル復号画像にデブロッキングフィルタ処理を行う。メモリ２５０は、動き補償に用いられる参照画像を格納するためのメモリである。具体的には、メモリ２５０は、デブロッキングフィルタ処理が施されたローカル復号画像を格納する。
【０１３２】
イントラ予測部２６０は、イントラ予測を行うことで、予測信号（イントラ予測信号）を生成する。具体的には、イントラ予測部２６０は、加算器２３５によって生成されたローカル復号画像における、符号化対象ブロック（入力信号）の周囲の画像を参照してイントラ予測を行うことで、イントラ予測信号を生成する。
【０１３３】
動き検出部２７０は、入力信号と、メモリ２５０に格納された参照画像との間の動きデータ（例えば、動きベクトル）を検出する。動き補償部２８０は、検出された動きデータに基づいて動き補償を行うことで、予測信号（インター予測信号）を生成する。
【０１３４】
イントラ／インター切換スイッチ２９０は、イントラ予測信号及びインター予測信号のいずれかを選択し、選択した信号を予測信号として減算器２０５及び加算器２３５に出力する。
【０１３５】
以上の構成により、本実施の形態２に係る画像符号化装置２００は、画像データを圧縮符号化する。
【０１３６】
なお、図１１において、本実施の形態２に係る算術符号化部２０は、エントロピー符号化部２２０が備える。すなわち、算術符号化部２０は、入力信号ＳＩとして量子化係数を２値化及び算術符号化する。また、信号種別情報ＳＥは、量子化係数の係数位置、図１１に示す動きデータ、又は、イントラ予測部２６０が用いたイントラ予測方向などを示す情報である。
【０１３７】
なお、一括コンテキスト更新処理の処理単位の情報（処理単位や区分する信号種別）を示す情報を、ビットストリームの先頭（ストリームヘッダ）に記録しても良い。これにより、並列化処理をより適当に実行できるよう構成された符号化ストリームを生成することができる。
【０１３８】
なお、ヘッダに記録する単位は、スライス、ピクチャに対応する単位であってもよい。また、符号化側と復号側で共通として、何も伝送しなくてもよい。
【０１３９】
以上のように、本実施の形態に係る画像符号化装置及び画像符号化方法によれば、算術符号化処理の並列処理を可能にし、高速に処理することが可能となる。
【０１４０】
具体的には、従来必要であった、コンテキストに対する依存関係を適切な単位で切り離すことができる。このため、符号化効率を維持しつつ、並列処理を実現し、例えば高解像度の映像のリアルタイム符号伝送処理などで必要な、高速演算回路によって実現することができる。
【０１４１】
（実施の形態３）
本実施の形態の算術復号方法の概要について説明する。本実施の形態の算術復号方法は、復号対象となる信号に対応するコンテキストの更新を、一定の大きさに区分された処理単位毎に一括して実施する。これにより、一定の処理単位内で算術復号処理の並列化を実現することができる。
【０１４２】
以上が、本実施の形態の算術復号方法の概要についての説明である。なお、実施の形態１との共通点の詳しい説明は省略し、相違点を中心に説明する。
【０１４３】
次に、本実施の形態の算術復号方法を行う算術復号部の構成について説明する。図１２は本実施の形態３に係る算術復号部の構成の一例を示すブロック図である。なお、本実施の形態３に係る算術復号部３０は、圧縮符号化された符号化画像データを復号する画像復号装置４００の一部に相当する。
【０１４４】
図１２に示されるように、算術復号部３０は、コンテキスト導出部（Ｃｏｎｔｅｘｔ  Ｓｅｌｅｃｔｉｏｎ）３１と、コンテキスト読出部（Ｃｏｎｔｅｘｔ  Ｌｏａｔ）３２と、２値算術復号部（Ｂｉｎ  Ｄｅｃｏｄｅｒ）３３と、多値化部（Ｄｅ−Ｂｉｎａｒｉｚｅｒ）３４と、状態保持部（Ｒｅｓｅｒｖｏｉｒ）３５と、コンテキスト並列更新部（Ｐａｒａｌｌｅｌ  Ｃｏｎｔｅｘｔ  Ｕｐｄａｔｅ）３６と、コンテキスト格納部（Ｃｏｎｔｅｘｔ  Ｍｅｍｏｒｙ）３７とを含む。本実施の形態３に係る算術復号部３０の動作について、図１３を用いてさらに詳しく説明する。
【０１４５】
図１３は、算術復号化の処理の流れを示すフローチャートである。
【０１４６】
まず、コンテキスト導出部３１において、復号対象の信号に対するコンテキストの導出処理を行う（ステップＳ５０１）。コンテキストの導出には、例えば、既に復号済みの復号シンボルや、既に復号済みであり、多値化された隣接ブロックの復号信号を取得し、あらかじめ決められた方法により、コンテキストを決定し、決定したコンテキスト番号をコンテキスト読出部３２に伝える。
【０１４７】
次に、コンテキスト読出部３２では、コンテキスト番号に従い、コンテキスト格納部３７より指定されたコンテキストに対応するシンボル発生確率を読み出す（ステップＳ５０２）。なお、シンボル発生確率とコンテキストとの対応については、例えばテーブルにおいて管理されてもよい。シンボル発生確率テーブルについては、実施の形態１で説明したテーブルと同じものであってもよい。
【０１４８】
次に、読み出されたシンボル発生確率に基づき、２値算術復号部３３において、算術復号処理が施される（ステップＳ５０３）。具体的には、コンテキスト読出部３２より取得するシンボル発生確率に基づいて、２値算術復号部３３の内部状態を更新し、状態に応じて復号対応のシンボルを出力する。ここで、２値算術復号部３３の内部状態とは、初期化もしくはリセット処理が施されるまで逐次的に更新処理されていく値のことである。ここでの２値算術復号部３３の動作の詳細は、例えば、Ｈ．２６４規格で用いられるものとしてよい。
【０１４９】
次に、算術復号処理により得られる復号シンボルを状態保持部３５に対して出力する（ステップＳ５０４）。ここでは、コンテキスト毎に復号シンボルを保持し、コンテキストの状態を管理する。なお、状態保持部３５の詳細については、後で詳しく説明する。
【０１５０】
一方、算術復号により得られる復号シンボルに対し、多値化処理を施し（ステップＳ５０５）、復号対象信号の復号信号を出力する。
【０１５１】
復号処理の単位が、コンテキスト並列更新処理の処理単位に達していなければ（ステップＳ５０６でＮＯ）、次の復号対象信号に対するコンテキスト導出処理（Ｓ５０１）に戻る。
【０１５２】
一方、コンテキスト並列更新処理の処理単位に達した場合（ステップＳ５０６でＹＥＳ）、コンテキスト並列更新部３６は、状態保持部３５よりコンテキスト毎の復号シンボル群を取得し、コンテキスト並列更新処理を実行する（ステップＳ５０７）。なお、ここでコンテキスト並列更新部３６は、状態保持部３５の内容をリセットする。
【０１５３】
コンテキストの並列更新処理では、コンテキスト毎に、コンテキストに対応するシンボル発生確率を変更し、更新したシンボル発生確率をコンテキスト格納部３７に格納する。具体的な処理の詳細については、後で詳しく説明する。
【０１５４】
以上が、本実施の形態の算術復号部３０の構成についての説明である。
【０１５５】
（並列更新方式その１）
図１４の（ａ）は、状態保持部３５が算術復号処理により得られる復号シンボルから、コンテキスト更新処理を行い、更新したコンテキストを保持する場合の例である。まず、状態保持部３５は、２値算術復号部３３より復号シンボルを取得し（ステップＳ６０１）、取得した復号シンボルと、その算術復号に使用したコンテキストに対して更新処理を行う（ステップＳ６０２）。ここで、従来手法では、コンテキスト格納部３７内のシンボル発生確率値を、コンテキストの更新毎に行っていたが、コンテキスト格納部３７ではなく、状態保持部３５で保持する（ステップＳ６０３）。この場合、図１３のステップＳ５０７において、コンテキスト並列更新部３６は、状態保持部３５で保持している更新されたコンテキストの結果をコンテキスト格納部３７内のシンボル発生確率値に反映させる。この場合のコンテキストの更新処理は、例えば図５に示す遷移テーブルに基づいて実施してもよい。
【０１５６】
（並列更新方式その２）
一方、図１４の（ｂ）は、状態保持部３５が算術復号処理により得られる復号シンボルそのものを保持する場合の例である。
【０１５７】
まず、状態保持部３５は、２値算術復号部３３より復号シンボルを取得し（ステップＳ７０１）、取得した復号シンボルを、その算術復号に使用したコンテキストに対応する方法で保持する（ステップＳ７０２）。この保持する方法としては、例えば図１４の（ｃ）に示すテーブルのようにコンテキスト毎に発生シンボルを保持しておいてもよい。発生シンボル長は、前述のコンテキスト並列更新処理の処理単位によって最大値が決められる。
【０１５８】
この場合、図１３のステップＳ５０７において、コンテキスト並列更新部３６は、状態保持部３５で保持しているコンテキスト毎の発生シンボル結果を元に、コンテキスト更新処理を施し、コンテキスト格納部３７内のシンボル発生確率値に反映させる。
【０１５９】
なお、コンテキスト並列更新部３６は、図５に示す遷移テーブルに基づいて図１４の（ｃ）で保持された発生シンボルに応じて順番に更新処理をしてもよい（並列更新方式その２Ａ）。
【０１６０】
この場合、コンテキスト並列更新処理の処理単位に到達した時点で逐次処理を実行して更新処理を行うこととなり、算術復号処理時にコンテキスト更新処理を実行しなくてよい。このため、処理負荷を分散できる可能性がある。
【０１６１】
また、コンテキスト並列更新部３６は、図１４の（ｃ）で保持された発生シンボルを事前処理した信号に対して更新処理を行ってもよい（並列更新方式その２Ｂ）。
【０１６２】
具体的に事前処理は、実施の形態１と共通するので、再度の説明は省略する。
【０１６３】
図１５は、算術復号処理をより高速に処理するために、処理を並列に実装した場合の、処理のタイミングを示す概要図である。
【０１６４】
図１５の（ａ）は並列更新方式その１、図１５の（ｂ）は並列更新方式その２Ａ、図１５の（ｃ）は並列更新方式その２Ｂにそれぞれ対応している。
【０１６５】
図１５は、プロセス１（Ｐｒｏｃ１）の処理回路で、コンテキスト導出処理（ＣＳ）、コンテキスト読み出し処理（ＣＬ）、２値算術復号処理（ＢＡＤ）、コンテキスト更新（ＣＵ）の動作を時間軸に沿って記述しており、簡単のため、それぞれの処理時間は同じものとして示している。同様に、プロセス２（Ｐｒｏｃ２）、プロセス３（Ｐｒｏｃ３）、プロセス４（Ｐｒｏｃ４）を含んでいる例である。また、図１５の（ｃ）のＧｒｏｕｐＣＵとは、発生シンボルを事前処理した場合の一括コンテキスト処理を示しており、事前処理の内容によって処理時間は変わるため、１処理単位以上のサイズで表現している。
【０１６６】
また、図中の矢印で示す部分は、矢印の根元から、矢印の先端部に対して、順番を維持する必要があるという依存関係を示している。２値算術復号処理では、２値算術復号の内部状態を復号毎に更新するため、２値算術復号処理に対して依存関係がある。また、同一コンテキストを使う場合（図中はこの場合を説明）、コンテキストを更新した結果をさらに参照するため、コンテキスト更新（ＣＵ）と次の復号のためのコンテキスト読み出し（ＣＬ）とに依存関係があるが、本実施の形態によれば、この依存関係を分離することができるため、図１５中にこの依存関係を示す矢印は不要となる。
【０１６７】
図１５の（ａ）に示される並列更新方式その１の場合、プロセス１は、それぞれの処理（コンテキスト導出処理、コンテキスト読み出し処理、２値算術復号処理）と順番に処理し、最後にコンテキスト更新処理を行う。ここでのコンテキスト更新処理は、更新結果をコンテキストメモリに反映しない。このため、プロセス２によるコンテキスト読み出し時には、常に過去の、より具体的には、コンテキストの並列更新処理直後の、シンボル発生確率値を読み出す。
【０１６８】
このため、プロセス１のコンテキスト更新処理が、プロセス２、プロセス３のコンテキスト読み出し処理よりも後にある（図中）場合であっても、正確に復号処理を実現することができる。これにより、並列処理を行った場合であっても、処理遅延（ｌａｔｅｎｃｙ）を最低限（図中は１処理時間）とすることができる。この処理遅延は、算術復号中の状態値の依存関係に起因しており、状態値の推定等によりさらに処理遅延を削減することができる。なお、本実施の形態は、このようなさらに処理遅延を削減する場合であっても、コンテキストの依存関係による処理遅延を削減するという観点で有効である。
【０１６９】
図１５の（ｂ）に示される並列更新方式その２Ａの場合、図１５の（ａ）と比べて、算術復号の直後にコンテキスト更新処理を行わず、コンテキストの並列更新処理の処理単位で、まとめて更新する場合の例である。この場合であっても、図１５の（ａ）と同様に、算術復号時の処理遅延（ｌａｔｅｎｃｙ）は１処理時間とすることができる。
【０１７０】
図１５の（ｃ）に示される並列更新方式その２Ｂの場合、図１５の（ａ）と比べて、コンテキストの並列更新処理の処理単位で、前処理を行った後に、まとめて更新する場合の例である。この場合であっても、図１５の（ａ）と同様に、算術復号時の処理遅延（ｌａｔｅｎｃｙ）は１処理時間とすることができる。また、図１５の（ｂ）と比べて並列更新に必要な処理時間を短縮できる可能性がある。
【０１７１】
図１６Ａに、上記で説明した図１５の（ａ）のコンテキスト更新を実現する算術復号部の構成の一例を示すブロック図である。なお、図１２で説明した構成のうち、コンテキスト管理部６００の部分について、図１５の（ａ）のコンテキスト更新の場合の詳細を示している。
【０１７２】
コンテキスト管理部６００は、コンテキスト更新部６０１と、スイッチ６０２、６０３と、制御部６０４と、コンテキスト格納部Ａ６０５と、コンテキスト格納部Ｂ６０６とを備え、特に説明しない部分は図１２で説明した構成と同様に動作するものとする。
【０１７３】
コンテキスト管理部６００は、２値算術復号部３３より復号シンボルと、復号に用いたコンテキスト番号とを取得し、並列更新処理の処理単位毎で、コンテキスト毎のシンボル発生確率を更新し、コンテキスト読出部３２に対して、要求されたコンテキストに対するシンボル発生確率を出力する。
【０１７４】
コンテキスト管理部６００の動作について図１６Ｂを用いてさらに詳しく説明する。図１６Ｂは図１５の（ａ）のコンテキスト更新を実現する算術復号部の処理の流れを示すフローチャートである。
【０１７５】
コンテキスト管理部６００では、制御部６０４により、スイッチ６０２、６０３がそれぞれＳ１もしくは、Ｓ２に連動して切り替えるスイッチ（トグルスイッチ）として働くものとする。また、初期状態ではＳ１に設定されているものとして説明するが、実際は前の並列処理区分の結果に依存して切り替わるものである。
【０１７６】
コンテキスト更新部６０１は、コンテキスト読出部３２からコンテキスト番号を含むシンボル発生確率読み出し要求を受け取る（ステップＳ８０１）。この場合に、スイッチ６０３に接続されている側（Ｓ１）に接続するコンテキスト格納部Ａ６０５に格納されているコンテキスト番号に対応するコンテキスト情報（シンボル発生確率）をコンテキスト読出部３２に対して出力する（ステップＳ８０２）。
【０１７７】
次に、コンテキスト更新部６０１は、２値算術復号部３３よりコンテキスト番号と復号シンボルとを含むコンテキスト更新処理要求を受け取る（ステップＳ８０３）。この場合に、スイッチ６０２に接続されている側（Ｓ１）に接続するコンテキスト格納部Ｂ６０６内のコンテキスト番号に対応したシンボル発生確率値を変更する（ステップＳ８０４）。
【０１７８】
ここで、コンテキスト並列処理の処理単位に到達していない場合（ステップＳ８０５でＮＯ）、次のコンテキスト読み出し要求に対する処理を行う。一方、コンテキスト並列処理の処理単位に達した場合（ステップＳ８０５でＹＥＳ）、制御部６０４は、スイッチ６０２、６０３の連動スイッチを切り替える。この切り替えは、スイッチ６０２、６０３のＳ１、Ｓ２を現状がＳ１の場合にはＳ２に、Ｓ２の場合にはＳ１に両方のスイッチを同時に切り替える（ステップＳ８０６）。これにより、従来と比較して一対の格納用のメモリを用意するだけで並列処理を可能とする。また、２つの格納部をスイッチで切り替えるため、データの転送を不要とし、処理時間を短縮することができる。
【０１７９】
次に、コンテキスト並列更新処理の処理単位について図１６Ｃを用いて説明する。
【０１８０】
図１６Ｃは、コンテキストの更新方法の処理単位の一例を説明するための模式図である。
【０１８１】
図１６Ｃの（ａ）は、最大符号化処理ブロック単位（ＬＣＵ）を符号化処理ブロック（ＣＵ）に分けて処理された構造を示し、正方形で囲まれた単位が、符号化処理ブロックであり、矢印は、処理の順番を示す。
【０１８２】
符号化処理単位ブロックの構造は、符号化側で符号化効率が高くなるように決められる。このため、大きな処理単位の場合には、比較的予測符号化が簡単な画像特徴（例えば平坦な画像）を有する。一方、小さな処理単位の場合には、比較的予測符号化難しい画像特徴（例えば複雑なテクスチャ）を有することが多い。
【０１８３】
例えば、一定のＢｉｎ（２値符号）数に応じて、コンテキストの更新を行うことが考えられるが（例えば４Ｂｉｎ復号毎にコンテキスト並列更新処理を実行）、この場合では、画像の特徴に無関係でコンテキストの更新単位を決めることになるため、画質の劣化が予測される。
【０１８４】
このため、コンテキスト並列更新の処理単位を符号化処理ブロック単位にする。これにより、予測符号化が難しい画像特徴の場合には、コンテキストの更新を頻繁に実行する。一方、予測符号化が簡単な画像特徴の場合には、コンテキストの更新の頻度を下げて実行することができる。その結果、コンテキスト更新の並列化による画質劣化を抑制することが可能となる。
【０１８５】
また、さらにＣＵは変換係数の処理単位、変換ブロック単位（ＴＵ）に分割される。後述する変換係数の符号化の処理単位として、さらに変換ブロック単位（ＴＵ）とすることで、さらに画像の特徴に応じたコンテキスト並列更新処理が可能となる。
【０１８６】
次に変換係数に対して、本実施の形態を適用した場合について、図１６Ｃの（ｂ）〜図１６Ｃの（ｄ）を用いて説明する。
【０１８７】
図１６Ｃの（ｂ）は、復号化される（符号化時の符号化対象となる）変換係数Ｃｏｅｆｆと、その処理順ＳＣとを示す。また、図１６Ｃの（ｃ）は、変換係数Ｃｏｅｆｆを処理順ＳＣでスキャンを行い、変換係数が非ゼロの場合を１、ゼロの場合を０とした２値化信号列Ｓｉｇを示す。また、図１６Ｃの（ｄ）は、上記の２値化信号列Ｓｉｇが最後の非ゼロ係数かどうかを示し、最後の非ゼロ係数の場合に１、異なる場合に０の２値化信号列ＬａｓｔＦｌａｇを示す。なお、この係数情報は、Ｓｉｇｎｉｆｉｃａｃｅ  Ｍａｐと呼ばれ、例えばＨ．２６４規格と同じとしてもよい。また、Ｌａｓｔの位置情報を別に符号化してもよい。
【０１８８】
図１６Ｃの（ｅ）は、図１６Ｃの（ｃ）に対応するコンテキストの例を示す。例えば、最初のビットの復号のために参照されるコンテキスト番号はＡであり、処理順ＳＣにしたがって、Ａ、Ｂ、Ｃ、Ｃ、Ｃ、Ａ・・・とコンテキスト番号が決められたとした場合の例である。
【０１８９】
ここで、処理区分を上記のように変換処理単位とした場合、複数回呼ばれるコンテキストＡに対して、復号用シンボル発生確率値は同じ値となる。
【０１９０】
すなわち、従来では、最初に呼ばれるコンテキストＡと、６番目に呼ばれるコンテキストＡ（２回目のＡ）とでは、復号用シンボル発生確率値は異なるが、本実施の形態によれば、処理単位に達するまで値は更新されないため、同じシンボル発生確率となる。これは、コンテキストＢ、Ｃ、Ｄに対しても同様である。
【０１９１】
なお、ここで、コンテキスト並列更新処理の処理単位は、例えば信号種別ごとに、係数符号化単位である変換ブロック単位（ＴＵ）、予測符号化の予測方法を切り替える単位である予測ブロック単位（ＰＵ）、さらに符号化処理をまとめた単位である符号化ブロック単位（ＣＵ）、さらに取りうる最大の符号化処理単位ブロック単位（ＬＣＵ）を切り替えても良い。処理単位が大きいほど、並列度を高めることができる一方、コンテキストの更新が遅くなるため、シンボル発生確率の画面内での適応度が下がり、符号化効率が劣化する可能性が高くなる。
【０１９２】
これらの処理単位は、符号化する信号種別毎にどの処理単位を用いるかをあらかじめ決めておいてもよいし、ヘッダ情報（例えばプロファイルを示す情報）によって切り替えてもよい。これにより、処理の並列度が必要かどうかによって、処理単位を制御することができるため、符号化効率の劣化を抑制しつつ処理の並列度を上げることができる。
【０１９３】
次に、コンテキスト並列更新方式のシンボル毎の更新方法の変形例について図１６Ｄを用いて説明する。
【０１９４】
図１６Ｄは、コンテキスト並列更新処理の例を示す。ＣＵａＮはコンテキストＡに対するＮ番目の復号信号に対応するコンテキストＡの更新処理を示す。同様にＣｕｂＮは、コンテキストＢに対する処理とする。
【０１９５】
図１６Ｄの（ａ）は、コンテキスト並列更新方法のうち、コンテキストの呼び出し順に逐次更新処理を行う例を示す。これは、図１６Ｃの（ａ）又は図１６Ｃの（ｂ）に示すように発生した順番に処理をしていくことを表している。この方法のメリットとしては、例えば図１６Ａの回路構成を用いることで、限られた追加格納領域で実現することができる点である。
【０１９６】
一方、図１６Ｄの（ｂ）は、コンテキスト並列更新処理をコンテキスト毎にさらに並列処理した場合の例である。この方法は、コンテキスト更新処理を行う処理回路を複数用意することにより実現でき、処理時間の短縮が期待できる。なお、この方法はコンテキストの呼び出し順に更新処理を行う場合の、図１６Ｄの（ａ）の別の例である。
【０１９７】
一方、図１６Ｄの（ｃ）は、コンテキストの並列更新方法のうち、コンテキストの呼び出し順とは逆順に更新処理を行う例を示す。これは、図１６Ｄの（ｃ）に示すように、一度、コンテキストに対応する復号シンボルを格納し、処理する場合の例である。より具体的には、それぞれのコンテキストに対して、処理単位の最後に復号したシンボルから順番に更新処理を行い、処理単位の最初に発生したシンボルに対応する更新処理を最後に実行する。
【０１９８】
これにより、前述のように格納するためのメモリが必要となるが、処理単位を例えば、変換係数単位にした場合に、次の処理単位の最初のシンボルと、現在の処理単位の最初のシンボルの発生確率が似ていることが想定される。このため、最後に現在の処理単位の最初のシンボルに対する更新処理を実行することにより、次の処理単位の復号時により近いシンボル発生確率を利用できることとなる。このため、符号化効率を向上することが期待できる。
【０１９９】
さらに、図１６Ｄの（ｃ’）は、図１６Ｄの（ｃ）で説明した逆順にコンテキストの更新処理を実行する場合の変形例である。これは、追加に必要なメモリ量を削減する方法であり、例えば、メモリ量を２とした場合、コンテキスト毎に処理単位の最初から２つのシンボルに対して格納処理を行い、それ以降のシンボル（３番目以降）に対しては、順番どおりに処理を行うことで、追加のメモリ量を削減する方法である。この方法であっても、図１６Ｄの（ｃ）で説明したように、現在の処理単位の最初の復号シンボルの結果を最後に更新に反映することができるため、次の処理単位の最初の復号シンボルに対してより近いシンボル発生確率を利用できる。このため、符号化効率を向上することが期待できる。
【０２００】
なお、ここで簡単のためにメモリ量を２としたがこれに限らない。あらかじめ符号化側と復号側とで同じ値ときめておけばよい。この値に関して、プロファイルで規定されている信号によって切り替えても良い。
【０２０１】
なお、さらに更新処理を簡易化する例としては、復号シンボルとシンボル発生確率とが似ている場合と、大きく外れた場合とをそれぞれカウントし、そのカウント値に応じて更新処理を行っても良い。
【０２０２】
また、上記カウント処理とは、重み付け演算としてもよい。頻繁に発生する信号（例えば変換係数における低周波数領域）に対する復号シンボルとシンボル発生確率との関係に対しては、２倍とする等の重みをつけることで、更新処理を並列化する際の符号化効率劣化を抑制することが期待できる。
【０２０３】
（実施の形態４）
本実施の形態４の算術復号方法の概要について説明する。本実施の形態４の算術符号化方法は、符号化対象となる信号に対応するコンテキストの更新を一定の大きさの処理単位に区分し、処理単位毎に一括して実施する。これにより、一定の処理単位内で算術符号化処理の並列化を実現することができる。
【０２０４】
以上が、本実施の形態の算術符号化方法の概要についての説明である。なお、実施の形態２との共通点の詳しい説明は省略し、相違点を中心に説明する。
【０２０５】
次に、本実施の形態の算術符号化方法を行う算術符号化部の構成について説明する。図１７は本実施の形態４に係る算術符号化部の構成の一例を示すブロック図である。なお、本実施の形態４に係る算術符号化部４０は、画像信号を圧縮符号化し、符号化画像データを出力する画像符号化装置２００の一部に相当する。
【０２０６】
図１７に示されるように、算術符号化部４０は、２値化部（Ｂｉｎａｒｉｚｅｒ）４１と、コンテキスト導出部（Ｃｏｎｔｅｘｔ  Ｓｅｌｅｃｔｉｏｎ）４２と、コンテキスト読出部（Ｃｏｎｔｅｘｔ  Ｌｏａｔ）４３と、２値算術符号化部（Ｂｉｎ  Ｅｎｃｏｄｅｒ）４４と、状態保持部（Ｒｅｓｅｒｖｏｉｒ）４５と、コンテキスト並列更新部（Ｐａｒａｌｌｅｌ  Ｃｏｎｔｅｘｔ  Ｕｐｄａｔｅ）４６と、コンテキスト格納部（Ｃｏｎｔｅｘｔ  Ｍｅｍｏｒｙ）４７とを含む。本実施の形態４に係る算術符号化部４０の動作について、図１８を用いてさらに詳しく説明する。
【０２０７】
図１８は、算術符号化部４０の処理の流れを示すフローチャートである。
【０２０８】
まず、２値化部４１によって、対象信号をあらかじめ決められた手法で２値信号に変換する（ステップＳ９０１）。例えば、０−３の信号に対して、１、０１、００１、０００１といった２値化方法を用いても良い。
【０２０９】
次に、２値化した信号に対して１ビットずつ算術符号化を行う。このため、対象の２値信号に対して、コンテキスト導出部４２において、コンテキストの導出処理を行う（ステップＳ９０２）。コンテキストの導出には、例えば、既に符号化済みの信号や、既に符号化済みである隣接ブロックの信号を取得し、あらかじめ決められた方法により、コンテキストを決定し、決定したコンテキスト番号をコンテキスト読出部に伝える。
【０２１０】
コンテキスト読出部４３では、コンテキスト番号に従い、コンテキスト格納部４７より指定されたコンテキストに対応するシンボル発生確率を読み出す（ステップＳ９０３）。なお、シンボル発生確率とコンテキストとの対応については、例えばテーブルにおいて管理されてもよい。シンボル発生確率テーブルについては、実施の形態３で説明したテーブルと同じものである。
【０２１１】
次に、読み出されたシンボル発生確率に基づき、２値算術符号化部４４において、算術符号化処理が施される（ステップＳ９０４）。具体的には、コンテキスト読出部４３より取得するシンボル発生確率に基づいて、２値算術符号化部４４の内部状態を更新し、状態に応じて符号化信号を出力する。ここで、２値算術符号化部４４の内部状態とは、初期化もしくはリセット処理が施されるまで逐次的に更新処理されていく値のことである。ここでの２値算術符号化部４４の動作の詳細は、例えば、Ｈ．２６４規格で用いられるものとしてよい。
【０２１２】
次に、算術符号化処理した符号化対象シンボルを状態保持部４５に対して出力する（ステップＳ９０５）。ここでは、コンテキスト毎に符号化対象シンボルを保持しコンテキストの状態を管理する。なお、状態保持部４５の詳細については、実施の形態３で説明したものと同じ動作を行う。
【０２１３】
符号化処理の単位が、コンテキスト並列更新処理の処理単位に達していなければ（ステップＳ９０６でＮＯ）、次の符号化対象シンボルに対する２値化処理（Ｓ９０１）に戻る（既に２値化されている場合には、コンテキスト導出処理（Ｓ９０２））。
【０２１４】
一方、コンテキスト並列更新処理の処理単位に到達した場合（ステップＳ９０６でＹＥＳ）、コンテキスト並列更新部４６は、状態保持部４５よりコンテキスト毎の符号化対象シンボル群を取得し、コンテキスト並列更新処理を実行する（ステップＳ９０７）。なお、ここでコンテキスト並列更新部４６は、状態保持部４５の内容をリセットする。
【０２１５】
コンテキストの並列更新処理では、コンテキスト毎に、コンテキストに対応するシンボル発生確率を変更し、更新したシンボル発生確率をコンテキスト格納部４７に格納する。具体的な処理の詳細については、実施の形態３のコンテキスト並列更新部３６と同じである。
【０２１６】
以上が、本実施の形態の算術符号化部４０の構成についての説明である。
【０２１７】
図１９は、算術符号化処理をより高速に処理するために、処理を並列に実装した場合の、処理のタイミングを示す概要図である。
【０２１８】
図１９は実施の形態３で説明した並列更新方式その１の場合について示している。なお、実施の形態３の並列更新方式その２Ａ、並列更新方式その２Ｂにおいても同様に説明できる。
【０２１９】
図１９は、プロセス１（Ｐｒｏｃ１）の処理回路で、コンテキスト導出処理（ＣＳ）、コンテキスト読み出し処理（ＣＬ）、２値算術符号化処理（ＢＡＣ）、コンテキスト更新（ＣＵ）の動作を時間軸に沿って記述しており、簡単のため、それぞれの処理時間は同じものとして示している。同様に、プロセス２（Ｐｒｏｃ２）、プロセス３（Ｐｒｏｃ３）、プロセス４（Ｐｒｏｃ４）を含んでいる例である。
【０２２０】
また、図中の矢印で示す部分は、矢印の根元から、矢印の先端部に対して、順番を維持する必要があるという依存関係を示している。２値算術符号化処理では、２値算術符号化の内部状態を符号化毎に更新するため、２値算術符号化処理に対して依存関係がある。また、同一コンテキストを使う場合（図中はこの場合を説明）、コンテキストを更新した結果をさらに参照するため、コンテキスト更新（ＣＵ）と次の符号化のためのコンテキスト読み出し（ＣＬ）とに依存関係がある。しかしながら、本実施の形態によれば、この依存関係を分離することができるため、図１９中にこの依存関係を示す矢印は不要となる。
【０２２１】
実施の形態３で説明した並列更新方式その１の場合、プロセス１は、それぞれの処理（コンテキスト導出処理、コンテキスト読み出し処理、２値算術符号化処理）と順番に処理し、最後にコンテキスト更新処理を行う。ここでのコンテキスト更新処理は、更新結果をコンテキストメモリに反映しない。このため、プロセス２によるコンテキスト読み出し時には、常に過去の、より具体的には、コンテキストの並列更新処理直後の、シンボル発生確率値を読み出す。
【０２２２】
このため、プロセス１のコンテキスト更新処理が、プロセス２、プロセス３のコンテキスト読み出し処理よりも後にある（図中）場合であっても、正確に符号化処理を実現することができる。これにより、並列処理を行った場合であっても、処理遅延（ｌａｔｅｎｃｙ）を最低限（図中は１処理時間）とすることができる。この処理遅延は、算術符号化中の状態値の依存関係に起因しており、状態値の推定等によりさらに処理遅延を削減することができる。なお、本実施の形態は、このようなさらに処理遅延を削減する場合であっても、コンテキストの依存関係による処理遅延を削減するという観点で有効である。
【０２２３】
図２０に、上記で説明した図１９のコンテキスト更新を実現する算術符号化部の構成の一例を示すブロック図である。なお、図１７で説明した構成のうち、コンテキスト管理部８００の部分について、図１９のコンテキスト更新の場合の詳細を示している。コンテキスト管理部８００は、コンテキスト更新部８０１と、スイッチ８０２、８０３と、制御部８０４と、コンテキスト格納部Ａ８０５と、コンテキスト格納部Ｂ８０６とを備え、特に説明しない部分は図１７で説明した構成と同様に動作するものとする。
【０２２４】
コンテキスト管理部８００は、２値算術符号化部より符号化対象シンボルと、符号化に用いたコンテキスト番号とを取得し、並列更新処理の処理単位で、コンテキスト毎のシンボル発生確率を更新し、コンテキスト取得読出部に対して、要求されたコンテキストに対するシンボル発生確率を出力する。
【０２２５】
コンテキスト管理部８００の動作について図２１を用いてさらに詳しく説明する。図２１は図１９のコンテキスト更新を実現する算術符号化部の処理の流れを示すフローチャートである。
【０２２６】
コンテキスト管理部８００では、制御部８０４により、スイッチ６０２、６０３がそれぞれＳ１もしくは、Ｓ２に連動して切り替えるスイッチ（トグルスイッチ）として働くものとする。なお、初期状態ではＳ１に設定されているものとして説明するが、実際は前の並列処理単位の結果に依存して切り替わるものである。
【０２２７】
コンテキスト更新部８０１は、コンテキスト読出部４３からコンテキスト番号を含むシンボル発生確率読み出し要求を受け取る（ステップＳ１１０１）。この場合に、スイッチ８０３に接続されている側（Ｓ１）に接続するコンテキスト格納部Ａ８０５に格納されているコンテキスト番号に対応するコンテキスト情報（シンボル発生確率）をコンテキスト読出部４３に対して出力する（ステップＳ１１０２）。
【０２２８】
次に、コンテキスト更新部８０１は、２値算術符号化部４４よりコンテキスト番号と符号化対象シンボルとを含むコンテキスト更新処理要求を受け取る（ステップＳ１１０３）。この場合に、スイッチ８０２に接続されている側（Ｓ１）に接続するコンテキスト格納部Ｂ８０６内のコンテキスト番号に対応したシンボル発生確率値を変更する（ステップＳ１１０４）。
【０２２９】
ここで、コンテキスト並列処理区分に到達していない場合（ステップＳ１１０５でＮＯ）、次のコンテキスト読み出し要求に対する処理を行う。一方、コンテキスト並列処理の処理単位に達している場合（ステップＳ１１０５でＹＥＳ）、制御部８０４は、スイッチ８０２、８０３の連動スイッチを切り替える。この切り替えは、スイッチ８０２、８０３のＳ１、Ｓ２を現状がＳ１の場合にはＳ２に、Ｓ２の場合にはＳ１に両方のスイッチを同時に切り替える（ステップＳ１１０６）。
【０２３０】
これにより、従来と比較して一対の格納用のメモリを用意するだけで並列処理を可能とする。また、２つの格納部をスイッチで切り替えるため、データの転送を不要とし、処理時間を短縮することができる。
【０２３１】
コンテキスト並列更新の処理単位については、実施の形態３の復号の場合の説明と同様であり、図１６Ｃを用いて説明する。
【０２３２】
図１６Ｃは、コンテキストの更新方法の処理単位の一例を説明するための模式図である。
【０２３３】
図１６Ｃの（ａ）は、最大符号化処理ブロック単位（ＬＣＵ）を符号化処理ブロック（ＣＵ）に分けて処理された構造を示し、正方形で囲まれた単位が、符号化処理ブロックであり、矢印は、処理の順番を示す。
【０２３４】
符号化処理単位ブロックの構造は、符号化側で符号化効率が高くなるように決められる。このため、大きな処理単位の場合には比較的予測符号化が簡単な画像特徴（例えば平坦な画像）を有する。一方、小さな処理単位の場合には、比較的予測符号化難しい画像特徴（例えば複雑なテクスチャ）を有することが多い。
【０２３５】
例えば、一定のＢｉｎ（２値符号）数に応じて、コンテキストの更新を行うことが考えられるが（例えば４Ｂｉｎ符号化毎にコンテキスト並列更新処理を実行）、この場合では、画像の特徴に無関係でコンテキストの更新単位を決めることになるため、画質の劣化が予測される。
【０２３６】
このため、コンテキスト並列更新の処理単位を符号化処理ブロック単位にすることにより、予測符号化が難しい画像特徴の場合には、コンテキストの更新を頻繁に実行し、予測符号化が簡単な画像特徴の場合には、コンテキストの更新の頻度を下げて実行する。これにより、コンテキスト更新の並列化による画質劣化を抑制することが可能となる。
【０２３７】
また、さらにＣＵは変換係数の処理単位、変換ブロック単位（ＴＵ）に分割される。後述する変換係数の符号化の処理単位として、さらに変換ブロック単位（ＴＵ）とすることで、さらに画像の特徴に応じたコンテキスト並列更新処理が可能となる。
【０２３８】
次に変換係数に対して、本発明を適用した場合について、図１６Ｃの（ｂ）〜図１６Ｃの（ｄ）を用いて説明する。
【０２３９】
図１６Ｃの（ｂ）は、符号化される（符号化時の符号化対象となる）変換係数Ｃｏｅｆｆと、その処理順ＳＣを示す。また、図１６Ｃの（ｃ）は、変換係数Ｃｏｅｆｆを処理順ＳＣでスキャンを行い、変換係数が非ゼロの場合を１、ゼロの場合を０とした２値化信号列Ｓｉｇを示す。また、図１６Ｃの（ｄ）は、上記の２値化信号列Ｓｉｇが最後の非ゼロ係数かどうかを示し、最後の非ゼロ係数の場合に１、異なる場合に０の２値化信号列ＬａｓｔＦｌａｇを示す。なお、この係数情報はＳｉｇｎｉｆｉｃａｃｅ Ｍａｐと呼ばれ、例えばＨ．２６４規格と同じとしてもよい。また、Ｌａｓｔの位置情報を別に符号化してもよい。
【０２４０】
図１６Ｃの（ｅ）は、図１６Ｃの（ｃ）に対応するコンテキストの例を示す。例えば、最初のビットの符号化のために参照されるコンテキスト番号はＡであり、処理順ＳＣにしたがって、Ａ、Ｂ、Ｃ、Ｃ、Ｃ、Ａ・・・とコンテキスト番号が決められたとした場合の例である。
【０２４１】
ここで、処理単位を上記のように変換処理単位とした場合、複数回呼ばれるコンテキストＡに対して、符号化用シンボル発生確率値は同じ値となる。
【０２４２】
すなわち、従来では、最初に呼ばれるコンテキストＡと、６番目に呼ばれるコンテキストＡ（２回目のＡ）とでは、符号化用シンボル発生確率値は異なるが、本実施の形態によれば、処理単位に達するまで値は更新されないため、同じシンボル発生確率となる。これは、コンテキストＢ、Ｃ、Ｄに対しても同様である。
【０２４３】
なお、ここで、コンテキスト並列更新処理の処理単位は、例えば信号種別ごとに、係数符号化単位である変換ブロック単位（ＴＵ）、予測符号化の予測方法を切り替える単位である予測ブロック単位（ＰＵ）、さらに符号化処理をまとめた単位である符号化ブロック単位（ＣＵ）、さらに取りうる最大の符号化処理単位ブロック単位（ＬＣＵ）を切り替えても良い。処理単位が大きいほど、並列度を高めることができる。その一方、コンテキストの更新が遅くなるため、シンボル発生確率の画面内での適応度が下がり、符号化効率が劣化する可能性が高くなる。
【０２４４】
これらの処理単位は、符号化する信号種別毎にどの処理単位を用いるかをあらかじめ決めておいてもよいし、ヘッダ情報（例えばプロファイルを示す情報）によって切り替えてもよい。これにより、処理の並列度が必要かどうかによって、処理単位を制御することができるため、符号化効率の劣化を抑制しつつ処理の並列度を上げることができる。
【０２４５】
（実施の形態５）
上記各実施の形態で示した動画像符号化方法（画像符号化方法）または動画像復号化方法（画像復号方法）の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ＩＣカード、半導体メモリ等、プログラムを記録できるものであればよい。
【０２４６】
さらにここで、上記各実施の形態で示した動画像符号化方法（画像符号化方法）や動画像復号化方法（画像復号方法）の応用例とそれを用いたシステムを説明する。当該システムは、画像符号化方法を用いた画像符号化装置、及び画像復号方法を用いた画像復号装置からなる画像符号化復号装置を有することを特徴とする。システムにおける他の構成について、場合に応じて適切に変更することができる。
【０２４７】
図２５は、コンテンツ配信サービスを実現するコンテンツ供給システムex１００の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex１０６、ex１０７、ex１０８、ex１０９、ex１１０が設置されている。
【０２４８】
このコンテンツ供給システムex１００は、インターネットex１０１にインターネットサービスプロバイダex１０２および電話網ex１０４、および基地局ex１０６からex１１０を介して、コンピュータex１１１、ＰＤＡ（Personal Digital Assistant）ex１１２、カメラex１１３、携帯電話ex１１４、ゲーム機ex１１５などの各機器が接続される。
【０２４９】
しかし、コンテンツ供給システムex１００は図２５のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex１０６からex１１０を介さずに、各機器が電話網ex１０４に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
【０２５０】
カメラex１１３はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex１１６はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex１１４は、ＧＳＭ（登録商標）（Global System for Mobile Communications）方式、ＣＤＭＡ（Code Division Multiple Access）方式、Ｗ−ＣＤＭＡ（Wideband-Code Division Multiple Access）方式、若しくはＬＴＥ（Long Term Evolution）方式、ＨＳＰＡ(High Speed Packet Access)の携帯電話機、またはＰＨＳ（Personal Handyphone System）等であり、いずれでも構わない。
【０２５１】
コンテンツ供給システムex１００では、カメラex１１３等が基地局ex１０９、電話網ex１０４を通じてストリーミングサーバex１０３に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex１１３を用いて撮影するコンテンツ（例えば、音楽ライブの映像等）に対して上記各実施の形態で説明したように符号化処理を行い（即ち、本発明の画像符号化装置として機能する）、ストリーミングサーバex１０３に送信する。一方、ストリーミングサーバex１０３は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex１１１、ＰＤＡex１１２、カメラex１１３、携帯電話ex１１４、ゲーム機ex１１５等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する（即ち、本発明の画像復号装置として機能する）。
【０２５２】
なお、撮影したデータの符号化処理はカメラex１１３で行っても、データの送信処理をするストリーミングサーバex１０３で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex１０３で行ってもよいし、互いに分担して行ってもよい。また、カメラex１１３に限らず、カメラex１１６で撮影した静止画像および／または動画像データを、コンピュータex１１１を介してストリーミングサーバex１０３に送信してもよい。この場合の符号化処理はカメラex１１６、コンピュータex１１１、ストリーミングサーバex１０３のいずれで行ってもよいし、互いに分担して行ってもよい。
【０２５３】
また、これら符号化・復号化処理は、一般的にコンピュータex１１１や各機器が有するＬＳＩex５００において処理する。ＬＳＩex５００は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号化用のソフトウェアをコンピュータex１１１等で読み取り可能な何らかの記録メディア（ＣＤ−ＲＯＭ、フレキシブルディスク、ハードディスクなど）に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex１１４がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex１１４が有するＬＳＩex５００で符号化処理されたデータである。
【０２５４】
また、ストリーミングサーバex１０３は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
【０２５５】
以上のようにして、コンテンツ供給システムex１００では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex１００では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
【０２５６】
なお、コンテンツ供給システムex１００の例に限らず、図２６に示すように、デジタル放送用システムex２００にも、上記各実施の形態の少なくとも動画像符号化装置（画像符号化装置）または動画像復号化装置（画像復号装置）のいずれかを組み込むことができる。具体的には、放送局ex２０１では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex２０２に伝送される。この映像データは上記各実施の形態で説明した動画像符号化方法により符号化されたデータである（即ち、本発明の画像符号化装置によって符号化されたデータである）。これを受けた放送衛星ex２０２は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex２０４が受信する。受信した多重化データを、テレビ（受信機）ex３００またはセットトップボックス（ＳＴＢ）ex２１７等の装置が復号化して再生する（即ち、本発明の画像復号装置として機能する）。
【０２５７】
また、ＤＶＤ、ＢＤ等の記録メディアex２１５に記録した多重化データを読み取り復号化する、または記録メディアex２１５に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ／レコーダex２１８にも上記各実施の形態で示した動画像復号化装置または動画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex２１９に表示され、多重化データが記録された記録メディアex２１５により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex２０３または衛星／地上波放送のアンテナex２０４に接続されたセットトップボックスex２１７内に動画像復号化装置を実装し、これをテレビのモニタex２１９で表示してもよい。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでもよい。
【０２５８】
図２７は、上記各実施の形態で説明した動画像復号化方法および動画像符号化方法を用いたテレビ（受信機）ex３００を示す図である。テレビex３００は、上記放送を受信するアンテナex２０４またはケーブルex２０３等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex３０１と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調／復調部ex３０２と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex３０６で符号化された映像データ、音声データを多重化する多重／分離部ex３０３を備える。
【０２５９】
また、テレビex３００は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex３０４、映像信号処理部ex３０５（本発明の画像符号化装置または画像復号装置として機能する）を有する信号処理部ex３０６と、復号化した音声信号を出力するスピーカex３０７、復号化した映像信号を表示するディスプレイ等の表示部ex３０８を有する出力部ex３０９とを有する。さらに、テレビex３００は、ユーザ操作の入力を受け付ける操作入力部ex３１２等を有するインタフェース部ex３１７を有する。さらに、テレビex３００は、各部を統括的に制御する制御部ex３１０、各部に電力を供給する電源回路部ex３１１を有する。インタフェース部ex３１７は、操作入力部ex３１２以外に、リーダ／レコーダex２１８等の外部機器と接続されるブリッジex３１３、ＳＤカード等の記録メディアex２１６を装着可能とするためのスロット部ex３１４、ハードディスク等の外部記録メディアと接続するためのドライバex３１５、電話網と接続するモデムex３１６等を有していてもよい。なお記録メディアex２１６は、格納する不揮発性／揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex３００の各部は同期バスを介して互いに接続されている。
【０２６０】
まず、テレビex３００がアンテナex２０４等により外部から取得した多重化データを復号化し、再生する構成について説明する。テレビex３００は、リモートコントローラex２２０等からのユーザ操作を受け、ＣＰＵ等を有する制御部ex３１０の制御に基づいて、変調／復調部ex３０２で復調した多重化データを多重／分離部ex３０３で分離する。さらにテレビex３００は、分離した音声データを音声信号処理部ex３０４で復号化し、分離した映像データを映像信号処理部ex３０５で上記各実施の形態で説明した復号化方法を用いて復号化する。復号化した音声信号、映像信号は、それぞれ出力部ex３０９から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex３１８、ex３１９等に一旦これらの信号を蓄積するとよい。また、テレビex３００は、放送等からではなく、磁気／光ディスク、ＳＤカード等の記録メディアex２１５、ex２１６から多重化データを読み出してもよい。次に、テレビex３００が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex３００は、リモートコントローラex２２０等からのユーザ操作を受け、制御部ex３１０の制御に基づいて、音声信号処理部ex３０４で音声信号を符号化し、映像信号処理部ex３０５で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重／分離部ex３０３で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex３２０、ex３２１等に一旦これらの信号を蓄積するとよい。なお、バッファex３１８、ex３１９、ex３２０、ex３２１は図示しているように複数備えていてもよいし、１つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調／復調部ex３０２や多重／分離部ex３０３の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
【０２６１】
また、テレビex３００は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのＡＶ入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex３００は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
【０２６２】
また、リーダ／レコーダex２１８で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex３００、リーダ／レコーダex２１８のいずれで行ってもよいし、テレビex３００とリーダ／レコーダex２１８が互いに分担して行ってもよい。
【０２６３】
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生／記録部ex４００の構成を図２８に示す。情報再生／記録部ex４００は、以下に説明する要素ex４０１、ex４０２、ex４０３、ex４０４、ex４０５、ex４０６、ex４０７を備える。光ヘッドex４０１は、光ディスクである記録メディアex２１５の記録面にレーザスポットを照射して情報を書き込み、記録メディアex２１５の記録面からの反射光を検出して情報を読み込む。変調記録部ex４０２は、光ヘッドex４０１に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex４０３は、光ヘッドex４０１に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex２１５に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex４０４は、記録メディアex２１５に記録するための情報および記録メディアex２１５から再生した情報を一時的に保持する。ディスクモータex４０５は記録メディアex２１５を回転させる。サーボ制御部ex４０６は、ディスクモータex４０５の回転駆動を制御しながら光ヘッドex４０１を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex４０７は、情報再生／記録部ex４００全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex４０７が、バッファex４０４に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex４０２、再生復調部ex４０３、サーボ制御部ex４０６を協調動作させながら、光ヘッドex４０１を通して、情報の記録再生を行うことにより実現される。システム制御部ex４０７は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
【０２６４】
以上では、光ヘッドex４０１はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
【０２６５】
図２９に光ディスクである記録メディアex２１５の模式図を示す。記録メディアex２１５の記録面には案内溝（グルーブ）がスパイラル状に形成され、情報トラックex２３０には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex２３１の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex２３０を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex２１５は、データ記録領域ex２３３、内周領域ex２３２、外周領域ex２３４を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex２３３であり、データ記録領域ex２３３より内周または外周に配置されている内周領域ex２３２と外周領域ex２３４は、ユーザデータの記録以外の特定用途に用いられる。情報再生／記録部ex４００は、このような記録メディアex２１５のデータ記録領域ex２３３に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
【０２６６】
以上では、１層のＤＶＤ、ＢＤ等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録／再生を行う構造の光ディスクであってもよい。
【０２６７】
また、デジタル放送用システムex２００において、アンテナex２０５を有する車ex２１０で衛星ex２０２等からデータを受信し、車ex２１０が有するカーナビゲーションex２１１等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex２１１の構成は例えば図２７に示す構成のうち、ＧＰＳ受信部を加えた構成が考えられ、同様なことがコンピュータex１１１や携帯電話ex１１４等でも考えられる。
【０２６８】
図３０（ａ）は、上記実施の形態で説明した動画像復号化方法および動画像符号化方法を用いた携帯電話ex１１４を示す図である。携帯電話ex１１４は、基地局ex１１０との間で電波を送受信するためのアンテナex３５０、映像、静止画を撮ることが可能なカメラ部ex３６５、カメラ部ex３６５で撮像した映像、アンテナex３５０で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex３５８を備える。携帯電話ex１１４は、さらに、操作キー部ex３６６を有する本体部、音声を出力するためのスピーカ等である音声出力部ex３５７、音声を入力するためのマイク等である音声入力部ex３５６、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex３６７、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex３６４を備える。
【０２６９】
さらに、携帯電話ex１１４の構成例について、図３０（ｂ）を用いて説明する。携帯電話ex１１４は、表示部ex３５８及び操作キー部ex３６６を備えた本体部の各部を統括的に制御する主制御部ex３６０に対して、電源回路部ex３６１、操作入力制御部ex３６２、映像信号処理部ex３５５、カメラインタフェース部ex３６３、ＬＣＤ（Liquid Crystal Display）制御部ex３５９、変調／復調部ex３５２、多重／分離部ex３５３、音声信号処理部ex３５４、スロット部ex３６４、メモリ部ex３６７がバスex３７０を介して互いに接続されている。
【０２７０】
電源回路部ex３６１は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex１１４を動作可能な状態に起動する。
【０２７１】
携帯電話ex１１４は、ＣＰＵ、ＲＯＭ、ＲＡＭ等を有する主制御部ex３６０の制御に基づいて、音声通話モード時に音声入力部ex３５６で収音した音声信号を音声信号処理部ex３５４でデジタル音声信号に変換し、これを変調／復調部ex３５２でスペクトラム拡散処理し、送信／受信部ex３５１でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex３５０を介して送信する。また携帯電話ex１１４は、音声通話モード時にアンテナex３５０を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調／復調部ex３５２でスペクトラム逆拡散処理し、音声信号処理部ex３５４でアナログ音声信号に変換した後、これを音声出力部ex３５７から出力する。
【０２７２】
さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex３６６等の操作によって入力された電子メールのテキストデータは操作入力制御部ex３６２を介して主制御部ex３６０に送出される。主制御部ex３６０は、テキストデータを変調／復調部ex３５２でスペクトラム拡散処理をし、送信／受信部ex３５１でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex３５０を介して基地局ex１１０へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex３５８に出力される。
【０２７３】
データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex３５５は、カメラ部ex３６５から供給された映像信号を上記各実施の形態で示した動画像符号化方法によって圧縮符号化し（即ち、本発明の画像符号化装置として機能する）、符号化された映像データを多重／分離部ex３５３に送出する。また、音声信号処理部ex３５４は、映像、静止画等をカメラ部ex３６５で撮像中に音声入力部ex３５６で収音した音声信号を符号化し、符号化された音声データを多重／分離部ex３５３に送出する。
【０２７４】
多重／分離部ex３５３は、映像信号処理部ex３５５から供給された符号化された映像データと音声信号処理部ex３５４から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調／復調部（変調／復調回路部）ex３５２でスペクトラム拡散処理をし、送信／受信部ex３５１でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex３５０を介して送信する。
【０２７５】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex３５０を介して受信された多重化データを復号化するために、多重／分離部ex３５３は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex３７０を介して符号化された映像データを映像信号処理部ex３５５に供給するとともに、符号化された音声データを音声信号処理部ex３５４に供給する。映像信号処理部ex３５５は、上記各実施の形態で示した動画像符号化方法に対応した動画像復号化方法によって復号化することにより映像信号を復号し（即ち、本発明の画像復号装置として機能する）、ＬＣＤ制御部ex３５９を介して表示部ex３５８から、例えばホームページにリンクされた動画像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex３５４は、音声信号を復号し、音声出力部ex３５７から音声が出力される。
【０２７６】
また、上記携帯電話ex１１４等の端末は、テレビex３００と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という３通りの実装形式が考えられる。さらに、デジタル放送用システムex２００において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
【０２７７】
このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
【０２７８】
また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【０２７９】
（実施の形態６）
上記各実施の形態で示した動画像符号化方法または装置と、ＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
【０２８０】
ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
【０２８１】
この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す動画像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、ＭＰＥＧ−２トランスポートストリーム形式のデジタルストリームである。
【０２８２】
図３１は、多重化データの構成を示す図である。図３１に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム（ＰＧ）、インタラクティブグラフィックスストリームのうち、１つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム（ＩＧ）は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にＧＵＩ部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した動画像符号化方法または装置、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠した動画像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーＡＣ−３、Ｄｏｌｂｙ  Ｄｉｇｉｔａｌ  Ｐｌｕｓ、ＭＬＰ、ＤＴＳ、ＤＴＳ−ＨＤ、または、リニアＰＣＭのなどの方式で符号化されている。
【０２８３】
多重化データに含まれる各ストリームはＰＩＤによって識別される。例えば、映画の映像に利用するビデオストリームには０ｘ１０１１が、オーディオストリームには０ｘ１１００から０ｘ１１１Ｆまでが、プレゼンテーショングラフィックスには０ｘ１２００から０ｘ１２１Ｆまでが、インタラクティブグラフィックスストリームには０ｘ１４００から０ｘ１４１Ｆまでが、映画の副映像に利用するビデオストリームには０ｘ１Ｂ００から０ｘ１Ｂ１Ｆまで、主音声とミキシングする副音声に利用するオーディオストリームには０ｘ１Ａ００から０ｘ１Ａ１Ｆが、それぞれ割り当てられている。
【０２８４】
図３２は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex２３５、複数のオーディオフレームからなるオーディオストリームex２３８を、それぞれＰＥＳパケット列ex２３６およびex２３９に変換し、ＴＳパケットex２３７およびex２４０に変換する。同じくプレゼンテーショングラフィックスストリームex２４１およびインタラクティブグラフィックスex２４４のデータをそれぞれＰＥＳパケット列ex２４２およびex２４５に変換し、さらにＴＳパケットex２４３およびex２４６に変換する。多重化データex２４７はこれらのＴＳパケットを１本のストリームに多重化することで構成される。
【０２８５】
図３３は、ＰＥＳパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。図３３における第１段目はビデオストリームのビデオフレーム列を示す。第２段目は、ＰＥＳパケット列を示す。図３３の矢印ｙｙ１，ｙｙ２，  ｙｙ３，  ｙｙ４に示すように、ビデオストリームにおける複数のＶｉｄｅｏ  Ｐｒｅｓｅｎｔａｔｉｏｎ  ＵｎｉｔであるＩピクチャ、Ｂピクチャ、Ｐピクチャは、ピクチャ毎に分割され、ＰＥＳパケットのペイロードに格納される。各ＰＥＳパケットはＰＥＳヘッダを持ち、ＰＥＳヘッダには、ピクチャの表示時刻であるＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ−Ｓｔａｍｐ）やピクチャの復号時刻であるＤＴＳ（Ｄｅｃｏｄｉｎｇ  Ｔｉｍｅ−Ｓｔａｍｐ）が格納される。
【０２８６】
図３４は、多重化データに最終的に書き込まれるＴＳパケットの形式を示している。ＴＳパケットは、ストリームを識別するＰＩＤなどの情報を持つ４ＢｙｔｅのＴＳヘッダとデータを格納する１８４ＢｙｔｅのＴＳペイロードから構成される１８８Ｂｙｔｅ固定長のパケットであり、上記ＰＥＳパケットは分割されＴＳペイロードに格納される。ＢＤ−ＲＯＭの場合、ＴＳパケットには、４ＢｙｔｅのＴＰ＿Ｅｘｔｒａ＿Ｈｅａｄｅｒが付与され、１９２Ｂｙｔｅのソースパケットを構成し、多重化データに書き込まれる。ＴＰ＿Ｅｘｔｒａ＿ＨｅａｄｅｒにはＡＴＳ（Ａｒｒｉｖａｌ＿Ｔｉｍｅ＿Ｓｔａｍｐ）などの情報が記載される。ＡＴＳは当該ＴＳパケットのデコーダのＰＩＤフィルタへの転送開始時刻を示す。多重化データには図３４下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はＳＰＮ（ソースパケットナンバー）と呼ばれる。
【０２８７】
また、多重化データに含まれるＴＳパケットには、映像・音声・字幕などの各ストリーム以外にもＰＡＴ（Ｐｒｏｇｒａｍ  Ａｓｓｏｃｉａｔｉｏｎ  Ｔａｂｌｅ）、ＰＭＴ（Ｐｒｏｇｒａｍ  Ｍａｐ  Ｔａｂｌｅ）、ＰＣＲ（Ｐｒｏｇｒａｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ）などがある。ＰＡＴは多重化データ中に利用されるＰＭＴのＰＩＤが何であるかを示し、ＰＡＴ自身のＰＩＤは０で登録される。ＰＭＴは、多重化データ中に含まれる映像・音声・字幕などの各ストリームのＰＩＤと各ＰＩＤに対応するストリームの属性情報を持ち、また多重化データに関する各種ディスクリプタを持つ。ディスクリプタには多重化データのコピーを許可・不許可を指示するコピーコントロール情報などがある。ＰＣＲは、ＡＴＳの時間軸であるＡＴＣ（Ａｒｒｉｖａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）とＰＴＳ・ＤＴＳの時間軸であるＳＴＣ（Ｓｙｓｔｅｍ  Ｔｉｍｅ  Ｃｌｏｃｋ）の同期を取るために、そのＰＣＲパケットがデコーダに転送されるＡＴＳに対応するＳＴＣ時間の情報を持つ。
【０２８８】
図３５はＰＭＴのデータ構造を詳しく説明する図である。ＰＭＴの先頭には、そのＰＭＴに含まれるデータの長さなどを記したＰＭＴヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのＰＩＤ、ストリームの属性情報（フレームレート、アスペクト比など）が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
【０２８９】
記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
【０２９０】
多重化データ情報ファイルは、図３６に示すように多重化データの管理情報であり、多重化データと１対１に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
【０２９１】
多重化データ情報は図３６に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのＰＩＤフィルタへの最大転送レートを示す。多重化データ中に含まれるＡＴＳの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのＰＴＳであり、再生終了時刻は多重化データの終端のビデオフレームのＰＴＳに１フレーム分の再生間隔を足したものが設定される。
【０２９２】
ストリーム属性情報は図３７に示すように、多重化データに含まれる各ストリームについての属性情報が、ＰＩＤ毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
【０２９３】
本実施の形態においては、上記多重化データのうち、ＰＭＴに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した動画像符号化方法または装置において、ＰＭＴに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した動画像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
【０２９４】
また、本実施の形態における動画像復号化方法のステップを図３８に示す。ステップexＳ１００において、多重化データからＰＭＴに含まれるストリームタイプ、または、多重化データ情報に含まれるビデオストリーム属性情報を取得する。次に、ステップexＳ１０１において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成されたものであると判断された場合には、ステップexＳ１０２において、上記各実施の形態で示した動画像復号方法により復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠するものであることを示している場合には、ステップexＳ１０３において、従来の規格に準拠した動画像復号方法により復号を行う。
【０２９５】
このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した動画像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、本実施の形態で示した動画像符号化方法または装置、または、動画像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
【０２９６】
（実施の形態７）
上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるＬＳＩで実現される。一例として、図３９に１チップ化されたＬＳＩex５００の構成を示す。ＬＳＩex５００は、以下に説明する要素ex５０１、ex５０２、ex５０３、ex５０４、ex５０５、ex５０６、ex５０７、ex５０８、ex５０９を備え、各要素はバスex５１０を介して接続している。電源回路部ex５０５は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
【０２９７】
例えば符号化処理を行う場合には、ＬＳＩex５００は、ＣＰＵex５０２、メモリコントローラex５０３、ストリームコントローラex５０４、駆動周波数制御部ex５１２等を有する制御部ex５０１の制御に基づいて、ＡＶ  Ｉ／Ｏex５０９によりマイクex１１７やカメラex１１３等からＡＶ信号を入力する。入力されたＡＶ信号は、一旦ＳＤＲＡＭ等の外部のメモリex５１１に蓄積される。制御部ex５０１の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex５０７に送られ、信号処理部ex５０７において音声信号の符号化および／または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex５０７ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームＩ／Ｏex５０６から外部に出力する。この出力された多重化データは、基地局ex１０７に向けて送信されたり、または記録メディアex２１５に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex５０８にデータを蓄積するとよい。
【０２９８】
なお、上記では、メモリex５１１がＬＳＩex５００の外部の構成として説明したが、ＬＳＩex５００の内部に含まれる構成であってもよい。バッファex５０８も１つに限ったものではなく、複数のバッファを備えていてもよい。また、ＬＳＩex５００は１チップ化されてもよいし、複数チップ化されてもよい。
【０２９９】
また、上記では、制御部ex５０１が、ＣＰＵex５０２、メモリコントローラex５０３、ストリームコントローラex５０４、駆動周波数制御部ex５１２等を有するとしているが、制御部ex５０１の構成は、この構成に限らない。例えば、信号処理部ex５０７がさらにＣＰＵを備える構成であってもよい。信号処理部ex５０７の内部にもＣＰＵを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、ＣＰＵex５０２が信号処理部ex５０７、または信号処理部ex５０７の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex５０１は、信号処理部ex５０７、またはその一部を有するＣＰＵex５０２を備える構成となる。
【０３００】
なお、ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０３０１】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０３０２】
さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【０３０３】
（実施の形態８）
上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、ＬＳＩex５００において、従来の規格に準拠する映像データを復号する際のＣＰＵex５０２の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
【０３０４】
この課題を解決するために、テレビex３００、ＬＳＩex５００などの動画像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。図４０は、本実施の形態における構成ex８００を示している。駆動周波数切替え部ex８０３は、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex８０１に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex８０２に対し、映像データを復号するよう指示する。
【０３０５】
より具体的には、駆動周波数切替え部ex８０３は、図３９のＣＰＵex５０２と駆動周波数制御部ex５１２から構成される。また、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex８０１、および、従来の規格に準拠する復号処理部ex８０２は、図３９の信号処理部ex５０７に該当する。ＣＰＵex５０２は、映像データがどの規格に準拠するものであるかを識別する。そして、ＣＰＵex５０２からの信号に基づいて、駆動周波数制御部ex５１２は、駆動周波数を設定する。また、ＣＰＵex５０２からの信号に基づいて、信号処理部ex５０７は、映像データの復号を行う。ここで、映像データの識別には、例えば、実施の形態６で記載した識別情報を利用することが考えられる。識別情報に関しては、実施の形態６で記載したものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、ＣＰＵex５０２における駆動周波数の選択は、例えば、図４２のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex５０８や、ＬＳＩの内部メモリに格納しておき、ＣＰＵex５０２がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
【０３０６】
図４１は、本実施の形態の方法を実施するステップを示している。まず、ステップexＳ２００では、信号処理部ex５０７において、多重化データから識別情報を取得する。次に、ステップexＳ２０１では、ＣＰＵex５０２において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexＳ２０２において、駆動周波数を高く設定する信号を、ＣＰＵex５０２が駆動周波数制御部ex５１２に送る。そして、駆動周波数制御部ex５１２において、高い駆動周波数に設定される。一方、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠する映像データであることを示している場合には、ステップexＳ２０３において、駆動周波数を低く設定する信号を、ＣＰＵex５０２が駆動周波数制御部ex５１２に送る。そして、駆動周波数制御部ex５１２において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
【０３０７】
さらに、駆動周波数の切替えに連動して、ＬＳＩex５００またはＬＳＩex５００を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、ＬＳＩex５００またはＬＳＩex５００を含む装置に与える電圧を低く設定することが考えられる。
【０３０８】
また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、ＭＰＥＧ４−ＡＶＣ規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した動画像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
【０３０９】
さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、ＬＳＩex５００またはＬＳＩex５００を含む装置に与える電圧を高く設定し、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠する映像データであることを示している場合には、ＬＳＩex５００またはＬＳＩex５００を含む装置に与える電圧を低く設定することも考えられる。また、他の例としては、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、ＣＰＵex５０２の駆動を停止させることなく、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠する映像データであることを示している場合には、処理に余裕があるため、ＣＰＵex５０２の駆動を一時停止させることも考えられる。識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合であっても、処理に余裕があれば、ＣＰＵex５０２の駆動を一時停止させることも考えられる。この場合は、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
【０３１０】
このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてＬＳＩex５００またはＬＳＩex５００を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
【０３１１】
（実施の形態９）
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、ＬＳＩex５００の信号処理部ex５０７が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex５０７を個別に用いると、ＬＳＩex５００の回路規模が大きくなり、また、コストが増加するという課題が生じる。
【０３１２】
この課題を解決するために、上記各実施の形態で示した動画像復号方法を実行するための復号処理部と、従来のＭＰＥＧ−２、ＭＰＥＧ４−ＡＶＣ、ＶＣ−１などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を図４３（ａ）のex９００に示す。例えば、上記各実施の形態で示した動画像復号方法と、ＭＰＥＧ４−ＡＶＣ規格に準拠する動画像復号方法とは、エントロピー符号化、逆量子化、デブロッキング・フィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、ＭＰＥＧ４−ＡＶＣ規格に対応する復号処理部ex９０２を共有し、ＭＰＥＧ４−ＡＶＣ規格に対応しない、本発明特有の他の処理内容については、専用の復号処理部ex９０１を用いるという構成が考えられる。特に、本発明は、逆量子化に特徴を有していることから、例えば、逆量子化については専用の復号処理部ex９０１を用い、それ以外のエントロピー符号化、デブロッキング・フィルタ、動き補償のいずれか、または、全ての処理については、復号処理部を共有することが考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した動画像復号化方法を実行するための復号処理部を共有し、ＭＰＥＧ４−ＡＶＣ規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
【０３１３】
また、処理を一部共有化する他の例を図４３（ｂ）のex１０００に示す。この例では、本発明に特有の処理内容に対応した専用の復号処理部ex１００１と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex１００２と、本発明の動画像復号方法と他の従来規格の動画像復号方法とに共通する処理内容に対応した共用の復号処理部ex１００３とを用いる構成としている。ここで、専用の復号処理部ex１００１、ex１００２は、必ずしも本発明、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、本実施の形態の構成を、ＬＳＩex５００で実装することも可能である。
【０３１４】
このように、本発明の動画像復号方法と、従来の規格の動画像復号方法とで共通する処理内容について、復号処理部を共有することにより、ＬＳＩの回路規模を小さくし、かつ、コストを低減することが可能である。
【産業上の利用可能性】
【０３１５】
本発明は、画像復号方法及び画像符号化方法に有利に利用される。
【符号の説明】
【０３１６】
１０，３０，９０  算術復号部
１１，２２，３１，４２，９１  コンテキスト導出部
１２，２３，３２，４３，９２  コンテキスト読出部
１３，３３，９３  ２値算術復号部
１４，３４，９４  多値化部
１５，２５，３５，４５  状態保持部
１６，２６  コンテキスト一括更新部
１７，２７，３７，４７，９６  コンテキスト格納部
２０，４０  算術符号化部
２１，４１  ２値化部
２４，４４  ２値算術符号化部
３６，４６  コンテキスト並列更新部
９５  コンテキスト更新部
２００  画像符号化装置
２０５  減算器
２１０  変換・量子化部
２２０  エントロピー符号化部
２３０，４２０  逆量子化・逆変換部
２３５，４２５  加算器
２４０，４３０  デブロッキングフィルタ
２５０，４４０  メモリ
２６０，４５０  イントラ予測部
２７０  動き検出部
２８０，４６０  動き補償部
２９０，４７０  イントラ／インター切換スイッチ
４００  画像復号装置
４１０  エントロピー復号部
６００，８００  コンテキスト管理部
６０１，８０１  コンテキスト更新部
６０２，６０３，８０２，８０３  スイッチ
６０４，８０４  制御部
６０５，８０５  コンテキスト格納部Ａ
６０６，８０６  コンテキスト格納部Ｂ
【図１】
2012114711.tif 000003
【図２】
2012114711.tif 000004
【図３】
2012114711.tif 000005
【図４】
2012114711.tif 000006
【図５】
2012114711.tif 000007
【図６】
2012114711.tif 000008
【図７】
2012114711.tif 000009
【図８】
2012114711.tif 000010
【図９】
2012114711.tif 000011
【図１０】
2012114711.tif 000012
【図１１】
2012114711.tif 000013
【図１２】
2012114711.tif 000014
【図１３】
2012114711.tif 000015
【図１４】
2012114711.tif 000016
【図１５】
2012114711.tif 000017
【図１６Ａ】
2012114711.tif 000018
【図１６Ｂ】
2012114711.tif 000019
【図１６Ｃ】
2012114711.tif 000020
【図１６Ｄ】
2012114711.tif 000021
【図１７】
2012114711.tif 000022
【図１８】
2012114711.tif 000023
【図１９】
2012114711.tif 000024
【図２０】
2012114711.tif 000025
【図２１】
2012114711.tif 000026
【図２２】
2012114711.tif 000027
【図２３】
2012114711.tif 000028
【図２４】
2012114711.tif 000029
【図２５】
2012114711.tif 000030
【図２６】
2012114711.tif 000031
【図２７】
2012114711.tif 000032
【図２８】
2012114711.tif 000033
【図２９】
2012114711.tif 000034
【図３０】
2012114711.tif 000035
【図３１】
2012114711.tif 000036
【図３２】
2012114711.tif 000037
【図３３】
2012114711.tif 000038
【図３４】
2012114711.tif 000039
【図３５】
2012114711.tif 000040
【図３６】
2012114711.tif 000041
【図３７】
2012114711.tif 000042
【図３８】
2012114711.tif 000043
【図３９】
2012114711.tif 000044
【図４０】
2012114711.tif 000045
【図４１】
2012114711.tif 000046
【図４２】
2012114711.tif 000047
【図４３】
2012114711.tif 000048
【国際調査報告】
2012114711.tif 000049
2012114711.tif 000050
2012114711.tif 000051
2012114711.tif 000052