(58)【調査した分野】(Int.Cl.,DB名)
前記レンズパラメータが、前記第1の時間のインスタンスでの、前記第1のレンズのアパーチャを示す情報と、前記第1のレンズの焦点距離を示す情報とを含む請求項1に記載のシステム。
前記プロセッサが、前記メモリコンポーネントにアクセスして前記第1のレンズのレンズパラメータを取り出し、前記取り出したレンズパラメータを使用して前記焦点領域を決定するようにさらに構成される請求項1に記載のシステム。
前記メモリコンポーネントが、レンズパラメータおよび関連する焦点領域とともに構成され、前記プロセッサが、前記第1のレンズの前記レンズパラメータに関連する焦点領域を前記メモリコンポーネントから取り出すようにさらに構成される請求項1に記載のシステム。
前記システムが前記第1のレンズおよび第2のレンズを備え、前記システムが、前記第1のレンズを使用して生成されたイメージと前記第2のレンズを使用して生成されたイメージとの間の相違に基づいて、前記撮像デバイスから前記目標物体までの前記距離を示す情報を決定するように構成される請求項1に記載のシステム。
前記システムが光放射源を備え、前記システムが、前記光放射源によって放射され、前記目標物体から反射される光を受け取ることに基づいて、前記撮像デバイスから前記目標物体までの前記距離を示す情報を決定するように構成される請求項1に記載のシステム。
前記レンズパラメータが、前記第1の時間のインスタンスでの、前記第1のレンズのアパーチャを示す情報と、前記第1のレンズの焦点距離を示す情報とを含む請求項8に記載の方法。
第1のレンズのレンズパラメータ、および前記レンズパラメータに対応する焦点領域をメモリコンポーネント内に記憶するステップと、前記メモリコンポーネントにアクセスして前記第1のレンズのレンズパラメータを取り出し、前記取り出したレンズパラメータを使用して前記焦点領域を決定するステップとをさらに含む請求項8に記載の方法。
前記撮像デバイスから前記目標物体までの前記距離を示す情報を決定する前記ステップは、前記第1のレンズを使用して生成されたイメージと、第2のレンズを使用して生成されたイメージとの間の相違に基づく請求項8に記載の方法。
前記目標物体に光を放射し、前記目標物体から反射光を受け取ることに基づいて、前記撮像デバイスから前記目標物体までの前記距離を示す情報を決定するステップをさらに含む請求項8に記載の方法。
1つまたは複数のコンピューティングデバイスによって実行されるとき、請求項8から13のいずれか一項に記載の方法を実施する命令を記憶する、コンピュータ可読記憶媒体。
【発明を実施するための形態】
【0017】
以下の詳細な説明は、本発明のいくつかの特定の実施形態を対象とする。しかしながら、本発明は、多数の異なる方式で実施され得る。本明細書での態様が多種多様な形態で実施され得ること、および本明細書で開示される任意の特定の構造、機能、またはその両方は代表例にすぎないことは明らかなはずである。本明細書での教示に基づいて、本明細書で開示される態様が任意の他の態様とは無関係に実装され得ること、およびこれらの態様のうちの2つ以上が様々な方式で組み合わされ得ることを当業者は理解されたい。たとえば、本明細書で述べられる任意の数の態様を使用して、装置が実装され得、または方法が実施され得る。さらに、本明細書で述べられる態様のうちの1つまたは複数に加えて、またはそれら以外の、他の構造、機能、または構造と機能を使用して、そのような装置が実装され得、またはそのような方法が実施され得る。
【0018】
さらに、本明細書で説明されるシステムおよび方法は、カメラをホストする様々な異なるコンピューティングデバイス上で実装され得る。これらには、携帯電話、タブレット、専用カメラ、ウェアラブルコンピュータ、パーソナルコンピュータ、フォトブースもしくはキオスク、携帯情報端末、ウルトラモバイルパーソナルコンピュータ、およびモバイルインターネットデバイスが含まれる。それらは、汎用または専用コンピューティングシステム環境または構成を使用し得る。本発明とともに使用するのに適切であり得るコンピューティングシステム、環境、および/または構成の例には、限定はしないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドもしくはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラマブルコンシューマエレクトロニクス、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
【0019】
以下の説明では、例の完全な理解を与えるために特定の詳細が与えられる。しかしながら、例はこれらの特定の詳細なしに実施され得ることを当業者は理解されよう。たとえば、例を不必要に詳細に不明瞭にしないために、電気的構成要素/デバイスがブロック図で示され得る。別の例では、例をさらに説明するために、そのような構成要素、他の構造、および技法が詳細に示され得る。
【0020】
フローチャート、流れ図、有限状態図、構造図、またはブロック図として示されるプロセスとして例が説明され得ることにも留意されたい。フローチャートは、動作を順次プロセスとして説明し得るが、動作の多くは、並列に、または同時に実施され得、プロセスは反復され得る。さらに、動作の順序は再構成され得る。プロセスは、その動作が完了するときに終了する。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応し得る。プロセスがソフトウェア関数に対応するとき、その終了は、呼出し側関数またはメイン関数への関数の戻りに対応する。
【0021】
様々な異なる技術および技法のいずれかを使用して情報および信号が表され得ることを当業者は理解されよう。たとえば、上記の説明全体にわたって参照され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップが、電圧、電流、電磁波、磁場もしくは磁気粒子、光場もしくは光粒子、またはそれらの任意の組合せによって表され得る。
【0022】
撮像コンテキストでの被写界深度(DOF)の様々な定義が存在する。たとえば、レンズの被写界深度は、レンズによって取り込まれたシーンのイメージまたはビデオフレーム内の妥当にシャープに見えるそのシーン内の最も近い物体と最も遠い物体との間の距離と定義され得る。シャープネスの妥当性は、主観的要素であり得、撮像デバイスの様々な実装で異なり得、さらには撮像デバイスとは無関係の要素、たとえば閲覧者の視覚的鋭敏さ、閲覧条件、および他の要素に依存し得る。
【0023】
被写界深度は、レンズまたは撮像デバイスの様々な光学的特性ならびに他の要素に関係し得る。これらの特性および要素のうちのいくつかが本明細書で説明される。たとえば、オプティクスでは、レンズの過焦点距離(H)が、レンズが無限遠に焦点合せされるとき、それを越えるとすべての物体が妥当にシャープとなり得る距離と定義され得る。レンズの過焦点距離についての他の定義も存在する。これらの定義は、光学系または撮像システムでどんなレベルのシャープネスが妥当であり、または許容できると見なされるかに依存し得る。
【0024】
所望のシャープネスの程度を表現することに関係することがあるメトリックは、錯乱円である。カメラは、物体からレンズを通じて媒体、たとえばフィルムまたはデジタルフォトセンサ上に反射する光線を焦点合せすることによって、媒体上に物体のイメージを形成し得る。「理想的な」レンズは収差を持たないが、実際のレンズは、物体上の地点からのすべての光線をイメージ上の地点に完璧に集束させるわけではないことがある。したがって、そのようなレンズは、レンズが結像する物体上の地点に対応する、イメージ内のスポットまたは円を形成し得る。言い換えれば、物体上の地点から反射した光線が完璧な集束に至らないことがあり、それによって、単一の地点ではなく、媒体上の円またはスポットを形成する。このシナリオでは、錯乱円は、撮像される物体上の地点に対応する、最大の許容できる円またはスポットと定義され得る。錯乱円は、閲覧者の視覚的鋭敏さ、閲覧条件、倍率の量、ならびに媒体のサイズおよび形状(たとえば、イメージフォーマット)に依存し得る。
【0025】
レンズの被写界深度に関する別のメトリックはレンズ焦点距離(f)であり得る。レンズの焦点距離は、レンズの中心と、レンズを通じて移動した後に平行光線が集束する地点との間の距離と定義され得る。
【0026】
被写界深度に関するレンズまたは撮像システムの別のパラメータはレンズアパーチャであり得る。レンズ物理アパーチャとは、撮像デバイスが光を許容し得る開口の直径またはアパーチャを指し得る。さらに、撮像デバイスまたはレンズは、撮像デバイスまたはレンズが撮像デバイスに対して許容する光量をそれによって操作することのできる様々な要素、たとえばレンズ振動板を含み得る。物理開口絞りという用語は、これらの様々な要素を指すために使用され得る。光学系内の有効レンズアパーチャまたは入射ひとみは、光学系の正面を通じて観測されるときの物理開口絞りの光学的イメージと定義され得る。レンズアパーチャは、レンズF数(f/N)または相対的アパーチャによって表現されることがある。F数は、有効レンズアパーチャまたは入射ひとみの直径に対するレンズの焦点距離の比と定義され得る。たとえば、レンズの焦点距離が10ミリメートル(mm)であり、その有効レンズアパーチャまたは入射ひとみの直径が5mmである場合、F数は2であり、アパーチャまたはレンズアパーチャはf/2である。オプティクスでは、レンズアパーチャという用語は、相対的な用語とともに使用され得、一般には、レンズセットアップ、およびそのセットアップの結果としてレンズが許容する光量を指す。たとえば、「広い」レンズアパーチャは、「狭い」(または「小さい」)レンズアパーチャと比較して、より多くの光を許容する。広いレンズアパーチャは、小さいF数、たとえばf/1.4、f/1.8、またはf/2に対応し得る。狭い、または小さいレンズアパーチャは、大きいF数、たとえばf/11、f/18、またはf/22に対応し得る。
【0027】
被写界深度に関係する別の要素は焦点合せ距離(s)である。光学系が物体に対してレンズを焦点合せするとき、レンズは、物体のシャープなイメージが媒体上に形成されるまで、物体および媒体(たとえば、フィルムまたはデジタルイメージセンサ)に対して移動する。焦点合せ距離(s)は、物体のシャープなイメージがレンズを含む撮像デバイスの媒体上に形成されるときの、レンズの中心に対する物体の距離と定義され得る。
【0028】
最後に、レンズの被写界深度は、許容シャープネスの遠い距離(Df)と、許容シャープネスの近い距離(Dn)との差と表現され得、「近い」および「遠い」は、レンズの中心に対して用いられる。いくつかの例では、以下の式が、距離DnおよびDf、したがって被写界深度を計算するのに使用される関係をもたらし得る。
【0030】
上記の式(1)では、Hは過焦点距離を表し、fは焦点距離を表し、NはF数を表し、cは錯乱円の直径を表す。上記の式(2)では、Dnは、レンズの中心に対する許容シャープネスの近い距離を表す。このことは、レンズの中心とレンズの中心から距離Dnとの間に位置する物体は、撮像されるとき、シャープには見えないことがあり得ることを意味し得る。上記の式(3)では、Dfは、許容シャープネスの遠い距離を表す。このことは、レンズの中心から距離Dfを越えて位置する物体は、撮像されるとき、シャープには見えないことがあり得ることを意味し得る。最後に、式(4)では、距離DfとDnとの間の差が、被写界深度すなわちDOFを表し得る。
【0031】
上記の説明から観察できるように、前述の例示的レンズ特性およびパラメータを知ると、当業者は、式(1)〜(4)に表される関係を使用して被写界深度を決定し得る。
【0032】
もちろん、上記で論じられた様々な特性およびパラメータの他の定義が利用可能であり得ることを当業者なら理解されよう。これらの代替定義は、本開示の精神から逸脱することなく、本明細書で説明される実施形態において使用され得る。
【0033】
本明細書で説明される撮像システムおよび方法の例示的実施形態は、レンズからの物体の距離に対するレンズの焦点領域を使用して、レンズの自動焦点動作をいつトリガすべきかを決定し得る。焦点領域は被写界深度に関係付けられ得る。いくつかの実施形態では、焦点領域は被写界深度と同一であり得る。他の実施形態では、焦点領域は、被写界深度に対する既知の距離および/または所定の距離であり得る。たとえば、レンズの被写界深度がレンズの中心から1メートル(m)から5mまでの距離である場合、焦点領域は、0.2mのマージンで被写界深度を包含する距離と定義され得る。このシナリオでは、焦点領域は、レンズの中心に対して0.8mから5.2mまでであり得る。あるいは、焦点領域は、所定の距離だけ被写界深度によって包含され、所定の距離だけ被写界深度内となるように定義され得る。このシナリオでは、所定の距離が0.3mである場合、焦点領域は、レンズの中心に対して1.3mから4.7mまでであり得る。
【0034】
あるいは、焦点領域は、許容シャープネスの近い距離Dnおよび許容シャープネスの遠い距離Dfに対して非対称に定義され得る。たとえば、レンズの被写界深度は、レンズの中心から1mの近距離Dnから始まり、レンズの中心から5mの遠距離Dfまでの4mであり得る。このシナリオでは、焦点領域は、被写界深度の内部からの所定の距離または距離のパーセンテージから始まり、無限遠までとなるように定義され得る。たとえば、焦点領域は、近距離Dnからの被写界深度の距離4%から始まり得る。この例では、焦点領域は、レンズの中心から1.16cmから始まり、無限遠までであり得る。開示される実施形態による自動焦点トリガ動作を実装するときに様々な感度を達成するために、本開示の精神から逸脱することなく、被写界深度に対する距離と近距離Dnおよび遠距離Dfの他の組合せも可能であることを当業者なら理解されよう。
【0035】
図1は、焦点領域と、それに影響を及ぼすいくつかの例示的要素との間の関係の態様を示す。これらの要素には、焦点合せ距離、レンズ焦点距離、およびレンズアパーチャが含まれ得る。説明するように、焦点領域は、レンズアパーチャまたはレンズが許容する光量に反比例し、焦点合せ距離に比例し、レンズ焦点距離に反比例し得る。
【0036】
図1は、イメージまたは複数のイメージ内に取り込まれるべき物体102を示す。本明細書での開示は、物体のイメージまたは複数のイメージを取り込むときに物体が撮像されることを参照することがある。さらに、
図1でのレンズ101の焦点合せ距離は、物体102からレンズ101の中心までの距離と同一であり得る。言い換えれば、
図1では、レンズ101の焦点面は、物体102が位置する所であり得る。
図1では、レンズ101の特性が、イメージを取り込むために構成され、または操作され得る。たとえば、レンズ101は、レンズアパーチャ(Aで表される)およびレンズ焦点距離(fで表される)についての様々な値とともに構成され得る。
図1では、レンズ101の焦点領域が、レンズの中心101に対する距離D1とD2との間の領域で示されている。
【0037】
図1(a)〜
図1(c)は、物体102を撮像するために同一の焦点合せ距離およびレンズ焦点距離が使用されるときの、レンズ101の焦点領域と、レンズアパーチャとの間の関係の例を示す。
図1(d)〜
図1(f)は、物体102を撮像するために同一のレンズ焦点距離およびレンズアパーチャが使用されるときの、レンズ101の焦点領域と、焦点合せ距離との間の関係を示す。
図1(g)〜
図1(i)は、物体102を撮像するために同一の焦点合せ距離およびレンズアパーチャが使用されるときの、レンズ101の焦点領域と、レンズ焦点距離との間の関係を示す。
【0038】
図1(a)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA1および焦点距離f1とともに構成される。焦点合せ距離はL1である。
図1(b)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA2および焦点距離f1とともに構成される。焦点合せ距離はL1であり、レンズアパーチャA2はA1よりも小さい。
図1(c)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA3および焦点距離f1とともに構成される。焦点合せ距離はL1であり、レンズアパーチャA3は、
図1(a)および
図1(b)でのレンズ構成において使用されるレンズアパーチャA1およびA2よりも小さい。
図1(a)〜
図1(c)から観察できるように、焦点領域D1〜D2はレンズアパーチャに反比例する。
図1(a)〜
図1(c)に示されるように、A1>A2>A3では、最も広いレンズアパーチャA1に対応する焦点領域D1〜D2は、レンズアパーチャA2に対応する焦点領域D1〜D2よりも浅く、最も小さいレンズアパーチャA3に対応する焦点領域D1〜D2は、
図1(a)〜
図1(c)に示される焦点領域の中で最も深い。
【0039】
図1(d)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA4および焦点距離f2とともに構成される。焦点合せ距離はL1'である。
図1(e)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA4および焦点距離f2とともに構成される。焦点合せ距離はL2'であり、ただしL2'>L1'である。
図1(f)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA4および焦点距離f2とともに構成される。焦点合せ距離はL3'であり、ただしL3'>L2'である。
図1(d)〜
図1(f)から観察できるように、焦点領域D1〜D2は焦点合せ距離に比例する。
図1(d)〜
図1(f)に示されるように、L1'<L2'<L3'では、最短の焦点合せ距離L1'に対応する焦点領域D1〜D2は、焦点合せ距離L2'に対応する焦点領域D1〜D2よりも浅く、最も長い焦点合せ距離L3'に対応する焦点領域D1〜D2は、
図1(d)〜
図1(f)に示される焦点領域の中で最も深い。
【0040】
図1(g)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA5および焦点距離f3とともに構成される。焦点合せ距離はL1"である。
図1(h)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA5および焦点距離f4とともに構成される。焦点合せ距離はL1"であり、レンズ焦点距離f4はレンズ焦点距離f3よりも長い。
図1(i)では、レンズ101は、イメージ内の物体102を取り込むためにレンズアパーチャA5および焦点距離f5とともに構成される。焦点合せ距離はL1"であり、レンズ焦点距離f5はレンズ焦点距離f4よりも長い。
図1(g)〜
図1(i)から観察できるように、焦点領域D1〜D2はレンズ焦点距離に反比例する。
図1(g)〜
図1(i)に示されるように、f3<f4<f5では、最短の焦点距離f3に対応する焦点領域D1〜D2は、
図1(g)〜
図1(i)に示される焦点領域の中で最も深く、最長の焦点距離に対応する焦点領域D1〜D2は、
図1(d)〜
図1(f)に示される焦点領域の中で最も浅い。
【0041】
図2は、一実施形態による自動焦点トリガ機能を含む撮像デバイス200の一実施形態を示すブロック図の一例である。撮像デバイス200は、イメージセンサ214と、レンズ210と、アクチュエータ212と、作業メモリ270と、ストレージ275と、ディスプレイ280と、入力デバイス290とに動作可能に接続されたプロセッサ205を含み得る。任意選択で、撮像デバイス200は、1つまたは複数の追加のレンズ、たとえば第2のレンズ216、第2のアクチュエータ218、および第2のイメージセンサ222をさらに含み得る。第2のレンズ216および関連する構成要素を含むことは、撮像デバイス200の機能を改善する助けとなり得る。たとえば、第2のレンズ216は、レンズ210とともに、たとえばステレオ相違を介して、撮像デバイス200に対する物体の位置または距離を決定する助けとなり得る。第2のレンズを含むことの代替として、かつ/または第2のレンズを利用することに加えて、任意選択で、撮像デバイス200は、撮像デバイス200に対する物体の位置または距離を決定するのを助けるために光放射源/検出器230を含み得る。
【0042】
さらに、プロセッサ205はメモリ220に接続される。メモリ220はいくつかのモジュールを記憶し得、いくつかのモジュールは、撮像デバイス200の機能を実施するようにプロセッサ205を構成するための命令を定義するデータ値を記憶する。メモリ220は、物体追跡モジュール240、自動焦点モジュール260、およびオペレーティングシステム265を含み得る。
図2は多数の独立モジュールを示すが、モジュールのいずれかが、サブモジュールとして、個々に、または組合せで含まれ得ることを理解されよう。メモリ220は、距離決定および監視モジュール224と、焦点領域決定モジュール226と、自動焦点トリガモジュール228とをさらに含み得る。
【0043】
例示的実施形態では、光が、レンズ210、および使用される場合は第2のレンズ216に入射し、イメージセンサ214、および使用される場合は第2のイメージセンサ222上に集束する。いくつかの実施形態では、イメージセンサ214は電荷結合デバイス(CCD)を利用する。いくつかの実施形態では、イメージセンサ214は相補型金属酸化物半導体(CMOS)センサを利用する。レンズ210はアクチュエータ212に結合され、アクチュエータ212によって移動される。アクチュエータ212は、自動焦点探索動作中の一連の1つまたは複数のレンズ移動でレンズ210を移動するように構成される。撮像デバイス200が1つまたは複数の追加のレンズとともに実装される場合、前述と同様の機能が、第2のレンズ216、第2のアクチュエータ218、および第2の撮像センサ222についても実装され得る。
【0044】
図2の実施形態に示されるディスプレイ280は、レンズ210(および使用される場合は第2のレンズ216)を介して取り込まれたイメージおよびフレームを表示するように構成され、撮像デバイス200の構成機能を実装するためにも利用され得る。
【0045】
図2の実施形態をさらに参照すると、作業メモリ270は、撮像デバイス200の動作中に動的に作成されたデータを記憶するためにプロセッサ205によって利用され得る。たとえば、(以下で論じられる)メモリ220内に記憶された命令モジュールのいずれかからの命令が、プロセッサ205によって実行されるとき、作業メモリ270内に記憶され得る。作業メモリ270はまた、プロセッサ205上で実行中のプログラムによって利用されるスタックまたはヒープデータなどの動的実行時データを記憶し得る。ストレージ275は、撮像デバイス200によって作成されたデータを記憶するために利用され得る。たとえば、レンズ210(および使用される場合は第2のレンズ216)を介して取り込まれたイメージが、ストレージ275上に記憶され得る。さらに、ストレージ275は、レンズパラメータに基づいて焦点領域を決定する際に使用される情報を含むデータベースやルックアップテーブルなどのレンズ特性情報を記憶するために使用され得る。レンズ特性は、たとえば、レンズ210(および使用される場合は第2のレンズ216)のブランド、製造業者、および他のハードウェアデータを含み得、それらから、焦点合せ距離、レンズ焦点距離、レンズアパーチャなどの1組のレンズパラメータが与えられると、焦点領域が決定され得る。ストレージ275は、たとえば、レンズ210(および使用される場合は第2のレンズ216)についてのレンズ特性を、レンズパラメータおよび対応する焦点領域と関係付けるルックアップテーブルを含み得る。
【0046】
メモリ220はコンピュータ可読媒体と見なされ得、いくつかのモジュールを記憶し得る。モジュールは、プロセッサ205についての命令を定義するデータ値を記憶する。これらの命令は、撮像デバイス200の機能を実施するようにプロセッサ205を構成する。たとえば、いくつかの態様では、メモリ220は、以下で説明され、
図6に関して図示されるように、プロセッサ205にプロセス600またはその部分を実施させる命令を記憶するように構成され得る。図示される実施形態では、メモリ220は、距離決定および監視モジュール224、焦点領域決定モジュール226、自動焦点トリガモジュール228、物体追跡モジュール240、自動焦点モジュール260、およびオペレーティングシステム265を含み得る。
【0047】
オペレーティングシステム265は、撮像デバイス200のハードウェアおよびソフトウェアリソースを管理するようにプロセッサ205を構成する命令を含み得る。
【0048】
物体追跡モジュール240内の命令は、物体追跡能力を提供するようにプロセッサ205を構成し得る。いくつかの実施形態では、物体は、ディスプレイ280の周りを移動するとき、またはレンズ210(または使用される場合は第2のレンズ216)の視野(FOV)内を移動するときに追跡され得る。いくつかの実施形態では、撮像デバイスを追跡することが本開示と統合される。たとえば、その内容全体が本明細書に組み込まれる米国特許第8,483,437号は、トレーニングイメージを使用してイメージ内の物体を追跡するための機能を開示しており、その内容全体が本明細書に組み込まれる米国特許出願公開第2013/0258141号は、ビデオフレーム内の物体を検出および追跡し、誤検出を拒否するための機能を開示しており、その内容全体が本明細書に組み込まれる米国特許出願公開第2014/0205141号は、ビデオフレーム内の物体を追跡して追跡結果を生成するための機能を開示しており、その内容全体が本明細書に組み込まれる米国特許第8,249,299号は、ビデオ内の物体を識別および追跡するための機能を開示している。物体追跡モジュール240内の命令は、ユーザが選択した物体を追跡するための一手段を表す。
【0049】
いくつかの実施形態では、撮像デバイスは、物体の複数のイメージまたはフレームを取り込むように構成され得る。次いで、撮像デバイスの追跡モジュールを介して、複数のフレームを通じて物体が追跡され、追跡データが提供され得る。追跡モジュールは、パッケージ追跡、レーザ追跡などの技術を含み得る。たとえば、追跡モジュールは、Qualcomm Technologies, Inc.によって開発されたTouch-to-Track(登録商標)を実装し得る。
【0050】
図2の実施形態に示される自動焦点モジュール260は、レンズ210(および使用される場合は第2のレンズ216)を制御して自動焦点を達成するようにプロセッサ205を構成する命令を含み得る。自動焦点モジュール260内の命令は、レンズ210(および使用される場合は第2のレンズ216)についてのレンズ位置を達成するようにプロセッサ205を構成する。いくつかの態様では、自動焦点モジュール260内の命令は、レンズ210(および使用される場合は第2のレンズ216)をイメージセンサ214(および使用される場合は第2のイメージセンサ222)とともに制御してイメージを取り込むようにプロセッサ205を構成し得る。したがって、自動焦点モジュール260内の命令は、イメージセンサ214およびレンズ210(ならびに使用される場合は第2のイメージセンサ222および第2のレンズ216)とともにイメージを取り込むための一手段を表し得る。
【0051】
自動焦点動作がトリガされるとき、撮像デバイス201の1つまたは複数のレンズ204および206を自動焦点合せするために、様々な自動焦点システムおよび技法が使用され得る。多くの応用例では、自動焦点合せは、撮像デバイス内で様々なタイプのアクチュエータによって実施され得る。撮像デバイスは、可動範囲内で移動して焦点合せを可能にするレンズを用いて、シーンをイメージセンサ上に焦点合せする。自動焦点撮像デバイスは、ボイスコイルモータ(VCM)、ピエゾ、またはマイクロメカニカルシステム(MEMS)構成要素を使用してレンズを移動する。
【0052】
現代のデジタル撮像デバイスでは、機械的移動がレンズを移動する方向および距離を決定するために様々な自動焦点方法が使用され得る。たとえば、より高いコントラストを有するイメージがよりシャープな焦点を有する傾向があり得るので、いくつかの自動焦点方法は、イメージに最高のコントラストを与える焦点位置を探す。このことは、焦点値アルゴリズムと呼ばれることがあり、様々なレンズ位置の焦点値が比較され、どのイメージが最高のコントラストを有するかが決定される。自動焦点方法の別の例は物体深度推定に基づき、アルゴリズムが、撮像デバイスからの目標物体の推定深度または位置に基づいて直接的にレンズを推定位置に移動する。推定の信頼度に基づいて、最小のコントラストベースの自動焦点合せが使用され得る。しかしながら、最適な焦点についての最適なレンズ位置、または最適な焦点位置が既知ではないとき、撮像デバイスは、コントラストベースの自動焦点方法、または焦点値自動焦点方法を使用する。最適なレンズ位置とは、最大の焦点値または最高のコントラスト値が得られるレンズ位置を指す。
【0053】
レンズ204および206のうちの1つまたは複数を自動焦点合せするために使用されるシステムまたは技法の如何にかかわらず、それらのシステムまたは技法は、究極的には、自動焦点を達成するためにレンズパラメータ、たとえば焦点合せ距離、レンズ焦点距離、およびレンズアパーチャを用いてレンズを構成する。いくつかの実施形態では、固定レンズ焦点距離も使用され得る。本明細書で説明されるように、レンズアパーチャをレンズパラメータのうちの1つとして参照することは、アパーチャの何らかのしるしを指すことがある。それは、レンズまたは撮像デバイスに関係するからである。前述のように、これらには、たとえば、物理的アパーチャ、物理開口絞り、有効レンズアパーチャ、入射ひとみ、F数、相対的アパーチャ、または撮像デバイスのアパーチャおよび撮像デバイスが開口またはアパーチャを通じて許容する光量に一般的に関係する他の定義が含まれ得る。
【0054】
いくつかの態様では、自動焦点モジュール260内の命令はレンズ位置情報を決定し得る。レンズ位置情報は、現レンズ位置、目標レンズ位置、および自動焦点探索動作方向決定を含み得る。いくつかの態様では、自動焦点モジュール260内の命令は、自動焦点探索動作を初期化するための一手段を表し得る。いくつかの態様では、自動焦点モジュール260内の命令は、自動焦点探索動作についてのレンズ移動の大きさおよび/または方向を決定するための一手段を表し得る。自動焦点動作が自動焦点トリガモジュール228を介してトリガされるとき、および自動焦点モジュール260が自動焦点動作に影響を及ぼし、自動焦点動作を完結させたとき、その自動焦点動作に対応するレンズパラメータが決定され得る。レンズパラメータは、焦点合せ距離、レンズ焦点距離、およびレンズアパーチャを含み得る。レンズパラメータ情報は焦点領域決定モジュール326に通信され得る。
【0055】
距離決定および監視モジュール224は、撮像デバイス200からの物体の距離を決定するようにプロセッサ205を構成するための命令を含み得る。たとえば、距離決定および監視モジュール224は、第2のレンズ216が使用されるとき、ステレオ相違を使用して物体の距離を測定するための命令を含み得る。物体内の特徴、たとえば物体上の中心点の相違が、レンズ210および第2のレンズ216から観測したときの物体の水平位置の違いと定義され得る。たとえば、物体上の中心点は、第1のイメージセンサ214上に第1のイメージを形成し、第2のイメージセンサ218上に第2のイメージを形成し得る。第1のイメージと第2のイメージとの間の水平距離が、相違と定義され得る。ステレオベースラインは、レンズ210と第2のレンズ216とを分離する距離と定義され得る。いくつかの実装では、この情報およびレンズ210および216の焦点距離を知ると、距離決定および監視モジュール224は、ステレオベースラインに焦点距離を掛け、結果を相違で割ることによって物体からの距離を決定するようにプロセッサ205を構成し得る。
【0056】
距離決定および監視モジュール224は、物体追跡モジュール240と通信することによって物体までの距離を決定するようにプロセッサ205を構成するための命令を含み得る。距離決定および監視モジュール224は、自動焦点モジュール260と通信することによって物体までの距離を決定するようにプロセッサ205を構成するための命令を含み得る。物体距離はレンズの位置の関数であり得、レンズの位置は、自動焦点モジュール260から取得され得る。
【0057】
距離決定および監視モジュール224は、光パルス、たとえばレーザビームによって送られる光パルスが物体まで移動して戻るのにかかる時間を測定することによって物体までの距離を決定するようにプロセッサ205を構成するための命令を含み得る。光速度が既知であり、かかる時間が測定されると、物体までの距離が決定され得る。レーザレンジファインディング技術を使用する代替技法も使用され得る。距離決定および監視モジュール224内の命令は、光放射源/検出器230に、撮像デバイス200から撮像すべき物体に光信号(または放射)、たとえば光パルスまたはレーザビームを送信させ、物体から反射して戻る光パルスまたはレーザビームを検出させ、光パルスまたはレーザビームについての、撮像デバイス200から撮像すべき物体まで、および撮像すべき物体から撮像デバイス200までの全移動時間を決定させるようにプロセッサ205を構成し得る。次いで、光速度に移動時間を掛けることによって物体距離が決定され得る。光速度は、撮像デバイス200および/または撮像すべき物体が位置する媒体または環境に関係し得る。
【0058】
焦点領域決定モジュール226は、現在の焦点合せ距離、レンズ焦点距離、およびレンズアパーチャに対応する焦点領域を決定するようにプロセッサ205を構成するための命令を含み得る。本明細書の説明では、所与のレンズおよび焦点合せ距離についての焦点領域を集合的に決定するパラメータの組合せが、レンズパラメータと呼ばれることがある。レンズパラメータの例には、焦点合せ距離、レンズ焦点距離、およびレンズアパーチャが含まれ得る。いくつかのレンズ特性も、焦点領域の決定の要素に入れられる。これらの特性には、たとえば、レンズシステム210、および使用される場合は第2のレンズ216についての錯乱円の直径が含まれる。
【0059】
図3は、撮像デバイス301および撮像すべき物体302を示すダイアグラム300を示す。撮像デバイス301は、スタンドアロンのスチルカメラまたはビデオカメラ内に、または携帯電話、タブレットなどのワイヤレス通信デバイス内に実装され得る。
図2の実施形態に関して説明された特徴は、撮像デバイス301を実装するために使用され得る。任意選択で、撮像デバイス301は、1つまたは複数のイメージ取込みレンズ、たとえばレンズ304および306を含み得る。いくつかの実施形態では、レンズ304および306は異なる特性を有し得る。たとえば、レンズ304および関連する構成要素は、高品質で高解像度のメインカメラを構成し得、レンズ306および関連する構成要素は、低品質で低解像度の補助カメラであり得る。しかしながら、代替として、同一または類似のレンズまたはカメラが使用され得る。レンズ304および306のうちの1つまたは複数が、撮像デバイス301から焦点合せ距離S1の焦点面上に焦点合せされ得る。前述のように、所与の1組のレンズパラメータ(たとえば、焦点合せ距離、レンズ焦点距離、レンズアパーチャ)について、物体302が撮像デバイス301について妥当に焦点が合っているように見える焦点領域D1〜D2がある。逆に、同一のレンズパラメータについて、物体302が焦点領域D1〜D2の外側にある場合、物体302は、撮像デバイス301について焦点が外れているように見える。上記で論じられたように、レンズパラメータは、焦点合せ距離、レンズ焦点距離、およびレンズアパーチャを含み得る。これらのレンズパラメータを知ると、焦点領域D1〜D2が決定され得る。
【0060】
さらに、物体から撮像デバイス301までの距離Dが決定され得る。撮像デバイス301は、
図2の実施形態に関して上記で説明された距離決定および監視モジュール224および物体追跡モジュール240を含み得る。したがって、距離Dは、物体302を追跡し、撮像デバイス301からの物体302の距離を決定することによって決定され得る。撮像デバイス301はまた、たとえば自動焦点モジュール260と通信することによって現焦点領域を決定することに関するパラメータを決定するように構成され得る。これらのパラメータは、たとえば、レンズ201および204についての焦点合せ距離、レンズ焦点距離、およびレンズアパーチャを含み得る。撮像デバイス301はまた、現焦点合せ距離、レンズ焦点距離、およびレンズアパーチャに対応する焦点領域D1〜D2を決定するための焦点領域決定モジュール226を含むように構成され得る。したがって、撮像デバイス301は、焦点領域D1〜D2に関して物体距離Dを監視または決定し得る。物体距離Dが焦点領域D1〜D2の外側となるように撮像デバイス301および/または物体302が位置を変更するとき、撮像デバイス301の自動焦点動作がトリガされ得る。
【0061】
いくつかの実施形態では、たとえば、撮像デバイス301および/または物体302の互いに対する移動のために、物体距離Dが焦点領域D1〜D2の外側となるとき、物体距離Dが依然として変化中であり得るので、自動焦点動作が依然としてトリガされ得る。このシナリオでは、物体距離Dが再び現焦点領域D1〜D2内となり得、新しい自動焦点動作が不要であり得るような最終位置に物体距離Dが落ち着くことが可能であり得る。あるいは、物体距離が依然として変化している場合、物体距離Dが、別の自動焦点トリガが必要となり得るような、新しく取得した焦点領域の外側にあり続ける場合、自動焦点動作をトリガして、新しい自動焦点およびレンズ位置を取得することは不要であり得る。したがって、いくつかの実施形態では、焦点領域の外側にある物体距離Dを検出することに加えて、物体距離が安定化したかどうかに関してさらなる決定が行われ得る。このシナリオでは、たとえば、物体距離Dがさらに監視され得る。指定の期間の後に距離Dが変化しない場合、または物体距離の変化を示す他の信号が検出されない場合、撮像デバイス301の自動焦点合せ動作がトリガされ得る。指定の期間は、メモリ内に記憶された所定の量の時間枠であり得る。あるいは、指定の時間枠は、撮像デバイス301によって動的に決定され得る。
【0062】
図2および
図3を参照すると、前述のように、撮像デバイス301は撮像デバイス200の特徴を含み得る。たとえば、レンズ304はレンズ210を用いて実装され得、レンズ306はレンズ216を用いて実装され得る。しかしながら、代替として、撮像デバイス301は、ただ1つのレンズを用いて実装され得る。
図2および
図3をさらに参照すると、現焦点合せ距離S1に関する情報が、自動焦点モジュール260から取得され得る。さらに、焦点領域決定モジュール226は、焦点領域D1〜D2を決定するようにプロセッサ205を構成するために、レンズ特性(またはハードウェア)情報を含むデータベース、ルックアップテーブルなどとインターフェースし得る。たとえば、焦点領域決定モジュール226は、焦点合せ距離、レンズ焦点距離、およびレンズアパーチャの間の関係に関する記憶された情報を返し得る。それらは、レンズ210および第2のレンズ216の現在位置およびセットアップに関係するからである。焦点領域決定モジュール226は、レンズ210および216の特性に特有のプロセッサ命令を記憶し得る。これらのプロセッサ命令は、焦点合せ距離、レンズ焦点距離、レンズアパーチャなどの現レンズパラメータを入力として受け入れ、対応する焦点領域D1〜D2を出力するようにプロセッサ205を構成し得る。
【0063】
自動焦点トリガモジュール228は、撮像デバイス200の新しい自動焦点動作がトリガされるべきかどうかを決定するようにプロセッサ205を構成するための命令を含み得る。
図2および
図3を参照すると、自動焦点トリガモジュール228は、物体距離Dを焦点領域と比較するようにプロセッサ205を構成するための命令を含み得る。物体距離Dが焦点領域の外側となる場合、プロセッサ205は、撮像デバイス200の新しい自動焦点合せ動作をトリガし得る。前述のように、いくつかの実施形態では、自動焦点トリガモジュール228は、物体距離Dを継続的に監視するようにプロセッサ205を構成するための命令を含み得、物体距離Dが安定化する場合、たとえば、指定の期間の後に物体距離Dが変化しておらず、または指定の数の取り込まれたイメージフレーム内で物体距離Dが変化しておらず、物体距離Dの変化を示す他の信号が検出されていない場合、プロセッサ205は、撮像デバイス200の新しい自動焦点動作をトリガし得る。このシナリオでは、物体距離Dが安定化しない場合、たとえば、物体および/または撮像デバイス301が互いに対して依然として移動している場合、プロセッサ205は、撮像デバイス200の新しい自動焦点動作をトリガしないことがある。いくつかの実施形態では、指定の期間は、メモリ内に記憶された所定の量の時間枠であり得る。あるいは、指定の時間枠は、撮像デバイス200によって動的に決定され得る。同様に、取り込まれたイメージフレームの指定の数は、メモリに記憶された所定の数であり得る。あるいは、取り込まれたイメージフレームの指定の数は、撮像デバイス200によって動的に決定され得る。
【0064】
いくつかの実施形態では、指定の時間または取り込まれたイメージの指定の数の動的決定は、物体302のタイプ、以前に決定した物体302の移動のタイプ、または物体302が撮像されているシーンの決定に基づいて行われ得る。たとえば、物体302がポートレイトのためにポーズを取る人体であると判定される場合、指定の時間は、物体302が移動するペットであると判定されるシナリオと比較して短い時間であり得る。指定の時間または取り込まれたイメージの指定の数を動的に決定するために他の基準も使用され得る。
【0065】
図4は、撮像デバイスからの物体の距離と、取り込まれたイメージフレームの数との間の経時的な関係の一例を示すグラフ400である。
図4および
図3を参照すると、一実施形態による自動焦点トリガプロセスが説明される。グラフ400では、y軸上で、撮像デバイス301からの物体302の距離が、センチメートル(cm)単位で示されている。グラフ400では、x軸上で、連続的に取り込まれたイメージフレームの番号、すなわち「フレーム番号」が示されている。たとえば、第1のフレームから第6のフレームまで、撮像デバイス301からの物体距離Dは約20cmである。現レンズパラメータに対応する焦点領域D1〜D2が決定され得る。撮像デバイス301に対する物体302の位置が変化するとき、物体302が追跡される。位置(または物体距離)の変化は、撮像デバイス301および/または物体302が互いに対して位置を変更するためであり得る。
図4に示される例では、フレーム番号6から始めて、撮像デバイス201と物体202との間の距離が減少している。たとえば、物体202が撮像デバイス201に近づいている。あるいは、撮像デバイス301が物体302に近づき、または撮像デバイス201と物体202の両方が移動中であり得る。地点402の近くで、物体距離Dは焦点領域D1〜D2の外側にあると判定される。しかしながら、物体距離Dは変化し続けているので、新しい自動焦点動作はトリガされない。物体距離Dがもはや変化していないと判定されるまで、物体距離Dはさらに監視される。
図4の例では、物体距離Dは、ほぼフレーム番号14または地点404において安定化したと判定される。したがって、新しい自動焦点動作は地点404において、またはその近くでトリガされ得る。
【0066】
図5は、
図2の撮像デバイス200とともに使用され得るいくつかの実施形態による自動焦点トリガプロセス500のフローチャート図である。自動焦点トリガイベントを監視するプロセスは、任意の時刻に開始し得、または
図2の撮像デバイス200の他の動作の背後で進行中であり得る。たとえば、
図5のフローチャートでは、自動焦点トリガプロセスが、2つの自動焦点トリガイベント520および570の間に示されている。
図2および
図5を参照すると、プロセス500はブロック510において開始し得る。次に、ブロック520では、初期自動焦点動作がトリガされ得、撮像デバイス200の1つまたは複数のレンズ210および216が自動焦点合せされる。以下で説明される自動焦点トリガプロセスは初期自動焦点動作をトリガすることから始まる必要はなく、当初はブロック520がスキップされ得ることを当業者は容易に理解することができる。たとえば、レンズ210および216の1つまたは複数が事前に焦点合せされている場合、プロセス500はブロック530から開始し得る。
図2、
図3、および
図5を参照すると、ブロック530では、物体距離Dが決定され得るか否かが確認される。物体距離Dが決定され得ないと判定される場合、プロセス500はブロック535に移り得、自動焦点動作をトリガするための他の基準が存在し得るかどうかが判定される。他の基準には、たとえば、取り込まれたイメージフレームと、1つまたは複数の後続の取り込まれたイメージフレームとの間に露出の変化が存在し得るかどうか、または取り込まれたイメージフレームと、1つまたは複数の後続の取り込まれたイメージフレームとの間のコントラスト差異の喪失が存在し得るかどうかが含まれ得る。自動焦点をトリガするための他の基準が存在する場合、プロセス500はブロック520に戻り得、新しい自動焦点動作がトリガされ得、レンズ210および第2のレンズ216(使用される場合)のうちの1つまたは複数が自動焦点合せされ得る。
【0067】
ブロック530では、撮像デバイス201は物体距離Dを決定し得る場合、プロセス500はブロック540に移り得、撮像デバイス201から物体202までの物体距離Dが決定され得る。いくつかの基準および実装詳細は、物体距離Dが決定され得るか否かに関係し得る。たとえば、前述のようにステレオ相違が使用される場合、物体内の特徴の相違が決定され得るかどうかが、物体距離Dが決定され得るかどうかをも決定し得る。他の例では、前述のようにレーザレンジファインディングが使用されるとき、光パルスが撮像デバイス301から物体302まで移動して戻るのにかかる時間が決定され得るかどうかが、物体距離Dが決定され得るかどうかをも決定し得る。別の実施形態では、物体距離Dが決定され得るかどうかが、物体追跡モジュール240が物体302を追跡することができたかどうかに関係する。撮像デバイス301、距離決定および監視モジュール224、および物体追跡モジュール240を実装するために使用されるシステムおよび/または方法に応じて、他のパラメータも、物体距離Dが決定され得るかどうかに関係し得る。
【0068】
次に、プロセス500はブロック545に移り、撮像デバイス200は、レンズ210および/または第2のレンズ216(使用される場合)のレンズ特性およびパラメータに基づいて焦点領域を決定し得る。前述のように、
図2の説明に関連して、レンズ特性はレンズハードウェアデータを含み得、レンズパラメータは、たとえば、焦点合せ距離、レンズ焦点距離、およびレンズアパーチャを含み得る。次に、プロセス500はブロック550に移り得、物体距離Dが焦点領域D1〜D2内となるかどうかが判定され得る。そうである場合、プロセス500はブロック530に戻り得、引き続き物体距離Dを決定および監視し、物体距離Dが焦点領域D1〜D2内にあるかどうかを監視し得る。プロセス500がブロック550からブロック530に戻るとき、たとえば、物体距離が焦点領域D1〜D2内にあるとき、レンズパラメータが同じままであり、焦点領域D1〜D2の再決定が、以前に決定されたのと同一の焦点領域D1〜D2を生成するので、任意選択でブロック545がスキップされ得る。したがって、プロセス500は、焦点領域D1〜D2の不要な再計算を避けることによって、撮像デバイス200のリソースを温存し得る。
【0069】
ブロック550では、物体距離Dが焦点領域D1〜D2の外側となったと判定され得る場合、プロセス500はブロック560に進み得、撮像デバイス200に対する物体距離Dが安定しているかどうかが判定され得る。前述のように、物体安定性は、撮像デバイス200の実装に応じて様々な方式で定義され得る。たとえば、指定の数を超える取り込まれたイメージフレーム内で物体距離Dが不変のままである場合、距離Dは安定していると見なされ得、プロセス500はブロック570に移り得、新しい自動焦点動作がトリガされ得、レンズ210および/または第2のレンズ216(使用される場合)が自動焦点合せされ得る。一方、物体距離Dが安定していない場合、たとえば1つまたは複数の連続して取り込まれたイメージフレーム間で距離Dが変化する場合、プロセス500はブロック530に戻り、引き続き焦点領域D1〜D2に関して物体距離Dを決定および監視し得る。あるいは、いくつかの実施形態では、ブロック550において、物体距離Dが焦点領域D1〜D2の外側となったと判定され得る場合、物体距離安定性を決定するブロック560がスキップされ得、新しい自動焦点動作がトリガされ得る。たとえば、撮像デバイス200のイメージ取込み機能が動作不能にされ、またはオフにされるとき、プロセス500はブロック580において終了する。
【0070】
いくつかの実施形態では、取り込まれたイメージフレームの指定の数は、メモリ内に記憶された所定の数であり得る。あるいは、取り込まれたイメージフレームの指定の数が、撮像デバイス200によって動的に決定され得る。
【0071】
いくつかの実施形態では、上記で略述されたブロックを実行することに加えて、プロセス500は、ブロック585および590による自動焦点トリガプロセスを並列でも実行し得る。いくつかの撮像デバイスは、モバイルコンピューティングデバイス内に運動検出器、たとえば加速度計またはジャイロスコープを含み得る。多くの場合、撮像デバイス200の著しい移動は、新しい自動焦点動作がトリガされるべきであるようなシーンの変化を示し得る。したがって、プロセス500はまた、運動検出器から信号を受け入れ得、著しい撮像デバイス移動、たとえば所定のしきい値を超える移動が検出され得る場合、プロセス500は、ブロック590において自動焦点動作をトリガし得る。撮像デバイス200の著しい運動を示す信号を検出することができない場合、プロセス500はブロック585に戻り、撮像デバイス200の運動検出器からの信号を引き続き監視し得る。
【0072】
前述のように、いくつかの実施形態は、直接的なメトリック、たとえば焦点領域を利用して、撮像デバイスの自動焦点動作をいつトリガするかを決定する。したがって、説明された実施形態は改良型の自動焦点トリガリング機能を有する。
【0073】
図6は、一実施形態による自動焦点動作をトリガする方法600を示すフローチャートである。方法は、ブロック610において、第1のレンズのレンズパラメータと、レンズパラメータに対応する焦点領域とをメモリコンポーネント内に記憶することによって開始する。次に、方法は、第1の時間のインスタンスにおいて目標物体に対して第1のレンズを焦点合せすることによってブロック620に移る。次に、方法は、ある期間にわたって撮像デバイスから目標物体までの距離を示す情報を受信することによってブロック630に移り、第1の時間のインスタンスが前記期間内に含まれる。次いで、方法は、第1の時間のインスタンスにおいて第1のレンズのレンズパラメータを取得することによってブロック640に移る。次いで、方法は、第1の時間のインスタンスでの距離および第1の時間のインスタンスでのレンズパラメータに基づいて焦点領域を決定することによってブロック650に移る。次に、方法は、目標物体までの距離が、目標物体が焦点領域の外部であることを示し、目標物体までの距離が、指定の時間枠について不変である場合、目標物体に対して再焦点合せするように第1のレンズをトリガすることによってブロック660において終了する。
【0074】
本明細書で開示される実装に関連して説明される様々な例示的論理ブロック、モジュール、回路、およびプロセスステップが、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装され得ることを当業者はさらに理解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的構成要素、ブロック、モジュール、回路、およびステップが、その機能の点で上記で一般的に説明された。そのような機能がハードウェアとして実装されるか、それともソフトウェアとして実装されるかは、特定の応用例、およびシステム全体に課される設計制約に依存する。当業者は、特定の応用例ごとに様々な方式で記載の機能を実装し得るが、そのような実装の決定が、開示される実施形態または実施形態の態様の範囲からの逸脱を引き起こすと解釈されるべきではない。一部分または一部品が全体以下の何かを含み得ることを当業者は理解されよう。たとえば、ピクセルの集合の一部分が、それらのピクセルのサブ集合を指すことがある。
【0075】
本明細書で開示される実装に関連して説明された様々な例示的論理ブロック、モジュール、および回路は、本明細書で説明された機能を実施するように設計された汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他のプログラマブル論理デバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリートハードウェア構成要素、あるいはそれらの任意の組合せとともに実装または実施され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替実施形態では、プロセッサは、任意の従来型プロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえばDSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、1つまたは複数のマイクロプロセッサとDSPコア、あるいは任意の他のそのような構成として実装され得る。
【0076】
本明細書で開示される実装に関連して説明された方法またはプロセスのステップは、ハードウェアで直接的に、プロセッサによって実行されるソフトウェアモジュールで、またはその2つの組合せで実施され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、取外し可能ディスク、CD-ROMメモリ、または当技術分野で周知の任意の他の形態の非一時的記憶媒体内に常駐し得る。例示的コンピュータ可読記憶媒体は、プロセッサがコンピュータ可読記憶媒体から情報を読み取り、コンピュータ可読記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体はASIC内に存在し得る。ASICはユーザ端末、カメラ、または他のデバイス内に存在し得る。代替として、プロセッサおよび記憶媒体は、ユーザ端末、カメラ、または他のデバイス内の別個の構成要素として存在し得る。
【0077】
参照のため、および様々なセクションを見つけるために、見出しが本明細書内に含まれる。これらの見出しは、それに関して説明された概念の範囲を限定しないものとする。そのような概念は、明細書全体にわたって適用性を有し得る。
【0078】
開示された実装の先の説明は、当業者が本明細書で開示される革新の実施形態を作成または使用することを可能にするために与えられる。これらの実装に対する様々な修正が当業者には容易に明らかとなり、本明細書で定義される一般原理は、本開示の範囲から逸脱することなく他の変形形態に適用され得る。したがって、現在説明された実施形態は、本明細書で示される実装に限定されるべきではなく、本明細書で開示される原理および新規な特徴に一致する最も広い範囲が与えられるべきである。