(57)【特許請求の範囲】
【請求項１】
第１のフレーム及び前記第１のフレームに対する後続フレームである第２のフレームを有するビデオの前記第２のフレームの領域と前記第１のフレームの対応する領域との間の絶対差和を決定することにより前記第２のフレームの前記領域に対して動き推定を実行するロジックと、
前記絶対差和を閾と比較するロジックと、
前記第２のフレームの前記領域の前記動き推定に基づき、前記第２のフレームの前記領域に対してオブジェクト検出を実行するか否かを決定するロジックであって、前記ロジックは、
前記絶対差和が前記閾より大きい場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれる場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれない場合に前記第２のフレームの前記領域に対する前記オブジェクト検出を実行しないと決定する、
ロジックと、
を有する装置。
【請求項２】
前記絶対差和を決定するロジックは、前記第２のフレームの前記領域及び前記第１のフレームの前記対応する領域に含まれるマクロブロックの絶対差和を決定するロジックを有する、請求項１に記載の装置。
【請求項３】
前記オブジェクト検出を実行するか否かを決定するロジックは、分類関数を実行するロジックを有する、請求項２に記載の装置。
【請求項４】
前記第１のフレームの前記対応する領域の符号化情報は、前記第２のフレームの前記領域のために再利用される、請求項１に記載の装置。
【請求項５】
プロセッサと、
前記プロセッサに結合され動き推定に基づきビデオのフレーム内のオブジェクトを検出するよう構成される動き推定及びオブジェクト検出ロジックであって、前記ビデオは第１のフレームと前記第１のフレームに対する後続フレームである第２のフレームとを有し、前記動き推定は、前記第２のフレームの領域に対して、前記第２のフレームの前記領域と前記第１のフレームの対応する領域との間の絶対差和を用いて実行される、動き推定及びオブジェクト検出ロジックと、
前記絶対差和を閾と比較するロジックと、
前記第２のフレームの前記領域の前記動き推定に基づき、前記第２のフレームの前記領域に対してオブジェクト検出を実行するか否かを決定するロジックであって、前記ロジックは、
前記絶対差和が前記閾より大きい場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれる場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれない場合に前記第２のフレームの前記領域に対する前記オブジェクト検出を実行しないと決定する、
ロジックと、
を有するシステム。
【請求項６】
前記絶対差和は、前記第２のフレームの前記領域及び前記第１のフレームの前記対応する領域に含まれるマクロブロックに対して実行される、請求項５に記載のシステム。
【請求項７】
前記第２のフレームの前記領域内のオブジェクトを検出するために、前記第２のフレームの前記領域に対して分類関数を実行するロジック、を更に有する請求項５に記載のシステム。
【請求項８】
前記第１のフレームの前記対応する領域の符号化情報は、前記第２のフレームの前記領域に対する前記オブジェクト検出が実行されない場合に、前記第２のフレームの前記領域のために再利用される、請求項６に記載のシステム。
【請求項９】
ビデオの第１のフレームに含まれるオブジェクトを検出するために、前記第１のフレームの複数の領域に対してオブジェクト検出を実行するステップと、
前記ビデオの前記第１のフレームに対する後続フレームである第２のフレームの領域と前記第１のフレームの対応する領域との間の絶対差和を決定することにより前記第２のフレームの前記領域に対して動き推定を実行するステップと、
前記絶対差和を閾と比較するステップと、
前記第２のフレームの前記領域に対する前記動き推定に基づき、前記第２のフレームの前記領域に対してオブジェクト検出を実行するか否かを決定するステップであって、前記ステップは、
前記絶対差和が前記閾より大きい場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれる場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれない場合に前記第２のフレームの前記領域に対する前記オブジェクト検出を実行しないと決定する、
ステップと、
を有するコンピュータが実施する方法。
【請求項１０】
前記オブジェクト検出を実行するステップは、分類関数を実行するステップを含む、請求項９に記載の方法。
【請求項１１】
前記第１のフレームの前記対応する領域の符号化情報は、前記第２のフレームの前記領域に対する前記オブジェクト検出が実行されないときに、前記第２のフレームの前記領域のために再利用される、請求項９に記載の方法。
【請求項１２】
プロセッサと、
前記プロセッサに結合される外部電源と、
前記プロセッサに結合され動き推定に基づきビデオのフレーム内のオブジェクトを検出するよう構成される動き推定及びオブジェクト検出ロジックであって、前記ビデオは第１のフレームと前記第１のフレームに対する後続フレームである第２のフレームとを有し、前記動き推定は、前記第２のフレームの領域に対して、前記第２のフレームの前記領域と前記第１のフレームの対応する領域との間の絶対差和を用いて実行される、動き推定及びオブジェクト検出ロジックと、
前記絶対差和を閾と比較するロジックと、
前記第２のフレームの前記領域の前記動き推定に基づき、前記第２のフレームの前記領域に対してオブジェクト検出を実行するか否かを決定するロジックであって、前記ロジックは、
前記絶対差和が前記閾より大きい場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれる場合に、前記第２のフレームの前記領域に対する前記オブジェクト検出を実行すると決定し、
前記絶対差和が前記閾より小さい又は等しい場合、且つ前記第２のフレームの前記領域のサンプルエリアが前記第１のフレームの前記対応する領域に含まれない場合に前記第２のフレームの前記領域に対する前記オブジェクト検出を実行しないと決定する、
ロジックと、
を有するシステム。
【請求項１３】
前記第１のフレームの前記対応する領域の符号化情報は、前記第２のフレームの前記領域に対する前記オブジェクト検出が実行されない場合に、前記第２のフレームの前記領域のために再利用される、請求項１２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動き推定を用いたオブジェクト検出に関する。
【背景技術】
【０００２】
自然画像及ビデオにおける信頼できるリアルタイムオブジェクト検出及び認識は、視覚探索において重要である。ビデオ内のオブジェクト追跡の１つのアプローチは、各ビデオフレーム内で完全なオブジェクト検出を実行することである。しかしながら、このアプローチは、非常に計算負荷が高い。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、動き推定を用いてオブジェクトを検出する装置、方法、システムに関する。
【図面の簡単な説明】
【０００４】
本発明の実施形態の種々の利点は、以下の詳細な説明及び添付の請求の範囲を読むことにより、及び以下の図面を参照することにより、当業者に明らかになるだろう。
【図１】幾つかの実施形態による例示的なコンピュータシステムを示すブロック図である。
【図２】幾つかの実施形態による、画像をスキャンするためにスライディングウインドウを使用する一例を示すブロック図である。
【図３】幾つかの実施形態による例示的なビデオ動き推定尾及び検出システムを示すブロック図である。
【図４】幾つかの実施形態による例示的なマクロブロックを示すブロック図である。
【図５】幾つかの実施形態による例示的なフレーム領域を示す。
【図６Ａ】幾つかの実施形態による動き推定及びオブジェクト検出の例示的な方法のフローチャートである。
【図６Ｂ】幾つかの実施形態による動き推定及びオブジェクト検出を実行するために絶対差和（sum  of  absolute  difference：SAD）を用いる例示的な方法のフローチャートである。
【図７】幾つかの実施形態による例示的なコンピュータシステムを示す。
【図８】幾つかの実施形態による例示的な小さな形状因子の装置を示す。
【発明を実施するための形態】
【０００５】
実施形態は、第１のフレームと第２のフレームとを有するビデオの第２のフレームの領域に対して動き推定を実行するロジックを有する装置に関する。装置は、第２のフレームの領域に対する動き推定に基づき、第２のフレームの領域に対してオブジェクト検出を実行するか否かを決定するロジックも有しても良い。動き推定は、絶対差和を実行するロジックに基づいても良い。オブジェクト検出は、分類関数に基づいても良い。
【０００６】
実施形態は、プロセッサ、及び該プロセッサに結合される動き推定及びオブジェクト検出ロジックを有し得るシステムに関する。動き推定及びオブジェクト検出ロジックは、動き推定に基づきビデオのフレーム内のオブジェクトを検出するロジックを有するよう構成されても良い。ビデオは、第１のフレーム及び第２のフレームを有しても良い。動き推定は、第２のフレームの領域と対応する第１のフレームの領域との間の絶対差差を用いて第２のフレームの領域に対して実行されても良い。絶対差和は、第２のフレームの領域と対応する第１のフレームの領域に含まれるマクロブロックに対して実行されても良い。第２のフレームは、ビデオ内の第１のフレームの後続のフレームであっても良い。
【０００７】
実施形態は、第１のフレームに含まれるオブジェクトを検出するために、ビデオの第１のフレームの複数の領域に対してオブジェクト検出を実行するステップを含み得る方法を実施するコンピュータに関する。方法は、ビデオの第２のフレームの領域に対して動き推定を実行するステップと、第２のフレームの領域に対する動き推定に基づき第２のフレームの領域に対してオブジェクト検出を実行するか否かを決定するステップと、を更に有しても良い。第２のフレームは、ビデオ内の第１のフレームに続いても良い。オブジェクト検出は、分類関数に基づいて実行されても良い。
【０００８】
実施形態は、プロセッサと、該プロセッサに結合される外部電源と、該プロセッサに結合される動き推定及びオブジェクト検出ロジックと、を有し得るシステムに関する。動き推定及びオブジェクト検出ロジックは、動き推定に基づきビデオのフレーム内のオブジェクトを検出するロジックを有するよう構成されても良い。ビデオは、第１のフレーム及び第２のフレームを有しても良い。動き推定は、第２のフレームの領域と対応する第１のフレームの領域との間の絶対差差を用いて第２のフレームの領域に対して実行されても良い。
【０００９】
図１は、幾つかの実施形態による例示的なコンピュータシステム１００を示すブロック図である。コンピュータシステム１００は、中央演算処理装置（central  processing  unit：CPU）と、グラフィック及びメモリ制御ハブ（graphics  and  memory  controller  hub：GMCH）１１０と、入力／出力制御ハブ（input／output  controller  hub：ICH）１２５と、を有しても良い。ＧＭＣＨ１１０は、バス１０７を介してＣＰＵ１０５に結合されても良い。ＩＣＨ１２５は、バス１２２を介してＧＭＣＨ１１０に結合されても良い。ＧＭＣＨ１１０は、メモリ装置１１５及びディスプレイ装置１２０にも結合されても良い。ＩＣＨ１２５は、Ｉ／Ｏ装置１３０に結合されても良い。ＧＭＣＨ１１０は、グラフィックシステム２００（図２に示す）を有しても良い。ＣＰＵ１０５、ＧＭＣＨ１１０及びＩＣＨ１２５は、別個のコンポーネントとして図示されるが、これらのコンポーネントのうちの２以上の機能は結合されても良い。電源１５０は、コンピュータシステム１００に電力を供給するために用いられても良い。電源１５０は、バッテリ又は外部電源であっても良い。コンピュータシステム１００は、多くの他のコンポーネントを有しても良いが、簡単のためそれらは示されない。
【００１０】
図２は、画像をスキャンするために例示的なスライディングウインドウ２００を用いることを示すブロック図を示す。スライディングウインドウは、画像内でオブジェクト検出及び認識を実行するために用いられ得る技術である。スライディングウインドウ技術は、オブジェクトを検出するために用いられ得る分類関数と関連し得る。オブジェクトは、最大分類スコアが閾を超えるとき、画像内に存在すると決定されても良い。例えば、スライディングウインドウ２００は、左上位置から右下位置へと画像２０１をスキャンするために用いられても良い。画像２０１では、スライディングウインドウ２００は、サブ画像２０５〜２６−をスキャンしても良い。スライディングウインドウ２００は、異なるサイズを有しても良い。例えば、スライディングウインドウ２００は、１６ピクセル×１６ピクセルであっても良い。通常、サブ画像の数は、サイズＮ×Ｎを有する画像では、Ｎの４乗まで、Ｎだけ増大し得る。例えば、サブ画像の数は、１０億個より多くても良い。オブジェクト検出に関連する動作は、各サブ画像について実行される必要がある。つまり、スライディングウインドウ２００が小さいほど、実行する必要のある計算の数が多い。その結果、全てのサブ画像について徹底的に分類関数を評価することは計算的に非常に高価になり得る。計算コストは、オブジェクトを検出するためにスライディングウインドウ技術がビデオの複数のフレームに適用されるとき、非常に高価になり得る。例えば、２５Ｈｚ／３０Ｈｚビデオでは、ビデオ内でオブジェクト検出を実行するための計算コストは、単一画像についてオブジェクト検出を実行する場合の１０倍になり得る。
【００１１】
図３は、幾つかの実施形態による例示的なビデオ動き推定及び検出システム３００を示すブロック図である。動き推定及び検出システム３００は、動き推定ロジック３０５と、オブジェクト検出ロジック３１０と、スライディングウインドウロジック３２５と、ビデオ処理ロジック３３０と、を有しても良い。動き推定ロジック３０５は、絶対差和ロジック３１５を有しても良い。オブジェクト検出ロジック３１０は、分類関数ロジック３２０を有しても良い。
【００１２】
幾つかの実施形態では、スライディングウインドウロジック３２５は、異なるサイズのスライディングウインドウを設定するよう構成されても良い。例えば、小さいスライディングウインドウは、ビデオフレーム内の小さいオブジェクトを検出するためにビデオフレームをスキャンするために用いられても良い。一方、大きいスライディングウインドウは、ビデオフレーム内の大きいオブジェクトを検出するために用いられても良い。ビデオフレームは、ビデオ処理ロジック３３０により受信されても良い。幾つかの実施形態では、異なるサイズのスライディングウインドウは、第１のフレームについて完全なスキャンを実行するために用いられても良い。完全なスキャンは、小さいオブジェクトと大きいオブジェクトの両方を検出するために、異なるサイズを有するスライディングウインドウを用いて複数回実行されても良い。後続のフレームでは、完全なスキャンを実行する代わりに、動き推定ロジック３０５が、計算コストを低減するために用いられても良い。
【００１３】
スライディングウインドウによりカバーされ得るフレームの領域は、領域として参照される。例えば、ビデオグラフィックアレイ（ＶＧＡ）サイズのビデオ入力では、スライディングウインドウは、フレームの領域をカバーし得る２０×２０ピクセルの最小サイズから、フレーム全体をカバーし得る４８０×４８０ピクセルの最大サイズまで変化しても良い。
【００１４】
分類関数ロジック３２０は、オブジェクトがスライディングウインドウによりカバーされるフレームの領域内に存在するか否かを検出するよう構成されても良い。分類関数ロジック３２０は、最大分類スコアに基づき検出動作を実行しても良い。幾つかの実施形態では、分類関数ロジック３２０は、第１のフレームの各領域についてオブジェクト検出を実行するために用いられても良い。更に詳細に記載するように、分類関数ロジック３２０は、特定の条件が満たされた場合、後続のフレームの幾つかの領域についてオブジェクト検出を実行するために用いられても良い。
【００１５】
動き推定ロジック３０５は、現在フレームと先行フレームとを比べたとき、特定の領域内で動きがあったか否かを決定するよう構成されても良い。動き推定ロジック３０５の動作は、ビデオ符号化で通常用いられる動きベクトル情報及び各マクロブロック（図４に示す）の絶対差和（ＳＡＤ）に基づいても良い。
【００１６】
連続フレーム内の画像の殆どは実質的に同様であるので、動き推定ロジック３０５は、ビデオの連続フレーム内の画像間の時間的冗長性を除去するよう構成されても良い。これは、符号化効率を向上させるために、現在フレームの動きベクトル情報を見付けるために、先行フレームに含まれる情報を再利用することを可能にし得る。幾つかの実施形態では、動き推定ロジック３０５は、現在フレームが先行フレームの対応する領域と同様であるかどうかを決定するために、ＳＡＤロジック３１５を用いても良い。
【００１７】
オブジェクト検出ロジック３１０は、現在フレームの領域内のオブジェクトを検出するよう構成されても良い。例えば、特定の条件が満たされたとき、オブジェクト検出ロジック３１０は、領域内のオブジェクトを検出するために分類関数ロジック３２０を適用しても良い。
【００１８】
図４は、幾つかの実施形態によるマクロブロックの例を示す。マクロブロック（ＭＢ）は、動き推定のための基本的要素であり、符号化のために用いられても良い。マクロブロックは１６×１６ピクセルであっても良い。本例では、スライディングウインドウ２００は、９個のマクロブロック４０５乃至４４５を含む領域（斜線を付した長方形により示す）を覆う。通常、現在フレームに関連するマクロブロックは、先行フレームに関連する（同じＭＢサイズを有する）領域と同様であり、該マクロブロックは現在フレームのために符号化される必要がない。先行フレームからの同様の画像領域についての符号化情報は、再利用されても良い。
【００１９】
ＳＡＤロジック３１５（図３）は、マクロブロックに関連するＳＡＤ及び領域に関連するＳＡＤを決定するよう構成されても良い。ＳＡＤロジック３１５は、現在フレームの１つのマクロブロック内の各ピクセルと、先行フレームの別のマクロブロック内の対応するピクセルとの間の絶対差を決定するよう構成されても良い。差は、ブロック類似性のメトリックを生成するために加算されても良い。類似性を決定するために、閾が用いられても良い。
【００２０】
幾つかの実施形態では、マクロブロック４０５乃至４４５からのＳＡＤは、累算され、マクロブロック４０５乃至４４５が関連し得る領域のＳＡＤとして用いられても良い。次に、領域のＳＡＤは、マクロブロックの数に比例し得る閾と比較されても良い。領域のＳＡＤが閾より大きいとき、これは、スライディングウインドウ２００により覆われる現在フレームの領域が先行フレームの対応する領域に一致しないことを示し得る。この状況では、現在フレームの領域についてオブジェクト検出を実行するために分類関数を用いる必要がある。例えば、先行フレームの領域はオブジェクトを含まないが、現在フレームの対応する領域はオブジェクトを含み得る。別の例として、先行フレームの領域は第１の位置にオブジェクトを含み、現在フレームの対応する領域は第２の位置にオブジェクトを含んでも良い。これは、オブジェクトが動きを通じて行ってしまったこと、したがって現在フレーム内で検出される必要がないことを示し得る。領域のＳＡＤが閾より小さいとき、これは、先行フレームの対応する領域からの符号化情報を再利用することが可能であり得る。例えば、先行フレーム内の領域がオブジェクトを含まない場合、現在フレームの対応する領域は、オブジェクトを含まないと考えられても良い。
【００２１】
図５は、幾つかの実施形態による例示的な領域を示す。領域５００、５２０、５４０は先行フレームに関連付けられ、領域５１０、５３０、５５０は現在フレームに関連付けられても良い。領域５００及び５１０は、両領域が異なる位置に同じオブジェクト５０５を含む状況を説明するために用いることができる。第２の位置は第１の位置にとても近い（又は殆ど同じ）なので、領域５１０のＳＡＤは閾より小さくても良い。領域５１０のサンプルエリア（例えば、中心点）が決定され、該サンプルエリアが領域５０５内に位置するか否かが検証されても良い。これは、オブジェクト５０５の追跡と似ている。幾つかの実施形態では、領域５１０のサンプルエリアが領域５０５にも存在するとき、分類関数ロジック３２０（図３）は領域５１０に適用できる。
【００２２】
領域５２０及び５３０は、オブジェクト５２５が領域５３０に含まれるが、オブジェクト５２５が領域５２０に含まれなかった状況を説明するために用いることができる。領域５３０のＳＡＤは閾より大きく、分類関数ロジック３２０が領域５３０に適用されても良い。オブジェクト５２５が領域５２０に含まれるが領域５３０に含まれないとき、状況は逆転しても良い。領域５３０のＳＡＤは閾より大きく、分類関数ロジック３２０が領域５３０に適用されても良い。領域５４０及び５５０は、領域５４０及び５５０にオブジェクトが存在しない状況を説明するために用いることができる。領域５５０のＳＡＤは閾より小さく、分類関数ロジック３２０が領域５５０に適用される必要はない。
【００２３】
図６Ａは、幾つかの実施形態による動き推定及びオブジェクト検出の方法６００を示す。方法６００は、図３の動き推定及びオブジェクト検出システムに関連しても良い。方法６００は、ビデオのフレームに適用されても良い。
【００２４】
ブロック６０５で、ビデオの第１のフレームが受信されても良い。ブロック６１０で、第１のフレーム内のオブジェクトを検出するために、異なるサイズのスライディングウインドウが用いられても良い。ブロック６１５で、スライディングウインドウを用いて第１のフレーム内のオブジェクトを検出するために、分類関数が用いられても良い。ブロック６２０で、ビデオの第２のフレームが受信される。ブロック６２５で、第２のフレーム内にないオブジェクトは、第２のフレームと第１のフレームとの間の動き推定を用いて検出されても良い。
【００２５】
図６Ｂは、幾つかの実施形態による動き推定及びオブジェクト検出を実行するために、絶対差和（sum  of  absolute  difference：SAD）を用いる方法６５０を示す。方法６５０は、フレームの領域に適用されても良い。ブロック６５５で、現在フレームの領域と先行フレームの対応する領域とに基づく動きベクトル情報及びＳＡＤが決定されても良い。領域のＳＡＤは、領域に含まれるマクロブロックのＳＡＤに基づいても良い。ブロック６６０で、ＳＡＤは閾と比較されても良い。ＳＡＤが閾より大きい場合、処理はブロック６５５へと続き、現在フレームの領域内のオブジェクトを検出するために分類関数が実行されても良い。例えば、この状況は、現在フレームの領域内にオブジェクトが存在するが、先行フレームの対応する領域内にオブジェクトが存在しないときに生じ得る。
【００２６】
ブロック６６０から、ＳＡＤが閾より小さい又は等しい場合、処理はブロック６７０へと続き、現在フレームの領域のサンプルエリア（例えば、中心点）が先行フレームの対応する領域内で見付かるか否かを決定するためにテストが実行されても良い。サンプルエリアが先行フレームの対応する領域内にもある場合、処理はブロック６６５へと続き、現在フレームの領域内のオブジェクトを検出するために分類関数が適用されても良い。例えば、この状況は、現在フレームの領域内にオブジェクトが存在し、且つ該オブジェクトが先行フレームの対応する領域内にも場合によっては動きによる僅かな差を有し存在するときに生じ得る。
【００２７】
代替で、ブロック６７０から、処理はブロック６７５へと続き、先行フレームの対応する領域の符号化情報が現在フレームのために再利用されても良い。例えば、この状況は、現在フレームと先行フレームの両方の同じ領域がオブジェクトを含まないときに生じ得る。方法６００及び６５０は、オブジェクトを含まない領域に対して分類関数を実行する必要をなくすことができる。方法６５０は、現在フレームの全ての領域について繰り返されても良い。
【００２８】
本発明の実施形態は、各ビデオフレームについて完全な検出が実行された場合と同じ精度を保ちながら、少ない領域を評価することにより、オブジェクト検出動作の実行を大幅に向上できる。本発明の実施形態は、新しいオブジェクトがビデオ内に現れない限りビデオ背景の大部分の領域がオブジェクトの無い領域であり且つそれらが時間と共に有意に変化しない、ビデオカメラが使用され得るビデオ関連アプリケーション（例えば、ビデオ会議、ビデオ監視、等）にとって有用である。本発明の実施形態は、ビデオフレームのスケーリングの必要なしに、生ビデオに直接適用できる。スケーリングが必要なとき、グラフィック制御部は、一定のスケーリングファクタでビデオフレームのチェーンを維持する必要がある。各々のスケーリングされたビデオフレームは、自身の動き情報に関連付けられる必要があっても良い。本発明の実施形態は、ソフトウェア、ハードウェア、又は両者の組み合わせで実行されても良い。幾つかの実施形態では、ＳＡＤロジック３１５（図３）の動作又はブロック６５５で実行される動作は、性能を向上し動き推定コストを低減するために、ハードウェアで実行されても良い。例えば、特定のグラフィック制御部は、ＳＡＤロジック３１５の動作を実行するために用いられ得るハードウェア加速エンジンを有しても良い。
【００２９】
上述の方法は、ＲＡＭ（random  access  memory）、ＲＯＭ（read  only  memory）、ＰＲＯＭ（programmable  ROM）、フラッシュメモリ等のような機械又はコンピュータ可読記憶媒体に格納された論理命令セットとして、ＰＬＡ（programmable  logic  array）、ＦＰＧＡ（field−programmable  gate  arrays）、ＣＰＬＤ（complex  programmable  logic  device）のような構成可能ロジックで、ＡＳＩＣ（application−specific  integrated  circuit）、ＣＭＯＳ（complementary−symmetry  metal−oxide−semiconductor）又はＴＴＬ（transistor−transistor  logic）技術のような回路技術を用いた固定機能論理ハードウェアで、又はそれらの組合せで実施されても良い。例えば、方法の中で示した動作を実行するためのコンピュータプログラムコードは、Ｃ＋＋等のようなオブジェクト指向プログラミング言語及びＣプログラミング言語若しくは類似のプログラミング言語のような従来の手続き型プログラミング言語を含む１又は複数のプログラミング言語の組合せで記述されても良い。
【００３０】
図７は、システム７００の一実施形態を示す。実施形態では、システム７００はメディアシステムであっても良いが、システム７００はこの環境に限定されない。例えば、システム７００は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、ＰＤＡ（personal  digital  assistant）、携帯電話機、携帯電話機／ＰＤＡの組合せ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレット、又はスマートテレビ）、ＭＩＤ（mobile  internet  device）、メッセージング装置、データ通信装置、等に組み込まれても良い。
【００３１】
実施形態では、システム７００は、ディスプレイ７２０に結合されるプラットフォーム７０２を有する。プラットフォーム７０２は、コンテンツサービス装置７３０若しくはコンテンツ配信装置７４０のようなコンテンツ装置、又は他の類似のコンテンツソースからコンテンツを受信しても良い。１又は複数のナビゲーション機能を有するナビゲーション制御部７５０は、例えばプラットフォーム７０２及び／又はディスプレイ７２０と相互作用するために用いられても良い。これらのコンポーネントの各々は、以下に詳細に説明される。
【００３２】
実施形態では、プラットフォーム７０２は、チップセット７０５、プロセッサ７１０、メモリ７１２、記憶装置７１４、グラフィックサブシステム７１５、アプリケーション７１６及び／又は無線機７１８の任意の組合せを有しても良い。チップセット７０５は、プロセッサ７１０、メモリ１２、記憶装置７１４、グラフィックサブシステム７１５、アプリケーション７１６及び／又は無線機７１８の間の相互通信を提供しても良い。例えば、チップセット７０５は、記憶装置７１４との相互通信を提供可能な記憶装置アダプタ（図示しない）を有しても良い。
【００３３】
プロセッサ７１０は、ＣＩＳＣ（Complex  Instruction  Set  Computer）又はＲＩＳＣ（Reduced  Instruction  Set  Computer）プロセッサ、ｘ８６命令セット互換プロセッサ、マルチコア、又は任意の他のマイクロプロセッサ又はＣＰＵ（central  processing  unit）として実施されても良い。実施形態では、プロセッサ７１０は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサ、等を有しても良い。
【００３４】
メモリ７１２は、ＲＡＭ（Random  Access  Memory）、ＤＲＡＭ（Dynamic  Random  Access  Memory）、又はＳＲＡＭ（Static  RAM）のような揮発性メモリ装置として実施されても良いが、これらに限定されない。
【００３５】
記憶装置７１４は、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内蔵記憶装置、外付け記憶装置、フラッシュメモリ、バッテリバックアップＳＤＲＡＭ（synchronous  DRAM）、及び／又はネットワークアクセス可能な記憶装置のような不揮発性メモリ装置として実施されても良いが、これらに限定されない。実施形態では、記憶装置７１４は、例えば複数のハードドライブが含まれるとき重要なデジタルメディアのために記憶性能拡張保護を増大させる技術を有しても良い。
【００３６】
グラフィックサブシステム７１５は、表示のために静止画像又はビデオのような画像の処理を実行しても良い。グラフィックサブシステム７１５は、例えばＧＰＵ（graphics  processing  unit）又はＶＰＵ（visual  processing  unit）であっても良い。アナログ又はデジタルインタフェースは、グラフィックサブシステム７１５及びディスプレイ７２０に通信可能に結合するために用いられても良い。例えば、インタフェースは、ＨＤＭＩ（登録商標）（High−Definition  Multimedia  Interface）、ＤｉｓｐｌａｙＰｏｒｔ、無線ＨＤＭＩ、及び／又は無線ＨＤ準拠技術のうちの任意のものであっても良い。グラフィックサブシステム７１５は、プロセッサ７１０又はチップセット７０５に統合され得る。グラフィックサブシステム７１５は、チップセット７０５に通信可能に結合されるスタンドアロン型カードであり得る。
【００３７】
ここに記載されるグラフィック及び／又はビデオ処理技術は、種々のハードウェアアーキテクチャで実施されても良い。例えば、グラフィック及び／又はビデオ機能は、チップセットに統合されても良い。代替で、別個のグラフィック及び／又はビデオプロセッサが用いられても良い。更に別の実施形態として、グラフィック及び／又はビデオ機能は、マルチコアプロセッサを含む汎用プロセッサにより実施されても良い。更なる実施形態では、機能は、消費者電子機器内に実装されても良い。
【００３８】
無線機７１８は、種々の適切な無線通信技術を用いて信号を送信及び受信可能な１又は複数の無線機を有しても良い。このような技術は、１又は複数の無線ネットワークに渡る通信に関与し得る。例示的な無線ネットワークは、ＷＬＡＮ（wireless  local  area  network）、ＷＰＡＮ（wireless  personal  area  network）、ＷＭＡＮ（wireless  metropolitan  area  network）、セルラネットワーク、及び衛星ネットワークを含む（が、これらに限定されない）。このようなネットワークに渡る通信では、無線機７１８は、任意のバージョンの１又は複数の適用規格に従って動作しても良い。
【００３９】
実施形態では、ディスプレイ７２０は、テレビ型モニタ又はディスプレイを有しても良い。ディスプレイ７２０は、例えば、コンピュータディスプレイスクリーン、タッチスクリーンディスプレイ、ビデオモニタ、テレビ型装置、及び／又はテレビを有しても良い。ディスプレイ７２０は、デジタル及び／又はアナログであっても良い。実施形態では、ディスプレイ７２０は、ホログラフィックディスプレイであっても良い。また、ディスプレイ７２０は、視覚投影を受け得る透過面であっても良い。このような投影は、種々の形式の情報、画像及び／又はオブジェクトを伝達し得る。例えば、このような投影は、ＭＡＲ（mobile  augmented  reality）アプリケーションのための視覚的オーバレイであっても良い。１又は複数のソフトウェアアプリケーション７１６の制御下で、プラットフォーム７０２は、ユーザーインターフェース７２２をディスプレイ７２０に表示しても良い。
【００４０】
実施形態では、コンテンツサービス７３０は、任意の全国的、国際的、及び／又は独立型サービスにより干すとされても良く、したがって例えばインターネットを介してプラットフォーム７０２にアクセス可能であっても良い。コンテンツサービス装置７３０は、プラットフォーム７０２に及び／又はディスプレイ７２０に結合されても良い。プラットフォーム７０２に及び／又はコンテンツサービス装置７３０は、ネットワーク７６０へ及びそれからメディア情報を通信（例えば、送信及び／又は受信）するために、ネットワーク７６０に結合されても良い。コンテンツ配信装置７４０も、プラットフォーム７０２に及び／又はディスプレイ７２０に結合されても良い。
【００４１】
実施形態では、コンテンツサービス装置７３０は、ケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話機、インターネット可能装置、又はデジタル情報及び／又はコンテンツを配信可能な機器、及びネットワークを介して又は直接にコンテンツプロバイダとプラットフォーム７０２及び／又はディスプレイ７２０との間でコンテンツを単方向若しくは双方向通信可能な任意の他の類似の装置を有しても良い。コンテンツは、単方向若しくは双方向に、システム７００内のコンポーネントのうちの任意の１つ及びネットワーク７６０を介してコンテンツプロバイダへ及びそれから通信されても良い。コンテンツの例は、例えば、ビデオ、音楽、医用及びゲーム情報、等を含む任意のメディア情報を有しても良い。
【００４２】
コンテンツサービス装置７３０は、メディア情報、デジタル情報、及び／又は他のコンテンツを含むケーブルテレビ番組のようなコンテンツを受信する。コンテンツプロバイダの例は、任意のケーブル又は衛星テレビ又は無線機又はインターネットコンテンツプロバイダを含み得る。提供される例は、本発明の実施形態を限定するものではない。
【００４３】
実施形態では、プラットフォーム７０２は、１又は複数のナビゲーション機能を有するナビゲーション制御部７５０から制御信号を受信しても良い。制御部７５０のナビゲーション機能は、例えばユーザーインターフェース７２２と相互作用するために用いられても良い。実施形態では、ナビゲーション制御部７５０は、ユーザに空間的（例えば、連続する多次元）データをコンピュータに入力させるコンピュータハードウェアコンポーネント（特に、ヒューマンインタフェース装置）であっても良いポインティングデバイスであっても良い。ＧＵＩ（graphical  user  interface）、テレビ、及びモニタのような多くのシステムは、ユーザに、身体的ジェスチャを用いてコンピュータ又はテレビを制御させ及びそれらにデータを提供させる。
【００４４】
制御部７５０のナビゲーション機能の動きは、ディスプレイ（例えば、ディスプレイ７２０）上で、ディスプレイに表示されるポインタ、カーソル、フォーカス、リング又は他の視覚的指示子の動きにより同調されても良い。例えば、ソフトウェアアプリケーション７１６の制御下で、ナビゲーション制御部７５０に配置されたナビゲーション機能は、例えばユーザーインターフェース７２２上に表示される仮想ナビゲーション機能にマッピングされても良い。実施形態では、制御部７５０は、別個のコンポーネントではなく、プラットフォーム７０２及び／又はディスプレイ７２０に統合されても良い。しかしながら、実施形態は、ここに示された又は記載された要素又は環境に限定されない。
【００４５】
実施形態では、ドライバ（図示しない）は、例えば、有効にされると、初期ブートアップ後のボタンのタッチで、テレビのように即座に、ユーザがプラットフォーム７０２をオン及びオフにできるようにする技術を有しても良い。プログラムロジックは、プラットフォーム７０２に、プラットフォームが「オフ」にされると、コンテンツをメディアアダプタ又は他のコンテンツサービス装置７３０又はコンテンツ配信装置７４０へストリーミングさせても良い。さらに、チップセット７０５は、例えば５．１サラウンドサウンド音声及び／又は高品位７．１サラウンドサウンド音声をサポートするハードウェア及び／又はソフトウェアを有しても良い。ドライバは、統合グラフィックプラットフォームのグラフィックドライバを有しても良い。実施形態では、グラフィックドライバは、ＰＣＩ（peripheral  component  interconnect）Ｅｘｐｒｅｓｓグラフィックカードを有しても良い。
【００４６】
種々の実施形態では、システム７００の中で示した１又は複数のコンポーネントのうちの任意のものは、統合されても良い。例えば、プラットフォーム７０２及びコンテンツサービス装置７３０が統合されても良く、プラットフォーム７０２及びコンテンツ配信装置７４０が統合されても良く、又はプラットフォーム７０２、コンテンツサービス装置７３０及びコンテンツ配信装置７４０が統合されても良い。種々の実施形態では、プラットフォーム７０２及びディスプレイ７２０は、統合ユニットであっても良い。例えば、ディスプレイ７２０及びコンテンツサービス装置７３０が統合されても良く、又はディスプレイ７２０及びコンテンツ配信装置７４０が統合されても良い。これらの例は、本発明を限定するものではない。
【００４７】
種々の実施形態では、システム７００は、無線システム、有線システム又は両者の組合せとして実装されても良い。無線システムとして実施されるとき、システム７００は、１又は複数のアンテナ、送信機、受信機、通信機、増幅器、フィルタ、制御ロジック、等のような無線共有媒体を介して通信するのに適するコンポーネント及びインタフェースを有しても良い。無線共有媒体の例は、ＲＦスペクトル等のような無線スペクトルの部分を含んでも良い。有線システムとして実施されるとき、システム７００は、入力／出力（Ｉ／Ｏ）アダプタ、対応する有線通信媒体でＩ／Ｏアダプタに接続するための物理コネクタ、ＮＩＣ（network  interface  card）、ディスク制御部、ビデオ制御部、音声制御部、等のような、有線通信媒体を介して通信するのに適するコンポーネント及びインタフェースを有しても良い。有線通信媒体の例は、ワイヤ、ケーブル、金属線、プリント回路基板（ＰＣＢ）、バックプレーン、スイッチ構造、半導体物質、ツイストペアワイヤ、同軸ケーブル、光ファイバ等を含んでも良い。
【００４８】
プラットフォーム７０２は、情報を通信するために１又は複数の論理又は物理チャネルを確立しても良い。情報は、媒体情報及び制御情報を有しても良い。媒体情報は、ユーザに意味のあるデータ提示コンテンツを表し得る。コンテンツの例は、例えば、音声会話、ビデオ会議、ストリーミングビデオ、電子メール（ｅｍａｉｌ）メッセージ、音声メールメッセージ、英数字シンボル、グラフィック、画像、ビデオ、テキスト等からのデータを含み得る。ビデオ会議からのデータは、例えば、会話情報、無音期間、背景雑音、快適雑音、トーン等であっても良い。制御情報は、自動システム向けのコマンド、命令又は制御ワードを表す任意のデータを表しても良い。例えば、制御情報は、システムを通じて媒体情報を転送し、又は所定の方法で媒体情報を処理するようノードに指示するために用いられても良い。しかしながら、実施形態は、図７に示された又は記載された要素又は環境に限定されない。
【００４９】
上述のように、システム７００は、変化する物理的様式又は形状因子で実施されても良い。図８は、方法７００が実施され得る小型装置８００の実施形態を示す。実施形態では、例えば、装置８００は、無線機能を有するモバイルコンピューティング装置として実施されても良い。モバイルコンピューティング装置は、例えば、処理システム及び１又は複数のバッテリのようなモバイル電源若しくは供給を有する任意の装置を表しても良い。
【００５０】
上述のように、モバイルコンピューティング装置の例は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、ＰＤＡ（personal  digital  assistant）、携帯電話機、携帯電話機／ＰＤＡの組合せ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレット、又はスマートテレビ）、ＭＩＤ（mobile  internet  device）、メッセージング装置、データ通信装置、等を有しても良い。
【００５１】
モバイルコンピューティング装置の例は、腕時計型コンピュータ、指輪型コンピュータ、リングコンピュータ、眼鏡型コンピュータ、ベルトクリップ型コンピュータ、腕章型コンピュータ、靴型コンピュータ、衣類型コンピュータ、及び他の装着可能コンピュータのような、人により装着されるよう配置されるコンピュータも含み得る。実施形態では、例えば、モバイルコンピューティング装置は、コンピュータアプリケーション及び音声通信及び／又はデータ通信を実行可能なスマートフォンとして実施されても良い。幾つかの実施形態は、例としてスマートフォンとして実施されるモバイルコンピューティング装置と共に記載され得るが、他の実施形態も他の無線モバイルコンピューティング装置を持ち手実施できることが理解される。実施形態は、この文脈に限定されない。
【００５２】
図８に示すように、装置８００は、筐体８０２、ディスプレイ８０４、入力／出力（Ｉ／Ｏ）装置８０６、アンテナ８０８を有しても良い。装置８００は、ナビゲーション機能８１２を有しても良い。ディスプレイ８０４は、モバイルコンピューティング装置に適切な情報を表示する任意の適切なディスプレイを有しても良い。Ｉ／Ｏ装置８０６は、モバイルコンピューティング装置に情報を入力する任意の適切なＩ／Ｏ装置を有しても良い。Ｉ／Ｏ装置８０６の例は、英数字キーボード、数字キーパッド、タッチパッド、入力キー、ボタン、スイッチ、ロッカースイッチ、マイクロフォン、スピーカ、音声認識装置及びソフトウェア、等を有しても良い。情報は、マイクロフォンにより装置８００に入力されても良い。このような情報は、音声認識装置によりデジタル化されても良い。実施形態は、この文脈に限定されない。
【００５３】
種々の実施形態は、ハードウェア要素、ソフトウェア要素、又は両者の組み合わせを用いて実施されても良い。ハードウェア要素の例は、プロセッサ、マイクロプロセッサ、回路、回路要素（例えば、トランジスタ、抵抗器、キャパシタ、インダクタ等）、集積回路、ＡＳＩＣ（application  specific  integrated  circuit）、ＰＬＤ（programmable  logic  device）、ＤＳＰ（digital  signal  processor）、ＦＰＧＡ（field  programmable  gate  array）、メモリユニット、論理ゲート、レジスタ、半導体装置、チップ、マイクロチップ、チップセット等を有しても良い。ソフトウェアの例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシジャ、ソフトウェアインタフェース、ＡＰＩ（application  program  interface）、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、又はそれらの任意の組合せを含んでも良い。実施形態がハードウェア要素及び／又はソフトウェア要素を用いて実装されるかの決定は、所望の計算レート、パワーレベル、熱耐性、処理周期バジェット、入力データレート、出力データレート、メモリ資源、データバス速度、及び他の設計若しくは性能制約のような任意の数の要因に従って変化し得る。
【００５４】
少なくとも１つの実施形態の１又は複数の態様は、プロセッサ内の種々のロジックを表し、機械により読み込まれると本願明細書に記載の技術を実行するために該機械にロジックを組み立てさせる、機械可読媒体に格納された典型的な命令により実施されても良い。「ＩＰコア」として知られるこのような表現は、有形の、機械可読媒体に格納され、実際にロジック又はプロセッサを作成する製造機械にロードするために種々の顧客若しくは製造設備に供給されても良い。
【００５５】
例示的なサイズ／モデル／値／範囲が与えられ得るが、本発明の実施形態はそれらに限定されない。製造技術（例えば、フォトリソグラフィー）は時間の経過と共に熟成するので、より小型の装置が製造されることが期待される。さらに、集積回路（ＩＣ）チップ及び他のコンポーネントとのよく知られている電力／グランド接続は、図示される場合もあり、説明及び議論を簡単にするため及び本発明の実施形態の特定の態様を不明確にしないために図示されない場合もある。さらに、配置は、本発明の実施形態の特定の態様を不明確にしないために、及びこのようなブロック図配置の実装に関する詳細が実施形態が実施されるプラットフォームに大きく依存する、つまりこのような詳細は当業者の範囲内であるという事実の観点からブロック図の形式で示され得る。本発明の例示的な実施形態を説明するために固有の詳細（例えば、回路）が説明される場合、当業者には、本発明の実施形態がこれら固有の詳細を有しないで又はそれらの変形を有して実施できることが明らかである。したがって、説明は、限定ではなく説明のためとして考えられるべきである。
【００５６】
用語「結合される」は、本願明細書では、問題となっているコンポーネント間の直接的又は間接的な任意の種類の関係を表すために用いられ、電気的、機械的、流体、光学、電磁気、電気機械、又は他の接続に適用されても良い。さらに、用語「第１の」、「第２の」等は、本願明細書では、議論を行うためにのみ用いられ、特に示さない限り、特定の時間的又は年代順の意味を伝達しない。
【００５７】
当業者は、本発明の実施形態の広範な技術が種々の形式で実施できることを前述の説明から理解するだろう。したがって、本発明の実施形態はそれらの特定の例と共に記載されたが、図面、明細書及び請求の範囲を調査すると−当業者には他の変形が明らかであるので、本発明の実施形態の真の範囲はそれら特定の例に限定されるべきではない。
【図１】
0005908605.tif 000002
【図２】
0005908605.tif 000003
【図３】
0005908605.tif 000004
【図４】
0005908605.tif 000005
【図５】
0005908605.tif 000006
【図６Ａ】
0005908605.tif 000007
【図６Ｂ】
0005908605.tif 000008
【図７】
0005908605.tif 000009
【図８】
0005908605.tif 000010