(57)【要約】選択的に画像を合成するためのシステム及び方法が開示される。特定の実施形態においては、装置が、第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データに基づいて、動きベクトル・データの組を生成するように構成されるレジストレーション回路を含む。該装置は、第１の画像データと、該動きベクトル・データに従って調整された第２の画像データに対応する調整された第２の画像データを選択的に合成するための合成回路を含む。該装置は、第３の画像データを生成するために、合成回路を制御するための制御回路を更に含む。
2012513173.tif 000002
【特許請求の範囲】
【請求項１】
第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データを受信することと、
調整された第２の画像データを生成するために、前記第１の画像データの複数の対応部分に関連して、前記第２の画像データの複数の部分の間の複数のオフセットに対応する動きベクトル・データの組を適用することによって、前記第２の画像データを調整することと、
前記第１の画像データの第１の特性を前記第２の画像データの第２の特性と比較することに少なくとも部分的に基づいて、前記第１の画像データからの第１の値と前記調整された第２の画像データからの第２の値を選択的に合成することによって、第３の画像データを生成することと、
を具備する方法。
【請求項２】
前記選択的な合成は、粗い合成オペレーション及び微細な合成オペレーションを含む、請求項１に記載の方法。
【請求項３】
前記粗い合成オペレーションは、前記調整された第２の画像データの複数のマクロブロックに対して実行され、なお、前記微細な合成オペレーションは、前記第１の画像データと前記第２の調整された画像データの複数のピクセルに対して実行される、請求項２に記載の方法。
【請求項４】
前記粗い合成オペレーションは、前記調整された第２の画像データのうちの１つ又は複数のマクロブロックと前記第１の画像データの複数の対応マクロブロックとの間の差が、選択可能な閾値を超過する時に、前記調整された第２の画像データのうちの前記１つ又は複数のマクロブロックを選択的に廃棄すること含む、請求項２に記載の方法。
【請求項５】
前記微細な合成オペレーションは、フィルタされた画像の複数の特性を比較するために、前記第１の画像データ及び前記調整された第２の画像データをフィルタすることを含み、なお、前記第１の値及び前記第２の値は、前記フィルタされた画像の複数の特性に基づいて選択的に合成される、請求項２に記載の方法。
【請求項６】
前記第１の特性及び前記第２の特性は、焦点状態、前記第１の画像及び前記第２の画像内の物体の動き、又は露出量を示す、請求項１に記載の方法。
【請求項７】
前記第１の値及び前記第２の値は、前記第１の画像データのフィルタされた部分を前記第２の画像データのフィルタされた部分と比較することに少なくとも部分的に基づいて選択的に合成される、請求項１に記載の方法。
【請求項８】
前記第１の画像データ及び前記第２の画像データは、カメラの画像センサーによって捕捉された連続するフレームを含み、なお、前記第１の画像データは、前記第１の画像に対応する第１のマクロブロックの組を含み、なお、前記第２の画像データは、前記第２の画像に対応する第２のマクロブロックの組を含み、なお、前記第２の画像データを調整することは、前記第２のマクロブロックの組に前記動きベクトル・データの組を適用することを含む、請求項１に記載の方法。
【請求項９】
前記動きベクトル・データの組は、階層的なレジストレーション・プロセスを介して決定される、請求項１に記載の方法。
【請求項１０】
前記階層的なレジスレーション・プロセスは、
前記第１の画像の第１の部分と前記第２の画像の第１の部分との間の第１の位置合せオフセットを決定すること；及び
前記第１の位置合せオフセットに基づいて、前記第１の画像の第２の部分と前記第２の画像の第２の部分との間の第２の位置合せオフセットを決定すること、なお、前記第１の画像の前記第２の部分は、前記第１の画像の前記第１の部分内にある、
を具備する、請求項９に記載の方法。
【請求項１１】
手振れ低減を補償するように、画像が調整される時に、前記調整された第２の画像データの複数のマクロブロック内の複数のピクセルが廃棄される、請求項１に記載の方法。
【請求項１２】
前記第３の画像データは、複数の横色収差を補償するように、前記第１の画像データ及び前記第２の画像データを調整する、請求項１に記載の方法。
【請求項１３】
第１の画像データの第１のブロックの組の各ブロックと第２の画像データの第１のブロックの組の対応ブロックとの間のオフセットに対応する、第１の動きベクトルの組を決定することと；
前記第２の画像データの前記第１のブロックの組の特定のブロックに対応する前記第１の動きベクトルの組のうちの１つの動きベクトルをアップサンプリングして、前記第２の画像データの第２のブロックの組に前記動きベクトルを適用する、なお、前記第２の画像データの前記第２のブロックの組は、前記特定のブロック内に含まれる；
前記第１の画像データの第２のブロックの組の各々と、前記第２のブロックの組に前記動きベクトルを適用した後の前記第２の画像データの前記第２のブロックの組の対応ブロックとの間のオフセットに対応する、第２の動きベクトルの組を決定することと；
調整された第２の画像データを生成するために、前記第２の動きベクトルの組を前記第２の画像データに適用することと；
第３の画像データを生成するために、前記第１の画像データと前記調整された第２の画像データを選択的に合成することと；
を具備する方法。
【請求項１４】
前記第３の画像データは、前記第１の画像データより深い被写界深度、前記第１の画像データより少ないノイズ、又は前記第１の画像データより大きいダイナミックレンジ、のうちの少なくとも１つを有する、請求項１３に記載の方法。
【請求項１５】
前記第２の動きベクトルの組は、制御入力を介して示される選択可能なサーチ領域に基づいて決定される、請求項１３に記載の方法。
【請求項１６】
前記選択可能なサーチ領域は、前記第１の画像データの前記第２のブロックの組の各々と、前記第２のブロックの組に前記動きベクトルを適用した後の前記第２の画像データの前記第２のブロックの組の前記対応ブロックとの間の前記オフセットを制限する、請求項１５に記載の方法。
【請求項１７】
第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データに基づいて、動きベクトル・データの組を生成するように構成されるレジストレーション回路と；
前記第１の画像データと調整された第２の画像データを選択的に合成するために結合される合成回路と、なお、前記調整された第２の画像データは、前記動きベクトル・データに従って調整された後の前記第２の画像データに対応する；
第３の画像データを生成するために、前記合成回路を制御するための制御回路と；
を具備する装置。
【請求項１８】
前記レジストレーション回路は、粗いレジストレーション回路及び微細なレジストレーション回路を含む、請求項１７に記載の装置。
【請求項１９】
前記合成回路は、粗い合成回路及び微細な合成回路を含む、請求項１７に記載の装置。
【請求項２０】
前記レジストレーション回路は、
前記第１の画像データを受け取るために結合される第１の入力と、前記第２の画像データを受け取るために結合される第２の入力と、動きベクトル生成の出力とを有する、動きベクトル生成回路；
前記動きベクトル生成の出力を受け取るために結合される入力を有し、動きベクトル・アップサンプリングの出力を提供する、動きベクトル・アップサンプリング回路；及び
前記第１の画像データを受け取るために結合される第１の入力と、前記第２の画像データを受け取るために結合される第２の入力と、前記動きベクトル・アップサンプリングの出力を受け取るために結合される第３の入力とを有し、またマクロブロック動きベクトルの出力及びマクロブロック差の出力を有する、マクロブロック動きベクトル・リファイン回路；
を具備する、請求項１７に記載の装置。
【請求項２１】
前記合成回路は、
前記第１の画像データを受信するために結合される第１の入力と、前記第２の画像データを受信するために結合される第２の入力と、マクロブロック動きベクトル信号を受信するために結合される第３の入力と、位置合せされた第１の画像出力及び位置合せされた第２の画像出力とを有する、マクロブロック画像位置合せ回路；
前記位置合せされた第１の画像出力を受信するために結合される第１の入力と、前記位置合せされた第２の画像出力を受信するために結合される第２の入力とを有し、また第１の画像差の出力及び第２の画像差の出力を有する、ブロック差弁別回路；及び
前記ブロック差弁別回路に結合される第１の入力を有し、また平均ピクセル差の結果を示すピクセル差の出力信号を提供するように構成される、平均ピクセル差回路、
を具備する、請求項１７に記載の装置。
【請求項２２】
前記第１の画像差の出力と、フィルタされた第１の画像差の出力を提供する出力とを受信するために結合される第１の入力を有する、前記ブロック差弁別回路と前記平均ピクセル差回路との間に結合される第１のフィルタと、
前記第２の画像差の出力を受信するために結合される第１の入力を有し、またフィルタされた第２の画像差の出力を提供するための出力を有する、前記ブロック差弁別回路と前記平均ピクセル差回路との間に結合される第２のフィルタと、
を更に具備する、請求項２１に記載の装置。
【請求項２３】
カメラのレンズと、
前記第１の画像データを生成し、前記第２の画像データを生成するために、前記カメラのレンズに結合される回路構成と、
を更に具備する、請求項１７に記載の装置。
【請求項２４】
アンテナを介してデータを送信及び受信するための無線トランシーバに結合されるプロセッサを更に具備する、請求項２３に記載の装置。
【請求項２５】
前記装置は、携帯情報端末（「ＰＤＡ」）である、請求項２３に記載の装置。
【請求項２６】
第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データに基づいて、動きベクトル・データの組を生成するためのレジストレーション手段と；
前記第１の画像データと調整された第２の画像データを選択的に合成するための合成手段と、なお、前記調整された第２の画像データは、前記動きベクトル・データに従って調整された後の前記第２の画像データに対応する；
第３の画像データを生成するために、前記合成手段を制御するための制御手段と；
を具備する装置。
【請求項２７】
カメラのレンズと、
前記第１の画像データ及び前記第２の画像データを生成するために、前記カメラのレンズに結合される回路構成と、
を更に具備する、請求項２６に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、全般的に、選択的に画像を合成するためのシステム及び方法に関する。
【背景技術】
【０００２】
技術における進歩の結果、計算デバイスは、より小さく、より強力になった。例えば、小さく、軽く、そしてユーザによって容易に持ち運ばれるページング・デバイス、携帯用無線電話、及び携帯情報端末（ＰＤＡ）などの無線計算デバイスを含む、様々な携帯用パーソナル計算デバイスが、現在存在している。より具体的には、セルラー電話及びインターネット・プロトコル（ＩＰ）電話などの携帯用無線電話が、無線ネットワーク上で音声及びデータのパケットを通信することができる。更に、多くのそのような無線電話は、その中に組込まれる他のタイプのデバイスを含んでいる。例えば、無線電話はまた、デジタルスチルカメラ、デジタルビデオカメラ、デジタルレコーダ、及びオーディオ・ファイル・プレーヤーを含むことができる。そのような無線電話は、ウェブブラウザ・アプリケーションのような、ソフトウェア・アプリケーションを含む実行可能な命令を処理することができ、それは、インターネットにアクセスするために使用されうる。従って、これらの無線電話は、著しい計算能力を含むことができる。
【０００３】
デジタル信号プロセッサ（ＤＳＰ）、画像プロセッサ、及び他の処理デバイスは、デジタルカメラを含む、あるいはデジタルカメラによって捕捉された（captured）画像又はビデオのデータを表示する携帯用パーソナル計算デバイスにおいて頻繁に使用されている。そのような処理デバイスは、ビデオ及びオーディオの機能を提供し、捕捉された画像のような受信されたデータを処理し、あるいは他の機能を実行するために利用されうる。
【０００４】
捕捉された画像データは、画像における物体の移動、露出過度、露出不足、近視野（near field）又は遠視野（far field）における乏しい焦点、横色収差（lateral chromatic aberrations）、幾何ひずみ、及び手ぶれによるシフティング・エラーなどの１つ又は複数の問題から損害を受けうる。
【発明の概要】
【０００５】
複数の（multiple）画像が、個々の画像において発生しうる問題を克服するために、画像のレジストレーション（registration）及び合成を実行する構成可能な画像処理アーキテクチャを使用して、合成されうる。制御ユニットが、入力画像データを合成することの様々な効果を可能にするために、階層的な画像レジストレーション及び階層的な画像合成のオペレーションを調整することができる。例えば、最初の２組の画像データが、低減されたゴースティングを有する手ぶれ低減（hand jitter reduction）のために合成されることができ、次の２組の画像データが、向上された被写界深度の画像を生成するために合成されることができ、また他の組の画像が、ハイダイナミックレンジ画像（high dynamic range image）を生成するために合成されうる。
【０００６】
特定の実施形態においては、第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データを受信することを含む方法が開示される。該方法は、調整された第２の画像データを生成するために、第１の画像データの複数の対応部分に関連して、第２の画像データの複数の部分との間の複数のオフセットに対応する動きベクトル・データの組を適用することによって、第２の画像データを調整することを含む。該方法は、第１の画像データの第１の特性を第２の画像データの第２の特性と比較することに基づいて、少なくとも部分的に、第１の画像データからの第１の値と調整された第２の画像データからの第２の値を選択的に合成することによって、第３の画像データを生成することを更に含む。
【０００７】
別の特定の実施形態においては、第１の画像データの第１のブロックの組の各ブロックと第２の画像データの第１のブロックの組の対応ブロックとの間のオフセットに対応する第１の動きベクトルの組を決定することを含む方法が開示される。該方法はまた、第２の画像データの第１のブロックの組の特定のブロックに対応する第１の動きベクトルの組のうちの１つの動きベクトルをアップサンプリング（upsampling）して、第２の画像データの第２のブロックの組に該動きベクトルを適用することを含む。第２の画像データの第２のブロックの組は、特定のブロック内に含まれる。該方法はまた、第１の画像データの第２のブロックの組の各々と、第２のブロックの組に該動きベクトルを適用した後の第２の画像データの第２のブロックの組の対応ブロックとの間のオフセットに対応する第２の動きベクトルの組を決定すること含む。該方法はまた、調整された第２の画像データを生成するために、第２の動きベクトルの組を第２の画像データに適用することと、第１の画像データと調整された第２の画像データを選択的に合成することとを含む。
【０００８】
別の特定の実施形態においては、装置が開示される。該装置は、第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データに基づいて、動きベクトル・データの組を生成するように構成されるレジストレーション回路を含む。該装置はまた、第１の画像データと調整された第２の画像データを選択的に合成するための合成回路を含む。調整された第２の画像データは、動きベクトル・データに従って調整された第２の画像データに対応する。該装置は、第３の画像データを生成するために、合成回路を制御するための制御回路を更に含む。
【０００９】
別の特定の実施形態においては、装置が開示される。該装置は、第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データに基づいて、動きベクトル・データの組を生成するためのレジストレーション手段を含む。該装置はまた、第１の画像データと調整された第２の画像データを選択的に合成するための合成手段を含む。調整された第２の画像データは、動きベクトル・データに従って調整された第２の画像データに対応する。該装置は、第３の画像データを生成するために、合成手段を制御するための制御手段を更に含む。
【００１０】
開示される方法及び装置の実施形態によって提供される１つの特定の利点は、画像における物体の移動、露出過度、露出不足、近視野又は遠視野における乏しい焦点、横色収差、幾何ひずみ、及び手ぶれによるシフティングなどの、画像に関連する問題の補正又は改善である。
【００１１】
本開示の他の態様、利点、及び特徴が、次に続くセクション：図面の簡単な説明、発明を実施するための形態、及び特許請求の範囲、を含む本出願全体のレビュー（review）後に、明白になるであろう。
【図面の簡単な説明】
【００１２】
【図１】図１は、画像合成モジュールを有する画像処理システムを含むシステムの特定の例示的な実施形態のブロック図である。
【図２】図２は、画像合成エンジンを含むシステムの第１の実施形態を例示するブロック図である。
【図３】図３は、画像合成エンジンを含むシステムの第２の実施形態を例示するブロック図である。
【図４】図４は、画像合成回路を含むシステムの実施形態を例示するブロック図である。
【図５】図５は、手ぶれの補正と、動く物体による物体のぼやけ（object blur）を低減することを提供する画像合成エンジンの実施形態のオペレーションを論理的に例示する図である。
【図６】図６は、ハイダイナミックレンジ画像を生成するための画像合成エンジンの実施形態のオペレーションを論理的に例示する図である。
【図７】図７は、被写界深度の向上を提供する画像合成エンジンの実施形態のオペレーションを論理的に例示する図である。
【図８】図８は、横色収差を例示する図である。
【図９】図９は、画像の幾何ひずみの第１の実施形態を例示する図である。
【図１０】図１０は、画像の幾何ひずみの第２の実施形態を例示する図である。
【図１１】図１１は、画像の幾何ひずみの補正を提供する画像合成エンジンの実施形態のオペレーションを論理的に例示する図である。
【図１２】図１２は、選択的に画像を合成する方法のフロー図である。
【図１３】図１３は、階層的な合成プロセスを実行する方法のフロー図である。
【図１４】図１４は、画像改善プロセスを実行する方法のフロー図である。
【図１５】図１５は、画像合成モジュールを含む携帯用電子デバイスのブロック図である。
【詳細な説明】
【００１３】
図１は、画像合成モジュールを有する画像処理システムを含むシステムの特定の例示的な実施形態のブロック図である。システム１００は、画像処理システム１３０に結合される画像捕捉デバイス１０１を含む。画像処理システム１３０は、画像記憶デバイス１４０に結合される。画像処理システム１３０は、画像捕捉デバイス１０１から画像データ１０９を受信し、複数の画像を合成するように構成され、画像における物体の移動、露出過度、露出不足、近視野又は遠視野における乏しい焦点、横色収差、幾何ひずみ、及び手ぶれによるシフティングなどの、複数の画像に関連する問題の補正又は改善を提供する。一般に、システム１００は、比較的制限された処理資源を使用して、リアルタイムの画像処理を実行するように構成される電子デバイスにおいてインプリメントされる（implemented）ことができる。
【００１４】
特定の実施形態において、画像捕捉デバイス１０１は、ビデオカメラ又はスチルカメラなどのカメラである。他の実施形態において、画像捕捉デバイス１０１は、セルラー電話、携帯情報端末（ＰＤＡ）、又は同様のものに組み込まれたカメラであることができる。画像捕捉デバイス１０１は、焦点調節（focusing）モジュール１０４と、露出（exposure）モジュール１０６に応答するレンズ１０２を含む。センサー１０８が、レンズ１０２によって光を受け取り、レンズ１０２によって受け取られた画像に応じて画像データ１０９を生成するために結合される。焦点調節モジュール１０４は、センサー１０８に応答することができ、またレンズ１０２の焦点調節を自動的に制御するように適合されうる。露出モジュール１０６もまた、センサー１０８に応答することができ、また画像の露出を制御するように適合されうる。特定の実施形態において、センサー１０８は、隣接した検出器が光の異なる色を検出するように配列されている、複数の検出器、又は複数のピクセル・ウェル（pixel well）を含む。例えば、受け取られた光は、各検出器が、赤、緑、あるいは青の入ってくる光を受け取るようにフィルタされうる。
【００１５】
画像捕捉デバイス１０１は、画像データ１０９を画像処理システム１３０に提供するために結合される。画像処理システム１３０は、画像捕捉デバイス１０１から受信した画像データ１０９に対してデモザイク・オペレーション（demosaic operation）を実行するためのデモザイク・モジュール１１０を含む。色補正モジュール１１２が、デモザイクされた画像データに対して色補正を実行するように構成される。ガンマ・モジュール１１４が、色補正モジュール１１２から受信したデータから、ガンマ補正された画像を生成するように構成される。色変換モジュール１１６が、ガンマ補正された画像データに対して色空間変換を実行するために結合される。画像処理システム１３０はまた、図２−１４に関して論じられるように、複数の画像を合成するように構成される画像合成モジュール１１８を含む。圧縮及び記憶モジュール１２０が、画像合成モジュール１１８の出力を受信し、画像記憶デバイス１４０に圧縮された出力データを記憶するために結合される。画像記憶デバイス１４０は、１つ又は複数のディスプレイ・バッファ、レジスタ、キャッシュ、フラッシュメモリ要素、ハードディスク、その他任意の記憶デバイス、あるいはその任意の組合せなどの、任意のタイプの記憶媒体を含むことができる。
【００１６】
論じたように、特定の実施形態において、センサー１０８は、赤、緑、及び青（ＲＧＢ）などの光の異なる色を検出する複数の検出器を含む。従って、画像は、ＲＧＢ色空間で受け取られることができる。特定の実施形態において、該画像は、色変換モジュール１１６によって「ＹＣｂＣｒ」色空間のような、他の色空間に変換されうる。ＹＣｂＣｒ色空間は、画像が、輝度（luma）（即ち、明るさ）成分（ＹＣｂＣｒ色空間におけるＹ成分）、及び彩度成分（ＹＣｂＣｒ色空間におけるＣｂとＣｒ成分）によって示される色空間の例である。ＹＣｂＣｒ色空間では、Ｃｂは、青マイナス輝度（Ｂ−Ｙ）であり、また、Ｃｒは、赤マイナス輝度（Ｒ−Ｙ）である。
【００１７】
オペレーション中に、画像合成モジュール１１８は、入力画像データ１０９に対応する画像を補正又は改善することができる。例えば、補正又は改善が、画像における物体の移動、露出過度、露出不足、近視野又は遠視野における乏しい焦点、横色収差、幾何ひずみ、及び手ぶれによるシフティングなどの、捕捉された画像に関連する問題を補償するために画像に対して行われることができる。
【００１８】
図１に例示されている特定の実施形態では、画像合成モジュール１１８は、画像処理パイプラインにおいて色変換モジュール１１６に後続しているが、他の実施形態では、画像合成モジュール１１８は、画像処理パイプライン内の他の位置にインプリメントされうる。加えて、画像捕捉デバイス１０２は、単一のセンサー１０８を有するものとして、例示されているが、他の実施形態では、画像捕捉デバイス１０２は、複数のセンサーを有することができる。例えば、画像捕捉デバイス１０２は、異なる露出設定あるいは異なる焦点設定を使用するなどの、様々な状況下で特定のシーンの複数の同時画像捕捉を実行するように構成される２つ又はそれ以上のセンサーを有することができる。
【００１９】
図２は、第１の画像に対応する第１の画像データを受信するための第１の画像入力２０１を備えた画像合成エンジン２０５を有するシステム２００を例示する。特定の実施形態において、システム２００は、図１の画像合成モジュール１１８に含まれることができる。例えば、第１の画像は、カメラのレンズ１０２によって捕捉され、そしてセンサー１０８、デモザイク・モジュール１１０、色補正モジュール１１２、ガンマ・モジュール１１４及び色変換モジュール１１６を通じて、第１の画像入力２０１で画像合成エンジン２０５に提供されうる。
【００２０】
画像合成エンジン２０５は、第２の画像に対応する第２の画像データを受信するための第２の画像入力２０２を更に含む。特定の実施形態において、第２の画像は、カメラのレンズ１０２によって捕捉され、そしてセンサー１０８、デモザイク・モジュール１１０、色補正モジュール１１２、ガンマ・モジュール１１４及び色変換モジュール１１６を通じて、第２の画像入力２０２で画像合成エンジン２０５に提供されうる。
【００２１】
第１及び第２の画像は、画像合成エンジン２０５によって合成される。例えば、画像合成エンジン２０５は、図３−１４に関して記述される実施形態に従って、動作することができる。
【００２２】
画像合成エンジン２０５は、合成された画像出力２０６を生成するように構成される。特定の実施形態において、画像合成エンジン２０５は、第１の画像の第１の特性を第２の画像の第２の特性と比較することに基づいて、少なくとも部分的に、第１の画像入力２０１からの第１の値と第２の画像入力２０２からの調整された第２の値を選択的に合成することによって、合成された画像出力２０６を生成する。例えば、第１の画像の領域は、焦点が合っていないが、第２の画像の対応領域は、焦点が合っている時には、画像合成エンジン２０５は、第２の画像から、該領域に対応する、合成された画像出力２０６のためのピクセル値を選択することができる。比較されうる特性のその他の例は、画像のコントラスト（contrast）、画像の輝度成分間の偏差（deviation）、及び画像のフィルタされた特性（例えば、低域（low-pass）フィルタされたデータ、高域（high-pass）フィルタされたデータ）を含む。特定の実施形態において、合成された画像出力２０６は、画像記憶デバイス１４０のような画像記憶デバイスに結合されうる。
【００２３】
他の実施形態において、画像合成エンジン２０５は、追加の画像入力を含むことができる。加えて、あるいは代わりに、合成された画像出力２０６は、出力画像を追加の入力画像と繰り返し合成するために、画像合成エンジン２０５の出力を第２の画像入力２０２で受信された追加の画像入力と合成する能力に備えて、第１の画像入力２０１に結合されうる。例えば、３組の画像データが、第１の画像データの組を第１の画像入力２０１に適用し、第２の画像データの組を第２の画像入力２０２に適用することによって、そして結果として生じる合成された画像を第１の画像入力２０１に適用し、第３の画像データの組を第３の画像入力２０２に適用することによって、単一の画像を形成するために合成されることができ、結果として全３組の画像データが合成された画像が生じる。
【００２４】
図３は、画像合成エンジン３０５を有するシステム３００を例示する。システム３００では、画像合成エンジン３０５は、個々の画像入力をレジスター（register）するレジストレーション回路３２１と、個々の画像入力を合成する合成回路３２３と、レジストレーション回路３２１及び合成回路３２３を制御する制御回路３２５とを含む。例示的な実施形態において、システム３００は、図１の画像合成モジュール１１８あるいは図２の画像合成エンジン２０５に含まれることができる。
【００２５】
特定の実施形態において、レジストレーション回路３２１は、第１の輝度入力３１１と、第２の輝度入力３１３と、合成回路３２３に結合される出力３２２とを含む。レジストレーション回路３２１は、第１の輝度入力３１１及び第２の輝度入力３１３からのデータ間の差を決定し、そして出力３２２で合成回路３２３にオフセット・データを提供するように構成される。特定の実施形態において、第１の輝度入力３１１は、ＹＣｂＣｒ色空間で符号化された第１の画像に関するＹ成分のデータであり、また第２の輝度入力３１３は、ＹＣｂＣｒ色空間で符号化された第２の画像に関するＹ成分のデータである。図３に例示されているように、レジストレーション回路３２１は、レジストレーションされる画像からの輝度成分のみを使用して、画像レジストレーションを実行する。他の実施形態において、レジストレーション回路３２１は、レジストレーションを実行するために、輝度成分に加えて、あるいはその代わりに、画像データの他の成分を使用することができる。
【００２６】
合成回路３２３は、第１の画像入力３１５と、第２の画像入力３１７と、レジストレーション回路３２１からレジストレーション・データを受信するための入力と、合成された画像出力３０６とを含む。特定の実施形態において、第１の画像入力３１５は、ＹＣｂＣｒ色空間で符号化された第１の画像に関するデータを受信し、また第２の画像入力３１７は、ＹＣｂＣｒ色空間で符号化された第２の画像に関するデータを受信する。合成回路３２３は、第１の画像と、レジストレーション回路３２１によって検出された差に基づいて調整された（即ち、第１の画像データと位置合せ（align）するように調整された）第２の画像とを選択的に合成するように構成される。レジストレーション回路３２１は、制御回路３２５の制御下で動作するために、入力３２６に応答するように構成され、また合成回路３２３は、制御回路３２５の制御下で動作するために、入力３２４に応答するように構成される。
【００２７】
特定の実施形態において、画像合成回路３２３は、第１の画像の第１の特性を第２の画像の第２の特性と比較することに基づいて、少なくとも部分的に、第１の画像入力３１５からの第１の値と第２の画像入力３１７からの第２の値を選択的に合成することによって、合成された画像出力３０６を生成する。該特性は、例示的な例として、焦点、コントラスト、分散（variance）、又は周波数スペクトルを含むことができる。例えば、画像合成回路３２３は、第１の画像入力３１５及び第２の画像入力３１７の領域を、どちらの画像入力が、該領域においてより良い焦点を有しているか、どれだけの分散が、レジストレーション後の該領域において、２つの画像入力との間で検出されるか、あるいは合成された画像出力３０６の品質を向上するための他の特性に基づいて合成することができる。画像合成回路３２３は、選択された特性を示す、制御回路３２５からの入力３２４を受信し、それぞれの画像を領域単位あるいはピクセル単位までも評価し、そして評価された特性に基づく、入力画像の領域あるいはピクセルの選択的な合成に基づいて、合成された画像を生成することができる。
【００２８】
図４を参照すると、選択的に複数の画像を合成するシステムが図示されており、全般的に４００と示されている。特定の実施形態において、システム４００は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、あるいはそれらの任意の組合せに含まれることができる。システム４００は、階層的な合成回路４６０に結合される階層的なレジストレーション回路４２０を含む。階層的なレジストレーション回路４２０及び階層的な合成回路４６０は、特定用途向け制御回路４３２に結合される。特定用途向け制御回路４３２及び階層的な合成回路４６０はまた、重み付けテーブル（weighting table）４３４に結合される。
【００２９】
階層的なレジストレーション回路４２０は、第１の画像に対応する第１の画像の輝度データ４０２と、第２の画像に対応する第２の画像の輝度データ４０４を受信し、粗い（coarse）レジストレーション回路４２２及び微細な（fine）レジストレーション回路４２４を使用して、第１の画像の輝度データ４０２及び第２の画像の輝度データ４０４に対してレジストレーション・プロセスを実行するように構成される。階層的なレジストレーション回路４２０は、第１の画像の輝度データ４０２と第２の画像の輝度データ４０４の対応部分間で検出されたオフセットを示す微細な動きベクトルの組４２９を生成するように構成される。特定の実施形態において、微細な動きベクトルの組４２９は、カメラの動き、画像の動き、あるいは両方によって、位置合せ不良（misaligned）になりうる画像を位置合せするための大きさ及び方向のデータを含む。例示されているように、階層的なレジストレーション回路４２０は、計算効率（computational efficiency）のために、画像の輝度データに動作します。しかしながら、他の実施形態において、階層的なレジストレーション回路４２０は、輝度データに加えて、あるいはその代わりに、彩度成分データ、赤データ、青データ、又は緑データ、あるいはそれらの任意の組合せなどの、他のタイプの画像データを使用して動作することができる。
【００３０】
特定の実施形態において、粗いレジストレーション回路４２２は、動きベクトル生成回路４２６を含む。動きベクトル生成回路４２６は、該ブロック間で粗いレジストレーション・プロセスを実行するために、第１の画像の輝度データ４０２及び第２の画像の輝度データ４０４の各々を複数のブロックに分割するように構成されうる。例えば、動きベクトル生成回路４２６は、第１の画像の輝度データ４０２及び第２の画像の輝度データ４０４の各々を、３ｘ３の重なり合うブロックの組に論理的に分割することができ、そして第２の画像の輝度データ４０４の各々のブロックを、第１の画像の輝度データ４０２の対応ブロックに位置合せするために適用されうる粗い動きベクトルの組４２７を生成するために、重なり合うブロックのプロジェクション（projection）を使用することができる。他の実施形態においては、任意の数のブロックが使用されることができ、そして該ブロックのうちの幾つか、あるいは全ては、重なり合わないブロックでありうる。
【００３１】
微細なレジストレーション回路４２４は、粗い動きベクトルの組４２７を受信し、そして微細な動きベクトルの組４２９を生成するように構成される。特定の実施形態において、微細なレジストレーション回路４２４は、マクロブロック・リファイン回路４３０（macro block refining circuit）に結合される動きベクトル・アップサンプリング回路４２８を含む。動きベクトル・アップサンプリング回路４２８は、粗い動きベクトルの組４２７よりも微細な粒状性（granularity）を有する動きベクトルを生成するために、粗い動きベクトルの組４２７を受信してアップサンプルすることができる。例示するために、画像の輝度データ４０２及び４０４は、Ｍ×Ｎ配列のマクロブロックとして構成されることができ、ここで各マクロブロックは、画像の１６ピクセル×１６ピクセルの領域に対応する。動きベクトル・アップサンプリング回路４２８は、各マクロブロックに対して、粗い動きベクトルの組４２７のうちの対応する動きベクトルを適用する、Ｍ×Ｎの動きベクトルの組を生成することができる。
【００３２】
特定の実施形態において、マクロブロック動きベクトル・リファイン回路４３０（macro block motion vector refining circuit）は、アップサンプリングされた動きベクトルの組４２７と、画像の輝度データ４０２及び４０４を受信し、リファインされた動きベクトルの組４２９を生成するために結合される。例えば、マクロブロック動きベクトル・リファイン回路４３０は、第２の画像データのマクロブロックを第１の画像データの対応マクロブロックと粗く位置合せするために、アップサンプリングされた動きベクトルの組４２７の各動きベクトルを、第２の画像データのその対応マクロブロックに適用するように構成されうる。マクロブロック動きベクトル・リファイン回路４３０は、第１の画像データ４０２に粗く位置合せされたマクロブロックのより正確な位置合せを決定するために、粗く位置合せされたマクロブロックの周辺の第１の画像データ４０２の領域をサーチすることができる。該サーチ領域は、特定用途向け制御回路４３２から受信されるサーチ領域制御信号４３５に基づいて選択されうる。リファインされた動きベクトルの組４２９は、第１の画像の輝度データ４０２と第２の画像の輝度データ４０４のマクロブロック単位のレジストレーションを可能にするために、各マクロブロックのより正確な位置合せに対応するベクトル・データを示すことができる。
【００３３】
マクロブロック動きベクトル・リファイン回路４３０は、各動きベクトルに関する複数の可能なＭＳＥの間で、最低の計算された平均二乗誤差（ＭＳＥ：Mean Square Error）あるいは他の標準を選択するアルゴリズムを実行することによって、リファインされた動きベクトルの組４２９を決定することができる。例えば、第２の画像の輝度データ４０４の特定のマクロブロックに関しては、第１の画像の輝度データ４０２との複数の可能なマクロブロックの位置合せが考慮されることができ、そして最低の計算されたＭＳＥが結果として生じる位置合せが、リファインされた動きベクトルの組４２９のために選択される。各マクロブロックのために決定される平均二乗誤差は、動きベクトル（ＭＶ）平均二乗差データ４３１として、階層的な合成回路４６０に提供されうる。
【００３４】
特定の実施形態において、階層的な合成回路４６０は、粗い合成回路４６２及び微細な合成回路４６４を使用して、第１の画像データ４０６と第２の画像データ４０８を合成するように構成される。第１の画像データ４０６は、ＹＣｂＣｒ画像データとして、第１の画像に関する第１の輝度データ４０２を含み、また第１の画像に関する彩度データも含むことができる。第２の画像データ４０８は、ＹＣｂＣｒデータとして、第２の画像に関する第２の輝度データ４０４と、第２の画像に関する彩度データを含むことができる。
【００３５】
特定の実施形態において、粗い合成回路４６２は、マクロブロック画像位置合せ回路４６６及びブロックＭＳＥ差弁別回路４６８を含む。マクロブロック画像位置合せ回路４６６は、第１の画像データに位置合せされた、第２の画像に関する画像データを生成するために、リファインされた動きベクトルの組４２９を第２の画像データ４０８に適用するように構成されうる。例えば、マクロブロック画像位置合せ回路４６６は、マクロブロックが重なり合うことが決定された時に、第２の画像においてピクセル値を合成し、あるいは、どのマクロブロック内にもない第２の画像データの領域が結果として生じるように、マクロブロックが再位置合わせされた（realigned）ところのピクセル値を補間するように構成されうる。マクロブロック画像位置合せ回路４６６は、第１の画像データ４０６と第２の画像に関する位置合せされた画像データとをブロックＭＳＥ差弁別回路４６８に提供することができる。
【００３６】
特定の実施形態において、ブロックＭＳＥ差弁別回路４６８は、マクロブロック画像位置合せ回路４６６から受信されたデータに対して粗い合成プロセスを実行するように構成されうる。特に、ブロックＭＳＥ差弁別回路４６８は、第１の画像データ４０６と十分に適合しない第２の画像に関する位置合せされた画像データのマクロブロックを除去することができる。例えば、各マクロブロックに関するＭＶ  ＭＳ差データ４３１は、閾値と比較されうる。ＭＳ差が特定のマクロブロックに関する閾値を超過する時には、該特定のマクロブロックは、第１の画像データ４０６と第２の画像に関する位置合せされた画像データとの間で、過度に異なっているという決定がされ、従って、該画像データは、特定のマクロブロックに関して合成されるべきではない。
【００３７】
例えば、動く物体が、第１の画像データ４０６中の第１のマクロブロックに現れ（しかし、第２の画像に関する位置合せされた画像データ中の第１のマクロブロックには現れていない）、そして該動く物体が、第２の画像に関する位置合せされた画像データ中の第２のマクロブロックに現れている（しかし、第１の画像データ４０６の第２のマクロブロックには現れていない）ところでは、対応する平均二乗誤差の差により、第１のマクロブロックは、第１及び第２の画像の間で合成不可能（non-combinable）であると決定されることができ、また第２のマクロブロックは、第１及び第２の画像との間で合成不可能であると決定されうる。ブロックＭＳＥ差弁別回路４６８は、第１の画像データ４０６からのマクロブロックに関するピクセル値のみが使用されるように、位置合せされた第２の画像データから各々の合成不可能なマクロブロックを除去ように構成されうる。例えば、マクロブロックに関するピクセル値は、第２の画像に関する位置合せされた画像データの対応マクロブロックにおけるピクセル値を置き換えるために、第１の画像データ４０６からコピーされうる。
【００３８】
例示されているように、ブロックＭＳＥ差弁別回路４６８は、特定用途向け制御回路４３２に応答する。例えば、特定用途向け制御回路４３２は、第１の画像データと第２の画像に関する位置合せされた画像データとのマクロブロック間のＭＳＥ差を比較するために使用される閾値差を示す、閾値制御信号４３７を提供することができる。ブロックＭＳＥ差弁別回路４６８は、粗い合成プロセスに後続して、微細な合成回路４６４に２組の画像データを出力することができ、第１の画像に対応する画像データと第２の画像に対応する画像データとを含む。
【００３９】
微細な合成回路４６４は、レジスターされ且つ粗く位置合せされた第１及び第２の画像データを受信し、出力画像データ４８０を生成するための微細な合成プロセスを実行するように構成される。特定の実施形態において、微細な合成回路４６４は、平均ピクセルＭＳ差回路４７４に結合される、第１のフィルタ４７０及び第２のフィルタ４７２を含む。微細な合成回路４６４はまた、平均ピクセルＭＳ差回路４７４及び重み付けテーブル４３４に結合される画像合成回路４７６を含む。
【００４０】
第１の画像に関する受信されたデータは、第１のフィルタ４７０によって処理されることができ、そして第１の画像に関する該フィルタされたデータは、平均ピクセルＭＳ差回路４７４に提供される。第２の画像に関する受信されたデータは、第２のフィルタ４７２によって処理されることができ、そして第２の画像に関する該フィルタされたデータは、平均ピクセルＭＳ差回路４７４に提供される。フィルタ４７０及び４７２は、特定用途向け制御回路４３２に応答することができる。例えば、フィルタ４７０及び４７２は、低域応答、高域応答、帯域応答、その他任意のフィルタ応答、あるいはそれらの任意の組合せなどのフィルタ応答の特性を示す、特定用途向け制御回路４３２からの応答制御信号４３９を受信することができる。フィルタ４７０及び４７２は、３×３カーネル（kernel）、あるいはその他任意のサイズのカーネルを含むことができる。特定の実施形態において、フィルタ４７０及び４７２は、特定用途向け制御回路４３２に応答するカーネル・サイズを有する。
【００４１】
平均ピクセルＭＳ差回路４７４は、各画像に対応するフィルタされたデータを受信し、そしてピクセル単位の符号付き（signed）平均二乗差オペレーションを実行するように構成されうる。該差オペレーションは、特定のピクセルに関する輝度及び彩度の値の各々を使用して、各特定のピクセルのために、第１の画像のフィルタされたデータと第２の画像のフィルタされたデータとの間の差を示す符号付きの値を生成することができる。平均ピクセルＭＳ差回路４７４は、平均ピクセル差結果として、画像合成回路４７６に該差データを提供するように構成されうる。
【００４２】
画像合成回路４７６は、各ピクセルに関して、平均ピクセルＭＳ差回路４７４から差値を受信し、出力画像データ４８０中の各ピクセルのピクセル値を決定するように構成されうる。例えば、特定のピクセルに関する受信された差値は、重み付けテーブル４３４での探索オペレーシションのために提供されうる。探索オペレーションの結果は、出力画像データ４８０におけるピクセル値が、粗い合成回路４６２から受信された第１の画像データからの値、粗い合成回路４６２から受信された第２の画像データからの値、又はそれらの組合せを有するかどうかを決定することができる。
【００４３】
重み付けテーブル４３４は、第１の画像データのピクセル値に適用される第１の重みと、第２の画像データのピクセル値に適用される第２の重みとを示すデータを含むことができる。重み付けテーブル４３４は、第１の画像データに適用される重みに対応するおよそ０〜１の範囲を有する出力値「Ｗ」と、第２の画像データに適用される重みに対応する値１−Ｗとを提供することができる。該重み付けテーブルは、特定用途向け制御回路４３２からのテーブル制御信号４３３に応答することができる。
【００４４】
オペレーション中に、特定用途向け制御回路４３２は、システム４００において画像レジストレーション及び合成プロセスを制御するための１つ又は複数の制御パラメータを決定することができる。例えば、特定用途向け制御回路４３２は、マクロブロック・レジストレーションのアグレッシブ性（aggressiveness）を示すためのサーチ領域制御信号４３５と、マクロブロックの合成に関する許容可能な差量を示すための閾値制御信号４３７と、実行されるフィルタリングのタイプを示すための応答制御信号４３９と、及び画像間のフィルタされたピクセル差に基づいて、どのように画像が合成されるかの重み付けを示すためのテーブル制御信号４３３について１つの値を選択することができる。
【００４５】
システム４００は、特定のプロセスを実行するように構成される複数のハードウェア回路を含むように例示されているが、他の実施形態では、システム４００の１つ又は複数のコンポーネントは、プロセッサ命令を実行するプロセッサによって実行されうる。例えば、回路４２０、４２２、４２４、４２６、４２８、４３０、４３２、４３４、４６０、４６２、４６４、４６６、４６８、４７０、４７４、又は４７６によって実行される機能のうちの１つ又は複数が、上に記述された汎用アルゴリズム又は機能のうちの１つ又は複数を実行するようにプログラムされた汎用プロセッサ、画像プロセッサ、又はデジタル信号プロセッサ（ＤＳＰ）によって実行されうる。他の実施形態では、回路４２０、４２２、４２４、４２６、４２８、４３０、４３２、４３４、４６０、４６２、４６４、４６６、４６８、４７０、４７４、又は４７６のうちの１つ又は複数が、ハードウェア、ファームウェア、プロセッサ実行（processor executing）のコンピュータ可読命令、あるいはそれらの任意の組合せに含まれるコンポーネントによって置き換えられることができる。
【００４６】
画像合成を例示する特定の実施形態が、図５−１１に関連して論じられ、これらの特定の実施形態においてインプリメントされうるような、図４の画像合成回路４００のオペレーションを理解するために有用である。
【００４７】
図５を参照すると、手ぶれの補正と、動く物体による物体のぼやけを低減することを提供する画像合成エンジンの実施形態のオペレーションを論理的に例示する図が提供される。図５での例示目的のために、動く物体５０２が、円によって表され、ぶれ（jitter）によってシフトされた画像の一部５０４が、三角形によって例示されている。第１の列５２１が、概して第１の画像の処理経路を表わし、また第２の列５２３が、概して第２の画像の処理経路を表す。
【００４８】
例示的な実施形態において、手ぶれを除去する第１及び第２の画像のデータフロー５０１は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４の画像合成回路４００、あるいはそれらの任意の組合せにおいて実行されうる。もう１つの例示的な実施形態において、手ぶれを除去する第１及び第２の画像のデータフロー５０１は、図１２の画像の選択的な合成の方法１２００、図１３の階層的なレジストレーション・プロセス１３００、図１４の画像改善プロセス１４００、あるいはそれらの任意の組合せに従って、実行されうる。
【００４９】
初めに、第１の画像及び第２の画像は、粗いレジストレーション５１２が結果として生じる粗いレジストレーション・プロセスと、微細なレジストレーション５１４が結果として生じる微細なレジストレーション・プロセスへの入力として提供される。粗いレジストレーション・プロセス及び微細なレジストレーション・プロセスは、第１の画像と第２の画像の間の差を決定するように構成される。例示されているように、粗いレジストレーション５１２は、各画像データの組を第１の部分５３０のような複数の部分に細分（subdivide）することができ、そして第１の画像の第１の部分と第２の画像の第１の部分との間のオフセットを決定することができる。微細なレジストレーション５１４は、第１の部分５３０内にある第２の部分５３２として例示されている、画像の１６ピクセル×１６ピクセルの領域に対応するマクロブロックなどに、各部分を更に細分することができる。微細なレジストレーション５１４は、第１の画像の第２の部分と第２の画像の第２の部分との間のオフセットを決定することができ、そして該オフセットを、図４の微細な動きベクトルの組４２９のうちの１つの動きベクトルのような、動きベクトルによって表すことができる。
【００５０】
第２の画像のブロックは、粗い合成ブロック位置合せ５１６を生成するために、画像のレジストレーションに基づいて、第１の画像のブロックと位置合せされる。
【００５１】
粗い合成ブロック差プロセスは、粗い合成ブロック差５１８を生成するために、第１の画像と第２の画像の間で物体５０２（円によって表されている）がシフトしたピクセル数に基づいて、動く物体５０２を検出する。物体が、それが動く物体であると考えられる前に、シフトしなければならないピクセル数は、アプリケーション毎に異なることができ、ある実施形態では、図４の特定用途向け制御モジュール４１３又は図３の制御回路３２５などの、特定用途向けレジストレーション制御モジュールによって制御される。動く物体が検出された後、動く物体は、第２の画像中の動く物体を有するブロックを第１の画像の対応ブロックと置き換えることによって、第２の画像から除去され、それは画像を合成する時に、動く物体による「ゴースティング（ghosting）」を実質的に低減することができる。手ぶれによるシフト５０４（三角形として例示されている）は、画像がピクセル単位で合成されうるように、粗いレジストレーション・プロセスと微細なレジストレーション・プロセスによって調整される。例えば、微細な合成プロセスは、低減された画像誤り及び低減されたノイズのために、第１及び第２のレジスターされた画像の値を平均することができる。結果として生じる合成された画像は、第１又は第２の画像データのどちらかよりも少ないノイズをもって、手ぶれによるシフティング及び画像中の物体の動きによるゴースティングなどの画像に関する問題の補正又は改善を提供する。
【００５２】
例示的であって限定的ではない例として、データフロー５０１は、特定用途向け制御回路（ＡＳＣＣ）４３２によって制御される物体のぼやけ低減を伴う手ぶれ低減モードにおいて、図４のシステム４００で実行されうる。ＡＳＣＣ  ４３２は、サーチ領域制御信号４３５を介して、物体の動きを検出するために大きなサーチ領域を使用するように階層的なレジストレーション回路４２０に命令することができる。ＡＳＣＣ  ４３２は所定のマージンをプラスした最大の予期又は測定されたノイズ値に従って閾値を設定するなどによって、閾値信号４３７を介して、互いに遠く離れたブロックを合成しないように粗い合成回路４６２に命令することができる。ＡＳＣＣ  ４３２は、フィルタされた画像の特性に基づく比較を可能にするために、応答信号４３９を介して、各プレーン（plane）（例えば、Ｙ、Ｃｂ、及びＣｒ）に関して全通過（all-pass）モードにおいて動作するように、微細な合成回路４６４のフィルタ４７０及び４７２を構成することができる。ＡＳＣＣ  ４３２は、テーブル信号４３３を介して、微細な合成回路４６４に、フィルタされた画像データの平均ピクセルＭＳ差の大きさが、選択された量より少ない時には、粗い合成回路４６２から受信された第１の画像データ及び第２の画像データにおけるピクセルの値の平均を使用して出力画像データ４８０のピクセル値を生成させ、もしそうでなければ第１の画像データにおけるピクセルの値のみを使用させる、重み機能を提供するように重みテーブル４３４を構成することができる。
【００５３】
図６を参照すると、ハイダイナミックレンジ画像を生成するための画像合成の実施形態のオペレーションを論理的に例示する図が示される。第１の列６２１が、比較的短い露出時間を用いて取得された画像の処理経路を表し、適切に露出されている、露出適切部分６０２として表される画像の部分と、露出が不足している、露出不足部分６０４として表される画像の部分が結果として生じる。第２の列６２３が、比較的長い露出時間を用いて取得された画像の処理経路を表し、過度に露出されている、露出過度部分６０６として表される画像の部分と、適切に露出されている、露出適切部分６０８として表される画像の部分が結果として生じる。
【００５４】
例示的な実施形態において、ハイダイナミックレンジ（ＨＤＲ）画像を提供する第１及び第２の画像のデータフロー６０１は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４の画像合成回路４００、あるいはそれらの任意の組合せにおいて実行されうる。もう１つの例示的な実施形態において、ＨＤＲ画像を提供する第１及び第２の画像のデータフロー６０１は、図１２の画像の選択的な合成の方法１２００、図１３の階層的なレジストレーション・プロセス１３００、図１４の画像改善プロセス１４００、あるいはそれらの任意の組合せに従って、実行されうる。
【００５５】
初めに、第１の処理経路６２１における第１の画像及び第２の処理経路６２３における第２の画像は、粗いレジストレーション６１２を提供する粗いレジストレーション・プロセスと、微細なレジストレーション６１４を提供する微細なレジストレーション・プロセスへの入力として提供される。粗いレジストレーション・プロセス及び微細なレジストレーション・プロセスは、第１の画像と第２の画像の間の差を決定する。
【００５６】
第２の画像のブロックは、粗い合成６１６を生成するために、画像のレジストレーションに基づいて、第１の画像のブロックと位置合せされる。粗い合成６１６は更に、図５で記述されたように、画像における物体の動きなどにより適切に適合しないレジスターされた画像のブロックを除去される。
【００５７】
微細な合成プロセスは、第１の画像の露出適切部分６０２を第２の画像の露出適切部分６０８とピクセル単位で合成し、適切に露出されたＨＤＲ画像を有する微細な合成が結果として生じる。ある実施形態では、他の画像向上機能が、微細な合成プロセスを使用して行われることができる。
【００５８】
例示的であり限定的ではない例として、データフロー６０１は、特定用途向け制御回路（ＡＳＣＣ）４３２によって制御されるハイダイナミックレンジ・モードにおいて、図４のシステム４００で実行されうる。ＡＳＣＣ  ４３２は、サーチ領域制御信号４３５を介して、非常に小さいあるいはゼロのサーチ領域を使用するなど、微細な動きベクトル推定に依存しないように階層的なレジストレーション回路４２０に命令することができる。ＡＳＣＣ  ４３２は、閾値信号４３７を介して、非常に高い閾値を使用する、あるいは廃棄ブロックを使用不可にするように粗い合成回路４６２に命令することができる。ＡＳＣＣ  ４３２は、フィルタされた画像の特性に基づく比較を可能にするために、応答信号４３９を介して、参照画像に関する輝度フィルタを平均に設定し、またその他全てをゼロに設定するように、微細な合成回路４６４のフィルタ４７０及び４７２を構成することができる。ＡＳＣＣ  ４３２は、テーブル信号４３３を介して、フィルタされた画像データの平均ピクセルＭＳ差が、第１の量より小さい時には、第１の画像データのピクセルの値を使用し、フィルタされた画像データの平均ピクセルＭＳ差が、第２の量より大きい時には、第２の画像データのピクセルの値を使用して微細な合成回路４６４に出力画像データ４８０のピクセル値を生成させ、またフィルタされた画像データの平均ピクセルＭＳ差の大きさが、第１の量と第２の量の間にある時には、粗い合成回路から受信された第１の画像データ及び第２の画像データにおけるピクセルの値の平均への円滑な移行を生じさせる、重み機能を提供するように重みテーブル４３４を構成することができる。
【００５９】
図７は、被写界深度の向上を提供する画像合成エンジンの実施形態のオペレーションを論理的に例示する図である。図７によって例示されているように、第１の処理経路７２１における第１の画像は、焦点を合された近視野部分７０２と、ぼやけている遠視野部分７０４とを含む。第２の処理経路７２３における第２の画像は、ぼやけている近視野部分７０６と、焦点を合された遠視野部分７０８とを含む。
【００６０】
例示的な実施形態において、被写界深度の向上を提供する第１及び第２の画像のデータフロー７０１は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４の画像合成回路４００、あるいはそれらの任意の組合せにおいて実行されうる。もう１つの例示的な実施形態において、被写界深度の向上を提供する第１及び第２の画像のデータフロー７０１は、図１２の画像の選択的な合成の方法１２００、図１３の階層的なレジストレーション・プロセス１３００、図１４の画像改善プロセス１４００、あるいはそれらの任意の組合せに従って、実行されうる。
【００６１】
初めに、第１の画像及び第２の画像は、粗いレジストレーション画像７１２を生成する粗いレジストレーション・プロセスと、微細なレジストレーション画像７１４を生成する微細なレジストレーション・プロセスへの入力として提供される。粗いレジストレーション画像７１２及び微細なレジストレーション画像７１４は、第１の画像と第２の画像の間の差を決定するように構成される。レジストレーション後、第２の画像のブロックは、粗い合成画像７１６を生成するための粗い合成プロセスによって、画像のレジストレーションに基づいて第１の画像のブロックと位置合せされる。粗い合成プロセスは更に、レジスターされた画像のうちの１つにおいて動く物体により適合しないブロックを除去する。
【００６２】
微細な合成プロセスは、第１の画像の焦点を合された近視野部分７０２を第２の画像の焦点を合された遠視野部分７０８とピクセル単位で合成し、微細な合成画像７１８を生成するための焦点を合された合成画像が結果として生じる。ある実施形態では、他の画像向上機能が、微細な合成プロセスを使用して行われることができる。向上された被写界深度を有する画像が提供される。
【００６３】
例示的であって限定的ではない例として、データフロー７０１は、特定用途向け制御回路（ＡＳＣＣ）４３２によって制御される向上された被写界深度モードにおいて、図４のシステム４００で実行されうる。ＡＳＣＣ  ４３２は、サーチ領域制御信号４３５を介して、物体の動き検出を可能にするために大きいサーチ領域を使用するように階層的なレジストレーション回路４２０に命令することができる。ＡＳＣＣ  ４３２は、所定のマージンをプラスした最大の予期又は測定されたノイズ値に従って閾値を設定するなどによって、閾値信号４３７を介して、互いに遠く離れたブロックを合成しないように粗い合成回路４６２に命令することができる。ＡＳＣＣ  ４３２は、フィルタされた画像の特性に基づく比較を可能にするために、応答信号４３９を介して、輝度データに関しては高域フィルタ応答、また彩度データに関してはゼロを有するように、微細な合成回路４６４のフィルタ４７０及び４７２を構成することができる。ＡＳＣＣ  ４３２は、テーブル信号４３３を介して、微細な合成回路４６４に、フィルタされた画像データの平均ピクセルＭＳ差が、ゼロより小さい時には、第１の画像データのピクセルの値を使用して出力画像データ４８０のピクセル値を生成させ、フィルタされた画像データの平均ピクセルＭＳ差が、ゼロより大きい時には、第２の画像データにおけるピクセルの値を使用するための移行させる、重み機能を提供するように重みテーブル４３４を構成することができる。
【００６４】
図８を参照すると、横色収差が例示されている。図８によって例示されているように、入ってくる光は、レンズ上のプレーン８０３、８０５及び８０７の入射として図示されている。レンズの屈折する性質により、入射光の各検出された色は、センサー配列において受け取られる時に、わずかに異なる視野（filed of view）を有することができ、それぞれ視野８１３、８１５、及び８１７として例示されている。特定の実施形態において、赤、緑、及び青カラー・プレーン（color plane）などのセンサー出力を使用して生成される３つのカラー・プレーンのレジストレーションが、異なる視野を補償することができる。
【００６５】
図９及び図１０は、それぞれ幾何ひずみを有する画像９０２及び１００２を例示する。幾何ひずみは、レンズひずみ及び画像化システムの機械、光学、及び電子のコンポーネントにおける他のひずみを含む、多くの要因によって引き起こされうる。特定の実施形態においては、幾何学的にひずんだ画像の再サンプリング（resampling）が、幾何ひずみの補正を行うことができる。
【００６６】
図１１は、画像の幾何ひずみの補正を提供する画像合成エンジンの実施形態のオペレーションを論理的に例示するブロック図である。図１１では、粗いレジストレーション画像１１１２を生成するために、幾何ひずみを有する単一の画像１１０４が、粗いレジストレーション・プロセスへの入力として提供される。粗いレジストレーション・プロセスは、画像１１０４の粗い再サンプリングを作成するために、画像化システムの機械、光学、及び電子のコンポーネントによって引き起こされる既知の幾何ひずみに基づき、またあらかじめ定義されうる、粗いレジストレーション・ベクトルの組を使用することができる。
【００６７】
その後、微細なレジストレーション・プロセスが、微細なレジストレーション画像１１１４を生成するための画像１１０４の微細な再サンプリングを作成するために、既知の幾何ひずみに基づき、またあらかじめ定義されうる微細なレジストレーション・ベクトルの組を使用することができる。再サンプリングされた画像１１１５は、次に、粗い合成画像１１１６を生成する粗い合成プロセスと、微細な合成画像１１１８を生成する微細な合成プロセスに提供される。特定の実施形態において、画像１１０４はまた、補正された画像１１２０を提供する他の補正のために、他の画像と合成されうる。
【００６８】
例示的な実施形態において、画像の幾何ひずみの補正を提供する該画像のデータフロー１１０１は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４のシステム４００、あるいはそれらの任意の組合せにおいて実行されうる。もう１つの例示的な実施形態において、画像の幾何ひずみの補正を提供する該画像のデータフロー１１０１は、図１２の画像の選択的な合成の方法１２００、図１３の階層的なレジストレーション・プロセス１３００、図１４の画像改善プロセス１４００、あるいはそれらの任意の組合せに従って、実行されうる。
【００６９】
図１２を参照すると、画像の選択的な合成の方法が、全般的に１２００で示されている。例示的な実施形態において、方法１２００は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４のシステム４００、あるいはそれらの任意の組合せによって実行されうる。１２０２において、第１の画像に対応する第１の画像データと第２の画像に対応する第２の画像データが受信される。特定の実施形態において、第１の画像データ及び第２の画像データは、輝度成分及び彩度成分を有する色空間において受信されうる。別の実施形態において、第１の画像データ及び第２の画像データは、ＹＣｂＣｒ色空間で受信されうる。１２０４において、第１の画像データの複数の対応部分に関連して、第２の画像データの複数の部分との間の複数のオフセットに対応する動きベクトル・データの組が、計算されうる。例えば、動きベクトル・データの組は、画像データを粗く位置合せするための第１の動きベクトルの組を生成する粗いレジストレーション回路と、第１の動きベクトルの組に基づいて、より微細な動きベクトルの組を生成する微細なレジストレーション回路とを用いて計算されうる。
【００７０】
１２０６において、第２の画像データは、記述されたように、第１の画像データの複数の対応部分に関連して、第２の画像データの複数の部分との間の複数のオフセットに対応する動きベクトル・データの組を適用することによって調整される。その結果、第２の画像データは、第１の画像データ及び第２の画像データを捕捉する間のカメラの動き、あるいは画像における物体の動きを補償するために、第１の画像データとより密接に（closely）位置合せされるように調整される。１２０８において、第３の画像データが、第１の画像データの第１の特性を第２の画像データの第２の特性と比較することに基づいて、少なくとも部分的に、第１の画像データからの第１の値と調整された第２の画像データからの第２の値を選択的に合成することによって生成される。比較されうる特性の例は、画像の焦点、画像のコントラスト、画像の輝度成分の間の偏差、及び画像のフィルタされた特性（例えば、低域フィルタされたデータ、高域フィルタされたデータ）を含む。
【００７１】
特定の実施形態において、選択的な合成は、粗い合成オペレーション及び微細な合成オペレーションを含む。粗い合成オペレーションは、調整された第２の画像データの複数のマクロブロックに対して実行されることができ、また微細な合成オペレーションは、第１の画像データ及び第２の調整された画像データの複数のピクセルに対して実行されうる。粗い合成オペレーションは、調整された第２の画像データのうちの１つ又は複数のマクロブロックと第１の画像データの複数の対応マクロブロックとの間の差が、選択可能な閾値を超えた時に、調整された第２の画像データのうちの１つ又は複数のマクロブロックを選択的に廃棄すること含むことができる。例えば、選択可能な閾値は、図４の特定用途向け制御回路４３２によって提供される、閾値制御信号４３７によって示されうる。別の特定の実施形態において、微細な合成オペレーションは、フィルタされた画像の特性を比較するために、第１の画像データ及び調整された第２の画像データをフィルタすることを含み、また該第１の値及び該第２の値は、フィルタされた画像の特性に基づいて選択的に合成される。フィルタされた画像の特性は、図４の平均ピクセル差回路４７４で比較され、また第１の画像データ及び調整された第２の画像データの重み付けされた合成のために、重みを生成するための重み付けテーブル４３４に問い合わせる（query）ために使用される。
【００７２】
特定の実施形態において、第１の画像データの第１の特性及び第２の画像データの第２の特性は、画像の焦点状態（即ち、焦点が合っている、又は焦点が合っていない）、第１の画像及び第２の画像内の物体の移動、又は画像の露出を示す。加えて、特定の実施形態において、第１及び第２の画像データの複数の値は、第１の画像データのフィルタされた部分を第２の画像データのフィルタされた部分と比較することに基づいて合成されうる。例えば、第１の画像データのフィルタされた部分は、図４の平均ピクセル差回路４７４で、第２の画像データのフィルタされた部分と比較されることができ、そして比較の結果が第１の画像データの値と第２の画像データの値に適用される相対的な重みを決定するために使用されうる。第１の画像データ及び第２の画像データは、例えば、カメラの画像センサーで捕捉された連続するフレームであることができる。
【００７３】
ある実施形態において、ある条件が満たされる時には、第１又は第２の画像データのピクセル又はブロックは、廃棄され、そして第１又は第２の画像データのうちの他方からのピクセル又はブロックと置き換えられることができる。例えば、調整された第２の画像のマクロブロック内のピクセルは、画像が、手ぶれ又は動きの検出のために調整される時に、廃棄されうる。第１の画像又は調整された第２の画像におけるピクセルは、被写界深度の向上のために廃棄されうる。結果として生じる第３の画像データは、手ぶれ、動き、被写界深度の向上、横色収差、及び幾何ひずみに関して、第１の画像あるいは調整された第２の画像と比較して向上されうる。
【００７４】
特定の実施形態において、図１３によって例示されているように、動きベクトル・データの組は、階層的なレジストレーション・プロセス１３００に基づいて決定される。階層的なレジストレーション・プロセス１３００は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４のシステム４００、あるいはそれらの任意の組合せによって実行されうる。階層的な構造プロセスは、解像度対頑強性の動作基点（resolution versus robustness operating points）を調整する能力を提供し、計算上の要求を低減する。階層的なレジストレーション・プロセス１３００は、１３０２において、第１の画像の第１の部分と第２の画像の第１の部分との間の第１の位置合せオフセットを決定することと、１３０４において、第１の位置合せオフセットに基づいて、第１の画像の第２の部分と第２の画像の第２の部分との間の第２の位置合せオフセットを決定することとを含み、ここで、第１の画像の第２の部分は、第１の画像の第１の部分内にある。１つの特定の実施形態において、第１の画像の第１の部分は、第１の画像の３×３行列における９個の区分のうちの１つであり、そして第１の画像の第２の部分は、第１の画像の１６ピクセル×１６ピクセルの領域に対応する。
【００７５】
図１４は、画像改善方法１４００の実施形態を例示するフローチャートを図示する。例示的な実施形態において、画像改善方法１４００は、図１の画像合成モジュール１１８、図２の画像合成エンジン２０５、図３の画像合成エンジン３０５、図４のシステム４００、あるいはそれらの任意の組合せにおいて実行されうる。１４０２において、第１の動きベクトルの組が、第１の画像データの第１のブロックの組の各ブロックと第２の画像データの第１のブロックの組の対応ブロックとの間のオフセットに対応して決定される。例えば、第１の動きベクトルの組は、図４の粗い動きベクトルの組４２７であることができる。
【００７６】
１４０４において、第２の画像データの第１のブロックの組の特定のブロックに対応する第１の動きベクトルの組のうちの１つの動きベクトルが、第２の画像データの第２のブロックの組に該動きベクトルを適用するためにアップサンプルされ、第２の画像データの第２のブロックの組は、該特定のブロック内に含まれている。例えば、図４の動きベクトル・アップサンプリング回路４２８は、３×３の重なり合うブロックの組の特定のブロックを、特定のブロック内のマクロブロックの組にアップサンプルすることができる。
【００７７】
１４０６において、第１の画像データの第２のブロックの組の各々と、第１の動きベクトルの組のうちの１つの動きベクトルを適用した後の第２の画像データの第２のブロックの組の対応ブロックとの間のオフセットに対応する、第２の動きベクトルの組が決定される。例えば、第２の動きベクトルの組は、図４のマクロブロック・リファイン回路４３０によってリファインされる微細な動きベクトルの組４２９であることができる。１４０８において、第２の動きベクトルの組は、調整された第２の画像データを生成するために、第２の画像に適用される。
【００７８】
特定の実施形態において、第２の動きベクトルの組は、図３の入力３２６あるいは図４のマクロブロック・リファイン回路４３０で受信されるサーチ領域制御信号などの、制御入力を介して示される選択可能なサーチ領域に基づいて決定される。選択可能なサーチ領域は、第１の画像データの第２のブロックの組の各々と、第１の動きベクトルの組の該動きベクトルを適用した後の第２の画像データの第２のブロックの組の対応ブロックとの間のオフセットを制限することができる。
【００７９】
１４１０において、第１の画像データと調整された第２の画像データの部分が、選択的に合成される。例えば、第１の画像データと第２の画像データは、領域単位、ピクセル単位、又は両方で合成されうる。例示するために、第１の画像データと調整された第２の画像データは、図４の階層的な合成回路４６０によって合成されうる。
【００８０】
特定の実施形態において、第１の画像データと調整された第２の画像データの選択的な合成は、第３の画像データを生成する。第３の画像データは、第１の画像データより深い被写界深度、第１の画像データより少ないノイズ、又は第１の画像データより大きい動的解像度（dynamic resolution）を有することができる。
【００８１】
図１５は、画像合成モジュールを含むシステムの特定の実施形態のブロック図である。システム１５００は、携帯用電子デバイスにおいてインプリメントされることができ、またメモリ１５３２に結合されるデジタル信号プロセッサ（ＤＳＰ）のような、信号プロセッサ１５１０を含む。システム１５００は、画像合成モジュール１５６４を含む。例示的な例において、画像合成モジュール１５６４は、図１−５の任意のシステムを含み、図１２−１４の任意の方法、あるいはそれらの任意の組合せに従って動作する。画像合成モジュール１５６４は、信号プロセッサ１５１０に組み込まれることができ、あるいは個別のデバイスであることができる。
【００８２】
カメラ・インタフェース１５６８が、信号プロセッサ１５１０に結合され、また、カメラ１５７０のようなカメラにも結合される。カメラ１５７０は、ビデオカメラ又は静止画像カメラであることができ、あるいは両方の機能をインプリメントすることができる。表示制御装置１５２６は、信号プロセッサ１５１０及び表示装置１５２８に結合される。符号器/復号器（ＣＯＤＥＣ）１５３４もまた、信号プロセッサ１５１０に結合されうる。スピーカー１５３６及びマイクロホン１５３８は、ＣＯＤＥＣ  １５３４に結合されうる。無線インタフェース１５４０は、信号プロセッサ１５１０及び無線アンテナ１５４２に結合されうる。
【００８３】
特定の実施形態において、信号プロセッサ１５１０は、第１の画像データの第１のブロックの組の各ブロックと第２の画像データの第１のブロックの組の対応ブロックとの間のオフセットに対応する第１の動きベクトルの組を決定するように適合される画像合成モジュール１５６４を含む。画像合成モジュール１５６４は、第２の画像データの第１のブロックの組の特定のブロックに対応する第１の動きベクトルの組のうちの１つの動きベクトルをアップサンプルして、第２の画像データの第２のブロックの組に該動きベクトルを適用するように適合されうる。第２の画像データの第２のブロックの組は、該特定のブロック内に含まれる。画像合成モジュール１５６４は、第１の画像データの第２のブロックの組の各々と、第１の動きベクトルの組の該動きベクトルを適用した後の第２の画像データの第２のブロックの組の対応ブロックとの間のオフセットに対応する、第２の動きベクトルの組を決定するように適合されうる。画像合成モジュール１５６４は、調整された第２の画像データを生成するために、第２の画像データに第２の動きベクトルの組を適用するように適合されうる。画像合成モジュール１５６４は、第３の画像データを生成するために、第１の画像データと調整された第２の画像データの部分を選択的に合成するように適合されうる。
【００８４】
例えば、画像合成モジュール１５６４は、粗い動きベクトルの組４２７のうちの１つの動きベクトルをアップサンプルするための動きベクトル・アップサンプリング回路４２８を含む図４の階層的なレジストレーション回路４２０を含むことができる。アップサンプリングされた動きベクトルは、３×３グリッドのブロックのうちの特定のブロックに対応することができ、また特定のブロック内の各マクロブロックにアップサンプルされうる。画像合成モジュール１５６４はまた、粗い合成回路４６２及び微細な合成回路４６４などで、選択的に画像データを合成するための図４の階層的な合成回路４６０を含む。
【００８５】
信号プロセッサ１５１０はまた、画像合成モジュール１５６４によって処理された画像データを生成するように適合されうる。処理された画像データは、例示的な、限定的でない例として、ビデオカメラ１５７０からのビデオ・データ、無線インタフェース１５４０を介した無線送信からの画像データ、あるいはユニバーサル・シリアル・バス（ＵＳＢ）インタフェース（示されていない）を介して結合される外部デバイスのようなその他のソースからの画像データを含むことができる。
【００８６】
表示制御装置１５２６は、処理された画像データを受信し、そして表示装置１５２８に処理された画像データを提供するように構成される。加えて、メモリ１５３２は、処理された画像データを受信し、記憶するように構成されうる、また、無線インタフェース１５４０は、アンテナ１５４２による送信のために、処理された画像データを受信するように構成されうる。
【００８７】
特定の実施形態において、信号プロセッサ１５１０、表示制御装置１５２６、メモリ１５３２、ＣＯＤＥＣ  １５３４、無線インタフェース１５４０、及びカメラ・インタフェース１５６８は、システム−イン−パッケージ（system-in-package）又はシステム−オン−チップ（system-on-chip）・デバイス１５２２に含まれる。特定の実施形態において、入力デバイス１５３０及び電源１５４４は、システム・オン・チップ・デバイス１５２２に結合される。その上、特定の実施形態においては、図１５に例示されているように、表示装置１５２８、入力デバイス１５３０、スピーカー１５３６、マイクロホン１５３８、無線アンテナ１５４２、ビデオカメラ１５７０、及び電源１５４４は、システム−オン−チップ・デバイス１５２２の外部にある。しかしながら、表示装置１５２８、入力デバイス１５３０、スピーカー１５３６、マイクロホン１５３８、無線アンテナ１５４２、ビデオカメラ１５７０、及び電源１５４４は、インタフェース又は制御装置などの、システム−オン−チップ・デバイス１５２２のコンポーネントに結合されうる。
【００８８】
特定の実施形態において、システム１５００は、携帯情報端末(「ＰＤＡ」)、セルラー電話、あるいは同様のデバイスとして機能することができる。システム１５００は、入力デバイス１５３０を通じてなど、ユーザ制御可能な入力を提供するように適合されることができ、また、制御画像合成モジュール１５６４を制御し、ユーザ制御可能な入力を受信するための制御回路を含むことができる。
【００８９】
当業者は、開示された実施形態に関連して記述された様々な例示的な論理ブロック（logical blocks）、構成、モジュール、回路、及びアルゴリズムのステップが、電子ハードウェア、コンピュータ・ソフトウェア、あるいは両方の組合せとして、インプリメントされ得ることを更に評価するであろう。ハードウェアとソフトウェアのこの互換性を明確に例示するために、様々な例示的なコンポーネント、ブロック、構成、モジュール、回路、及びステップが、概してそれらの機能性の点から、上に記述された。そのような機能が、ハードウェアあるいはソフトウェアとしてインプリメントされるかどうかは、オーバーオールなシステムに課された特定のアプリケーション及び設計の制約に依存する。当業者は、それぞれの特定のアプリケーションに関して多様な仕方（ways）において、該記述された機能をインプリメントすることができるが、そのようなインプリメンテーションの決定は、本開示の範囲から逸脱すると解釈されるべきではない。
【００９０】
ここに開示された実施形態に関連して記述されるアルゴリズム又は方法のステップは、ハードウェア、プロセッサによって実行されるソフトウェア・モジュール、あるいは２つの組み合わせにおいて直接具体化（embodied）されうる。ソフトウェア・モジュールは、ランダム・アクセス・メモリ（ＲＡＭ）、フラッシュメモリ、読み出し専用メモリ（ＲＯＭ）、プログラマブル読み出し専用メモリ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、レジスタ、ハードディスク、リムーバブル・ディスク、コンパクト・ディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、あるいは当該技術において知られている記憶媒体のその他任意の形状において、常駐する（reside）ことができる。典型的な記憶媒体は、プロセッサが記憶媒体から情報を読み、またそれに情報を書くことができるように、プロセッサに結合されうる。代わりにおいて、該記憶媒体はプロセッサに統合されうる。プロセッサ及び記憶媒体は、特定用途向け集積回路（ＡＳＩＣ）に常駐することができる。ＡＳＩＣは、計算デバイス又はユーザ端末に常駐することができる。代わりにおいて、プロセッサ及び記憶媒体は、ユーザ端末又は計算デバイスにおける個別のコンポーネントとして常駐することができる。
【００９１】
開示された実施形態についての前の記述は、何れの当業者が、開示された実施形態を製造又は使用することができるようにするために提供される。これらの実施形態に対する様々な修正（modification）は、当業者にとっては、容易に）明白であることができ、ここに定義された法則は、本開示の精神又は範囲から逸脱することなく、他の実施形態に応用されうる。従って、本開示は、ここに示される実施形態に限定されるようには意図されず、次に続く特許請求の範囲によって定義されるような、法則及び新規な特徴と一致する最も広い範囲を与えられることとなる。
【図１】
2012513173.tif 000003
【図２】
2012513173.tif 000004
【図３】
2012513173.tif 000005
【図４】
2012513173.tif 000006
【図５】
2012513173.tif 000007
【図６】
2012513173.tif 000008
【図７】
2012513173.tif 000009
【図８】
2012513173.tif 000010
【図９】
2012513173.tif 000011
【図１０】
2012513173.tif 000012
【図１１】
2012513173.tif 000013
【図１２】
2012513173.tif 000014
【図１３】
2012513173.tif 000015
【図１４】
2012513173.tif 000016
【図１５】
2012513173.tif 000017
【国際調査報告】
2012513173.tif 000018
2012513173.tif 000019
2012513173.tif 000020