(57)【要約】【課題】３Ｄカメラからの深度情報に基づいてイメージにぼかしフィルタを適用して、浅い被写界深度のイメージをキャプチャするように構成された光学系の効果をシミュレートすること。【解決手段】前処理において、ぼけをキャプチャイメージについてシミュレートする。３Ｄカメラから３Ｄイメージを受け取って、３Ｄイメージ中の深度情報を用いて、３Ｄイメージ中の複数の被写体の相対的な距離を判定する。一つの被写体を該イメージの主被写体として選び、該イメージ中の追加の被写体を識別する。識別した被写体に対して、３Ｄカメラと主被写体の間の距離、主被写体と追加の被写体の間の距離、ならびに、仮想焦点距離および仮想ｆ値に基づきイメージぼけを加える。【選択図】図４
2014014076.tif 000002
【特許請求の範囲】
【請求項１】
イメージぼけを深度情報に基づいて加える方法において、
３Ｄカメラがキャプチャした３Ｄイメージを受け取るステップであって、該３Ｄイメージが複数の被写体および深度情報を、該複数の被写体のそれぞれについて有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を、前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を、前記第１の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
仮想ｆ値および仮想焦点距離を受け取るステップと、
前記第１の追加の被写体のための第１のぼかしファクタを計算するステップであって、該第１のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第１の追加の被写体に対し、前記第１のぼかしファクタに基づいて第１のイメージぼけを加えるステップと
を有する方法。
【請求項２】
請求項１に記載の方法において、
前記３Ｄイメージが第１のイメージおよび第２のイメージを含み、該第１のイメージが第１のカメラによりキャプチャされおよび該第２のイメージが第２のカメラによりキャプチャされ、２台のカメラは分離距離だけ分離され、および、同一方向に向けられている、方法。
【請求項３】
請求項２に記載の方法において、
前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記第１のイメージにおける前記被写体の位置と前記第２のイメージにおける前記被写体の位置との間のオフセットを含む、方法。
【請求項４】
請求項１に記載の方法において、
前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記複数の被写体のそれぞれについての視差情報を含む、方法。
【請求項５】
請求項１に記載の方法において、前記複数の被写体のうちの前記第１の被写体を前記対象被写体として識別するステップは、前記第１の被写体を前記対象被写体として識別するユーザ入力を受け取るステップを含む、方法。
【請求項６】
請求項１に記載の方法において、前記第１の追加の被写体に対し前記第１のイメージぼけを加えるステップは、
前記第１の追加の被写体に関連する被写体領域および透明領域を含むイメージレイヤを生成するステップと、
ぼかしスポットを生成するステップであって、該ぼかしスポットのサイズが前記第１のぼかしファクタに基づいている、ステップと、
前記ぼかしスポットを前記イメージレイヤに畳み込むステップであって、該畳み込み演算がぼけイメージレイヤを生成し、該ぼけイメージレイヤが、第１のぼけた追加の被写体を持つぼけた被写体領域および透明領域を有している、ステップと、
透明度関数を、前記被写体領域と前記透明領域との間の境界に適用するステップと
を含む、方法。
【請求項７】
請求項１に記載の方法において、さらに、
前記対象被写体と前記複数の被写体のうちの第２の追加の被写体との間の第３の距離を、前記第２の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記第２の追加の被写体のための第２のぼかしファクタを計算するステップであって、該第２のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第２の追加の被写体に対し、前記第２のぼかしファクタの値に基づいて第２のイメージぼけを加えるステップと
を有する方法。
【請求項８】
請求項７に記載の方法において、前記第１の追加の被写体は、前記３Ｄカメラへの距離が前記対象被写体よりも近く、前記対象被写体は、前記３Ｄカメラへの距離が前記第２の追加の被写体よりも近い、方法。
【請求項９】
イメージぼけを深度情報に基づいて加えるシステムであって、コンピュータプログラム命令をストアしおよびプロセッサにより実行するように構成された不揮発性コンピュータ可読媒体を含むシステムにおいて、該命令が、
３Ｄカメラから３Ｄイメージを受け取るステップであって、該３Ｄイメージが、それぞれの被写体に関連する複数の被写体および深度情報を有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を、前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を、前記第１の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
仮想ｆ値および仮想焦点距離を受け取るステップと、
前記第１の追加の被写体のための第１のぼかしファクタを計算するステップであって、該第１のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第１の追加の被写体に対し、前記第１のぼかしファクタに基づいて第１のイメージぼけを加えるステップと
に関し、並びに、
前記システムが前記コンピュータプログラム命令を実行するように構成されたプロセッサを含む、システム。
【請求項１０】
請求項９に記載のシステムにおいて、前記３Ｄカメラが第１のカメラおよび第２のカメラを含み、該２台のカメラは分離距離だけ分離され、および、同一方向に向けられており、該２台のカメラのそれぞれがイメージセンサを備えている、システム。
【請求項１１】
請求項１０に記載のシステムにおいて、前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記第１のカメラの前記イメージセンサに対する前記被写体の位置と前記第２のカメラの前記イメージセンサに対する前記被写体の位置との間のオフセットを含む、システム。
【請求項１２】
請求項９に記載のシステムにおいて、前記複数の被写体のうちの前記第１の被写体を前記対象被写体として識別するステップは、前記第１の被写体を識別するユーザ入力を受け取るステップを含む、システム。
【請求項１３】
請求項９に記載のシステムにおいて、前記第１の追加の被写体に対し前記第１のイメージぼけを加えるステップは、
前記第１の追加の被写体に関連する被写体領域および透明領域を含むイメージレイヤを生成するステップと、
ぼかしスポットを生成するステップであって、該ぼかしスポットのサイズが前記第１のぼかしファクタに基づいている、ステップと、
前記ぼかしスポットを前記イメージレイヤに畳み込むステップであって、該畳み込み演算がぼけイメージレイヤを生成し、該ぼけイメージレイヤが、第１のぼけた追加の被写体を持つぼけた被写体領域および透明領域を有している、ステップと、
透明度関数を、前記被写体領域と前記透明領域との間の境界に適用するステップと
を含む、システム。
【請求項１４】
請求項９に記載のシステムにおいて、前記コンピュータ可読媒体がさらに、
前記対象被写体と前記複数の被写体のうちの第２の追加の被写体との間の第３の距離を、前記第２の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記第２の追加の被写体のための第２のぼかしファクタを計算するステップであって、該第２のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第２の追加の被写体に対し、前記第２のぼかしファクタに基づいて第２のイメージぼけを加えるステップと
に関する命令を含むシステム。
【請求項１５】
請求項１４に記載のシステムにおいて、前記第１の追加の被写体は、前記３Ｄカメラへの距離が前記対象被写体よりも近く、前記対象被写体は、前記３Ｄカメラへの距離が前記第２の追加の被写体よりも近い、システム。
【請求項１６】
ンピュータプログラム命令をストアしおよびプロセッサにより実行するように構成された不揮発性のコンピュータ可読媒体において、該命令が、
３Ｄカメラから３Ｄイメージを受け取るステップであって、該３Ｄイメージが複数の被写体および深度情報を、該複数の被写体のそれぞれについて有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を、前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を、前記第１の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
仮想ｆ値および仮想焦点距離を受け取るステップと、
前記第１の追加の被写体のための第１のぼかしファクタを計算するステップであって、該第１のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第１の追加の被写体に対し、前記第１のぼかしファクタに基づいて第１のイメージぼけを加えるステップと
に関するコンピュータ可読媒体。
【請求項１７】
請求項１６に記載のコンピュータ可読媒体において、前記３Ｄイメージが第１のイメージおよび第２のイメージを含み、該第１のイメージが第１のカメラによりキャプチャされおよび該第２のイメージが第２のカメラによりキャプチャされ、２台のカメラは分離距離だけ分離され、および、同一方向に向けられている、コンピュータ可読媒体。
【請求項１８】
請求項１７に記載のコンピュータ可読媒体において、前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記第１のイメージにおける前記被写体の位置と前記第２のイメージにおける前記被写体の位置との間のオフセットを含む、コンピュータ可読媒体。
【請求項１９】
請求項１６に記載のコンピュータ可読媒体において、前記複数の被写体のうちの前記第１の被写体を前記対象被写体として識別するステップは、前記第１の被写体を前記対象被写体として識別するユーザ入力を受け取るステップを含む、コンピュータ可読媒体。
【請求項２０】
請求項１６に記載のコンピュータ可読媒体において、
前記第１の追加の被写体に対し前記第１のイメージぼけを加えるステップは、
前記第１の追加の被写体に関連する被写体領域および透明領域を含むイメージレイヤを生成するステップと、
ぼかしスポットを生成するステップであって、該ぼかしスポットのサイズが前記第１のぼかしファクタに基づいている、ステップと、
前記ぼかしスポットを前記イメージレイヤに畳み込むステップであって、該畳み込み演算がぼけイメージレイヤを生成し、該ぼけイメージレイヤが、第１のぼけた追加の被写体を持つぼけた被写体領域および透明領域を有している、ステップと、
透明度関数を、前記被写体領域と前記透明領域との間の境界に適用するステップと
を含む、コンピュータ可読媒体。
【請求項２１】
請求項１６に記載のコンピュータ可読媒体において、さらに、
前記対象被写体と前記複数の被写体のうちの第２の追加の被写体との間の第３の距離を、前記第２の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記第２の追加の被写体のための第２のぼかしファクタを計算するステップであって、該第２のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第２の追加の被写体に対し、前記第２のぼかしファクタの値に基づいて第２のイメージぼけを加えるステップと
に関する命令を含む、コンピュータ可読媒体。
【請求項２２】
請求項２１に記載のコンピュータ可読媒体において、前記第１の追加の被写体は、前記３Ｄカメラへの距離が前記対象被写体よりも近く、前記対象被写体は、前記３Ｄカメラへの距離が前記第２の追加の被写体よりも近い、コンピュータ可読媒体。
【請求項２３】
イメージぼけを深度情報に基づいて加える方法において、
カメラにより撮られたイメージを受け取るステップであって、該イメージが複数の被写体を有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を判定するステップと、
ｆ値および焦点距離を受け取るステップと、
前記第１の追加の被写体に対し、前記第１の距離、前記第２の距離、前記ｆ値、および、前記焦点距離に基づいて第１のイメージぼけを加えるステップと
を有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示は、一般的には光学系に関し、より詳細には、ぼかしフィルタを３Ｄカメラからの深度情報に基づいてイメージに適用して、浅い被写界深度のイメージをキャプチャするように構成された光学系の効果をシミュレートすることに関する。
【背景技術】
【０００２】
デジタルカメラの人気が上昇する以前は、大抵の写真と映画は、アナログカメラによってフィルムにキャプチャされた。このようなアナログカメラのセンサは、一般にはデジタルカメラのイメージセンサよりも大きいことから、アナログカメラが被写体を適正にフィルム上に合焦させるために、より大きなレンズと光学系を必要とした。アナログカメラに関連する、より大きな光学系は、イメージの一部だけに焦点が合い、そのイメージの残りがぼやける、被写界深度が浅いイメージをキャプチャするように構成することができる。これらのより大きな光学系に当然に起きるぼけは、視る者の注意をイメージの合焦した単一の部分に惹きつけるために使用できることから、カメラの操作者に有用であった。例えば、カメラを、或るシーンの前景にいる俳優が、背景のぼやけた木々に対照して合焦するように構成することができた。
【０００３】
デジタルカメラのイメージセンサはフィルムの物理的な制約を被らないことから、デジタルイメージング技術が新たに進歩するに従い、デジタルセンサはしだいに小型化された。デジタルイメージセンサのより小さなサイズとそれらの関連する光学系がフィルムカメラよりも可搬性があって多用途のデジタルカメラの発展を可能としてきた一方で、より小さなセンササイズはまた、デジタルカメラが浅い被写界深度のイメージをキャプチャすることを妨げている。換言すると、小型デジタルカメラの光学系を構成して、視る者の注意をイメージの単一の部分に惹きつける同様の芸術的なぼけを達成することは困難である。
【発明の概要】
【課題を解決するための手段】
【０００４】
前処理において、ぼけをキャプチャイメージについてシミュレートする。３Ｄカメラから３Ｄイメージを受け取って、３Ｄイメージ中の深度情報を用いて、３Ｄイメージ中の複数の被写体の相対的な距離を判定する。一つの被写体を該イメージの主被写体として選び、該イメージ中の追加の被写体を識別する。識別した被写体に対して、３Ｄカメラと主被写体の間の距離、主被写体と追加の被写体の間の距離、ならびに、仮想焦点距離および仮想ｆ値に基づきイメージぼけを加える。
【図面の簡単な説明】
【０００５】
開示する実施形態はその他の優位性と特徴を備えており、それらは、詳細な説明、添付の請求の範囲、及び、添付図（すなわち図面）から容易に明らかになるであろう。図面についての簡単な紹介は以下の通りである。
【図１Ａ】３Ｄカメラがキャプチャする、一実施形態に従った例示の３Ｄイメージを表わす図である。
【図１Ｂ】図１Ａのイメージ中に表される各被写体を視ている（viewing）ときに３Ｄカメラのセンサ面に発生する距離オフセットを一実施形態に従って表わす図である。
【図１Ｃ】図１Ａのイメージ中に表される各被写体を視ている（viewing）ときに３Ｄカメラのセンサ面に発生する距離オフセットを一実施形態に従って表わす図である。
【図１Ｄ】図１Ａのイメージ中に表される各被写体を視ている（viewing）ときに３Ｄカメラのセンサ面に発生する距離オフセットを一実施形態に従って表わす図である。
【図２】映画的なぼけを３Ｄイメージに加えるための、一実施形態に従ったシステムを表わすネットワーク図である。
【図３】一実施形態に従った、図２の映画的ぼかしモジュールの詳細図を表わすハイレベルブロック図である。
【図４】カメラと主被写体、追加の被写体との間の距離を一実施形態に従って表わす図である。
【図５】主被写体からの様々な距離におけるぼかしファクタの値を示す、一実施形態に従ったぼかし関数のグラフである。
【図６】一実施形態に従った、ぼやけたイメージを３Ｄカメラからの深度情報に基づいて発生する処理を示すフローチャートである。
【発明を実施するための形態】
【０００６】
図面及び以下の説明は、例示のためだけの好ましい実施形態に関するものである。留意すべきは、以下の説明から、本明細書中に開示される構造及び方法の別の形態を、特許請求の範囲の原理から逸脱することなく採用し得る実行可能な代替物として容易に認識できることである。
【０００７】
ここで、参照が幾つかの実施形態について詳細になされ、その例が添付図面に示される。どこででも実行可能な類似または同様の参照符号が図面中で用いられ、類似または同様の機能を表すことに注意されたい。図面は、開示するシステム(または方法)の実施形態を例示の目的だけのために示している。当業者は、以下の説明から、本明細書中に表された構造及び方法の別の形態を、本明細書中で説明する原理から逸脱することなく採用し得ることが容易に解るであろう。
【０００８】
構成の概観
大型の光学系を用いて浅い被写界深度のイメージをキャプチャしたときに発生するぼけは、コンピュータシステム上で稼動している映画的ぼかしモジュールによる前処理においてシミュレートすることができる。映画的ぼかしモジュールは３Ｄカメラがキャプチャした３次元（３Ｄ）イメージからの深度情報を解析して、３Ｄカメラと３Ｄイメージ中の様々な被写体との距離を判定する。映画的ぼかしモジュールはまた、そのイメージ中の被写体(objects)の一つを、そのイメージの主被写体(subject)として識別する。３Ｄイメージ中の被写体との距離を判定した後に、被写体と主被写体との距離に基づいてぼかしファクタが各被写体について計算され、ぼかしファクタは、各距離において被写体に適用されるぼかしフィルタの入力パラメータとして用いられる。このぼけはカメラの光学系においてではなく前処理において加えられるため、小型のイメージセンサ及び光学系を用いたポータブル３Ｄカメラを、元のイメージをキャプチャするために使用することもできる。
【０００９】
３Ｄカメラを、互いに平行に向けられ且つ同じ方向を向いた、独立した２台のカメラとして実施することもできる。この２台のカメラはわずかに異なる位置に配置されるため、このカメラがキャプチャした或る被写体の２つのイメージにおける位置には距離オフセットがあり、この距離オフセットを用いて被写体と３Ｄカメラとの間の距離を判定することができる。この場合、（当技術分野では視差（parallax）情報として知られている）このオフセットは被写体についての深度情報を表している。
【００１０】
一実施形態において、映画的ぼかしモジュールは２つのイメージを受け取り、オフセット情報を用いて、イメージを、その各レイヤがカメラから固定した距離間隔における被写体を含んでいる一連の深度レイヤに分割する（深度段階（depth step）と呼ぶ）。例えば、一つのレイヤは、カメラから２．４乃至２．５メートルの間の被写体を含んでいてよい。映画的ぼかしモジュールはまた、パターン認識とユーザ入力の組み合わせを用いて一つの被写体をイメージの主被写体として識別し、その主被写体を含むレイヤがサブジェクトレイヤに指定される。
【００１１】
サブジェクトレイヤが識別された後に、ぼかしファクタが各レイヤについて計算される。ぼかしファクタは、そのレイヤとサブジェクトレイヤとの間の距離、３Ｄカメラとサブジェクトレイヤとの間の距離、及び、ユーザが提供する仮想のｆ値及び仮想の焦点距離に基づいている。これにより、有益にも、浅い被写界深度のイメージをキャプチャするように構成された大型の光学系に相当する仮想のｆ値及び仮想の焦点距離をユーザが備えることが可能になる。ぼかしファクタを各レイヤについて計算した後に、ぼかしファクタに基づいて各レイヤにイメージぼけを加えて、個々のぼやけイメージレイヤが次いで合成されて単一のぼやけたイメージを作り出す。
【００１２】
本明細書中で用いる通り、３Ｄイメージとは、３Ｄカメラとイメージ中の被写体との間の距離を判定するために用いることができる３Ｄ深度情報を含んだイメージを言う。同じ様に、３Ｄカメラは３Ｄ深度情報をキャプチャすることができるカメラである。例えば、３Ｄカメラを、同じ方向に向けられた分離した２台のデジタルカメラとして、図１Ｂ乃至１Ｄを参照して説明されるように実施することもできる。
【００１３】
本明細書中で用いる通り、被写体は、カメラがイメージの一部としてキャプチャした物理エンティティである。被写体はカメラから様々な距離に位置することができ、及び／または、フレーム内で様々な位置（例えば、左側、中央、または右側）に位置することもできる。加えて、或るイメージにおける一つの被写体をそのイメージの主被写体として選んでもよい。本明細書中で用いる通り、イメージの主被写体は合焦したままであることを意味する被写体であり、そのイメージ中の他の被写体は追加の被写体である。
【００１４】
幾つかのイメージにおいて、視る者の注意を惹きつけるように主被写体を選ぶこともできる。例えば、背景の木々の前に女優を表現するイメージにおいて、女優を主被写体として、木々を追加の被写体としてもよい。別のものとして、主被写体を純粋に芸術的な理由で選んでもよい。例えば、前の例での女優が伸ばした腕に花を抱えており、体の残りは彼女の腕より後ろにあってカメラからさらに遠くに離れていると仮定する。ユーザは、女優よりむしろ花を意図的に主被写体として選ぶことで、女優に注意を惹きつけたいと思うであろう。ユーザは続いて、視る者の注意をぼやけた女優に惹きつける意図で、イメージぼけを女優に加えて花には加えないように映画的ぼかしモジュールを構成することもできる。
【００１５】
本明細書中で用いる通り、ぼかしファクタは、イメージ中の被写体に適用されるぼかしフィルタの強さを定義するパラメータである。ぼかしファクタは、図５に示されるぼかし関数などのぼかし関数で計算することもできる。ぼかし関数を構成して、カメラから同一距離にある主被写体とどの追加の被写体も主被写体として１のぼかしファクタを持つようにすることができ、このことは、イメージぼけが付加されることがないことを意味する。この場合、ぼかし関数を追加的に構成し、他の距離にある被写体が１よりも大きいぼかしファクタを持つようにすることができ、このことは、イメージぼけがそれらの被写体に付加され、浅い被写界深度のイメージの効果をシミュレートすることを意味する。
視差情報を用いて被写体の距離を判定すること
図１Ａは、一実施形態に従った、３Ｄカメラがキャプチャすることのできる例示の３Ｄイメージ１００である。図１Ａの実施形態において、左側のサイクリスト１０４がイメージ１００の主被写体である。イメージ１００はまた、２つの追加の被写体１０２，１０６を含んでいる。ウサギ１０２はサイクリスト１０４より前方でイメージ１００の右側にいて、木１０６はサイクリスト１０４より後ろの背景でイメージの中央にある。サイクリスト１０４がイメージ１００の主被写体であるため、ユーザは、サイクリスト１０４に合焦してウサギ１０２と木１０６はぼやけているように被写界深度をシミュレートしたいと思うであろう。
【００１６】
図１Ｂ−１Ｄは、一実施形態に従った、図１Ａの例示の３Ｄイメージ１００における被写体１０２，１０４，１０６を視ている（viewing）ときに３Ｄカメラのセンサ面１１０Ａ，１１０Ｂに発生する、相対的な水平距離オフセットを表わす図である。このオフセットは、３Ｄカメラと各被写体１０２，１０４，１０６との間の距離を計算するために引き続き使用することができる３Ｄ深度情報を表し、２個のセンサ１１０Ａ，１１０Ｂにより撮られる２つのイメージの組み合わせが単一の３Ｄイメージを表す。
【００１７】
例示の３Ｄカメラが各イメージの左側に示されている。図１Ｂ−１Ｄに示された例示の３Ｄカメラは独立した２台のカメラ（左側カメラ１０８Ａ及び右側カメラ１０８Ｂ）として実施され、各カメラ１０８Ａ，１０８Ｂは自身のイメージセンサ１１０Ａ，１１０Ｂと自身のレンズ１０８Ａ，１０８Ｂを有する。追加のレンズやアパーチャなどの追加の光学コンポーネントは、簡明さのために図１Ｂ−１Ｄでは省略した。他の実施形態において、３Ｄカメラは、２つまたはそれよりも多いレンズが付いた単一のカメラ（例えばステレオカメラ）を含んでもよい。
【００１８】
図示した実施形態において、２台のカメラ１１２Ａ，１１２Ｂが並んで同一の垂直高さに配置され、図１Ｂ−１Ｄはカメラ１１２Ａ，１１２Ｂと被写体１０２，１０４，１０６のトップダウンビューを表している。他の実施形態では、カメラ１１２Ａ，１１２Ｂを違ったように置くこともできる。例えば、第１のカメラ１１２Ａを第２のカメラ１１２Ｂよりも上に配置することも、また、２台のカメラ１１２Ａ，１１２Ｂを斜めに配置することもできる。カメラ１１２Ａ，１１２Ｂの向きはまた、時間とともに変化してもよい。例えば、２台のカメラ１１２Ａ，１１２Ｂがスノーボーダーのヘルメットに装着されているならば、カメラ１１２Ａ，１１２Ｂの向きを、スノーボーダーが種々のスタントやトリックを実行するにつれて急激に変化させる。２台のカメラ１１２Ａ，１１２Ｂが同一の方向に位置したままであってそのカメラ間の距離が分かっている限り、カメラ１１２Ａ，１１２Ｂの向きが３Ｄ情報を精確にキャプチャするその能力に影響することはない。
【００１９】
図１Ｂは、図１Ａのイメージ１００中に表されたウサギ１０２についてのオフセットを表している。ウサギ１０２はイメージ１００の右側にあるため、右手カメラ１１２Ｂの真っ直ぐ前方にあり、左手カメラ１１２Ａの真っ直ぐ前方にはない。したがって、ウサギ１０２は右手センサ１１０Ｂの中央に現れ、左手センサ１１０Ａの左側エッジに現れ、このことは、ウサギ１０２についてのオフセットがイメージセンサ１１０Ａ，１１０Ｂの幅の半分だけスパンしていることを意味する。
【００２０】
図１Ｃは、図１Ａのイメージ１００中のサイクリスト１０４についてのオフセットを表している。サイクリスト１０４はイメージ１００の左側にあるため、左手カメラ１１２Ａの前方にあり、右手カメラ１１２Ｂに対し左側にある。この結果、サイクリスト１０４は左手センサ１１０Ａの中央に現れ、右手センサ１１０Ｂの右側に現れる。サイクリスト１０４はカメラ１１２Ａ，１１２Ｂからウサギ１０２よりも遠くに離れているため、左手および右手センサ１１０Ａ，１１０Ｂ上のサイクリストの位置間のオフセットは、ウサギ１０２についてのオフセットよりも小さい。
【００２１】
図１Ｄは、木１０６についてのオフセットを表している。木１０６はイメージ１００の中心にあり、左手センサ１１０Ａの中心からわずかに左に現れ、右手センサ１１０Ｂの中心からわずかに右に現れる。木はカメラ１１２Ａ，１１２Ｂからウサギ１０２およびサイクリスト１０４よりも遠くに離れているため、２個のイメージセンサ１１０Ａ，１１０Ｂ上の木の位置間のオフセットは、２つのより近い被写体１０２，１０４についてのオフセットよりも小さい。
【００２２】
図１Ａ−１Ｄを参照して説明した例は単に説明のためであり、対応する図面では特定の大きさを誇張して、３つの被写体１０２，１０４，１０６についての距離オフセットを強調している。ほとんどの状況において、２台のカメラ１０８Ａ，１０８Ｂ間の距離は、３Ｄイメージにキャプチャされた実生活上の被写体のサイズよりも小さい。しかしながら、本明細書中で説明される、被写体の距離とそのイメージセンサ上での距離オフセットの間の関係に関する一般的な原理は、３Ｄカメラシステムとキャプチャされる被写体の相対的なサイズに関係なく応用が可能である。
【００２３】
概して、３Ｄカメラのセンサ上の被写体位置間のオフセットは、カメラとセンサとの間の距離が増大するにつれて減少し、オフセットを用いて、カメラとセンサとの間の距離を判定することができる。この距離を被写体距離（object distance）と呼ぶ。したがって、（当技術分野において視差情報として知られている）オフセットは、３Ｄカメラシステムが集めることのできる３Ｄ深度情報の一つの例である。視差情報を用いて被写体距離を判定する処理は測距（ranging）と呼ばれ、図３の距離計算機３０４を参照して詳細にされる。測距処理についてはまた、“Ranging Device and Ranging Module and Image-Capturing Device using the Ranging Device or the Ranging Module”と題する米国特許公開公報第２０１１／０１４００８６号において説明されており、該公報は参照により全体として本明細書に組み込まれる。被写体距離およびオフセットについての本明細書中の残りの説明は簡潔のために視差情報を用いる実施形態に限定されているが、イメージ中の被写体間の距離および被写体とカメラとの間の距離（例えば、焦点距離（focus distance）、レーザ測距など）を判定する他のどのような好適な方法も用いることもできることに留意されたい。
【００２４】
例示のコンピューティング環境
図２は、一実施形態に従った、映画的なぼけを３Ｄイメージ１００に加えるためのシステム２００を表すネットワーク図である。システム２００は、２台のカメラ２０２Ａ，２０２Ｂ、ネットワーク２１６、および、コンピューティングシステム２１８を有する。図１Ａ−１Ｄを参照して説明したように、２台のカメラ２０２Ａ，２０２Ｂを用いて、イメージ中の被写体についての視差情報を、異なる２つのアングルからイメージをキャプチャすることによってキャプチャする。カメラ２０２Ａ，２０２Ｂは互いに平行に配置され、或る分離距離だけ分離されて同一の方向に向けられる。このカメラ２０２Ａ，２０２Ｂの平行配置を維持するために、剛性のあるメカニカルハウジング内に配置して互いの相対的な移動を防いでもよい。
【００２５】
各カメラ２０２は光学系２０４、イメージセンサ２０６、プロセッサ２０８、メモリ２１０、１つ以上のユーザ入力デバイス２１２、および、ネットワークモジュール２１４を有する。各カメラ２０２はまた、ディスプレイ、人工照明（例えばフラッシュ）、または三脚架などの追加の構成要素を含んでもよいが、これらの構成要素はシステム２００のぼかし関数に重要ではなく、簡略化のために図２からは省略してある。
【００２６】
光学系２０４は、イメージをイメージセンサ上に合焦させるための光学構成要素を含んでいる。光学構成要素は、例えば、入射瞳の直径を変化させるためのアパーチャ、および、焦点距離（focal distance）を可変する１つ以上の可動レンズを含んでもよい。入射瞳の直径、焦点距離、および、光学系２０４の他の特性を、カメラの他の構成要素からの電気信号によって、または光学系上の機械的な制御に対するユーザの物理的な相互作用によって制御してもよい。
【００２７】
概して、カメラ２０２Ａ，２０２Ｂの光学系２０４を含んだどのような光学系の構成も、２つのパラメータ、焦点距離およびｆ値によって特徴づけることもできる。焦点距離は、上でおよび本明細書の残りで説明するように、レンズと、レンズの平行光線（すなわち、レンズから本質的に無限遠にある被写体からの光線）に対する合焦点との距離である。ｆ値は、本明細書中で用いるように、焦点距離と入射瞳の直径との比である。すなわち、焦点距離をｆ、入射瞳の直径をＤ、ｆ値をｆ＃とすると、ｆ＃＝ｆ／Ｄである。この式において、ｆ値は入射瞳の直径に反比例することが解る。換言すると、より小さなｆ値はより大きな入射瞳の直径に相当する。当技術分野において知られているように、カメラがキャプチャする被写界深度は、カメラの光学系のｆ値を減少すること（すなわち、入射瞳のサイズを増大すること）によって、またはレンズの焦点距離を増大することによって、より浅くすることもできる。
【００２８】
光学系２０４には、その焦点距離の範囲およびｆ値を制限する機械的な制約がある。例えば、光学系２０４の軸方向の長さが、光学系２０４の焦点距離の最大値および最小値を確立する場合がある。同じ様に、アパーチャの設計が最大および最小の入射瞳直径を確立する場合があり、これにより、光学系のｆ値の範囲を制限することになる。加えて、カメラ２０２の視界は、光学系２０４の焦点距離およびイメージセンサ２０６の幅に依存する。
【００２９】
イメージセンサ２０６は、光学系２０４からの光学イメージを電子イメージに変換する電子部品である。イメージぼけが前処理において付け加えられるため、浅い被写界深度のイメージをキャプチャすることができる大型の光学系２０４およびイメージセンサ２０６の必要性は少ないであろう。したがって、小型化した光学系２０４およびイメージセンサ２０６を含む小型で可搬性のあるカメラ２０２Ａ，２０２Ｂを用いて、映画的ぼかしモジュールによって使用される視差情報をキャプチャすることもできる。
【００３０】
プロセッサ２０８は、メモリ２１０にストアされた、コンピュータが読み取り可能な命令を実行するハードウエアデバイスである。プロセッサ２０８は、カメラの他の構成要素を実行された命令に基づいて制御する。例えば、プロセッサ２０８は、電子的な制御信号を光学系２０４に送ることも、またはネットワークモジュール２１４を用いてデータをネットワーク２１６上でコンピューティングシステム２１８または結合された他の何らかのデバイスに送ることもできる。
【００３１】
メモリ２１０は、プロセッサ２０８が読み取り可能な不揮発性の記憶媒体である。メモリ２１０は揮発性メモリ（例えばＲＡＭ）と不揮発性メモリ（例えば、フラッシュメモリ、ハードディスクなど）の組み合わせを含んでもよく、とりわけ、イメージセンサ２０８がキャプチャしたイメージデータおよびプロセッサ２０８が実行する読み取り可能な命令をストアするために用いることもできる。
【００３２】
ユーザ入力デバイス２１２は、ユーザがカメラの電子的機能と交信できるようにする。ユーザ入力デバイス２１２は、ボタン、ダイヤル、またはタッチスクリーンなどの物理的または電子的な入力デバイスのどのような組み合わせを含んでもよい。ユーザ入力デバイス２１２の例は、ビデオを記録することを開始するためまたは静止画像をキャプチャするための外部ボタン、タップツーフォーカス機能のついたタッチスクリーン、および、カメラ２０２のメニュー階層をナビゲートするためのダイヤル／ボタンの組み合わせを含む。加えて、ユーザ入力デバイス２１２は、無線でカメラ２０２と通信するリモコンなどの、リモートユーザ入力デバイスを含むこともできる。
【００３３】
ネットワークモジュール２１４は、コンピューティングシステム２１８または他のカメラ２０２などの他のデバイスと通信するために、データをネットワーク２１６上で送信しおよび受信する。ネットワークモジュール２１４は、特に、メモリ２１０に保存されたイメージを処理のためにコンピュータシステム２１８へ転送するために用いられる。別のものとして、ネットワークモジュール２１４を、イメージセンサ２０６がキャプチャしたイメージテータをリアルタイムでコンピューティングシステムに送る（すなわち、イメージデータをキャプチャするとすぐに送る）ように構成することもできる。
【００３４】
他の実施形態では、システム２００が追加のまたはより少ないカメラ２０２を含んでもよい。例えば、３台目のカメラを、そのカメラが他の２台のカメラのブラインドスポットを視ることのできる位置に追加してもよい。別のものとして、２以上の光学系２０４およびイメージセンサ２０６を含む単一のカメラ２０２（例えばステレオカメラ）を用いて、キャプチャイメージにおける被写体の距離を判定するために用いられる視差情報をキャプチャすることもできる。この場合、２つの光学系２０４およびイメージセンサ２０６が平行に向けられ且つ同じ方向を向くように、単一のカメラ２０２のハウジングを構成してもよい。
【００３５】
ネットワーク２０６は、カメラ２０２およびコンピューティングシステム２１８を含む結合されたデバイスがデータを相互に交換できるようにする。ネットワーク２０６は、有線接続または無線技術の組み合わせを含むこともでき、ＩＥＥＥ  １３９７、Ｅｔｈｅｒｎｅｔ（登録商標）  ８０２．１１、またはＢｌｕｅｔｏｏｔｈ（登録商標）などの種々の接続標準およびプロトコルを使用することもできる。ネットワーク２０６はまた、インターネットを利用して、結合されたデバイス間でデータを交換することもでき、および、ＣＤＭＡ，３Ｇ，４Ｇまたはデジタル加入者回線（ＤＳＬ）などのリンク技術を含むこともできる。別の実施形態では、ネットワーク２１６とネットワークモジュール２１４，２２４が省略され、イメージデータは、カメラ２０２からコンピューティングシステム２１８へ、不揮発性コンピュータ読み取り可能媒体(例えば、取り外し可能なフラッシュメモリカード)をカメラ２０２からコンピュータ２１８へ物理的に転送することによって転送される。
【００３６】
図２はまた、イメージデータをカメラ２０２から受け取って処理するコンピューティングシステム２１８の詳細図である。コンピューティングシステム２１８は、とりわけ、プロセッサ２２０、メモリ２２２、ネットワークモジュール２２４、ユーザ入力デバイス２２６、ディスプレイ２２８、および、映画的ぼかしモジュール２３０を含む。全体として、コンピューティングシステム２１８は、これらの構成要素２２０，２２２，２２４，２２６，２２８，２３０を含む、デスクトップコンピュータ、ポータブルコンピュータ（例えばラップトップ）、タブレットコンピュータ、スマートフォン、または同等のその他のカメラなど、どのような電子デバイスであってもよい。
【００３７】
カメラ２０２のプロセッサ２０８と同様、コンピューティングシステムにおけるプロセッサ２２０は、コンピュータが読み取り可能な命令を実行するハードウエアデバイスである。一個のプロセッサ２２０だけが描かれているが、コンピューティングシステム２１８は、種々タスク専用の複数のプロセッサ２２０（例えば、中央処理装置および独立したグラフィックプロセッサ）または並列で動作して同一タスクに対して動作する複数のプロセッサ２２０を含むこともできる。
【００３８】
メモリ２２２は、プロセッサ２２０が読み取り可能な不揮発性の記憶媒体である。カメラ２０２のメモリ２１０と同様に、コンピューティングシステム２１８のメモリ２２２は揮発性メモリ（例えばＲＡＭ）と不揮発性メモリ（例えば、ソリッドステートドライブ、ハードディスクドライブ、光学ディスク、取り外し可能フラッシュメモリなど）の組み合わせを含んでもよい。
【００３９】
ネットワークモジュール２２４は、ネットワーク２１６越しに、カメラ２０２を含む結合されたデバイスと通信する。ネットワークモジュール２２４を用いて、イメージデータをカメラ２０２から受け取ってもよい。イメージデータを受け取ると、ネットワークモジュール２２４はイメージデータを後でアクセスされるメモリ２２２にストアすることも、またはそのデータを直接、映画的ぼかしモジュール２３０に送ることもできる。ユーザ入力デバイス２２６は、コンピューティングシステム２１８のユーザからの入力を受け取る。ユーザ入力デバイス２２６は、例えば、キーボード、マウス、またはタッチスクリーンを含むこともできる。ディスプレイ２２８は、情報をユーザに示す可視出力デバイス（例えばモニタ）である。特に、ディスプレイ２２８は、カメラ２０２から受け取ったイメージおよび映画的ぼかしモジュール２３０が生成したぼけイメージを表示することもできる。
【００４０】
映画的ぼかしモジュール２３０は、カメラ２２２またはネットワークモジュール２２４から３Ｄイメージデータを受け取り、浅い被写界深度のイメージをキャプチャするように構成された大型の光学系の効果に近似する、部分的にぼやけたイメージを生成する。高いレベルで、映画的ぼかしモジュールは３Ｄ深度情報（例えば視差情報）を用いて、イメージ中の主被写体と追加の被写体の間の距離（“デフォーカス距離”と呼ばれる）を判定し、および、ぼかしフィルタを関連するデフォーカス距離に基づいて追加の被写体に適用する。映画的ぼかしモジュール２３０のこの機能については、図３を参照してさらに詳細に説明する。映画的ぼかしモジュール２３０をコンピューティングシステム２１８内の独立したエンティティとして表してあるが、モジュール２３０を、メモリにストアしたコンピュータ読み取り可能な命令として、独立したハードウエアモジュールとして、プロセッサに組み込んだハードウエアモジュールとして、またはそのどのような組み合わせとして実施してもよい。
【００４１】
図３は、一実施形態に従った、図２の映画的ぼかしモジュール２３０の詳細図を表わすハイレベルブロック図である。映画的ぼかしモジュール２３０は、主被写体識別モジュール３０２、距離計算機３０４、レイヤ発生器３０６、ぼかしファクタ計算機３０８、および、ぼかしフィルタ３１０を含む。主被写体識別モジュール３０２はパターン認識モジュール３０２Ａおよびユーザ選択モジュール３０２Ｂを含み、ぼかしフィルタ３１０はぼかしスポット発生器３１０Ａ、畳み込みモジュール３１０Ｂ、透明度モジュール３１０Ｃ、および、レイヤ合成モジュール３１０Ｄを含む。
【００４２】
主被写体識別モジュール３０２は３Ｄイメージを受け取り、様々な方法を用いて、イメージ中の一つの被写体をそのイメージの主被写体として識別する。パターン認識モジュール３０２Ａは、パターン認識アルゴリズムを用いて、視る者が興味があるかもしれない被写体を識別する。例えば、パターン認識モジュール３０２Ａは顔認識アルゴリズムを用いて、図１Ａの例示のイメージ１００におけるサイクリスト１０４の顔の特徴を識別する。
【００４３】
ユーザ選択モジュール３０２Ｂは、ユーザが或る被写体をマニュアルでイメージの主被写体として選択できるようにする。一実施形態では、ユーザ選択モジュール３０２Ｂはディスプレイ２２８上にイメージを表示し、ユーザがユーザ入力デバイス２２６を用いて、表示されたイメージ中の或る被写体を主被写体として識別できるようにする。例えば、パターン認識モジュール３０２Ａがサイクリスト１０４の顔の特徴を認識することができない場合、ユーザはユーザ入力デバイス２２６を用いてサイクリスト１０４を選択することもできる。ユーザ選択モジュール３０２Ｂはこのユーザ入力を用い、サイクリスト１０４を主被写体として指定する。
【００４４】
パターン認識モジュール３０２Ａおよびユーザ選択モジュール３０２Ｂは協働して動作し、３Ｄイメージのシーケンス（例えば３Ｄビデオの複数のフレーム）における主被写体を識別することもできる。例えば、ユーザ選択モジュール３０２Ｂを用いてビデオの特定のフレーム（例えば、キーフレームごと、固定した一秒間の間隔でなど）における主被写体をマニュアルで選択することもでき、一方、パターン認識モジュール３０２Ａを用いて、ビデオフレーム中のユーザが選択した主被写体に類似している、ユーザがその主被写体を選択した各フレームに即座に続くパターンを識別する。
【００４５】
別のものとして、モジュール３０２Ａおよび３０２Ｂのうち一つを省略してもよく、主被写体識別モジュール３０２が排他的に単一のモジュールに頼って、映画的ぼかしモジュール２３０の主被写体識別機能を実行してもよい。例えば、どのイメージについてもパターン認識モジュール３０２Ａを用いるように主被写体識別モジュール３０２を構成することもできる。この構成により、多数のイメージについてなんら特筆すべきユーザ入力なしで主被写体識別処理を行うことかできる。別のものとして、ユーザ選択モジュール３０２Ｂを用いて、各イメージの主被写体をマニュアルで識別することもできる。この代替の構成は、ユーザが単に少数のイメージをキャプチャした場合、または、コンピュータリソースが限定されたコンピューティングシステム２１８上で映画的ぼかしモジュール２３０が動作している場合に有益であろう。加えて、主被写体識別モジュール３０２はまた、他のモジュールを追加でまたはパターン認識モジュール３０２Ａおよびユーザ選択モジュール３０２Ｂに代えて含むこともできる。
【００４６】
距離計算機３０４は、３Ｄイメージ中の３Ｄ深度情報を解析して、３Ｄカメラと３Ｄイメージ中の被写体との間の距離（すなわち、被写体距離）を判定する。図１Ａ乃至１Ｄを参照して説明した通り、３Ｄ深度情報を解析して被写体距離を判定する処理は「測距」と呼ばれる。一実施形態では、距離計算機３０４は２台のカメラ２０２Ａ，２０２Ｂから２つのイメージを受け取り、このイメージについて、イメージ中の視差情報を解析することで測距する。とりわけ、距離計算機３０４は式Ｖ＝（σ・ｆ）／（ｓ・ｄ）を使用し、ここで、σは２台のカメラ２０２Ａ，２０２Ｂの間の分離した距離、ｆはカメラの光学系２０４Ａ，２０４Ｂの焦点距離、ｓは２個のイメージセンサ２０６Ａ，２０６Ｂ上の被写体の位置の間の（例えば複数画素における）オフセット、ｄは２個のイメージセンサ２０６Ａ，２０６Ｂ上の一画素の幅、Ｖは３Ｄカメラと測距されている被写体の間の距離である。
【００４７】
主被写体識別モジュール３０２がイメージの主被写体を識別した後で、距離計算機３０４を用いて、主被写体と各追加の被写体との間の距離を判定することもできる。この距離は”デフォーカス距離”と呼ばれ、主被写体距離（subject distance）（すなわち、３Ｄカメラと主被写体との間の距離、または、主被写体として識別される被写体の被写体距離）を追加の被写体の被写体距離（object distance）から減ずることによって計算することができる。デフォーカス距離は主被写体の前方（すなわち、３Ｄカメラと主被写体との間）の追加の被写体に対して負であり、主被写体の後方の（すなわち、３Ｄカメラから主被写体より遠く離れた）追加の被写体に対して正である。追加の被写体に対するデフォーカス距離をぼかしファクタ計算機３０８において用い、追加の被写体に対するぼかしファクタが計算される。
【００４８】
レイヤ発生器３０６は３Ｄイメージを一連の深度段階に分割し、被写体を含むレイヤを各段階で発生する。レイヤ発生器３０６は、距離計算機３０４で発生した被写体距離を用い、各深度段階の内容（content）を判定する。例えば、レイヤ発生器３０６は、２．４メートルと２．５メートルの間の被写体距離をもつすべての被写体を第１レイヤに割り当てることができ、２．５メートルと２．６メートルの間の被写体距離をもつすべての被写体を第２レイヤに割り当てること、などができる。この場合、第１レイヤは２．４−２．５メートルの深度段階に対応し、第２レイヤは２．５−２．６メートルの深度段階に対応する。レイヤを発生するために、レイヤ発生器３０６は透明な後景から始め、対応する深度段階からの被写体を透明な背景のトップに配置する。よって、被写体を含むレイヤの領域は、何らの被写体を含まないレイヤの領域が透明のままである間、不透明である。
【００４９】
レイヤを発生した後で、ぼかしファクタ計算機３０８とぼかしフィルタ３１０は協働し、ぼかしフィルタを各レイヤに適用する。レイヤ発生器３０６はまた、主被写体に対応するレイヤをサブジェクトレイヤとして識別し、サブジェクトレイヤにイメージぼけを加えないようにぼかしファクタ計算機３０８とぼかしフィルタ３１０を構成することもできる。
【００５０】
レイヤ発生器３０６は、レイヤの深度段階のサイズが３Ｄイメージの内容に依存して変化するように構成することもできる。例えば、図１Ａの例示のイメージ１００におけるウサギ１０２が２．５メートルの被写体距離をもち、草で囲まれていると仮定する。ウサギ１０２を含む深度段階はより小さい（例えば、２．４５−２．５０メートルおよび２．５０−２．５５メートル）とは云え、囲んでいる草の深度段階はより大きい（例えば、２．３５−２．４５メートルおよび２．５５−２．６５メートル）。深度段階のサイズを変更すると、視る者の注意を惹きそうな被写体の現実的なぼけ効果を依然発生しつつ、リソース使用の減少に到達することができる。
【００５１】
加えて、レイヤ発生器３０６はまた、何らの被写体を含まないレイヤ（例えば完全に透明なレイヤ）を省略してもよい。例えば、カメラ２０２Ａ，２０２Ｂが第１のスキードライバーのヘルメットに装着されており、第１のスキードライバーが前景の第２のスキードライバーと背景の飛行機からなるイメージをキャプチャすると仮定する。第２のスキードライバーを主被写体として選んだ場合、飛行機だけがイメージ中のただ一つの追加の被写体になる。この場合、カメラと第２のスキードライバーとの間および第２のスキードライバーと飛行機との間の何もない空の深度段階は完全に空になるので、対応するレイヤは、意味のあるイメージデータを何ら含まないものになる。この場合、レイヤ発生器３０６は対応するレイヤを単に省略して、ぼかしファクタ計算機３０８とぼかしフィルタ３１０のリソースの使用を減少させる。
【００５２】
ぼかしファクタ計算機３０８は、レイヤ発生器３０６が発生した各イメージレイヤについてぼかしファクタを計算する。ぼかしファクタは、イメージレイヤに適用されるぼかしフィルタの強度を決定する。一実施形態では、イメージレイヤについてのぼかしファクタは次式で与えられる。
【００５３】
【数１】
2014014076.tif 000003
【００５４】
この式において、ｆは仮想光学系（カメラ２０２Ａ，２０２Ｂの光学系２０４Ａ，２０４Ｂではない）の焦点距離、ｆ＃は同光学系のｆ値、Ｖは主被写体距離、ΔＶはイメージレイヤに関連する深度段階のデフォーカス距離、βはぼかしファクタである。仮想光学系の焦点距離およびｆ値はユーザが選ぶこともでき、これにより、有益にも、選んだ被写界深度をもつイメージをもたらす焦点距離およびｆ値をユーザが選べるようになる。主被写体距離およびデフォーカス距離は距離計算機３０４によって計算される。この式は光学系の振る舞いを表している。言い換えると、ぼかしファクタは、デフォーカス距離に置かれた点光源（point source）を特定の焦点距離およびｆ値をもつ仮想光学系を通して視たときにイメージセンサに現れるぼかしスポットのサイズを表現している。したがって、この式は有益にも、カメラ２０２Ａ，２０２Ｂの光学系２０４Ａ，２０４Ｂと同一の焦点距離およびｆ値の制約によって制限されることのない仮想光学系の効果をシミュレートするために用いられる。
【００５５】
ぼかしフィルタ３１０は、レイヤ発生器３０６からイメージレイヤを受け取り、イメージレイヤにそのレイヤのぼかしファクタに基づいてぼかしフィルタを適用する。ぼかしスポット発生器３１０Ａはぼかしファクタを使用してぼかしスポットを生成する。ぼかしファクタ計算機３０８に関して上述したように、ぼかしスポットはイメージの部分であり、この部分は、ユーザの特定の焦点距離およびｆ値を持つように構成された光学系を用いて、そのイメージの部分を占め且つイメージレイヤに対応するデフォーカス距離に位置する点光源を視た場合に、イメージセンサ２０６Ａ，２０６Ｂ上に現れる。ぼかしスポット発生器３１０Ａは、ぼかしファクタが１の値をもつ場合にインパルス関数を発生するように構成することもできる。この場合、１のぼかしファクタは、レイヤにどんなイメージぼけもぼかしフィルタにより追加させることはない。
【００５６】
一実施形態において、ぼかしスポット発生器３１０Ａは、エアー円盤の形状を近似する、当技術分野で知られた通りのガウス関数を生成する。別の実施形態では、ぼかしスポット発生器３１０Ａは、一様な円盤からなるぼかしスポットを生成する。さらに別の実施形態では、ぼかしスポット発生器３１０Ａは、正五角形などの非円形形状を生成して非円形アパーチャの効果をシミュレートするように構成してもよい。しかしながら、ぼかしスポットの直径は、ぼかしスポットの形状とは関係なく、ぼかしファクタの値に正比例する。言い換えると、ぼかしスポットがガウス関数であろうと、一様な円盤であろうと、または五角形であろうと、ぼかしファクタが増大すればぼかしスポットの直径は増大する。
【００５７】
畳み込みモジュール３１０Ｂは、ぼかしスポットをイメージレイヤに畳み込んで、ぼやけイメージレイヤを作り出す。上述した通り、イメージレイヤは被写体を含む領域およびどんな被写体も含まない透明領域を含んでいる。したがって、ぼやけイメージレイヤは、ぼやけた被写体を含むぼやけた領域および透明のままである領域を含んでいる。畳み込み動作は、イメージぼけをイメージレイヤの透明領域に拡大させることもできる。よって、ぼやけイメージレイヤにおけるぼやけた領域は、被写体を含む、非ぼやけイメージレイヤにおける領域よりもわずかに面積が大きく、ぼやけイメージレイヤにおける透明領域は、非ぼやけイメージレイヤにおける透明領域よりもわずかに面積が小さい。
【００５８】
ぼかしスポットがインパルス関数である場合（例えばぼかしファクタが１の場合）、畳み込み動作はイメージレイヤに何らぼけを付加しない。コンピューティングシステム２１８上のリソース負荷を軽減するために、ぼかしスポットがインパルス関数であるときは畳み込み動作を実行しないように畳み込みモジュール３１０Ｂを構成してもよい。さらにリソース負荷を軽減するために、被写体を含むイメージレイヤの領域にだけぼかしスポットを畳み込むように畳み込みモジュール３１０Ｂを構成してもよい。例えば、３Ｄイメージについての一つのイメージレイヤがスキードライバーだけから構成されている場合、畳み込みモジュール３１０Ｂは、スキードライバーを含むイメージレイヤの領域にぼかしスポットを畳み込むだけで、そのレイヤの透明領域をスキップしてもよい。畳み込みモジュール３１０Ｂが実行する２次元畳み込み動作は当技術分野において知られており、この畳み込み動作の詳細な説明は簡単のために省略する。
【００５９】
透明度モジュール３１０Ｃは、ぼやけイメージレイヤの透明度を変化させて、ぼやけイメージレイヤ中のぼやけた被写体が他のイメージレイヤ中の被写体を邪魔するのを防ぐ。現実的なイメージぼけを生成するために、ぼかしスポットのサイズに比例してイメージレイヤの透明度が増大するように透明度モジュール３１０Ｃを構成することもできる。
【００６０】
一実施形態では、ぼかしスポット発生器３１０Ａが不透明なぼかしスポットを生成し、透明度モジュール３１０Ｃは、透明度関数を畳み込みモジュール３１０Ｂが発生したぼやけイメージレイヤに適用する。ぼかしスポットは不透明であるため、各ぼやけイメージレイヤは、ぼやけた被写体を含む不透明領域およびどんな被写体も含まない透明領域を含む。この実施形態では、透明度モジュール３１０Ｃが不透明領域と隣接透明領域との間の境界エリアに透明度関数を適用して、現実的なイメージぼけをシミュレートする。例えば、透明度関数は大量の透明度を不透明領域の端部に適用でき、および、不透明領域の端部から遠く離れたポイントに加えられる透明度のレベルを減少させることができる。
【００６１】
別の実施形態では、ぼかしスポットがイメージレイヤに畳み込まれる前に、透明度モジュール３１０Ｃが透明度を計算してぼかしスポットに加える。例えば、ぼかしスポットがガウス関数である場合、中心ではぼかしスポットを不透明にし、中心から離れた距離では徐々に透明にするように透明度モジュール３１０Ｃを構成することもできる。
【００６２】
レイヤ合成モジュール３１０Ｄは、適当な透明度が加えられた後でぼやけイメージレイヤを受け取り、そのレイヤとイメージの他のぼやけレイヤとを合成し、これにより、ユーザの特定の焦点距離およびｆ値を持つように構成された仮想光学系で撮られたイメージと同一のぼけパターンを持った単一のイメージを生成する。
【００６３】
別の実施形態では、映画的ぼかしモジュールの全部または一部を、独立したコンピューティングシステム２１８内に実装する代わりにカメラ２０２Ａ，２０２Ｂ上に実装してもよい。例えば、カメラ２０２Ａ，２０２Ｂ上の対応するモジュールを主被写体識別モジュール３０２，距離計算機３０４，およびレイヤ発生器の機能を実行するように構成することもでき、映画的ぼかしモジュール２３０は、ぼかしファクタを計算することと各レイヤにぼかしフィルタを適用することを、カメラからイメージデータを受け取るとすぐに開始してもよい。映画的ぼかしモジュール２３０をカメラ２０２Ａ，２０２Ｂ上に実装する場合は、図２に示したシステム２００からコンピューティングシステム２１８を省略することもできる。しかしながら、カメラ２０２Ａ，２０２Ｂがキャプチャした、ぼやけていないイメージデータを保存して、前処理においてぼかし処理をすることが好ましく、これは、ぼかし処理の間にイメージ情報が失われるためである。換言すると、カメラ２０２Ａ，２０２Ｂが、イメージをキャプチャした直後であって元のイメージをストアする前にぼかしフィルタを適用する場合、元のぼやけていないイメージを再ストアして他の目的のために使用するための方法はない。
【００６４】
図４は、一実施形態に従って、３Ｄカメラ４０８と主被写体４０４、および、追加の被写体４０２、４０６との間の距離を表わす図である。図４に表された距離を用いて、各被写体４０２、４０４、４０６に対応するイメージレイヤについてぼかしファクタを計算する。第１の距離４１０（すなわち、主被写体距離）はカメラ４０８を主被写体４０４に対応するレイヤから隔てている。加えて、主被写体４０４を第１の追加のオブジェクトレイヤ４０２から隔てている第２の距離４１２（すなわち、デフォーカス距離）、および、主被写体４０４と第２の追加のオブジェクトレイヤ４０６との間の第３の距離４１６（すなわち、他のデフォーカス距離）が在る。
【００６５】
図４中の被写体のそれぞれは単一のレイヤの部分として表されているが、これら被写体の一つ以上が複数のレイヤを占めることも可能である。例えば、ウサギが１０ｃｍの深度を持つ場合には、ウサギは２．４５−２．５０ｍの深度段階に対応する第１のレイヤおよび２．５０−２．５５ｍの深度段階に対応する第２のレイヤを占めることができる。この場合、この被写体が占める各レイヤについて異なるデフォーカス距離および異なるぼかしファクタが存在する。加えて、草、茂み、ブッシュ、または他の被写体を図示された３つの被写体間において含むレイヤ４０２、４０４、４０６間にもイメージレイヤが在ってよいが、これら追加の被写体は簡単のために図４から省略してある。
【００６６】
図５は、一実施形態に従ったぼかし関数のグラフであり、図４に表されたデフォーカス距離における被写体５０２，５０６についてのぼかしファクタの値を示す。ぼかし関数５１０は、焦点距離（ｆ）、ｆ値（ｆ＃）、および、被写体距離（Ｖ）をパラメータとして受け取り、ぼかし関数５１０を用いて、デフォーカス距離（ΔＶ）に関連するイメージレイヤについてぼかしファクタ（β）を生成する。図３を参照して説明した通り、ぼかしファクタの一つの有益な例は式：
【００６７】
【数２】
2014014076.tif 000004
【００６８】
である。
【００６９】
図５に表されたぼかし関数５１０が、この式のグラフである。図５において、このぼかし関数５１０がβ＝１の値をΔＶ＝０のデフォーカス距離において持ち、これはサイクリスト５０４の位置に対応すること、が解る。したがって、ぼかしフィルタ３１０は、どんなぼけもサイクリスト５０４を含むイメージレイヤに加えることがない。一方、非ゼロのデフォーカス距離ΔＶ＝ΔＶ１にウサギ５０２が存在し、ぼかし関数はβ＝β１の値を持ち、木は対応するβ＝β２のぼかし関数を持つデフォーカス距離ΔＶ＝ΔＶ２に存在する。ウサギ５０２および木５０６に対応するイメージレイヤのぼかしファクタは両方とも１よりも大きいので、ぼかしフィルタ５１０は、イメージぼけをこれら２つのレイヤに加える。
【００７０】
ぼかしフィルタ５１０はまた、透明度をウサギ５０２および木５０６に対応するイメージレイヤに加えることもできる。図３を参照して説明した通り、透明度を加えることは、３Ｄカメラ５０８から離れた被写体をぼけイメージが遮るのを防ぐため、有益である。例えば、ぼかしフィルタ５１０が透明度をウサギ５０２に加えて、ウサギ５０２のぼけイメージがサイクリスト５０４または木５０６を遮るのを防ぐこともできる。一実施形態においては、透明度のレベルはぼかし関数に比例し、そして、より大きなぼかしファクタに関連するイメージレイヤにおける被写体はより透明なエッジを持つ。
【００７１】
図５の実施形態におけるぼかし関数５１０は、カメラ５０８に向かって移動するときのより急峻な勾配で、移動してカメラ５０８から遠ざかるのと比較して増大することも解る。したがって、ウサギ５０２は、木５０６がより大きなデフォーカス距離に在ったとしても、木５０６よりも大きなぼかしファクタを持つ。図５に表されおよび上式によって定義されるぼかし関数５１０はカメラ５０８に対応するデフォーカス距離ΔＶ＝−Ｖにおいて垂直な非対称性（vertical asymptote）を持つことが解る。
【００７２】
図４に戻って、イメージレイヤ４０２、４０４、４０６および図示されないどのレイヤも、各レイヤにぼかしフィルタが適用されおよび透明度が加えられた後で単一のぼけイメージに合成される。一実施形態においては、すべてのぼやけイメージレイヤを、それら全部が生成された後すぐに、一緒に合成してもよい。別のものとして、ぼやけイメージレイヤを一回で一つに合成してもよい。例えば、映画的ぼかしモジュール２３０は、サブジェクトレイヤ４０４を第１の追加のオブジェクトレイヤ４０２と合成し、イメージぼけを第２の追加のイメージレイヤ４０６に加えて、そして次いで、第２のぼやけレイヤ４０６を最初の２つのレイヤと合成することもできる。
【００７３】
３Ｄ深度情報を用いて映画的イメージぼけを加えること
図６は、一実施形態に従った、映画的ぼかしモジュール２３０を用いてぼやけイメージを３Ｄカメラからの深度情報に基づいて発生する処理を示すフローチャートである。この処理は、３Ｄカメラが複数の被写体についての３Ｄ深度情報を含む３Ｄイメージをキャプチャしたときに開始する（６００）。図１Ｂ乃至１Ｄを参照して説明した通り、例示の３Ｄカメラを、同じ方向に向けられた分離した２台のカメラ１０８Ａ、１０８Ｂとして実施することもできる。この場合、カメラの２個のイメージセンサ１１０Ａ、１１８Ｂ上の被写体の位置間のオフセットが、被写体についての３Ｄ深度情報を表す。
【００７４】
キャプチャ３Ｄイメージはネットワーク２１６上をコンピューティングシステム２１８上の映画的ぼかしモジュール２３０へ転送され、主被写体識別モジュール３０２が３Ｄイメージ中の被写体の一つをイメージの主被写体として識別する。主被写体識別モジュール３０２により、パターン認識アルゴリズムとユーザ入力の組み合わせを用いて、イメージの主被写体を識別することもできる。主被写体識別モジュール３０２が３Ｄイメージの主被写体を識別すると（６０５）、距離計算機３０４が３Ｄイメージ中の３Ｄ深度情報を用い、３Ｄカメラと主被写体との間の第１の距離（すなわち、主被写体距離）を判定する（６１５）。図１Ａに表された例示のイメージ１００について、距離計算機３０４は２つのイメージにおけるサイクリストの位置間のオフセットを用いて、図４に表される主被写体距離４２０を計算する。
【００７５】
距離計算機３０４が被写体距離を判定すると（６１０）、レイヤ発生器３０６が３Ｄイメージを一連のイメージレイヤに分割し、距離計算機３０４は主被写体と第１の追加の被写体を含むイメージレイヤとの間の第２の距離（すなわち、そのレイヤのデフォーカス距離）を判定する（６１５）。デフォーカス距離を判定するために、距離計算機３０４ははじめに第１の追加の被写体についての３Ｄ深度情報を用いて３Ｄカメラと第１の追加の被写体との間の距離（すなわち、被写体の被写体距離）を計算する。次に、距離計算機３０４は主被写体距離を被写体距離から減算してそのレイヤのデフォーカス距離を求める。この結果、３Ｄカメラと主被写体との間のイメージレイヤは負のデフォーカス距離を有し、主被写体の後方のレイヤは正のデフォーカス距離を有する。
【００７６】
次に、コンピューティングデバイス２１８のユーザ入力デバイス２２６は、仮想の焦点距離および仮想のｆ値をユーザから受け取る。ぼかしファクタ計算機３０８は、仮想の焦点距離および仮想のｆ値を第１の距離（すなわち、主被写体距離）および第２の距離（すなわち、デフォーカス距離）と協働して用い、第１の追加の被写体に対応するイメージレイヤのためのぼかしファクタを計算する（６２５）。図３を参照して説明した通り、ぼかしファクタにより、イメージレイヤに適用されるぼかしフィルタの強度が決定される。
【００７７】
最後に、ぼかしフィルタは、イメージぼけをイメージレイヤにぼかしファクタの値に基づいて加える（６３０）。一実施形態において、ぼかしスポット発生器３１０Ａがぼかしファクタに比例するサイズのぼかしスポットを生成し、畳み込みモジュール３１０Ｂがぼかしスポットをイメージレイヤに畳み込んでぼけイメージレイヤを生成する。ぼけ被写体がイメージ内でより遠い後方の被写体を遮るのを防ぐために、透明度モジュール３１０Ｃは、ぼかしスポットを透明にすることまたは畳み込み後に透明度をぼけイメージに加えることのいずれかにより、透明度をぼけイメージレイヤに追加する。
【００７８】
映画的ぼかしモジュール２３０が長い３Ｄイメージのシーケンス（例えば、３Ｄビデオの複数フレーム）を一度に受け取った場合は、図６に表された処理を、複数の３Ｄイメージについて平行して（in parallel）または順次に（in series）実施することもできる。言い換えると、シーケンス中の全ての３Ｄイメージを同時に処理することができ、シーケンス中のイメージを一度に処理でき、または、３Ｄイメージシーケンスを同時に処理される幾つかの３Ｄイメージのサブフレームに分割することができる。加えて、デフォーカス距離を判定するステップ（６１５）、ぼかしファクタを計算するステップ（６２５）、イメージぼけを加えるステップ（６３５）を典型的には３Ｄイメージの複数のイメージレイヤについて実行し、複数のぼけイメージレイヤを生成する。３Ｄイメージの複数のイメージレイヤはまた、平行して、順々に（in sequence）、またはこの２つの何らかの組み合わせで処理することもできる。
【００７９】
追加の構成の検討
開示の実施形態は、有益にも、大型の光学系を装備する伝統的なカメラを用いた浅い被写界深度のイメージを考慮している。浅い被写界深度は、ぼやけた背景および前景がユーザの注意をイメージの合焦した単一の主被写体に惹きつけることから、多くの状況において望ましい。通常、大型の光学系および大きなセンサ面を持つカメラは浅い被写界深度のイメージをキャプチャすることを要求される。しかしながら、浅い被写界深度に関連するイメージを前処理において発生することによって、元のイメージを３Ｄ深度情報をキャプチャすることのできるどんなカメラでもキャプチャすることができる。したがって、より小型の光学系およびイメージセンサを持つ３Ｄカメラを使用してもよい。
【００８０】
本明細書を通じて、複数のインスタンスが、記載された要素、動作、または構造をシングルインスタンスとして実装することもできる。１以上の方法の個々の動作が独立した動作として表され説明されているが、個々の動作を同時に実行してもよく、各動作を図示した順序で実行する必要はない。例示の構成において独立した要素として提供された構造および機能を、組み合わせた構造または要素として実施してもよい。同様に、単一の要素として提供された構造および機能を分離した複数要素として実施してもよい。これらのおよびその他の変形、修正、追加、ならびに改良は本発明の対象の範囲に含まれる。
【００８１】
本明細書では、特定の実施形態について、ロジックまたは多数の要素、モジュール、またはメカニズムを含むものとして説明した。モジュールは、ソフトウエアモジュール（例えば、マシン読み取り可能な媒体にまたは送信信号に組み込まれた符号）またはハードウエアモジュールのいずれか一方を構成すればよい。ハードウエアモジュールは特定の動作を実行可能な有形の装置であり、特定の方法で構成または配置することができる。例示の実施形態では、１以上のコンピュータシステム（例えば、スタンドアロン、クライアント、またはサーバコンピュータシステム）またはコンピュータシステム（例えば、プロセッサまたは一群のプロセッサ）の１以上のハードウエアモジュールを、ソフトウエア（例えば、アプリケーションまたはアプリケーションの一部）によって、本明細書中で説明した通りに特定の動作を実行するハードウエアモジュールとして構成することができる。
【００８２】
様々な実施形態において、ハードウエアモジュールを機械的にまたは電気的に実装することもできる。例えば、ハードウエアモジュールは専用回路または特定の動作を実行するために永続的に構成されるロジック（例えば、フィールドプログラマブルゲートアレー（ＦＰＧＡ）または特定用途向け集積回路、エーシック（ＡＳＩＣ）などの特定用途プロセッサ）を有することができる。ハードウエアモジュールはまた、特定の動作を実行するためにソフトウエアによって一時的に構成されるプログラム可能なロジックまたは回路（例えば、汎用プロセッサまたは他のプロセッサ内に包含されるなどを有することもできる。
【００８３】
また１以上のハードウエアモジュールが動作して、“クラウドコンピューティング”環境において関連のある動作の実行をサポートする、すなわち、“サース、Software as a Service”（ＳａａＳ）として動作することもできる。例えば、動作の少なくとも幾つかを一群のコンピュータ（複数プロセッサを含むマシンの例として）で実施でき、これらの動作はネットワーク（例えばインターネット）を通じてまたは１以上の適当なインターフェイス（例えばアプリケーションプログラムインターフェイス（ＡＰＩ））を通じてアクセス可能である。
【００８４】
この明細書の幾つかの部分は、マシンメモリ（例えばコンピュータメモリ）内にビットすなわち２進デジタル信号としてストアされたデータに関するアルゴリズムまたは動作のシンボル表現の観点から提供されている。これらのアルゴリズムまたはシンボル表現は、データ処理技術分野における当業者が彼らの仕事の実質を同分野の他の当業者に伝えるために使用される技術の例である。本明細書中で用いた通り、”アルゴリズム”は自己矛盾のない動作のシーケンス，または所望の結果を導く類似の処理である。このコンテキストにおいて、アルゴリズムおよび動作は物理量の物理的取り扱いを包含する。必ずしもではなく典型的には、そのような量は、マシンによってストアされ、アクセスされ、転送され、組み合わせられ、比較され、または他の操作がされることが可能な電子的、磁気的、または光学信号の形をとることができる。
【００８５】
他に詳細に記載がなければ、“処理する （processing）”、“コンピューティング（computing）”、“計算する（calculating）”、“判定する（determining）”、“提供する（presenting）”、“表示する（displaying）”など、またはその種の他の用語を用いた本明細書の説明は、物理（例えば、電子、磁気、または光学）量として表されるデータを、１以上のメモリ（例えば、揮発性メモリ、不揮発性メモリ、またはこれらの組み合わせ）、レジスタ、または情報を受け取り、ストアし、送信し、または表示する他のマシン要素内で取り扱いまたは転送するマシン（例えばコンピュータ）の働きまたは処理を言う。
【００８６】
本明細書中で用いた通り、用語“有し（comprises）”、“有する（comprising）”、“含む（includes）”、“含んだ（including）”、“持つ（has）”、“持った（having）”など、またはこれらの他のどのような活用形も、排他的でない包含関係をカバーすることを意図している。例えば、要素のリストを含む処理、方法、品物、または装置は必ずしもそれら要素だけに限定されず、そのような処理、方法、品物、または装置に明白にリストされないすなわち固有の他の要素を含むことができる。さらに、それとは反対に明白に述べられていなければ、“または”は包含的な“または”を意味し、排他的な“または”を意味しない。例えば、条件Ａまたは条件Ｂは次のどの一つによっても満足され：Ａは真（またはpresentである）でありＢは偽（またはpresentでない）である、Ａは偽（またはpresentでない）でありＢは真（またはpresentである）である、および、ＡとＢの両方が真（またはpresentである）である。
【００８７】
この技術分野における当業者は、この開示を読んで、本明細書中に開示された原理を通じてイメージぼけを３Ｄ深度情報に基づいて加えるためのシステムおよび処理のためのさらなる追加の別の構造および機能の設計が解るであろう。したがって、特定の実施形態および応用について表しおよび説明したものの、開示した実施形態が本明細書中に開示されたそのものずばりの構造および要素に限定されないことを理解すべきである。この技術分野における当業者にとって明白な様々な修正、変更、および、変形を、本明細書中に開示した方法および装置の配置、動作、および、細部に、添付の請求の範囲に規定した精神および範囲から逸脱することなく実施してもよい。
【図１Ａ】
2014014076.tif 000005
【図１Ｂ】
2014014076.tif 000006
【図１Ｃ】
2014014076.tif 000007
【図１Ｄ】
2014014076.tif 000008
【図２】
2014014076.tif 000009
【図３】
2014014076.tif 000010
【図４】
2014014076.tif 000011
【図５】
2014014076.tif 000012
【図６】
2014014076.tif 000013
【手続補正書】
【提出日】平成25年10月4日(2013.10.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
イメージぼけを深度情報に基づいて加える方法において、
３Ｄカメラがキャプチャした３Ｄイメージを受け取るステップであって、該３Ｄイメージが複数の被写体および該複数の被写体のそれぞれについての深度情報を有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を、前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を、前記第１の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
仮想ｆ値および仮想焦点距離を受け取るステップと、
前記第１の追加の被写体のための第１のぼかしファクタを計算するステップであって、該第１のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第１の追加の被写体に対し、前記第１のぼかしファクタに基づいて第１のイメージぼけを加えるステップと
を有する方法。
【請求項２】
請求項１に記載の方法において、
前記３Ｄイメージが第１のイメージおよび第２のイメージを含み、該第１のイメージが第１のカメラによりキャプチャされおよび該第２のイメージが第２のカメラによりキャプチャされ、２台のカメラは分離距離だけ分離され、および、同一方向に向けられている、方法。
【請求項３】
請求項２に記載の方法において、
前記複数の被写体のそれぞれについての前記深度情報が、前記第１のイメージにおける前記被写体の位置と前記第２のイメージにおける前記被写体の位置との間のオフセットを含む、方法。
【請求項４】
請求項１に記載の方法において、
前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記複数の被写体のそれぞれについての視差情報を含む、方法。
【請求項５】
請求項１に記載の方法において、前記対象被写体として識別するステップは、前記複数の被写体のうちの１つを前記対象被写体として識別するユーザ入力を受け取るステップを含む、方法。
【請求項６】
請求項１に記載の方法において、前記第１の追加の被写体に対し前記第１のイメージぼけを加えるステップは、
前記第１の追加の被写体に関連する被写体領域および透明領域を含むイメージレイヤを生成するステップと、
ぼかしスポットを生成するステップであって、該ぼかしスポットのサイズが前記第１のぼかしファクタに基づいている、ステップと、
前記ぼかしスポットを前記イメージレイヤに畳み込むステップであって、該畳み込み演算がぼけイメージレイヤを生成し、該ぼけイメージレイヤが、第１のぼけた追加の被写体を持つぼけた被写体領域および透明領域を有している、ステップと、
透明度関数を、前記ぼけた被写体領域と前記透明領域との間の境界に適用するステップと
を含む、方法。
【請求項７】
請求項１に記載の方法において、さらに、
前記対象被写体と前記複数の被写体のうちの第２の追加の被写体との間の第３の距離を、前記第２の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記第２の追加の被写体のための第２のぼかしファクタを計算するステップであって、該第２のぼかしファクタが、前記第１の距離、前記第３の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第２の追加の被写体に対し、前記第２のぼかしファクタの値に基づいて第２のイメージぼけを加えるステップと
を有する方法。
【請求項８】
請求項７に記載の方法において、前記第１の追加の被写体は、前記３Ｄカメラへの距離が前記対象被写体よりも近く、前記対象被写体は、前記３Ｄカメラへの距離が前記第２の追加の被写体よりも近い、方法。
【請求項９】
イメージぼけを深度情報に基づいて加えるシステムであって、コンピュータプログラム命令をストアしおよびプロセッサにより実行するように構成された不揮発性コンピュータ可読媒体を含むシステムにおいて、該命令が、
３Ｄカメラから３Ｄイメージを受け取るステップであって、該３Ｄイメージが、複数の被写体およびそれぞれの被写体に関連する深度情報を有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を、前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を、前記第１の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
仮想ｆ値および仮想焦点距離を受け取るステップと、
前記第１の追加の被写体のための第１のぼかしファクタを計算するステップであって、該第１のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第１の追加の被写体に対し、前記第１のぼかしファクタに基づいて第１のイメージぼけを加えるステップと
に関し、並びに、
前記システムが前記コンピュータプログラム命令を実行するように構成されたプロセッサを含む、システム。
【請求項１０】
請求項９に記載のシステムにおいて、前記３Ｄカメラが第１のカメラおよび第２のカメラを含み、該２台のカメラは分離距離だけ分離され、および、同一方向に向けられており、該２台のカメラのそれぞれがイメージセンサを備えている、システム。
【請求項１１】
請求項１０に記載のシステムにおいて、前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記第１のカメラの前記イメージセンサに対する前記被写体の位置と前記第２のカメラの前記イメージセンサに対する前記被写体の位置との間のオフセットを含む、システム。
【請求項１２】
請求項９に記載のシステムにおいて、前記対象被写体として識別するステップは、前記複数の被写体のうちの１つを前記対象被写体として識別するユーザ入力を受け取るステップを含む、システム。
【請求項１３】
請求項９に記載のシステムにおいて、前記第１の追加の被写体に対し前記第１のイメージぼけを加えるステップは、
前記第１の追加の被写体に関連する被写体領域および透明領域を含むイメージレイヤを生成するステップと、
ぼかしスポットを生成するステップであって、該ぼかしスポットのサイズが前記第１のぼかしファクタに基づいている、ステップと、
前記ぼかしスポットを前記イメージレイヤに畳み込むステップであって、該畳み込み演算がぼけイメージレイヤを生成し、該ぼけイメージレイヤが、第１のぼけた追加の被写体を持つぼけた被写体領域および透明領域を有している、ステップと、
透明度関数を、前記ぼけた被写体領域と前記透明領域との間の境界に適用するステップと
を含む、システム。
【請求項１４】
請求項９に記載のシステムにおいて、前記コンピュータ可読媒体がさらに、
前記対象被写体と前記複数の被写体のうちの第２の追加の被写体との間の第３の距離を、前記第２の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記第２の追加の被写体のための第２のぼかしファクタを計算するステップであって、該第２のぼかしファクタが、前記第１の距離、前記第３の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第２の追加の被写体に対し、前記第２のぼかしファクタに基づいて第２のイメージぼけを加えるステップと
に関する命令を含むシステム。
【請求項１５】
請求項１４に記載のシステムにおいて、前記第１の追加の被写体は、前記３Ｄカメラへの距離が前記対象被写体よりも近く、前記対象被写体は、前記３Ｄカメラへの距離が前記第２の追加の被写体よりも近い、システム。
【請求項１６】
コンピュータプログラム命令をストアしおよびプロセッサにより実行するように構成された不揮発性のコンピュータ可読媒体において、該命令が、
３Ｄカメラがキャプチャした３Ｄイメージを受け取るステップであって、該３Ｄイメージが複数の被写体および該複数の被写体のそれぞれについての深度情報を有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記３Ｄカメラと前記対象被写体との間の第１の距離を、前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を、前記第１の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
仮想ｆ値および仮想焦点距離を受け取るステップと、
前記第１の追加の被写体のための第１のぼかしファクタを計算するステップであって、該第１のぼかしファクタが、前記第１の距離、前記第２の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第１の追加の被写体に対し、前記第１のぼかしファクタに基づいて第１のイメージぼけを加えるステップと
に関するコンピュータ可読媒体。
【請求項１７】
請求項１６に記載のコンピュータ可読媒体において、前記３Ｄイメージが第１のイメージおよび第２のイメージを含み、該第１のイメージが第１のカメラによりキャプチャされおよび該第２のイメージが第２のカメラによりキャプチャされ、２台のカメラは分離距離だけ分離され、および、同一方向に向けられている、コンピュータ可読媒体。
【請求項１８】
請求項１７に記載のコンピュータ可読媒体において、前記３Ｄイメージ中の前記複数の被写体のそれぞれについての前記深度情報が、前記第１のイメージにおける前記被写体の位置と前記第２のイメージにおける前記被写体の位置との間のオフセットを含む、コンピュータ可読媒体。
【請求項１９】
請求項１６に記載のコンピュータ可読媒体において、前記対象被写体として識別するステップは、前記複数の被写体のうちの１つを前記対象被写体として識別するユーザ入力を受け取るステップを含む、コンピュータ可読媒体。
【請求項２０】
請求項１６に記載のコンピュータ可読媒体において、
前記第１の追加の被写体に対し前記第１のイメージぼけを加えるステップは、
前記第１の追加の被写体に関連する被写体領域および透明領域を含むイメージレイヤを生成するステップと、
ぼかしスポットを生成するステップであって、該ぼかしスポットのサイズが前記第１のぼかしファクタに基づいている、ステップと、
前記ぼかしスポットを前記イメージレイヤに畳み込むステップであって、該畳み込み演算がぼけイメージレイヤを生成し、該ぼけイメージレイヤが、第１のぼけた追加の被写体を持つぼけた被写体領域および透明領域を有している、ステップと、
透明度関数を、前記ぼけた被写体領域と前記透明領域との間の境界に適用するステップと
を含む、コンピュータ可読媒体。
【請求項２１】
請求項１６に記載のコンピュータ可読媒体において、さらに、
前記対象被写体と前記複数の被写体のうちの第２の追加の被写体との間の第３の距離を、前記第２の追加の被写体に関連する前記深度情報および前記対象被写体に関連する前記深度情報に基づいて判定するステップと、
前記第２の追加の被写体のための第２のぼかしファクタを計算するステップであって、該第２のぼかしファクタが、前記第１の距離、前記第３の距離、前記仮想ｆ値、および、前記仮想焦点距離に基づいている、ステップと、
前記第２の追加の被写体に対し、前記第２のぼかしファクタの値に基づいて第２のイメージぼけを加えるステップと
に関する命令を含む、コンピュータ可読媒体。
【請求項２２】
請求項２１に記載のコンピュータ可読媒体において、前記第１の追加の被写体は、前記３Ｄカメラへの距離が前記対象被写体よりも近く、前記対象被写体は、前記３Ｄカメラへの距離が前記第２の追加の被写体よりも近い、コンピュータ可読媒体。
【請求項２３】
イメージぼけを深度情報に基づいて加える方法において、
カメラにより撮られたイメージを受け取るステップであって、該イメージが複数の被写体を有している、ステップと、
前記複数の被写体のうちの一つを対象被写体として識別するステップと、
前記カメラと前記対象被写体との間の第１の距離を判定するステップと、
前記対象被写体と前記複数の被写体のうちの第１の追加の被写体との間の第２の距離を判定するステップと、
ｆ値および焦点距離を受け取るステップと、
前記第１の追加の被写体に対し、前記第１の距離、前記第２の距離、前記ｆ値、および、前記焦点距離に基づいて第１のイメージぼけを加えるステップと
を有する方法。
【外国語明細書】
2014014076000001.pdf