(57)【要約】【課題】Ｉピクチャがほとんど含まれない符号化ビットストリームに対しても、編集や特殊再生の際に必要とする処理量やメモリの増加を防ぐ。【解決手段】画像データ格納部１０７は、Ｉピクチャの間隔があらかじめ定められた閾値より大きい場合に、Ｉピクチャと異なるピクチャのデータを格納する。また、格納データ選択部１０６は、画像データ格納部１０７に格納するピクチャを選択する。そして、符号化データ中の任意の位置から再生する場合に、画像復号部１０２では、画像データ格納部１０７に格納したピクチャのデータを参照画像として、画像データを復号する。すなわち、特定の位置の再生画像を画像データ格納部１０７に格納し、この再生画像を参照画像として画像データの復号に用いることによって、Ｉピクチャがほとんど含まれない符号化ビットストリームに対しても、編集や特殊再生の際の処理量やメモリの増加を防ぐことができる。【選択図】図１
2006033151.tif 000002
【特許請求の範囲】
【請求項１】
複数のピクチャからなる画像データをイントラ符号化およびインター符号化で符号化した符号化データから画像データを再生する画像再生装置であって、
ピクチャをイントラ符号化のみで符号化したＩピクチャの間隔があらかじめ定められた閾値より大きい場合に、前記Ｉピクチャと異なるピクチャのデータを格納する画像データ格納手段と、
前記画像データ格納手段に格納するピクチャを選択する格納データ選択手段とを備え、
前記符号化データ中の任意の位置から再生する場合に、前記画像データ格納手段に格納したピクチャのデータを参照画像として、前記画像データを復号することを特徴とする画像再生装置。
【請求項２】
請求項１に記載の画像再生装置において、前記画像データ格納手段に格納するピクチャのデータは、符号化データから復号された画像データであることを特徴とする画像再生装置。
【請求項３】
請求項１に記載の画像再生装置において、前記画像データ格納手段に格納するピクチャのデータは、符号化データから復号された画像データを再符号化した、符号化データであることを特徴とする画像再生装置。
【請求項４】
請求項１〜３のいずれか１に記載の画像再生装置において、前記画像データ格納手段に格納するピクチャの間隔をあらかじめ定められた値とし、前記ピクチャの間隔毎にピクチャのデータを前記画像データ格納手段に格納し、前記画像データ格納手段に格納可能なメモリ空き容量領域が無くなると、前記あらかじめ定められたピクチャ間隔をより大きな値に変更することで、既にピクチャのデータを格納した領域のうち不要となった領域に新たなピクチャのデータを格納することを特徴とする画像再生装置。
【請求項５】
複数のピクチャからなる画像データをイントラ符号化およびインター符号化で符号化した符号化データを変換する画像変換装置であって、
ピクチャをイントラ符号化のみで符号化したＩピクチャの間隔があらかじめ定められた閾値より大きい場合に、前記閾値を超えた位置のインター符号化ピクチャをＩピクチャに再符号化し、前記画像データの一部を前記再符号化後のＩピクチャのデータに入れ替えることを特徴とする画像変換装置。
【請求項６】
請求項５に記載の画像変換装置において、前記Ｉピクチャに再符号化するための符号化方式は、可逆符号化であることを特徴とする画像変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はフレームあるいはフィールド間予測符号化された画像データの編集、特殊再生に適した画像再生装置または画像変換装置に関し、より詳細には先頭以外にＩ（イントラ）ピクチャを含まない、あるいはＩピクチャの間隔が大きい符号化ビットストリームの編集あるいは特殊再生に必要な信号処理の規模を削減する技術に関する。
【背景技術】
【０００２】
画像の符号化方式には、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、Ｈ．２６３、Ｈ．２６４等がある。これらの方式では、Ｉピクチャ（フレーム内予測符号化されたピクチャ）、Ｐピクチャ（片方向フレーム間予測符号化されたピクチャ）、Ｂピクチャ（双方向フレーム間予測符号化されたピクチャ）により、符号化ビットストリームが構成される。ここでは対象をフレームとしたが、フィールドとしても同じことが可能である。
【０００３】
これらの符号化ビットストリームの編集は、例えば特許文献１に記載されるように、ＧＯＰ（Group of Picture）単位で行ったり、ＧＯＰ未満の単位で編集する場合は編集開始位置に最も近いＩピクチャから順次画像を復号、再生し、編集開始位置の画像をＩピクチャに再符号化することによって行っている。図１２は符号化方式をＭＰＥＧ−２とした時の符号化ビットストリームの一例である。画像をＰ５の位置から切り出したい場合、ＧＯＰの先頭のＩピクチャから順次画像を復号し（Ｉ２→Ｂ０→Ｂ１→Ｐ５）、再生画像Ｐ５を再符号化してＩ５を得ることにより、所望の符号化ビットストリームを得る。
【０００４】
また特許文献２では図１３に示すように、符号化ビットストリームを全て一度復号してＩピクチャに再符号化したものを用意し、所望の位置の符号化ビットストリームをＩピクチャに入れ替えることにより（図１３ではＰ５をＩ５に置き換える）、符号化ビットストリームを得る。
【特許文献１】特開２００２−３００５２８号公報
【特許文献２】特開平８−２７９９８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
符号化ビットストリームの中には最初の一枚以外にＩピクチャを含まないものがある。例えばＴＶ電話の符号化ビットストリームでは、Ｉピクチャは最初の一枚のみで、その後はマクロブロック（ＭＢ）単位のイントラリフレッシュのみが行われることが多い。このような符号化ビットストリームを、ユーザが所望の位置で編集あるいは、早送り、巻き戻し等の特殊再生をするためには、常に最初のＩピクチャから復号、再生を開始し、所望の位置まで進めるといった処理が必要となる。従って、編集や特殊再生の度に前述の処理を行うため、対象とする符号化ビットストリームが、何分、何十分という長さの場合、処理量が膨大になってしまうという問題がある。Ｉピクチャが最初の一枚のみでなくても、Ｉピクチャの間隔が大きいと同じ問題が発生する。
【０００６】
この問題を解決する方法としては、全ての符号化ビットストリームを一度Ｉピクチャとして再符号化することが考えられるが（上記特許文献２）、ＩピクチャがＰあるいはＢピクチャよりデータ量が多く、また全てのピクチャに対して再符号化を行うため、膨大なメモリが必要となる。特に携帯端末等の場合は、搭載できるメモリに制約があるため、全てのピクチャをＩピクチャとして別途格納することは難しい。
【０００７】
本発明は、上述のような問題を解決するためになされたもので、Ｉピクチャがほとんど含まれない符号化ビットストリームに対しても、編集や特殊再生の際に必要とする処理量やメモリの増加を防ぐことのできる画像再生装置および変換装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１の技術手段は、複数のピクチャからなる画像データをイントラ符号化およびインター符号化で符号化した符号化データから画像データを再生する画像再生装置であって、ピクチャをイントラ符号化のみで符号化したＩピクチャの間隔があらかじめ定められた閾値より大きい場合に、Ｉピクチャと異なるピクチャのデータを格納する画像データ格納手段と、画像データ格納手段に格納するピクチャを選択する格納データ選択手段とを備え、符号化データ中の任意の位置から再生する場合に、画像データ格納手段に格納したピクチャのデータを参照画像として、画像データを復号することを特徴としたものである。
【０００９】
第２の技術手段は、第１の技術手段において、画像データ格納手段に格納するピクチャのデータは、符号化データから復号された画像データであることを特徴としたものである。
【００１０】
第３の技術手段は、第１の技術手段において、画像データ格納手段に格納するピクチャのデータは、符号化データから復号された画像データを再符号化した、符号化データであることを特徴としたものである。
【００１１】
第４の技術手段は、第１〜第３のいずれか１の技術手段において、画像データ格納手段に格納するピクチャの間隔をあらかじめ定められた値とし、ピクチャの間隔毎にピクチャのデータを画像データ格納手段に格納し、画像データ格納手段に格納可能なメモリ空き容量領域が無くなると、あらかじめ定められたピクチャ間隔をより大きな値に変更することで、既にピクチャのデータを格納した領域のうち不要となった領域に新たなピクチャのデータを格納することを特徴としたものである。
【００１２】
第５の技術手段は、複数のピクチャからなる画像データをイントラ符号化およびインター符号化で符号化した符号化データを変換する画像変換装置であって、ピクチャをイントラ符号化のみで符号化したＩピクチャの間隔があらかじめ定められた閾値より大きい場合に、閾値を超えた位置のインター符号化ピクチャをＩピクチャに再符号化し、画像データの一部を再符号化後のＩピクチャのデータに入れ替えることを特徴としたものである。
【００１３】
第６の技術手段は、第５の技術手段において、Ｉピクチャに再符号化するための符号化方式は、可逆符号化であることを特徴としたものである。
【発明の効果】
【００１４】
本発明により、一度再生した画像を所定の間隔毎に画像データ格納部に格納することで、先頭以外にＩピクチャが存在しない場合や、Ｉピクチャの間隔が大きすぎる場合でも、膨大な処理を必要とせずにユーザが指定した任意の位置から画像を再生することができる。
【００１５】
また一度再生した画像を画像データ格納部に格納することで、ユーザが２回目、３回目に視聴する場合には、ユーザが指定した任意の位置からの画像の再生がより少ない処理量で可能である。
【００１６】
本発明により、画像データ格納部に空きが無くなる毎に、格納する画像のピクチャ間隔を大きくすることで、より長時間の入力データであっても、ユーザが指定した任意の位置から画像を再生することが可能である。
また、格納する画像の間隔をできるだけそろえることができるため、ユーザがどの位置を指定しても特に処理量が大きく増える位置はなく、ほぼ均一的な処理量で再生を開始できる。
【００１７】
本発明により、画像データ格納部に符号化ビットストリームを格納することで、１ピクチャ当たりに必要なデータ量が削減できるため、より多くのピクチャを格納することができ、ユーザの指定した任意の位置からの画像を再生するまでの平均的な処理量を削減することができる。
【００１８】
本発明により、記録媒体からファイルとして読み出されたデータや、受信したデータ中に、再生の基点となるＩピクチャが存在しない場合、あるいはＩピクチャの間隔があらかじめ定められた閾値より大きい場合、符号化ビットストリームの一部をＩピクチャに再符号化し、符号化ビットストリーム自体を変更することによって、以降の編集や特殊再生に便利なデータを作成することが可能である。
【発明を実施するための最良の形態】
【００１９】
（実施例１）
図１は本発明の実施例１の画像再生装置を示す図で、図中、１０１は音声と多重化された入力データから画像の符号化ビットストリームを抽出する逆多重化部、１０２は符号化ビットストリームを復号する画像復号部、１０３は画像復号部１０２で使用する参照画像を格納するメモリ、１０４は画像復号部１０２で再生された画像を表示する画像表示部、１０５は入力データのヘッダを抽出し、復号する符号化ビットストリームに関する情報（Ｉピクチャ総数、Ｉピクチャ間隔等）を解析するヘッダ情報解析部、１０６はヘッダ情報解析部１０５の結果から画像データ格納部１０７に格納する再生画像を選択する格納データ選択部、１０７は画像復号部１０２で再生された画像を格納する画像データ格納部、１０８は格納データ選択部の結果によってオン・オフを制御されるスイッチである。スイッチ１０８がオンになると画像復号部１０２で再生された画像が画像データ格納部１０７に格納される。
【００２０】
さらに図１において、１０９はユーザからの編集、早送り、巻き戻し等のコマンドを受け、ユーザの指定した再生開始位置に最も近い画像データ格納部１０７中の画像を通知する制御部である。画像データ格納部１０７は、制御部１０９から通知された画像に対応する再生画像をメモリ１０３にロードする。
【００２１】
図１に入力する入力データとしては、例えばＭＰＥＧ−４システム規格のファイルフォーマットであるＭＰ４（ＭＰｅｇ４  ｓｙｓｔｅｍ）や、マイクロソフト社Ｗｉｎｄｏｗｓ（登録商標）の標準フォーマットであるＡＳＦ（Ａｄｖａｎｃｅｄ  Ｓｔｒｅａｍｉｎｇ  Ｆｏｒｍａｔ）等が挙げられる。図２にＭＰ４ファイルの構成を示す。ＭＰ４は携帯電話などで代表的に使用されているファイルフォーマットの１つである。ＭＰ４ファイルは、ヘッダ部にＳｙｎｃ  Ｓａｍｐｌｅ  Ａｔｏｍフィールドがあり、ここにＩピクチャの総数、Ｉピクチャのピクチャ番号が記録されている。また、Ｓａｍｐｌｅ  ｔｏ  Ｃｈｕｎｋ  ＡｔｏｍフィールドとＣｈｕｎｋ  Ｏｆｆｓｅｔ  Ａｔｏｍフィールドから各Ｉピクチャの先頭からのオフセット（バイト数）を知ることができる。
【００２２】
図３にＡＳＦファイルの構成を示す。ＡＳＦはＰＣにおいて代表的に使用されているファイルフォーマットの１つである。ＡＳＦはＩｎｄｅｘ  Ｏｂｊｅｃｔというオブジェクトをもち、その中で単位時間毎の時刻情報と、時刻情報に最も近いＩピクチャが含まれるパケット番号が記録されている。
【００２３】
ＭＰ４ファイルやＡＳＦファイルの場合、上述のようにヘッダ部にファイル中のＩピクチャ総数やＩピクチャの位置に関する情報が含まれている。従ってヘッダ部を解析することで、これから再生するファイルに先頭以外にＩピクチャが存在するかどうか、存在する場合どのくらいの間隔で存在するか等の情報を得ることができる。つまり、Ｉピクチャが最初の一枚以外に存在しないファイルや、Ｉピクチャが存在しても間隔が大きすぎて編集や特殊再生の基点として利用するには不便であるファイルを見つけることができる。
【００２４】
図１のヘッダ情報解析部１０５では、符号化ビットストリームの復号開始前に、入力データのヘッダ部を解析し、Ｉピクチャが最初の一枚以外に存在しないファイルについては、そのファイル中のピクチャ総数、Ｉピクチャが存在するがＩピクチャの間隔が予め定められた閾値ＴＨＩを超えるファイルについては、そのファイル中のピクチャ総数とＩピクチャの入力データ上の位置を格納データ選択部１０６に伝える。ファイル中のピクチャ総数が明示されていない場合は、再生時間とビットレートからおおよそのピクチャ数を求め、この値をピクチャ総数として使用する。
【００２５】
図４にヘッダ情報解析部１０５の処理をフローチャートで示す。まず、入力データからヘッダ部を抽出する（Ｓ４０２）。そしてＩピクチャが１フレームのみかどうかを判別し（Ｓ４０３）、１フレームのみであれば、ファイル中のピクチャ総数を抽出して（Ｓ４０４）、格納データ選択部に入力する（Ｓ４０９）。
【００２６】
また、Ｓ４０３でＩピクチャが１フレームのみでなければ、Ｉピクチャの間隔を計算する（Ｓ４０５）。
Ｉピクチャは等間隔で挿入されている場合もあるが、間隔が一定でない場合もある。Ｉピクチャ間隔が一定の場合は、その値をそのまま、以下の処理で用いるＩピクチャ間隔とする。Ｉピクチャ間隔が一定でない場合には、代表的なＩピクチャ間隔を計算し、以降の処理ではこのＩピクチャ間隔を使用する。
Ｓ４０５で複数個のＩピクチャから代表的なＩピクチャ間隔を計算する方法としては、各Ｉピクチャ間隔の平均を計算する方法、Ｉピクチャ間隔の最大値を求める方法、Ｉピクチャ間隔の最小値を求める方法、Ｉピクチャ間隔の中央値を求める方法等がある。
【００２７】
そして、Ｓ４０６では、Ｓ４０５で求めたＩピクチャ間隔と閾値ＴＨＩとの比較を行い、Ｉピクチャの間隔が閾値ＴＨＩ未満の場合は特別な処理を行わない（Ｓ４０７）。それ以外の場合は、ファイル中のピクチャ総数を抽出し、Ｉピクチャの入力データ上の位置も合わせて格納データ選択部１０６に入力する（Ｓ４０９）。
【００２８】
格納データ選択部１０６では図示しないメモリ残容量チェック部によって、本装置が利用可能なメモリ残容量Ｍを得る。メモリ残容量Ｍが処理する格納する画像のサイズに較べて十分に大きい場合、あらかじめ定められた固定ピクチャ間隔で、画像データ格納部１０７に格納する画像の位置（通し番号で表されるピクチャ番号）を求める。
メモリ残容量Ｍが十分でない場合、このメモリ残容量Ｍと再生画像１ピクチャ分のデータ量Ｄから、編集時に一時的にメモリに保持可能な画像のピクチャ数Ｎを計算し、保持可能なピクチャ数Ｎから画像データ格納部１０７に格納する再生画像を決定する。
【００２９】
メモリ残容量Ｍが十分でない場合について、図５に格納データ選択部１０６の処理内容をフローチャートで示す。
まず、上記のように、本装置が利用可能なメモリ残容量Ｍを取得し（Ｓ５０２）、１ピクチャ当たりのデータ量Ｄを計算し（Ｓ５０３）、メモリに保持可能なピクチャ数Ｎを計算する（Ｓ５０４）。
そして、Ｓ５０５では、ファイル中に含まれるピクチャ総数ＰＮとメモリに保持可能なピクチャ数Ｎとから、画像データ格納部１０７に格納する再生画像の位置（通し番号で表されるピクチャ番号）を以下の様にして求める。
【００３０】
Ｉピクチャのピクチャ数が１の場合は、例えば画像データ格納部１０７に格納する再生画像のピクチャ番号Ｐ（ｎ）は、次式で表される。
Ｐ（ｎ）＝ＰＮ／Ｎ＊ｎ
ここで１≦ｎ≦Ｎとする。
【００３１】
Ｉピクチャのピクチャ数がＫ（ここでＫ≠１）の場合、そのピクチャ番号をＰＩ（ｋ）（１≦ｋ≦Ｋ）とする。ここでＩピクチャのピクチャ番号の間隔は、前述の最大値を求める場合では、ΔＰＩ（ｋ）＝ＰＩ（ｋ＋１）−ＰＩ（ｋ）≧ＴＨＩである。このＩピクチャのピクチャ番号ＰＩ（ｋ）と格納する再生画像のピクチャ番号Ｐ（ｎ）を合わせて、ピクチャ番号の小さい方から順番に並び替えたものをＰＰ（ｉ）（１≦ｉ≦Ｎ＋Ｋ）とすると、
ΔＰＰ（ｉ）＝ＰＰ（ｉ＋１）−ＰＰ（ｉ）
ができるだけ等間隔になるようにＰ（ｎ）を配置する。
【００３２】
例えばファイル中のピクチャ総数ＰＮ＝１０００、保持可能なピクチャ数Ｎ＝８、Ｉピクチャが通し番号で１ピクチャ目と５０１ピクチャ目に存在する（Ｋ＝２）場合、
ＰＩ（１）＝１，  ＰＩ（２）＝５０１
であり、
Ｐ（１）＝１０１，Ｐ（２）＝２０１，Ｐ（３）＝３０１，Ｐ（４）＝４０１，
Ｐ（５）＝６０１，Ｐ（６）＝７０１，Ｐ（７）＝８０１，Ｐ（８）＝９０１
とした場合に、
ＰＰ（１）＝ＰＩ（１）＝１，ＰＰ（２）＝Ｐ（１）＝１０１，
ＰＰ（３）＝Ｐ（２）＝２０１，ＰＰ（４）＝Ｐ（３）＝３０１，
ＰＰ（５）＝Ｐ（４）＝４０１，ＰＰ（６）＝ＰＩ（２）＝５０１，
ＰＰ（７）＝Ｐ（５）＝６０１，ＰＰ（８）＝Ｐ（６）＝７０１，
ＰＰ（９）＝Ｐ（７）＝８０１，ＰＰ（１０）＝Ｐ（８）＝９０１，
となり、
ΔＰＰ（ｉ）＝１００  
となるため、ＰＰ（ｉ）を等間隔に配置したことになる。
【００３３】
上述のようにして求めたピクチャ番号Ｐ（ｎ）の再生画像が画像復号部１０２から出力された時、スイッチ１０８をオンにして画像データ格納部１０７に再生画像を格納する。格納データ選択部１０６からのピクチャ番号Ｐ（ｎ）と画像復号部１０２からのピクチャ番号が一致した時、スイッチ１０８はオンになる。この時、格納した再生画像のピクチャ番号に加えて、この次のピクチャ番号に対応する画像データの、入力データ上の位置も合わせて記録する。このデータ位置以降の画像データが、格納した再生画像を参照画像として復号する画像データにあたる。
【００３４】
次に、本発明の画像再生装置を編集装置として用いた場合の例を以下に示す。
ユーザは編集を行う前に、一般的に、編集しようとするファイルの全体あるいは一部を視聴し、どの位置から編集するかを決定することが多い。本発明の画像再生装置は、この編集での試視聴時に、再生した画像の中から必要とする画像を画像データ格納部１０７に格納することで、以降の実際の編集時には、画像データ格納部１０７に格納した画像データをもとにして、この位置から画像を再生することができる。以下に一例を示す。
【００３５】
ユーザはまず、編集したいファイルを図１の画像再生装置に入力し、画像表示部１０４を見ながら編集開始点を選択する。この時、画像復号部１０２は入力データの先頭から復号を開始し、再生画像を画像表示部１０４に出力する。同時に、格納データ選択部１０６で選択されたピクチャ番号と同じピクチャ番号の再生画像を、そのピクチャ番号および次ピクチャ番号をもつ画像の入力データ上の先頭位置とともに、画像データ格納部１０７に格納する。その後、ユーザが編集開始点を決定し編集を開始する際に、編集開始位置より前に位置する最も編集開始位置に近い画像が、再生開始可能なピクチャ、すなわちＩピクチャならびに画像データ格納部１０７に格納された再生画像のうち、Ｉピクチャであれば、このＩピクチャ以降の画像を復号し、編集開始点と指定された位置以降の再生画像を得る。また編集開始位置よりも前に位置する最も編集開始位置に近い画像が、画像データ格納部１０７に格納された画像である場合は、画像データ格納部１０７の画像をメモリ１０３上に書き込み、これを参照画像として以降の画像を復号し、編集開始点以降の再生画像を得る。
【００３６】
図６は以上の処理内容を示したフローチャートである。
まず、編集位置の最近傍画像がＩピクチャであるかどうか判別し（Ｓ６０２）、ＩピクチャであればそのＩピクチャ以降を復号し、編集開始点の画像を得る（Ｓ６０６）。またＩピクチャでなければ、画像データ格納部１０７から編集開始点以前で最近傍のピクチャ番号の画像を読み出し、メモリ１０３に格納する（Ｓ６０３）。そして、メモリ１０３に格納した画像の、次の番号をもつ画像の入力データ上の位置を読み出し、この位置以降の入力データを逆多重化部１０１から入力する（Ｓ６０４）。そして、メモリ１０３上の参照画像をもとに入力データを復号し、編集開始点の画像を得て（Ｓ６０５）、編集を開始する（Ｓ６０７）。
【００３７】
このように一度再生した画像を、所定の間隔毎に画像データ格納部１０７に格納することで、Ｉピクチャが存在しない場合や、Ｉピクチャの間隔が大きすぎる場合でも、膨大な処理を必要とせずに編集することができる。
【００３８】
また一度再生した画像を画像データ格納部１０７に格納することで、ユーザが２回目、３回目に視聴する場合には、ユーザが指定した任意の位置からの視聴がより少ない処理量で可能である。
【００３９】
（実施例２）
本発明の実施例２について、以下に説明する。
本発明の実施例１では、入力データのヘッダ情報からファイルに含まれるピクチャ総数、Ｉピクチャの有無などをあらかじめ知ることができる場合について述べた。しかしながら、ピクチャ総数やＩピクチャの情報が存在しないファイルもある。ここからは、上記のようにピクチャ数が既知でない場合について、格納する画像を選択する方法について述べる。
【００４０】
実施例２の場合、図１のヘッダ情報解析部１０５では、ピクチャ総数やＩピクチャに関する情報を得ることができない。このようにヘッダ情報解析部１０５から有効な情報が入力されない時に、格納データ選択部１０６では、ピクチャ総数とは独立に画像データ格納部１０７に格納する画像（格納画像）を求める処理を行う。
【００４１】
格納画像を求めるために必要な格納画像間のピクチャ間隔をＤとし、この値はあらかじめ定められているものとする。ユーザが編集開始点を決定するために画像の再生を開始すると同時に、格納データ選択部１０６は、ピクチャ間隔Ｄ毎の再生画像（格納画像）と、格納画像の次ピクチャ番号をもつ画像の入力データ上の先頭位置を画像データ格納部１０７に記録する。
【００４２】
図７に、本実施例の画像データ格納部１０７の一例を示す。画像データ格納部１０７には、格納画像、格納画像のピクチャ番号、格納画像の次ピクチャ番号をもつ画像データの入力データ上での先頭位置が書き込まれるが、このうち図７では格納画像のピクチャ番号のみを示す。図７では、ピクチャ間隔Ｄの初期値をＤ１＝１００（ピクチャ）とし、格納できるピクチャ数ＦＭは１０とする。画像復号部１０２で再生中の再生位置を左端の列に示す。再生位置の右に書かれた数字は格納画像のピクチャ番号である。以下では、図７を参照しながら画像データ格納部１０７の処理内容を説明する。
【００４３】
例えばピクチャ間隔Ｄ＝Ｄ１＝１００なので、１０１ピクチャ目を再生している時、画像データ格納部１０７の一番目の領域には１００ピクチャ目の画像が格納されている。９０１ピクチャ目を再生している時、画像データ格納部１０７には１００、２００、３００、４００、５００、６００、７００、８００、９００ピクチャ目の各画像が格納されている。
【００４４】
次に１１０１ピクチャ目を再生している時、画像データ格納部１０７には既に１０個のピクチャが格納されており、空き領域がない。そこで既存の格納画像にこれ以降の画像を上書きすることになる。この時、格納画像のピクチャ間隔は今まで使用していた値の２倍に変更する。従って、これ以降はピクチャ間隔Ｄ＝Ｄ２＝Ｄ１＊２＝２００を使用することになる。そして格納した画像のうち、１００、３００、５００、７００、９００ピクチャ目の画像に、今後格納する画像を上書きする。なお、ピクチャ間隔が２倍になったため、１１００ピクチャ目の画像は画像データ格納部１０７に格納されず、この時点では画像データ格納部１０７の内容は変化しない。
【００４５】
１２０１ピクチャ目を再生している時、図７の例では１００ピクチャ目の画像の位置に、１２００ピクチャ目の画像が上書きされ、１４０１ピクチャ目を再生している時、３００ピクチャ目の画像の位置に、１４００ピクチャ目の画像が上書きされ、以下同様である。この例では、編集時の効率を考慮し、再生位置から遠い画像ほどすぐに使用される可能性が低いとして、再生位置から最も遠い順に上書きして消されるとしているが、無論どの位置から上書してもよい。この結果、２００１ピクチャ目を再生している時には、画像データ格納部１０７には、２００、４００、６００、８００、１０００、１２００、１４００、１６００、１８００、２０００ピクチャ目の画像が格納されることになる。また、この時に画像データ格納部１０７上の格納画像の間隔が全て同じ（Ｄ２＝２００）になったので、これ以降はピクチャ間隔Ｄ３＝Ｄ２＊２＝４００で格納する。そのため、次に画像が格納されるのは２４０１ピクチャ目を再生しているときで、２００ピクチャ目の画像に２４００ピクチャ目の画像が上書きされる。以下同様の処理が続く。図８は上記で述べた処理のフローチャートである。
【００４６】
図８において、ピクチャ間隔をＤ、ピクチャ番号ｆをｆ＝１、格納画像（再生画像）のピクチャ番号Ｆ（ｉ）をＦ（ｉ）＝ｆ−１（１≦ｉ＝Ｎ）、ｉ＝１とする（Ｓ８０２）。
そして、ｆ／Ｄの剰余が０であるかどうか（ｆ％Ｄ＝＝０）を判別し（Ｓ８０３）、剰余が０でなければ、ピクチャ番号ｆをインクリメント（ｆ＋＋）する（Ｓ８１１）。また、Ｓ８０３で剰余が０であれば、画像データ格納部１０７に空きがあるかどうかを判別し（Ｓ８０４）、空きがあれば、画像データ格納部１０７の空き領域に再生画像、該再生画像のピクチャ番号、および次ピクチャの入力データ上の位置を書き込み、ｉをインクリメント（ｉ＋＋）して（Ｓ８１０）、Ｓ８１１でｆをインクリメントする。
【００４７】
上記Ｓ８０４で、画像データ格納部１０７に空きがない場合、Ｆ（ｉ）／Ｄの剰余が０でないｉ（Ｆ（ｉ）％Ｄ！＝０となるｉ）があるかどうか判別し（Ｓ８０６）、あればピクチャ番号Ｆ（ｉ）の領域にピクチャ番号ｆの画像、およびＦ（ｉ）＝ｆの次フレームの入力データ上の位置を書き込み、ｆをインクリメント（ｆ＋＋）する（Ｓ８１１）。
【００４８】
また上記Ｓ８０６で、Ｆ（ｉ）％Ｄ！＝０となるｉがなければ、Ｄ＝Ｄ＊２とし（Ｓ８０８）、Ｓ８０３に戻る。
【００４９】
上記Ｓ８１１でｆをインクリメントした後は、最後のピクチャかどうか判別し（Ｓ８１２）、最後のピクチャでなければＳ８０３に戻り、最後のピクチャであれば処理を終了する。
【００５０】
なお、上記の例では空き領域がなくなった場合に、格納画像間のピクチャ間隔Ｄを２倍にしているが、この値はＳ倍（Ｓは２以上の整数）でもよい。あるいは、ピクチャ間隔Ｄを変更せず、先に再生画像を格納した領域から順に新しい再生画像を上書きするなど、空き領域がなくなった場合の対処方法は多様である。
【００５１】
以上で述べたように、画像データ格納部１０７に空きが無くなる毎に、格納する画像のピクチャ間隔をＳ倍にすることで、より長時間の入力データにも対応することが可能である。また、格納する画像の間隔をできるだけそろえることができるため、ユーザがどの位置を指定しても特に処理量が大きく増える位置はなく、ほぼ均一な処理量で編集が開始できる。
【００５２】
また、上記の例ではＩピクチャが先頭以外に存在しない場合について述べたが、Ｉピクチャが複数存在し、かつＩピクチャ間隔が大きい場合にも、本発明の実施例２で示した、ピクチャ総数が既知でない場合の処理は適用可能である。その場合には、本発明の実施例１で述べたように、Ｉピクチャを考慮して画像格納位置を計算することになる。
【００５３】
このようにして、画像データ格納部１０７に格納するピクチャ番号が決まれば、残りの処理は本発明の実施例１と同じで、格納データ選択部１０６からスイッチ１０８にオン、オフの指示が伝えられ、オンの場合には新たな画像が画像データ格納部１０７に格納される。
【００５４】
（実施例３）
次に本発明の実施例３について述べる。
実施例１、２では、画像データ格納部１０７に再生画像を格納している。しかしながら、再生画像は１ピクチャ当たりのデータ量が大きいため、画像データ格納部１０７に格納できるピクチャ数が限られる。そこで実施例３では、画像データ格納部１０７に格納するデータを再生画像ではなく、再生画像の符号化データとすることによって、１ピクチャ当たりに必要なデータ量を削減し、格納できる画像のピクチャ数を増やすことを目的とする。
【００５５】
図９は実施例３の画像再生装置の一例を示すブロック図である。図９の９０１から９０９までは、図１の１０１から１０９と同じである。図９では図１の構成に加えて、画像符号化部９１０と画像復号部９１１が追加されている。画像復号部９０２で再生され、格納データ選択部９０６で画像データ格納部９０７に格納する指示が出た再生画像は、画像データ格納部９０７に格納される前に画像符号化部９１０でＩピクチャとして再符号化され、符号化ビットストリームとして格納される。編集時に編集開始点以降の画像を復号する時は、画像データ格納部９０７から符号化ビットストリームを読み出し、画像復号部９１１で復号した再生画像をメモリ９０３に書き込み、この再生画像を次ピクチャの参照画像として画像復号部９０２で再生を開始する。
【００５６】
この時、画像符号化部９１０と画像復号部９１１の符号化方式は同じでなければならないが、画像復号部９０２と画像復号部９１１の符号化方式は同じである必要はない。例えば携帯電話のように、動画像符号化方式ＭＰＥＧ−４のコーデックの他に、静止画像符号化方式ＪＰＥＧのコーデックが搭載されている場合、画像符号化部９１０および画像復号部９１１では符号化方式をＪＰＥＧとしてもよい。静止画像符号化方式を用いる場合には、全ての画像をフレーム内符号化するため、動画像符号化方式のように、符号化タイプをＩピクチャと指定する必要はない。
【００５７】
以上のように、画像データ格納部９０７に符号化ビットストリームを格納することで、１ピクチャ当たりに必要なデータ量が削減できるため、より多くのピクチャを格納することができ、この結果として編集時においては、編集開始点により近い画像が平均的に格納されていることとなる。従って、編集開始点の画像を再生するまでに要する平均的な処理量を削減することができる。
【００５８】
なお、画像データ格納部９０７に格納するデータを画像復号部９１１で再符号化しているため、可逆符号化を用いない限り、これを参照画像として用いる時に若干誤差が発生する。この誤差量をなるべく小さくするために、画像符号化部９１０ではあまり圧縮率を上げず、画像復号部９０２での再生画像と、メモリ９０３に格納される画像との差が小さくなるようにした方がよい。
【００５９】
（実施例４）
次に本発明の実施例４を述べる。
本発明の実施例１〜３では、画像編集・復号装置の内部に、再生の基点となる再生画像あるいは再符号化ビットストリームを格納することによって、ユーザが指定した任意の再生開始位置から、少ない処理量で画像の再生が可能になる例を示した。
本発明の実施例４では、記録媒体等からファイルとして読み込まれるデータ、あるいは通信手段によって受信中のデータに対して、非ＩピクチャをＩピクチャに再符号化し、データ自体を変更することによって、次にユーザがその符号化ビットストリームを使用して画像を再生する時に、ユーザが指定した任意の位置から少ない処理量で画像の再生が可能な画像データに変換する画像変換装置の例を示す。
【００６０】
図１０に本発明の実施例４の一例を示す。
図１０の逆多重化部１００１と画像復号部１００２は、図１の逆多重化部１０１と画像復号部１０２と各々同じである。１００３は、画像復号部１００２で符号化ビットストリームを復号する時に、Ｉピクチャの間隔を計数するカウンタである。前に検出されたＩピクチャの通し番号から数えて、あらかじめ定められた閾値ＴＨＩを超えても次のＩピクチャがこない時、前Ｉピクチャの通し番号から数えてＴＨＩ＋１番目のピクチャをＩピクチャとして再符号化する。このため、前に検出されたＩピクチャからのピクチャ数がＴＨＩを超えた時点で、カウンタ１００３はスイッチ１００４をオンにする制御信号を出力し、画像復号部１００２から出力される再生画像は、画像符号化部１００５でＩピクチャに再符号化される。この時、画像復号部１００２と画像符号化部１００５の符号化方式は同じでなければならない。
【００６１】
また、このＩピクチャの再生画像が以降のフレーム間あるいはフィールド間予測の参照画像として利用されるため、画像符号化部１００５では可逆符号化を行うことが望ましい。例えば、動画像符号化方式Ｈ．２６４では、通常の非可逆符号化に加えて可逆符号化を行うことができる。さらに、Ｉピクチャとして再符号化した位置からＴＨＩを超えてもＩピクチャがこない場合は、上記の操作を繰り返して、Ｉピクチャの再符号化を行ってもよい。
【００６２】
可逆符号化を用いることにより、画像復号部１００２で再生した画像と、画像符号化部１００５で再符号化した時の再生画像は同じになり、入力データから抽出した符号化ビットストリームの一部をＩピクチャとして再符号化することで入力ビットストリーム自体を変更した場合でも、変更前と同一の再生画像が得られる。
【００６３】
また、図１０において、１００６は、Ｉピクチャに再符号化したピクチャに対して、逆多重化部１００１で分離した、画像符号化ビットストリーム以外の情報を、新しく作成した画像符号化ビットストリームに多重化する多重化部で、１００７は、カウンタ１００３からの制御情報を受けて、再符号化ビットストリームの多重化データがある時はこれを出力し、それ以外の場合は入力データをそのまま出力するように、出力データを切り替えるスイッチである。図１１に以上の処理のフローチャートを示す。
【００６４】
まず、直前のＩピクチャからのピクチャ数ｃｔ＝０とし（Ｓ１１０２）、入力データを逆多重化する（Ｓ１１０３）。そして、１ピクチャを復号し（Ｓ１１０４）、Ｉピクチャであるかどうかを判別する（Ｓ１１０５）。Ｉピクチャであれば、ｃｔ＝０にしてＩピクチャの入力データを出力する（Ｓ１１１１）。
【００６５】
また、Ｓ１１０５で、復号した１ピクチャがＩピクチャでなければ、ｃｔ＝ｃｔ＋１として、このときにｃｔ＞閾値ＴＨＩかどうかを判別し（Ｓ１１０７）、ｃｔ＞ＴＨＩであれば、Ｓ１１０４で復号した画像をＩピクチャとして再符号化し（Ｓ１１０８）、さらにＳ１１０３の逆多重化で分離した画像符号化データ以外のデータを多重化して出力する。ここでＩピクチャが再符号化されたため、ｃｔ＝０にする（Ｓ１１０９、Ｓ１１１１）。
また、Ｓ１１０７でｃｔ＞ＴＨＩでない場合は、入力した画像データを出力する。
次いでＳ１１１２で最後のピクチャであるかどうかを判別し、最後のピクチャであれば処理を終了し、最後のピクチャでなければ、Ｓ１１０３に戻る。
【００６６】
上記の例は、画像符号化ビットストリームを再符号化した部分のみ多重化しなおす例であるが、逆多重化された全ての画像符号化ビットストリームおよび音声符号化ビットストリームに対して、多重化をおこなってもよい。
【００６７】
以上の構成によって、記録媒体からファイルとして読み出されたデータや、受信したデータの中に、再生の基点となるＩピクチャが存在しない場合、あるいはＩピクチャの間隔があらかじめ定められた閾値より大きい場合、符号化ビットストリームの一部をＩピクチャに再符号化し、入力データを変更することによって、編集や特殊再生に便利なデータを作成することが可能である。
【００６８】
なお、本発明の実施例では画像データ格納部に記録する画像データの位置として、入力データ上の位置、つまり例えば画像と音声とを多重化したデータ上での位置を例として記載しているが、この代わりに画像のみの符号化ビットストリーム上の位置でも同様の処理が可能である。本発明の実施例では記録された位置以降のデータを逆多重化部へ入力していたが、符号化ビットストリーム上の位置をもとにする場合は、記録された位置以降のデータを画像復号部へ入力する点だけが異なる。
【図面の簡単な説明】
【００６９】
【図１】本発明の実施例１を示すブロック図である。
【図２】ＭＰ４ファイルの構成を示す図である。
【図３】ＡＳＦファイルの構成を示す図である。
【図４】ヘッダ情報解析部の処理を表すフローチャートである。
【図５】格納データ選択部の処理を表すフローチャートである。
【図６】編集時の処理を表すフローチャートである。
【図７】画像データ格納部の一例を示す図である。
【図８】本発明の実施例２が行う処理を表すフローチャートである。
【図９】本発明の実施例３を示すブロック図である。
【図１０】本発明の実施例４を示すブロック図である。
【図１１】本発明の実施例４が行う処理を表すフローチャートである。
【図１２】ＭＰＥＧ−２符号化ビットストリームの編集処理を示す一例である。
【図１３】ＭＰＥＧ−２符号化ビットストリームの編集処理を示す別の一例である。
【符号の説明】
【００７０】
１０１，９０１，１００１…逆多重化部、１０２，９０２，９１１，１００２…画像復号部、１０３，９０３…メモリ、１０４，９０４…画像表示部、１０５，９０５…ヘッダ情報解析部、１０６，９０６…格納データ選択部、１０７，９０７…画像データ格納部、１０８，９０８，１００４，１００７…スイッチ、１０９，９０９…制御部、９１０，１００５…画像符号化部、１００３…カウンタ、１００６…多重化部。
【図１】
2006033151.tif 000003
【図２】
2006033151.tif 000004
【図３】
2006033151.tif 000005
【図４】
2006033151.tif 000006
【図５】
2006033151.tif 000007
【図６】
2006033151.tif 000008
【図７】
2006033151.tif 000009
【図８】
2006033151.tif 000010
【図９】
2006033151.tif 000011
【図１０】
2006033151.tif 000012
【図１１】
2006033151.tif 000013
【図１２】
2006033151.tif 000014
【図１３】
2006033151.tif 000015