(57)【要約】      （修正有）【課題】向上した圧縮速度を有する動画圧縮装置及びその方法を提供する。【解決手段】現在の入力画像を保存する第１フレームメモリ、以前画像を保存する第２フレームメモリ、第１フレームメモリから現在画像を読出し、現在マクロブロックの探索領域に対応するクラスタを第２フレームメモリの探索領域から読出し、読出された現在マクロブロックの輝度ブロック及びクラスタに基づいて、現在マクロブロックの輝度ブロックに対する動きベクトルを計算する動き推定器、及び第２フレームメモリから動きベクトルだけ移動した画像を読出す動き補償器と、を備える。現在画像と動き補償器から読出された以前画像との差分信号に対する圧縮が行われ、圧縮差分信号の復元が行われ、復元差分信号は、動き補償器から読出された出力に加算されて復元され、復元された現在画像は、第２フレームメモリに保存されるクラスタの一部にマクロブロックの輝度ブロック単位で保存される。【選択図】図３
2006121702.tif 000002
【特許請求の範囲】
【請求項１】
動画圧縮装置において、
一つのページに保存された現在マクロブロックの輝度ブロックに分割された入力画像を保存する第１フレームメモリと、
所定数のマクロブロックの輝度ブロックを含み、一つのページに保存されたクラスタに分割された以前画像を保存する第２フレームメモリと、
前記第１フレームメモリから前記現在マクロブロックの輝度ブロックを読出し、前記現在マクロブロックの探索領域に対応するクラスタを前記第２フレームメモリの探索領域から読出し、前記読出された現在マクロブロックの輝度ブロック及びクラスタに基づいて、前記現在マクロブロックの輝度ブロックに対する動きベクトルを計算する動き推定器と、
前記第２フレームメモリから前記動きベクトルだけ移動したマクロブロックの輝度ブロックを読出す動き補償器と、を備え、
前記現在マクロブロックの輝度ブロックと前記動き補償器から読出されたマクロブロックの輝度ブロックとの差に基づいて計算された差分信号に対する圧縮が行われ、前記圧縮された差分信号に対する復元が行われ、
前記復元された差分信号は、前記動き補償器から読出されたマクロブロックの輝度ブロックに加算されて前記現在マクロブロックとして復元され、前記復元された現在マクロブロックは、前記第２フレームメモリに保存されるクラスタの一部にマクロブロックの輝度ブロック単位で保存されることを特徴とする動画圧縮装置。
【請求項２】
前記第２フレームメモリの探索領域のサイズは、前記動き推定器の探索範囲によって決定されることを特徴とする請求項１に記載の動画圧縮装置。
【請求項３】
前記クラスタのサイズは、前記第２フレームメモリの探索領域のサイズによって変更されることを特徴とすることを特徴とする請求項２に記載の動画圧縮装置。
【請求項４】
前記探索範囲が垂直方向に−１６／＋１５であるとき、前記クラスタに含まれたマクロブロックの輝度ブロックの数は、３個であることを特徴とする請求項３に記載の動画圧縮装置。
【請求項５】
前記第２フレームメモリの探索領域は、前記動き推定器に含まれたキャッシュメモリに保存されることを特徴とする請求項４に記載の動画圧縮装置。
【請求項６】
前記第１及び第２フレームメモリは、アクセス遅延時間を有するＤＲＡＭであることを特徴とする請求項１に記載の動画圧縮装置。
【請求項７】
前記差分信号に対する圧縮は、離散余弦変換、量子化、及び可変長符号化を含むことを特徴とする請求項１に記載の動画圧縮装置。
【請求項８】
前記復元された差分信号は、逆量子化及び逆離散余弦変換によって生成されることを特徴とする請求項１に記載の動画圧縮装置。
【請求項９】
動画圧縮方法において、
（ａ）入力画像を分割し、一つのページに保存された現在マクロブロックの輝度ブロックを第１フレームメモリから読出すステップと、
（ｂ）前記現在マクロブロックの探索領域に対応し、一つのページに保存された以前画像のクラスタを第２フレームメモリの探索領域から読出すステップと、
（ｃ）前記（ａ）ステップで読出された現在マクロブロックの輝度ブロック及び前記（ｂ）ステップで読出されたクラスタに基づいて動き推定を行い、前記動き推定によって出力される前記動きベクトルだけ移動したマクロブロックの輝度ブロックを前記第２フレームメモリから読出す動き補償を行うステップと、
（ｄ）前記（ｃ）ステップの動き補償によって読出されるマクロブロックの輝度ブロックと前記（ａ）ステップの現在マクロブロックの輝度ブロックとの差分信号を計算し、前記差分信号を圧縮するステップと、
（ｅ）前記（ｄ）ステップで圧縮される差分信号を復元し、前記復元された差分信号に前記（ｃ）ステップの動き補償によって読出されるマクロブロックの輝度ブロックを加算して前記現在マクロブロックを復元するステップと、
（ｆ）前記復元されたマクロブロックの輝度ブロックを前記第２フレームメモリに保存されるクラスタの一部に保存するステップと、
（ｇ）前記（ａ）ステップの入力画像から読出される現在マクロブロックの輝度ブロックが存在しなくなるまで、前記（ａ）、（ｂ）、（ｃ）、（ｄ）、及び（ｆ）ステップを反復するステップと、を含むことを特徴とする動画圧縮方法。
【請求項１０】
前記（ｂ）ステップでの第２フレームメモリの探索領域のサイズは、前記動き推定の探索範囲によって決定されることを特徴とする請求項９に記載の動画圧縮方法。
【請求項１１】
前記（ｂ）ステップでのクラスタのサイズは、前記第２フレームメモリの探索領域のサイズによって変更されることを特徴とすることを特徴とする請求項１０に記載の動画圧縮方法。
【請求項１２】
前記探索範囲が垂直方向に−１６／＋１５であるとき、前記クラスタに含まれたマクロブロックの輝度ブロックの数は、３個であることを特徴とする請求項１１に記載の動画圧縮方法。
【請求項１３】
前記第２フレームメモリの探索領域は、前記動き推定を行う動き推定器に含まれたキャッシュメモリに保存されることを特徴とする請求項１２に記載の動画圧縮方法。
【請求項１４】
前記（ａ）ステップの第１フレームメモリ及び前記（ｂ）ステップの第２フレームメモリは、アクセス遅延時間を有するＤＲＡＭであることを特徴とする請求項９に記載の動画圧縮方法。
【請求項１５】
前記差分信号に対する圧縮は、離散余弦変換、量子化、及び可変長符号化を含むことを特徴とする請求項９に記載の動画圧縮方法。
【請求項１６】
前記復元された差分信号は、逆量子化及び逆離散余弦変換によって生成されることを特徴とする請求項９に記載の動画圧縮方法。
【請求項１７】
現在入力画像のマクロブロックをそれぞれ保存するページを有する第１フレームメモリと、
前記第１フレームメモリと信号通信を行い、以前入力画像のマクロブロックから輝度ブロックのクラスタをそれぞれ保存するページを有する第２フレームメモリと、
前記第１及び第２フレームメモリと信号通信を行い、前記第１フレームメモリから現在マクロブロックの輝度ブロックを読出し、前記第２フレームメモリの探索領域から前記現在マクロブロックの探索領域に対応するクラスタを読出し、前記読出された現在マクロブロックの輝度ブロック及び前記読出されたクラスタに基づいて前記現在マクロブロックの輝度ブロックに対する動きベクトルを提供する動き推定器と、
前記動き推定器及び前記第２フレームメモリと信号通信を行い、前記第２フレームメモリから前記動きベクトルだけ移動したマクロブロックの輝度ブロックを読出す動き補償器と、を備えることを特徴とする動画圧縮装置。
【請求項１８】
前記現在マクロブロックの輝度ブロックと前記動き補償器から読出されたマクロブロックの輝度ブロックとの差に基づいて計算された差分信号に対する圧縮が行われ、前記圧縮された差分信号に対する復元が行われ、
前記復元された差分信号は、前記動き補償器から読出されたマクロブロックの輝度ブロックに加算されて前記現在マクロブロックとして復元され、前記復元された現在マクロブロックは、前記第２フレームメモリに保存されるクラスタの一部にマクロブロックの輝度ブロック単位で保存されることを特徴とする請求項１７に記載の動画圧縮装置。
【請求項１９】
前記第２フレームメモリの探索領域を保存するために、前記動き推定器と信号通信を行うキャッシュメモリをさらに備えることを特徴とする請求項１７に記載の動画圧縮装置。
【請求項２０】
出力バッファに保存されたビットストリームの量に基づいて、次のマクロブロックの輝度ブロックに対する量子化程度を制御するレート制御器をさらに備えることを特徴とする請求項１７に記載の動画圧縮装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画圧縮装置に係り、さらに詳細には、向上した圧縮速度を有する動画圧縮装置及びその方法に関する。
【背景技術】
【０００２】
ＭＰＥＧ−２、ＭＰＥＧ−４、及びＨ.２６４標準において、入力画像は、重畳されていない１６×１６ピクセルのマクロブロック単位で分割されて、前記マクロブロック単位で動き推定及び動き補償が行われる。その後、８×８ピクセルのブロック単位で離散余弦変換及び量子化を行い、その結果を可変長符号化して画像を圧縮する。
【０００３】
ＭＰＥＧ−２、ＭＰＥＧ−４、及びＨ.２６４標準を使用する動画圧縮装置は、内部に復元過程を含み、復元されたマクロブロックをフレームメモリに保存して次の画像を圧縮する時に動き推定のための参照画像として利用する。このような動画圧縮装置の一例が特許文献１に開示されている。
【０００４】
図１は、通常的な動画圧縮装置を概略的に示すブロックダイアグラムである。図１を参照すれば、通常的な動画圧縮装置１０は、フレームメモリ１２、圧縮部１４、及び出力バッファ１６を備える。
【０００５】
フレームメモリ１２は、入力バッファとしてカメラシステム（図示せず）を介して入力されるデジタル信号である入力画像ＩＮを保存する。圧縮部１４は、フレームメモリ１２を介して伝えられる入力画像をマクロブロック単位で圧縮する。出力バッファ１６は、ＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ Ｆｉｒｓｔ−Ｏｕｔ）メモリで実現され、圧縮部１４によって圧縮された画像を出力ストリームＯＵＴとして出力する。
【０００６】
圧縮部１４は、フレームメモリ１２から読出される入力画像ＩＮの現在マクロブロックの輝度ブロックと最も類似した１６×１６ピクセルの輝度ブロックを内部のフレームメモリに保存された以前画像（または以前フレーム）で探索して動きベクトルを計算する動き推定器を備える。
【０００７】
動き推定器は、動画圧縮装置１０で最も多くの計算（または演算）を行い、最も多くのメモリアクセスを行う。メモリアクセスは、メモリからの読出動作またはメモリ内部への保存動作（すなわち、書込み動作）を称す。
【０００８】
動き推定器が所定の探索範囲で動き推定を行うとき、圧縮部１４に含まれたフレームメモリの内部に探索領域が必要である。例えば、探索範囲が水平方向及び垂直方向にそれぞれ−１６／＋１５であるとき、探索領域は、４８×４８ピクセル（すなわち、（１６×２＋１６）×（１６×２＋１６）＝９個のマクロブロックの輝度ブロック）である。
【０００９】
４８×４８ピクセル２０が図２に示されている。すなわち、図２は、図１の圧縮部１４に含まれたフレームメモリの探索領域に保存された画像データの一例を示す。探索領域のデータは、ラスタースキャン順序で保存され、動き推定器の内部のキャッシュメモリ（例えば、ＳＲＡＭ）に保存される。
【００１０】
動き推定器が現在マクロブロックの輝度ブロックに対する動き推定を行うとき、圧縮部１４のフレームメモリから新たな１６×４８ピクセルを読出さねばならない。これは、動き推定器内のキャッシュメモリに３２×４８ピクセルが保存されているためである。このとき、圧縮部１４のフレームメモリからの読出時間Ｔｒ（または読出サイクル）は、次のように与えられる。
【００１１】
Ｔｒ＝（スキャンライン当たりピクセルの数／ワード当たりピクセルの数＋Ｌ）×総スキャンライン数＝（１６／４＋Ｌ）×４８＝４８（４＋Ｌ）
前記等式で、ワードは、４バイトの読出単位（またはデータ幅）を意味し、Ｌは、所定の遅延時間であって、所定のスキャンラインから次のスキャンラインにアクセスする時のアクセス遅延時間を意味する。スキャンラインは、圧縮部１４に含まれたフレームメモリの一つのページに連続的に保存された画像データ（ピクセル）に対応する。
【００１２】
アクセス遅延時間は、圧縮部１４のフレームメモリまたはフレームメモリ１２がＤＲＡＭ（Ｄｙｎａｍｉｃ Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）、同期式ＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ ＤＲＡＭ：ＳＤＲＡＭ）、またはＤＤＲ（Ｄｏｕｂｌｅ Ｄａｔａ Ｒａｔｅ）ＳＤＲＡＭである時に発生する。すなわち、ＤＲＡＭに対するアクセスは、ページ単位で行われ、選択されたページ内では、連続的な画像データの書込みまたは読出が可能であるが、ページが変更されるとき、遅延時間が発生する。
【００１３】
また、動き推定器は、現在マクロブロックの輝度ブロックに対する動き推定を行うとき、フレームメモリ１２から現在マクロブロックの輝度ブロックを読出さねばならない。そして、読出された現在マクロブロックの輝度ブロックに対する圧縮及び復元が行われた後に、復元されたマクロブロックの輝度ブロックが圧縮部１４のフレームメモリに保存される。したがって、フレームメモリ１２及び圧縮部１４のフレームメモリに対するアクセス時間Ｔｃは、次のように与えられる。
【００１４】
Ｔｃ＝（スキャンライン当たりピクセルの数／ワード当たりピクセルの数＋Ｌ）×マクロブロックの輝度ブロックに対するスキャンラインの数×アクセス数＝（１６／４＋Ｌ）×１６×２＝３２（４＋Ｌ）
前記等式で、アクセス数は、読出及び保存の回数を意味する。
【００１５】
したがって、一つの現在マクロブロックの輝度ブロックに対する動き推定のための総メモリアクセス時間Ｔｔは、次のように与えられる。
Ｔｔ＝Ｔｒ＋Ｔｃ＝４８（４＋Ｌ）＋３２（４＋Ｌ）＝８０Ｌ＋３２０
【００１６】
したがって、マクロブロックの輝度ブロックがそれぞれアクセス遅延時間Ｌを有するＤＲＡＭであるフレームメモリ１２及び圧縮部１４のフレームメモリから／にカメラシステムから入力される順序（すなわち、ラスタースキャン順序）で読出／保存されるので、図１に示した従来の技術による動画圧縮装置１０の圧縮時間は、多数のアクセス遅延時間Ｌを含みうる。その結果、動画圧縮速度が低下する。
【特許文献１】特開平１１−１３６６８０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
本発明が解決しようとする技術的課題は、向上した圧縮速度を有する動画圧縮装置及びその方法を提供することである。
【課題を解決するための手段】
【００１８】
前記課題を達成するために本発明による動画圧縮装置は、一つのページに保存された現在マクロブロックの輝度ブロックに分割された入力画像を保存する第１フレームメモリと、所定数のマクロブロックの輝度ブロックを含み、一つのページに保存されたクラスタに分割された以前画像を保存する第２フレームメモリと、前記第１フレームメモリから前記現在マクロブロックの輝度ブロックを読出し、前記現在マクロブロックの探索領域に対応するクラスタを前記第２フレームメモリの探索領域から読出し、前記読出された現在マクロブロックの輝度ブロック及びクラスタに基づいて、前記現在マクロブロックの輝度ブロックに対する動きベクトルを計算する動き推定器と、前記第２フレームメモリから前記動きベクトルだけ移動したマクロブロックの輝度ブロックを読出す動き補償器と、を備え、前記現在マクロブロックの輝度ブロックと前記動き補償器から読出されたマクロブロックの輝度ブロックとの差に基づいて計算された差分信号に対する圧縮が行われ、前記圧縮された差分信号に対する復元が行われ、前記復元された差分信号は、前記動き補償器から読出されたマクロブロックの輝度ブロックに加算されて前記現在マクロブロックとして復元され、前記復元された現在マクロブロックは、前記第２フレームメモリに保存されるクラスタの一部にマクロブロックの輝度ブロック単位で保存されることを特徴とする。
【００１９】
望ましい実施形態によれば、前記第２フレームメモリの探索領域のサイズは、前記動き推定器の探索範囲によって決定され、前記クラスタのサイズは、前記第２フレームメモリの探索領域のサイズによって変更される。
【００２０】
望ましい実施形態によれば、前記探索範囲が垂直方向に−１６／＋１５であるとき、前記クラスタに含まれたマクロブロックの輝度ブロックの数は３個であり、前記第２フレームメモリの探索領域は、前記動き推定器に含まれたキャッシュメモリに保存され、前記第１及び第２フレームメモリは、アクセス遅延時間を有するＤＲＡＭである。
【００２１】
前記課題を達成するために、本発明による動画圧縮方法は、（ａ）入力画像を分割し、一つのページに保存された現在マクロブロックの輝度ブロックを第１フレームメモリから読出すステップと、（ｂ）前記現在マクロブロックの探索領域に対応し、一つのページに保存された以前画像のクラスタを第２フレームメモリの探索領域から読出すステップと、（ｃ）前記（ａ）ステップで読出された現在マクロブロックの輝度ブロック及び前記（ｂ）ステップで読出されたクラスタに基づいて動き推定を行い、前記動き推定によって出力される前記動きベクトルだけ移動したマクロブロックの輝度ブロックを前記第２フレームメモリから読出す動き補償を行うステップと、（ｄ）前記（ｃ）ステップの動き補償によって読出されるマクロブロックの輝度ブロックと前記（ａ）ステップの現在マクロブロックの輝度ブロックとの差分信号を計算し、前記差分信号を圧縮するステップと、（ｅ）前記（ｄ）ステップで圧縮される差分信号を復元し、前記復元された差分信号に前記（ｃ）ステップの動き補償によって読出されるマクロブロックの輝度ブロックを加算して前記現在マクロブロックを復元するステップと、（ｆ）前記復元されたマクロブロックの輝度ブロックを前記第２フレームメモリを分割するクラスタの一部に保存するステップと、（ｇ）前記（ａ）ステップの入力画像から読出される現在マクロブロックの輝度ブロックが存在しなくなるまで、前記（ａ）、（ｂ）、（ｃ）、（ｄ）、及び（ｆ）ステップを反復するステップと、を含むことを特徴とする。
【００２２】
望ましい実施形態によれば、前記（ｂ）ステップでの第２フレームメモリの探索領域のサイズは、前記動き推定の探索範囲によって決定され、前記（ｂ）ステップでのクラスタのサイズは、前記第２フレームメモリの探索領域のサイズによって変更される。
【００２３】
望ましい実施形態によれば、前記探索範囲が垂直方向に−１６／＋１５であるとき、前記クラスタに含まれたマクロブロックの輝度ブロックの数は３個であり、前記第２フレームメモリの探索領域は、前記動き推定を行う動き推定器に含まれたキャッシュメモリに保存され、前記（ａ）ステップの第１フレームメモリ及び前記（ｂ）ステップの第２フレームメモリは、アクセス遅延時間を有するＤＲＡＭである。
【発明の効果】
【００２４】
本発明による動画圧縮装置及びその方法は、動き推定のために第１フレームメモリから一つのページに保存された現在マクロブロックの輝度ブロックを読出し、第２フレームメモリから一つのページに保存されたクラスタを読出しうるので、メモリアクセス時間を短縮させうる。その結果、動画圧縮速度が向上しうる。
【発明を実施するための最良の形態】
【００２５】
本発明と本発明の動作上の利点及び本発明の実施によって達成される目的を十分に理解するためには、本発明の望ましい実施形態を例示する添付図面及び添付図面に記載された内容を参照しなければならない。
以下、添付した図面を参照して、本発明の望ましい実施形態を説明することによって、本発明を詳細に説明する。各図面について、同一参照符号は、同一部材を表わす。
【００２６】
図３は、本発明の一実施形態による動画圧縮装置を示すブロックダイアグラムである。
図３を参照すれば、本発明による動画圧縮装置１００は、第１フレームメモリ１０２、減算器１０４、離散余弦変換（Ｄｉｓｃｒｅｔｅ Ｃｏｓｉｎｅ Ｔｒａｎｓｆｏｒｍ：ＤＣＴ）１０６、量子化器（Ｑｕａｎｔｉｚａｔｉｏｎ：Ｑ）１０８、可変長符号化器（Ｖａｒｉａｂｌｅ Ｌｅｎｇｔｈ Ｃｏｄｅｒ：ＶＬＣ）１１０、出力バッファ１１２、レート制御器１１４、逆量子化器（Ｉｎｖｅｒｓｅ Ｑｕａｎｔｉｚａｔｉｏｎ：ＩＱ）１１６、逆離散余弦変換器（Ｉｎｖｅｒｓｅ ＤＣＴ：ＩＤＣＴ）１１８、加算器１２０、動き補償器（Ｍｏｔｉｏｎ Ｃｏｍｐｅｎｓａｔｉｏｎ Ｐｒｏｃｅｓｓｏｒ：ＭＣＰ）１２２、第２フレームメモリ１２４、及び動き推定器（Ｍｏｔｉｏｎ Ｅｓｔｉｍａｔｉｏｎ Ｐｒｏｃｅｓｓｏｒ：ＭＥＰ）１２６を備える。
【００２７】
第１フレームメモリ１０２は、入力バッファとしてカメラシステム（図示せず）を介して入力されるデジタル信号の入力画像ＩＮを保存し、アクセス遅延時間を有するＤＲＡＭでありうる。入力画像ＩＮは、一つのページに保存された現在マクロブロックの輝度ブロックに分割される。前記ページは、スキャンラインに対応し、ページに画像データ（ピクセル）が連続的に保存される。
【００２８】
第２フレームメモリ１２４は、クラスタに分割された以前画像（または以前フレーム）を保存し、アクセス遅延時間を有するＤＲＡＭでありうる。前記クラスタは、所定数のマクロブロックの輝度ブロックを含み、一つのページに保存され、現在マクロブロックに対する動き推定が行われる時の現在マクロブロックの探索領域に対応する。
前記クラスタのサイズは、第２フレームメモリ１２４の探索領域のサイズによって変更されうる。例えば、前記クラスタは、ＭＥＰ １２６の探索範囲が垂直方向に−１６／＋１５であるとき、３個のマクロブロックの輝度ブロックを含みうる。
【００２９】
ＭＥＰ １２６は、第１フレームメモリ１０２から読出される入力画像ＩＮの現在マクロブロックの輝度ブロックと最も類似した１６×１６ピクセルの輝度ブロックを第２フレームメモリ１２４に保存された以前画像（または以前フレーム）で探索して動きベクトルを計算する。
ＭＣＰ １２２は、前記動きベクトルだけ移動したマクロブロックの輝度ブロックを第２フレームメモリ１２４に保存された以前画像から読出する。
【００３０】
減算器１０４は、ＭＣＰ １２２から読出されたマクロブロックの輝度ブロックと現在マクロブロックの輝度ブロックとの差分信号を計算する。この差分信号は、ＤＣＴ １０６、Ｑ １０８及びＶＬＣ １１０を介して圧縮される。圧縮された差分信号は、出力バッファ１１２に伝えられる。出力バッファ１１２は、ＦＩＦＯメモリとして実現され、圧縮された差分信号を出力ストリームＯＵＴとして出力する。レート制御器１１４は、出力バッファ１１２に保存されたビットストリームの量に基づいて次のマクロブロックの輝度ブロックに対する量子化程度を決定（または制御）する。
【００３１】
圧縮された差分信号は、ＩＱ １１６及びＩＤＣＴ １１８によって復元される。加算器１２０は、復元された差分信号にＭＣＰ １２２から読出されたマクロブロックの輝度ブロックを加算して現在マクロブロックを復元する。復元された現在マクロブロックの輝度ブロックは、次の画像（または次のフレーム）の動き推定に使われる探索領域データであり、第２フレームメモリ１２４に保存されるクラスタの一部に保存される。
【００３２】
ＭＥＰ １２６が所定の探索範囲を有して動き推定を行うとき、第２フレームメモリ１２４の内部に探索領域が必要である。第２フレームメモリ１２４の探索領域のサイズは、ＭＥＰ １２６の探索範囲によって決定される。例えば、探索範囲が水平方向及び垂直方向にそれぞれ−１６／＋１５であるとき、探索領域は、４８×４８ピクセル（すなわち、（１６×２＋１６）×（１６×２＋１６）＝９個のマクロブロックの輝度ブロック）である。
【００３３】
この４８×４８ピクセルを含む画像データ４００が図４に示されている。すなわち、図４は、第２フレームメモリ１２４の探索領域を含む画像データの一例を示す。探索領域データは、画像データの任意の位置に存在し、３個であるマクロブロックの輝度ブロックを含むクラスタに分割され、ＭＥＰ １２６の内部のキャッシュメモリ１２８（例えば、ＳＲＡＭ）に保存される。クラスタは、３×１６×１６＝７６８ピクセルの画像データであり、第２フレームメモリ１２４の一つのページに連続的に（または順次に）保存される。
【００３４】
ＭＥＰ １２６が現在マクロブロックの輝度ブロックに対する動き推定を行うとき、第２フレームメモリ１２４から新たな１６×４８ピクセルを読出さねばならない。これは、ＭＥＰ １２６内のキャッシュメモリ１２８に３２×４８ピクセルが保存されているためである。このとき、任意の現在マクロブロックの輝度ブロックに対する動き推定のための総メモリアクセス時間は、２つの場合に分類されて説明される。
【００３５】
第一の場合は、現在マクロブロックの輝度ブロックに対する動き推定に必要なマクロブロックの輝度ブロックがクラスタを構成する３個のマクロブロックの輝度ブロックのうち、中間輝度ブロックに対応する場合である。このとき、読出されたクラスタは、第２フレームメモリ１２４の一つのページに保存されているので、第２フレームメモリ１２４からの読出時間Ｔｒ１（または読出サイクル）は、次のように与えられる。
【００３６】
Ｔｒ１＝（クラスタ当たりピクセルの数）／（ワード当たりピクセルの数）＋Ｌ＝（７６８／４＋Ｌ）＝１９２＋Ｌ
前記等式で、ワードは、４バイトの読出単位（またはデータ幅）を意味し、Ｌは、遅延時間であって、所定のスキャンラインから次のスキャンラインにアクセスする時のアクセス遅延時間を意味する。スキャンラインは、第１フレームメモリ１０２または第２フレームメモリ１２４の一つのページに連続的に保存された画像データ（ピクセル）に対応する。クラスタは、３個のマクロブロックの輝度ブロックを含む。
【００３７】
また、ＭＥＰ １２６は、現在マクロブロックの輝度ブロックに対する動き推定を行うとき、第１フレームメモリ１０２から現在マクロブロックの輝度ブロックを読出さなければならない。そして、読出された現在マクロブロックの輝度ブロックに対する圧縮及び復元が行われた後に復元されたマクロブロックの輝度ブロックが第２フレームメモリ１２４に保存される。したがって、第１及び第２フレームメモリ１０２,１２４に対するアクセス時間Ｔｃ１は、次のように与えられる。
【００３８】
Ｔｃ１＝（現在マクロブロックの輝度ブロック当たりピクセルの数／ワード当たりピクセルの数＋Ｌ）×アクセス数＝（２５６／４＋Ｌ）×２＝２（６４＋Ｌ）
前記等式で、アクセス数は、読出及び保存の回数を意味する。
【００３９】
したがって、第一の場合において、一つの現在マクロブロックの輝度ブロックに対する動き推定のための総メモリアクセス時間Ｔｔ１は、次のように与えられる。
Ｔｔ１＝Ｔｒ１＋Ｔｃ１＝１９２＋Ｌ＋２（６４＋Ｌ）＝３Ｌ＋３２０
【００４０】
一方、第二の場合は、現在マクロブロックの輝度ブロックに対する動き推定に必要なマクロブロックの輝度ブロックがクラスタを構成する３個のマクロブロックの輝度ブロックのうち、上側輝度ブロックまたは下側輝度ブロックに対応する場合である。このとき、読出されたクラスタは、第２フレームメモリ１２４の２つのページに分けて保存されているので、第２フレームメモリ１２４からの読出時間Ｔｒ２は、次のように与えられる。
Ｔｒ２＝（２５６／４＋Ｌ）＋（５１２／４＋Ｌ）＝２Ｌ＋１９２
【００４１】
また、ＭＥＰ １２６は、現在マクロブロックの輝度ブロックに対する動き推定を行うとき、第１フレームメモリ１０２から現在マクロブロックの輝度ブロックを読出さねばならない。そして、読出された現在マクロブロックの輝度ブロックに対する圧縮及び復元が行われた後に復元されたマクロブロックの輝度ブロックが第２フレームメモリ１２４に保存される。したがって、第１及び第２フレームメモリ１０２,１２４に対するアクセス時間Ｔｃ２は、次のように与えられる。
Ｔｃ２＝（現在マクロブロックの輝度ブロック当たりピクセルの数／ワード当たりピクセルの数＋Ｌ）×アクセス数＝（２５６／４＋Ｌ）×２＝２（６４＋Ｌ）
【００４２】
したがって、第二の場合において、一つの現在マクロブロックの輝度ブロックに対する動き推定のための総メモリアクセス時間Ｔｔ２は、次のように与えられる。
Ｔｔ２＝Ｔｒ２＋Ｔｃ２＝１９２＋２Ｌ＋２（６４＋Ｌ）＝４Ｌ＋３２０
【００４３】
一方、第一の場合に該当する現在マクロブロックの輝度ブロックの比率は１／３であり、第二の場合に該当する現在マクロブロックの輝度ブロックの比率は２／３であるので、一つの現在マクロブロックの輝度ブロックに対する動き推定のための平均メモリアクセス時間は、次のように与えられる。
Ｔａ＝（Ｔｔ１／３＋２×Ｔｔ２／３）＝３.６７Ｌ＋３２０
【００４４】
図５は、５００によって指示され、本発明による動き推定のためのマクロブロックの輝度ブロック当たりメモリアクセス時間と従来の技術による動き推定のためのマクロブロックの輝度ブロック当たりメモリアクセス時間とを比較する表である。図５で、アクセス遅延時間Ｌによるメモリアクセス時間は、従来の技術の場合、方程式Ｔｔ＝８０Ｌ＋３２０によって求められ、本発明の場合、方程式Ｔａ＝３.６７Ｌ＋３２０によって求められる。
【００４５】
図５を参照すれば、アクセス遅延時間Ｌが０である場合、本発明及び従来の技術のメモリアクセス時間は、差がないが、アクセス遅延時間Ｌが６である場合、本発明のメモリアクセス時間は、従来の技術に比べて約５７.２％ほど短縮し、アクセス遅延時間Ｌが１２である場合、本発明のメモリアクセス時間は、従来の技術に比べて約７１.５％ほど短縮する。
【００４６】
したがって、本発明による動画圧縮装置は、動き推定のために、第１フレームメモリから一つのページに保存された現在マクロブロックの輝度ブロックを読出し、第２フレームメモリから一つのページに保存されたクラスタを読出しうるので、メモリアクセス時間を短縮させうる。その結果、動画圧縮速度が向上しうる。
【００４７】
図６は、６００によって指示され、本発明の一実施形態による動画圧縮方法を示すフローチャートである。本発明による動画圧縮方法は、図３に示す本発明による動画圧縮装置に適用されうる。
第１読出ステップ（Ｓ１０５）によれば、動き推定器１２６は、第１フレームメモリ１０２から入力画像を分割する現在マクロブロックの輝度ブロックを読出す。現在マクロブロックの輝度ブロックは、第１フレームメモリ１０２の一つのページに保存される。第１フレームメモリ１０２は、アクセス遅延時間Ｌを有するＤＲＡＭである。
【００４８】
第２読出ステップ（Ｓ１１０）によれば、動き推定器１２６は、第２フレームメモリ１２４から現在マクロブロックの輝度ブロックに最も類似した（または対応する）マクロブロックの輝度ブロックを含む以前画像のクラスタを読出す。クラスタは、現在マクロブロックに対する動き推定が行われる時の現在マクロブロックの探索領域に対応して、第２フレームメモリ１２４の一つのページに保存される。そして、第２フレームメモリ１２４は、アクセス遅延時間Ｌを有するＤＲＡＭである。
【００４９】
第２フレームメモリ１２４の探索領域のサイズは、動き推定器１２６の探索範囲によって決定され、第２フレームメモリ１２４の探索領域は、動き推定器１２６に含まれたキャッシュメモリ１２８に保存される。そして、クラスタのサイズは、第２フレームメモリ１２４の探索領域のサイズによって変更される。例えば、クラスタは、動き推定器１２６の探索範囲が垂直方向に−１６／＋１５である時、３個のマクロブロックの輝度ブロックを含みうる。
【００５０】
動き推定ステップ（Ｓ１１５）によれば、動き推定器１２６は、第１読出ステップ（Ｓ１０５）で読出された現在マクロブロックの輝度ブロック及び第２読出ステップ（Ｓ１１０）で読出されたクラスタに基づいて動き推定を行う。
動き補償ステップ（Ｓ１２０）によれば、動き補償器１２２は、動き推定ステップ（Ｓ１１５）で出力される動きベクトルだけ移動したマクロブロックの輝度ブロックを第２フレームメモリ１２４から読出す。
【００５１】
計算ステップ（Ｓ１２５）によれば、減算器１０４は、第１読出ステップ（Ｓ１０５）で読出された現在マクロブロックの輝度ブロックと動き補償ステップ（Ｓ１２０）で読出されたマクロブロックの輝度ブロックとの差分信号を計算する。
圧縮ステップ（Ｓ１３０）によれば、離散余弦変換器１０６、量子化器１０８、及び可変長符号化器１１０は、差分信号に対して離散余弦変換、量子化、及び可変長符号化を行って前記差分信号を圧縮する。
【００５２】
復元ステップ（Ｓ１３５）によれば、逆量子化器１１６及び逆離散余弦変換器１１８は、前記離散余弦変換及び量子化によって圧縮された差分信号を復元する。
加算ステップ（Ｓ１４０）によれば、加算器１２０は、復元された差分信号に動き補償ステップ（Ｓ１２０）で読出されたマクロブロックの輝度ブロックを加算して現在マクロブロックを復元する。
保存ステップ（Ｓ１４５）によれば、復元されたマクロブロックの輝度ブロックは、第２フレームメモリ１２４に保存されるクラスタの一部に保存される。
【００５３】
確認ステップ（Ｓ１５０）によれば、第１フレームメモリ１０２から読出される現在マクロブロックの輝度ブロックが存在するか否かが確認される。読出される現在マクロブロックが第１フレームメモリ１０２に存在するとき、ステップ（Ｓ１１０〜Ｓ１５０）が第１読出ステップ（Ｓ１０５）から再び進められる。読出される現在マクロブロックが第１フレームメモリ１０２に存在していないとき、本発明による動画圧縮方法は終了する。
【００５４】
したがって、本発明による動画圧縮方法は、動き推定のために、第１フレームメモリから一つのページに保存された現在マクロブロックの輝度ブロックを読出し、第２フレームメモリから一つのページに保存されたクラスタを読出しうるので、メモリアクセス時間を短縮させうる。その結果、動画圧縮速度が向上しうる。
【００５５】
以上、図面及び明細書で最適の実施形態が開示された。ここで、特定の用語が使われたが、これは、単に本発明を説明するための目的で使われたものであり、意味限定や特許請求の範囲に記載された本発明の範囲を制限するために使われたものではない。したがって、当業者ならば、これから多様な変形及び均等な他の実施形態が可能であることが分かるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲の技術的思想によって決定されなければならない。
【産業上の利用可能性】
【００５６】
本発明は、動画圧縮装置に関連した技術分野に適用可能である。
【図面の簡単な説明】
【００５７】
【図１】通常的な動画圧縮装置を概略的に示すブロックダイアグラムである。
【図２】図１の圧縮部に含まれたフレームメモリの探索領域に保存された画像データの一例を示す図である。
【図３】本発明の一実施形態による動画圧縮装置を示すブロックダイアグラムである。
【図４】本発明の一実施形態による第２フレームメモリの探索領域を含む画像データの一例を示す図である。
【図５】本発明による動き推定のためのマクロブロックの輝度ブロック当たりメモリアクセス時間と従来の技術による動き推定のためのマクロブロックの輝度ブロック当たりメモリアクセス時間とを比較する図表である。
【図６】本発明の一実施形態による動画圧縮方法を示すフローチャートである。
【符号の説明】
【００５８】
１００    動画圧縮装置
１０２    第１フレームメモリ
１０４    減算器
１０６    ＤＣＴ
１０８    Ｑ
１１０    ＶＬＣ
１１２    出力バッファ
１１４    レート制御器
１１６    ＩＱ
１１８    ＩＤＣＴ
１２０    加算器
１２２    ＭＣＰ
１２４    第２フレームメモリ
１２６    ＭＥＰ
１２８    キャッシュメモリ
ＩＮ    入力画像
ＯＵＴ    出力ストリーム
【図１】
2006121702.tif 000003
【図２】
2006121702.tif 000004
【図３】
2006121702.tif 000005
【図４】
2006121702.tif 000006
【図５】
2006121702.tif 000007
【図６】
2006121702.tif 000008