(57)【特許請求の範囲】
【請求項１】
映像データを符号化する符号化部と、
前記符号化部で符号化された前記映像データを記憶する記憶部と、
前記記憶部の空き容量と予め設定された閾値とを比較する監視部と、
前記空き容量が前記閾値以下のとき、符号化対象のフレームに対応する前記映像データが前記符号化部で符号化される前に、前記符号化対象のフレームの画像サイズを縮小する画像縮小部とを備え、
前記画像縮小部は、
画像サイズを縮小した前記フレームの縮小前の画像サイズと縮小後の画像サイズとを示す付加情報を生成し、
前記空き容量が前記閾値以下であるか否かと、前記符号化対象のフレームがＧＯＰの先頭フレームであるか否かとに基づいて、同一のＧＯＰに含まれる複数のフレームについて、画像サイズを縮小する処理の適用の有無を統一すること
を特徴とする画像処理装置。
【請求項２】
映像データを符号化する符号化部と、
前記符号化部で符号化された前記映像データを記憶する記憶部と、
前記記憶部の空き容量と予め設定された閾値とを比較する監視部と、
前記空き容量が前記閾値以下のとき、符号化対象のフレームに対応する前記映像データが前記符号化部で符号化される前に、前記符号化対象のフレームの画像サイズを縮小する画像縮小部と、
外部で符号化された前記映像データである符号化映像データを受ける入力部と、
前記入力部で受けた前記符号化映像データを復号する復号部と、
前記符号化映像データのＧＯＰサイズが予め設定された第１サイズより大きく、かつ、前記空き容量が前記閾値以下のとき、ＧＯＰサイズを前記第１サイズ以下に変更する変更部とを備え、
前記画像縮小部は、前記空き容量が前記閾値以下のとき、前記変更部により変更されたＧＯＰ毎に、前記符号化対象のフレームの画像サイズを縮小し、
前記符号化部は、前記復号部で復号された前記映像データを符号化し、前記符号化対象のフレームの画像サイズが縮小されているとき、縮小後の画像サイズに対応する前記映像データを符号化すること
を特徴とする画像処理装置。
【請求項３】
前記画像縮小部は、前記空き容量が前記閾値以下であるか否かと、前記符号化対象のフレームがＧＯＰの先頭フレームであるか否かとに基づいて、同一のＧＯＰに含まれる複数のフレームについて、画像サイズを縮小する処理の適用の有無を統一すること
を特徴とする請求項２記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関する。
【背景技術】
【０００２】
リアルタイム性が要求される画像処理システムは、例えば、エンコーダ等の画像処理装置と、画像処理装置を制御するホスト装置とを有している。画像処理装置は、リアルタイムに入力される映像データおよび音声データを順次符号化する。以下、符号化された映像データおよび音声データを、符号化データとも称する。符号化データは、例えば、画像処理装置内のメモリに順次格納される。ホスト装置は、例えば、画像処理装置内のメモリに格納された符号化データを、画像処理装置の外部メモリに順次転送する。そして、ホスト装置は、外部メモリに格納された符号化データを、所定のファイル形式（例えば、ＭＰ４ファイルフォーマット）でファイル化する。
【０００３】
例えば、画像処理装置内のメモリや外部メモリがオーバーフローしたとき、有効なデータが消失する。なお、画像処理装置にリアルタイムに入力される映像データ等は、データが消失しても、再送されない。このため、リアルタイム性が要求される画像処理システムでは、画像処理装置内のメモリおよび外部メモリのオーバーフローを低減する必要がある。
【０００４】
メモリのオーバーフローは、例えば、メモリの容量を増加することにより、低減される。あるいは、メモリのオーバーフローは、メモリの消費量を抑制することにより、低減される。なお、メモリ資源が限られている携帯型電子機器用の画像処理システムでは、メモリの使用量が規定の閾値を超えたとき、符号化の際の圧縮率を高くする方式が提案されている（例えば、特許文献１参照）。符号化の際の圧縮率を高くすることにより、画像のビットレートが低減し、メモリの消費量が抑制される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−１４１０１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
大容量のメモリを搭載した画像処理装置では、メモリ容量の増加に伴い、チップサイズが増加する。これに対し、組み込み用途向けの画像処理装置では、チップサイズの小型化が要求されている。このため、例えば、画像処理装置では、大容量のメモリを搭載することは困難である。
【０００７】
また、符号化の際の圧縮率を高くする方式では、圧縮率を高くしたフレームの画質が著しく劣化するおそれがある。例えば、映像データの符号化では、映像データは、一定の大きさ（８×８画素等）のブロック単位で離散コサイン変換される。そして、離散コサイン変換の結果（離散コサイン変換係数）が量子化され、量子化後のデータが符号化される。このため、圧縮率の高い画像では、例えば、離散コサイン変換係数が粗く量子化されることになり、ブロック間での輝度および色差の値の連続性が失われる。したがって、符号化の際の圧縮率を高くする方式では、ブロックノイズが発生し、画質が著しく劣化するおそれがある。
【０００８】
本発明の目的は、画質の劣化を抑制しつつ、メモリのオーバーフローを低減することである。
【課題を解決するための手段】
【０００９】
本発明の一形態では、画像処理装置は、映像データを符号化する符号化部と、符号化部で符号化された映像データを記憶する記憶部と、記憶部の空き容量と予め設定された閾値とを比較する監視部と、空き容量が閾値以下のとき、符号化対象のフレームに対応する映像データが符号化部で符号化される前に、符号化対象のフレームの画像サイズを縮小する画像縮小部とを備え、画像縮小部は、画像サイズを縮小したフレームの縮小前の画像サイズと縮小後の画像サイズとを示す付加情報を生成し、空き容量が閾値以下であるか否かと、符号化対象のフレームがＧＯＰの先頭フレームであるか否かとに基づいて、同一のＧＯＰに含まれる複数のフレームについて、画像サイズを縮小する処理の適用の有無を統一する。
【発明の効果】
【００１０】
画質の劣化を抑制しつつ、メモリのオーバーフローを低減できる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態における画像処理装置の例を示している。
【図２】符号化映像データのフレームの相関関係の一例を示している。
【図３】符号化後のフレーム順序と表示順序との関係の一例を示している。
【図４】別の実施形態における画像処理装置の一例を示している。
【図５】図４に示した画像処理装置の動作の一例を示している。
【図６】別の実施形態における画像処理装置の一例を示している。
【図７】ＧＯＰの構造変更の一例を示している。
【図８】ＧＯＰの構造変更の別の例を示している。
【図９】ＧＯＰの構造が変更されないときの一例を示している。
【図１０】図６に示した画像処理装置の動作の一例を示している。
【図１１】上述した実施形態の画像処理装置で符号化された映像データを再生するデコーダの一例を示している。
【発明を実施するための形態】
【００１２】
以下、実施形態を図面を用いて説明する。
【００１３】
図１は、一実施形態における画像処理装置１０の例を示している。なお、図中の破線の矢印は、映像データＶＤＡ等のデータの流れの一例を示している。画像処理装置１０は、例えば、エンコーダとして機能し、リアルタイム性が要求される画像処理システムに用いられる。例えば、画像処理装置１０は、符号化部２０、監視部３０、画像縮小部４０および記憶部５０を有している。
【００１４】
符号化部２０は、映像データＶＤＡを順次符号化する。例えば、符号化部２０は、映像データＶＤＡをＭＰＥＧ−４（ＩＳＯ／ＩＥＣ  １４４９６）等に準拠した符号化方式で順次符号化する。例えば、ＭＰＥＧ−４に準拠した符号化方式では、符号化部２０は、映像データＶＤＡを、一定の大きさ（８×８画素等）のブロック単位で離散コサイン変換する。そして、符号化部２０は、離散コサイン変換の結果（離散コサイン変換係数）を量子化し、量子化後のデータを可変長符号化する。
【００１５】
また、符号化部２０は、符号化した映像データＶＤＡを記憶部５０に順次記憶する。以下、符号化された映像データＶＤＡを、符号化映像データＶＥＤとも称する。なお、記憶部５０に記憶された符号化映像データＶＥＤは、例えば、画像処理装置１０の外部に設けられたメモリに順次出力される。すなわち、記憶部５０は、符号化部２０で符号化された映像データＶＤＡを一時的に記憶する。記憶部５０は、例えば、メモリである。
【００１６】
監視部３０は、記憶部５０の空き容量と予め設定された閾値とを比較する。例えば、監視部３０は、画像処理装置１０が１フレーム分の映像データＶＤＡを取得する度に、記憶部５０の空き容量と閾値とを比較し、記憶部５０の消費量を監視する。そして、監視部３０は、例えば、記憶部５０の空き容量と閾値との比較結果を、画像縮小部４０に通知する。
【００１７】
なお、記憶部５０の空き容量は、例えば、記憶部５０の容量および占有量に基づいて算出される。例えば、監視部３０は、映像データＶＤＡの符号化に関する情報を用いて、記憶部５０の占有量を算出する。符号化に関する情報は、例えば、符号化映像データＶＥＤのサイズ等であり、映像データＶＤＡを符号化する際に生成される。あるいは、監視部３０は、記憶部５０に対する書き込みアドレスや読み出しアドレスに基づいて、記憶部５０の占有量を算出してもよい。なお、監視部３０は、記憶部５０の占有量と所定の値とを比較してもよい。
【００１８】
画像縮小部４０は、記憶部５０の空き容量が閾値以下のとき、符号化対象のフレームに対応する映像データＶＤＡを取得し、符号化対象のフレームの画像サイズを縮小する。例えば、画像縮小部４０は、画像の拡大および縮小機能を有するスケーラー等を用いて、画像を線形的に縮小する。そして、画像縮小部４０は、画像サイズを縮小したフレームの映像データＲＶＤを、符号化部２０に出力する。
【００１９】
例えば、画像サイズが縮小されたフレームでは、符号化部２０は、縮小前の映像データＶＤＡの代わりに、縮小後の映像データＲＶＤを符号化する。すなわち、画像縮小部４０は、符号化対象のフレームに対応する映像データＶＤＡが符号化部２０で符号化される前に、符号化対象のフレームの画像サイズを縮小する。なお、画像縮小部４０は、縮小対象のフレームを、符号化部２０に通知してもよい。
【００２０】
画像サイズが縮小されたフレームの映像データＲＶＤのデータ量は、元の映像データＶＤＡのデータ量より少ない。このため、映像データＲＶＤを符号化した符号化映像データＶＥＤのデータ量は、元の映像データＶＤＡを符号化した符号化映像データＶＥＤのデータ量より少ない。このように、この実施形態では、記憶部５０の空き容量が閾値以下のとき、符号化映像データＶＥＤのデータ量を低減できる。この結果、符号化映像データＶＥＤを記憶する記憶部５０の消費量が抑制される。
【００２１】
また、この実施形態では、符号化前の画像を線形的に縮小しているため、符号化の際の圧縮率を高くする方式に比べて、画質の劣化を抑制できる。例えば、符号化の際の圧縮率を高くする方式では、８×８画素等のブロック単位で実施された離散コサイン変換の結果（離散コサイン変換係数）は、全体的に粗く量子化される。このため、画質に影響を与える低周波成分の離散コサイン変換係数まで粗く量子化される。この結果、ブロック間での輝度および色差の値の連続性が失われる。このため、圧縮率の高い画像では、例えば、ブロックノイズが発生し、画質が著しく劣化するおそれがある。
【００２２】
これに対し、この実施形態では、符号化前の画像を線形的に縮小しているため、離散コサイン変換係数の量子化を粗くすることなく、１フレーム分の符号化映像データＶＥＤのデータ量を低減できる。すなわち、この実施形態では、ブロック間での輝度および色差の値の連続性を保ちつつ、１フレーム分の符号化映像データＶＥＤのデータ量を低減できる。したがって、この実施形態では、画質の劣化を抑制しつつ、記憶部５０のオーバーフローを低減できる。
【００２３】
なお、画像処理装置１０の構成は、この例に限定されない。例えば、符号化部２０は、画像縮小部４０で生成された映像データＲＶＤを、バッファ等を介して受けてもよい。また、符号化部２０および画像縮小部４０は、映像データＶＤＡを、バッファ等を介して受けてもよい。あるいは、符号化部２０は、映像データＶＤＡおよび音声データを順次受けてもよい。例えば、符号化部２０は、映像データＶＤＡおよび音声データを順次符号化してもよい。符号化された音声データである符号化音声データは、例えば、記憶部５０に一時的に記憶される。そして、記憶部５０に記憶された符号化映像データＶＥＤおよび符号化音声データは、例えば、多重化されて、画像処理装置１０の外部に出力される。また、画像処理装置１０は、符号化映像データＶＥＤ等を復号する機能を有してもよい。すなわち、画像処理装置１０は、コーデックとして機能するように形成されてもよい。
【００２４】
図２は、符号化映像データＶＥＤのフレームＦＲＭの相関関係の一例を示している。図中の破線の矢印は、各ピクチャの相関関係の一例を示している。図中の括弧内のＩ、Ｂ、Ｐは、それぞれＩピクチャ、Ｂピクチャ、Ｐピクチャを示している。また、フレームＦＲＭの末尾の数字は、ＧＯＰ（Group of Picture）内の符号化後のフレーム順序を示している。ＧＯＰは、複数のピクチャを有するデータ単位であり、少なくとも１つのＩピクチャを有している。
【００２５】
図２の例では、ＧＯＰは、１５個のフレームＦＲＭ（ＦＲＭ１−ＦＲＭ１５）を有している。例えば、Ｉピクチャの画像データとＢピクチャの画像データとの間には、相関関係がある。また、Ｉピクチャの画像データとＰピクチャの画像データとの間には、相関関係がある。あるいは、Ｐピクチャの画像データとＢピクチャの画像データとの間には、相関関係がある。なお、ＧＯＰ間では、画像データの相関関係を新たに仕切り直すことができる。ＧＯＰサイズ（ＧＯＰ内のフレーム数）は、例えば、画像処理装置１０を制御する外部のホスト装置により設定される。
【００２６】
ここで、例えば、画像縮小部４０による縮小処理の対象フレームＦＲＭは、ＧＯＰ単位で選択される。例えば、画像縮小部４０は、画像サイズの縮小処理を、記憶部５０の空き容量が閾値以下になったときのＧＯＰの次のＧＯＰの先頭フレームＦＲＭ１から実施する。また、例えば、画像縮小部４０は、画像サイズの縮小処理の解除を、記憶部５０の空き容量が閾値より大きくなったときのＧＯＰの次のＧＯＰの先頭フレームＦＲＭ１から実施する。なお、符号化の処理順序（符号化後のフレーム順序）は、例えば、図３に示すように、映像入力の順序（表示順序）と異なるときもある。
【００２７】
図３は、符号化後のフレーム順序と表示順序との関係の一例を示している。図中の括弧内のＩ、Ｂ、Ｐは、それぞれＩピクチャ、Ｂピクチャ、Ｐピクチャを示している。また、フレームＦＲＭの括弧内の数字は、表示順序を示している。
【００２８】
例えば、画像処理装置１０は、フレームＦＲＭ（１）−ＦＲＭ（ｎ）、ＦＲＭ（ｎ＋１）−ＦＲＭ（ｍ）の順に、映像データＶＤＡを受ける。例えば、フレームＦＲＭ（１）−ＦＲＭ（ｎ）を有するＧＯＰでは、先ず、ＩピクチャのフレームＦＲＭ（３）が符号化される。次に、ＢピクチャのフレームＦＲＭ（１）、ＦＲＭ（２）が順次符号化される。そして、Ｐピクチャ、Ｂピクチャ、Ｂピクチャの順に符号化される処理が、フレームＦＲＭ（ｎ）まで繰り返される。
【００２９】
また、例えば、フレームＦＲＭ（ｎ＋１）−ＦＲＭ（ｍ）を有するＧＯＰでは、先ず、ＩピクチャのフレームＦＲＭ（ｎ＋３）が符号化される。次に、ＢピクチャのフレームＦＲＭ（ｎ＋１）、ＦＲＭ（ｎ＋２）が順次符号化される。そして、Ｐピクチャ、Ｂピクチャ、Ｂピクチャの順に符号化される処理が、フレームＦＲＭ（ｍ）まで繰り返される。すなわち、ＢピクチャのフレームＦＲＭは、先に符号化処理が実施されたＩピクチャやＰピクチャのフレームＦＲＭより先に表示される。
【００３０】
例えば、フレームＦＲＭ（ｎ−２）の符号化処理中に、記憶部５０の空き容量が閾値以下になったとき、画像縮小部４０は、フレームＦＲＭ（ｎ＋１）−ＦＲＭ（ｍ）の画像サイズを縮小する。なお、画像縮小部４０は、例えば、フレームＦＲＭ（ｎ＋１）が符号化される前に、フレームＦＲＭ（ｎ＋３）の画像サイズを縮小する。また、例えば、フレームＦＲＭ（ｍ−２）の符号化処理中に、記憶部５０の空き容量が閾値より大きくなったとき、画像縮小部４０は、フレームＦＲＭ（ｍ−２）を有するＧＯＰの次のＧＯＰのフレームＦＲＭに対して、縮小処理を実施しない。すなわち、フレームＦＲＭ（ｍ−２）の符号化処理中に、記憶部５０の空き容量が閾値より大きくなったとき、画像処理装置１０は、フレームＦＲＭ（ｍ−２）を有するＧＯＰの次のＧＯＰのフレームＦＲＭを、縮小せずに符号化する。
【００３１】
以上、この実施形態では、画像処理装置１０は、記憶部５０の空き容量が閾値以下のとき、符号化前の画像を線形的に縮小する。例えば、縮小対象の各フレームＦＲＭでは、符号化前の一枚の画像（１ピクチャ）に対して、線形的な縮小処理が実施される。このため、この実施形態では、符号化の際にブロック単位でデータ量を低減する方式に比べて、画質の劣化を抑制できる。すなわち、この実施形態では、記憶部５０の空き容量が閾値以下のとき、画質の劣化を抑制しつつ、１フレーム分の符号化映像データＶＥＤのデータ量を低減できる。この結果、記憶部５０の消費量が抑制される。したがって、この実施形態では、画質の劣化を抑制しつつ、記憶部５０のオーバーフローを低減できる。すなわち、この実施形態では、例えば、記憶部５０の容量を大きくすることなく、記憶部５０のオーバーフローを低減できる。
【００３２】
図４は、別の実施形態における画像処理装置１２の一例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。なお、図中の破線の矢印は、映像データＶＤＡ等のデータの流れの一例を示している。画像処理装置１２は、例えば、エンコーダとして機能し、リアルタイム性が要求される画像処理システムに用いられる。例えば、画像処理システムは、画像処理装置１２、外部メモリ１００、１２０およびホスト装置１１０を有している。
【００３３】
この実施形態の画像処理装置１２では、入力部６０、入力バッファ７０および多重化部８０が図１に示した画像処理装置１０に追加されている。すなわち、画像処理装置１２は、符号化部２０、監視部３０、画像縮小部４０、記憶部５０、入力部６０、入力バッファ７０および多重化部８０を有している。
【００３４】
入力部６０は、映像データＶＤＡおよび音声データＡＤＡを順次受け、受けた映像データＶＤＡおよび音声データＡＤＡを入力バッファ７０に順次記憶する。入力バッファ７０は、映像データＶＤＡおよび音声データＡＤＡを一時的に記憶する。さらに、入力バッファ７０は、画像縮小部４０で生成された映像データＲＶＤを一時的に記憶する。なお、記憶部５０の所定の領域が入力バッファ７０として機能するようにしてもよい。
【００３５】
画像縮小部４０の動作は、入力バッファ７０にアクセスすることを除いて、上述した実施形態と同じである。例えば、画像縮小部４０は、記憶部５０の空き容量が閾値以下のとき、符号化対象のフレームＦＲＭに対応する映像データＶＤＡを入力バッファ７０から取得する。そして、画像縮小部４０は、取得した映像データＶＤＡに基づくフレームＦＲＭの画像サイズを縮小する。
【００３６】
例えば、画像縮小部４０は、画像の拡大および縮小機能を有するスケーラー等を用いて、画像を線形的に縮小する。そして、画像縮小部４０は、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤを、入力バッファ７０に出力する。これにより、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤは、入力バッファ７０に一時的に記憶される。なお、縮小対象のフレームＦＲＭは、例えば、ＧＯＰ単位で選択される。ＧＯＰサイズは、例えば、ホスト装置１１０により設定される。
【００３７】
符号化部２０は、映像データＶＤＡ（ＲＶＤ）の他に、音声データＡＤＡも符号化する。また、符号化部２０は、例えば、映像データＶＤＡ（ＲＶＤ）および音声データＡＤＡを入力バッファ７０から順次取得する。符号化部２０のその他の動作は、上述した実施形態と同じである。例えば、符号化部２０は、入力バッファ７０から取得した映像データＶＤＡおよび音声データＡＤＡを、ＭＰＥＧ−４等に準拠した符号化方式で順次符号化する。以下、符号化された音声データＡＤＡを、符号化音声データＡＥＤとも称する。
【００３８】
なお、符号化部２０は、記憶部５０の空き容量が閾値以下のとき、映像データＶＤＡの代わりに、符号化対象のフレームＦＲＭの映像データＲＶＤ（縮小後の映像データ）を入力バッファ７０から取得する。そして、符号化部２０は、取得した映像データＲＶＤを符号化する。すなわち、符号化部２０は、画像サイズが縮小されたフレームＦＲＭでは、縮小前の映像データＶＤＡの代わりに、縮小後の映像データＲＶＤを符号化する。符号化部２０で生成された符号化映像データＶＥＤおよび符号化音声データＡＥＤは、記憶部５０に一時的に記憶される。
【００３９】
監視部３０の動作は、上述した実施形態と同じである。例えば、監視部３０は、画像処理装置１０が１フレーム分の映像データＶＤＡを取得する度に、記憶部５０の空き容量と閾値とを比較し、記憶部５０の消費量を監視する。記憶部５０の空き容量は、例えば、記憶部５０の容量および占有量に基づいて算出される。例えば、監視部３０は、映像データＶＤＡや音声データＡＤＡの符号化に関する情報を用いて、記憶部５０の占有量を算出する。
【００４０】
符号化に関する情報は、例えば、符号化映像データＶＥＤや符号化音声データＡＥＤのサイズ等であり、映像データＶＤＡや音声データＡＤＡを符号化する際に生成される。あるいは、監視部３０は、記憶部５０に対する書き込みアドレスや読み出しアドレスに基づいて、記憶部５０の占有量を算出してもよい。なお、監視部３０は、記憶部５０の占有量と所定の値とを比較してもよい。
【００４１】
多重化部８０は、例えば、記憶部５０に記憶された符号化映像データＶＥＤおよび符号化音声データＡＥＤを多重化して、外部メモリ１００に出力する。符号化映像データＶＥＤおよび符号化音声データＡＥＤが多重化されたデータＤＯＵＴは、外部メモリ１００に記憶される。なお、外部メモリ１００に記憶されたデータＤＯＵＴ（符号化映像データＶＥＤおよび符号化音声データＡＥＤ）は、所定のファイル形式（例えば、ＭＰ４ファイルフォーマット）でファイル化される。
【００４２】
例えば、ホスト装置１１０のファイル化部１１２は、外部メモリ１００に記憶された符号化映像データＶＥＤおよび符号化音声データＡＥＤを所定のファイル形式でファイル化し、映像および音声のストリームファイルを生成する。そして、ホスト装置１１０は、例えば、映像および音声のストリームファイルを外部メモリ１２０に記憶する。
【００４３】
なお、画像処理装置１２の構成は、この例に限定されない。例えば、画像処理装置１２は、転送制御信号をホスト装置１１０から受けてもよい。ホスト装置１１０は、例えば、外部メモリ１００、１２０の少なくとも一方が受信不可の状態のとき、画像処理装置１２からの転送を抑制するための転送制御信号を、画像処理装置１２に出力する。転送抑制を示す転送制御信号を受けた画像処理装置１２では、画像縮小部４０は、フレームＦＲＭの画像サイズを縮小する。
【００４４】
このように、画像縮小部４０は、外部メモリ１００、１２０の空き容量やホスト装置１１０の動作状況に応じて、フレームＦＲＭの画像サイズを縮小してもよい。これにより、この実施形態では、外部メモリ１００、１２０のオーバーフローを低減でき、映像および音声のストリームファイルの生成に必要なデータが消失することを低減できる。
【００４５】
また、画像処理装置１２は、符号化映像データＶＥＤおよび符号化音声データＡＥＤを復号する機能を有してもよい。すなわち、画像処理装置１２は、コーデックとして機能するように形成されてもよい。
【００４６】
図５は、図４に示した画像処理装置１２の動作の一例を示している。図５の動作は、ハードウエアのみで実現されてもよく、ハードウエハをソフトウエアにより制御することにより実現されてもよい。
【００４７】
処理Ｓ１００では、入力部６０は、映像データＶＤＡおよび音声データＡＤＡを取り込む。そして、入力部６０は、取り込んだ映像データＶＤＡおよび音声データＡＤＡを入力バッファ７０に書き込む。
【００４８】
処理Ｓ１１０では、監視部３０は、記憶部５０の空き容量と予め設定された閾値とを比較する。例えば、監視部３０は、画像処理装置１２が１フレーム分の映像データＶＤＡを取得する度に、記憶部５０の空き容量と閾値とを比較する。なお、監視部３０は、記憶部５０の占有量と所定の値とを比較してもよい。
【００４９】
記憶部５０の空き容量が閾値より大きいとき（処理Ｓ１１０のＹｅｓ）、画像処理装置１２の動作は、処理Ｓ１２０に移る。一方、記憶部５０の空き容量が閾値以下のとき（処理Ｓ１１０のＮｏ）、画像処理装置１２の動作は、処理Ｓ１５０に移る。
【００５０】
処理Ｓ１２０では、監視部３０は、画像縮小部４０が縮小処理を実施中か否かを判定する。例えば、監視部３０は、縮小処理が解除されているか否かを判定する。なお、処理Ｓ１２０の判定処理は、監視部３０以外のモジュールにより実施されてもよい。画像縮小部４０が縮小処理を実施中のとき（処理Ｓ１２０のＹｅｓ）、画像処理装置１２の動作は、処理Ｓ１３０に移る。例えば、縮小処理が解除されていないとき、画像処理装置１２の動作は、処理Ｓ１３０に移る。
【００５１】
一方、画像縮小部４０が縮小処理を実施していないとき（処理Ｓ１２０のＮｏ）、画像処理装置１２の動作は、処理Ｓ２００に移る。例えば、縮小処理が解除されているとき、画像処理装置１２の動作は、処理Ｓ２００に移る。これにより、例えば、縮小処理が実施されていないフレームＦＲＭの映像データＶＤＡが、処理Ｓ２００において、符号化される。
【００５２】
処理Ｓ１３０では、画像処理装置１２は、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭか否かを判定する。すなわち、画像処理装置１２は、記憶部５０の空き容量が閾値より大きく、かつ、縮小処理が解除されていないとき、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭか否かを判定する。符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭのとき（処理Ｓ１３０のＹｅｓ）、画像処理装置１２の動作は、処理Ｓ１４０に移る。
【００５３】
一方、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭでないとき（処理Ｓ１３０のＮｏ）、画像処理装置１２の動作は、処理Ｓ１７０に移る。これにより、例えば、画像サイズの縮小処理（処理Ｓ１７０等）は、継続される。すなわち、ＧＯＰの先頭フレームＦＲＭ以外のフレームＦＲＭの符号化処理中に、記憶部５０の空き容量が閾値より大きくなったときには、縮小処理は、ＧＯＰの最後のフレームＦＲＭまで継続される。これにより、この実施形態では、縮小処理が実施されたフレームＦＲＭと縮小処理が実施されていないフレームＦＲＭとが同一のＧＯＰ内に混在することを防止できる。
【００５４】
処理Ｓ１４０では、画像処理装置１２は、縮小処理を解除する。すなわち、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭのときに、縮小処理は解除される。これにより、例えば、縮小処理が実施されていないフレームＦＲＭの映像データＶＤＡが、処理Ｓ２００において、符号化される。
【００５５】
処理Ｓ１５０では、監視部３０は、画像縮小部４０が縮小処理を実施中か否かを判定する。例えば、監視部３０は、縮小処理が解除されているか否かを判定する。なお、処理Ｓ１５０の判定処理は、監視部３０以外のモジュールにより実施されてもよい。画像縮小部４０が縮小処理を実施中のとき（処理Ｓ１５０のＹｅｓ）、画像処理装置１２の動作は、処理Ｓ１７０に移る。例えば、画像縮小部４０は、縮小処理が解除されていないとき、処理Ｓ１７０において、符号化処理の対象フレームＦＲＭの画像サイズを縮小する。すなわち、記憶部５０の空き容量が閾値以下であり、かつ、縮小処理が解除されていないとき、縮小処理は、継続される。
【００５６】
一方、画像縮小部４０が縮小処理を実施していないとき（処理Ｓ１５０のＮｏ）、画像処理装置１２の動作は、処理Ｓ１６０に移る。例えば、縮小処理が解除されているとき、画像処理装置１２の動作は、処理Ｓ１６０に移る。
【００５７】
処理Ｓ１６０では、画像処理装置１２は、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭか否かを判定する。すなわち、画像処理装置１２は、記憶部５０の空き容量が閾値以下であり、かつ、縮小処理が解除されているとき、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭか否かを判定する。符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭのとき（処理Ｓ１６０のＹｅｓ）、画像処理装置１２の動作は、処理Ｓ１７０に移る。これにより、例えば、画像サイズの縮小処理（処理Ｓ１７０等）は、ＧＯＰの先頭フレームＦＲＭから実施される。
【００５８】
一方、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭでないとき（処理Ｓ１６０のＮｏ）、画像処理装置１２の動作は、処理Ｓ２００に移る。したがって、例えば、縮小処理が実施されていないフレームＦＲＭの映像データＶＤＡが、処理Ｓ２００において、符号化される。すなわち、ＧＯＰの先頭フレームＦＲＭ以外のフレームＦＲＭの符号化処理中に、記憶部５０の空き容量が閾値以下になったとき、縮小処理は、次のＧＯＰのフレームＦＲＭから実施される。これにより、この実施形態では、縮小処理が実施されたフレームＦＲＭと縮小処理が実施されていないフレームＦＲＭとが同一のＧＯＰ内に混在することを防止できる。
【００５９】
処理Ｓ１７０では、画像縮小部４０は、フレームＦＲＭの画像サイズを縮小する。例えば、画像縮小部４０は、画像の拡大および縮小機能を有するスケーラー等を用いて、画像を線形的に縮小する。これにより、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤが、処理Ｓ２００において、符号化される。なお、縮小処理の対象フレームＦＲＭは、処理Ｓ１３０、Ｓ１６０により、ＧＯＰ単位で選択される。
【００６０】
処理Ｓ１８０では、画像縮小部４０は、縮小処理に関する付加情報を生成する。付加情報には、例えば、縮小処理の有無、元画像（縮小前）の画像サイズおよび縮小画像（縮小後）の画像サイズが含まれる。なお、付加情報の生成（処理Ｓ１８０）は、画像縮小部４０以外のモジュールにより実施されてもよい。
【００６１】
処理Ｓ１９０では、符号化部２０は、付加情報を符号化する。例えば、符号化部２０は、付加情報を、所定の暗号方式で符号化する。なお、付加情報の符号化（処理Ｓ１９０）は、画像縮小部４０以外のモジュールにより実施されてもよい。
【００６２】
処理Ｓ２００では、符号化部２０は、映像データＶＤＡ（ＲＶＤ）および音声データＡＤＡを符号化する。例えば、処理Ｓ２００が処理Ｓ１７０−Ｓ１９０を経て実施されるとき、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤが、符号化される。このように、この実施形態では、記憶部５０の空き容量が小さいとき、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤを符号化する。すなわち、記憶部５０の空き容量が大きいときには、フレームＦＲＭの映像データＶＤＡは、画像サイズを縮小せずに、符号化される。これにより、この実施形態では、一定時間内の記憶部５０の消費量を抑制できる。
【００６３】
処理Ｓ２１０では、符号化部２０は、符号化映像データＶＥＤおよび符号化音声データＡＥＤを記憶部５０に格納する。なお、例えば、符号化された付加情報も記憶部５０に格納される。記憶部５０に格納された符号化映像データＶＥＤおよび符号化音声データＡＥＤは、多重化部８０で多重化されて、外部メモリ１００に出力される。この際、付加情報も、例えば、外部メモリ１００に出力される。これにより、例えば、符号化映像データＶＥＤ、符号化音声データＡＥＤおよび付加情報に基づくストリームファイルが、ホスト装置１１０で生成される。すなわち、ホスト装置１１０で生成されるストリームファイルには、例えば、符号化映像データＶＥＤ、符号化音声データＡＥＤおよび付加情報が含まれる。
【００６４】
なお、画像処理装置１２の動作は、この例に限定されない。例えば、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭか否かの判定（処理Ｓ１３０、Ｓ１６０）は、記憶部５０の空き容量と予め設定された閾値との比較（処理Ｓ１１０）より前に実施されてもよい。例えば、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭのとき、監視部３０は、記憶部５０の空き容量と予め設定された閾値とを比較する。なお、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭ以外のフレームＦＲＭでは、例えば、前に処理したフレームＦＲＭと同じ処理が実施される。
【００６５】
また、例えば、画像処理装置１２は、転送制御信号をホスト装置１１０から受けるとき、転送制御信号に応じて縮小処理を実施してもよい。例えば、画像処理装置１２は、画像処理装置１２から外部メモリ１００への転送を抑制するための転送制御信号を受けたか否かの判定を、記憶部５０の空き容量と予め設定された閾値との比較（処理Ｓ１１０）より前に実施してもよい。
【００６６】
そして、転送を抑制するための転送制御信号を画像処理装置１２が受けたとき、記憶部５０の空き容量に拘わらず、画像処理装置１２の動作は、処理Ｓ１５０に移る。一方、転送を抑制するための転送制御信号を画像処理装置１２が受けていないとき、画像処理装置１２の動作は、処理Ｓ１１０に移る。これにより、この実施形態では、外部メモリ１００、１２０のオーバーフローを低減でき、映像および音声のストリームファイルの生成に必要なデータが消失することを低減できる。
【００６７】
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。
【００６８】
図６は、別の実施形態における画像処理装置１４の一例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。なお、図中の破線の矢印は、映像データＶＤＡ等のデータの流れの一例を示している。画像処理装置１４は、例えば、トランスコーダとして機能し、リアルタイム性が要求される画像処理システムに用いられる。例えば、画像処理装置１４では、復号部９０およびＧＯＰ変更部９２が図４に示した画像処理装置１２に追加されている。また、画像処理装置１４は、図４に示した入力部６０の代わりに入力部６２を有している。画像処理装置１４のその他の構成は、図４に示した画像処理装置１２と同じである。
【００６９】
また、画像処理システムの構成は、画像処理装置１２の代わりに画像処理装置１４が設けられることを除いて、図４−図５で説明した実施形態と同じである。例えば、画像処理システムは、画像処理装置１４、外部メモリ１００、１２０およびホスト装置１１０を有している。画像処理装置１４は、符号化部２０、監視部３０、画像縮小部４０、記憶部５０、入力部６２、入力バッファ７０、多重化部８０、復号部９０およびＧＯＰ変更部９２を有している。
【００７０】
入力部６２は、例えば、映像および音声のストリームファイルＳＤＩＮを受ける。そして、入力部６２は、ストリームファイルＳＤＩＮを符号化映像データＶＳＤおよび符号化音声データＡＳＤに分離して、入力バッファ７０に順次記憶する。これにより、符号化映像データＶＳＤおよび符号化音声データＡＳＤは、入力バッファ７０に一時的に記憶される。符号化映像データＶＳＤおよび符号化音声データＡＳＤは、例えば、画像処理装置１４の外部で符号化された映像データＶＤＡおよび音声データＡＤＡである。符号化映像データＶＳＤおよび符号化音声データＡＳＤの符号化方式は、符号化部２０の符号化方式と同じでもよいし、異なっていてもよい。
【００７１】
復号部９０は、符号化映像データＶＳＤおよび符号化音声データＡＳＤを入力バッファ７０から順次取得する。そして、復号部９０は、取得した符号化映像データＶＳＤおよび符号化音声データＡＳＤを順次復号する。復号部９０は、符号化映像データＶＳＤおよび符号化音声データＡＳＤを復号して生成した映像データＶＤＡおよび音声データＡＤＡを、入力バッファ７０に出力する。これにより、映像データＶＤＡおよび音声データＡＤＡは、入力バッファ７０に一時的に記憶される。
【００７２】
ＧＯＰ変更部９２は、記憶部５０の空き容量等に応じて、ＧＯＰの構造を変更する。例えば、ＧＯＰ変更部９２は、ストリームファイルＳＤＩＮの符号化映像データＶＳＤのＧＯＰサイズが予め設定された第１サイズより大きく、かつ、記憶部５０の空き容量が閾値以下のとき、ＧＯＰサイズを第１サイズ以下に変更する。したがって、ＧＯＰ変更部９２により変更されたＧＯＰの最大サイズ（フレームＦＲＭの最大数）は、第１サイズである。以下、第１サイズを最大ＧＯＰサイズとも称する。
【００７３】
画像縮小部４０の動作は、ＧＯＰ変更部９２により変更されたＧＯＰサイズを用いることを除いて、図４−図５で説明した実施形態と同じである。例えば、画像縮小部４０は、記憶部５０の空き容量が閾値以下のとき、符号化対象のフレームＦＲＭに対応する映像データＶＤＡを入力バッファ７０から取得する。そして、画像縮小部４０は、取得した映像データＶＤＡに基づくフレームＦＲＭの画像サイズを縮小し、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤを、入力バッファ７０に出力する。これにより、画像サイズを縮小したフレームＦＲＭの映像データＲＶＤは、入力バッファ７０に一時的に記憶される。
【００７４】
なお、画像縮小部４０は、例えば、ＧＯＰ変更部９２がＧＯＰサイズを変更したときには、ＧＯＰ変更部９２により変更されたＧＯＰ毎に、符号化対象のフレームＦＲＭの画像サイズを縮小する。すなわち、ＧＯＰ変更部９２がＧＯＰサイズを変更したときには、縮小対象のフレームＦＲＭは、ＧＯＰ変更部９２により変更されたＧＯＰ単位で選択される。また、例えば、ＧＯＰ変更部９２がＧＯＰサイズを変更していないときには、縮小対象のフレームＦＲＭは、ストリームファイルＳＤＩＮの符号化映像データＶＳＤのＧＯＰ単位で選択される。
【００７５】
符号化部２０の動作は、ＧＯＰ変更部９２により変更されたＧＯＰサイズを用いることを除いて、図４−図５で説明した実施形態と同じである。例えば、符号化部２０は、入力バッファ７０に記憶された映像データＶＤＡ（ＲＶＤ）および音声データＡＤＡを符号化する。符号化部２０で生成された符号化映像データＶＥＤおよび符号化音声データＡＥＤは、記憶部５０に一時的に記憶される。
【００７６】
なお、符号化部２０は、例えば、ＧＯＰ変更部９２がＧＯＰサイズを変更したときには、ＧＯＰ変更部９２により変更されたＧＯＰに基づいて、符号化処理を実施する。また、例えば、ＧＯＰ変更部９２がＧＯＰサイズを変更していないときには、符号化部２０は、ストリームファイルＳＤＩＮの符号化映像データＶＳＤのＧＯＰに基づいて、符号化処理を実施する。
【００７７】
監視部３０および多重化部８０の動作は、図４−図５で説明した実施形態と同じである。なお、記憶部５０の空き容量と閾値との比較結果は、画像縮小部４０およびＧＯＰ変更部９２に通知される。例えば、監視部３０は、記憶部５０の空き容量と閾値との比較結果を、画像縮小部４０およびＧＯＰ変更部９２に通知する。なお、ＧＯＰ変更部９２は、記憶部５０の空き容量と閾値との比較結果を、監視部３０から画像縮小部４０を介して受けてもよい。
【００７８】
なお、画像処理装置１４の構成は、この例に限定されない。例えば、画像処理装置１４は、コーデックとして機能するように形成されてもよい。また、画像処理装置１４は、転送制御信号をホスト装置１１０から受けてもよい。例えば、転送抑制を示す転送制御信号を画像処理装置１４が受けたとき、画像縮小部４０は、記憶部５０の空き容量に拘わらず、フレームＦＲＭの画像サイズを縮小してもよい。
【００７９】
また、例えば、ＧＯＰ変更部９２は、画像縮小部４０内に設けられてもよいし、監視部３０内に設けられてもよい。あるいは、ＧＯＰ変更部９２は、符号化部２０内に設けられてもよい。また、入力部６２は、映像データＶＤＡおよび音声データＡＤＡを外部から順次受けてもよい。例えば、入力部６２は、外部から受けた映像データＶＤＡおよび音声データＡＤＡを、入力バッファ７０に順次記憶する。
【００８０】
図７は、ＧＯＰの構造変更の一例を示している。なお、図７は、最大ＧＯＰサイズ以下のフレームＦＲＭ４で記憶部５０の空き容量不足が検出されたときのＧＯＰの構造変更の例を示している。入力ストリームは、例えば、入力部６２が受けたストリームファイルＳＤＩＮの符号化映像データＶＳＤである。また、符号化ストリームは、符号化部２０で符号化された符号化映像データＶＥＤである。図中の網掛けは、記憶部５０の空き容量が閾値以下になったときのフレームＦＲＭを示している。図の太線で示したフレームＦＲＭは、ＧＯＰの構造変更が開始されるフレームＦＲＭを示している。なお、フレームＦＲＭの末尾の数字、破線の矢印および括弧内のＩ、Ｂ、Ｐのそれぞれの意味は、図２と同じである。
【００８１】
図７の例では、入力ストリームのＧＯＰサイズは３０であり、最大ＧＯＰサイズは１５である。例えば、入力ストリームのフレームＦＲＭ４に対応する映像データＶＤＡの符号化処理中に、記憶部５０の空き容量が閾値以下になったとき、ＧＯＰ変更部９２は、ＧＯＰサイズを１５に変更する。例えば、フレームＦＲＭ１−ＦＲＭ３０を有する入力ストリームのＧＯＰは、符号化ストリームでは、非縮小期間Ｔ１０のＧＯＰと縮小期間Ｔ２０のＧＯＰとに再形成される。
【００８２】
最大ＧＯＰサイズ以下のフレームＦＲＭ４で記憶部５０の空き容量不足が検出されたため、ＧＯＰの構造変更は、最大ＧＯＰサイズに対応するフレームＦＲＭ１５の次のフレームＦＲＭ１６から開始される。例えば、入力ストリームのフレームＦＲＭ１６は、フレームＦＲＭ１３のＰピクチャおよびフレームＦＲＭ１のＩピクチャを参照画像として符号化されている。ＧＯＰを再形成するため、ＧＯＰ変更部９２は、フレームＦＲＭ１６のピクチャタイプをＩピクチャに変更する。
【００８３】
そして、符号化部２０は、フレームＦＲＭ１６をＩピクチャとして符号化する。すなわち、入力ストリームのフレームＦＲＭ１６は、縮小期間Ｔ２０のＧＯＰの先頭フレームＦＲＭ１として符号化される。入力ストリームのフレームＦＲＭ１６以降では、フレームＦＲＭの相関関係（ピクチャの参照関係）が仕切り直されるため、フレームＦＲＭ１６より前のピクチャは、参照されない。
【００８４】
また、画像縮小部４０は、縮小処理が解除されるまで、入力ストリームのフレームＦＲＭ１６以降に対応するフレームＦＲＭの画像サイズを縮小する。例えば、縮小期間Ｔ２０のＧＯＰのフレームＦＲＭ１−ＦＲＭ１５では、符号化処理が実施される前に、画像サイズの縮小処理が実施される。このように、この実施形態では、入力ストリームのＧＯＰが最大ＧＯＰサイズより大きいとき、符号化ストリームが最大ＧＯＰサイズのＧＯＰに細分化されるため、記憶部５０の空き容量不足が検出されてから縮小処理が実施されるまでの期間を短くできる。これにより、この実施形態では、記憶部５０のオーバーフローを低減できる。
【００８５】
例えば、入力ストリームのＧＯＰの最後のフレームＦＲＭ３０の符号化が終了するまで縮小処理が実施されないとき、フレームＦＲＭ１６−ＦＲＭ３０のいずれかのフレームＦＲＭの符号化処理中に、記憶部５０がオーバーフローするおそれがある。これに対し、この実施形態では、記憶部５０の空き容量不足が検出されてから縮小処理が実施されるまでの期間が短いため、記憶部５０の消費量を短い期間で低減できる。この結果、この実施形態では、ＧＯＰの構造を最大ＧＯＰサイズ以下に変更しない方式に比べて、記憶部５０のオーバーフローを低減できる。
【００８６】
なお、非縮小期間Ｔ１０のフレームＦＲＭ１−ＦＲＭ３の映像データＶＤＡは、記憶部５０の空き容量不足が検出される前に、符号化されている。このため、非縮小期間Ｔ１０のＧＯＰ（フレームＦＲＭ１−ＦＲＭ１５）の映像データＶＤＡは、画像サイズを縮小せずに、符号化される。
【００８７】
縮小期間（例えば、縮小期間Ｔ２０）に記憶部５０の空き容量が閾値以上になったとき、縮小処理は、次のＧＯＰの先頭フレームＦＲＭから解除される。これにより、記憶部５０の空き容量が閾値以上になったときのＧＯＰの次のＧＯＰでは、各フレームＦＲＭの映像データＶＤＡは、画像サイズを縮小せずに、符号化される。また、記憶部５０の空き容量が閾値以上になったときのＧＯＰの次のＧＯＰ以降では、例えば、符号化ストリームのＧＯＰの構造およびＧＯＰサイズは、入力ストリームのＧＯＰの構造およびＧＯＰサイズに戻される。
【００８８】
図８は、ＧＯＰの構造変更の別の例を示している。なお、図８は、最大ＧＯＰサイズ以上のフレームＦＲＭ１８で記憶部５０の空き容量不足が検出されたときのＧＯＰの構造変更の例を示している。図中の入力ストリーム、符号化ストリーム、網掛け、太線で示したフレームＦＲＭ、フレームＦＲＭの末尾の数字、破線の矢印および括弧内のＩ、Ｂ、Ｐのそれぞれの意味は、図７と同じである。
【００８９】
図８の例では、入力ストリームのＧＯＰサイズは３０であり、最大ＧＯＰサイズは１５である。例えば、入力ストリームのフレームＦＲＭ１８に対応する映像データＶＤＡの符号化処理中に、記憶部５０の空き容量が閾値以下になったとき、ＧＯＰ変更部９２は、フレームＦＲＭ１９以降のＧＯＰサイズを１５に変更する。例えば、フレームＦＲＭ１−ＦＲＭ３０を有する入力ストリームのＧＯＰは、符号化ストリームでは、非縮小期間Ｔ１０のＧＯＰと縮小期間Ｔ２０のＧＯＰの一部とに再形成される。
【００９０】
例えば、入力ストリームのフレームＦＲＭ１９−ＦＲＭ３０は、符号化ストリームの縮小期間Ｔ２０のフレームＦＲＭ１−ＦＲＭ１２に対応する。なお、符号化ストリームの縮小期間Ｔ２０のフレームＦＲＭ１３−ＦＲＭ１５は、入力ストリームのフレームＦＲＭ３０の後に続く３つのフレームＦＲＭに対応する。
【００９１】
最大ＧＯＰサイズ以上のフレームＦＲＭ１８で記憶部５０の空き容量不足が検出されたため、ＧＯＰの構造変更は、記憶部５０の空き容量不足が検出されたたフレームＦＲＭ１８の次のフレームＦＲＭ１９から開始される。なお、入力ストリームのフレームＦＲＭ１８等のＢピクチャが後方のピクチャ（例えば、フレームＦＲＭ１９のＰピクチャ）を参照しているときには、フレームＦＲＭ１８等は、後方のピクチャを参照しないピクチャタイプに変更される。例えば、ＧＯＰ変更部９２は、フレームＦＲＭ１８のピクチャタイプをＰピクチャに変更する。これにより、例えば、入力ストリームのフレームＦＲＭ１８以前では、フレームＦＲＭ１９以降のピクチャは、参照されない。
【００９２】
また、ＧＯＰ変更部９２は、ＧＯＰを再形成するため、フレームＦＲＭ１９のピクチャタイプをＩピクチャに変更する。そして、符号化部２０は、フレームＦＲＭ１９をＩピクチャとして符号化する。すなわち、入力ストリームのフレームＦＲＭ１９は、縮小期間Ｔ２０のＧＯＰの先頭フレームＦＲＭ１として符号化される。入力ストリームのフレームＦＲＭ１９以降では、フレームＦＲＭの相関関係（ピクチャの参照関係）が仕切り直されるため、フレームＦＲＭ１９より前のピクチャは、参照されない。
【００９３】
また、画像縮小部４０は、縮小処理が解除されるまで、入力ストリームのフレームＦＲＭ１９以降に対応するフレームＦＲＭの画像サイズを縮小する。例えば、縮小期間Ｔ２０のＧＯＰのフレームＦＲＭ１−ＦＲＭ１５では、符号化処理が実施される前に、画像サイズの縮小処理が実施される。このように、この実施形態では、最大ＧＯＰサイズ以上のフレームＦＲＭで記憶部５０の空き容量不足が検出されたとき、次のフレームＦＲＭから縮小処理が実施される。したがって、この実施形態では、図７で説明したように、ＧＯＰの構造を最大ＧＯＰサイズ以下に変更しない方式に比べて、記憶部５０のオーバーフローを低減できる。
【００９４】
なお、非縮小期間Ｔ１０のフレームＦＲＭ１−ＦＲＭ１７の映像データＶＤＡは、記憶部５０の空き容量不足が検出される前に、符号化されている。このため、非縮小期間Ｔ１０のＧＯＰ（フレームＦＲＭ１−ＦＲＭ１８）の映像データＶＤＡは、画像サイズを縮小せずに、符号化される。
【００９５】
なお、縮小期間（例えば、縮小期間Ｔ２０）に記憶部５０の空き容量が閾値以上になったとき、縮小処理は、次のＧＯＰの先頭フレームＦＲＭから解除される。これにより、記憶部５０の空き容量が閾値以上になったときのＧＯＰの次のＧＯＰでは、各フレームＦＲＭの映像データＶＤＡは、画像サイズを縮小せずに、符号化される。また、記憶部５０の空き容量が閾値以上になったときのＧＯＰの次のＧＯＰ以降では、例えば、符号化ストリームのＧＯＰの構造およびＧＯＰサイズは、入力ストリームのＧＯＰの構造およびＧＯＰサイズに戻される。
【００９６】
図９は、ＧＯＰの構造が変更されないときの一例を示している。なお、図７は、入力ストリームのＧＯＰサイズが最大ＧＯＰサイズ以下のときの例を示している。図中の入力ストリーム、符号化ストリーム、網掛け、フレームＦＲＭの末尾の数字および括弧内のＩ、Ｂ、Ｐのそれぞれの意味は、図７と同じである。
【００９７】
図９の例では、入力ストリームのＧＯＰサイズは１５であり、最大ＧＯＰサイズは１５である。例えば、入力ストリームのフレームＦＲＭ４に対応する映像データＶＤＡの符号化処理中に、記憶部５０の空き容量が閾値以下になったときにも、ＧＯＰの構造およびＧＯＰサイズは、変更されない。したがって、符号化ストリームの各フレームＦＲＭの参照関係は、入力ストリームの各フレームＦＲＭの参照関係を維持している。
【００９８】
入力ストリームのＧＯＰサイズが最大ＧＯＰサイズ以下であるため、画像サイズの縮小処理は、記憶部５０の空き容量不足が検出されたたＧＯＰ（非縮小期間Ｔ１０のＧＯＰ）の次のＧＯＰ（縮小期間Ｔ２０のＧＯＰ）の先頭フレームＦＲＭ１から開始される。例えば、縮小期間Ｔ２０のＧＯＰのフレームＦＲＭ１−ＦＲＭ１５では、符号化処理が実施される前に、画像サイズの縮小処理が実施される。画像縮小部４０は、例えば、縮小処理が解除されるまで、縮小期間Ｔ２０以降のフレームＦＲＭの画像サイズを縮小する。
【００９９】
なお、非縮小期間Ｔ１０のフレームＦＲＭ１−ＦＲＭ３の映像データＶＤＡは、記憶部５０の空き容量不足が検出される前に、符号化されている。このため、非縮小期間Ｔ１０のＧＯＰ（フレームＦＲＭ１−ＦＲＭ１５）の映像データＶＤＡは、画像サイズを縮小せずに、符号化される。
【０１００】
なお、縮小期間（例えば、縮小期間Ｔ２０）に記憶部５０の空き容量が閾値以上になったとき、縮小処理は、次のＧＯＰの先頭フレームＦＲＭから解除される。これにより、記憶部５０の空き容量が閾値以上になったときのＧＯＰの次のＧＯＰでは、各フレームＦＲＭの映像データＶＤＡは、画像サイズを縮小せずに、符号化される。
【０１０１】
図１０は、図６に示した画像処理装置１４の動作の一例を示している。図１０の動作は、ハードウエアのみで実現されてもよく、ハードウエハをソフトウエアにより制御することにより実現されてもよい。なお、図１０の動作は、処理Ｓ１６２、Ｓ１６４が追加されていることを除いて、図５に示した動作と同じである。図５で説明した動作につては、詳細な説明を省略する。
【０１０２】
処理Ｓ１６２は、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭでないと処理Ｓ１６０で判定されたとき（処理Ｓ１６０のＮｏ）、実施される。処理Ｓ１６２では、ＧＯＰ変更部９２は、符号化処理の対象フレームＦＲＭが最大ＧＯＰサイズを超過したか否かを判定する。例えば、ＧＯＰ変更部９２は、符号化処理の対象フレームＦＲＭのフレーム番号が最大ＧＯＰサイズを示す数値（図７−図９の例では、１５）より大きいか否かを判定する。符号化処理の対象フレームＦＲＭのフレーム番号は、例えば、図７−図９に示した入力ストリームのフレームＦＲＭの末尾の数字に対応する。なお、処理Ｓ１６２の判定処理は、ＧＯＰ変更部９２以外のモジュールにより実施されてもよい。
【０１０３】
符号化処理の対象フレームＦＲＭが最大ＧＯＰサイズを超過していないとき（処理Ｓ１６２のＮｏ）、画像処理装置１４の動作は、処理Ｓ２００に移る。したがって、符号化処理の対象フレームＦＲＭが最大ＧＯＰサイズを超過していないときには、例えば、縮小処理が実施されていないフレームＦＲＭの映像データＶＤＡが、処理Ｓ２００において、符号化される。
【０１０４】
一方、符号化処理の対象フレームＦＲＭが最大ＧＯＰサイズを超過しているとき（処理Ｓ１６２のＹｅｓ）、画像処理装置１４の動作は、処理Ｓ１６４に移る。処理Ｓ１６４では、ＧＯＰ変更部９２は、ＧＯＰの構造を変更する。例えば、ＧＯＰ変更部９２は、図７および図８で説明したように、ＧＯＰの構造およびＧＯＰサイズを変更する。これにより、最大ＧＯＰサイズ以下のＧＯＰが形成される。
【０１０５】
ＧＯＰの構造が変更された後、処理Ｓ１７０において、符号化処理の対象フレームＦＲＭの画像サイズが縮小される。このように、この実施形態では、入力ストリームのＧＯＰが最大ＧＯＰサイズより大きいとき、符号化ストリームが最大ＧＯＰサイズのＧＯＰに細分化されるため、記憶部５０の空き容量不足が検出されてから縮小処理が実施されるまでの期間を短くできる。これにより、この実施形態では、記憶部５０のオーバーフローを低減できる。
【０１０６】
ＧＯＰの構造が変更されているとき、処理Ｓ１４０の縮小処理の解除では、例えば、符号化ストリームのＧＯＰの構造およびＧＯＰサイズは、入力ストリームのＧＯＰの構造およびＧＯＰサイズに戻される。
【０１０７】
なお、画像処理装置１４の動作は、この例に限定されない。例えば、符号化処理の対象フレームＦＲＭがＧＯＰの先頭フレームＦＲＭか否かの判定（処理Ｓ１３０、Ｓ１６０）は、記憶部５０の空き容量と予め設定された閾値との比較（処理Ｓ１１０）より前に実施されてもよい。
【０１０８】
また、例えば、画像処理装置１４は、転送制御信号をホスト装置１１０から受けるとき、転送制御信号に応じて縮小処理を実施してもよい。例えば、画像処理装置１４は、画像処理装置１４から外部メモリ１００への転送を抑制するための転送制御信号を受けたか否かの判定を、記憶部５０の空き容量と予め設定された閾値との比較（処理Ｓ１１０）より前に実施してもよい。
【０１０９】
そして、転送を抑制するための転送制御信号を画像処理装置１４が受けたとき、記憶部５０の空き容量に拘わらず、画像処理装置１４の動作は、処理Ｓ１５０に移る。一方、転送を抑制するための転送制御信号を画像処理装置１４が受けていないとき、画像処理装置１４の動作は、処理Ｓ１１０に移る。これにより、この実施形態では、外部メモリ１００、１２０のオーバーフローを低減でき、映像および音声のストリームファイルの生成に必要なデータが消失することを低減できる。
【０１１０】
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。また、この実施形態では、入力ストリームのＧＯＰが最大ＧＯＰサイズより大きいとき、符号化ストリームが最大ＧＯＰサイズのＧＯＰに細分化されるため、記憶部５０の空き容量不足が検出されてから縮小処理が実施されるまでの期間を短くできる。これにより、この実施形態では、ＧＯＰの構造を最大ＧＯＰサイズ以下に変更しない方式に比べて、記憶部５０のオーバーフローを低減できる。
【０１１１】
図１１は、上述した実施形態の画像処理装置で符号化された映像データを再生するデコーダ２００の一例を示している。なお、図１１に示したデコーダ２００も画像処理装置の一態様を形成する。デコーダ２００は、例えば、外部メモリ１２０に記憶された映像および音声のストリームファイルＳＶＡＤを再生する画像処理システムに用いられる。例えば、画像処理システムは、デコーダ２００、外部メモリ１２０およびホスト装置１１０を有している。ホスト装置１１０は、例えば、外部メモリ１２０からデコーダ２００へのストリームファイルＳＶＡＤの転送を制御する。デコーダ２００は、例えば、分離部２１０、入力バッファ２２０、復号部２３０、画像拡大部２４０、出力バッファ２５０および表示制御部２６０を有している。
【０１１２】
分離部２１０は、例えば、外部メモリ１２０に記憶されている映像および音声のストリームファイルＳＶＡＤを受ける。ストリームファイルＳＶＡＤは、例えば、付加情報、符号化映像データＶＥＤおよび符号化音声データＡＥＤを含んでいる。例えば、符号化映像データＶＥＤおよび符号化音声データＡＥＤは、上述した実施形態の画像処理装置１２や画像処理装置１４で符号化された映像データＶＤＡおよび音声データＡＤＡである。
【０１１３】
また、例えば、付加情報は、画像処理装置１２や画像処理装置１４で生成された情報である。したがって、付加情報には、例えば、縮小処理の有無、元画像（縮小前）の画像サイズおよび縮小画像（縮小後）の画像サイズが含まれる。すなわち、付加情報には、符号化前に画像サイズが縮小されたフレームＦＲＭの縮小前の画像サイズと縮小後の画像サイズとを示す情報が含まれる。
【０１１４】
例えば、分離部２１０は、ストリームファイルＳＶＡＤを符号化映像データＶＥＤおよび符号化音声データＡＥＤに分離して、入力バッファ２２０に順次記憶する。これにより、符号化映像データＶＥＤおよび符号化音声データＡＥＤは、入力バッファ２２０に一時的に記憶される。また、分離部２１０は、ストリームファイルＳＶＡＤに含まれる付加情報も入力バッファ２２０に記憶する。
【０１１５】
復号部２３０は、符号化された映像データ等を復号する。例えば、復号部２３０は、符号化映像データＶＥＤおよび符号化音声データＡＥＤを入力バッファ２２０から順次取得する。そして、復号部２３０は、取得した符号化映像データＶＥＤおよび符号化音声データＡＥＤを順次復号する。復号部２３０は、符号化映像データＶＥＤおよび符号化音声データＡＥＤを復号して生成した映像データＶＤＡおよび音声データＡＤＡを、出力バッファ２５０に出力する。これにより、映像データＶＤＡおよび音声データＡＤＡは、出力バッファ２５０に一時的に記憶される。
【０１１６】
また、復号部２３０は、検出部２３２を有している。検出部２３２は、付加情報を検出し、付加情報の内容を解析する。例えば、付加情報の内容が画像サイズの縮小処理の実施を示しているとき、縮小処理が実施されたフレームＦＲＭの画像サイズは、付加情報の内容に基づいて、元の画像サイズに拡大される。例えば、復号部２３０は、画像サイズが縮小されたフレームＦＲＭの映像データＲＶＤを、画像拡大部２４０に出力する。
【０１１７】
画像拡大部２４０は、例えば、画像の拡大および縮小機能を有するスケーラー等を用いて、画像を線形的に拡大する。例えば、画像拡大部２４０は、復号部２３０により復号された映像データＲＶＤに基づくフレームＦＲＭの画像サイズが縮小されているとき、付加情報に基づいて、フレームＦＲＭの画像サイズを元の画像サイズに拡大する。なお、画像拡大部２４０は、拡大処理を実施する際、拡大率に応じた適切なフィルタ係数を使用し、ブロックノイズの発生を抑制する。
【０１１８】
元の画像サイズに拡大されたフレームＦＲＭの映像データＶＤＡは、出力バッファ２５０に記憶される。例えば、画像拡大部２４０は、元の画像サイズに拡大したフレームＦＲＭの映像データＶＤＡを、出力バッファ２５０に出力する。これにより、この実施形態では、縮小画像および非縮小画像が混在するストリームファイルＳＶＡＤを再生するときに、フレームＦＲＭの画像サイズを揃えることができる。
【０１１９】
なお、画像拡大部２４０は、画像サイズが縮小されたフレームＦＲＭの映像データＲＶＤを、出力バッファ２５０等を介して受けてもよい。例えば、復号部２３０は、映像データＲＶＤを出力バッファ２５０に一時的に記憶する。画像拡大部２４０は、検出部２３２で解析された付加情報の内容に基づいて、映像データＲＶＤを出力バッファ２５０から取得する。そして、画像拡大部２４０は、例えば、元の画像サイズに拡大したフレームＦＲＭの映像データＶＤＡを、取得した映像データＲＶＤが記憶されていた出力バッファ２５０の領域に上書きする。
【０１２０】
表示制御部２６０は、映像データＶＤＡおよび音声データＡＤＡを出力バッファ２５０から順次取得し、再生用の映像データＶＯＵＴおよび音声データＡＯＵＴを生成する。再生用の映像データＶＯＵＴおよび音声データＡＯＵＴは、ディスプレイ等に出力される。
【０１２１】
なお、デコーダ２００の構成は、この例に限定されない。例えば、検出部２３２は、復号部２３０の外部に設けられてもよい。あるいは、検出部２３２は、画像拡大部２４０内に設けられてもよいし、分離部２１０内に設けられてもよい。また、入力バッファ２２０および出力バッファ２５０は、同一のメモリ内に形成されてもよい。例えば、１つのメモリチップの２つの領域が、入力バッファ２２０および出力バッファ２５０としてそれぞれ機能するようにしてもよい。また、エンコーダ２００は、図１−図１０で説明した実施形態の画像処理装置内に設けられてもよい。
【０１２２】
以上、この実施形態では、エンコーダ２００は、符号化前の縮小処理に関する付加情報を検出する検出部２３２と、拡大率に応じた適切なフィルタ係数を使用して画像を拡大する画像拡大部２４０とを有している。例えば、画像拡大部２４０は、復号部２３０により復号された映像データＲＶＤに基づくフレームＦＲＭの画像サイズが縮小されているとき、付加情報に基づいて、フレームＦＲＭの画像サイズを元の画像サイズに拡大する。この実施形態では、拡大率に応じた適切なフィルタ係数を使用して拡大処理が実施されるため、再生画像にブロックノイズが発生することを抑制できる。したがって、この実施形態では、縮小画像および非縮小画像が混在するストリームファイルＳＶＡＤを再生するときに、画質が劣化することを抑制できる。
【０１２３】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずであり、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１２４】
１０、１２、１４‥画像処理装置；２０‥符号化部；３０‥監視部；４０‥画像縮小部；５０‥記憶部；６０、６２‥入力部；７０、２２０‥入力バッファ；８０‥多重化部；９０、２３０‥復号部；９２‥ＧＯＰ変更部；１００、１２０‥外部メモリ；１１０‥ホスト装置；１１２‥ファイル化部；２００‥デコーダ；２１０‥分離部；２３２‥検出部；２４０‥画像拡大部；２５０‥出力バッファ；２６０‥表示制御部
【図１】
0006014972.tif 000002
【図２】
0006014972.tif 000003
【図３】
0006014972.tif 000004
【図４】
0006014972.tif 000005
【図５】
0006014972.tif 000006
【図６】
0006014972.tif 000007
【図７】
0006014972.tif 000008
【図８】
0006014972.tif 000009
【図９】
0006014972.tif 000010
【図１０】
0006014972.tif 000011
【図１１】
0006014972.tif 000012