(57)【要約】  本開示は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについての画像被写体の深度を推定するための技法について記載する。例えば、２Ｄビューについて、複数の特徴点が決定され得る。複数の特徴点は、グローバル動き、例えば２Ｄビューの観測者（例えば、カメラ）の動きを推定するために使用され得る。例えば、複数の特徴点を使用して、グローバル動きフレーム差を生成することができる。グローバル動きフレーム差を使用して、２Ｄビューについての深度マップを作成することができ、この深度マップを使用して、３次元（３Ｄ）ビデオプレゼンテーションを表示するために使用され得るビデオプレゼンテーションの代替ビューを生成することができる。
2013545200.tif 000002
【特許請求の範囲】
【請求項１】
ビデオプレゼンテーションの２次元ビューについての深度マップを決定する方法であって、
ビデオプレゼンテーションの２次元（２Ｄ）ビューについてのコンピュータ機器の画像処理モジュールを介して、ビデオプレゼンテーションのフレームについての複数の特徴点を決定することと、
前記複数の特徴点に基づいて前記フレームについてのグローバルな動きを決定することと、
決定された前記グローバルな動きに基づいて前記フレームについての深度マップを生成することと、
を含む方法。
【請求項２】
前記フレームについてのグローバル動き補償フレーム差を決定することと、
前記グローバル動き補償フレーム差を使用して、前記フレームについての前記深度マップを生成することと、
をさらに備える請求項１に記載の方法。
【請求項３】
前記深度マップを生成することが、前記グローバル動き補償フレーム差に基づいて前記フレームの少なくとも１つの画素を前景画素又は背景画素として分類することを備える、請求項２に記載の方法。
【請求項４】
前記フレームの少なくとも１つの画素を前景画素又は背景画素として分類することが、前記少なくとも１つの画素についての前記グローバル動き補償フレーム差の強度を所定の閾値と比較することを備える、請求項３に記載の方法。
【請求項５】
前記複数の特徴点を決定することが、前記フレームの１つ以上のブロック又は画素が前記フレームの中央領域にあるかどうかを決定することを備える、請求項１に記載の方法。
【請求項６】
前記フレームの前記１つ以上のブロック又は画素が前記フレームの前記中央領域にある場合、少なくとも１つ前のフレームからの画素情報を使用して前記フレームの前記中央領域にある前記１つ以上のブロック又は画素についての前記深度マップを生成すること、
をさらに備える請求項５に記載の方法。
【請求項７】
前記複数の特徴点を決定することが、
前記フレームの１つ以上のコーナー領域の画素を識別すること
を備える、請求項１に記載の方法。
【請求項８】
前記１つ以上のコーナー領域の前記画素を前記識別することが、前記１つ以上のコーナー領域の前記画素を識別するために、ハリスコーナー検出を使用することを備える、請求項７に記載の方法。
【請求項９】
前記複数の特徴点を決定することが、
画素がローカルな動きを含むかどうかを決定すること、
を備える、請求項１に記載の方法。
【請求項１０】
前記複数の特徴点を決定することが、
画素が前記フレームの均一の領域にあるかどうかを決定すること、
を備える、請求項１に記載の方法。
【請求項１１】
ビデオプレゼンテーションの２次元（２Ｄ）ビューについての深度マップを決定するように構成された機器であって、
ビデオプレゼンテーションのフレームについての複数の特徴点を決定し、
前記複数の特徴点に基づいて前記フレームについてのグローバルな動きを決定し、
決定された前記グローバルな動きに基づいて前記フレームについての深度マップを生成するように構成された画像処理モジュール
を備える機器。
【請求項１２】
前記画像処理モジュールが、
前記フレームについてのグローバル動き補償フレーム差を決定し、
前記グローバル動き補償フレーム差を使用して、前記フレームについての前記深度マップを生成するようにさらに構成される、請求項１１に記載の機器。
【請求項１３】
前記画像処理モジュールが、前記フレームの少なくとも１つの画素を前記グローバル動き補償フレーム差に基づいて前景又は背景画素として分類することに基づいて、前記深度を生成するようにさらに構成される、請求項１２に記載の機器。
【請求項１４】
前記画像処理モジュールが、
前記少なくとも１つの画素についての前記グローバル動き補償フレーム差の強度を所定の閾値と比較することに基づいて、前記フレームの前記少なくとも１つの画素を前景画素又は背景画素として分類するようにさらに構成される、請求項１３に記載の機器。
【請求項１５】
前記画像処理モジュールが、前記フレームの１つ以上のブロック又は画素が前記フレームの中央領域にあるかどうかに基づいて前記複数の特徴点を決定するようにさらに構成される、請求項１１に記載の機器。
【請求項１６】
前記画像処理モジュールが、
前記フレームの前記１つ以上のブロック又は画素が前記フレームの前記中央領域にある場合、少なくとも１つ前のフレームからの画素情報を使用して前記フレームの前記中央領域にある前記１つ以上のブロック又は画素についての前記深度マップを生成するようにさらに構成される、請求項１５に記載の機器。
【請求項１７】
前記画像処理モジュールが、
前記フレームの１つ以上のコーナー領域の画素を識別することに基づいて、前記複数の特徴点を決定するようにさらに構成される、請求項１１に記載の機器。
【請求項１８】
前記画像処理モジュールが、
１つ以上のコーナー領域の前記画素を識別するためにハリスコーナー検出を使用して、前記フレームの前記１つ以上のコーナー領域の前記画素を識別するようにさらに構成される、請求項１７に記載の機器。
【請求項１９】
前記画像処理モジュールが、
画素がローカル動きを含むかどうかに基づいて前記複数の特徴点を決定するようにさらに構成される、請求項１１に記載の機器。
【請求項２０】
前記画像処理モジュールが、
画素が前記フレームの均一の領域にあるかどうかに基づいて、前記複数の特徴点を決定するようにさらに構成される、請求項１に記載の機器。
【請求項２１】
ビデオプレゼンテーションの２次元（２Ｄ）ビューについての深度マップを決定するように構成された機器であって、
ビデオプレゼンテーションのフレームについての複数の特徴点を決定するための手段と、
前記複数の特徴点に基づいて前記フレームについてのグローバルな動きを決定するための手段と、
前記決定されたグローバル動きに基づいて前記フレームについての深度マップを生成するための手段と、
を備える機器。
【請求項２２】
前記フレームについてのグローバル動き補償フレーム差を決定するための手段と、
前記グローバル動き補償フレーム差を使用して、前記フレームについての前記深度マップを生成するための手段と、
をさらに備える請求項２１に記載の機器。
【請求項２３】
前記深度マップを生成するための前記手段が、
前記グローバル動き補償フレーム差に基づいて、前記フレームの少なくとも１つの画素を前景画素又は背景画素として分類するための手段をさらに備える、請求項２２に記載の機器。
【請求項２４】
前記フレームの前記少なくとも１つの画素を前景画素又は背景画素として分類するための前記手段が、
前記少なくとも１つの画素についての前記グローバル動き補償フレームの強度を所定の閾値と比較するための手段を備える、請求項２３に記載の機器。
【請求項２５】
前記複数の特徴点を決定するための前記手段が、
前記フレームの１つ以上のブロック又は画素が前記フレームの中央領域にあるかどうかを決定するための手段を備える、請求項２１に記載の機器。
【請求項２６】
前記複数の特徴点を決定するための前記手段が、
前記フレームの前記１つ以上のブロック又は画素が前記フレームの前記中央領域にある場合、少なくとも１つ前のフレームからの画素情報を使用して前記フレームの前記中央領域にある前記１つ以上のブロック又は画素についての前記深度マップを生成するための手段をさらに備える、請求項２５に記載の機器。
【請求項２７】
前記複数の特徴点を決定するための前記手段が、
前記フレームの１つ以上のコーナー領域の画素を識別するための手段を備える、請求項２１に記載の機器。
【請求項２８】
前記複数の特徴点を決定するための前記手段が、
ハリスコーナー検出を使用して、前記コーナー領域の前記画素を識別するための手段を備える、請求項２７に記載の機器。
【請求項２９】
前記複数の特徴点を決定するための前記手段が、
画素がローカル動きを含むかどうかを決定するための手段を備える、請求項２１に記載の機器。
【請求項３０】
前記複数の特徴点を決定するための前記手段が、
画素が前記フレームの均一の領域にあるかどうかを決定するための手段を備える、請求項２１に記載の機器。
【請求項３１】
実行すると、１つ以上のプロセッサに、
ビデオプレゼンテーションのフレームについての複数の特徴点を決定させ、
前記複数の特徴点に基づいて前記フレームについてのグローバルな動きを決定させ、
前記決定されたグローバル動きに基づいて前記フレームについての深度マップを生成させる
命令を備えるコンピュータ可読記憶媒体。
【請求項３２】
前記命令がさらに前記プロセッサに、
前記フレームについてのグローバル動き補償フレーム差を決定させ、
前記グローバル動き補償フレーム差を使用して、前記フレームについての前記深度マップを生成させる、
請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３３】
前記命令がさらに前記プロセッサに、
前記グローバル動き補償フレーム差に基づいて前記フレームの少なくとも１つの画素を前景画素又は背景画素として分類することに基づいて、前記深度マップを生成させる、
請求項３２に記載のコンピュータ可読記憶媒体。
【請求項３４】
前記命令がさらに前記プロセッサに、
少なくとも１つの画素についての前記グローバル動き補償フレーム差の強度を所定の閾値と比較することに基づいて、前記フレームの前記少なくとも１つの画素を前景画素又は背景画素として分類させる、
請求項３３に記載のコンピュータ可読記憶媒体。
【請求項３５】
前記命令がさらに前記プロセッサに、
前記フレームの１つ以上のブロック又は画素が前記フレームの中央領域にあるかどうかに基づいて、前記複数の特徴点を決定させる、
請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３６】
前記命令がさらに前記プロセッサに、
前記フレームの前記１つ以上のブロック又は画素が前記フレームの前記中央領域にある場合、少なくとも１つ前のフレームからの画素情報を使用して前記フレームの前記中央領域にある前記１つ以上のブロック又は画素についての前記深度マップを生成させる、
請求項３５に記載のコンピュータ可読記憶媒体。
【請求項３７】
前記命令がさらに前記プロセッサに、
前記フレームの１つ以上のコーナー領域の画素を識別することに基づいて、前記複数の特徴点を決定させる、
請求項３１に記載のコンピュータ可読記憶媒体。
【請求項３８】
前記命令がさらに前記プロセッサに、
前記１つ以上のコーナー領域の前記画素を識別するためにハリスコーナー検出を使用して、前記１つ以上のコーナー領域の前記画素を識別させる、
請求項３７に記載のコンピュータ可読記憶媒体。
【請求項３９】
前記命令がさらに前記プロセッサに、
画素がローカル動きを含むかどうかに基づいて前記複数の特徴点を決定させる、
請求項３１に記載のコンピュータ可読記憶媒体。
【請求項４０】
前記命令がさらに前記プロセッサに、
画素が前記フレームの均一の領域にあるかどうかに基づいて、前記複数の特徴点を決定させる、
請求項３１に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その内容全体が参照により本明細書に組み込まれる、２０１０年１１月２３日に出願された「ＤＥＰＴＨ  ＥＳＴＩＭＡＴＩＯＮ  ＢＡＳＥＤ  ＯＮ  ＧＬＯＢＡＬ  ＭＯＴＩＯＮ」という名称の米国特許出願第１２／９５３，３１０号の一部継続出願である。
【０００２】
本開示は、一般に３次元（３Ｄ）のビデオの生成に関する。より詳細には、本開示は、３次元（３Ｄ）ビデオプレゼンテーションの表示のための代替ビュー（代替表示）を生成するために使用され得る既存の２次元（２Ｄ）ビデオプレゼンテーションについての深度マップの作成に関する。
【背景技術】
【０００３】
近年、ビデオ表示装置での３Ｄビデオプレゼンテーションを可能にするために、技術（例えば、テレビジョン、ＤＶＤプレーヤ、セットトップボックス、ブルーレイプレーヤ、コンピュータなど）が開発されている。しかしながら、大部分の既存のビデオコンテンツ（例えば、記憶された、ダウンロードされた、及び／又は、ストリーミングビデオコンテンツ）は、２Ｄで表示されるように構成されているだけである。従って、２Ｄビデオプレゼンテーションの既存のデジタル表現を３Ｄ表現に変換することが望ましくなり得る。そうするために、互いに対してビデオオブジェクトの深度を決定するために２Ｄビデオプレゼンテーションを解析することが望ましくなり得る。ビデオオブジェクトの深度の表現は、深度マップと呼ばれ得る。オブジェクト深度の決定は、ユーザに対して３Ｄで表示されるビデオプレゼンテーションを生成するために使用され得る。
【発明の概要】
【０００４】
グローバル動きは、撮影の間のカメラの動きとして説明され得る。グローバル動き運動の幾つかの例には、カメラの左右のパニング、上下のティルト、及び／又は例えばズームイン及びズームアウトなど様々な他の効果がある。本開示は、例えば、２Ｄビューを撮影した１つ以上の立体カメラの動きを推定するなど、２Ｄビューのグローバルな動きを推定することを含むビデオプレゼンテーションの２Ｄビューの画像オブジェクトの深度を推定するための技法について記載する。本開示は、画像の画素のサブセットに基づいてグローバルな動きを推定するための技法についても記載する。本開示は、グローバル動き補償フレーム差に基づいて画像についての深度マップを決定するための技法についてさらに記載する。
【０００５】
幾つかの例では、グローバルな動きを推定することは、ビデオプレゼンテーションの２Ｄビューの変換の改良を提供することができ、その結果、例えば、３Ｄビデオプレゼンテーションなど、ビデオプレゼンテーションが深度を有することが知覚され得るようになる。例えば、グローバル動きに基づいて深度を推定することは、ビデオプレゼンテーションの代替ビューの生成を提供し得る。代替ビューは、視聴者に対して実質的に３Ｄのように見えるように、ビデオプレゼンテーションの表示のための元の２Ｄビューとともに表示され得る。
【０００６】
一例によれば、方法について本明細書で説明する。方法は、ビデオプレゼンテーションの２次元（２Ｄ）ビューのためのコンピュータ機器の画像処理モジュールを介して、２Ｄビューの少なくとも１つのフレームについてのオプティカルフローを決定することを含み、オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動の表現である。方法は、画像処理モジュールによって、及び決定されたオプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定することをさらに含む。方法は、画像処理モジュールによって、推定されたグローバル動きに基づいてオプティカルフローを調整して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフロー（global motion-adjusted optical flow）を作成することをさらに含む。方法は、画像処理モジュールによって、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成することをさらに含む。
【０００７】
別の例によれば、装置について本明細書で説明する。装置は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、２Ｄビデオプレゼンテーションの少なくとも１つのフレームについてのオプティカルフローを決定するオプティカルフロー決定モジュールを含み、オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動の表現である。装置は、決定されたオプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定するグローバル動き推定モジュールをさらに含む。装置は、推定されたグローバルな動きに基づいてオプティカルフローを調整して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するグローバル動き調整モジュールをさらに含む。装置は、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成するマスク／深度マップ作成モジュールをさらに含む。
【０００８】
別の例によれば、コンピュータ可読記憶媒体について本明細書で説明する。コンピュータ可読記憶媒体は、実行時に、１つ以上のプロセッサに、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、２Ｄビデオプレゼンテーションの少なくとも１つのフレームについてのオプティカルフローを決定させる命令を記憶する。オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの視運動(apparent motion)の表現である。命令は、さらに、コンピュータ機器に、オプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定させる。命令は、さらに、コンピュータ機器に、推定されたグローバルな動きに基づいてオプティカルフローを調整させて、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成させる。命令は、さらに、コンピュータ機器に、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成させる。
【０００９】
別の例によれば、機器について本明細書で説明する。機器は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、２Ｄビデオプレゼンテーションの少なくとも１つのフレームについてのオプティカルフローを決定するための手段を含む。オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの視運動の表現である。機器は、オプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定するための手段をさらに含む。機器は、推定されたグローバルな動きに基づいてオプティカルフローを調整して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するための手段をさらに含む。機器は、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成するための手段をさらに含む。
【００１０】
別の例によれば、本開示は、ビデオプレゼンテーションの２次元ビューについての深度マップを決定する方法について記載する。方法は、ビデオプレゼンテーションの２次元（２Ｄ）ビューのためのコンピュータ機器の画像処理モジュールを介して、ビデオプレゼンテーションのフレームについての複数の特徴点を決定することを含む。方法は、複数の特徴点に基づいてフレームについてのグローバルな動きを決定することをさらに含む。方法は、決定されたグローバルな動きに基づいてフレームについての深度マップを決定し、生成することをさらに含む。
【００１１】
別の例によれば、ビデオプレゼンテーションの２次元（２Ｄ）ビューについての深度マップを決定するように構成された機器。機器は、ビデオプレゼンテーションのフレームについての複数の特徴点を決定し、複数の特徴点に基づいてフレームについてのグローバルな動きを決定し、決定されたグローバルな動きに基づいてフレームについての深度マップを生成するように構成された画像処理モジュールを含む。
【００１２】
別の例によれば、ビデオプレゼンテーションの２次元（２Ｄ）ビューについての深度マップを決定するように構成された機器。機器は、ビデオプレゼンテーションのフレームについての複数の特徴点を決定するための手段を含む。機器は、複数の特徴点に基づいてフレームについてのグローバルな動きを決定するための手段をさらに含む。機器は、決定されたグローバル動きに基づいてフレームについての深度マップを生成するための手段をさらに含む。
【００１３】
別の例によれば、コンピュータ可読記憶媒体について本明細書で説明する。コンピュータ可読記憶媒体は、実行時に、１つ以上のプロセッサに、ビデオプレゼンテーションのフレームについての複数の特徴点を決定させ、複数の特徴点に基づいてフレームについてのグローバルな動きを決定させ、決定されたグローバル動きに基づいてフレームについての深度マップを生成させる命令を含む。
【００１４】
１つ以上の例の詳細は、添付の図面及び以下の説明に記載されている。本発明の他の特徴、目的、及び利点は、その説明及び図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１５】
【図１】本開示の技法に一致する、２Ｄビデオプレゼンテーションを３Ｄビデオプレゼンテーションに変換するための方法の一例を示すフロー図。
【図２】本開示の技法に一致する、２Ｄビデオプレゼンテーションについての深度を推定するように構成されたコンピュータ機器の一例を示すブロック図。
【図２Ａ】本開示の技法に一致する、画像処理モジュールの一例を示すブロック図。
【図３】本開示の技法に一致する、２Ｄビデオプレゼンテーションについての深度マップを作成する方法の一例を示すフロー図。
【図４】本開示の技法に一致する、ビデオプレゼンテーションの少なくとも１つのフレームについて、シーン変化が生じたかどうかを決定する方法の一例を示すフロー図。
【図５】本開示の技法に一致する、ビデオプレゼンテーションの少なくとも１つのフレームについて、グローバルな動きが存在するかどうかを決定する方法の一例を示すフロー図。
【図６】本開示の技法に一致する、グローバル動きの推定のための特徴点を識別する方法の一例を示すフロー図。
【図７】本開示の技法に一致する、画像画素／被写体を前景／背景として分類する方法の一例を示すフロー図。
【図８】本開示の技法に一致する、ビデオプレゼンテーションについての最初のマスクを精緻化する方法の一例を示すフロー図。
【図９】本開示の技法に一致する、ビデオプレゼンテーションの２Ｄビューの少なくとも１つの前景画素を決定するための方法の一例を示すフロー図。
【図１０】本開示の技法に一致する、グローバル動きの推定のための特徴点を識別するための方法の一例を示すフロー図。
【図１１】本開示の技法に一致する、中央領域及び周辺領域を含むフレームを示す概念図である。
【図１２】本開示の技法に一致する、２Ｄ画像についての深度マップを決定するための方法の一例を示すフロー図。
【図１３】本開示の技法に一致する、２Ｄ画像についての深度マップを決定するための方法の一例を示すフロー図。
【発明を実施するための形態】
【００１６】
本開示は、例えば、２Ｄビュー（２Ｄ表示）を撮影した１つ以上のモノスコープカメラの動きを推定するなど、２Ｄビューのグローバルな動きを推定することを含むビデオプレゼンテーションの２Ｄビューの画像被写体の深度を推定するための技法について記載する。幾つかの例では、グローバルな動きを推定することは、ビデオプレゼンテーションの２Ｄビューの変換の改良を提供することができ、その結果、例えば、３Ｄビデオプレゼンテーションなど、ビデオプレゼンテーションが深度を有することが知覚され得るようになる。例えば、本開示の技法は、少なくともビデオフレームについて、画像深度の少なくとも１つの最初の表示（例えば、少なくとも１つの画素のオプティカルフローなど）を決定し、最初の表示に基づいて、フレームについてのグローバルな動きを推定することを提供する。グローバル動きの推定は、画素の動きの最初の表示を補償するために使用され得、それによって、少なくとも１つのビデオフレームの被写体の深度（例えば、前景又は背景）を決定する際の正確さを向上させる。従って、少なくとも１つのフレームについて、深度マップが生成され得る。深度マップは、３Ｄ（例えば、立体的な）ビデオプレゼンテーションを表示するために、少なくとも１つの他のビュー（例えば、２Ｄビュー）とともに使用され得るビデオプレゼンテーションの少なくとも１つの代替ビューを生成するために使用され得る。
【００１７】
図１は、本開示の技法に一致する、撮影された画像についての深度を推定するための１つの例示的な方法を示すフロー図である。図１に示すように、方法は、ビデオプレゼンテーションの２Ｄ（例えば、モノスコープ）ビューを取得すること（１０１）を含む。２Ｄビューは、１つ以上のモノスコープ（シングル）カメラで撮影される画像を含むことができる。２Ｄビューは、代わりに、１つ以上の立体（２つ以上の）カメラを使用して撮影される複数のビューのシングルビューでもよい。方法は、２Ｄビューの１つ又は複数の被写体及び／又は画素についての深度の最初の表示を作成すること（１０２）をさらに含む。深度の最初の表示は、上記のように、例えば、ぶれ、動き、ブロックベースのマッチング、セグメンテーション、又はオプティカルフロー技法を含めて、本明細書で説明する技法のいずれかに基づいて作成され得る。方法は、深度の最初の表示に基づいて２Ｄビューの少なくとも１つのフレームのグローバルな動きを決定すること（１０３）をさらに含む。方法は、決定されたグローバル動きに基づいて、２Ｄビューの被写体及び／又は画素の最初の表示を調整すること（１０４）をさらに含む。例えば、オプティカルフローが画像深度の最初の表示を決定するために使用される場合、方法は、少なくとも１つの画素についてのグローバル動き調整オプティカルフローベクトルを作成するために、決定されたグローバル動きに基づいて２Ｄビューの少なくとも１つの画素についての少なくとも１つのオプティカルフローベクトルを変更することを含む。方法は、調整された深度マップに基づいて２Ｄビューの少なくとも１つの代替ビューを作成すること（１０５）をさらに含む。方法は、２Ｄビューの生成された代替ビューを使用して３Ｄビデオを提示することをさらに含むことができる。例えば、ビデオプレゼンテーションの２Ｄビューは、３Ｄビデオプレゼンテーションの左ビューとして表示され、一方、代替ビューは、３Ｄビデオプレゼンテーションの右ビューとして表示され得る。右ビューと左ビューとの間の差によって、３Ｄビデオプレゼンテーションの１つ以上の画像が、視聴者によって深度を有するものとして知覚され得る。
【００１８】
図２は、本開示の技法を実行するために使用され得るコンピュータ機器２０１の例示的な構成を示すブロック図である。コンピュータ機器２０１は、１つ以上の２Ｄビデオビュー（２Ｄビデオ表示）の３Ｄ表現を作成するために、１つ以上の２Ｄビデオビューを処理するように構成された任意の機器であり得る。本開示の技法を実施するために使用され得るコンピュータ機器２０１の非限定的な例には、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ機器、スマートフォン、ネットブック、テレビジョン、ビデオゲーム機、ポータブルビデオゲームユニット、又はビデオデータを処理するように構成された任意の他のコンピュータ機器がある。
【００１９】
図２の例に示すように、コンピュータ機器２０１は、１つ以上のプロセッサ２１０を含む。１つ以上のプロセッサ２１０は、コンピュータ機器に機能、例えば本開示の深度推定技法を実行させるために命令を実行するように構成されたコンピュータ機器２０１の構成要素である。例えば、プロセッサ（複数可）２１０は、記憶構成要素２１２によって記憶される命令を実行するように構成され得る。記憶構成要素２１２は、例えばコンピュータハードディスク、フラッシュメモリ、又はランダムアクセスメモリ（ＲＡＭ）構成要素など、１つ以上の短期又は長期メモリ記憶構成要素を含み得る。一例では、プロセッサ２１０（複数可）は、コンピュータ機器２０１の１つ以上の中央処理装置（ＣＰＵ）を備えることができる。他の例では、プロセッサ（複数可）２１０は、代わりに又はさらに、１つ以上のグラフィック処理ユニット（ＧＰＵ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定の論理又はハードウェア、若しくは他の同様の処理構成要素を含むことができる。
【００２０】
図２に示すように、プロセッサ（複数可）２１０は、画像処理モジュール２１４を含む。図示の例によれば、画像処理モジュール２１４は、記憶構成要素２１２によって記憶され、本明細書で説明する技法を実行するために１つ以上のプロセッサ２１０によって実行可能な命令を含む。記憶構成要素２１２に記憶される命令の実行時に、プロセッサ（複数可）２１０は、本開示の技法を実行するように構成された特定のマシンと考えることができる。例えば、プロセッサ（複数可）２１０による命令の実行は、ビデオプレゼンテーションの２Ｄビューのグローバルな動きを考慮に入れながら、プロセッサ（複数可）２１０に、ビデオプレゼンテーションの２Ｄビューについての深度を推定させ得る。
【００２１】
画像処理モジュール２１４は、本明細書で説明する様々な技法を実行するように構成された専用のハードウェア又はファームウェアを含むことができる。これらの例によれば、画像処理モジュール２１４に関連付けられたハードウェア又はファームウェアは、図２に示すように、プロセッサ（複数可）２１０の一部と考えることができる。例えば、画像処理モジュール２１４は、本開示の技法を実行するように構成された１つ以上の専用のハードウェア構成要素を備えることができる。例えば、画像処理モジュール２１４は、グラフィック処理構成要素、専用のハードウェア（例えば、ＡＳＩＣ）、プログラム可能なハードウェア（ファームウェア（ＦＰＧＡ））、あるいは本開示の技法に一致して動作するように構成された任意の他の専用及び／又はプログラム可能なハードウェアの任意の組合せを含むことができる。
【００２２】
一例によれば、画像処理モジュール２１４は、記憶構成要素２１２によって記憶されるビデオビューのデジタル表現を介して２Ｄビデオビューを取得することができる。別の例では、画像処理モジュール２１４は、通信モジュール２１６を介して１つ以上の他のコンピュータ機器から２Ｄビデオビューを取得することができる。通信モジュール２１６は、他のコンピュータ機器との通信を可能にするための１つ以上の構成要素を含むことができる。例えば、通信モジュール２１６は、ワイヤードの又はワイヤレスのネットワーク（例えば、インターネット）を介して、通信を容易にすることができる。従って、画像処理モジュール２１４は、通信モジュール２１６を介して別のコンピュータ機器に記憶された２Ｄビデオを取得することができる。別の例によれば、画像処理モジュール２１４は、撮像装置（図２には図示せず）から直接２Ｄビデオビューを取得することができる。例えば、コンピュータ機器２０１は、画像を撮影するように構成された１つ以上のカメラ機器を含む、又はそれに通信可能に結合することができる。１つ以上のカメラ機器は、リアルタイムで、又はほぼリアルタイムで、画像処理モジュール２１４に、撮影された画像を通信することができる。これらの例によれば、画像処理モジュール２１４は、本明細書で説明する技法を、リアルタイムで、又はほぼリアルタイムで、撮影された画像のフレームに適用することができる。例えば、画像処理モジュール２１４は、画像が１つ以上のカメラ機器によってキャプチャされるにつれて、受信された２Ｄ画像フレームを３Ｄ表示用に処理することができる。
【００２３】
本開示の技法によれば、画像処理モジュール２１４は、２Ｄビデオビューを取得し、２Ｄビデオビューの少なくとも１つの被写体／画素についての深度の最初の表示を決定することができる。画像処理モジュール２１４は、２Ｄビデオビューについてのグローバルな動きをさらに決定することができる。画像処理モジュール２１４は、決定されたグローバル動きに基づいて、２Ｄビデオビューの少なくとも１つの被写体／画素の深度の最初の表示をさらに調整することができる。次いで、画像処理モジュール２１４は、２Ｄビデオビューの少なくとも１つの代替ビューを作成するために、深度の調整された表示を使用することができる。代替ビューは、３Ｄビデオを表示するために、取得した２Ｄビュー又は別のビューとともに使用されるように構成することができる。
【００２４】
一例によれば、画像処理モジュール２１４は、記憶のために、記憶構成要素２１２に、作成された代替ビューを通信することができる。別の例によれば、コンピュータ機器２０１は、記憶のために、通信モジュール２１６を介して、別のコンピュータ機器に、作成された代替ビューを通信することができる。別の例によれば、コンピュータ機器２０１は、ユーザに対する提示のために、別のコンピュータ機器に、作成された代替ビューをストリームする（例えば、ＨＴＴＰ又は類似のストリーミングプロトコルを介して）ためのサーバ機器として動作し得る。例えば、コンピュータ機器２０１は、ユーザに立体画像を３Ｄで表示するように構成されたコンピュータ機器に、作成された代替ビューをストリームすることができる。
【００２５】
幾つかの例では、図２に示すように、本明細書で説明するように、深度を推定するように構成されたコンピュータ機器２０１は、視聴者に１つ以上の画像を表示するために、１つ以上の表示器２１９と通信するように構成された表示制御モジュール２１８をさらに含むことができる。図２に示すように、画像処理モジュール２１４と同様に、表示制御モジュール２１８は、１つ以上の表示器２１９を制御するために、プロセッサ（複数可）２１０によって実行可能なソフトウェア命令を備えることができる。図２に図示されていない他の例では、表示制御モジュール２１８は、代わりに、又はさらに、１つ以上の表示器２１９を制御するように構成された専用のハードウェアを含むことができる。
【００２６】
１つ以上の表示器２１９は、コンピュータ機器２０１の一部（例えば、ラップトップ、ネットブック、スマートフォン、ポータブルビデオゲーム機器、タブレット型コンピュータなど）でもよく、又はコンピュータ機器２０１（例えば、デスクトップ型コンピュータモニタ、テレビジョン表示器ビデオゲーム機など）に通信可能に結合され得る。１つ以上の表示器２１９は、１つ以上の表示器２１９が、それぞれ視聴者の右眼及び左眼によって知覚されることを意図した第１及び第２の画像を通信することができるという点で、立体画像を表示するように構成され得る。幾つかのそのような例では、ユーザは、第１の画像を視聴者の右眼によって独立して見せ、第２の画像を視聴者の右眼によって独立して見せる専用の眼鏡をかけることができる。表示制御モジュール２１８は、それぞれの右及び左の画像を表示させるために、表示器２１９と通信するように構成され得る。例えば、表示制御モジュール２１８は、例えば異なる色の光、周波数、又は強度など、光を表示要素に放射させて、それぞれの右及び左の画像を視聴者に対して表示させるために、表示器２１９の１つ以上の表示要素（例えば、液晶、発光ダイオード、プラズマ表示要素）を制御する信号を通信するように構成され得る。
【００２７】
図２Ａは、本開示の技法に一致する、画像処理モジュール２１４、画像処理モジュール２１４Ａの一例を示すブロック図である。図２の例によれば、画像処理モジュール２１４Ａは、例えば、シーン変化検出モジュール２３０、オプティカルフロー決定モジュール２３２、グローバル動き決定モジュール２３４、グローバル動き推定モジュール２３６、グローバル動き調整モジュール２３８、及びマスク／深度マップ作成モジュール２４０など、様々なサブモジュールを含む。図２に示される画像処理モジュール２１４と同様に、様々なサブモジュール２３０、２３２、２３４、２３６、２３８、及び２４０は、例えばプロセッサなどのハードウェア上で実行可能なソフトウェア、及び／又は本明細書で説明する技法のいずれかを実行するように構成された任意の他の専用のハードウェアの任意の組合せを備え得る。
【００２８】
シーン変化検出モジュール２３０は、１つ以上のフレームがシーン変化、即ち、実質的にフレーム間の差を表すかどうかを決定するために、ビデオプレゼンテーションの１つ以上のフレームを解析するように構成され得る。シーン変化検出モジュール２３０によって使用され得る技法の例について、図３のステップ３０２に関して以下で説明する。
【００２９】
オプティカルフロー決定モジュール２３２は、例えば、ビデオフレームの少なくとも１つの画素についてのオプティカルフローなど、被写体深度の最初の表示を決定するように構成され得る。例えば、オプティカルフロー決定モジュール２３２は、例えば、図５に関して以下でさらに詳細に説明するように、１つ以上のフレームの少なくとも１つの画素についてのオプティカルフローを決定するために、ビデオプレゼンテーションの１つ以上のフレームを解析することができる。
【００３０】
グローバル動き決定モジュール２３４は、１つ以上のフレームがグローバルな動きを含むかどうかを決定するために、ビデオプレゼンテーションの１つ以上のフレームを解析するように構成され得る。グローバルな動きは、撮影の間のカメラの動きとして説明され得る。グローバルな動きの例には、カメラの左右のパニング、上下のティルト、ズームイン及びズームアウト、並びに類似の運動がある。一例によれば、グローバル動き決定モジュール２３４は、オプティカルフロー決定モジュール２３２から被写体深度（例えば、少なくとも１つのオプティカルフローベクトル）の最初の表示を受信するように構成され得る。この例によれば、グローバル動き決定モジュール２３４は、グローバルな動きが１つ以上のフレームの中に存在するかどうかを決定するために、被写体深度の受信された最初の表示を解析することができる。従って、画像処理モジュール２１４Ａは、グローバル動き決定モジュール２３４が１つ以上のフレームについてグローバルな動きが存在しないことを決定した場合、グローバル動き推定及び／又は調整技法をスキップすることができる。一例では、グローバル動き決定モジュール２３４は、以下の図３のステップ３０５に関して以下で説明するように、ビデオプレゼンテーションの１つ以上のフレームがグローバルな動きを含むかどうかを決定することができる。
【００３１】
グローバル動き推定モジュール２３６は、（例えば、グローバルな動きがグローバル動き決定モジュール２３４によって存在することが決定された場合）ビデオプレゼンテーションの少なくとも１つのフレームについてのグローバルな動きを推定するように構成され得る。例えば、グローバル動き推定モジュール２３６は、オプティカルフロー決定モジュール２３２からビデオフレームの少なくとも１つの画素についてのオプティカルフローベクトルの表示を受信することができる。グローバル動き推定モジュール２３６は、例えば、図３に示されるステップ３０６に関して以下で説明するように、パラメータモデルのグローバル動きパラメータなど、グローバルな動きの少なくとも１つの表示を決定するために、１つ以上の受信されたオプティカルフローベクトルを解析することができる。
【００３２】
グローバル動き調整モジュール２３８は、グローバルな動きを考慮に入れるために、被写体深度の最初の表示を変更するように構成され得る。例えば、グローバル動き調整モジュール２３８は、オプティカルフロー決定モジュール２３２から１つ以上のオプティカルフローベクトルを受信することができる。グローバル動き調整モジュール２３８は、グローバル動き推定モジュール２３６から１つ以上のグローバル動きパラメータをさらに受信することができる。一例によれば、グローバル動き調整モジュール２３８は、ビデオプレゼンテーションの少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するために、受信されたグローバル動きパラメータを１つ以上のオプティカルベクトルに適用することができる。グローバル動き調整オプティカルフローを作成するためにグローバル動き調整モジュール２３８によって使用され得る技法の一例について、図３のステップ３０７に関して以下で説明する。
【００３３】
マスク／深度マップ作成モジュール２４０は、グローバル動き調整モジュール２３８から少なくとも１つの画素についてのグローバル動き調整オプティカルフローを受信し、グローバル動き調整オプティカルフローに基づいて少なくとも１つのフレームについての深度マップを決定するように構成され得る。例えば、マスク／深度マップ作成モジュール２４０は、（例えば、図３のステップ３０８に関して以下で説明するように）画像画素を背景及び／又は前景として分類し、（例えば、図３のステップ３０９に関して説明するように）分類に基づいて最初の前景／背景マスクを作成し、（例えば、図３のステップ３１０に関して説明するように）最初のマスクを精緻化し、及び／又は（例えば、図３のステップ３１１に関して説明するように）最初のマスクを後処理することができる。本明細書で説明する様々な例によれば、マスク／深度推定モジュール２４０は、（例えば、図３のステップ３１２に関して以下で説明するように）ビデオプレゼンテーションの少なくとも１つのフレームについての深度マップをさらに生成することができる。
【００３４】
一般に画像処理モジュール２１４によって実行されるものとして、様々な技法について説明する。本明細書で説明する様々な技法が、さらに又は代わりに、例えば、図２Ａに関して上記で説明した画像処理モジュール２１４Ａのサブモジュール２３０、２３２、２３４、２３６、２３８、及び２４０など、画像処理モジュール２１４の特定のサブモジュールによって実行され得ることを、当業者であれば諒解されよう。
【００３５】
２Ｄビデオプレゼンテーションの深度は、画像のぶれ、被写体の運動、及び／又はオプティカルフロー（例えば、被写体の輝度の動きによる変色など）に基づいて決定され得る。しかしながら、これらの技法には、幾つかの欠点があり得る。例えば、そのような技法は、全てのビデオプレゼンテーション又はビデオプレゼンテーションの部分について当てはまるというわけではない１つ以上の仮定に基づき得る。
【００３６】
立体視表示器技術の開発によって、立体視又は３次元（３Ｄ）のビデオは、ますます人気がある。これらの技術により、例えば映画、テレビ番組、ビデオゲーム、及び他のコンテンツなど、３Ｄコンテンツについての需要は著しく増加した。
【００３７】
例えば、多くの３Ｄ表示技法は、両眼視を使用し、この場合、視聴者の左右の眼によって異なって知覚されるわずかに異なる画像が提供される。この知覚された差のため、ユーザにとっての深度の知覚が作成される。しかしながら、大部分の既存のビデオコンテンツは、２Ｄでの表示用に構成されているだけである。例えば、大部分の既存のビデオコンテンツは、１次ビューしか含んでおらず、３Ｄビデオレンダリングを可能にすることができるどんな２次ビューも含んでいない。さらに、多くの既存のビデオカメラは、モノスコープビデオを撮影できるだけであり（例えば、同じ視点から画像を撮影するための、シングルカメラ又はマルチカメラのみを含む）、従って、画像を直接３Ｄで撮影するように構成されていない。
【００３８】
２Ｄビデオプレゼンテーションを３Ｄビデオ変換に変換することは、既知の元の２Ｄビューから１つ以上の代替ビューを生成することを含み得る。そのような変換技法の一態様は、撮影されたビデオの被写体の相対的な深度の推定を含むことができ、その結果、ビデオは、視聴者が深度を知覚するように再生され得る。幾つかの例では、画像被写体の深度は、１つ以上の代替ビューを生成する前に推定され得る。
【００３９】
深度の推定は、１つ以上のモノスコープ（例えば、２Ｄ）ビューから、深度と呼ばれる、被写体とカメラ平面との間の絶対的又は相対的な距離の推定を含むことができる。幾つかの例では、深度情報は、グレーレベル画像の深度マップによって表される。例えば、画像の画素は、それらの絶対的又は相対的な深度に応じて、値が割り当てられ得る。１つの特定の例では、「０」の深度値は、被写体とカメラとの間の最大距離を示し、一方、「２５５」の深度値は、最小距離を示す。
【００４０】
２Ｄ画像の推定された深度マップは、３Ｄビデオの提示のための深度を決定するために使用され得る。例えば、推定された深度マップは、深度画像ベースレンダリング（ＤＩＢＲ）技法を使用して、ビデオの１つ以上の代替ビューの角度を生成するために使用され得る。例えば、推定された深度マップは、表示されるとき、３Ｄ画像に深度を持たせる３Ｄビデオプレゼンテーションのそれぞれの右画像と左画像との間の差を決定するために使用され得る。
【００４１】
２Ｄビデオの幾つかの態様は、２Ｄ画像の被写体の深度を推定するために使用され得る。例えば、２Ｄビデオのソースに依存して、透視幾何（perspective geometry）、又は時間的もしくは２Ｄ空間的キュー、例えば被写体の動き及び色などが使用され得る。ビデオが２つ以上の事前撮影されたビュー（例えば、複数のカメラを使用して立体的に撮影された）をすでに含む場合、深度マップは、ビューを撮影した１つ以上のカメラの固有の及び／又は外部のパラメータに基づいて、エピポーラジオメトリによって取得することができる。そのような技法は、ステレオビューにおける同じ被写体の対応を識別することによって、視差情報（被写体深度に対して反比例）を推定することができる。そのような技法は、例えばグラフカット及び確率伝搬など、ローカルマッチング及びグローバル最適化方法を含むこともできる。
【００４２】
一般に、ビデオフレームは、１つ以上の前景の被写体と、背景及び／又は背景被写体との合成として考えることができる。カメラの焦点の観点から、焦点がぼけたエリア（例えば、背景画像）の色強度が、焦点が当てられたエリア（例えば、前景画像）と比較して、よりぼけていると仮定することができる。一例によれば、撮影された画像の深度は、画像画素のぶれのレベルに基づいて決定され得る。
【００４３】
画像画素の相対的なぶれは、勾配ベースの測定又は周波数領域の解析に基づいてもよい。例えば、幾つかのビデオ又はビデオフレームについて、勾配値がより大きい画像はあまり不鮮明ではなく、勾配値がより小さい画像はより不鮮明であると仮定され得る。しかし、他のビデオ又はフレームでは、これらの仮定は、正確ではない場合がある。例えば、カメラパースペクティブは、カメラに近い被写体の代わりに遠くの画像被写体に焦点を当てることができる。さらに、前景の同質のエリアは、それほど多くの高周波成分を含まないので、上記で説明した画像ぶれ解析は、前景のテクスチャレス領域に適用可能ではない場合がある。従って、必ずしも下位レベルのぶれがより小さい深度（例えば、カメラまでの距離）を示すとは限らないので、ぶれに従って画像深度を推定することは、正確ではない場合がある。
【００４４】
深度の推定のための他の技法は、モノスコープ２Ｄビデオにおける動きの解析を伴う。これらの技法は、遠い被写体と比較して、（カメラの視点に関して）より近い被写体が大きく見え、より多くの動きを有すると予想されるという仮定に依存し得る。
【００４５】
動き推定は、隣接するビデオフレームの間の被写体の運動を推定することを含むことができる。動き推定は、１つ以上の動きベクトルを決定することを含むことができる。動きベクトルは、ビデオプレゼンテーションの連続フレーム間の被写体の水平及び／又は垂直の並進変位を示すベクトルとして説明される。例えば、静的背景を含む、あるビデオシーン設定のために、動きは、被写体の動きを静的背景から減算することによって取得され得る。静的背景の必要性のため、動き推定は、幾つかのビデオ及び／又はビデオのフレームについては望ましくない可能性がある。動きを推定するための別の技法は、フレームを静的背景と比較する代わりに、隣接するフレーム間の差を決定することである。この技法によれば、動きは、連続フレームの画素の色強度の画素ベース及び／又はウィンドウベースの減算に基づいて識別され得る。
【００４６】
動きが深度の識別として使用される技法によれば、動きの大きさは、深度値を１つ以上のフレーム画素に割り当てるために使用され得る。例えば、動きの大きさがより大きい画素は、より大きい深度値が割り当てられ得る。しかしながら、深度を推定するためのぶれの使用と同様に、深度の表示としての動きの使用も、少なくとも幾つかのビデオについて当てはまらない仮定に基づき得る。例えば、カメラからの距離が実質的に同じ被写体は、独立して、しかし、異なる速度で移動することができる。これらの例によれば、より高速な移動物体がより遅い被写体と同じ距離離れている可能性があるので、動きは、必ずしも画像深度の適切なインジケータとは限らない場合がある。別の例では、画像が短い時間間隔にわたって動きがなく静的なままである場合、深度を推定するために、動きを使用しなくてもよい。
【００４７】
動き推定のために使用され得る別の技法は、ブロックベースのマッチングである。ブロックベースのマッチングが、ビデオ圧縮において使用され得る。これらの技法によれば、ビデオの１つ以上のフレームがブロックに分割される。現在フレームの各ブロックは、同じサイズの１ブロックと比較され得るが、基準フレームで位置がずれ得る。最小マッチングコスト、例えば、マッチングエラーの絶対値の和に関連付けられた決定された位置ずれは、そのブロックにおける全ての画素について、推定された動き値として識別され得る。
【００４８】
深度を推定するための別の技法は、画像セグメンテーションである。一般に、同じ又は同様の色を有する画素は、同じ被写体に属し、急な強度変化は、被写体境界を示す。深度フィールドは、区分的に滑らかであり、深度の不連続性は、画像強度の不連続性によって反映されるものと仮定され得る。これらの技法によれば、ビデオフレームは、幾つかの領域又はセグメントにセグメント化される。次いで、これらのセグメントは、異なる深度値が割り当てられる。画像セグメントの深度推定は、画素ベースの推定と比較してより整合的な深度マップを達成するが、計算複雑さは増加し得る。さらに、テクスチャ様のエリアを含む幾つかのシーンは、セグメント化が難しい可能性がある。例えば、同じ被写体の輝度変化など、セグメントが色分散を被った場合、画像セグメンテーションも不適切であり得る。また、幾つかの場合には、幾つかの異なるセグメントは、ある被写体のために決定され得、及び／又は、ある被写体の画素は、別の被写体の画素を有する同じセグメントに分類され得る。従って、場合によっては、深度推定のために使用されるとき、セグメンテーションの結果は、十分に正確ではない場合がある。
【００４９】
色強度値に従って画像を幾つかの均一の領域に区分する代わりに、それらを深度推定において直接使用することもできる。例えば、クロミナンスＣｒ成分など、幾つかの色情報が、自然のビデオシーンについての深度初期化として使用され得る。幾つかの色空間におけるそれらの成分からの深度推定の１つの利点は、簡潔さである。クロミナンス成分は、同じ被写体に属する画素について滑らかであり得る。セグメンテーションベースの深度推定と比較して、それらの色成分から直接生成された深度マップは、被写体形状をより良く保ち、従って、より良い空間的整合性を与え得る。推定された深度値は真の深度に正確とはほど遠いが、そのような技法に従って作成される合成されたステレオペアは、ある程度まで３Ｄ効果を提供することができる。
【００５０】
オプティカルフロー技法は、例えばカメラなどの観測者と観察されている被写体との間の相対的な動きによって生じた視覚的平面における被写体の輝度パターンの仮現運動を識別することができる。例えば、ビデオフレームのオプティカルフローは、各ポイントにその運動を説明する速度ベクトルが割り当てられる動きフィールドと考えることができる。オプティカルフロー技法は、輝度の恒常性方程式（brightness constancy equation）を介して画素勾配ベースの強度変化に被写体速度を関連付けることを含むことができる。グローバル又はローカルの最適化技法は、１つ以上のフレーム画素についてのオプティカルフロー動きベクトルを計算するために使用され得る。
【００５１】
ぶれ、動き、及び上記の他の技法とは異なり、色強度（例えば、オプティカルフロー）から測定されるビデオフレーム平滑性は、空間と時間の両方において、比較的一貫した深度マップを生成するために使用され得る。深度マップを正確に推定することは、例えば生成された代替の仮想ビューにおけるちらつき及び局部変形など、３Ｄビデオの表現におけるアーチファクトを低減することにとって重要であり得る。
【００５２】
図３は、ビデオプレゼンテーションのグローバル動きに少なくとも部分的に基づいてビデオプレゼンテーションの２Ｄ（例えば、モノスコープなど）ビューの画像深度を推定する方法の一例を示すフローチャートである。図３の方法を含む本明細書で説明する様々な例は、コンピュータ機器２０１、又は図２に示されるコンピュータ機器２０１の構成要素（例えば、画像処理モジュール２１４）によって実行されるものとして述べられている。他の例では、本明細書で具体的に説明しているか否かにかかわらず、本明細書で説明する技法は、任意のコンピュータ機器又はモジュールによって実行され得る。
【００５３】
図３に示すように、画像処理モジュール２１４は、ビデオプレゼンテーションの２Ｄビューを取得する（３０１）ことができる。２Ｄビューは、ビデオプレゼンテーションのプレゼンテーション順序（例えば、１つ以上の表示器を介した、ユーザに対するプレゼンテーション）で、少なくとも２つの連続フレームを含む。図３に示される技法は、キャプチャされたビデオプレゼンテーションの現在（ｆN）及び次（ｆN＋１）のフレームに適用されるものとして説明される。幾つかの例では、図３に示される技法は、ビデオプレゼンテーションの複数のフレームに、複数回適用され得る。
【００５４】
画像処理モジュール２１４（例えば、図２Ａに示されるシーン変化検出サブモジュール２３０）は、シーン変化がフレームｆNとｆN＋１との間に存在するかどうかをさらに決定することができる（３０２）。例えば、画像処理モジュール２１４は、フレームｆNがビデオプレゼンテーションのフレームｆN＋１とは実質的に異なるシーンを表すシーン変化を決定することができる。フレームｆN及びｆN＋１が異なる撮影されたシーンを表す場合、オプティカルフロー及び／又は決定されたグローバルな動きに基づく深度の推定は意味がない場合があるので、シーン変化が発生したかどうかを決定することが望ましい可能性がある。さらに、シーン変化を検出することは、ビデオフレーム解析の時間的（例えば時間の）整合性を向上させることができる。例えば、２つの時間的に隣接するフレームの間にシーン変化が生じる場合、現在フレームの深度マップが前のものと時間的に相関していない場合がある。従って、幾つかの連続フレームの深度を平均するなどの操作を回避することが望ましい場合がある。
【００５５】
従って、ビデオプレゼンテーションのフレームｆNとｆN＋１との間でシーン変化が決定される場合、画像処理モジュール２１４は、フレームｆNについての深度推定をスキップすることができる。フレームｆNについての深度を推定する代わりに、画像処理モジュール２１４は、現在フレームｆNについてのビデオプレゼンテーションの１つ以上の前のフレーム（例えば、フレームｆN−１）のために前に決定された深度推定を使用することができる（３０３）。
【００５６】
図４は、ビデオプレゼンテーションの１つ以上のフレームがシーン変化を含むかどうかを決定する（例えば、図３に示されるように、ステップ３０２）ための技法の一例を示すフローチャート図である。図４に示される方法によれば、画像処理モジュール２１４（例えば、図２Ａに示されるシーン変化検出サブモジュール２３０）は、強度ヒストグラムに基づいて変えられたシーンが生じたかどうかを検出することができる。この方法によれば、現在フレームｆNのために、画素色の相対的な強度のヒストグラムが決定され得る（４０１）。画素色の相対的な強度のヒストグラムは、次のフレームｆN＋１のためにも決定され得る（４０２）。
【数１】
2013545200.tif 000003
【００５７】
これらの例によれば、ｍ番目のビンについてのヒストグラム値は、ｍ番目のビンに属する強度値を有する幾つかの画素であり得る。一例では、ｍの値は、ｍ＝０，１，…Ｍ−１とすることができる。
【００５８】
これらの式によれば、Ｍは、それぞれのヒストグラムの幾つかのビンを表し得る。そのような一例によれば、画素色強度が０〜２５５におよぶ８ビット色表現では、Ｍの値は、２５６であり得る。他の例では、ヒストグラム値ＨN，ＨN+1の次元を低減するために、Ｍについてのより小さい値が使用され得る。
【００５９】
画像処理モジュール２１４は、ステップ３０１及び３０２で決定されるそれぞれのヒストグラムの間の相関係数λをさらに決定することができる（４０３）。一例によれば、相関係数λは、以下の式に基づいて決定され得る。
【数２】
2013545200.tif 000004
【００６０】
同じく図４に示されるように、画像処理モジュール２１４は、ステップ４０３で決定された相関係数λが閾値Ｔ1よりも大きいかどうかをさらに決定することができる（４０４）。閾値Ｔ1は、ビデオプレゼンテーションのシーン変化の経験的解析に基づく所定の値とすることができるが、他の方法で適応的に決定又は定義することもできる。相関係数λの値が閾値Ｔ1未満である場合、画像処理モジュール２１４は、新しいシーンがフレームｆNとフレームｆN＋１との間で検出されたことを決定することができる（４０５）。しかしながら、相関係数λの値が閾値Ｔ1（例えばλ＞＝Ｔ1）以上である場合、画像処理モジュール２１４は、新しいシーンがフレームｆNとフレームｆN＋１との間で検出されていないことを決定することができる（４０６）。
【００６１】
図４に示される技法によれば、ｆN及びフレームｆN＋１が同じシーン（例えば、シーン変化なし）に属する場合、ステップ４０１、４０２で決定されたそれぞれのヒストグラムＨN、ＨN+1が実質的に同様であってもよく、例えば、ＨN、ＨN+1は高く相関する。一例では、シーン変化がフレームｆNとｆN＋１との間に存在しない場合、ステップ４０３で決定された相関係数λは１の値に等しくてもよく、又は１の値に近くてもよい。そうでない場合、相関係数λは、例えば、実質的に１の値未満など、より小さい値を有し得る。
【００６２】
再び図３を参照すると、画像処理モジュール２１４は、フレームｆNとｆN＋１との間のシーン変化を決定しない場合（３０２）、画像処理モジュール２１４（例えば、図２Ａに示されるオプティカルフロー決定サブモジュール２３２）は、例えば、フレームｆN及びｆN＋１の少なくとも１つの画素についてのオプティカルフローなど、フレームｆN及びｆN＋１についての深度の最初の表示を決定することができる（３０４）。オプティカルフローは、観察者（例えば、カメラ）と観察されている１つ以上の被写体（例えば、観察者によって撮影される）との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動として説明され得る。少なくとも１つの画素についてのオプティカルフローを決定するために、画像処理モジュール２１４は、明るさの恒常性方程式を介して被写体速度を画素勾配ベースの強度変化と関連付けることができる。一例によれば、画像処理モジュール２１４は、フレームの１つ以上の画素についての速度ベクトルＶx,yを決定することができる。図３に示されていない他の例では、画像処理モジュール２１４は、オプティカルフロー以外の技法に基づいて、最初の表示を決定することができる。例えば、画像処理モジュール２１４は、ぶれ、動き、ブロックベースのマッチング、及び／又は上記で説明したようなセグメンテーション技法に基づいて、深度の最初の表示を決定することができる。
【００６３】
一例によれば、画像処理モジュール２１４は、ビデオプレゼンテーションの少なくとも１つのボクセルについてのオプティカルフローを決定することができる。ボクセルは、ｘ、ｙ、ｚの実世界の座標における被写体の容積点と考えられ得る。ボクセルは、時刻ｔにカメラ平面（撮像の平面）の位置（例えば、ｘ、ｙ位置）に投影され得る。ボクセルの強度は、値Ｉ（ｘ，ｙ，ｔ）によって表され得る。強度Ｉ（ｘ，ｙ，ｔ）は、ボクセルから投影される観察者（例えば、カメラ）の平面に現れるボクセルの強度を表すことができる。値ｘは、カメラ平面（画像キャプチャの平面）の水平指標を表し、一方、値ｙはカメラ平面の垂直指標を表す。小さい時間間隔δｔの後、時刻ｔ＋δｔで、ボクセルは、新しい位置（例えば、ｘ、ｙ位置）（ｘ＋δｘ、ｙ＋δｙ、ｔ＋δｔ）に投影され得る。時間間隔δｔが比較的短い場合、強度値Ｉ（ｘ，ｙ，ｔ）は変化していないと見なすことができ、例えば以下の式によって表される。
【数３】
2013545200.tif 000005
【００６４】
一例によれば、画像処理モジュール２１４は、短期間以内の小さい運動についてのテイラー級数を決定することができる。例えば、画像処理モジュール２１４は、以下の式に従ってテイラー級数を決定することができる。
【数４】
2013545200.tif 000006
【数５】
2013545200.tif 000007
【００６５】
及び
【数６】
2013545200.tif 000008
【００６６】
上記の式によれば、あるボクセル（画素）についての速度ベクトル（即ち、オプティカルフロー動きベクトル）は、以下と表され得、
【数７】
2013545200.tif 000009
【００６７】
明るさの恒常性方程式は、以下と表され得る。
【数８】
2013545200.tif 000010
【００６８】
所与の画素位置（例えば、ｘ、ｙ位置）について、画像処理モジュール２１４は、式（６）の値Ｉx、Ｉy、及びＩtを決定することができる。値Ｉx、Ｉy、及びＩtはそれぞれ、空間的水平、垂直及び時間的方向に沿った導関数として説明され得る。画像処理モジュール２１４は、連続フレーム間の差に基づいて値Ｉtを決定することができる。画像処理モジュール２１４は、水平方向に沿って離散的微分フィルタ（演算子）を元のフレームに適用することに基づいて、値Ｉxを決定することができる。画像処理モジュール２１４は、垂直方向に沿って離散的微分フィルタ（演算子）を元のフレームに適用することに基づいて、値Ｉyを決定することができる。Ｉx、Ｉy、及びＩtについてひとたび値が決定されると、Ｉx、Ｉy、及びＩtは、ｖx及びｖyの値を決定するために使用され得る。
【００６９】
従って、ｖx、ｖyの値を決定するために、関連した分野において知られている様々な技法が使用されてもよい。例えば、画像処理モジュール２１４は、例えばＬｕｃａｓ−Ｃａｎａｄｅ（ＬＫ）オプティカルフロー方法及びＨｏｒｎ  Ｓｃｈｕｎｃｋ（ＨＳ）方法などの制約に基づいて、値ｖx、ｖyを決定することができる。画像処理モジュール２１４は、値ｖx，ｖyを決定するために、他の技法を使用することもできる。
【００７０】
画像処理モジュール２１４（例えば、図２Ａに示されるオプティカルフロー決定サブモジュール２３２）は、１つ以上の画像画素についてのオプティカルフローを決定し、１つ以上の画像画素に割り当てられるオプティカルフローベクトルＶx，yを生成するために、上記で説明した計算を使用することができる。画像処理モジュール２１４は、ビデオフレームの画素及び／又は被写体についての深度を推定するために、オプティカルフローベクトルを使用することができる。例えば、画像処理モジュール２１４は、オプティカルフローの大きさがより大きい画素により大きい深度値を割り当て、オプティカルフロー値がより小さい画素により小さい深度値を割り当てることができる。特定の一例では、８ビットグレーレベルスケールを使用して画素深度を表す場合、画像処理モジュール２１４は、ソース（例えばカメラ）から遠い画素に０の深度値を割り当て、ソースに近い画素に２５５の深度を割り当てることができる。
【００７１】
再び図３を参照すると、ひとたび深度の最初の表示がフレームｆN及びｆN＋１について決定されると（例えばステップ３０４で）、画像処理モジュール２１４は、フレームｆNについてのグローバルな動きが存在するか否かを決定することができる（３０５）。図５は、フレームｆNがグローバルな動きを含むか否かを決定するための１つの例示的な技法を示すフロー図である。図５の方法によれば、画像処理モジュール２１４は、フレームｆN及びｆN＋１を複数のブロックに分割することができる（５０１）。１つのそのような例では、画像処理モジュール２１４は、フレームｆN及びｆN＋１をＬ×Ｌブロックに分割することができる。これらの分割されたブロックは、値ｋ1及びｋ2によってインデックスを付けることができ、ｋ1は、水平ブロックインデックスを表し、ｋ2は垂直ブロックインデックスを表す。
【数９】
2013545200.tif 000011
【００７２】
画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き決定サブモジュール２３４）は、それぞれのブロックｋ1、ｋ2についてのグローバルな動きが存在するかどうかをさらに決定することができる（５０３）。一例によれば、画像処理モジュール２１４は、それぞれのブロックごとに、以下の式で示すように、平均フロー大きさを所定の閾値Ｔ2と比較することができる。
【数１０】
2013545200.tif 000012
【００７３】
式中、Ｖx,yは、図４に関して上記で説明したように画素位置（ｘ，ｙ）のオプティカルフローベクトルである。｜Ｘ｜は、ベクトルＸのＬ2ノルムを表すことができる。
【００７４】
所定の閾値Ｔ2は、グローバルな動きを含むか否かが既知であり得るビデオプレゼンテーションフレームの経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。ブロックの平均フロー大きさが所定の閾値Ｔ2以上である場合、画像処理モジュール２１４は、それぞれのブロックについて、グローバルな動きが存在することを決定することができる。従って、画像処理モジュール２１４は、それぞれのブロックｋ1、ｋ2についてのグローバル動きフラグ（例えば、Ｂｋ1、ｋ2）に１の値を割り当てることができる（５０４）。ブロックの平均フロー大きさが所定の閾値Ｔ2未満である場合、画像処理モジュール２１４は、ブロックについて、グローバルな動きが存在しないことを決定することができる。従って、それぞれのブロックｋ1、ｋ2についてのグローバル動きフラグ（例えば、Ｂｋ1、ｋ2）に０の値を割り当てることができる（５０５）。
【００７５】
同じく図５に示されるように、画像処理モジュール２１４は、フレームｆN、ｆN＋１についてのグローバルな動きが存在するかどうかを決定することができる（５０６）。画像処理モジュール２１４は、フレームｆN、ｆN＋１のそれぞれのブロックｋ1、ｋ2についてのそれぞれのグローバル動きフラグ（例えば、Ｂk1、k2）を合計することによって、フレームｆN、ｆN＋１についてのグローバルな動きが存在するかどうかを決定することができる。画像処理モジュール２１４は、それぞれのグローバル動きフラグの合計の結果を閾値Ｔ3とさらに比較することができる。所定の閾値Ｔ3は、グローバルな動きを含むか否かが既知であり得るビデオプレゼンテーションフレームの経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。それぞれのグローバル動きフラグの合計が閾値Ｔ3よりも大きい場合、画像処理モジュール２１４は、フレームｆN、ｆN＋１についてのグローバルな動きが存在することを決定することができる（５０７）。しかしながら、それぞれのグローバル動きフラグの合計が閾値Ｔ3未満である場合、画像処理モジュール２１４は、フレームｆN、ｆN＋１についてのグローバルな動きが存在しないことを決定することができる（５０８）。
【００７６】
再び図３を参照すると、フレームｆN、ｆN＋１についてのグローバルな動きが存在しないと決定された場合、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、以下でさらに詳細に説明するように、フレームｆNの１つ以上の画素及び／又は被写体を前景又は背景被写体として分類することに進むことができる（３０８）。しかしながら、フレームｆN、ｆN＋１についてのグローバルな動きが存在することが決定された場合、画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き推定サブモジュール２３６）は、フレームｆN、ｆN＋１の少なくとも１つの画素についてのグローバルな動きを推定することができる（３０６）。幾つかの例では、画像処理モジュール２１４は、１つ以上のグローバル動きパラメータを決定することによって、グローバルな動きを推定することができる。
【００７７】
図３に同じく示すように、画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き調整サブモジュール２３８）は、（例えば、ステップ３０６で決定される）推定されたグローバル動きに基づいて、画像深度（例えば、ステップ３０４で決定されるオプティカルフロー）の最初の表示を調整することができる（３０７）。一例では、画像処理モジュール２１４は、決定されたグローバル動きパラメータを画像深度の最初の表示に適用することによって、画像深度の最初の表示を調整することができる。一例によれば、図５に関して上記で説明したように、画像深度の最初の表示がオプティカルフローに基づいて決定される場合、画像処理モジュール２１４は、フレームｆNの少なくとも１つの画素の速度ベクトル（オプティカルフロー動きベクトル）を調整して、推定されたグローバルな動きを補償することができる。例えば、画像処理モジュール２１４は、グローバル動き調整速度ベクトルを作成するために、１つ以上の決定されたグローバル動きパラメータをフレームｆNの少なくとも１つの画素の速度ベクトルに適用することができる。
【００７８】
一例によれば、少なくとも１つの画素についてのグローバル動きの推定は、カメラ運動のモデルに基づいて決定され得る。後述するカメラ運動モデルの例は、８パラメータパースペクティブモデル(8-parameter perspective model)であるが、本明細書で説明するカメラ運動モデルは、本開示の範囲を超えることなく、任意の数のパラメータを含むことができる。本開示の他の例に従って、例えば、２パラメータ平行移動モデル又は６パラメータアフィンモデル(6-parameter affine models)を使用することもできる。
【００７９】
８パラメータパースペクティブモデルによれば、フレームｆNの元のポイント位置（ｘ，ｙ）とフレームｆN＋１の対応するポイント位置（ｘ’，ｙ’）との間の関係は、以下の式によって表すことができる。
【数１１】
2013545200.tif 000013
【００８０】
この場合、変数ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｐ、及びｑは、パースペクティブモデルの８つのパラメータである。従って、画像処理モジュール２１４は、フレームｆN、ｆN＋１についての少なくとも１つのオプティカルフローベクトルの解析に従って、それぞれのパラメータについての値を決定することができる。これらの式は非線形の変換関数を表し得るが、幾つかの例では、これらの式は、１次方程式の形に変えることができる。これらの式は、解く計算が少なくてすむので、１次形式に改正することは有利であり得る。
【数１２】
2013545200.tif 000014
【数１３】
2013545200.tif 000015
【数１４】
2013545200.tif 000016
【００８１】
例えば、ポイント［ｘ，ｙ］T及び［ｘ’，ｙ’］Tは、異なる時刻にではあるが、同じ実世界のボクセルから投影される２つの画像フレームの２つの対応するポイントであると仮定する。上記で説明した同質の表現によれば、フレームｆNについての８パラメータパースペクティブモデルによる非線形マッピングは、以下の式によって表すことができる。
【数１５】
2013545200.tif 000017
【００８２】
これらの式は、以下の線形行列演算によって、さらに表すことができる。
【数１６】
2013545200.tif 000018
【００８３】
である。
【数１７】
2013545200.tif 000019
【数１８】
2013545200.tif 000020
【数１９】
2013545200.tif 000021
【数２０】
2013545200.tif 000022
【数２１】
2013545200.tif 000023
【００８４】
上記の８パラメータパースペクティブモデルのパラメータを推定するために、画像処理モジュール２１４は、上記の式（１２）の形で、１つ以上の画素を定式化することができる。しかしながら、幾つかの画素は、式（１２）のパラメータの正確さに影響を与え得る。例えば、均一強度エリアに属する画素は、式（１２）に従って動きを正しく推定していない可能性がある。従って、幾つかの例によれば、画像処理モジュールは、グローバル動きパラメータが決定される幾つかの画素を低減するために、フレームｆN、ｆN＋１の候補画素を選択することができる。
【００８５】
図６は、本開示の技法に一致する、候補画素の画像処理モジュール２１４の選択の一例を示すフローチャート図である。この例によれば、画像処理モジュール２１４は、フレームｆNの１つ以上のエッジ画素を決定するために、エッジ検出を実行することができる（６０１）。例えば、フレームｆNの被写体が人の顔である場合、人の顔のエッジが検出され得る。本明細書で説明するエッジ検出は、当技術分野で知られている様々な技法に従って実行することができる。そのような技法については、本明細書では明示的に説明していない。
【００８６】
画像処理モジュール２１４は、フレームｆN、ｆN＋１の少なくとも１つの画素についてのオプティカルフローベクトルＶ＝［ｖx，ｖy］Tの１次勾配値Δｖをさらに決定することができる（６０２）。一例によれば、画像処理モジュール２１４は、フレームｆN、ｆN＋１の全ての画素について、１次勾配値Δｖを決定することができる。他の例では、画像処理モジュール２１４は、例えばステップ６０１で端部画素として識別された画素など、フレームｆN、ｆN＋１の画素のサブセットについて、１次勾配値Δｖを決定することができる。
【００８７】
図６に示すように、画像処理モジュール２１４は、決定された１次勾配値の絶対値|Δv|が所定の閾値Ｔ4よりも大きいかどうかを、識別された端部画素ごとに、さらに決定することができる（６０３）。所定の閾値Ｔ4は、特徴点として望ましいことが既知であり得る画素の経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。決定された１次勾配値の絶対値|Δv|が所定の閾値Ｔ4以下である場合、画像処理モジュールは、グローバルな動きを決定するための特徴点として画素を選択することができる（６０４）。しかしながら、決定された１次勾配値の絶対値|Δv|が所定の閾値Ｔ4よりも大きい場合、画像処理モジュール２１４は、フレームｆN、ｆN＋１について、グローバルな動きを推定するための特徴点として画素を選択することはできない（６０５）。図６に示すように、画像処理モジュール２１４は、例えば、フレームｆNについてのグローバルな動きを決定するためなど、フレームｆNについての深度を決定するために、選択された特徴点画素を使用することができる（６０６）。例えば、画像処理モジュール２１４は、上記で説明したようにカメラの運動のモデル（例えば、パースペクティブモデル）に従って１つ以上のグローバル動きパラメータを決定するために、選択された特徴点画素を使用することができる。
【００８８】
再び図３を参照すると、上記で説明したように、画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き調整サブモジュール２３８）は、グローバルな動きを補償するように、画像深度の最初の表示をさらに調整することができる（３０７）。一例によれば、画像処理モジュールは、グローバルな動きを補償するために、フレームｆN、ｆN＋１について、深度（例えば、ステップ３０４のオプティカルフロー）の最初の表示に決定されたグローバル動きパラメータを適用することによって、画像深度の最初の表示を調整することができる。従って、グローバル動き調整オプティカルフローを作成することができる。一例によれば、フレームｆN＋１の画素位置（ｘ，ｙ）ごとに、対応するグローバル動き調整位置（ｘ’，ｙ’）は、式（１２）に従って決定することができる。例えば、画像処理モジュール２１４は、以下の式に従って、画素ごとに、グローバルな動きを表すことができる。
【００８９】
グローバル_vx = x-x’
グローバル_vy = y-y’                                                  (13),
（例えば、図３のステップ３０４で決定されるように）画像深度の最初の表示は、ローカルとグローバルの両方の動きに基づいてもよい。従って、画像処理モジュール２１４は、画像深度の最初の表示からグローバルな動きを減算することによって、グローバルな動きを補償することができる。画像深度の最初の表示がオプティカルフローである場合、オプティカルフローは、画素ごとにオプティカルフローベクトルＶ＝［ｖx，ｖy］Tとして表すことができる。従って、調整されたフローベクトルは、式Ｖ’＝［ｖ’x，ｖ’y］Tによって表すことができ、但し、
v'x = vx - グローバル_ vx , 及び
v’x = vx - グローバル_ vx                                             (14),
である。
【００９０】
グローバル動き調整フレーム、ｆ’N＋１は、時刻ｔからｔ＋δｔまでカメラ運動がないかのように、時刻ｔ＋δｔで撮影されたフレームと見なすことができる。画像処理モジュール２１２は、フレームｆ’N＋１の画素（ｘ’，ｙ’）の強度を、フレームｆN＋１の画素（ｘ，ｙ）の同じ強度で設定することができる。例えば、
【数２２】
2013545200.tif 000024
【００９１】
である。
【００９２】
深度（例えば、図３のステップ３０４で決定されるオプティカルフロー）の最初の表示はビデオプレゼンテーションのフレームｆNとｆN＋１との間の差の推定を指し得るが、本明細書で説明するように、グローバル動き補償フレーム差は、フレームｆNとグローバル動き調整フレームｆ’N＋１との間の差を表し得る。例えば、
【数２３】
2013545200.tif 000025
【００９３】
である。
【００９４】
上記で説明した技法によれば、フレームについてのグローバル動き調整オプティカルフローのために、元のフレームがグローバルな動きを含んでいる場合でも、実世界において静止しているフレームの背景被写体は静的に見えることができる。従って、ローカルな動きを有する前景の移動物体のみが、グローバル動き調整フレームにおいて動きを有することがある。従って、画像処理モジュール２１４は、グローバルな動きが取り除かれると、より大きい正確さを有する深度マップを決定することができる。上記で説明したように、深度マップは、ビデオフレームの画素及び／又は被写体の相対的な深度を示す値のマップでもよい。
【００９５】
幾つかの例では、式（８）から（１２）に関して上述したパースペクティブモデルは、整数でなくてもよい。幾つかの例では、計算複雑さを低減するために、画像処理モジュール２１４は、値（ｘ’，ｙ’）を整数に四捨五入することができ、ＩN+1,(x,y)の強度を整数画素位置値（ｘ’，ｙ’）に割り当てることができる。対応する位置（ｘ’，ｙ’）がビデオフレームの境界を越える場合、画像処理モジュール２１４は、画素を破棄することができる。別の例によれば、２つ以上の画素位置（ｘ，ｙ）が整数位置（ｘ’，ｙ’）にマッピングされ得る。この例によれば、画像処理モジュール２１４は、（ｘ’，ｙ’）の強度値を、全ての画素についての強度値の平均に設定することができる。画素が特定の画素位置（ｘ’，ｙ’）にマッピングされない場合、画像処理モジュール２１４は、１つ以上の隣接する画素位置の決定された強度から補間による画素位置の強度を取得することができる。
【００９６】
再び図３を参照すると、（例えば、図３のステップ３０５で）グローバルな動きが存在することが決定されたか否かにかかわらず、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、フレームｆNについてのオプティカルフロー、又はフレームｆNについてのグローバル動き調整オプティカルフローのいずれかに基づいて、フレームｆNの被写体及び／又は画素を前景又は背景被写体のいずれかとしてさらに分類することができる（３０８）。図７は、本開示の技法に一致して、フレームの画素及び／又は被写体の前景又は背景被写体としての画像処理モジュール２１４の分類の一例を示す。例えば、図７に示すように、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、画像の被写体が前景又は背景被写体であるか否かを決定するために、オプティカルフローベクトル（例えば、ステップ３０５でフレームｆNがグローバルな動きを含んでいないと決定された場合、グローバル動き調整、又は非グローバル動き調整）を所定の閾値Ｔ5と比較することができる（７０１）。所定の閾値Ｔ5は、前景及び／又は背景被写体又は画素であることが既知であり得るビデオプレゼンテーションフレームの被写体及び／又は画素の経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。幾つかの例では、画像処理モジュール２１４は、フレームｆNの画素ごとに、オプティカルフローを所定の閾値Ｔ5と比較することができる。幾つかの例では、画像処理モジュール２１４は、フレームｆNの画素のサブセットについて、オプティカルフローを所定の閾値Ｔ5と比較することができる。例えば、上記で説明したように、エッジ検出に基づく比較又はフレームのどの画素がフレームの画像被写体を構成するかを決定するための任意の他の技法のために画素を選択することができる。
【００９７】
図７に同じく示すように、画素についてのオプティカルフローが所定の閾値Ｔ5以下である場合、画像処理モジュール２１４は、背景被写体の一部であるとして、画素を分類することができる（７０２）。しかしながら、画素についてのオプティカルフローが所定の閾値Ｔ5よりも大きい場合、画像処理モジュール２１４は、前景被写体の一部であるとして、画素を分類することができる（７０３）。
【００９８】
再び図３を参照すると、幾つかの例では、図３の方法のステップ３０８での前景又は背景被写体としての被写体の分類に基づいて、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、最初の前景／背景マスクを作成することができる（３０９）。本明細書で説明するマスクは、前景被写体と分類された画像フレームのエリア及び背景被写体と分類されたエリアのデジタル表現であり得る。例えば、本明細書で説明するマスクは、白色で前景画素を表すことができ、一方、背景画素は別の色、例えば黒によって表される。画像処理モジュール２１２は、２Ｄビデオプレゼンテーションの少なくとも１つの代替ビューを生成するために、本明細書で説明するようにマスクを使用することができ、その結果、３Ｄプレゼンテーションが視聴者に表示されるとき、前景画像は前景に表示され、３Ｄプレゼンテーションが視聴者に表示されるとき、背景画素は背景に表示される。
【００９９】
図３に同じく示すように、幾つかの例では、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、最初の前景／背景マスクをさらに精緻化することができる（３１０）。図８は、最初の前景／背景マスクを精緻化する方法の一例を示すフロー図である。幾つかの例では、ビデオプレゼンテーションは、殆んど又は全くテクスチャを含まない１つ以上の領域を含むことができる（以下「均一強度エリア（homogenous intensity areas）」）。カメラ運動は検出されるが、それらの均一強度エリアのオプティカルフローベクトルは実質的にゼロに等しくなり得る。その結果、（例えば、上記の式（１６）に従って取得された）グローバル動き調整オプティカルフローベクトルＶ’は不正確であり得る。幾つかの例では、（例えば、図３のステップ３０８で決定されるように）最初の前景／背景マスクは、均一強度エリアについて正確ではない場合がある。従って、幾つかの例では、画像処理モジュール２１４は、フレームの均一強度エリアによる不正確さを考慮に入れるために、最初の前景／背景マスクを精緻化することができる。
【０１００】
図８に示すように、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、フレームｆNとフレームｆN＋１との間のグローバル動き調整フレーム差を決定することによって、最初の前景／背景マスクを精緻化することができる（８０１）。グローバル動き調整フレーム差を決定することは、フレームｆN、ｆN＋１の画素ごとに、近隣画素の平均フレーム差を含むことができる。１つのそのような例では、２Ｐ＋１×２Ｐ＋１ウィンドウ（例えば、フレームｆN、ｆN＋１は、２Ｐ×２Ｐブロックに分けられている）を使用して平均フレーム差を計算することができるが、他のウィンドウサイズも企図される。２Ｐ＋１×２Ｐ＋１ウィンドウが使用される例によれば、画像処理モジュールは、平均フレーム差を決定するために、フレームｆN、ｆN＋１の少なくとも１つの画素に下記の式を適用することができる。
【数２４】
2013545200.tif 000026
【０１０１】
画像処理モジュール２１２は、決定されたグローバル動き調整フレーム差を所定の閾値Ｔ6とさらに比較することができる（８０２）。所定の閾値Ｔ6は、前景及び／又は背景と誤って分類されることが既知であり得るビデオプレゼンテーションフレームの画素の経験的解析に基づいて選択することができるが、本明細書で説明する閾値を定義するために、他の技法が使用されてもよい。特定の画素について、決定されたグローバル動き調整フレーム差が所定の閾値Ｔ6未満である場合、画素は背景画素の可能性が高いと仮定され得る。従って、画像処理モジュール２１４は、ゼロの値を画素についてのグローバル動き調整フローベクトルＶ’に割り当てることができる（８０４）。しかしながら、特定の画素について、決定されたグローバル動き調整フレーム差が所定の閾値Ｔ6以上である場合、画像処理モジュール２１４は、（例えば、図３に示される方法のステップ３０７で決定された）前に決定されたものと同じグローバル動き調整フローベクトルＶ’を画素に割り当てることができる（８０３）。
【０１０２】
画素が背景画素の可能性が高い場合、均一強度エリアの画素に、０のグローバル動き調整フローベクトルＶ’が割り当てられ得るので、図８に示される方法に従って、画像処理モジュール２１４が、フレームｆNについてのグローバル動き調整オプティカルフローを精緻化することは、有利であり得る。従って、画像処理モジュール２１４は、均一強度画素が背景被写体として分類される精緻化されたマスクを作成することができ、それによって、ビデオフレームの均一強度エリアによって生じ得る不整合を低減又は除去することができる。
【０１０３】
再び図３を参照すると、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、ビデオプレゼンテーションのための最終セグメンテーションマスクを作成するために、最初の前景／背景マスク、又は精緻化された前景背景マスク（以下「最初のマスク」と総称される）のいずれかをさらに後処理することができる（３１１）。画像処理モジュール２１２は、最初のマスクにおける前景／背景画素の比較的小さい領域を識別することによって、最初のマスクを後処理することができる。前景／背景画素のそのような比較的小さい領域は、最初のマスクにおける画素のノイズ及び／又は誤分類によって生じ得る。幾つかの例では、画像処理モジュール２１４は、例えば、比較的小さい領域の画素を最終セグメンテーションマスクの背景画素と分類することによって、又は、比較的小さい前景領域の画素を、最終セグメンテーションマスクの作成のために、背景画素と分類することによって、そのような比較的小さい領域を削除することができる。
【０１０４】
幾つかの例では、画像処理モジュール２１４は、バイナリ画像輪郭解析を実行することによって、最初のマスクを後処理することができる。バイナリ画像輪郭解析は、最初のマスクにおける内部輪郭及び外部輪郭を検出することを含み得る。輪郭は、例えば、フレームｆNの形状又は被写体を画定する又は境界をつけるなど、フレーム被写体の外形でもよい。外部輪郭は、他のいかなる輪郭もその輪郭の中に存在しない輪郭として説明され得る。内部輪郭は、別の輪郭の内部の輪郭として説明され得る。
【０１０５】
バイナリ画像輪郭解析によれば、画像処理モジュール２１４は、それらが最初のマスクにおけるノイズを表すかどうか決定するために、内部及び／又は外部の輪郭のそれぞれのエリアを１つ以上の閾値と比較することができる。例えば、外部輪郭では、外部輪郭のエリアが所定の閾値Ｔ7未満である場合、画像処理モジュール２１４は、その輪郭が最初のマスクにノイズを含むと識別することができる。従って、外部輪郭のエリアが所定の閾値Ｔ7未満である場合、画像処理モジュール２１４は、輪郭の画素を最終セグメンテーションマスクの背景画素と分類することができる。内部輪郭では、内部輪郭のエリアが所定の閾値Ｔ8未満である場合、画像処理モジュールは、その輪郭が最初のマスクにノイズを含むと識別することができる。従って、内部輪郭のエリアが所定の閾値Ｔ8未満である場合、画像処理モジュール２１４は、輪郭の画素を最終セグメンテーションマスクの前景画素と分類することができる。上記で説明した後処理技法は、フレームｆNについての最初のマスクを平滑化することができる。従って、画像処理モジュール２１４は、フレームｆNについてのより正確な最終セグメンテーションマスクを作成することができる。
【０１０６】
再び図３を参照すると、画像処理モジュール２１４は、図３のステップ３０１で取得されるビデオプレゼンテーションの２Ｄビューのための深度マップを作成することができる（３１２）。一例では、画像処理モジュール２１４は、例えば、図３のステップ３１０で作成された最終セグメンテーションマスクなど、最終セグメンテーションマスクに基づいて、深度マップを作成することができる。他の例では、画像処理モジュール２１４は、（例えば、図３のステップ３０８で作成された）最初の前景／背景マスク又は（例えば、図３のステップ３０９で作成された）精緻化された前景／背景マスクに基づいて、深度マップを作成することができる。以下、最終セグメンテーションマスク、最初の前景／背景マスク、及び精緻化された前景／背景マスクは、「マスク」と総称される。本明細書で説明するマスクは、前景被写体と分類された画像フレームのエリア及び背景被写体と分類されたエリアのデジタル表現であり得る。例えば、本明細書で説明するマスクは、白色で前景画素を表すことができ、一方、背景画素は別の色、例えば黒によって表される。画像処理モジュール２１２は、２Ｄビデオプレゼンテーションの少なくとも１つの代替ビューを生成するために、本明細書で説明するようにマスクを使用することができ、その結果、３Ｄプレゼンテーションが視聴者に表示されるとき、前景画像は前景に表示され、３Ｄプレゼンテーションが視聴者に表示されるとき、背景画素は背景に表示される。
【０１０７】
深度マップを作成するために、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、フレームのマスクに基づいて、深度値を各画素に割り当てることができる。例えば、画像処理モジュール２１４は、より大きい深度値を、ローカル動きを有する被写体に対応する前景画素に割り当てることができ、これは、前景画素が観測者（例えば、ビデオプレゼンテーションの２Ｄビューを撮影したカメラ）により近いことを示す。対照的に、画像処理モジュール２１４は、より小さい深度値を背景画素に割り当てることができ、これは、背景画素が観測者からかなり離れていることを示す。一例によれば、画像処理モジュール２１４は、以下の式によって記述されるように、画素色に従って深度値を割り当てることができる。
【数２５】
2013545200.tif 000027
【０１０８】
式中、ＣN(x,y)は画素（ｘ，ｙ）におけるフレームｆNの色値を示し、βは１未満であり得るスケーリング係数を示す。様々な例で、ＣN(x,y)は任意のタイプの色値を表すことができ、その非限定的な例には、ＲＧＢ（赤、緑、青）値、シアン、マゼンタ、イエロー、及びブラック（ＣＭＹＫ）値、又は輝度値及びクロミナンス値がある。
【０１０９】
幾つかの例では、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、深度マップをさらに平滑化することができる。１つのそのような例では、画像処理モジュール２１４は、非対称ガウスぶれフィルタを使用して深度マップを平滑化することができる。この例によれば、水平方向に沿ったぶれ強度は、非対称ガウスぶれフィルタの水平方向に沿うよりも強くなり得る。
【０１１０】
幾つかの例では、画像処理モジュール２１４は、（例えば、式（１８）に関して上記で説明したように）フィルタ処理された最初の深度の加重平均として、フレームｆNについての最終深度を設定することができる。例えば、画像処理モジュール２１４は、以下の式によって前のフレームｆN−１の最終深度マップを表すことができる。
【数２６】
2013545200.tif 000028
【０１１１】
様々な例では、画像処理モジュール２１４は、本開示の技法によって作成された深度マップを使用して、（例えば、ビデオプレゼンテーションが深度を有するように見えるように）それがユーザに対して３Ｄのように見えるように表示され得るビデオプレゼンテーションを作成することができる。１つのそのような例によれば、画像処理モジュール２１４は、ビデオプレゼンテーションの１つ以上の代替ビューを作成するために、深度マップを使用することができる。ビデオプレゼンテーションの１つ以上の代替ビューは、それぞれのビューが一緒に表示されるとき、ビデオがユーザに対して実質的に３Ｄのように見えるように、（例えば図３のステップ３０１で取得される）ビデオプレゼンテーションの元の２Ｄビュー、又はビデオプレゼンテーションの別の代替ビューとともに表示されるように構成され得る。例えば、表示制御モジュール２１８は、表示器２１９に視聴者の右眼及び視聴者の左眼によって見られるそれぞれのビューを提示させ得る。それぞれのビュー間の差によって、ユーザは、実質的に３次元で表示されたビデオプレゼンテーションを知覚することができる。幾つかのそのような例では、画像処理モジュール２１４は、代替ビューと別のビュー（例えば、元の２Ｄビュー又は他の代替ビュー）との間の差が、本開示の技法に一致して作成されたそれぞれのビューの画素についての深度マップに基づいて選択され得るように、代替ビューを生成することができる。従って、幾つかの例では、本開示の技法は、３Ｄビデオプレゼンテーションへの２Ｄビデオプレゼンテーションのより正確な変換を提供することができる。
【０１１２】
図９は、本開示の技法に一致する方法の一例を示すフローチャート図である。図９に示すように、画像処理モジュール２１４は、ビデオプレゼンテーションの２次元（２Ｄ）ビューの少なくとも１つのフレームについてのオプティカルフローを決定する（９０１）。オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動の表現であり得る。幾つかの例では、オプティカルフローは、少なくとも１つの例のために、画像深度の少なくとも１つの最初の表示を提供することができる。一例では、オプティカルフローは、少なくとも１つのフレームの画素ごとに決定され得る。図９に同じく示すように、画像処理モジュール２１４は、少なくとも１つのフレームについての推定グローバルな動きをさらに含み得る（９０２）。一例によれば、画像処理モジュール２１４は、上記のように、カメラ運動のモデル（例えば、８パラメータパースペクティブモデル）に基づく推定を介して、少なくとも１つのフレームについてのグローバルな動きを推定することができる。例えば、グローバルな動きを推定することは、（例えば、図３のステップ３０４に関して上記で説明したように）少なくとも１つのフレームについての少なくとも１つのグローバル動きパラメータを決定することを含むことができる。図９に同じく示すように、画像処理モジュール２１４は、推定されたグローバル動きに基づいてオプティカルフローを変更して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成することができる（９０３）。一例では、画像処理モジュール２１４は、（例えば、図３のステップ３０７に関して上記で説明したように）少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するために、少なくとも１つのグローバル動きパラメータをオプティカルフローに適用することを介して、オプティカルフローを変更することができる。図９に同じく示すように、画像処理モジュール２１４は、グローバル動き調整オプティカルフローに基づいて少なくとも１つのフレームの少なくとも１つの前景画素を識別することができる（９０４）。幾つかの例では、識別された少なくとも１つの前景画素は、ビデオプレゼンテーションの少なくとも１つのフレームの深度マップを作成するために使用され得る。視聴者によって実質的に３次元として知覚されるビデオプレゼンテーションを作成するために、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローに基づいて作成された深度マップが使用され得る。
【０１１３】
図６は、グローバルな動きを決定するための特徴点として、候補画素を選択するための技法の一例を示す。図６に記載されている技法によれば、フレームｆNの１つ以上の端部画素を決定するために、エッジ検出が実行され、決定された１次勾配値の絶対値が所定の閾値Ｔ4よりも大きいかどうかに基づいて、端部画素の特徴点が選択される。本開示の技法に一致する他の例によれば、グローバル動きの決定に使用される特徴点は、図１０〜図１３に関して以下で説明するように、他の考慮事項に基づいて選択することができる。
【０１１４】
図１０は、本開示の技法に一致する、グローバル動きの推定／補償のための特徴点として使用するための、候補画素の選択の方法の別の例を示すフローチャート図である。図１０に示すように、画像処理モジュール２１４は、フレームＦNを複数のブロック（例えば、Ｍ×Ｍブロック）に分割することができる（１００１）。画像処理モジュール２１２は、ブロック（及び／又はブロック内の画素）ごとに、ブロック／画素がフレームの中央領域にあるかどうかを決定することができる（１００２）。以下でより詳細に説明するように、ブロック／画素がフレームの中央領域にあるかどうかのこの決定は、特徴点として使用するために、候補画素を選択する際に使用することができる。
【０１１５】
図１１は、そのような中央領域１１１０を含む画像の日付のフレーム１１０１の一例を示す概念図である。図１１に示すように、フレーム１１０１は、中央領域１１１０、ならびにフレーム１１０１の左側、上側、及び右側の部分を含む周辺領域１１１２を含む。同じく図１１に示されるように、画素１１０２は、中央領域１１１０内に位置し、一方、画素１１０２は、中央領域１１１０外（例えば、周辺領域１１１２内）に位置する。
【０１１６】
再び図１０を参照すると、ブロック／画素が（例えば、画素１１０２など）フレーム１１０１の中央領域１１１０内にある場合、画像処理モジュール２１４は、グローバル動き推定／補償のための特徴点として、ブロック内の画素及び／又は複数の画素を使用しない場合がある（１００７）。代わりに、画像処理モジュール２１４は、幾つかの例では、グローバルな動きを決定するために、少なくとも１つの前のフレームＦN+1から１つ以上の前に識別された特徴点に関して、画像データを使用することができる（１００３）。
【０１１７】
しかしながら、中央領域１１１０外（例えば、周辺領域１１１２内）のブロック／画素について、画像処理モジュール２１４は、１つ以上のコーナー領域の画素を識別することができる（１００４）。画像のコーナー領域は、画像の２つの非平行の端部が互いに交差する領域（又はポイント、例えば画素）を識別することができる。コーナー領域は、領域／ポイント局所近傍に２つの主要の異なる端部方向がある領域（ポイント）としても説明され得る。１つ以上のコーナー領域を決定するために、画像処理モジュール２１４は、マルチスケールハリス演算子を利用することができる、例えばハリスコーナー検出技法など、画像内の端部及び／又はコーナー領域を識別するための任意の技法を利用することができる。上記で説明したように、１つ以上のコーナー領域を決定するために利用され得る、端部及び／又はコーナー識別技術の技法の他の例には、例えば、Ｋｉｒｓｈ演算子、Ｆｒｅｉ−Ｃｈｅｎマスキングセット、モラベックコーナー検出アルゴリズム、Ｈａｒｒｉｓ＆Ｓｔｅｐｈｅｎｓ／Ｐｌｅｓｓｅｙ／Ｓｈｉ−Ｔｏｍａｓｉコーナー検出アルゴリズム、ｌｅｖｅｌ  ｃｕｒｖｅ  ｃｕｒｖａｔｕｒｅ手法、Ｌａｐｌａｃｉａｎ  ｏｆ  Ｇａｕｓｓｉａｎ（ＬｏＧ）、Ｄｉｆｆｅｒｅｎｃｅ  ｏｆ  Ｇａｕｓｓｉａｎｓ（ＤｏＧ）、Ｄｅｔｅｒｍｉｎａｔｉｏｎ  ｏｆ  Ｈｅｓｓｉａｎ（ＤｏＨ）アルゴリズム、ａｆｆｉｎｅ−ａｄａｐｔｅｄ  ｉｎｔｅｒｅｓｔ  ｐｏｉｎｔ演算子、Ｗａｎｇ及びＢｒａｄｙのコーナー検出アルゴリズム、ｓｍａｌｌｅｓｔ  Ｕｎｉｖａｌｕｅ  Ｓｅｇｍｅｎｔ  Ａｓｓｉｍｉｌａｔｉｎｇ  Ｎｕｃｌｅｕｓ（ＳＵＳＡＮ）、Ｔｒａｊｋｏｖｉｃ及びＨｅｄｌｙのコーナー検出、Ａｃｃｅｌｅｒａｔｅｄ  Ｓｅｇｍｅｎｔ  Ｔｅｓｔ（ＡＳＴ）ベースの特徴検出器、検出器の自動合成（例えば、Ｔｒｕｊｉｌｌｏ及びＯｌａｇｕｅによって導入される）、又はフレームの１つもしくはコーナー領域及び／又は画素を決定するための任意の他の技法などの技法がある。
【０１１８】
幾つかの例では、画像処理モジュール２１４は、特徴点として使用されるフレームのブロック当たりの候補画素（例えば、コーナー領域の画素）の数を制限することができる。例えば、画像処理モジュールは、ブロック当たりの所定の数の候補画素のみを識別することができる。例えば、画像処理モジュールは、フレームのブロック当たり５個から１０個のみの候補画素を識別することができる。
【０１１９】
別の例によれば、画像処理モジュール２１４は、フレームのコーナー領域の画素を識別することができるが、最も重要である所定の数の識別された画素を候補画素として利用することができるだけである。この場合、画像処理モジュール２１４は、特徴点を決定するために、最大の強度値を有するあるブロックの所定の数の画素を利用することができる。例えば、画像処理モジュール２１４は、あるブロックの全てのコーナー領域を識別することができるが、候補画素として最大の強度値を有するブロック当たり５個から１０個の画素を選択することができるだけである。さらに別の例によれば、画像処理モジュール２１４は、候補画素として所定の閾値よりも大きい強度値を有する画素のみを利用することができる。幾つかの例では、画像処理モジュール２１４は、特定のブロックの任意の画素を（例えば、フレームの均一の領域の）候補画素と識別しない場合がある。
【０１２０】
幾つかの例では、画像処理モジュール２１４は、グローバルな動きを決定するために使用される候補画素の数をさらに低減することができる。例えば、図１０に示されるように、画像処理モジュール２１４は、候補画素がローカル動きを含むかどうかをさらに決定することができる（１００５）。候補画素がローカル動きを含む場合、画像処理モジュール２１４は画素を特徴点と識別しない場合がある（１００７）。代わりに、画像処理モジュール２１４は、少なくとも１つの他のフレームからの画像データを特徴点として使用することができる（１００３）。候補画素がローカル動きを含まない場合、画像処理モジュール２１４は、グローバル動きの決定の際に使用するために、候補画素を特徴点と識別することができる（１００８）。
【０１２１】
同じく図１０に示されるように、画像処理モジュール２１４は、さらに、又は代わりに、候補画素がフレームの均一の領域の一部であるかどうかを決定することもできる。例えば、画像処理モジュール２１４は、それを決定する場合、隣接画素の１つ以上の特性は、候補画素と同じ又は実質的に同様の値を共有する。候補画素がフレームの均一の領域にある場合、画像処理モジュール２１４は、特徴点として候補画素を使用しない場合がある（１００７）。代わりに、幾つかの例では、画像処理モジュール２１４は、少なくとも１つの他のフレームからの画像データを特徴点として使用することができる（１００３）。候補画素がフレームの均一の領域にない場合、画像処理モジュール２１４は、グローバルな動きの決定の際に使用するために、特徴点として候補画素を識別し得る（１００８）。
【０１２２】
図１０に関して上記で説明した技法は、幾つかの理由で、有利であり得る。例えば、図１０に示される基準に基づいて幾つかの特徴点を選択することによって、深度マップを決定する計算複雑さが低減され得る。さらに、フレーム（及び／又は場合によっては望ましくない画素、例えば均一の領域のローカル動き及び／又は画素）の中央領域の特徴点として少なくとも１つの前のフレームの画像データを使用することによって、深度マップを決定する計算複雑さをさらに低減することができる。
【０１２３】
図３及び図９、並びに上の記述は、フレームについてのグローバルな動きを決定することに基づいて２Ｄ画像の深度マップを生成し、推定されたグローバル動きに基づいてフレームについてのオプティカルフローの表現を変更して、フレームについてのグローバル動き調整オプティカルフローを作成することについて記載する。図８及び上の対応する記述は、画像処理モジュール２１４が、フレームＦNとＦN+1との間のグローバル動き調整フレーム差を決定し、使用することによって、最初の前景／背景マスクを精緻化することができることを記載する。
【０１２４】
本開示の技法に一致する他の例によれば、画像処理モジュール２１４は、グローバル動き補償フレーム差（例えば、図８に関して上記で説明したように）を使用して、上記で説明したように、グローバル動き調整フレームの代わりに深度マップを決定することができる。この例によれば、画像処理モジュール２１４は、グローバル動き調整フレームを決定しない場合がある。代わりに、画像処理モジュール２１４は、グローバル動き補償フレーム差に基づいてのみ、深度マップを決定することができる。深度マップを決定するためにグローバル動き補償フレーム差を使用することによって、２Ｄ画像についての３Ｄ深度マップを決定するために使用される計算複雑さ及び／又はメモリを低減することができる。
【０１２５】
幾つかの例では、画像処理モジュール２１４は、グローバル動き補償フレーム差Ｆｒｍ＿ＤｉｆｆN（上記の式（１６）を参照）を決定することができる。そのようなグローバル動き補償フレーム差Ｆｒｍ＿ＤｉｆｆNは、フレームｆNとグローバル動き補償フレームｆ’N+1との間の差を指し得る。幾つかの例では、画像処理モジュール２１４は、上記で説明した図６及び図１０の例に関して上記で説明したように選択されるフレームの１つ以上の特徴点に基づいて推定される１つ以上のグローバル動きパラメータに基づいて、グローバル動き補償フレーム差を決定することができる。
【０１２６】
図１２は、本開示の技法に一致する、２Ｄ画像についての深度を決定する方法の一例を示すフローチャート図である。図１２に示すように、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、（例えば、図５に関して上記で説明したように）グローバルな動きが存在するかどうかを決定することができる（１２０１）。グローバルな動きがフレーム内に存在しない場合、画像処理モジュール２１４は、セグメンテーションマスクを決定するために、非補償フレーム差｜ｆ’N+1−ｆN+1｜を使用することができる（１２０２）。フレームについてのグローバルな動きが存在する場合、画像処理モジュール２１４は、グローバル動き補償フレーム差を決定することができる（１２０３）。画像処理モジュール２１２は、決定されたフレーム差（例えば、グローバル動き補償フレーム差又は非補償フレーム差）に、メジアンフィルタを適用することができる（１２０４）。メジアンフィルタは、決定されたフレーム差におけるノイズを低減することができる。
【０１２７】
画像処理モジュール２１２は、画像被写体（及び／又は画素）を前景又は背景として分類するために、フレームにおいてセグメンテーションをさらに実行することができる（１２０５）。例えば、図１２に示すように、画像処理モジュール２１４は、被写体及び／又は画素についてのフレーム差の強度を所定の強度閾値Ｔ9と比較することができる（１２０６）。フレーム差の強度が閾値Ｔ9よりも大きい場合、画像処理モジュール２１４は、被写体及び／又は画素を前景被写体と識別することができる（１２０７）。しかしながら、フレーム差の強度が閾値Ｔ9未満である場合、画像処理モジュール２１４は、被写体及び／又は画素を背景被写体と識別することができる（１２０８）。フレームをセグメント化することに基づいて、画像処理モジュール２１４は、フレームについてのバイナリマスクを生成することができる（図１２には図示せず）。画像処理モジュールは、バイナリマスクに、形態素フィルタリング（morphological filtering）（例えば、１つ以上の開いた又は閉じた形態素フィルタを使用する）をさらに適用することができる（同じく図１２には図示せず）。画像処理は、フレームについての最初の前景／背景マスクを生成することができる（同じく図１２には図示せず）。
【０１２８】
画像処理モジュール２１２は、最初の前景／背景マスクを後処理することもできる（１２０９）。例えば、画像処理モジュールは、最終マスクを生成するために、図３に関して上記で説明したように、最初の前景／背景マスクを後処理することができる。上記で説明したように、画像処理モジュール２１４は、３Ｄ画像についての深度マップを生成するために、最終マスクを使用することができる。深度マップは、異なる画像を視聴者の右眼及び左眼に提示し、それによって、画像が視聴者にとって３Ｄのように見えるようにするために使用され得る。
【０１２９】
図１３は、本開示の技法に一致する、２Ｄ画像についての深度マップを決定するための方法の一例を示すフロー図である。図１３に示すように、画像処理モジュール２１４は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、ビデオプレゼンテーションのフレームについての複数の特徴点を決定する（１３０１）。例えば、画像処理モジュールは、フレームの画素がフレームの中央領域にあるか、画素がローカル動きを含むか、及び／又は、画素がフレームの均一の領域にあるかのうちの１つ以上に基づいて、複数の特徴点を決定することができる。
【０１３０】
画像処理モジュール２１４は、複数の特徴点に基づいてフレームについてのグローバルな動きを決定する（１３０２）。画像処理モジュール２１４は、グローバル動き補償フレーム差をさらに決定する（１３０３）。画像処理モジュールは、グローバル動き補償フレーム差に基づいてビデオプレゼンテーションの２Ｄビューについての深度マップをさらに決定する（１３０４）。深度マップは、少なくとも１つの画像が視聴者に対して実質的に３Ｄのように見えるようにするために使用され得る。
【０１３１】
１つ以上の例では、本明細書で説明する機能は、例えば特定のハードウェアコンポーネント又はプロセッサなど、少なくとも部分的にハードウェアに実装され得る。より一般的には、本技法は、ハードウェア、プロセッサ、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装できる。ソフトウェアで実装される場合、機能は、１つ以上の命令又はコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体又は通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コード及び／又はデータ構造を取り出すために１つ以上のコンピュータあるいは１つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１３２】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ又は他の光ディスクストレージ、磁気ディスクストレージ、又は他の磁気ストレージ機器、フラッシュメモリ、あるいは命令又はデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。さらに、いかなる接続もコンピュータ可読媒体、即ちコンピュータ可読伝送媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。但し、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）及びディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）及びブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１３３】
命令は、１つ以上の中央処理ユニット（ＣＰＵ）、デジタル信号プロセッサ（ＤＳＰ）などの１つ以上のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路又はディスクリート論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、又は本明細書で説明する技法の実装に好適な他の構造のいずれかを指す。さらに、幾つかの態様では、本明細書で説明した機能は、符号化及び復号化のために構成された専用のハードウェア及び／又はソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つ以上の回路又は論理要素中に十分に実装され得る。
【０１３４】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、又はＩＣのセット（例えば、チップセット）を含む、多種多様な機器又は装置において実装され得る。本開示では、開示する技法を実行するように構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットについて説明したが、それらの構成要素、モジュール、又はユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び／又はファームウェアとともに、上記で説明した１つ以上のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作ハードウェアユニットの集合によって与えられ得る。
【０１３５】
様々な例について説明した。これら及び他の例は以下の特許請求の範囲内に入る。
【図１】
2013545200.tif 000029
【図２】
2013545200.tif 000030
【図２Ａ】
2013545200.tif 000031
【図３】
2013545200.tif 000032
【図４】
2013545200.tif 000033
【図５】
2013545200.tif 000034
【図６】
2013545200.tif 000035
【図７】
2013545200.tif 000036
【図８】
2013545200.tif 000037
【図９】
2013545200.tif 000038
【図１０】
2013545200.tif 000039
【図１１】
2013545200.tif 000040
【図１２】
2013545200.tif 000041
【図１３】
2013545200.tif 000042
【手続補正書】
【提出日】平成25年10月23日(2013.10.23)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その内容全体が参照により本明細書に組み込まれる、２０１０年１１月２３日に出願された「ＤＥＰＴＨ  ＥＳＴＩＭＡＴＩＯＮ  ＢＡＳＥＤ  ＯＮ  ＧＬＯＢＡＬ  ＭＯＴＩＯＮ」という名称の米国特許出願第１２／９５３，３１０号の一部継続出願である。
【０００２】
本開示は、一般に３次元（３Ｄ）のビデオの生成に関する。より詳細には、本開示は、３次元（３Ｄ）ビデオプレゼンテーションの表示のための代替ビュー（代替表示）を生成するために使用され得る既存の２次元（２Ｄ）ビデオプレゼンテーションについての深度マップの作成に関する。
【背景技術】
【０００３】
近年、ビデオ表示装置での３Ｄビデオプレゼンテーションを可能にするために、技術（例えば、テレビジョン、ＤＶＤプレーヤ、セットトップボックス、ブルーレイプレーヤ、コンピュータなど）が開発されている。しかしながら、大部分の既存のビデオコンテンツ（例えば、記憶された、ダウンロードされた、及び／又は、ストリーミングビデオコンテンツ）は、２Ｄで表示されるように構成されているだけである。従って、２Ｄビデオプレゼンテーションの既存のデジタル表現を３Ｄ表現に変換することが望ましくなり得る。そうするために、互いに対してビデオオブジェクトの深度を決定するために２Ｄビデオプレゼンテーションを解析することが望ましくなり得る。ビデオオブジェクトの深度の表現は、深度マップと呼ばれ得る。オブジェクト深度の決定は、ユーザに対して３Ｄで表示されるビデオプレゼンテーションを生成するために使用され得る。
【発明の概要】
【０００４】
グローバル動きは、撮影の間のカメラの動きとして説明され得る。グローバル動き運動の幾つかの例には、カメラの左右のパニング、上下のティルト、及び／又は例えばズームイン及びズームアウトなど様々な他の効果がある。本開示は、例えば、２Ｄビューを撮影した１つ以上の立体カメラの動きを推定するなど、２Ｄビューのグローバルな動きを推定することを含むビデオプレゼンテーションの２Ｄビューの画像オブジェクトの深度を推定するための技法について記載する。本開示は、画像の画素のサブセットに基づいてグローバルな動きを推定するための技法についても記載する。本開示は、グローバル動き補償フレーム差に基づいて画像についての深度マップを決定するための技法についてさらに記載する。
【０００５】
幾つかの例では、グローバルな動きを推定することは、ビデオプレゼンテーションの２Ｄビューの変換の改良を提供することができ、その結果、例えば、３Ｄビデオプレゼンテーションなど、ビデオプレゼンテーションが深度を有することが知覚され得るようになる。例えば、グローバル動きに基づいて深度を推定することは、ビデオプレゼンテーションの代替ビューの生成を提供し得る。代替ビューは、視聴者に対して実質的に３Ｄのように見えるように、ビデオプレゼンテーションの表示のための元の２Ｄビューとともに表示され得る。
【０００６】
一例によれば、方法について本明細書で説明する。方法は、ビデオプレゼンテーションの２次元（２Ｄ）ビューのためのコンピュータ機器の画像処理モジュールを介して、２Ｄビューの少なくとも１つのフレームについてのオプティカルフローを決定することを含み、オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動の表現である。方法は、画像処理モジュールによって、及び決定されたオプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定することをさらに含む。方法は、画像処理モジュールによって、推定されたグローバル動きに基づいてオプティカルフローを調整して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフロー（global motion-adjusted optical flow）を作成することをさらに含む。方法は、画像処理モジュールによって、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成することをさらに含む。
【０００７】
別の例によれば、装置について本明細書で説明する。装置は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、２Ｄビデオプレゼンテーションの少なくとも１つのフレームについてのオプティカルフローを決定するオプティカルフロー決定モジュールを含み、オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動の表現である。装置は、決定されたオプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定するグローバル動き推定モジュールをさらに含む。装置は、推定されたグローバルな動きに基づいてオプティカルフローを調整して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するグローバル動き調整モジュールをさらに含む。装置は、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成するマスク／深度マップ作成モジュールをさらに含む。
【０００８】
別の例によれば、コンピュータ可読記憶媒体について本明細書で説明する。コンピュータ可読記憶媒体は、実行時に、１つ以上のプロセッサに、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、２Ｄビデオプレゼンテーションの少なくとも１つのフレームについてのオプティカルフローを決定させる命令を記憶する。オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの視運動(apparent motion)の表現である。命令は、さらに、コンピュータ機器に、オプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定させる。命令は、さらに、コンピュータ機器に、推定されたグローバルな動きに基づいてオプティカルフローを調整させて、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成させる。命令は、さらに、コンピュータ機器に、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成させる。
【０００９】
別の例によれば、機器について本明細書で説明する。機器は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、２Ｄビデオプレゼンテーションの少なくとも１つのフレームについてのオプティカルフローを決定するための手段を含む。オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの視運動の表現である。機器は、オプティカルフローに基づいて、少なくとも１つのフレームについてのグローバルな動きを推定するための手段をさらに含む。機器は、推定されたグローバルな動きに基づいてオプティカルフローを調整して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するための手段をさらに含む。機器は、グローバル動き調整オプティカルフローに基づいてビデオプレゼンテーションの２Ｄビューについての深度マップを生成するための手段をさらに含む。
【００１０】
別の例によれば、本開示は、ビデオプレゼンテーションの２次元ビューについての深度マップを決定する方法について記載する。方法は、ビデオプレゼンテーションの２次元（２Ｄ）ビューのためのコンピュータ機器の画像処理モジュールを介して、ビデオプレゼンテーションのフレームについての複数の特徴点を決定することを含む。方法は、複数の特徴点に基づいてフレームについてのグローバルな動きを決定することをさらに含む。方法は、決定されたグローバルな動きに基づいてフレームについての深度マップを生成することをさらに含む。
【００１１】
別の例によれば、ビデオプレゼンテーションの２次元（２Ｄ）ビューについての深度マップを決定するように構成された機器。機器は、ビデオプレゼンテーションのフレームについての複数の特徴点を決定し、複数の特徴点に基づいてフレームについてのグローバルな動きを決定し、決定されたグローバルな動きに基づいてフレームについての深度マップを生成するように構成された画像処理モジュールを含む。
【００１２】
別の例によれば、ビデオプレゼンテーションの２次元（２Ｄ）ビューについての深度マップを決定するように構成された機器。機器は、ビデオプレゼンテーションのフレームについての複数の特徴点を決定するための手段を含む。機器は、複数の特徴点に基づいてフレームについてのグローバルな動きを決定するための手段をさらに含む。機器は、決定されたグローバル動きに基づいてフレームについての深度マップを生成するための手段をさらに含む。
【００１３】
別の例によれば、コンピュータ可読記憶媒体について本明細書で説明する。コンピュータ可読記憶媒体は、実行時に、１つ以上のプロセッサに、ビデオプレゼンテーションのフレームについての複数の特徴点を決定させ、複数の特徴点に基づいてフレームについてのグローバルな動きを決定させ、決定されたグローバル動きに基づいてフレームについての深度マップを生成させる命令を含む。
【００１４】
１つ以上の例の詳細は、添付の図面及び以下の説明に記載されている。本発明の他の特徴、目的、及び利点は、その説明及び図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１５】
【図１】本開示の技法に一致する、２Ｄビデオプレゼンテーションを３Ｄビデオプレゼンテーションに変換するための方法の一例を示すフロー図。
【図２】本開示の技法に一致する、２Ｄビデオプレゼンテーションについての深度を推定するように構成されたコンピュータ機器の一例を示すブロック図。
【図２Ａ】本開示の技法に一致する、画像処理モジュールの一例を示すブロック図。
【図３】本開示の技法に一致する、２Ｄビデオプレゼンテーションについての深度マップを作成する方法の一例を示すフロー図。
【図４】本開示の技法に一致する、ビデオプレゼンテーションの少なくとも１つのフレームについて、シーン変化が生じたかどうかを決定する方法の一例を示すフロー図。
【図５】本開示の技法に一致する、ビデオプレゼンテーションの少なくとも１つのフレームについて、グローバルな動きが存在するかどうかを決定する方法の一例を示すフロー図。
【図６】本開示の技法に一致する、グローバル動きの推定のための特徴点を識別する方法の一例を示すフロー図。
【図７】本開示の技法に一致する、画像画素／被写体を前景／背景として分類する方法の一例を示すフロー図。
【図８】本開示の技法に一致する、ビデオプレゼンテーションについての最初のマスクを精緻化する方法の一例を示すフロー図。
【図９】本開示の技法に一致する、ビデオプレゼンテーションの２Ｄビューの少なくとも１つの前景画素を決定するための方法の一例を示すフロー図。
【図１０】本開示の技法に一致する、グローバル動きの推定のための特徴点を識別するための方法の一例を示すフロー図。
【図１１】本開示の技法に一致する、中央領域及び周辺領域を含むフレームを示す概念図である。
【図１２】本開示の技法に一致する、２Ｄ画像についての深度マップを決定するための方法の一例を示すフロー図。
【図１３】本開示の技法に一致する、２Ｄ画像についての深度マップを決定するための方法の一例を示すフロー図。
【発明を実施するための形態】
【００１６】
本開示は、例えば、２Ｄビュー（２Ｄ表示）を撮影した１つ以上のモノスコープカメラの動きを推定するなど、２Ｄビューのグローバルな動きを推定することを含むビデオプレゼンテーションの２Ｄビューの画像被写体の深度を推定するための技法について記載する。幾つかの例では、グローバルな動きを推定することは、ビデオプレゼンテーションの２Ｄビューの変換の改良を提供することができ、その結果、例えば、３Ｄビデオプレゼンテーションなど、ビデオプレゼンテーションが深度を有することが知覚され得るようになる。例えば、本開示の技法は、少なくともビデオフレームについて、画像深度の少なくとも１つの最初の表示（例えば、少なくとも１つの画素のオプティカルフローなど）を決定し、最初の表示に基づいて、フレームについてのグローバルな動きを推定することを提供する。グローバル動きの推定は、画素の動きの最初の表示を補償するために使用され得、それによって、少なくとも１つのビデオフレームの被写体の深度（例えば、前景又は背景）を決定する際の正確さを向上させる。従って、少なくとも１つのフレームについて、深度マップが生成され得る。深度マップは、３Ｄ（例えば、立体的な）ビデオプレゼンテーションを表示するために、少なくとも１つの他のビュー（例えば、２Ｄビュー）とともに使用され得るビデオプレゼンテーションの少なくとも１つの代替ビューを生成するために使用され得る。
【００１７】
図１は、本開示の技法に一致する、撮影された画像についての深度を推定するための１つの例示的な方法を示すフロー図である。図１に示すように、方法は、ビデオプレゼンテーションの２Ｄ（例えば、モノスコープ）ビューを取得すること（１０１）を含む。２Ｄビューは、１つ以上のモノスコープ（シングル）カメラで撮影される画像を含むことができる。２Ｄビューは、代わりに、１つ以上の立体（２つ以上の）カメラを使用して撮影される複数のビューのシングルビューでもよい。方法は、２Ｄビューの１つ又は複数の被写体及び／又は画素についての深度の最初の表示を作成すること（１０２）をさらに含む。深度の最初の表示は、上記のように、例えば、ぶれ、動き、ブロックベースのマッチング、セグメンテーション、又はオプティカルフロー技法を含めて、本明細書で説明する技法のいずれかに基づいて作成され得る。方法は、深度の最初の表示に基づいて２Ｄビューの少なくとも１つのフレームのグローバルな動きを決定すること（１０３）をさらに含む。方法は、決定されたグローバル動きに基づいて、２Ｄビューの被写体及び／又は画素の最初の表示を調整すること（１０４）をさらに含む。例えば、オプティカルフローが画像深度の最初の表示を決定するために使用される場合、方法は、少なくとも１つの画素についてのグローバル動き調整オプティカルフローベクトルを作成するために、決定されたグローバル動きに基づいて２Ｄビューの少なくとも１つの画素についての少なくとも１つのオプティカルフローベクトルを変更することを含む。方法は、調整された深度マップに基づいて２Ｄビューの少なくとも１つの代替ビューを作成すること（１０５）をさらに含む。方法は、２Ｄビューの生成された代替ビューを使用して３Ｄビデオを提示することをさらに含むことができる。例えば、ビデオプレゼンテーションの２Ｄビューは、３Ｄビデオプレゼンテーションの左ビューとして表示され、一方、代替ビューは、３Ｄビデオプレゼンテーションの右ビューとして表示され得る。右ビューと左ビューとの間の差によって、３Ｄビデオプレゼンテーションの１つ以上の画像が、視聴者によって深度を有するものとして知覚され得る。
【００１８】
図２は、本開示の技法を実行するために使用され得るコンピュータ機器２０１の例示的な構成を示すブロック図である。コンピュータ機器２０１は、１つ以上の２Ｄビデオビュー（２Ｄビデオ表示）の３Ｄ表現を作成するために、１つ以上の２Ｄビデオビューを処理するように構成された任意の機器であり得る。本開示の技法を実施するために使用され得るコンピュータ機器２０１の非限定的な例には、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ機器、スマートフォン、ネットブック、テレビジョン、ビデオゲーム機、ポータブルビデオゲームユニット、又はビデオデータを処理するように構成された任意の他のコンピュータ機器がある。
【００１９】
図２の例に示すように、コンピュータ機器２０１は、１つ以上のプロセッサ２１０を含む。１つ以上のプロセッサ２１０は、コンピュータ機器に機能、例えば本開示の深度推定技法を実行させるために命令を実行するように構成されたコンピュータ機器２０１の構成要素である。例えば、プロセッサ（複数可）２１０は、記憶構成要素２１２によって記憶される命令を実行するように構成され得る。記憶構成要素２１２は、例えばコンピュータハードディスク、フラッシュメモリ、又はランダムアクセスメモリ（ＲＡＭ）構成要素など、１つ以上の短期又は長期メモリ記憶構成要素を含み得る。一例では、プロセッサ２１０（複数可）は、コンピュータ機器２０１の１つ以上の中央処理装置（ＣＰＵ）を備えることができる。他の例では、プロセッサ（複数可）２１０は、代わりに又はさらに、１つ以上のグラフィック処理ユニット（ＧＰＵ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定の論理又はハードウェア、若しくは他の同様の処理構成要素を含むことができる。
【００２０】
図２に示すように、プロセッサ（複数可）２１０は、画像処理モジュール２１４を含む。図示の例によれば、画像処理モジュール２１４は、記憶構成要素２１２によって記憶され、本明細書で説明する技法を実行するために１つ以上のプロセッサ２１０によって実行可能な命令を含む。記憶構成要素２１２に記憶される命令の実行時に、プロセッサ（複数可）２１０は、本開示の技法を実行するように構成された特定のマシンと考えることができる。例えば、プロセッサ（複数可）２１０による命令の実行は、ビデオプレゼンテーションの２Ｄビューのグローバルな動きを考慮に入れながら、プロセッサ（複数可）２１０に、ビデオプレゼンテーションの２Ｄビューについての深度を推定させ得る。
【００２１】
画像処理モジュール２１４は、本明細書で説明する様々な技法を実行するように構成された専用のハードウェア又はファームウェアを含むことができる。これらの例によれば、画像処理モジュール２１４に関連付けられたハードウェア又はファームウェアは、図２に示すように、プロセッサ（複数可）２１０の一部と考えることができる。例えば、画像処理モジュール２１４は、本開示の技法を実行するように構成された１つ以上の専用のハードウェア構成要素を備えることができる。例えば、画像処理モジュール２１４は、グラフィック処理構成要素、専用のハードウェア（例えば、ＡＳＩＣ）、プログラム可能なハードウェア（ファームウェア（ＦＰＧＡ））、あるいは本開示の技法に一致して動作するように構成された任意の他の専用及び／又はプログラム可能なハードウェアの任意の組合せを含むことができる。
【００２２】
一例によれば、画像処理モジュール２１４は、記憶構成要素２１２によって記憶されるビデオビューのデジタル表現を介して２Ｄビデオビューを取得することができる。別の例では、画像処理モジュール２１４は、通信モジュール２１６を介して１つ以上の他のコンピュータ機器から２Ｄビデオビューを取得することができる。通信モジュール２１６は、他のコンピュータ機器との通信を可能にするための１つ以上の構成要素を含むことができる。例えば、通信モジュール２１６は、ワイヤードの又はワイヤレスのネットワーク（例えば、インターネット）を介して、通信を容易にすることができる。従って、画像処理モジュール２１４は、通信モジュール２１６を介して別のコンピュータ機器に記憶された２Ｄビデオを取得することができる。別の例によれば、画像処理モジュール２１４は、撮像装置（図２には図示せず）から直接２Ｄビデオビューを取得することができる。例えば、コンピュータ機器２０１は、画像を撮影するように構成された１つ以上のカメラ機器を含む、又はそれに通信可能に結合することができる。１つ以上のカメラ機器は、リアルタイムで、又はほぼリアルタイムで、画像処理モジュール２１４に、撮影された画像を通信することができる。これらの例によれば、画像処理モジュール２１４は、本明細書で説明する技法を、リアルタイムで、又はほぼリアルタイムで、撮影された画像のフレームに適用することができる。例えば、画像処理モジュール２１４は、画像が１つ以上のカメラ機器によってキャプチャされるにつれて、受信された２Ｄ画像フレームを３Ｄ表示用に処理することができる。
【００２３】
本開示の技法によれば、画像処理モジュール２１４は、２Ｄビデオビューを取得し、２Ｄビデオビューの少なくとも１つの被写体／画素についての深度の最初の表示を決定することができる。画像処理モジュール２１４は、２Ｄビデオビューについてのグローバルな動きをさらに決定することができる。画像処理モジュール２１４は、決定されたグローバル動きに基づいて、２Ｄビデオビューの少なくとも１つの被写体／画素の深度の最初の表示をさらに調整することができる。次いで、画像処理モジュール２１４は、２Ｄビデオビューの少なくとも１つの代替ビューを作成するために、深度の調整された表示を使用することができる。代替ビューは、３Ｄビデオを表示するために、取得した２Ｄビュー又は別のビューとともに使用されるように構成することができる。
【００２４】
一例によれば、画像処理モジュール２１４は、記憶のために、記憶構成要素２１２に、作成された代替ビューを通信することができる。別の例によれば、コンピュータ機器２０１は、記憶のために、通信モジュール２１６を介して、別のコンピュータ機器に、作成された代替ビューを通信することができる。別の例によれば、コンピュータ機器２０１は、ユーザに対する提示のために、別のコンピュータ機器に、作成された代替ビューをストリームする（例えば、ＨＴＴＰ又は類似のストリーミングプロトコルを介して）ためのサーバ機器として動作し得る。例えば、コンピュータ機器２０１は、ユーザに立体画像を３Ｄで表示するように構成されたコンピュータ機器に、作成された代替ビューをストリームすることができる。
【００２５】
幾つかの例では、図２に示すように、本明細書で説明するように、深度を推定するように構成されたコンピュータ機器２０１は、視聴者に１つ以上の画像を表示するために、１つ以上の表示器２１９と通信するように構成された表示制御モジュール２１８をさらに含むことができる。図２に示すように、画像処理モジュール２１４と同様に、表示制御モジュール２１８は、１つ以上の表示器２１９を制御するために、プロセッサ（複数可）２１０によって実行可能なソフトウェア命令を備えることができる。図２に図示されていない他の例では、表示制御モジュール２１８は、代わりに、又はさらに、１つ以上の表示器２１９を制御するように構成された専用のハードウェアを含むことができる。
【００２６】
１つ以上の表示器２１９は、コンピュータ機器２０１の一部（例えば、ラップトップ、ネットブック、スマートフォン、ポータブルビデオゲーム機器、タブレット型コンピュータなど）でもよく、又はコンピュータ機器２０１（例えば、デスクトップ型コンピュータモニタ、テレビジョン表示器ビデオゲーム機など）に通信可能に結合され得る。１つ以上の表示器２１９は、１つ以上の表示器２１９が、それぞれ視聴者の右眼及び左眼によって知覚されることを意図した第１及び第２の画像を通信することができるという点で、立体画像を表示するように構成され得る。幾つかのそのような例では、ユーザは、第１の画像を視聴者の右眼によって独立して見せ、第２の画像を視聴者の左眼によって独立して見せる専用の眼鏡をかけることができる。表示制御モジュール２１８は、それぞれの右及び左の画像を表示させるために、表示器２１９と通信するように構成され得る。例えば、表示制御モジュール２１８は、例えば異なる色の光、周波数、又は強度など、光を表示要素に放射させて、それぞれの右及び左の画像を視聴者に対して表示させるために、表示器２１９の１つ以上の表示要素（例えば、液晶、発光ダイオード、プラズマ表示要素）を制御する信号を通信するように構成され得る。
【００２７】
図２Ａは、本開示の技法に一致する、画像処理モジュール２１４、画像処理モジュール２１４Ａの一例を示すブロック図である。図２の例によれば、画像処理モジュール２１４Ａは、例えば、シーン変化検出モジュール２３０、オプティカルフロー決定モジュール２３２、グローバル動き決定モジュール２３４、グローバル動き推定モジュール２３６、グローバル動き調整モジュール２３８、及びマスク／深度マップ作成モジュール２４０など、様々なサブモジュールを含む。図２に示される画像処理モジュール２１４と同様に、様々なサブモジュール２３０、２３２、２３４、２３６、２３８、及び２４０は、例えばプロセッサなどのハードウェア上で実行可能なソフトウェア、及び／又は本明細書で説明する技法のいずれかを実行するように構成された任意の他の専用のハードウェアの任意の組合せを備え得る。
【００２８】
シーン変化検出モジュール２３０は、１つ以上のフレームがシーン変化、即ち、実質的にフレーム間の差を表すかどうかを決定するために、ビデオプレゼンテーションの１つ以上のフレームを解析するように構成され得る。シーン変化検出モジュール２３０によって使用され得る技法の例について、図３のステップ３０２に関して以下で説明する。
【００２９】
オプティカルフロー決定モジュール２３２は、例えば、ビデオフレームの少なくとも１つの画素についてのオプティカルフローなど、被写体深度の最初の表示を決定するように構成され得る。例えば、オプティカルフロー決定モジュール２３２は、例えば、図５に関して以下でさらに詳細に説明するように、１つ以上のフレームの少なくとも１つの画素についてのオプティカルフローを決定するために、ビデオプレゼンテーションの１つ以上のフレームを解析することができる。
【００３０】
グローバル動き決定モジュール２３４は、１つ以上のフレームがグローバルな動きを含むかどうかを決定するために、ビデオプレゼンテーションの１つ以上のフレームを解析するように構成され得る。グローバルな動きは、撮影の間のカメラの動きとして説明され得る。グローバルな動きの例には、カメラの左右のパニング、上下のティルト、ズームイン及びズームアウト、並びに類似の運動がある。一例によれば、グローバル動き決定モジュール２３４は、オプティカルフロー決定モジュール２３２から被写体深度（例えば、少なくとも１つのオプティカルフローベクトル）の最初の表示を受信するように構成され得る。この例によれば、グローバル動き決定モジュール２３４は、グローバルな動きが１つ以上のフレームの中に存在するかどうかを決定するために、被写体深度の受信された最初の表示を解析することができる。従って、画像処理モジュール２１４Ａは、グローバル動き決定モジュール２３４が１つ以上のフレームについてグローバルな動きが存在しないことを決定した場合、グローバル動き推定及び／又は調整技法をスキップすることができる。一例では、グローバル動き決定モジュール２３４は、以下の図３のステップ３０５に関して以下で説明するように、ビデオプレゼンテーションの１つ以上のフレームがグローバルな動きを含むかどうかを決定することができる。
【００３１】
グローバル動き推定モジュール２３６は、（例えば、グローバルな動きがグローバル動き決定モジュール２３４によって存在することが決定された場合）ビデオプレゼンテーションの少なくとも１つのフレームについてのグローバルな動きを推定するように構成され得る。例えば、グローバル動き推定モジュール２３６は、オプティカルフロー決定モジュール２３２からビデオフレームの少なくとも１つの画素についてのオプティカルフローベクトルの表示を受信することができる。グローバル動き推定モジュール２３６は、例えば、図３に示されるステップ３０６に関して以下で説明するように、パラメータモデルのグローバル動きパラメータなど、グローバルな動きの少なくとも１つの表示を決定するために、１つ以上の受信されたオプティカルフローベクトルを解析することができる。
【００３２】
グローバル動き調整モジュール２３８は、グローバルな動きを考慮に入れるために、被写体深度の最初の表示を変更するように構成され得る。例えば、グローバル動き調整モジュール２３８は、オプティカルフロー決定モジュール２３２から１つ以上のオプティカルフローベクトルを受信することができる。グローバル動き調整モジュール２３８は、グローバル動き推定モジュール２３６から１つ以上のグローバル動きパラメータをさらに受信することができる。一例によれば、グローバル動き調整モジュール２３８は、ビデオプレゼンテーションの少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するために、受信されたグローバル動きパラメータを１つ以上のオプティカルベクトルに適用することができる。グローバル動き調整オプティカルフローを作成するためにグローバル動き調整モジュール２３８によって使用され得る技法の一例について、図３のステップ３０７に関して以下で説明する。
【００３３】
マスク／深度マップ作成モジュール２４０は、グローバル動き調整モジュール２３８から少なくとも１つの画素についてのグローバル動き調整オプティカルフローを受信し、グローバル動き調整オプティカルフローに基づいて少なくとも１つのフレームについての深度マップを決定するように構成され得る。例えば、マスク／深度マップ作成モジュール２４０は、（例えば、図３のステップ３０８に関して以下で説明するように）画像画素を背景及び／又は前景として分類し、（例えば、図３のステップ３０９に関して説明するように）分類に基づいて最初の前景／背景マスクを作成し、（例えば、図３のステップ３１０に関して説明するように）最初のマスクを精緻化し、及び／又は（例えば、図３のステップ３１１に関して説明するように）最初のマスクを後処理することができる。本明細書で説明する様々な例によれば、マスク／深度推定モジュール２４０は、（例えば、図３のステップ３１２に関して以下で説明するように）ビデオプレゼンテーションの少なくとも１つのフレームについての深度マップをさらに生成することができる。
【００３４】
一般に画像処理モジュール２１４によって実行されるものとして、様々な技法について説明する。本明細書で説明する様々な技法が、さらに又は代わりに、例えば、図２Ａに関して上記で説明した画像処理モジュール２１４Ａのサブモジュール２３０、２３２、２３４、２３６、２３８、及び２４０など、画像処理モジュール２１４の特定のサブモジュールによって実行され得ることを、当業者であれば諒解されよう。
【００３５】
２Ｄビデオプレゼンテーションの深度は、画像のぶれ、被写体の運動、及び／又はオプティカルフロー（例えば、被写体の輝度の動きによる変色など）に基づいて決定され得る。しかしながら、これらの技法には、幾つかの欠点があり得る。例えば、そのような技法は、全てのビデオプレゼンテーション又はビデオプレゼンテーションの部分について当てはまるというわけではない１つ以上の仮定に基づき得る。
【００３６】
立体視表示器技術の開発によって、立体視又は３次元（３Ｄ）のビデオは、ますます人気がある。これらの技術により、例えば映画、テレビ番組、ビデオゲーム、及び他のコンテンツなど、３Ｄコンテンツについての需要は著しく増加した。
【００３７】
例えば、多くの３Ｄ表示技法は、両眼視を使用し、この場合、視聴者の左右の眼によって異なって知覚されるわずかに異なる画像が提供される。この知覚された差のため、ユーザにとっての深度の知覚が作成される。しかしながら、大部分の既存のビデオコンテンツは、２Ｄでの表示用に構成されているだけである。例えば、大部分の既存のビデオコンテンツは、１次ビューしか含んでおらず、３Ｄビデオレンダリングを可能にすることができるどんな２次ビューも含んでいない。さらに、多くの既存のビデオカメラは、モノスコープビデオを撮影できるだけであり（例えば、同じ視点から画像を撮影するための、シングルカメラ又はマルチカメラのみを含む）、従って、画像を直接３Ｄで撮影するように構成されていない。
【００３８】
２Ｄビデオプレゼンテーションを３Ｄビデオ変換に変換することは、既知の元の２Ｄビューから１つ以上の代替ビューを生成することを含み得る。そのような変換技法の一態様は、撮影されたビデオの被写体の相対的な深度の推定を含むことができ、その結果、ビデオは、視聴者が深度を知覚するように再生され得る。幾つかの例では、画像被写体の深度は、１つ以上の代替ビューを生成する前に推定され得る。
【００３９】
深度の推定は、１つ以上のモノスコープ（例えば、２Ｄ）ビューから、深度と呼ばれる、被写体とカメラ平面との間の絶対的又は相対的な距離の推定を含むことができる。幾つかの例では、深度情報は、グレーレベル画像の深度マップによって表される。例えば、画像の画素は、それらの絶対的又は相対的な深度に応じて、値が割り当てられ得る。１つの特定の例では、「０」の深度値は、被写体とカメラとの間の最大距離を示し、一方、「２５５」の深度値は、最小距離を示す。
【００４０】
２Ｄ画像の推定された深度マップは、３Ｄビデオの提示のための深度を決定するために使用され得る。例えば、推定された深度マップは、深度画像ベースレンダリング（ＤＩＢＲ）技法を使用して、ビデオの１つ以上の代替ビューの角度を生成するために使用され得る。例えば、推定された深度マップは、表示されるとき、３Ｄ画像に深度を持たせる３Ｄビデオプレゼンテーションのそれぞれの右画像と左画像との間の差を決定するために使用され得る。
【００４１】
２Ｄビデオの幾つかの態様は、２Ｄ画像の被写体の深度を推定するために使用され得る。例えば、２Ｄビデオのソースに依存して、透視幾何（perspective geometry）、又は時間的もしくは２Ｄ空間的キュー、例えば被写体の動き及び色などが使用され得る。ビデオが２つ以上の事前撮影されたビュー（例えば、複数のカメラを使用して立体的に撮影された）をすでに含む場合、深度マップは、ビューを撮影した１つ以上のカメラの固有の及び／又は外部のパラメータに基づいて、エピポーラジオメトリによって取得することができる。そのような技法は、ステレオビューにおける同じ被写体の対応を識別することによって、視差情報（被写体深度に対して反比例）を推定することができる。そのような技法は、例えばグラフカット及び確率伝搬など、ローカルマッチング及びグローバル最適化方法を含むこともできる。
【００４２】
一般に、ビデオフレームは、１つ以上の前景の被写体と、背景及び／又は背景被写体との合成として考えることができる。カメラの焦点の観点から、焦点がぼけたエリア（例えば、背景画像）の色強度が、焦点が当てられたエリア（例えば、前景画像）と比較して、よりぼけていると仮定することができる。一例によれば、撮影された画像の深度は、画像画素のぶれのレベルに基づいて決定され得る。
【００４３】
画像画素の相対的なぶれは、勾配ベースの測定又は周波数領域の解析に基づいてもよい。例えば、幾つかのビデオ又はビデオフレームについて、勾配値がより大きい画像はあまり不鮮明ではなく、勾配値がより小さい画像はより不鮮明であると仮定され得る。しかし、他のビデオ又はフレームでは、これらの仮定は、正確ではない場合がある。例えば、カメラパースペクティブは、カメラに近い被写体の代わりに遠くの画像被写体に焦点を当てることができる。さらに、前景の同質のエリアは、それほど多くの高周波成分を含まないので、上記で説明した画像ぶれ解析は、前景のテクスチャレス領域に適用可能ではない場合がある。従って、必ずしも下位レベルのぶれがより小さい深度（例えば、カメラまでの距離）を示すとは限らないので、ぶれに従って画像深度を推定することは、正確ではない場合がある。
【００４４】
深度の推定のための他の技法は、モノスコープ２Ｄビデオにおける動きの解析を伴う。これらの技法は、遠い被写体と比較して、（カメラの視点に関して）より近い被写体が大きく見え、より多くの動きを有すると予想されるという仮定に依存し得る。
【００４５】
動き推定は、隣接するビデオフレームの間の被写体の運動を推定することを含むことができる。動き推定は、１つ以上の動きベクトルを決定することを含むことができる。動きベクトルは、ビデオプレゼンテーションの連続フレーム間の被写体の水平及び／又は垂直の並進変位を示すベクトルとして説明される。例えば、静的背景を含む、あるビデオシーン設定のために、動きは、被写体の動きを静的背景から減算することによって取得され得る。静的背景の必要性のため、動き推定は、幾つかのビデオ及び／又はビデオのフレームについては望ましくない可能性がある。動きを推定するための別の技法は、フレームを静的背景と比較する代わりに、隣接するフレーム間の差を決定することである。この技法によれば、動きは、連続フレームの画素の色強度の画素ベース及び／又はウィンドウベースの減算に基づいて識別され得る。
【００４６】
動きが深度の識別として使用される技法によれば、動きの大きさは、深度値を１つ以上のフレーム画素に割り当てるために使用され得る。例えば、動きの大きさがより大きい画素は、より大きい深度値が割り当てられ得る。しかしながら、深度を推定するためのぶれの使用と同様に、深度の表示としての動きの使用も、少なくとも幾つかのビデオについて当てはまらない仮定に基づき得る。例えば、カメラからの距離が実質的に同じ被写体は、独立して、しかし、異なる速度で移動することができる。これらの例によれば、より高速な移動物体がより遅い被写体と同じ距離離れている可能性があるので、動きは、必ずしも画像深度の適切なインジケータとは限らない場合がある。別の例では、画像が短い時間間隔にわたって動きがなく静的なままである場合、深度を推定するために、動きを使用しなくてもよい。
【００４７】
動き推定のために使用され得る別の技法は、ブロックベースのマッチングである。ブロックベースのマッチングが、ビデオ圧縮において使用され得る。これらの技法によれば、ビデオの１つ以上のフレームがブロックに分割される。現在フレームの各ブロックは、同じサイズの１ブロックと比較され得るが、基準フレームで位置がずれ得る。最小マッチングコスト、例えば、マッチングエラーの絶対値の和に関連付けられた決定された位置ずれは、そのブロックにおける全ての画素について、推定された動き値として識別され得る。
【００４８】
深度を推定するための別の技法は、画像セグメンテーションである。一般に、同じ又は同様の色を有する画素は、同じ被写体に属し、急な強度変化は、被写体境界を示す。深度フィールドは、区分的に滑らかであり、深度の不連続性は、画像強度の不連続性によって反映されるものと仮定され得る。これらの技法によれば、ビデオフレームは、幾つかの領域又はセグメントにセグメント化される。次いで、これらのセグメントは、異なる深度値が割り当てられる。画像セグメントの深度推定は、画素ベースの推定と比較してより整合的な深度マップを達成するが、計算複雑さは増加し得る。さらに、テクスチャ様のエリアを含む幾つかのシーンは、セグメント化が難しい可能性がある。例えば、同じ被写体の輝度変化など、セグメントが色分散を被った場合、画像セグメンテーションも不適切であり得る。また、幾つかの場合には、幾つかの異なるセグメントは、ある被写体のために決定され得、及び／又は、ある被写体の画素は、別の被写体の画素を有する同じセグメントに分類され得る。従って、場合によっては、深度推定のために使用されるとき、セグメンテーションの結果は、十分に正確ではない場合がある。
【００４９】
色強度値に従って画像を幾つかの均一の領域に区分する代わりに、それらを深度推定において直接使用することもできる。例えば、クロミナンスＣｒ成分など、幾つかの色情報が、自然のビデオシーンについての深度初期化として使用され得る。幾つかの色空間におけるそれらの成分からの深度推定の１つの利点は、簡潔さである。クロミナンス成分は、同じ被写体に属する画素について滑らかであり得る。セグメンテーションベースの深度推定と比較して、それらの色成分から直接生成された深度マップは、被写体形状をより良く保ち、従って、より良い空間的整合性を与え得る。推定された深度値は真の深度に正確とはほど遠いが、そのような技法に従って作成される合成されたステレオペアは、ある程度まで３Ｄ効果を提供することができる。
【００５０】
オプティカルフロー技法は、例えばカメラなどの観測者と観察されている被写体との間の相対的な動きによって生じた視覚的平面における被写体の輝度パターンの仮現運動を識別することができる。例えば、ビデオフレームのオプティカルフローは、各ポイントにその運動を説明する速度ベクトルが割り当てられる動きフィールドと考えることができる。オプティカルフロー技法は、輝度の恒常性方程式（brightness constancy equation）を介して画素勾配ベースの強度変化に被写体速度を関連付けることを含むことができる。グローバル又はローカルの最適化技法は、１つ以上のフレーム画素についてのオプティカルフロー動きベクトルを計算するために使用され得る。
【００５１】
ぶれ、動き、及び上記の他の技法とは異なり、色強度（例えば、オプティカルフロー）から測定されるビデオフレーム平滑性は、空間と時間の両方において、比較的一貫した深度マップを生成するために使用され得る。深度マップを正確に推定することは、例えば生成された代替の仮想ビューにおけるちらつき及び局部変形など、３Ｄビデオの表現におけるアーチファクトを低減することにとって重要であり得る。
【００５２】
図３は、ビデオプレゼンテーションのグローバル動きに少なくとも部分的に基づいてビデオプレゼンテーションの２Ｄ（例えば、モノスコープなど）ビューの画像深度を推定する方法の一例を示すフローチャートである。図３の方法を含む本明細書で説明する様々な例は、コンピュータ機器２０１、又は図２に示されるコンピュータ機器２０１の構成要素（例えば、画像処理モジュール２１４）によって実行されるものとして述べられている。他の例では、本明細書で具体的に説明しているか否かにかかわらず、本明細書で説明する技法は、任意のコンピュータ機器又はモジュールによって実行され得る。
【００５３】
図３に示すように、画像処理モジュール２１４は、ビデオプレゼンテーションの２Ｄビューを取得する（３０１）ことができる。２Ｄビューは、ビデオプレゼンテーションのプレゼンテーション順序（例えば、１つ以上の表示器を介した、ユーザに対するプレゼンテーション）で、少なくとも２つの連続フレームを含む。図３に示される技法は、キャプチャされたビデオプレゼンテーションの現在（ｆN）及び次（ｆN＋１）のフレームに適用されるものとして説明される。幾つかの例では、図３に示される技法は、ビデオプレゼンテーションの複数のフレームに、複数回適用され得る。
【００５４】
画像処理モジュール２１４（例えば、図２Ａに示されるシーン変化検出サブモジュール２３０）は、シーン変化がフレームｆNとｆN＋１との間に存在するかどうかをさらに決定することができる（３０２）。例えば、画像処理モジュール２１４は、フレームｆNがビデオプレゼンテーションのフレームｆN＋１とは実質的に異なるシーンを表すシーン変化を決定することができる。フレームｆN及びｆN＋１が異なる撮影されたシーンを表す場合、オプティカルフロー及び／又は決定されたグローバルな動きに基づく深度の推定は意味がない場合があるので、シーン変化が発生したかどうかを決定することが望ましい可能性がある。さらに、シーン変化を検出することは、ビデオフレーム解析の時間的（例えば時間の）整合性を向上させることができる。例えば、２つの時間的に隣接するフレームの間にシーン変化が生じる場合、現在フレームの深度マップが前のものと時間的に相関していない場合がある。従って、幾つかの連続フレームの深度を平均するなどの操作を回避することが望ましい場合がある。
【００５５】
従って、ビデオプレゼンテーションのフレームｆNとｆN＋１との間でシーン変化が決定される場合、画像処理モジュール２１４は、フレームｆNについての深度推定をスキップすることができる。フレームｆNについての深度を推定する代わりに、画像処理モジュール２１４は、現在フレームｆNについてのビデオプレゼンテーションの１つ以上の前のフレーム（例えば、フレームｆN−１）のために前に決定された深度推定を使用することができる（３０３）。
【００５６】
図４は、ビデオプレゼンテーションの１つ以上のフレームがシーン変化を含むかどうかを決定する（例えば、図３に示されるように、ステップ３０２）ための技法の一例を示すフローチャート図である。図４に示される方法によれば、画像処理モジュール２１４（例えば、図２Ａに示されるシーン変化検出サブモジュール２３０）は、強度ヒストグラムに基づいて変えられたシーンが生じたかどうかを検出することができる。この方法によれば、現在フレームｆNのために、画素色の相対的な強度のヒストグラムが決定され得る（４０１）。画素色の相対的な強度のヒストグラムは、次のフレームｆN＋１のためにも決定され得る（４０２）。
【数１】
2013545200.tif 000043
【００５７】
これらの例によれば、ｍ番目のビンについてのヒストグラム値は、ｍ番目のビンに属する強度値を有する幾つかの画素であり得る。一例では、ｍの値は、ｍ＝０，１，…Ｍ−１とすることができる。
【００５８】
これらの式によれば、Ｍは、それぞれのヒストグラムの幾つかのビンを表し得る。そのような一例によれば、画素色強度が０〜２５５におよぶ８ビット色表現では、Ｍの値は、２５６であり得る。他の例では、ヒストグラム値ＨN，ＨN+1の次元を低減するために、Ｍについてのより小さい値が使用され得る。
【００５９】
画像処理モジュール２１４は、ステップ３０１及び３０２で決定されるそれぞれのヒストグラムの間の相関係数λをさらに決定することができる（４０３）。一例によれば、相関係数λは、以下の式に基づいて決定され得る。
【数２】
2013545200.tif 000044
【００６０】
同じく図４に示されるように、画像処理モジュール２１４は、ステップ４０３で決定された相関係数λが閾値Ｔ1よりも大きいかどうかをさらに決定することができる（４０４）。閾値Ｔ1は、ビデオプレゼンテーションのシーン変化の経験的解析に基づく所定の値とすることができるが、他の方法で適応的に決定又は定義することもできる。相関係数λの値が閾値Ｔ1未満である場合、画像処理モジュール２１４は、新しいシーンがフレームｆNとフレームｆN＋１との間で検出されたことを決定することができる（４０５）。しかしながら、相関係数λの値が閾値Ｔ1（例えばλ＞＝Ｔ1）以上である場合、画像処理モジュール２１４は、新しいシーンがフレームｆNとフレームｆN＋１との間で検出されていないことを決定することができる（４０６）。
【００６１】
図４に示される技法によれば、ｆN及びフレームｆN＋１が同じシーン（例えば、シーン変化なし）に属する場合、ステップ４０１、４０２で決定されたそれぞれのヒストグラムＨN、ＨN+1が実質的に同様であってもよく、例えば、ＨN、ＨN+1は高く相関する。一例では、シーン変化がフレームｆNとｆN＋１との間に存在しない場合、ステップ４０３で決定された相関係数λは１の値に等しくてもよく、又は１の値に近くてもよい。そうでない場合、相関係数λは、例えば、実質的に１の値未満など、より小さい値を有し得る。
【００６２】
再び図３を参照すると、画像処理モジュール２１４は、フレームｆNとｆN＋１との間のシーン変化を決定しない場合（３０２）、画像処理モジュール２１４（例えば、図２Ａに示されるオプティカルフロー決定サブモジュール２３２）は、例えば、フレームｆN及びｆN＋１の少なくとも１つの画素についてのオプティカルフローなど、フレームｆN及びｆN＋１についての深度の最初の表示を決定することができる（３０４）。オプティカルフローは、観察者（例えば、カメラ）と観察されている１つ以上の被写体（例えば、観察者によって撮影される）との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動として説明され得る。少なくとも１つの画素についてのオプティカルフローを決定するために、画像処理モジュール２１４は、明るさの恒常性方程式を介して被写体速度を画素勾配ベースの強度変化と関連付けることができる。一例によれば、画像処理モジュール２１４は、フレームの１つ以上の画素についての速度ベクトルＶx,yを決定することができる。図３に示されていない他の例では、画像処理モジュール２１４は、オプティカルフロー以外の技法に基づいて、最初の表示を決定することができる。例えば、画像処理モジュール２１４は、ぶれ、動き、ブロックベースのマッチング、及び／又は上記で説明したようなセグメンテーション技法に基づいて、深度の最初の表示を決定することができる。
【００６３】
一例によれば、画像処理モジュール２１４は、ビデオプレゼンテーションの少なくとも１つのボクセルについてのオプティカルフローを決定することができる。ボクセルは、ｘ、ｙ、ｚの実世界の座標における被写体の容積点と考えられ得る。ボクセルは、時刻ｔにカメラ平面（撮像の平面）の位置（例えば、ｘ、ｙ位置）に投影され得る。ボクセルの強度は、値Ｉ（ｘ，ｙ，ｔ）によって表され得る。強度Ｉ（ｘ，ｙ，ｔ）は、ボクセルから投影される観察者（例えば、カメラ）の平面に現れるボクセルの強度を表すことができる。値ｘは、カメラ平面（画像キャプチャの平面）の水平指標を表し、一方、値ｙはカメラ平面の垂直指標を表す。小さい時間間隔δｔの後、時刻ｔ＋δｔで、ボクセルは、新しい位置（例えば、ｘ、ｙ位置）（ｘ＋δｘ、ｙ＋δｙ、ｔ＋δｔ）に投影され得る。時間間隔δｔが比較的短い場合、強度値Ｉ（ｘ，ｙ，ｔ）は変化していないと見なすことができ、例えば以下の式によって表される。
【数３】
2013545200.tif 000045
【００６４】
一例によれば、画像処理モジュール２１４は、短期間以内の小さい運動についてのテイラー級数を決定することができる。例えば、画像処理モジュール２１４は、以下の式に従ってテイラー級数を決定することができる。
【数４】
2013545200.tif 000046
【数５】
2013545200.tif 000047
【００６５】
及び
【数６】
2013545200.tif 000048
【００６６】
上記の式によれば、あるボクセル（画素）についての速度ベクトル（即ち、オプティカルフロー動きベクトル）は、以下と表され得、
【数７】
2013545200.tif 000049
【００６７】
明るさの恒常性方程式は、以下と表され得る。
【数８】
2013545200.tif 000050
【００６８】
所与の画素位置（例えば、ｘ、ｙ位置）について、画像処理モジュール２１４は、式（６）の値Ｉx、Ｉy、及びＩtを決定することができる。値Ｉx、Ｉy、及びＩtはそれぞれ、空間的水平、垂直及び時間的方向に沿った導関数として説明され得る。画像処理モジュール２１４は、連続フレーム間の差に基づいて値Ｉtを決定することができる。画像処理モジュール２１４は、水平方向に沿って離散的微分フィルタ（演算子）を元のフレームに適用することに基づいて、値Ｉxを決定することができる。画像処理モジュール２１４は、垂直方向に沿って離散的微分フィルタ（演算子）を元のフレームに適用することに基づいて、値Ｉyを決定することができる。Ｉx、Ｉy、及びＩtについてひとたび値が決定されると、Ｉx、Ｉy、及びＩtは、ｖx及びｖyの値を決定するために使用され得る。
【００６９】
従って、ｖx、ｖyの値を決定するために、関連した分野において知られている様々な技法が使用されてもよい。例えば、画像処理モジュール２１４は、例えばＬｕｃａｓ−Ｃａｎａｄｅ（ＬＫ）オプティカルフロー方法及びＨｏｒｎ  Ｓｃｈｕｎｃｋ（ＨＳ）方法などの制約に基づいて、値ｖx、ｖyを決定することができる。画像処理モジュール２１４は、値ｖx，ｖyを決定するために、他の技法を使用することもできる。
【００７０】
画像処理モジュール２１４（例えば、図２Ａに示されるオプティカルフロー決定サブモジュール２３２）は、１つ以上の画像画素についてのオプティカルフローを決定し、１つ以上の画像画素に割り当てられるオプティカルフローベクトルＶx，yを生成するために、上記で説明した計算を使用することができる。画像処理モジュール２１４は、ビデオフレームの画素及び／又は被写体についての深度を推定するために、オプティカルフローベクトルを使用することができる。例えば、画像処理モジュール２１４は、オプティカルフローの大きさがより大きい画素により大きい深度値を割り当て、オプティカルフロー値がより小さい画素により小さい深度値を割り当てることができる。特定の一例では、８ビットグレーレベルスケールを使用して画素深度を表す場合、画像処理モジュール２１４は、ソース（例えばカメラ）から遠い画素に０の深度値を割り当て、ソースに近い画素に２５５の深度を割り当てることができる。
【００７１】
再び図３を参照すると、ひとたび深度の最初の表示がフレームｆN及びｆN＋１について決定されると（例えばステップ３０４で）、画像処理モジュール２１４は、フレームｆNについてのグローバルな動きが存在するか否かを決定することができる（３０５）。図５は、フレームｆNがグローバルな動きを含むか否かを決定するための１つの例示的な技法を示すフロー図である。図５の方法によれば、画像処理モジュール２１４は、フレームｆN及びｆN＋１を複数のブロックに分割することができる（５０１）。１つのそのような例では、画像処理モジュール２１４は、フレームｆN及びｆN＋１をＬ×Ｌブロックに分割することができる。これらの分割されたブロックは、値ｋ1及びｋ2によってインデックスを付けることができ、ｋ1は、水平ブロックインデックスを表し、ｋ2は垂直ブロックインデックスを表す。
【数９】
2013545200.tif 000051
【００７２】
画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き決定サブモジュール２３４）は、それぞれのブロックｋ1、ｋ2についてのグローバルな動きが存在するかどうかをさらに決定することができる（５０３）。一例によれば、画像処理モジュール２１４は、それぞれのブロックごとに、以下の式で示すように、平均フロー大きさを所定の閾値Ｔ2と比較することができる。
【数１０】
2013545200.tif 000052
【００７３】
式中、Ｖx,yは、図４に関して上記で説明したように画素位置（ｘ，ｙ）のオプティカルフローベクトルである。｜Ｘ｜は、ベクトルＸのＬ2ノルムを表すことができる。
【００７４】
所定の閾値Ｔ2は、グローバルな動きを含むか否かが既知であり得るビデオプレゼンテーションフレームの経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。ブロックの平均フロー大きさが所定の閾値Ｔ2以上である場合、画像処理モジュール２１４は、それぞれのブロックについて、グローバルな動きが存在することを決定することができる。従って、画像処理モジュール２１４は、それぞれのブロックｋ1、ｋ2についてのグローバル動きフラグ（例えば、Ｂｋ1、ｋ2）に１の値を割り当てることができる（５０４）。ブロックの平均フロー大きさが所定の閾値Ｔ2未満である場合、画像処理モジュール２１４は、ブロックについて、グローバルな動きが存在しないことを決定することができる。従って、それぞれのブロックｋ1、ｋ2についてのグローバル動きフラグ（例えば、Ｂｋ1、ｋ2）に０の値を割り当てることができる（５０５）。
【００７５】
同じく図５に示されるように、画像処理モジュール２１４は、フレームｆN、ｆN＋１についてのグローバルな動きが存在するかどうかを決定することができる（５０６）。画像処理モジュール２１４は、フレームｆN、ｆN＋１のそれぞれのブロックｋ1、ｋ2についてのそれぞれのグローバル動きフラグ（例えば、Ｂk1、k2）を合計することによって、フレームｆN、ｆN＋１についてのグローバルな動きが存在するかどうかを決定することができる。画像処理モジュール２１４は、それぞれのグローバル動きフラグの合計の結果を閾値Ｔ3とさらに比較することができる。所定の閾値Ｔ3は、グローバルな動きを含むか否かが既知であり得るビデオプレゼンテーションフレームの経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。それぞれのグローバル動きフラグの合計が閾値Ｔ3よりも大きい場合、画像処理モジュール２１４は、フレームｆN、ｆN＋１についてのグローバルな動きが存在することを決定することができる（５０７）。しかしながら、それぞれのグローバル動きフラグの合計が閾値Ｔ3未満である場合、画像処理モジュール２１４は、フレームｆN、ｆN＋１についてのグローバルな動きが存在しないことを決定することができる（５０８）。
【００７６】
再び図３を参照すると、フレームｆN、ｆN＋１についてのグローバルな動きが存在しないと決定された場合、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、以下でさらに詳細に説明するように、フレームｆNの１つ以上の画素及び／又は被写体を前景又は背景被写体として分類することに進むことができる（３０８）。しかしながら、フレームｆN、ｆN＋１についてのグローバルな動きが存在することが決定された場合、画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き推定サブモジュール２３６）は、フレームｆN、ｆN＋１の少なくとも１つの画素についてのグローバルな動きを推定することができる（３０６）。幾つかの例では、画像処理モジュール２１４は、１つ以上のグローバル動きパラメータを決定することによって、グローバルな動きを推定することができる。
【００７７】
図３に同じく示すように、画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き調整サブモジュール２３８）は、（例えば、ステップ３０６で決定される）推定されたグローバル動きに基づいて、画像深度（例えば、ステップ３０４で決定されるオプティカルフロー）の最初の表示を調整することができる（３０７）。一例では、画像処理モジュール２１４は、決定されたグローバル動きパラメータを画像深度の最初の表示に適用することによって、画像深度の最初の表示を調整することができる。一例によれば、図５に関して上記で説明したように、画像深度の最初の表示がオプティカルフローに基づいて決定される場合、画像処理モジュール２１４は、フレームｆNの少なくとも１つの画素の速度ベクトル（オプティカルフロー動きベクトル）を調整して、推定されたグローバルな動きを補償することができる。例えば、画像処理モジュール２１４は、グローバル動き調整速度ベクトルを作成するために、１つ以上の決定されたグローバル動きパラメータをフレームｆNの少なくとも１つの画素の速度ベクトルに適用することができる。
【００７８】
一例によれば、少なくとも１つの画素についてのグローバル動きの推定は、カメラ運動のモデルに基づいて決定され得る。後述するカメラ運動モデルの例は、８パラメータパースペクティブモデル(8-parameter perspective model)であるが、本明細書で説明するカメラ運動モデルは、本開示の範囲を超えることなく、任意の数のパラメータを含むことができる。本開示の他の例に従って、例えば、２パラメータ平行移動モデル又は６パラメータアフィンモデル(6-parameter affine models)を使用することもできる。
【００７９】
８パラメータパースペクティブモデルによれば、フレームｆNの元のポイント位置（ｘ，ｙ）とフレームｆN＋１の対応するポイント位置（ｘ’，ｙ’）との間の関係は、以下の式によって表すことができる。
【数１１】
2013545200.tif 000053
【００８０】
この場合、変数ａ、ｂ、ｃ、ｄ、ｅ、ｆ、ｐ、及びｑは、パースペクティブモデルの８つのパラメータである。従って、画像処理モジュール２１４は、フレームｆN、ｆN＋１についての少なくとも１つのオプティカルフローベクトルの解析に従って、それぞれのパラメータについての値を決定することができる。これらの式は非線形の変換関数を表し得るが、幾つかの例では、これらの式は、１次方程式の形に変えることができる。これらの式は、解く計算が少なくてすむので、１次形式に改正することは有利であり得る。
【数１２】
2013545200.tif 000054
【数１３】
2013545200.tif 000055
【数１４】
2013545200.tif 000056
【００８１】
例えば、ポイント［ｘ，ｙ］T及び［ｘ’，ｙ’］Tは、異なる時刻にではあるが、同じ実世界のボクセルから投影される２つの画像フレームの２つの対応するポイントであると仮定する。上記で説明した同質の表現によれば、フレームｆNについての８パラメータパースペクティブモデルによる非線形マッピングは、以下の式によって表すことができる。
【数１５】
2013545200.tif 000057
【００８２】
これらの式は、以下の線形行列演算によって、さらに表すことができる。
【数１６】
2013545200.tif 000058
【００８３】
である。
【数１７】
2013545200.tif 000059
【数１８】
2013545200.tif 000060
【数１９】
2013545200.tif 000061
【数２０】
2013545200.tif 000062
【数２１】
2013545200.tif 000063
【００８４】
上記の８パラメータパースペクティブモデルのパラメータを推定するために、画像処理モジュール２１４は、上記の式（１２）の形で、１つ以上の画素を定式化することができる。しかしながら、幾つかの画素は、式（１２）のパラメータの正確さに影響を与え得る。例えば、均一強度エリアに属する画素は、式（１２）に従って動きを正しく推定していない可能性がある。従って、幾つかの例によれば、画像処理モジュールは、グローバル動きパラメータが決定される幾つかの画素を低減するために、フレームｆN、ｆN＋１の候補画素を選択することができる。
【００８５】
図６は、本開示の技法に一致する、候補画素の画像処理モジュール２１４の選択の一例を示すフローチャート図である。この例によれば、画像処理モジュール２１４は、フレームｆNの１つ以上のエッジ画素を決定するために、エッジ検出を実行することができる（６０１）。例えば、フレームｆNの被写体が人の顔である場合、人の顔のエッジが検出され得る。本明細書で説明するエッジ検出は、当技術分野で知られている様々な技法に従って実行することができる。そのような技法については、本明細書では明示的に説明していない。
【００８６】
画像処理モジュール２１４は、フレームｆN、ｆN＋１の少なくとも１つの画素についてのオプティカルフローベクトルＶ＝［ｖx，ｖy］Tの１次勾配値Δｖをさらに決定することができる（６０２）。一例によれば、画像処理モジュール２１４は、フレームｆN、ｆN＋１の全ての画素について、１次勾配値Δｖを決定することができる。他の例では、画像処理モジュール２１４は、例えばステップ６０１で端部画素として識別された画素など、フレームｆN、ｆN＋１の画素のサブセットについて、１次勾配値Δｖを決定することができる。
【００８７】
図６に示すように、画像処理モジュール２１４は、決定された１次勾配値の絶対値|Δv|が所定の閾値Ｔ4よりも大きいかどうかを、識別された端部画素ごとに、さらに決定することができる（６０３）。所定の閾値Ｔ4は、特徴点として望ましいことが既知であり得る画素の経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。決定された１次勾配値の絶対値|Δv|が所定の閾値Ｔ4以下である場合、画像処理モジュールは、グローバルな動きを決定するための特徴点として画素を選択することができる（６０４）。しかしながら、決定された１次勾配値の絶対値|Δv|が所定の閾値Ｔ4よりも大きい場合、画像処理モジュール２１４は、フレームｆN、ｆN＋１について、グローバルな動きを推定するための特徴点として画素を選択することはできない（６０５）。図６に示すように、画像処理モジュール２１４は、例えば、フレームｆNについてのグローバルな動きを決定するためなど、フレームｆNについての深度を決定するために、選択された特徴点画素を使用することができる（６０６）。例えば、画像処理モジュール２１４は、上記で説明したようにカメラの運動のモデル（例えば、パースペクティブモデル）に従って１つ以上のグローバル動きパラメータを決定するために、選択された特徴点画素を使用することができる。
【００８８】
再び図３を参照すると、上記で説明したように、画像処理モジュール２１４（例えば、図２Ａに示されるグローバル動き調整サブモジュール２３８）は、グローバルな動きを補償するように、画像深度の最初の表示をさらに調整することができる（３０７）。一例によれば、画像処理モジュールは、グローバルな動きを補償するために、フレームｆN、ｆN＋１について、深度（例えば、ステップ３０４のオプティカルフロー）の最初の表示に決定されたグローバル動きパラメータを適用することによって、画像深度の最初の表示を調整することができる。従って、グローバル動き調整オプティカルフローを作成することができる。一例によれば、フレームｆN＋１の画素位置（ｘ，ｙ）ごとに、対応するグローバル動き調整位置（ｘ’，ｙ’）は、式（１２）に従って決定することができる。例えば、画像処理モジュール２１４は、以下の式に従って、画素ごとに、グローバルな動きを表すことができる。
【００８９】
グローバル_vx = x-x’
グローバル_vy = y-y’                                                  (13),
（例えば、図３のステップ３０４で決定されるように）画像深度の最初の表示は、ローカルとグローバルの両方の動きに基づいてもよい。従って、画像処理モジュール２１４は、画像深度の最初の表示からグローバルな動きを減算することによって、グローバルな動きを補償することができる。画像深度の最初の表示がオプティカルフローである場合、オプティカルフローは、画素ごとにオプティカルフローベクトルＶ＝［ｖx，ｖy］Tとして表すことができる。従って、調整されたフローベクトルは、式Ｖ’＝［ｖ’x，ｖ’y］Tによって表すことができ、但し、
v'x = vx -グローバル_ vx , 及び
v’y = vy - グローバル_ vy                                             (14),
である。
【００９０】
グローバル動き調整フレーム、ｆ’N＋１は、時刻ｔからｔ＋δｔまでカメラ運動がないかのように、時刻ｔ＋δｔで撮影されたフレームと見なすことができる。画像処理モジュール２１４は、フレームｆ’N＋１の画素（ｘ’，ｙ’）の強度を、フレームｆN＋１の画素（ｘ，ｙ）の同じ強度で設定することができる。例えば、
【数２２】
2013545200.tif 000064
【００９１】
である。
【００９２】
深度（例えば、図３のステップ３０４で決定されるオプティカルフロー）の最初の表示はビデオプレゼンテーションのフレームｆNとｆN＋１との間の差の推定を指し得るが、本明細書で説明するように、グローバル動き補償フレーム差は、フレームｆNとグローバル動き調整フレームｆ’N＋１との間の差を表し得る。例えば、
【数２３】
2013545200.tif 000065
【００９３】
である。
【００９４】
上記で説明した技法によれば、フレームについてのグローバル動き調整オプティカルフローのために、元のフレームがグローバルな動きを含んでいる場合でも、実世界において静止しているフレームの背景被写体は静的に見えることができる。従って、ローカルな動きを有する前景の移動物体のみが、グローバル動き調整フレームにおいて動きを有することがある。従って、画像処理モジュール２１４は、グローバルな動きが取り除かれると、より大きい正確さを有する深度マップを決定することができる。上記で説明したように、深度マップは、ビデオフレームの画素及び／又は被写体の相対的な深度を示す値のマップでもよい。
【００９５】
幾つかの例では、式（８）から（１２）に関して上述したパースペクティブモデルは、整数でなくてもよい。幾つかの例では、計算複雑さを低減するために、画像処理モジュール２１４は、値（ｘ’，ｙ’）を整数に四捨五入することができ、ＩN+1,(x,y)の強度を整数画素位置値（ｘ’，ｙ’）に割り当てることができる。対応する位置（ｘ’，ｙ’）がビデオフレームの境界を越える場合、画像処理モジュール２１４は、画素を破棄することができる。別の例によれば、２つ以上の画素位置（ｘ，ｙ）が整数位置（ｘ’，ｙ’）にマッピングされ得る。この例によれば、画像処理モジュール２１４は、（ｘ’，ｙ’）の強度値を、全ての画素についての強度値の平均に設定することができる。画素が特定の画素位置（ｘ’，ｙ’）にマッピングされない場合、画像処理モジュール２１４は、１つ以上の隣接する画素位置の決定された強度から補間による画素位置の強度を取得することができる。
【００９６】
再び図３を参照すると、（例えば、図３のステップ３０５で）グローバルな動きが存在することが決定されたか否かにかかわらず、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、フレームｆNについてのオプティカルフロー、又はフレームｆNについてのグローバル動き調整オプティカルフローのいずれかに基づいて、フレームｆNの被写体及び／又は画素を前景又は背景被写体のいずれかとしてさらに分類することができる（３０８）。図７は、本開示の技法に一致して、フレームの画素及び／又は被写体の前景又は背景被写体としての画像処理モジュール２１４の分類の一例を示す。例えば、図７に示すように、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、画像の被写体が前景又は背景被写体であるか否かを決定するために、オプティカルフローベクトル（例えば、ステップ３０５でフレームｆNがグローバルな動きを含んでいないと決定された場合、グローバル動き調整、又は非グローバル動き調整）を所定の閾値Ｔ5と比較することができる（７０１）。所定の閾値Ｔ5は、前景及び／又は背景被写体又は画素であることが既知であり得るビデオプレゼンテーションフレームの被写体及び／又は画素の経験的解析に基づいて選択され得るが、他の方法で適応的に決定又は定義することもできる。幾つかの例では、画像処理モジュール２１４は、フレームｆNの画素ごとに、オプティカルフローを所定の閾値Ｔ5と比較することができる。幾つかの例では、画像処理モジュール２１４は、フレームｆNの画素のサブセットについて、オプティカルフローを所定の閾値Ｔ5と比較することができる。例えば、上記で説明したように、エッジ検出に基づく比較又はフレームのどの画素がフレームの画像被写体を構成するかを決定するための任意の他の技法のために画素を選択することができる。
【００９７】
図７に同じく示すように、画素についてのオプティカルフローが所定の閾値Ｔ5以下である場合、画像処理モジュール２１４は、背景被写体の一部であるとして、画素を分類することができる（７０２）。しかしながら、画素についてのオプティカルフローが所定の閾値Ｔ5よりも大きい場合、画像処理モジュール２１４は、前景被写体の一部であるとして、画素を分類することができる（７０３）。
【００９８】
再び図３を参照すると、幾つかの例では、図３の方法のステップ３０８での前景又は背景被写体としての被写体の分類に基づいて、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、最初の前景／背景マスクを作成することができる（３０９）。本明細書で説明するマスクは、前景被写体と分類された画像フレームのエリア及び背景被写体と分類されたエリアのデジタル表現であり得る。例えば、本明細書で説明するマスクは、白色で前景画素を表すことができ、一方、背景画素は別の色、例えば黒によって表される。画像処理モジュール２１４は、２Ｄビデオプレゼンテーションの少なくとも１つの代替ビューを生成するために、本明細書で説明するようにマスクを使用することができ、その結果、３Ｄプレゼンテーションが視聴者に表示されるとき、前景画像は前景に表示され、３Ｄプレゼンテーションが視聴者に表示されるとき、背景画素は背景に表示される。
【００９９】
図３に同じく示すように、幾つかの例では、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、最初の前景／背景マスクをさらに精緻化することができる（３１０）。図８は、最初の前景／背景マスクを精緻化する方法の一例を示すフロー図である。幾つかの例では、ビデオプレゼンテーションは、殆んど又は全くテクスチャを含まない１つ以上の領域を含むことができる（以下「均一強度エリア（homogenous intensity areas）」）。カメラ運動は検出されるが、それらの均一強度エリアのオプティカルフローベクトルは実質的にゼロに等しくなり得る。その結果、（例えば、上記の式（１６）に従って取得された）グローバル動き調整オプティカルフローベクトルＶ’は不正確であり得る。幾つかの例では、（例えば、図３のステップ３０８で決定されるように）最初の前景／背景マスクは、均一強度エリアについて正確ではない場合がある。従って、幾つかの例では、画像処理モジュール２１４は、フレームの均一強度エリアによる不正確さを考慮に入れるために、最初の前景／背景マスクを精緻化することができる。
【０１００】
図８に示すように、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、フレームｆNとフレームｆN＋１との間のグローバル動き調整フレーム差を決定することによって、最初の前景／背景マスクを精緻化することができる（８０１）。グローバル動き調整フレーム差を決定することは、フレームｆN、ｆN＋１の画素ごとに、近隣画素の平均フレーム差を含むことができる。１つのそのような例では、２Ｐ＋１×２Ｐ＋１ウィンドウ（例えば、フレームｆN、ｆN＋１は、２Ｐ×２Ｐブロックに分けられている）を使用して平均フレーム差を計算することができるが、他のウィンドウサイズも企図される。２Ｐ＋１×２Ｐ＋１ウィンドウが使用される例によれば、画像処理モジュールは、平均フレーム差を決定するために、フレームｆN、ｆN＋１の少なくとも１つの画素に下記の式を適用することができる。
【数２４】
2013545200.tif 000066
【０１０１】
画像処理モジュール２１４は、決定されたグローバル動き調整フレーム差を所定の閾値Ｔ6とさらに比較することができる（８０２）。所定の閾値Ｔ6は、前景及び／又は背景と誤って分類されることが既知であり得るビデオプレゼンテーションフレームの画素の経験的解析に基づいて選択することができるが、本明細書で説明する閾値を定義するために、他の技法が使用されてもよい。特定の画素について、決定されたグローバル動き調整フレーム差が所定の閾値Ｔ6未満である場合、画素は背景画素の可能性が高いと仮定され得る。従って、画像処理モジュール２１４は、ゼロの値を画素についてのグローバル動き調整フローベクトルＶ’に割り当てることができる（８０４）。しかしながら、特定の画素について、決定されたグローバル動き調整フレーム差が所定の閾値Ｔ6以上である場合、画像処理モジュール２１４は、（例えば、図３に示される方法のステップ３０７で決定された）前に決定されたものと同じグローバル動き調整フローベクトルＶ’を画素に割り当てることができる（８０３）。
【０１０２】
画素が背景画素の可能性が高い場合、均一強度エリアの画素に、０のグローバル動き調整フローベクトルＶ’が割り当てられ得るので、図８に示される方法に従って、画像処理モジュール２１４が、フレームｆNについてのグローバル動き調整オプティカルフローを精緻化することは、有利であり得る。従って、画像処理モジュール２１４は、均一強度画素が背景被写体として分類される精緻化されたマスクを作成することができ、それによって、ビデオフレームの均一強度エリアによって生じ得る不整合を低減又は除去することができる。
【０１０３】
再び図３を参照すると、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、ビデオプレゼンテーションのための最終セグメンテーションマスクを作成するために、最初の前景／背景マスク、又は精緻化された前景背景マスク（以下「最初のマスク」と総称される）のいずれかをさらに後処理することができる（３１１）。画像処理モジュール２１４は、最初のマスクにおける前景／背景画素の比較的小さい領域を識別することによって、最初のマスクを後処理することができる。前景／背景画素のそのような比較的小さい領域は、最初のマスクにおける画素のノイズ及び／又は誤分類によって生じ得る。幾つかの例では、画像処理モジュール２１４は、例えば、比較的小さい領域の画素を最終セグメンテーションマスクの背景画素と分類することによって、又は、比較的小さい前景領域の画素を、最終セグメンテーションマスクの作成のために、背景画素と分類することによって、そのような比較的小さい領域を削除することができる。
【０１０４】
幾つかの例では、画像処理モジュール２１４は、バイナリ画像輪郭解析を実行することによって、最初のマスクを後処理することができる。バイナリ画像輪郭解析は、最初のマスクにおける内部輪郭及び外部輪郭を検出することを含み得る。輪郭は、例えば、フレームｆNの形状又は被写体を画定する又は境界をつけるなど、フレーム被写体の外形でもよい。外部輪郭は、他のいかなる輪郭もその輪郭の中に存在しない輪郭として説明され得る。内部輪郭は、別の輪郭の内部の輪郭として説明され得る。
【０１０５】
バイナリ画像輪郭解析によれば、画像処理モジュール２１４は、それらが最初のマスクにおけるノイズを表すかどうか決定するために、内部及び／又は外部の輪郭のそれぞれのエリアを１つ以上の閾値と比較することができる。例えば、外部輪郭では、外部輪郭のエリアが所定の閾値Ｔ7未満である場合、画像処理モジュール２１４は、その輪郭が最初のマスクにノイズを含むと識別することができる。従って、外部輪郭のエリアが所定の閾値Ｔ7未満である場合、画像処理モジュール２１４は、輪郭の画素を最終セグメンテーションマスクの背景画素と分類することができる。内部輪郭では、内部輪郭のエリアが所定の閾値Ｔ8未満である場合、画像処理モジュールは、その輪郭が最初のマスクにノイズを含むと識別することができる。従って、内部輪郭のエリアが所定の閾値Ｔ8未満である場合、画像処理モジュール２１４は、輪郭の画素を最終セグメンテーションマスクの前景画素と分類することができる。上記で説明した後処理技法は、フレームｆNについての最初のマスクを平滑化することができる。従って、画像処理モジュール２１４は、フレームｆNについてのより正確な最終セグメンテーションマスクを作成することができる。
【０１０６】
再び図３を参照すると、画像処理モジュール２１４は、図３のステップ３０１で取得されるビデオプレゼンテーションの２Ｄビューのための深度マップを作成することができる（３１２）。一例では、画像処理モジュール２１４は、例えば、図３のステップ３１０で作成された最終セグメンテーションマスクなど、最終セグメンテーションマスクに基づいて、深度マップを作成することができる。他の例では、画像処理モジュール２１４は、（例えば、図３のステップ３０８で作成された）最初の前景／背景マスク又は（例えば、図３のステップ３０９で作成された）精緻化された前景／背景マスクに基づいて、深度マップを作成することができる。以下、最終セグメンテーションマスク、最初の前景／背景マスク、及び精緻化された前景／背景マスクは、「マスク」と総称される。本明細書で説明するマスクは、前景被写体と分類された画像フレームのエリア及び背景被写体と分類されたエリアのデジタル表現であり得る。例えば、本明細書で説明するマスクは、白色で前景画素を表すことができ、一方、背景画素は別の色、例えば黒によって表される。画像処理モジュール２１４は、２Ｄビデオプレゼンテーションの少なくとも１つの代替ビューを生成するために、本明細書で説明するようにマスクを使用することができ、その結果、３Ｄプレゼンテーションが視聴者に表示されるとき、前景画像は前景に表示され、３Ｄプレゼンテーションが視聴者に表示されるとき、背景画素は背景に表示される。
【０１０７】
深度マップを作成するために、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、フレームのマスクに基づいて、深度値を各画素に割り当てることができる。例えば、画像処理モジュール２１４は、より大きい深度値を、ローカル動きを有する被写体に対応する前景画素に割り当てることができ、これは、前景画素が観測者（例えば、ビデオプレゼンテーションの２Ｄビューを撮影したカメラ）により近いことを示す。対照的に、画像処理モジュール２１４は、より小さい深度値を背景画素に割り当てることができ、これは、背景画素が観測者からかなり離れていることを示す。一例によれば、画像処理モジュール２１４は、以下の式によって記述されるように、画素色に従って深度値を割り当てることができる。
【数２５】
2013545200.tif 000067
【０１０８】
式中、ＣN(x,y)は画素（ｘ，ｙ）におけるフレームｆNの色値を示し、βは１未満であり得るスケーリング係数を示す。様々な例で、ＣN(x,y)は任意のタイプの色値を表すことができ、その非限定的な例には、ＲＧＢ（赤、緑、青）値、シアン、マゼンタ、イエロー、及びブラック（ＣＭＹＫ）値、又は輝度値及びクロミナンス値がある。
【０１０９】
幾つかの例では、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、深度マップをさらに平滑化することができる。１つのそのような例では、画像処理モジュール２１４は、非対称ガウスぶれフィルタを使用して深度マップを平滑化することができる。この例によれば、水平方向に沿ったぶれ強度は、非対称ガウスぶれフィルタの水平方向に沿うよりも強くなり得る。
【０１１０】
幾つかの例では、画像処理モジュール２１４は、（例えば、式（１８）に関して上記で説明したように）フィルタ処理された最初の深度の加重平均として、フレームｆNについての最終深度マップを設定することができる。例えば、画像処理モジュール２１４は、以下の式によって前のフレームｆN−１の最終深度マップを表すことができる。
【数２６】
2013545200.tif 000068
【０１１１】
様々な例では、画像処理モジュール２１４は、本開示の技法によって作成された深度マップを使用して、（例えば、ビデオプレゼンテーションが深度を有するように見えるように）それがユーザに対して３Ｄのように見えるように表示され得るビデオプレゼンテーションを作成することができる。１つのそのような例によれば、画像処理モジュール２１４は、ビデオプレゼンテーションの１つ以上の代替ビューを作成するために、深度マップを使用することができる。ビデオプレゼンテーションの１つ以上の代替ビューは、それぞれのビューが一緒に表示されるとき、ビデオがユーザに対して実質的に３Ｄのように見えるように、（例えば図３のステップ３０１で取得される）ビデオプレゼンテーションの元の２Ｄビュー、又はビデオプレゼンテーションの別の代替ビューとともに表示されるように構成され得る。例えば、表示制御モジュール２１８は、表示器２１９に視聴者の右眼及び視聴者の左眼によって見られるそれぞれのビューを提示させ得る。それぞれのビュー間の差によって、ユーザは、実質的に３次元で表示されたビデオプレゼンテーションを知覚することができる。幾つかのそのような例では、画像処理モジュール２１４は、代替ビューと別のビュー（例えば、元の２Ｄビュー又は他の代替ビュー）との間の差が、本開示の技法に一致して作成されたそれぞれのビューの画素についての深度マップに基づいて選択され得るように、代替ビューを生成することができる。従って、幾つかの例では、本開示の技法は、３Ｄビデオプレゼンテーションへの２Ｄビデオプレゼンテーションのより正確な変換を提供することができる。
【０１１２】
図９は、本開示の技法に一致する方法の一例を示すフローチャート図である。図９に示すように、画像処理モジュール２１４は、ビデオプレゼンテーションの２次元（２Ｄ）ビューの少なくとも１つのフレームについてのオプティカルフローを決定する（９０１）。オプティカルフローは、２Ｄビューの観測者と２Ｄビューの被写体との間の相対的な動きによって生じる視覚的平面における被写体の輝度パターンの仮現運動の表現であり得る。幾つかの例では、オプティカルフローは、少なくとも１つの例のために、画像深度の少なくとも１つの最初の表示を提供することができる。一例では、オプティカルフローは、少なくとも１つのフレームの画素ごとに決定され得る。図９に同じく示すように、画像処理モジュール２１４は、少なくとも１つのフレームについての推定グローバルな動きをさらに含み得る（９０２）。一例によれば、画像処理モジュール２１４は、上記のように、カメラ運動のモデル（例えば、８パラメータパースペクティブモデル）に基づく推定を介して、少なくとも１つのフレームについてのグローバルな動きを推定することができる。例えば、グローバルな動きを推定することは、（例えば、図３のステップ３０４に関して上記で説明したように）少なくとも１つのフレームについての少なくとも１つのグローバル動きパラメータを決定することを含むことができる。図９に同じく示すように、画像処理モジュール２１４は、推定されたグローバル動きに基づいてオプティカルフローを変更して、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成することができる（９０３）。一例では、画像処理モジュール２１４は、（例えば、図３のステップ３０７に関して上記で説明したように）少なくとも１つのフレームについてのグローバル動き調整オプティカルフローを作成するために、少なくとも１つのグローバル動きパラメータをオプティカルフローに適用することを介して、オプティカルフローを変更することができる。図９に同じく示すように、画像処理モジュール２１４は、グローバル動き調整オプティカルフローに基づいて少なくとも１つのフレームの少なくとも１つの前景画素を識別することができる（９０４）。幾つかの例では、識別された少なくとも１つの前景画素は、ビデオプレゼンテーションの少なくとも１つのフレームの深度マップを作成するために使用され得る。視聴者によって実質的に３次元として知覚されるビデオプレゼンテーションを作成するために、少なくとも１つのフレームについてのグローバル動き調整オプティカルフローに基づいて作成された深度マップが使用され得る。
【０１１３】
図６は、グローバルな動きを決定するための特徴点として、候補画素を選択するための技法の一例を示す。図６に記載されている技法によれば、フレームｆNの１つ以上の端部画素を決定するために、エッジ検出が実行され、決定された１次勾配値の絶対値が所定の閾値Ｔ4よりも大きいかどうかに基づいて、端部画素の特徴点が選択される。本開示の技法に一致する他の例によれば、グローバル動きの決定に使用される特徴点は、図１０〜図１３に関して以下で説明するように、他の考慮事項に基づいて選択することができる。
【０１１４】
図１０は、本開示の技法に一致する、グローバル動きの推定／補償のための特徴点として使用するための、候補画素の選択の方法の別の例を示すフローチャート図である。図１０に示すように、画像処理モジュール２１４は、フレームＦNを複数のブロック（例えば、Ｍ×Ｍブロック）に分割することができる（１００１）。画像処理モジュール２１４は、ブロック（及び／又はブロック内の画素）ごとに、ブロック／画素がフレームの中央領域にあるかどうかを決定することができる（１００２）。以下でより詳細に説明するように、ブロック／画素がフレームの中央領域にあるかどうかのこの決定は、特徴点として使用するために、候補画素を選択する際に使用することができる。
【０１１５】
図１１は、そのような中央領域１１１０を含む画像の日付のフレーム１１０１の一例を示す概念図である。図１１に示すように、フレーム１１０１は、中央領域１１１０、ならびにフレーム１１０１の左側、上側、及び右側の部分を含む周辺領域１１１２を含む。同じく図１１に示されるように、画素１１０２は、中央領域１１１０内に位置し、一方、画素１１０２は、中央領域１１１０外（例えば、周辺領域１１１２内）に位置する。
【０１１６】
再び図１０を参照すると、ブロック／画素が（例えば、画素１１０２など）フレーム１１０１の中央領域１１１０内にある場合、画像処理モジュール２１４は、グローバル動き推定／補償のための特徴点として、ブロック内の画素及び／又は複数の画素を使用しない場合がある（１００７）。代わりに、画像処理モジュール２１４は、幾つかの例では、グローバルな動きを決定するために、少なくとも１つの前のフレームＦN+1から１つ以上の前に識別された特徴点に関して、画像データを使用することができる（１００３）。
【０１１７】
しかしながら、中央領域１１１０外（例えば、周辺領域１１１２内）のブロック／画素について、画像処理モジュール２１４は、１つ以上のコーナー領域の画素を識別することができる（１００４）。画像のコーナー領域は、画像の２つの非平行の端部が互いに交差する領域（又はポイント、例えば画素）を識別することができる。コーナー領域は、領域／ポイント局所近傍に２つの主要の異なる端部方向がある領域（ポイント）としても説明され得る。１つ以上のコーナー領域を決定するために、画像処理モジュール２１４は、マルチスケールハリス演算子を利用することができる、例えばハリスコーナー検出技法など、画像内の端部及び／又はコーナー領域を識別するための任意の技法を利用することができる。上記で説明したように、１つ以上のコーナー領域を決定するために利用され得る、端部及び／又はコーナー識別技術の技法の他の例には、例えば、Ｋｉｒｓｈ演算子、Ｆｒｅｉ−Ｃｈｅｎマスキングセット、モラベックコーナー検出アルゴリズム、Ｈａｒｒｉｓ＆Ｓｔｅｐｈｅｎｓ／Ｐｌｅｓｓｅｙ／Ｓｈｉ−Ｔｏｍａｓｉコーナー検出アルゴリズム、ｌｅｖｅｌ  ｃｕｒｖｅ  ｃｕｒｖａｔｕｒｅ手法、Ｌａｐｌａｃｉａｎ  ｏｆ  Ｇａｕｓｓｉａｎ（ＬｏＧ）、Ｄｉｆｆｅｒｅｎｃｅ  ｏｆ  Ｇａｕｓｓｉａｎｓ（ＤｏＧ）、Ｄｅｔｅｒｍｉｎａｔｉｏｎ  ｏｆ  Ｈｅｓｓｉａｎ（ＤｏＨ）アルゴリズム、ａｆｆｉｎｅ−ａｄａｐｔｅｄ  ｉｎｔｅｒｅｓｔ  ｐｏｉｎｔ演算子、Ｗａｎｇ及びＢｒａｄｙのコーナー検出アルゴリズム、ｓｍａｌｌｅｓｔ  Ｕｎｉｖａｌｕｅ  Ｓｅｇｍｅｎｔ  Ａｓｓｉｍｉｌａｔｉｎｇ  Ｎｕｃｌｅｕｓ（ＳＵＳＡＮ）、Ｔｒａｊｋｏｖｉｃ及びＨｅｄｌｙのコーナー検出、Ａｃｃｅｌｅｒａｔｅｄ  Ｓｅｇｍｅｎｔ  Ｔｅｓｔ（ＡＳＴ）ベースの特徴検出器、検出器の自動合成（例えば、Ｔｒｕｊｉｌｌｏ及びＯｌａｇｕｅによって導入される）、又はフレームの１つもしくはコーナー領域及び／又は画素を決定するための任意の他の技法などの技法がある。
【０１１８】
幾つかの例では、画像処理モジュール２１４は、特徴点として使用されるフレームのブロック当たりの候補画素（例えば、コーナー領域の画素）の数を制限することができる。例えば、画像処理モジュールは、ブロック当たりの所定の数の候補画素のみを識別することができる。例えば、画像処理モジュールは、フレームのブロック当たり５個から１０個のみの候補画素を識別することができる。
【０１１９】
別の例によれば、画像処理モジュール２１４は、フレームのコーナー領域の画素を識別することができるが、最も重要である所定の数の識別された画素を候補画素として利用することができるだけである。この場合、画像処理モジュール２１４は、特徴点を決定するために、最大の強度値を有するあるブロックの所定の数の画素を利用することができる。例えば、画像処理モジュール２１４は、あるブロックの全てのコーナー領域を識別することができるが、候補画素として最大の強度値を有するブロック当たり５個から１０個の画素を選択することができるだけである。さらに別の例によれば、画像処理モジュール２１４は、候補画素として所定の閾値よりも大きい強度値を有する画素のみを利用することができる。幾つかの例では、画像処理モジュール２１４は、特定のブロックの任意の画素を（例えば、フレームの均一の領域の）候補画素と識別しない場合がある。
【０１２０】
幾つかの例では、画像処理モジュール２１４は、グローバルな動きを決定するために使用される候補画素の数をさらに低減することができる。例えば、図１０に示されるように、画像処理モジュール２１４は、候補画素がローカル動きを含むかどうかをさらに決定することができる（１００５）。候補画素がローカル動きを含む場合、画像処理モジュール２１４は画素を特徴点と識別しない場合がある（１００７）。代わりに、画像処理モジュール２１４は、少なくとも１つの他のフレームからの画像データを特徴点として使用することができる（１００３）。候補画素がローカル動きを含まない場合、画像処理モジュール２１４は、グローバル動きの決定の際に使用するために、候補画素を特徴点と識別することができる（１００８）。
【０１２１】
同じく図１０に示されるように、画像処理モジュール２１４は、さらに、又は代わりに、候補画素がフレームの均一の領域の一部であるかどうかを決定することもできる。例えば、画像処理モジュール２１４は、隣接画素の１つ以上の特性は、候補画素と同じ又は実質的に同様の値を共有することを決定することができる。候補画素がフレームの均一の領域にある場合、画像処理モジュール２１４は、特徴点として候補画素を使用しない場合がある（１００７）。代わりに、幾つかの例では、画像処理モジュール２１４は、少なくとも１つの他のフレームからの画像データを特徴点として使用することができる（１００３）。候補画素がフレームの均一の領域にない場合、画像処理モジュール２１４は、グローバルな動きの決定の際に使用するために、特徴点として候補画素を識別し得る（１００８）。
【０１２２】
図１０に関して上記で説明した技法は、幾つかの理由で、有利であり得る。例えば、図１０に示される基準に基づいて幾つかの特徴点を選択することによって、深度マップを決定する計算複雑さが低減され得る。さらに、フレーム（及び／又は場合によっては望ましくない画素、例えば均一の領域のローカル動き及び／又は画素）の中央領域の特徴点として少なくとも１つの前のフレームの画像データを使用することによって、深度マップを決定する計算複雑さをさらに低減することができる。
【０１２３】
図３及び図９、並びに上の記述は、フレームについてのグローバルな動きを決定することに基づいて２Ｄ画像の深度マップを生成し、推定されたグローバル動きに基づいてフレームについてのオプティカルフローの表現を変更して、フレームについてのグローバル動き調整オプティカルフローを作成することについて記載する。図８及び上の対応する記述は、画像処理モジュール２１４が、フレームＦNとＦN+1との間のグローバル動き調整フレーム差を決定し、使用することによって、最初の前景／背景マスクを精緻化することができることを記載する。
【０１２４】
本開示の技法に一致する他の例によれば、画像処理モジュール２１４は、グローバル動き補償フレーム差（例えば、図８に関して上記で説明したように）を使用して、上記で説明したように、グローバル動き調整フレームの代わりに深度マップを決定することができる。この例によれば、画像処理モジュール２１４は、グローバル動き調整フレームを決定しない場合がある。代わりに、画像処理モジュール２１４は、グローバル動き補償フレーム差に基づいてのみ、深度マップを決定することができる。深度マップを決定するためにグローバル動き補償フレーム差を使用することによって、２Ｄ画像についての３Ｄ深度マップを決定するために使用される計算複雑さ及び／又はメモリを低減することができる。
【０１２５】
幾つかの例では、画像処理モジュール２１４は、グローバル動き補償フレーム差Ｆｒｍ＿ＤｉｆｆN（上記の式（１６）を参照）を決定することができる。そのようなグローバル動き補償フレーム差Ｆｒｍ＿ＤｉｆｆNは、フレームｆNとグローバル動き補償フレームｆ’N+1との間の差を指し得る。幾つかの例では、画像処理モジュール２１４は、上記で説明した図６及び図１０の例に関して上記で説明したように選択されるフレームの１つ以上の特徴点に基づいて推定される１つ以上のグローバル動きパラメータに基づいて、グローバル動き補償フレーム差を決定することができる。
【０１２６】
図１２は、本開示の技法に一致する、２Ｄ画像についての深度を決定する方法の一例を示すフローチャート図である。図１２に示すように、画像処理モジュール２１４（例えば、図２Ａに示されるマスク／深度マップ作成サブモジュール２４０）は、（例えば、図５に関して上記で説明したように）グローバルな動きが存在するかどうかを決定することができる（１２０１）。グローバルな動きがフレーム内に存在しない場合、画像処理モジュール２１４は、セグメンテーションマスクを決定するために、非補償フレーム差｜ｆ’N+1−ｆN+1｜を使用することができる（１２０２）。フレームについてのグローバルな動きが存在する場合、画像処理モジュール２１４は、グローバル動き補償フレーム差を決定することができる（１２０３）。画像処理モジュール２１４は、決定されたフレーム差（例えば、グローバル動き補償フレーム差又は非補償フレーム差）に、メジアンフィルタを適用することができる（１２０４）。メジアンフィルタは、決定されたフレーム差におけるノイズを低減することができる。
【０１２７】
画像処理モジュール２１４は、画像被写体（及び／又は画素）を前景又は背景として分類するために、フレームにおいてセグメンテーションをさらに実行することができる（１２０５）。例えば、図１２に示すように、画像処理モジュール２１４は、被写体及び／又は画素についてのフレーム差の強度を所定の強度閾値Ｔ9と比較することができる（１２０６）。フレーム差の強度が閾値Ｔ9よりも大きい場合、画像処理モジュール２１４は、被写体及び／又は画素を前景被写体と識別することができる（１２０７）。しかしながら、フレーム差の強度が閾値Ｔ9未満である場合、画像処理モジュール２１４は、被写体及び／又は画素を背景被写体と識別することができる（１２０８）。フレームをセグメント化することに基づいて、画像処理モジュール２１４は、フレームについてのバイナリマスクを生成することができる（図１２には図示せず）。画像処理モジュールは、バイナリマスクに、形態素フィルタリング（morphological filtering）（例えば、１つ以上の開いた又は閉じた形態素フィルタを使用する）をさらに適用することができる（同じく図１２には図示せず）。画像処理は、フレームについての最初の前景／背景マスクを生成することができる（同じく図１２には図示せず）。
【０１２８】
画像処理モジュール２１４は、最初の前景／背景マスクを後処理することもできる（１２０９）。例えば、画像処理モジュールは、最終マスクを生成するために、図３に関して上記で説明したように、最初の前景／背景マスクを後処理することができる。上記で説明したように、画像処理モジュール２１４は、３Ｄ画像についての深度マップを生成するために、最終マスクを使用することができる。深度マップは、異なる画像を視聴者の右眼及び左眼に提示し、それによって、画像が視聴者にとって３Ｄのように見えるようにするために使用され得る。
【０１２９】
図１３は、本開示の技法に一致する、２Ｄ画像についての深度マップを決定するための方法の一例を示すフロー図である。図１３に示すように、画像処理モジュール２１４は、ビデオプレゼンテーションの２次元（２Ｄ）ビューについて、ビデオプレゼンテーションのフレームについての複数の特徴点を決定する（１３０１）。例えば、画像処理モジュールは、フレームの画素がフレームの中央領域にあるか、画素がローカル動きを含むか、及び／又は、画素がフレームの均一の領域にあるかのうちの１つ以上に基づいて、複数の特徴点を決定することができる。
【０１３０】
画像処理モジュール２１４は、複数の特徴点に基づいてフレームについてのグローバルな動きを決定する（１３０２）。画像処理モジュール２１４は、グローバル動き補償フレーム差をさらに決定する（１３０３）。画像処理モジュールは、グローバル動き補償フレーム差に基づいてビデオプレゼンテーションの２Ｄビューについての深度マップをさらに決定する（１３０４）。深度マップは、少なくとも１つの画像が視聴者に対して実質的に３Ｄのように見えるようにするために使用され得る。
【０１３１】
１つ以上の例では、本明細書で説明する機能は、例えば特定のハードウェアコンポーネント又はプロセッサなど、少なくとも部分的にハードウェアに実装され得る。より一般的には、本技法は、ハードウェア、プロセッサ、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装できる。ソフトウェアで実装される場合、機能は、１つ以上の命令又はコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体又は通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コード及び／又はデータ構造を取り出すために１つ以上のコンピュータあるいは１つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１３２】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ又は他の光ディスクストレージ、磁気ディスクストレージ、又は他の磁気ストレージ機器、フラッシュメモリ、あるいは命令又はデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。さらに、いかなる接続もコンピュータ可読媒体、即ちコンピュータ可読伝送媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。但し、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）及びディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザディスク（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）及びブルーレイディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１３３】
命令は、１つ以上の中央処理ユニット（ＣＰＵ）、デジタル信号プロセッサ（ＤＳＰ）などの１つ以上のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路又はディスクリート論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、又は本明細書で説明する技法の実装に好適な他の構造のいずれかを指す。さらに、幾つかの態様では、本明細書で説明した機能は、符号化及び復号化のために構成された専用のハードウェア及び／又はソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つ以上の回路又は論理要素中に十分に実装され得る。
【０１３４】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、又はＩＣのセット（例えば、チップセット）を含む、多種多様な機器又は装置において実装され得る。本開示では、開示する技法を実行するように構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットについて説明したが、それらの構成要素、モジュール、又はユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び／又はファームウェアとともに、上記で説明した１つ以上のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作ハードウェアユニットの集合によって与えられ得る。
【０１３５】
様々な例について説明した。これら及び他の例は以下の特許請求の範囲内に入る。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２０
【補正方法】変更
【補正の内容】
【請求項２０】
前記画像処理モジュールが、
画素が前記フレームの均一の領域にあるかどうかに基づいて、前記複数の特徴点を決定するようにさらに構成される、請求項１１に記載の機器。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図２Ａ
【補正方法】変更
【補正の内容】
【図２Ａ】
2013545200.tif 000069
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図４
【補正方法】変更
【補正の内容】
【図４】
2013545200.tif 000070
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図６
【補正方法】変更
【補正の内容】
【図６】
2013545200.tif 000071
【手続補正６】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2013545200.tif 000072
【国際調査報告】
2013545200.tif 000073
2013545200.tif 000074
2013545200.tif 000075