(57)【特許請求の範囲】
【請求項１】
ピクチャの表示順を示すＰＯＣであって、Ｈ．２６４のＰＯＣタイプ１により符号化されたＰＯＣを用いて、画像データを符号化する符号化装置であって、
ＩＤＲピクチャから数えた絶対フレーム数から、１ＰＯＣサイクル中の参照フレームの数を除数として除算し、当該算出結果の剰余値を算出する剰余値算出手段と、
前記剰余値算出手段によって算出された前記剰余値を符号に変換する剰余値符号変換手段と、
を備えることを特徴とする符号化装置。
【請求項２】
前記剰余値符号変換手段によって符号に変換された前記剰余値を付加した付加拡張情報を生成する付加拡張情報生成手段と、
前記付加拡張情報生成手段によって生成された前記付加拡張情報を復号化装置に送信する付加拡張情報送信手段と、
をさらに備えることを特徴とする請求項１に記載の符号化装置。
【請求項３】
ピクチャの表示順を示すＰＯＣであって、Ｈ．２６４のＰＯＣタイプ１により符号化されたＰＯＣを用いて、画像データを復号化する復号化装置であって、
ランダムアクセス復号を行う場合に、ランダム復号開始位置におけるピクチャに付与された剰余符号を復号して剰余値を抽出する剰余値抽出手段と、
前記剰余値抽出手段によって抽出された前記剰余値を用いて、前記ＰＯＣの復号処理の入力値を初期化する初期化手段と、
を備えることを特徴とする復号化装置。
【請求項４】
前記初期化手段は、ＩＤＲピクチャから数えたピクチャ数を、前記剰余値から減算した減算値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする請求項３に記載の復号化装置。
【請求項５】
前記初期化手段は、ランダムアクセス時に最初に入力されたピクチャがＢピクチャである場合には、前記減算値に１を加算した値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする請求項４に記載の復号化装置。
【請求項６】
ピクチャの表示順を示すＰＯＣであって、Ｈ．２６４のＰＯＣタイプ１により符号化されたＰＯＣを用いて、画像データを符号化する符号化方法であって、
ＩＤＲピクチャから数えた絶対フレーム数から、１ＰＯＣサイクル中の参照フレームの数を除数として除算し、当該算出結果の剰余値を算出する剰余値算出工程と、
前記剰余値算出工程によって算出された前記剰余値を符号に変換する剰余値符号変換工程と、
を含んだことを特徴とする符号化方法。
【請求項７】
前記剰余値符号変換工程によって符号に変換された前記剰余値を付加した付加拡張情報を生成する付加拡張情報生成工程と、
前記付加拡張情報生成工程によって生成された前記付加拡張情報を復号化装置に送信する付加拡張情報送信工程と、
をさらに含んだことを特徴とする請求項６に記載の符号化方法。
【請求項８】
ピクチャの表示順を示すＰＯＣであって、Ｈ．２６４のＰＯＣタイプ１により符号化されたＰＯＣを用いて、画像データを復号化する復号化方法であって、
ランダムアクセス復号を行う場合に、ランダム復号開始位置におけるピクチャに付与された剰余符号を復号して剰余値を抽出する剰余値抽出工程と、
前記剰余値抽出工程によって抽出された前記剰余値を用いて、前記ＰＯＣの復号処理の入力値を初期化する初期化工程と、
を含んだことを特徴とする復号化方法。
【請求項９】
前記初期化工程は、ＩＤＲピクチャから数えたピクチャ数を、前記剰余値から減算した減算値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする請求項８に記載の復号化方法。
【請求項１０】
前記初期化工程は、ランダムアクセス時に最初に入力されたピクチャがＢピクチャである場合には、前記減算値に１を加算した値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする請求項９に記載の復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ピクチャの表示順を示すＰＯＣを用いて、画像データを符号化または復号化する符号化装置、復号化装置、符号化方法および復号化方法に関する。
【背景技術】
【０００２】
近年、Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ勧告において、復号化装置側でのピクチャの表示順を表すＰＯＣ（Picture  Order  Count）が規定されている。例えば、このＰＯＣの符号化方法では、ＰＯＣタイプ０、ＰＯＣタイプ１、ＰＯＣタイプ２の３種類の方法が知られている。このうち、ＰＯＣタイプ１で符号化されたＰＯＣの復号処理は、Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ勧告の「８．２．１．２」において、図１２のように規定されている。
【０００３】
この復号化処理では、符号化ストリーム中のＩＤＲ（Instantaneous  decoding  refresh、瞬時復号更新）ピクチャ（ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅが５に等しいピクチャ）の復号時に規定にしたがって（図１２の「８−６」参照）、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを０で初期化し、以降、符号化ストリーム中から知り得る情報を用いて、ＰＯＣタイプ１のＰＯＣの復号を行う。
【０００４】
ところが、ランダムアクセス時（符号化ストリームを途中から復号するとき）は、ＩＤＲピクチャから復号できるとは限らないため、ＰＯＣタイプ１のＰＯＣの復号処理の入力値であるＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化することができず、ＰＯＣタイプ１のＰＯＣを上記処理にしたがって復号してもＰＯＣの値がピクチャの表示順と合致しない場合がある。
【０００５】
このため、ランダムアクセス時にＰＯＣタイプ１で符号化されたＰＯＣをピクチャの表示順と合致するように復号するためには、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを正しく初期化するために必要とする情報として、ＰＯＣの絶対値を復号可能とする情報を符号化装置側で符号化して送る技術が知られている（非特許文献１参照）。
【０００６】
このＦｒａｍｅＮｕｍＯｆｆｓｅｔを正しく初期化するために必要とする情報として、ＦｒａｍｅＮｕｍＯｆｆｓｅｔをＭａｘＦｒａｍｅＮｕｍで割った値を符号化して送ることが知られている。
【０００７】
【非特許文献１】“JVT-F050 POC Recovery in Random Access Point SEI Message“）」”、［online］、平成２０年２月２７日検索、インターネット＜URL: http://ftp3.itu.ch/av-arch/jvt-site/2002_12_Awaji/JVT-F050.doc＞
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上記したＦｒａｍｅＮｕｍＯｆｆｓｅｔを正しく初期化するために必要とする情報として、ＦｒａｍｅＮｕｍＯｆｆｓｅｔをＭａｘＦｒａｍｅＮｕｍで割った値を符号化して送る技術では、符号化に必要な情報量が多くなるという課題があった。
【０００９】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、符号化に必要な情報量を削減することを目的とする。
【課題を解決するための手段】
【００１０】
この装置は、ピクチャの表示順を示すＰＯＣを用いて、画像データを符号化する符号化装置であって、ＩＤＲピクチャから数えた絶対フレーム数から、１ＰＯＣサイクル中の参照フレームの数を除数として除算し、当該算出結果の剰余値を算出する剰余値算出手段と、前記剰余値算出手段によって算出された前記剰余値を符号に変換する剰余値符号変換手段と、を備えることを要件とする。
【発明の効果】
【００１１】
開示の装置は、復号化に必要な情報として、剰余の値をＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ
ＳＥＩに含めるので、ランダムアクセス時の復号化処理を正しく行いつつ、符号化に必要な情報量を削減するという効果を奏する。
【発明を実施するための最良の形態】
【００１２】
以下に添付図面を参照して、この発明に係る符号化装置、復号化装置、符号化方法および復号化方法の実施例を詳細に説明する。
【実施例１】
【００１３】
以下の実施例では、実施例１に係る符号化装置１０および復号化装置２０の構成および処理の流れを順に説明し、最後に実施例１による効果を説明する。
【００１４】
［符号化装置の構成］
最初に、図１〜図３を用いて、符号化装置１０の構成を説明する。図１は、実施例１に係る符号化装置１０の構成を示すブロック図である。図２は、剰余算出と剰余符号化の説明図である。図３は、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩとして付加される情報例を示す図である。
【００１５】
図１に示すように、この符号化装置１０は、ピクチャ符号部１１、ヘッダ生成部１２、ＳＥＩ生成部１３および符号化ストリーム出力部１４を備える。以下にこれらの各部の処理を説明する。
【００１６】
ピクチャ符号部１１は、Ｈ．２６４によるピクチャの符号化を行う。具体的には、ピクチャ符号部１１は、入力された原画情報を受信し、当該原画情報の符号化処理を行う。また、ピクチャ符号部１１は、ヘッダ生成部１２にヘッダ情報生成要求を通知する。
【００１７】
ヘッダ生成部１２は、Ｈ．２６４で規定されるヘッダ情報を生成する。具体的には、ヘッダ生成部１２は、ピクチャ符号部１１からヘッダ情報生成要求を受け付けると、ＰＯＣに関する情報を生成し、生成されたＰＯＣに関する情報を含んだヘッダ情報を生成する。
【００１８】
ＳＥＩ生成部１３は、ＰＯＣに関する情報を用いて、剰余値を計算し、当該剰余値の情報を含んだＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを生成する。具体的には、ＳＥＩ生成部１３は、Ｈ．２６４で規定される付加拡張情報であるＳＥＩを生成し、また、ランダム開始時に関する情報（後に説明する図３参照）であるＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩも生成する。
【００１９】
ＳＥＩ生成部１３は、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩ生成時には、ヘッダ生成部１２からＰＯＣに関する情報を受け取り、その情報を用いて、ＰＯＣタイプ１で符号化されたＰＯＣの値を復号する際に用いる剰余の値を示す「ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅ」を計算する。そして、ＳＥＩ生成部１３は、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを拡張してｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅ（剰余値）を付加する。
【００２０】
ここで、剰余算出と剰余符号化の処理について、図２を用いて具体的に説明する。同図に示すように、ＳＥＩ生成部１３は、ＩＤＲ（Instantaneous decoding refresh）ピクチャから数えた絶対フレーム数である（ａｂｓＦｒａｍｅＮｕｍ−１)から、予め設定された１ＰＯＣサイクル中の参照フレームの数を示すｎｕｍ＿ｒｅｆ＿ｆｒａｍｅｓ＿ｉｎ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｃｙｃｌｅを除数として除算し、その剰余値（ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅ）を算出する。
【００２１】
そして、ＳＥＩ生成部１３は、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩ符号化処理として、算出されたｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅ（剰余値）を符号に変換して符号化し、ｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅという８ビットの情報量（例えば、Ｇｏｌｏｍｂ符号化した場合、最大で１７ビットの情報量）を持つシンタックス要素として、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩに追加する。
【００２２】
つまり、後に説明する復号化装置２０の復号化処理において、ランダムアクセス時に、ＰＯＣタイプ１のＰＯＣを正しく算出できるようにするためには、ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅがＩＤＲピクチャから復号した場合の剰余の値と同じ値になるようにＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化してやればよい。
【００２３】
そのため、符号化装置１０では、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを生成する時点のｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を、ｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅという８ビットの情報量（例えば、Ｇｏｌｏｍｂ符号化した場合、最大で１７ビットの情報量）を持つシンタックス要素として、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩに追加して復号化装置２０に送る。
【００２４】
ここで、ＳＥＩ生成部１３が生成するＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩの例を図３を用いて説明する。同図に示すように、ＳＥＩ生成部１３は、ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅ（剰余値）の値を、ｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅという８ビットの情報量を持つシンタックス要素として、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩに追加する。
【００２５】
図３の例では、復号時において、ＰＯＣ１である場合に（図３の「if（pic_order_cnt_type==1）」）、ｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを用いて復号処理を行うことが表わされている。なお、図３の「Ｃ」(カテゴリー)列の「５」は、ＳＥＩを意味する。また、Ｄｅｓｃｒｉｐｔｏｒ（記述子）列のｕ（ｎ）は、ｎビットの符号無し整数のシンタックス要素であることを表し、ｕｅ（ｖ）は、符号無し整数指数Ｇｏｌｏｍｂ符号シンタックス要素であることを表す。
【００２６】
図１の説明に戻ると、符号化ストリーム出力部１４は、符号化ストリームを出力する。具体的には、符号化ストリーム出力部１４は、ピクチャ符号部１１によって符号化されたピクチャの情報に、ヘッダ生成部１２によって生成されたヘッダ情報と、ＳＥＩ生成部１３によって生成されたＳＥＩおよびＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩとを付加して、符号化ストリームを出力する。
【００２７】
［復号化装置の構成］
続いて、図４〜図７を用いて、復号化装置２０の構成を説明する。図４は、実施例１に係る復号化装置２０の構成を示すブロック図である。図５は、剰余の復号化を説明するための図である。図６は、剰余を用いたＰＯＣ復号化を説明するための図である。図７は、復号化処理について具体的に説明するための図である。
【００２８】
図４に示すように、この復号化装置２０は、ピクチャ復号部２１、ヘッダ解析部２２、ＳＥＩ解析部２３およびＰＯＣ復号部２４を備える。以下にこれらの各部の処理を説明する。
【００２９】
ピクチャ復号部２１は、Ｈ．２６４によるピクチャの復号化を行う。具体的には、ピクチャ復号部２１は、入力された符号化ストリームを受信し、当該符号化ストリームの復号化処理を行って、復号された画像情報を出力する。
【００３０】
ヘッダ解析部２２は、Ｈ．２６４で規定されるヘッダ情報を解析する。具体的には、ヘッダ解析部２２は、入力された符号化ストリームを受信すると、ヘッダ情報を解析し、ＰＯＣに関する情報を抽出する。そして、ヘッダ解析部２２は、ＰＯＣ復号部２４にＰＯＣに関する情報を通知する。
【００３１】
ＳＥＩ解析部２３は、Ｈ．２６４で規定される付加情報であるＳＥＩを解析する。具体的には、ＳＥＩ解析部２３は、図５に示すように、ランダムアクセス後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを復号し、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩからｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを抽出する。そして、ＳＥＩ解析部２３は、抽出されたｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅをＰＯＣ復号部２４に通知する。
【００３２】
ＰＯＣ復号部２４は、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ
ＳＥＩである場合には、ｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを用いて、ＰＯＣタイプ１のＰＯＣの復号処理の入力値であるＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化し、ＰＯＣタイプ１のＰＯＣの復号処理を行う。
【００３３】
ここで、ＰＯＣ復号部２４によるＦｒａｍｅＮｕｍＯｆｆｓｅｔ初期化処理を説明する前に、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩでない場合に行われる既存のＰＯＣタイプ１のＰＯＣ復号処理（つまり、ＦｒａｍｅＮｕｍＯｆｆｓｅｔ初期化処理を行った後の復号化処理）について説明する。ＰＯＣタイプ１のＰＯＣの復号処理では、ＦｒａｍｅＮｕｍＯｆｆｓｅｔがＩＤＲピクチャの復号時に０で初期化され、その後ｆｒａｍｅ＿ｎｕｍ＜ｐｒｅｖ＿ｆｒａｍｅ＿ｎｕｍ（ｆｒａｍｅ＿ｎｕｍの前回値）となる毎にＭａｘＦｒａｍｅＮｕｍの値が加算されていく（図１２に示すＰＯＣタイプ１のＰＯＣ復号処理の（８−６）に対応）。
【００３４】
ここでいうｆｒａｍｅ＿ｎｕｍとは、ＩＤＲから数えたピクチャ数の相対値であり、０≦ｆｒａｍｅ＿ｎｕｍ＜ＭａｘＦｒａｍｅＮｕｍ（ｆｒａｍｅ＿ｎｕｍの最大値)を満たし、ｆｒａｍｅ＿ｎｕｍがＭａｘＦｒａｍｅＮｕｍに等しくなると、再び０からカウントしていく値である。
【００３５】
次に、ａｂｓＦｒａｍｅＮｕｍは、ＦｒａｍｅＮｕｍＯｆｆｓｅｔと符号化ストリーム中に存在するｆｒａｍｅ＿ｎｕｍを用いて、ｎａｌ＿ｒｅｆ＿ｉｄｃが０で無い場合は、下記（１）式を用いて求まり、ｎａｌ＿ｒｅｆ＿ｉｄｃが０に等しいときは（つまり、Ｂピクチャの場合には）、規定により１を減算した計算式として、下記（２）式を用いて求められる（ＰＯＣタイプ１のＰＯＣ復号処理の（８−７）に対応）。
【００３６】
【数１】
0005056560.tif 000002
【００３７】
【数２】
0005056560.tif 000003
【００３８】
次に、ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅは、ａｂｓＦｒａｍｅＮｕｍと符号化ストリーム中に存在するｎｕｍ＿ｒｅｆ＿ｆｒａｍｅｓ＿ｉｎ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｃｙｃｌｅを用いて、下記（３）式に基づいて、求められる（図１２に示すＰＯＣタイプ１のＰＯＣ復号処理の(８−８)に対応）。
【００３９】
【数３】
0005056560.tif 000004
【００４０】
次に、ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値の数だけリストｏｆｆｓｅｔ＿ｆｏｒ＿ｒｅｆ＿ｆｒａｍｅ［ｉ］から値を参照して、最終的にＰＯＣの値を算出する（図１２に示すＰＯＣタイプ１のＰＯＣ復号処理の（８−１１）に対応）。
【００４１】
図４の説明に戻ってＰＯＣ復号部２４の具体的な処理を説明すると、ＰＯＣ復号部２４は、ヘッダ解析部２２からＰＯＣに関する情報を受信し、ＳＥＩ解析部２３からｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを受信する。そして、ＰＯＣ復号部２４は、ＰＯＣに関する情報からＰＯＣタイプ１であるか否か判定し、ＰＯＣ１である場合には、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩであるか判定する。
【００４２】
その結果、ＰＯＣ復号部２４は、ＰＯＣタイプ１であって、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩである場合には、ヘッダ解析部２２から受け取ったＰＯＣの復号に必要な情報と、ＳＥＩ解析部２３から受け取ったｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅとを用いて、以下のようなＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化し、ＰＯＣ復号化処理を行う。なお、ＰＯＣ復号部２４は、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩでない場合には、上記した既存のＰＯＣタイプ１のＰＯＣの復号処理を行う。
【００４３】
ここで、図６を用いて、ＰＯＣ復号部２４が行う剰余を用いたＰＯＣ復号化処理について詳しく説明する。同図に示すように、ＰＯＣ復号部２４は、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩである場合には、ＰＯＣタイプ１のＰＯＣの復号処理として、ｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを用いて、ＰＯＣタイプ１のＰＯＣの復号処理の入力値であるＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化する。
【００４４】
まず、ＦｒａｍｅＮｕｍＯｆｆｓｅｔとｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅとの関係は、（１）式および（３）式から、（４）式および（５）式のように導出される。そして、（４）式および（５）式より、（６）式となる。ただし、ｎａｌ＿ｒｅｆ＿ｉｄｃが０に等しい場合には（つまり、Ｂピクチャの場合には）、（１）式の代わりに（１）式が規定により１を減算した計算式である（２）式を用いて、（７）式を導出する。ここで、（５）式、（６）式、（７）式のＮは非負整数であり、上限値は、図１２の復号処理で用いられるTopFieldOrderCnt, BottomFieldOrderCnt, PicOrderCntMsbまたはFrameNumOffsetの値が-231以上かつ231-1以下の範囲の値となり得る値である。
【００４５】
【数４】
0005056560.tif 000005
【００４６】
【数５】
0005056560.tif 000006
【００４７】
【数６】
0005056560.tif 000007
【００４８】
【数７】
0005056560.tif 000008
【００４９】
つまり、ＰＯＣ復号部２４は、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩであって、ｎａｌ＿ｒｅｆ＿ｉｄｃが０で無い場合は、上記した（６）式でｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅにｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を用いて、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化する。
【００５０】
また、ＰＯＣ復号部２４は、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩであって、ｎａｌ＿ｒｅｆ＿ｉｄｃが０に等しい場合には、上記した（７）式でｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅにｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を用いて、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化する。その後、ＰＯＣ復号部２４は、ＰＯＣタイプ１のＰＯＣ復号処理を行って復号画情報を出力する。
【００５１】
つまり、ＰＯＣ復号部２４は、ランダムアクセス時に、ＰＯＣタイプ１のＰＯＣを正しく算出できるようにするために、ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅがＩＤＲピクチャから復号した場合のｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値と同じ値になるようにＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化している。
【００５２】
ここで、図７を用いて、復号化装置２０の復号化処理の例を説明する。図７では、ピクチャ「ア」がＩＤＲピクチャ、ピクチャ「イ」がランダムアクセス時に最初に復号化装置に入力されるピクチャ、ピクチャ「ウ」がＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩが付加されたピクチャ、ピクチャ「エ」がＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩの既存のシンタックス要素であるｒｅｃｏｖｅｒｙ＿ｆｒａｍｅ＿ｃｎｔによって表示開始可能であることが指定されたピクチャを表す。
【００５３】
まず、復号化装置２０は、ランダムアクセス時に復号化装置に最初に入力されるピクチャ「イ」からＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩが付加されているピクチャ「ウ」の間に存在するピクチャについては、ＰＯＣタイプ１のＰＯＣを正しく復号するための情報を持たないので、復号処理を行わない。
【００５４】
次に、復号化装置２０は、ピクチャ「ウ」を復号する際に、付加されているＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩの追加シンタックス要素であるｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを用いて、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化する。
【００５５】
次に、復号化装置２０は、初期化されたＦｒａｍｅＮｕｍＯｆｆｓｅｔを、既存のＰＯＣタイプ１のＰＯＣ復号処理の入力値として、ＰＯＣの復号処理を行う。以降は、ＦｒａｍｅＮｕｍＯｆｆｓｅｔが正しく初期化されたので既存のＰＯＣタイプ１の復号処理に従って、ＰＯＣの復号処理を行うことで、ＰＯＣをピクチャの表示順が正しくなる値として復号できる。これにより、表示が開始されるピクチャ「エ」以降のピクチャが正しい順番で表示される。
【００５６】
［符号化装置による処理］
次に、図８を用いて、実施例１に係る符号化装置１０による処理を説明する。図８は、実施例１に係る符号化装置１０の処理動作を示すフローチャートである。
【００５７】
同図に示すように、符号化装置１０は、原画情報の符号化処理を行った後（ステップＳ１０１）、ＰＯＣタイプ１であるかを判定し（ステップＳ１０２）、ＰＯＣタイプ１である場合には（ステップＳ１０２肯定）、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを生成するかを判定する（ステップＳ１０３）。
【００５８】
その結果、符号化装置１０は、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを生成する場合には（ステップＳ１０３肯定）、ＰＯＣに関する情報を用いて、ｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅを計算する（ステップＳ１０４）。
【００５９】
そして、符号化装置１０は、計算された値をＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩの拡張したシンタックス要素であるｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅに入れて（ステップＳ１０５）、復号化装置２０に符号化ストリームを出力する（ステップＳ１０６）。
【００６０】
また、符号化装置１０は、ＰＯＣタイプ１でない場合（ステップＳ１０２否定）、または、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを生成しない場合には（ステップＳ１０３否定）、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩを生成せずに、符号化ストリームを復号化装置２０に出力する（ステップＳ１０６）。ための図である。
【００６１】
［復号化装置による処理］
次に、図９を用いて、実施例１に係る復号化装置２０による処理を説明する。図９は、実施例１に係る復号化装置２０の処理動作を示すフローチャートである。
【００６２】
同図に示すように、復号化装置２０は、ピクチャの復号化を行った後（ステップＳ２０１）、ＰＯＣに関する情報からＰＯＣタイプ１であるか否か判定し（ステップＳ２０２）、ＰＯＣ１である場合には（ステップＳ２０２肯定）、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩであるか判定する（ステップＳ２０３）。
【００６３】
その結果、復号化装置２０は、ＰＯＣタイプ１であって、ランダムアクセス開始後の最初のＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩである場合には（ステップＳ２０３肯定）、ｎａｌ＿ｒｅｆ＿ｉｄｃが０であるか判定する（ステップＳ２０４）。その結果、復号化装置２０は、ｎａｌ＿ｒｅｆ＿ｉｄｃが０でない場合には（ステップＳ２０４肯定）、上記した（６）式でｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅにｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を用いて、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化する（ステップＳ２０５）。
【００６４】
また、復号化装置２０は、ｎａｌ＿ｒｅｆ＿ｉｄｃが０である場合には（ステップＳ２０４否定）、上記した（７）式でｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅにｉｎｉｔｉａｌＦｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を用いて、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化する（ステップＳ２０６）。その後、復号化装置２０は、ＰＯＣタイプ１のＰＯＣ復号処理を行って（ステップＳ２０６）、復号画情報を出力する（ステップＳ２０７）。
【００６５】
[実施例１の効果]
上述してきたように、符号化装置１０は、ＰＯＣタイプ１で符号化されたＰＯＣの値を復号する際に用いる剰余の値をあらかじめ符号化装置側で算出し、その値をＨ．２６４／ＭＰＥＧ４  ＡＶＣにおいてランダムアクセスを可能とするために用いる付加情報であるＲｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩの新規シンタックス要素として送るので、ランダムアクセス時の復号化処理を正しく行いつつ、符号化に必要な情報量を削減することが可能である。
【００６６】
つまり、ＰＯＣはＨ．２６４の復号では、絶対値は必要でなく、各ピクチャのＰＯＣの相対値のみが正しければ正しく復号できるので、符号化装置１０は、ランダムアクセス時にＰＯＣタイプ１のＰＯＣを、ＩＤＲピクチャから復号した場合と全く同じＰＯＣの値ではなく、復号化装置２０側でピクチャの表示順が正しくなる値として復号することを可能とするための情報であるｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩの新規シンタックス要素として符号化して復号化装置２０に送る。これにより、符号化装置１０が送信する符号化に必要な情報量を削減することが可能である。
【００６７】
また、復号化装置２０は、Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩのｆｒａｍｅＮｕｍＩｎＰｉｃＯｒｄｅｒＣｎｔＣｙｃｌｅの値を用いて、適切にＰＯＣ復号処理の初期化を行うことで、ランダムアクセス以降の復号ピクチャにおいて、各ピクチャのＰＯＣの相対値がＩＤＲから復号した場合と正確に同じ値となるようにすることが可能である。
【００６８】
また、実施例１によれば、復号化装置２０は、Ｂピクチャの場合には、規定により１を加算する計算式を用いて、ＦｒａｍｅＮｕｍＯｆｆｓｅｔを初期化するので、Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ勧告の規定対応したＦｒａｍｅＮｕｍＯｆｆｓｅｔの初期化を行うことが可能である。
【実施例２】
【００６９】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では実施例２として本発明に含まれる他の実施例を説明する。
【００７０】
（１）システム構成等
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、ＳＥＩ生成部１３を剰余値算出を行う剰余値算出部と剰余値を符号化する剰余値符号変換部とで分散してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７１】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７２】
（２）プログラム
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図１０を用いて、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図１０は、符号化プログラムを実行するコンピュータを示す図である。
【００７３】
同図に示すように、符号化装置としてのコンピュータ５００は、ＨＤＤ５１０、ＲＡＭ５２０、ＲＯＭ５３０およびＣＰＵ５４０をバス５５０で接続して構成される。
【００７４】
そして、ＲＯＭ５３０には、上記の実施例と同様の機能を発揮する符号化プログラム、つまり、図１０に示すように、剰余計算プログラム５３１および剰余符号化プログラム５３２が予め記憶されている。なお、プログラム５３１および５３２については、図１に示した符号化装置の各構成要素と同様、適宜統合または分散してもよい。
【００７５】
そして、ＣＰＵ５４０が、これらのプログラム５３１および５３２をＲＯＭ５３０から読み出して実行することで、図１０に示すように、各プログラム５３１および５３２は、剰余計算プロセス５４１および剰余符号化プロセス５４２として機能するようになる。プロセス５４１および５４２は、図１に示したＳＥＩ生成部１３に対応する。
【００７６】
続いて、図１１を用いて、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図１１は、復号化プログラムを実行するコンピュータを示す図である。
【００７７】
同図に示すように、復号化装置としてのコンピュータ６００は、ＨＤＤ６１０、ＲＡＭ６２０、ＲＯＭ６３０およびＣＰＵ６４０をバス６５０で接続して構成される。
【００７８】
そして、ＲＯＭ６３０には、上記の実施例と同様の機能を発揮する復号化プログラム、つまり、図１１に示すように、剰余値復号プログラム６３１およびＰＯＣ算出初期化プログラム６３２が予め記憶されている。なお、プログラム６３１および６３２については、図１に示した復号化装置の各構成要素と同様、適宜統合または分散してもよい。
【００７９】
そして、ＣＰＵ６４０が、これらのプログラム６３１および６３２をＲＯＭ６３０から読み出して実行することで、図１１に示すように、各プログラム６３１および６３２は、剰余値復号プロセス６４１およびＰＯＣ算出初期化プロセス６４２として機能するようになる。各プロセス６４１および６４２は、図４に示したＳＥＩ解析部２３およびＰＯＣ復号部２４にそれぞれ対応する。
【００８０】
以上の実施例１〜２を含む実施形態に関し、更に以下の付記を開示する。
【００８１】
（付記１）ピクチャの表示順を示すＰＯＣを用いて、画像データを符号化する符号化装置であって、
ＩＤＲピクチャから数えた絶対フレーム数から、１ＰＯＣサイクル中の参照フレームの数を除数として除算し、当該算出結果の剰余値を算出する剰余値算出手段と、
前記剰余値算出手段によって算出された前記剰余値を符号に変換する剰余値符号変換手段と、
を備えることを特徴とする符号化装置。
【００８２】
（付記２）前記剰余値符号変換手段によって符号に変換された前記剰余値を付加した付加拡張情報を生成する付加拡張情報生成手段と、
前記付加拡張情報生成手段によって生成された前記付加拡張情報を復号化装置に送信する付加拡張情報送信手段と、
をさらに備えることを特徴とする付記１に記載の符号化装置。
【００８３】
（付記３）ピクチャの表示順を示すＰＯＣを用いて、画像データを復号化する復号化装置であって、
ランダムアクセス復号を行う場合に、ランダム復号開始位置におけるピクチャに付与された剰余符号を復号して剰余値を抽出する剰余値抽出手段と、
前記剰余値抽出手段によって抽出された前記剰余値を用いて、前記ＰＯＣの復号処理の入力値を初期化する初期化手段と、
を備えることを特徴とする復号化装置。
【００８４】
（付記４）前記初期化手段は、ＩＤＲピクチャから数えたピクチャ数を、前記剰余値から減算した減算値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする付記３に記載の復号化装置。
【００８５】
（付記５）前記初期化手段は、ランダムアクセス時に最初に入力されたピクチャがＢピクチャである場合には、前記減算値に１を加算した値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする付記４に記載の復号化装置。
【００８６】
（付記６）ピクチャの表示順を示すＰＯＣを用いて、画像データを符号化する符号化方法であって、
ＩＤＲピクチャから数えた絶対フレーム数から、１ＰＯＣサイクル中の参照フレームの数を除数として除算し、当該算出結果の剰余値を算出する剰余値算出工程と、
前記剰余値算出工程によって算出された前記剰余値を符号に変換する剰余値符号変換工程と、
を含んだことを特徴とする符号化方法。
【００８７】
（付記７）前記剰余値符号変換工程によって符号に変換された前記剰余値を付加した付加拡張情報を生成する付加拡張情報生成工程と、
前記付加拡張情報生成工程によって生成された前記付加拡張情報を復号化装置に送信する付加拡張情報送信工程と、
をさらに含んだことを特徴とする付記６に記載の符号化方法。
【００８８】
（付記８）ピクチャの表示順を示すＰＯＣを用いて、画像データを復号化する復号化方法であって、
ランダムアクセス復号を行う場合に、ランダム復号開始位置におけるピクチャに付与された剰余符号を復号して剰余値を抽出する剰余値抽出工程と、
前記剰余値抽出工程によって抽出された前記剰余値を用いて、前記ＰＯＣの復号処理の入力値を初期化する初期化工程と、
を含んだことを特徴とする復号化方法。
【００８９】
（付記９）前記初期化工程は、ＩＤＲピクチャから数えたピクチャ数を、前記剰余値から減算した減算値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする付記８に記載の復号化方法。
【００９０】
（付記１０）前記初期化工程は、ランダムアクセス時に最初に入力されたピクチャがＢピクチャである場合には、前記減算値に１を加算した値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする付記９に記載の復号化方法。
【００９１】
（付記１１）ピクチャの表示順を示すＰＯＣを用いて、画像データを符号化する符号化方法をコンピュータに実行させる符号化プログラムであって、
ＩＤＲピクチャから数えた絶対フレーム数から、１ＰＯＣサイクル中の参照フレームの数を除数として除算し、当該算出結果の剰余値を算出する剰余値算出手順と、
前記剰余値算出手順によって算出された前記剰余値を符号に変換する剰余値符号変換手順と、
をコンピュータに実行させることを特徴とする符号化プログラム。
【００９２】
（付記１２）前記剰余値符号変換手順によって符号に変換された前記剰余値を付加した付加拡張情報を生成する付加拡張情報生成手順と、
前記付加拡張情報生成手順によって生成された前記付加拡張情報を復号化装置に送信する付加拡張情報送信手順と、
をさらにコンピュータに実行させることを特徴とする付記１１に記載の符号化プログラム。
【００９３】
（付記１３）ピクチャの表示順を示すＰＯＣを用いて、画像データを復号化する復号化方法をコンピュータに実行させる復号化プログラムであって、
ランダムアクセス復号を行う場合に、ランダム復号開始位置におけるピクチャに付与された剰余符号を復号して剰余値を抽出する剰余値抽出手順と、
前記剰余値抽出手順によって抽出された前記剰余値を用いて、前記ＰＯＣの復号処理の入力値を初期化する初期化手順と、
をコンピュータに実行させることを特徴とする復号化プログラム。
【００９４】
（付記１４）前記初期化手順は、ＩＤＲピクチャから数えたピクチャ数を、前記剰余値から減算した減算値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする付記１３に記載の復号化プログラム。
【００９５】
（付記１５）前記初期化手順は、ランダムアクセス時に最初に入力されたピクチャがＢピクチャである場合には、前記減算値に１を加算した値を用いて、前記ＰＯＣの復号処理の入力値を初期化することを特徴とする付記１４に記載の復号化プログラム。
【図面の簡単な説明】
【００９６】
【図１】実施例１に係る符号化装置の構成を示すブロック図である。
【図２】剰余算出と剰余符号化の説明図である。
【図３】Ｒｅｃｏｖｅｒｙ  Ｐｏｉｎｔ  ＳＥＩとして付加される情報例を示す図である。
【図４】実施例１に係る復号化装置の構成を示すブロック図である。
【図５】剰余の復号化を説明するための図である。
【図６】剰余を用いたＰＯＣ復号化を説明するための図である。
【図７】復号化処理について具体的に説明するための図である。
【図８】実施例１に係る符号化装置１０の処理動作を示すフローチャートである。
【図９】実施例１に係る復号化装置２０の処理動作を示すフローチャートである。
【図１０】符号化プログラムを実行するコンピュータを示す図である。
【図１１】復号化プログラムを実行するコンピュータを示す図である。
【図１２】Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ勧告による復号処理の規定を示す図である。
【符号の説明】
【００９７】
１０  符号化装置
１１  ピクチャ符号部
１２  ヘッダ生成部
１３  ＳＥＩ生成部
１４  符号化ストリーム出力部
２０  復号化装置
２１  ピクチャ復号部
２２  ヘッダ解析部
２３  ＳＥＩ解析部
２４  ＰＯＣ復号部 
【図１】
0005056560.tif 000009
【図２】
0005056560.tif 000010
【図３】
0005056560.tif 000011
【図４】
0005056560.tif 000012
【図５】
0005056560.tif 000013
【図６】
0005056560.tif 000014
【図７】
0005056560.tif 000015
【図８】
0005056560.tif 000016
【図９】
0005056560.tif 000017
【図１０】
0005056560.tif 000018
【図１１】
0005056560.tif 000019
【図１２】
0005056560.tif 000020