JP2004274734A - 画像復号化装置、画像符号化装置及びその方法 - Google Patents
画像復号化装置、画像符号化装置及びその方法 Download PDFInfo
- Publication number
- JP2004274734A JP2004274734A JP2004037369A JP2004037369A JP2004274734A JP 2004274734 A JP2004274734 A JP 2004274734A JP 2004037369 A JP2004037369 A JP 2004037369A JP 2004037369 A JP2004037369 A JP 2004037369A JP 2004274734 A JP2004274734 A JP 2004274734A
- Authority
- JP
- Japan
- Prior art keywords
- picture
- area
- size
- memory
- decoded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
【課題】 画像サイズが変更された際のピクチャメモリの管理を規定する方法を提案する。
【解決手段】 画像復号化装置1100は、異なるピクチャサイズの動画像ストリームを含んだ符号列を、復号化済みピクチャを参照しながら復号化する。ピクチャメモリ203は、復号化済みのピクチャを格納するための記憶領域を備える。ピクチャメモリ分割方法指定部210は、ピクチャメモリ203の記憶領域を所定の大きさのピクチャ領域に区分する。ピクチャメモリ制御部206は、新たに復号化されたピクチャ1枚分の全データを、ピクチャメモリ203の1以上のピクチャ領域からなる連続した記憶領域に連続して格納する。
【選択図】 図4
【解決手段】 画像復号化装置1100は、異なるピクチャサイズの動画像ストリームを含んだ符号列を、復号化済みピクチャを参照しながら復号化する。ピクチャメモリ203は、復号化済みのピクチャを格納するための記憶領域を備える。ピクチャメモリ分割方法指定部210は、ピクチャメモリ203の記憶領域を所定の大きさのピクチャ領域に区分する。ピクチャメモリ制御部206は、新たに復号化されたピクチャ1枚分の全データを、ピクチャメモリ203の1以上のピクチャ領域からなる連続した記憶領域に連続して格納する。
【選択図】 図4
Description
本発明は、符号化済み又は復号化済みのピクチャを参照して画面間予測を行う動画像の復号化方法および符号化方法に関するものであり、特に復号化済みピクチャを蓄積するピクチャメモリの管理方法に関する。
近年、音声,画像,その他の画素値を統合的に扱うマルチメディア時代を迎え、従来からの情報メディア,つまり新聞,雑誌,テレビ,ラジオ,電話等の情報を人に伝達する手段がマルチメディアの対象として取り上げられるようになってきた。一般に、マルチメディアとは、文字だけでなく、図形、音声、特に画像等を同時に関連づけて表すことをいうが、上記従来の情報メディアをマルチメディアの対象とするには、その情報をディジタル形式にして表すことが必須条件となる。
ところが、上記各情報メディアの持つ情報量をディジタル情報量として見積もってみると、文字の場合1文字当たりの情報量は1〜2バイトであるのに対し、音声の場合1秒当たり64kbits(電話品質)、さらに動画については1秒当たり100Mbits(現行テレビ受信品質)以上の情報量が必要となり、上記情報メディアでその膨大な情報をディジタル形式でそのまま扱うことは現実的では無い。例えば、テレビ電話は、64kbps〜1.5Mbpsの伝送速度を持つサービス総合ディジタル網(ISDN:Integrated Services Digital Network)によってすでに実用化されているが、テレビ・カメラの映像をそのままISDNで送ることは不可能である。
そこで、必要となってくるのが情報の圧縮技術であり、例えば、テレビ電話の場合、ITU(国際電気通信連合 電気通信標準化部門)で国際標準化されたH.261やH.263規格の動画圧縮技術が用いられている。また、MPEG−1規格の情報圧縮技術によると、通常の音楽用CD(コンパクト・ディスク)に音声情報とともに画像情報を入れることも可能となる。
ここで、MPEG(Moving Picture Experts Group)とは、動画面信号のディジタル圧縮の国際規格であり、MPEG−1は、動画面信号を1.5Mbpsまで、つまりテレビ信号の情報を約100分の1にまで圧縮する規格である。また、MPEG−1規格を対象とする伝送速度が主として約1.5Mbpsに制限されていることから、さらなる高画質化の要求をみたすべく規格化されたMPEG−2では、動画像信号が2〜15Mbpsに圧縮される。
さらに現状では、MPEG−1,MPEG−2と標準化を進めてきた作業グループ(ISO/IEC JTC1/SC29/WG11) によって、より圧縮率が高いMPEG−4が規格化された。MPEG−4では、当初、低ビットレートで効率の高い符号化が可能になるだけでなく、伝送路誤りが発生しても主観的な画質劣化を小さくできる強力な誤り耐性技術も導入されている。また、現在は、ISO/IECとITUの共同で次世代画面符号化方式として、H.264の標準化活動が進んでいる。
一般に動画像の符号化では、時間方向および空間方向の冗長性を削減することによって情報量の圧縮を行う。そこで時間的な冗長性の削減を目的とするピクチャ間予測符号化では、前方または後方のピクチャを参照してブロック単位で動きの検出および予測画像の作成を行い、得られた予測画像と現在のピクチャとの差分値に対して符号化を行う。
ここで、ピクチャとは、1枚の画面を表す用語であり、プログレッシブ画像ではフレームを意味し、インタレース画像ではフレームもしくはフィールドを意味する。ここで、インタレース画像とは、1つのフレームが時刻の異なる2つのフィールドから構成される画像である。インタレース画像の符号化や復号化処理においては、1つのフレームをフレームのまま処理したり、2つのフィールドとして処理したり、フレーム内のブロック毎にフレーム構造またはフィールド構造として処理したりすることができる。
なお、以下で示すピクチャはプログレッシブ画像でのフレームの意味で説明するが、インタレース画像でのフレームもしくはフィールドであっても同様に説明することができる。
図28は、従来の画像符号化装置100の構成を示すブロック図である。この画像符号化装置100は、ピクチャメモリ101、予測残差符号化部102、符号列生成部103、予測残差復号化部104、ピクチャメモリ105、動きベクトル検出部106、動き補償符号化部107、動きベクトル記憶部108、ピクチャメモリ制御部109、差分演算部112、加算演算部113、スイッチ114およびスイッチ115から構成される。
符号化対象となる動画像は、表示が行われる順にピクチャ単位でピクチャメモリ101に入力され、ピクチャメモリ101において符号化の順にピクチャの並び替えが行われる。さらに各々のピクチャはマクロブロックと呼ばれる例えば水平16×垂直16画素のブロックに分割されブロック単位で以降の処理が行われる。
ピクチャメモリ101から読み出された入力画像信号は差分演算部112に入力され、動き補償符号化部107の出力である予測画像信号との差分を取ることによって得られる差分画像信号を予測残差符号化部102に出力する。予測残差符号化部102では周波数変換、量子化等の画像符号化処理を行い残差信号を出力する。残差信号は予測残差復号化部104に入力され、逆量子化、逆周波数変換等の画像復号化処理を行い残差復号化信号を出力する。加算演算部113では前記残差復号化信号と予測画像信号との加算を行い再構成画像信号を生成し、得られた再構成画像信号はピクチャメモリ105に格納される。
一方、ピクチャメモリ101から読み出されたマクロブロック単位の入力画像信号は動きベクトル検出部106にも入力される。ここでは、ピクチャメモリ105に格納されている1枚もしくは複数枚の符号化済みピクチャを探索対象とし、最も入力画像信号に近い画像領域を検出することによってその位置を指し示す動きベクトルとその際に選択されたピクチャを指し示す参照ピクチャインデックスを決定する。動きベクトルの検出はマクロブロックをさらに分割したブロック単位で行われ、得られた動きベクトルは動きベクトル記憶部108に格納される。動き補償符号化部107では、上記処理によって検出された動きベクトルおよび参照ピクチャインデックスを用いて、ピクチャメモリ105に格納されている符号化済みピクチャから最適な画像領域を取り出し予測画像を生成する。
上記の一連の処理によって出力された動きベクトル、参照ピクチャインデックス、残差符号化信号等の符号化情報に対して符号列生成部103において可変長符号化を施すことにより、この符号化処理によって出力される符号列が得られる。
以上の処理の流れは画面間予測符号化を行った場合の動作であったが、スイッチ114およびスイッチ115によって画面内予測符号化との切り替えがなされる。画面内符号化を行う場合は、動き補償による予測画像の生成は行わず、同一画面内の符号化済み領域から符号化対象領域の予測画像を生成し差分を取ることによって差分画像信号を生成する。差分画像信号は画面間予測符号化の場合と同様に、予測残差符号化部102において残差符号化信号に変換され、符号列生成部103において可変長符号化を施されることにより出力される符号列が得られる。
以上の処理の流れは画面間予測符号化を行った場合の動作であったが、スイッチ114およびスイッチ115によって画面内予測符号化との切り替えがなされる。画面内符号化を行う場合は、動き補償による予測画像の生成は行わず、同一画面内の符号化済み領域から符号化対象領域の予測画像を生成し差分を取ることによって差分画像信号を生成する。差分画像信号は画面間予測符号化の場合と同様に、予測残差符号化部102において残差符号化信号に変換され、符号列生成部103において可変長符号化を施されることにより出力される符号列が得られる。
図29は、従来の画像復号化装置200の構成を示すブロック図である。この画像復号化装置200は、符号列解析部201、予測残差復号化部202、ピクチャメモリ203、動き補償復号化部204、動きベクトル記憶部205、ピクチャメモリ制御部206、加算演算部211およびスイッチ212から構成される。
まず符号列解析部201は、入力された符号列から動きベクトル、参照ピクチャインデックス、残差符号化信号等の各種の情報を抽出する。符号列解析器201で抽出された動きベクトルは動きベクトル記憶部205に、参照ピクチャインデックスは動き補償復号化部204に、残差符号化信号は予測残差復号化部202にそれぞれ出力される。
予測残差復号化部202では入力された残差符号化信号に対して、逆量子化、逆周波数変換等の画像復号化処理を施し残差復号化信号を出力する。加算演算部211では前記残差復号化信号と動き補償符号化部204から出力される予測画像信号との加算を行い再構成画像信号を生成し、得られた再構成画像信号をピクチャメモリ203に格納する。
動き補償復号化部204では、動きベクトル記憶部205から入力される動きベクトルおよび符号列解析部201から入力される参照ピクチャインデックスを用いて、ピクチャメモリ203に格納されている1枚もしくは複数枚の復号化済みピクチャから予測画像に最適な画像領域を取り出す。
動き補償復号化部204では、動きベクトル記憶部205から入力される動きベクトルおよび符号列解析部201から入力される参照ピクチャインデックスを用いて、ピクチャメモリ203に格納されている1枚もしくは複数枚の復号化済みピクチャから予測画像に最適な画像領域を取り出す。
上記の一連の処理によって生成された復号化済みピクチャは、表示されるタイミングに従って表示用画像信号としてピクチャメモリ203から出力される。
以上の処理の流れは画面間予測復号化を行った場合の動作であったが、スイッチ212によって画面内予測復号化との切り替えがなされる。画面内予測復号化を行う場合は、動き補償による予測画像の生成は行わない。その代わり、同一画面内の復号化済み領域から復号化対象領域の予測画像を生成し、残差復号化信号と加算を行うことによって再構成画像信号を生成する。これによって、得られた再構成画像信号はピクチャメモリ203に格納され、表示されるタイミングに従って表示用画像信号として出力される。
図30(a)及び図30(b)は、入力画像におけるピクチャの参照関係を説明するための図であり、図30(a)は表示順、図30(b)は符号化順にピクチャを並べた様子を示している。各ピクチャのPに付された数字は、そのピクチャの表示順を示している。そして、この数字は、図30(a)のように各ピクチャを表示順で並べたときに、全ての値が昇順になるように、各ピクチャに割り当てられている。また、図中の矢印は、画面間予測符号化又は画面間予測復号化におけるピクチャ間の参照関係を示しており、矢印の元にあるピクチャは矢印の先にあるピクチャのうちの1枚又は2枚を任意に参照することができる。
P4を例に取ると、P4はP0、P1、P2、P6を参照して符号化もしくは復号化を行っていることが分かる。前記参照に使用される前記複数のピクチャは対象のピクチャP4よりも先に符号化もしくは復号化されている必要があり、ピクチャメモリに参照可能ピクチャとして格納されているものである。図30(b)のように符号化順に並べるとP4によって参照されるピクチャは全てP4の前方に位置しているのが分かる。符号化および復号化の過程では、ピクチャP4はブロックごとに前記参照に使用される複数のピクチャの中から最適なものを1枚もしくは2枚選択し、選択されたピクチャを参照ピクチャとして、後で述べる画面間予測符号化及び画面間予測復号化に使用する。
ピクチャメモリに格納された各ピクチャには、参照に使用することができるかできないかを示す情報が付与されている。参照に使用されないピクチャは、本来ならばすぐにピクチャメモリから削除するべきであるが、たとえ参照に使用されないことが分かっていても、表示される順番が来るまでは他のピクチャが復号化されるのを待つ必要がある。例えば図30(b)のP3は、復号化される順番は2番目であるのに対して、図30(a)のように表示される順番が4番目となっている。従ってP3は、P1とP2とが復号化されるまでの間、ピクチャメモリに格納しておかなければならない。このP3のようなピクチャを、表示待ちピクチャまたは参照不可ピクチャと呼ぶ。それに対して参照に使用することができるピクチャを参照可能ピクチャと呼ぶ。
一般に、画像符号化装置100及び画像復号化装置200の加算演算部113および加算演算部211において再構成された画像信号は、次のようなピクチャメモリ制御部109及びピクチャメモリ制御部206の制御の下に、ピクチャメモリ109及びピクチャメモリ203に蓄積される。図31は、図29に示した画像復号化装置200における再構成画像信号のピクチャメモリ203への格納制御動作を示すフローチャートである。ピクチャメモリ制御部206は、対象ピクチャが復号化され(S401)、新たな再構成画像信号が生成されると、生成された再構成画像信号を格納するだけの十分な空き領域がピクチャメモリ203にあるかどうかを判定する(S402)。生成された再構成画像信号を格納するだけの十分な空き領域がない場合、ピクチャメモリ制御部206は、ピクチャメモリ203にすでに格納されている、表示順で最も古いピクチャを削除する(S403)。このようにして、ピクチャメモリ制御部206は、ステップS402とステップS403とを繰り返すことにより、ピクチャメモリ203内に新たな再構成画像信号を格納するのに十分な空き領域ができるまで、すでに格納されているピクチャを、表示順で最も古いものから順に削除していく。このようにして、ピクチャメモリ203内に新たな再構成画像信号を格納するのに十分な空き領域ができると、その空き領域に新たな再構成画像信号を格納する(S404)。なお、空き領域とはメモリ中の該当する領域を別のデータで再利用することを可能とする領域のことを意味するものである。また、削除するとはそのメモリ領域を別のデータの蓄積に使用することを可能とする処理を表すものであり、物理的にデータを消去する場合も、もしくは物理的には消去せずに上書きすることを許可するだけの場合も同様に扱うことが可能である(非特許文献1参照。)。
図32(a)、図32(b)、図33(a)、図33(b)、図34(a)及び図34(b)は、図31に示した手順に従ってピクチャメモリの管理が行われる場合のメモリ領域の利用例を示す図である。
図32(a)は、復号化対象ピクチャにおいて、ピクチャのサイズが小から大に変更された場合で、サイズ変更後のピクチャを格納するだけの空き領域がピクチャメモリ203にあった場合の格納例を示す図である。図32(a)の上部は、ピクチャメモリ203内に復号化されたピクチャCを蓄積するための十分な空き領域(斜線部)がある状態を示している。この例では、図30のピクチャ列におけるP2、P6、P4、P5がピクチャメモリに蓄積され、P7(=ピクチャC)を復号化している状態を示している。この場合は、図32(a)下部のように、復号化されたピクチャCを、そのまま、ピクチャメモリ203内の空き領域の先頭からピクチャメモリ203に蓄積することが可能である。つまり、既にピクチャメモリ内に蓄積されているピクチャの削除は行わない。
図32(a)は、復号化対象ピクチャにおいて、ピクチャのサイズが小から大に変更された場合で、サイズ変更後のピクチャを格納するだけの空き領域がピクチャメモリ203にあった場合の格納例を示す図である。図32(a)の上部は、ピクチャメモリ203内に復号化されたピクチャCを蓄積するための十分な空き領域(斜線部)がある状態を示している。この例では、図30のピクチャ列におけるP2、P6、P4、P5がピクチャメモリに蓄積され、P7(=ピクチャC)を復号化している状態を示している。この場合は、図32(a)下部のように、復号化されたピクチャCを、そのまま、ピクチャメモリ203内の空き領域の先頭からピクチャメモリ203に蓄積することが可能である。つまり、既にピクチャメモリ内に蓄積されているピクチャの削除は行わない。
図32(b)は、復号化対象ピクチャにおいて、ピクチャのサイズが小から大に変更された場合で、サイズ変更後のピクチャを格納するだけの空き領域がピクチャメモリ203になかった場合の格納例を示す図である。同図において、ピクチャに付された数字を○で囲んで示すピクチャは、新たにピクチャCを格納するためにピクチャメモリ203から削除されるべきピクチャである。図32(b)上部は、ピクチャメモリ203内に復号化されたピクチャCを蓄積するために十分な空き領域がない状態を示している。この例では、図30のピクチャ列におけるP3、P1、P2、P6、P4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。この場合はピクチャメモリ203に蓄積されている、ピクチャサイズ変更前のピクチャを削除して、新たに復号化されたピクチャCを蓄積するための領域を確保する必要がある。この例では、ピクチャサイズ変更後のピクチャCは、ピクチャサイズ変更前のピクチャよりもサイズが大きく、ピクチャCを新たに格納するためには、すでに格納されている2枚分のピクチャを削除する必要があることが分かる。次に、削除されるピクチャは、各ピクチャが持っている表示順情報が最も古いものから順に選択される。この例では、ピクチャメモリ203内でP1の表示順情報が最も古く、P1、P2、P3・・・の順に新しくなることが分かる。ピクチャメモリ制御部206では、上記のような処理によって1枚もしくは複数枚の削除すべきピクチャを判定し、判定結果をピクチャメモリ203に出力しピクチャの削除を行う。図32(b)上部の例では前記処理によってP1、P2が削除され、これによって生成された空き領域の先頭から、図32(b)下部のように復号化されたピクチャCを蓄積している。
図33(a)は、復号化対象ピクチャにおいてピクチャサイズが変更されず、かつ、ピクチャメモリ内に復号化対象ピクチャと異なるピクチャサイズを持ったピクチャが存在しない場合で、新たに復号化されたピクチャCを格納するだけの空き領域がピクチャメモリ203にあった場合の格納例を示す図である。つまり、ピクチャCの時間的に近くで、ピクチャサイズの変更がなされてない場合、もしくはピクチャサイズの変更が発生しないストリームを復号化している場合に起こりうる例である。
このような場合、ピクチャメモリ203内にすでに格納されているピクチャも、新たに復号化されたピクチャCもすべて同じピクチャサイズである。このため、新たに復号化されたピクチャCを格納するためには、ピクチャメモリ203から1枚分のピクチャを削除するだけでよい。従って、ピクチャメモリ制御部206は、ピクチャメモリ203内の空き領域を調べ、ピクチャCを格納するだけの空き領域があればピクチャCをその空き領域に書き込み、ピクチャCを格納するための空き領域がない場合は、1枚分のピクチャを削除するという判定を行う。ピクチャメモリ203内に蓄積されているピクチャは、ピクチャデータに加えて、表示順を表す情報を持っている。ピクチャメモリ制御部206は、前記表示順情報を調べることにより、削除すべきピクチャを判定し、判定結果として表示順情報の最も古いピクチャを1枚だけ削除することを、ピクチャメモリ203に伝達する。その結果、生成された空き領域に、復号化されたピクチャCが蓄積される。
図33(a)上部は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するための十分な空き領域がある状態を示している。この例では、図30のピクチャ列におけるP2、P6、P4、P5がピクチャメモリに蓄積されており、現在P7を復号化している状態(すなわち、C=P7)を示している。この場合は、図33(a)下部のように、復号化したピクチャCをそのまま空き領域に蓄積することが可能である。つまり、既にピクチャメモリ内に蓄積されているピクチャの削除は行わない。
図33(b)は、復号化対象ピクチャにおいてピクチャサイズが変更されず、かつ、ピクチャメモリ内に復号化対象ピクチャと異なるピクチャサイズを持ったピクチャが存在しない場合で、新たに復号化されたピクチャCを格納するだけの空き領域がピクチャメモリ203になかった場合の格納例を示す図である。図33(b)上部は、ピクチャメモリ内に新たに復号化されたピクチャCを蓄積するための十分な空き領域がない状態を示している。この例では、図30のピクチャ列におけるP3、P1、P2、P6、P4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。この場合は、ピクチャメモリ203に蓄積されているピクチャを1枚だけ削除して、復号化されたピクチャCを蓄積するための領域を確保する必要がある。削除されるピクチャとしては、各ピクチャが持っている表示順情報が最も古いものが選択される。この例では、P1の表示順情報が最も古いことが分かる。ピクチャメモリ制御部206では、上記のような処理によって、削除されるピクチャを判定し、判定結果をピクチャメモリ203に出力しピクチャの削除を行う。図33(b)上部の例では前記処理によってP1が削除され、これによって生成された空き領域に、復号化されたピクチャCが図33(b)下部のように蓄積される。
図34(a)は、復号化対象ピクチャにおいてピクチャサイズが変更されず、かつ、ピクチャメモリ203内に新たに復号化されたピクチャCと異なるピクチャサイズを持ったピクチャが存在する場合で、新たに復号化されたピクチャCを格納するだけの空き領域がピクチャメモリ203にあった場合の格納例を示す図である。つまり、ピクチャサイズの変更がなされてから長時間を経過する前に、復号化対象ピクチャが復号化される場合に起こりうる例である。ピクチャメモリ制御部206は、ピクチャメモリ203内の空き領域を調べ、新たに復号化されたピクチャCを格納するために十分な空き領域がある場合には何もせず、空き領域が足りない場合はピクチャサイズ変更後に新たに復号化されたピクチャCのサイズと、変更前のサイズとを比較し、削除すべきピクチャの枚数および削除すべきピクチャを判定する。ピクチャメモリ制御部206は、表示順情報の古いピクチャから順に必要な枚数分だけピクチャを削除し、これによってできた空き領域に新たに復号化されたピクチャCを格納するとした場合、すでに説明した表示順情報を調べることにより、削除されるピクチャを特定する。削除されるべきピクチャは、ピクチャメモリ制御部206からピクチャメモリ203に伝達される。その結果、生成された空き領域に、新たに復号化されたピクチャCが蓄積される。
図34(a)上部はピクチャメモリ203内に、新たに復号化されたピクチャCを蓄積するために十分な空き領域がある状態を示している。この例では、図30のピクチャ列におけるP4、P5、P7がピクチャメモリ203に蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。この場合、図34(a)下部のように、新たに復号化されたピクチャCを、そのまま空き領域に蓄積することが可能である。つまり、既にピクチャメモリ内に蓄積されているピクチャの削除は行わない。
図34(b)は、復号化対象ピクチャにおいてピクチャサイズが変更されず、かつ、ピクチャメモリ203内に、新たに復号化されたピクチャCと異なるピクチャサイズを持ったピクチャが存在する場合で、新たに復号化されたピクチャCを格納するだけの空き領域がピクチャメモリ203になかった場合の格納例を示す図である。図34(b)上部は、ピクチャメモリ203内に、新たに復号化されたピクチャCを蓄積するための十分な空き領域がない状態を示している。この例では、図30のピクチャ列におけるP2、P6、P4、P5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。この場合、ピクチャメモリ203に蓄積されているピクチャサイズ変更前のピクチャを削除して、新たに復号化されたピクチャCを蓄積するための領域を確保する必要がある。この例では、ピクチャサイズ変更後のピクチャCはピクチャサイズ変更前のピクチャよりもサイズが大きく、ピクチャCを格納するために既に空き領域になっている領域を使用しても、さらに2枚分のピクチャを削除する必要があることが分かる。次に、削除されるピクチャは、各ピクチャが持っている表示順情報が最も古いものから順に選択される。この例では、P2の表示順情報が最も古く、P2、P4、P5・・・の順に新しくなることが分かる。従って、ピクチャメモリ制御部206では、上記のような処理によって削除すべき1枚もしくは複数枚のピクチャを判定し、判定結果をピクチャメモリ203に出力し、ピクチャの削除を行う。図34(b)上部の例では前記処理によってP2、P4が削除され、図34(b)下部のように、新たに復号化されたピクチャCが、生成された空き領域に蓄積される。
"Joint Final Committee Draft (JFCD) of Joint Video Specification (ITU-T Rec. H.264 | ISO/IEC 14496-10 AVC)" 7.4.3.3 P.65、E.2.1 P.252。
"Joint Final Committee Draft (JFCD) of Joint Video Specification (ITU-T Rec. H.264 | ISO/IEC 14496-10 AVC)" 7.4.3.3 P.65、E.2.1 P.252。
しかしながら、従来の技術で説明した復号化方法では、削除されるP2、P4は、ピクチャメモリ203内で物理的に離れた領域に格納されているため、図34(b)下部の例で発生したように、新たに復号化されたピクチャが物理的に分割された領域に蓄積されてしまう状況が発生する。特に、符号化ストリーム中に含まれるピクチャのピクチャサイズの組み合わせによっては、1枚のピクチャが異なる領域に、非常に複雑に分割されてしまう可能性がある。このように、物理的に分割された領域に蓄積されているピクチャを参照ピクチャとして使用する際には、ピクチャメモリへのアクセスが複雑になり、ピクチャメモリへのアクセス速度、引いては復号化速度の低下の原因となる可能性がある。
そこで本発明は、上記課題を解決するために、動画像ストリームの先頭または途中でピクチャサイズの変更が起こりうる場合に、ピクチャメモリへのアクセス効率を低下させないピクチャメモリの管理方法を提案することを目的とする。
本発明の画像復号化装置は、異なるピクチャサイズの動画像ストリームを含んだ符号列を、復号化済みピクチャを参照しながら復号化する画像復号化装置であって、復号化済みのピクチャを格納するための記憶領域を備えるピクチャメモリと、前記ピクチャメモリの記憶領域を所定の大きさの区分領域に区分するメモリ区分手段と、新たに復号化されたピクチャ1枚分の全データを、前記ピクチャメモリの1以上の前記区分領域からなる連続した記憶領域に連続して格納する格納手段とを備えることを特徴とする。
また、前記画像復号化装置は、さらに、新たに復号化されたピクチャのサイズと、直前に復号化されたピクチャのサイズとを比較することによってピクチャのサイズが変更されているかどうかを判定するサイズ変更判定手段を備え、前記メモリ区分手段は、前記新たに復号化されたピクチャのサイズが変更されていると判定された場合、前記区分領域の大きさが前記新たに復号化されたピクチャのサイズとなるよう、前記記憶領域を区分するとしてもよい。
また、前記画像復号化装置は、さらに、前記符号列から、前記記憶領域の区分方法を示す区分情報を読み取る読み取り手段を備え、前記メモリ区分手段は、読み取られた前記区分情報に従って前記記憶領域を区分するとしてもよい。
なお、本発明は、このような動画像の符号化装置を備える配信サーバから、符号化された動画像コンテンツを配信し、動画像の復号化装置を備えるユーザ側端末装置において、配信された動画像コンテンツを再生する動画像コンテンツ配信システムとして実現することができるだけでなく、これらの動画像コンテンツ配信システムを構成する配信サーバ及びユーザ側端末装置などの単体として実現したり、それらの配信サーバ及びユーザ側端末装置などに備えられる符号化装置及び復号化装置として実現したり、このような動画像コンテンツ配信システムが備える特徴的な手段をステップとする符号化方法及び復号化方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
なお、本発明は、このような動画像の符号化装置を備える配信サーバから、符号化された動画像コンテンツを配信し、動画像の復号化装置を備えるユーザ側端末装置において、配信された動画像コンテンツを再生する動画像コンテンツ配信システムとして実現することができるだけでなく、これらの動画像コンテンツ配信システムを構成する配信サーバ及びユーザ側端末装置などの単体として実現したり、それらの配信サーバ及びユーザ側端末装置などに備えられる符号化装置及び復号化装置として実現したり、このような動画像コンテンツ配信システムが備える特徴的な手段をステップとする符号化方法及び復号化方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
これにより、動画像ストリームの先頭または途中でピクチャサイズの変更が起こりうる場合に、ピクチャメモリへのアクセス効率を低下させない画像復号化装置を提供することができる。
これにより、符号列内で動画像ストリームのピクチャサイズの変更が起こりうる場合に、画像復号化装置単体でも、ピクチャメモリへのアクセス効率を低下させないピクチャメモリの管理方法を実現することができる。
これにより、画像復号化装置における処理負荷を著しく増大することなく、ピクチャメモリへのアクセス効率を低下させないピクチャメモリの管理方法を実現することができる。
以下、本発明の実施の形態について、図1から図27を用いて説明する。
(実施の形態1)
従来では復号化におけるピクチャメモリの管理(メモリ領域へのピクチャの格納および削除)をピクチャ単位で行っていた。これに対し、本実施の形態では、復号化におけるピクチャメモリのメモリ領域を、1つもしくは複数の領域に分割し、分割された領域を1つの単位としてピクチャメモリの管理を行うことを特徴とする。本実施の形態では、ピクチャメモリの分割方法を指定するための情報を画像符号化装置において生成し、符号列内に記述する。このときの分割された領域のことをピクチャ領域と呼ぶ。
(実施の形態1)
従来では復号化におけるピクチャメモリの管理(メモリ領域へのピクチャの格納および削除)をピクチャ単位で行っていた。これに対し、本実施の形態では、復号化におけるピクチャメモリのメモリ領域を、1つもしくは複数の領域に分割し、分割された領域を1つの単位としてピクチャメモリの管理を行うことを特徴とする。本実施の形態では、ピクチャメモリの分割方法を指定するための情報を画像符号化装置において生成し、符号列内に記述する。このときの分割された領域のことをピクチャ領域と呼ぶ。
本発明の実施の形態1における動画像の符号化方法について図1に示したブロック図を用いて説明する。図1は、本実施の形態1の画像符号化装置800の構成を示すブロック図である。画像符号化装置800の構成は図28を用いて説明した従来の画像符号化装置100とほぼ同様である。従来の画像符号化装置100と異なる点は、新たにピクチャメモリ分割情報符号化部801が追加された点である。従来の技術と全く同様の処理についてはここでは説明を省略する。
符号化対象のストリームの符号化に先立って、ピクチャメモリ分割情報符号化部801では復号化側のピクチャメモリを分割する方法を指定するための情報を符号化する。図2は、本実施の形態の画像符号化装置800により生成される符号列のデータ構造を示す図である。図2(a)は、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報を符号化する場合の符号列の一例を示す図である。図2(b)は、ストリーム中に含まれる可能性のある最大のピクチャサイズに基づいてピクチャメモリを分割した場合に、ピクチャメモリ内に確保することのできる領域の数を符号化する場合の符号列の一例を示す図である。本実施の形態では、前記復号化側のピクチャメモリを分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報を符号化し、図2(a)における符号列のピクチャ共通情報領域のmax_sizeとして記述する。ここでの最大のピクチャサイズは、例えば、画像符号化装置800が符号化に使用することのできる最大のピクチャサイズを用いる。あるいは、ユーザが符号化を実行する際に、提示された複数のピクチャサイズのうちから所望の最大ピクチャサイズを選択して決定するとしてもよい。
符号化対象のピクチャがIDRピクチャもしくはそれに代わるピクチャサイズの変更を可能とするピクチャであった場合、ピクチャメモリ制御部109よりピクチャメモリのリセット方法を示す信号が符号列生成部103に入力される。なお、IDRピクチャとは、次のような特別な性質を持つピクチャのことをいう。(1)面内予測復号化のみ可能である。(2)復号化終了後にピクチャメモリ内の全てのピクチャをリセットする。(3)ピクチャサイズを変更することが可能である。したがって、IDRピクチャの後に復号化されるピクチャはIDRピクチャより先に復号化されたピクチャを参照することができない。例えば、図30(a)に示したP8は、P7しか参照することができない。IDRピクチャは、スライスデータのヘッダ領域に図2(a)にあるようにreset_flagを有し、前記フラグによって前述したIDRの特徴の1つであるピクチャメモリのリセットの方法が指定される。なお、スライスとは、1つのピクチャを1つもしくは複数の領域に分割した際の分割された1つ1つの領域のことを示すものである。reset_flagが0の場合は、ピクチャメモリ内の全ての参照可能ピクチャを参照不可ピクチャ(表示待ちピクチャ)に変更する。一方、reset_flagが1の場合は、参照可能もしくは参照不可に関わらず、全てのピクチャのデータをピクチャメモリから削除してしまう。つまり、reset_flagが1の場合は、IDRピクチャよりも先に復号化されたピクチャでまだ表示がされていないピクチャがあったとしても、それらピクチャを表示することなくIDRピクチャ以降のピクチャの表示が行われることになる。本実施の形態では、この際に指定するピクチャメモリのリセット方法は任意であり、例えば、復号化側のピクチャメモリの動作を想定した場合に、ピクチャメモリ内に表示されていないピクチャがあるかないかよって、reset_flag を0、つまり全てのピクチャを参照不可にするだけでピクチャデータそのものは削除しない、もしくは、reset_flag を1、つまり全てのピクチャのデータそのものを削除してピクチャメモリの全領域を空き状態にする、かのどちらかを任意に選択することが可能である。符号列生成部103では入力された前記信号を符号化し、図2(a)のようにreset_flag をスライスヘッダに持った形式の符号列を生成する。
なお、max_sizeとして、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報を記述する代わりに、図2(b)のように復号化におけるピクチャメモリ内に確保することのできる領域の数をmin_area_num として、符号列のピクチャ共通情報領域に記述することも可能である。min_area_num は、1つのピクチャ領域のサイズが、ストリーム中に含まれる可能性のある最大のピクチャサイズであるmax_size となるよう復号化側のピクチャメモリを分割したときにできるピクチャ領域の数を示している。その場合、min_area_num の値は下記の式1によって決定される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(min_area_num )=(復号化側のピクチャメモリのサイズ)/(max_size) (式1)
なお、上記のピクチャサイズおよびピクチャメモリのサイズとは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれであっても同様に扱うことが可能である。
(min_area_num )=(復号化側のピクチャメモリのサイズ)/(max_size) (式1)
なお、上記のピクチャサイズおよびピクチャメモリのサイズとは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれであっても同様に扱うことが可能である。
なお、画面間予測符号化を行う際に参照することのできるピクチャの枚数を、符号化対象とするピクチャのピクチャサイズとは無関係に常に上記の式1によって算出されるmin_area_num 以下として符号化を行うことにより、復号化側において上記分割方法によってピクチャメモリを分割して使用する場合でも、参照ピクチャがピクチャメモリ内に存在しないという状況が発生することを防ぐことが可能となる。
図3は、図2(a)及び図2(b)に示した符号列中のピクチャ共通情報の領域に付加的情報を記述する場合の符号列の一例を示す図である。なお、図3に示したようにmax_sizeおよびmin_area_num に加えてcnf_flagを符号列のピクチャ共通情報領域に記述することも可能である。cnf_flagはmax_sizeおよびmin_area_num に従って復号化側のピクチャメモリを分割して管理を行った場合でも、ストリーム中に含まれる全てのピクチャを問題なく表示することができるかどうかを示すフラグである。例えば、値が1の場合は問題なく表示することができることを示し、値が0の場合はまだ表示されていないピクチャが、本実施の形態の処理によって既にデータを失ってしまったため表示することができなくなる可能性があることを示す。このように、cnf_flag を符号列に記述しておくことにより、この信号の値を調べることにより本実施の形態の処理を適用するかどうかを判断することができる。例えば、cnf_flag が0の場合には、本実施の形態の処理を適用すると表示できないピクチャが発生してしまう可能性があることが分かるので、替わりに従来どおりピクチャ単位でピクチャメモリの管理を行う方法に切り替えることにより、メモリ領域が細分化されてしまう恐れがあるが、全てのピクチャを問題なく表示することが可能となる。
なお、図2および図3ではmax_sizeおよびmin_area_num およびcnf_flagをピクチャ共通情報領域に記述しているが、復号化を行う際に必ずしも必要ではないが復号化処理のための補助となるようなデータを集めたデータ領域に記述することも可能である。また、シーケンス全体から参照されるシーケンス共通情報領域に記述することも可能である。また、スライスヘッダに記述することも可能である。
次に、上で述べたような符号化方法によって符号化された符号列の復号化方法を、図4〜図7を用いて説明する。図4は、本実施の形態の画像復号化装置1100の構成を示すブロック図である。図5は、図4に示した画像復号化装置1100における復号化処理の手順を示すフローチャートである。図6および図7は、図4に示したピクチャメモリ203の管理方法を示す模式図である。
図4に示した画像復号化装置1100の構成は図29を用いて説明した従来の画像復号化装置200とほぼ同様である。従来の方法と異なる点は、ピクチャサイズ変更判定部207、削除ピクチャ領域判定部209、ピクチャメモリ分割方法指定部210が追加された点である。従来の技術と全く同様の処理については、ここでは説明を省略する。
本実施の形態は従来とは異なり、ピクチャメモリ203の管理をピクチャ単位で行うのではなく、ピクチャメモリ203を1つもしくは複数に分割したピクチャ領域と呼ばれる領域を1つの格納および削除の単位として行うことを特徴とする。そこで、符号列の復号化に先立って、ピクチャメモリ分割方法指定部210では、ピクチャメモリの分割方法を符号列中の信号から解析してピクチャメモリ制御部206に指示する。本実施の形態では、前記ピクチャメモリを分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報が図2(a)の符号列中に含まれるmax_sizeとしてピクチャ共通情報領域に記述されている。ピクチャメモリ分割方法指定部210は前記信号を解析することにより、ピクチャメモリ203の分割方法を決定する。その際に分割される領域の数は下記の式2によって算出される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(ピクチャ領域数)=(画像復号化装置1100のピクチャメモリ203のサイズ)/(max_size) (式2)
また、図2(a)の符号列の代わりに図2(b)の符号列を用いた場合は、ピクチャ領域の数は下記の式3によって算出される。
(ピクチャ領域数)=(min_area_num ) (式3)
なお、上記のピクチャサイズおよびピクチャメモリのサイズとは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれであってもよく、それぞれ同様に扱うことが可能である。
本実施の形態は従来とは異なり、ピクチャメモリ203の管理をピクチャ単位で行うのではなく、ピクチャメモリ203を1つもしくは複数に分割したピクチャ領域と呼ばれる領域を1つの格納および削除の単位として行うことを特徴とする。そこで、符号列の復号化に先立って、ピクチャメモリ分割方法指定部210では、ピクチャメモリの分割方法を符号列中の信号から解析してピクチャメモリ制御部206に指示する。本実施の形態では、前記ピクチャメモリを分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報が図2(a)の符号列中に含まれるmax_sizeとしてピクチャ共通情報領域に記述されている。ピクチャメモリ分割方法指定部210は前記信号を解析することにより、ピクチャメモリ203の分割方法を決定する。その際に分割される領域の数は下記の式2によって算出される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(ピクチャ領域数)=(画像復号化装置1100のピクチャメモリ203のサイズ)/(max_size) (式2)
また、図2(a)の符号列の代わりに図2(b)の符号列を用いた場合は、ピクチャ領域の数は下記の式3によって算出される。
(ピクチャ領域数)=(min_area_num ) (式3)
なお、上記のピクチャサイズおよびピクチャメモリのサイズとは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれであってもよく、それぞれ同様に扱うことが可能である。
ピクチャサイズ変更判定部207では、復号化対象のピクチャのピクチャサイズとそれ以前(又はその直前)に復号化されたピクチャのピクチャサイズとを比較し、ピクチャサイズの変更がなされたかどうかを判定する。
符号列中のスライスヘッダには、図2(a)及び図2(b)にあるように、reset_flag が符号化されている。符号列解析部201では前記reset_flag の値を解析し、解析結果の情報をピクチャメモリ制御部206に出力する。本実施の形態ではピクチャサイズが変更されていた場合でもreset_flag の値は0もしくは1の両方とも選択されている可能性がある。したがって、reset_flag の値に応じて、図5のフローチャートのようにピクチャメモリの管理方法が分かれることになる。特にreset_flag が0の場合は、ピクチャメモリ内にピクチャサイズ変更前のピクチャが残っている可能性があるため、ピクチャサイズ変更後のピクチャを蓄積するためにどのピクチャ領域を削除しなくてはならないかを判定する必要がある。その判定が削除ピクチャ領域判定部209によってなされ、前記判定結果はピクチャメモリ制御部206に出力されピクチャメモリの管理が行われる。
符号列中のスライスヘッダには、図2(a)及び図2(b)にあるように、reset_flag が符号化されている。符号列解析部201では前記reset_flag の値を解析し、解析結果の情報をピクチャメモリ制御部206に出力する。本実施の形態ではピクチャサイズが変更されていた場合でもreset_flag の値は0もしくは1の両方とも選択されている可能性がある。したがって、reset_flag の値に応じて、図5のフローチャートのようにピクチャメモリの管理方法が分かれることになる。特にreset_flag が0の場合は、ピクチャメモリ内にピクチャサイズ変更前のピクチャが残っている可能性があるため、ピクチャサイズ変更後のピクチャを蓄積するためにどのピクチャ領域を削除しなくてはならないかを判定する必要がある。その判定が削除ピクチャ領域判定部209によってなされ、前記判定結果はピクチャメモリ制御部206に出力されピクチャメモリの管理が行われる。
次に復号化処理におけるピクチャメモリ制御部206、ピクチャサイズ変更判定部207、削除ピクチャ領域判定部209の動作の詳細について、図5のフローチャートを用いて説明を行う。なお、図5のフローチャートでは対象ピクチャの復号化を行った後にピクチャサイズの変更の判定およびreset_flag の値の判定を行っているが、この順番は任意であり、図5に示した順番に限ったものではない。
まず、復号化対象ピクチャにおいてピクチャサイズが変更され(S1204)、かつ、reset_flag が1のとき(S1205)に実行される復号化処理のフローについて説明する。reset_flag が1とは、ピクチャメモリ内の全てのピクチャデータを削除し、全ての領域を空き状態にすることを示す値である。つまりこの信号がピクチャメモリ制御部206に入力されると、ピクチャメモリ制御部206はピクチャメモリ内の全ての領域を削除し(S1206)、復号化を行ったピクチャサイズ変更後のピクチャをピクチャメモリ内の任意の領域に保存する(S1207)ことが可能である。
次いで、復号化対象ピクチャにおいてピクチャサイズが変更され(S1204)、かつ、reset_flag が0のとき(S1205)に実行される復号化処理のフローについて説明する。reset_flag が0とは、ピクチャメモリ内の全てのピクチャデータを参照不可にするがピクチャデータそのものは削除せずに蓄積したままにすることを示す値である。削除ピクチャ領域判定部209はピクチャメモリ内の空き領域を調べ、空き領域が足りない場合は削除するピクチャ領域を判定する(S1208)。ピクチャメモリ203内に蓄積されているピクチャは、ピクチャデータに加え表示順の情報を持っている。削除ピクチャ領域判定部209は、前記表示順情報を調べることにより、表示順情報の最も古いピクチャが蓄積されているピクチャ領域を指定し、指定されたピクチャ領域を削除する旨の指示をピクチャメモリ制御部206に伝達する。その結果、指定されたピクチャ領域が削除され、生成された空き領域に復号化されたピクチャが蓄積される(S1210)。
図6(a)及び図6(b)は、新たに復号化されたピクチャが、図5のフローチャートのステップS1204〜S1210の手順に従ってピクチャメモリ203に蓄積される様子を示す図である。
図6(a)はピクチャメモリ203内に復号化された復号化対象ピクチャCを蓄積するのに十分な空き領域があった場合の例である。この例では、図30(a)及び図30(b)のピクチャ列におけるP4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。P4、P5は分割されたピクチャ領域と同じピクチャサイズを持ったピクチャであり、つまり、シーケンス中に含まれるピクチャの中で最も大きなピクチャサイズを持ったものであることが分かる。それに対して復号化されたピクチャCは、必ずピクチャ領域と同じピクチャサイズかもしくはそれ以下のピクチャサイズを持つことになるが、図6(a)の例では、復号化対象ピクチャCがP4、P5よりも小さなピクチャサイズであった場合を示している。この場合は、図6(a)下部のように、復号化されたピクチャCをそのまま空き領域に蓄積することが可能である。つまり、既にピクチャデータが蓄積されているピクチャ領域の削除は行わない。
図6(a)はピクチャメモリ203内に復号化された復号化対象ピクチャCを蓄積するのに十分な空き領域があった場合の例である。この例では、図30(a)及び図30(b)のピクチャ列におけるP4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。P4、P5は分割されたピクチャ領域と同じピクチャサイズを持ったピクチャであり、つまり、シーケンス中に含まれるピクチャの中で最も大きなピクチャサイズを持ったものであることが分かる。それに対して復号化されたピクチャCは、必ずピクチャ領域と同じピクチャサイズかもしくはそれ以下のピクチャサイズを持つことになるが、図6(a)の例では、復号化対象ピクチャCがP4、P5よりも小さなピクチャサイズであった場合を示している。この場合は、図6(a)下部のように、復号化されたピクチャCをそのまま空き領域に蓄積することが可能である。つまり、既にピクチャデータが蓄積されているピクチャ領域の削除は行わない。
図6(b)上部はピクチャメモリ内に復号化したピクチャCを蓄積するのに十分な空き領域がなかった場合の例である。この例では、図30のピクチャ列におけるP6、P4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。この場合はピクチャメモリ203に蓄積されているピクチャサイズ変更前のピクチャデータを持つピクチャ領域を削除して、復号化したピクチャCを蓄積するための領域を確保する必要がある。本実施の形態では、復号化を行うピクチャは必ずピクチャ領域と同じピクチャサイズもしくはそれ以下のピクチャサイズを持つものである。従って、ピクチャメモリ203内に空き領域が無い場合は、どれか1つのピクチャ領域を削除することによって、復号化されたピクチャを蓄積するための領域を確保することができる。削除するピクチャ領域は、蓄積されているピクチャが持っている表示順情報が最も古いものが選択される。この例では、P4の表示順情報が最も古いことが分かる。削除ピクチャ領域判定部209では、上記のような処理によって削除するピクチャ領域を判定し、判定結果をピクチャメモリ制御部206に出力しピクチャ領域の削除を行う。図6(b)上部の例では上記処理によってP4が削除され、図6(b)下部のように復号化されたピクチャCを、P4を削除することによって生成された空き領域に蓄積している。
最後に、復号化対象ピクチャにおいてはピクチャサイズが変更されずに、それ以前に変更されていた場合、もしくは全く変更がされていなかった場合(S1204)に実行される復号化処理のフローについて説明する。本実施の形態は従来とは異なり、ピクチャメモリ203内に復号化対象ピクチャCと異なるピクチャサイズを持ったピクチャが存在していてもしていなくても全く同様の処理によってピクチャメモリ203を管理することが可能である。削除ピクチャ領域判定部209は、ピクチャメモリ203内の空き領域を調べ、空き領域が足りない場合は削除するピクチャ領域を判定する。ピクチャメモリ203内に蓄積されているピクチャはピクチャデータに加え表示順の情報を持っている。削除ピクチャ領域判定部209は、前記表示順情報を調べることにより、表示順情報の最も古いピクチャが蓄積されているピクチャ領域を特定し、特定されたピクチャ領域を削除する指示をピクチャメモリ制御部206に伝達する。その結果生成された空き領域に復号化したピクチャを蓄積する。
図7(a)及び図7(b)は、新たに復号化されたピクチャが、図5のフローチャートのステップS1204〜S1213の手順に従って、ピクチャメモリ203に蓄積される様子を示す図である。
図7(a)はピクチャメモリ内に復号化したピクチャCを蓄積するのに十分な空き領域があった場合の例である。この例では、図30のピクチャ列におけるP5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。P5はピクチャ領域と同じピクチャサイズを持ったピクチャであり、つまり、シーケンス中に含まれるピクチャの中で最も大きなピクチャサイズを持ったものであることが分かる。それに対して復号化されたピクチャCは、必ずピクチャ領域と同じピクチャサイズもしくはそれ以下のピクチャサイズを持つことになる。図7(a)の例では、P5よりも小さなピクチャサイズであった場合を示している。この場合は、図7(a)下部のように、復号化したピクチャCは、そのまま空き領域に蓄積することが可能である。ただし、この場合、復号化対象ピクチャCは、空き領域の先頭から蓄積されるのではなく、空き領域となっているピクチャ領域の先頭から蓄積される。そして、既にピクチャメモリ内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図7(a)はピクチャメモリ内に復号化したピクチャCを蓄積するのに十分な空き領域があった場合の例である。この例では、図30のピクチャ列におけるP5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。P5はピクチャ領域と同じピクチャサイズを持ったピクチャであり、つまり、シーケンス中に含まれるピクチャの中で最も大きなピクチャサイズを持ったものであることが分かる。それに対して復号化されたピクチャCは、必ずピクチャ領域と同じピクチャサイズもしくはそれ以下のピクチャサイズを持つことになる。図7(a)の例では、P5よりも小さなピクチャサイズであった場合を示している。この場合は、図7(a)下部のように、復号化したピクチャCは、そのまま空き領域に蓄積することが可能である。ただし、この場合、復号化対象ピクチャCは、空き領域の先頭から蓄積されるのではなく、空き領域となっているピクチャ領域の先頭から蓄積される。そして、既にピクチャメモリ内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図7(b)上部はピクチャメモリ203内に復号化されたピクチャCを蓄積するのに十分な空き領域がなかった場合の例である。この例では、図30のピクチャ列におけるP4、P5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。この場合はピクチャメモリ203に蓄積されているピクチャデータを持つピクチャ領域を削除して、新たに復号化されたピクチャCを蓄積するための領域を確保する必要がある。本実施の形態では、復号化を行うピクチャは必ずピクチャメモリを分割した領域であるピクチャ領域と同じピクチャサイズもしくはそれ以下のピクチャサイズを持つものである。従って、ピクチャメモリ内に空き領域が無い場合は、どれか1つのピクチャ領域を削除することによって、復号化したピクチャを蓄積するための領域を確保することができる。削除するピクチャ領域は、蓄積されているピクチャが持っている表示順情報が最も古いものが選択される。この例では、P4の表示順情報が最も古いことが分かる。削除ピクチャ領域判定部209では、上記のような処理によって削除するピクチャ領域を判定し、判定結果をピクチャメモリ制御部206に出力しピクチャの削除を行う。図7(b)上部の例では上記処理によってP4が削除され、図7(b)下部のように復号化したピクチャCを生成された空き領域に蓄積している。
なお、上記実施の形態では、復号化におけるピクチャメモリ203からピクチャ領域を削除するときに、蓄積されているピクチャの持つ表示順情報が古いものから順に行っていたが、表示順情報の代わりに、復号化された順序が古いピクチャから順に削除を行うとした場合も全く同様に扱うことが可能である。
以上の説明から分かるように、本実施の形態では復号化対象ピクチャCにおいてピクチャサイズが変更された場合でも、復号化対象ピクチャCにおいてピクチャサイズが変更されなかった場合でも、全く同様の処理によってピクチャメモリ203の管理を実現することができるので、両者を区別する必要がない。つまり、符号化を行う際にピクチャサイズが変更された場合でも変更がされなかった場合でも、常に1領域分のみのピクチャ領域を削除するという単純な処理方法によって、表示されていない可能性のあるピクチャをできる限りピクチャメモリに残したまま、矛盾無くピクチャメモリの管理を行うことが可能となる。また、符号化装置側においても、従来の方法に加えて、ストリーム中に含まれる最大のピクチャサイズの情報を符号化して符号列に記述するだけで本実施の形態の処理を実現することが可能であり、画像符号化装置の実装が容易である。しかし、図6および図7の例で発生したように、新たに復号化されるピクチャ(復号化対象ピクチャC以降のピクチャ)が小さいピクチャサイズを持つ場合は、それぞれのピクチャ領域中に使用されない無駄な領域が発生するため、ピクチャメモリを有効に活用しきれているとは言いがたい。しかし、どのピクチャサイズのピクチャも物理的に分割されることなくメモリ上に連続して蓄積することが可能となるため、メモリのアクセスが単純化され速度を低下させることなく復号化を行うことが可能となる。また、通常の画像符号化および復号化においては、ピクチャサイズが変更されても、ピクチャの参照関係(参照に使用するピクチャの枚数等)は変更せずに処理を行うような構成が多く使用される。よって、本実施の形態で説明したような方法によって、効率の良い処理方法による復号化を実現することが可能であると言える。
(実施の形態2)
実施の形態1では、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報に基づいて、復号化側のピクチャメモリ203を分割し、このピクチャ領域を単位としてピクチャメモリ203を管理した。これに対し、本実施の形態2では、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報に基づいて、ピクチャメモリ203を管理する。
実施の形態1では、ストリーム中に含まれる可能性のある最大のピクチャサイズの情報に基づいて、復号化側のピクチャメモリ203を分割し、このピクチャ領域を単位としてピクチャメモリ203を管理した。これに対し、本実施の形態2では、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報に基づいて、ピクチャメモリ203を管理する。
本発明の実施の形態2における動画像の符号化方法について図1に示したブロック図を用いて説明する。画像符号化装置の構成は実施の形態1で説明した画像符号化装置800と同様である。すでに説明した構成要素と全く同様の構成要素については、ここでは説明を省略する。
符号化対象のストリームの符号化に先立って、ピクチャメモリ分割情報符号化部801では復号化側のピクチャメモリを分割する方法を指定するための情報を符号化する。本実施の形態では、前記復号化側のピクチャメモリ203を分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報を符号化する。図8は、本実施の形態2の画像符号化装置800により生成される符号列のデータ構造を示す図である。図8(a)は、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報を符号化する場合の符号列の一例を示す図である。ピクチャメモリ分割情報符号化部801は、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報を、図8(a)における符号列のピクチャ共通情報領域のmin_size として記述する。ここでの最小のピクチャサイズは、例えば、画像符号化装置が符号化に使用することのできる最小のピクチャサイズを用いるとしてもよいし、ユーザが符号化を実行する際に提示された複数のピクチャサイズのうちから1つを選択して決定するとしてもよい。
符号化対象のストリームの符号化に先立って、ピクチャメモリ分割情報符号化部801では復号化側のピクチャメモリを分割する方法を指定するための情報を符号化する。本実施の形態では、前記復号化側のピクチャメモリ203を分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報を符号化する。図8は、本実施の形態2の画像符号化装置800により生成される符号列のデータ構造を示す図である。図8(a)は、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報を符号化する場合の符号列の一例を示す図である。ピクチャメモリ分割情報符号化部801は、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報を、図8(a)における符号列のピクチャ共通情報領域のmin_size として記述する。ここでの最小のピクチャサイズは、例えば、画像符号化装置が符号化に使用することのできる最小のピクチャサイズを用いるとしてもよいし、ユーザが符号化を実行する際に提示された複数のピクチャサイズのうちから1つを選択して決定するとしてもよい。
符号化対象のピクチャがIDRピクチャもしくはそれに代わるピクチャサイズの変更を可能とするピクチャであった場合、従来の技術と同様にピクチャメモリ制御部109よりピクチャメモリのリセット方法を示す信号が符号列生成部103に入力される。本実施の形態では、この際に指定するピクチャメモリのリセット方法は任意であり、例えば、復号化側のピクチャメモリの動作を想定した場合に、ピクチャメモリ内に表示されていないピクチャがあるかないかよって、reset_flag を0、つまり全てのピクチャを参照不可にするだけでピクチャデータそのものは削除しない、もしくは、reset_flag を1、つまり全てのピクチャのデータそのものを削除してピクチャメモリの全領域を空き状態にする、かのどちらかを任意に選択することが可能である。符号列生成部103では入力された前記信号を符号化し、図8(a)のようにreset_flag をスライスヘッダに持った形式の符号列を生成する。
なお、min_size としてストリーム中に含まれる可能性のある最小のピクチャサイズの情報を記述する代わりに、復号化におけるピクチャメモリ203を分割した際のそれぞれの分割後のピクチャ領域のサイズを直接one_mem_sizeとして記述する方法もある。図8(b)は、ピクチャメモリ203を分割して得られるピクチャ領域のサイズの情報を符号化する場合の符号列の一例を示す図である。例えば、図8(b)のように、分割後のピクチャ領域のサイズを直接one_mem_sizeとしてピクチャ共通情報の中に記述するとしてもよい。このone_mem_sizeとしては、例えば、ストリーム中に含まれる最小のピクチャサイズをそのまま用いてもよいし、ストリーム中に含まれる全てのピクチャサイズの最大公約数を用いてもよいし、復号化側のメモリの動作を想定した際に最も効率良くアクセスすることが可能であるひとまとまりの領域のサイズを用いるとしてもよい。
なお、one_mem_sizeを決定する際は、1つのマクロブロックを同じ領域に蓄積できるように、もしくは画面(ピクチャ)の横方向1列分の全てのマクロブロックを同じ領域に蓄積できるようにone_mem_sizeの値の切り上げを行うことにより、効率の良いメモリ管理を実現することも可能である。また、この切り上げは、画像復号化装置側で行うようにしてもよい。例えば図9のような3種類のピクチャサイズのピクチャが1つのストリーム内で符号化されているとする。図9(a)は1つのストリーム内で符号化されている3通りのピクチャサイズの例を示す図である。同図において、各ピクチャのサイズは、縦横の長さがマクロブロック(例えば、16×16画素)いくつ分に相当するかで表されている。図9(a)において、ピクチャAはマクロブロック数が縦6横7で構成されるピクチャであり、ピクチャBはマクロブロック数が縦8横10で構成されるピクチャであり、ピクチャCはマクロブロック数が縦12横12で構成されるピクチャとなっている。図9(b)は、1つのストリーム内に図9(a)に示した3つのピクチャサイズのピクチャが含まれる場合に、ピクチャメモリ203を効率よく利用するためのピクチャ領域の分割方法の一例を示す図である。この場合、one_mem_sizeとしてマクロブロック48個分のデータを蓄積できる領域のサイズを記述すれば、図9(b)のように、ピクチャAは1つのピクチャ領域で、ピクチャBは2つのピクチャ領域で、ピクチャCは3つのピクチャ領域で1枚分のピクチャのデータを蓄積することが可能となる。このとき各ピクチャの横方向1列分のマクロブロックは途中で区切られることなく1つのピクチャ領域に割り当てられているのが分かる。なお、図9の例では全てのピクチャが等分に分割されているが、分割の大きさは不均一でも問題なく扱うことが可能である。
なお、one_mem_sizeとして復号化側のピクチャメモリを分割した1つ分のピクチャ領域のサイズの情報を記述する代わりに、分割したピクチャ領域の数をarea_numとして符号列のピクチャ共通情報領域に記述することも可能である。図8(c)は、ピクチャメモリ203を分割して得られるピクチャ領域の数を符号化する場合の符号列の一例を示す図である。例えば、図8(c)のように、分割後のピクチャ領域の数をarea_numとして直接ピクチャ共通情報の中に記述するとしてもよい。その場合、画像復号化装置のピクチャメモリのサイズは規格等によって一定であるので、area_numの値は下記の式4によって容易に決定される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(area_num)=(画像復号化装置1100のピクチャメモリのサイズ)/(one_mem_size) (式4)
なお、上記のピクチャサイズおよびピクチャメモリのサイズとは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれであっても同様に扱うことが可能である。
(area_num)=(画像復号化装置1100のピクチャメモリのサイズ)/(one_mem_size) (式4)
なお、上記のピクチャサイズおよびピクチャメモリのサイズとは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれであっても同様に扱うことが可能である。
図10(a)、図10(b)及び図10(c)は、図8(a)、図8(b)及び図8(c)に示した各符号列中のピクチャ共通情報の領域に、付加的情報を記述する場合の符号列の一例を示す図である。なお、図8(a)、図8(b)及び図8(c)に示した符号列は、図10(a)、図10(b)及び図10(c)に示したように記述されるとしてもよい。すなわち、min_size およびone_mem_sizeおよびarea_numに加えて、cnf_flagを符号列のピクチャ共通情報領域に記述することも可能である。cnf_flagはmin_size およびone_mem_sizeおよびarea_numに従って復号化側のピクチャメモリを分割して管理を行った場合でも、ストリーム中に含まれる全てのピクチャを問題なく表示することができるかどうかを示すフラグである。例えば、値が1の場合は問題なく表示することができることを示し、値が0の場合はまだ表示されていないピクチャが、本実施の形態の処理によって既にデータを失ってしまったため表示することができなくなる可能性があることを示す。
なお、図8(a)、(b)、(c)および図10(a)、(b)、(c)では、min_size 、 one_mem_size、area_numおよびcnf_flagをピクチャ共通情報領域に記述しているが、例えば、復号化を行う際に必ずしも必要ではないが復号化処理のための補助となるようなデータを集めたデータ領域に記述することも可能である。また、シーケンス全体から参照されるシーケンス共通情報領域に記述することも可能である。また、スライスヘッダに記述することも可能である。
次に、上で述べたような符号化方法によって符号化された符号列の復号化方法を、図4に示した画像復号化装置1100のブロック図、および図5に示した復号化処理のフローチャート、および図11と図12に示したピクチャメモリの模式図を用いて説明する。
本実施の形態は実施の形態1と同様に、ピクチャメモリの管理をピクチャ単位で行うのではなくピクチャ領域と呼ばれるピクチャメモリを1つもしくは複数に分割した領域を1つの格納および削除の単位として行うことを特徴とする。そこで、符号列の復号化に先立って、ピクチャメモリ分割方法指定部210ではピクチャメモリの分割方法を符号列中の信号から解析してピクチャメモリ制御部206に指示する。本実施の形態では、前記ピクチャメモリを分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報が図8(a)の符号列中に含まれるmin_size としてピクチャ共通情報領域に記述されている。ピクチャメモリ分割方法指定部210は、前記信号を解析することによりピクチャメモリの分割方法を決定する。その際に分割される領域の数は下記の式5によって算出される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(ピクチャ領域数)=(画像復号化装置1100のピクチャメモリのサイズ)/(min_size ) (式5)
また、図8(a)の符号列の代わりに図8(b)の符号列を用いた場合はピクチャ領域の数は下記の式6によって算出される。
(ピクチャ領域数)=(画像復号化装置1100のピクチャメモリのサイズ)/(one_mem_size) (式6)
また、図8(a)の符号列の代わりに図8(c)の符号列を用いた場合はピクチャ領域の数は下記の式7によって算出される。
(ピクチャ領域数)=(area_num) (式7)
なお、上記のピクチャサイズおよびピクチャメモリのサイズは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれで表されている場合であっても同様に扱うことが可能である。
本実施の形態は実施の形態1と同様に、ピクチャメモリの管理をピクチャ単位で行うのではなくピクチャ領域と呼ばれるピクチャメモリを1つもしくは複数に分割した領域を1つの格納および削除の単位として行うことを特徴とする。そこで、符号列の復号化に先立って、ピクチャメモリ分割方法指定部210ではピクチャメモリの分割方法を符号列中の信号から解析してピクチャメモリ制御部206に指示する。本実施の形態では、前記ピクチャメモリを分割する方法を指定する情報として、ストリーム中に含まれる可能性のある最小のピクチャサイズの情報が図8(a)の符号列中に含まれるmin_size としてピクチャ共通情報領域に記述されている。ピクチャメモリ分割方法指定部210は、前記信号を解析することによりピクチャメモリの分割方法を決定する。その際に分割される領域の数は下記の式5によって算出される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(ピクチャ領域数)=(画像復号化装置1100のピクチャメモリのサイズ)/(min_size ) (式5)
また、図8(a)の符号列の代わりに図8(b)の符号列を用いた場合はピクチャ領域の数は下記の式6によって算出される。
(ピクチャ領域数)=(画像復号化装置1100のピクチャメモリのサイズ)/(one_mem_size) (式6)
また、図8(a)の符号列の代わりに図8(c)の符号列を用いた場合はピクチャ領域の数は下記の式7によって算出される。
(ピクチャ領域数)=(area_num) (式7)
なお、上記のピクチャサイズおよびピクチャメモリのサイズは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれで表されている場合であっても同様に扱うことが可能である。
ピクチャサイズ変更判定部207では、復号化対象のピクチャのピクチャサイズとそれ以前(又はその直前)に復号化されたピクチャのピクチャサイズとを比較し、ピクチャサイズの変更がなされたかどうかを判定する。
符号列中のスライスヘッダには図8(a)、(b)、(c)にあるようにreset_flag が符号化されている。符号列解析部201では前記reset_flag の値を解析し、解析結果の情報をピクチャメモリ制御部206に出力する。本実施の形態ではピクチャサイズが変更されていた場合でもreset_flag の値は0もしくは1の両方とも選択されている可能性がある。したがって、reset_flag の値に応じて、図5のフローチャートのようにピクチャメモリの管理方法が分かれることになる。特にreset_flag が0の場合は、ピクチャメモリ内にピクチャサイズ変更前のピクチャが残っている可能性があるため、ピクチャサイズ変更後のピクチャを蓄積するためにどのピクチャ領域を削除しなくてはならないかを判定する必要がある。その判定が削除ピクチャ領域判定部209によってなされ、前記判定結果はピクチャメモリ制御部206に出力され、ピクチャメモリ203の管理が行われる。
符号列中のスライスヘッダには図8(a)、(b)、(c)にあるようにreset_flag が符号化されている。符号列解析部201では前記reset_flag の値を解析し、解析結果の情報をピクチャメモリ制御部206に出力する。本実施の形態ではピクチャサイズが変更されていた場合でもreset_flag の値は0もしくは1の両方とも選択されている可能性がある。したがって、reset_flag の値に応じて、図5のフローチャートのようにピクチャメモリの管理方法が分かれることになる。特にreset_flag が0の場合は、ピクチャメモリ内にピクチャサイズ変更前のピクチャが残っている可能性があるため、ピクチャサイズ変更後のピクチャを蓄積するためにどのピクチャ領域を削除しなくてはならないかを判定する必要がある。その判定が削除ピクチャ領域判定部209によってなされ、前記判定結果はピクチャメモリ制御部206に出力され、ピクチャメモリ203の管理が行われる。
次に復号化処理におけるピクチャメモリ制御部206、ピクチャサイズ変更判定部207、削除ピクチャ領域判定部209の動作の詳細について、図5のフローチャートを用いて説明を行う。なお、図5のフローチャートでは対象ピクチャの復号化を行った後にピクチャサイズの変更の判定およびreset_flag の値の判定を行っているが、この順番は任意であり、図5に示した順番に限ったものではない。
まず、復号化対象ピクチャにおいてピクチャサイズが変更され(S1204)、かつ、reset_flag が1のとき(S1205)に実行される復号化処理のフローについて説明する。reset_flag が1とは、ピクチャメモリ内の全てのピクチャデータを削除し、全ての領域を空き状態にすることを示す値である。つまりこの信号がピクチャメモリ制御部206に入力されると、ピクチャメモリ制御部206はピクチャメモリ内の全ての領域を削除し(S1206)、復号化を行ったピクチャサイズ変更後のピクチャをピクチャメモリ内の任意の領域に保存する(S1207)ことが可能である。
次いで、復号化対象ピクチャにおいてピクチャサイズが変更され(S1204)、かつ、reset_flag が0のとき(S1205)に実行される復号化処理のフローについて説明する。reset_flag が0とは、ピクチャメモリ内の全てのピクチャデータを参照不可にするがピクチャデータそのものは削除せずに蓄積したままにすることを示す値である。削除ピクチャ領域判定部209はピクチャメモリ内の空き領域を調べ、空き領域が足りない場合はピクチャサイズ変更後のサイズとピクチャメモリを分割した1つのピクチャ領域のサイズと比較し、復号化したピクチャの分割の方法を決定して、削除するピクチャ領域の数および削除するピクチャ領域を判定する(S1208)。ピクチャメモリ203内に蓄積されているピクチャは、ピクチャデータに加え表示順の情報を持っている。削除ピクチャ領域判定部209は、前記表示順情報を調べることにより、表示順情報の古いピクチャが蓄積されているピクチャ領域を指定し、指定されたピクチャ領域から順に削除する指示をピクチャメモリ制御部206に伝達する。その結果、指定されたピクチャ領域が削除され、生成された空き領域に復号化したピクチャが蓄積される(S1210)。
図11(a)及び図11(b)は、新たに復号化されたピクチャが、図5のフローチャートのステップS1204〜S1210の手順に従って、ピクチャメモリ203に蓄積される様子を示す図である。
図11(a)はピクチャメモリ内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP2、P6、P4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。P2、P6、P4、P5はピクチャ領域と同じピクチャサイズを持ったピクチャであることが分かる。それに対して新たに復号化されたピクチャCは、ピクチャ領域1つ分のサイズよりも大きなピクチャサイズであり、2つに分割して蓄積する例を示している。この場合は、図11(a)下部のように新たに復号化されたピクチャCを2つ分のピクチャ領域を使用してそのまま空き領域に蓄積することが可能である。つまり、ピクチャメモリ内において、既にピクチャデータが蓄積されているピクチャ領域の削除は行わない。
図11(a)はピクチャメモリ内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP2、P6、P4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。P2、P6、P4、P5はピクチャ領域と同じピクチャサイズを持ったピクチャであることが分かる。それに対して新たに復号化されたピクチャCは、ピクチャ領域1つ分のサイズよりも大きなピクチャサイズであり、2つに分割して蓄積する例を示している。この場合は、図11(a)下部のように新たに復号化されたピクチャCを2つ分のピクチャ領域を使用してそのまま空き領域に蓄積することが可能である。つまり、ピクチャメモリ内において、既にピクチャデータが蓄積されているピクチャ領域の削除は行わない。
図11(b)上部はピクチャメモリ内に復号化したピクチャCを蓄積するのに十分な空き領域がなかった場合の例を示している。この例では、図30のピクチャ列におけるP3、P1、P2、P6、P4、P5がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示している。この場合は、サイズ変更前のピクチャデータを持つピクチャ領域を削除して復号化したピクチャを蓄積するための領域を確保する必要がある。この例では、ピクチャサイズ変更後のピクチャCはピクチャ領域1つ分のサイズよりもピクチャサイズが大きく、2つに分割して2つ分のピクチャ領域を使用して蓄積しなくてはならないことが分かる。また、削除されるピクチャ領域は、そのピクチャ領域に蓄積されているピクチャが持っている表示順情報が古いものから順に選択される。この例では、P1、P2の順に表示順情報が古いことが分かる。削除ピクチャ領域判定部209では、上記のような処理によって削除すべきピクチャ領域を判定し、判定結果をピクチャメモリ制御部206に出力し、判定されたピクチャ領域の削除を行う。図11(b)上部の例では前記ピクチャ領域の削除処理によってP1、P2が削除され、図11(b)下部のように新たに復号化されたピクチャCが生成された空き領域に蓄積されている。
最後に、復号化対象ピクチャCにおいてはピクチャサイズが変更されずに、それ以前に変更されていた場合、もしくは全く変更がされていなかった場合(S1204)に実行される復号化処理のフローについて説明する。本実施の形態は、ピクチャメモリ内に復号化対象ピクチャと異なるピクチャサイズを持ったピクチャが存在していてもしていなくても全く同様の処理によってピクチャメモリを管理することが可能である。削除ピクチャ領域判定部209はピクチャメモリ内の空き領域を調べ、空き領域が足りない場合はピクチャサイズ変更後のサイズとピクチャメモリを分割した1つのピクチャ領域のサイズと比較し、復号化したピクチャの分割の方法を決定して、削除するピクチャ領域の数および削除するピクチャ領域を判定する。ピクチャメモリ内に蓄積されているピクチャはピクチャデータに加え表示順の情報を持っている。削除ピクチャ領域判定部209は、前記表示順情報を調べることにより、表示順情報の最も古いピクチャが蓄積されているピクチャ領域を特定し、特定されたピクチャ領域から順に削除する旨の指示をピクチャメモリ制御部206に伝達する。その結果生成された空き領域に、新たに復号化されたピクチャを蓄積する。
図12(a)及び図12(b)は、新たに復号化されたピクチャが、図5のフローチャートのステップS1204〜S1213の手順に従って、ピクチャメモリ203に蓄積される様子を示す図である。
図12(a)はピクチャメモリ内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP4、P5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。P4、P5はピクチャ領域と同じピクチャサイズを持ったピクチャであることが分かる。それに対して新たに復号化されたピクチャCは、ピクチャ領域1つ分のサイズよりも大きなピクチャサイズであり、2つに分割して蓄積する例を示している。この場合は、図12(a)下部のように復号化されたピクチャCを2つ分のピクチャ領域を使用してそのまま空き領域に蓄積することが可能である。つまり、既にピクチャメモリ203内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図12(a)はピクチャメモリ内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP4、P5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。P4、P5はピクチャ領域と同じピクチャサイズを持ったピクチャであることが分かる。それに対して新たに復号化されたピクチャCは、ピクチャ領域1つ分のサイズよりも大きなピクチャサイズであり、2つに分割して蓄積する例を示している。この場合は、図12(a)下部のように復号化されたピクチャCを2つ分のピクチャ領域を使用してそのまま空き領域に蓄積することが可能である。つまり、既にピクチャメモリ203内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図12(b)上部はピクチャメモリ203内に、復号化された復号化対象ピクチャCを蓄積するのに十分な空き領域がなかった場合の例である。この例では、図30のピクチャ列におけるP2、P6、P4、P5、P7がピクチャメモリに蓄積され、現在P8を復号化している状態(すなわち、C=P8)を示している。この場合はピクチャデータを持つピクチャ領域を削除して、新たに復号化されたピクチャCを蓄積するための領域を確保する必要がある。この例では、ピクチャサイズ変更後のピクチャCはピクチャ領域1つ分のサイズよりもピクチャサイズが大きいため、ピクチャCを2つに分割し、2つ分のピクチャ領域を使用して蓄積しなくてはならないことが分かる。また、削除されるピクチャの領域は、蓄積されているピクチャが持っている表示順情報が古いものから順に選択される。この例では、P2、P4の順に表示順情報が古いことが分かる。削除ピクチャ領域判定部209では、上記のような処理によって削除するピクチャ領域を判定し、判定結果をピクチャメモリ制御部206に出力し、ピクチャ領域の削除を行う。図12(b)上部の例では前記削除すべきピクチャ領域の判定処理によってP2、P4が削除され、図12(b)下部のように、新たに復号化されたピクチャCが、生成された空き領域に蓄積されている。
なお、上記実施の形態2では、画像復号化装置1100におけるピクチャメモリ203からピクチャ領域を削除するときに、ピクチャ領域に蓄積されているピクチャの表示順情報が古いものから順に削除したが、表示順情報の代わりに、蓄積されているピクチャの復号化順が古いものから順に、ピクチャ領域の削除を行うとした場合も全く同様に扱うことが可能である。
以上の説明から分かるように、本実施の形態では復号化対象ピクチャCにおいてピクチャサイズが変更された場合でも、復号化対象ピクチャCにおいてピクチャサイズが変更されなかった場合でも、全く同様の処理によってピクチャメモリ203の管理を実現することができるので、両者を区別する必要がない。つまり、符号化を行う際にピクチャサイズが変更された場合でも変更がされなかった場合でも、常に復号化したピクチャがいくつ分の領域が必要かを判断し、必要な領域のみを削除するという単純な処理方法によって、表示されていない可能性のあるピクチャをできる限りピクチャメモリに残したまま矛盾無くピクチャメモリの管理を行うことが可能となる。また、符号化側においても、従来の方法に加えて、ストリーム中に含まれる最小のピクチャサイズの情報、もしくは復号化側を想定してピクチャメモリを分割する1つ分のピクチャ領域のサイズを符号化して符号列に記述するだけで本実施の形態の処理を実現することが可能であり、画像符号化装置の作成が容易である。また、復号化したピクチャを分割するサイズはメモリアクセスの効率を考慮して任意に設定することが可能であり、メモリアクセスに関する速度を低下させることなく復号化を行うことが可能となる。
(実施の形態3)
上記実施の形態1では、ピクチャメモリの分割方法を指定するための情報が画像符号化装置において生成され、符号列内に記述された。これに対し、本発明の実施の形態3では、ピクチャメモリの分割方法を画像復号化装置において解析し決定する。従って、本発明の実施の形態3における動画像の符号化方法は図28を用いて説明した従来の符号化方法と同様であるので、説明を省略する。
上記実施の形態1では、ピクチャメモリの分割方法を指定するための情報が画像符号化装置において生成され、符号列内に記述された。これに対し、本発明の実施の形態3では、ピクチャメモリの分割方法を画像復号化装置において解析し決定する。従って、本発明の実施の形態3における動画像の符号化方法は図28を用いて説明した従来の符号化方法と同様であるので、説明を省略する。
図13は、本発明の実施の形態3における画像復号化装置2000の構成を示すブロック図である。以下では、本発明の実施の形態3における動画像の復号化方法について図13に示したブロック図を用いて説明する。復号化処理の構成は図4を用いて説明した実施の形態1の方法とほぼ同様である。実施の形態1の方法と異なる点は、ピクチャメモリ分割方法指定部210の代わりにアドレス分割部210Aが備えられた点である。ここでは実施の形態1と全く同様の処理については説明を省略する。
ピクチャサイズ変更判定部207では、復号化対象のピクチャのピクチャサイズとそれ以前(又はその直前)に復号化されたピクチャのピクチャサイズとを比較し、ピクチャサイズの変更がなされたかどうかを判定する。ピクチャサイズ変更判定部207は、ピクチャサイズの変更がなされたことを判定すると、変更後のピクチャサイズを、符号列解析部201を経由してアドレス分割部210Aに通知する。アドレス分割部210Aは、ピクチャサイズ変更判定部207により通知された変更後のピクチャサイズが各ピクチャ領域のサイズとなるよう、ピクチャメモリ203のアドレス空間を分割し、分割後のアドレスを単位としてピクチャメモリ203を管理するようピクチャメモリ制御部206に指示する。
その際に分割される領域の数は下記の式8によって算出される。なお、式中の割り算の演算結果は切り捨て処理によって整数値として算出されるものとする。
(ピクチャ領域数)=(画像復号化装置2000のピクチャメモリ203のサイズ)/(ピクチャサイズ変更後のピクチャサイズ) (式8)
なお、上記のピクチャサイズおよびピクチャメモリのサイズは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれを単位としてもよく、それぞれ同様に扱うことが可能である。
(ピクチャ領域数)=(画像復号化装置2000のピクチャメモリ203のサイズ)/(ピクチャサイズ変更後のピクチャサイズ) (式8)
なお、上記のピクチャサイズおよびピクチャメモリのサイズは、全体の画素数、もしくは全体のマクロブロックの個数、もしくは全体のビット数のいずれを単位としてもよく、それぞれ同様に扱うことが可能である。
次に復号化処理におけるピクチャメモリ制御部206、ピクチャサイズ変更判定部207、削除ピクチャ領域判定部209およびアドレス分割部210Aの動作の詳細について、図14を用いて説明を行う。図14は、図13に示した画像復号化装置2000における復号化処理の手順を示すフローチャートである。
まず、復号化対象ピクチャにおいてピクチャサイズが変更されると(S2301)、アドレス分割部210Aは、符号列解析部201を介してピクチャサイズ変更判定部207から復号化対象ピクチャのピクチャサイズ、すなわち、サイズ変更後のピクチャサイズを取得する(S2302)。アドレス分割部210Aは、取得したピクチャサイズでピクチャメモリ203のアドレス空間を分割し、分割後のピクチャ領域を単位としてピクチャメモリ203を管理するよう、ピクチャメモリ制御部206に指示する(S2303)。復号化対象ピクチャにおいてピクチャサイズが変更されていない場合(S2301)、ステップS2302及びS2303の処理は行わない。
まず、復号化対象ピクチャにおいてピクチャサイズが変更されると(S2301)、アドレス分割部210Aは、符号列解析部201を介してピクチャサイズ変更判定部207から復号化対象ピクチャのピクチャサイズ、すなわち、サイズ変更後のピクチャサイズを取得する(S2302)。アドレス分割部210Aは、取得したピクチャサイズでピクチャメモリ203のアドレス空間を分割し、分割後のピクチャ領域を単位としてピクチャメモリ203を管理するよう、ピクチャメモリ制御部206に指示する(S2303)。復号化対象ピクチャにおいてピクチャサイズが変更されていない場合(S2301)、ステップS2302及びS2303の処理は行わない。
次いで、削除ピクチャ領域判定部209はピクチャメモリ203内の空き領域を調べ(S2304)、分割されたいずれか1つのピクチャ領域が連続した空き領域として存在しなければ、少なくとも1つのピクチャ領域が空き領域になるまで、ピクチャメモリ203内のピクチャを表示順が古いものから順に削除する(S2305)。具体的には、ピクチャメモリ203内に蓄積されているピクチャは、ピクチャデータに加えピクチャの表示順を示す情報を持っている。削除ピクチャ領域判定部209は、前記表示順情報を調べることにより、表示順情報の最も古いピクチャから順にピクチャを削除する旨の指示を、ピクチャメモリ制御部206に伝達する。ピクチャメモリ制御部206は、削除ピクチャ領域判定部209に指示されたピクチャを削除するという処理を、分割された1つ分のピクチャ領域が空き領域になるまで繰り返し、その結果、分割された1つ分のピクチャ領域が空き領域になると、空き領域になったピクチャ領域に新たに復号化されたピクチャを蓄積する(S2306)。分割された1つ分のピクチャ領域がはじめから空き領域であれば(S2304)、そのピクチャ領域に、新たに復号化されたピクチャがそのまま蓄積される(S2306)。
図15(a)及び図15(b)は、新たに復号化されたピクチャが、図14のフローチャートの手順に従ってピクチャメモリ203に蓄積される様子を示す図である。図15(a)及び図15(b)では、現在の復号化対象ピクチャC以降のピクチャサイズが、より大きいサイズに変更された場合を示している。図15(a)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP2、P4、P5、P6がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示しているものとする。この例では、復号化対象ピクチャCであるP7からピクチャサイズが変更されており、図15(a)下部に示すように、P7のピクチャサイズでピクチャメモリ203のアドレスが分割されている。この場合は、図15(a)下部のように、新たに復号化されたピクチャCは、そのまま空き領域に蓄積することが可能である。既にピクチャメモリ内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図15(b)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域がなかった場合の例を示している。この例では、図30のピクチャ列におけるP1、P2、P3、P4、P5、P6がピクチャメモリ203に蓄積され、現在P7を復号化している状態(すなわち、C=P7)であることを示している。この場合は、ピクチャメモリ203に蓄積されているピクチャデータを持つ領域を削除して、新たに復号化されたピクチャCを蓄積するための領域を確保する必要がある。本実施の形態では、復号化を行うピクチャCは必ずピクチャメモリを分割した領域であるピクチャ領域と同じピクチャサイズを持つものである。従って、ピクチャメモリ203内に空き領域が無い場合は、ピクチャメモリ内のどれか1つのピクチャ領域が完全に空き領域となるまでピクチャを削除すれば、新たに復号化されたピクチャを蓄積するための領域を確保することができる。削除するべきピクチャは、蓄積されているピクチャが持っている表示順情報が最も古いものから順に選択される。この例では、P1の表示順情報が最も古いことが分かる。しかし、P1を削除しただけでは、復号化対象ピクチャCのピクチャサイズに合わせて分割されたどのピクチャ領域も、1つ分の空き領域になっていない。表示順情報に従ってP1に次いでP2及びP3を削除した段階で、ピクチャメモリ203の先頭アドレスから2番目のピクチャ領域が1つ分の空き領域となる。削除ピクチャ領域判定部209では、上記のような処理によって削除すべきピクチャを判定し、判定結果をピクチャメモリ制御部206に出力する。ピクチャメモリ制御部206は、削除ピクチャ領域判定部209の判定結果に従って、ピクチャの削除を行う。図15(b)上部の例では上記処理によってP1、P2、P3が削除され、図15(b)下部のように新たに復号化されたピクチャCが生成された空き領域に蓄積されている。
図16(a)及び図16(b)は、新たに復号化されたピクチャが、図14のフローチャートの手順に従って、ピクチャメモリ203に蓄積される様子を示す図である。図16(a)及び図16(b)では、現在の復号化対象ピクチャC以降のピクチャサイズが、より小さいサイズに変更された場合を示している。図16(a)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP1、P2、P3がピクチャメモリに蓄積され、現在P4を復号化している状態(すなわち、C=P4)を示しているものとする。この例では、復号化対象ピクチャCであるP4からピクチャサイズが変更されており、図16(a)下部に示すように、P4のピクチャサイズでピクチャメモリ203のアドレスが分割される。この場合は、図16(a)下部のように、新たに復号化されたピクチャCは、空き領域内の1つのピクチャ領域にそのまま過不足なく蓄積することが可能である。そして、既にピクチャメモリ内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図16(b)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域がなかった場合の例を示している。この例では、図30のピクチャ列におけるP1、P2、P3、P4がピクチャメモリ203に蓄積され、現在P5を復号化している状態(すなわち、C=P5)である。この場合は、すでにピクチャデータが蓄積されている領域を削除して、新たに復号化されたピクチャCを蓄積するための領域をピクチャメモリ203に確保する必要がある。本実施の形態では、復号化を行うピクチャCは必ずピクチャメモリを分割した領域であるピクチャ領域と同じピクチャサイズを持つ。従って、ピクチャメモリ203内に空き領域が無い場合は、ピクチャメモリ内のどれか1つのピクチャ領域が完全に空き領域となるまでピクチャを削除すれば、新たに復号化されたピクチャを蓄積するための領域を確保することができる。削除するべきピクチャは、蓄積されているピクチャが持っている表示順情報が最も古いものから順に選択される。この例では、P1の表示順情報が最も古いことが分かる。そしてP1を削除することにより、1つ分のピクチャ領域が空き領域になる。削除ピクチャ領域判定部209では、上記のような処理によって削除すべきピクチャを判定し、判定結果をピクチャメモリ制御部206に出力する。ピクチャメモリ制御部206は、削除ピクチャ領域判定部209の判定結果に従って、ピクチャの削除を行う。図16(b)上部の例では上記処理によってP1が削除され、図16(b)下部のように、新たに復号化されたピクチャCが、生成された空き領域に蓄積される。
なお、上記実施の形態では、ピクチャメモリ203からピクチャ領域を削除するときに、蓄積されているピクチャの持つ表示順情報が古いものから順に削除を行っていたが、表示順情報の代わりに、復号化された順番が古いピクチャから順に削除を行うとした場合も全く同様に扱うことが可能である。
以上の説明から分かるように、本実施の形態では復号化対象ピクチャCにおいてピクチャサイズが変更された場合でも、変更されなかった場合でも、全く同様の処理によってピクチャメモリ203の管理を実現することができるので、両者を区別する必要がない。つまり、符号化を行う際にピクチャサイズが変更された場合でも変更がされなかった場合でも、常に1領域分のみのピクチャ領域が完全に空き領域となるまで格納されているピクチャを削除するという単純な処理方法によって、表示されていない可能性のあるピクチャをできる限りピクチャメモリに残したまま、矛盾無くピクチャメモリの管理を行うことが可能となる。しかも、新たに分割されたピクチャ領域のそれぞれのサイズは、新たに復号化されるピクチャ(復号化対象ピクチャC以降のピクチャ)と同じサイズであるので、ピクチャサイズが大きいサイズに変更される場合であっても、小さいサイズに変更される場合であっても、それぞれのピクチャ領域中に使用されない無駄な領域が発生しない。このため、本実施の形態の画像復号化装置2000では、ピクチャメモリ203のメモリ領域を有効に活用することができている。併せて、どのピクチャサイズのピクチャも物理的に分割されることなくメモリ上に連続して蓄積することが可能となるため、メモリのアクセスが単純化され速度を低下させることなく復号化を行うことが可能となる。また、通常の画像符号化および復号化においては、ピクチャサイズが変更されても、ピクチャの参照関係(参照に使用するピクチャの枚数等)は変更せずに処理を行うような構成が多く使用される。よって、本実施の形態で説明したような方法によって、効率の良い処理方法による復号化を実現することが可能であると言える。
以上の説明から分かるように、本実施の形態では復号化対象ピクチャCにおいてピクチャサイズが変更された場合でも、変更されなかった場合でも、全く同様の処理によってピクチャメモリ203の管理を実現することができるので、両者を区別する必要がない。つまり、符号化を行う際にピクチャサイズが変更された場合でも変更がされなかった場合でも、常に1領域分のみのピクチャ領域が完全に空き領域となるまで格納されているピクチャを削除するという単純な処理方法によって、表示されていない可能性のあるピクチャをできる限りピクチャメモリに残したまま、矛盾無くピクチャメモリの管理を行うことが可能となる。しかも、新たに分割されたピクチャ領域のそれぞれのサイズは、新たに復号化されるピクチャ(復号化対象ピクチャC以降のピクチャ)と同じサイズであるので、ピクチャサイズが大きいサイズに変更される場合であっても、小さいサイズに変更される場合であっても、それぞれのピクチャ領域中に使用されない無駄な領域が発生しない。このため、本実施の形態の画像復号化装置2000では、ピクチャメモリ203のメモリ領域を有効に活用することができている。併せて、どのピクチャサイズのピクチャも物理的に分割されることなくメモリ上に連続して蓄積することが可能となるため、メモリのアクセスが単純化され速度を低下させることなく復号化を行うことが可能となる。また、通常の画像符号化および復号化においては、ピクチャサイズが変更されても、ピクチャの参照関係(参照に使用するピクチャの枚数等)は変更せずに処理を行うような構成が多く使用される。よって、本実施の形態で説明したような方法によって、効率の良い処理方法による復号化を実現することが可能であると言える。
ただし、本実施の形態では、空き領域の先頭からピクチャデータを蓄積するのではなく、空き領域の中のピクチャ領域の先頭からピクチャデータを蓄積するので、図15(b)に示したように、復号化対象ピクチャCを1枚分蓄積する以上の領域を削除してしまう可能性がある。このため、新たに復号化されたピクチャCを蓄積するために、1つ分のピクチャ領域が空き領域になるまで表示順で古いものから順にピクチャを削除していくと、特に、表示順情報の古いピクチャが、ピクチャメモリ203内の連続した領域に表示順情報の順で蓄積されていない場合には、表示待ち状態にあるピクチャまで削除されてしまう可能性があることは否定できない。
なお、上記実施の形態3では、表示順情報の古いピクチャから順に削除し、1つ分のピクチャ領域が連続する空き領域になったとき、そのピクチャ領域に新たに復号化されたピクチャCを蓄積した。しかし、本発明はこれに限定されず、これとは異なる方法で、復号化対象ピクチャCを蓄積してもよい。すなわち、ピクチャの表示順情報にかかわらず、ピクチャメモリ203の先頭の1つのピクチャ領域が連続した空き領域になるまで、すでに蓄積されているピクチャを先頭アドレスから順に削除する。先頭の1つのピクチャ領域が連続した空き領域になると、そのピクチャ領域に、新たに復号化されたピクチャCを蓄積する。次に復号化されたピクチャCを蓄積する場合には、ピクチャメモリ203の先頭から2つ目にあるピクチャ領域が連続した空き領域になるまで、最後に削除されたピクチャの次のアドレスからアドレスの順にピクチャを削除する。図17は、図13に示した画像復号化装置2000における他の復号化処理の手順を示すフローチャートである。
図17において、ステップS2601〜ステップS2603の処理は、図14に示したステップS2301〜ステップS2303の処理と同じである。ここでの処理により、復号化対象ピクチャにおいてピクチャサイズが変更されると、サイズ変更後のピクチャサイズでピクチャメモリ203のアドレス空間が分割され、分割後のピクチャ領域を単位としてピクチャメモリ203が管理される。
次いで、削除ピクチャ領域判定部209はピクチャメモリ203内の空き領域を調べ、新たに復号化されたピクチャを蓄積するためのピクチャ領域を含む十分な空き領域があれば、新たに復号化されたピクチャを、そのまま空きのピクチャ領域に蓄積する(S2606)。新たに復号化されたピクチャを蓄積するためのピクチャ領域が、1つも空き領域として存在しなければ(S2604)、削除ピクチャ領域判定部209は、ピクチャメモリ203の先頭から順に、復号化されたピクチャが最後に蓄積されたピクチャ領域の次のピクチャ領域を空き領域にし(S2605)、空き領域になったピクチャ領域に新たな復号化ピクチャを蓄積する(S2606)。図18は、図17に示したステップS2605における処理のより詳細な手順を示すフローチャートである。より具体的には、ピクチャメモリ制御部206は、ピクチャメモリ203に新たなピクチャを蓄積するための十分な空き領域がなくなったときにだけ使用される、ピクチャメモリ203内の特定のアドレス位置を示すポインタを設けておく。特定のアドレス位置とは、例えば、各ピクチャ領域の先頭アドレスである。また、ポインタの初期値を「0」とし、ポインタ=0は、ピクチャメモリ203の先頭にあるピクチャ領域の先頭アドレスを示しているものとする。また、ポインタ=(n−1)は、ピクチャメモリ203の先頭からn番目のピクチャ領域の先頭アドレスを示している(ただし、nは自然数)。
削除ピクチャ領域判定部209は、新たに復号化されたピクチャを蓄積するためのピクチャ領域が、1つも空き領域として存在しないと判断した場合(S2604)、ピクチャメモリ制御部206に、ポインタで示されるピクチャ領域内のピクチャをアドレスの順に削除させる(S2501〜S2503)。例えば、ポインタ=0のとき、ピクチャメモリ203の先頭にあるピクチャ領域が空き領域になるまでピクチャメモリ203内のピクチャをメモリの先頭から順に削除させる。ピクチャメモリ203の先頭にあるピクチャ領域が空き領域になると(S2502)、ピクチャメモリ制御部206は、ポインタを「1」インクリメントし(S2504)、ポインタに次のピクチャ領域の先頭アドレスをポイントさせる。ここで、ピクチャメモリ制御部206は、ポインタの値が全ピクチャ領域の数以上か否かを調べ、ポインタの値が全ピクチャ領域の数以上になると(S2505)、ポインタの値を「0」に戻し、ピクチャメモリ203内の先頭のピクチャ領域の先頭アドレスをポイントさせる。ポインタの値が全ピクチャ領域の数以上になった場合、ピクチャメモリ203内のすべてのピクチャ領域に、新たな復号化ピクチャが蓄積されたことを示している。
以上の処理により、ピクチャメモリ203内に新たな復号化ピクチャを蓄積するための空きのピクチャ領域がなくなった場合には、ピクチャメモリ203の先頭から順に、ピクチャ領域からピクチャデータが削除され、空き領域となったピクチャ領域に、新たな復号化ピクチャが蓄積されることになる。
図19(a)及び図19(b)は、新たに復号化されたピクチャが、図17及び図18のフローチャートの手順に従ってピクチャメモリ203に蓄積される様子を示す図である。図19(a)及び図19(b)では、現在の復号化対象ピクチャC以降のピクチャサイズが、より大きいサイズに変更された場合を示している。図19(a)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域があった場合の例を示している。この例では、図30のピクチャ列におけるP2、P4、P5、P6がピクチャメモリに蓄積され、現在P7を復号化している状態(すなわち、C=P7)を示しているものとする。この例では、復号化対象ピクチャCであるP7からピクチャサイズが変更されており、図19(a)下部に示すように、P7のピクチャサイズでピクチャメモリ203のアドレスが分割されている。この場合は、図19(a)上部の斜線部2示すようにピクチャメモリ203の先頭部分に十分な空き領域があるので、図19(a)下部のように、新たに復号化されたピクチャCを、そのまま空き領域に蓄積することが可能である。従って、既にピクチャメモリ内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図19(b)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域がなかった場合の例を示している。この例では、図30のピクチャ列におけるP1、P2、P3、P4、P5、P6がピクチャメモリ203に蓄積され、現在P7を復号化している状態(すなわち、C=P7)であることを示している。この場合は、ピクチャメモリ203に蓄積されているピクチャデータを持つ領域を削除して、新たに復号化されたピクチャCを蓄積するための領域を確保する必要がある。本実施の形態では、復号化を行うピクチャCは必ずピクチャメモリを分割した領域であるピクチャ領域と同じピクチャサイズを持つものである。従って、ピクチャメモリ203内に空き領域が無い場合は、ピクチャメモリ内のどれか1つのピクチャ領域が完全に空き領域となるまでピクチャを削除すれば、新たに復号化されたピクチャを蓄積するための領域を確保することができる。削除するべきピクチャは、ピクチャメモリ203の先頭からアドレスの順に選択される。この例では、P4、P1の順で削除した段階で、ピクチャメモリ203の先頭から1番目のピクチャ領域が1つ分の空き領域となる。削除ピクチャ領域判定部209では、上記のような処理によって削除すべきピクチャを判定し、判定結果をピクチャメモリ制御部206に出力する。ピクチャメモリ制御部206は、削除ピクチャ領域判定部209の判定結果に従って、ピクチャの削除を行う。図19(b)上部の例では上記処理によってP4、P1が削除され、図19(b)下部のように新たに復号化されたピクチャCが先頭のピクチャ領域に蓄積されている。なお、さらに次の復号化対象ピクチャCが復号化されると、ピクチャメモリ203内の状態が図19(b)下部に示された状態で、新たに復号化されたピクチャを蓄積しなければならなくなる。この場合、P2、P3が削除され、空き領域となった2番目のピクチャ領域に新たな復号化ピクチャが蓄積されることになる。
図20(a)及び図20(b)は、新たに復号化されたピクチャが、図17及び図18のフローチャートの手順に従って、ピクチャメモリ203に蓄積される様子を示す図である。図20(a)及び図20(b)では、現在の復号化対象ピクチャC以降のピクチャサイズが、より小さいサイズに変更された場合を示している。図20(a)は、新たに復号化されたピクチャCを蓄積するのに十分な空き領域がピクチャメモリ203内にあった場合の例を示している。この例では、図30のピクチャ列におけるP1、P2、P3がピクチャメモリに蓄積され、現在P4を復号化している状態(すなわち、C=P4)であることを示しているものとする。この例では、復号化対象ピクチャCであるP4以降からピクチャサイズが変更されており、図20(a)下部に示すように、復号化対象ピクチャC(P4)のピクチャサイズでピクチャメモリ203のアドレスが分割される。この場合は、図20(a)下部のように、新たに復号化されたピクチャCは、空き領域内の1つのピクチャ領域にそのまま過不足なく蓄積することが可能である。そして、既にピクチャメモリ内に蓄積されているピクチャデータを持つピクチャ領域の削除は行わない。
図20(b)は、ピクチャメモリ203内に新たに復号化されたピクチャCを蓄積するのに十分な空き領域がなかった場合の例を示している。この例では、図30のピクチャ列におけるP1、P2、P3、P4がピクチャメモリ203に蓄積され、現在P5を復号化している状態(すなわち、C=P5)であることを示している。この場合は、すでにピクチャデータが蓄積されている領域を削除して、新たに復号化されたピクチャCを蓄積するための領域をピクチャメモリ203に確保する必要がある。本実施の形態では、復号化を行うピクチャCは必ずピクチャメモリを分割して得られる領域であるピクチャ領域と同じピクチャサイズを持つ。従って、ピクチャメモリ203内に空き領域が無い場合は、ピクチャメモリ内のどれか1つのピクチャ領域が完全に空き領域となるまでピクチャを削除すれば、新たに復号化されたピクチャを蓄積するための領域を確保することができる。削除するべきピクチャは、ピクチャメモリ203の先頭から、ピクチャデータが格納されているアドレスの順に選択される。この例では、P3のアドレスが最も先頭であることが分かる。そしてP3を削除することにより、ピクチャメモリ203の先頭の1つ分のピクチャ領域が空き領域になる。削除ピクチャ領域判定部209では、上記のような処理によって削除すべきピクチャを判定し、判定結果をピクチャメモリ制御部206に出力する。ピクチャメモリ制御部206は、削除ピクチャ領域判定部209の判定結果に従って、ピクチャの削除を行う。図20(b)上部の例では上記処理によってP3が削除され、図20(b)下部のように、新たに復号化されたピクチャCが、ピクチャメモリ203の先頭のピクチャ領域に蓄積される。この状態で、さらに次の復号化対象ピクチャCが復号化されたときには、図20(b)下部の状態からP2が削除され、ピクチャメモリ203の先頭から2番目のピクチャ領域に、新たに復号化されたピクチャが格納される。
なお、図17〜図20(b)の図面を用いて説明した例では、ピクチャメモリ203内に、新たに復号化されたピクチャを蓄積するための十分な空き領域があった場合には、空き領域となっている1つのピクチャ領域内に、新たに復号化されたピクチャを蓄積するとしたが、本発明はこれに限定されない。例えば、ピクチャメモリ203内に、十分な空き領域があった場合でも、ピクチャメモリ203の先頭からアドレスの順にピクチャ領域を選択し、選択されたピクチャ領域内に蓄積されているピクチャデータを、選択されたピクチャ領域が連続する空き領域となるまでピクチャ単位で順次削除するとしてもよい。そしてその結果、空き領域となったピクチャ領域に、新たに復号化されたピクチャを蓄積する。すなわち、図20(a)上部に示したように、復号化対象ピクチャCを蓄積するための十分な空き領域があった場合でも、ピクチャメモリ203の先頭に蓄積されているピクチャP1を削除して、空き領域となったピクチャメモリ203の先頭のピクチャ領域に復号化対象ピクチャCを蓄積するとしてもよい。このようにすれば、ピクチャメモリ203内に、新たに復号化されたピクチャを蓄積するための十分な空き領域があった場合も、なかった場合も、同様に、ピクチャメモリ203の先頭からピクチャ領域をアドレスの順に選択して、選択されたピクチャ領域に、新たに復号化されたピクチャを蓄積していくことができるので、判断による分岐が少ない分、削除ピクチャ領域判定部209によるピクチャ領域の確保に要する処理負荷を低減することができる。
以上の説明から分かるように、本実施の形態では符号化を行う際にピクチャサイズが変更された場合でも変更がされなかった場合でも、常に1領域分のみのピクチャ領域が完全に空き領域となるまで格納されているピクチャを削除するという単純な処理方法によって、表示されていない可能性のあるピクチャをできる限りピクチャメモリに残したまま、矛盾無くピクチャメモリの管理を行うことが可能となる。しかも、新たに分割されたピクチャ領域のそれぞれのサイズは、新たに復号化されるピクチャ(復号化対象ピクチャC以降のピクチャ)と同じサイズであるので、ピクチャサイズが大きいサイズに変更される場合であっても、小さいサイズに変更される場合であっても、それぞれのピクチャ領域中に使用されない無駄な領域が発生しない。このため、本実施の形態の画像復号化装置2000では、ピクチャメモリ203のメモリ領域を有効に活用することができている。併せて、どのピクチャサイズのピクチャも物理的に分割されることなくメモリ上に連続して蓄積することが可能となるため、メモリのアクセスが単純化され速度を低下させることなく復号化を行うことが可能となる。また、通常の画像符号化および復号化においては、ピクチャサイズが変更されても、ピクチャの参照関係(参照に使用するピクチャの枚数等)は変更せずに処理を行うような構成が多く使用される。よって、本実施の形態で説明したような方法によって、効率の良い処理方法による復号化を実現することが可能であると言える。
ただし、本実施の形態では、ピクチャメモリの先頭から順に表示順を無視して空き領域が確保できるまでピクチャを削除していくため、特に、表示順情報の新しいピクチャが、ピクチャメモリ内の先頭に近い位置に格納されている場合には、表示待ち状態にあるピクチャまで削除されてしまう可能性があることは否定できない。
なお、上記実施の形態3では、ピクチャメモリ内のどれか1つのピクチャ領域が完全に空き領域となるまで1つまたは複数のピクチャを削除する必要があるため、まだ表示されていないピクチャまで削除されてしまう可能性がある。そこで、ストリーム中に含まれる全てのピクチャを問題なく表示することができるかどうかを示すフラグとしてcnf_flagを用いても良い。例えば、値が1の場合は問題なく全てのピクチャを表示することができることを示し、値が0の場合はまだ表示されていないピクチャが、本実施の形態の処理によって既にデータを失ってしまったため表示することができなくなる可能性があることを示す。このように、cnf_flag を符号列に記述しておくことにより、この信号の値を調べることにより本実施の形態の処理を適用するかどうかを判断することができる。例えば、cnf_flag が0の場合には、本実施の形態の処理を適用すると表示できないピクチャが発生してしまう可能性があることが分かるので、替わりに従来どおりピクチャ単位でピクチャメモリの管理を行う方法に切り替えることができる。これにより、メモリ領域が細分化されてしまう恐れがあるが、全てのピクチャを問題なく表示することが可能となる。
なお、上記実施の形態3では、ピクチャメモリ内のどれか1つのピクチャ領域が完全に空き領域となるまで1つまたは複数のピクチャを削除する必要があるため、まだ表示されていないピクチャまで削除されてしまう可能性がある。そこで、ストリーム中に含まれる全てのピクチャを問題なく表示することができるかどうかを示すフラグとしてcnf_flagを用いても良い。例えば、値が1の場合は問題なく全てのピクチャを表示することができることを示し、値が0の場合はまだ表示されていないピクチャが、本実施の形態の処理によって既にデータを失ってしまったため表示することができなくなる可能性があることを示す。このように、cnf_flag を符号列に記述しておくことにより、この信号の値を調べることにより本実施の形態の処理を適用するかどうかを判断することができる。例えば、cnf_flag が0の場合には、本実施の形態の処理を適用すると表示できないピクチャが発生してしまう可能性があることが分かるので、替わりに従来どおりピクチャ単位でピクチャメモリの管理を行う方法に切り替えることができる。これにより、メモリ領域が細分化されてしまう恐れがあるが、全てのピクチャを問題なく表示することが可能となる。
(実施の形態4)
本発明の実施の形態4における動画像の符号化方法について図21に示したブロック図を用いて説明する。図21は、本実施の形態4の画像符号化装置2700の構成を示すブロック図である。符号化処理の構成は図28を用いて説明した従来の方法とほぼ同様である。従来の方法と異なる点は、ピクチャサイズ変更判定部110が追加された点である。従来の技術と全く同様の処理についてはここでは説明を省略する。図22は、本実施の形態4の画像符号化装置2700により生成される符号列のデータ構造を示す図である。
本発明の実施の形態4における動画像の符号化方法について図21に示したブロック図を用いて説明する。図21は、本実施の形態4の画像符号化装置2700の構成を示すブロック図である。符号化処理の構成は図28を用いて説明した従来の方法とほぼ同様である。従来の方法と異なる点は、ピクチャサイズ変更判定部110が追加された点である。従来の技術と全く同様の処理についてはここでは説明を省略する。図22は、本実施の形態4の画像符号化装置2700により生成される符号列のデータ構造を示す図である。
符号化対象のピクチャがIDRピクチャもしくはそれに代わるピクチャサイズの変更を可能とするピクチャであった場合、ピクチャサイズ変更判定部110では、符号化対象のピクチャのピクチャサイズとそれ以前に符号化されたピクチャのピクチャサイズとを比較し、ピクチャサイズの変更がなされたかどうかを判定する。
ピクチャメモリ制御部109では、ピクチャサイズ変更判定部110から入力された判定結果が、ピクチャサイズが変更されなかったことを示すものであった場合は、通常の符号化と同様の方法を用いて符号化を行う。一方、前記判定結果がピクチャサイズが変更されたことを示すものであった場合は、復号化におけるピクチャメモリのリセット方法としてピクチャメモリ内の全てのピクチャを参照可能もしくは参照不可に関わらず削除することを示す信号を符号列生成部103に出力する。符号列生成部103では、図22における符号列のreset_flag を1、つまり、ピクチャメモリ内の全てのピクチャを(参照可能もしくは参照不可に関わらず)削除することを示すようにフラグの値を設定して符号化する。
ピクチャメモリ制御部109では、ピクチャサイズ変更判定部110から入力された判定結果が、ピクチャサイズが変更されなかったことを示すものであった場合は、通常の符号化と同様の方法を用いて符号化を行う。一方、前記判定結果がピクチャサイズが変更されたことを示すものであった場合は、復号化におけるピクチャメモリのリセット方法としてピクチャメモリ内の全てのピクチャを参照可能もしくは参照不可に関わらず削除することを示す信号を符号列生成部103に出力する。符号列生成部103では、図22における符号列のreset_flag を1、つまり、ピクチャメモリ内の全てのピクチャを(参照可能もしくは参照不可に関わらず)削除することを示すようにフラグの値を設定して符号化する。
一方、上で述べたような符号化方法によって符号化された符号列の復号化は、図29の従来の方法の説明で用いたブロック図と全く同様の構成を用いて行うことが可能である。従来の技術と全く同様の処理についてはここでは説明を省略する。
符号列中のスライスヘッダには図22にあるようにreset_flag が符号化されている。符号列解析部201では前記reset_flag の値を解析し、解析結果の情報をピクチャメモリ制御部206に出力する。上で述べたような符号化方法によって生成された符号列では、ピクチャサイズが変更された場合は常にreset_flag が1、つまり、ピクチャメモリ内の全てのピクチャを参照可能もしくは参照不可に関わらず削除することを指示する。これにより、復号化を行う際は、従来の方法と全く同様にピクチャサイズが変更されたかどうかを意識することなく、reset_flag の値に従ってピクチャメモリのリセットを行うことが可能となる。ピクチャサイズが変更されていた場合は、前記reset_flag の指示によってピクチャメモリの全領域が空き状態になるため、従来どおりにピクチャサイズ変更後のピクチャを復号化しピクチャメモリに復号化したピクチャを蓄積しても、ピクチャメモリ内に異なるピクチャサイズのピクチャが混在することは無く、また復号化したピクチャを蓄積する位置も任意の領域を使用することが可能となる。
符号列中のスライスヘッダには図22にあるようにreset_flag が符号化されている。符号列解析部201では前記reset_flag の値を解析し、解析結果の情報をピクチャメモリ制御部206に出力する。上で述べたような符号化方法によって生成された符号列では、ピクチャサイズが変更された場合は常にreset_flag が1、つまり、ピクチャメモリ内の全てのピクチャを参照可能もしくは参照不可に関わらず削除することを指示する。これにより、復号化を行う際は、従来の方法と全く同様にピクチャサイズが変更されたかどうかを意識することなく、reset_flag の値に従ってピクチャメモリのリセットを行うことが可能となる。ピクチャサイズが変更されていた場合は、前記reset_flag の指示によってピクチャメモリの全領域が空き状態になるため、従来どおりにピクチャサイズ変更後のピクチャを復号化しピクチャメモリに復号化したピクチャを蓄積しても、ピクチャメモリ内に異なるピクチャサイズのピクチャが混在することは無く、また復号化したピクチャを蓄積する位置も任意の領域を使用することが可能となる。
以上、本実施の形態で説明したように、符号化を行う際にピクチャサイズが変更された場合はピクチャメモリ内の全てのピクチャを削除することを示す値を持ったフラグを符号化することにより、復号化側では従来の方法と全く同様の処理を行うことにより矛盾無くピクチャメモリの管理を行うことが可能である。
(実施の形態5)
さらに、上記各実施の形態1〜4で示した動画像の符号化方法および動画像復号化方法の構成を実現するためのプログラムを、フレキシブルディスク等の記録媒体に記録するようにすることにより、上記各実施の形態1〜5で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
さらに、上記各実施の形態1〜4で示した動画像の符号化方法および動画像復号化方法の構成を実現するためのプログラムを、フレキシブルディスク等の記録媒体に記録するようにすることにより、上記各実施の形態1〜5で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
図23は、上記実施の形態1から実施の形態4の動画像符号化方法および動画像復号化方法をコンピュータシステムにより実現するためのプログラムを格納するための記録媒体についての説明図である。
図23(b)は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図23(a)は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムとしての動画像符号化方法および動画像復号化方法が記録されている。
図23(b)は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図23(a)は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムとしての動画像符号化方法および動画像復号化方法が記録されている。
また、図23(c)は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムとしての動画像符号化方法および動画像復号化方法を、フレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内のプログラムにより上記動画像符号化方法および動画像復号化方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、CD−ROM、メモリカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。
(実施の形態6)
さらにここで、上記実施の形態1〜5で示した動画像の符号化方法や動画像の復号化方法の応用例とそれを用いたシステムを説明する。
さらにここで、上記実施の形態1〜5で示した動画像の符号化方法や動画像の復号化方法の応用例とそれを用いたシステムを説明する。
図24は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
しかし、コンテンツ供給システムex100は図24のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband-Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband-Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
また、ストリーミングサーバex103は、カメラex113から基地局ex109、電話網ex104を通じて接続されており、カメラex113を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラex116で撮影した動画データはコンピュータex111を介してストリーミングサーバex103に送信されてもよい。カメラex116はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex116で行ってもコンピュータex111で行ってもどちらでもよい。また、符号化処理はコンピュータex111やカメラex116が有するLSIex117において処理することになる。なお、動画像の符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な記録媒体である何らかの蓄積メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込んでもよい。さらに、カメラ付きの携帯電話ex115で動画データを送信してもよい。このときの動画データは携帯電話ex115が有するLSIで符号化処理されたデータである。
このコンテンツ供給システムex100では、ユーザがカメラex113、カメラex116等で撮影しているコンテンツ(例えば、音楽ライブを撮影した映像等)を上記実施の形態1〜5同様に符号化処理してストリーミングサーバex103に送信する一方で、ストリーミングサーバex103は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114等がある。このようにすることでコンテンツ供給システムex100は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。
このシステムを構成する各機器の符号化、復号化には上記各実施の形態1〜5で示した画像符号化装置あるいは画像復号化装置を用いるようにすればよい。
その一例として携帯電話について説明する。
その一例として携帯電話について説明する。
図25は、上記実施の形態1〜5で説明した動画像の符号化方法と動画像の復号化方法を用いた携帯電話ex115を示す図である。携帯電話ex115は、基地局ex110との間で電波を送受信するためのアンテナex201、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex203、カメラ部ex203で撮影した映像、アンテナex201で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex202、操作キーex204群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex208、音声入力をするためのマイク等の音声入力部ex205、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex207、携帯電話ex115に記録メディアex207を装着可能とするためのスロット部ex206を有している。記録メディアex207はSDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(Electrically Erasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものである。
さらに、携帯電話ex115について図26を用いて説明する。携帯電話ex115は表示部ex202及び操作キーex204を備えた本体部の各部を統括的に制御するようになされた主制御部ex311に対して、電源回路部ex310、操作入力制御部ex304、画像符号化部ex312、カメラインターフェース部ex303、LCD(Liquid Crystal Display)制御部ex302、画像復号化部ex309、多重分離部ex308、記録再生部ex307、変復調回路部ex306及び音声処理部ex305が同期バスex313を介して互いに接続されている。
電源回路部ex310は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex115を動作可能な状態に起動する。
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声データに変換した後、これを音声出力部ex208を介して出力する。
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声データに変換した後、これを音声出力部ex208を介して出力する。
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex204の操作によって入力された電子メールのテキストデータは操作入力制御部ex304を介して主制御部ex311に送出される。主制御部ex311は、テキストデータを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して基地局ex110へ送信する。
データ通信モード時に画像データを送信する場合、カメラ部ex203で撮像された画像データをカメラインターフェース部ex303を介して画像符号化部ex312に供給する。また、画像データを送信しない場合には、カメラ部ex203で撮像した画像データをカメラインターフェース部ex303及びLCD制御部ex302を介して表示部ex202に直接表示することも可能である。
画像符号化部ex312は、本願発明で説明した画像符号化装置を備えた構成であり、カメラ部ex203から供給された画像データを上記実施の形態1〜5で示した画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex308に送出する。また、このとき同時に携帯電話機ex115は、カメラ部ex203で撮像中に音声入力部ex205で集音した音声を音声処理部ex305を介してディジタルの音声データとして多重分離部ex308に送出する。
多重分離部ex308は、画像符号化部ex312から供給された符号化画像データと音声処理部ex305から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex201を介して基地局ex110から受信した受信データを変復調回路部ex306でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex308に送出する。
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
次に、画像復号化部ex309は、本願発明で説明した画像復号化装置を備えた構成であり、画像データのビットストリームを上記実施の形態1〜5で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをLCD制御部ex302を介して表示部ex202に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex305は、音声データをアナログ音声データに変換した後、これを音声出力部ex208に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図27に示すようにディジタル放送用システムにも上記実施の形態1〜5の少なくとも画像符号化装置または画像復号化装置のいずれかを組み込むことができる。具体的には、放送局ex409では映像情報のビットストリームが電波を介して通信または放送衛星ex410に伝送される。これを受けた放送衛星ex410は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex406で受信し、テレビ(受信機)ex401またはセットトップボックス(STB)ex407などの装置によりビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex402に記録したビットストリームを読み取り、復号化する再生装置ex403にも上記実施の形態1〜5で示した画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex404に表示される。また、ケーブルテレビ用のケーブルex405または衛星/地上波放送のアンテナex406に接続されたセットトップボックスex407内に画像復号化装置を実装し、これをテレビのモニタex408で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に画像復号化装置を組み込んでも良い。また、アンテナex411を有する車ex412で衛星ex410からまたは基地局ex107等から信号を受信し、車ex412が有するカーナビゲーションex413等の表示装置に動画を再生することも可能である。
更に、画像信号を上記実施の形態1〜5で示した画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクex421に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダex420がある。更にSDカードex422に記録することもできる。レコーダex420が上記実施の形態1〜5で示した画像復号化装置を備えていれば、DVDディスクex421やSDカードex422に記録した画像信号を再生し、モニタex408で表示することができる。
なお、カーナビゲーションex413の構成は例えば図26に示す構成のうち、カメラ部ex203とカメラインターフェース部ex303、画像符号化部ex312を除いた構成が考えられ、同様なことがコンピュータex111やテレビ(受信機)ex401等でも考えられる。
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
このように、上記実施の形態1〜5で示した動画像の符号化方法あるいは動画像の復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態1〜5で説明した効果を得ることができる。
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
本発明に係る画像符号化装置は、通信機能を備えるパーソナルコンピュータ、PDA、ディジタル放送の放送局および携帯電話機などに備えられる画像符号化装置として有用である。
また、本発明に係る画像復号化装置は、通信機能を備えるパーソナルコンピュータ、PDA、ディジタル放送を受信するSTBおよび携帯電話機などに備えられる画像復号化装置として有用である。
また、本発明に係る画像復号化装置は、通信機能を備えるパーソナルコンピュータ、PDA、ディジタル放送を受信するSTBおよび携帯電話機などに備えられる画像復号化装置として有用である。
800 画像符号化装置
101 ピクチャメモリ
102 予測残差符号化部
103 符号列生成部
104 予測残差復号化部
105 ピクチャメモリ
106 動きベクトル検出部
107 動き補償符号化部
108 動きベクトル記憶部
109 ピクチャメモリ制御部
112 差分演算部
113 加算演算部
114 スイッチ
115 スイッチ
201 符号列解析部
202 予測残差復号化部
203 ピクチャメモリ
204 動き補償復号化部
205 動きベクトル記憶部
206 ピクチャメモリ制御部
207 ピクチャサイズ変更判定部
209 削除ピクチャ領域判定部
210 ピクチャメモリ分割方法指定部
210A アドレス分割部
211 加算演算部
212 スイッチ
801 ピクチャメモリ分割情報符号化部
1100 画像復号化装置
2000 画像復号化装置
101 ピクチャメモリ
102 予測残差符号化部
103 符号列生成部
104 予測残差復号化部
105 ピクチャメモリ
106 動きベクトル検出部
107 動き補償符号化部
108 動きベクトル記憶部
109 ピクチャメモリ制御部
112 差分演算部
113 加算演算部
114 スイッチ
115 スイッチ
201 符号列解析部
202 予測残差復号化部
203 ピクチャメモリ
204 動き補償復号化部
205 動きベクトル記憶部
206 ピクチャメモリ制御部
207 ピクチャサイズ変更判定部
209 削除ピクチャ領域判定部
210 ピクチャメモリ分割方法指定部
210A アドレス分割部
211 加算演算部
212 スイッチ
801 ピクチャメモリ分割情報符号化部
1100 画像復号化装置
2000 画像復号化装置
Claims (33)
- 異なるピクチャサイズの動画像ストリームを含んだ符号列を、復号化済みピクチャを参照しながら復号化する画像復号化装置であって、
復号化済みのピクチャを格納するための記憶領域を備えるピクチャメモリと、
前記ピクチャメモリの記憶領域を所定の大きさの区分領域に区分するメモリ区分手段と、
新たに復号化されたピクチャ1枚分の全データを、前記ピクチャメモリの1以上の前記区分領域からなる連続した記憶領域に連続して格納する格納手段と
を備えることを特徴とする画像復号化装置。 - 前記画像復号化装置は、さらに、
新たに復号化されたピクチャのサイズと、直前に復号化されたピクチャのサイズとを比較することによってピクチャのサイズが変更されているかどうかを判定するサイズ変更判定手段を備え、
前記メモリ区分手段は、前記新たに復号化されたピクチャのサイズが変更されていると判定された場合、前記区分領域の大きさが前記新たに復号化されたピクチャのサイズとなるよう、前記記憶領域を区分する
ことを特徴とする請求の範囲1記載の画像復号化装置。 - 前記格納手段は、少なくとも1つの前記区分領域が空き領域であるか否かを検出する第1の空き領域検出部を備え、
前記格納手段は、少なくとも1つの前記区分領域が空き領域として検出されると、検出された前記区分領域の1つからなる連続した記憶領域に前記新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲2記載の画像復号化装置。 - 前記格納手段は、前記ピクチャメモリ内にすでに格納されている復号化済みピクチャのうち、表示順が古いものから順に削除することによって、前記空き領域を生成する第1のピクチャ削除部を備え、
前記格納手段は、1つの前記区分領域も空き領域として検出されないとき、少なくとも1つの前記区分領域が空き領域として検出されるまで、前記第1のピクチャ削除部に前記復号化済みピクチャを削除させる
ことを特徴とする請求の範囲3記載の画像復号化装置。 - 前記格納手段は、さらに、前記ピクチャメモリ内にすでに格納されている前記復号化済みピクチャにつき、表示される前に削除されてしまった場合に、当該ピクチャを表示する際に表示できないと判定する表示可能判定部を備える
ことを特徴とする請求の範囲4記載の画像復号化装置。 - 前記格納手段は、前記ピクチャメモリの先頭から順に前記区分領域を選択する区分領域選択部を備え、
前記格納手段は、選択された前記区分領域からなる連続した記憶領域に、新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲2記載の画像復号化装置。 - 前記格納手段は、選択された前記区分領域が空き領域であるか否かを検出する第2の空き領域検出部と、
選択された前記区分領域が空き領域でない場合、前記区分領域に格納されている復号化済みピクチャを削除することによって選択された前記区分領域を空き領域にする第2のピクチャ削除部とを備え、
前記格納手段は、選択された前記区分領域からなる連続した記憶領域に、新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲6記載の画像復号化装置。 - 前記格納手段は、1つの前記区分領域も空き領域として検出されないとき、前記ピクチャメモリの先頭から順に前記区分領域を選択する区分領域選択部と、
選択された前記区分領域が空き領域であるか否かを検出する第2の空き領域検出部と、
選択された前記区分領域が空き領域でない場合、前記区分領域に格納されている復号化済みピクチャを削除することによって選択された前記区分領域を空き領域にする第2のピクチャ削除部とを備え、
前記格納手段は、選択された前記区分領域からなる連続した記憶領域に、新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲3記載の画像復号化装置。 - 前記画像復号化装置は、さらに、
前記符号列から、前記記憶領域の区分方法を示す区分情報を読み取る読み取り手段を備え、
前記メモリ区分手段は、読み取られた前記区分情報に従って前記記憶領域を区分する
ことを特徴とする請求の範囲1記載の画像復号化装置。 - 前記区分情報は、前記符号列に含まれる動画像ストリームのうちの最大のピクチャサイズを示し、
前記メモリ区分手段は、前記各区分領域の大きさが、前記区分情報に示されたピクチャサイズとなるよう前記記憶領域を区分する
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、前記記憶領域の大きさを前記最大のピクチャサイズで区分したときの区分領域の数を示し、
前記メモリ区分手段は、前記記憶領域を前記区分領域の数に区分する
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、前記符号列に含まれる動画像ストリームのうちの最小のピクチャサイズを示し、
前記メモリ区分手段は、前記各区分領域の大きさが、前記区分情報に示されたピクチャサイズとなるよう前記記憶領域を区分する
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、前記記憶領域の大きさを前記最小のピクチャサイズで区分したときの区分領域の数を示し、
前記メモリ区分手段は、前記記憶領域を前記区分領域の数に区分する
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、前記符号列に含まれる動画像ストリームのピクチャサイズの最大公約数を示し、
前記メモリ区分手段は、前記各区分領域の大きさが、前記区分情報に示されたピクチャサイズとなるよう前記記憶領域を区分する
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、少なくとも同一のマクロブロックは同一の前記区分領域内に格納されるように切り上げられている
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、各復号化済みピクチャの水平方向1列分の全てのマクロブロックが1つの前記区分領域に格納されるように切り上げられている
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記メモリ区分手段は、少なくとも同一のマクロブロックは同一の前記区分領域内に格納されるように、前記区分領域のサイズを切り上げる
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記メモリ区分手段は、各復号化済みピクチャの水平方向1列分の全てのマクロブロックが1つの前記区分領域に格納されるように、前記区分領域のサイズを切り上げる
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記区分情報は、さらに、前記ピクチャメモリ内にすでに格納されている前記復号化済みピクチャにつき、表示される前に削除されてしまう可能性があるか否かを示す情報を含む
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記格納手段は、前記ピクチャメモリ内の少なくとも1つの前記区分領域が空き領域であるか否かを検出する第1の空き領域検出部を備え、
前記格納手段は、前記新たに復号化されたピクチャ1枚分の全データを連続して格納することができる、1つ以上の前記区分領域からなる連続した記憶領域が空き領域として検出されると、検出された前記区分領域からなる連続した記憶領域に前記新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲9記載の画像復号化装置。 - 前記格納手段は、前記ピクチャメモリ内にすでに格納されている復号化済みピクチャのうち、表示順が古いものから順に削除することによって、前記空き領域を生成する第1のピクチャ削除部を備え、
前記格納手段は、前記新たに復号化されたピクチャ1枚分の全データを連続して格納するだけの区分領域が空き領域として検出されないとき、前記新たに復号化されたピクチャ1枚分の全データを連続して格納するだけの前記区分領域が空き領域として検出されるまで、前記第1のピクチャ削除部に前記復号化済みピクチャを削除させる
ことを特徴とする請求の範囲20記載の画像復号化装置。 - 符号化済みのピクチャを参照しながら、異なるピクチャサイズの動画像ストリームを符号化して符号列を生成する画像符号化装置であって、
生成される符号列に含まれる動画像ストリームのピクチャサイズを取得するピクチャサイズ取得手段と、
取得されたピクチャサイズに基づいて、画像復号化装置側のピクチャメモリの区分方法を示した区分情報を生成する区分情報生成手段と、
生成された前記区分情報を含む符号列を生成する符号化手段と
を備えることを特徴とする画像符号化装置。 - 前記区分情報生成手段は、取得されたピクチャサイズのうち、最大のピクチャサイズを示す前記区分情報を生成する
ことを特徴とする請求の範囲22記載の画像符号化装置。 - 前記区分情報生成手段は、取得されたピクチャサイズのうち、最小のピクチャサイズを示す前記区分情報を生成する
ことを特徴とする請求の範囲22記載の画像符号化装置。 - 復号化済みのピクチャをピクチャメモリに格納し、異なるピクチャサイズの動画像ストリームを含んだ符号列を、前記復号化済みピクチャを参照しながら復号化する画像復号化方法であって、
前記ピクチャメモリの記憶領域を所定の大きさの区分領域に区分するメモリ区分ステップと、
新たに復号化されたピクチャ1枚分の全データを、前記ピクチャメモリの1つ以上の前記区分領域からなる連続した記憶領域に連続して格納する格納ステップと
を含むことを特徴とする画像復号化方法。 - 前記画像復号化方法は、さらに、
新たに復号化されたピクチャのサイズと、直前に復号化されたピクチャのサイズとを比較することによってピクチャのサイズが変更されているかどうかを判定するサイズ変更判定ステップを含み、
前記メモリ区分ステップでは、前記新たに復号化されたピクチャのサイズが変更されていると判定された場合、前記区分領域の大きさが前記新たに復号化されたピクチャのサイズとなるよう、前記記憶領域を区分する
ことを特徴とする請求の範囲25記載の画像復号化方法。 - 前記格納ステップは、少なくとも1つの前記区分領域が空き領域であるか否かを検出する第1の空き領域検出ステップを含み、
前記格納ステップでは、少なくとも1つの前記区分領域が空き領域として検出されると、検出された前記区分領域の1つからなる連続した記憶領域に前記新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲26記載の画像復号化方法。 - 前記格納ステップは、前記ピクチャメモリ内にすでに格納されている復号化済みピクチャのうち、表示順が古いものから順に削除することによって、前記空き領域を生成する第1のピクチャ削除ステップを含み、
前記格納ステップでは、1つの前記区分領域も空き領域として検出されないとき、少なくとも1つの前記区分領域が空き領域として検出されるまで、前記第1のピクチャ削除ステップにおいて前記復号化済みピクチャを削除する
ことを特徴とする請求の範囲27記載の画像復号化方法。 - 前記格納ステップは、前記ピクチャメモリの先頭から順に前記区分領域を選択する区分領域選択ステップを含み、
前記格納ステップでは、選択された前記区分領域からなる連続した記憶領域に、新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲26記載の画像復号化方法。 - 前記格納ステップは、選択された前記区分領域が空き領域であるか否かを検出する第2の空き領域検出ステップと、
選択された前記区分領域が空き領域でない場合、前記区分領域に格納されている復号化済みピクチャを削除することによって選択された前記区分領域を空き領域にする第2のピクチャ削除ステップとを含み、
前記格納ステップでは、選択された前記区分領域からなる連続した記憶領域に、新たに復号化されたピクチャ1枚分の全データを連続して格納する
ことを特徴とする請求の範囲29記載の画像復号化方法。 - 符号化済みのピクチャを参照しながら、異なるピクチャサイズの動画像ストリームを符号化して符号列を生成する画像符号化方法であって、
生成される符号列に含まれる動画像ストリームのピクチャサイズを取得するピクチャサイズ取得ステップと、
取得されたピクチャサイズに基づいて、画像復号化装置側のピクチャメモリの区分方法を示した区分情報を生成する区分情報生成ステップと、
生成された前記区分情報を含む符号列を生成する符号化ステップと
を含むことを特徴とする画像符号化方法。 - 復号化済みのピクチャをピクチャメモリに格納し、異なるピクチャサイズの動画像ストリームを含んだ符号列を、前記復号化済みピクチャを参照しながら復号化する画像復号化装置のためのプログラムであって、コンピュータに
前記ピクチャメモリの記憶領域を所定の大きさの区分領域に区分するメモリ区分ステップと、
新たに復号化されたピクチャ1枚分の全データを、前記ピクチャメモリの1以上の前記区分領域からなる連続した記憶領域に連続して格納する格納ステップとを実行させるためのプログラム。 - 符号化済みのピクチャを参照しながら、異なるピクチャサイズの動画像ストリームを符号化して符号列を生成する画像符号化装置のためのプログラムであって、コンピュータに
生成される符号列に含まれる動画像ストリームのピクチャサイズを取得するピクチャサイズ取得ステップと、
取得されたピクチャサイズに基づいて、画像復号化装置側のピクチャメモリの区分方法を示した区分情報を生成する区分情報生成ステップと、
生成された前記区分情報を含む符号列を生成する符号化ステップとを実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004037369A JP2004274734A (ja) | 2003-02-19 | 2004-02-13 | 画像復号化装置、画像符号化装置及びその方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003040804 | 2003-02-19 | ||
JP2004037369A JP2004274734A (ja) | 2003-02-19 | 2004-02-13 | 画像復号化装置、画像符号化装置及びその方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004274734A true JP2004274734A (ja) | 2004-09-30 |
Family
ID=33134129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004037369A Pending JP2004274734A (ja) | 2003-02-19 | 2004-02-13 | 画像復号化装置、画像符号化装置及びその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004274734A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014011714A (ja) * | 2012-07-02 | 2014-01-20 | Ntt Docomo Inc | 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法及び動画像予測復号プログラム |
JP2016158282A (ja) * | 2016-04-12 | 2016-09-01 | 株式会社Nttドコモ | 動画像予測復号方法及び動画像予測復号装置 |
-
2004
- 2004-02-13 JP JP2004037369A patent/JP2004274734A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014011714A (ja) * | 2012-07-02 | 2014-01-20 | Ntt Docomo Inc | 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法及び動画像予測復号プログラム |
US10116956B2 (en) | 2012-07-02 | 2018-10-30 | Ntt Docomo, Inc. | Video predictive encoding device, video predictive encoding method, video predictive encoding program, video predictive decoding device, video predictive decoding method, and video predictive decoding program |
US10560711B2 (en) | 2012-07-02 | 2020-02-11 | Ntt Docomo, Inc. | VIDEO PREDICTIVE ENCODING DEVICE, VIDEO PREDICTIVE ENCODING Method, video predictive encoding program, video predictive decoding device, video predictive decoding method, and video predictive decoding program |
JP2016158282A (ja) * | 2016-04-12 | 2016-09-01 | 株式会社Nttドコモ | 動画像予測復号方法及び動画像予測復号装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5355807B2 (ja) | 符号化データ配信方法および配信システム | |
JP4226645B2 (ja) | 動画像符号化方法 | |
KR100980964B1 (ko) | 화상 부호화 방법 및 화상 복호화 방법 | |
JP4672751B2 (ja) | 動きベクトル復号化方法 | |
JP2004254327A (ja) | 画像符号化方法および画像復号化方法 | |
JP4405272B2 (ja) | 動画像復号化方法、動画像復号化装置及びプログラム | |
JP4230289B2 (ja) | 動画像符号化方法および動画像復号化方法 | |
JP2004242286A (ja) | 動画像符号化方法および動画像復号化方法 | |
JP2004274734A (ja) | 画像復号化装置、画像符号化装置及びその方法 | |
JP2004228617A (ja) | 動画像符号化装置および動画像復号化装置 | |
WO2004075562A1 (ja) | 画像復号化装置、画像符号化装置及びその方法 | |
JP2004194297A (ja) | 動画像の符号化方法および復号化方法 | |
JP2007049746A (ja) | 動画像の符号化方法および復号化方法 |