(57)【特許請求の範囲】
【請求項１】
モバイルデバイスであって、
raw画像センサーデータを生成するように構成された少なくとも１つのイメージングセンサーと、
raw画像センサーデータを記憶するように構成されたメモリ構成要素と、
前記メモリ構成要素に結合されたプロセッサと、前記プロセッサは、通常電力動作モードと、低電力動作モードとを含む少なくとも２つの動作モードでraw画像センサーデータの処理を実施するように構成され、前記低電力動作モードは、前記通常電力動作モードよりも少ない電力を消費する、
前記メモリ構成要素内に記憶された制御モジュールと、
を備え、前記制御モジュールは、
バッテリー充電レベルが特定のしきい値を下回ること、および前記モバイルデバイスの前記バッテリー充電が、前記バッテリー充電が枯渇するまでにどれほど長く持続するかの推定値のうちの少なくとも一方に基づいた低電力条件を決定し、
前記低電力条件を決定することに応じて、前記モバイルデバイスを前記低電力動作モードで動作させるように、前記プロセッサを動作させるように構成された命令を含む、ここにおいて、前記低電力動作モードで動作させることは、
前記少なくとも１つのイメージングセンサーからraw画像センサーデータを受信することと、
前記メモリ構成要素内に前記raw画像センサーデータを記憶することと、
前記モバイルデバイスが前記通常電力動作モードで動作するまで前記raw画像センサーデータの後処理を遅延させることと、を備え、ここにおいて、前記後処理は、前記raw画像センサーデータに対して１つまたは複数の画像処理動作を実施することを含む、
ここにおいて、前記モバイルデバイスを前記低電力動作モードで動作させることは、前記モバイルデバイスが前記通常電力動作モードで動作されているときよりも少ない前記raw画像センサーデータの処理を実施することをさらに備える、
モバイルデバイス。
【請求項２】
前記後処理は、デモザイキング、ホワイトバランス調整、色変換、および色補正の１つまたは複数を含む、請求項１に記載のモバイルデバイス。
【請求項３】
前記制御モジュールは、
前記低電力動作モードで前記raw画像センサーデータに対して第１のデモザイキングフィルタを適用し、
前記通常電力動作モードで前記raw画像センサーデータに対して第２のデモザイキングフィルタを適用し、
ここにおいて、前記通常電力動作モードで適用される前記第２のデモザイキングフィルタは、前記低電力動作モードで適用される前記第１のデモザイキングフィルタよりもロバストである、
ように、前記プロセッサを動作させるように構成された命令を含む、請求項１に記載のモバイルデバイス。
【請求項４】
前記制御モジュールは、前記モバイルデバイスの低電力動作モードに対するユーザ選好を受け入れるようにさらに構成されている、請求項１に記載のモバイルデバイス。
【請求項５】
前記制御モジュールは、前記モバイルデバイスの後の充電サイクルの間の、遅延された高品質後処理のために、前記raw画像センサーデータを記憶するようにさらに構成されている、請求項１に記載のモバイルデバイス。
【請求項６】
前記低電力動作モードは、明視野またはプレノプティックカメラ用の、あるいは立体カメラ用の、カメラアプリケーションを動作させることを含む、請求項１に記載のモバイルデバイス。
【請求項７】
モバイルデバイスの電力消費を制御するための方法であって、
前記モバイルデバイスの少なくとも１つの画像センサーからraw画像センサーデータを受信することと、
通常電力動作モードと、低電力動作モードとを含む少なくとも２つの動作モードで前記raw画像センサーデータの処理を実施することと、前記低電力動作モードは、前記通常電力動作モードよりも少ない電力を消費する、
バッテリー充電レベルが特定のしきい値を下回ること、および前記モバイルデバイスの前記バッテリー充電が、前記バッテリー充電が枯渇するまでにどれほど長く持続するかの推定値のうちの少なくとも一方に基づいた低電力条件を決定することと、
前記低電力条件を決定することに応じて、前記デバイスを前記低電力動作モードで動作させることと、を備え、ここにおいて、前記低電力動作モードで動作させることは、
前記モバイルデバイスの前記少なくとも１つの画像センサーから前記raw画像センサーデータを受信することと、
前記モバイルデバイスのメモリ構成要素内に前記raw画像センサーデータを記憶することと、
前記モバイルデバイスが前記通常電力動作モードで動作するまで前記raw画像センサーデータの後処理を遅延させることと、を備え、ここにおいて、前記後処理は、前記raw画像センサーデータに対して１つまたは複数の画像処理動作を実施することを含む、
ここにおいて、前記モバイルデバイスを前記低電力動作モードで動作させることは、前記モバイルデバイスが前記通常電力動作モードで動作されているときよりも少ない前記raw画像センサーデータの処理を実施することをさらに備える、
方法。
【請求項８】
低電力条件を決定することは、前記モバイルデバイスの前記バッテリー充電が、前記バッテリー充電が枯渇するまでにどれほど長く持続するかの推定値と、前記モバイルデバイスがどこに位置を特定されるかを指示するロケーション情報とに基づく、請求項７に記載の方法。
【請求項９】
低電力条件を決定することは、前記モバイルデバイスの前記バッテリー充電が、前記バッテリー充電が枯渇するまでにどれほど長く持続するかの推定値と、前記モバイルデバイスの履歴上の充電パターンとに基づく、請求項７に記載の方法。
【請求項１０】
低電力条件を決定することは、前記モバイルデバイスの履歴上の使用量記録に基づく、請求項９に記載の方法。
【請求項１１】
前記後処理は、デモザイキング、ホワイトバランス調整、色変換、および色補正のうちの１つまたは複数を含む、請求項７に記載の方法。
【請求項１２】
前記低電力動作モードで前記raw画像センサーデータに対して第１のデモザイキングフィルタを適用することと、
前記通常電力動作モードで前記raw画像センサーデータに対して第２のデモザイキングフィルタを適用することと、を備え、
ここにおいて、前記通常電力動作モードで適用される前記第２のデモザイキングフィルタは、前記低電力動作モードで適用される前記第１のデモザイキングフィルタよりもロバストである、
請求項７に記載の方法。
【請求項１３】
前記モバイルデバイスの低電力動作モードに対するユーザ選好を受け入れることをさらに備える、請求項７に記載の方法。
【請求項１４】
実行されたときに、少なくとも１つの物理的コンピュータプロセッサに、請求項７乃至１３のいずれかにしたがった方法を実施させる命令を記憶する非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本明細書で開示するシステムおよび方法は、一般にバッテリー充電を保存することに関し、特に、センサーデータを後処理することによって電子デバイスの電力消費を後の時間へ遅らせることに関する。
【背景技術】
【０００２】
[0002]モバイルセクタに関する今日の目まぐるしい技術開発において、ユーザエクスペリエンスとバッテリー寿命は、電子デバイス、たとえばモバイルフォンの最も重要なメトリクスのうちの２つである。いくつかのアプリケーションは、電子デバイス上で動作し、たとえば、カメラアプリケーションは、バッテリー充電を急速に枯渇させ得る。バッテリー充電の枯渇は、結果として、電子デバイスの障害を生じ得、このことはユーザに不都合を生じ得る。機構またはアプリケーションの電力消費を能動的に管理することは、機構のよりスマートな使用を通じてより長期のバッテリー寿命に寄与することによって、システムに価値を加えることになり得る。加えて、よりコンテキストアウェアな方法またはシステムに基づいてモバイルデバイスの応答をカスタマイズすることにより、デバイスは、より納得できるユーザエクスペリエンスをもたらし得る。
【発明の概要】
【０００３】
[0003]本開示のシステム、方法およびデバイスはそれぞれ、いくつかの発明的態様を有し、それらのうちの単一の態様だけが、本明細書で開示する望ましい属性に関与するとは限らない。本明細書で説明する新機軸、態様および機構の組合せは、システム、方法、およびデバイスの様々な実施形態に組み込まれ得るものであり、またそのような組合せは、本明細書で説明する実施形態の例によって限定はされない。
【０００４】
[0004]本明細書で説明する実施形態および新機軸は、考えられる次の充電サイクルの前にバッテリーが枯渇することをユーザまたはデバイスが学習または理解しているときにバッテリー消費を遅らせるために、電子デバイス用のプロセッサにおいて稼働され得るシステムおよび方法に関する。バッテリー消費を後の時間まで遅らせることは、より少ない電力消費を必要とするアプリケーションにアクセスすること、および／または、そのアプリケーション、たとえば画像もしくはビデオキャプチャアプリケーションまたはオーディオアプリケーションに関連するセンサーデータの後処理（post-processing）を遅延させることによって達成され得る。また、本開示の態様は、電子デバイスのバッテリー寿命の予測に関する。バッテリー寿命の予測は、予想される次のバッテリー充電までの時間を決定し、電子デバイスがプラグに差し込まれ充電中となるかまたは所定の充電レベルに到達するまで、センサーデータの処理を遅延させることを含み得る。本開示の他の態様は、電子デバイスの動作モードに応じて修正され得るプロセス、アプリケーション、デーモン（daemons）、およびライブラリに関する。
【０００５】
[0005]以下で説明するように、いくつかの実施形態は、ユーザがアプリケーションアイコンを選択したときにどのアプリケーションが起動されるかを制御するためのルックアップテーブルを組み込んでいる。所与のバッテリー寿命条件に対してどのアプリケーションが起動されるかを制御するために他の実施形態が使用され得ることが、当業者には諒解されよう。
【０００６】
[0006]１つの新機軸は、考えられる次の充電サイクルの前にバッテリーが枯渇することをユーザまたはデバイスが理解しているときに電子デバイスの電力消費を低減するためのシステムおよび方法に関する。たとえば、バッテリー消費を低減するためのいくつかの方法は、アプリケーションの全電力バージョンが稼働されているかもしくは低減電力バージョンが稼働されているかを決定すること、および／または電力を温存することが課題とならない時間までセンサーデータの後処理を遅延することを含み得る。
【０００７】
[0007]一態様は、電子デバイスの電力消費を遅らせるためのシステムに関する。このシステムは、センサーデータを記憶するように構成されたメモリ構成要素と、そのメモリ構成要素に結合されたプロセッサとを含む。プロセッサは、メモリ構成要素からセンサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードでセンサーデータの処理を実施するように構成されており、低電力動作モードは、通常電力動作モードよりも少ない電力を消費する。本システムはまた、メモリ構成要素内に記憶された制御モジュールを含む。
制御モジュールは、それを下回ると電子デバイスが低電力動作モードに入るしきいバッテリー充電レベル、またはその後にデバイスが低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定し、低電力条件が発生するかどうかに基づいてデバイスを低電力動作モードで動作させるように、プロセッサを動作させるように構成された命令を含む。デバイスを低電力動作モードで動作させることは、メモリ構成要素内にセンサーデータを記憶することと、デバイスが通常電力動作モードで動作されているときよりも少ないセンサーデータの処理を実施することとを含む。システムは、プロセッサと通信しており、画像データを生成するように構成されているイメージングデバイスをさらに含み、イメージングデバイスは少なくとも１つのイメージングセンサーを含む。制御モジュールは、電子デバイスの低電力動作モードに対するユーザ選好を受け入れるようにさらに構成されている。制御モジュールは、低電力動作モードにあるとき、後の処理のためにメモリ構成要素内にセンサーデータを記憶するようにさらに構成されている。制御モジュールは、電子デバイスの後の充電サイクルの間の、遅延された高品質後処理のために、センサーデータを記憶するようにさらに構成されている。低電力動作モードは、明視野またはプレノプティックカメラ（a light-field or plenoptic camera）用のカメラアプリケーションを動作させることを含み得る。低電力動作モードは、立体カメラ用のカメラアプリケーションを動作させることを含み得る。低電力動作モードは、心拍数モニタアプリケーションを動作させることを含み得る。低電力動作モードは、オーディオアプリケーションを動作させることを含み得る。低電力動作モードは、モバイルデバイス用のカメラアプリケーションを動作させることを含み得る。
【０００８】
[0008]別の態様では、電子デバイスの電力消費を遅らせるための方法が、電子デバイスのメモリ構成要素内にセンサーデータを記憶するステップと、メモリ構成要素からセンサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードでセンサーデータの処理を実施するステップと、低電力動作モードは通常電力動作よりも少ない電力を消費する、それを下回ると電子デバイスが低電力動作モードに入るしきいバッテリー充電レベル、またはその後にデバイスが低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定するステップと、低電力条件が発生するかどうかに基づいてデバイスを低電力動作モードで動作させるステップとを含む。デバイスを低電力動作モードで動作させることは、メモリ構成要素内にセンサーデータを記憶することと、デバイスが通常電力動作モードで動作されているときよりも少ないセンサーデータの処理を実施することとを含み得る。本方法は、電子デバイスの低電力動作モードに対するユーザ選好を受け入れるステップをさらに含み得る。本方法は、電子デバイスの低電力動作モードの間に、後の後処理のためにメモリ構成要素内にセンサーデータを記憶するステップをさらに含み得る。本方法は、電子デバイスの後の充電サイクルの間の、遅延されている後処理のために、電子デバイスのメモリ構成要素内にセンサーデータを記憶するステップをさらに含み得る。低電力動作モードは、明視野またはプレノプティックカメラ用のカメラアプリケーションを動作させることを含み得る。低電力動作モードは、立体カメラ用のカメラアプリケーションを動作させることを含み得る。低電力動作モードは、心拍数モニタアプリケーションを動作させることを含み得る。低電力動作モードは、オーディオアプリケーションを動作させることを含み得る。低電力動作モードは、モバイルデバイス用のカメラアプリケーションを動作させることを含み得る。
【０００９】
[0009]また別には、電子デバイスの電力消費を遅らせるための装置が、センサーデータを記憶するための手段と、メモリ構成要素からセンサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードでセンサーデータの処理を実施するための手段と、低電力動作モードは通常電力動作よりも少ない電力を消費する、それを下回ると電子デバイスが低電力動作モードに入るしきいバッテリー充電レベル、またはその後にデバイスが低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定するための手段と、低電力条件が発生するかどうかに基づいてデバイスを低電力動作モードで動作させるための手段とを含み得る。
【００１０】
[0010]別の態様では、非一時的コンピュータ可読媒体が、実行されたときに、少なくとも１つの物理的コンピュータプロセッサに、電子デバイスの電力動作を遅らせる方法を実施させる命令を記憶している。本方法は、電子デバイスのメモリ構成要素内にセンサーデータを記憶するステップと、メモリ構成要素からセンサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードでセンサーデータの処理を実施するステップと、低電力動作モードは通常電力動作よりも少ない電力を消費する、それを下回ると電子デバイスが低電力動作モードに入るしきいバッテリー充電レベル、またはその後にデバイスが低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定するステップと、低電力条件が発生するかどうかに基づいてデバイスを低電力動作モードで動作させるステップとを含み得る。低電力動作モードで動作させることは、メモリ構成要素内にセンサーデータを記憶することと、デバイスが通常電力動作モードで動作されているときよりも少ないセンサーデータの処理を実施することとを含み得る。本方法は、電子デバイスの低電力動作モードに対するユーザ選好を受け入れることをさらに含み得る。本方法は、後の処理のためにメモリ構成要素内にセンサーデータを記憶することをさらに含み得る。本方法は、電子デバイスの後の充電サイクルの間の、遅延された高品質後処理のためにメモリ構成要素内にセンサーデータを記憶することをさらに含み得る。低電力動作モードは、明視野またはプレノプティックカメラ用のカメラアプリケーションを動作させることを含み得る。低電力動作モードは、立体カメラ用のカメラアプリケーションを動作させることを含み得る。低電力動作モードは、心拍数モニタアプリケーションを動作させることを含み得る。低電力動作モードは、オーディオアプリケーションを動作させることを含み得る。
【００１１】
[0011]開示する態様について、開示する態様を限定するためではなく、例示するために与えられる添付の図面とともに以下で説明し、同様の記号は同様の要素を示す。
【図面の簡単な説明】
【００１２】
【図１】[0012]電子デバイスの電力消費量を低減するためのいくつかの動作要素を実装するシステムを示すブロック図。
【図２】[0013]センサーデータを後処理することによって電子デバイスの電力消費量を低減するためのプロセスを示すフローチャート。
【図３】[0014]電力消費量を低減するための画像データの部分的処理および遅延処理を示すユーザインターフェースの例。
【図４】[0015]センサーデータを後処理することによって電子デバイスの電力消費量を低減するためのプロセスを示すフローチャート。
【図５】[0016]センサーデータの遅延される後処理を実装する電子デバイスのフォトギャラリーの一実施形態を示すユーザインターフェースの例。
【図６】[0017]通常および低電力モードで動作し得るカメラを有する電子デバイスによって短縮して実装され得る画像処理パイプラインの例。
【発明を実施するための形態】
【００１３】
[0018]バッテリー充電の枯渇は、電子デバイスのユーザにとって問題または不都合となり得る。時には、状況によって、たとえばユーザが移動しているかまたは充電ステーションから能動的に離れているとき、ユーザは電子デバイスをタイムリーに再充電することを妨げられ得る。充電設備へのアクセスなしに電子デバイスを長時間にわたって使用することは、結果として、ユーザがデバイスを再充電することが可能となる前にバッテリーが枯渇することになり得る。以下で説明する方法およびシステムは、考えられる次の充電サイクルの予想されるタイミングに照らしてバッテリー消費を低減するかまたは遅らせるための解決策をもたらす。
【００１４】
[0019]いくつかの実施形態では、デバイスは、構成段階と稼働段階とを含み得る電力消費遅延プロセスを含み得る。構成段階では、デバイスは、バッテリーが充電量において低位にある場合にどの機構が制限され得るかのユーザ選択を受信するインターフェースを提供し得る。加えて、構成段階の間、デバイスのユーザインターフェースは、それを越えるとデバイスが低電力モードに入るしきい値の選択をユーザがし得ることを、デバイスが受信することを可能にし得る。稼働段階の間、電子デバイスは、低電力モードに入るように命令（または構成）されている。低電力モードでは、デバイスは、利用可能な機構および／もしくは機能を制限し、代替の低電力アプリケーションを稼働し、どのライブラリがアクセスされるかを調節し、バックグランド処理（たとえばデーモン）を含む他の処理機能を修正し、またはデバイスのプロセッサ上で現在稼働している任意の他の機能を調節するように構成され得る。いくつかの実施形態では、電子デバイスのプロセッサは、バッテリーが再充電されるときまで、センサーデータの後処理を遅延させるように命令（または構成）され得る。
【００１５】
[0020]例は、フローチャート、流れ図、有限状態図、構造図、またはブロック図として示されるプロセスとして説明される場合があることにも留意されたい。フローチャートは動作を逐次プロセスとして説明することがあるが、動作の多くは並列にまたは同時に実施される場合があり、プロセスは繰り返される場合がある。さらに、動作の順序は並べ替えられ得る。プロセスは、それの動作が完了したときに終了する。プロセスは、メソッド、関数、手続き、サブルーチン、サブプログラムなどに対応し得る。プロセスがソフトウェア関数に対応するときに、その終了は、呼出し元関数またはメイン関数への関数のリターンに対応する。
【００１６】
[0021]実施形態は、システムオンチップ（ＳｏＣ）もしくは外部ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装され得る。情報および信号は、多種多様な技術および技法のいずれかを使用して表され得ることを当業者は理解されよう。たとえば、上の説明全体を通じて参照され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場または磁気粒子、光場または光粒子、あるいはそれらの任意の組合せによって表現され得る。
【００１７】
[0022]以下の説明では、例の完全な理解を与えるために具体的な詳細を与える。ただし、例はこれらの具体的な詳細なしに実施され得ることを当業者は理解されよう。たとえば、電気的構成要素／デバイスは、例を不必要な詳細で不明瞭にしないためにブロック図で示されることがある。他の事例では、例についてさらに説明するために、そのような構成要素、他の構造および技法を詳細に図示する場合がある。
システム概要
[0023]図１は、電子デバイスの電力消費量を推定し、その推定された電力消費量または残存バッテリーレベルに基づいて電力低減ストラテジを実施するように構成された電力管理システム１００の一例を示す。図示の実施形態は、限定することを意図するものではなく、むしろ、いくつかの実施形態における特定の構成要素を例示するものである。電力管理システム１００は、図示の構成要素を明確にするために図示されていない他の機能のための様々な他の構成要素を含み得る。
【００１８】
[0024]電力管理システム１００は、イメージングデバイス１１０と、電子ディスプレイ１３０とを含み得る。電子ディスプレイ１３０のいくつかの実施形態は、任意のフラットパネルディスプレイテクノロジー、たとえば、ＬＥＤ、ＬＣＤ、プラズマ、またはプロジェクションスクリーンであり得る。電子ディスプレイ１３０は、ユーザに向けた視覚表示用の情報を受信するためのプロセッサ１２０に結合され得る。そのような情報には、限定はしないが、メモリロケーションに記憶されたファイル、プロセッサ１２０上にインストールされたソフトウェアアプリケーション、ユーザインターフェース、およびネットワークアクセス可能なコンテンツオブジェクトの視覚表現が挙げられる。
【００１９】
[0025]イメージングデバイス１１０は、１つのイメージングセンサーまたはイメージングセンサーの組合せを含み得る。電力管理システム１００のプロセッサ１２０はまた、イメージングデバイス１１０に結合され、またイメージングデバイス１１０とのデータ通信をなし得る。電力管理システム１００はまた、同様にプロセッサ１２０との通信をなす作業メモリ１３５とプログラムメモリ１４０とを含み得る。電力管理システム１００は、モバイルデバイス、たとえば、限定はしないがタブレットコンピュータ、ラップトップコンピュータ、またはセルラー電話（たとえばスマートフォン）を含むポータブルワイヤレスデバイスであり得る。
【００２０】
[0026]いくつかの実施形態では、プロセッサ１２０は汎用処理ユニットであってもよく、またはいくつかの実施形態では、プロセッサ１２０は、ハンドヘルド電子デバイス用の電力管理もしくは画像処理アプリケーションのために特別に設計されてもよい。いくつかの実施形態では、プロセッサ１２０は、デジタルカメラ、モバイルフォン、またはカメラを有する他のデバイスでの画像データのデジタル処理に使用される画像信号プロセッサ（ＩＳＰ）を含み得る。図示のように、プロセッサ１２０はプログラムメモリ１４０および作業メモリ１３５に接続され、それらとのデータ通信をなす。いくつかの実施形態では、作業メモリ１３５は、プロセッサ１２０、たとえばキャッシュメモリに組み込まれ得る。作業メモリ１３５はまた、プロセッサ１２０から分離されプロセッサ１２０に結合される構成要素、たとえば、１つまたは複数のＲＡＭまたはＤＲＡＭ構成要素であり得る。言い換えれば、図１は、いくつかのモジュールを備えるメモリ構成要素１４０と、作業メモリを備える別個のメモリ１３５とを含む２つのメモリ構成要素を示しているが、当業者は、異なるメモリアーキテクチャを利用するいくつかの実施形態を認識されよう。たとえば、メモリ１４０中に含まれているモジュールを実装するプロセッサ命令の記憶のための設計はＲＯＭまたはスタティックＲＡＭメモリを利用し得る。プロセッサ命令は、次いで、プロセッサによる実行を可能にするためにＲＡＭにロードされ得る。たとえば、作業メモリ１３５はＲＡＭメモリであり得、命令は、プロセッサ１２０による実行の前に作業メモリ１３５にロードされる。
【００２１】
[0027]図示の実施形態では、プログラムメモリ１４０は、画像キャプチャモジュール１４５と、バッテリーレベル決定モジュール１５０と、後処理決定モジュール１５５と、低電力アプリケーションモジュール１６０と、オペレーティングシステム１６５と、ユーザインターフェースモジュール１７０とを記憶する。これらのモジュールは、様々な画像処理タスクとデバイス管理タスクとを実施するようにプロセッサ１２０を構成する命令を含み得る。プログラムメモリ１４０は、任意の好適なコンピュータ可読記憶媒体、たとえば非一時的記憶媒体であり得る。作業メモリ１３５は、メモリ１４０のモジュール中に含まれるプロセッサ命令の作業セットを記憶するためにプロセッサ１２０によって使用され得る。代替的に、作業メモリ１３５はまた、電力管理システム１００の動作中に作成された動的データを記憶するためにプロセッサ１２０によって使用され得る。
【００２２】
[0028]上述のように、プロセッサ１２０は、メモリ１４０に記憶されたいくつかのモジュールによって構成され得る。言い換えれば、プロセス１２０は、メモリ１４０内のモジュールに記憶された命令を実行し得る。画像キャプチャ制御モジュール１４５は、イメージングデバイスから画像を取得するようにプロセッサ１２０を構成する命令を含み得る。したがって、画像キャプチャ制御モジュール１４５、イメージングデバイス１１０、および作業メモリ１３５とともに、プロセッサ１２０は、画像センサーデータを取得するための１つの手段を表す。
【００２３】
[0029]まだ図１を参照すると、メモリ１４０はまた、バッテリーレベル決定モジュール１５０を含み得る。バッテリーレベル決定モジュール１５０は、以下でさらに詳細に説明するように、電子デバイス内に残存する電荷の量を決定するようにプロセッサ１２０を構成する命令を含み得る。したがって、バッテリーレベル決定モジュール１５０および作業メモリ１３５とともに、プロセッサ１２０は、バッテリーレベル、または電子デバイスのバッテリー上に残存する電荷の量を推定するための一手段を表す。
【００２４】
[0030]メモリ１４０はまた、後処理決定モジュール１５５を含み得る。後処理決定モジュール１５５は、残存するバッテリー充電の量に基づいて、限られた後処理を実施するかまたは収集された画像データの後処理を遅延させるようにプロセッサ１２０を構成する命令を含み得る。たとえば、残存するバッテリー充電量が所定のしきい値レベル、または動作中に決定されるしきい値（たとえば、動的に決定されるしきい値）よりも少ない場合、プロセッサ１２０は、後処理機能、たとえば、ロバストなデモザイクフィルタリング、モーション安定化、スキントーン補正などを遅延させるように後処理決定モジュール１５５によって命令され得る。したがって、バッテリーレベル決定モジュール１５０、後処理決定モジュール１５５、および作業メモリ１３５とともに、プロセッサ１２０は、どの後処理機能を収集された画像に適用するべきか、またいつそのような機能を適用すべきかを決定するための一手段を表す。いくつかの実施形態では、動的に決定されるしきい値は、１つまたは複数の要素、たとえば、限定はしないが、バッテリー枯渇の速度、つまりいかに迅速にバッテリーが以前の使用中に枯渇したか、および／または他のどのプロセスが電子デバイスもしくはプロセッサ上で稼働しているかに基づいて決定され得る。そのようなしきい値は、限られた後処理に関して動的に決定されるか、あるいは後処理、または本明細書で説明する他の処理および／もしくは機能を遅延させ得る。
【００２５】
[0031]メモリ１４０はまた、低電力アプリケーションモジュール１６０を含み得る。図１に示す低電力アプリケーションモジュール１６０は、残存するバッテリー充電量に基づいて、大量の電力を消費するアプリケーションから少量の電力しか消費しないアプリケーションへと切り替えるようにプロセッサ１２０を構成する命令を含み得る。いくつかの実施形態は、ユーザがアプリケーションアイコンを選択したときにどのアプリケーションが起動されるかを制御するために、たとえば、ルックアップテーブル、ファイル、データベース内に、または別のハードウェアもしくはソフトウェア記憶構成要素（そのような構成要素のすべてが、参照しやすいようにルックアップテーブルと呼ばれる）内に情報を組み込む。他の実施形態では、稼働しているプロセスは、低電力モードで動作すべきかまたは通常モードで動作すべきかを識別するために、システムプロパティを使用し得る。システムプロパティは、たとえば、現在のバッテリーレベルに関する情報を含み得る。このプロセスは、動作モードを決定するために引き渡され得る引数を含み得る。いくつかの実施形態では、残存するバッテリー充電量が所定のしきい値レベルよりも少ない場合、プロセッサ１２０は、ユーザがアプリケーションアイコンを選択したときに低電力アプリケーションが起動されるかまたは全電力アプリケーションが起動されるかを制御するルックアップテーブルに記憶された情報にアクセスし、適切なアプリケーションを起動するように、低電力アプリケーションモジュール１６０によって命令され得る。したがって、バッテリーレベル決定モジュール１５０、低電力アプリケーションモジュール１６０、および作業メモリ１３５とともに、プロセッサ１２０は、低電力アプリケーションを起動すべきかまたは全電力アプリケーションを起動すべきかを決定するための一手段を表す。
【００２６】
[0032]メモリ１４０はまた、ユーザインターフェースモジュール１７０を含み得る。図１に示すユーザインターフェースモジュール１７０は、ユーザがデバイスと対話することを可能にするディスプレイ上のオブジェクトおよびソフトコントロールの集合を提供するようにプロセッサ１２０を構成する命令を含み得る。オペレーティングシステムモジュール１６５はまた、メモリ１４０内に常駐し、システム１００のメモリと処理リソースとを管理するために、プロセッサ１２０とともに動作し得る。たとえば、オペレーティングシステム１６５は、ハードウェアリソース、たとえば、電子ディスプレイ１３０またはイメージングデバイス１１０を管理するためのデバイスドライバを含み得る。いくつかの実施形態では、バッテリーレベル決定モジュール１５０および後処理決定モジュール１５５中に含まれている命令は、これらのハードウェアリソースと直接対話しないが、代わりに、オペレーティングシステム１６５中にある標準サブルーチンまたはＡＰＩを通じて対話し得る。オペレーティングシステム１６５内の命令は、次いで、これらのハードウェア構成要素と直接対話し得る。
【００２７】
[0033]プロセッサ１２０は記憶モジュール１２５にデータを書き込み得る。記憶モジュール１２５は従来のディスクドライブとして図式的に表されているが、複数の実施形態は、メモリディスク、ＵＳＢドライブ、フラッシュドライブ、リモート接続された記憶媒体、仮想ディスクドライバなどを含む、ディスクベースの記憶デバイス、またはいくつかの他のタイプ記憶媒体のうちの１つのいずれかを含み得ることを当業者は理解されよう。
【００２８】
[0034]図１は、プロセッサと、イメージングデバイスと、電子ディスプレイと、メモリとを含むように別個の構成要素を備えるデバイスを示しているが、これらの別個の構成要素は、特定の設計目標を達成するために様々な方法で組み合わせられ得ることを当業者は認識されよう。たとえば、代替実施形態では、メモリ構成要素は、コストを節約し性能を改善するために、プロセッサ構成要素と組み合わせられ得る。
【００２９】
[0035]さらに、図１は、いくつかのモジュールを備えるメモリ構成要素１４０と、作業メモリを備える別個のメモリ１３５とを含む２つのメモリ構成要素を示しているが、当業者は、異なるメモリアーキテクチャを利用するいくつかの実施形態を認識されよう。たとえば、メモリ１４０中に含まれているモジュールを実装するプロセッサ命令の記憶のための設計はＲＯＭまたはスタティックＲＡＭメモリを利用し得る。代替的に、プロセッサ命令は、電力管理システム１００に組み込まれるかまたは外部デバイスポートを介して接続されたディスク記憶デバイスからシステム開始時に読み取られ得る。プロセッサ命令は、次いで、プロセッサによる実行を可能にするためにＲＡＭにロードされ得る。たとえば、作業メモリ１３５はＲＡＭメモリであり得、命令は、プロセッサ１２０による実行の前に作業メモリ１３５にロードされる。
方法の概要
[0036]本明細書で説明する実施形態の例のいくつかの機能は、電子デバイスのバッテリー充電がどれほど長く持続するかを予測すること、ならびに、その予測から、電子デバイス上ですべてのまたは限られた機能、たとえば、低電力もしくは全電力アプリケーションを起動および稼働すること、または、センサーデータ、たとえば画像のすべてのもしくは限られた後処理を実施することに関する。また、例は、フローチャート、流れ図、有限状態図、構造図、またはブロック図として示され得るプロセスとして説明され得る。フローチャートは動作を逐次プロセスとして説明することがあるが、動作の多くは並列にまたは同時に実施される場合があり、プロセスは繰り返される場合がある。さらに、動作の順序は並べ替えられ得る。プロセスは、それの動作が完了したときに終了する。プロセスは、メソッド、関数、手続き、サブルーチン、サブプログラムなどに対応し得る。プロセスがソフトウェア関数に対応するときに、その終了は、呼出し元関数またはメイン関数への関数のリターンに対応する。
【００３０】
[0037]図２は、図１に示すモジュールのうちの１つまたは複数に実装され得る低電力または全電力または通常電力動作モードへ電子デバイスを構成するための、プロセス２００の一実施形態を示す。低電力動作モードは望ましくは、通常電力動作モードと比べて、より少ない電力を消費する。電子デバイスは、ハンドヘルド通信デバイス、たとえば、セルラーフォンもしくは「スマートフォン」、またはタブレットコンピュータを含むモバイル個人情報端末（ＰＤＡ）であり得る。いくつかの例では、プロセス２００は、プロセッサ、たとえばプロセッサ１２０（図１）上で、また、メモリ１４０内に記憶されたまたは他のハードウェアもしくはソフトウェア内に組み込まれた、図１に示す他の構成要素上で稼働され得る。構成プロセス２００は、開始ブロック２０２で始まり、ブロック２０４に移行し、ここにおいて、ユーザはまず、１つまたは複数の低電力動作の選好を指示する。いくつかの実施形態では、ユーザは、電子デバイスのどの機能が低電力動作の間に制限され得るかを選択し得る。たとえば、ユーザは、センサーデータ、たとえば、イメージングデバイス、たとえば電子デバイスのイメージングデバイス１１０（図１）によって収集されたカメラデータの後処理が、低電力動作モードにデバイスがある場合に遅延され得ることを指示し得る。別の例では、ユーザは、低電力アプリケーション、たとえば、フルゲームまたはよりグラフィックスの多いバージョンの代わりに、あまりグラフィックスの多くないゲームが低電力動作モードの間に起動され得ることを指示し得る。他の実施形態では、電子デバイスは、デフォルトにより、低電力アプリケーションおよびプロセスを稼働し得る。この実装形態では、ユーザは、どのアプリケーション、機構、またはプロセスが通常または高電力モードで稼働されるべきかを選択し得る。たとえば、ユーザは、（図５に示し、以下でさらに詳細に説明するように）フォトギャラリーに表示された画像アイコンまたはテキストを選択することによって、画像の完全な後処理が望まれていることを指示し得る。プロセス２００は次いで、ブロック２０６に移行し、ここにおいて、ユーザは、それを越えるとデバイスが「低電力で使用可能」モードに入るしきい値を指示する。いくつかの実施形態では、このしきい値はバッテリーレベルしきい値であり得る。ユーザは、選択を介して、それを下回るとデバイスが低電力動作モードに入るバッテリーレベルしきい値を指示し得る。いくつかの実施形態では、バッテリーレベルしきい値は、３０％のバッテリー充電量、２５％のバッテリー充電量、２０％のバッテリー充電量、または任意の他のユーザ定義のしきいバッテリー充電量パーセンテージであり得る。他の実施形態では、ユーザは時間しきい値を指示し得る。時間しきい値は、デバイスが現在の電力使用量で機能し続けなければならない時間の最小量を表し得る。たとえば、ユーザは、ユーザの旅行プラン、たとえば飛行機旅行に適応するために、指定された時間にわたって現在の電力使用量でデバイスが動作する必要があることを指示し得る。別の例では、ユーザは、ユーザがビジネス会議中である間のデバイスの使用量に適応するために、指定された時間にわたって現在の電力使用量でデバイスが動作する必要があることを指示し得る。別の例では、ユーザは、ユーザがテーマパークにいて、指定された長さの時間にわたって写真またはビデオを撮るためにデバイスを使用したいと望むときに、時間しきい値を指示し得る。ユーザが、バッテリーレベルかもしくは時間のいずれかまたはその両方でしきい値を指示すると、プロセス２００は、ブロック２０８に移行し、終了する。
【００３１】
[0038]構成段階が完了した後、たとえば、プロセス２００が完了したとき、いくつかの実施形態では、デバイスは、バッテリーレベル決定プロセス、たとえば図３に示すプロセス３００を稼働し得る。プロセス３００は、いくつかの実施形態では、電子デバイス内に残存するバッテリー寿命の量を推定するか、または電子デバイスのバッテリー充電がどれほど長く続くかを推定するために使用され得る。この予測は、電子デバイスの履歴上の使用量および充電パターンを表すデータ、またはロケーションの指示もしくは他の要素からのデータに基づき得る。いくつかの例では、プロセス３００は、プロセッサ、たとえばプロセッサ１２０（図１）上で、また、メモリ１４０内に記憶されたまたは他のハードウェアもしくはソフトウェア内に組み込まれた、図１に示す他の構成要素上で稼働され得る。バッテリーレベル決定プロセス３００はブロック３０２で始まり、ブロック３０４に移行し、ここにおいて、電子デバイスのバッテリー充電のレベルに関する決定が行われる。構成プロセス２００の間に確立されたユーザ定義のしきい値によって定義されるように、バッテリーレベルが低い場合、プロセス３００はブロック３１０に移行し、ここにおいてデバイスは「低電力で使用可能」モードに入る。このモードでは、上記で説明した構成プロセス２００でユーザによって認識されるように、機構またはアプリケーションは限定または無効化され得る。低電力モードの間のデバイスの動作のさらなる詳細について、以下で説明することにする。プロセス３００は、ブロック３１４に移行し、終了する。
【００３２】
[0039]ユーザ定義のしきい値または動的に決定されたしきい値によって定義されるように、バッテリーレベルが低くない場合、プロセス３００はブロック３０６に移行し、ここにおいて、デバイスは、バッテリーが次の充電より前に枯渇するかどうかを予測する。たとえば、ユーザが、通常はデバイスを午後７時に充電し、現在の時間が午後１時で、バッテリー充電の３０％が残っている場合、デバイスは、デバイスの履歴上の使用量記録に基づいて、現在の全電力使用量モードで動作していると次の充電サイクルより前にデバイスがバッテリーを枯渇させることを決定し得る。これが当てはまる場合、以下で説明するように、プロセス３００はブロック３１０に移行し、ここで、上記で説明したように、デバイスは「低電力で使用可能」モードに入り、ユーザ選好またはデバイス設定に基づいて特定の機構またはプロセスを無効化する。プロセス３００は次いでブロック３１４に移行し、そして終了し得る。
【００３３】
[0040]次の予想される充電サイクルより前にデバイスがバッテリーを枯渇させないとデバイスが予測した場合、プロセス３００はブロック３０８に移行し、ここにおいて、次の充電サイクルまで通常よりも長くなることをユーザが指定したかどうかに関する決定が行われる。たとえば、ユーザが移動しており、プロセス２００で概説した構成段階においてより長い時間しきい値を選択した場合、および／または、電子デバイスからのＧＰＳの読みが、ホームエリアから電子デバイスが離れていることを示す場合、デバイスは、次の充電サイクルより前にバッテリーを枯渇させ得る。いくつかの実施形態では、バッテリーレベルと電力使用量とを決定することは、（たとえば、ユーザが、短い時間フレームで多数の絵を撮っている場合）履歴上の電力使用量または現在の電力使用量を決定することを含み得る。これが当てはまる場合、以下で説明するように、プロセス３００はブロック３１０に移行し、ここで、上記で説明したように、デバイスは「低電力で使用可能」モードに入り、ユーザ選好またはデバイス設定に基づいて特定の機構またはプロセスを無効化する。プロセス３００は次いでブロック３１４に移行し、そして終了し得る。
【００３４】
[0041]次の充電サイクルまで通常よりも長時間になることをユーザが指定しておらず、また次の充電サイクルまで通常よりも長時間になることをデバイスが決定していない場合、プロセス３００はブロック３１２に移行し、ここにおいて、デバイスは全電力モードに入るかまたは留まる。全電力モードでは、機構の制限または遅延される後処理は命令されない。プロセス３００は次いでブロック３１４に移行し、そして終了し得る。
【００３５】
[0042]いくつかの実施形態では、次の充電サイクルまでの時間の予測、およびデバイスが次の充電よりも前にバッテリーを枯渇させるかどうかの決定は、ロケーション情報に基づき得る。たとえば、ユーザは、家にいるとＧＰＳ座標によって決定され得、したがってデバイスをすぐに再充電する可能性がある。他の実施形態では、次の充電サイクルまでの時間の予測はまた、日時情報に基づき得る。たとえば、ユーザは典型的に、デバイスを毎夕、午後７時に充電し得る。他の実施形態では、次の充電サイクルまでの時間の予測はまた、他の履歴上のデバイス使用率情報に基づき得る。
低電力モードでの動作
[0043]上記で説明した、プロセス３００のバッテリーレベル決定ステップのうちの１つに基づいて、電力が温存されるべきであるとデバイスが警告されているとき、デバイスは、低電力動作プロセス４００を稼働し得、その一例が図４に示されている。低電力動作モードでの動作は望ましくは、通常電力動作モードでの動作と比べて、より少ない電力を消費する。プロセス４００は、いくつかの実施形態では、デバイスがプラグに差し込まれるかまたは完全に充電される時間まで、センサーデータの後処理を遅延させるために使用され得る。たとえば、ユーザがテーマパークにいて、電子デバイスを再充電する機会なしに多数の写真およびビデオを撮っている場合、デバイスは、上記で説明したバッテリーレベル決定プロセス３００を使用して、ユーザがデバイスを再充電し得るまでデバイスが全電力モードで動作し続けるのに十分なバッテリー充電を有していない可能性があることを決定し得る。この状況では、デバイスは、センサーデータが収集直後に後処理される全電力モードから、ユーザがデバイスを再充電し得るまでデバイスが動作し続け得るように、バッテリー電力を温存するために最小の後処理がセンサーデータに対して実施される低電力モードへと切り替え得る。いくつかの実施形態では、デバイスは、プロセス４００で概説したステップに従って低電力カメラ動作を稼働し得る。いくつかの例では、プロセス４００は、プロセッサ、たとえばプロセッサ１２０（図１）上で、また、メモリ１４０内に記憶されたまたは他のハードウェアもしくはソフトウェア内に組み込まれた、図１に示す他の構成要素上で稼働され得る。
【００３６】
[0044]低電力動作プロセス４００は開始ブロック４０２で始まり、ブロック４０４に移行し、ここにおいて、デバイスは低電力モードで動作される。たとえば、いくつかの実施形態では、イメージングデバイス１１０およびカメラアプリケーションが低電力モードで動作され得る。低電力モードでは、大量の電力を利用するプロセス、たとえば、オートホワイトバランス、ＣＦＡデモザイキング、および処理された画像をＪＰＥＧとして記憶することを含む画像処理機能は、デバイスのバッテリーが完全に充電されるかまたはデバイスがプラグに差し込まれるまで遅延され得る。いくつかの実施形態では、低電力動作モードでの動作は、通常電力動作モードの間に稼働され得る、プロセッサ１２０の画像信号プロセッサの高電力消費プロセスを停止またはバイパスする。
【００３７】
[0045]プロセス４００は次いでブロック４０６に移行し、ここにおいてセンサーデータが取得される。センサーデータは、たとえば、イメージングデバイス１１０によって収集された静止画像データもしくはビデオ画像データ、マイクロフォン１１５によって収集されたオーディオデータ、または任意の他の付加的なセンサーデータ、たとえば温度もしくは圧力を含み得る。他の実施形態では、他のセンサーデータがまた取得され得る。プロセス４００は次いでブロック４０８に移行し、ここにおいてセンサーデータは後の処理のためにメモリ内に記憶される。カメラアプリケーションを例として使用すると、いくつかの実施形態では、低電力アプリケーションシステムは、raw画像データをキャプチャし、そのデータを後の時間における処理のためにメモリ、たとえばメモリ１２５内に記憶するように、ＡＰＩを通じてイメージングデバイス１１０を構成し得る。たとえば、低電力カメラアプリケーションは、ビューファインダーを利用せず、オートホワイトバランスを稼働し、オートフォーカスを稼働し、またはrawのＢＧＧＲバイエル（Bayer）データを直ちに処理し得る。カメラの画像処理パイプラインを使用してrawのＢＧＧＲデータを処理し、その画像データをＪＰＥＧファイルとしてメモリ内に記憶し得る全電力カメラアプリケーションとは異なり、イメージングデバイス１１０によって収集されたrawのＢＧＧＲデータは、メモリ内に記憶され、後の時間に処理され得る。デバイスが低電力動作モードにあるときにバイパスされ得る一般的な画像データ処理パイプライン６００の一例が、図６に示されている。一般に、イメージングシステムの通常電力動作モードの間、相当な前処理および後処理が、画像センサーによって収集されたセンサーデータに対して実施される。この典型的な処理動作が図６に示されている。
【００３８】
[0046]全電力または通常電力動作モードでは、パイプライン６００は、カメラセンサーからraw画像データ６０２を受信し、好ましくはその画像データの全後処理を実施する。この後処理は、画像データ６０６のホワイトバランス調整と、ＣＦＡデモザイキング６０８と、色変換６１０と、画像データ６１２をメモリ６１６に記憶する前の画像データ６１２の色補正とを含み得る。この典型的なプロセスは、図６の白い矢印によって示されている。上記で説明したように、これらの処理ステップは、バッテリー電力を消費するものであり、バッテリー電力を温存するために、プロセス４００に関して説明したようにバイパスされ得る。たとえば、低電力動作モードの間、デバイスは、図６に示す全画像処理パイプラインの１つまたは複数のステップをバイパスし得る。一実施形態では、低電力動作モードの一実施形態では、プロセッサは、図６で中実の黒線６２０によって示されるように、raw画像データ６０２の限られた前処理６０４を実施し、次いでその画像データをメモリ６１６に保存するように命令され得る。別の実施形態では、デバイスが低電力動作モードの別の実施形態で動作しているとき、プロセッサは、図６の破線６２２によって示すように、raw画像データのいかなる処理も実施することなしにraw画像データを直ちに記憶するように命令され得る。画像データを後処理するためのコマンド、たとえばユーザからの直接のコマンド、または、デバイスがバッテリーレベルしきい値に到達するかもしくはバッテリーレベルしきい値を越えたことによって高電力もしくは通常電力動作に入るための、プロセッサ１２０によって受信される命令は、後処理のために再び画像信号プロセッサ（ＩＳＰ）へとセンサーデータを注入するための、プロセッサ１２０への命令をトリガし得る。後処理のために再びＩＳＰへと注入されると、センサーデータは、図６で白い矢印によって示すように、完全に処理され得る。
【００３９】
[0047]いくつかの実施形態では、デバイスが充電されているとき、またはユーザが共有するための絵を手動で選択するとき、よりロバストなデモザイクフィルタ、モーション安定化フィルタ、スキントーン補正フィルタなどを使用するより高品質の処理が実施されている間に、サムネイルフォトが処理され、電子デバイスのフォトギャラリー内に表示され得る。一例では、図５に示すように、電子デバイス、たとえばモバイルフォンのフォトギャラリーが、バッテリー充電レベルに基づいて画像データの遅延される後処理を示すテキストをユーザに表示し得る。たとえば、カメラプレビューピクチャを生成するために、画像データは、写真が撮られるときに、一時的な画像を生成するために低減された品質で処理され得る。一時的な画像は、たとえば、最近傍のバイエルパターンデモザイクフィルタ、または別の画像解像度処理を使用して、表示される画像の解像度を低減することによって形成され得る。この一時的な画像は、図５に示すようにユーザのフォトギャラリー内に表示され得る。フォトギャラリーは、デバイスがプラグに差し込まれるかまたは完全に充電されたときに画像が表示されることを示す教示的なテキストをユーザに表示し得る。しかしながら、他の実施形態では、ユーザは、画像データが後処理されておらず、画像が電子メールされ得るか、ウェブサイトにアップロードなどされ得るようにするために、画像の全後処理を必要としていることを示すテキストまたはアイコンを選択し得る。これによってシステムは、画像を後処理し、画像データが完全に後処理されていないことを示すアイコンまたはテキストに代わって、フォトギャラリー内にサムネイル画像を表示するように指示されることになる。
【００４０】
[0048]別の例では、マイクロフォン、たとえばマイクロフォン１１５が、rawオーディオデータをキャプチャするために使用され得る。デバイスが低電力モードにある場合、システムは、バッテリー充電がフルであるとき、デバイスがプラグに差し込まれ充電中であるとき、またはユーザ需要時における、後の後処理のために、メモリストレージ、たとえばメモリ１２５内にrawオーディオデータを記憶し得る。
【００４１】
[0049]また別の例では、イメージングセンサー、たとえばイメージングセンサー１１０がrawビデオデータを記録し得る。デバイスが低電力モードにある場合、システムは、デバイスのバッテリー充電がフルであるとき、デバイスがプラグに差し込まれ充電中であるとき、またはユーザ需要時における処理のために、メモリストレージ、たとえばメモリ１２５内にrawビデオデータを記憶し得る。
【００４２】
[0050]プロセス４００は次いでブロック４１２に移行し、ここにおいて、電子デバイスのバッテリーレベルが低いかどうかに関する決定が行われる。バッテリーレベルが低い場合、プロセス４００はブロック４０４に移行し、プロセスは上記で説明したように反復する。しかしながら、デバイスが充電されているか、またはプラグに差し込まれ充電中である場合、プロセス４００はブロック４１４に移行し、ここにおいてデバイスは次いで、raw画像データの後処理を実施し得る。後処理は、他の後処理フィルタおよび機能とともに、よりロバストなデモザイクフィルタを適用すること、モーション安定化フィルタを適用すること、スキントーン補正フィルタを適用することを含み得る。後処理は、画像をメモリからロードすることと、画像データを画像信号プロセッサ（ＩＳＰ）に提供することとを含み得る。一実施形態では、プロセッサは、図６に線６３１によって示すように、raw画像データ６３０をロードし、raw画像データ６３０をパイプライン６００へと挿入するように命令され得る。プロセス４００は、ブロック４１６に移行し、終了する。
【００４３】
[0051]いくつかの実施形態では、センサーデータの後処理はまた、バッテリーレベルが低いときでもデータの完全品質バージョンを必要とするアクションをユーザが手動で開始する場合に初期化され得る。たとえば、デバイスは、ユーザが画像を電子メールしようとする場合に、画像データのより高品質の後処理を実施し得る。
【００４４】
[0052]いくつかの実施形態では、バッテリーレベルがユーザ定義のしきい値より低いか、または、次の充電サイクルまで続くほどの十分な充電量がないであろうとデバイスが予測する場合、システムは、ユーザがアプリケーションアイコンをクリックしたときにどのアプリケーションが起動されるかを定義するルックアップテーブル（ＬＵＴ）を変更し得る。他の実施形態では、稼働しているプロセスは、低電力モードで動作すべきかまたは通常モードで動作すべきかを識別するために、システムプロパティを使用し得る。いくつかの実施形態では、システムプロパティはバッテリーレベル指示を含み得る。このプロセスは、動作モードを決定するために引き渡され得る引数を含み得る。たとえば、システムが低電力の状況にあるとき、アプリケーション、たとえばカメラの低電力バージョンが起動され得る。他の実施形態では、デバイスが低電力モードにあるとき、ゲームアプリケーションの低電力バージョンがまた起動され得る。これらのアプリケーションの低電力バージョンは、より短いゲームおよび／またはより複雑でないグラフィックスを含み得る。バッテリーレベルが定義されたしきい値を超えているか、またはデバイスが充電されているとき、ユーザがアプリケーションアイコンを選択したときに起動されるアプリケーションが全電力動作アプリケーションとなるように、ＬＵＴが変更され得る。
【００４５】
[0053]別の例では、電子デバイスのプロセッサ（たとえばプロセッサ１２０）は、電子デバイスのディスプレイ（たとえば電子ディスプレイ１３０）を低電力モードで動作させるための命令を受信し得る。いくつかの実施形態では、低電力動作モードの間、バッテリー電力を温存するために、色フォーマットが変更され得るかまたはフレーム毎秒（ｆｐｓ）が低減され得る。たとえば、６０ｆｐｓにおけるＲＧＢＸ８８８８の色フォーマットを３０ｆｐｓにおけるＲＧＢ５６５の色フォーマットに変更すると、ディスプレイ処理パイプラインで消費される帯域幅の量が低減され得る。加えて、この色フォーマットの変更およびｆｐｓの低減により、ハードウェアが動作するクロックレートが低減され得る。ＡＭＯＬＥＤディスプレイを組み込んだいくつかの実施形態では、電子ディスプレイのピクセルは、バッテリー電力を温存するために薄暗くされ得る。他の実施形態では、電子ディスプレイの画面解像度が調節され得る。たとえば、７２０ｐの画面は、電子ディスプレイの表示面の一部が黒色となるように、より低い解像度で表示し得る。
【００４６】
[0054]この予測的なバッテリー寿命の実施形態および遅延される後処理のアプローチは、モバイルデバイス、たとえば、電話、カメラ（プレノプティックまたは明視野カメラおよびステレオカメラを含む）、タブレット、コンピュータ、心拍数モニタなどに実装され得る。これらの例は、例示することを意図したものであり、限定的なものではない。
専門用語に関する明確化
[0055]別段に規定されていない限り、特定の特徴を有する装置の動作のいかなる開示も、類似の特徴を有する方法を開示する（その逆も同様）ことをも明確に意図し、特定の構成による装置の動作のいかなる開示も、類似の構成による方法を開示する（その逆も同様）ことをも明確に意図する。「構成」という用語は、その特定の文脈によって示されるように、方法、装置、および／またはシステムに関して使用され得る。「方法」、「処理」、「プロセス」、および「技法」という用語は、具体的な文脈によって別段に規定されていない限り、一般的に、互換的に使用される。「装置」および「デバイス」という用語も、特定の文脈によって別段に規定されていない限り、一般的に、互換的に使用される。「要素」および「モジュール」という用語は、一般に、より大きな構成の一部を示すのに使用される。その文脈によって明確に限定されない限り、「システム」という用語は、本明細書では、「共通の目的を果たすために相互作用する要素のグループ」を含む、その通常の意味のいずれをも示すのに使用される。文書の一部分の参照による任意の組込みは、その部分内で言及された用語または変数の定義が、文書中の他の場所に現れ、ならびに組み込まれた部分で参照される任意の図に現れた場合、そのような定義を組み込んでいることも理解されたい。
【００４７】
[0056]さらに、本明細書で開示する実装形態に関連して説明した様々な例示的な論理ブロック、モジュール、回路、およびプロセスステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装され得ることを当業者は諒解されよう。ハードウェアおよびソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、上記では概してそれらの機能に関して説明した。そのような機能をハードウェアとして実装するか、ソフトウェアとして実装するかは、特定の適用例および全体的なシステムに課された設計制約に依存する。当業者は、説明する機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈されるべきではない。当業者は、ある一部分または一部が、全体よりも少ないかまたはそれに等しいものを備え得ることを認識されよう。たとえば、ピクセルの集合の一部分は、それらのピクセルの部分集合を指す場合がある。
【００４８】
[0057]本明細書で開示する実施形態に関して説明した様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明する機能を実施するように設計されたそれらの任意の組合せを用いて実装または実施され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、ＤＳＰとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。
【００４９】
[0058]本明細書で開示する実施形態に関して説明する方法またはプロセスのステップは、直接ハードウェアで実施され得るか、プロセッサによって実行されるソフトウェアモジュールで実施され得るか、またはその２つの組合せで実施され得る。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭ（登録商標）メモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、または当技術分野で知られている任意の他の形態の非一時的記憶媒体中に存在し得る。例示的なコンピュータ可読記憶媒体は、プロセッサがコンピュータ可読記憶媒体から情報を読み取り、コンピュータ可読記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体は、ＡＳＩＣ中に常駐し得る。ＡＳＩＣはユーザ端末、カメラ、または他のデバイスの中に常駐し得る。代替として、プロセッサおよび記憶媒体は、ユーザ端末、カメラ、または他のデバイスの中に個別コンポーネントとして常駐し得る。
【００５０】
[0059]本明細書には、参照のための、および様々なセクションを見つけるのを助けるための見出しが含まれる。これらの見出しは、見出しに関連して説明された概念の範囲を制限することを意図していない。そのような概念は、明細書全体にわたり、適用可能であり得る。
【００５１】
[0060]開示した実施形態の前述の説明は、いかなる当業者も本発明を実施または使用できるようにするために提供されるものである。これらの実施形態への様々な修正は当業者には容易に明らかであり、本明細書で定義した一般原理は、本発明の趣旨または範囲から逸脱することなく他の実施形態に適用され得る。したがって、本発明は、本明細書で示した実施形態に限定されるものではなく、本明細書で開示する原理および新規の特徴に合致する最も広い範囲を与えられるべきである。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
電子デバイスの電力消費を遅らせるためのシステムであって、
センサーデータを記憶するように構成されたメモリ構成要素と、
前記メモリ構成要素に結合されたプロセッサと、前記プロセッサは、前記メモリ構成要素から前記センサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードで前記センサーデータの処理を実施するように構成され、前記低電力動作モードは、前記通常電力動作モードよりも少ない電力を消費する、
前記メモリ構成要素内に記憶された制御モジュールと、前記制御モジュールは、
それを下回ると前記電子デバイスが前記低電力動作モードに入るしきいバッテリー充電レベル、またはその後に前記デバイスが前記低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定し、
前記低電力条件が発生するかどうかに基づいて前記デバイスを前記低電力動作モードで動作させる
ように、前記プロセッサを動作させるように構成された命令を含む、
を備えるシステム。
［Ｃ２］
前記デバイスを前記低電力動作モードで動作させることは、前記メモリ構成要素内にセンサーデータを記憶することと、前記デバイスが前記通常電力動作モードで動作されているときよりも少ない前記センサーデータの処理を実施することとを備える、Ｃ１に記載のシステム。
［Ｃ３］
前記プロセッサと通信しており、画像データを生成するように構成されているイメージングデバイスをさらに備え、前記イメージングデバイスは少なくとも１つのイメージングセンサーを備える、Ｃ１に記載のシステム。
［Ｃ４］
前記制御モジュールは、前記電子デバイスの低電力動作モードに対するユーザ選好を受け入れるようにさらに構成されている、Ｃ１に記載のシステム。
［Ｃ５］
前記制御モジュールは、前記低電力動作モードにあるとき、後の処理のために前記メモリ構成要素内に前記センサーデータを記憶するようにさらに構成されている、Ｃ１に記載のシステム。
［Ｃ６］
前記制御モジュールは、前記電子デバイスの後の充電サイクルの間の、遅延された高品質後処理のために、前記センサーデータを記憶するようにさらに構成されている、Ｃ５に記載のシステム。
［Ｃ７］
前記低電力動作モードは、明視野またはプレノプティックカメラ用のカメラアプリケーションを動作させることを含む、Ｃ１に記載のシステム。
［Ｃ８］
前記低電力動作モードは、立体カメラ用のカメラアプリケーションを動作させることを含む、Ｃ１に記載のシステム。
［Ｃ９］
前記低電力動作モードは、心拍数モニタアプリケーションを動作させることを含む、Ｃ１に記載のシステム。
［Ｃ１０］
前記低電力動作モードは、オーディオアプリケーションを動作させることを含む、Ｃ１に記載のシステム。
［Ｃ１１］
前記低電力動作モードは、モバイルデバイス用のカメラアプリケーションを動作させることを含む、Ｃ１に記載のシステム。
［Ｃ１２］
電子デバイスの電力消費を遅らせるための方法であって、
前記電子デバイスのメモリ構成要素内にセンサーデータを記憶することと、
前記メモリ構成要素から前記センサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードで前記センサーデータの処理を実施することと、前記低電力動作モードは、前記通常電力動作モードよりも少ない電力を消費する、
それを下回ると前記電子デバイスが前記低電力動作モードに入るしきいバッテリー充電レベル、またはその後に前記デバイスが前記低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定することと、
前記低電力条件が発生するかどうかに基づいて前記デバイスを前記低電力動作モードで動作させることとを備える方法。
［Ｃ１３］
前記デバイスを前記低電力動作モードで動作させることは、前記メモリ構成要素内に前記センサーデータを記憶することと、前記デバイスが前記通常電力動作モードで動作されているときよりも少ない前記センサーデータの処理を実施することとを備える、Ｃ１２に記載の方法。
［Ｃ１４］
前記電子デバイスの低電力動作モードに対するユーザ選好を受け入れることをさらに備える、Ｃ１２に記載の方法。
［Ｃ１５］
前記電子デバイスの低電力動作モードの間に、後の後処理のために前記メモリ構成要素内に前記センサーデータを記憶することをさらに備える、Ｃ１２に記載の方法。
［Ｃ１６］
前記電子デバイスの後の充電サイクルの間の、遅延されている後処理のために、前記電子デバイスの前記メモリ構成要素内に前記センサーデータを記憶することをさらに備える、Ｃ１２に記載の方法。
［Ｃ１７］
前記低電力動作モードは、明視野またはプレノプティックカメラ用のカメラアプリケーションを動作させることを含む、Ｃ１２に記載の方法。
［Ｃ１８］
前記低電力動作モードは、立体カメラ用のカメラアプリケーションを動作させることを含む、Ｃ１２に記載の方法。
［Ｃ１９］
前記低電力動作モードは、心拍数モニタアプリケーションを動作させることを含む、Ｃ１２に記載の方法。
［Ｃ２０］
前記低電力動作モードは、オーディオアプリケーションを動作させることを含む、Ｃ１２に記載の方法。
［Ｃ２１］
前記低電力動作モードは、モバイルデバイス用のカメラアプリケーションを動作させることを含む、Ｃ１２に記載の方法。
［Ｃ２２］
電子デバイスの電力消費を遅らせるための装置であって、
センサーデータを記憶するための手段と、
前記メモリ構成要素から前記センサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードで前記センサーデータの処理を実施するための手段と、前記低電力動作モードは、前記通常電力動作よりも少ない電力を消費する、
それを下回ると前記電子デバイスが前記低電力動作モードに入るしきいバッテリー充電レベル、またはその後に前記デバイスが前記低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定するための手段と、
前記低電力条件が発生するかどうかに基づいて前記デバイスを前記低電力動作モードで動作させるための手段とを備える装置。
［Ｃ２３］
実行されたときに、少なくとも１つの物理的コンピュータプロセッサに、電子デバイスの電力動作を遅らせる方法を実施させる命令を記憶する非一時的コンピュータ可読媒体であって、前記方法は、
前記電子デバイスのメモリ構成要素内にセンサーデータを記憶することと、
前記メモリ構成要素から前記センサーデータを取り出し、センサーデータ処理用の通常電力動作モードと、センサーデータ処理用の低電力動作モードとを含む少なくとも２つの動作モードで前記センサーデータの処理を実施することと、前記低電力動作モードは、前記通常電力動作よりも少ない電力を消費する、
それを下回ると前記電子デバイスが前記低電力動作モードに入るしきいバッテリー充電レベル、またはその後に前記デバイスが前記低電力動作モードに入るしきい時間の少なくとも一方に基づいた低電力条件を決定することと、
前記低電力条件が発生するかどうかに基づいて前記デバイスを前記低電力動作モードで動作させることとを備える非一時的コンピュータ可読媒体。
［Ｃ２４］
前記デバイスを前記低電力動作モードで動作させることは、前記メモリ構成要素内にセンサーデータを記憶することと、前記デバイスが前記通常電力動作モードで動作されているときよりも少ない前記センサーデータの処理を実施することとを備える、Ｃ２３に記載の非一時的コンピュータ可読媒体。
［Ｃ２５］
前記電子デバイスの前記低電力動作モードに対するユーザ選好を受け入れることをさらに備える、Ｃ２３に記載の非一時的コンピュータ可読媒体。
［Ｃ２６］
前記電子デバイスの後の充電サイクルの間の、遅延された高品質後処理のために前記メモリ構成要素内に前記センサーデータを記憶することをさらに備える、Ｃ２３に記載の非一時的コンピュータ可読媒体。
［Ｃ２７］
前記低電力動作モードは、明視野またはプレノプティックカメラ用のカメラアプリケーションを動作させることを含む、Ｃ２３に記載の非一時的コンピュータ可読媒体。
［Ｃ２８］
前記低電力動作モードは、立体カメラ用のカメラアプリケーションを動作させることを含む、Ｃ２３に記載の非一時的コンピュータ可読媒体。
［Ｃ２９］
前記低電力動作モードは、心拍数モニタアプリケーションを動作させることを含む、Ｃ２３に記載の非一時的コンピュータ可読媒体。
［Ｃ３０］
前記低電力動作モードは、オーディオアプリケーションを動作させることを含む、Ｃ２３に記載の非一時的コンピュータ可読媒体。
【図１】
0006676539.tif 000002
【図２】
0006676539.tif 000003
【図３】
0006676539.tif 000004
【図４】
0006676539.tif 000005
【図５】
0006676539.tif 000006
【図６】
0006676539.tif 000007