(57)【要約】  本開示は、シーンの超解像画像を生成する光学画像安定化動作に向けられたシステムおよび技術を説明する。システムおよび技術は、光学画像安定化システム（１１４）を通して、ユーザデバイス（１０２）のカメラシステム（１１２）の１つまたは複数の構成要素に移動を導入する（５０２）ユーザデバイス（１０２）を含む。次いで、ユーザデバイス（１０２）は、シーンの画像のそれぞれの複数のフレーム（３０６）をキャプチャし（５０４）、。当該シーンの当該画像の当該それぞれの複数のフレーム（３０６）は、それぞれ、カメラシステム（１１２）の１つまたは複数の構成要素に導入された動きの結果として、複数のフレーム（３０６）にわたるシーンの画像のサブピクセルオフセットを有する。ユーザデバイス（１０２）は、それぞれの複数のフレーム（３０６）にわたるシーンの画像のそれぞれのサブピクセルオフセットに基づいて、超解像計算を実行し、超解像計算に基づいて当該シーンの超解像画像を生成する（５０８）。
2021533660.tif 000002
【特許請求の範囲】
【請求項１】
シーンの超解像画像を生成するための方法であって、前記方法はユーザデバイスによって実行され、
光学画像安定化システムを通して、前記ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入するステップと、
前記シーンの画像のそれぞれの複数のフレームをキャプチャするステップとを備え、前記シーンの前記画像の前記それぞれの複数のフレームは、前記カメラシステムの前記１つまたは複数の構成要素に導入された移動の結果として、前記複数のフレームにわたる前記シーンの前記画像のそれぞれのサブピクセルオフセットを有し、前記方法は、
前記複数のフレームにわたる前記シーンの前記画像の前記それぞれのサブピクセルオフセットに基づいて、超解像計算を実行するステップと、
前記超解像計算に基づいて、前記シーンの前記超解像画像を生成するステップとをさらに含む、方法。
【請求項２】
前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、ファインダモードに入ることに応答して行われる、請求項１に記載の方法。
【請求項３】
前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、キャプチャコマンドの受信に応答して行われる、請求項１に記載の方法。
【請求項４】
前記ユーザデバイスの前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、前記カメラシステムの前記１つまたは複数の構成要素に面内移動を導入することを含み、前記面内移動は、２つの軸によって規定される面外移動に含まれる移動である、請求項１〜３のいずれかに記載の方法。
【請求項５】
前記ユーザデバイスの前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、前記カメラシステムの前記１つまたは複数の構成要素に面外移動を導入することを含み、前記面外移動は、２つの軸によって規定される面外移動の外側の移動である、請求項１〜４のいずれかに記載の方法。
【請求項６】
前記超解像計算を実行するステップは、
ガウス半径基底関数カーネルを計算することと、
ロバスト性モデルを計算することとを含む、請求項１〜５のいずれかに記載の方法。
【請求項７】
前記超解像計算を実行することは、前記複数のフレームにわたる被写体ぶれの影響を解析することを含む、請求項１〜６のいずれかに記載の方法。
【請求項８】
前記超解像計算を実行することは、前記複数のフレームから、以前の低解像度フレームおよび現在の低解像度フレームを使用して現在の超解像画像を生成するフレーム再帰手法を使用する、請求項１〜７のいずれかに記載の方法。
【請求項９】
前記シーンの前記画像の前記複数のフレームのサンプリングを通じて計算されるカバレッジスコアに基づいて、追加のまたは補助的な移動は、前記カメラシステムの前記１つまたは複数の構成要素に導入される、請求項１〜８のいずれかに記載の方法。
【請求項１０】
ユーザデバイスであって、
カメラシステムと、
光学画像安定化システムと、
１つまたは複数のプロセッサと、
ディスプレイと、
光学画像安定化システムドライブマネジャーアプリケーションおよび超解像マネジャーアプリケーションの命令を記憶するコンピュータ可読記憶媒体とを備え、前記命令は、前記１つまたは複数のプロセッサによって実行されると、補助的機能を実行して、前記ユーザデバイスに、
前記１つまたは複数のプロセッサが、シーンの画像をキャプチャするように前記ユーザデバイスに指示するコマンドを受信することと、
前記受信されたコマンドに基づいて、前記光学画像安定化システムを通して、前記シーンの前記画像の前記キャプチャ中に前記カメラシステムの１つまたは複数の構成要素に移動を導入することとを指示し、前記導入された動きは、複数のフレームにわたる前記画像のそれぞれのサブピクセルオフセットを有する前記シーンの前記画像のそれぞれの前記複数のフレームのキャプチャをもたらし、前記命令は前記ユーザデバイスに、
前記１つまたは複数のプロセッサが、前記複数のフレームにわたる前記シーンの前記画像の前記それぞれのサブピクセルオフセットに基づいて、超解像計算を実行することと、
前記１つまたは複数のプロセッサが、前記超解像計算に基づいて、前記シーンの超解像画像を生成することと、
前記ディスプレイが、前記シーンの前記超解像画像をレンダリングすることとをさらに指示する、ユーザデバイス。
【請求項１１】
前記ユーザデバイスは、静的な動き状態を検出する１つまたは複数のモーションセンサをさらに含む、請求項１０に記載のユーザデバイス。
【請求項１２】
前記静的な動き状態を検出することは、前記ユーザデバイスに、前記光学画像安定化システムを介して前記カメラシステムの１つまたは複数の構成要素に、同期していない移動を導入させる、請求項１１に記載のユーザデバイス。
【請求項１３】
前記ユーザデバイスは、動的な動き状態を検出する１つまたは複数のモーションセンサをさらに備える、請求項１０に記載のユーザデバイス。
【請求項１４】
前記動的な動き状態の検出は、前記ユーザデバイスに、前記光学画像安定化システムを介して前記カメラシステムの１つまたは複数の構成要素に、同期された移動を導入させる、請求項１３に記載のユーザデバイス。
【請求項１５】
請求項１〜９のいずれかに記載の方法を実行するための手段を提供するシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
デジタルレンズ一眼レフレックス（ＤＬＳＲ）カメラまたはイメージセンサを有するスマートフォンなどのユーザデバイスに関連付けられるカメラ技術は、今日、いくつかの最前線で進展している。一例として、ユーザデバイスは、イメージセンサを有するカメラシステムをＯＩＳシステムと組み合わせて、ユーザデバイスが画像をキャプチャしている間、当該ユーザデバイスの動きを補償する光学画像安定化（ＯＩＳ）カメラモジュールを含み得る。別の例として、ユーザデバイスは、シーンの複数の低解像度画像から超解像画像を生成する超解像機能を含むことができ、ここで、当該シーンの複数の低解像度画像は、カメラシステムのネイティブ解像度機能を使用してキャプチャされた複数の画像であり、当該超解像画像は、カメラシステムのネイティブ解像度機能より高い解像度である。
【０００２】
ある例では、ＯＩＳシステムの使用は、ユーザデバイスの超解像機能と互換性がないか、または競合する。例えば、シーンの複数の低解像画像が、超解像アルゴリズムが機能するためにシーンの画像の位置オフセット（または画素位置の差）を反映する必要がある場合、当該シーンの複数の低解像画像のキャプチャの間にＯＩＳシステムによって導入される安定性は、必要な位置オフセットを妨害し得る。別の例として、ユーザデバイスが、動きがない安定状態にある（そして、ＯＩＳシステムは、複数の低解像度画像のキャプチャ中に、機能しておらず、または、動きを補償していない）場合、複数の低解像度画像は、同一であり、必要な位置オフセットを有しなくてもよい。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
さらに、ユーザデバイスは、シャッタボタンの押下とほぼ同時に発生するゼロシャッタラグモードの間と同様に、シャッタボタンの押下前および押下後に発生するバーストシーケンスモードを含む、様々なモードでシーンの複数の画像をキャプチャすることができる。ＯＩＳシステムとユーザデバイスの超解像能力との間の上述の不適合性は、このような事例においてさらに悪化する。
【課題を解決するための手段】
【０００４】
概要
本開示は、シーンの超解像画像を生成するために光学画像安定化動作に向けられたシステムおよび技術を説明する。本システムおよび技術は、光学画像安定化システムを使用して、ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入するユーザデバイスを含む。次いで、ユーザデバイスは、シーンの画像のそれぞれの複数のフレームをキャプチャし、当該シーンの画像のそれぞれの複数のフレームは、カメラシステムの１つまたは複数の構成要素に導入された移動の結果として、複数のフレームにわたってシーンの画像のそれぞれのサブピクセルオフセットを有する。ユーザデバイスは、複数のフレームのそれぞれにわたる当該シーンの画像のそれぞれのサブピクセルオフセットに基づいて、超解像計算を実行し、超解像計算に基づいて当該シーンの超解像画像を生成する。
【０００５】
したがって、本システムおよび技術は、光学画像安定化（ＯＩＳ）システム性能に影響を及ぼすことなく、超解像画像を生成できる。さらに、本システムおよび技術は、ユーザを乱すことなく、カメラシステムの１つまたは複数の構成要素を安定させることができ、「ゼロシャッタラグ」モードで動作し、ユーザがシャッタの動きを押すのを待つ必要がなく、高品質画像を得ることにおよびユーザの経験に有害であり得る入力ラグおよび待ち時間を最小化する。
【０００６】
いくつかの態様では、シーンの超解像画像を生成するために使用される方法が説明される。本方法は、ユーザデバイスが、当該ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入することを含む。この方法の一部として、ユーザデバイスは、シーンの画像のそれぞれの複数のフレームをキャプチャし、当該シーンの画像のそれぞれの複数のフレームは、カメラシステムの１つまたは複数の構成要素に導入された移動の結果として、複数のフレームにわたってシーンの画像のそれぞれのサブピクセルオフセットを有する。この方法は継続し、当該それぞれの複数のフレームにわたるシーンの画像のそれぞれのサブピクセルオフセットに基づいて、ユーザデバイスは、超解像計算を実行し、超解像計算に基づいて当該シーンの超解像画像を生成する。
【０００７】
さらに他の態様では、ユーザデバイスが説明される。当該ユーザデバイスは、イメージセンサを有するカメラシステムと、ＯＩＳシステムと、プロセッサと、ディスプレイとを含む。ユーザデバイスはまた、プロセッサによって実行されると、当該ユーザデバイスに一連の動作を実行するように指示する相補的機能を実行する、光学画像安定化システムドライブマネジャーアプリケーションおよび超解像マネジャーアプリケーションの命令を記憶する、コンピュータ可読記憶媒体を含む。
【０００８】
当該一連の動作は、１つまたは複数のプロセッサによって、シーンの画像をキャプチャするようにユーザデバイスに指示するコマンドを受信することを含む。当該一連の動作はまた、当該シーンの画像をキャプチャする間にカメラシステムの１つまたは複数の構成要素に移動を導入することを含み、当該導入された動きは、複数のフレームにわたって当該画像のそれぞれのサブピクセルオフセットを有するシーンの画像のそれぞれの複数のフレームのキャプチャと、１つまたは複数のプロセッサによって当該複数のフレームにわたって当該シーンの画像のサブピクセルオフセットに基づいて、超解像計算を実行することと、をもたらす。当該一連の動作は、超解像計算に基づいて１つまたは複数のプロセッサによって当該シーンの超解像画像を生成することと、ディスプレイによって当該シーンの超解像画像をレンダリングすることと、をさらに含む。
【０００９】
１つまたは複数の実施形態の詳細は、添付の図面および以下の説明に記載される。他の特徴および利点は、当該説明および図面ならびに特許請求の範囲から明らかとなるであろう。この概要は、詳細な説明および図面においてさらに説明される主題を紹介するために提供される。したがって、読者は、本概要が本質的な特徴を説明し、また、請求される主題の範囲を制限すると、考えるべきではない。
【００１０】
本開示は、シーンの超解像画像を生成するために光学画像安定化動作に関連付けられる１つまたは複数の態様の詳細を説明する。
【図面の簡単な説明】
【００１１】
【図１】超解像画像シーンを作成するための光学画像安定化動作の様々な態様が実行される動作環境の例を示す図である。
【図２】ＯＩＳシステムによって導入される移動の例示的な態様を例示する図である。
【図３】動き状態を検出し、運動をＯＩＳシステムに導入することに関連付けられる例示的な態様を示す図である。
【図４】サブピクセルオフセットを有する複数のフレームを使用して超解像計算を行い、シーンの超解像画像を生成する例示的態様を示す図である。
【図５】シーンの超解像画像を生成する光学画像安定化動作のために使用される例示的な方法を示す図である。
【発明を実施するための形態】
【００１２】
詳細な説明
本開示は、シーンの超解像画像を生成するための光学画像安定化動作に向けられたシステムおよび技術を説明する。
【００１３】
シーンの超解像画像を生成する光学画像安定化動作のために説明されるシステムおよび技術の特徴および概念は、任意の数の異なる環境、システム、デバイス、および／または様々な構成において実施され得るが、態様は、以下の例示的なデバイス、システム、および構成の文脈において説明される。
【００１４】
動作環境の例
図１は、シーンの超解像画像を生成するための光学画像安定化動作の様々な態様が実行される動作環境例１００を示す。例示されるように、ユーザデバイス１０２は三脚１０４に固定され、それがキャプチャしているシーンの超解像画像１０６をレンダリングしている。スマートフォンとして例示されているが、ユーザデバイス１０２は、ＤＬＳＲカメラまたはタブレットなど、画像キャプチャ機能を有する別のタイプのデバイスであり得る。ユーザデバイス１０２の三脚１０４への固定は、ユーザデバイス１０２が動きなく静止しているようにユーザデバイス１０２を制約する。
【００１５】
ユーザデバイス１０２は、ユーザデバイス１０２の動き状態を検出する１つまたは複数のモーションセンサ１０８（例えば、ジャイロスコープ、加速度計）の組み合わせを含む。ユーザデバイス１０２が三脚１０４に固定されている場合のように、いくつかの例では、検出された動き状態は、静的な動き状態（すなわち、ユーザデバイス１０２は移動しない）であり得る。ユーザデバイス１０２が三脚１０４から取り外される場合のように、他の事例では、検出された動き状態は、動的な動き状態（すなわち、静的な動き状態ではない任意の動き状態）であり得る。
【００１６】
ユーザデバイスはまた、カメラシステム１１２およびＯＩＳシステム１１４を含む光学画像安定化（ＯＩＳ）カメラモジュール１１０を含む。カメラシステム１１２は、レンズ、アパーチャ、および１つまたは複数のイメージセンサ（例えば、４０メガピクセル（ＭＰ）、３２ＭＰ、１６ＭＰ、８ＭＰ）などの複数の構成要素を含み得る。当該イメージセンサは、相補型金属酸化膜半導体（ＣＭＯＳ）イメージセンサまたは電荷結合素子（ＣＣＤ）イメージセンサを含み得る。ある例では、イメージセンサは、イメージセンサの画素をオーバーレイし、画素を通して記録された光の、色波長に関連付けられる強度を制限するカラーフィルタアレイ（ＣＦＡ）を含み得る。このようなＣＦＡの例は、赤色波長、青色波長、および緑色波長に従って光をフィルタリングするバイエル ＣＦＡである。
【００１７】
ＯＩＳシステム１１４は、一般に、カメラシステム１１２の１つまたは複数の構成要素の物理的位置または向きを修正するための機構を提供する。ＯＩＳシステム１１４は、カメラシステム１１２の１つまたは複数の構成要素の面外移動内位置、面外移動外位置、ピッチ、ヨー、または傾きを変化させることができるマイクロスケールモータおよび磁気誘導位置決め機構を含み得る。面外移動内位置は、２つの軸によって規定される面外移動内にある位置であり得、面外移動外位置は、２つの軸によって規定される面外移動の外側にある別の位置であり得る。
【００１８】
ユーザデバイス１０２はまた、１つまたは複数のプロセッサ１１６の組み合わせを含む。プロセッサ１１６は、シリコン、ポリシリコン、高ｋ誘電体、銅などの様々な材料で構成されたシングルコアプロセッサまたはマルチコアプロセッサであり得る。複数のプロセッサ１１６（例えば、２つ以上のプロセッサの組み合わせ）の例では、複数のプロセッサ１１６は、中央処理ユニット（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）、デジタル信号プロセッサ（ＤＳＰ）、または画像処理ユニット（ＩＰＵ）を含み得る。さらに、そのような例では、複数のプロセッサ１１６は、パイプライン処理を使用して２つ以上の計算動作を実行することができる。
【００１９】
ユーザデバイス１０２はまた、ＯＩＳドライブマネジャー１２０および超解像マネジャー１２２の形での実行可能な命令を含むコンピュータ可読記憶媒体（ＣＲＭ）１１８を含む。本明細書で説明するＣＲＭ１１８は、伝搬信号を除外する。ＣＲＭ１１８は、ＯＩＳドライブマネジャー１２０および超解像マネジャー１２２を記憶するために使用可能な、ランダムアクセスメモリ（ＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、不揮発性ＲＡＭ（ＮＶＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、またはフラッシュメモリなどの任意の適切なメモリまたは記憶装置を含み得る。
【００２０】
ある例では、ＯＩＳドライブマネジャー１２０および超解像マネジャー１２２は、ＯＩＳ動き（例えば、カメラシステム１１２の１つまたは複数の要素の位置への物理的移動または変更）を生成し、サブピクセルオフセットを有するシーンの画像の複数のフレームをキャプチャし、シーンの超解像画像（１０６）を計算するのに有効な補完的機能をユーザデバイス１０２に実行させるように、プロセッサ１１６によって実行され得る。ある例では、ＯＩＳ移動は、ユーザデバイスを操作するユーザの自然なハンドヘルドの動き（例えば、当該ユーザの手の震えまたは他の自然な生体力学）を通じて現れるであろう、カメラシステム１１２に対する位置の変化に対応し得る。
【００２１】
ＯＩＳドライブマネジャー１２０のコードまたは命令は、プロセッサ１１６を使用して、ＯＩＳ移動を行なうようにＯＩＳシステム１１４に指示するために、実行され得る。ある例では、ＯＩＳ移動は、非同期移動（例えば、所定の範囲の位置変位内での、かつ時間的同期を有さない移動）であり得る。そのような非同期移動は、静的な動き状態に適用可能であり得る。
【００２２】
他の事例では、ＯＩＳ移動は、同期移動（例えば、ユーザデバイス１０２の検出された動きに依存し、かつ、時間的に同期された位置変位の範囲に対応する移動）であり得る。そのような同期移動は、動的な動き状態に適用可能であり、ＯＩＳシステム１１４に導入された別のＯＩＳ動きに重畳され得る。
【００２３】
超解像マネジャー１２２のコードまたは命令は、プロセッサ１１６によって実行されると、ＯＩＳドライブマネジャー１２０の指示の下で実行される動作に相補的な複数の動作を実行するように、ユーザデバイス１０２に指示することができる。そのような動作は、シーンの画像の複数のフレームをバーストシーケンスでキャプチャし、超解像計算を実行し、当該ユーザデバイスのディスプレイ１２４を使用して当該シーンの超解像画像１０６をレンダリングするように、カメラシステム１１２に命令することを含み得る。
【００２４】
ＯＩＳ移動（例えば、ＯＩＳシステム１１４によって、ＯＩＳドライブマネジャー１２０の指示の下でカメラシステム１１２に導入された動き）のために、カメラシステム１１２は、シーンの画像の複数の変化例１２６，１２８および１３０をキャプチャすることができ、当該複数の変化例１２６〜１３０は、複数のフレームにわたる画像のそれぞれのサブピクセルオフセットを有するシーンの画像の複数のフレームに対応する。
【００２５】
ＯＩＳ移動中、ＯＩＳドライブマネジャー１２０は、シーンの画像の複数のフレームの一様なサンプリングを通じて、カバレッジスコアを分析的に又は数値的に計算することができる。計算されたカバレッジスコアは、ある例では、追加の又は補助的なＯＩＳ移動に、キャプチャされた複数の変化例１２６〜１３０の画像コンテンツを定義させることができる。この移動は、当該シーンの画像の全カバレッジを保証し、より高品質の画像を生成する。
【００２６】
超解像計算は、例えば、シーンの超解像画像１０６を生成するロバスト性モデル計算と組み合わされるガウス半径基底関数（ＲＢＦ）計算を含み得る。当該超解像計算は、シーンの画像の変化例１２６〜１３０（例えば、複数のフレームにわたる画像のそれぞれのサブピクセルオフセットを有するシーンの画像の複数のフレーム）を使用して、シーンの超解像画像１０６を作成する。
【００２７】
図２は、ＯＩＳシステムによって導入される移動の例示的態様２００を示す。態様２００は、図１のユーザデバイス１０２のカメラシステム１１２およびＯＩＳシステム１１４を含む。
【００２８】
図示のように、ＯＩＳシステム１１４は、カメラシステム１１２に移動を導入することができる。「面内」移動は、ｘ軸２０２およびｙ軸２０４によって規定される面外移動内に含まれる移動であり得る。ｘ軸２０２およびｙ軸２０４によって規定される面外移動は、シーンの超解像画像１０６を有する別の面外移動に対応する（例えば、平行である）。「面外」移動は、ｘ軸２０２およびｙ軸２０４によって規定される面外移動の外側にある移動であり得、ｚ軸２０６に沿った移動、またはピッチ、ヨー、もしくはロールを含む別の移動であり得る。
【００２９】
ＯＩＳシステム１１４によって導入される移動は、１つまたは複数の因子によってトリガされ得る。例えば、ＯＩＳシステム１１４に導入される移動は、ユーザデバイス１０２がファインダモードに入ったことに応答し、ユーザデバイス１０２がキャプチャコマンドを受信したことに応答し、または、ユーザデバイス１０２がモーションセンサ１０８を通じて動き状態を検出したことに応答し得る。ＯＩＳシステム１１４によって導入される移動はまた、そのような因子の１つまたは複数の組み合わせによってトリガされ得る。
【００３０】
図３は、動き状態を検出し、移動をＯＩＳシステムに導入することに関連付けられる例示的な態様３００を示す。例示的態様３００は、図１のユーザデバイス１０２および図２のＯＩＳカメラモジュール１１０によって実行され得る。（プロセッサ１１６によって実行される）ＯＩＳドライブマネジャー１２０は、ＯＩＳシステム１１４を介してカメラシステム１１２に移動を導入することができる。ある例では、ＯＩＳシステム１１４を通じてカメラシステム１１２に導入された移動は、シーンの画像のキャプチャ中に単にカメラシステム１１２を安定化させ得るが、他の例では、ＯＩＳシステム１１４を通じてカメラシステム１１２に導入された移動は、当該シーンの複数の画像のキャプチャ中にシーンの複数の画像にサブピクセルオフセットを導入することができる。さらに他の事例では、ＯＩＳシステム１１４を通してカメラシステム１１２に導入される移動は、シーンの画像の一部のフレームのキャプチャを安定させ（例えば、明確にするためにサブピクセルオフセットはない）、当該シーンの画像の他のフレームのキャプチャ中にオフセットを導入する（例えば、超解像のためにサブピクセルオフセットを保存する）移動の組み合わせであり得る。
【００３１】
例示的態様３００は、動き状態３０２の検出、移動の導入３０４、およびサブピクセルオフセットを有する複数のフレーム３０６（図１の変化例１２６〜１２８に対応するフレーム３０８〜３１２）のキャプチャを含む。ユーザデバイス１０２は、バーストシーケンス中に、シーンの超解像画像１０６の別の解像度より低い解像度を使用して、複数のフレーム３０６をキャプチャすることができる。
【００３２】
動き状態３０２の検出は、静的な動き状態３１４または動的な動き状態３１８を検出することを含み得る。カメラシステム１１２への移動の導入３０４は、バーストシーケンス中に、ＯＩＳドライブマネジャー１２０が非同期のＯＩＳ動き３１６または同期されたＯＩＳ移動３２０を導入することを含み得る。
【００３３】
同期されたＯＩＳ移動３２０の場合、ＯＩＳシステム１１４は、検出された動的な動き状態３１８からカメラシステム１１２を安定させる（例えば、カメラシステム１１２を安定化させて、シーンの画像のフレームを明瞭かつサブピクセルオフセットなしにキャプチャする）ように意図された第１の移動を導入することができる。同期された移動３２０は、シーンの画像のフレームにわたるサブピクセルオフセットを生成または維持することを目的として、第１の移動（例えば、検出された動的な動き状態３１８に関連付けられる反対の移動である移動）と同期され、かつ、重畳される第２の移動とすることができる。第１の移動の大きさに依存して、第２の移動の重ね合わせは、本質的に建設的または破壊的であり得る（例えば、第１の移動に「加算する」または「減算する」）。さらに、第２の移動のいくつかの部分は、画素より大きくてもよく、第２の移動の他の部分は、画素より小さくてもよい。
【００３４】
バーストシーケンスは、たとえば、１ミリ秒〜３ミリ秒、１ミリ秒〜５ミリ秒、または１／２ミリ秒〜１０ミリ秒の範囲であり得る設定された時間間隔で、複数のフレーム３０６をキャプチャすることを含み得る。さらに、いくつかの例では、バーストシーケンスの時間間隔は、ユーザデバイスの動きに基づいて可変であり得る（例えば、ユーザデバイス１０２の高速動作中の時間間隔は、ユーザデバイス１０２の低速動作中の別の時間間隔よりも「短く」、オフセットを１画素未満に保つことができる）。
【００３５】
バーストシーケンス中の移動の導入３０４は、複数のフレーム３０６がそれぞれ相対的なサブピクセルオフセットを有するように、ユーザデバイス１０２が複数のフレーム３０６をキャプチャすることをもたらす。図示されるように、フレーム３１０の画像は、フレーム３０８の画像に対して、水平に１／２画素、垂直に１／２画素、それぞれオフセットされる。さらに、図示されるように、フレーム３１２の画像は、フレーム３０８の画像に対して水平に１／４ピクセル、オフセットされる。それぞれの相対的なサブピクセルオフセットは、サブピクセルオフセットの異なる大きさ及び組み合わせを含み得る（例えば、１つのフレームに関連付けられる１つのサブピクセルのオフセットは、水平に１／４ピクセル、垂直に３／４ピクセルであり得、別のフレームに関連付けられる別のサブピクセルオフセットは、水平に０ピクセル、垂直に１／２ピクセルであり得る）。一般に、本開示によって説明される技術およびシステムは、不均一なサブピクセルオフセットを含む、フレーム３０８〜３１２の図示および説明よりもランダムなサブピクセルオフセットに対応することができる。
【００３６】
図４は、ＯＩＳ移動によって導入されたサブピクセルオフセットを有する複数のフレーム３０６を使用して、超解像計算を実施し、シーンの超解像画像を生成する例示的態様４００を示す。例示的な態様４００は、図１〜３の要素を使用することができ、超解像計算を実行することは、図１のユーザデバイス１０２によって実行され、サブピクセルオフセットは、図２のＯＩＳ移動の結果であり、サブピクセルオフセットを有する複数のフレームは、図３の複数のフレーム３０６である。
【００３７】
図４に示されるように、複数のフレーム３０６は、ユーザデバイス１０２によって実行される超解像計算４０２に入力される。超解像計算４０２をサポートするアルゴリズムは、ユーザデバイス１０２の超解像マネジャー１２２内に存在することができる。ある例では、ユーザデバイス１０２（たとえば、複数のプロセッサ１１６）は、パイプライン処理を使用して超解像計算４０２の一部分を実行することができる。一般に、超解像計算４０２は、様々なアルゴリズムおよび技術を使用することができる。
【００３８】
超解像計算４０２の第１の例は、ガウス半径基底関数（ＲＢＦ）カーネル計算を含む。ガウスＲＢＦカーネル計算を実行するために、ユーザデバイス１０２は、色チャネルに対応するそれぞれの色固有画像面外移動を生成するために、複数のフレーム３０６の各フレームからの画素信号をフィルタリングする。次いで、ユーザデバイス１０２は、それぞれの色固有画像面外移動を、選択された参照フレームに位置合わせする。
【００３９】
超解像計算４０２の第１の例を続けると、ガウスＲＢＦカーネル計算は、共分散行列を計算するためにユーザデバイス１０２が局所勾配構造テンソルを分析することを含み得る。共分散行列を計算することは、以下の数学的関係に依存し得る：
【００４０】
【数１】
2021533660.tif 000003
【００４１】
数学的関係（１）において、Ωはカーネル共分散行列を表し、ｅ１およびｅ２は直交方向ベクトルおよび関連付けられる２つの固有値λ１およびλ２を表し、ｋ１およびｋ２は所望のカーネル分散を制御する。
【００４２】
局所勾配構造テンソルを計算することは、以下の数学的関係に依存し得る：
【００４３】
【数２】
2021533660.tif 000004
【００４４】
数学的関係（２）において、ＩｘおよびＩｙは、それぞれ水平方向および垂直方向の局所画像勾配を表す。
【００４５】
また、超解像計算４０２の第１の例の一部として、ユーザデバイス１０２は、色平均および空間標準偏差計算を含む統計的近隣モデルを使用してロバスト性モデルを計算することができる。ロバスト性モデル計算は、ある例では、色差を補償するためにノイズ除去計算を含み得る。
【００４６】
超解像画像計算４０２は、複数のフレーム３０６の各々について（たとえば、フレーム３０８，３１０および３１２について）、それぞれの色面外移動に関連付けられる色チャネルへのピクセルの寄与を推定するのに有効である。
【００４７】
超解像計算４０２の第１の例を続けると、色面外移動は、正規化計算のための以下の数学的関係を使用して累積され得る：
【００４８】
【数３】
2021533660.tif 000005
【００４９】
数学的関係（３）において、ｘおよびｙはピクセル座標を表し、和Σｎは寄与フレーム上（またはそれらの和である）で動作し、和Σｉは局所近傍内のサンプルの和であり、ｃｎ，ｉは所与のフレームｎおよびサンプルｉにおけるバイエルピクセルの値を表し、ｗｎ，ｉは局所サンプル重みを表し、
【００５０】
【数４】
2021533660.tif 000006
【００５１】
は局所ロバスト性を表す。累積された色面外移動は、シーンの超解像画像１０６を作成するために組み合わされてもよい。
【００５２】
超解像計算４０２の第２の例は、モーションブラーの影響を分析することを含み得る。そのような超解像計算は、量子化誤差に起因するピクセル測定における不確実性に対処する「解のボリューム」計算手法を使用して、複数の画像（たとえば、複数のフレーム３０６）の被写体ぶれ（motion blur）の影響を分析することができる。
【００５３】
超解像計算４０２の第３の例は、フレーム再帰手法を使用する計算を含み得る。そのような手法は、以前の低解像度フレームと、以前に計算された高解像度画像と、現在の低解像度フレームとを繰り返し使用して、現在の超解像画像を作成することができる（たとえば、前の低解像度フレームおよび現在の低解像度フレームは、それぞれフレーム３０８およびフレーム３１０であり得る）。再帰的手法は、正規化された低解像度フローマップを推定するためのフロー推定と、高解像度フローマップを生成するためにスケーリング係数で低解像度フローマップをアップスケーリングすることと、高解像度フローマップを使用して前の高解像度画像をワープすることと、ワープされた前の高解像度画像を低解像度空間にマッピングすることと、低解像度空間のマッピングを現在の超解像画像に連結することとを含み得る。
【００５４】
図４の超解像計算４０２はまた、前の例で説明されるもの以外の又は追加の、アルゴリズムおよび技術を使用してもよい。そのようなアルゴリズムおよび技術は、機械学習アルゴリズムおよび技術を含み得る。それにもかかわらず、本開示によれば、カメラシステム１１２の１つまたは複数の構成要素に移動を導入することは、他のアルゴリズムおよび技術に適用可能である。
【００５５】
例示的な方法
例示的な方法５００は、図５を参照して、シーンの超解像画像を生成するための光学画像安定化動作に関連付けられる１つまたは複数の態様に従って説明される。一般に、本明細書で説明される構成要素、モジュール、方法、および動作はいずれも、ソフトウェア、ファームウェア、ハードウェア（例えば、固定論理回路）、手動処理、または、それらの任意の組み合わせを使用して実施され得る。例示的な方法のいくつかの動作は、コンピュータ処理システムに対してローカルおよび／またはリモートであるコンピュータ可読記憶メモリに記憶された実行可能な命令の一般的な文脈で説明され得、また、実施形態は、ソフトウェアアプリケーション、プログラム、関数などを含み得る。代替的にまたは追加的に、本明細書で説明される機能性のいずれかは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、特定用途向け標準製品（ＡＳＳＰ）、システムオンチップシステム（ＳｏＣ）またはＣＰＬＤ（Complex Programmable Logic Device）などの、かつ、これらに限定されない、１つまたは複数のハードウェア論理構成要素によって少なくとも部分的に実行され得る。
【００５６】
図５は、シーンの超解像画像を作成することの一部として使用される方法５００の例示的な態様を示す。方法５００は、実行され得る動作を指定する一組のブロック５０２〜５０８の形態で説明される。しかしながら、動作が、代替の順序で、完全に若しくは部分的に重複する方法で、又は反復的な方法で、実施され得るように、当該動作は、必ずしも、図５に示される又は本明細書で説明される順序に限定されない。さらに、方法５００によって表される動作は、図２〜４の要素を使用して図１のユーザデバイス１０２によって実行されるという文脈において説明されるが、動作（または動作の一部）は、超解像マネジャー１２２の命令（または命令の一部）を含むサーバまたはクラウドコンピューティングデバイス等のように、計算能力を有する１つまたは複数の他のデバイスによって実行され得る。
【００５７】
ブロック５０２において、ユーザデバイス１０２（例えば、ＯＩＳドライブマネジャー１２０のコードを実行するプロセッサ１１６）は、カメラシステム１１２の１つまたは複数の構成要素に移動を導入する（例えば、ＯＩＳシステム１１４は、カメラシステム１１２に移動を導入する）。ある例では、ユーザデバイス１０２は、ファインダモードに入ることに応答して移動を導入することができ、他の例では、ユーザデバイス１０２は、キャプチャコマンドを受信することに応答して移動を導入することができる。移動を導入することは、カメラシステム１１２の１つまたは複数の構成要素に面内移動を導入すること、又は、面外移動を導入することを含み得る。
【００５８】
ブロック５０４で、ユーザデバイス１０２は、カメラシステム１１２の１つまたは複数の構成要素に導入された移動の結果として、複数のフレームにわたってシーン３０６の画像のそれぞれのサブピクセルオフセットを有するシーンの画像のそれぞれの複数のフレーム３０６をキャプチャする。
【００５９】
ブロック５０６において、ユーザデバイス１０２（例えば、超解像マネジャー１２２の命令を実行するプロセッサ１１６）は、複数のフレームにわたるシーンの画像のそれぞれのサブピクセルオフセットに基づいて、超解像計算４０２を実行する。超解像計算４０２の例は、（ｉ）ガウス半径基底関数カーネルを計算すること、および、ロバスト性モデルを計算すること、（ｉｉ）複数のフレームにわたるモーションブラーの影響を分析すること、および（ｉｉｉ）複数のフレームから、以前の低解像度フレームおよび現在の低解像度フレームを使用して現在の超解像画像を生成するフレーム再帰手法を使用することを含む。
【００６０】
ブロック５０８において、超解像計算４０２に基づいて、ユーザデバイス１０２（例えば、超解像マネジャー１２２の命令を実行するプロセッサ１１６）は、シーンの超解像画像１０６を作成する。
【００６１】
例示的な方法５００はまた、シーンの画像の複数のフレームのサンプリングを通じて計算されるカバレッジスコアに基づいて、移動を変更することを含み得る。
【００６２】
本開示は、シーンの超解像画像を生成する光学画像安定化動作を対象とするシステムおよび技術を説明するが、添付の特許請求の範囲の主題は、記載される特定の特徴または方法に必ずしも限定されないことを理解されたい。むしろ、特定の特徴および方法は、シーンの超解像画像を生成する光学画像安定化動作の使用が実施され得る例示的な方法として開示される。
【００６３】
上記の説明に加えて、本明細書で説明されるシステム、プログラム、または特徴がユーザ情報（例えば、ユーザによってキャプチャされた画像、システムによって計算された超解像画像、ユーザのソーシャルネットワーク、社会活動もしくはアクティビティに関する情報、職業、ユーザの嗜好、またはユーザの現在位置）の収集を可能にし得る場合及び時と、ユーザがサーバからコンテンツまたは通信を送信された場合と、の両方に関して、ユーザが選択することを可能にする制御をユーザに提供することができる。加えて、特定のデータは、個人的に識別可能な情報が取り除かれるように、記憶または使用される前に１つまたは複数の方法で処理されてもよい。例えば、ユーザのアイデンティティは、ユーザのために個人的に識別可能な情報が判別できないように扱われてもよく、または、ユーザの地理的位置は、当該ユーザの特定の位置が判別され得ないように、位置情報が得られた場所（例えば、市、郵便番号、または州のレベル）で一般化されてもよい。したがって、ユーザは、当該ユーザに関してどの情報が収集されるか、その情報がどのように使用されるか、および、どの情報がユーザに提供されるかについて制御することができる。
【００６４】
以下に、いくつかの例が記載される。
例１：シーンの超解像画像を生成するための方法であって、当該方法はユーザデバイスによって実行され、光学画像安定化システムを通して、ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入することと、シーンの画像のそれぞれの複数のフレームをキャプチャすることとを備え、当該シーンの画像のそれぞれの複数のフレームは、カメラシステムの１つまたは複数の構成要素に導入された移動の結果として、複数のフレームにわたって当該シーンの画像のそれぞれのサブピクセルオフセットを有し、複数のフレームにわたるシーンの画像のそれぞれのサブピクセルオフセットに基づいて、超解像計算を実行することと、超解像計算に基づいてシーンの超解像画像を生成することとを備える。
【００６５】
例２：例１に記載の方法であって、カメラシステムの１つまたは複数の構成要素に当該移動を導入することは、ファインダモードに入ることに応答して行われる。
【００６６】
例３：例１に記載の方法であって、カメラシステムの１つまたは複数の構成要素に当該移動を導入することは、キャプチャコマンドの受信に応答して行われる。
【００６７】
例４：例１〜３のいずれか１つに記載の方法であって、ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入することは、カメラシステムの１つまたは複数の構成要素に面内移動を導入することを含み、当該面内移動は、２つの軸によって規定される面外移動に含まれる移動である。
【００６８】
例５：例１〜４のいずれかに記載の方法であって、ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入することは、カメラシステムの１つまたは複数の構成要素に面外移動を導入することを含み、当該面外移動は、２つの軸によって規定される面外移動の外側の移動である。
【００６９】
例６：例１〜５のいずれかに記載の方法であって、超解像計算を実行することは、ガウス半径基底関数カーネルを計算することと、ロバスト性モデルを計算することとを含む。
【００７０】
例７：例１〜６のいずれか１つに記載の方法であって、超解像計算を実行することは、複数のフレームにわたる被写体ぶれの影響を分析することを含む。
【００７１】
例８：例１〜７のいずれか１つに記載の方法であって、超解像を実行することは、現在の超解像画像を生成するために、複数のフレームから前の低解像度フレームおよび現在の低解像度フレームを使用するフレーム再帰手法を使用する。
【００７２】
例９：実施例１〜８のいずれか１つに記載の方法であって、追加のまたは補助的な移動は、当該シーンの画像の複数のフレームのサンプリングを通じて計算されるカバレッジスコアに基づいて、カメラシステムの１つまたは複数の構成要素に導入される。
【００７３】
例１０：ユーザデバイスであって、カメラシステムと、光学画像安定化システムと、１つまたは複数のプロセッサと、ディスプレイと、光学画像安定化システムドライブマネジャーアプリケーションおよび超解像マネジャーアプリケーションの命令を記憶するコンピュータ可読記憶媒体とを備え、当該命令は、当該１つまたは複数のプロセッサによって実行されると、補助的機能を実行して、当該ユーザデバイスに、当該１つまたは複数のプロセッサがコマンドを受信するように指示し、当該コマンドは当該ユーザデバイスに、シーンの画像を取り込むことと、受信されたコマンドに基づいて、かつ、光学画像安定化システムを通して、当該シーンの画像のキャプチャ中にカメラシステムの１つまたは複数の構成要素に移動を導入することとを指示し、当該導入された動きは、複数のフレームにわたる画像のそれぞれのサブピクセルオフセットを有するシーンの画像のそれぞれの複数のフレームのキャプチャをもたらし、当該コマンドは当該ユーザデバイスに、当該１つまたは複数のプロセッサが複数のフレームにわたるシーンの画像のそれぞれのサブピクセルオフセットに基づいて超解像計算を実行することと、当該１つまたは複数のプロセッサが超解像計算に基づいてシーンの超解像画像を生成することと、シーンの超解像画像をディスプレイでレンダリングることとを指示する。
【００７４】
例１１：例１０に記載のユーザデバイスであって、当該ユーザデバイスは、静的な動き状態を検出する１つまたは複数のモーションセンサをさらに含む。
【００７５】
例１２：例１１に記載のユーザデバイスであって、当該静的な動き状態を検出することは、当該ユーザデバイスに、当該光学画像安定化システムを介して、当該カメラシステムの１つまたは複数の構成要素に、同期されていない移動を導入させる。
【００７６】
例１３：例１０に記載のユーザデバイスであって、当該ユーザデバイスは、動的な動き状態を検出する１つまたは複数のモーションセンサをさらに含む。
【００７７】
例１４：例１３に記載のユーザデバイスであって、動的な動き状態を検出することは、当該ユーザデバイスに、光学画像安定化システムを介して、カメラシステムの１つまたは複数の構成要素に、同期された移動を導入させる。
【００７８】
例１５：例１〜９のいずれかに記載の方法を実行するための手段を提供するシステム。
例１６：例１〜９のいずれかに記載の方法を実行するように構成されたユーザデバイス。
【００７９】
例１７：命令を含むコンピュータ可読記憶媒体であって、当該命令は実行されると、例１〜９のいずれかに記載の方法を実行するようにプロセッサを構成する。
【図１】
2021533660.tif 000007
【図２】
2021533660.tif 000008
【図３】
2021533660.tif 000009
【図４】
2021533660.tif 000010
【図５】
2021533660.tif 000011
【手続補正書】
【提出日】令和3年2月5日(2021.2.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
シーンの超解像画像を生成するための方法であって、前記方法はユーザデバイスによって実行され、
光学画像安定化システムを通して、前記ユーザデバイスのカメラシステムの１つまたは複数の構成要素に移動を導入するステップと、
前記シーンの画像のそれぞれの複数のフレームをキャプチャするステップとを備え、前記シーンの前記画像の前記それぞれの複数のフレームは、前記カメラシステムの前記１つまたは複数の構成要素に導入された移動の結果として、前記複数のフレームにわたる前記シーンの前記画像のそれぞれのサブピクセルオフセットを有し、前記方法は、
前記複数のフレームにわたる前記シーンの前記画像の前記それぞれのサブピクセルオフセットに基づいて、超解像計算を実行するステップと、
前記超解像計算に基づいて、前記シーンの前記超解像画像を生成するステップとをさらに含む、方法。
【請求項２】
前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、ファインダモードに入ることに応答して行われる、請求項１に記載の方法。
【請求項３】
前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、キャプチャコマンドの受信に応答して行われる、請求項１に記載の方法。
【請求項４】
前記ユーザデバイスの前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、前記カメラシステムの前記１つまたは複数の構成要素に面内移動を導入することを含み、前記面内移動は、２つの軸によって規定される面外移動に含まれる移動である、請求項１〜３のいずれかに記載の方法。
【請求項５】
前記ユーザデバイスの前記カメラシステムの前記１つまたは複数の構成要素に移動を導入することは、前記カメラシステムの前記１つまたは複数の構成要素に面外移動を導入することを含み、前記面外移動は、２つの軸によって規定される面外移動の外側の移動である、請求項１〜４のいずれかに記載の方法。
【請求項６】
前記超解像計算を実行するステップは、
ガウス半径基底関数カーネルを計算することと、
ロバスト性モデルを計算することとを含む、請求項１〜５のいずれかに記載の方法。
【請求項７】
前記超解像計算を実行することは、前記複数のフレームにわたる被写体ぶれの影響を解析することを含む、請求項１〜６のいずれかに記載の方法。
【請求項８】
前記超解像計算を実行することは、前記複数のフレームから、以前の低解像度フレームおよび現在の低解像度フレームを使用して現在の超解像画像を生成するフレーム再帰手法を使用する、請求項１〜７のいずれかに記載の方法。
【請求項９】
前記シーンの前記画像の前記複数のフレームのサンプリングを通じて計算されるカバレッジスコアに基づいて、追加のまたは補助的な移動は、前記カメラシステムの前記１つまたは複数の構成要素に導入される、請求項１〜８のいずれかに記載の方法。
【請求項１０】
ユーザデバイスであって、
カメラシステムと、
光学画像安定化システムと、
１つまたは複数のプロセッサと、
ディスプレイと、
光学画像安定化システムドライブマネジャーアプリケーションおよび超解像マネジャーアプリケーションの命令を記憶するコンピュータ可読記憶媒体とを備え、前記命令は、前記１つまたは複数のプロセッサによって実行されると、補助的機能を実行して、前記ユーザデバイスに、
前記１つまたは複数のプロセッサが、シーンの画像をキャプチャするように前記ユーザデバイスに指示するコマンドを受信することと、
前記受信されたコマンドに基づいて、前記光学画像安定化システムを通して、前記シーンの前記画像の前記キャプチャ中に前記カメラシステムの１つまたは複数の構成要素に移動を導入することとを指示し、前記導入された動きは、複数のフレームにわたる前記画像のそれぞれのサブピクセルオフセットを有する前記シーンの前記画像のそれぞれの前記複数のフレームのキャプチャをもたらし、前記命令は前記ユーザデバイスに、
前記１つまたは複数のプロセッサが、前記複数のフレームにわたる前記シーンの前記画像の前記それぞれのサブピクセルオフセットに基づいて、超解像計算を実行することと、
前記１つまたは複数のプロセッサが、前記超解像計算に基づいて、前記シーンの超解像画像を生成することと、
前記ディスプレイが、前記シーンの前記超解像画像をレンダリングすることとをさらに指示する、ユーザデバイス。
【請求項１１】
前記ユーザデバイスは、静的な動き状態を検出する１つまたは複数のモーションセンサをさらに含む、請求項１０に記載のユーザデバイス。
【請求項１２】
前記静的な動き状態を検出することは、前記ユーザデバイスに、前記光学画像安定化システムを介して前記カメラシステムの１つまたは複数の構成要素に、同期していない移動を導入させる、請求項１１に記載のユーザデバイス。
【請求項１３】
前記ユーザデバイスは、動的な動き状態を検出する１つまたは複数のモーションセンサをさらに備える、請求項１０に記載のユーザデバイス。
【請求項１４】
前記動的な動き状態の検出は、前記ユーザデバイスに、前記光学画像安定化システムを介して前記カメラシステムの１つまたは複数の構成要素に、同期された移動を導入させる、請求項１３に記載のユーザデバイス。
【請求項１５】
請求項１〜９のいずれかに記載の方法を実行するための手段を提供するシステム。
【請求項１６】
請求項１〜９のいずれかに記載の方法をコンピュータに実行させる、プログラム。
【国際調査報告】
2021533660.tif 000012
2021533660.tif 000013
2021533660.tif 000014