(57)【特許請求の範囲】
【請求項１】
シーンの少なくとも２つの画像の一連の画像を記憶するように構成されたメモリ構成要素と、前記少なくとも２つの画像が、第１の画像と前記第１の画像の後にキャプチャされた第２の画像とを備え、前記一連の画像が、前記シーン内で移動する少なくとも１つのオブジェクトを含む、
前記メモリ構成要素と通信している少なくとも１つのプロセッサとを備え、前記プロセッサが、
前記少なくとも２つの画像中の対象オブジェクトを決定することと、前記対象オブジェクトが、前記シーン内で移動する前記少なくとも１つのオブジェクトのうちの１つである、
前記少なくとも２つの画像のうちの少なくとも１つから前記対象オブジェクトを示す画像データを生成することと、
前記少なくとも２つの画像中の前記対象オブジェクトの位置に基づいて前記対象オブジェクトの動きデータを決定することと、前記動きデータが、前記第１の画像と前記第２の画像との間の前記対象オブジェクトの前記移動を示す大きさ値と方向値とを含む、
前記動きデータの前記大きさ値だけ、前記対象オブジェクトの前記決定された動きデータの方向に前記第２の画像をシフトすること、前記第１の画像上に前記シフトされた第２の画像をオーバーレイすること、背景画像のためのピクセル値を生成するために前記シフトされた第２の画像のピクセル値を前記第１の画像に加算すること、および、前記背景画像の前記ピクセル値を正規化すること、を備えるぼけプロセスを使用して前記背景画像を生成することと、
前記第２の画像中の前記対象オブジェクトのロケーションにおいて前記背景画像中に前記対象オブジェクトを示す前記画像データを含めることによって最終画像を生成することと
を行うように構成された、システム。
【請求項２】
前記ピクセル値を正規化することが、前記背景画像を前記第２の画像の寸法にスケーリングすることを備えるか、
前記ピクセル値を正規化することが、前記背景画像の前記ピクセル値の各々を２で除算することを備えるか、または
前記第１の画像上に前記シフトされた第２の画像をオーバーレイすることが、前記第１の画像の第１のピクセル値を前記第２の画像の第２のピクセル値にマッピングする、請求項１に記載のシステム。
【請求項３】
前記少なくとも２つの画像が、第１の画像と前記第１の画像の後にキャプチャされた第２の画像とを備え、ここにおいて、前記少なくとも１つのプロセッサが、
前記一連の画像の第３の画像中の前記対象オブジェクトのロケーションを前記第２の画像中の対象オブジェクトのロケーションと比較することによって前記対象オブジェクトの第２の動きデータを決定することと、前記第３の画像が、前記第２の画像の後にキャプチャされる、
前記背景画像と前記第２の動きデータとを使用することによって前記背景画像を更新する（update）こととを行うようにさらに構成された、請求項１に記載のシステム。
【請求項４】
前記背景画像を解像度において前記一連の画像中の前記画像のサイズにスケールアップすることをさらに備える、請求項１に記載のシステム。
【請求項５】
前記少なくとも１つのプロセッサが、前記第２の画像からの前記一連の画像中の動いている前記少なくとも１つのオブジェクトの対象オブジェクトの画像を生成するようにさらに構成された、請求項４に記載のシステム。
【請求項６】
前記少なくとも１つのプロセッサが、ユーザ入力を受信し、前記対象オブジェクトを識別するために前記ユーザ入力を使用するようにさらに構成された、請求項１に記載のシステム。
【請求項７】
前記少なくとも１つのプロセッサが、前記シーンにわたって移動する少なくとも２つのオブジェクトをディスプレイ上に表示し、前記少なくとも２つのオブジェクトのうちのどちらが前記対象オブジェクトであるかを識別するためのユーザ入力を受信するようにさらに構成された、請求項６に記載のシステム。
【請求項８】
前記少なくとも１つのプロセッサが、前記一連の画像のうちの１つを、前記対象オブジェクトを識別するために使用するための参照画像として決定するようにさらに構成された、請求項１に記載のシステム。
【請求項９】
少なくとも１つのプロセッサが、前記一連の画像のうちのいずれが前記参照画像であるかを選択するユーザ入力を受信するようにさらに構成された、請求項８に記載のシステム。
【請求項１０】
前記シーンの前記一連の画像をキャプチャするように構成されたカメラモジュールと、
前記シーンにわたって移動する少なくとも２つのオブジェクトを表示するように構成されたディスプレイと、
前記メモリ構成要素、前記少なくとも１つのプロセッサ、前記カメラモジュールおよび前記ディスプレイを包囲するように構成されたハウジング（housing）と
をさらに備え、ここにおいて、前記ディスプレイおよび前記カメラモジュールが、前記ハウジングの表面の一部を形成するようにさらに構成された、請求項１に記載のシステム。
【請求項１１】
パンニングショットを生成するための方法であって、
シーンの一連の画像を受信することと、前記一連の画像が、前記シーン内で移動する少なくとも１つのオブジェクトと背景情報とを含む、
前記一連の画像中の動いている対象オブジェクトを示す画像データを生成することと、前記対象オブジェクトが、前記シーン内で移動する前記少なくとも１つのオブジェクトのうちの１つである、
前記一連の画像のうちの第２の画像中の前記対象オブジェクトの第２のロケーションを前記一連の画像のうちの第１の画像中の前記対象オブジェクトの第１のロケーションと比較することによって前記対象オブジェクトの動きデータを決定することと、前記第２の画像が前記第１の画像の後にキャプチャされ、ここにおいて、前記動きデータが、前記第１の画像と前記第２の画像との間の前記対象オブジェクトの移動を示す方向と大きさ値とを備える、
背景画像を生成することと、ここにおいて、前記背景画像を生成することが、前記動きデータの前記大きさ値だけ、前記対象オブジェクトの前記決定された動きデータの方向に前記第２の画像をシフトすること、前記第１の画像上に前記シフトされた第２の画像をオーバーレイすること、前記背景画像のためのピクセル値を生成するために前記シフトされた第２の画像の前記ピクセル値を前記第１の画像に加算すること、および、前記背景画像の前記ピクセル値を正規化すること、を備えるぼけプロセスを実装することを備える、
前記第２の画像中の前記対象オブジェクトのロケーションにおいて前記背景画像中に前記対象オブジェクトを示す前記画像データを含めることによって最終画像を生成することと
を備える、方法。
【請求項１２】
前記一連の画像の第３の画像を前記第２の画像と比較することによって前記対象オブジェクトの第２の動きデータを決定することと、前記第３の画像が、前記第２の画像の後にキャプチャされる、
前記背景画像と前記第２の動きデータとを使用することによって前記背景画像を更新することとをさらに備える、請求項１１に記載の方法。
【請求項１３】
前記最終画像を前記生成することが、前記第２の画像中の前記対象オブジェクトのロケーションにおいて前記背景画像上に前記対象オブジェクトの前記画像を含めることを備えるか、または
前記一連の画像中の動いている前記少なくとも１つのオブジェクトの前記対象オブジェクトが前記第２の画像からコピーされる、請求項１１に記載の方法。
【請求項１４】
前記ピクセル値を正規化することが、前記背景画像を前記第２の画像の寸法にスケーリングすることを備えるか、
前記ピクセル値を正規化することが、前記背景画像の前記ピクセル値の各々を２で除算することを備えるか、または
前記シフトされた第２の画像のピクセル値を前記第１の画像に前記加算することから得られたピクセル値をもつピクセルの数が、前記第２の画像中のピクセルの数よりも少ない、請求項１１に記載の方法。
【請求項１５】
１つまたは複数のコンピュータシステムによって実行されたとき、請求項１１乃至１４のいずれかに記載の方法を実行するように前記１つまたは複数のコンピュータシステムを構成するコンピュータ実行可能命令を記憶するコンピュータ可読、非一時的記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本出願は、一般にパンニングショット（panning shot）の生成（generation）に関し、より詳細には、シーン（scene）にわたって移動する対象オブジェクト（subject object）の複数の画像（image）からパンニングショットを自動的に生成するためのシステム、方法、およびデバイスに関する。
【背景技術】
【０００２】
[0002]  パンニングショットは、動いている対象オブジェクトの画像である。対象オブジェクトは、画像キャプチャデバイス（image capture device）によってキャプチャされたシーン内の任意の関心オブジェクト（object of interest）である。パンニングショット内で、対象オブジェクトは鮮鋭であるが、シーンの背景（たとえば、対象オブジェクト以外のシーンのアスペクト）はぼやけている。対象オブジェクトの方向（direction）にあるぼけ（blur）は、パンニングショット中の動きの視覚効果をもたらす。パンニングショットは、一般に、経験を積んだ撮影者によって撮られる。たとえば、パンニングショットは、対象オブジェクトの鮮鋭な画像をキャプチャ（capture）するために較正された値よりも小さい値までシャッター速度／露光時間を低減することによって撮られ得る。そのような状況では、最適露光時間は、対象オブジェクトの動きならびに周辺光の関数であることにより、決定する（determine）のが困難であり得る。別の例として、パンニングショットは、対象オブジェクトと同じ、動きの方向に画像キャプチャデバイスを動かすことによって撮られ得る。しかしながら、そのようなパンニングショットは、対象オブジェクトを追跡するために安定した手または三脚を必要とするであろう。また、画像キャプチャデバイスの移動速度および動きの方向は、移動する対象オブジェクトのそれに一致するように制御されることになり、さもないと、パンニングショットは過度にぼけ得る。したがって、パンニングショットの生成を可能にするための改善されたシステムおよび方法が有益である。
【発明の概要】
【０００３】
[0003]  本発明のシステム、方法、およびデバイスは、それぞれいくつかの態様を有し、それらのうちの単一の態様が単独で本発明の望ましい属性を担当するとは限らない。次に、以下の特許請求の範囲によって表される本発明の範囲を限定することなしに、様々な実施形態のいくつかの特徴が手短に説明される。この説明を考察すれば、特に「発明を実施するための形態」と題されたセクションを読めば、本発明の様々な実施形態の特徴が、より容易に、または自動的にパンニングショットを生成することを含む利点をどのように提供するかが理解されよう。いくつかの実施形態は追加の特徴を含み得、いくつかの実施形態は「発明の概要」セクションの実施形態で説明されるあらゆる特徴を含むとは限らない。
【０００４】
[0004]  本開示で説明される主題の１つの革新は、パンニング画像を生成するためのシステムである。いくつかの実施形態では、本システムは、シーンの少なくとも２つの画像の一連の画像（a series of images）を記憶するように構成されたメモリ構成要素（memory component）を含む。一連の画像は、シーン内で移動する少なくとも１つのオブジェクトを含む。本システムは、メモリ構成要素と通信している少なくとも１つのプロセッサ（processor）を含む。プロセッサは、メモリ構成要素に記憶された一連の画像にアクセスするように構成される。プロセッサは、シーン中で移動し、一連の画像中に示された対象オブジェクトを決定するようにさらに構成される。プロセッサは、一連の画像のうちの少なくとも１つから対象オブジェクトを示す（depict）画像データ（image data）をコピーするようにさらに構成される。プロセッサは、一連の画像の第１の画像中の対象オブジェクトの位置（position）に対する一連の画像の第２の画像中の対象オブジェクトの位置に基づいて対象オブジェクトの動きデータ（motion data）を決定するようにさらに構成される。第２の画像は第１の画像の後にキャプチャされる。プロセッサは、第１の画像と、第２の画像と、動きデータとを使用することによって背景画像（background image）を生成するようにさらに構成される。プロセッサは、背景画像上に対象オブジェクトの画像を加算することによって最終画像（final image）を生成するようにさらに構成される。
【０００５】
[0005]  本開示で説明される主題の別の態様は、パンニング画像を生成するための方法である。いくつかの実施形態では、本方法は、シーンの一連の画像を受信することを含み、一連の画像は、シーン内で移動する少なくとも１つのオブジェクトと背景情報（background information）とを含む。本方法は、一連の画像中の動いている少なくとも１つのオブジェクトの対象オブジェクトを示す画像データをコピーすることをさらに含む。本方法は、一連の画像のうちの第２の画像中の対象オブジェクトの第２のロケーション（location）を一連の画像のうちの第１の画像中の対象オブジェクトの第１のロケーションと比較することによって対象オブジェクトの動きデータを決定することをさらに含み、第２の画像は第１の画像の後にキャプチャされる。本方法は、第１の画像と第２の画像と動きデータとを使用することによって背景画像を生成することをさらに含む。本方法は、背景画像上に対象オブジェクトを示す画像を重畳することによって最終画像を生成することをさらに含む。本方法は、第１の画像と第２の画像と動きデータとを使用することを使用することによって背景画像を生成し得る。背景画像を生成するために、本方法は、第１の画像と第２の画像と動きデータとを使用するぼけプロセス（blur process）を実装し得る。
【０００６】
[0006]  本開示で説明される主題の別の革新は、パンニング画像を生成するためのシステムである。いくつかの実施形態では、本システムは、コンピュータ実行可能命令（computer-executable instruction）を少なくとも記憶するように構成されたメモリを含む。本システムは、１つまたは複数のプロセッサを含むコンピューティングデバイス（computing device）をさらに含み、コンピューティングデバイスは、メモリと通信しており、シーンの一連の画像を受信するように構成された画像収集モジュール（image collection module）を実装するためにコンピュータ実行可能命令を実行するように構成され、一連の画像は、シーン内で移動する少なくとも１つのオブジェクトを含む。コンピューティングデバイスは、一連の画像中の動いている少なくとも１つのオブジェクトから選択された対象オブジェクトを示す画像データをコピーするように構成された対象オブジェクトキャプチャモジュール（subject object capture module）を実装するようにさらに構成される。コンピューティングデバイスは、一連の画像の第２の画像中の対象オブジェクトの第２の位置を一連の画像の第１の画像中の対象オブジェクトの第１の位置と比較することによって対象オブジェクトの動きデータを決定するように構成された動きデータキャプチャモジュール（motion data capture module）を実装するようにさらに構成され、第２の画像は第１の画像の後にキャプチャされる。コンピューティングデバイスは、第１の画像と、第２の画像と、動きデータとを使用して背景画像を生成するように構成されたぼけプロセス適用モジュール（blur process application module）を実装するようにさらに構成される。コンピューティングデバイスは、背景画像上に対象オブジェクトを示す画像データを重畳することによって最終画像を生成するように構成された画像ファイナライズモジュール（image finalization module）を実装するようにさらに構成される。
【０００７】
[0007]  本開示で説明される主題の別の革新は、１つまたは複数のコンピュータシステムによって実行されたとき、パンニング画像を生成するための動作を実行するように１つまたは複数のコンピュータシステムを構成するコンピュータ実行可能命令を記憶するコンピュータ可読、非一時的記憶媒体（computer-readable, non-transitory storage medium）である。動作は、シーンの一連の画像を受信することを含み、一連の画像は、シーン内で移動する少なくとも１つのオブジェクトと背景情報とを含む。動作はまた、一連の画像中の動いている少なくとも１つのオブジェクトの対象オブジェクトを示す画像データをコピーすることを含む。動作はまた、一連の画像の第２の画像中の対象オブジェクトを一連の画像の第１の画像中の対象オブジェクトと比較することによって対象オブジェクトの動きデータを決定することを含み、第２の画像は第１の画像の後にキャプチャされる。動作はまた、第１の画像と、第２の画像と、動きデータとを使用することによって背景画像を生成することを含む。動作はまた、背景画像上に対象オブジェクトを示す画像を重畳することによって最終画像を生成することを含む。
【０００８】
[0008]  次に、上述の態様、ならびに本技術の他の特徴、態様、および利点が、添付の図面を参照しながら様々な実施形態に関して説明される。しかしながら、図示の実施形態は、例にすぎず、限定するものではない。図面全体にわたって、同様のシンボルは、一般に、コンテキストが別段に規定しない限り、同様の構成要素を識別する（identify）。以下の図の相対寸法（relative dimension）は一定の縮尺で描かれていないことがあることに留意されたい。
【図面の簡単な説明】
【０００９】
【図１】[0009]  本明細書で説明される実施形態のために使用され得る画像キャプチャデバイスの実施形態のブロック図。
【図２Ａ】[0010]  パンニングショットを表す画像を生成するための、図１の画像キャプチャデバイス中で利用され得る例示的な方法を示すフローチャート。
【図２Ｂ】[0011]  第１の画像と第２の画像とを使用してパンニングショットを表し、図１の画像キャプチャデバイス中で利用され得る画像を生成するための例示的な方法を示すフローチャート。
【図３Ａ】[0012]  （たとえば、図１の）画像キャプチャデバイスによる画像によってキャプチャされた動いている複数のオブジェクトをもつシーンの一例を示す図。
【図３Ｂ】（たとえば、図１の）画像キャプチャデバイスによる画像によってキャプチャされた動いている複数のオブジェクトをもつシーンの一例を示す図。
【図４Ａ】[0013]  パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｂ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｃ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｄ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｅ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｆ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｇ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図４Ｈ】パンニングショットを生成するために図３Ａのシーンの一連の画像にわたって実装されるぼけプロセスを示す図。
【図５】[0014]  図１の画像キャプチャデバイス中で利用され得るパンニングモジュール（panning module）のブロック図。
【発明を実施するための形態】
【００１０】
[0015]  添付の図面を参照しながら、新規のシステム、装置、および方法の様々な態様が以下でより十分に説明される。ただし、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示される任意の特定の構造または機能に限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が周到で完全になり得、本開示の範囲を当業者に十分に伝え得るように与えられる。本明細書の教示に基づいて、本開示の範囲は、本発明の他の態様とは無関係に実装されるにせよ、本発明の他の態様と組み合わせられるにせよ、本明細書で開示される新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者は諒解されたい。たとえば、本明細書に記載される態様をいくつ使用しても、装置は実装され得、または方法は実施され得る。さらに、本発明の範囲は、本明細書に記載される本発明の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示されるどの態様も請求項の１つまたは複数の要素によって実施され得ることを理解されたい。
【００１１】
[0016]  本明細書では特定の態様が説明されるが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好適な態様のいくつかの利益および利点が説明されるが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、および送信プロトコルに広く適用可能であるものとし、それらのうちのいくつかが例として、図および好適な態様についての以下の説明において示される。発明を実施するための形態および図面は、本開示を限定するものではなく説明するものにすぎず、本開示の範囲は添付の特許請求の範囲およびそれの均等物によって定義される。
【００１２】
[0017]  概して、本開示の態様は、画像キャプチャデバイスによってパンニングショットを生成することに関する。画像キャプチャデバイスは、以下で説明されるように、シーンの視覚画像をキャプチャするように構成された任意のデバイスであり得る。パンニングショットは、シーン内で移動する対象オブジェクトの一連の画像から、メモリ中の命令で構成されたプロセッサを使用して、自動的に生成され得る。対象オブジェクトは、任意の方向にシーンにわたって、画像キャプチャデバイスに向かってまたは画像キャプチャデバイスから離れて、を含む、シーン内で任意の方向に移動し得る。パンニングショットは、周辺光およびシーン内の対象オブジェクトの動きを含む様々なファクタに基づいて、画像キャプチャデバイスの露光時間、移動速度および動きの方向を決定する経験を積んだ撮影者によって行われ得る。しかしながら、パンニングショットの自動（または実質的に自動）生成は、シーン内で移動する対象オブジェクトの複数の画像をキャプチャすること以外は、画像キャプチャデバイスの手動調整（manual adjustment）をほとんどまたはまったく用いずにパンニングショットを生成する。パンニングショットを自動的に生成することは、パンニングショットの作成のために使用される技能の量を低減することによって、経験を積んだ撮影者以外により広い層のユーザにとってパンニングショット作成を利用可能にするであろう。さらに、パンニングショットの自動（または実質的に自動）生成は、同じロケーションにおいておよび／または単一の電子デバイス内でリアルタイムでパンニングショットの作成を可能にするために、画像キャプチャ能力とともに処理能力を含み得る（プロセッサをもつカメラを含む）統合画像キャプチャデバイスに有利に適用され得る。さらに、パンニングショットの自動（または実質的に自動）生成はまた、パンニングショットを生成するためのプロセスを実行するように構成された専用ハードウェアで実装されることによって、デスクトップおよび／または従来の汎用コンピューティングデバイスと比較してより高い携帯性および限定された処理能力をもつ（カメラをもつスマートフォンを含む）家庭用電子機器デバイスにおいて利用され得る。
【００１３】
[0018]  一実施形態では、パンニングショットを生成することは、シーンの一連の画像を受信するように構成された少なくとも１つのプロセッサを含むシステムによって実行され得る。一連の画像は、時間の隣接する増分においてキャプチャされた複数の画像であり得る。一連の画像は、シーン内で移動する少なくとも１つのオブジェクトと背景情報とをキャプチャし得る。背景情報は、対象オブジェクトの一部でないシーンからキャプチャされた情報であり得る。シーン内で移動する複数のオブジェクトのうちの１つのオブジェクトが、対象オブジェクトとして指定され得、一連の画像のうちの１つからコピーされ得る。対象オブジェクトの指定は、以下でさらに説明されるように、（たとえば、ユーザ入力（user input）から）手動で、または（たとえば、オブジェクト検出アルゴリズムに基づいて）自動的に行われ得る。また、動きデータが、一連の画像の少なくとも一部から決定され得、方向値（direction value）と大きさ値（magnitude value）とを定義し得る。たとえば、一実施形態では、動きデータは、一連の画像の初期画像（initial image）および現在画像（current image）から、２つの画像を比較することによって決定され得る。別の実施形態では、動きデータは、図４Ａ〜図４Ｈに関して説明されるように、新しい現在画像と前の「現在画像」とを比較することから決定され得る）。いくつかの実施形態では、動きデータは、３つ以上および／または一連の画像全体から決定され得る。
【００１４】
[0019]  背景画像が、一連の画像のうちの画像の２つを使用するぼけプロセスを実装することによって生成され得る。たとえば、背景画像は、初期画像を現在画像と比較することによって決定された動きデータに基づいて初期画像と現在画像とを使用するぼけプロセスを実装することによって生成され得る。いくつかの実施形態では、ぼけプロセスは、現在画像を初期画像上にオーバーレイする（overlay）ことを表す計算を実行することと、動きデータの大きさ値だけ動きデータの方向に現在画像をシフトする（shift）こと（すなわち、図４Ａ〜図４Ｈで説明されるように、初期画像のピクセルを現在画像中のピクセルにマッピング（mapping）すること）とを含み得るオーバーレイプロセスによって実装され得る。シフトされた現在画像のピクセル値（pixel value）は、背景画像のためのピクセル値を生成するために初期画像に加算され得る。背景画像は、背景画像のピクセル値を正規化する（normalize）ことによって（たとえば、ピクセル値の各々を２で除算する（divide）ことによって）生成され得る。いくつかの実施形態では、ぼけプロセスは、動きデータの大きさ値だけ動きデータの方向に初期画像、または現在画像をぼかすためにぼけカーネル（または関数）を使用し、次いで、背景画像を生成するためにぼけた画像を使用することによって達成され得る。ぼけプロセスの例は、図４Ａ〜図４Ｈに関してさらに詳細に説明される。最終的に、パンニングショットは、現在画像中の対象オブジェクトのロケーションに背景画像中の対象オブジェクトの画像を含めることによって生成され得る。
【００１５】
[0020]  図１は、たとえば、カメラの視野（ＦＯＶ：field of view）中のオブジェクトがＦＯＶ中のほぼ同じロケーションにとどまり、鮮鋭なオブジェクトとぼけた背景とをもつ画像を生成するようにカメラを動かすことによって、手動パンニング技法を使用して生成されたように見える画像を生成するために使用され得る画像キャプチャデバイス１００の一実施形態のブロック図を示す。画像キャプチャデバイス１００は、カメラモジュール（camera module）１１５と通信している画像プロセッサ１２０を含み得る。画像プロセッサ１２０はまた、ワーキングメモリ（working memory）１０５、メモリ１３０、およびデバイスプロセッサ１５０と通信していることがあり、デバイスプロセッサ１５０は、電子ストレージモジュール１１０および電子ディスプレイ１２５と通信していることがある。いくつかの実施形態では、２つの別個のプロセッサではなく、単一のプロセッサが使用され得る。いくつかの実施形態は、３つまたはそれ以上のプロセッサを含み得る。いくつかの実施形態では、上記で説明された構成要素のうちのいくつかが、画像キャプチャデバイス１００中に含まれないことがある。いくつかの実施形態では、上記で説明されていない追加の構成要素が、画像キャプチャデバイス１００中に含まれ得る。たとえば、いくつかの実施形態では、カメラモジュール１１５および／またはディスプレイ（display）１２５が画像キャプチャデバイス１００中に含まれないことがあり、またはワーキングメモリ１０５とメモリ１３０とが単一のメモリ構成要素として組み合わせられ得る。
【００１６】
[0021]  図１に示されている画像キャプチャデバイス１００の実施形態は、セルフォン、デジタルカメラ、タブレットコンピュータ、スマートフォン、携帯情報端末などであり得、またはそれらの一部であり得る。画像キャプチャデバイス１００はまた、固定コンピューティングデバイス、またはパンニングショットの自動生成が有利であろう任意のデバイスであり得る。パンニングショットの自動生成を与えるように構成されたプロセスに加えて、複数のプロセスが、画像キャプチャされたデバイス１００上でユーザにとって利用可能であり得る。これらのプロセスは、旧来の写真およびビデオキャプチャプロセス、高ダイナミックレンジイメージングプロセス、パノラマ写真キャプチャプロセス、または立体視イメージングプロセスを含み得る。本明細書で使用される、「パンニングショットの自動生成」の様々な実施形態は、自動処理の様々なレベルを含み得、たとえば、オブジェクトを選択するおよび／または背景画像の特性を選択する、少なくとも１つのユーザ入力を含み得る。背景画像の特性を選択する例では、背景画像中のぼけの量を選択することを含む。
【００１７】
[0022]  画像キャプチャデバイス１００は、外部画像をキャプチャするためのカメラモジュール１１５を含む。カメラモジュール１１５は、限定はしないが、センサー、レンズシステム、およびオートフォーカスアセンブリを含む、意図される明快のために図示されていない様々な構成要素を含み得る。単一のカメラモジュール１１５が示されているが、（センサーまたはレンズシステムを含む）任意の数のカメラモジュールおよび／またはカメラモジュール構成要素が、本明細書で説明されるパンニングショットの自動パンニング生成のために使用され得る。たとえば、カメラまたはオプティクスの数が、所与の視野のためのより高い深度決定能力（depth determining capabilities）またはより良い解像度（resolution）を実現するために増加させられ得る。カメラモジュール１１５は、キャプチャされた画像を画像プロセッサ１２０に送信するために画像プロセッサ１２０に結合され得る。画像プロセッサ１２０またはデバイスプロセッサ１５０は、パンニングショットの自動生成に関連する様々なプロセスを実行するために（１つまたは複数の）キャプチャされた画像を受信するように構成され得る。
【００１８】
[0023]  画像プロセッサ１２０は、本明細書で説明されるパンニングショットの生成のための様々な処理動作を実行するように構成され得る。画像プロセッサ１２０は、イメージングアプリケーションのために特別に設計されたプロセッサであり得る。画像処理動作の例としては、クロッピング（cropping）、（たとえば、異なる解像度への）スケーリング（scaling）、画像スティッチング（image stitching）、画像フォーマット変換、色補間、色処理、画像フィルタ処理（たとえば、空間画像フィルタ処理）、レンズアーティファクト（lens artifact）または欠陥補正、レンズ光ロールオフ（light roll-off）またはビネット（vignette）によって引き起こされた光源レベルの低減などがある。画像プロセッサ１２０は、いくつかの実施形態では、複数のプロセッサを備え得る。たとえば、以下でさらに説明されるように、複数のプロセッサの各々は、メモリ１３０に記憶された様々なモジュールによって決定された様々な機能を実行するように構成され得る。画像プロセッサ１２０は、１つまたは複数の専用の画像信号プロセッサ（ＩＳＰ：image signal processor）またはプロセッサのソフトウェア実装形態であり得る。
【００１９】
[0024]  まだ図１に示されている実施形態を参照すると、図示のように、画像プロセッサ１２０は、メモリ１３０とワーキングメモリ１０５とに接続される。メモリ１３０は、様々な機能を実装するために画像プロセッサ１２０が実行する（いくつかの実施形態ではモジュールとしてグループ化される）コンピュータプログラム命令を含んでいることがある。メモリ１２０は、ＲＡＭ、ＲＯＭおよび／または他の永続的、補助または非一時的コンピュータ可読媒体を含み得る。メモリ１３０は、画像キャプチャデバイス１００の一般的なアドミニストレーションおよび動作における画像プロセッサ１２０および／またはデバイスプロセッサ１５０による使用のためにコンピュータプログラム命令を与えるオペレーティングシステムモジュール１４５を記憶し得る。たとえば、オペレーティングシステムモジュール１４５は、デバイス１００のワーキングメモリ１０５と処理リソースとを管理するように画像プロセッサ１２０を構成し得る。また、オペレーティングシステムモジュール１４５は、ハードウェアリソースを管理するためのデバイスドライバ、たとえば、カメラモジュール１１５を含み得る。したがって、いくつかの実施形態では、上記で説明された画像処理モジュール中に含まれている命令は、これらのハードウェアリソースと直接対話しないが、代わりに、オペレーティングシステムモジュール１４５中にある標準サブルーチンまたはＡＰＩを通して対話し得る。オペレーティングシステムモジュール１４５内の命令は、次いで、これらのハードウェア構成要素と直接対話し得る。オペレーティングシステムモジュール１４５は、デバイスプロセッサ１５０と情報を共有するために画像プロセッサ１２０をさらに構成し得る。
【００２０】
[0025]  メモリ１３０は、本開示の態様を実装するためのコンピュータプログラム命令および他の情報をさらに含み得る。たとえば、一実施形態では、メモリ１３０は、ディスプレイ１２５上での表示のためのユーザインターフェース（および／またはそのための命令）を生成するユーザインターフェースモジュール１４０を含む。メモリ１３０はまた、パンニングモジュール（panning module）１５５を記憶し得る。パンニングモジュール１５５は、図５に関して説明されるように画像収集モジュールと、対象オブジェクトキャプチャモジュールと、動きデータキャプチャモジュールと、ぼけプロセス適用モジュールと画像ファイナライズモジュールとを含む追加のモジュールを含み得る。いくつかの実施形態では追加モジュールが含まれ得、またはいくつかの実施形態ではより少ないモジュールが含まれ得る。ワーキングメモリ１０５は、メモリ１３０のモジュール中に含まれているプロセッサ命令のワーキングセットを記憶するために、画像プロセッサ１２０によって使用され得る。ワーキングメモリ１０５はまた、画像キャプチャデバイス１００の動作中に生成された動的データ（たとえば、パンニングショットの自動生成のために使用される情報）を記憶するために、画像プロセッサ１２０によって使用され得る。追加のモジュール、あるいは外部デバイスまたはハードウェアへの接続が、この図に示されていないことがあるが、パンニングショットを生成することに関係する他の動作を与えるために存在し得る。
【００２１】
[0026]  デバイスプロセッサ１５０は、画像キャプチャデバイスによって処理された画像（たとえば、パンニングショット）をユーザに対して表示するようにディスプレイ１２５を制御するように構成され得る。ディスプレイ１２５は、画像キャプチャデバイス１００の外部にあり得るか、または画像キャプチャデバイス１００の一部であり得る。ディスプレイ１２５はまた、ユーザ入力のために（たとえば、シーン内の複数のオブジェクトの中からの対象オブジェクトの選択のために）メモリに記憶されたまたはユーザによって最近キャプチャされたキャプチャされた画像を表示するように構成され得る。ディスプレイ１２５は、パネルディスプレイ、たとえば、ＬＣＤスクリーン、ＬＥＤスクリーン、または他のディスプレイ技術を含み得、タッチセンシティブ技術を実装し得る。デバイスプロセッサ１５０はまた、ユーザからの入力を受信するように構成され得る。たとえば、ディスプレイ１２５はまた、タッチスクリーンであるように構成され得、したがって、ユーザからの入力を受信するように構成され得る。ユーザは、プロセッサがパンニングショットを生成するために使用し得る情報を入力するためにディスプレイ１２５を使用し得る。たとえば、ユーザは、ディスプレイ１２５上に示された視野から対象オブジェクトを選択するためにタッチスクリーンを使用し得る。
【００２２】
[0027]  デバイスプロセッサ１５０は、データ、たとえば、キャプチャされた画像を表すデータを記憶構成要素（storage component）１１０に書き込み得る。記憶構成要素１１０は旧来のディスクデバイスとして図式的に表されているが、記憶構成要素１１０は任意の記憶媒体デバイスとして構成され得ることを当業者は理解されよう。たとえば、記憶構成要素１１０は、ディスクドライブ、たとえば、フロッピー（登録商標）ディスクドライブ、ハードディスクドライブ、光ディスクドライブまたは光磁気ディスクドライブ、あるいはフラッシュメモリ、ＲＡＭ、ＲＯＭ、および／またはＥＥＰＲＯＭ（登録商標）などの固体メモリを含み得る。記憶構成要素１１０はまた、複数のメモリユニットを含むことができ、メモリユニットのいずれか１つが、画像キャプチャデバイス１００内にあるように構成され得るか、または画像キャプチャデバイス１００の外部にあり得る。記憶構成要素１１０はまた、カメラから取外し可能であり得る、キャプチャされた画像を記憶するように構成されたメモリカードまたは高速メモリを含み得る。
【００２３】
[0028]  図１は、プロセッサとイメージングセンサーとメモリとを含むように別個の構成要素を有するデバイスを示しているが、これらの別個の構成要素は、特定の設計目標を達成するために様々な方法で組み合わせられ得ることを当業者は認識されよう。たとえば、代替実施形態では、メモリ構成要素は、コストを節約し、性能を改善するためにプロセッサ構成要素と組み合わせられ得る。
【００２４】
[0029]  さらに、図１は、いくつかのモジュールを備えるメモリ構成要素１３０と別個のワーキングメモリ１０５とを含むいくつかのメモリ構成要素を示しているが、異なるメモリアーキテクチャを使用するいくつかの実施形態が当業者には認識されよう。たとえば、設計は、メモリ１３０中に含まれているモジュールを実装するプロセッサ命令の記憶のためにＲＯＭまたはスタティックＲＡＭメモリを使用し得る。プロセッサ命令は、画像プロセッサ１２０による実行を可能にするためにＲＡＭにロードされ得る。たとえば、ワーキングメモリ１０５はＲＡＭメモリを備え得、命令は、画像プロセッサ１２０による実行の前にワーキングメモリ１０５にロードされる。
【００２５】
[0030]  図２Ａは、一連の画像を使用してパンニングショットを生成するためのプロセス２００の一例のフローチャートを示す。プロセス２００は、いくつかの実施形態によれば、図１中のパンニングモジュール１５５中に組み込まれ得る。プロセス２００は、ブロック２０２において開始し得る。
【００２６】
[0031]  ブロック２０２において、プロセス２００は、「初期画像（initial image）」と呼ばれることがある画像にアクセスする。初期画像は、画像キャプチャデバイス１００によってキャプチャされた一連の画像の第１の画像であり得る。
【００２７】
[0032]  ブロック２０４において、プロセス２００は、「現在画像（current image）」と呼ばれることがある画像にアクセスする。現在画像は、初期画像がキャプチャされた後にキャプチャされた画像、たとえば、初期画像の後の一連の画像中の次の（連続する）画像であり得る。いくつかのプロセスでは、現在画像は、（一連の画像中の）初期画像から数画像後の画像であり、これは、対象オブジェクトが、初期画像中に示されているそれの位置から（所望の）距離を移動することを可能にし得る。
【００２８】
[0033]  ブロック２０６において、プロセス２００は、たとえば、ワーキングメモリ１０５（図１）中に、対象オブジェクトを示す現在画像の一部分を記憶する。対象オブジェクトは、ユーザ入力なしに現在画像および／または初期画像から自動的に識別され得る。いくつかの実施形態では、対象オブジェクトは、図３Ｂに関してさらに詳細に説明されるように、ユーザ入力に基づいて手動で識別され得る。たとえば、対象オブジェクトは、ある基準を満たす画像中に示されたオブジェクトを識別するために一連の画像を処理することによって自動的に識別され得る。この基準は、限定はしないが、いくつかの画像にわたって焦点が合っていること、ある形状、サイズおよび／または色のものであること、初期画像のある領域中にあること、または特定のマークを採用することを含み得る。
【００２９】
[0034]  ブロック２０８において、プロセス２００は、対象オブジェクトに関係する動きデータを決定する。いくつかの実施形態では、動きデータは、図４Ａ〜図４Ｈに関してさらに詳細に説明されるように、一連の画像のうちの異なる画像間の差、たとえば、現在画像および初期画像中の対象オブジェクトの位置、または一連の画像のうちの３つ以上の画像に示されている対象オブジェクトの位置における差の分析に基づいて決定され得る。動きデータは方向値と大きさ値とを含み得る。方向値は、初期画像と現在画像との間の対象オブジェクトの移動の方向（または図４Ａ〜図４Ｈに関して説明される新しい現在画像と前の現在画像との間の動きの方向）を指定し得る。大きさ値は、初期画像と現在画像との間の対象オブジェクトの移動の量を表し得る。
【００３０】
[0035]  ブロック２１０において、プロセス２００は、決定された動きデータに基づいてぼけプロセスを実行する。いくつかの実施形態では、ぼけプロセスは、図４Ａ〜図４Ｈに関してさらに詳細に説明されるように、第１の画像と、第２の画像と、動きデータとを使用して実行され得る。
【００３１】
[0036]  ブロック２１２において、プロセス２００は、パンニングショットを生成するために使用されるために、一連の画像中で、追加の現在画像が利用可能であるかどうかを決定する。利用可能な追加の現在画像がある場合、プロセス２００はブロック２０４に戻る。また、ぼけプロセス（ブロック２１０）の後に生成された背景画像は新しい初期画像として指定され、追加の現在画像は新しい現在画像としてアクセスされる。追加の現在画像がない場合、プロセス１００はブロック２１４に進む。３つの画像を使用することと比較してすべての画像（たとえば、３０個の画像）を使用することから有意な利益を得ないことがあるので、様々な実施形態では、使用される画像の最大数のための値があり得、それは、ユーザ設定される、デフォルト値として設定される、および／または動的に設定される、のいずれかであり得る。
【００３２】
[0037]  ブロック２１４において、プロセス２００は、対象オブジェクトをぼけプロセス（ブロック２１０）から生成された背景画像と組み合わせることによってパンニングショットを生成する。いくつかの実施形態では、対象オブジェクトは、（ワーキングメモリ１０５に保存された）対象オブジェクトを取り出し、対象オブジェクトをぼけプロセス（ブロック２１０）から生成された画像に入れることによって組み合わせられ得る。たとえば、対象オブジェクトのピクセルは、ぼけプロセスから生成された画像のいくつかのピクセルと入れ替わる。加算された対象オブジェクトのロケーションは、現在画像中の対象オブジェクトのロケーション（たとえば、一連の画像内の対象オブジェクトの最新の既知のロケーション）に対応するロケーションであり得る。
【００３３】
[0038]  図２Ｂは、いくつかの実施形態による、第１の画像および第２の画像からパンニングショットを生成するためのプロセス２５０の一例のフローチャートを示す。これは、たとえば、パンニングモジュール１５５（図１）によって行われ得る。プロセス２５０は、ブロック２５２において開始し得る。
【００３４】
[0039]  ブロック２５２において、プロセス２５０は、シーンの一連の画像を受信するか、またはそれにアクセスする。一連の画像は、シーン内で移動する少なくとも１つのオブジェクトと背景情報とを含み得る。背景情報は、移動するオブジェクトに関係しない情報であり得る。
【００３５】
[0040]  ブロック２５４において、プロセス２５０は、一連の画像中の動いている少なくとも１つのオブジェクトの対象オブジェクトを示す画像データを生成する。画像データは、一連の画像のうちの画像のうちの１つから画像データをコピーすることによって生成され得る。
【００３６】
[0041]  ブロック２５６において、プロセス２５０は動きデータを決定する。動きデータは、一連の画像に示されている対象オブジェクトの移動に基づく。シーンは、第１の画像と、第１の画像の後にキャプチャされた第２の画像とを含み得る。動きデータは、一連の画像のうちの第２の画像中の対象オブジェクトの第２のロケーションを一連の画像のうちの第１の画像中の対象オブジェクトの第１のロケーションと比較することによって決定され得る。
【００３７】
[0042]  ブロック２５８において、プロセス２５０は背景画像を生成する。背景画像は、第１の画像と、第２の画像と、動きデータとを使用するぼけプロセスを実装することによって生成され得る。ぼけプロセスは、図４Ａ〜図４Ｈに関してさらに詳細に説明されるように実行され得る。
【００３８】
[0043]  ブロック２６０において、プロセス２５０は最終画像を生成する。最終画像は、背景画像中に対象オブジェクトを示す画像データを含めることによって生成され得る。画像データは、第２の（または最終）画像中の対象オブジェクトのロケーションに対応するロケーションに含められ得る。
【００３９】
[0044]  図３Ａは、図１の画像キャプチャデバイスによってキャプチャされ得る動いている（in motion）複数のオブジェクトをもつシーン３００を示す。オブジェクトは、（様々なオブジェクトに続く矢印で示されるように）シーン内で異なる方向に移動する、円３２０と、長方形３４０と、楕円３３０とを含む。
【００４０】
[0045]  図３Ｂは、図３Ａのシーン３００の画像３５０を示す。画像３５０は、円３２０、長方形３４０、および楕円３３０の各々を含む。いくつかの実施形態では、画像３５０は、パンニングショットの生成に関係するプロセスのために使用され得る。たとえば、画像３５０は、シーン３００内の対象オブジェクトを決定するために使用され得る。いくつかの実施形態では、対象オブジェクトは、ユーザ入力によって、たとえば、画像３５０内のオブジェクトの中からの対象オブジェクトのユーザ選択によって決定され得る。画像キャプチャデバイス１００は、たとえば、ユーザがディスプレイ１２５（図１）上で関心オブジェクトを直接選択し得る場合（ディスプレイ１２５がタッチスクリーン機能を含む場合）、ディスプレイ１２５からユーザ入力を受信するように構成され得る。画像キャプチャデバイス１００はまた、表示された画像から関心オブジェクトを選択するためにユーザにカーソル（cursor）を与えることによってユーザ入力を可能にするように構成され得る。いくつかの実施形態では、対象オブジェクトの決定のために使用される画像は、参照画像（reference image）と呼ばれることがある。いくつかの実施形態では、画像キャプチャデバイス１００は、対象オブジェクトを、ユーザ入力なしに自動的に決定するように構成され得る。たとえば、画像キャプチャデバイスは、ある基準を満たすことに基づいて対象オブジェクトを決定し得る。この基準は、（限定はしないが）いくつかの画像にわたって焦点が合っていること、ある形状、サイズまたは色のものであること、初期画像のある領域中にあること、または特定のマークを採用することを含み得る。
【００４１】
[0046]  図４Ａ〜図４Ｈは、ぼけプロセスのいくつかの実施形態の態様を示す。ぼけプロセスは、パンニングショットを生成するためにシーン３００（図３Ａ）の一連の画像にわたって実行され得る。図４Ａに示されているように、画像３５０の円３２０が、対象オブジェクトとして選択され得る。画像３５０は、対象オブジェクトを示す一連の画像中の初期画像として指定され得、図４Ａ〜図４Ｈの残りの説明において初期画像３５０と呼ばれる。図４Ｂを参照すると、シーン３００の一連の画像中の次の画像が、現在画像４０４として指定される。初期画像３５０と現在画像４０４との間の差に基づいて、動き方向と動きの大きさとを特徴づける動きデータが決定され得る。たとえば、動きデータは、対象オブジェクト３２０が初期画像３５０と現在画像４０４との間で行った移動の量（または以下で説明される新しい現在画像と前の現在画像との間の差）を特徴づけることによって決定され得る。図４Ｃは、明快のために、初期画像３５０が垂直線を有するものとして、および現在画像４０４が水平線を有することを有するを示す。
【００４２】
[0047]  図４Ａ〜図４Ｃに示されているように、現在画像４０４は、動きデータによって規定された大きさおよび方向において初期画像３５０に対してオーバーレイおよびシフトされ得る。オーバーレイすることは、ある画像の各ロケーションにおける各ピクセルを別の画像の別のピクセルにマッピングすることを指す。シフトすることは、ある画像の各ロケーションにおける各ピクセルを異なるロケーションにおける別の画像の別のピクセルにマッピングすることを指す。たとえば、図４Ａの初期画像３５０中のピクセル３６０Ａ、３６０Ｂ、３６０Ｃおよび３６０Ｄは、図４Ｂの現在画像４０４中のピクセル４０２Ａ、４０２Ｂ、４０２Ｃ、および４０２Ｄにマッピングされ得る。したがって、図４Ａの初期画像３５０中のピクセル３６０Ａ、３６０Ｂ、３６０Ｃおよび３６０Ｄは、図４Ｂの現在画像４０４中のピクセル４０２Ａ、４０２Ｂ、４０２Ｃ、および４０２Ｄによってオーバーレイされる。また、図４Ａの初期画像３５０中のピクセル３６０Ａ、３６０Ｂ、３６０Ｃおよび３６０Ｄは、動きデータから決定された大きさおよび方向だけ、図４Ｂの現在画像４０４中のピクセル４０２Ａ、４０２Ｂ、４０２Ｃ、および４０２Ｄのロケーションからオフセットされたロケーションにあり得る。したがって、ピクセルの各々は、図４Ａの初期画像３５０中のピクセル３６０Ａ、３６０Ｂ、３６０Ｃおよび３６０Ｄが、図４Ｂの現在画像４０４中の４０２Ａ、４０２Ｂ、４０２Ｃ、および４０２Ｄのロケーションに対して異なるロケーション中にオーバーレイされるようにシフトされる。
【００４３】
[0048]  さらに、図４Ｃに示されているように、オーバーレイおよびシフトされた画像を加算することによって、背景画像４０７が生成され得る。背景画像は、明快のために、水平線と垂直線とを有するものとして図４Ｃに示されている。加算することは、各画像のオーバーレイおよびシフトされたピクセル値を互いに加算することを指す。たとえば、ピクセル３６０Ａ、３６０Ｂ、３６０Ｃおよび３６０Ｄの各々が４０のピクセル値を有し、ピクセル４０２Ａ、４０２Ｂ、４０２Ｃ、および４０２Ｄの各々が６０のピクセル値を有する場合、ピクセル値を加算することは、非正規化された背景画像に対応する各ピクセルにおいて１００のピクセル値を生じる。これらの加算されたピクセル値は、ピクセルデータが画像３５０および画像４０４中に存在するピクセルロケーション（pixel location）にある。言い換えれば、ここで、画像３５０と画像４０４とは重複する。背景画像４０７は、画像３５０と画像４０４との重複に対応するロケーションにおけるピクセル値の集合として生成され得る。
【００４４】
[0049]  背景画像４０７は、背景画像を正規化することによってファイナライズされ得る。正規化することは、背景画像を生じるために、加算されたピクセル値を２で除算し、加算されたピクセルを一連の画像中の画像の標準寸法（standard dimension）にスケーリングすることを指す。図４Ｃに示されているように、背景画像４０７はぼけた対象オブジェクト４０６を生成するが、初期画像３５０および現在画像４０４のあるエリアが重複しないことがあるので解像度（resolution）を失う。言い換えれば、解像度は、現在画像４０４のピクセルが初期画像３５０の対応するピクセルを有しないところ、または初期画像３５０のピクセルが現在画像４０４の対応するピクセルを有しないところ（たとえば、初期画像３５０の領域４０３中、または現在画像４０４の領域４０５中）を生じるヌル値により失われ得る。加算されたピクセル値は、加算されたピクセル値を２で除算し、解像度において一連の画像中の画像の標準寸法にスケールアップされることによって正規化され得る。スケーリングされた背景画像４０７は、図４Ｅ中で新しい初期画像４０６として使用されるファイナライズされた背景画像４０７であり得る。
【００４５】
[0050]  図４Ｅでは、図４Ｄに示されているファイナライズされた背景画像は新しい初期画像４０８として指定され、シーンの一連の画像中の次の画像が新しい現在画像４０８として指定される。図２のブロック２０８に関して説明されたように、前の現在画像４０４と新しい現在画像４１０との間の差に基づいて、動きの方向と動きの大きさとを特徴づける動きデータが決定される。前の現在画像は、新しい現在画像が使用されるときに現在画像として前に使用された画像である。次いで、新しい現在画像４１０は、新しい初期画像４０８上にオーバーレイされ、動きデータによって規定された大きさおよび方向においてシフトされる。オーバーレイされた新しい初期画像４０８および新しい現在画像４１０のピクセル値は、背景画像４１３を生成するために加算される。この背景画像４１３は、次いで、図４Ｄ中で新しい初期画像４１４として使用されるファイナライズされた背景画像を生成するために正規化される。
【００４６】
[0051]  図４Ｆでは、図４Ｃ中で生成された背景画像は新しい初期画像４１４として指定され、シーンの一連の画像中の次の画像が新しい現在画像４１６として指定される。図２のブロック２０８に関して説明されたように、前の現在画像４１０と新しい現在画像４１６との間の差に基づいて、動きの方向と動きの大きさとを特徴づける動きデータが決定される。次いで、新しい現在画像４１６は、新しい初期画像４１４上にオーバーレイされ、動きデータによって規定された大きさおよび方向においてシフトされる。オーバーレイされた新しい初期画像４１４および新しい現在画像４１６のピクセル値は、背景画像４１９を生成するために加算される。この背景画像４１９は、次いで、図４Ｅ中で新しい初期画像４２０として使用されるファイナライズされた背景画像を生じるために正規化される。
【００４７】
[0052]  図４Ｇでは、図４Ｄ中で生成されたものとして示されている背景画像４１９は新しい初期画像４２０として指定され、シーンの一連の画像中の次の画像が新しい現在画像４２２として指定される。図２のブロック２０８に関して説明されたように、前の現在画像４１６と新しい現在画像４２２との間の差に基づいて、動きの方向と動きの大きさとを特徴づける動きデータが決定される。次いで、新しい現在画像４２２は、新しい初期画像４２０上にオーバーレイされ、動きデータによって規定された大きさおよび方向においてシフトされる。オーバーレイされた新しい初期画像４２０および新しい現在画像４２２のピクセル値は、新しい背景画像４２５を生成するために加算される。この背景画像４２５は、次いで、図４Ｅ中で新しい初期画像４２６として使用されるファイナライズされた背景画像を生じるために正規化される。
【００４８】
[0053]  図４Ｈでは、図４Ｅ中で生成されたものとして示されている背景画像４２５は新しい初期画像４２６として指定され、シーンの一連の画像中の次の画像が新しい現在画像４２８として指定される。この新しい現在画像４２８が一連の画像のうちの最後の画像であるので、新しい現在画像４２８内の対象オブジェクトは、背景画像が生成された後に使用のために抽出される。図２のブロック２０８に関して説明されたように、前の現在画像４２２と新しい現在画像４２８との間の差に基づいて、動きの方向と動きの大きさとを特徴づける動きデータが決定される。次いで、新しい現在画像４２８は、新しい初期画像４２６上にオーバーレイされ、動きデータによって規定された大きさおよび方向においてシフトされる。オーバーレイされた新しい初期画像４２６および新しい現在画像４２８のピクセル値は、背景画像４３１を生成するために加算され、次いで、正規化される。この背景画像４３１は、次いで、解像度において一連の画像中の画像の標準サイズにスケールアップされ、対象オブジェクトのくっきりした画像が、パンニングショットを生成するために新しい現在画像４２８中の対象オブジェクトの最後の位置上にオーバーレイされる。
【００４９】
[0054]  図５は、図１の画像キャプチャデバイス中で使用され得るパンニングモジュール１５５のブロック図を示す。パンニングモジュール１５５は、画像収集モジュール５０２と、対象オブジェクトキャプチャモジュール５０４と、動きデータキャプチャモジュール５０６と、ぼけプロセス適用モジュール５０８と、画像ファイナライズモジュール５１０とを含む。図１に関して説明されたように、モジュールの各々は、異なる適用例のために適宜に、同じ画像プロセッサ１２０または異なる画像プロセッサとともに使用され得る。たとえば、いくつかの実施形態では、モジュールの各々は、割り当てられたモジュールをサービスする、異なる画像プロセッサに割り当てられ得る。
【００５０】
[0055]  画像収集モジュール５０２は、初期画像と現在画像とにアクセスし、初期画像と現在画像とを対象オブジェクトキャプチャモジュール５０４に受け渡し得る。対象オブジェクトキャプチャモジュール５０４は、図３Ｂに関してさらに詳細に説明されたように、初期画像または現在画像から対象オブジェクトをユーザ入力なしに自動的に、あるいはユーザ入力を用いて手動で決定するために使用され得る。たとえば、現在画像中の対象オブジェクトは、コピーされ、ワーキングメモリ１０５（図１）に記憶され得る。対象オブジェクトキャプチャモジュールは、対象オブジェクトを動きデータキャプチャモジュール５０６に対して識別し得る。動きデータキャプチャモジュール５０６は、図４Ａ〜４Ｈに関して説明されたように、一連の画像の異なる画像間の差、たとえば、現在画像と初期画像との間の差、（または図４Ａ〜図４Ｈに関して説明されたような新しい現在画像と前の現在画像との間の差）、または一連の画像のうちの３つ以上の画像にわたる差の分析に基づいて、動きデータを決定し得る。
【００５１】
[0056]  いくつかの実施形態では、動きデータは方向値と大きさ値とを含み得る。方向値は、初期画像と現在画像との間の（または図４Ａ〜図４Ｈに関して説明されたような新しい現在画像と前の現在画像との間の）対象オブジェクトの移動の方向を指定し得る。大きさ値は、初期画像と現在画像との間で行われた移動の量を指定し得る。ぼけプロセス適用モジュール５０８は、動きデータキャプチャモジュール５０６からのキャプチャされた動きデータに基づいてぼけプロセスを実装することによって、背景画像を生成し得る。ぼけプロセスは、図４Ａ〜図４Ｈに関して説明されたように、初期画像と現在画像とを互い上にオーバーレイおよび加算するオーバーレイプロセスによって実装され得る。一連の画像中に別の現在画像がある場合、ぼけプロセス適用モジュール５０８は、図２中のブロック２１２において説明されたように、新しい初期画像として新しい背景画像を指定し、新しい初期画像と新しい現在画像とを処理し続けるように画像収集モジュールに示し得る。一連の画像中に追加の現在画像がない場合、背景画像は画像ファイナライズモジュールに受け渡され、画像ファイナライズモジュールは、背景画像上に対象オブジェクトを重畳することによってパンニングショットを生成する。重畳のロケーションは、現在画像中の対象オブジェクトのロケーション（たとえば一連の画像内の対象オブジェクトの最新の既知のロケーション）に対応するロケーションであり得る。
【００５２】
[0057]  本明細書で使用される「決定すること（determining）」という用語は、多種多様なアクションを包含する。たとえば、「決定すること」は、計算すること（calculating）、計算すること（computing）、処理すること、導出すること、調査すること、ルックアップすること（たとえば、テーブル、データベース、または別のデータ構造においてルックアップすること）、確認することなどを含み得る。また、「決定すること」は、受信すること（たとえば、情報を受信すること）、アクセスすること（たとえば、メモリ中のデータにアクセスすること）などを含み得る。また、「決定すること」は、解決すること、選択すること、選定すること、確立することなどを含み得る。さらに、本明細書で使用される「チャネル幅」は、いくつかの態様では帯域幅を包含することがあるか、または帯域幅と呼ばれることもある。
【００５３】
[0058]  本明細書で使用される、項目のリスト「のうちの少なくとも１つ」を指す句は、単一のメンバーを含む、それらの項目の任意の組合せを指す。一例として、「ａ、ｂ、またはｃのうちの少なくとも１つ」は、ａ、ｂ、ｃ、ａ−ｂ、ａ−ｃ、ｂ−ｃ、およびａ−ｂ−ｃを包含するものとする。
【００５４】
[0059]  上記で説明された方法の様々な動作は、（１つまたは複数の）様々なハードウェアおよび／またはソフトウェア構成要素、回路、および／または（１つまたは複数の）モジュールなど、それらの動作を実行することが可能な任意の好適な手段によって実行され得る。概して、図に示されているどの動作も、その動作を実行することが可能な対応する機能的手段によって実行され得る。
【００５５】
[0060]  本明細書で使用されるインターフェースという用語は、２つまたはそれ以上のデバイスを一緒に接続するように構成されたハードウェアまたはソフトウェアを指すことがある。たとえば、インターフェースは、プロセッサまたはバスの一部であり得、デバイス間での情報またはデータの通信を可能にするように構成され得る。インターフェースは、チップまたは他のデバイスに組み込まれ得る。たとえば、いくつかの実施形態では、インターフェースは、あるデバイスからの情報または通信を別のデバイスにおいて受信するように構成された受信機を備え得る。（たとえば、プロセッサまたはバスの）インターフェースは、フロントエンドまたは別のデバイスによって処理された情報またはデータを受信し得るか、あるいは受信された情報を処理し得る。いくつかの実施形態では、インターフェースは、情報またはデータを別のデバイスに送信または通信するように構成された送信機を備え得る。したがって、インターフェースは、情報またはデータを送信し得るか、あるいは（たとえば、バスを介した）送信のために出力するための情報またはデータを準備し得る。
【００５６】
[0061]  本開示に関連して説明された様々な例示的な論理ブロック、モジュールおよび回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ信号（ＦＰＧＡ）または他のプログラマブル論理デバイス（ＰＬＤ）、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明された機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の市販のプロセッサ、コントローラ、マイクロコントローラまたは状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つまたは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。
【００５７】
[0062]  １つまたは複数の態様では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気記憶デバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを搬送または記憶するために使用され得、コンピュータによってアクセスされ得る任意の他の媒体を備えることができる。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピーディスク（disk）およびＢｌｕ−ｒａｙ（登録商標）ディスク（disc）を含み、ここで、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。したがって、いくつかの態様では、コンピュータ可読媒体は非一時的コンピュータ可読媒体（たとえば、有形媒体）を備え得る。
【００５８】
[0063]  本明細書で開示された方法は、説明された方法を達成するための１つまたは複数のステップまたはアクションを備える。本方法のステップおよび／またはアクションは、特許請求の範囲から逸脱することなく、互いに交換され得る。言い換えれば、ステップまたはアクションの特定の順序が指定されていない限り、特定のステップおよび／またはアクションの順序および／または使用は、特許請求の範囲から逸脱することなく変更され得る。
【００５９】
[0064]  本明細書で説明された機能は、１つまたは複数の命令としてプロセッサ可読媒体またはコンピュータ可読媒体上に記憶され得る。「コンピュータ可読媒体（computer-readable medium）」という用語は、コンピュータまたはプロセッサによってアクセスされ得る任意の利用可能な媒体を指す。限定ではなく例として、そのような媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備え得る。本明細書で使用されるディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピーディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ここで、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。コンピュータ可読媒体は有形で非一時的であり得ることに留意されたい。「コンピュータプログラム製品（computer-program product）」という用語は、コンピューティングデバイスまたはプロセッサによって実行、処理または計算され得るコードまたは命令（たとえば、「プログラム（program）」）と組み合わせたコンピューティングデバイスまたはプロセッサを指す。本明細書で使用される「コード（code）」という用語は、コンピューティングデバイスまたはプロセッサによって実行可能であるソフトウェア、命令、コードまたはデータを指すことがある。送信（または通信）手段は、２つのデバイス間で通信するために使用され得る。たとえば、情報が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから生成される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、送信（または通信）手段の定義に含まれる。
【００６０】
[0065]  したがって、いくつかの態様は、本明細書で提示された動作を実行するためのコンピュータプログラム製品を備え得る。たとえば、そのようなコンピュータプログラム製品は、本明細書で説明された動作を実行するために１つまたは複数のプロセッサによって実行可能である命令を記憶した（および／または符号化した）コンピュータ可読媒体を備え得る。
【００６１】
[0066]  さらに、本明細書で説明された方法および技法を実行するためのモジュールおよび／または他の適切な手段は、適用可能な場合にユーザ端末および／または基地局によってダウンロードされ、および／または他の方法で取得され得ることを諒解されたい。たとえば、そのようなデバイスは、本明細書で説明された方法を実行するための手段の転送を可能にするためにサーバに結合され得る。代替的に、本明細書で説明された様々な方法は、ユーザ端末および／または基地局が記憶手段（たとえば、ＲＡＭ、ＲＯＭ、コンパクトディスク（ＣＤ）またはフロッピーディスクなどの物理記憶媒体など）をデバイスに結合するかまたは与えると様々な方法を得ることができるように、記憶手段によって提供され得る。その上、本明細書で説明された方法および技法をデバイスに与えるための任意の他の好適な技法が利用され得る。
【００６２】
[0067]  特許請求の範囲は、上記で示された厳密な構成および構成要素に限定されないことを理解されたい。上記で説明された方法および装置の構成、動作および詳細において、特許請求の範囲から逸脱することなく、様々な改変、変更および変形が行われ得る。
【００６３】
[0068]  上記は本開示の態様を対象とするが、本開示の他の態様およびさらなる態様は、それの基本的範囲から逸脱することなく考案され得、それの範囲は以下の特許請求の範囲によって決定される。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
シーンの少なくとも２つの画像の一連の画像を記憶するように構成されたメモリ構成要素と、前記一連の画像が、前記シーン内で移動する少なくとも１つのオブジェクトを含む、
前記メモリ構成要素と通信している少なくとも１つのプロセッサと
を備え、前記プロセッサが、
前記少なくとも２つの画像中の対象オブジェクトを決定することと、
前記少なくとも２つの画像のうちの少なくとも１つから前記対象オブジェクトを示す画像データを生成することと、
前記少なくとも２つの画像中の前記対象オブジェクトの位置に基づいて前記対象オブジェクトの動きデータを決定することと、
前記少なくとも２つの画像と前記動きデータとを使用することによって背景画像を生成することと、
前記背景画像中に前記対象オブジェクトを示す前記画像データを含めることによって最終画像を生成することと
を行うように構成された、システム。
［Ｃ２］
前記動きデータが方向と大きさ値とを備え、前記少なくとも２つの画像が、第１の画像と前記第１の画像の後にキャプチャされた第２の画像とを備え、前記背景画像が、
前記動きデータの前記大きさ値だけ前記動きデータの方向に前記第２の画像をシフトすることと、
前記第１の画像上に前記シフトされた第２の画像をオーバーレイすることと、
前記背景画像のためのピクセル値を生成するために前記シフトされた第２の画像のピクセル値を前記第１の画像に加算することと、
前記背景画像の前記ピクセル値を正規化することと
を備えるぼけプロセスを使用することによって生成される、Ｃ１に記載のシステム。
［Ｃ３］
前記ピクセル値を正規化することが、前記背景画像を前記第２の画像の寸法にスケーリングすることを備える、Ｃ２に記載のシステム。
［Ｃ４］
前記ピクセル値を前記正規化することが、前記背景画像の前記ピクセル値の各々を２で除算することを備える、Ｃ２に記載のシステム。
［Ｃ５］
前記第１の画像上に前記シフトされた第２の画像をオーバーレイすることが、前記第１の画像の第１のピクセル値を前記第２の画像の第２のピクセル値にマッピングする、Ｃ２に記載のシステム。
［Ｃ６］
前記少なくとも２つの画像が、第１の画像と前記第１の画像の後にキャプチャされた第２の画像とを備え、ここにおいて、前記少なくとも１つのプロセッサが、
前記一連の画像の第３の画像中の前記対象オブジェクトのロケーションを前記第２の画像中の対象オブジェクトのロケーションと比較することによって前記対象オブジェクトの第２の動きデータを決定することと、前記第３の画像が、前記第２の画像の後にキャプチャされる、
前記背景画像と前記第２の動きデータとを使用することによって前記背景画像を更新する（update）ことと
を行うようにさらに構成された、Ｃ１に記載のシステム。
［Ｃ７］
前記少なくとも１つのプロセッサが、前記第２の画像中の前記対象オブジェクトのロケーションにおいて前記背景画像上に前記対象オブジェクトを示す前記画像データを含めることによって、前記最終画像を生成するようにさらに構成された、Ｃ１に記載のシステム。
［Ｃ８］
前記少なくとも１つのプロセッサが、前記第２の画像からの前記一連の画像中の動いている前記少なくとも１つのオブジェクトの対象オブジェクトの画像を生成するようにさらに構成された、Ｃ７に記載のシステム。
［Ｃ９］
前記少なくとも１つのプロセッサが、ユーザ入力を受信し、前記対象オブジェクトを識別するために前記ユーザ入力を使用するようにさらに構成された、Ｃ１に記載のシステム。
［Ｃ１０］
前記少なくとも１つのプロセッサが、前記シーンにわたって移動する少なくとも２つのオブジェクトをディスプレイ上に表示し、前記少なくとも２つのオブジェクトのうちのどちらが前記対象オブジェクトであるかを識別するためのユーザ入力を受信するようにさらに構成された、Ｃ９に記載のシステム。
［Ｃ１１］
前記少なくとも１つのプロセッサが、前記一連の画像のうちの１つを、前記対象オブジェクトを識別するために使用するための参照画像として決定するようにさらに構成された、Ｃ１に記載のシステム。
［Ｃ１２］
少なくとも１つのプロセッサが、前記一連の画像のうちのいずれが前記参照画像であるかを起訴する（indicting）ユーザ入力を受信するようにさらに構成された、Ｃ１１に記載のシステム。
［Ｃ１３］
前記シーンの前記一連の画像をキャプチャするように構成されたカメラモジュールと、
前記シーンにわたって移動する少なくとも２つのオブジェクトを表示するように構成されたディスプレイと、
前記メモリ、前記少なくとも１つのプロセッサ、前記カメラモジュールおよび前記ディスプレイを包囲するように構成されたハウジング（housing）と
をさらに備え、ここにおいて、前記ディスプレイおよび前記カメラモジュールが、前記ハウジングの表面の一部を形成するようにさらに構成された、
Ｃ１に記載のシステム。
［Ｃ１４］
パンニングショットを生成するための方法であって、
シーンの一連の画像を受信することと、前記一連の画像が、少なくとも１つのオブジェクトと背景情報とを含む、
前記一連の画像中の動いている前記少なくとも１つのオブジェクトの対象オブジェクトを示す画像データを生成することと、
前記一連の画像のうちの第２の画像中の前記対象オブジェクトの第２のロケーションを前記一連の画像のうちの第１の画像中の前記対象オブジェクトの第１のロケーションと比較することによって前記対象オブジェクトの動きデータを決定することと、前記第２の画像が前記第１の画像の後にキャプチャされる、
前記第１の画像と、前記第２の画像と、前記動きデータとを使用することによって背景画像を生成することと、
前記背景画像中に前記対象オブジェクトを示す前記画像データを含めることによって最終画像を生成することと
を備える、方法。
［Ｃ１５］
前記動きデータが方向と大きさ値とを備え、背景画像を生成することが、
前記動きデータの前記大きさ値だけ前記動きデータの方向に前記第２の画像をシフトすることと、
前記第１の画像上に前記シフトされた第２の画像をオーバーレイすることと、
前記背景画像のためのピクセル値を生成するために前記シフトされた第２の画像のピクセル値を前記第１の画像に加算することと、
前記背景画像の前記ピクセル値を正規化することと
を備えるぼけプロセスを実装することをさらに備える、Ｃ１４に記載の方法。
［Ｃ１６］
前記一連の画像の第３の画像を前記第２の画像と比較することによって前記対象オブジェクトの第２の動きデータを決定することと、前記第３の画像が、前記第２の画像の後にキャプチャされる、
前記背景画像と前記第２の動きデータとを使用することによって前記背景画像を更新することと
をさらに備える、Ｃ１４に記載の方法。
［Ｃ１７］
前記最終画像を前記生成することが、前記第２の画像中の前記対象オブジェクトのロケーションにおいて前記背景画像上に前記対象オブジェクトの前記画像を含めることを備える、Ｃ１４に記載の方法。
［Ｃ１８］
前記一連の画像中の動いている前記少なくとも１つのオブジェクトの前記対象オブジェクトが前記第２の画像からコピーされる、Ｃ１４に記載の方法。
［Ｃ１９］
前記ピクセル値を正規化することが、前記背景画像を前記第２の画像の寸法にスケーリングすることを備える、Ｃ１４に記載の方法。
［Ｃ２０］
前記ピクセル値を正規化することが、前記背景画像の前記ピクセル値の各々を２で除算することを備える、Ｃ１４に記載の方法。
［Ｃ２１］
前記シフトされた第２の画像のピクセル値を前記第１の画像に前記加算することから得られたピクセル値をもつピクセルの数が、前記第２の画像中のピクセルの数よりも少ない、Ｃ１４に記載の方法。
［Ｃ２２］
コンピュータ実行可能命令を少なくとも記憶するように構成されたメモリと、
１つまたは複数のプロセッサを含むコンピューティングデバイスと
を備えるシステムであって、前記コンピューティングデバイスは、前記メモリと通信しており、
シーンの一連の画像を受信するように構成された画像収集モジュールと、前記一連の画像が、前記シーン内の少なくとも１つのオブジェクトをキャプチャする、
前記少なくとも１つのオブジェクトから選択された対象オブジェクトを示す画像データを生成するように構成された対象オブジェクトキャプチャモジュールと、
前記一連の画像中の前記対象オブジェクトの位置に基づいて前記対象オブジェクトの動きデータを決定するように構成された動きデータキャプチャモジュールと、
前記一連の画像と前記動きデータとを使用することによって背景画像を生成するように構成されたぼけプロセス適用モジュールと、
前記背景画像中に前記対象オブジェクトを示す前記画像データを含めることによって最終画像を生成するように構成された画像ファイナライズモジュールと
を実装するために前記コンピュータ実行可能命令を実行するように構成された、システム。
［Ｃ２３］
前記対象オブジェクトキャプチャモジュールが、ユーザ入力を受信し、前記対象オブジェクトを識別するために前記ユーザ入力を使用するようにさらに構成された、Ｃ２２に記載のシステム。
［Ｃ２４］
前記対象オブジェクトキャプチャモジュールが、前記シーンにわたって移動する少なくとも２つのオブジェクトをディスプレイ上に表示し、前記少なくとも２つのオブジェクトのうちのどちらが前記対象オブジェクトであるかを識別するためのユーザ入力を受信するようにさらに構成された、Ｃ２３に記載のシステム。
［Ｃ２５］
前記対象オブジェクトキャプチャモジュールが、前記一連の画像のうちの１つを、前記対象オブジェクトを識別するために使用するための参照画像として決定するようにさらに構成された、Ｃ２３に記載のシステム。
［Ｃ２６］
前記対象オブジェクトキャプチャモジュールが、前記一連の画像のうちのいずれが前記参照画像であるかを起訴する（indicting）ユーザ入力を受信するようにさらに構成された、Ｃ２５に記載のシステム。
［Ｃ２７］
１つまたは複数のコンピュータシステムによって実行されたとき、
シーンの一連の画像を受信することと、前記一連の画像が、前記シーン内の少なくとも１つのオブジェクトと背景情報とを含む、
前記少なくとも１つのオブジェクトに基づいて対象オブジェクトを示す画像データを生成することと、
前記一連の画像にわたって前記対象オブジェクトを比較することによって前記対象オブジェクトの動きデータを決定することと、
前記一連の画像と前記動きデータとを使用することによって背景画像を生成することと、
前記背景画像中に前記対象オブジェクトを示す前記画像データを含めることによって最終画像を生成することと
を備える動作を実行するように前記１つまたは複数のコンピュータシステムを構成するコンピュータ実行可能命令を記憶するコンピュータ可読、非一時的記憶媒体。
［Ｃ２８］
前記動きデータが方向と大きさ値とを備え、前記一連の画像が、第１の画像と前記第１の画像の後にキャプチャされた第２の画像とを備え、最終画像を生成することが、
前記動きデータの前記大きさ値だけ前記動きデータの方向に前記第２の画像をシフトすることと、
前記第１の画像上に前記シフトされた第２の画像をオーバーレイすることと、
前記背景画像のためのピクセル値を生成するために前記シフトされた第２の画像のピクセル値を前記第１の画像に加算することと、
前記背景画像の前記ピクセル値を正規化することと
を備える、Ｃ２７に記載のコンピュータ可読、非一時的記憶媒体。
［Ｃ２９］
前記ピクセル値を前記正規化することが、前記背景画像を前記第２の画像のサイズにスケーリングすることを備える、Ｃ２８に記載のコンピュータ可読、非一時的記憶媒体。
［Ｃ３０］
前記ピクセル値を前記正規化することが、前記背景画像の前記ピクセル値の各々を２で除算することを備える、Ｃ２８に記載のコンピュータ可読、非一時的記憶媒体。
【図１】
0006746607.tif 000002
【図２Ａ】
0006746607.tif 000003
【図２Ｂ】
0006746607.tif 000004
【図３Ａ】
0006746607.tif 000005
【図３Ｂ】
0006746607.tif 000006
【図４Ａ】
0006746607.tif 000007
【図４Ｂ】
0006746607.tif 000008
【図４Ｃ】
0006746607.tif 000009
【図４Ｄ】
0006746607.tif 000010
【図４Ｅ】
0006746607.tif 000011
【図４Ｆ】
0006746607.tif 000012
【図４Ｇ】
0006746607.tif 000013
【図４Ｈ】
0006746607.tif 000014
【図５】
0006746607.tif 000015