JP2024514534A - マルチ画像生成システム及び方法 - Google Patents

マルチ画像生成システム及び方法 Download PDF

Info

Publication number
JP2024514534A
JP2024514534A JP2023560964A JP2023560964A JP2024514534A JP 2024514534 A JP2024514534 A JP 2024514534A JP 2023560964 A JP2023560964 A JP 2023560964A JP 2023560964 A JP2023560964 A JP 2023560964A JP 2024514534 A JP2024514534 A JP 2024514534A
Authority
JP
Japan
Prior art keywords
view
view image
image
multiview
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023560964A
Other languages
English (en)
Inventor
リウ,シーン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leia Inc
Original Assignee
Leia Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Leia Inc filed Critical Leia Inc
Publication of JP2024514534A publication Critical patent/JP2024514534A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/349Multi-view displays for displaying three or more geometrical viewpoints without viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/156Mixing image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/172Processing image signals image signals comprising non-image signal components, e.g. headers or format information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/302Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays
    • H04N13/32Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays using arrays of controllable light sources; using moving apertures or moving light sources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/356Image reproducers having separate monoscopic and stereoscopic modes
    • H04N13/359Switching between monoscopic and stereoscopic modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2213/00Details of stereoscopic systems
    • H04N2213/003Aspects relating to the "2D+depth" image format

Abstract

マルチビュー画像生成システム及び方法は、シングルビュー画像からマルチビュー画像を作成する。マルチビュー画像を生成することが、シングルビュー画像をインポートすることと、シングルビュー画像を合成マルチビュー画像の第1のマルチビュー画像層に割り当てることと、を含む。マルチビュー画像を生成することが、シングルビュー画像を第1のマルチビュー画像層の複数のビュー画像に複製することと、ビュー画像の順序付き番号に基づいて、第1のマルチビュー画像層の深度設定を、対応するビュー画像の複数のシフト値に変換することと、対応するシフト値に従って第1のマルチビュー画像層のビュー画像をシフトすることと、を更に含む。複数のマルチビュー画像層は、マルチビューディスプレイ上の合成マルチビュー画像として所定の順番で自動的にレンダリングされ得る。

Description

関連出願の相互参照
N/A
連邦政府による資金提供を受けた研究開発の記載
N/A
マルチビュー画像は、様々なビューを有するシーンを表す。ビューは、視野角に応じて様々な角度で重なり合う場合がある。視聴者が、ディスプレイに対して様々な視野角に配置されるとき、視聴者は、ディスプレイ上に同時に提示されるマルチビュー画像の様々なビューを知覚し得る。例えば、マルチビュー画像の様々なビューは、奥行き感を生成するために、視聴者の各眼に別々に提示される。場合によっては、どのビューが眼によって知覚されるかを制御するために、視聴者は、特別なアイウェアを装着してもよい。他の場合には、ビューは、特別なアイウェアの必要なしに、自動立体視方式で各眼に向けられる。いずれの場合も、マルチビュー表示システムは、表示のためにマルチビュー画像をレンダリングする。場合によっては、マルチビュー画像は、シーンを取り込むために、様々な視点でカメラ(又は複数のカメラ)を使用して生成される。各ビューは、マルチビュー画像を形成するために共に組み立てられる。
本明細書で説明する原理による例及び実施形態の種々の特徴は、添付の図面と共に以下の発明を実施するための形態を参照して容易に理解され、同様の参照番号は同様の構造要素を指定する。
本明細書で説明する原理と一致する一実施形態による、一例におけるマルチビュー画像を示す。
本明細書で説明する原理と一致する一実施形態による、マルチビューディスプレイの一例を示す。
本明細書で説明する原理と一致する一実施形態による、シングルビュー画像からマルチビュー画像を生成する一例を示す。
本明細書で説明する原理と一致する実施形態による、マルチビュー画像を生成するためにシングルビュー画像を複製する例を示す。
本明細書で説明する原理と一致する実施形態による、深度設定を複数のシフト値に変換する例を示す。
本明細書で説明する原理と一致する実施形態による、マルチビュー画像の知覚される深度を変更するためにビュー画像をシフトする例を示す。
本明細書で説明する原理と一致する実施形態による、複数のマルチビュー画像層を自動的にレンダリングする例を示す。
本明細書で説明する原理と一致する実施形態による、各ビュー画像の画素をマルチビューディスプレイのインターレース位置にマッピングする例を示す。
本明細書で説明する原理と一致する一実施形態による、マルチビュー画像生成システム及びそのシステムを動作する方法のフローチャートを示す。
本明細書で説明する原理と一致する一実施形態による、深度マップからマルチビュー画像を生成する一例を示す。
本明細書で説明する原理と一致する実施形態による、ユーザがマルチビュー画像を生成し、編集し得るアプリケーションのユーザインターフェースの例を示す。
本明細書で説明する原理と一致する一実施形態による、マルチビューディスプレイシステムの1つの例示的な図を示す概略ブロック図を示す。
特定の例及び実施形態は、上記の参照図面に示す特徴に加えて、又はその代わりに、他の特徴を有する。これら及び他の特徴は、上記の参照図面を参照して以下に詳述する。
本明細書で説明する原理による例及び実施形態は、マルチビュー画像編集の生成及び編集に対する解決策を提供する。マルチビュー画像は、シーンの様々な視点で画像を取り込むためにカメラ(又はカメラのシステム)を使用して生成され得るが、本明細書で説明する実施形態は、ユーザが、シングルビュー画像をインポート又は他の様態で生成し、複数のビュー画像を形成するためにシングルビュー画像を複製し、様々なビュー画像を自動的にシフトすることによって深度を変更し、表示のために結果を自動的にレンダリングする、ことによってマルチビューコンテンツを生成し得る。実施形態は、マルチビュー画像層を含み、各マルチビュー画像層は、マルチビュー画像層を形成する様々なビュー画像を含む。様々な画像編集動作が選択されたマルチビュー画像層に選択的に適用されるように、マルチビュー画像層は、選択され得る。そのような動作は、例えば、選択されたマルチビュー画像層のコンテンツの深度を変更することを含む。シングルビュー画像は、アプリケーションにインポートされ、新規の、又は既存のマルチビュー画像層に関連付けられ得る。シングルビュー画像は、シングルビュー画像のコピーである複数のビュー画像を生成するために複製され得る。ユーザは、様々な深度設定を操作して、インポートされたコンテンツの相対的な深度を変更し得る。それに応答して、アプリケーションは、深度設定をシフト値に変換して、深度設定及びビュー位置に比例して様々なビュー画像をシフトする(例えば、ポーズ)。様々なビュー画像の画素を座標系に沿ってシフトすることによって、様々なビュー画像間に、視差が生成される。この視差は、ディスプレイの表面に対する深度として視聴者によって認識される。したがって、実施形態は、マルチビュー画像に変換されるときにシングルビュー画像の特性を選択的に変更するために深度設定の概念を導入する。
一部の実施形態では、深度マップは、シングルビュー画像を、深度マップによって定義された深度プロファイルを採用するマルチビュー画像に変換するために、シングルビュー画像にロードされ、適用されてもよい。深度マップは、画素アレイ(例えば、ビットマップ)であってもよく、画素の各画素値は、画素の位置における深度設定を表す。次いで、シングルビュー画像に深度マップを適用して、シングルビュー画像が深度マップの深度特性を採用することを可能にする。例えば、深度マップは、深度(例えば、凸状、凹状、立方体、ピラミッド)を有する様々な形状を定義し、深度マップを、シングルビュー画像に適用することによって、シングルビュー画像をマルチビュービューに変換してもよい。深度マップは、シングルビュー画像によって表される対象の形状及びサイズに適合するように変更され(例えば、ストレッチしてスキューされ、クロップされ)得る。ビュー合成は、変更された深度マップ及び単一画像から複数のビュー画像を生成するために実施され得る。
図1は、本明細書で説明する原理と一致する一実施形態による、一例におけるマルチビュー画像を示している。マルチビュー画像103は、複数のビュー106(例えば、ビュー画像)を有する。ビュー106の各々は、様々な主角度方向109(例えば、左ビュー、右ビュー、中央ビューなど)に対応する。ビュー106は、マルチビューディスプレイ112による表示のためにレンダリングされる。各ビュー106は、マルチビュー画像103によって表されたシーンの様々な視野角又は視点を表す。したがって、様々なビュー106は、互いに対して何らかのレベルの視差を有する。視聴者は、自身の右眼で1つのビュー106を知覚しつつ、自身の左眼で様々なビュー106を知覚し得る。これにより、視聴者は様々なビュー106を同時に知覚することが可能になり、それによって三次元(3D)効果を体験する。
一部の実施形態では、視認者がマルチビューディスプレイ112に対して自分の視野角を物理的に変更すると、視認者の眼が、マルチビュー画像103の様々なビュー106を捉え得る。その結果、視聴者は、マルチビューディスプレイ112と相互作用して、マルチビュー画像103の様々なビュー106を見ることができる。例えば、視聴者が左に移動するにつれて、視聴者は、マルチビュー画像103内のシーンの左側の多くを見ることができる。マルチビュー画像103は、水平面に沿って複数のビュー106を有し、及び/又は垂直面に沿って複数のビュー106を有し得る。したがって、ユーザが様々なビュー106を見るために視野角を変更すると、視聴者は、マルチビュー画像103によって取り込まれたシーンの追加の視覚的詳細を得ることができる。
上述したように、各ビュー106は、マルチビューディスプレイ112によって、様々な対応する主角度方向109に提示される。各ビュー106は、光のビーム(例えば、同様の主角度方向109を有する光線の集合体)に対応する。表示のためにマルチビュー画像103を提示するとき、ビュー106は、実際には、マルチビューディスプレイ112上又はその近傍に現れ得る。ライトフィールドコンテンツを観察する特性は、様々なビューを同時に観察する能力である。ライトフィールドコンテンツは、視聴者に奥行き感を伝えるために、スクリーンの前だけでなくスクリーンの後ろにも現れ得る視覚的画像を含む。
2Dディスプレイは、マルチビュー画像103の様々なビュー106とは対照的に、2Dディスプレイが通常、シングルビュー(例えば、ビューのうちの1つのみ)を提供するように構成されることを除いて、マルチビューディスプレイ112と実質的に同様であり得る。本明細書では、「2次元ディスプレイ」又は「2Dディスプレイ」は、画像が見られる方向にかかわらず(すなわち、2Dディスプレイの所定の視野角又は範囲内で)実質的に同じである画像のビューを提供するように構成されたディスプレイとして定義される。多くのスマートフォン及びコンピュータモニタに見られる従来の液晶ディスプレイ(LCD)は、2Dディスプレイの例である。対照的に、本明細書では、「マルチビューディスプレイ」は、ユーザの視点から同時に、様々なビュー方向に又は様々なビュー方向からマルチビュー画像(例えばマルチビューフレーム)の様々なビューを提供するように構成された電子ディスプレイ又はディスプレイシステムとして定義される。特に、様々なビュー106は、マルチビュー画像103の異なる斜視図を表し得る。
マルチビューディスプレイ112は、それらが同時に知覚されるように、異なる画像ビューの提示に対応する様々な技術を使用して実装され得る。マルチビューディスプレイの1つの例は、様々なビュー106の主角度方向を制御するために光を散乱させるマルチビーム要素を使用するものである。いくつかの実施形態によれば、マルチビューディスプレイ112は、様々なビューに対応する様々な色及び様々な方向の複数の光ビームを提示するものである、ライトフィールドディスプレイであってもよい。いくつかの例では、ライトフィールドディスプレイは、マルチビーム要素(例えば、回折格子)を使用して、深度を知覚するために特別なアイウェアを装着する必要なしにマルチビュー画像の自動立体視表現を提供し得る、いわゆる「眼鏡不要」三次元(3D)ディスプレイである。
図2は、本明細書で説明する原理と一致する実施形態による、マルチビューディスプレイの一例を示している。マルチビューディスプレイ112は、マルチビューモードで動作するときにマルチビュー画像103を提示し得る。一部の実施形態では、マルチビューディスプレイ112は、その動作モードに応じてマルチビュー画像及び2D画像をレンダリングする。例えば、マルチビューディスプレイ112は、様々なモードで動作するための複数のバックライトを含んでもよい。マルチビューディスプレイ112は、広角バックライト115を使用して、2Dモード中に広角放射光を提供するように構成され得る。加えて、マルチビューディスプレイ112は、マルチビーム要素のアレイを有するマルチビューバックライト118を使用してマルチビューモード中に指向性放射光を提供するように構成されてもよく、指向性放射光は、マルチビーム要素アレイの各マルチビーム要素によって提供される複数の指向性光ビームを含む。一部の実施形態では、マルチビューディスプレイ112は、2Dモードに対応する第1の順次時間間隔中に広角バックライト115を、及びマルチビューモードに対応する第2の順次時間間隔中にマルチビューバックライト118を、順次起動するためにモードコントローラ121を使用して、2D及びマルチビューモードを時間多重化するように構成され得る。複数の指向性光ビームのうちの指向性光ビーム(複数)の方向は、マルチビュー画像103の様々なビュー方向に対応し得る。モードコントローラ121は、広角バックライト115又はマルチビューバックライト118を起動させるためのモード選択信号124を生成し得る。
2Dモードでは、広角バックライト115を使用して、マルチビューディスプレイ112が2Dディスプレイのように動作するように、画像を生成し得る。定義により、「広角」放射光は、マルチビュー画像又はマルチビューディスプレイのビューの円錐角よりも大きい円錐角を有する光として定義される。特に、一部の実施形態では、広角放射光は、約20度より大きい(例えば、>±20°)円錐角を有してもよい。他の実施形態では、広角放射光円錐角は、約30度より大きくてもよく(例えば、>±30°)、又は約40度より大きくてもよく(例えば、>±40°)、又は50度より大きくてもよい(例えば、>±50°)。例えば、広角放射光の円錐角は、約60度であってもよい(例えば、>±60°)。
マルチビューモードは、広角バックライト115の代わりにマルチビューバックライト118を使用し得る。マルチビューバックライト118は、互いに異なる主角度方向を有する複数の指向性光ビームとして光を散乱させる上面又は底面に、マルチビーム要素アレイを有し得る。例えば、マルチビューディスプレイ112がマルチビューモードで動作して4つのビューを有するマルチビュー画像を表示する場合、マルチビューバックライト118は、光を4つの指向性光ビームに散乱させることができ、各指向性光ビームは様々なビューに対応する。モードコントローラ121は、マルチビューバックライトを使用してマルチビュー画像が第1の順次時間間隔で表示され、広角バックライトを使用して2D画像が第2の順次時間間隔で表示されるように、2Dモードとマルチビューモードとを順次切り替えてもよい。指向性光ビームは所定の角度にあってもよく、各指向性光ビームは、マルチビュー画像の様々なビューに対応する。
一部の実施形態では、マルチビューディスプレイ112の各バックライトは、導波光としてライトガイド内の光を導くように構成される。本明細書では、「ライトガイド」は、全内部反射又は「TIR」を使用して構造内で光を導く構造として定義される。特に、ライトガイドは、ライトガイドの動作波長で実質的に透過性のコアを含み得る。様々な例において、「ライトガイド」という用語は、一般に、ライトガイドの誘電体材料と、そのライトガイドを取り囲む材料又は媒体との間の界面で光を導くために全内部反射を使用する誘電体光導波路を指す。定義により、全内部反射の条件は、ライトガイドの屈折率がライトガイド材料の表面に隣接する周囲媒体の屈折率よりも大きいことである。一部の実施形態では、ライトガイドは、全内部反射を更に促進するために、前述の屈折率差に加えて、又はその代わりにコーティングを含んでもよい。コーティングは、例えば、反射コーティングであってもよい。ライトガイドは、プレート又はスラブガイド及びストリップガイドの一方又は両方を含むがこれらに限定されないいくつかのライトガイドのいずれかであってもよい。ライトガイドは、プレート又はスラブのような形状であってもよい。ライトガイドは、光源(例えば、発光デバイス)によってエッジ照明されてもよい。
一部の実施形態では、マルチビューディスプレイ112のマルチビューバックライト118は、マルチビーム要素アレイのマルチビーム要素を使用して、導波光の一部分を指向性放射光として散乱させるように構成され、マルチビーム要素アレイの各マルチビーム要素は、回折格子、微小屈折要素、及び微小反射要素のうちの1つ又は複数を含む。一部の実施形態では、マルチビーム要素の回折格子は、複数の個々のサブ格子を含んでもよい。一部の実施形態では、マイクロ反射要素は、複数の指向性光ビームとして導波光部分を反射的に結合又は散乱させるように構成される。マイクロ反射要素は、導波光が散乱される方法を制御するための反射コーティングを有してもよい。一部の実施形態では、マルチビーム要素は、屈折によって、又は屈折を使用して導波光部分を複数の指向性光ビームとして結合するか、又は散乱させる(すなわち、導波光部分を屈折的に散乱させる)ように構成されたマイクロ屈折要素を含む。
マルチビューディスプレイ112はまた、バックライトの上方(例えば、広角バックライト115の上方及びマルチビューバックライト118の上方)に配置されたライトバルブアレイを含み得る。ライトバルブアレイのライトバルブは、例えば、液晶ライトバルブ、電気泳動ライトバルブ、エレクトロウェッティングに基づく若しくはエレクトロウェッティングを使用するライトバルブ、又はそれらの任意の組合せであってもよい。2Dモードで動作するとき、広角バックライト115は、ライトバルブアレイに向かって光を放射する。この光は、広い角度で放射される拡散光であってもよい。各ライトバルブは、広角バックライト115によって放射された光によって照明されるときに、特定の画素バルブを達成して2D画像を表示するように制御される。この点において、各ライトバルブは単一の画素に対応する。この点において、単一の画素は、単一の画素セル(例えば、LCDセル)を構成する異なる色の画素(例えば、赤色、緑色、青色)を含み得る。
マルチビューバックライト118は、マルチビューモードで動作するとき、ライトバルブアレイを照明するために指向性光ビームを放射する。ライトバルブは、マルチビュー画素を形成するために共にグループ化され得る。例えば、4ビューマルチビュー構成では、マルチビュー画素は、各々が様々なビューに対応する異なる画素を含んでもよい。マルチビュー画素の場合、マルチビュー画素内の各画素は、サブ画素と呼ばれることがある。マルチビュー画素内の各画素は、様々な色画素を更に含み得る。
マルチビュー画素配置内の各ライトバルブは、主角度方向を有する光ビームのうちのその1つによって照明され得る。したがって、マルチビュー画素は、マルチビュー画像の画素の様々なビューを提供する画素グループである。一部の実施形態では、マルチビューバックライト118の各マルチビーム要素は、ライトバルブアレイのマルチビュー画素専用である。
マルチビューディスプレイ112は、マルチビュー画像103を表示するためのスクリーンを備える。スクリーンは、例えば、電話(例えば、携帯電話、スマートフォンなど)、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータのコンピュータモニタ、カメラディスプレイ、又は実質的に任意の他のデバイスの電子ディスプレイの表示スクリーンであってもよい。
本明細書で使用する場合、「視差」は、対応する位置におけるマルチビュー画像のうちの少なくとも2つのビューの間の差として定義される。例えば、立体映像のコンテキストでは、左眼及び右眼は同じ対象を見るが、眼の間の視野角の差によってわずかに異なる位置に見る場合がある。この差は、視差として定量化され得る。マルチビュー画像にわたる視差の変化は、奥行き感を伝える。
本明細書で使用する場合、「ベースライン」又は「カメラベースライン」は、マルチビュー画像の対応するビューを取り込む2つのカメラ間の距離として定義される。例えば、立体視の文脈では、ベースラインは、左眼と右眼との間の距離である。ベースラインが大きいほど、視差の増加をもたらし、マルチビュー画像の3D効果を向上させ得る。
本明細書で使用する場合、「透明度」は、対象の背後の他の対象が見える程度を定義する対象特性を指す。上層の透明度を上げると、下層が見えるようになる。最小透明度(例えば、透明度なし)は、下層が見えることを防止し、最大透明度は、下層を完全に露出させるように、特定の層を不可視にする。
本明細書で使用する場合、冠詞「a」は、特許技術におけるその通常の意味、すなわち「1つ又は複数」を有することを意図している。例えば、「プロセッサ(a processor)」は1つ又は複数のプロセッサを意味し、したがって、本明細書では「そのメモリ(the memory)」は「1つ又は複数のメモリ構成要素」を意味する。
図3は、本明細書で説明する原理と一致する一実施形態による、シングルビュー画像からマルチビュー画像を生成する一例を示している。図3は、コンピュータデバイス、又はコンピュータデバイスによって実行されるアプリケーション203の機能を表す。更に、図3は、マルチビュー画像を生成するコンピュータ実装方法を表す。
アプリケーション203は、図12に関して更に詳細に説明するように、ユーザレベルのアプリケーションであってもよい。アプリケーション203は、ユーザが、マルチビュー画像、例えば、図1のマルチビュー画像103を生成し、編集することを可能にするユーザインターフェースを提供し得る。アプリケーション203は、様々な動作、例えば、シングルビュー画像をアプリケーション203にインポートすることを実行することができ、シングルビュー画像は、合成マルチビュー画像を形成する複数のマルチビュー画像層のうちの第1のマルチビュー画像層に割り当てられる。シングルビュー画像205は、任意の2D画像であってもよく、各画素の色チャネル値及び透明度値を含むビットマップフォーマットでフォーマットされてもよい。例えば、シングルビュー画像205は、各画素が赤色値、緑色値、及び青色値を有するRBG画像(赤、緑、青)であってもよい。更に、シングルビュー画像205は、各画素の透明度値を指定するアルファチャネルを有し得る。
アプリケーション203は、ユーザがクリップボードからアプリケーションにコンテンツを貼り付けることによって画像をインポートすることを可能にする。例えば、オペレーティングシステムが、コピーされた画像データを一時的に記憶するクリップボード又は他のシステムメモリを提供してもよい。このデータは、ペースト操作を通してアプリケーション203によって受信され得る。アプリケーション203はまた、ユーザがシングルビュー画像205を画像ファイルとしてインポートすることを可能にする。シングルビュー画像205はまた、画像のライブラリにローカル又はリモートでアクセスすることによって、アプリケーション203にインポートされてもよい。
アプリケーション203は、マルチビュー画像層データ207を管理し得る。例えば、マルチビュー画像層データ207は、アプリケーション203によって生成され、システムメモリ内のアドレス空間にロードされてもよい。マルチビュー画像層データ207は、マルチビュー画像層のリストを含み得る。マルチビュー画像層は、マルチビュー画像層順序210に従って順序付けられ、マルチビュー画像層名213によって識別され得る。各マルチビュー画像層は、ビュー画像216のセットを含む。各マルチビュー画像層を組み合わせると、最終的に表示用にレンダリングされる合成マルチビュー画像が共に形成される。したがって、所与のマルチビュー画像層のビュー画像216のセットは、合成マルチビュー画像の層を表す。シングルビュー画像205は、アプリケーション203にインポートされるときに特定のマルチビュー画像層に割り当てられ得る。例えば、ユーザは、シングルビュー画像205をインポートする前に、マルチビュー画像層を選択してもよい。したがって、シングルビュー画像205は、アプリケーション203にインポートされるときに、選択されたマルチビュー画像層に割り当てられ得る。別の例として、シングルビュー画像205をインポートすると、結果としてアプリケーション203が新規のマルチビュー画像層を生成することができ、インポートされたシングルビュー画像205は、次に、新規に生成されたマルチビュー画像層に割り当てられる。したがって、アプリケーション203は、マルチビュー画像層を生成して、選択し、又はユーザは、インポートされたシングルビュー画像205が割り当てられる既存のマルチビュー画像層を選択し得る。
図3の例は、マルチビュー画像層データ207として記憶される複数のマルチビュー画像層を示している。ユーザは、マルチビュー画像層名213を提供することによって各マルチビュー画像層に名前を付け得る。この例では、「背景」、「山脈」、「新規の層」という名前の3つのマルチビュー画像層がある。マルチビュー画像層は、ユーザがマルチビュー画像コンテンツを生成するときに、ユーザがマルチビュー画像層を追跡し得るように名前を付け得る。新規のマルチビュー画像層が追加され、デフォルトのマルチビュー画像層名213、例えば、「新規の層」が与えられてもよい。
マルチビュー画像層順序210は、マルチビュー画像層がレンダリングされる順番を定義する。マルチビュー画像層は、下部のマルチビュー画像層が最初にペイントされ、中間のマルチビュー画像層が更にペイントされ、最後に、上部のマルチビュー画像層が最後にペイントされるように、下部から上部にレンダリングされる。したがって、マルチビュー画像層が順番にレンダリングされるときに、各マルチビュー画像層は、その下のマルチビュー画像層を覆い得る。一部の実施形態では、層が表示のためにレンダリングされているときに、ブレンド動作を適用して層を共にブレンドしてもよい。ユーザは、マルチビュー画像層順序210の順番を変更し得る。
マルチビュー画像を編集するとき、ユーザは、マルチビュー画像層を選択することによって特定のマルチビュー画像層を操作し得る。ユーザによって指定されたすべての画像処理操作は、選択されたマルチビュー画像層に限定されてもよい。図3の例では、「新規の層」は、選択されたマルチビュー画像層であり、第1のマルチビュー画像層219と呼ぶこともある。これにより、生成され、又は他の方法で編集されているマルチビュー画像の選択部分を、ユーザは操作し得る。シングルビュー画像205をインポートするとき、シングルビュー画像205は、複数のマルチビュー画像層のうちの第1のマルチビュー画像層219に割り当てられ得る。一部の実施形態では、シングルビュー画像205をインポートすると、インポートされたシングルビュー画像205が新規のマルチビュー画像層に割り当てられるように、第1のマルチビュー画像層219を自動的に生成する。各マルチビュー画像層を順次レンダリングすると、結果として、合成マルチビュー画像を形成する。
各マルチビュー画像層は、それ自体のビュー画像216のセットを含む。ビュー画像のセット内の各ビュー画像は、図1のビュー106のような様々なビューを表す。各ビュー画像は、他のビュー画像に対してそれ自体の位置を有する。ビュー画像は、様々なマルチビュー構成でフォーマットされ得る。マルチビュー構成は、ビュー画像の数を定義する。例えば、ステレオマルチビュー構成は、2つのビュー構成であるように、左ビュー及び右ビューのみを有する。4ビューマルチビュー構成は、4つのビューなどを有する。更に、マルチビュー構成は、ビューの方向を指す場合もある。ビューは、水平方向、垂直方向、又はその両方に方向付けられ得る。例えば、4ビューマルチビュー構成は、4つのビューを横にして水平に方向付けられてもよく、4つのビューを下にして垂直に方向付けられてもよく、又は2つのビューを横にして2つのビューを下にしてクワッド方向に方向付けられてもよい。アプリケーション203は、マルチビュー構成に従って各マルチビュー画像層のビューを管理するように構成され得る。一部の実施形態では、ユーザは、ビューの数、ビューの位置、ビュー間の距離(例えば、ベースラインと呼ばれる)などを調整することによってマルチビュー構成を変更してもよい。
図4は、本明細書で説明する原理と一致する実施形態による、マルチビュー画像を生成するためにシングルビュー画像を複製する例を示している。例えば、図4は、シングルビュー画像205を第1のマルチビュー画像層219の複数のビュー画像222に複製することを示している。シングルビュー画像205は、シングルビュー画像205のインポートに応答して自動的に複製され得る。第1のマルチビュー画像層219は、シングルビュー画像205のインポートに応答して、以前に選択されても、又は自動的に生成されてもよい。したがって、図4は、ビュー画像222がどのように生成され、マルチビュー画像層にどのように割り当てられるかを示している。
少なくとも最初は、各ビュー画像222は、各ビュー画像222間に視差がないように、シングルビュー画像205の複製又はコピーであってもよい。シングルビュー画像205は、この例では、人が歩いている(例えば、対象)画像である。ビュー画像222内に配置された対象の位置を示すために、各ビュー画像222に垂直破線を追加している。
シングルビュー画像205は、ビューの数、並びにビューの角度又は位置を指定するマルチビュー構成に従って複製され得る。各ビューは、ビューインデックスである順序付き番号を有し得る。この例では、ビュー1(v1)は、番号1を有し、ビュー2(v2)は、番号2を有し、ビュー3(v3)は、番号3を有し、ビュー4(v4)は、番号4を有する。各順序付き番号は、ビューの相対位置に対応し得る。この例では、v3は、ベースビュー又はセンタービューと見なされる。左端のビュー、つまりv1は、v3の左に2単位の距離であり、v2は、v3の左に1単位の距離であり、v4は、v3の右に1単位の距離である。したがって、実施形態は、ビュー画像のうちの1つ(例えば、v3)を、ベースビュー画像として割り当てることに関する。以下に説明するように、深度ベースの動作は、ベースビュー画像に対して行われる。
図5は、本明細書で説明する原理と一致する実施形態による、深度設定を複数のシフト値に変換する例を示している。図5は、第1のマルチビュー画像層の深度設定を含むユーザ入力の受信を示している。アプリケーション203は、マルチビュー画像コンテンツを編集するためのユーザインターフェースを提供し得る。ユーザインターフェースは、ユーザが第1のマルチビュー画像層219の深度設定228を指定することを可能にするユーザインターフェース要素225を含み得る。ユーザインターフェース要素225は、スライダ、ダイヤル、テキストボックス、又はユーザが深度設定228を指定し得る任意の他の要素であってもよい。深度設定は、レンダリングされたコンテンツがマルチビューディスプレイに対して知覚される場所に対応する値であってもよい。例えば、深度値0は、マルチビューコンテンツがスクリーンに等しい深度(例えば、スクリーン上で)で表示されることを示す。この例では、正の値は、スクリーンの前方の深度に対応し、一方で、負の値は、スクリーンの後方の深度に対応する。図5の例では、ユーザは、シングルビュー画像のレンダリングを視聴者の近くに効果的に移動させるために、7の深度設定228を選択した(特定の距離でスクリーンの前に現れる)。深度設定228は、選択されたマルチビュー画像層に関連付けられたコンテンツにのみ適用し得る。
図5は、ビュー画像の各々の順序付き番号に基づいて、深度設定を、対応するビュー画像の複数のシフト値に変換する動作を更に示している。例えば、図5は、7の深度設定228が4つのビュー画像222のシフト値234にどのように変換されるかを示し、v1は、-20のシフト値を有し、v2は、-10のシフト値を有し、v3は、0のシフト値を有し、v4は、+10のシフト値を有する。シフト値は、ベースビュー画像(例えば、v3)に対するシフト距離を表し得る。シフト値234の符号は、シフトの方向(例えば、左又は右)に対応し得る。したがって、v1は、その後左に20画素だけシフトされるv3の複製である。
図5はまた、ビュー画像のうちの1つをベースビュー画像として割り当てることを示し、ベースビュー画像のシフト値234は0である。この点において、ベースビュー画像(例えば、v3)は、他のビュー画像がv3に対してシフトされるとき、静止したままである。ユーザが第1のマルチビュー画像層219のコンテンツを編集すると、同じ編集が、第1のマルチビュー画像層219内のすべてのビューに自動的に適用される。しかしながら、ビューは、互いに対してシフトされたままである。例えば、ユーザが、ベースビュー画像に対して画像編集操作を実施すると、画像編集操作は、マルチビュー画像層内の他のビューに自動的に適用される。
深度設定228をシフト値234に変換するとき、アプリケーションは、順序付けられたビュー番号を考慮し得る。順序付き番号は、ビューの位置、ひいてはビュー間の距離に対応する。例えば、v1は、v2よりもv3の方が遠い。様々なマルチビューパラメータ231は、深度設定228をシフト値234に変換する方法を制御し得る。一例は、ベースラインである。ベースラインは、マルチビュー画像の対応するビューを取り込む2つのカメラ(例えば、仮想カメラ)間の距離を指す。
図6は、本明細書で説明する原理と一致する実施形態による、マルチビュー画像の知覚される深度を変更するためにビュー画像をシフトする例を示している。図6は、第1のマルチビュー画像層が選択されたことに応答して、対応するシフト値に従って第1のマルチビュー画像層のビュー画像をシフトすることを示している。例えば、第1のマルチビュー画像層219は、4つの様々なビュー画像を生成するためにインポートされ、複製されたシングルビュー画像205を有してもよい。他のマルチビュー画像層、例えば、第2のマルチビュー画像層237があってもよい。しかしながら、複製された4つのビュー画像は、第1のマルチビュー画像層219にのみ割り当てられる。深度設定228の適用は、第1のマルチビュー画像層219に選択的に適用される。ユーザは、新規のマルチビュー画像コンテンツを生成しているときに、それぞれのマルチビュー画像層の異なる対象間の相対深度を制御し得る。
第1のマルチビュー画像層219のコンテンツは、v1では左に20画素シフトされ、v2では左に10画素シフトされ、v3ではシフトされず、v4では右に10画素シフトされる。第2のマルチビュー画像層237のコンテンツは、これらのシフト操作全体を通して同じままである。レンダリングされると、このシフトは、第1のマルチビュー画像層219のコンテンツと、第2のマルチビュー画像層237のコンテンツとの間の相対深度の量に影響を及ぼす。
図6の例は、各ビュー画像をシフトすることが、各ビュー画像の画素を水平方向に沿ってシフトすることを含むことを示している。例えば、ビュー(v1、v2、v3、v4)は、4×1構成の水平カメラポーズを有する。他の実施形態では、ビューは、垂直ビューを有してもよく、又は水平ビューと垂直ビューとの両方を有してもよい。
図6はまた、第1のマルチビュー画像層219に割り当てられたすべてのコンテンツが深度設定228に応じてどのようにシフトされるかを示している。いくつかの実施形態は、第1のマルチビュー画像層の領域を選択し、選択された領域内に入るビュー画像の一部を選択的にシフトすることを含む。例えば、ユーザは、ボックス(又は任意の他の形状)を描くこと、特定の色を選択すること、又は任意の他の画素位置選択を行うことによって、第1のマルチビュー画像層219の一部を選択してもよい。その後、深度設定は、選択されたマルチビュー画像層の選択された領域にのみに適用される。例えば、第1のマルチビュー画像層219のビュー画像は、様々な特徴(例えば、身体、腕、頭部など)を有する人を表してもよい。ユーザは、深度設定が特徴の画素にのみ適用されるように、特徴(又はその一部)を選択し得る。
図7は、本明細書で説明する原理と一致する実施形態による、複数のマルチビュー画像層を自動的にレンダリングする例を示している。例えば、図7は、マルチビューディスプレイ上の合成マルチビュー画像として、複数のマルチビュー画像層を所定の順番で自動的にレンダリングすることを示している。一部の実施形態では、レンダリングは、アプリケーションがユーザ入力に応答して複数のマルチビュー画像層を自動的にレンダリングし得るように自動である。例えば、ユーザが1つ又は複数のマルチビュー画像層内のグラフィックコンテンツを描画、編集、又は他の方法で変更するたびに、アプリケーションは、ユーザが自分の編集の結果を見ることを可能にするために表示用に複数のマルチビュー画像層を自動的にレンダリングする。一部の実施形態では、レンダリングは、アプリケーションがマルチビュー画像層を周期的にレンダリングして、マルチビューコンテンツに対して行われた最新の編集を表示し得るように自動である。自動レンダリングにより、ユーザは、深度がリアルタイムで変更されるときに合成マルチビュー画像を知覚し得る。マルチビュー画像層の様々なビュー画像は、ユーザが深度設定を調整すると自動的に変更される(例えば、シフトされる)。
マルチビュー画像層は、マルチビュー画像層データ207として記憶される。マルチビュー画像層をレンダリングするアプリケーションは、レンダリングを実施するためにシェダー240を利用し得る。シェダー240は、テクスチャデータ又は他のビデオデータを処理するためにグラフィックスパイプラインで実行されるモジュール又はプログラムであってもよい。シェダー240は、GPUの一部であるハードウェア構成要素であっても、グラフィックスパイプラインで実行されるソフトウェアプログラムであってもよい。シェダー240は、所定の順番に従って各マルチビュー画像層をペイントし得る。所定の順番は、ユーザによって指定されても、マルチビュー画像層データ207の一部として含まれてもよい。例えば、所定の順番は、ユーザによって設定されたマルチビュー画像層順序210であってもよい。所定の順番は、下部マルチビュー画像層249、1つ又は複数の中間マルチビュー画像層250、及び上部マルチビュー画像層251を指定し得る。シェダー240は、マルチビューディスプレイ112上の下部マルチビュー画像層249を、第1の順番(第1の矢印として示す)でペイントすることによって開始し得る。次いで、シェダー240は、マルチビューディスプレイ112上に中間マルチビュー画像層250をペイントし得る。各マルチビュー画像層が、マルチビューディスプレイ112上にペイントされると、現在のマルチビュー画像層は、第2の順番(第2の矢印として示す)で下にあるマルチビュー画像層を覆うか、そうでなければオーバーライドし得る。この点において、下にあるマルチビュー画像層の画素値は、現在のマルチビュー画像層の画素値に置換される。次いで、シェダー240は、第3の順番(第3の矢印として示す)でマルチビューディスプレイ112上に上部マルチビュー画像層251をペイントし得る。これにより、マルチビュー画像層249、250、251のレンダリングが完了し、マルチビューディスプレイ112上に合成マルチビュー画像252を生成する。シェダー240によって実施されるペイントは、特定のマルチビュー画像層の画素値をスクリーン上の対応する位置にマッピングすることを含む。ペイントは、表示用のレンダリング画像の一部である。一部の実施形態では、シェダー240は、ディスプレイ上に画像をレンダリングする前に、画像をグラフィックスメモリバッファにペイントするように構成される。
一部の実施形態では、マルチビュー画像を生成する動作は、上部マルチビュー画像層の透明領域を省略しつつ、所定の順番によって定義された上部マルチビュー画像層をレンダリングすることによって、複数のマルチビュー画像層を自動的にレンダリングすることを含む。例えば、マルチビュー画像層は、各画素の透明度のレベルを指定する透明チャネル(色チャネルに加えて)を含んでもよい。透明領域は、その領域が透明である(例えば、完全に又は部分的に透明である)ことを示す画素値を有する1つ又は複数の画素を含む。中間マルチビュー画像層250の透明領域をレンダリングするとき、下部マルチビュー画像層249の対応する部分は、上部マルチビュー画像層で覆われない限り、合成マルチビュー画像252で露出されたままになる。
一部の実施形態では、マルチビュー画像を生成する動作は、合成マルチビュー画像252をユーザ指定のマルチビューファイルフォーマットでフォーマットすることを含む。マルチビューファイルフォーマットは、特定のマルチビュー構成(例えば、ビューの数、ビューの方向)を制御するフォーマットであってもよい。マルチビュー画像を生成するとき、ユーザは、ビューの数、ビューの方向、ベースラインなどに関してマルチビュー画像の最終的な外観を定義する特性を最初に指定し得る。これらの特性は、複数の選択可能なマルチビュー画像フォーマットのうちの1つに適合し得る。選択を行うと、アプリケーションは、マルチビューフォーマット選択に従って合成マルチビュー画像252を生成し得る。
一部の実施形態では、マルチビュー画像を生成する動作は、第1のマルチビュー画像層の各ビュー画像を、複数のマルチビュー画像層の第2のマルチビュー画像層の対応するビュー画像とブレンドすることを含む。例えば、マルチビュー画像層は、自動レンダリング処理の順番中にブレンドされてもよい。例えば、中間マルチビュー画像層250(例えば、第2のマルチビュー画像層)を下部マルチビュー画像層249(例えば、第1のマルチビュー画像層)にペイントするとき、シェダー240は、下部マルチビュー画像層249を中間マルチビュー画像層249の画素値で完全に上書きするのではなく、様々なマルチビュー画像層の画素値をブレンドしてもよい。ブレンドは、上部マルチビュー画像層の画素値を、ペイントされた下部マルチビュー画像層の画素値と平均化することを含み得る。ブレンドは、2つの画素の色値を平均化又は他の様態でマージするための画素ごとの動作を含み得る。この点において、ペイントされているマルチビュー画像層は、以前にペイントされたマルチビュー画像層とブレンドされる。したがって、レンダリング処理中にブレンドが行われる場合がある。
図8は、本明細書で説明する原理と一致する実施形態による、各ビュー画像の画素をマルチビューディスプレイのインターレース位置にマッピングする例を示している。例えば、一部の実施形態では、マルチビュー画像を生成する動作は、各ビュー画像の画素をマルチビューディスプレイのインターレース位置にマッピングすることによって、複数のマルチビュー画像層を自動的にレンダリングすることを含んでもよい。レンダリングを実施するシェダー240は、マルチビュー画像層データ207を受信し、出力として各マルチビュー画像層のレンダリングされたマルチビュー画像層254を生成し得る。レンダリングされたマルチビュー画像層254は、例えば、下部マルチビュー画像層249、中間マルチビュー画像層250、又は上部マルチビュー画像層251であってもよい。レンダリングされたマルチビュー画像層254は、グラフィックスメモリバッファにロードされるか、そうでなければマルチビューディスプレイ112にペイントされてもよい。シェダー240は、マルチビューディスプレイ112に固有でネイティブなフォーマットに従って、レンダリングされたマルチビュー画像層254をフォーマットし得る。一部の実施形態では、これは、対応する位置に基づいて様々なビューの画素をコロケートするために、各ビューの画素をインターレースすることを含む。例えば、各ビューの最も左上の画素は、レンダリングされたマルチビュー画像層254を生成するときにコロケートされてもよい。言い換えれば、各ビュー画像の画素は、空間的に多重化されるか、そうでなければインターレースされて、レンダリングされたマルチビュー画像層254を生成する。
図8に示すように、レンダリングされたマルチビュー画像層254は、空間的に多重化された、又は他の方法でインターレースされたビューを有する。図8は、4つのビューのうちの1つに対応する画素を示し、この場合画素は、インターレースされている(例えば、インターリーブされるか、又は空間的に多重化される)。ビュー1に属する画素は番号1で表され、ビュー2に属する画素は番号2で表され、ビュー3に属する画素は番号3で表され、ビュー4に属する画素は番号4で表される。レンダリングされたマルチビュー画像層254のビューは、各行に沿って水平に、画素ごとにインターレースされる。レンダリングされたマルチビュー画像層254は、大文字A~Eによって表される画素の行と、小文字a~hによって表される画素の列と、を有する。図8は、行E、列e~hにおける1つのマルチビュー画素257の位置を示している。マルチビュー画素257は、4つのビューのそれぞれの画素から取られた画素の配置である。言い換えれば、マルチビュー画素257は、4つのビューのそれぞれの個々の画素を空間的に多重化するようにインターレースした結果である。図8は、様々なビューの画素を水平方向にインターレースすることを示しているが、様々なビューの画素は、垂直方向に、並びに水平方向及び垂直方向の両方にインターレースされ得る。
インターレースされたビューは、4つのビューの各々からの画素を有するマルチビュー画素227をもたらし得る。一部の実施形態では、マルチビュー画素は、図8に示すように、特定の方向に互い違いに配置されてもよく、マルチビュー画素は、垂直に互い違いに配置されながら水平に整列される。他の実施形態では、マルチビュー画素は、水平方向に互い違いに配置され、垂直方向に整列されてもよい。マルチビュー画素がインターレース及び互い違いになる特定の方法は、マルチビューディスプレイ112の設計、及びそのマルチビュー構成に依存し得る。レンダリングされたマルチビュー画像層253は、画素をインターレースし、その画素をマルチビュー画素に配置して、それらをマルチビューディスプレイ112の物理画素(例えば、ライトバルブアレイ259)にマッピングできるようにする。言い換えれば、レンダリングされたマルチビュー画像層253の画素座標は、マルチビューディスプレイ112の物理的な位置に対応する。マルチビュー画素257は、ライトバルブアレイ259内のライトバルブの特定のセットへのマッピング261を有する。ライトバルブアレイ259は、レンダリングされたマルチビュー画像層254に従って光を変調するように制御される。追加のマルチビュー画像層は、追加のレンダリングされたマルチビュー画像層を生成するためにシェダー240によって処理され、その後、その下のレンダリングされたマルチビュー画像層の上にペイントされる。
図9は、本明細書で説明する原理と一致する実施形態による、マルチビュー画像生成システム、及びそのシステムを動作する方法のフローチャートを示す。図9のフローチャートは、命令セットを実行するコンピュータデバイス(例えば、図12のマルチビューディスプレイシステム)によって実装される様々なタイプの機能の一例を提供する。例えば、マルチビュー画像生成システムは、マルチビューディスプレイ(例えば、図1、図2、図7、及び図8のマルチビューディスプレイ112)を含んでもよい。マルチビュー画像生成システムは、プロセッサと、実行されたときにプロセッサに、フローチャートに示した様々な動作を実施させる複数の命令を記憶するメモリと、を更に含み得る。代替として、図9のフローチャートは、1つ又は複数の実施形態による、コンピュータデバイスにおいて実装される方法の要素の一例を示すものと見なされ得る。図9はまた、コンピュータシステムのプロセッサによって実行されると、マルチビュー画像を生成するための動作を実施する実行可能命令を記憶する非一時的コンピュータ可読記憶媒体を表し得る。
マルチビュー画像生成システムは、プロセッサに、シングルビュー画像をアプリケーションにインポート304させる命令を実行するように構成される。マルチビュー画像生成システムは、シングルビュー画像を受信する、又はシングルビュー画像にアクセスするアプリケーション(例えば、図2のアプリケーション203)を実行し得る。マルチビュー画像生成システムは、プロセッサに、シングルビュー画像を複製307させる命令を実行するように構成される。デフォルトのマルチビュー画像フォーマット又はユーザ指定のマルチビュー画像フォーマットは、ビューの数又はビューの方向を制御し得る。シングルビュー画像は、このマルチビュー画像フォーマットに従って複製され得る。例えば、図3に示すように、シングルビュー画像205は、4ビューマルチビュー画像フォーマットに従って水平視差を有する4つのビューを生成するために複製される。
マルチビュー画像生成システムは、プロセッサに、マルチビュー画像層を選択310させる命令を実行するように構成される。例えば、プロセッサは、合成マルチビュー画像を形成する複数のマルチビュー画像層の中から第1のマルチビュー画像層を選択してもよく、第1のマルチビュー画像層は複数のビュー画像を含む。複数のビュー画像は、以前にインポートされたシングルビュー画像から複製された同一のビュー画像であってもよい。一部の実施形態では、シングルビュー画像をインポートするとき、アプリケーションは、シングルビュー画像層の新規のマルチビュー画像層を自動的に生成し、次にシングルビュー画像層を複製して、新規のマルチビュー画像層の同一のビューを生成してもよい。新規のマルチビュー画像層は、シングルビュー画像のインポートに応答して、デフォルトで選択され得る。他の実施形態では、ユーザは、任意の既存のマルチビュー画像層を手動で選択してもよい。ユーザが指定する画像編集操作は、選択されたマルチビュー画像層(例えば、第1のマルチビュー画像層)に限定される。
マルチビュー画像生成システムは、プロセッサに、第1のマルチビュー画像層の深度設定を含むユーザ入力を受信313させる命令を実行するように構成される。深度設定は、マルチビュー画像がレンダリングされるときに、深度を調整するためのマルチビュー画像編集動作であってもよい。深度設定は、視覚コンテンツがスクリーンに対してユーザに見える距離に対応する値であってもよい。この点において、深度設定により、コンテンツを、マルチビューディスプレイのスクリーンの前、上、又は後ろに表示し得る。深度設定は、選択されたマルチビュー画像層のコンテンツにのみ適用され得る。
マルチビュー画像生成システムは、プロセッサに、深度設定をシフト値に変換316させる命令を実行するように構成される。例えば、プロセッサは、ビュー画像の各々の順序付き番号に基づいて、深度設定を、対応するビュー画像の複数のシフト値に変換してもよい。例えば、ビュー画像は、左端のビューから右端のビューまで1から4まで順序付けられてもよい。シフト値は、各ビュー画像の相対位置に依存し得る。一部の実施形態では、ビュー画像のうちの1つが、ベースビュー画像として割り当てられ、ベースビュー画像のシフト値は0である。この点において、ビュー画像は、ベースビュー画像に対してシフトされる。
マルチビュー画像生成システムは、プロセッサに、選択されたマルチビュー画像層のビュー画像をシフト319させる命令を実行するように構成される。例えば、プロセッサは、対応するシフト値に従って、選択された第1のマルチビュー画像層のビュー画像をシフトしてもよい。この例は、図6に関して上述している。
マルチビュー画像生成システムは、プロセッサに、マルチビュー画像層を自動的にレンダリング322させる命令を実行するように構成される。例えば、プロセッサは、複数のマルチビュー画像層を、マルチビューディスプレイ上の合成マルチビュー画像として所定の順番で自動的にレンダリングしてもよい。この例は、図7に関して上述している。更に、マルチビュー画像生成システムは、各マルチビュー画像層の画素をマルチビューディスプレイのインターレース位置にマッピングすることによって、複数のマルチビュー画像層を所定の順番で反復的にレンダリングするように構成されるシェダーを含み得る。他の実施形態では、各マルチビュー画像層を所定の順番でレンダリングするとき、自動レンダリング中に現在のマルチビュー画像層をブレンドしてもよい。この点において、プロセッサは、第1のマルチビュー画像層の各ビュー画像を、複数のマルチビュー画像層の第2のマルチビュー画像層の対応するビュー画像とブレンドしてもよい。
上述した図9のフローチャートは、マルチビュー画像を生成するシステム又は方法、及び実行可能命令セットの実装を示し得る。ソフトウェアで実施される場合、各ボックスは、指定された論理機能を実施するための命令を含むモジュール、セグメント、又はコードの一部を表し得る。命令は、プログラミング言語で書かれた人間可読ステートメントを含むソースコード、ソースコードからコンパイルされたオブジェクトコード、又は適切な実行システム、例えばコンピュータデバイスのプロセッサ、によって認識可能な数値命令を含むマシンコードの形態で具現化され得る。マシンコードは、ソースコードなどから変換されてもよい。ハードウェアで具現化される場合、各ブロックは、指定された論理機能を実装するための回路又は複数の相互接続された回路を表してもよい。
図9のフローチャートは特定の実行順序を示しているが、実行順序は図示されているものとは異なり得ることが理解される。例えば、2つ以上のボックスの実行順序は、示した順序に対してスクランブルされてもよい。また、示した2つ以上のボックスは、同時に又は部分的に一致して実行されてもよい。更に、一部の実施形態では、ボックスの1つ又は複数をスキップ又は省略してもよい。
図10は、本明細書で説明する原理と一致する一実施形態による、マルチビュー画像を深度マップから生成する一例を示している。図10は、命令セットを実行するコンピュータデバイス(例えば、図12のマルチビューディスプレイシステム)によって実装される異なるタイプの機能の一例を提供する。図10はまた、コンピュータシステムのプロセッサによって実行されると、深度マップを使用してマルチビュー画像を生成するための動作を実施する実行可能命令を記憶する非一時的コンピュータ可読記憶媒体の一実施形態を示している。
図10は、シングルビュー画像を第1のマルチビュー画像層に割り当てる動作を示している。動作は、第1のマルチビュー画像層の深度マップをロードすること、を更に含む。更に、動作は、深度マップのサイズ及び形状の一方又は両方を変更すること、を含む。動作は、シングルビュー画像から、及び第1のマルチビュー画像層の変更された深度マップから複数のビュー画像を合成することと、マルチビューディスプレイ上の合成マルチビュー画像として、第1のマルチビュー画像層及び第2のマルチビュー画像層を所定の順番で自動的にレンダリングすることと、を更に含む。
具体的には、図10は、深度マップ402を示している。深度マップは、画像ファイル内でフォーマットされてもよく、そうでなければ画素アレイを含んでもよい。深度マップは、各画素の画素値405を含むことができ、画素値は画素の深度設定を指定する。深度マップは、グレースケール画像として視覚化され得る。深度マップ402は、画素ごとに2D画像の深度を制御するために、シングルビュー画像に適用され得る。図10の例は、球の形状を反映する深度マップを示し、球の中心に向かう画素は、視聴者に近い位置を示す一方で、球の縁に向かう画素は、視聴者から遠く離れた位置を示している。シングルビュー画像408が、深度マップ402によって定義された深度特性を採用するように、深度マップ402は、シングルビュー画像408に適用される。シングルビュー画像408は、ユーザインターフェース411でユーザに提示され得る。深度マップ402は、シングルビュー画像408内の対象の縁に適合するように、スケーリングされ、スキューされ、サイズ変更され、再成形され、又は他の方法で歪められてもよい。ユーザは、深度マップ402(又はシングルビュー画像)の様々な角又は縁をドラッグして、深度マップ402をシングルビュー画像408に位置合わせし得る。この点において、初期深度マップ402aは、変更された深度マップ402bを生成するためにユーザによって調整され得る。シングルビュー画像408は、複数のマルチビュー画像層のうちのマルチビュー画像層に割り当てられ得る。ビュー合成器415は、変更された深度マップ402bをシングルビュー画像408に適用して、マルチビュー画像418のビュー画像を生成し得る。したがって、ビュー画像は、選択されていないマルチビュー画像層のビュー画像を維持しつつ、選択されたマルチビュー画像層又は特定のマルチビュー画像層に対して合成され得る。
更に説明すると、マルチビュー画像は、シングルビュー画像を第1のマルチビュー画像層に割り当てることによって生成されてもよい。上述したように、ユーザは、シングルビュー画像408をアプリケーション(例えば、図3のアプリケーション203)にインポートし得る。マルチビュー画像層データを更新して割り当てを反映することによって、シングルビュー画像は、マルチビュー画像層に割り当てられ得る。シングルビュー画像を第1のマルチビュー画像層に割り当てることによって、シングルビュー画像408に対して実施される画像編集動作は、他のマルチビュー画像層に影響を与えることなく、第1のマルチビュー画像層のみに制限され得る。
動作は、第1のマルチビュー画像層の深度マップ402をロードすることを更に含む。深度マップ402は、リポジトリ、例えば、ローカルメモリ又はリモートサーバ内の画像ファイルとして記憶され得る。深度マップ402は、画像をグレースケール画像に変換しているユーザによって生成され得る。動作は、深度マップ402のサイズ及び形状の一方又は両方を変更すること、を含む。ユーザは、初期深度マップ402aが変更された深度マップ402bになるように、深度マップ402の形状又はサイズを変更し得る。ユーザインターフェース411は、シングルビュー画像408上に深度マップ402をオーバーレイし、ユーザ入力を受信して深度マップ402のサイズ及び形状の一方又は両方を変更するように構成され得る。例えば、ユーザは、カーソル、タッチスクリーン、又は他の入力機構を使用して、深度マップ402の形状及びサイズをストレッチし、スキューし、拡大し、又は縮小してもよい。深度マップ402又はシングルビュー画像408は、ユーザが深度マップ402及びシングルビュー画像408の両方を見ることを可能にするために部分的に透明であってもよい。ユーザは、深度マップ402を移動し、調整し、又は変更して、それを位置合わせするか、そうでなければ深度マップ402の形状をシングルビュー画像408内の対象又は特徴の形状に適合させ得る。アプリケーションにより、ユーザは、深度マップ402内の特徴の境界又は縁をシングルビュー画像408内の特徴の境界又は縁に一致させ得る。図10の例は、初期深度マップ402aを変更された深度マップ402bになるようにサイズ変更することによって、深度マップ402の球面特徴がどのように拡大され、スケーリングされてシングルビュー画像408の球面特徴に適合するかを示している。
深度マップ402がサイズ変更又は再形成されると、動作は、シングルビュー画像408から、及び第1のマルチビュー画像層の変更された深度マップ402bから複数のビューを合成すること、を含む。ビュー合成器415が、ビュー合成を実施するために使用され得る ビュー合成器415は、変更された深度マップ402b及びシングルビュー画像408から目標数のビュー画像を生成し得る。ビュー合成器415は、シングルビュー画像408を外挿して、1つ又は複数の新規のビュー画像を生成し得る。ビュー合成は、非遮蔽領域を埋めるなどのために近くの領域をサンプリングするための順方向ワーピング、深度テスト、及びインペインティング技術のうちの1つ又は複数を含み得る。順方向ワーピングは、ソース画像に変換を適用する画像歪みプロセスである。ソース画像からの画素は、走査線順に処理することができ、結果は、ターゲット画像に投影される。深度試験は、シェダーによって処理される、又は処理されるべき画像のフラグメントが、書き込まれているサンプルの深度に関してテストされる深度値を有するプロセスである。フラグメントは、試験が失敗したときに破棄される。また、深度バッファは、試験に合格したときにフラグメントの出力深度で更新される。インペインティングとは、画像の欠落又は未知の領域の塗りつぶしを指す。いくつかの技術は、近くの画素に基づいて画素値を予測すること、又は近くの画素を未知又は欠落領域に反映させること、を含む。画像の欠落領域又は未知の領域は、別のシーン対象によって部分的に覆われているシーン対象を指すシーンの非遮蔽から生じ得る。この点において、ビュー合成は、元の視点からシーンの新規の視点を構築するための画像処理技術を含み得る。ビュー合成は、ニューラルネットワークを使用して複数のビュー画像を予測すること、を含み得る。ニューラルネットワークは、訓練データを使用して訓練され得る。訓練データは、対応する深度マップと共にマルチビュー画像を含み得る。
ビュー画像が合成されると、コンピュータシステムは、マルチビューディスプレイ上の合成マルチビュー画像として、第1のマルチビュー画像層及び第2のマルチビュー画像層を所定の順番で自動的にレンダリングすることを含む追加の動作を実施し得る。マルチビュー画像層を所定の順番でレンダリングする例は、図7に関して上述した。一部の実施形態では、自動レンダリングは、各ビュー画像の画素をマルチビューディスプレイのインターレース位置にマッピングすることによって実施される。マルチビュー画像層の様々なビューの画素をインターレースする例は、図8に関して上述した。
図11は、本明細書で説明する原理と一致する実施形態による、ユーザがマルチビュー画像を生成し、編集し得るアプリケーションのユーザインターフェースの例を示している。ユーザインターフェース502は、アプリケーション、例えば図3のアプリケーション203によって提供されてもよい。ユーザインターフェース502により、ユーザは、シングルビュー画像をロードし、それらをマルチビュー画像に変換し、様々なマルチビュー画像を層化し、選択された層を編集し、様々なマルチビュー画像層のマルチビューパラメータを調整し、マルチビュー画像に対して編集が行われると、結果をマルチビューディスプレイ上にリアルタイムで視覚化し得る。ユーザインターフェース502は、編集中の画像を表示する画像領域506を含む。画像領域506は、ユーザによる最新の編集によって処理された画像を提示する。この点において、ユーザがマルチビュー画像を編集すると、アプリケーションは、マルチビュー画像を自動的にレンダリングし、画像領域506に提示する。
ユーザインターフェース502はまた、2D/マルチビュートグルスイッチ509を含み得る。2D/マルチビュートグルスイッチ509は、ユーザが編集画像の提示を、「2D」と「マルチビュー」との間で切り替え得る。2D/マルチビュートグルスイッチ509が、「2D」に設定されると、画像領域506は、編集された画像を2D画像として提示する。ユーザが、画像編集操作を実施するためにマルチビュー画像の特定の部分を選択することが容易であり得るので、2Dで提示される画像の編集は、場合によっては便利であり得る。更に、ベース画像ビューは、「2D」ビューオプションが選択されたときに、ユーザに提示される。次いで、ベース画像ビューに行われた編集は、他のビューに自動的に適用され得る。2D/マルチビュートグルスイッチ509が、「マルチビュー」に設定されるとき、画像領域506は、編集された画像をマルチビュー画像として提示する。
ユーザインターフェース502はまた、深度コントローラ512を含み得る。深度コントローラ512は、ユーザが深度設定を入力し得るようにするために、図5のユーザインターフェース要素225と同様であってもよい。深度コントローラ512を使用して、選択されたマルチビュー画像層に、又は選択されたマルチビュー画像層の選択された部分に深度設定を適用し得る。例えば、ユーザが特定のマルチビュー画像の深度設定を変更すると、マルチビュー画像は自動的にレンダリングされ、ユーザは深度設定に追従する深度を知覚し得る。
ユーザインターフェース502はまた、マルチビュー画像層リスト515を含み得る。マルチビュー画像層リスト515は、マルチビュー画像層の順序付きリストを含むマルチビュー画像層データをユーザに伝え得る。ユーザは、1つ又は複数のマルチビュー画像層を選択して、選択されたマルチビュー画像層にのみ画像編集操作を適用し得る。この例では、図11は、「MV層2」が選択されている一方で、「MV層1」及び「MV層3」は、選択されていないことを示している。その結果、画像編集操作(例えば、深度設定の調整、画像の移動など)は、「MV層2」のビュー画像に対してのみ適用する。また、ユーザは、マルチビュー画像層リスト515に反映されるマルチビュー画像層の順序を変更し得る。順序は、マルチビュー画像層が下から上にレンダリングされる順番を指定し得る。この例では、「MV層1」は、下部マルチビュー画像層の名前であり、「MV層2」は、中間マルチビュー画像層の名前であり、「MV層3」は、上部マルチビュー画像層の名前である。
ユーザインターフェース502は、選択ツール518のためのメニューを有し得る。選択ツール518は、ユーザが画像領域506に示される画素を選択し得る様々なユーザインターフェース要素を含み得る。例えば、ユーザは、投げ縄ツールを使用して画素のグループを選択しても、ユーザは、色又は色範囲に対応する画素を選択しても、あるいはユーザは、画像領域506内の編集画像の特徴の境界又は縁内にある画素を選択してもよい。様々な画像編集操作は、選択された画素に選択的に適用され得る。
ユーザインターフェース502は、画像521をインポートするためのメニューを含み得る。画像521をインポートするメニューは、シングルビュー画像を含む画像のストレージリポジトリへのアクセスを提供し得る。この点において、シングルビュー画像は、ユーザインターフェース502を使用してインポートされ得る。ユーザインターフェース502は、スタイル524のメニューを含み得る。スタイル524は、編集された画像を変換してスタイル524の視覚的特性を取得するフィルタ、テクスチャ、パターン、又は色スキームである。スタイル524は、マルチビュー画像だけでなくシングルビュー画像にも適用され得る。
ユーザインターフェース502は、画像編集ツール527を含み得る。画像編集ツール527により、ユーザは、形状を描くこと、塗りつぶしを追加すること、色を消去すること、テキストを追加すること、又は他の方法でビジュアルコンテンツを生成し得る。画像編集ツール527はまた、鮮鋭化、フェザリング、ぼかし、汚れ、旋回、画素色の混合、又は新規の画像若しくはグラフィックコンテンツの生成、を含む視覚特性を変更するためのツールを含む。シングルビュー画像は、画像編集ツールを使用して最初から生成され、次に深度を変更することによってマルチビュー画像に変換され得る。
ユーザインターフェース502は、ブレンドツール530を含み得る。ブレンドとは、マルチビュー画像層が所定の順番でレンダリングされるときに、様々なマルチビュー画像層の画素値をブレンドすることを指す。ブレンドツール530は、レンダリング中にどのマルチビュー画像層がブレンドされるか、並びに適用すべき任意のブレンド機能を指定し得る。
ユーザインターフェース502は、深度マップ533をロードするためのメニューを含み得る。例えば、ユーザインターフェース502は、図10のユーザインターフェース411と同様に動作して、ユーザが特定の深度マップ(例えば、図10の深度マップ402)を選択し、ロードすることを可能にする。ユーザインターフェース502は、マルチビューパラメータ536を選択するためのメニューを含み得る。マルチビューパラメータ536は、マルチビュー画像をフォーマットする方法に固有のパラメータを含む。マルチビューパラメータは、図5のマルチビューパラメータ231と同様であってもよい。例えば、マルチビューパラメータ536は、ベースライン、ビューの数、又はビューの方向を含んでもよい。ユーザインターフェース502は、画像539を保存するためのメニューを含み得る。ユーザは、画像を保存するときにマルチビューファイルフォーマットを指定し得る。
したがって、ユーザインターフェース502により、ユーザは、シングルビュー画像からマルチビュー画像を生成し、それらの編集が行われるときにマルチビュー画像に対して行われた編集をリアルタイムで見ることが可能になる。様々な時点で別個のビューを生成するのではなく、ユーザインターフェースは、シングルビュー画像を、選択されたマルチビュー画像層内のマルチビュー画像に変換し、ユーザがマルチビュー画像の深度及び他のマルチビューパラメータを調整することを可能にする。マルチビューパラメータ及び画像編集動作がシングルビュー画像に適用されると、様々なビューの生成及び編集が自動的に行われる。
図12は、本明細書で説明する原理と一致する一実施形態による、マルチビューディスプレイシステム1000の1つの例示的な図を示す概略ブロック図を示している。マルチビューディスプレイシステム1000は、マルチビューディスプレイシステム1000のユーザのために様々なコンピューティング動作を実行する構成要素のシステムを含み得る。マルチビューディスプレイシステム1000は、ラップトップ、タブレット、スマートフォン、タッチスクリーンシステム、インテリジェントディスプレイシステム、コンピュータデバイス、又は他のクライアントデバイスであってもよい。マルチビューディスプレイシステム1000は、様々な構成要素、例えば、プロセッサ1003、メモリ1006、入出力(I/O)構成要素1009、ディスプレイ1012、及び潜在的に他の構成要素を含み得る。これらの構成要素は、マルチビューディスプレイシステム1000の構成要素が互いに通信し得るローカルインターフェースとして機能するバス1015に結合し得る。マルチビューディスプレイシステム1000の構成要素が、マルチビューディスプレイシステム1000内に収容されるように示しているが、構成要素の少なくとも一部は、外部接続を通してマルチビューディスプレイシステム1000に結合し得ることを理解されたい。例えば、構成要素は、外部ポート、ソケット、プラグ、又はコネクタを介してマルチビューディスプレイシステム1000に外部から差し込むか、又は他の方法で接続してもよい。
プロセッサ1003は、中央処理装置(CPU)、グラフィックス処理装置(GPU)、コンピューティング処理動作を実施する任意の他の集積回路、又はそれらの任意の組合せであってもよい。プロセッサ1003は、1つ又は複数の処理コアを含み得る。プロセッサ1003は、命令を実行する回路を備える。命令は、例えば、コンピュータコード、プログラム、論理、又は命令に組み込まれた計算機能を実行するためにプロセッサ1003によって受信され、実行される他の機械可読命令を含む。プロセッサ1003は、データ上で動作するための命令を実行し得る。例えば、プロセッサ1003は、入力データ(例えば、画像)を受信し、命令セットに従って入力データを処理し、出力データ(例えば、処理された画像)を生成してもよい。別の例として、プロセッサ1003は、命令を受信し、後続の実行のために新規の命令を生成してもよい。プロセッサ1003は、画像をレンダリングするシェダー、例えば、図7に関して上述したシェダー240を実装するハードウェアを備え得る。例えば、プロセッサ1003は、1つ又は複数のGPUコア、ベクトルプロセッサ、スケーラプロセス、又はグラフィックスパイプラインを実装するハードウェアアクセラレータを備えてもよい。
メモリ1006は、1つ又は複数のメモリ構成要素を含み得る。メモリ1006は、本明細書では、揮発性メモリ及び不揮発性メモリのいずれか又は両方を含むものとして定義される。揮発性メモリ構成要素は、電力喪失時に情報を保持しないものである。揮発性メモリは、例えば、ランダムアクセスメモリ(RAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、磁気ランダムアクセスメモリ(MRAM)、又は他の揮発性メモリ構造を含み得る。システムメモリ(例えば、メインメモリ、キャッシュなど)は、揮発性メモリを使用して実装されてもよい。システムメモリは、プロセッサ1003を支援するために迅速な読み出し及び書き込みアクセスのためのデータ又は命令を一時的に記憶し得る高速メモリを指す。
不揮発性メモリ構成要素は、電力喪失時に情報を保持するものである。不揮発性メモリは、読み出し専用メモリ(ROM)と、ハードディスクドライブと、ソリッドステートドライブと、USBフラッシュドライブと、メモリカードリーダを介してアクセスされるメモリカードと、関連するフロッピーディスクドライブを介してアクセスされるフロッピーディスクと、光ディスクドライブを介してアクセスされる光ディスクと、適切なテープドライブを介してアクセスされる磁気テープと、を含む。ROMは、例えば、プログラマブル読み出し専用メモリ(PROM)、消去可能プログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、又は他の同様のメモリデバイスを含んでもよい。ストレージメモリは、データ及び命令の長期保持を提供するために不揮発性メモリを使用して実装されてもよい。
メモリ1006は、命令及びデータを記憶するために使用される揮発性メモリと不揮発性メモリとの組合せを指し得る。例えば、データ及び命令は、不揮発性メモリに記憶され、プロセッサ1003による処理のために揮発性メモリにロードされてもよい。命令の実行は、例えば、不揮発性メモリから揮発性メモリにロードされ、次いでプロセッサ1003によって実行され得るフォーマットのマシンコードに変換されるコンパイルされたプログラム、好適なフォーマットに変換されるソースコード、例えば、プロセッサ1003による実行のために、揮発性メモリにロードされ得るオブジェクトコード、又は揮発性メモリ中に命令を生成するために別の実行可能プログラムによって解釈され、プロセッサ1003によって実行されるソースコードなどを含んでもよい。命令は、例えば、RAM、ROM、システムメモリ、ストレージ、又はそれらの任意の組合せを含むメモリ1006の任意の部分又は構成要素に記憶又はロードされてもよい。
メモリ1006は、マルチビューディスプレイシステム1000の他の構成要素とは別個のものとして示しているが、メモリ1006は、少なくとも部分的に、1つ又は複数の構成要素に埋め込まれるか、そうでなければ統合されてもよいことを理解されたい。例えば、プロセッサ1003は、処理動作を実行するためのオンボードメモリレジスタ又はキャッシュを含んでもよい。
I/O構成要素1009は、例えば、タッチスクリーン、スピーカ、マイクロフォン、ボタン、スイッチ、ダイヤル、カメラ、センサ、加速度計、又はユーザ入力を受信するか、又はユーザに向けられた出力を生成する他の構成要素を含む。I/O構成要素1009は、ユーザ入力を受信し、メモリ1006に記憶するために、又はプロセッサ1003による処理のために、ユーザ入力をデータに変換し得る。I/O構成要素1009は、メモリ1006又はプロセッサ1003によって出力されたデータを受信し、それらをユーザによって知覚されるフォーマット(例えば、音、触覚応答、視覚情報など)に変換し得る。上述のユーザインターフェースは、I/O構成要素1009、例えば、キーボード、タッチスクリーン、又はマウスなどを介してユーザ入力を受信し得る。
特定のタイプのI/O構成要素1009は、ディスプレイ1012である。ディスプレイ1012は、マルチビューディスプレイ(例えば、マルチビューディスプレイ112)を含み得る。I/O構成要素1009として機能する静電容量式タッチスクリーン層をディスプレイ内に積層して、ユーザが視覚出力を同時に知覚しつつ、入力を提供することを可能にする。プロセッサ1003は、ディスプレイ1012上に提示するための画像としてフォーマットされたデータを生成し得る。プロセッサ1003は、ユーザによって知覚されるためにディスプレイ上に画像をレンダリングするための命令を実行し得る。
バス1015は、プロセッサ1003と、メモリ1006と、I/O構成要素1009と、ディスプレイ1012と、マルチビューディスプレイシステム1000の任意の他の構成要素との間の命令及びデータの通信を容易にする。バス1015は、データ及び命令の通信を可能にするために、アドレス変換器、アドレスデコーダ、ファブリック、導電性トレース、導線、ポート、プラグ、ソケット、及び他のコネクタを含み得る。
メモリ1006内の命令は、ソフトウェアスタックの少なくとも一部を実装するように、様々な形態で具現化され得る。例えば、命令は、オペレーティングシステム1031、アプリケーション1034、デバイスドライバ(例えば、ディスプレイドライバ1037)、ファームウェア(例えば、ディスプレイファームウェア1040)、又は他のソフトウェア構成要素として具現化されてもよい。オペレーティングシステム1031は、マルチビューディスプレイシステム1000の基本機能、例えば、タスクをスケジューリングすること、I/O構成要素1009を制御すること、ハードウェアリソースへのアクセスを提供すること、電力を管理すること、及びアプリケーション1034をサポートすること、をサポートするソフトウェアプラットフォームである。
アプリケーション1034は、オペレーティングシステム1031上で実行され、オペレーティングシステム1031を介してマルチビューディスプレイシステム1000のハードウェアリソースにアクセスし得る。この点において、アプリケーション1034の実行は、少なくとも部分的に、オペレーティングシステム1031によって制御される。アプリケーション1034は、高レベルの機能、サービス、及び他の機能を、ユーザに提供するユーザレベルソフトウェアプログラムであってもよい。一部の実施形態では、アプリケーション1034は、マルチビューディスプレイシステム1000上でユーザがダウンロード可能又はアクセス可能な専用の「アプリ」であってもよい。ユーザは、オペレーティングシステム1031によって提供されるユーザインターフェースを介してアプリケーション1034を起動し得る。アプリケーション1034は、開発者によって開発され、様々なソースコードフォーマットで定義され得る。アプリケーション1034は、多数のプログラミング言語又はスクリプト言語、例えば、C、C++、C#、Objective C、Java(登録商標)、Swift、JavaScript(登録商標)、Perl、PHP、Visual Basic(登録商標)、Python(登録商標)、Ruby、Go、又は他のプログラミング言語を使用して開発され得る。アプリケーション1034は、コンパイラによってオブジェクトコードにコンパイルされてもよく、又はプロセッサ1003による実行のためにインタープリタによって解釈されてもよい。アプリケーション1034は、図3のアプリケーション203であり得る。アプリケーション1034はまた、ユーザインターフェース(例えば、ユーザインターフェース411、ユーザインターフェース511)を提供し得る。
デバイスドライバ、例えば、ディスプレイドライバ1037は、オペレーティングシステム1031が様々なI/O構成要素1009と通信することを可能にする命令を含む。各I/O構成要素1009は、それ自体のデバイスドライバを有し得る。デバイスドライバは、ストレージに記憶され、システムメモリにロードされるようにインストールされ得る。例えば、インストール時に、ディスプレイドライバ1037は、オペレーティングシステム1031から受信した高レベルの表示命令を、画像を表示するためにディスプレイ1012によって実施される低レベルの命令に変換する。
ファームウェア、例えば、ディスプレイファームウェア1040は、I/O構成要素1009又はディスプレイ1012が低レベル動作を実施することを可能にするマシンコード又はアセンブリコードを含んでもよい。ファームウェアは、特定の構成要素の電気信号を高いレベルの命令又はデータに変換し得る。例えば、ディスプレイファームウェア1040は、ディスプレイ1012が電圧又は電流信号を調整することによって個々の画素を低レベルでどのように起動するかを制御してもよい。ファームウェアは、不揮発性メモリに記憶され、不揮発性メモリから直接実行されてもよい。例えば、ディスプレイファームウェア1040は、ROMチップがマルチビューディスプレイシステム1000の他のストレージ及びシステムメモリとは別個であるように、ディスプレイ1012に結合されたROMチップに組み込まれてもよい。ディスプレイ1012は、ディスプレイファームウェア1040を実行するための処理回路を含み得る。
オペレーティングシステム1031、アプリケーション1034、ドライバ(例えば、ディスプレイドライバ1037)、ファームウェア(例えば、ディスプレイファームウェア1040)、及び潜在的に他の命令セットはそれぞれ、上述した機能及び動作を実行するためにマルチビューディスプレイシステム1000のプロセッサ1003又は他の処理回路によって実行可能な命令を含み得る。本明細書で説明する命令は、上述したようにプロセッサ1003によって実行されるソフトウェア又はコードで具現化されてもよいが、代替として、命令はまた、専用ハードウェアで、又はソフトウェアと専用ハードウェアとの組合せで、具現化されてもよい。例えば、上述した命令によって実行される機能及び動作は、いくつかの技術のうちの任意の1つ、又はそれらの組合せを使用する回路又はステートマシンとして実装されてもよい。これらの技術は、限定しないが、1つ又は複数のデータ信号の印加時に様々な論理機能を実施するための論理ゲートを有する個別論理回路、適切な論理ゲートを有する特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は他の構成要素などを含み得る。
一部の実施形態では、上述した機能及び動作を実行する命令は、非一時的コンピュータ可読記憶媒体において具現化されてもよい。例えば、実施形態は、コンピュータシステム(例えば、マルチビューディスプレイシステム1000)のプロセッサ(例えば、プロセッサ1003)によって実行されると、シングルビュー画像からマルチビュー画像を生成する動作を含む、上述した様々な機能をプロセッサに実施させる実行可能命令を記憶する非一時的コンピュータ可読記憶媒体に関する。非一時的コンピュータ可読記憶媒体は、マルチビューディスプレイシステム1000の一部であっても、なくてもよい。命令は、例えば、コンピュータ可読媒体からフェッチされ、処理回路(例えば、プロセッサ1003)によって実行され得るステートメント、コード、又は宣言を含んでもよい。本明細書では、「非一時的コンピュータ可読記憶媒体」は、命令実行システム、例えばマルチビューディスプレイシステム1000によって、又はそれに関連して使用するために、本明細書で説明する命令を含み、記憶し、又は維持することができ、更に、例えば搬送波を含む一時的媒体を除外する任意の媒体として定義される。
非一時的コンピュータ可読媒体は、多くの物理媒体、例えば、磁気媒体、光学媒体、又は半導体媒体をのうちのいずれか1つを含み得る。適切な非一時的コンピュータ可読媒体の具体的な例は、磁気テープ、磁気フロッピーディスケット、磁気ハードドライブ、メモリカード、ソリッドステートドライブ、USBフラッシュドライブ、又は光ディスクを含み得るが、これらに限定されない。また、非一時的コンピュータ可読媒体は、例えば、スタティックランダムアクセスメモリ(SRAM)及びダイナミックランダムアクセスメモリ(DRAM)、又は磁気ランダムアクセスメモリ(MRAM)を含むランダムアクセスメモリ(RAM)であってもよい。更に、非一時的コンピュータ可読媒体は、読み出し専用メモリ(ROM)、プログラマブル読み出し専用メモリ(PROM)、消去可能プログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、又は他のタイプのメモリデバイスであってもよい。
マルチビューディスプレイシステム1000は、上述の動作のいずれかを実施するか、又は上述の機能を実装してもよい。例えば、上述したフローチャート及びプロセスフローは、命令を実行し、データを処理するマルチビューディスプレイシステム1000によって実施されてもよい。マルチビューディスプレイシステム1000は単一のデバイスとして示されているが、実施形態はそのように限定されない。一部の実施形態では、マルチビューディスプレイシステム1000は、複数のマルチビューディスプレイシステム1000又は他のコンピュータデバイスが共に動作して、分散配置された状態で記憶又はロードされ得る命令を実行するように、分散方式で命令の処理をオフロードしてもよい。例えば、少なくともいくつかの命令又はデータは、マルチビューディスプレイシステム1000と連携して動作するクラウドベースのシステムに記憶され、ロードされ、又は実行されてもよい。
したがって、シングルビュー画像から生成され得るマルチビュー画像を生成する例及び実施形態について説明した。アプリケーションは、シングルビュー画像を複数のビューに複製し得る。ユーザは、複製されたビュー画像をそれらの相対位置に基づいて別々に自動的にシフトする深度を調整し得る。更に、ユーザは、シングルビューに深度マップを適用し、深度マップから複数のビュー画像を合成し得る。ユーザは、深度マップの形状又はサイズを変更して、シングルビュー画像の特徴に適合させ得る。実施形態は、インポートされたシングルビュー画像からマルチビューコンテンツを生成し、編集するためのユーザレベルアプリケーションに関する。上記で説明した例は、本明細書で説明する原理を表す多くの特定の例のうちの一部の単なる例示であることを理解されたい。明らかに、当業者は、以下の特許請求の範囲によって定義される範囲から逸脱することなく、多数の他の構成を容易に考案し得る。
1 ビュー、MV層
2 ビュー、MV層
3 ビュー、MV層
4 ビュー
103 マルチビュー画像
106 ビュー
109 主角度方向
112 マルチビューディスプレイ
115 広角バックライト
118 マルチビューバックライト
121 モードコントローラ
124 モード選択信号
203 アプリケーション
205 シングルビュー画像
207 マルチビュー画像層データ
210 マルチビュー画像層順序
213 マルチビュー画像層名
216 ビュー画像
219 第1のマルチビュー画像層
222 ビュー画像
225 ユーザインターフェース要素
227 マルチビュー画素
228 深度設定
231 マルチビューパラメータ
234 シフト値
237 第2のマルチビュー画像層
240 シェダー
249 下部マルチビュー画像層
250 中間マルチビュー画像層
251 上部マルチビュー画像層
252 合成マルチビュー画像
253 レンダリングされたマルチビュー画像層
254 レンダリングされたマルチビュー画像層
257 マルチビュー画素
259 ライトバルブアレイ
261 マッピング
304 インポート
307 複製
310 選択
313 受信
316 変換
319 シフト
322 レンダリング
402 深度マップ
402a 初期深度マップ
402b 変更された深度マップ
405 画素値
408 シングルビュー画像
411 ユーザインターフェース
415 ビュー合成器
418 マルチビュー画像
502 ユーザインターフェース
506 画像領域
509 2D/マルチビュートグルスイッチ
511 ユーザインターフェース
512 深度コントローラ
515 マルチビュー画像層リスト
518 選択ツール
521 画像
524 スタイル
527 画像編集ツール
530 ブレンドツール
533 深度マップ
536 マルチビューパラメータ
539 画像
1000 マルチビューディスプレイシステム
1003 プロセッサ
1006 メモリ
1009 入出力(I/O)構成要素
1012 ディスプレイ
1015 バス
1031 オペレーティングシステム
1034 アプリケーション
1037 ディスプレイドライバ
1040 ディスプレイファームウェア
本開示は、以下の[1]から[20]を含む。
[1]マルチビュー画像を生成する方法であって、前記方法が、
シングルビュー画像をアプリケーションにインポートするステップであって、前記シングルビュー画像が、合成マルチビュー画像を形成する複数のマルチビュー画像層のうちの第1のマルチビュー画像層に割り当てられる、ステップと、
前記シングルビュー画像を前記第1のマルチビュー画像層の複数のビュー画像に複製するステップと、
前記第1のマルチビュー画像層の深度設定を含むユーザ入力を受信するステップと、
前記ビュー画像の各々の順序付き番号に基づいて、前記深度設定を、対応するビュー画像のための複数のシフト値に変換するステップと、
前記第1のマルチビュー画像層が選択されたことに応答して、前記対応するシフト値に従って前記第1のマルチビュー画像層の前記ビュー画像をシフトするステップと、
マルチビューディスプレイ上の前記合成マルチビュー画像として前記複数のマルチビュー画像層を所定の順番で自動的にレンダリングするステップと
を含む、方法。
[2]前記シングルビュー画像が、各画素の色チャネル値及び透明度値を含むビットマップフォーマットでフォーマットされる、上記[1]に記載のマルチビュー画像を生成する方法。
[3]前記ビュー画像のうちの1つをベースビュー画像として割り当てるステップを更に含み、前記ベースビュー画像の前記シフト値が0である、上記[1]に記載のマルチビュー画像を生成する方法。
[4]各ビュー画像をシフトするステップが、各ビュー画像の画素を水平方向に沿ってシフトするステップを含む、上記[1]に記載のマルチビュー画像を生成する方法。
[5]前記第1のマルチビュー画像層の各ビュー画像を、前記複数のマルチビュー画像層のうちの第2のマルチビュー画像層の対応するビュー画像とブレンドするステップを更に含む、上記[1]に記載のマルチビュー画像を生成する方法。
[6]前記合成マルチビュー画像として前記複数のマルチビュー画像層を前記所定の順番で自動的にレンダリングするステップが、前記所定の順番によって定義された上部マルチビュー画像層をレンダリングするステップを含む一方で、前記上部マルチビュー画像層の透明領域を省略するステップも含む、上記[1]に記載のマルチビュー画像を生成する方法。
[7]前記合成マルチビュー画像として前記複数のマルチビュー画像層を前記所定の順番で自動的にレンダリングするステップが、各ビュー画像の画素を前記マルチビューディスプレイのインターレース位置にマッピングするステップを含む、上記[1]に記載のマルチビュー画像を生成する方法。
[8]前記第1のマルチビュー画像層の領域を選択し、前記選択された領域内に入る前記ビュー画像の一部を選択的にシフトするステップを更に含む、上記[1]に記載のマルチビュー画像を生成する方法。
[9]前記合成マルチビュー画像をユーザ指定のマルチビューファイルフォーマットでフォーマットすることをさらに含む、上記[1]に記載のマルチビュー画像を生成する方法。
[10]マルチビュー画像生成システムであって、
マルチビューディスプレイと、
プロセッサと、
複数の命令を記憶するメモリであって、前記命令が実行されると、前記プロセッサに、
合成マルチビュー画像を形成する複数のマルチビュー画像層の中から第1のマルチビュー画像層を選択することであって、前記第1のマルチビュー画像層が、複数のビュー画像を含む、選択することと、
前記第1のマルチビュー画像層の深度設定を含むユーザ入力を受信することと、
前記ビュー画像の各々の順序付き番号に基づいて、前記深度設定を、対応するビュー画像のための複数のシフト値に変換することと、
前記対応するシフト値に従って前記選択された第1のマルチビュー画像層の前記ビュー画像をシフトすることと、
前記マルチビューディスプレイ上の前記合成マルチビュー画像として前記複数のマルチビュー画像層を所定の順番で自動的にレンダリングすることと
を実施させる、メモリと
を備える、マルチビュー画像生成システム。
[11]前記複数のビュー画像が、シングルビュー画像から複製された同一のビュー画像である、上記[10]に記載のマルチビュー画像生成システム。
[12]前記ビュー画像のうちの1つが、ベースビュー画像として割り当てられ、前記ベースビュー画像の前記シフト値が0である、上記[10]に記載のマルチビュー画像生成システム。
[13]前記複数の命令が、実行されると、前記プロセッサに、
前記第1のマルチビュー画像層の各ビュー画像を、前記複数のマルチビュー画像層のうちの第2のマルチビュー画像層の対応するビュー画像とブレンドすること
を更に実施させる、上記[10]に記載のマルチビュー画像生成システム。
[14]各マルチビュー画像層の画素を前記マルチビューディスプレイのインターレース位置にマッピングすることによって、前記複数のマルチビュー画像層を前記所定の順番で反復的にレンダリングするように構成されるシェダーを更に備える、上記[10]に記載のマルチビュー画像生成システム。
[15]前記マルチビューディスプレイが、広角バックライトを使用して2次元(2D)モード中に広角放射光を提供するように構成され、
前記マルチビューディスプレイが、マルチビーム要素のアレイを有するマルチビューバックライトを使用してマルチビューモード中に指向性放射光を提供するように構成され、前記指向性放射光が、前記マルチビーム要素アレイの各マルチビーム要素によって提供された複数の指向性光ビームを含み、
前記マルチビューディスプレイが、前記2Dモードに対応する第1の順次時間間隔中に前記広角バックライトを、前記マルチビューモードに対応する第2の順次時間間隔中に前記マルチビューバックライトを、順次アクティブ化するために、モードコントローラを使用して前記2Dモードと前記マルチビューモードとを時間多重化するように構成され、
複数の前記指向性光ビームの指向性光ビームの方向が、前記合成マルチビュー画像の様々なビュー方向に対応する、上記[10]に記載のマルチビュー画像生成システム。
[16]前記マルチビューディスプレイが、導波光としてライトガイド内の光を導くように構成され、
前記マルチビューディスプレイが、前記マルチビーム要素アレイのマルチビーム要素を使用して、前記導波光の一部を前記指向性放射光として散乱させるように構成され、前記マルチビーム要素アレイの各マルチビーム要素が、回折格子、微小屈折要素、及び微小反射要素のうちの1つ又は複数を備える、上記[15]に記載のマルチビュー画像生成システム。
[17]実行可能命令を記憶する非一時的コンピュータ可読記憶媒体であって、
前記実行可能命令が、コンピュータシステムのプロセッサによって実行されると、深度マップからマルチビュー画像を生成するための動作を実施することが、
シングルビュー画像を第1のマルチビュー画像層に割り当てることと、
前記第1のマルチビュー画像層の前記深度マップをロードすることと、
変更された深度マップを提供するために、前記深度マップのサイズ及び形状の一方又は両方を変更することと、
前記シングルビュー画像から、及び前記第1のマルチビュー画像層の前記変更された深度マップから、複数のビュー画像を合成することと、
マルチビューディスプレイ上の合成マルチビュー画像として、前記第1のマルチビュー画像層、及び第2のマルチビュー画像層を所定の順番で自動的にレンダリングすることと
を含む、非一時的コンピュータ可読記憶媒体。
[18]複数のビュー画像を合成することが、ニューラルネットワークを使用して前記複数のビュー画像を予測することを含む、上記[17]に記載の非一時的コンピュータ可読記憶媒体。
[19]自動的にレンダリングすることが、各ビュー画像の画素を前記マルチビューディスプレイのインターレース位置にマッピングすることを含む、上記[17]に記載の非一時的コンピュータ可読記憶媒体。
[20]ユーザインターフェースが、前記シングルビュー画像上に前記深度マップをオーバーレイし、前記深度マップのサイズ及び形状の一方又は両方を変更するためのユーザ入力を受信するように構成される、上記[17]に記載の非一時的コンピュータ可読記憶媒体。
本明細書で説明する原理による例及び実施形態の種々の特徴は、添付の図面と共に以下の発明を実施するための形態を参照して容易に理解され、同様の参照番号は同様の構造要素を指定する。
一部の実施形態では、深度マップは、シングルビュー画像を、深度マップによって定義された深度プロファイルを採用するマルチビュー画像に変換するために、シングルビュー画像にロードされ、適用されてもよい。深度マップは、画素アレイ(例えば、ビットマップ)であってもよく、画素の各画素値は、画素の位置における深度設定を表す。次いで、シングルビュー画像に深度マップを適用して、シングルビュー画像が深度マップの深度特性を採用することを可能にする。例えば、深度マップは、深度(例えば、凸状、凹状、立方体、ピラミッド)を有する様々な形状を定義し、深度マップを、シングルビュー画像に適用することによって、シングルビュー画像をマルチビュービューに変換してもよい。深度マップは、シングルビュー画像によって表される対象の形状及びサイズに適合するように変更され(例えば、ストレッチしてスキューされ、クロップされ)得る。ビュー合成は、変更された深度マップ及びシングルビュー画像から複数のビュー画像を生成するために実施され得る。
2Dモードでは、広角バックライト115を使用して、マルチビューディスプレイ112が2Dディスプレイのように動作するように、画像を生成し得る。定義により、「広角」放射光は、マルチビュー画像又はマルチビューディスプレイのビューの円錐角よりも大きい円錐角を有する光として定義される。特に、一部の実施形態では、広角放射光は、約20度より大きい(例えば、>±20°)円錐角を有してもよい。他の実施形態では、広角放射光円錐角は、約30度より大きくてもよく(例えば、>±30°)、又は約40度より大きくてもよく(例えば、>±40°)、又は50度より大きくてもよい(例えば、>±50°)。例えば、広角放射光の円錐角は、約60度より大きくてもよい(例えば、>±60°)。
本明細書で使用する場合、冠詞「a」は、特許技術におけるその通常の意味、すなわち「1つ又は複数」を有することを意図している。例えば、「プロセッサ(a processor)」は1つ又は複数のプロセッサ(processors)を意味し、したがって、本明細書では、「プロセッサ(the processor)」は、「プロセッサ(the processor(s))」を意味する。また、本明細書では「そのメモリ(the memory)」は「1つ又は複数のメモリ構成要素」を意味する。
図6はまた、第1のマルチビュー画像層219に割り当てられたすべてのコンテンツが深度設定228に応じてどのようにシフトされるかを示している。いくつかの実施形態は、第1のマルチビュー画像層219の領域を選択し、選択された領域内に入るビュー画像の一部を選択的にシフトすることを含む。例えば、ユーザは、ボックス(又は任意の他の形状)を描くこと、特定の色を選択すること、又は任意の他の画素位置選択を行うことによって、第1のマルチビュー画像層219の一部を選択してもよい。その後、深度設定は、選択されたマルチビュー画像層の選択された領域にのみに適用される。例えば、第1のマルチビュー画像層219のビュー画像は、様々な特徴(例えば、身体、腕、頭部など)を有する人を表してもよい。ユーザは、深度設定が特徴の画素にのみ適用されるように、特徴(又はその一部)を選択し得る。
一部の実施形態では、マルチビュー画像を生成する動作は、第1のマルチビュー画像層の各ビュー画像を、複数のマルチビュー画像層の第2のマルチビュー画像層の対応するビュー画像とブレンドすることを含む。例えば、マルチビュー画像層は、自動レンダリング処理の順番中にブレンドされてもよい。例えば、中間マルチビュー画像層250(例えば、第2のマルチビュー画像層)を下部マルチビュー画像層249(例えば、第1のマルチビュー画像層)にペイントするとき、シェダー240は、下部マルチビュー画像層249を中間マルチビュー画像層250の画素値で完全に上書きするのではなく、様々なマルチビュー画像層の画素値をブレンドしてもよい。ブレンドは、上部マルチビュー画像層の画素値を、ペイントされた下部マルチビュー画像層の画素値と平均化することを含み得る。ブレンドは、2つの画素の色値を平均化又は他の様態でマージするための画素ごとの動作を含み得る。この点において、ペイントされているマルチビュー画像層は、以前にペイントされたマルチビュー画像層とブレンドされる。したがって、レンダリング処理中にブレンドが行われる場合がある。
インターレースされたビューは、4つのビューの各々からの画素を有するマルチビュー画素257をもたらし得る。一部の実施形態では、マルチビュー画素は、図8に示すように、特定の方向に互い違いに配置されてもよく、マルチビュー画素は、垂直に互い違いに配置されながら水平に整列される。他の実施形態では、マルチビュー画素は、水平方向に互い違いに配置され、垂直方向に整列されてもよい。マルチビュー画素がインターレース及び互い違いになる特定の方法は、マルチビューディスプレイ112の設計、及びそのマルチビュー構成に依存し得る。レンダリングされたマルチビュー画像層254は、画素をインターレースし、その画素をマルチビュー画素に配置して、それらをマルチビューディスプレイ112の物理画素(例えば、ライトバルブアレイ259)にマッピングできるようにする。言い換えれば、レンダリングされたマルチビュー画像層254の画素座標は、マルチビューディスプレイ112の物理的な位置に対応する。マルチビュー画素257は、ライトバルブアレイ259内のライトバルブの特定のセットへのマッピング261を有する。ライトバルブアレイ259は、レンダリングされたマルチビュー画像層254に従って光を変調するように制御される。追加のマルチビュー画像層は、追加のレンダリングされたマルチビュー画像層を生成するためにシェダー240によって処理され、その後、その下のレンダリングされたマルチビュー画像層の上にペイントされる。
具体的には、図10は、深度マップ402を示している。深度マップは、画像ファイル内でフォーマットされてもよく、そうでなければ画素アレイを含んでもよい。深度マップは、各画素の画素値405を含むことができ、画素値405は画素の深度設定を指定する。深度マップは、グレースケール画像として視覚化され得る。深度マップ402は、画素ごとに2D画像の深度を制御するために、シングルビュー画像に適用され得る。図10の例は、球の形状を反映する深度マップを示し、球の中心に向かう画素は、視聴者に近い位置を示す一方で、球の縁に向かう画素は、視聴者から遠く離れた位置を示している。シングルビュー画像408が、深度マップ402によって定義された深度特性を採用するように、深度マップ402は、シングルビュー画像408に適用される。シングルビュー画像408は、ユーザインターフェース411でユーザに提示され得る。深度マップ402は、シングルビュー画像408内の対象の縁に適合するように、スケーリングされ、スキューされ、サイズ変更され、再成形され、又は他の方法で歪められてもよい。ユーザは、深度マップ402(又はシングルビュー画像)の様々な角又は縁をドラッグして、深度マップ402をシングルビュー画像408に位置合わせし得る。この点において、初期深度マップ402aは、変更された深度マップ402bを生成するためにユーザによって調整され得る。シングルビュー画像408は、複数のマルチビュー画像層のうちのマルチビュー画像層に割り当てられ得る。ビュー合成器415は、変更された深度マップ402bをシングルビュー画像408に適用して、マルチビュー画像418のビュー画像を生成し得る。したがって、ビュー画像は、選択されていないマルチビュー画像層のビュー画像を維持しつつ、選択されたマルチビュー画像層又は特定のマルチビュー画像層に対して合成され得る。
ユーザインターフェース502は、画像編集ツール527を含み得る。画像編集ツール527により、ユーザは、形状を描くこと、塗りつぶしを追加すること、色を消去すること、テキストを追加すること、又は他の方法でビジュアルコンテンツを生成し得る。画像編集ツール527はまた、鮮鋭化、フェザリング、ぼかし、汚れ、旋回、画素色の混合、又は新規の画像若しくはグラフィックコンテンツの生成、を含む視覚特性を変更するためのツールを含む。シングルビュー画像は、画像編集ツール527を使用して最初から生成され、次に深度を変更することによってマルチビュー画像に変換され得る。
ユーザインターフェース502は、深度マップ533をロードするためのメニューを含み得る。例えば、ユーザインターフェース502は、図10のユーザインターフェース411と同様に動作して、ユーザが特定の深度マップ(例えば、図10の深度マップ402)を選択し、ロードすることを可能にする。ユーザインターフェース502は、マルチビューパラメータ536を選択するためのメニューを含み得る。マルチビューパラメータ536は、マルチビュー画像をフォーマットする方法に固有のパラメータを含む。マルチビューパラメータ536は、図5のマルチビューパラメータ231と同様であってもよい。例えば、マルチビューパラメータ536は、ベースライン、ビューの数、又はビューの方向を含んでもよい。ユーザインターフェース502は、画像539を保存するためのメニューを含み得る。ユーザは、画像を保存するときにマルチビューファイルフォーマットを指定し得る。
アプリケーション1034は、オペレーティングシステム1031上で実行され、オペレーティングシステム1031を介してマルチビューディスプレイシステム1000のハードウェアリソースにアクセスし得る。この点において、アプリケーション1034の実行は、少なくとも部分的に、オペレーティングシステム1031によって制御される。アプリケーション1034は、高レベルの機能、サービス、及び他の機能を、ユーザに提供するユーザレベルソフトウェアプログラムであってもよい。一部の実施形態では、アプリケーション1034は、マルチビューディスプレイシステム1000上でユーザがダウンロード可能又はアクセス可能な専用の「アプリ」であってもよい。ユーザは、オペレーティングシステム1031によって提供されるユーザインターフェースを介してアプリケーション1034を起動し得る。アプリケーション1034は、開発者によって開発され、様々なソースコードフォーマットで定義され得る。アプリケーション1034は、多数のプログラミング言語又はスクリプト言語、例えば、C、C++、C#、Objective C、Java(登録商標)、Swift、JavaScript(登録商標)、Perl、PHP、Visual Basic(登録商標)、Python(登録商標)、Ruby、Go、又は他のプログラミング言語を使用して開発され得る。アプリケーション1034は、コンパイラによってオブジェクトコードにコンパイルされてもよく、又はプロセッサ1003による実行のためにインタープリタによって解釈されてもよい。アプリケーション1034は、図3のアプリケーション203であり得る。アプリケーション1034はまた、ユーザインターフェース(例えば、ユーザインターフェース411、ユーザインターフェース502)を提供し得る。

Claims (20)

  1. マルチビュー画像を生成する方法であって、前記方法が、
    シングルビュー画像をアプリケーションにインポートするステップであって、前記シングルビュー画像が、合成マルチビュー画像を形成する複数のマルチビュー画像層のうちの第1のマルチビュー画像層に割り当てられる、ステップと、
    前記シングルビュー画像を前記第1のマルチビュー画像層の複数のビュー画像に複製するステップと、
    前記第1のマルチビュー画像層の深度設定を含むユーザ入力を受信するステップと、
    前記ビュー画像の各々の順序付き番号に基づいて、前記深度設定を、対応するビュー画像のための複数のシフト値に変換するステップと、
    前記第1のマルチビュー画像層が選択されたことに応答して、前記対応するシフト値に従って前記第1のマルチビュー画像層の前記ビュー画像をシフトするステップと、
    マルチビューディスプレイ上の前記合成マルチビュー画像として前記複数のマルチビュー画像層を所定の順番で自動的にレンダリングするステップと
    を含む、方法。
  2. 前記シングルビュー画像が、各画素の色チャネル値及び透明度値を含むビットマップフォーマットでフォーマットされる、請求項1に記載のマルチビュー画像を生成する方法。
  3. 前記ビュー画像のうちの1つをベースビュー画像として割り当てるステップを更に含み、前記ベースビュー画像の前記シフト値が0である、請求項1に記載のマルチビュー画像を生成する方法。
  4. 各ビュー画像をシフトするステップが、各ビュー画像の画素を水平方向に沿ってシフトするステップを含む、請求項1に記載のマルチビュー画像を生成する方法。
  5. 前記第1のマルチビュー画像層の各ビュー画像を、前記複数のマルチビュー画像層のうちの第2のマルチビュー画像層の対応するビュー画像とブレンドするステップを更に含む、請求項1に記載のマルチビュー画像を生成する方法。
  6. 前記合成マルチビュー画像として前記複数のマルチビュー画像層を前記所定の順番で自動的にレンダリングするステップが、前記所定の順番によって定義された上部マルチビュー画像層をレンダリングするステップを含む一方で、前記上部マルチビュー画像層の透明領域を省略するステップも含む、請求項1に記載のマルチビュー画像を生成する方法。
  7. 前記合成マルチビュー画像として前記複数のマルチビュー画像層を前記所定の順番で自動的にレンダリングするステップが、各ビュー画像の画素を前記マルチビューディスプレイのインターレース位置にマッピングするステップを含む、請求項1に記載のマルチビュー画像を生成する方法。
  8. 前記第1のマルチビュー画像層の領域を選択し、前記選択された領域内に入る前記ビュー画像の一部を選択的にシフトするステップを更に含む、請求項1に記載のマルチビュー画像を生成する方法。
  9. 前記合成マルチビュー画像をユーザ指定のマルチビューファイルフォーマットでフォーマットする、請求項1に記載のマルチビュー画像を生成する方法。
  10. マルチビュー画像生成システムであって、
    マルチビューディスプレイと、
    プロセッサと、
    複数の命令を記憶するメモリであって、前記命令が実行されると、前記プロセッサに、
    合成マルチビュー画像を形成する複数のマルチビュー画像層の中から第1のマルチビュー画像層を選択することであって、前記第1のマルチビュー画像層が、複数のビュー画像を含む、選択することと、
    前記第1のマルチビュー画像層の深度設定を含むユーザ入力を受信することと、
    前記ビュー画像の各々の順序付き番号に基づいて、前記深度設定を、対応するビュー画像のための複数のシフト値に変換することと、
    前記対応するシフト値に従って前記選択された第1のマルチビュー画像層の前記ビュー画像をシフトすることと、
    前記マルチビューディスプレイ上の前記合成マルチビュー画像として前記複数のマルチビュー画像層を所定の順番で自動的にレンダリングすることと
    を実施させる、メモリと
    を備える、マルチビュー画像生成システム。
  11. 前記複数のビュー画像が、シングルビュー画像から複製された同一のビュー画像である、請求項10に記載のマルチビュー画像生成システム。
  12. 前記ビュー画像のうちの1つが、ベースビュー画像として割り当てられ、前記ベースビュー画像の前記シフト値が0である、請求項10に記載のマルチビュー画像生成システム。
  13. 前記複数の命令が、実行されると、前記プロセッサに、
    前記第1のマルチビュー画像層の各ビュー画像を、前記複数のマルチビュー画像層のうちの第2のマルチビュー画像層の対応するビュー画像とブレンドすること
    を更に実施させる、請求項10に記載のマルチビュー画像生成システム。
  14. 各マルチビュー画像層の画素を前記マルチビューディスプレイのインターレース位置にマッピングすることによって、前記複数のマルチビュー画像層を前記所定の順番で反復的にレンダリングするように構成されるシェダーを更に備える、請求項10に記載のマルチビュー画像生成システム。
  15. 前記マルチビューディスプレイが、広角バックライトを使用して2次元(2D)モード中に広角放射光を提供するように構成され、
    前記マルチビューディスプレイが、マルチビーム要素のアレイを有するマルチビューバックライトを使用してマルチビューモード中に指向性放射光を提供するように構成され、前記指向性放射光が、前記マルチビーム要素アレイの各マルチビーム要素によって提供された複数の指向性光ビームを含み、
    前記マルチビューディスプレイが、前記2Dモードに対応する第1の順次時間間隔中に前記広角バックライトを、前記マルチビューモードに対応する第2の順次時間間隔中に前記マルチビューバックライトを、順次アクティブ化するために、モードコントローラを使用して前記2Dモードと前記マルチビューモードとを時間多重化するように構成され、
    前記指向性光ビームの指向性光ビームの方向が、前記合成マルチビュー画像の様々なビュー方向に対応する、請求項10に記載のマルチビュー画像生成システム。
  16. 前記マルチビューディスプレイが、導波光としてライトガイド内の光を導くように構成され、
    前記マルチビューディスプレイが、前記マルチビーム要素アレイのマルチビーム要素を使用して、前記導波光の一部を前記指向性放射光として散乱させるように構成され、前記マルチビーム要素アレイの各マルチビーム要素が、回折格子、微小屈折要素、及び微小反射要素のうちの1つ又は複数を備える、請求項15に記載のマルチビュー画像生成システム。
  17. 実行可能命令を記憶する非一時的コンピュータ可読記憶媒体であって、
    前記実行可能命令が、コンピュータシステムのプロセッサによって実行されると、深度マップからマルチビュー画像を生成するための動作を実施することが、
    シングルビュー画像を第1のマルチビュー画像層に割り当てることと、
    前記第1のマルチビュー画像層の前記深度マップをロードすることと、
    変更された深度マップを提供するために、前記深度マップのサイズ及び形状の一方又は両方を変更することと、
    前記シングルビュー画像から、及び前記第1のマルチビュー画像層の前記変更された深度マップから、複数のビュー画像を合成することと、
    マルチビューディスプレイ上の合成マルチビュー画像として、前記第1のマルチビュー画像層、及び第2のマルチビュー画像層を所定の順番で自動的にレンダリングすることと
    を含む、非一時的コンピュータ可読記憶媒体。
  18. 複数のビューを合成することが、ニューラルネットワークを使用して前記複数のビュー画像を予測することを含む、請求項17に記載の非一時的コンピュータ可読記憶媒体。
  19. 自動的にレンダリングすることが、各ビュー画像の画素を前記マルチビューディスプレイのインターレース位置にマッピングすることを含む、請求項17に記載の非一時的コンピュータ可読記憶媒体。
  20. ユーザインターフェースが、前記シングルビュー画像上に前記深度マップをオーバーレイし、前記深度マップのサイズ及び形状の一方又は両方を変更するためのユーザ入力を受信するように構成される、請求項17に記載の非一時的コンピュータ可読記憶媒体。
JP2023560964A 2021-04-04 2021-04-04 マルチ画像生成システム及び方法 Pending JP2024514534A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2021/025687 WO2022216268A1 (en) 2021-04-04 2021-04-04 Multiview image creation system and method

Publications (1)

Publication Number Publication Date
JP2024514534A true JP2024514534A (ja) 2024-04-02

Family

ID=83545623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023560964A Pending JP2024514534A (ja) 2021-04-04 2021-04-04 マルチ画像生成システム及び方法

Country Status (8)

Country Link
US (1) US20230412789A1 (ja)
EP (1) EP4320859A1 (ja)
JP (1) JP2024514534A (ja)
KR (1) KR20230145421A (ja)
CN (1) CN117083852A (ja)
CA (1) CA3213167A1 (ja)
TW (1) TWI823323B (ja)
WO (1) WO2022216268A1 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ521505A (en) * 2002-09-20 2005-05-27 Deep Video Imaging Ltd Multi-view display
TW201218741A (en) * 2010-10-22 2012-05-01 Himax Media Solutions Inc Image display system
KR101831652B1 (ko) * 2011-09-07 2018-02-26 엘지디스플레이 주식회사 입체영상 표시장치와 그 구동방법
TWI521469B (zh) * 2012-06-27 2016-02-11 Reallusion Inc Two - dimensional Roles Representation of Three - dimensional Action System and Method
KR101952684B1 (ko) * 2012-08-16 2019-02-27 엘지전자 주식회사 이동 단말기 및 이의 제어 방법, 이를 위한 기록 매체
KR102143473B1 (ko) * 2013-11-13 2020-08-12 삼성전자주식회사 다시점 영상 디스플레이 장치 및 그 다시점 영상 디스플레이 방법
CN111127538B (zh) * 2019-12-17 2022-06-07 武汉大学 一种基于卷积循环编码-解码结构的多视影像三维重建方法

Also Published As

Publication number Publication date
CA3213167A1 (en) 2022-10-13
EP4320859A1 (en) 2024-02-14
CN117083852A (zh) 2023-11-17
WO2022216268A1 (en) 2022-10-13
KR20230145421A (ko) 2023-10-17
US20230412789A1 (en) 2023-12-21
TWI823323B (zh) 2023-11-21
TW202304199A (zh) 2023-01-16

Similar Documents

Publication Publication Date Title
EP2329313A2 (en) Improvements in and relating to electronic visual displays
US11922602B2 (en) Virtual, augmented, and mixed reality systems and methods
US20230290046A1 (en) Multiview display system and method employing multiview image convergence plane tilt
US20230412789A1 (en) Multiview image creation system and method
US11818325B2 (en) Blended mode three dimensional display systems and methods
CN116195246A (zh) 使用自适应背景的多视图显示系统及方法
US20240153200A1 (en) View synthesis system and method using depth map
US20230410419A1 (en) Light field camera system and method of setting baseline and convergence distance
US20230396753A1 (en) System and method of detecting multiview file format
JP4956574B2 (ja) 立体画像描画装置および描画方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231218

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231218