(57)【特許請求の範囲】
【請求項１】
動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集方法であって、
編集後も削除されずに動画像データに含まれる第２のフレームの復号画像を対象フレームとして、編集後の第１のフレームの復号画像を参照フレームとしてフレーム間予測で参照しながら、差分画像を符号化することにより、編集後の対象フレームの符号化データを得る符号化処理を実施するに際にして、
前記差分画像は、前記フレーム間予測で用いる編集後の動きベクトルを利用して動き補償を行って得られる第２の動き補償画像を、前記対象フレームの編集前の復号画像から減算して得られる画像であって、
前記編集後の参照フレームの復号画像を参照して得られたところの、前記差分画像を加算する前の前記第２の動き補償画像と、編集前の動きベクトルに従って編集前の参照フレームの復号画像を参照して生成された第１の動き補償画像との差が最も小さい、前記フレーム間予測で用いる編集後の動きベクトルを、前記対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から探索することを特徴とする動画像編集方法。
【請求項２】
前記参照フレームを符号化する際に、編集後の動きベクトルが編集前の動きベクトルと異なるマクロブロックの個数を計数し、
前記対象フレームを符号化する際に、計数された前記マクロブロックの個数を閾値と比較し、
前記マクロブロックの個数が前記閾値よりも大きいときは、前記符号化処理を実施する一方、前記閾値以下のときは、前記対象フレームの編集前の動きベクトルを変更せずに編集後の動きベクトルとして用いながら前記対象フレームを符号化することを特徴とする請求項１に記載の動画像編集方法。
【請求項３】
前記参照フレームを符号化する際に、生成された編集後の差分画像符号化データが編集前の差分画像符号化と一致するか否かをマクロブロック毎に検査すると共に、一致しないマクロブロックの個数を計数し、
前記対象フレームを符号化する際に、計数された前記マクロブロックの個数を閾値と比較し、
前記マクロブロックの個数が前記閾値よりも大きいときのみ前記符号化処理を実施する一方、前記閾値以下のときは、前記符号化処理を実施せずに、編集前の前記対象フレームの圧縮符号化データを、編集後の圧縮符号化データとして出力することを特徴とする請求項１に記載の動画像編集方法。
【請求項４】
前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルの近傍の一定範囲内に含まれる動きベクトルに制限することを特徴とする請求項１又は２に記載の動画像編集方法。
【請求項５】
前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルと同一の動きベクトルか、あるいは前記編集前の動きベクトルの近傍の一定の範囲内に含まれ、かつ、水平方向又は垂直方向のいずれかの座標値が非整数である動きベクトルに制限することを特徴とする請求項１又は２に記載の動画像編集方法。
【請求項６】
動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集装置であって、
編集後も削除されずに動画像データに含まれる第２のフレームの復号画像を対象フレームとして、編集後の第１のフレームの復号画像を参照フレームとしてフレーム間予測で参照しながら、差分画像を符号化することにより、編集後の対象フレームの符号化データを得る符号化部と、
該符号化部による符号化の実施に際して、前記編集後の参照フレームの復号画像を参照して得られたところの、前記差分画像を加算する前の第２の動き補償画像と、編集前の動きベクトルに従って編集前の参照フレームの復号画像を参照して生成された第１の動き補償画像との差が最も小さい、前記フレーム間予測で用いる編集後の動きベクトルを、前記対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から探索する動きベクトル探索部とを備え、
前記差分画像は、前記符号化部による符号化に先だって、前記編集後の動きベクトルを利用して動き補償を行って得られる前記第２の動き補償画像を前記対象フレームの編集前の復号画像から減算して得られた画像であることを特徴とする動画像編集装置。
【請求項７】
前記参照フレームを符号化する際に、編集後の動きベクトルが編集前の動きベクトルと異なるマクロブロックの個数を計数する計数部と、
前記対象フレームを符号化する際に、前記計数部によって計数された前記マクロブロックの個数を閾値と比較し、
前記マクロブロックの個数が前記閾値よりも大きいときは、前記符号化部に前記符号化を実施させる一方、前記閾値以下のときは、前記対象フレームの編集前の動きベクトルを変更せずに編集後の動きベクトルとして用いながら前記対象フレームの符号化を実施させる制御部とが付加されていることを特徴とする請求項６に記載の動画像編集装置。
【請求項８】
前記参照フレームを符号化する際に、生成された編集後の差分画像符号化データが編集前の差分画像符号化と一致するか否かをマクロブロック毎に検査すると共に、一致しないマクロブロックの個数を計数する計数部と、
前記対象フレームを符号化する際に、前記計数部によって計数された前記マクロブロックの個数を閾値と比較し、
前記マクロブロックの個数が前記閾値よりも大きいときのみ、前記符号化部に符号化を実施させる一方、前記閾値以下のときは、前記符号化を実施させずに、編集前の前記対象フレームの圧縮符号化データを、編集後の圧縮符号化データとして出力させる制御部とが付加されていることを特徴とする請求項６に記載の動画像編集装置。
【請求項９】
前記制御部は、前記動きベクトル探索部における前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルの近傍の一定範囲内に含まれる動きベクトルに制限することを特徴とする請求項６に記載の動画像編集装置。
【請求項１０】
前記制御部は、前記動きベクトル探索部における前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルと同一の動きベクトルか、あるいは前記編集前の動きベクトルの近傍の一定の範囲内に含まれ、かつ、水平方向又は垂直方向のいずれかの座標値が非整数である動きベクトルに制限することを特徴とする請求項６に記載の動画像編集装置。
【請求項１１】
動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集装置としてコンピュータを機能させる動画像編集プログラムを記憶した記憶媒体であって、
前記動画像編集プログラムが、
コンピュータを、
編集後も削除されずに動画像データに含まれる第２のフレームの復号画像を対象フレームとして、編集後の第１のフレームの復号画像を参照フレームとしてフレーム間予測で参照しながら、差分画像を符号化することにより、編集後の対象フレームの符号化データを得る符号化部と、
該符号化部による符号化の実施に際して、前記編集後の参照フレームの復号画像を参照して得られたところの、前記差分画像を加算する前の第２の動き補償画像と、編集前の動きベクトルに従って編集前の参照フレームの復号画像を参照して生成された第１の動き補償画像との差が最も小さい、前記フレーム間予測で用いる編集後の動きベクトルを、前記対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から探索する動きベクトル探索部として機能させるためのプログラムであり、かつ、
前記差分画像が、前記符号化部による符号化に先だって、前記編集後の動きベクトルを利用して動き補償を行って得られる前記第２の動き補償画像を前記対象フレームの編集前の復号画像から減算して得られた画像であることを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、動画像編集方法、動画像編集装置及び動画像編集プログラムを記憶した記憶媒体に関し、詳しくは、動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集方法、動画像編集装置及び動画像編集プログラムを記憶した記憶媒体に関する。
【０００２】
【従来の技術】
動画像を圧縮符号化する動画像圧縮方法においては、最近、動き補償によるフレーム間予測を利用した動画像圧縮方法が多く用いられている。この種の動画像圧縮方法としては、例えば、国際電気通信連合の電気通信標準化部門（ＩＴＵ−Ｔ；International Telecommunication Union-Telecommunication Standardization Sector）が勧告するＨ．２６１やＨ．２６２、Ｈ．２６３、あるいは国際標準化機構（ＩＳＯ；International Organization for Standerdization）のＭＰＥＧ（Moving Picture Expert Group）が勧告するＭＰＥＧ１やＭＰＥＧ２、ＭＰＥＧ４が挙げられる。
【０００３】
この種の動画像圧縮方法においては、動画像を構成する各フレームを符号化する手段として、フレーム内符号化とフレーム間予測符号化とが用いられている。このうち、フレーム内符号化は、符号化の対象であるフレーム（以下、対象フレームと呼ぶ）を構成する画素データだけを用いて圧縮符号化するものである。この場合、フレーム内符号化されたフレーム（これをＩ（Intra）フレームと呼ぶ）の符号化データだけを用いて元のフレームを復号化することができる。
【０００４】
これに対し、フレーム間予測符号化は、対象フレームの時間的に前又は後ろに存在するフレームのいずれか一方又は双方を参照フレームとし、動き補償によって得られる予測画像を利用して圧縮符号化するものである。対象フレームの時間的に前に存在するフレームを参照フレームとして利用するフレーム間予測符号化を前方予測符号化と呼び、対象フレームの時間的に後ろに存在するフレームを参照フレームとして利用するフレーム間予測符号化を後方予測符号化と呼び、対象フレームの時間的に前後双方に存在するフレームを参照フレームとして利用するフレーム間予測符号化を双方向予測符号化と呼ぶ。そして、前方予測符号化又は後方予測符号化されたフレームをＰ（Predictive）フレームと呼び、双方向予測符号化されたフレームをＢ（Bidirectionally predictive）フレームと呼ぶ。
【０００５】
以上より、Ｉフレームは参照フレームを利用することなく対象フレームを構成する画素データだけを用いて圧縮符号化することにより得られ、Ｐフレームは対象フレームの時間的に前に存在するＩフレーム又はＰフレームを参照フレームとして利用して圧縮符号化することにより得られ、Ｂフレームは、対象フレームの時間的に前後双方に存在するＩフレーム及びＰフレームを参照フレームとして利用して圧縮符号化することにより得られる。Ｂフレームは参照フレームとして利用されることはない。そして、圧縮符号化された動画像は、通常、各フレームがＩ，Ｂ，Ｂ，Ｐ，Ｂ，Ｂ，Ｐ，Ｂ，Ｂ，・・・と連続して構成されている。フレーム間予測符号化は、フレーム内符号化に比べて、データ圧縮率を高くすることができるが、フレーム間予測符号化されたフレームから対象フレームを復号化するためには、動き補償において利用した参照フレームから復号化されたフレームを必要とする。さらに、動き補償を半画素単位のような小数点未満の画素精度で行うことができる動画像圧縮方法が提案されている。この動画像圧縮方法によれば、非整数の座標を有する位置の画素データはその座標位置近傍の２個又は４個の整数の座標位置に存在する画素データを平均化することにより生成される。
以上説明した動画像圧縮方法の詳細については、例えば、“Generic Coding of Moving Pictures and Associated Audio”(ISO/IEC JTC1/SC29/WG11N0502, 1993.7)を参照されたい。
【０００６】
ところで、以上説明した動画像圧縮方法により圧縮符号化された動画像に対して、任意のフレーム単位で削除や抽出等の編集を行う場合、上記Ｉフレーム、Ｐフレーム又はＢフレームの符号化データを復号化や再符号化を行わずにそのまま削除や抽出等の処理を行うと、正しく復号化することができる動画像を生成することができない場合がある。例えば、各フレームがＩ，Ｂ，Ｂ，Ｐ，Ｂ，Ｂ，Ｐ，Ｂ，Ｂ，・・・と連続している第１及び第２の動画像において、第１の動画像の２番目のＰフレームと、第２の動画像の１番目のＰフレームとにおいてつなぎ合わせる場合、上記したように、第２の動画像の１番目のＰフレームは、時間的に前に存在するＩフレームを参照フレームとして利用して圧縮符号化することにより得られているため、第１の動画像と第２の動画像とをつなぎ合わせることにより第２の動画像のＩフレームが欠落し、第２の動画像の１番目のＰフレームを復号化することができなくなってしまう。一方、第１及び第２の動画像を構成する全部のフレームを一旦復号化し、つなぎ合わせた後、再び符号化を行うと、多大な計算量を必要とするとともに、この符号化によってつなぎ合わせた後の動画像の画質が大きく劣化してしまうという問題がある。
【０００７】
そこで、最近、例えば、特開平８−２０５１７４号公報や特開平７−１５４８０２号公報に開示されているように、簡単な構成や少ない計算量で、圧縮符号化された動画像についても復号化に必要なフレームが欠落することなく編集を行うことができる動画像編集方法が提案されている。
まず、特開平８−２０５１７４号公報に開示されている従来の動画像編集装置の動作について、図１２に示す説明図を参照して説明する。以下、この技術を第１の従来例と呼ぶ。
今の場合、図１２に示すように、（ｂ）に示す順番で圧縮符号化された動画像が装置を構成する第１の蓄積部に蓄積されているとともに、この動画像が装置を構成する表示部に（ａ）に示す順番で表示され、また（ａ）に示す複数個のフレームのうち、ドットが描かれたフレーム（Ｂ５，４フレームからＢ１２，１１フレームまで）が編集に必要な複数個のフレームであるとする。なお、各フレームにおいて、「ｍ，ｎ」の形で表現された添字のうち、添字ｍは第１の蓄積部に蓄積された順番を、添字ｎは表示部に表示される順番をそれぞれ意味している。
【０００８】
まず、第１の蓄積部から図１２（ｂ）に示す順番で各フレームが読み出され、それぞれ復号化されて、図１２（ａ）に示す順番で各フレームが表示部に表示され、装置の操作者によって編集開始が指示されると、その時に表示部に表示されているフレーム（以下、編集開始フレームと呼ぶ）から装置を構成する一時保持部への一時保持が開始される。図１２（ａ）の例では、Ｂ５，４フレームから一時保持が開始される。この編集開始フレームがＢフレームである場合には、表示部に現在表示されているフレームが当該Ｂフレームより時間的に後に表示部に表示されるＰフレームであることが検出されると、それまでに一時保持されていた複数個のフレーム（図１２（ｃ）のＢ５，４フレームからＰ４，６フレームまで）と検出されたＰフレームのフレーム番号とが編集開始データとして記憶部に記憶保持される。そして、操作者によって編集終了の指示がなされるまで、表示部に表示されている順番で一時保持が続行される（図１２（ａ）のＢ８，７フレームからＰ７，９フレームまで）。次に、操作者によって編集終了が指示されると、その時に表示部に表示されているフレーム（以下、編集終了フレームと呼ぶ）がＢフレームである場合には、それまでに一時保持されていた複数個のフレーム（図１２（ａ）のＢ１１，１０フレーム及びＢ１２，１１フレーム）と編集終了フレームのフレーム番号が編集終了データとして記憶部に記憶保持される。
【０００９】
以上説明した処理により編集に必要な複数個のフレームの編集開始フレーム及び編集終了フレームの選択が終了すると符号化が開始され、図１２（ｄ）に示すように、記憶部に記憶保持されていた編集開始データを構成するＢ５，４フレームがＩ５，４フレームに、Ｂ６，５フレームがＩ６，５フレームに、Ｐ４，６フレームがＩ４，６フレームにそれぞれフレーム内符号化されるとともに、記憶部に記憶保持されていた編集終了データを構成するＢ１１，１０フレームがＩ１１，１０フレームに、Ｂ１２，１１フレームがＩ１２，１１フレームにそれぞれフレーム内符号化される。次に、編集開始フレーム及び編集終了フレームのそれぞれのフレーム番号に基づいて、編集開始フレームと編集終了フレームとの間に存在する複数個のフレーム（図１２（ｂ）のＰ７，９フレームからＢ９，８フレームまで）が第１の蓄積部から読み出され、これらの複数個のフレームと、フレーム内符号化された複数個のフレーム（図１２（ｄ）のＩ５，４フレーム、Ｉ６，５フレーム、Ｉ４，６フレーム、Ｉ１１，１０フレーム及びＩ１２，１１フレーム）とが、図１２（ｅ）に示すように、正常に再生することができるように組み合わされて、必要とされる動画像が構成され、図１２（ｆ）に示すように、表示部に表示されるとともに、図１２（ｅ）に示す順番で第２の蓄積部に蓄積される。この第２の蓄積部に蓄積されている動画像を構成する各フレームは、当該フレーム以外のフレームと相関がないために、当該フレームだけで復号化することができる。この構成によれば、編集によって正常に再生することができなくなるフレームだけを符号化しているので、符号化の計算量を軽減することができる。
【００１０】
次に、特開平７−１５４８０２号公報に開示されている従来の動画像編集装置の動作について、図１３に示す説明図を参照して説明する。以下、この技術を第２の従来例と呼ぶ。
今の場合、図１３に示すように、（ａ）に示す圧縮符号化された動画像（以下、第１の動画像と呼ぶ）と（ｂ）に示す圧縮符号化された動画像（以下、第２の動画像と呼ぶ）とを破線（ア）で示す編集点でつなぎ合わせて、（ｃ）に示す圧縮符号化された動画像（以下、第３の動画像と呼ぶ）を作製する場合について説明する。図１３（ｃ）において、プライム符号「'」は、一旦復号化されたフレームが再び符号化されたことを意味している。
【００１１】
まず、入力された第１及び第２の動画像を構成するフレームが編集点より前のフレーム（図１３（ａ）に示す第１の動画像を構成するフレーム番号２のＩフレームからフレーム番号４のＢフレームまで）である場合には、上記動画像編集装置を構成するＣＰＵ（中央処理装置）は、図１３（ｃ）に示すように、入力された第１の動画像を構成するフレームをそのまま第３の動画像として出力する。また、入力された第２の動画像を構成する各フレームは、復号化部において順次復号化される。
次に、編集点より後のフレームが入力されると、ＣＰＵは、復号化された第２の動画像を構成するフレームが編集点直後のＰフレーム（図１３（ｂ）のフレーム番号８のＰフレーム）である場合には、符号化部を制御して、そのＰフレームをＩフレームに符号化させ、図１３（ｃ）に示すように、第３の動画像として出力する（図１３（ｃ）のフレーム番号８のＰフレーム）。また、復号化された第２の動画像を構成するフレームがＢフレーム（図１３（ｂ）のフレーム番号６及び７のＢフレーム）である場合には、ＣＰＵは、前方予測符号化に必要なフレーム番号５のＩフレームが編集により欠落するため、符号化部を制御して、後方予測符号化を利用して、図１３（ｃ）に示すように、それらのＢフレームをＰフレームに符号化し直させる（図１３（ｃ）のフレーム番号６及び７のＰ'フレーム）。
さらに、図１３（ｂ）に示す第２の動画像を構成するフレーム番号１１以降のＰフレーム及びＢフレームについては、フレーム間予測符号化に利用したフレームが再符号化されたため、ＣＰＵは、予測画像を正しいものに設定し直して、符号化部を制御して、ＰフレームはＰフレームに、ＢフレームはＢフレームに再符号化させる（図１３（ｃ）のフレーム番号１１以降のＰ'フレーム及びＢ'フレーム）。この再符号化においては、動き補償モード情報や動きベクトル、離散余弦変換（ＤＣＴ；Discrete Cosine Transform）切換情報は、図１３（ｂ）に示す第２の動画像を構成する各フレームを復号化して得られたものを用いる。したがって、従来のような多大な計算を必要とする動き検出回路、ＤＣＴモード判定回路が不要となるとともに、動き補償回路を簡単な構成のものに置き換えることができる。
【００１２】
【発明が解決しようとする課題】
ところで、上記した第１及び第２の従来例による動画像編集装置において、Ｐフレーム、ＢフレームをＩフレームに再符号化する場合には、再符号化されたＩフレームに再符号化誤差が発生する。このため、編集により誤差が発生したＩフレームを参照フレームとしてＰフレームやＢフレームを再符号化すると、この再符号化によって編集後の動き補償画像が変化することになり、この動き補償画像の変化がＰフレームやＢフレームに発生する誤差となる。特に、図１４（ａ）に示すように、Ｐフレームが連続する動画像をフレーム番号１〜３のフレームを削除して編集した場合には、図１４（ｂ）のＩフレームを再符号化する際に発生した再符号化誤差が、最後のフレームまで伝搬し、画質劣化が増大してしまう。
【００１３】
この発明は、上述の事情に鑑みてなされたもので、簡単な構成や少ない計算量で、圧縮符号化された動画像についても復号化に必要なフレームが欠落することなく削除や抽出等の編集を行うことができるとともに、編集による画質劣化も抑制することができる動画像編集方法、動画像編集装置及び動画像編集プログラムを記憶した記憶媒体を提供することを目的としている。
【００１４】
【課題を解決するための手段】
上記課題を解決するために、請求項１記載の発明は、動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集方法に係り、編集後も削除されずに動画像データに含まれる第２のフレームの復号画像を対象フレームとして、編集後の第１のフレームの復号画像を参照フレームとしてフレーム間予測で参照しながら、差分画像を符号化することにより、編集後の対象フレームの符号化データを得る符号化処理を実施するに際にして、前記差分画像が、前記フレーム間予測で用いる編集後の動きベクトルを利用して動き補償を行って得られる第２の動き補償画像を、前記対象フレームの編集前の復号画像から減算して得られる画像であって、前記編集後の参照フレームの復号画像を参照して得られたところの、前記差分画像を加算する前の第２の動き補償画像と、編集前の動きベクトルに従って編集前の参照フレームの復号画像を参照して生成された第１の動き補償画像との差が最も小さい、前記フレーム間予測で用いる編集後の動きベクトルを、前記対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から探索することを特徴としている。
【００１５】
また、請求項２記載の発明は、請求項１記載の動画像編集方法に係り、前記参照フレームを符号化する際に、編集後の動きベクトルが編集前の動きベクトルと異なるマクロブロックの個数を計数し、前記対象フレームを符号化する際に、計数された前記マクロブロックの個数を閾値と比較し、前記マクロブロックの個数が前記閾値よりも大きいときは、前記符号化処理を実施する一方、前記閾値以下のときは、前記対象フレームの編集前の動きベクトルを変更せずに編集後の動きベクトルとして用いながら前記対象フレームを符号化することを特徴としている。
【００１６】
また、請求項３記載の発明は、請求項１記載の動画像編集方法に係り、前記参照フレームを符号化する際に、生成された編集後の差分画像符号化データが編集前の差分画像符号化と一致するか否かをマクロブロック毎に検査すると共に、一致しないマクロブロックの個数を計数し、前記対象フレームを符号化する際に、計数された前記マクロブロックの個数を閾値と比較し、前記マクロブロックの個数が前記閾値よりも大きいときのみ前記符号化処理を実施する一方、前記閾値以下のときは、前記符号化処理を実施せずに、編集前の前記対象フレームの圧縮符号化データを、編集後の圧縮符号化データとして出力することを特徴としている。
【００１７】
また、請求項４記載の発明は、請求項１又は２に記載の動画像編集方法に係り、前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルの近傍の一定範囲内に含まれる動きベクトルに制限することを特徴としている。
【００１８】
また、請求項５記載の発明は、請求項１又は２に記載の動画像編集方法に係り、前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルと同一の動きベクトルか、あるいは前記編集前の動きベクトルの近傍の一定の範囲内に含まれ、かつ、水平方向又は垂直方向のいずれかの座標値が非整数である動きベクトルに制限することを特徴としている。
【００１９】
また、請求項６記載の発明は、動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集装置に係り、編集後も削除されずに動画像データに含まれる第２のフレームの復号画像を対象フレームとして、編集後の第１のフレームの復号画像を参照フレームとしてフレーム間予測で参照しながら、差分画像を符号化することにより、編集後の対象フレームの符号化データを得る符号化部と、該符号化部による符号化の実施に際して、前記編集後の参照フレームの復号画像を参照して得られたところの、前記差分画像を加算する前の第２の動き補償画像と、編集前の動きベクトルに従って編集前の参照フレームの復号画像を参照して生成された第１の動き補償画像との差が最も小さい、前記フレーム間予測で用いる編集後の動きベクトルを、前記対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から探索する動きベクトル探索部とを備え、前記差分画像が、前記符号化部による符号化に先だって、前記編集後の動きベクトルを利用して動き補償を行って得られる前記第２の動き補償画像を前記対象フレームの編集前の復号画像から減算して得られた画像であることを特徴としている。
【００２０】
また、請求項７記載の発明は、請求項６に記載の動画像編集装置に係り、前記参照フレームを符号化する際に、編集後の動きベクトルが編集前の動きベクトルと異なるマクロブロックの個数を計数する計数部と、前記対象フレームを符号化する際に、前記計数部によって計数された前記マクロブロックの個数を閾値と比較し、前記マクロブロックの個数が前記閾値よりも大きいときは、前記符号化部に前記符号化を実施させる一方、前記閾値以下のときは、前記対象フレームの編集前の動きベクトルを変更せずに編集後の動きベクトルとして用いながら前記対象フレームの符号化を実施させる制御部とが付加されていることを特徴としている。
【００２１】
また、請求項８記載の発明は、請求項６に記載の動画像編集装置に係り、前記参照フレームを符号化する際に、生成された編集後の差分画像符号化データが編集前の差分画像符号化と一致するか否かをマクロブロック毎に検査すると共に、一致しないマクロブロックの個数を計数する計数部と、前記対象フレームを符号化する際に、前記計数部によって計数された前記マクロブロックの個数を閾値と比較し、前記マクロブロックの個数が前記閾値よりも大きいときのみ、前記符号化部に符号化を実施させる一方、前記閾値以下のときは、前記符号化を実施させずに、編集前の前記対象フレームの圧縮符号化データを、編集後の圧縮符号化データとして出力させる制御部とが付加されていることを特徴としている。
【００２２】
また、請求項９記載の発明は、請求項６に記載の動画像編集装置に係り、前記制御部が、前記動きベクトル探索部における前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルの近傍の一定範囲内に含まれる動きベクトルに制限することを特徴としている。
【００２３】
また、請求項１０記載の発明は、請求項６に記載の動画像編集装置に係り、前記制御部が、前記動きベクトル探索部における前記編集後の動きベクトルの探索範囲を、前記編集前の動きベクトルと同一の動きベクトルか、あるいは前記編集前の動きベクトルの近傍の一定の範囲内に含まれ、かつ、水平方向又は垂直方向のいずれかの座標値が非整数である動きベクトルに制限することを特徴としている。
【００２４】
また、請求項１１記載の発明は、動き補償によるフレーム間予測を利用して圧縮符号化された動画像を編集する動画像編集装置としてコンピュータを機能させる動画像編集プログラムを記憶した記憶媒体に係り、前記動画像編集プログラムが、コンピュータを、編集後も削除されずに動画像データに含まれる第２のフレームの復号画像を対象フレームとして、編集後の第１のフレームの復号画像を参照フレームとしてフレーム間予測で参照しながら、差分画像を符号化することにより、編集後の対象フレームの符号化データを得る符号化部と、該符号化部による符号化の実施に際して、前記編集後の参照フレームの復号画像を参照して得られたところの、前記差分画像を加算する前の第２の動き補償画像と、編集前の動きベクトルに従って編集前の参照フレームの復号画像を参照して生成された第１の動き補償画像との差が最も小さい、前記フレーム間予測で用いる編集後の動きベクトルを、前記対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から探索する動きベクトル探索部として機能させるためのプログラムであり、かつ、前記差分画像が、前記符号化部による符号化に先だって、前記編集後の動きベクトルを利用して動き補償を行って得られる前記第２の動き補償画像を前記対象フレームの編集前の復号画像から減算して得られた画像であることを特徴としている。
【００２９】
【作用】
この発明の構成によれば、簡単な構成や少ない計算量で、圧縮符号化された動画像についても復号化に必要なフレームが欠落することなく削除や抽出等の編集を行うことができるとともに、編集による画質劣化も抑制することができる。
【００３０】
【発明の実施の形態】
以下、図面を参照して、この発明の実施の形態について説明する。説明は、実施例を用いて具体的に行う。
Ａ．第１の実施例
まず、この発明の第１の実施例について説明する。
図１は、この発明の第１の実施例である動画像編集方法を適用した動画像編集装置を構成するフレーム間予測符号化フレーム処理部の構成を示すブロック図である。
この例のフレーム間予測符号化フレーム処理部は、編集対象である動画像を構成する、フレーム間予測符号化されたＰフレームやＢフレームを処理するものであり、可変長復号化部１と、差分画像変換部２と、動きベクトル変換部３と、可変長符号化部４とから構成されている。
可変長復号化部１は、動き補償に利用される編集前の動きベクトルＶと、編集前の差分画像Ｄ（Ｃ）を復号化するための編集前の差分画像符号化データＣとからなる編集前のフレーム間予測符号化フレームの符号化データ（以下、編集前の符号化データと呼ぶ）（Ｖ，Ｃ）から、編集前の動きベクトルＶと編集前の差分画像符号化データＣとを復号化し、編集前の動きベクトルＶを動きベクトル変換部３へ供給し、編集前の差分画像符号化データＣを差分画像変換部２へ供給する。
【００３１】
差分画像変換部２は、差分画像復号化部１１及び１２と、差分画像符号化部１３とから構成されている。差分画像復号化部１１は、可変長復号化部１から供給される編集前の差分画像符号化データＣから編集前の差分画像Ｄ（Ｃ）を復号化し、動きベクトル変換部３へ供給する。差分画像復号化部１２は、差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'から編集後の差分画像Ｄ（Ｃ'）を復号化し、動きベクトル変換部３へ供給する。差分画像符号化部１３は、動きベクトル変換部３から供給される差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ'を符号化し、可変長符号化部４及び差分画像復号化部１２へ供給する。
ここで、Ｙは、編集対象、すなわち、編集前のフレーム間予測符号化フレームの復号化データ（以下、編集前の復号化データと呼ぶ）であり、式（１）により表される。また、ＭＣ（Ｘ'，Ｖ'）は、動き補償部２２が、フレーム記憶部２４に記憶されている、動き補償の参照フレームを構成する編集後の復号化画像（以下、編集後の参照画像と呼ぶ）Ｘ'を参照して、編集後の動きベクトルＶ'を利用して動き補償を行って得られる編集後の動き補償画像を意味している。
【数１】
Ｙ＝ＭＣ（Ｘ，Ｖ）＋Ｄ（Ｃ）・・・（１）
式（１）において、ＭＣ（Ｘ，Ｖ）は、動き補償部２１が、フレーム記憶部２３に記憶されている、動き補償の参照フレームを構成する編集前の復号化画像（以下、編集前の参照画像と呼ぶ）Ｘを参照して、編集前の動きベクトルＶを利用して動き補償を行って得られる編集前の動き補償画像を意味している。
【００３２】
動きベクトル変換部３は、動き補償部２１及び２２と、フレーム記憶部２３及び２４と、動きベクトル探索部２５と、加算器２６及び２７と、減算器２８とから構成されている。
動き補償部２１は、フレーム記憶部２３に記憶されている編集前の参照画像Ｘを参照して、可変長復号化部１から供給される動きベクトルＶを利用して動き補償を行って編集前の動き補償画像ＭＣ（Ｘ，Ｖ）を得て、この編集前の動き補償画像ＭＣ（Ｘ，Ｖ）を動きベクトル探索部２５及び加算器２６へ供給する。動き補償部２２は、フレーム記憶部２４に記憶されている編集後の参照画像Ｘ'を参照して、動きベクトル探索部２５から一時的に供給される編集後の動きベクトルＶ'を利用して動き補償を行って一時的に編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を得て、この一時的に得られた編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を動きベクトル探索部２５へ供給するとともに、動きベクトル探索部２５から最終的に供給される編集後の動きベクトルＶ'を利用して動き補償を行って最終的に編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を得て、この最終的に得られた編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を加算器２７及び減算器２８へ供給する。
【００３３】
フレーム記憶部２３は、ＲＡＭ等の半導体メモリや、ＦＤ（フロッピー・ディスク）、ＨＤ（ハード・ディスク）、ＭＯ（光磁気）ディスクが装着されるＦＤＤ（ＦＤドライバ）、ＨＤＤ、ＭＯディスクドライバ等からなり、半導体メモリやＦＤ、ＨＤ、ＭＯディスクに、前のフレームの編集で得られた編集前の参照画像Ｘが記憶されるとともに、次のフレームの編集に備えるために、編集前の復号化データＹが記憶される。フレーム記憶部２４は、ＲＡＭ等の半導体メモリや、ＦＤ、ＨＤ、ＭＯディスクが装着されるＦＤＤ、ＨＤＤ、ＭＯディスクドライバ等からなり、半導体メモリやＦＤ、ＨＤ、ＭＯディスクに、前のフレームの編集で得られた編集後の参照画像Ｘ'が記憶されるとともに、次のフレームの編集に備えるために、編集後のフレーム間予測符号化フレームの復号化データ（以下、編集後の復号化データと呼ぶ）Ｙ'（式（２）参照）が記憶される。
【数２】
Ｙ'＝ＭＣ（Ｘ'，Ｖ'）＋Ｄ（Ｃ'）・・・（２）
【００３４】
動きベクトル探索部２５は、可変長復号化部１から供給される編集前の動きベクトルＶを中心としてその周囲に存在する複数個の動きベクトルの中から、動き補償部２１から供給される編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と、動き補償部２２から一時的に供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣ（式（３）参照）を最小にする動きベクトルを探索し、この動きベクトルを一時的な編集後の動きベクトルＶ'として動き補償部２２へ供給するとともに、探索の結果最終的に得られた編集後の動きベクトルＶ'を動き補償部２２及び可変長符号化部４へ供給する。
【数３】
ΔＭＣ＝ＭＣ（Ｘ'，Ｖ'）−ＭＣ（Ｘ，Ｖ）・・・（３）
【００３５】
加算器２６は、差分画像変換部２を構成する差分画像復号化部１１から供給される編集前の差分画像Ｄ（Ｃ）と、動き補償部２１から供給される編集前の動き補償画像ＭＣ（Ｘ，Ｖ）とを加算して、加算結果である編集前の復号化データＹ（式（１）参照）を次のフレームの編集に備えるために、フレーム記憶部２３に記憶するとともに、減算器２８へ供給する。加算器２７は、差分画像変換部２を構成する差分画像復号化部１２から供給される編集後の差分画像Ｄ（Ｃ'）と、動き補償部２２から供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）とを加算して、加算結果である編集後の復号化データＹ'（式（２）参照）を次のフレームの編集に備えるために、フレーム記憶部２４へ記憶する。
【００３６】
減算器２８は、加算器２６から供給される編集前の復号化データＹから、動き補償部２２から供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を減算して、減算結果である差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を差分画像変換部２を構成する差分画像符号化部１３へ供給する。
可変長符号化部４は、動きベクトル変換部３を構成する動きベクトル探索部２５から供給される編集後の動きベクトルＶ'と、差分画像変換部２を構成する差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'とから編集後のフレーム間予測符号化フレームの符号化データ（以下、編集後の符号化データと呼ぶ）（Ｖ'，Ｃ'）を符号化して出力する。
【００３７】
なお、動画像編集装置は、上記構成を有するフレーム間予測符号化フレーム処理部の他、編集により動き補償に利用する１個又は２個の参照フレームが欠落してしまうＰフレーム及びＢフレームを、Ｉフレームに再符号化したり、編集後の動画像を構成するフレームを参照フレームとするＰフレーム及びＢフレームに再符号化する再符号化処理部と、ＣＰＵ等からなる制御部と、ＲＯＭやＲＡＭ等の内部記憶装置と、ＦＤ、ＨＤ、ＣＤ−ＲＯＭ、ＭＯディスクが装着されるＦＤＤ、ＨＤＤ、ＣＤ−ＲＯＭドライバ、ＭＯディスクドライバ等の外部記憶装置と、ＣＲＴディスプレイや液晶ディスプレイとからなる表示部と、キーボードやマウス等からなる操作部とから構成されている。
【００３８】
次に、上記構成の動画像編集装置を構成するＣＰＵの編集処理の動作の一例について、図２に示すフローチャートを参照して説明する。この例では、図１４（ａ）に示すように、フレーム番号１のフレームだけがＩフレームで、フレーム番号２以降のフレームがすべてＰフレームからなる動画像に対して、フレーム番号４以降のフレームだけを抽出して編集するものとする。
まず、ＣＰＵは、図２に示すステップＳＡ１の処理へ進み、外部から供給される動画像を構成する各フレームに付与されるフレーム番号Ｎに初期値として１を代入した後、ステップＳＡ２へ進む。
ステップＳＡ２では、ＣＰＵは、フレーム番号Ｎのフレームの編集前の符号化データ（Ｖ，Ｃ）を復号化させ、ステップＳＡ３へ進む。ステップＳＡ３では、ＣＰＵは、ステップＳＡ２の処理で復号化されたフレーム番号Ｎのフレームが編集点より後のフレームであるか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、ステップＳＡ９へ進む。ステップＳＡ９以降の処理については、後述する。今の場合、図１４（ａ）に示すフレーム番号４以降のフレームだけを抽出して編集するため、フレーム番号４のフレームが編集点後のフレームとなる。したがって、フレーム番号Ｎが１から３までのフレームについては、ステップＳＡ３の判断結果は、「ＮＯ」となる。
【００３９】
一方、ステップＳＡ３の判断結果が「ＹＥＳ」の場合、すなわち、フレーム番号Ｎのフレームが編集点より後のフレームである場合には、ＣＰＵは、ステップＳＡ４へ進む。今の場合、フレーム番号Ｎが４となると、ステップＳＡ３の判断結果が「ＹＥＳ」となり、ＣＰＵは、ステップＳＡ４へ進む。ステップＳＡ４では、ＣＰＵは、フレーム番号ＮのフレームがＩフレームであるか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、ステップＳＡ９へ進む。一方、ステップＳＡ４の判断結果が「ＮＯ」の場合、すなわち、フレーム番号ＮのフレームがＩフレームではなく、Ｐフレーム又はＢフレームである場合には、ＣＰＵは、ステップＳＡ５へ進む。今の場合、図１４（ａ）より、フレーム番号４のフレームは、Ｉフレームではなく、Ｐフレームであるので、ステップＳＡ４の判断結果が「ＮＯ」となり、ＣＰＵは、ステップＳＡ５へ進む。
【００４０】
ステップＳＡ５では、ＣＰＵは、フレーム番号Ｎのフレームの圧縮符号化に利用する１個又は２個の参照フレームがいずれも編集処理によって欠落するか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、ステップＳＡ６へ進む。今の場合、図１４（ａ）より、フレーム番号４のＰフレームの参照フレームであるフレーム番号３のＰフレームが編集処理によって欠落するので、ステップＳＡ５の判断結果が「ＹＥＳ」となり、ＣＰＵは、ステップＳＡ６へ進む。ステップＳＡ６では、ＣＰＵは、再符号化処理部を制御して、フレーム番号Ｎのフレームの圧縮符号化に利用する１個又は２個の参照フレームが編集処理によって欠落してしまうＰフレーム及びＢフレームを、Ｉフレームに再符号化させたり、又は編集後の動画像を構成するフレームを参照フレームとするＰフレーム又はＢフレームに再符号化させた後、ステップＳＡ９へ進む。なお、このステップＳＡ６の処理は、上記した第１及び第２の従来技術の対応する処理と略同様であるので、その説明を省略する。今の場合、フレーム番号４のＰフレームは、Ｉフレームに再符号化される。
【００４１】
一方、ステップＳＡ５の判断結果が「ＮＯ」の場合、すなわち、フレーム番号Ｎのフレームの圧縮符号化に利用する１個又は２個の参照フレームが編集処理によって欠落しない場合には、ＣＰＵは、ステップＳＡ７へ進む。ステップＳＡ７では、ＣＰＵは、フレーム番号Ｎのフレームの圧縮符号化に利用する１個又は２個の参照フレームに誤差が発生するか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、ステップＳＡ９へ進む。一方、ステップＳＡ７の判断結果が「ＹＥＳ」の場合、すなわち、フレーム番号Ｎのフレームの圧縮符号化に利用する１個又は２個の参照フレームに誤差が発生する場合には、ＣＰＵは、ステップＳＡ８へ進む。今の場合、図１４（ｂ）に示すように、フレーム番号５のフレームの圧縮符号化に利用する１個の参照フレーム、すなわち、フレーム番号４の再符号化後のＩフレームに誤差が発生する場合には、ステップＳＡ７の判断結果が「ＹＥＳ」となり、ＣＰＵは、ステップＳＡ８へ進む。
【００４２】
ステップＳＡ８では、ＣＰＵは、図１に示すフレーム間予測符号化フレーム処理部を制御して、フレーム番号Ｎのフレームの編集前の動きベクトルＶを中心としてその周囲に存在する複数個の動きベクトルの中から、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣ（式（３）参照）を最小にする編集後の動きベクトルＶ'を探索させ、この編集後の動きベクトルＶ'を利用して動き補償を行って得られる編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を編集前の復号化データＹから減算して得られる差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ'を符号化させ、この編集後の差分画像符号化データＣ'と、編集後の動きベクトルＶ'とから編集後の符号化データ（Ｖ'，Ｃ'）を符号化させた後、ステップＳＡ９へ進む。なお、このステップＳＡ８の処理におけるフレーム間予測符号化フレーム処理部の処理の詳細については、後述する。
【００４３】
ステップＳＡ９では、ＣＰＵは、フレーム番号Ｎのフレームについて、ステップＳＡ３の処理において編集点より前のフレームであると判断し、かつ、編集点後のフレームと単につなぎ合わせるフレームであると判断した場合には、編集前の符号化データを当該フレームの編集後の符号化データとしてそのまま出力させ、ステップＳＡ３の処理において編集点より前のフレームであると判断し、かつ、編集処理により削除するフレームであると判断した場合には、出力させない。また、ステップＳＡ９では、ＣＰＵは、フレーム番号Ｎのフレームについて、ステップＳＡ４の処理においてＩフレームであると判断した場合には、編集前の符号化データを当該フレームの編集後の符号化データとしてそのまま出力させ、ステップＳＡ６の処理において再符号化させたＩフレーム、Ｐフレーム又はＢフレームの編集後の符号化データを出力させる。さらに、ステップＳＡ９では、ＣＰＵは、フレーム番号Ｎのフレームについて、ステップＳＡ７の処理において圧縮符号化に利用する１個又は２個の参照フレームに誤差が発生しないと判断した場合には、編集前の符号化データを当該フレームの編集後の符号化データとしてそのまま出力させ、ステップＳＡ８の処理においてフレーム間予測符号化フレーム処理部を制御して得られた編集後の符号化データを出力させる。そして、ＣＰＵは、ステップＳＡ１０へ進む。
【００４４】
今の場合、図１４（ａ）に示すフレーム番号１からフレーム番号３までのフレームについては削除されて出力されず、フレーム番号４のフレームについては再符号化されたＩフレームの編集後の符号化データが出力され、フレーム番号５以降のフレームについてはステップＳＡ５やステップＳＡ７の判断結果に応じて、ステップＳＡ６の処理において再符号化されたＩフレーム、Ｐフレーム又はＢフレームの編集後の符号化データ、あるいはステップＳＡ８の処理において得られた編集後の符号化データが出力される。
【００４５】
ステップＳＡ１０では、ＣＰＵは、次のフレームを処理するために、フレーム番号Ｎに１をインクリメントした後、ステップＳＡ１１へ進む。ステップＳＡ１１では、フレームが新たに外部から供給されず、外部から供給される最後のフレームまで処理したか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、一連の処理を終了する。一方、ステップＳＡ１１の判断結果が「ＮＯ」の場合、すなわち、外部から供給される最後のフレームまで処理していない場合には、ＣＰＵは、ステップＳＡ２へ戻り、外部から供給される最後のフレームを処理するまで上記したステップＳＡ２〜ステップＳＡ１０の処理を繰り返す。
【００４６】
次に、ステップＳＡ８の処理において、ＣＰＵの制御の下、フレーム間予測符号化フレーム処理部が行う処理の詳細について説明する。
外部からフレーム間予測符号化フレームの編集前の符号化データ（Ｖ，Ｃ）が供給されると、可変長復号化部１において、編集前の符号化データ（Ｖ，Ｃ）から編集前の動きベクトルＶと編集前の差分画像符号化データＣとが復号化された後、編集前の動きベクトルＶは動きベクトル変換部３へ供給され、編集前の差分画像符号化データＣは差分画像変換部２へ供給される。
差分画像変換部２の差分画像復号化部１１において、可変長復号化部１から供給される編集前の差分画像符号化データＣから編集前の差分画像Ｄ（Ｃ）が復号化され、動きベクトル変換部３へ供給される。一方、動きベクトル変換部３の動き補償部２１において、フレーム記憶部２３に記憶されている編集前の復号化画像Ｘが参照されて、可変長復号化部１から供給される編集前の動きベクトルＶを利用して動き補償が行われ、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）が得られ、動きベクトル探索部２５及び加算器２６へ供給される。これにより、加算器２６において、編集前の差分画像Ｄ（Ｃ）と編集前の動き補償画像ＭＣ（Ｘ，Ｖ）とが加算され、加算結果が編集前の復号化データＹ（式（１）参照）として、次のフレームの編集に備えるために、フレーム記憶部２３に記憶されるとともに、減算器２８へ供給される。
【００４７】
次に、動きベクトル探索部２５において、編集前の動きベクトルＶを中心としてその周囲に存在する複数個の動きベクトルの中から、動き補償部２１から供給される編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と、動き補償部２２から一時的に供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣ（式（３）参照）を最小にする動きベクトルが探索され、この動きベクトルが一時的な編集後の動きベクトルＶ'として動き補償部２２へ供給されるとともに、探索の結果最終的に得られた編集後の動きベクトルＶ'が動き補償部２２及び可変長符号化部４へ供給される。動き補償部２２においては、フレーム記憶部２４に記憶されている編集後の参照画像Ｘ'が参照されて、動きベクトル探索部２５から一時的に供給される編集後の動きベクトルＶ'を利用して動き補償が行われて一時的に編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）が得られ、この一時的に得られた編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）が動きベクトル探索部２５へ供給されるとともに、動きベクトル探索部２５から最終的に供給される編集後の動きベクトルＶ'が利用されて動き補償が行われて最終的に編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）が得られ、この最終的に得られた編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）が加算器２７及び減算器２８へ供給される。したがって、減算器２８において、編集前の復号化画像Ｙから編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）が減算されて、減算結果である差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝が差分画像符号化部１３へ供給される。
【００４８】
次に、差分画像符号化部１３において、差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ'が符号化されるとともに、差分画像復号化部１２において、編集後の差分画像符号化データＣ'から編集後の差分画像Ｄ（Ｃ'）が復号化される。これにより、加算器２７において、編集後の差分画像Ｄ（Ｃ'）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）とが加算されて、加算結果である編集後の復号化データＹ'（式（３）参照）が、次のフレームの編集に備えるために、フレーム記憶部２４へ記憶される。そして、可変長符号化部４において、編集後の動きベクトルＶ'と編集後の差分画像符号化データＣ'とから編集後の符号化データ（Ｖ'，Ｃ'）が符号化されて出力される。
【００４９】
次に、以上説明したフレーム間予測符号化フレームの編集について、Ｐフレームの編集を例にとって、式を用いてより詳細に説明する。
編集において参照画像Ｘに発生した誤差をΔＸとすると、編集後の参照画像Ｘ'は、式（４）で表される。
【数４】
Ｘ'＝Ｘ＋ΔＸ・・・（４）
また、編集において再符号化により得られたＰフレームの編集後の復号化データＹ'に発生している誤差（以下、編集によりＰフレームに発生する誤差と呼ぶ）をΔＹとすると、誤差ΔＹは、式（１）及び式（２）より、式（５）で表される。
【数５】
0004524908.tif 000002
一方、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣは、式（３）で表されるから、式（４）に式（３）を変形して代入すると、式（６）が得られる。
【数６】
ΔＹ＝ΔＭＣ＋Ｄ（Ｃ'）−Ｄ（Ｃ）・・・（６）
【００５０】
ところで、上記した第１の従来例においては、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を再符号化しないので、編集前の差分画像符号化データＣと、編集後の差分画像符号化データＣ'とは等しく、編集によりＰフレームに発生する誤差ΔＹは、式（６）においてＣ＝Ｃ'とおけば、式（７）で表される。
【数７】
ΔＹ＝ΔＭＣ・・・（７）
すなわち、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣが、編集によりＰフレームに発生する誤差ΔＹとなる。
【００５１】
これに対し、この例においては、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝は、編集によりＰフレームに発生する誤差ΔＹが小さくなるように、再符号化される。ここで、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化をＥで表すと、編集後の差分画像符号化データＣ'は、式（８）で表される。
【数８】
Ｃ'＝Ｅ｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝・・・（８）
したがって、式（８）に式（１）及び式（３）を変形して代入すると、式（９）が得られる。
【数９】
Ｃ'＝Ｅ｛Ｄ（Ｃ）−ΔＭＣ｝・・・（９）
式（９）において、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣがＰフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化において切り捨てられる程度まで小さい場合、編集後の差分画像符号化データＣ'は、編集前の差分画像符号化データＣと異ならない。したがって、編集によりＰフレームに発生する誤差ΔＹは、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を再符号化しない第１の従来例と同様、式（７）で表される。ここで、差ΔＭＣがＰフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化において切り捨てられる程度まで小さいという条件は、例えば、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化が直交変換と量子化とを組み合わせた符号化である場合、差ΔＭＣの直交変換係数が量子化ステップサイズの半分未満であるという条件を表している。
【００５２】
これに対し、式（９）において、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣがＰフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化において切り捨てることができない程度まで大きい場合、編集後の差分画像符号化データＣ'は、編集前の差分画像符号化データＣから変化し、編集後の差分画像Ｄ（Ｃ'）は、編集前の差分画像Ｄ（Ｃ）に比較して、符号化された差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝との差が近くなる。すなわち、式（１０）に示す大小関係が成立する。
【数１０】
0004524908.tif 000003
式（１０）において、２本の縦線で囲むことは、例えば、平均平方誤差（ＭＳＥ）の平方根など、適当な誤差評価尺度を表すものとする。
式（１０）に式（６）を変形して代入すると式（１１）が得られる。
【数１１】
｜ΔＹ｜≦｜ΔＭＣ｜・・・（１１）
したがって、この場合、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を再符号化しなかった場合と比較して、編集によりＰフレームに発生する誤差ΔＹが小さくなり、Ｐフレームの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化において切り捨てられる程度まで小さくなる。
【００５３】
以上の考察から、編集において参照フレームに誤差が発生した場合の、フレーム間予測符号化フレームに発生する誤差ΔＹを小さくするには、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣを小さくすれば良いことが分かる。
【００５４】
ここで、第１及び第２の従来例である動画像編集方法において、フレーム間予測符号化フレームの編集処理を行った場合の、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差をΔＭＣ１及びΔＭＣ２で表すとともに、この例における動画像編集方法において、フレーム間予測符号化フレームの編集処理を行った場合の、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差をΔＭＣ０と表すものとする。
第１及び第２の従来例によるフレーム間予測符号化フレームの編集処理においては、ともに、編集前の動きベクトルＶを編集後の動きベクトルＶ'として用いているので、差ΔＭＣ１及び差ΔＭＣ２は、式（１２）で表される。
【数１２】
ΔＭＣ１＝ΔＭＣ２＝ＭＣ（Ｘ'，Ｖ）−ＭＣ（Ｘ，Ｖ）・・・（１２）
【００５５】
これに対し、この例によるフレーム間予測符号化フレームの編集処理においては、差ΔＭＣが最小となる編集後の動きベクトルＶ'を選択しているため、式（１３）が成立する。
【数１３】
｜ΔＭＣ０｜＝min｜ΔＭＣ｜≦｜ΔＭＣ１｜＝｜ΔＭＣ２｜・・・（１３）
式（１３）から分かるように、この例によるフレーム間予測符号化フレームの編集処理において発生する誤差が、第１及び第２の従来例によるフレーム間予測符号化フレームの編集処理において発生する誤差と比較して、大きくなることはない。
【００５６】
次に、この例によるフレーム間予測符号化フレームの編集処理において発生する誤差が、第１及び第２の従来例によるフレーム間予測符号化フレームの編集処理において発生する誤差と比較して、低減される例を以下に示す。
ここで、この例によるフレーム間予測符号化フレームの編集処理において選択された編集後の動きベクトルをＶ'０で表すとすると、差ΔＭＣ０は、式（３）より、式（１４）と変形されて表される。
【数１４】
0004524908.tif 000004
式（１４）において、最後の変形では、動き補償を表す関数ＭＣを負の画素値に拡張するとともに、丸め計算を無視している。差ΔＭＣ１及び差ΔＭＣ２についても、差ΔＭＣ０と同様の処理を行うと、式（１５）で表される。
【数１５】
ΔＭＣ１＝ΔＭＣ２≒ＭＣ（ΔＸ，Ｖ）・・・（１５）
【００５７】
以下、｜ΔＭＣ１｜と｜ΔＭＣ０｜との差を用いて、この例による誤差の低減効果について説明する。
【数１６】
0004524908.tif 000005
ここで、誤差評価尺度｜  ｜に関する三角不等式を適用すると、式（１７）が導かれる。
【数１７】
0004524908.tif 000006
式（１７）において、右辺第１項が大きくなり、右辺第２項が小さくなる状況が存在すれば、この例のフレーム間予測符号化フレームの編集処理において、参照フレームで発生した誤差が伝搬されて発生する誤差を低減する効果があることになる。
【００５８】
そこで、ＭＣ（ΔＸ，Ｖ）の大きさを評価する。動きベクトルＶによる動き補償がすべて整数精度の動き補償である場合、ＭＣ（ΔＸ，Ｖ）は画像ΔＸをマクロブロック単位に分割し平行移動したものを表すから、ＭＣ（ΔＸ，Ｖ）は平均的にΔＸと同程度の大きさになる。これに対し、動きベクトルＶによる動き補償が半画素精度の動き補償を含む場合、半画素精度動き補償が平均化フィルタの働きをし、参照画像の誤差ΔＸを低減する。したがって、一般に、式（１８）が成り立つ。
【数１８】
｜ＭＣ（ΔＸ，Ｖ）｜≦｜ΔＸ｜・・・（１８）
式（１８）において、両辺の差は、動きベクトルＶが非整数の座標値を多く有するほど、大きくなる。
【００５９】
したがって、この例によるフレーム間予測符号化フレームの編集処理において、編集後の動きベクトルＶ'０が、編集前の動きベクトルＶと比較して、非整数の座標値を多く有していれば、式（１７）の右辺第１項が大きくなる。一方、動きベクトルを編集前の動きベクトルＶから編集後の動きベクトルＶ'０に変化させた場合の動き補償画像の変化が小さければ、式（１７）の右辺第２項は小さくなる。これらの条件を満たすには、例えば、以下に示す条件▲１▼〜▲３▼が成立していれば良いと考えられる。
▲１▼編集前後での動きベクトルの変化量が小さい。
▲２▼動きベクトルの変化したマクロブロックの動き補償画像が滑らかである。
▲３▼動き補償画像が滑らかでないマクロブロックでは、編集前後で動きベクトルが変化しない。
【００６０】
したがって、条件▲１▼〜▲３▼が成立する状況が存在する場合には、式（１７）において、右辺第１項が大きくなるとともに、右辺第２項が小さくなって、左辺が大きくなり、この例のフレーム間予測符号化フレームの編集処理において、上記した第１及び第２の従来例と比較して、参照フレームで発生した誤差が伝搬されて発生する誤差が大きく低減される。
なお、以上の考察から、編集前後での動き補償の差を最小にする動きベクトルは、以下に示す条件▲４▼又は▲５▼のいずれかを満たす場合が多いと考えられる。
▲４▼編集前の動きベクトルに等しい。
▲５▼編集前の動きベクトルの近傍のベクトルであり、非整数の座標値を有する。
【００６１】
このように、この例の構成によれば、フレーム間予測符号化フレームの圧縮符号化に利用する１個又は２個の参照フレームに誤差が発生する場合には、そのフレーム間予測符号化フレームの編集前の動きベクトルＶの中から、編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣ（式（３）参照）を最小にする編集後の動きベクトルＶ'を探索し、この編集後の動きベクトルＶ'を利用して動き補償を行って得られる編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を編集前の復号化データＹから減算して得られる差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ'を符号化し、この編集後の差分画像符号化データＣ'と、編集後の動きベクトルＶ'とから編集後の符号化データ（Ｖ'，Ｃ'）を符号化している。
これにより、差ΔＭＣが差分画像符号化において切り捨てられる程度まで小さい場合、編集によりフレーム間予測符号化フレームに発生する誤差ΔＹは、差ΔＭＣと一致する。したがって、この例によれば、フレーム間予測符号化フレームの編集において、編集において参照画像Ｘに発生した誤差ΔＸが伝搬されて発生する誤差ΔＹを最小化することができる。
一方、差ΔＭＣが差分画像符号化において切り捨てることができない程度の大きさを有する場合、差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化により、編集において参照画像Ｘに発生した誤差ΔＸが伝搬されて発生する誤差ΔＹが一定の範囲以内に抑えることができる。したがって、この例によれば、フレーム間予測符号化フレームの編集において、参照フレームに発生した画質劣化が伝搬されることで発生するフレーム間予測符号化フレームの画質劣化を、可能な限り小さくすることができる。
【００６２】
ここで、図３に、この例（曲線ａ）、第１の従来例（曲線ｂ）及び第２の従来例（曲線ｃ）それぞれの動画像編集方法を用いて、実際の動画像を編集し、その際に発生した誤差の大きさを平均二乗誤差で計測した例を示す。先頭フレームだけがＩフレームであり、その他はＰフレームからなる動画像に対して、フレーム番号１０以降のフレームを抽出する編集を行っている。フレーム番号１０のフレームに発生した誤差は、Ｉフレームに再符号化されたことによる再符号化誤差である。いずれの動画像編集方法においても、半画素動き補償の平均化フィルタとしての効果によって、編集で発生する誤差がフレーム番号が増加するのとともに減少している。図３から分かるように、この例による動画像編集方法を用いた場合が、フレーム間予測符号化フレームに発生する誤差が最も小さい。
【００６３】
Ｂ．第２の実施例
次に、この発明の第２の実施例について説明する。
まず、この発明の第２の実施例である動画像編集方法を適用した動画像編集装置の構成については、上記した第１の実施例である動画像編集方法を適用した動画像編集装置の構成と略同様である。ただ、この発明の第２の実施例である動画像編集方法において、フレーム間予測符号化フレームの編集処理は、上記した第１の実施例において、動きベクトル探索部２５で行う動きベクトルの探索範囲を、編集前の動きベクトルＶの近傍の一定の範囲内に含まれる動きベクトルに制限している。ここで、図４に動きベクトルの探索範囲の一例を示す。図４において、矢印が編集前の動きベクトルＶを示し、９個の黒丸が動きベクトル探索範囲を示し、実線が整数座標値を示し、破線が（整数＋１／２）座標値を示している。
この例においては、上記したように、動きベクトル探索部２５における動きベクトルの探索範囲が制限されているため、上記した第１の実施例と比較して、必要な計算量が削減される。しかし、フレーム間予測符号化フレームの編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣを最小にする動きベクトルは、編集前の動きベクトルＶの近傍に集中しているため、第１の実施例と比較して、誤差が大きく増大することはない。
【００６４】
Ｃ．第３の実施例
次に、この発明の第３の実施例について説明する。
まず、この発明の第３の実施例である動画像編集方法を適用した動画像編集装置の構成については、上記した第１の実施例である動画像編集方法を適用した動画像編集装置の構成と略同様である。ただ、この発明の第３の実施例である動画像編集方法において、フレーム間予測符号化フレームの編集処理は、上記した第１の実施例において、動きベクトル探索部２５で行う動きベクトルの探索範囲を、編集前の動きベクトルＶと同一の動きベクトルか、あるいは編集前の動きベクトルＶの近傍の一定の範囲内に含まれ、かつ、水平方向又は垂直方向のいずれかの座標値が非整数である動きベクトルに制限している。ここで、図５に動きベクトルの探索範囲の一例を示す。図５において、矢印が編集前の動きベクトルＶを示し、７個の黒丸が動きベクトル探索範囲を示し、実線が整数座標値を示し、破線が（整数＋１／２）座標値を示している。
この例においては、上記したように、動きベクトル探索部２５における動きベクトルの探索範囲が制限されているため、上記した第１の実施例と比較して、必要な計算量が削減される。しかし、フレーム間予測符号化フレームの編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣを最小にする動きベクトルは、編集前の動きベクトルＶと同一であるか、あるいは編集前の動きベクトルＶの近傍の非整数の座標値を有する動きベクトルに集中しているため、第１の実施例と比較して、誤差が大きく増大することはない。
【００６５】
Ｄ．第４の実施例
次に、この発明の第４の実施例について説明する。
図６は、この発明の第４の実施例である動画像編集方法を適用した動画像編集装置の構成を示すブロック図である。この図において、図１の各部に対応する部分には同一の符号を付け、その説明を省略する。この図に示す動画像編集装置においては、図１に示す差分画像変換部２及び動きベクトル変換部３に代えて、差分画像変換部３１及び動きベクトル変換部３２が新たに設けられている。
【００６６】
差分画像変換部３１は、図１に示す差分画像変換部２の構成に加えて、比較・係数部３３と、選択制御部３４と、選択部３５とが新たに設けられている。比較・係数部３３は、選択制御部３４において後述する第１の差分画像データ変換方法が選択されて、フレーム間予測符号化フレームの編集処理が行われた場合、差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'１と編集前の差分画像符号化データＣとを比較し、これら２つの差分画像符号化データＣ'１及びＣが異なるマクロブロックの個数を計数してその計数結果を選択制御部３４へ供給する。選択制御部３４は、ＣＰＵの制御の下、編集後の差分画像符号化データＣ'として、減算器２８において編集前の復号化画像Ｙから編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を減算して得られた差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ'を差分画像符号化部１３において再符号化して得られた編集後の差分画像符号化データＣ'１を用いる第１の差分画像データ変換方法、あるいは編集前の差分画像符号化データＣを変更せずにそのまま用いる第２の差分画像データ変換方法のいずれか一方を選択して選択部３５を切り換えるとともに、比較・係数部３３から供給される計数結果を記憶する記憶部を有している。選択部３５は、選択制御部３４により切り換えられ、可変長復号化部１から供給される編集前の差分画像符号化データＣ又は差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'１のいずれか一方を選択して、編集後の差分画像符号化データＣ'として差分画像復号化部１２及び可変長符号化部４へ供給する。
【００６７】
動きベクトル変換部３２は、図１に示す動きベクトル変換部３の構成に加えて、比較・係数部４１と、選択制御部４２と、選択部４３とが新たに設けられている。比較・係数部４１は、選択制御部４２において、後述する第１の動きベクトル決定方法が選択されて、フレーム間予測符号化フレームの編集処理が行われた場合、可変長復号化部１から供給される編集前の動きベクトルＶと、動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１とを比較し、これら２つの動きベクトルＶ'１及びＶが異なるマクロブロックの個数を計数してその計数結果を選択制御部４２へ供給する。選択制御部４２は、ＣＰＵの制御の下、編集後の動きベクトルＶ'として、動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１を用いる第１の動きベクトル決定方法、あるいは編集前の動きベクトルＶを変更せずにそのまま用いる第２の動きベクトル決定方法のいずれか一方を選択するとともに、比較・係数部４１から供給される計数結果を記憶する記憶部を有している。選択部４３は、選択制御部４２により切り換えられ、可変長復号化部１から供給される編集前の動きベクトルＶ又は動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１のいずれか一方を選択して、編集後の動きベクトルＶ'として動き補償部２２及び可変長符号化部４へ供給する。
【００６８】
次に、上記構成の動画像編集装置を構成するＣＰＵの編集処理の動作のうち、あるフレーム間予測符号化フレームの圧縮符号化に利用する１個又は２個の参照フレームに誤差が発生する場合のフレーム間予測符号化フレーム処理部を制御する処理の詳細について、図７〜図１１に示すフローチャートを参照して説明する。なお、ＣＰＵの編集処理のその他の処理については、上記した第１の実施例の処理、すなわち、図２の処理のうち、ステップＳＡ８の処理以外の処理と略同様であるので、その説明を省略する。
【００６９】
まず、フレーム間予測符号化フレーム処理の概略について、図７に示すフローチャートを参照して説明する。
ＣＰＵは、ステップＳＢ１の処理へ進み、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要があるか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、選択制御部４２を制御して、第２の動きベクトル決定方法を選択させた後、ステップＳＢ２へ進む。これにより、選択部４３は、選択制御部４２により切り換えられ、可変長復号化部１から供給される編集前の動きベクトルＶを選択して、編集後の動きベクトルＶ'として動き補償部２２及び可変長符号化部４へ供給する。ステップＳＢ２では、ＣＰＵは、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要があるか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、選択制御部３４を制御して、第２の差分画像データ変換方法を選択させた後、図２に示すステップＳＡ９へ進む。これにより、選択部３５は、選択制御部３４により切り換えられ、可変長復号化部１から供給される編集前の差分画像符号化データＣを選択して、編集後の差分画像符号化データＣ'として差分画像復号化部１２及び可変長符号化部４へ供給する。したがって、ステップＳＡ９では、ＣＰＵは、編集前の符号化データ（Ｖ，Ｃ）を当該フレームの編集後の符号化データ（Ｖ'，Ｃ'）としてそのまま出力させる。
【００７０】
一方、ステップＳＢ１の判断結果が「ＹＥＳ」の場合、すなわち、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要がある場合には、ＣＰＵは、選択制御部４２を制御して、編集後の動きベクトルＶ'として、動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１を用いる第１の動きベクトル決定方法を選択させた後、ステップＳＢ３へ進む。これにより、選択部４３は、選択制御部４２により、動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１を選択して、編集後の動きベクトルＶ'として動き補償部２２及び可変長符号化部４へ供給するように、切り換えられる。
【００７１】
ステップＳＢ３では、ＣＰＵは、動きベクトル探索部２５及び動き補償部２２を制御して、編集前の動きベクトルＶを中心としてその周囲に存在する複数個の動きベクトルの中から、動き補償部２１から供給される編集前の動き補償画像ＭＣ（Ｘ，Ｖ）と、動き補償部２２から一時的に供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）との差ΔＭＣ（式（３）参照）を最小にする動きベクトルを探索させ、この動きベクトルを一時的な編集後の動きベクトルＶ'として選択部４３を介して動き補償部２２へ供給させるとともに、探索の結果最終的に得られた編集後の動きベクトルＶ'を選択部４３を介して動き補償部２２及び可変長符号化部４へ供給させた後、ステップＳＢ４へ進む。動き補償部２２は、フレーム記憶部２４に記憶されている編集後の参照画像Ｘ'を参照して、動きベクトル探索部２５から一時的に供給される編集後の動きベクトルＶ'を利用して動き補償を行って一時的に編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を得て、この一時的に得た編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を動きベクトル探索部２５へ供給する。
【００７２】
ステップＳＢ４では、ＣＰＵは、比較・係数部４１を制御して、可変長復号化部１から供給される編集前の動きベクトルＶと、動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１とを比較させ、これら２つの動きベクトルＶ'１及びＶが異なるマクロブロックの個数を計数させてその計数結果を選択制御部４２へ供給させた後、ステップＳＢ５へ進む。ステップＳＢ５では、ＣＰＵは、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要があるか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、選択制御部３４を制御して、第２の差分画像データ変換方法を選択させた後、図２に示すステップＳＡ９へ進む。これにより、選択部３５は、選択制御部３４により切り換えられ、可変長復号化部１から供給される編集前の差分画像符号化データＣを選択して、編集後の差分画像符号化データＣ'として差分画像復号化部１２及び可変長符号化部４へ供給する。したがって、可変長符号化部４は、動きベクトル探索部２５から選択部４３を介して供給される編集後の動きベクトルＶ'（Ｖ'１）と、可変長復号化部１から選択部３５を介して供給される編集後の差分画像符号化データＣ'（Ｃ）とから編集後の符号化データ（Ｖ'，Ｃ'）を符号化して出力する。これにより、ステップＳＡ９では、ＣＰＵは、編集後の符号化データ（Ｖ'，Ｃ）を当該フレームの編集後の符号化データ（Ｖ'，Ｃ'）として出力させる。
【００７３】
一方、ステップＳＢ５の判断結果が「ＹＥＳ」の場合、すなわち、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要がある場合には、ＣＰＵは、動き補償部２２を制御して、動きベクトル探索部２５から最終的に供給される編集後の動きベクトルＶ'を利用させて動き補償を行わせて最終的に編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を得させて、この最終的に得えられた編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を加算器２７及び減算器２８へ供給させるとともに、選択制御部３４を制御して、第１の差分画像データ変換方法を選択させた後、ステップＳＢ６へ進む。これにより、減算器２８は、加算器２６から供給される編集前の復号化データＹから、動き補償部２２から供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を減算して、減算結果である差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を差分画像符号化部１３へ供給する。また、選択部３５は、選択制御部３４により、差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'１を選択して、編集後の差分画像符号化データＣ'として差分画像復号化部１２及び可変長符号化部４へ供給するように、切り換えられる。
【００７４】
また、ステップＳＢ２の判断結果が「ＹＥＳ」の場合、すなわち、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要がある場合には、ＣＰＵは、動き補償部２２を制御して、可変長復号化部１から選択部４３を介して供給される編集後の動きベクトルＶ'（Ｖ）を利用させて動き補償を行わせて編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を得させて、この編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を加算器２７及び減算器２８へ供給させるとともに、選択制御部３４を制御して、第１の差分画像データ変換方法を選択させた後、ステップＳＢ６へ進む。これにより、減算器２８は、加算器２６から供給される編集前の復号化データＹから、動き補償部２２から供給される編集後の動き補償画像ＭＣ（Ｘ'，Ｖ'）を減算して、減算結果である差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を差分画像符号化部１３へ供給する。また、選択部３５は、選択制御部３４により、差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'１を選択して、編集後の差分画像符号化データＣ'として差分画像復号化部１２及び可変長符号化部４へ供給するように、切り換えられる。
【００７５】
ステップＳＢ６では、ＣＰＵは、差分画像符号化部１３を制御して、差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ'１を符号化させた後、ステップＳＢ７へ進む。これにより、差分画像符号化部１３は、差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝から編集後の差分画像符号化データＣ１'を符号化し、比較・計数部３３と、選択部３５を介して差分復号化部１２及び可変長符号化部４とへ供給する。ステップＳＢ７では、ＣＰＵは、比較・係数部３３を制御して、差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'１と編集前の差分画像符号化データＣとを比較させ、これら２つの差分画像符号化データＣ'１及びＣが異なるマクロブロックの個数を計数してその計数結果を選択制御部３４へ供給させた後、図２に示すステップＳＡ９へ進む。これにより、可変長符号化部４は、動きベクトル探索部２５から選択部４３を介して供給される編集後の動きベクトルＶ'（Ｖ'１）又は可変長復号化部１から選択部４３を介して供給される編集後の動きベクトルＶ'（Ｖ）と、差分符号化部１３から選択部３５を介して供給される編集後の差分画像符号化データＣ'（Ｃ'１）とから編集後の符号化データ（Ｖ'，Ｃ'）を符号化して出力する。これにより、ステップＳＡ９では、ＣＰＵは、編集後の符号化データ（Ｖ'１，Ｃ'１）又は（Ｖ，Ｃ'１）を当該フレームの編集後の符号化データ（Ｖ'，Ｃ'）として出力させる。
【００７６】
次に、図７に示すステップＳＢ１の処理、すなわち、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要があるか否かを判定するＶ変更判定処理について、図８に示すフローチャートを参照して説明する。
まず、ＣＰＵは、ステップＳＣ１の処理へ進み、供給される編集前の復号化データＹがＢフレームであるか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、ステップＳＣ２へ進む。ステップＳＣ２では、ＣＰＵは、編集前の復号化データＹの２個の参照フレームをフレームＸ１及びＸ２とした後、ステップＳＣ３へ進む。ステップＳＣ３では、ＣＰＵは、フレームＸ１が所定の条件αを満足するか否かを判断する。条件αについては、後述する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、ステップＳＣ４へ進む。ステップＳＣ４では、ＣＰＵは、フレームＸ２が所定の条件αを満足するか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要がないと判定し、図７に示すステップＳＢ２へ進む。
【００７７】
一方、ステップＳＣ３の判断結果が「ＮＯ」の場合、すなわち、フレームＸ１が所定の条件αを満足しない場合には、ＣＰＵは、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要があると判定し、図７に示すステップＳＢ３へ進む。また、ステップＳＣ４の判断結果が「ＮＯ」の場合、すなわち、フレームＸ２が所定の条件αを満足しない場合にも、ＣＰＵは、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要があると判定し、図７に示すステップＳＢ３へ進む。
【００７８】
また、ステップＳＣ１の判断結果が「ＮＯ」の場合、すなわち、供給される編集前の復号化データＹがＢフレームでなく、Ｐフレームである場合には、ＣＰＵは、ステップＳＣ５へ進む。ステップＳＣ５では、ＣＰＵは、編集前の復号化データＹの１個の参照フレームをフレームＸとした後、ステップＳＣ６へ進む。ステップＳＣ６では、ＣＰＵは、フレームＸが所定の条件αを満足するか否かを判断する。この判断結果が「ＹＥＳ」の場合には、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要がないと判定し、図７に示すステップＳＢ２へ進む。
一方、ステップＳＣ６の判断結果が「ＮＯ」の場合、すなわち、フレームＸが所定の条件αを満足しない場合には、ＣＰＵは、編集後の動きベクトルＶ'を編集前の動きベクトルＶから変更する必要があると判定し、図７に示すステップＳＢ３へ進む。
【００７９】
次に、図７に示すステップＳＢ２及びＳＢ５の処理、すなわち、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要があるか否かを判定するＣ変更判定処理について、図９に示すフローチャートを参照して説明する。
まず、ＣＰＵは、ステップＳＤ１の処理へ進み、供給される編集前の復号化データＹがＢフレームであるか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、ステップＳＤ２へ進む。ステップＳＤ２では、ＣＰＵは、編集前の復号化データＹの２個の参照フレームをフレームＸ１及びＸ２とした後、ステップＳＤ３へ進む。ステップＳＤ３では、ＣＰＵは、フレームＸ１が所定の条件βを満足するか否かを判断する。条件βについては、後述する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、ステップＳＤ４へ進む。ステップＳＤ４では、ＣＰＵは、フレームＸ２が所定の条件βを満足するか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要がないと判定し、図２に示すステップＳＡ９へ進む。
【００８０】
一方、ステップＳＤ３の判断結果が「ＮＯ」の場合、すなわち、フレームＸ１が所定の条件βを満足しない場合には、ＣＰＵは、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要があると判定し、図７に示すステップＳＢ６へ進む。また、ステップＳＤ４の判断結果が「ＮＯ」の場合、すなわち、フレームＸ２が所定の条件βを満足しない場合にも、ＣＰＵは、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要があると判定し、図７に示すステップＳＢ６へ進む。
【００８１】
また、ステップＳＤ１の判断結果が「ＮＯ」の場合、すなわち、供給される編集前の復号化データＹがＢフレームでなく、Ｐフレームである場合には、ＣＰＵは、ステップＳＤ５へ進む。ステップＳＤ５では、ＣＰＵは、編集前の復号化データＹの１個の参照フレームをフレームＸとした後、ステップＳＤ６へ進む。ステップＳＤ６では、ＣＰＵは、フレームＸが所定の条件βを満足するか否かを判断する。この判断結果が「ＹＥＳ」の場合には、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要がないと判定し、図２に示すステップＳＡ９へ進む。
一方、ステップＳＤ６の判断結果が「ＮＯ」の場合、すなわち、フレームＸが所定の条件βを満足しない場合には、ＣＰＵは、編集後の差分画像符号化データＣ'を編集前の差分画像符号化データＣから変更する必要があると判定し、図７に示すステップＳＢ６へ進む。
【００８２】
次に、図８に示すステップＳＣ３、ＳＣ４及びＳＣ６の処理、すなわち、フレームＸ１、Ｘ２、あるいはＸが所定の条件αを満足するか否かを判定するＶ条件満足処理について、図１０に示すフローチャートを参照して説明する。以下の説明では、フレームＸ１、Ｘ２、あるいはＸをフレームＸで代表させて説明する。
まず、ＣＰＵは、ステップＳＥ１の処理へ進み、編集によりフレームＸが再符号化されたか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、再符号化によりフレームＸに誤差が発生しているため、フレームＸが所定の条件αを満足しないと判定する。
一方、ステップＳＥ１の判断結果が「ＮＯ」の場合、すなわち、編集によりフレームＸが再符号化されていない場合には、ＣＰＵは、ステップＳＥ２へ進む。ステップＳＥ２では、ＣＰＵは、編集によりフレームＸの符号化データが変更されたか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、編集によりフレームＸに発生した誤差が小さく、フレームＸを参照する編集前の復号化データＹの動きベクトルＶを変更しても、編集により編集前の復号化データＹに発生する誤差が削減されないと考えられるため、フレームＸが所定の条件αを満足すると判定する。
【００８３】
一方、ステップＳＥ２の判断結果が「ＹＥＳ」の場合、すなわち、フレームＸの符号化データが変更されていた場合は、ＣＰＵは、ステップＳＥ３へ進む。ステップＳＥ３では、ＣＰＵは、第１の動きベクトル決定方法が選択され、フレームＸにおいて編集により動きベクトルＶが変更されたか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、第２の動きベクトル決定方法が選択され、編集によりフレームＸに発生した誤差が小さく、フレームＸを参照する編集前の復号化データＹの動きベクトルＶを変更しても、編集により編集前の復号化データＹに発生する誤差が削減されないと考えられるため、フレームＸが所定の条件αを満足すると判定する。
【００８４】
一方、ステップＳＥ３の判断結果が「ＹＥＳ」の場合、すなわち、第１の動きベクトル決定方法が選択され、フレームＸにおいて編集により動きベクトルＶが変更された場合には、ＣＰＵは、ステップＳＥ４へ進む。ステップＳＥ４では、ＣＰＵは、比較・係数部４１が、可変長復号化部１から供給される編集前の動きベクトルＶと、動きベクトル探索部２５から供給される探索結果の動きベクトルＶ'１とを比較し、これら２つの動きベクトルＶ'１及びＶが異なるマクロブロックの個数を計数し、選択制御部４２を構成する記憶部に記憶した計数結果を読み出し、その計数結果が所定の閾値以上であるか否か判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、第１の動きベクトル決定方法が選択されたが、動きベクトルＶ'１及びＶが異なるマクロブロックの個数が所定の閾値より小さく、編集によりフレームＸに発生した誤差が小さく、フレームＸを参照する編集前の復号化データＹの動きベクトルＶを変更しても、編集により編集前の復号化データＹに発生する誤差が削減されないと考えられるため、フレームＸが所定の条件αを満足すると判定する。
一方、ステップＳＥ４の判断結果が「ＹＥＳ」の場合、すなわち、第１の動きベクトル決定方法が選択され、かつ、動きベクトルＶ'１及びＶが異なるマクロブロックの個数が所定の閾値以上である場合には、ＣＰＵは、フレームＸが所定の条件αを満足しないと判定する。
【００８５】
次に、図９に示すステップＳＤ３、ＳＤ４及びＳＤ６の処理、すなわち、フレームＸ１、Ｘ２、あるいはＸが所定の条件βを満足するか否かを判定するＣ条件満足処理について、図１１に示すフローチャートを参照して説明する。
まず、ＣＰＵは、ステップＳＦ１の処理へ進み、編集によりフレームＸが再符号化されたか否かを判断する。この判断結果が「ＹＥＳ」の場合には、ＣＰＵは、再符号化によりフレームＸに誤差が発生しているため、フレームＸが所定の条件βを満足しないと判定する。
一方、ステップＳＦ１の判断結果が「ＮＯ」の場合、すなわち、編集によりフレームＸが再符号化されていない場合には、ＣＰＵは、ステップＳＦ２へ進む。ステップＳＦ２では、ＣＰＵは、編集によりフレームＸの符号化データが変更されたか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、編集によりフレームＸに発生した誤差が小さく、フレームＸを参照する編集前の復号化データＹの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を再符号化しても、編集により編集前の復号化データＹに発生する誤差が削減されないと考えられるため、フレームＸが所定の条件βを満足すると判定する。
【００８６】
一方、ステップＳＦ２の判断結果が「ＹＥＳ」の場合、すなわち、編集によりフレームＸの符号化データが変更されていた場合は、ＣＰＵは、ステップＳＦ３へ進む。ステップＳＦ３では、ＣＰＵは、第１の差分画像データ変換方法が選択され、編集によりフレームＸは差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝が再符号化されたか否かを判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、第２の差分画像データ変換方法が選択され、編集によりフレームＸに発生した誤差が小さく、フレームＸを参照する編集前の復号化データＹの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を再符号化しても、編集により編集前の復号化データＹに発生する誤差が削減されないと考えられるため、フレームＸが所定の条件βを満足すると判定する。
【００８７】
一方、ステップＳＦ３の判断結果が「ＹＥＳ」の場合、すなわち、第１の差分画像データ変換方法が選択され、編集によりフレームＸは差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝が再符号化された場合には、ＣＰＵは、ステップＳＦ４へ進む。ステップＳＦ４では、ＣＰＵは、比較・係数部３３が、差分画像符号化部１３から供給される編集後の差分画像符号化データＣ'１と編集前の差分画像符号化データＣとを比較し、これら２つの差分画像符号化データＣ'１及びＣが異なるマクロブロックの個数を計数し、選択制御部３４を構成する記憶部に記憶した計数結果を読み出し、その計数結果が所定の閾値以上であるか否か判断する。この判断結果が「ＮＯ」の場合には、ＣＰＵは、第１の差分画像データ変換方法が選択されたが、差分画像符号化データＣ'１及びＣが異なるマクロブロックの個数が所定の閾値より小さく、編集によりフレームＸに発生した誤差が小さく、フレームＸを参照する編集前の復号化データＹの差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝を再符号化しても、編集により編集前の復号化データＹに発生する誤差が削減されないと考えられるため、フレームＸが所定の条件βを満足すると判定する。
一方、ステップＳＦ４の判断結果が「ＹＥＳ」の場合、すなわち、第１の差分画像データ変換方法が選択され、かつ、差分画像符号化データＣ'１及びＣが異なるマクロブロックの個数が所定の閾値以上である場合には、ＣＰＵは、フレームＸが所定の条件βを満足しないと判定する。
【００８８】
このように、この例の構成によれば、編集により参照フレームに誤差が発生した編集前の復号化データＹに対して、編集により発生する誤差を削減できる可能性がある場合に限り、動きベクトルＶの変更又は差分画像｛Ｙ−ＭＣ（Ｘ'，Ｖ'）｝の再符号化を行う。このため、上記した第３の実施例と比較して、発生する画質劣化を大きく増大させることなく、必要な計算量を少なくすることができる。
【００８９】
以上、この発明の実施例を図面を参照して詳述してきたが、具体的な構成はこの実施例に限られるものではなく、この発明の要旨を逸脱しない範囲の設計の変更等があってもこの発明に含まれる。
例えば、上述の各実施例においては、フレーム間予測符号化フレーム処理部の各部をハードウェアで構成した例を示したが、これに限定されない。すなわち、上記再符号化部や上記フレーム間予測符号化フレーム処理部を、ＣＰＵと、ＲＯＭやＲＡＭ等の内部記憶装置と、ＦＤＤ、ＨＤＤ、ＣＤ−ＲＯＭドライバ等の外部記憶装置と、表示部と、操作部とを有するコンピュータによって構成し、上記再符号化部、可変長復号化部１、差分画像変換部２及び３１、動き補償部２１及び２２、動きベクトル探索部２５、加算器２６及び２７、減算器２８、選択制御部４２、選択部４３がＣＰＵによって構成され、これらの機能が動画像編集プログラムとして、ＲＯＭ等の半導体メモリや、ＦＤ、ＨＤやＣＤ−ＲＯＭ等の記憶媒体に記憶されていると構成しても良い。この場合、上記内部記憶装置、あるいは外部記憶装置がフレーム記憶部２３及び２４となり、動画像編集プログラムは、記憶媒体からＣＰＵに読み込まれ、ＣＰＵの動作を制御する。ＣＰＵは、動画像編集プログラムが起動されると、上記再符号化部、可変長復号化部１、差分画像変換部２及び３１、動き補償部２１及び２２、動きベクトル探索部２５、加算器２６及び２７、減算器２８、選択制御部４２、選択部４３として機能し、動画像編集プログラムの制御により、上記した処理を実行するのである。
また、上述の第４の実施例の構成に、上述の第２及び第３の実施例の構成を適用しても、もちろん良い。
また、上述の第４の実施例において説明したすべての処理を行う必要はなく、例えば、動きベクトルは編集前の動きベクトルＶをそのまま用い、差分画像符号化データＣだけを変更しても良いし、逆に、差分画像符号化データは編集前の差分画像符号化データＣをそのまま用い、動きベクトルだけを変更しても良い。
【００９０】
【発明の効果】
以上説明したように、この発明の構成によれば、編集前の動画像を構成し、編集により削除されずに編集後の動画像を構成するフレームについて、その動き補償に利用する１個又は２個の参照フレームが編集により欠落しないが処理が施されて誤差が発生する場合には、そのフレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から、編集前の動き補償画像と編集後の動き補償画像との差を最小にする編集後の動きベクトルを探索するようにしているので、編集により参照フレームに発生した画質劣化が編集後の動き補償画像に伝搬されて発生する画質劣化を、できる限り小さくすることができる。
また、この発明の別の構成によれば、編集後の動きベクトルを利用して動き補償を行って得られる編集後の動き補償画像をフレームの編集前の復号化データから減算して得られる差分画像から編集後の差分画像符号化データを符号化し、この編集後の差分画像符号化データと、上記編集後の動きベクトルとからフレームの編集後の符号化データを符号化するようにしているので、編集により参照フレームに発生した画質劣化が編集後の動き補償画像に伝搬されて発生する画質劣化を、より一層小さくすることができる。
また、この発明の別の構成によれば、編集前の動画像を構成し、編集により削除されずに編集後の動画像を構成する対象フレームについて、その動き補償に利用する１個又は２個の参照フレームが編集により欠落しないが処理が施されて誤差が発生する場合であり、かつ、１個又は２個の参照フレームのいずれかについて、編集により再符号化されて誤差が発生するフレームであるか、編集により符号化データ及び動きベクトルが変更され、編集前の動きベクトルと編集後の動きベクトルとが異なるマクロブロックの個数が所定の閾値以上であるといういずれかの条件を満たす場合には、対象フレームの編集前の動きベクトルを中心としてその周囲に存在する複数個の動きベクトルの中から、編集前の動き補償画像と編集後の動き補償画像との差を最小にする編集後の動きベクトルを探索するとともに、編集前の動きベクトルと編集後の動きベクトルとが異なるマクロブロックの個数を計数する、逆にいえば、対象フレームの動きベクトルを変更する場合と変更しない場合とを比較して、発生する誤差の大きさが同程度になると判断できる場合には、動きベクトルを変更しないようにしているので、編集によって発生する画質劣化を増大させることなく、必要な計算量を少なくすることができる。
また、この発明の別の構成によれば、編集前の動画像を構成し、編集により削除されずに編集後の動画像を構成する対象フレームについて、その動き補償に利用する１個又は２個の参照フレームが編集により欠落しないが処理が施されて誤差が発生する場合であり、かつ、１個又は２個の参照フレームのいずれかについて、編集により再符号化されて誤差が発生するフレームであるか、編集により符号化データが変更されるとともに、差分画像が再符号化され、編集後の差分画像符号化データと編集前の差分画像符号化データとが異なるマクロブロックの個数が所定の閾値以上であるといういずれかの条件を満たす場合には、対象フレームの編集後の動きベクトルを利用して動き補償を行って得られる編集後の動き補償画像を対象フレームの編集前の復号化データから減算して得られる差分画像から編集後の差分画像符号化データを符号化し、編集後の差分画像符号化データと、編集後の動きベクトルとから対象フレームの編集後の符号化データを符号化するとともに、編集後の差分画像符号化データと編集前の差分画像符号化データとが異なるマクロブロックの個数を計数する、逆にいえば、対象フレームの差分画像を再符号化する場合と再符号化しない場合とを比較して、発生する誤差の大きさが同程度になると判断できる場合には、差分画像の再符号化を変更しないようにしているので、編集によって発生する画質劣化を増大させることなく、必要な計算量を少なくすることができる。
また、この発明の別の構成によれば、編集後の動きベクトルの探索範囲を、編集前の動きベクトルの近傍の一定範囲内に含まれる動きベクトルや、編集前の動きベクトルと同一の動きベクトルか、あるいは編集前の動きベクトルの近傍の一定の範囲内に含まれ、かつ、水平方向又は垂直方向のいずれかの座標値が非整数である動きベクトルに制限するようにしているので、編集によって発生する画質劣化を増大させることなく、必要な計算量を少なくすることができる。
したがって、簡単な構成や少ない計算量で、圧縮符号化された動画像についてもフレームが欠落することなく削除や抽出等の編集を行うことができる。さらに、編集による画質劣化も抑制することができる。
【図面の簡単な説明】
【図１】この発明の第１の実施例である動画像編集方法を適用した動画像編集装置を構成するフレーム間予測符号化フレーム処理部の構成を示すブロック図である。
【図２】同装置を構成するＣＰＵの動作の一例を表すフローチャートである。
【図３】第１の実施例、第１及び第２の従来例である動画像編集方法を用いて動画像を編集した際に発生した誤差の大きさを比較するための図である。
【図４】この発明の第２の実施例である動画像編集方法を説明するための図である。
【図５】この発明の第３の実施例である動画像編集方法を説明するための図である。
【図６】この発明の第４の実施例である動画像編集方法を適用した動画像編集装置を構成するフレーム間予測符号化フレーム処理部の構成を示すブロック図である。
【図７】同装置を構成するＣＰＵの動作の一例を表すフローチャートである。
【図８】同装置を構成するＣＰＵの動作の一例を表すフローチャートである。
【図９】同装置を構成するＣＰＵの動作の一例を表すフローチャートである。
【図１０】同装置を構成するＣＰＵの動作の一例を表すフローチャートである。
【図１１】同装置を構成するＣＰＵの動作の一例を表すフローチャートである。
【図１２】第１の従来例である動画像編集方法を説明するための説明図である。
【図１３】第２の従来例である動画像編集方法を説明するための説明図である。
【図１４】第１及び第２の従来例である動画像編集方法の不都合点を説明するための説明図である。
【符号の説明】
２，３１    差分画像変換部
３，３２    動きベクトル変換部
４          可変長符号化部
１３        差分画像符号化部
２１，２２  動き補償部
２５        動きベクトル探索部
２８        減算器
３３，４１  比較・計数部（計数部、第１の計数部、第２の計数部）
【図１】
0004524908.tif 000007
【図２】
0004524908.tif 000008
【図３】
0004524908.tif 000009
【図４】
0004524908.tif 000010
【図５】
0004524908.tif 000011
【図６】
0004524908.tif 000012
【図７】
0004524908.tif 000013
【図８】
0004524908.tif 000014
【図９】
0004524908.tif 000015
【図１０】
0004524908.tif 000016
【図１１】
0004524908.tif 000017
【図１２】
0004524908.tif 000018
【図１３】
0004524908.tif 000019
【図１４】
0004524908.tif 000020