(57)【要約】  画像符号化装置（１０００）は、２値化部（３１０）が、量子化データ（ＱＴ１）に対する２値化と、量子化データ（ＱＴ２）に対する２値化とを時分割で切換えて行うことにより２値化処理を行う処理、および、算術符号化部（３５１）が、２値データ（ＢＤ１）に対する算術符号化と、２値データ（ＢＤ２）に対する算術符号化とを時分割で切換えて行うことにより算術符号化処理を行う処理の一方または両方を行う。算術符号化部（３５１）は、各２値データ（ＢＤ１）および各２値データ（ＢＤ２）の各々に対し算術符号化を行う算術符号化処理を行うことにより、符号化ストリーム（ＳＴ１）および符号化ストリーム（ＳＴ２）を生成する。
2011080851.tif 000002
【特許請求の範囲】
【請求項１】
離散コサイン変換、量子化および算術符号化を少なくとも行い、前記量子化により得られる複数の第１量子化データおよび第２量子化データを処理する画像符号化装置であって、
各前記第１量子化データおよび各前記第２量子化データの各々の２値化を行う２値化処理を行うことにより、前記各第１量子化データおよび前記各第２量子化データにそれぞれ対応する各第１の２値データおよび各第２の２値データを生成する２値化部と、
前記各第１の２値データおよび前記各第２の２値データの各々に対し算術符号化を行う算術符号化処理を行うことにより、前記各第１の２値データおよび前記各第２の２値データにそれぞれ対応する第１ストリームおよび第２ストリームを生成する算術符号化部とを備え、
前記画像符号化装置は、
前記２値化部が、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う処理、および、前記算術符号化部が、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う処理の一方または両方を行う、
画像符号化装置。
【請求項２】
前記２値化部は、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行い、
前記算術符号化部は、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う、
請求項１に記載の画像符号化装置。
【請求項３】
前記画像符号化装置は、さらに、
第１メモリおよび第２メモリを備え、
前記算術符号化部は、さらに、
前記第１ストリームおよび前記第２ストリームをそれぞれ前記第１メモリおよび前記第２メモリに記憶させる、
請求項１または２に記載の画像符号化装置。
【請求項４】
前記画像符号化装置は、さらに、
第３メモリおよび第４メモリを備え、
前記２値化部は、さらに、
前記算術符号化の対象となる前記各第１の２値データおよび前記各第２の２値データをそれぞれ前記第３メモリおよび前記第４メモリに記憶させる、
請求項３に記載の画像符号化装置。
【請求項５】
前記２値化部は、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う、
請求項１に記載の画像符号化装置。
【請求項６】
前記画像符号化装置は、さらに、
第１メモリおよび第２メモリを備え、
前記算術符号化部は、
第１算術符号化部と、
第２算術符号化部とを含み、
前記第１算術符号化部は、前記各第１の２値データに対し算術符号化を行うことにより前記第１ストリームを生成し、該第１ストリームを前記第１メモリに記憶させ、
前記第２算術符号化部は、前記各第２の２値データに対し算術符号化を行うことにより前記第２ストリームを生成し、該第２ストリームを前記第２メモリに記憶させる、
請求項１または５に記載の画像符号化装置。
【請求項７】
前記算術符号化は、Ｈ．２６４／ＡＶＣ規格に従う算術符号化であり、
前記２値化部が行う前記２値化は、コンテキスト適応型２値算術符号化における２値化であり、
前記算術符号化部が行う前記算術符号化は、前記コンテキスト適応型２値算術符号化における２値算術符号化である、
請求項１〜６のいずれかに記載の画像符号化装置。
【請求項８】
第１量子化データおよび第２量子化データの各々は、異なる２つの動画像から得られたデータである、
請求項１〜７のいずれかに記載の画像符号化装置。
【請求項９】
第１量子化データおよび第２量子化データの各々は、同一の動画像から得られたデータである、
請求項１〜７のいずれかに記載の画像符号化装置。
【請求項１０】
離散コサイン変換、量子化および算術符号化を少なくとも行い、前記量子化により得られる複数の第１量子化データおよび第２量子化データを処理する集積回路であって、
各前記第１量子化データおよび各前記第２量子化データの各々の２値化を行う２値化処理を行うことにより、前記各第１量子化データおよび前記各第２量子化データにそれぞれ対応する各第１の２値データおよび各第２の２値データを生成する２値化部と、
前記各第１の２値データおよび前記各第２の２値データの各々に対し算術符号化を行う算術符号化処理を行うことにより、前記各第１の２値データおよび前記各第２の２値データにそれぞれ対応する第１ストリームおよび第２ストリームを生成する算術符号化部とを備え、
前記集積回路は、
前記２値化部が、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う処理、および、前記算術符号化部が、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う処理の一方または両方を行う、
集積回路。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数種類のストリームを生成する画像符号化装置および集積回路に関する。
【背景技術】
【０００２】
画像処理技術において、複数種類のストリームを生成する技術が注目を集めている。例えば、特許文献１には、低ビットレートで圧縮したストリームおよび高ビットレートで圧縮したストリームを同時に生成する技術（以下、従来技術Ａという）が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１６０４９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年では、Ｈ．２６４／ＡＶＣ規格に従う画像符号化方式（以下、Ｈ２６４符号化方式という）が動画像の符号化方式として主流になっている。Ｈ２６４符号化方式では、可変サイズのブロックによる処理、１／４画素精度動き補償、算術符号化等を行うことで、符号化効率の向上をはかっている。【０００５】
しかしながら、Ｈ２６４符号化方式は、動画像の符号化における演算量が膨大であるため動画像をリアルタイムで符号化する必要がある場合、専用のハードウエアが必要とされる。以下においては、Ｈ２６４符号化方式に従った符号化を行うハードウエアを、Ｈ２６４符号化回路という。【０００６】
そのため、Ｈ２６４符号化方式を用いて、複数種類のストリームを生成する場合、複数のＨ２６４符号化回路を、画像符号化装置において独立して並列に設けるということが考えられる。しかしながら、この場合、複数種類のストリームを生成する画像符号化装置の回路規模が非常に大きくなってしまうという問題点がある。【０００７】
本発明は、上述の問題点を解決するためになされたものであって、その目的は、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置等を提供することである。
【課題を解決するための手段】
【０００８】
上述の課題を解決するために、この発明のある局面に従う画像符号化装置は、離散コサイン変換、量子化および算術符号化を少なくとも行い、前記量子化により得られる複数の第１量子化データおよび第２量子化データを処理する。画像符号化装置は、各前記第１量子化データおよび各前記第２量子化データの各々の２値化を行う２値化処理を行うことにより、前記各第１量子化データおよび前記各第２量子化データにそれぞれ対応する各第１の２値データおよび各第２の２値データを生成する２値化部と、前記各第１の２値データおよび前記各第２の２値データの各々に対し算術符号化を行う算術符号化処理を行うことにより、前記各第１の２値データおよび前記各第２の２値データにそれぞれ対応する第１ストリームおよび第２ストリームを生成する算術符号化部とを備える。前記画像符号化装置は、前記２値化部が、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う処理、および、前記算術符号化部が、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う処理の一方または両方を行う。【０００９】
したがって、画像符号化装置の回路規模の大きさを抑えることができる。また、算術符号化部は、算術符号化処理を行うことにより、第１ストリームおよび第２ストリームを生成する。以上により、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置を提供することができる。【００１０】
好ましくは、前記２値化部は、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行い、前記算術符号化部は、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う。【００１１】
好ましくは、前記画像符号化装置は、さらに、第１メモリおよび第２メモリを備え、前記算術符号化部は、さらに、前記第１ストリームおよび前記第２ストリームをそれぞれ前記第１メモリおよび前記第２メモリに記憶させる。【００１２】
これにより、第１ストリームおよび第２ストリームの各々を異なるメモリに独立して記憶させることができる。【００１３】
好ましくは、前記画像符号化装置は、さらに、第３メモリおよび第４メモリを備え、前記２値化部は、さらに、前記算術符号化の対象となる前記各第１の２値データおよび前記各第２の２値データをそれぞれ前記第３メモリおよび前記第４メモリに記憶させる。【００１４】
好ましくは、前記２値化部は、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う。【００１５】
好ましくは、前記画像符号化装置は、さらに、第１メモリおよび第２メモリを備え、前記算術符号化部は、第１算術符号化部と、第２算術符号化部とを含み、前記第１算術符号化部は、前記各第１の２値データに対し算術符号化を行うことにより前記第１ストリームを生成し、該第１ストリームを前記第１メモリに記憶させ、前記第２算術符号化部は、前記各第２の２値データに対し算術符号化を行うことにより前記第２ストリームを生成し、該第２ストリームを前記第２メモリに記憶させる。【００１６】
これにより、第１ストリームおよび第２ストリームの各々を異なるメモリに独立して記憶させることができる。【００１７】
好ましくは、前記算術符号化は、Ｈ．２６４／ＡＶＣ規格に従う算術符号化であり、前記２値化部が行う前記２値化は、コンテキスト適応型２値算術符号化における２値化であり、前記算術符号化部が行う前記算術符号化は、前記コンテキスト適応型２値算術符号化における２値算術符号化である。【００１８】
好ましくは、第１量子化データおよび第２量子化データの各々は、異なる２つの動画像から得られたデータである。【００１９】
好ましくは、第１量子化データおよび第２量子化データの各々は、同一の動画像から得られたデータである。【００２０】
この発明の他の局面に従う集積回路は、離散コサイン変換、量子化および算術符号化を少なくとも行い、前記量子化により得られる複数の第１量子化データおよび第２量子化データを処理する。集積回路は、各前記第１量子化データおよび各前記第２量子化データの各々の２値化を行う２値化処理を行うことにより、前記各第１量子化データおよび前記各第２量子化データにそれぞれ対応する各第１の２値データおよび各第２の２値データを生成する２値化部と、前記各第１の２値データおよび前記各第２の２値データの各々に対し算術符号化を行う算術符号化処理を行うことにより、前記各第１の２値データおよび前記各第２の２値データにそれぞれ対応する第１ストリームおよび第２ストリームを生成する算術符号化部とを備える。前記集積回路は、前記２値化部が、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う処理、および、前記算術符号化部が、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う処理の一方または両方を行う。【００２１】
なお、本発明は、このような画像符号化装置を構成する複数の構成要素の全てまたは一部を、システムＬＳＩ（Large Scale Integration：大規模集積回路）として実現してもよい。【００２２】
また、本発明は、画像符号化装置が備える特徴的な構成部の動作をステップとする画像符号化方法として実現してもよい。また、本発明は、そのような画像符号化方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。
【発明の効果】
【００２３】
本発明により、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置を提供することができる。
【図面の簡単な説明】
【００２４】
【図１】図１は、第１の実施の形態における画像符号化装置の構成を示すブロック図である。
【図２】図２は、２種類の動画像を説明するための図である。
【図３】図３は、第１の実施の形態における画像符号化部の構成を示すブロック図である。
【図４】図４は、第１の実施の形態における可変長符号化部の構成を示すブロック図である。
【図５】図５は、第１の実施の形態の変形例１における画像符号化装置の構成を示すブロック図である。
【図６】図６は、第１の実施の形態の変形例１における画像符号化部の構成を示すブロック図である。
【図７】図７は、第１の実施の形態の変形例１における可変長符号化部の構成を示すブロック図である。
【図８】図８は、第１の実施の形態の変形例２における画像符号化装置の構成を示すブロック図である。
【図９】図９は、第１の実施の形態の変形例２における画像符号化部の構成を示すブロック図である。
【図１０】図１０は、第１の実施の形態の変形例２における可変長符号化部の構成を示すブロック図である。
【図１１】図１１は、第１の実施の形態の変形例３における画像符号化装置の構成を示すブロック図である。
【図１２】図１２は、第１の実施の形態の変形例３における画像符号化部の構成を示すブロック図である。
【図１３】図１３は、第１の実施の形態の変形例３における可変長符号化部の構成を示すブロック図である。
【図１４】図１４は、画像符号化装置の特徴的な機能構成を示すブロック図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００２６】
＜第１の実施の形態＞
図１は、第１の実施の形態における画像符号化装置１０００の構成を示すブロック図である。
【００２７】
図１を参照して、画像符号化装置１０００は、画像符号化部１００と、制御部２１０と、メモリ２２１，２２２とを備える。
【００２８】
メモリ２２１，２２２の各々は、データを記憶するためのメモリ（例えば、ＤＲＡＭ（Dynamic Random Access Memory））である。なお、メモリ２２１，２２２の各々は独立して設けられなくてもよい。メモリ２２１，２２２の各々は、１つのメモリに含まれる記憶領域として構成されてもよい。
【００２９】
制御部２１０は、ＣＰＵ（Central Processing Unit）等のプロセッサ（図示せず）と、メモリ制御回路（図示せず）とを含む。制御部２１０のプロセッサは、画像符号化部１００の動作を制御する。
【００３０】
また、制御部２１０のメモリ制御回路は、メモリ２２１，２２２にデータアクセスする。メモリ２２１，２２２に記憶されるデータは、上記プロセッサを介さず、メモリ制御回路のみを介して、メモリ２２１，２２２に記憶される。また、メモリ２２１，２２２から読み出されるデータは、上記プロセッサを介さず、メモリ制御回路のみを介して、メモリ２２１，２２２から読み出される。
【００３１】
以下においては、画像符号化部１００および後述の画像符号化部１００Ａ，１００Ｂ，１００Ｃの動作を制御する、制御部２１０のプロセッサを、総括的に、制御部２１０と表記する。
【００３２】
画像符号化部１００は、動画像を、所定の画像符号化方式に従って符号化する。当該画像符号化方式は、Ｈ．２６４／ＡＶＣ規格に従う符号化方式であるとする。なお、画像符号化方式は、Ｈ．２６４／ＡＶＣ規格に限定されることなく、算術符号化を行う符号化方式であれば、他の規格に従う符号化方式であってもよい。
【００３３】
画像符号化部１００は、動画像ＭＶ１を構成する複数のピクチャＰ１と、動画像ＭＶ２を構成する複数のピクチャＰ２とを受信する。
【００３４】
なお、画像符号化部１００は、動画像ＭＶ１および動画像ＭＶ２の両方でなく、動画像ＭＶ１および動画像ＭＶ２の一方のみを受信してもよい。
【００３５】
図２は、動画像ＭＶ１および動画像ＭＶ２を説明するための図である。動画像ＭＶ１および動画像ＭＶ２の各々は、異なるコンテンツ（例えば、異なるチャンネルの番組等）の動画像であるとする。
【００３６】
以下においては、ｎ（自然数）番目のピクチャＰ１を、ピクチャＰ１［ｎ］とも表記する。また、以下においては、ｎ（自然数）番目のピクチャＰ２を、ピクチャＰ２［ｎ］とも表記する。
【００３７】
図２を参照して、動画像ＭＶ１は、ピクチャＰ１［ｎ］，Ｐ１［ｎ＋１］，Ｐ１［ｎ＋２］，・・・から構成される。動画像ＭＶ２は、ピクチャＰ２［ｎ］，Ｐ２［ｎ＋１］，Ｐ２［ｎ＋２］，・・・から構成される。
【００３８】
画像符号化部１００は、動画像ＭＶ１のピクチャＰ１と、動画像ＭＶ２のピクチャＰ２とを交互に受信する。画像符号化部１００は、例えば、１／１２０秒毎に、ピクチャを受信する。具体的には、画像符号化部１００は、例えば、１／１２０秒毎に、ピクチャＰ１［ｎ］，Ｐ２［ｎ］，Ｐ１［ｎ＋１］，Ｐ２［ｎ＋１］，Ｐ１［ｎ＋２］，Ｐ２［ｎ＋２］，・・・を、この順で順次受信する。
【００３９】
すなわち、画像符号化部１００は、１／６０秒毎に、ピクチャＰ１を受信する。また、画像符号化部１００は、１／６０秒毎に、ピクチャＰ２を受信する。
【００４０】
なお、画像符号化部１００が受信する画像の単位は、ピクチャ単位に限定されず、例えば、スライス単位、マクロブロック単位、ＧＯＰ単位であってもよい。
【００４１】
画像符号化部１００は、動画像ＭＶ１を構成する複数のピクチャＰ１を符号化することにより、符号化ストリームＳＴ１を生成する。また、画像符号化部１００は、動画像ＭＶ２を構成する複数のピクチャＰ２を符号化することにより、符号化ストリームＳＴ２を生成する。
【００４２】
以下においては、ピクチャＰ１，Ｐ２の各々を、単に、ピクチャＰとも表記する。また、以下においては、符号化ストリームＳＴ１および符号化ストリームＳＴ２を、それぞれ、第１ストリームおよび第２ストリームともいう。
【００４３】
図３は、第１の実施の形態における画像符号化部１００の構成を示すブロック図である。
【００４４】
図３を参照して、画像符号化部１００は、画像処理部１０９と、可変長符号化部３００とを含む。
【００４５】
詳細は後述するが、画像処理部１０９と可変長符号化部３００の一部とから、ＦＥ（Front End）部１０１が構成される。また、可変長符号化部３００のうち、ＦＥ部１０１以外の部分から、ＢＥ（Back End）部１０２が構成される。
【００４６】
画像処理部１０９は、制御部２１０の制御にしたがって動作する。画像処理部１０９は、Ｈ．２６４／ＡＶＣ規格に従う符号化処理を行う。なお、画像処理部１０９は、内部の構成を流用して、例えば、ＭＰＥＧ２規格、ＭＰＥＧ４規格、Ｈ．２６１規格、Ｈ．２６３規格等に従う符号化処理も行うことが可能である。
【００４７】
また、制御部２１０は、可変長符号化部３００の動作を制御する。
【００４８】
画像処理部１０９は、減算器１１０と、ＤＣＴ（Discrete Cosine Transform）部１２１と、量子化部１２２と、逆量子化部１３１と、逆ＤＣＴ部１３２と、加算器１４０と、イントラ予測部１５２と、フィルタ部１６１と、動き補償部１６３と、スイッチＳＷ１１，ＳＷ１２とを含む。以下、各部について簡単に説明する。
【００４９】
減算器１１０は、２種類の画像を用いて差分画像を生成する機能を有する。ＤＣＴ部１２１は、離散コサイン変換（以下、ＤＣＴという）を行う機能を有する。量子化部１２２は、量子化を行う機能を有する。
【００５０】
可変長符号化部３００は、コンテキスト適応型２値算術符号化（ＣＡＢＡＣ（Context-Adaptive Binary Arithmetic Coding））を行う機能を有する。また、可変長符号化部３００は、コンテキスト適応型可変調符号化（ＣＡＶＬＣ（Context-Adaptive Variable Length Coding））を行う機能も有する。
【００５１】
逆量子化部１３１は、逆量子化を行う機能を有する。逆ＤＣＴ部１３２は、逆ＤＣＴを行う機能を有する。加算器１４０は、２種類の画像を加算する機能を有する。イントラ予測部１５２は、イントラ予測符号化（画面内予測符号化）を行う機能を有する。
【００５２】
フィルタ部１６１は、デブロッキングフィルタ処理を行う機能を有する。動き補償部１６３は、動き補償を行う機能を有する。スイッチＳＷ１１は、制御部２１０からの指示にしたがって、外部から受信する２種類の画像のいずれかを減算器１１０へ送信する。スイッチＳＷ１２は、制御部２１０からの指示にしたがって、外部から受信する２種類の画像のいずれかを加算器１４０へ送信する。
【００５３】
なお、図３のバッファ１５１およびフレームバッファ１６２は、説明のために、画像処理部１０９内に示している。しかしながら、バッファ１５１およびフレームバッファ１６２は、実際には、画像処理部１０９に含まれない。バッファ１５１およびフレームバッファ１６２は、メモリ２２１，２２２の各々の内部に設けられる。なお、バッファ１５１およびフレームバッファ１６２の一方または両方は、画像処理部１０９内に設けられてもよい。
【００５４】
次に、画像処理部１０９内の各部の処理について説明する。画像処理部１０９に含まれる各部の処理は、Ｈ．２６４／ＡＶＣ規格に従う処理であるので詳細な説明は行わない。以下、簡単に説明する。
【００５５】
減算器１１０は、前述した動画像ＭＶ１のピクチャＰ１と、前述した動画像ＭＶ２のピクチャＰ２とを交互に受信する。減算器１１０は、例えば、１／１２０秒毎に、ピクチャＰを受信する。具体的には、減算器１１０は、例えば、１／１２０秒毎に、ピクチャＰ１［ｎ］，Ｐ２［ｎ］，Ｐ１［ｎ＋１］，Ｐ２［ｎ＋１］，Ｐ１［ｎ＋２］，Ｐ２［ｎ＋２］，・・・を、この順で順次受信する。
【００５６】
すなわち、減算器１１０は、１／６０秒毎に、ピクチャＰ１を受信する。また、減算器１１０は、１／６０秒毎に、ピクチャＰ２を受信する。
【００５７】
まず、一例として、動画像ＭＶ１を構成する複数のピクチャＰ１の各々に対する画像処理部１０９内の各部の処理について説明する。
【００５８】
減算器１１０は、ピクチャＰ１を受信する毎に、当該ピクチャＰ１と、後述のスイッチＳＷ１１から送信される後述の予測画像との差分である差分画像（以下、差分画像Ｄ１という）を生成し、当該差分画像Ｄ１をＤＣＴ部１２１へ送信する。当該予測画像は、後述する予測画像Ｙ１Ａまたは予測画像Ｙ１Ｂである。
【００５９】
ＤＣＴ部１２１は、差分画像Ｄ１を受信する毎に、当該差分画像Ｄ１に対しブロック単位でＤＣＴを行うことにより各ブロックに対応するＤＣＴ係数群を得る。ＤＣＴ係数群は、複数のＤＣＴ係数から構成される。そして、ＤＣＴ部１２１は、差分画像Ｄ１に対応するＤＣＴ係数群を得る毎に、当該ＤＣＴ係数群を、量子化部１２２へ送信する。
【００６０】
量子化部１２２は、差分画像Ｄ１に対応するＤＣＴ係数群を受信する毎に、当該ＤＣＴ係数群に対し量子化を行うことにより、量子化データＱＴ１を得る。量子化部１２２は、差分画像Ｄ１に対応する量子化データＱＴ１を得る毎に、当該量子化データＱＴ１を、可変長符号化部３００および逆量子化部１３１へ送信する。
【００６１】
逆量子化部１３１は、量子化データＱＴ１を受信する毎に、当該量子化データＱＴ１に対し逆量子化を行うことにより、差分画像Ｄ１に対応するＤＣＴ係数群を得る。逆量子化部１３１は、差分画像Ｄ１に対応するＤＣＴ係数群を得る毎に、当該ＤＣＴ係数群を、逆ＤＣＴ部１３２へ送信する。
【００６２】
逆ＤＣＴ部１３２は、差分画像Ｄ１に対応するＤＣＴ係数群を受信する毎に、当該ＤＣＴ係数群に対し逆ＤＣＴを行うことにより、差分画像Ｄ１に対応する差分画像ＤＢ１を得る。差分画像ＤＢ１は、差分画像Ｄ１の一部の画像である。逆ＤＣＴ部１３２は、差分画像ＤＢ１を得る毎に、当該差分画像ＤＢ１を、加算器１４０へ送信する。
【００６３】
加算器１４０は、差分画像Ｄ１に対応する全ての差分画像ＤＢ１を受信する毎に、当該全ての差分画像ＤＢ１と、後述のスイッチＳＷ１２から送信される後述の予測画像とを加算することにより、再構成画像Ｔ１を得る。当該予測画像は、後述する予測画像Ｙ１Ａまたは予測画像Ｙ１Ｂである。
【００６４】
加算器１４０は、再構成画像Ｔ１を得る毎に、当該再構成画像Ｔ１をフィルタ部１６１へ送信するとともに、当該再構成画像Ｔ１を、メモリ２２１に設けられるバッファ１５１に記憶させる。
【００６５】
イントラ予測部１５２は、メモリ２２１に設けられるバッファ１５１に記憶されている再構成画像Ｔ１を用いて、イントラ予測符号化（画面内予測符号化）を行うことにより、予測画像（以下、予測画像Ｙ１Ａという）を得る。イントラ予測符号化は、周知な処理であるので詳細な説明は行わない。
【００６６】
イントラ予測部１５２は、予測画像Ｙ１Ａを得る毎に、当該予測画像Ｙ１Ａを、スイッチＳＷ１１およびスイッチＳＷ１２へ送信する。
【００６７】
また、フィルタ部１６１は、再構成画像Ｔ１を受信する毎に、当該再構成画像Ｔ１に対しデブロッキングフィルタ処理を行う。デブロッキングフィルタ処理は、周知な処理であるので詳細な説明は行わない。そして、フィルタ部１６１は、デブロッキングフィルタ処理が行われた再構成画像Ｔ１を、参照画像Ｒ１として、メモリ２２１に設けられるフレームバッファ１６２に記憶させる。
【００６８】
動き補償部１６３は、フレームバッファ１６２に記憶されている複数の参照画像Ｒ１を用いて、動き補償を行うことにより予測画像（以下、予測画像Ｙ１Ｂという）を得る。動き補償の処理は、周知な処理であるので詳細な説明は行わない。動き補償部１６３は、予測画像Ｙ１Ｂを得る毎に、当該予測画像Ｙ１Ｂを、スイッチＳＷ１１およびスイッチＳＷ１２へ送信する。
【００６９】
スイッチＳＷ１１は、制御部２１０からの指示にしたがって、受信した予測画像Ｙ１Ａおよび予測画像Ｙ１Ｂのいずれかを、減算器１１０へ送信する。
【００７０】
スイッチＳＷ１２は、制御部２１０からの指示にしたがって、受信した予測画像Ｙ１Ａおよび予測画像Ｙ１Ｂのいずれかを、加算器１４０へ送信する。
【００７１】
以上の処理が、動画像ＭＶ１を構成する複数のピクチャＰ１の各々に対し行われる。
【００７２】
次に、動画像ＭＶ１を構成する複数のピクチャＰ２の各々に対する画像処理部１０９内の各部の処理について説明する。なお、ピクチャＰ２に対する画像処理部１０９内の各部の処理は、ピクチャＰ１に対する画像処理部１０９内の各部の処理と同様なので詳細な説明は繰り返さない。以下、簡単に説明する。
【００７３】
減算器１１０は、ピクチャＰ２を受信する毎に、当該ピクチャＰ２と、スイッチＳＷ１１から送信される後述の予測画像との差分である差分画像（以下、差分画像Ｄ２という）を生成し、当該差分画像Ｄ２をＤＣＴ部１２１へ送信する。当該予測画像は、後述する予測画像Ｙ２Ａまたは予測画像Ｙ２Ｂである。
【００７４】
ＤＣＴ部１２１は、差分画像Ｄ２を受信する毎に、当該差分画像Ｄ２に対しブロック単位でＤＣＴを行うことにより各ブロックに対応するＤＣＴ係数群を得る。そして、ＤＣＴ部１２１は、差分画像Ｄ２に対応するＤＣＴ係数群を得る毎に、当該ＤＣＴ係数群を、量子化部１２２へ送信する。
【００７５】
量子化部１２２は、差分画像Ｄ２に対応するＤＣＴ係数群を受信する毎に、当該ＤＣＴ係数群に対し量子化を行うことにより、量子化データＱＴ２を得る。量子化部１２２は、差分画像Ｄ２に対応する量子化データＱＴ２を得る毎に、当該量子化データＱＴ２を、可変長符号化部３００および逆量子化部１３１へ送信する。
【００７６】
逆量子化部１３１は、量子化データＱＴ２を受信する毎に、当該量子化データＱＴ２に対し逆量子化を行うことにより、差分画像Ｄ２に対応するＤＣＴ係数群を得る。逆量子化部１３１は、差分画像Ｄ２に対応するＤＣＴ係数群を得る毎に、当該ＤＣＴ係数群を、逆ＤＣＴ部１３２へ送信する。
【００７７】
逆ＤＣＴ部１３２は、差分画像Ｄ２に対応するＤＣＴ係数群を受信する毎に、当該ＤＣＴ係数群に対し逆ＤＣＴを行うことにより、差分画像Ｄ２に対応する差分画像ＤＢ２を得る。差分画像ＤＢ２は、差分画像Ｄ２の一部の画像である。逆ＤＣＴ部１３２は、差分画像ＤＢ２を得る毎に、当該差分画像ＤＢ２を、加算器１４０へ送信する。
【００７８】
加算器１４０は、差分画像Ｄ２に対応する全ての差分画像ＤＢ２を受信する毎に、当該全ての差分画像ＤＢ２と、後述のスイッチＳＷ１２から送信される後述の予測画像とを加算することにより、再構成画像Ｔ２を得る。当該予測画像は、後述する予測画像Ｙ２Ａまたは予測画像Ｙ２Ｂである。
【００７９】
加算器１４０は、再構成画像Ｔ２を得る毎に、当該再構成画像Ｔ２を、フィルタ部１６１へ送信するとともに、当該再構成画像Ｔ２を、メモリ２２２に設けられるバッファ１５１に記憶させる。
【００８０】
イントラ予測部１５２は、メモリ２２２に設けられるバッファ１５１に記憶されている再構成画像Ｔ２を用いて、イントラ予測符号化を行うことにより、予測画像（以下、予測画像Ｙ２Ａという）を得る。
【００８１】
イントラ予測部１５２は、予測画像Ｙ２Ａを得る毎に、当該予測画像Ｙ２Ａを、スイッチＳＷ１１およびスイッチＳＷ１２へ送信する。
【００８２】
また、フィルタ部１６１は、再構成画像Ｔ２を受信する毎に、当該再構成画像Ｔ２に対しデブロッキングフィルタ処理を行う。そして、フィルタ部１６１は、デブロッキングフィルタ処理が行われた再構成画像Ｔ２を、参照画像Ｒ２として、メモリ２２２に設けられるフレームバッファ１６２に記憶させる。
【００８３】
動き補償部１６３は、フレームバッファ１６２に記憶されている複数の参照画像Ｒ２を用いて、動き補償を行うことにより予測画像（以下、予測画像Ｙ２Ｂという）を得る。動き補償部１６３は、予測画像Ｙ２Ｂを得る毎に、当該予測画像Ｙ２Ｂを、スイッチＳＷ１１およびスイッチＳＷ１２へ送信する。
【００８４】
スイッチＳＷ１１は、制御部２１０からの指示にしたがって、受信した予測画像Ｙ２Ａおよび予測画像Ｙ２Ｂのいずれかを、減算器１１０へ送信する。
【００８５】
スイッチＳＷ１２は、制御部２１０からの指示にしたがって、受信した予測画像Ｙ２Ａおよび予測画像Ｙ２Ｂのいずれかを、加算器１４０へ送信する。
【００８６】
以上の処理が、動画像ＭＶ２を構成する複数のピクチャＰ２の各々に対し行われる。
【００８７】
上記処理により、画像処理部１０９の各部は、ピクチャＰ１に対する処理と、ピクチャＰ２に対する処理とを交互に繰り返す。したがって、可変長符号化部３００は、１枚のピクチャＰ１に対応する各量子化データＱＴ１と、１枚のピクチャＰ２に対応する各量子化データＱＴ２とを交互に受信する。
【００８８】
以下においては、量子化データＱＴ１および量子化データＱＴ２を、それぞれ、第１量子化データおよび第２量子化データともいう。
【００８９】
図４は、第１の実施の形態における可変長符号化部３００の構成を示すブロック図である。なお、図４には、説明のためにバッファＢＦ１１，ＢＦ１２，ＢＦ２１，ＢＦ２２を示す。バッファＢＦ１１，ＢＦ２１は、メモリ２２１内に設けられる。バッファＢＦ１２，ＢＦ２２は、メモリ２２２内に設けられる。
【００９０】
なお、バッファＢＦ２１，ＢＦ２２は、それぞれ、メモリ２２１，２２２の外部に設けられてもよい。例えば、バッファＢＦ２１，ＢＦ２２の各々は、画像符号化装置１０００内であって、画像符号化部１００の外部に設けられてもよい。
【００９１】
図４を参照して、可変長符号化部３００は、２値化部３１０と、メモリ３１１，３２１，３４１，３６１，３７１と、メモリ制御部３１２，３２２，３４２，３６２，３７２と、算術符号化部３５１と、スイッチＳＷ３０とを含む。
【００９２】
ＦＥ部１０１は、図３の画像処理部１０９と、２値化部３１０と、メモリ３１１，３２１と、メモリ制御部３１２，３２２とから構成される。
【００９３】
ＢＥ部１０２は、算術符号化部３５１と、メモリ３４１，３６１，３７１と、メモリ制御部３４２，３６２，３７２と、スイッチＳＷ３０とから構成される。
【００９４】
２値化部３１０は、量子化データの２値化を行う機能を有する。なお、２値化部３１０は、ＣＡＶＬＣを行う機能も有する。
【００９５】
メモリ３１１，３２１，３４１，３６１，３７１の各々は、ＦＩＦＯ（First In First  Out）メモリである。なお、メモリ３１１，３２１，３４１，３６１，３７１の各々は、ＦＩＦＯメモリに限定されることなく、他の方式のメモリ（例えば、ＤＲＡＭ）であってもよい。
【００９６】
メモリ制御部３１２，３２２，３４２，３６２，３７２の各々は、ＤＭＡＣ（Direct Memory Access Controller）である。なお、メモリ制御部３１２，３２２，３４２，３６２，３７２の各々は、ＤＭＡＣに限定されず、メモリにデータアクセスする機能を有する回路であれば、他の回路であってもよい。
【００９７】
算術符号化部３５１は、ＣＡＢＡＣにおける２値算術符号化を行う機能を有する。ＣＡＢＡＣにおける２値算術符号化は、周知な技術であるので詳細な説明は行わない。なお、算術符号化部３５１は、Ｈ．２６４／ＡＶＣ規格に従うコンテキスト計算部の機能も有する。算術符号化部３５１は、ハードウエア（回路）で構成される。
【００９８】
以下においては、算術符号化部３５１が行うＣＡＢＡＣにおける２値算術符号化を、単に、算術符号化ともいう。
【００９９】
スイッチＳＷ３０は、制御部２１０からの指示にしたがって、メモリ制御部３４２と、バッファＢＦ１１またはバッファＢＦ１２とを電気的に接続する。
【０１００】
次に、可変長符号化部３００内の各部の処理について説明する。
【０１０１】
ここで、２値化部３１０が量子化データＱＴ１を処理する場合、２値化部３１０が処理した後のデータをメモリ３１１に記憶させる指示を、制御部２１０は、２値化部３１０に与える。２値化部３１０が量子化データＱＴ２を処理する場合、制御部２１０は、２値化部３１０が処理した後のデータをメモリ３２１に記憶させる指示を、制御部２１０は、２値化部３１０に与える。
【０１０２】
２値化部３１０は、１枚のピクチャＰ１に対応する各量子化データＱＴ１と、１枚のピクチャＰ２に対応する各量子化データＱＴ２とを交互に受信する。
【０１０３】
２値化部３１０は、量子化データＱＴ１を受信する毎に、量子化データＱＴ１を２値化することにより２値データＢＤ１を生成する。２値化部３１０は、２値データＢＤ１を生成する毎に、当該２値データＢＤ１をメモリ３１１に記憶させる。
【０１０４】
また、２値化部３１０は、量子化データＱＴ２を受信する毎に、量子化データＱＴ２を２値化することにより２値データＢＤ２を生成する。２値化部３１０は、２値データＢＤ２を生成する毎に、当該２値データＢＤ２をメモリ３２１に記憶させる。
【０１０５】
以下においては、２値データＢＤ１および２値データＢＤ２を、それぞれ、第１の２値データおよび第２の２値データともいう。
【０１０６】
すなわち、２値化部３１０は、各量子化データＱＴ１および各量子化データＱＴ２において２値化の対象データを時分割で交互に切換える。つまり、２値化部３１０は、量子化データＱＴ１および量子化データＱＴ２において２値化の対象データを時分割で切換える。
【０１０７】
言い換えれば、２値化部３１０は、各量子化データＱＴ１（第１量子化データ）に対する２値化と、各量子化データＱＴ２（第２量子化データ）に対する２値化とを時分割で交互に切換えて行う。つまり、２値化部３１０は、量子化データＱＴ１に対する２値化と、量子化データＱＴ２に対する２値化とを時分割で切換えて行う。
【０１０８】
また、すなわち、２値化部３１０は、各量子化データＱＴ１および各量子化データＱＴ２の各々の２値化を行う２値化処理を行う。これにより、２値化部３１０は、各量子化データＱＴ１および各量子化データＱＴ２にそれぞれ対応する各２値データＢＤ１および各２値データＢＤ２を生成する。すなわち、２値化部３１０は、各第１量子化データおよび各第２量子化データにそれぞれ対応する各第１の２値データおよび各第２の２値データを生成する。
【０１０９】
メモリ制御部３１２は、メモリ３１１に最新の２値データＢＤ１が記憶される毎に、メモリ３１１に記憶されている最も古い２値データＢＤ１を読み出し、読み出した当該２値データＢＤ１を、バッファＢＦ１１に記憶させる。ここで、バッファＢＦ１１は、１枚以上のピクチャの各々に対応する各２値データＢＤ１を記憶可能な容量を有するとする。
【０１１０】
上記のメモリ制御部３１２の処理が、１枚のピクチャＰ１に対応する２値データＢＤ１の数に応じて繰り返し行われることにより、バッファＢＦ１１には、１枚のピクチャＰ１に対応する複数の２値データＢＤ１が記憶される。
【０１１１】
メモリ制御部３２２は、メモリ３２１に最新の２値データＢＤ２が記憶される毎に、メモリ３２１に記憶されている最も古い２値データＢＤ２を読み出し、読み出した当該２値データＢＤ２を、バッファＢＦ１２に記憶させる。ここで、バッファＢＦ１２は、１枚以上のピクチャの各々に対応する各２値データＢＤ２を記憶可能な容量を有するとする。
【０１１２】
上記のメモリ制御部３２２の処理が、１枚のピクチャＰ２に対応する２値データＢＤ２の数に応じて繰り返し行われることにより、バッファＢＦ１２には、１枚のピクチャＰ２に対応する複数の２値データＢＤ２が記憶される。
【０１１３】
２値化部３１０およびメモリ制御部３１２の各々が行うピクチャＰ１に対応する上記処理が、動画像ＭＶ１を構成するピクチャＰ１の数に対応する処理量分繰り返し行われる。また、２値化部３１０およびメモリ制御部３２２の各々が行うピクチャＰ２に対応する上記処理が、動画像ＭＶ２を構成するピクチャＰ２の数に対応する処理量分繰り返し行われる。
【０１１４】
メモリ制御部３４２は、スイッチＳＷ３０の動作により当該メモリ制御部３４２と電気的に接続されているバッファ（バッファＢＦ１１またはバッファＢＦ１２）から、最も古い１枚のピクチャに対応する複数の２値データを、順次読み出す。
【０１１５】
スイッチＳＷ３０は、例えば、１枚のピクチャに対応する各２値データがバッファに記憶されるのに必要な時間毎に、メモリ制御部３４２と電気的に接続するバッファを、バッファＢＦ１１とバッファＢＦ１２とで交互に切換える。
【０１１６】
ここで、スイッチＳＷ３０により、メモリ制御部３４２がバッファＢＦ１１と電気的に接続されているとする。この場合、制御部２１０は、算術符号化部３５１が生成する後述のデータを、メモリ３６１に記憶させる指示を算術符号化部３５１に与える。
【０１１７】
また、この場合、メモリ制御部３４２は、バッファＢＦ１１に記憶されている最も古い１枚のピクチャＰ１に対応する複数の２値データＢＤ１を順次読み出す。
【０１１８】
メモリ制御部３４２は、２値データＢＤ１を読み出す毎に、読み出した当該２値データＢＤ１をメモリ３４１に記憶させる。
【０１１９】
算術符号化部３５１は、メモリ３４１に最新の２値データＢＤ１が記憶される毎に、メモリ３４１に記憶されている最も古い２値データＢＤ１を読み出す。そして、算術符号化部３５１は、２値データＢＤ１を読み出す毎に、当該２値データＢＤ１に対し前述した２値算術符号化を行うことにより符号化データＥＤ１を生成する。生成された当該符号化データＥＤ１は、１個の２値データＢＤ１に対応する前述した符号化ストリームＳＴ１である。
【０１２０】
算術符号化部３５１が生成する各符号化データＥＤ１のビット長は、２値算術符号化の性質上、一定ではない。
【０１２１】
算術符号化部３５１が、上記２値算術符号化を１枚のピクチャＰ１に対応する２値データＢＤ１の数に応じて繰り返し行うことにより、１枚のピクチャＰ１に対応する符号化ストリームＳＴ１が生成される。
【０１２２】
すなわち、算術符号化部３５１は、ピクチャＰ１に対応する各２値データＢＤ１に対し算術符号化を行うことにより、各２値データＢＤ１に対応する符号化ストリームＳＴ１を生成する。つまり、算術符号化部３５１は、ピクチャＰ１に対応する各第１の２値データに対し算術符号化を行うことにより、各第１の２値データに対応する第１ストリームを生成する。
【０１２３】
算術符号化部３５１は、符号化データＥＤ１（符号化ストリームＳＴ１）を生成する毎に、当該符号化データＥＤ１をメモリ３６１に記憶させる。
【０１２４】
メモリ制御部３６２は、メモリ３６１に複数の符号化データＥＤ１が記憶されることにより、メモリ３６１に記憶されている複数の符号化データＥＤ１のデータ量が所定の閾値以上になる毎に、アクセスビット単位で、符号化データＥＤ１を順次読み出す。
【０１２５】
ここで、閾値は、一例として、７６８０ビット（９６０バイト）であるとする。また、アクセスビットとは、メモリ（例えば、メモリ３６１）から一度に読み出せるデータ量であるとする。また、アクセスビットは、一例として、３２ビット（４バイト）であるとする。
【０１２６】
この場合、メモリ制御部３６２は、３２ビット単位で、符号化データＥＤ１を順次読み出し、順次読み出した当該各符号化データＥＤ１を、バッファＢＦ２１に記憶させる。
【０１２７】
上記のメモリ制御部３６２の処理が、１枚のピクチャＰ１に対応する複数の符号化データＥＤ１のデータ量分だけ繰り返し行われることにより、バッファＢＦ２１には、１枚のピクチャＰ１に対応する複数の符号化データＥＤ１が記憶される。
【０１２８】
これにより、バッファＢＦ２１には、複数の符号化データＥＤ１（符号化ストリームＳＴ１）から構成される符号化ストリームＳＴ１が記憶される。
【０１２９】
メモリ制御部３４２、算術符号化部３５１およびメモリ制御部３６２の各々が行うピクチャＰ１に対応する上記処理が、動画像ＭＶ１を構成するピクチャＰ１の数に対応する処理量分繰り返し行われることにより、バッファＢＦ２１には、動画像ＭＶ１に対応する符号化ストリームＳＴ１が記憶される。
【０１３０】
次に、スイッチＳＷ３０により、メモリ制御部３４２がバッファＢＦ１２と電気的に接続されているとする。この場合、制御部２１０は、算術符号化部３５１が生成する後述のデータを、メモリ３７１に記憶させる指示を算術符号化部３５１に与える。
【０１３１】
また、この場合、メモリ制御部３４２は、バッファＢＦ１２に記憶されている最も古い１枚のピクチャＰ２に対応する複数の２値データＢＤ２を順次読み出す。
【０１３２】
メモリ制御部３４２は、２値データＢＤ２を読み出す毎に、読み出した当該２値データＢＤ２をメモリ３４１に記憶させる。
【０１３３】
算術符号化部３５１は、メモリ３４１に最新の２値データＢＤ２が記憶される毎に、メモリ３４１に記憶されている最も古い２値データＢＤ２を読み出す。そして、算術符号化部３５１は、２値データＢＤ２を読み出す毎に、当該２値データＢＤ２に対し２値算術符号化を行うことにより符号化データＥＤ２を生成する。生成された当該符号化データＥＤ２は、１個の２値データＢＤ２に対応する前述した符号化ストリームＳＴ２である。
【０１３４】
算術符号化部３５１が生成する各符号化データＥＤ２のビット長は、２値算術符号化の性質上、一定ではない。
【０１３５】
算術符号化部３５１が、上記２値算術符号化を１枚のピクチャＰ２に対応する２値データＢＤ２の数に応じて繰り返し行うことにより、１枚のピクチャＰ２に対応する符号化ストリームＳＴ２が生成される。
【０１３６】
すなわち、算術符号化部３５１は、ピクチャＰ２に対応する各２値データＢＤ２に対し算術符号化を行うことにより、各２値データＢＤ２に対応する符号化ストリームＳＴ２を生成する。つまり、算術符号化部３５１は、ピクチャＰ２に対応する各第２の２値データに対し算術符号化を行うことにより、各第２の２値データに対応する第２ストリームを生成する。
【０１３７】
算術符号化部３５１は、符号化データＥＤ２（符号化ストリームＳＴ２）を生成する毎に、当該符号化データＥＤ２をメモリ３７１に記憶させる。
【０１３８】
メモリ制御部３７２は、前述したメモリ制御部３６２と同様な処理を行う。
【０１３９】
すなわち、メモリ制御部３７２は、メモリ３７１に複数の符号化データＥＤ２が記憶されることにより、メモリ３７１に記憶されている複数の符号化データＥＤ２のデータ量が、所定の閾値以上になる毎に、アクセスビット単位で、符号化データＥＤ２を順次読み出す。
【０１４０】
そして、メモリ制御部３７２は、アクセスビット単位で、順次読み出した当該各符号化データＥＤ２を、バッファＢＦ２２に記憶させる。
【０１４１】
上記のメモリ制御部３７２の処理が、１枚のピクチャＰ２に対応する複数の符号化データＥＤ２のデータ量分だけ繰り返し行われることにより、バッファＢＦ２２には、１枚のピクチャＰ２に対応する複数の符号化データＥＤ２が記憶される。
【０１４２】
これにより、バッファＢＦ２２には、複数の符号化データＥＤ２（符号化ストリームＳＴ２）から構成される符号化ストリームＳＴ２が記憶される。
【０１４３】
メモリ制御部３４２、算術符号化部３５１およびメモリ制御部３７２の各々が行うピクチャＰ２に対応する上記処理が、動画像ＭＶ２を構成するピクチャＰ２の数に対応する処理量分繰り返し行われることにより、バッファＢＦ２２には、動画像ＭＶ２に対応する符号化ストリームＳＴ２が記憶される。
【０１４４】
すなわち、算術符号化部３５１は、各２値データＢＤ１および各２値データＢＤ２の各々に対し算術符号化を行う算術符号化処理を行うことにより、各２値データＢＤ１および各２値データＢＤ２にそれぞれ対応する符号化ストリームＳＴ１および符号化ストリームＳＴ２を生成する。つまり、算術符号化部３５１は、各第１の２値データおよび各第２の２値データの各々に対し算術符号化を行う算術符号化処理を行うことにより、各第１の２値データおよび各第２の２値データにそれぞれ対応する第１ストリームおよび第２ストリームを生成する。
【０１４５】
可変長符号化部３００内の各部の上記処理により、算術符号化部３５１は、各２値データＢＤ１および各２値データＢＤ２において２値算術符号化の対象データを時分割で交互に切換える。つまり、算術符号化部３５１は、２値データＢＤ１および２値データＢＤ２において２値算術符号化の対象データを時分割で切換える。
【０１４６】
言い換えれば、算術符号化部３５１は、各２値データＢＤ１に対する２値算術符号化と、各２値データＢＤ２に対する２値算術符号化とを時分割で交互に切換えて行う。つまり、算術符号化部３５１は、２値データＢＤ１に対する２値算術符号化と、２値データＢＤ２に対する２値算術符号化とを時分割で切換えて行う。すなわち、算術符号化部３５１は、第１の２値データに対する算術符号化と、第２の２値データに対する算術符号化とを時分割で切換えて行うことにより算術符号化処理を行う。
【０１４７】
以上説明したように、本実施の形態によれば、符号化データＥＤ１，ＥＤ２（符号化ストリームＳＴ１，ＳＴ２）をそれぞれ記憶させるメモリ３６１，３７１を設ける。すなわち、符号化ストリームＳＴ１および符号化ストリームＳＴ２の各々を異なるメモリに独立して記憶させる。
【０１４８】
これにより、算術符号化部３５１が生成する各符号化データ（符号化データＥＤ１、符号化データＥＤ２）のビット長が一定でない場合であっても、正常な２種類の符号化ストリームをほぼ同時に生成することができる。
【０１４９】
すなわち、例えば、符号化ストリームＳＴ１に、ピクチャＰ２に対応する符号化データＥＤ２が混入されることを防ぐことができる。また、符号化ストリームＳＴ２に、ピクチャＰ１に対応する符号化データＥＤ１が混入されることを防ぐことができる。
【０１５０】
また、符号化データＥＤ１，ＥＤ２をそれぞれ記憶させるメモリ３６１，３７１を設けることにより以下の効果も得られる。
【０１５１】
ここで、仮に、符号化データＥＤ１，ＥＤ２を記憶させるための１つのメモリ（以下、メモリＡという）のみを設けたとする。この場合、算術符号化部３５１は、メモリＡに時分割で、１枚のピクチャＰ１に対応する各符号化データＥＤ１と、１枚のピクチャＰ２に対応する各符号化データＥＤ２とを交互に記憶させる必要がある。なお、符号化データＥＤ１，ＥＤ２の各々のビット長は一定でない。
【０１５２】
そのため、メモリＡに記憶させる符号化データが切換わるタイミング（以下、切換タイミングという）において、アクセスビット未満の中途半端なビット長の符号化データがメモリＡに記憶される場合が多くなる。
【０１５３】
切換タイミングは、例えば、メモリＡに記憶させる符号化データが符号化データＥＤ１から符号化データＥＤ２に切換わるタイミングである。なお、動画像における１枚のピクチャが、例えば１／６０秒毎に処理され、かつ、２種類の動画像が処理される場合、切換タイミングは、例えば１／１２０秒毎に発生する。なお、２種類の動画像が処理される場合、各動画像のピクチャの処理レートは必ずしも同じとは限らない。そのため、切換タイミングは、動画像毎に異なる場合もある。
【０１５４】
以下においては、アクセスビット未満のビット長を、非アクセスビット長という。
【０１５５】
切換タイミングにおいて、メモリＡに非アクセスビット長の符号化データが記憶されている場合、その都度、非アクセスビット長の符号化データを全て読み出す処理（以下、押出し処理という）を行う必要がある。
【０１５６】
押出し処理では、非アクセスビット長の符号化データを読出し、当該非アクセスビット長の符号化データに補充データを付加することにより、アクセスビットの符号化データが生成される。ここで、補充データは、（アクセスビット−非アクセスビット長）数のビットのデータである。補充データの各ビットは０を示す。
【０１５７】
以下においては、押出し処理により生成されたアクセスビットの符号化データを、非連続符号化データという。
【０１５８】
ここで、切換タイミングにおいて、メモリＡに４ビットの符号化データが記憶されているとする。また、アクセスビットは、３２ビットであるとする。この場合、押出し処理では、４ビットの符号化データに２８ビットの補充データが付加された３２ビットの非連続符号化データが生成される。
【０１５９】
非連続符号化データが生成された場合、同一種類の符号化データ（例えば、符号化データＥＤ１）が連続する符号化ストリームを生成するためには、補充データを削除するための処理（以下、補充データ削除処理という）が必要となる。
【０１６０】
なお、前述したように、生成される符号化データＥＤ１，ＥＤ２の各々のビット長は一定でない。したがって、この場合、ほぼ切換タイミング毎に、押出し処理および補充データ削除処理が行われることになる。
【０１６１】
すなわち、メモリＡを使用して、正常な符号化ストリームＳＴ１，ＳＴ２を生成するためには、押出し処理および補充データ削除処理を非常に多く行う必要があり、ソフトウエアおよびハードウエアの制御が非常に複雑になる。そのため、メモリＡを使用して、正常な符号化ストリームＳＴ１，ＳＴ２の両方を生成するための処理を制御するのは非常に困難である。
【０１６２】
仮に、ソフトウエアで押出し処理および補充データ削除処理を必要な回数だけ行ったとすると、正常な符号化ストリームＳＴ１，ＳＴ２を生成するまでに非常に時間がかかってしまう。
【０１６３】
一方、本実施の形態では、符号化データＥＤ１，ＥＤ２をそれぞれ記憶させるメモリ３６１，３７１を設け、かつ、メモリ３６１，３７１をそれぞれ制御するメモリ制御部３６２，３７２を設けている。
【０１６４】
メモリ３６１，メモリ制御部３６２により、符号化ストリームＳＴ１の伝送経路が形成される。また、メモリ３７１，メモリ制御部３７２により、符号化ストリームＳＴ２の伝送経路が形成される。すなわち、メモリ３６１，３７１、メモリ制御部３６２，３７２により、符号化ストリームＳＴ１，ＳＴ２にそれぞれ対応する２つの伝送経路が形成される。これにより、符号化ストリームＳＴ１，ＳＴ２の各々の伝送の独立性が保証される。
【０１６５】
そのため、上記のような押出し処理および補充データ削除処理を非常に多く行う必要もない。したがって、可変長符号化部３００の制御を容易にしつつ、正常な符号化ストリームＳＴ１，ＳＴ２を高速にほぼ同時に生成することができる。
【０１６６】
また、算術符号化部３５１は、２値データＢＤ１および２値データＢＤ２において２値算術符号化の対象データを時分割で切換える。すなわち、算術符号化部３５１は、２値データＢＤ１に対する２値算術符号化と、２値データＢＤ２に対する２値算術符号化とを時分割で切換えて行う。
【０１６７】
これにより、１つの算術符号化部３５１で、２値データＢＤ１および２値データＢＤ２を２値算術符号化することができる。つまり、２値データＢＤ１および２値データＢＤ２を処理するために、２つの算術符号化部３５１を設ける必要がない。
【０１６８】
したがって、可変長符号化部３００の回路規模の大きさを抑えることができる。すなわち、可変長符号化部３００を含む画像符号化部１００を含む画像符号化装置１０００の回路規模の大きさを抑えることができる。また、これにより、画像符号化装置１０００の消費電力を抑えることもできる。
【０１６９】
以上により、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置を提供することができる。
【０１７０】
なお、量子化データＱＴ１，ＱＴ２の各々は、異なる動画像（動画像ＭＶ１，ＭＶ２）から生成されるデータとしたが、これに限定されない。量子化データＱＴ１，ＱＴ２の各々は、同一の動画像から得られたデータであってもよい。
【０１７１】
ここで、例えば、量子化データＱＴ１は、画像処理部１０９の各部が、動画像ＭＶ１に対し、ハイプロファイルにしたがった処理を行うことにより得られたデータであるとする。また、量子化データＱＴ２は、画像処理部１０９の各部が、動画像ＭＶ１に対し、ベースラインプロファイルにしたがった処理を行うことにより得られたデータであるとする。すなわち、この場合の量子化データＱＴ２は、算術符号化が不要なデータである。
【０１７２】
この場合、２値化部３１０は、量子化データＱＴ２に対し、ＣＡＶＬＣを行うことにより、符号化ストリームＳＴ２を生成する。生成された符号化ストリームＳＴ２は、メモリ３２１に記憶され、メモリ制御部３２２の処理により、バッファＢＦ１２に記憶される。これにより、バッファＢＦ１２に符号化ストリームＳＴ２が記憶される。
【０１７３】
なお、２値化部３１０は、量子化データＱＴ１に対しては、前述した処理と同様な処理を行う。
【０１７４】
この場合、生成される符号化ストリームＳＴ１，ＳＴ２は、同一の動画像から生成されたデータとなる。すなわち、本実施の形態の構成によれば、同一の動画像から符号化ストリームＳＴ１，ＳＴ２を、高速にほぼ同時に生成することもができる。
【０１７５】
また、この場合の量子化データＱＴ２は、算術符号化が不要なデータである。そのため、本実施の形態の構成によれば、算術符号化が不要なデータおよび算術符号化が必要なデータの両方を時分割で同時に処理できる。
【０１７６】
＜第１の実施の形態の変形例１＞
本実施の形態の変形例１では、第１の実施の形態と可変長符号化部の構成が異なる画像符号化装置について説明する。
【０１７７】
図５は、第１の実施の形態の変形例１における画像符号化装置１０００Ａの構成を示すブロック図である。
【０１７８】
図５を参照して、画像符号化装置１０００Ａは、図１の画像符号化装置１０００と比較して、画像符号化部１００の代わりに画像符号化部１００Ａを備える点が異なる。それ以外の構成は、画像符号化装置１０００と同様なので詳細な説明は繰り返さない。
【０１７９】
なお、制御部２１０は、画像符号化部１００Ａの動作を制御する。
【０１８０】
図６は、第１の実施の形態の変形例１における画像符号化部１００Ａの構成を示すブロック図である。
【０１８１】
図６を参照して、画像符号化部１００Ａは、図３の画像符号化部１００と比較して、可変長符号化部３００の代わりに可変長符号化部３００Ａを含む点が異なる。それ以外の構成および各部の機能は、画像符号化部１００と同様なので詳細な説明は繰り返さない。
【０１８２】
画像処理部１０９と可変長符号化部３００Ａの一部とから、ＦＥ部１０１Ａが構成される。また、可変長符号化部３００Ａのうち、ＦＥ部１０１Ａ以外の部分から、ＢＥ部１０２が構成される。
【０１８３】
制御部２１０は、可変長符号化部３００Ａの動作を制御する。
【０１８４】
図７は、第１の実施の形態の変形例１における可変長符号化部３００Ａの構成を示すブロック図である。なお、図７には、説明のために前述したバッファＢＦ１１，ＢＦ１２，ＢＦ２１，ＢＦ２２を示す。
【０１８５】
図７を参照して、可変長符号化部３００Ａは、図４の可変長符号化部３００と比較して、スイッチＳＷ３１をさらに含む点と、メモリ３２１およびメモリ制御部３２２を含まない点とが異なる。それ以外の構成および各部の機能は、可変長符号化部３００と同様なので詳細な説明は繰り返さない。
【０１８６】
ＦＥ部１０１Ａは、図６の画像処理部１０９と、２値化部３１０と、メモリ３１１と、メモリ制御部３１２と、スイッチＳＷ３１とから構成される。
【０１８７】
ＢＥ部１０２は、算術符号化部３５１と、メモリ３４１，３６１，３７１と、メモリ制御部３４２，３６２，３７２と、スイッチＳＷ３０とから構成される。すなわち、図７のＢＥ部１０２の構成は、図４のＢＥ部１０２の構成と同じである。
【０１８８】
スイッチＳＷ３１は、制御部２１０からの指示にしたがって、メモリ制御部３１２と、バッファＢＦ１１またはバッファＢＦ１２とを電気的に接続する。
【０１８９】
次に、可変長符号化部３００Ａ内の各部の処理について説明する。
【０１９０】
可変長符号化部３００Ａ内の各部の処理は、第１の実施の形態で説明した可変長符号化部３００内の各部の処理と同様なので詳細な説明は繰り返さない。以下、第１の実施の形態と異なる点を主に説明する。
【０１９１】
２値化部３１０は、１枚のピクチャＰ１に対応する各量子化データＱＴ１と、１枚のピクチャＰ２に対応する各量子化データＱＴ２とを交互に受信する。
【０１９２】
２値化部３１０は、量子化データＱＴ１を受信する毎に、量子化データＱＴ１を２値化することにより２値データＢＤ１を生成する。２値化部３１０は、２値データＢＤ１を生成する毎に、当該２値データＢＤ１をメモリ３１１に記憶させる。
【０１９３】
また、２値化部３１０は、量子化データＱＴ２を受信する毎に、量子化データＱＴ２を２値化することにより２値データＢＤ２を生成する。２値化部３１０は、２値データＢＤ２を生成する毎に、当該２値データＢＤ２をメモリ３１１に記憶させる。
【０１９４】
すなわち、２値化部３１０は、各量子化データＱＴ１および各量子化データＱＴ２において２値化の対象データを時分割で交互に切換える。つまり、２値化部３１０は、量子化データＱＴ１および量子化データＱＴ２において２値化の対象データを時分割で切換える。
【０１９５】
言い換えれば、２値化部３１０は、各量子化データＱＴ１に対する２値化と、各量子化データＱＴ２に対する２値化とを時分割で交互に切換えて行う。つまり、２値化部３１０は、量子化データＱＴ１に対する２値化と、量子化データＱＴ２に対する２値化とを時分割で切換えて行う。
【０１９６】
メモリ制御部３１２は、スイッチＳＷ３１の動作により当該メモリ制御部３１２と電気的に接続されているバッファ（バッファＢＦ１１またはバッファＢＦ１２）に応じて、メモリ３１１から読み出すデータの記憶先を変更する。記憶先の変更は、制御部２１０からの指示に応じて行われる。
【０１９７】
スイッチＳＷ３１は、例えば、１枚のピクチャに対応する各２値データの処理に必要な時間毎に、メモリ制御部３１２と電気的に接続するバッファを、バッファＢＦ１１とバッファＢＦ１２とで交互に切換える。
【０１９８】
ここで、スイッチＳＷ３１により、メモリ制御部３１２がバッファＢＦ１１と電気的に接続されているとする。この場合、メモリ３１１には、２値化部３１０の前述した処理により、２値データＢＤ１が記憶されている。また、この場合、制御部２１０は、メモリ３１１に記憶されている２値データＢＤ１を、バッファＢＦ１１に記憶させる指示をメモリ制御部３１２に与える。
【０１９９】
この場合、メモリ制御部３１２は、メモリ３１１に最新の２値データＢＤ１が記憶される毎に、メモリ３１１に記憶されている最も古い２値データＢＤ１を読み出し、読み出した当該２値データＢＤ１を、バッファＢＦ１１に記憶させる。
【０２００】
上記のメモリ制御部３１２の処理が、１枚のピクチャＰ１に対応する２値データＢＤ１の数に応じて繰り返し行われることにより、バッファＢＦ１１には、１枚のピクチャＰ１に対応する複数の２値データＢＤ１が記憶される。
【０２０１】
ここで、スイッチＳＷ３１により、メモリ制御部３１２がバッファＢＦ１２と電気的に接続されているとする。この場合、メモリ３１１には、２値化部３１０の前述した処理により、２値データＢＤ２が記憶されているとする。また、この場合、制御部２１０は、メモリ３１１に記憶されている２値データＢＤ２を、バッファＢＦ１２に記憶させる指示をメモリ制御部３１２に与える。
【０２０２】
この場合、メモリ制御部３１２は、メモリ３１１に最新の２値データＢＤ２が記憶される毎に、メモリ３１１に記憶されている最も古い２値データＢＤ２を読み出し、読み出した当該２値データＢＤ２を、バッファＢＦ１２に記憶させる。
【０２０３】
上記のメモリ制御部３１２の処理が、１枚のピクチャＰ２に対応する２値データＢＤ２の数に応じて繰り返し行われることにより、バッファＢＦ１２には、１枚のピクチャＰ２に対応する複数の２値データＢＤ２が記憶される。
【０２０４】
２値化部３１０およびメモリ制御部３１２の各々が行うピクチャＰ１に対応する上記処理が、動画像ＭＶ１を構成するピクチャＰ１の数に対応する処理量分繰り返し行われる。また、２値化部３１０およびメモリ制御部３１２の各々が行うピクチャＰ２に対応する上記処理が、動画像ＭＶ２を構成するピクチャＰ２の数に対応する処理量分繰り返し行われる。
【０２０５】
なお、メモリ制御部３４２、算術符号化部３５１、メモリ制御部３６２およびメモリ制御部３７２の各々が行う処理は、第１の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。すなわち、ＢＥ部１０２内の各部が行う処理は、第１の実施の形態で説明した処理と同様である。
【０２０６】
以上説明したように、本実施の形態の変形例１によれば、第１の実施の形態と同様な効果が得られる。すなわち、可変長符号化部３００Ａの制御を容易にしつつ、正常な２種類の符号化ストリームをほぼ同時に生成することができる。
【０２０７】
なお、可変長符号化部３００Ａは、可変長符号化部３００と比較して、スイッチＳＷ３１をさらに含むが、メモリ３２１およびメモリ制御部３２２を含まない。スイッチＳＷ３１の回路は、メモリ３２１またはメモリ制御部３２２の回路よりはるかに小さい。
【０２０８】
したがって、本実施の形態の変形例１によれば、可変長符号化部３００より、可変長符号化部３００Ａを構成する回路規模の大きさをさらに抑えることができる。すなわち、可変長符号化部３００Ａを含む画像符号化部１００Ａを含む画像符号化装置１０００Ａの回路規模の大きさを抑えることができる。
【０２０９】
また、本実施の形態の変形例１の可変長符号化部３００Ａの構成によれば、算術符号化部３５１が生成する、ビット長が一定でない２種類の符号化データＥＤ１，ＥＤ２をそれぞれ記憶させる２つのメモリを設ける。すなわち、１つのメモリを用いた場合に前述した押出し処理および補充データ削除処理が多く行われる部分のみに、２つのメモリと、当該２つのメモリをそれぞれ制御する２つのメモリ制御部を設ける。
【０２１０】
これにより、可変長符号化部３００Ａを含む画像符号化部１００Ａを含む画像符号化装置１０００Ａの回路規模の大きさを抑えるとともに、正常な２種類の符号化ストリームをほぼ同時に生成することができる。
【０２１１】
以上により、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置を提供することができる。
【０２１２】
＜第１の実施の形態の変形例２＞
本実施の形態の変形例２では、前述の実施の形態と可変長符号化部の構成が異なる画像符号化装置について説明する。
【０２１３】
図８は、第１の実施の形態の変形例２における画像符号化装置１０００Ｂの構成を示すブロック図である。
【０２１４】
図８を参照して、画像符号化装置１０００Ｂは、図１の画像符号化装置１０００と比較して、画像符号化部１００の代わりに画像符号化部１００Ｂを備える点が異なる。それ以外の構成は、画像符号化装置１０００と同様なので詳細な説明は繰り返さない。
【０２１５】
なお、制御部２１０は、画像符号化部１００Ｂの動作を制御する。
【０２１６】
図９は、第１の実施の形態の変形例２における画像符号化部１００Ｂの構成を示すブロック図である。
【０２１７】
図９を参照して、画像符号化部１００Ｂは、図３の画像符号化部１００と比較して、可変長符号化部３００の代わりに可変長符号化部３００Ｂを含む点が異なる。それ以外の構成および各部の機能は、画像符号化部１００と同様なので詳細な説明は繰り返さない。
【０２１８】
画像処理部１０９と可変長符号化部３００Ｂの一部とから、ＦＥ部１０１Ａが構成される。また、可変長符号化部３００Ｂのうち、ＦＥ部１０１Ａ以外の部分から、ＢＥ部１０２Ｂが構成される。
【０２１９】
制御部２１０は、可変長符号化部３００Ｂの動作を制御する。
【０２２０】
図１０は、第１の実施の形態の変形例２における可変長符号化部３００Ｂの構成を示すブロック図である。なお、図１０には、説明のために前述したバッファＢＦ１１，ＢＦ１２，ＢＦ２１，ＢＦ２２を示す。
【０２２１】
図１０を参照して、可変長符号化部３００Ｂは、図７の可変長符号化部３００Ａと比較して、算術符号化部３５２、メモリ３４１Ｂおよびメモリ制御部３４２Ｂをさらに含む点と、スイッチＳＷ３０を含まない点とが異なる。それ以外の構成および各部の機能は、可変長符号化部３００Ａと同様なので詳細な説明は繰り返さない。
【０２２２】
ＦＥ部１０１Ａは、図９の画像処理部１０９と、２値化部３１０と、メモリ３１１と、メモリ制御部３１２と、スイッチＳＷ３１とから構成される。すなわち、ＦＥ部１０１Ａの構成は、図７のＦＥ部１０１Ａの構成と同じである。
【０２２３】
ＢＥ部１０２Ｂは、算術符号化部３５１，３５２と、メモリ３４１，３４１Ｂ，３６１，３７１と、メモリ制御部３４２，３４２Ｂ，３６２，３７２とから構成される。
【０２２４】
算術符号化部３５２は、算術符号化部３５１と同じ機能を有する。なお、算術符号化部３５１と、算術符号化部３５２とから、算術符号化部３５１Ａが構成される。すなわち、算術符号化部３５１Ａは、第１算術符号化部としての算術符号化部３５１と、第２算術符号化部としての算術符号化部３５２とを含む。
【０２２５】
メモリ制御部３４２は、バッファＢＦ１１と電気的に接続される。メモリ制御部３４２Ｂは、バッファＢＦ１２と電気的に接続される。
【０２２６】
次に、可変長符号化部３００Ｂ内の各部の処理について説明する。
【０２２７】
可変長符号化部３００Ｂ内の各部の処理は、第１の実施の形態の変形例１で説明した可変長符号化部３００Ａ内の各部の処理と同様なので詳細な説明は繰り返さない。以下、第１の実施の形態の変形例１と異なる点を主に説明する。
【０２２８】
可変長符号化部３００Ｂ内の２値化部３１０、メモリ制御部３１２およびスイッチＳＷ３１の各々の処理は、第１の実施の形態の変形例１で説明した処理と同様なので詳細な説明は繰り返さない。これにより、バッファＢＦ１１には、ピクチャＰ１に対応する複数の２値データＢＤ１が記憶される。また、バッファＢＦ１２には、ピクチャＰ２に対応する複数の２値データＢＤ１が記憶される。
【０２２９】
メモリ制御部３４２は、第１の実施の形態と同様に、バッファＢＦ１１に記憶されている最も古い１枚のピクチャＰ１に対応する複数の２値データＢＤ１を順次読み出す。
【０２３０】
メモリ制御部３４２は、第１の実施の形態と同様に、２値データＢＤ１を読み出す毎に、読み出した当該２値データＢＤ１をメモリ３４１に記憶させる。
【０２３１】
算術符号化部３５１は、第１の実施の形態と同様に、メモリ３４１に最新の２値データＢＤ１が記憶される毎に、メモリ３４１に記憶されている最も古い２値データＢＤ１を読み出す。そして、算術符号化部３５１は、２値データＢＤ１を読み出す毎に、当該２値データＢＤ１に対し前述した２値算術符号化を行うことにより符号化データＥＤ１を生成する。
【０２３２】
算術符号化部３５１が、上記２値算術符号化を１枚のピクチャＰ１に対応する２値データＢＤ１の数に応じて繰り返し行うことにより、１枚のピクチャＰ１に対応する符号化ストリームＳＴ１が生成される。
【０２３３】
算術符号化部３５１は、第１の実施の形態と同様に、符号化データＥＤ１を生成する毎に、当該符号化データＥＤ１をメモリ３６１に記憶させる。
【０２３４】
メモリ制御部３６２は、第１の実施の形態と同様に、メモリ３６１に複数の符号化データＥＤ１が記憶されることにより、メモリ３６１に記憶されている複数の符号化データＥＤ１のデータ量が、所定の閾値以上になる毎に、アクセスビット単位で、符号化データＥＤ１を順次読み出す。
【０２３５】
そして、メモリ制御部３６２は、アクセスビット単位で、順次読み出した当該各符号化データＥＤ１を、バッファＢＦ２１に記憶させる。
【０２３６】
上記のメモリ制御部３６２の処理が、１枚のピクチャＰ１に対応する複数の符号化データＥＤ１のデータ量分だけ繰り返し行われることにより、バッファＢＦ２１には、１枚のピクチャＰ１に対応する複数の符号化データＥＤ１が記憶される。これにより、バッファＢＦ２１には、複数の符号化データＥＤ１（符号化ストリームＳＴ１）から構成される符号化ストリームＳＴ１が記憶される。
【０２３７】
メモリ制御部３４２、算術符号化部３５１およびメモリ制御部３６２の各々が行うピクチャＰ１に対応する上記処理が、動画像ＭＶ１を構成するピクチャＰ１の数に対応する処理量分繰り返し行われることにより、バッファＢＦ２１には、動画像ＭＶ１に対応する符号化ストリームＳＴ１が記憶される。
【０２３８】
メモリ制御部３４２Ｂは、第１の実施の形態のメモリ制御部３４２と同様に、バッファＢＦ１２に記憶されている最も古い１枚のピクチャＰ２に対応する複数の２値データＢＤ２を順次読み出す。
【０２３９】
メモリ制御部３４２Ｂは、第１の実施の形態のメモリ制御部３４２と同様に、２値データＢＤ２を読み出す毎に、読み出した当該２値データＢＤ２をメモリ３４１Ｂに記憶させる。
【０２４０】
算術符号化部３５２は、第１の実施の形態の算術符号化部３５１と同様に、メモリ３４１Ｂに最新の２値データＢＤ２が記憶される毎に、メモリ３４１Ｂに記憶されている最も古い２値データＢＤ２を読み出す。そして、算術符号化部３５２は、２値データＢＤ２を読み出す毎に、当該２値データＢＤ２に対し前述した２値算術符号化を行うことにより符号化データＥＤ２を生成する。
【０２４１】
算術符号化部３５２が、上記２値算術符号化を１枚のピクチャＰ２に対応する２値データＢＤ２の数に応じて繰り返し行うことにより、１枚のピクチャＰ２に対応する符号化ストリームＳＴ２が生成される。
【０２４２】
算術符号化部３５２は、第１の実施の形態の算術符号化部３５１と同様に、符号化データＥＤ２を生成する毎に、当該符号化データＥＤ２をメモリ３７１に記憶させる。
【０２４３】
メモリ制御部３７２は、第１の実施の形態と同様に、メモリ３７１に複数の符号化データＥＤ２が記憶されることにより、メモリ３７１に記憶されている複数の符号化データＥＤ２のデータ量が、所定の閾値以上になる毎に、アクセスビット単位で、符号化データＥＤ２を順次読み出す。
【０２４４】
そして、メモリ制御部３７２は、アクセスビット単位で、順次読み出した当該各符号化データＥＤ２を、バッファＢＦ２２に記憶させる。
【０２４５】
上記のメモリ制御部３７２の処理が、１枚のピクチャＰ２に対応する複数の符号化データＥＤ２のデータ量分だけ繰り返し行われることにより、バッファＢＦ２２には、１枚のピクチャＰ２に対応する複数の符号化データＥＤ２が記憶される。これにより、バッファＢＦ２２には、複数の符号化データＥＤ２（符号化ストリームＳＴ２）から構成される符号化ストリームＳＴ２が記憶される。
【０２４６】
メモリ制御部３４２Ｂ、算術符号化部３５２およびメモリ制御部３７２の各々が行うピクチャＰ２に対応する上記処理が、動画像ＭＶ２を構成するピクチャＰ２の数に対応する処理量分繰り返し行われることにより、バッファＢＦ２２には、動画像ＭＶ２に対応する符号化ストリームＳＴ２が記憶される。
【０２４７】
以上説明したように、本実施の形態の変形例２によれば、第１の実施の形態の変形例１と同様な効果が得られる。すなわち、可変長符号化部３００Ｂの制御を容易にしつつ、正常な２種類の符号化ストリームをほぼ同時に生成することができる。
【０２４８】
なお、可変長符号化部３００Ｂでは、図７の可変長符号化部３００Ａと比較して、算術符号化部３５２、メモリ３４１Ｂおよびメモリ制御部３４２Ｂをさらに含む。そのため、可変長符号化部３００Ｂの回路規模は、可変長符号化部３００Ａの回路規模より若干大きくなる。
【０２４９】
しかしながら、可変長符号化部３００Ｂでは、スイッチＳＷ３０がないため、第１の実施の形態の変形例１のように、スイッチＳＷ３０に対する制御部２１０の処理が不要となり、制御部２１０の負担を減らすことができる。
【０２５０】
すなわち、本実施の形態の変形例２においても、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置を提供することができる。
【０２５１】
＜第１の実施の形態の変形例３＞
本実施の形態の変形例３では、前述の実施の形態と可変長符号化部の構成が異なる画像符号化装置について説明する。
【０２５２】
図１１は、第１の実施の形態の変形例３における画像符号化装置１０００Ｃの構成を示すブロック図である。
【０２５３】
図１１を参照して、画像符号化装置１０００Ｃは、図１の画像符号化装置１０００と比較して、画像符号化部１００の代わりに画像符号化部１００Ｃを備える点が異なる。それ以外の構成は、画像符号化装置１０００と同様なので詳細な説明は繰り返さない。
【０２５４】
なお、制御部２１０は、画像符号化部１００Ｃの動作を制御する。
【０２５５】
図１２は、第１の実施の形態の変形例３における画像符号化部１００Ｃの構成を示すブロック図である。
【０２５６】
図１２を参照して、画像符号化部１００Ｃは、図３の画像符号化部１００と比較して、可変長符号化部３００の代わりに可変長符号化部３００Ｃを含む点が異なる。それ以外の構成および各部の機能は、画像符号化部１００と同様なので詳細な説明は繰り返さない。
【０２５７】
画像処理部１０９と可変長符号化部３００Ｃの一部とから、ＦＥ部１０１Ａが構成される。また、可変長符号化部３００Ｃのうち、ＦＥ部１０１Ａ以外の部分から、ＢＥ部１０２Ｃが構成される。
【０２５８】
制御部２１０は、可変長符号化部３００Ｃの動作を制御する。
【０２５９】
図１３は、第１の実施の形態の変形例３における可変長符号化部３００Ｃの構成を示すブロック図である。なお、図１３には、説明のために前述したバッファＢＦ１１，ＢＦ１２，ＢＦ２１，ＢＦ２２を示す。
【０２６０】
図１３を参照して、可変長符号化部３００Ｃは、図７の可変長符号化部３００Ａと比較して、スイッチＳＷ３２をさらに含む点と、メモリ３７１およびメモリ制御部３７２を含まない点とが異なる。それ以外の構成および各部の機能は、可変長符号化部３００Ａと同様なので詳細な説明は繰り返さない。
【０２６１】
ＦＥ部１０１Ａは、図１２の画像処理部１０９と、２値化部３１０と、メモリ３１１と、メモリ制御部３１２と、スイッチＳＷ３１とから構成される。すなわち、図１３のＦＥ部１０１Ａの構成は、図７のＦＥ部１０１Ａの構成と同じである。
【０２６２】
ＢＥ部１０２Ｃは、算術符号化部３５１と、メモリ３４１，３６１と、メモリ制御部３４２，３６２と、スイッチＳＷ３０、ＳＷ３２とから構成される。
【０２６３】
スイッチＳＷ３２は、制御部２１０からの指示にしたがって、メモリ制御部３６２と、バッファＢＦ２１またはバッファＢＦ２２とを電気的に接続する。
【０２６４】
次に、可変長符号化部３００Ｃ内の各部の処理について説明する。
【０２６５】
可変長符号化部３００Ｃ内の各部の処理は、第１の実施の形態の変形例１で説明した可変長符号化部３００Ａ内の各部の処理と同様なので詳細な説明は繰り返さない。以下、第１の実施の形態の変形例１と異なる点を主に説明する。
【０２６６】
可変長符号化部３００Ｃ内の２値化部３１０、メモリ制御部３１２およびスイッチＳＷ３１の各々の処理は、第１の実施の形態の変形例１で説明した処理と同様なので詳細な説明は繰り返さない。これにより、バッファＢＦ１１には、ピクチャＰ１に対応する複数の２値データＢＤ１が記憶される。また、バッファＢＦ１２には、ピクチャＰ２に対応する複数の２値データＢＤ１が記憶される。
【０２６７】
可変長符号化部３００Ｃ内のスイッチＳＷ３０およびメモリ制御部３４２の各々の処理は、第１の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
【０２６８】
これにより、スイッチＳＷ３０により、メモリ制御部３４２がバッファＢＦ１１と電気的に接続されている場合、メモリ３４１には２値データＢＤ１が記憶される。
【０２６９】
また、スイッチＳＷ３０により、メモリ制御部３４２がバッファＢＦ１２と電気的に接続されている場合、メモリ３４１には、２値データＢＤ２が記憶される。
【０２７０】
スイッチＳＷ３２は、算術符号化部３５１が２値データＢＤ１を処理しているときにおいて、制御部２１０からの指示にしたがって、メモリ制御部３６２と、バッファＢＦ２１とを電気的に接続する。
【０２７１】
また、スイッチＳＷ３２は、算術符号化部３５１が２値データＢＤ２を処理しているときにおいて、制御部２１０からの指示にしたがって、メモリ制御部３６２と、バッファＢＦ２２とを電気的に接続する。
【０２７２】
ここで、スイッチＳＷ３０により、メモリ制御部３４２がバッファＢＦ１１と電気的に接続されているとする。
【０２７３】
この場合、算術符号化部３５１は、メモリ３４１に最新の２値データＢＤ１が記憶される毎に、メモリ３４１に記憶されている最も古い２値データＢＤ１を読み出す。そして、算術符号化部３５１は、２値データＢＤ１を読み出す毎に、当該２値データＢＤ１に対し前述した２値算術符号化を行うことにより符号化データＥＤ１を生成する。
【０２７４】
前述したように、算術符号化部３５１が生成する各符号化データＥＤ１のビット長は、２値算術符号化の性質上、一定ではない。
【０２７５】
算術符号化部３５１が、上記２値算術符号化を１枚のピクチャＰ１に対応する２値データＢＤ１の数に応じて繰り返し行うことにより、１枚のピクチャＰ１に対応する符号化ストリームＳＴ１が生成される。
【０２７６】
算術符号化部３５１は、符号化データＥＤ１（符号化ストリームＳＴ１）を生成する毎に、当該符号化データＥＤ１をメモリ３６１に記憶させる。
【０２７７】
なお、算術符号化部３５１が２値データＢＤ１を処理しているとき、スイッチＳＷ３２により、メモリ制御部３６２と、バッファＢＦ２１とは電気的に接続される。
【０２７８】
メモリ制御部３６２は、第１の実施の形態と同様に、メモリ３６１に複数の符号化データＥＤ１が記憶されることにより、メモリ３６１に記憶されている複数の符号化データＥＤ１のデータ量が、所定の閾値以上になる毎に、アクセスビット単位で、符号化データＥＤ１を順次読み出す。
【０２７９】
そして、メモリ制御部３６２は、アクセスビット単位で、順次読み出した当該各符号化データＥＤ１を、バッファＢＦ２１に記憶させる。
【０２８０】
上記のメモリ制御部３６２の処理が、１枚のピクチャＰ１に対応する複数の符号化データＥＤ１のデータ量分だけ繰り返し行われることにより、バッファＢＦ２１には、１枚のピクチャＰ１に対応する複数の符号化データＥＤ１が記憶される。
【０２８１】
これにより、バッファＢＦ２１には、複数の符号化データＥＤ１（符号化ストリームＳＴ１）から構成される符号化ストリームＳＴ１が記憶される。
【０２８２】
メモリ制御部３４２、算術符号化部３５１およびメモリ制御部３６２の各々が行うピクチャＰ１に対応する上記処理が、動画像ＭＶ１を構成するピクチャＰ１の数に対応する処理量分繰り返し行われることにより、バッファＢＦ２１には、動画像ＭＶ１に対応する符号化ストリームＳＴ１が記憶される。
【０２８３】
ここで、スイッチＳＷ３０により、メモリ制御部３４２がバッファＢＦ１２と電気的に接続されているとする。
【０２８４】
この場合、算術符号化部３５１は、メモリ３４１に最新の２値データＢＤ２が記憶される毎に、メモリ３４１に記憶されている最も古い２値データＢＤ２を読み出す。そして、算術符号化部３５１は、２値データＢＤ２を読み出す毎に、当該２値データＢＤ２に対し前述した２値算術符号化を行うことにより符号化データＥＤ２を生成する。
【０２８５】
前述したように、算術符号化部３５１が生成する各符号化データＥＤ２のビット長は、２値算術符号化の性質上、一定ではない。
【０２８６】
算術符号化部３５１が、上記２値算術符号化を１枚のピクチャＰ２に対応する２値データＢＤ２の数に応じて繰り返し行うことにより、１枚のピクチャＰ２に対応する符号化ストリームＳＴ２が生成される。
【０２８７】
算術符号化部３５１は、符号化データＥＤ２（符号化ストリームＳＴ２）を生成する毎に、当該符号化データＥＤ２をメモリ３６１に記憶させる。
【０２８８】
なお、算術符号化部３５１が２値データＢＤ２を処理しているとき、スイッチＳＷ３２により、メモリ制御部３６２と、バッファＢＦ２２とは電気的に接続される。
【０２８９】
メモリ制御部３６２は、第１の実施の形態と同様に、メモリ３６１に複数の符号化データＥＤ２が記憶されることにより、メモリ３６１に記憶されている複数の符号化データＥＤ２のデータ量が、所定の閾値以上になる毎に、アクセスビット単位で、符号化データＥＤ２を順次読み出す。
【０２９０】
そして、メモリ制御部３６２は、アクセスビット単位で、順次読み出した当該各符号化データＥＤ２を、バッファＢＦ２２に記憶させる。
【０２９１】
上記のメモリ制御部３６２の処理が、１枚のピクチャＰ１に対応する複数の符号化データＥＤ２のデータ量分だけ繰り返し行われることにより、バッファＢＦ２２には、１枚のピクチャＰ２に対応する複数の符号化データＥＤ２が記憶される。
【０２９２】
これにより、バッファＢＦ２２には、複数の符号化データＥＤ２（符号化ストリームＳＴ２）から構成される符号化ストリームＳＴ２が記憶される。
【０２９３】
メモリ制御部３４２、算術符号化部３５１およびメモリ制御部３６２の各々が行うピクチャＰ２に対応する上記処理が、動画像ＭＶ２を構成するピクチャＰ２の数に対応する処理量分繰り返し行われることにより、バッファＢＦ２２には、動画像ＭＶ２に対応する符号化ストリームＳＴ２が記憶される。
【０２９４】
以上説明したように、本実施の形態の変形例３によれば、メモリ３６１に記憶される符号化データが切換わる前述した切換タイミングにおいて、アクセスビット未満の非アクセスビット長の符号化データがメモリ３６１に記憶される場合が多くなる。この場合、正常な符号化ストリームＳＴ１，ＳＴ２を生成するためには、前述した押出し処理および補充データ削除処理を非常に多く行う必要がある。
【０２９５】
しかしながら、算術符号化部３５１が生成したデータを記憶するためのメモリおよび当該メモリを制御するメモリ制御部を１つのみとすることで、可変長符号化部３００Ｃの回路規模は、前述した可変長符号化部３００，３００Ａ，３００Ｂのいずれよりも小さくすることができる。
【０２９６】
すなわち、可変長符号化部３００Ｃを含む画像符号化部１００Ｃを含む画像符号化装置１０００Ｃの回路規模の大きさを抑えることができる。
【０２９７】
以上により、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置を提供することができる。
【０２９８】
（機能ブロック図）
図１４は、画像符号化装置２０００の特徴的な機能構成を示すブロック図である。画像符号化装置２０００は、画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃのいずれかに相当する。
【０２９９】
つまり、図１４は、画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃのいずれかの有する機能のうち、本発明に関わる主要な機能を示すブロック図である。
【０３００】
画像符号化装置２０００は、離散コサイン変換、量子化および算術符号化を少なくとも行い、前記量子化により得られる複数の第１量子化データおよび第２量子化データを処理する。
【０３０１】
画像符号化装置２０００は、機能的には、２値化部２３１０と、算術符号化部２３５１とを備える。
【０３０２】
２値化部２３１０は、各前記第１量子化データおよび各前記第２量子化データの各々の２値化を行う２値化処理を行うことにより、前記各第１量子化データおよび前記各第２量子化データにそれぞれ対応する各第１の２値データおよび各第２の２値データを生成する。
【０３０３】
２値化部２３１０は、図４、図７、図１０または図１３の２値化部３１０に相当する。
【０３０４】
算術符号化部２３５１は、前記各第１の２値データおよび前記各第２の２値データの各々に対し算術符号化を行う算術符号化処理を行うことにより、前記各第１の２値データおよび前記各第２の２値データにそれぞれ対応する第１ストリームおよび第２ストリームを生成する。
【０３０５】
算術符号化部２３５１は、図４の算術符号化部３５１、図７の算術符号化部３５１、図１０の算術符号化部３５１Ａまたは図１３の算術符号化部３５１に相当する。
【０３０６】
画像符号化装置２０００は、以下の処理Ａおよび処理Ｂの一方または両方を行う。
【０３０７】
処理Ａは、前記２値化部２３１０が、前記第１量子化データに対する２値化と、前記第２量子化データに対する２値化とを時分割で切換えて行うことにより前記２値化処理を行う処理である。
【０３０８】
処理Ｂは、前記算術符号化部２３５１が、前記第１の２値データに対する算術符号化と、前記第２の２値データに対する算術符号化とを時分割で切換えて行うことにより前記算術符号化処理を行う処理である。
【０３０９】
なお、図１４に含まれる２値化部２３１０および算術符号化部２３５１の全てまたは一部は、ＬＳＩ（Large Scale Integration：大規模集積回路）等のハードウエアで構成されてもよい。また、２値化部２３１０および算術符号化部２３５１の全てまたは一部は、ＣＰＵ等のプロセッサにより実行されるプログラムのモジュールであってもよい。
【０３１０】
（その他の変形例）
以上、本発明における画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃについて、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、あるいは異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【０３１１】
第１の実施の形態、第１の実施の形態の変形例１〜３では、２つのストリームを生成する場合について説明したが、本発明はこれに限定されず、３つ以上のストリームを生成する場合にも当然適用可能である。この場合、２つのストリームの各々を生成するための経路（構成）を、３つ以上設ければよい。
【０３１２】
また、上記の画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃの各々を構成する複数の構成要素の全てまたは一部は、ハードウエアで構成されてもよい。また、上記の画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃの各々を構成する構成要素の全てまたは一部は、ＣＰＵ（Central Processing Unit）等により実行されるプログラムのモジュールであってもよい。
【０３１３】
また、上記の画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃの各々を構成する複数の構成要素の全てまたは一部は、１個のシステムＬＳＩ（Large Scale Integration：大規模集積回路）から構成されてもよい。
【０３１４】
また、画像符号化部１００，１００Ａ，１００Ｂ，１００Ｃの各々は、１個のシステムＬＳＩから構成されてもよい。また、可変長符号化部３００，３００Ａ，３００Ｂ，３００Ｃの各々は、１個のシステムＬＳＩから構成されてもよい。
【０３１５】
システムＬＳＩは、複数の構成要素を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）などを含んで構成されるコンピュータシステムである。
【０３１６】
また、本発明は、画像符号化装置１０００，１０００Ａ，１０００Ｂ，１０００Ｃの各々が備える特徴的な構成部の動作をステップとする画像符号化方法として実現してもよい。また、本発明は、そのような画像符号化方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。
【０３１７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【０３１８】
本発明は、回路規模の大きさを抑えつつ、複数種類のストリームを生成可能な、算術符号化を行う画像符号化装置として、利用することができる。
【符号の説明】
【０３１９】
ＳＷ３０，ＳＷ３１，ＳＷ３２  スイッチ
１００，１００Ａ，１００Ｂ，１００Ｃ  画像符号化部
１０１，１０１Ａ  ＦＥ部
１０９  画像処理部
２１０  制御部
２２１，２２２，３１１，３２１，３４１，３４１Ｂ，３６１，３７１  メモリ
３００，３００Ａ，３００Ｂ，３００Ｃ  可変長符号化部
３１０，２３１０  ２値化部
３１２，３２２，３４２，３４２Ｂ，３６２，３７２  メモリ制御部
３５１，３５１Ａ，３５２，２３５１  算術符号化部
１０００，１０００Ａ，１０００Ｂ，１０００Ｃ，２０００  画像符号化装置 
【図１】
2011080851.tif 000003
【図２】
2011080851.tif 000004
【図３】
2011080851.tif 000005
【図４】
2011080851.tif 000006
【図５】
2011080851.tif 000007
【図６】
2011080851.tif 000008
【図７】
2011080851.tif 000009
【図８】
2011080851.tif 000010
【図９】
2011080851.tif 000011
【図１０】
2011080851.tif 000012
【図１１】
2011080851.tif 000013
【図１２】
2011080851.tif 000014
【図１３】
2011080851.tif 000015
【図１４】
2011080851.tif 000016
【国際調査報告】
2011080851.tif 000017
2011080851.tif 000018
2011080851.tif 000019
2011080851.tif 000020