(57)【要約】【課題】本発明は、共有可能な多重入出力バンクメモリ構造を有する高速動き探索に関する。【解決手段】高速動き探索装置は、外部のフレームメモリから現在領域の画素データを受信して保存する現在領域メモリと、共有可能な多重入出力バンク形態で上記フレームメモリから読み取った探索領域の画素データを保存し、上記現在領域の画素データと探索領域の画素データを利用して、整数倍動きベクトルを予測する整数倍動き探索機と、上記整数倍動き探索機から探索領域が共有可能であるという信号を受信すると、上記整数倍動き探索機から探索領域の画素データを読み取り、読み取った探索領域の画素データ及び上記整数倍動き探索機で予測された整数倍動きベクトルを利用して少数倍動きベクトルを予測する少数倍動き探索機を含んで高速の動き探索を行うことを特徴とする。これにより外部のフレームメモリとの入出力を最小化することができ、動きベクトルの予測時、ＳＡＤ計算に必要な探索範囲及び画素数を映像の品質が低下しない範囲で減らすことができる。【選択図】図３
2010119084.tif 000002
【特許請求の範囲】
【請求項１】
外部のフレームメモリから現在領域の画素データを受信して保存する現在領域メモリと、
共有可能な多重入出力バンク形態で前記フレームメモリから読み取った探索領域の画素データを保存し、前記現在領域の画素データと探索領域の画素データを利用して整数倍動きベクトルを予測する整数倍動き探索機と、
前記整数倍動き探索機から探索領域が共有可能であるという信号を受信すると、前記整数倍動き探索機から探索領域の画素データを読み取り、読み取った探索領域の画素データ及び前記整数倍動き探索機で予測された整数倍動きベクトルを利用して、少数倍動きベクトルを予測する少数倍動き探索機と
を含むことを特徴とする高速動き探索装置。
【請求項２】
前記整数倍動き探索機は、
共有可能な多重入出力バンク形態の探索領域のマクロブロック保存部を有し、前記探索領域のマクロブロック保存部に前記少数倍動き探索機と共有可能な探索領域の画素データを保存する共有探索領域メモリと、
前記現在領域の画素データ及び前記探索領域の画素データを利用して前記整数倍ベクトル予測のための差分絶対値和（ＳＡＤ）を計算する整数倍探索差分絶対値和計算部と、
前記少数倍動き探索機に探索領域が共有可能であるという信号を伝送する整数倍探索制御部と
を含むことを特徴とする請求項１に記載の高速動き探索装置。
【請求項３】
前記探索領域のマクロブロック保存部は、多重入出力が可能な複数のバンクメモリを有し、偶数マクロブロック保存部及び奇数マクロブロック保存部に区分され、前記複数のバンクメモリに前記共有可能な探索領域の画素データをマクロブロック単位で保存することを特徴とする請求項２に記載の高速動き探索装置。
【請求項４】
前記複数のバンクメモリは、予め設定された基準地点を基準に、上端部の動き探索を予測するための上位差分絶対値和の計算時に必要な画素値を保存するひとつ以上のスライス及び同時に前記基準地点を基準に、下端部の動き探索を予測するための下位差分絶対値和の計算時に必要な画素値を保存するひとつ以上の他のスライスを含むことを特徴とする請求項３に記載の高速動き探索装置。
【請求項５】
前記整数倍探索差分絶対値和計算部は、前記現在領域の画素データ及び前記探索領域の画素データを一枡おきに読み取って２：１で副標本化した現在のマクロブロック及び探索領域のマクロブロックの差分絶対値和（ＳＡＤ）を求め、その差分絶対値和（ＳＡＤ）のうち、最小値を前記少数倍動き探索機に出力することを特徴とする請求項２に記載の高速動き探索装置。
【請求項６】
前記整数倍探索差分絶対値和計算部は、
予め設定された基準地点を基準に、上端部の動き探索を予測するための上位差分絶対値和を計算して、第１最小差分絶対値和（ＳＡＤ）を求める上位差分絶対値和計算部と、
前記上位差分絶対値和計算部と同時に左中端を基準に、下端部の動き探索を予測するための下位差分絶対値和を計算して、第２最小差分絶対値和を求める下位差分絶対値和計算部と
を含むことを特徴とする請求項５に記載の高速動き探索装置。
【請求項７】
前記下位差分絶対値和計算部は、前記第１最小差分絶対値和に対する値と前記第２最小差分絶対値和に対する値を比べて、両方のうち、最小値を有する値と、前記整数倍動きベクトルを前記少数倍動き探索機に伝送することを特徴とする請求項６に記載の高速動き探索装置。
【請求項８】
整数倍動き探索機及び少数倍動き探索機を有する高速動き探索装置において、映像の動きを高速探索する方法において、
前記整数倍動き探索機が外部のフレームメモリから動き探索のための映像の画素データを受信する段階と、
前記整数倍動き探索機が前記画素データの現在領域の画素データを多重入出力が可能な現在のマクロブロック保存部に保存し、探索領域の画素データを共有可能な多重入出力バンク形態の探索領域のマクロブロック保存部に保存する段階と、
前記整数倍動き探索機が保存された現在領域の画素データ及び保存された探索領域の画素データを利用して整数倍動きベクトルを予測する段階と、
前記少数倍動き探索機が共有可能な前記探索領域のマクロブロック保存部から探索領域の画素データを読み取る段階と、
前記少数倍動き探索機が前記読み取った探索領域の画素データ及び前記整数倍動きベクトルを利用して少数倍動きベクトルを予測する段階と
を含むことを特徴とする高速動き探索方法。
【請求項９】
前記整数倍動き探索機が保存された現在領域の画素データ及び保存された探索領域の画素データを利用して整数倍動きベクトルを予測する段階は、
前記保存された現在領域の画素データ及び前記保存された探索領域の画素データを夫々一枡おきに読み取る段階と、
読み取った現在領域の画素データ及び探索領域の画素データを夫々２:１で副標本化する段階と、
前記副標本化された現在のマクロブロック及び探索領域のマクロブロックで差分絶対値和を計算する段階と、
計算された差分絶対値和に対する値のうち、最小値を利用して、前記整数倍動きベクトルを予測する段階と
を含むことを特徴とする請求項８に記載の高速動き探索方法。
【請求項１０】
前記副標本化された現在のマクロブロック及び探索領域のマクロブロックで差分絶対値和を計算する段階は、
予め設定された基準地点を基準に、上端部の動き探索を予測するための上位差分絶対値和を計算して、第１最小差分絶対値和（ＳＡＤ）を求める段階と、
前記上位差分絶対値和を計算すると共に、左中端を基準に、下端部の動き探索を予測するための下位差分絶対値和を計算して、第２最小差分絶対値和を求める段階と
を含むことを特徴とする請求項９に記載の高速動き探索方法。
【請求項１１】
前記少数倍動き探索機が共有可能な前記探索領域のマクロブロック保存部から探索領域の画素データを読み取る段階は、前記整数倍動き探索機から探索領域が共有可能であるという信号を受信すると、前記探索領域の画素データを読み取ることを特徴とする請求項８に記載の高速動き探索方法。
【請求項１２】
前記少数倍動き探索機が前記読み取った探索領域の画素データ及び前記整数倍動きベクトルを利用して、少数倍動きベクトルを予測する段階は、
前記読み取った探索領域の画素データ及び前記整数倍動きベクトルで差分絶対値和を計算する段階と、
計算された差分絶対値和に対する値のうち、最小値を利用して前記少数倍動きベクトルを予測する段階と
を含むことを特徴とする請求項８に記載の高速動き探索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像の圧縮のための符号化器（encoder）における高速動き探索に関し、特に、共有可能な多重入出力バンクメモリ構造を有する高速動き探索装置及びその方法に関する。
【背景技術】
【０００２】
映像の圧縮のための符号化器（以下、映像符号化器という）における動き探索は、特定画素サイズのマクロブロック（Macro Block）単位で行われ、マクロブロック同士の差分絶対値和（Sum of Absolute Differences、以下、ＳＡＤという）が最小となる位置の動きベクトルを予測する。ここで、上記マクロブロックは、現在の映像（Original Picture）と動き探索の範囲にある復元された映像（Reference Picture）内の特定位置の画素を含んでいる。
【０００３】
一般的に映像符号化器において、現在映像と画面間予測（Inter Prediction）に必要な復元された映像の画素データは、映像の解像度が増加するほど相対的に増加するため、一般的な映像の圧縮のための符号化器は、復元された映像の画素データを保存容量の大きい外部のフレームメモリに保存し、このフレームメモリに保存されている現在映像の画素と復元された映像の画素を動き推定装置で読み取って計算する。
【０００４】
一般的な映像符号化器において、少数倍までの動き探索は、整数倍動き探索装置により整数倍動き探索をしてから行われる。これによって上記整数倍動き探索後、整数倍動き探索装置は、予測された整数倍動きベクトル周辺の画素範囲に画素補間のための周辺探索範囲を加えた探索範囲の復元映像と現在映像とのＳＡＤを再び求めて、このＳＡＤを用いて最終少数倍動きベクトルを予測する。このような一般的な映像符号化器における動き探索予測に対して添付の図１を参照して具体的に説明すると、以下のようである。
【０００５】
一般的な整数倍動き探索に必要な基本的なマクロブロックのサイズは、１６×１６画素データを用い、１つの画素の範囲は８ビットを用いる。探索範囲はＸ方向に−１６〜＋１５、Ｙ方向に−１６〜＋１５範囲の領域における全探索領域の候補画素値に対してマクロブロック単位のＳＡＤを計算し、このＳＡＤを用いて動きベクトルを予測する。このとき、データをフレームメモリから読み取るのに必要なクロック周期は上記図１に図示されたように、現在映像に対して１つのワードが６４ビットであれば、１６×８ビット（画素）×１６（ライン）の画素情報を読み取るのに６４クロック周期が必要である。また、上記クロック周期は探索範囲の復元映像の場合、４８×８ビット（画素）×４８（ライン）の画素情報を読み取るのに５７２クロック周期が必要である。このようなクロック周期は理想的な数値である。
【０００６】
このような一般的な整数倍動き探索は、実際のフレームメモリ（例えば、ＳＤＲＡＭ、ＤＤＲメモリ）からデータを読み取るときには、画素データの保存位置によって遅延時間が生じ、より多くのクロック周期が求められる。
【０００７】
また、一般的なＳＡＤの計算時のクロック周期は、全探索領域にある画素値に対して計算すべきであるため、Ｘ、Ｙ探索範囲内（３２×３２）で１０２４のクロック周期が必要となる。
【０００８】
一般的な映像符号化器において、少数倍探索をする場合にも、整数倍動き探索と同様に、探索領域の画素データをフレームメモリから読み取らなければならず、そのために、映像符号化器は一般的な６-タップフィルタを用いる。一般的な６-タップフィルタは整数倍動きベクトルの周辺に１／４画素補間するためのものである。このような６-タップフィルタは、更なる周辺画素データが必要であるため、少数倍動き探索のためにフレームメモリから２２×８ビット（画素）×２２（ライン）の探索領域の画素データが必要となる。このような探索領域の画素データを読み取るためには、現在の１２１のクロック周期がさらに必要である。従って、このような少数倍探索は動き探索予測時、ＳＡＤ計算だけではなく、フレームメモリの入出力時間が相当部分を占め、符号化器の性能低下に影響を及ぼす。
【０００９】
一方、一般的に映像符号化器で動き探索のための装置は、全体符号化に必要な上記符号化器内の他の装置（例えば、画面内予測装置と歪曲除去フィルタ等）に比べてフレームメモリからより多い画素データを求める。
【００１０】
一般的に映像符号化器は、マクロブロック単位のパイプライン上で処理されるため、同じ時間に、符号化器内の他の装置でもフレームメモリの画素データを求める。そのため、上記符号化器は限られたメモリの帯域幅においてメモリ入出力のボトルネック現象が生じる。これにより動き探索時、計算に必要な画素データを動き探索装置で決められた時間内にフレームメモリから読み取れないという問題点が発生し得る。
【００１１】
また、一般的な映像符号化器は、動きベクトルを求めるためのＳＡＤ計算時、探索領域にある全候補画素値を考慮し、計算すべきである。従って、一般的な映像符号化器は多くの計算量を必要とし、これによりマクロブロック当り、多くの処理時間が掛かるため、遅延する処理時間が全体符号化器の性能を低下させるという問題点がある。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
本発明の解決しようとする課題は、共有可能な多重入出力バンクメモリ構造を利用して、外部のフレームメモリとの入出力を最小化するための高速動き探索装置及びその方法を提供することにある。
【００１３】
また、本発明の解決しようとする課題は、多重入出力メモリバンク構造を有する保存装置からＳＡＤ計算時に必要な画素（Pixel）データを同時に入出力することで、高速の動き探索を行うための高速動き探索装置及びその方法を提供することにある。
【００１４】
また、本発明の解決しようとする課題は、動きベクトル予測時、ＳＡＤ計算に必要な探索範囲及び画素数を映像の品質が低下しない範囲で減らすための高速動き探索装置及びその方法を提供することにある。
【課題を解決するための手段】
【００１５】
上記のこのような本発明の目的を達成するための高速動き探索装置は、外部のフレームメモリから現在領域の画素データを受信して保存する現在領域メモリと、共有可能な多重入出力バンク形態で上記フレームメモリから読み取った探索領域の画素データを保存し、上記現在領域の画素データと探索領域の画素データを利用して整数倍動きベクトルを予測する整数倍動き探索機と、上記整数倍動き探索機から探索領域が共有可能であるという信号を受信すると、上記整数倍動き探索機から探索領域の画素データを読み取り、読み取った探索領域の画素データ及び上記整数倍動き探索機で予測された整数倍動きベクトルを利用して少数倍動きベクトルを予測する少数倍動き探索機を含むことを特徴とする。
【００１６】
上記本発明の目的を達成するための高速動き探索装置における高速動き探索方法は、整数倍動き探索機及び少数倍動き探索機を有する高速動き探索装置において、映像の動きを高速探索する方法であって、上記整数倍動き探索機が外部のフレームメモリから動き探索のための映像の画素データを受信する段階と、上記整数倍動き探索機が上記画素データの現在領域の画素データを多重入出力が可能な現在のマクロブロック保存部に保存し、探索領域の画素データを共有可能な多重入出力バンク形態の探索領域のマクロブロック保存部に保存する段階と、上記整数倍動き探索機が保存された現在領域の画素データ及び保存された探索領域の画素データを利用して整数倍動きベクトルを予測する段階と、上記少数倍動き探索機が共有可能な上記探索領域のマクロブロック保存部から探索領域の画素データを読み取る段階と、上記少数倍動き探索機が上記読み取った探索領域の画素データ及び上記整数倍動きベクトルを利用して少数倍動きベクトルを予測する段階を含むことを特徴とする。
【発明の効果】
【００１７】
従って本発明は整数倍動き探索機に、少数倍動き探索機と共有可能な多重入出力バンクメモリ構造を有する共有探索領域メモリを具現することで、外部のフレームメモリとの入出力を最小化することができる。また、多重入出力バンクメモリに保存されたＳＡＤ計算時に必要な画素（Pixel）データ（探索領域の画素データ）を同時に入出力することで、高速の動き探索を行うことができ、動きベクトルの予測時、ＳＡＤ計算に必要な探索範囲及び画素数を映像の品質が低下しない範囲で減らすことができる。
【図面の簡単な説明】
【００１８】
【図１】一般的な動き探索方法を示した図である。
【図２】本発明の実施例による動き探索装置の構造を示した図である。
【図３】本発明の実施例による整数倍動き探索機の具体的な構造を示した図である。
【図４】図３の探索領域のマクロブロック保存部の具体的な構造を示した図である。
【図５】本発明の実施例による動き探索のための探索領域を示した図である。
【図６】本発明の実施例によりＳＡＤ計算のための探索領域を拡大して示した図である。
【図７】本発明の実施例によるＳＡＤ計算時に探索領域を読み取る方法を示した図である。
【図８】本発明の実施例による高速動き探索装置における高速動き探索過程を示した図である。
【発明を実施するための形態】
【００１９】
以下、本発明の好ましい実施例を添付の図面を参照して詳細に説明する。本発明を説明するにおいて、関連の公知機能、或いは構成に対する具体的な説明が本発明の要旨を不必要に不明確にすることがあると判断される場合は、その詳細な説明を省略する。
【００２０】
図２は本発明の実施例による動き探索装置の構造を示した図であり、図３は本発明の実施例による整数倍動き探索機の具体的な構造を示した図である。
【００２１】
上記図２を参照すると、動き探索装置１００はフレームメモリ１０と連動し、整数倍動き探索機１１０、少数倍動き探索機１２０及び現在領域メモリ１３０で構成することができる。
【００２２】
整数倍動き探索機１１０は、共有探索領域メモリ１１１、整数倍探索ＳＡＤ計算部１１２、整数倍探索制御部１１３を含んで構成することができる。整数倍動き探索機１１０は、現在領域の画素データと探索領域の画素データを利用して、差分絶対値和（ＳＡＤ）が最小となる位置の動きベクトルを予測し、予測された動きベクトル及び最小ＳＡＤを上記少数倍動き探索機１２０に伝送する。ここで、上記現在領域は現在映像の領域を意味し、上記探索領域は前の領域であって、動き探索範囲の復元された映像の領域を意味する。
【００２３】
少数倍動き探索機１２０は、探索領域選択部１２１、少数倍探索ＳＡＤ計算部１２２、少数倍探索制御部１２３を含んで構成することができる。少数倍動き探索機１２０は、復元映像の画素データと現在映像の画素データを利用して、ＳＡＤを求めて最終少数倍動きベクトルを予測し、予測された少数倍動きベクトル及び最小ＳＡＤを出力する。ここで、上記復元映像は、受信した整数倍動きベクトルの周辺画素範囲に画素補間のための周辺探索範囲を加えた探索範囲の映像である。
【００２４】
上記図３を参照して整数倍動き探索機１１０の具体的な構造を説明すると以下のようである。
【００２５】
整数倍動き探索機１１０の共有探索領域メモリ１１１は、現在のマクロブロック保存部２０６及び探索領域のマクロブロック保存部２０７を含む。ここで、探索領域のマクロブロック保存部２０７は少数倍動き探索装置と共有可能に保存された探索領域の画素データを保存する。
【００２６】
共有探索領域メモリ１１１は、フレームメモリバスを通じてＤＭＡ（Direct Memory Access）制御部３０及びフレームメモリ制御部２０を経てフレームメモリ１０と連結され、４８×３２×８ビット（画素）画素データを１６×３２×８ビット（画素）単位でフレームメモリ１０から読み取る。共有探索領域メモリ１１１内の探索領域のマクロブロック保存部２０７は偶数マクロブロック保存部及び奇数マクロブロック保存部に区分されることができる。上記現在のマクロブロック保存部２０６は１６×６４の共有の現在領域の画素データを保存するためのバンク（Shared Current Picture Bank）メモリである４つのバンク（バンク００、バンク０１、バンク１０、バンク１１）に区分されることができる。上記探索領域のマクロブロック保存部２０７は探索領域の画素データを保存するための共有映像バンク（Shared Ref. Picture Bank）メモリであるバンク０乃至バンク５に区分される。ここで、バンクメモリは偶数マクロブロック及び奇数マクロブロックの画素データを保存するために上端バンク領域（バンク００、バンク０１、バンク１０、バンク１１、バンク２０、バンク２１）及び下端バンク領域（バンク３０、バンク３１、バンク４０、バンク４１、バンク５０、バンク５１）に区分されることができる。
【００２７】
上記探索領域のマクロブロック保存部２０７の各バンクメモリ（バンク０乃至バンク５）は添付の図４に図示されたように、Ｙ方向には８×３２単位の画素情報に対して夫々４つのスライス（スライス０乃至スライス３）メモリに分離される。上記４つのスライスにおいて、全ての画素値は同時に入出力が可能で、スライス０及びスライス１は上位ＳＡＤ計算に必要な画素値を出力し、スライス２及びスライス３は下位ＳＡＤ計算に必要な画素値を出力する。ここで、各バンク及びスライスメモリは独立的に入出力が可能である。このような独立的な入出力は、動きベクトル予測時、同時に多数の画素情報にメモリの多重入出力が可能である。そのため、動き探索装置１００はひとつのマクロブロック内で同時に他の位置にある画素値に対するＳＡＤ計算を行い、これによって高速の動き探索演算が可能である。
【００２８】
再び、図３を参照すると、整数倍探索ＳＡＤ計算部１１２は、上位ＳＡＤ計算部２０１及び下位ＳＡＤ計算部２０３を含み、地域メモリバスを通じて現在のマクロブロック保存部２０６及び探索領域のマクロブロック保存部２０７と連結される。そして、上記上位ＳＡＤ計算部２０１は、現在のマクロブロック保存部２０６及び探索領域のマクロブロック保存部２０７から夫々現在領域の画素データ及び探索領域の画素データを一枡おきに読み取って２:１で副標本化する。上記上位ＳＡＤ計算部２０１は、２:１で副標本化された現在のマクロブロック及び探索領域のマクロブロックの差分絶対値和（ＳＡＤ）を求め、この差分絶対値和（ＳＡＤ）のうち、最小値を利用して整数倍動きベクトルを予測する。
【００２９】
上記上位ＳＡＤ計算部２０１は、上記図４に図示されたような各バンクメモリ内のスライス０及び１から探索領域の画素データを読み取って上位ＳＡＤ計算を行うと共に、上記下位ＳＡＤ計算部２０３はＳＡＤを計算する。各バンクメモリ内のスライス２及び３から探索領域の画素データを読み取って下位ＳＡＤ計算を行う。このような上位及び下位ＳＡＤ計算に対する具体的な説明は動き探索方法において具体的に説明する。
【００３０】
再び、上記図３を参照すると、整数倍動き探索機１１０の整数倍探索制御部１１３は地域メモリ住所制御部２０２、レジスタ部２０４、装置制御部２０５及びフレームメモリ住所制御部２０８を含んで構成されることができ、探索領域の共有可能信号を少数倍動き探索機１２０に伝送する。ここで、上記レジスタ部２０４はシステムバスを通じて外部の装置と連結されてデータを読み取ったり、書き込んだりすることができる。
【００３１】
次に、このような構造を有する動き探索装置における動き探索方法に対して添付の図面を参照して具体的に説明する。
【００３２】
先ず、動き探索のため、探索領域及びＳＡＤ計算のための条件に対して説明する。
【００３３】
動き探索方法は、Ｘ、Ｙ方向に１−画素単位で探索するが、ＳＡＤ計算時に整数倍動き探索機１１０は現在のマクロブロックの画素及び探索領域の画素を一枡おきに読み取り、２:１で副標本化（Ｓｕｂｓａｍｐｌｉｎｇ）された現在のマクロブロック及び探索領域のマクロブロックを利用してＳＡＤ計算を行うことができる。
【００３４】
添付の図５に図示されたように、４８×３２画素の探索領域に対するＳＡＤ計算のためには、探索領域をＹ方向に１／２に減少（−８〜＋７）させ、動き探索のための全体計算量の負担を減らさなければならない。
【００３５】
添付の図６はＳＡＤ計算のための探索領域をさらに拡大して示した図であり、図７はＳＡＤ計算時に探索領域を読み取る方法を示した図である。上記図６及び７を参照すると、動き探索装置は１６×１６ブロックに対して２:１で副標本化された現在の画素データ（８×８）Ａ、Ｂ、Ｃ、Ｄに対してＳＡＤを計算する。上記図７に図示されたように、ＳＡＤ計算時に探索領域の２:１で副標本化された画素データは、一枡おきに読み取られる。例えば、図７の（ａ）のように、‘Ａ’である画素データを読み取る場合、整数倍探索ＳＡＤ計算部１１２は現在[−１５、−７]位置の画素データを読み取ってから、一枡おいて、次の位置（斜線の領域）の画素データを順次に読み取る。
【００３６】
上記図７に図示されたような動き探索範囲内で、例えば、整数倍動きベクトルの条件がＸ方向に１３〜＋１２、Ｙ方向に-５〜＋４内で決まると、少数倍動き探索のために少数倍動き探索機１２０は、復元映像に対する画素情報をフレームメモリ１０から読み取らない。その代わり、少数倍動き探索機１２０は整数倍動き探索機１１０内の探索領域のマクロブロック保存部２０７からＳＡＤ計算に必要な復元映像に対する探索領域の画素データを読み取り、少数倍動き探索を行う。このような少数倍動き探索装置における整数倍動き探索メモリを共有することができる整数倍ＸＹ動きベクトルの条件は、下記の＜式１＞である。
（式１）
｛Ｘ：（整数倍動きベクトルのＸ方向の最小値-３）〜（整数倍動きベクトルのＸ方向の最大値−３）｝ＡＮＤ
｛Ｙ：（整数倍動きベクトルのＹ方向の最小値-３）〜（整数倍動きベクトルのＹ方向の最大値−３）｝
【００３７】
テスト映像及び一般的な映像では、動き探索時に上記＜式１＞の条件による探索範囲の動きベクトルが８０〜９０％（実験結果）を占めるため、整数倍動き探索機１１０と少数倍動き探索機１２０において復元映像の探索範囲のメモリを共有する確立が高くなる。
【００３８】
次に、上述のような説明に基づき、整数倍動き探索のための過程を添付の図面を参照して具体的に説明する。
【００３９】
図８は本発明の実施例による高速動き探索装置における高速動き探索過程を示した図である。
【００４０】
上記図３及び上記図８を参照すると、３０１段階において、動き探索装置１００の整数倍動き探索機１１０は、フレームメモリ１０から４８×３２×８ビット（画素）に対する画素データを１６×３２×８ビット（画素）単位で読み取る。このとき、現在領域メモリ１３０は１６×３２×８ビット（画素）単位の画素データを読み取って保存する。
【００４１】
これにより３０２段階において、整数倍動き探索機１１０は、映像の現在領域の画素データを現在のマクロブロック保存部２０６に保存し、前の領域の画素データ、即ち、探索領域の画素データを少数倍動き探索機１２０と共有可能な探索領域のマクロブロック保存部２０７に保存する。即ち、探索領域のマクロブロック保存部２０７は、Ｘ方向に８×３２単位で６つのバンクメモリに上記読み取った情報である探索に必要な画素情報を順次に保存する。このとき、偶数マクロブロックの探索領域の画素データは、探索領域のマクロブロック保存部２０７の上端の偶数マクロブロック保存部に保存され、奇数マクロブロックの探索領域の画素データは、探索領域のマクロブロック保存部２０７の下端の奇数マクロブロック保存部に保存される。このようなデータ保存は、各マクロブロック毎に交互に行われ、整数倍と少数倍探索領域の共有時に、１つのマクロブロックの整数倍探索が終了した後にも少数倍探索のための前の共有データが有効化されるようにする。
【００４２】
その後、整数倍動き探索のために動きベクトル予測を行う。従って、３０３段階において、整数倍動き探索機１１０は共有探索領域メモリ１１１に保存された４８×３２画素の探索領域に対してマクロブロック単位で動きベクトル予測のためのＳＡＤ計算を行う。このような動きベクトル予測は各マクロブロック毎に新たな探索領域に対する画素データをフレームメモリ１０から読み取る。このとき、保存される位置のバンクは自動的に循環しＳＡＤ計算時に常に左上端（−１６、−８）と左中端（−１６、０）の位置から動き探索を始める。これに従って動きベクトル予測のためのＳＡＤ計算に対して具体的に説明すると以下のようである。
【００４３】
整数倍動き探索機１１０の整数倍探索ＳＡＤ計算部１１１は、ＳＡＤ計算時、探索時間を高速化するために上記図２に図示されたように、ＸＹ方向に左上端（−１６、−８）と左中端（-１６、０）を開始点として、同時に上位及び下位ＳＡＤを計算する。即ち、上端ＳＡＤ計算部２０１は予め設定された基準地点である左中端（−１６、０）を基準に、上にある上端部（｛Ｘ、Ｙ｝＝｛−１６〜＋１５、〜８〜−１｝）の動き探索予測のために当該バンクメモリ内のスライス０及びスライス１に保存された上位ＳＡＤ計算に必要な画素値を読み取る。それから、上端ＳＡＤ計算部２０１は、読み取った画素値を利用して上位ＳＡＤ計算を行う。その後、上端ＳＡＤ計算部２０１は、全上位ＳＡＤ計算が完了すると、累積されたＳＡＤから最小値を有する第１最小ＳＡＤを求めてこれを下位ＳＡＤ計算部２０３に出力する。これと同時に下端ＳＡＤ計算部２０２は、左中端（−１６、０）を基準に、探索領域の下方にある下端部（｛Ｘ、Ｙ｝＝｛−１６〜＋１５、０〜＋７｝）の動き探索予測のために該当バンクメモリ内のスライス２及びスライス３に保存された上位ＳＡＤ計算に必要な画素値を読み取る。それから、上端ＳＡＤ計算部２０１は読み取った画素値を利用して下位ＳＡＤ計算を行う。その後、下端ＳＡＤ計算部２０３は全下位ＳＡＤ計算が完了すると、累積されたＳＡＤから最小値を有する第２最小ＳＡＤを求め、上記第１最小ＳＡＤと上記第２最小ＳＡＤのうち、小さい値を有する最終最小ＳＡＤを求め、これを利用して整数倍動きベクトルを予測する。
【００４４】
このような上位及び下位ＳＡＤ計算が完了すると、３０４段階において、整数倍動き探索機１１０は、ＳＡＤ計算を通じて得た最小のＳＡＤと予測された動きベクトルを夫々少数倍動き探索機１２０に伝送する。即ち、下端ＳＡＤ計算部２０３は上記累積された第２最小ＳＡＤと、上記上端ＳＡＤ計算部２０１から受信した第１最小ＳＡＤを比べて、両方のうち、最小値を有するＳＡＤを伝送し、上記伝送される最小のＳＡＤに対する動きベクトルを最終出力して上記少数倍動き探索機１２０に伝送する。
【００４５】
その後、３０５段階において、整数倍動き探索機１１０は、内部のシステム制御用レジスタ部２０４を通じて少数倍動き探索機１２０が探索領域のマクロブロック保存部２０７を共有することができるように探索領域の共有可能信号を上記少数倍動き探索機１２０に伝送する。これによって少数倍動き探索機１２０は、探索領域のマクロブロック保存部２０７に保存された共有可能な探索領域の画素データを読み取って少数倍動きベクトルの予測のためのＳＡＤ計算を行う。
【００４６】
一方、本発明の詳細な説明では、具体的な実施例に関して説明したが、本発明の範囲から外れない限度内で様々な変形が可能である。そのため、本発明の範囲は説明した実施例に限るものではなく、添付の特許請求の範囲だけではなく、この特許請求の範囲と均等なものにより決まるべきである。
【図１】
2010119084.tif 000003
【図２】
2010119084.tif 000004
【図３】
2010119084.tif 000005
【図４】
2010119084.tif 000006
【図５】
2010119084.tif 000007
【図６】
2010119084.tif 000008
【図７】
2010119084.tif 000009
【図８】
2010119084.tif 000010