JP6672327B2 - Method and apparatus for reducing spherical video bandwidth to a user headset - Google Patents
Method and apparatus for reducing spherical video bandwidth to a user headset Download PDFInfo
- Publication number
- JP6672327B2 JP6672327B2 JP2017550903A JP2017550903A JP6672327B2 JP 6672327 B2 JP6672327 B2 JP 6672327B2 JP 2017550903 A JP2017550903 A JP 2017550903A JP 2017550903 A JP2017550903 A JP 2017550903A JP 6672327 B2 JP6672327 B2 JP 6672327B2
- Authority
- JP
- Japan
- Prior art keywords
- video
- view perspective
- quality
- user
- perspective
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 84
- 230000015654 memory Effects 0.000 description 63
- 238000004891 communication Methods 0.000 description 16
- 238000013139 quantization Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 210000003128 head Anatomy 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000036962 time dependent Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004091 panning Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/344—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/194—Transmission of image signals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Processing Or Creating Images (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
関連出願との相互参照
本願は、2015年5月27日に出願された「ユーザヘッドセットへの球状ビデオ帯域幅を減少させる方法および装置」(Method and Apparatus to Reduce Spherical Video Bandwidth to User Headset)と題された米国出願連続番号第62/167,121号の利益を主張する。当該出願は、その全体がここに引用により援用される。
CROSS-REFERENCE TO RELATED APPLICATIONS This application filed May 27, 2015, entitled "Method and Apparatus to Reduce Spherical Video Bandwidth to User Headset". Claim the benefit of the entitled U.S. Application Serial No. 62 / 167,121. That application is incorporated herein by reference in its entirety.
分野
実施形態は、球状ビデオをストリーミングすることに関する。
FIELD Embodiments relate to streaming spherical video.
背景
球状ビデオ(または他の3次元ビデオ)をストリーミングすることは、かなりの量のシステムリソースを消費する場合がある。たとえば、符号化された球状ビデオは送信用の多数のビットを含む場合があり、それらは、かなりの量の帯域幅、ならびに、エンコーダおよびデコーダに関連付けられた処理およびメモリを消費する場合がある。
Background Streaming spherical video (or other three-dimensional video) can consume a significant amount of system resources. For example, an encoded spherical video may include a large number of bits for transmission, which may consume a significant amount of bandwidth and processing and memory associated with the encoder and decoder.
概要
例示的な実施形態は、ビデオをストリーミングすること、3Dビデオをストリーミングすること、および/または球状ビデオをストリーミングすることを最適化するシステムおよび方法を説明する。
Overview Exemplary embodiments describe systems and methods that optimize streaming video, streaming 3D video, and / or streaming spherical video.
一般的な一局面では、方法は、3次元(3D)ビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するステップと、少なくとも1つの好ましいビューパースペクティブに対応する3Dビデオの第1の部分を第1の品質で符号化するステップと、3Dビデオの第2の部分を第2の品質で符号化するステップとを含み、第1の品質は第2の品質と比べてより高い品質である。 In one general aspect, a method includes determining at least one preferred view perspective associated with a three-dimensional (3D) video and identifying a first portion of the 3D video corresponding to the at least one preferred view perspective. Encoding at a first quality and encoding a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality.
別の一般的な局面では、サーバおよび/またはストリーミングサーバは、3次元(3D)ビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するように構成されたコントローラと、エンコーダとを含み、エンコーダは、少なくとも1つの好ましいビューパースペクティブに対応する3Dビデオの第1の部分を第1の品質で符号化し、3Dビデオの第2の部分を第2の品質で符号化するように構成され、第1の品質は第2の品質と比べてより高い品質である。 In another general aspect, a server and / or a streaming server includes a controller configured to determine at least one preferred view perspective associated with three-dimensional (3D) video, and an encoder, wherein the encoder comprises: The first portion of the 3D video corresponding to the at least one preferred view perspective is configured with a first quality and the second portion of the 3D video is configured with a second quality. The quality is higher quality as compared to the second quality.
さらに別の一般的な局面では、方法は、ストリーミングビデオに対する要求を受信するステップを含み、要求は、3次元(3D)ビデオに関連付けられたユーザビューパースペクティブの表示を含み、方法はさらに、ユーザビューパースペクティブがビューパースペクティブデータストアに格納されているかどうかを判断するステップと、ユーザビューパースペクティブがビューパースペクティブデータストアに格納されていると判断すると、ユーザビューパースペクティブに関連付けられたランキング値をインクリメントするステップと、ユーザビューパースペクティブがビューパースペクティブデータストアに格納されていないと判断すると、ユーザビューパースペクティブをビューパースペクティブデータストアに追加し、ユーザビューパースペクティブに関連付けられたランキング値を1に設定するステップとを含む。 In yet another general aspect, a method includes receiving a request for streaming video, wherein the request includes displaying a user view perspective associated with the three-dimensional (3D) video, and the method further comprises: Determining whether the perspective is stored in the view perspective data store; and, if determining that the user view perspective is stored in the view perspective data store, incrementing a ranking value associated with the user view perspective. If it is determined that the user view perspective is not stored in the view perspective data store, the user view perspective is added to the view perspective data store and the user view is stored. And a step of setting a ranking value associated with the perspective to 1.
実現化例は、以下の特徴のうちの1つ以上を含み得る。たとえば、方法(または、サーバでの実現化例)は、3Dビデオの第1の部分をデータストアに格納するステップと、3Dビデオの第2の部分をデータストアに格納するステップと、ストリーミングビデオに対する要求を受信するステップと、データストアから3Dビデオの第1の部分と3Dビデオの第2の部分とをストリーミングビデオとしてストリーミングするステップとをさらに含み得る。方法(または、サーバでの実現化例)は、ストリーミングビデオに対する要求を受信するステップをさらに含み、要求は、ユーザビューパースペクティブの表示を含み、方法はさらに、ユーザビューパースペクティブに対応する3Dビデオを、3Dビデオの符号化された第1の部分として選択するステップと、3Dビデオの選択された第1の部分と3Dビデオの第2の部分とをストリーミングビデオとしてストリーミングするステップとを含み得る。 Implementations may include one or more of the following features. For example, the method (or server implementation) includes storing a first portion of the 3D video in a data store, storing a second portion of the 3D video in a data store, The method may further include receiving the request and streaming the first portion of the 3D video and the second portion of the 3D video from the data store as streaming video. The method (or server implementation) further comprises receiving a request for streaming video, the request including displaying a user view perspective, the method further comprising: displaying the 3D video corresponding to the user view perspective; Selecting may be as a coded first portion of the 3D video, and streaming the selected first portion of the 3D video and a second portion of the 3D video as streaming video.
方法(または、サーバでの実現化例)は、ストリーミングビデオに対する要求を受信するステップをさらに含み、要求は、3Dビデオに関連付けられたユーザビューパースペクティブの表示を含み、方法はさらに、ユーザビューパースペクティブがビューパースペクティブデータストアに格納されているかどうかを判断するステップと、ユーザビューパースペクティブがビューパースペクティブデータストアに格納されていると判断すると、ユーザビューパースペクティブに関連付けられたカウンタをインクリメントするステップと、ユーザビューパースペクティブがビューパースペクティブデータストアに格納されていないと判断すると、ユーザビューパースペクティブをビューパースペクティブデータストアに追加し、ユーザビューパースペクティブに関連付けられたカウンタを1に設定するステップとを含み得る。方法(または、サーバでの実現化例)は、3Dビデオの第2の部分を符号化するステップは、少なくとも1つの第1のQoS(Quality of Service)パラメータを第1のパス符号化動作で使用するステップを含み、3Dビデオの第1の部分を符号化するステップは、少なくとも1つの第2のQoS(Quality of Service)パラメータを第2のパス符号化動作で使用するステップを含むことを含み得る。 The method (or implementation on a server) further comprises receiving a request for streaming video, wherein the request includes displaying a user view perspective associated with the 3D video, wherein the method further comprises: Determining whether the view is stored in the view perspective data store; and, if determining that the user view perspective is stored in the view perspective data store, incrementing a counter associated with the user view perspective; and If the user view perspective is not stored in the view perspective data store, the user view perspective is added to the view perspective data store, and the user view The counter associated with Pekutibu may include a step of setting to 1. The method (or server implementation) includes the step of encoding the second portion of the 3D video using at least one first QoS (Quality of Service) parameter in a first pass encoding operation. And encoding the first portion of the 3D video may include using at least one second Quality of Service (QoS) parameter in a second pass encoding operation. .
たとえば、3Dビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するステップは、これまで(historically)見られた基準点、およびこれまで見られたビューパースペクティブ、のうちの少なくとも1つに基づいている。3Dビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブは、3Dビデオの視聴者の配向、3Dビデオの視聴者の位置、3Dビデオの視聴者の点、および3Dビデオの視聴者の焦点、のうちの少なくとも1つに基づいている。3Dビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するステップは、デフォルトビューパースペクティブに基づいており、デフォルトビューパースペクティブは、ディスプレイデバイスのユーザの特性、ディスプレイデバイスのユーザに関連付けられたグループの特性、ディレクターズカット、および、3Dビデオの特性、のうちの少なくとも1つに基づいている。たとえば、方法(または、サーバでの実現化例)は、3Dビデオの第2の部分の少なくとも一部を第1の品質で繰り返し符号化するステップと、3Dビデオの第2の部分の少なくとも一部をストリーミングするステップとをさらに含み得る。 For example, determining at least one preferred view perspective associated with the 3D video is based on at least one of a historically viewed reference point and a previously viewed view perspective. . The at least one preferred view perspective associated with the 3D video is a 3D video viewer orientation, a 3D video viewer location, a 3D video viewer point, and a 3D video viewer focus. Based on at least one. Determining at least one preferred view perspective associated with the 3D video is based on a default view perspective, wherein the default view perspective includes characteristics of a user of the display device, characteristics of a group associated with the user of the display device, Director's cut and / or 3D video characteristics. For example, the method (or server implementation) includes repeatedly encoding at least a portion of the second portion of the 3D video at a first quality and at least a portion of the second portion of the 3D video. Streaming.
例示的な実施形態は、ここに以下に提供される詳細な説明、および添付図面からより十分に理解されるであろう。図中、同じ要素は同じ参照番号によって表わされ、それらは例示としてのみ与えられており、このため例示的な実施形態の限定ではない。
なお、これらの図は、ある例示的な実施形態において利用される方法、構造および/または材料の一般的な特徴を示すよう意図されており、かつ、以下に提供される記載を補足するよう意図されている。しかしながら、これらの図面は縮尺通りではなく、また、任意の所与の実施形態の構造特性または性能特性そのものを正確に反映していない場合があり、例示的な実施形態が包含する特性を定義または限定していると解釈されるべきでない。たとえば、明瞭にするために、構造要素の位置付けが減少または誇張される場合がある。さまざまな図面における同様または同一の参照番号の使用は、同様または同一の要素または特徴の存在を示すよう意図される。 It is noted that these figures are intended to illustrate general features of the methods, structures and / or materials utilized in certain exemplary embodiments, and are intended to supplement the description provided below. Have been. However, these drawings are not to scale and may not accurately reflect the structural or performance characteristics of any given embodiment itself, and may not define or define the characteristics encompassed by the exemplary embodiment. It should not be construed as limiting. For example, the positioning of structural elements may be reduced or exaggerated for clarity. The use of similar or identical reference numbers in the various drawings is intended to indicate the presence of similar or identical elements or features.
実施形態の詳細な説明
例示的な実施形態はさまざまな修正および代替的形態を含み得るが、それらの実施形態は例として図面に示されており、ここに詳細に説明されるであろう。しかしながら、例示的な実施形態を開示された特定の形態に限定する意図はなく、それどころか、例示的な実施形態は請求の範囲内に該当するすべての修正、均等物、および代替物を網羅することが理解されるべきである。同じ番号は、図の説明全体にわたって同じ要素を指す。
DETAILED DESCRIPTION OF EMBODIMENTS While exemplary embodiments may include various modifications and alternatives, the embodiments are shown by way of example in the drawings and will now be described in detail. However, there is no intention to limit the exemplary embodiments to the particular forms disclosed, but rather the exemplary embodiments are intended to cover all modifications, equivalents, and alternatives falling within the scope of the appended claims. Should be understood. Like numbers refer to like elements throughout the description of the figures.
例示的な実施形態は、ビデオのストリーミング、3Dビデオのストリーミング、球状ビデオ(および/または他の3次元ビデオ)のストリーミングを、球状ビデオの(ビデオの視聴者によって)優先的に見られた部分(たとえば、ディレクターズカット、これまでの視聴(historical viewings)など)に基づいて最適化するように構成されたシステムおよび方法を説明する。たとえば、ディレクターズカットとは、ビデオの監督(ディレクター)または製作者によって選択されたようなビューパースペクティブであり得る。ディレクターズカットは、ビデオの監督または製作者がビデオを録画する際に選択され、または見られた、カメラの(複数のカメラの)ビューに基づいていてもよい。 An exemplary embodiment may include streaming video, 3D video streaming, spherical video (and / or other three-dimensional video) streaming, as well as preferentially viewed portions of spherical video (by video viewers). For example, systems and methods configured to optimize based on director's cuts, historical viewings, etc. are described. For example, a director's cut may be a view perspective as selected by the video director (director) or producer. The director's cut may be based on the camera's (multi-camera) view selected or seen when the video director or producer recorded the video.
球状ビデオ、球状ビデオのフレーム、および/または球状画像は、パースペクティブを有し得る。たとえば、球状画像は地球の画像であってもよい。内部パースペクティブは、地球の中心から外側を見るビューであってもよい。または、内部パースペクティブは、地球上で宇宙を眺めるものであってもよい。外部パースペクティブは、宇宙から地球に向かって見下ろすビューであってもよい。別の例として、パースペクティブは、可視である画像の一部に基づき得る。言い換えれば、可視パースペクティブは、視聴者が見ることができるものであり得る。可視パースペクティブは、視聴者の前にある球状画像の一部であり得る。たとえば、内部パースペクティブから見る際、視聴者は地面(たとえば地球)上に横たわり、宇宙を眺めていてもよい。視聴者は画像内で、月、太陽、または特定の星を見るかもしれない。しかしながら、視聴者が横たわっている地面は球状画像に含まれているものの、地面は現在の可視パースペクティブの外部にある。この例では、視聴者が自分の頭を回転させると、地面は周囲の可視パースペクティブに含まれるであろう。視聴者がうつぶせになると、地面は可視パースペクティブ内にあるものの、月、太陽、または星は可視パースペクティブ内にはないであろう。 The spherical video, the frames of the spherical video, and / or the spherical image may have a perspective. For example, the spherical image may be an image of the earth. The interior perspective may be a view looking outward from the center of the earth. Alternatively, the internal perspective may be looking at space on Earth. The external perspective may be a view looking down from space towards the earth. As another example, the perspective may be based on a portion of the image that is visible. In other words, the visible perspective may be what the viewer can see. The visible perspective may be part of a spherical image in front of the viewer. For example, when viewed from an interior perspective, a viewer may be lying on the ground (eg, the earth) and looking at the universe. Viewers may see the moon, sun, or certain stars in the image. However, although the ground on which the viewer is lying is included in the spherical image, the ground is outside the current visible perspective. In this example, when the viewer turns his or her head, the ground will be included in the surrounding visible perspective. If the viewer is prone, the ground will be in the visible perspective, but the moon, sun, or stars will not be in the visible perspective.
外部パースペクティブからの可視パースペクティブは、(たとえば画像の別の部分によって)遮られていない球状画像の一部、および/または、見えなくなるまで湾曲していない球状画像の一部であってもよい。球状画像を動かすこと(たとえば回転させること)によって、および/または球状画像の動きによって、球状画像の別の部分が外部パースペクティブから可視パースペクティブに持ち込まれてもよいい。したがって、可視パースペクティブは、球状画像の視聴者の可視範囲内にある球状画像の一部である。 The visible perspective from the external perspective may be a portion of the spherical image that is not obstructed (eg, by another portion of the image) and / or a portion of the spherical image that is not curved until invisible. By moving (eg, rotating) the spherical image and / or by moving the spherical image, another portion of the spherical image may be brought from the external perspective into the visible perspective. Thus, a visible perspective is a portion of a spherical image that is within the visible range of a viewer of the spherical image.
球状画像は、経時変化しない画像である。たとえば、地球に関するような内部パースペクティブからの球状画像は、月および星を1つの位置に示す場合がある。一方、球状ビデオ(または画像のシーケンス)は経時変化する場合がある。たとえば、地球に関するような内部パースペクティブからの球状ビデオは、(たとえば地球の自転のために)動く月および星、および/または、画像(たとえば空)を横切る飛行機雲を示す場合がある。 The spherical image is an image that does not change with time. For example, a spherical image from an interior perspective, such as about the earth, may show the moon and stars in one location. On the other hand, spherical videos (or sequences of images) may change over time. For example, a spherical video from an internal perspective, such as about the earth, may show moving moons and stars (eg, due to the Earth's rotation) and / or contrails across the image (eg, sky).
図1Aは、球の2次元(2D)表現である。図1Aに示すように、(たとえば、球状ビデオの球状画像またはフレームとしての)球100は、内部パースペクティブ105、110、外部パースペクティブ115、および可視パースペクティブ120、125、130の方向を示す。可視パースペクティブ120は、内部パースペクティブ110から見られるような球状画像の一部であってもよい。可視パースペクティブ120は、内部パースペクティブ105から見られるような球100の一部であってもよい。可視パースペクティブ125は、外部パースペクティブ115から見られるような球100の一部であってもよい。
FIG. 1A is a two-dimensional (2D) representation of a sphere. As shown in FIG. 1A, a sphere 100 (eg, as a spherical image or frame of a spherical video) shows the orientation of an
図1Bは、2D矩形表現としての、球100の2D表現の展開円筒表現150を示す図である。展開円筒表現150として示された画像の正距円筒投影は、画像が点A、B間の中央線から垂直に(図1Bに示すように上下に)遠ざかって進むにつれて、伸張された画像として現われ得る。2D矩形表現は、N×NブロックのC×Rマトリックスとして分解され得る。たとえば、図1Bに示すように、図示された展開円筒表現150は、N×Nブロックの30×16マトリックスである。しかしながら、他のC×R次元がこの開示の範囲内にある。ブロックは、2×2、2×4、4×4、4×8、8×8、8×16、16×16などのブロック(または画素のブロック)であってもよい。
FIG. 1B is a diagram illustrating an expanded
球状画像とは、全方向に連続している画像である。したがって、仮に球状画像を複数のブロックに分解した場合、複数のブロックは球状画像全体で近接しているであろう。言い換えれば、2D画像にあるようなエッジも境界もない。例示的な実現化例では、隣接端ブロックが、2D表現の境界に隣接していてもよい。加えて、隣接端ブロックは、2D表現の境界上のブロックとの近接ブロックであってもよい。たとえば、隣接端ブロックは、2次元表現の2つ以上の境界に関連付けられている。言い換えれば、球状画像は全方向に連続している画像であるため、隣接端は、画像またはフレームにおける(たとえばブロックの列の)上側境界および下側境界に関連付けられてもよく、および/または、画像またはフレームにおける(たとえばブロックの行の)左側境界および右側境界に関連付けられてもよい。 A spherical image is an image that is continuous in all directions. Therefore, if the spherical image is decomposed into a plurality of blocks, the plurality of blocks will be close to each other throughout the spherical image. In other words, there are no edges or boundaries as in 2D images. In an exemplary implementation, adjacent end blocks may be adjacent to a boundary of the 2D representation. In addition, the adjacent end block may be a block adjacent to a block on the boundary of the 2D representation. For example, adjacent end blocks are associated with two or more boundaries of a two-dimensional representation. In other words, because the spherical image is an image that is continuous in all directions, adjacent edges may be associated with upper and lower boundaries (eg, of a row of blocks) in the image or frame, and / or It may be associated with left and right boundaries (eg, of a row of blocks) in an image or frame.
たとえば、正距円筒投影が使用される場合、隣接端ブロックは、列または行の他方端のブロックであってもよい。たとえば、図1Bに示すように、ブロック160および170は、互いにそれぞれの(列ごとの)隣接端ブロックであってもよい。また、ブロック180および185は、互いにそれぞれの(列ごとの)隣接端ブロックであってもよい。さらに、ブロック165および175は、互いにそれぞれの(行ごとの)隣接端ブロックであってもよい。ビューパースペクティブ192は、少なくとも1つのブロックを含んでいてもよい(および/または、少なくとも1つのブロックと重複していてもよい)。ブロックは、画像の領域、フレームの領域、画像またはフレームの一部もしくは部分集合、ブロックの群などとして符号化されてもよい。以下に、ブロックのこの群は、タイルまたはタイルの群と称され得る。たとえば、図1Bでは、タイル190および195は、4つのブロックの群として図示される。タイル195は、ビューパースペクティブ192内にあるとして図示される。
For example, if equirectangular projection is used, the adjacent end block may be the block at the other end of the column or row. For example, as shown in FIG. 1B, blocks 160 and 170 may be their respective (per column) adjacent end blocks. Further, the
例示的な実施形態では、符号化された球状ビデオのフレームをストリーミングすることに加え、視聴者によって頻繁に見られた少なくとも1つの基準点に基づいて選択されたタイル(またはタイルの群)としてのビューパースペクティブ(たとえば、これまで見られた少なくとも1つの基準点またはビューパースペクティブ)が、たとえばより高い品質(たとえば、より高い解像度および/またはより少ない歪み)で符号化され、球状ビデオの符号化されたフレームとともに(またはその一部として)ストリーミングされ得る。したがって、再生中、球状ビデオ全体が再生されている間に視聴者は復号されたタイルを(より高い品質で)見ることができ、視聴者のビューパースペクティブが、視聴者によって頻繁に見られたビューパースペクティブに変わった場合でも、球状ビデオ全体は利用可能である。視聴者はまた、視聴位置を変更したり、別のビューパースペクティブに切替えることもできる。その別のビューパースペクティブが、視聴者によって頻繁に見られた少なくとも1つの基準点に含まれる場合、再生されたビデオは、(たとえば、視聴者によって頻繁に見られた少なくとも1つの基準点のうちの1つではない)何らかの他のビューパースペクティブに比べ、より高い品質(たとえば、より高い解像度)のものであり得る。画像またはフレームの選択された一部または部分集合のみをより高い品質で符号化してストリーミングすることの1つの利点は、必ずしも球状ビデオ全体をより高い品質で符号化し、ストリーミングし、復号しなくても、球状ビデオの選択された画像またはフレームがより高い品質で復号され、再生され得るという利点を有しており、このため、帯域幅使用、ならびに、エンコーダおよびデコーダに関連付けられた処理リソースおよびメモリリソースにおける効率を高める。 In an exemplary embodiment, in addition to streaming the frames of the encoded spherical video, as a selected tile (or group of tiles) based on at least one reference point frequently viewed by a viewer. The view perspective (eg, at least one reference point or view perspective seen so far) is encoded, for example, with higher quality (eg, higher resolution and / or less distortion) and the encoded spherical video It can be streamed with (or as part of) the frame. Thus, during playback, the viewer can see the decoded tiles (with higher quality) while the entire spherical video is being played, and the viewer's view perspective is reduced to the views frequently viewed by the viewer. The entire spherical video is still available, even if turned into a perspective. The viewer can also change the viewing position or switch to another view perspective. If the other view perspective is included in at least one reference point frequently viewed by the viewer, the played video is (e.g., one of the at least one reference point frequently viewed by the viewer). It may be of higher quality (eg, higher resolution) compared to some other (not one) view perspective. One advantage of encoding and streaming only selected portions or subsets of images or frames with higher quality is that the entire spherical video does not necessarily have to be encoded, streamed, and decoded with higher quality. Has the advantage that the selected image or frame of the spherical video can be decoded and played back with higher quality, so that the bandwidth usage and the processing and memory resources associated with the encoder and decoder To increase efficiency.
頭部装着ディスプレイ(head mount display:HMD)では、視聴者は、知覚された3次元(3D)ビデオまたは画像を投影する左(たとえば左目)ディスプレイおよび右(たとえば右目)ディスプレイの使用を通して、視覚的バーチャルリアリティを体験する。例示的な実施形態によれば、球状(たとえば3D)ビデオまたは画像がサーバ上に格納される。ビデオまたは画像は符号化され、サーバからHMDにストリーミングされ得る。球状ビデオまたは画像は、左画像および右画像として符号化され得る。左画像および右画像は、左画像および右画像についてのメタデータとともに(たとえばデータパケットに)パッケージ化される。左画像および右画像は次に復号され、左(たとえば左目)ディスプレイおよび右(たとえば右目)ディスプレイによって表示される。 In a head-mounted display (HMD), the viewer can visually sense through the use of left (eg, left-eye) and right (eg, right-eye) displays that project a perceived three-dimensional (3D) video or image. Experience virtual reality. According to an exemplary embodiment, a spherical (eg, 3D) video or image is stored on a server. Video or images may be encoded and streamed from the server to the HMD. A spherical video or image may be encoded as a left image and a right image. The left and right images are packaged (eg, in data packets) with metadata about the left and right images. The left and right images are then decoded and displayed by a left (eg, left eye) display and a right (eg, right eye) display.
ここに説明されるシステムおよび方法は左画像および右画像双方に適用可能であり、本開示全体を通し、使用事例に依存して、画像、フレーム、画像の一部、フレームの一部、タイルなどと称される。言い換えれば、サーバ(たとえばストリーミングサーバ)からユーザデバイス(たとえばHMD)に通信され、次に表示のために復号される符号化データは、3Dビデオまたは画像に関連付けられた左画像および/または右画像であり得る。 The systems and methods described herein are applicable to both left and right images, and throughout this disclosure, depending on the use case, images, frames, parts of images, parts of frames, tiles, etc. It is called. In other words, the encoded data communicated from the server (eg, a streaming server) to a user device (eg, an HMD) and then decoded for display is a left and / or right image associated with the 3D video or image. possible.
図2〜5は、例示的な実施形態に従った方法のフローチャートである。図2〜5に関して説明されるステップは、(たとえば(以下に説明される)図6A、図6B、図7A、図7B、および図8に示すような)装置に関連付けられたメモリ(たとえば、少なくとも1つのメモリ610)に格納され、当該装置に関連付けられた少なくとも1つのプロセッサ(たとえば、少なくとも1つのプロセッサ605)によって実行される、ソフトウェアコードの実行によって行なわれてもよい。しかしながら、特殊用途プロセッサとして具現化されるシステムといった、代替的な実施形態が考えられる。以下に説明されるステップはプロセッサによって実行されるとして説明されるが、これらのステップは必ずしも同じプロセッサによって実行されるわけではない。言い換えれば、少なくとも1つのプロセッサが、図2〜5に関して以下に説明されるステップを実行してもよい。 2 to 5 are flowcharts of a method according to an exemplary embodiment. The steps described with respect to FIGS. 2-5 may include a memory associated with the device (eg, as shown in FIGS. 6A, 6B, 7A, 7B, and 8 (described below) (eg, at least It may be performed by execution of software code stored in one memory 610) and executed by at least one processor (eg, at least one processor 605) associated with the device. However, alternative embodiments are conceivable, such as a system embodied as a special purpose processor. Although the steps described below are described as being performed by a processor, these steps are not necessarily performed by the same processor. In other words, at least one processor may perform the steps described below with respect to FIGS.
図2は、これまでのビューパースペクティブを格納するための方法を示しており、ここで、「これまでの」(historical)とは、ユーザによって以前に要求されたビューパースペクティブを指す。たとえば、図2は、球状ビデオストリームにおいてよく見られるビューパースペクティブのデータベースの構築を示し得る。図2に示すように、ステップS205で、ビューパースペクティブの表示が受信される。たとえば、デコーダを含むデバイスによってタイルが要求され得る。タイル要求は、球状ビデオ上の視聴者の配向、位置、点、または焦点に関するパースペクティブまたはビューパースペクティブに基づいた情報を含み得る。パースペクティブまたはビューパースペクティブは、ユーザビューパースペクティブ、すなわちHMDのユーザのビューパースペクティブであり得る。たとえば、ビューパースペクティブ(たとえばユーザビューパースペクティブ)は、(たとえば、内部パースペクティブまたは外部パースペクティブとしての)球状ビデオ上の緯度および経度位置であってもよい。ビュー、パースペクティブ、またはビューパースペクティブは、球状ビデオに基づいて立方体の辺として判断され得る。ビューパースペクティブの表示はまた、球状ビデオ情報を含み得る。例示的な実現化例では、ビューパースペクティブの表示は、ビューパースペクティブに関連付けられたフレームについての情報(たとえばフレームシーケンス)を含み得る。たとえば、ビュー(たとえば、緯度および経度位置、または辺)は、たとえばハイパーテキスト転送プロトコル(Hypertext Transfer Protocol:HTTP)を使用して、HMDを含むユーザデバイス(に関連付けられたコントローラ)からストリーミングサーバに通信され得る。 FIG. 2 illustrates a method for storing a previous view perspective, where "historical" refers to a view perspective previously requested by a user. For example, FIG. 2 may show the construction of a database of view perspectives commonly found in spherical video streams. As shown in FIG. 2, in step S205, a display of a view perspective is received. For example, a tile may be requested by a device that includes a decoder. The tile request may include information based on a perspective or view perspective regarding the viewer's orientation, position, point, or focus on the spherical video. The perspective or view perspective may be a user view perspective, ie, a view perspective of a user of the HMD. For example, a view perspective (eg, a user view perspective) may be a latitude and longitude position on a spherical video (eg, as an internal or external perspective). A view, perspective, or view perspective may be determined as a cube edge based on the spherical video. The display of the view perspective may also include spherical video information. In an exemplary implementation, the display of the view perspective may include information (eg, a frame sequence) about a frame associated with the view perspective. For example, views (eg, latitude and longitude locations, or sides) communicate from a user device (including a controller associated with an HMD) to a streaming server using, for example, the Hypertext Transfer Protocol (HTTP). Can be done.
ステップS210で、ビューパースペクティブ(たとえばユーザビューパースペクティブ)がビューパースペクティブデータストアに格納されているかどうかが判断される。たとえば、データストア(たとえばビューパースペクティブデータストア815)が、ビューパースペクティブまたはユーザビューパースペクティブに関連付けられた情報に基づいてクエリまたはフィルタされ得る。たとえば、データストアは、ビューパースペクティブの球状ビデオ上の緯度および経度位置、ならびに、ビューパースペクティブが見られた球状ビデオにおけるタイムスタンプに基づいて、クエリまたはフィルタされてもよい。タイムスタンプは、球状ビデオの再生に関連付けられた時間および/または時間範囲であり得る。クエリまたはフィルタは、空間近接性(たとえば、現在のビューパースペクティブが所与の格納されたビューパースペクティブにどのくらい近いか)、および/または、時間近接性(たとえば、現在のタイムスタンプが所与の格納されたタイムスタンプにどのくらい近いか)に基づき得る。クエリまたはフィルタが結果を返す場合、ビューパースペクティブはデータストアに格納されている。結果を返さない場合、ビューパースペクティブはデータストアに格納されていない。ビューパースペクティブがビューパースペクティブデータストアに格納されている場合、ステップS215で、処理はステップS220に続く。格納されていない場合、処理はステップS225に続く。 In step S210, it is determined whether a view perspective (eg, a user view perspective) is stored in a view perspective data store. For example, a data store (eg, view perspective data store 815) may be queried or filtered based on information associated with a view perspective or a user view perspective. For example, the data store may be queried or filtered based on the latitude and longitude location on the spherical video of the view perspective and the timestamp in the spherical video where the view perspective was viewed. The time stamp may be a time and / or time range associated with playing the spherical video. The query or filter may determine spatial proximity (eg, how close the current view perspective is to a given stored view perspective) and / or temporal proximity (eg, the current timestamp may be stored at a given stored timestamp). Based on how close the timestamp is). If the query or filter returns results, the view perspective is stored in the data store. If no results are returned, the view perspective has not been stored in the data store. If the view perspective is stored in the view perspective data store, in step S215, the process continues to step S220. If not, the process continues to step S225.
ステップS220で、受信されたビューパースペクティブに関連付けられたカウンタまたはランキング(またはランキング値)がインクリメントされる。たとえば、データストアは、これまでのビューパースペクティブを含むデータテーブルを含んでいてもよい(たとえば、データストアは、複数のデータテーブルを含むデータベースであってもよい)。データテーブルは、鍵付きの(たとえば、各々に固有の)ビューパースペクティブであってもよい。データテーブルは、ビューパースペクティブの識別情報と、ビューパースペクティブに関連付けられた情報と、ビューパースペクティブが何回要求されたかを示すカウンタとを含んでいてもよい。カウンタは、ビューパースペクティブが要求されるたびにインクリメントされてもよい。データテーブルに格納されたデータは、匿名化されてもよい。言い換えれば、データは、ユーザ、デバイス、セッションなどが言及されない(または、ユーザ、デバイス、セッションなどの識別情報がない)ように格納され得る。そのため、データテーブルに格納されたデータは、ビデオのユーザまたは視聴者に基づいて区別できない。例示的な実現化例では、データテーブルに格納されたデータは、ユーザを識別することなく、ユーザに基づいて分類されてもよい。たとえば、データは、ユーザの年齢、年齢層、性別、タイプまたは役割(たとえば音楽家または観衆)などを含んでいてもよい。 In step S220, a counter or ranking (or ranking value) associated with the received view perspective is incremented. For example, the data store may include a data table that includes a previous view perspective (eg, the data store may be a database that includes multiple data tables). The data table may be a keyed (eg, unique to each) view perspective. The data table may include identification information of the view perspective, information associated with the view perspective, and a counter indicating how many times the view perspective has been requested. The counter may be incremented each time a view perspective is requested. The data stored in the data table may be anonymized. In other words, the data may be stored such that the user, device, session, etc. are not mentioned (or there is no identifying information of the user, device, session, etc.). As such, the data stored in the data tables cannot be distinguished based on the video user or viewer. In an exemplary implementation, data stored in the data tables may be categorized based on a user without identifying the user. For example, the data may include the user's age, age group, gender, type or role (eg, musician or audience), and the like.
ステップS225で、ビューパースペクティブはビューパースペクティブデータストアに追加される。たとえば、ビューパースペクティブの識別情報と、ビューパースペクティブに関連付けられた情報と、1に設定されたカウンタ(またはランキング値)とが、これまでのビューパースペクティブを含むデータテーブルに格納されてもよい。 In step S225, the view perspective is added to the view perspective data store. For example, the identification information of the view perspective, the information associated with the view perspective, and the counter (or ranking value) set to 1 may be stored in a data table including the past view perspectives.
例示的な実施形態では、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルが、より高いQoSで符号化され得る。QoSは、上述の品質の実現(たとえば、品質を規定するエンコーダ変数入力)であり得る。たとえば、エンコーダ(たとえばビデオエンコーダ625)が、3Dビデオに関連付けられたタイルを個々に符号化することができる。少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルは、3Dビデオの残りに関連付けられたタイルに比べ、より高いQoSで符号化され得る。例示的な実現化例では、3Dビデオは、(たとえば第1のパスにおける)第1のQoSパラメータ、または、第1の符号化パスで使用される少なくとも1つの第1のQoSパラメータを使用して符号化され得る。加えて、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルは、(たとえば第2のパスにおける)第2のQoSパラメータ、または、第2の符号化パスで使用される少なくとも1つの第2のQoSパラメータを使用して符号化され得る。この例示的な実現化例では、第2のQoSは、第1のQoSに比べ、より高いQoSである。別の例示的な実現化例では、3Dビデオは、3Dビデオを表わす複数のタイルとして符号化され得る。少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルは、第2のQoSパラメータを使用して符号化され得る。残りのタイルは、第1のQoSパラメータを使用して符号化され得る。 In an exemplary embodiment, tiles associated with at least one preferred view perspective may be encoded with higher QoS. QoS can be an implementation of the above-mentioned quality (eg, an encoder variable input that defines the quality). For example, an encoder (eg, video encoder 625) can individually encode tiles associated with 3D video. Tiles associated with at least one preferred view perspective may be encoded with a higher QoS than tiles associated with the rest of the 3D video. In an exemplary implementation, the 3D video uses a first QoS parameter (eg, in a first pass) or at least one first QoS parameter used in a first encoding pass. Can be encoded. In addition, the tile associated with the at least one preferred view perspective may include a second QoS parameter (eg, in a second pass) or at least one second QoS parameter used in a second encoding pass. May be encoded. In this example implementation, the second QoS is a higher QoS than the first QoS. In another example implementation, the 3D video may be encoded as multiple tiles representing the 3D video. Tiles associated with at least one preferred view perspective may be encoded using the second QoS parameter. The remaining tiles may be encoded using the first QoS parameter.
代替的な実現化例(および/または追加の実現化例)では、エンコーダは、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルを、3Dビデオフレームの残りの2D表現を生成するために使用されるものとは異なる投影手法またはアルゴリズムを使用して投影することができる。投影によっては、フレームのあるエリアに歪みを有する場合がある。したがって、タイルを球状フレームとは異なるように投影することは、最終画像の品質を向上させること、および/または、画素をより効率的に使用する(たとえば、コンピュータ計算をより少なくする、またはユーザの目に対する負担をより少なくする)ことができる。1つの例示的な実現化例では、投影アルゴリズムに基づいて歪みが最小となる位置にタイルを向けるために、タイルを投影する前に球状画像を回転させることができる。別の例示的な実現化例では、タイルは、タイルの位置に基づいた投影アルゴリズムを使用する(および/または修正する)ことができる。たとえば、球状ビデオフレームを2D表現に投影することは正距円筒投影を使用でき、一方、球状ビデオフレームをタイルとして選択されるべき部分を含む表現に投影することは立方体投影を使用できる。 In alternative implementations (and / or additional implementations), an encoder is used to generate a tile associated with at least one preferred view perspective to generate a remaining 2D representation of the 3D video frame. The projection can be performed using a different projection technique or algorithm. Some projections may have distortion in certain areas of the frame. Thus, projecting tiles differently than spherical frames can improve the quality of the final image and / or use pixels more efficiently (e.g., use less computational or user The burden on the eyes is reduced). In one example implementation, the spherical image can be rotated before projecting the tiles to direct the tiles to locations where distortion is minimal based on the projection algorithm. In another example implementation, the tile may use (and / or modify) a projection algorithm based on the location of the tile. For example, projecting a spherical video frame into a 2D representation can use an equirectangular projection, while projecting a spherical video frame onto a representation that includes a portion to be selected as a tile can use a cubic projection.
図3は、3Dビデオをストリーミングするための方法を示す。図3は、ライブストリーミングイベントなどの最中に、ストリーミング3Dビデオがオンデマンドで符号化されるシナリオを説明する。図3に示すように、ステップS305で、3Dビデオをストリーミングする要求が受信される。たとえば、ストリーミングに利用可能な3Dビデオ、3Dビデオの一部、またはタイルが、デコーダを含むデバイスによって(たとえば、媒体アプリケーションとのユーザインタラクションを介して)要求され得る。当該要求は、球状ビデオ上の視聴者の配向、位置、点、または焦点に関するパースペクティブまたはビューパースペクティブに基づいた情報を含み得る。パースペクティブまたはビューパースペクティブに基づいた情報は、現在の配向またはデフォルト(たとえば初期化)配向に基づき得る。デフォルト配向は、たとえば、3Dビデオについてのディレクターズカットであり得る。 FIG. 3 shows a method for streaming 3D video. FIG. 3 illustrates a scenario where streaming 3D video is encoded on demand during a live streaming event or the like. As shown in FIG. 3, in step S305, a request to stream 3D video is received. For example, 3D video, 3D video portions, or tiles available for streaming may be requested by a device including a decoder (eg, via user interaction with a media application). The request may include information based on a perspective or view perspective regarding the orientation, position, point, or focus of the viewer on the spherical video. Information based on a perspective or view perspective may be based on a current orientation or a default (eg, initialized) orientation. The default orientation may be, for example, director's cut for 3D video.
ステップS310で、少なくとも1つの好ましいビューパースペクティブが判断される。たとえば、データストア(たとえばビューパースペクティブデータストア815)が、ビューパースペクティブに関連付けられた情報に基づいてクエリまたはフィルタされ得る。データストアは、ビューパースペクティブの球状ビデオ上の緯度および経度位置に基づいてクエリまたはフィルタされてもよい。例示的な実現化例では、少なくとも1つの好ましいビューパースペクティブは、これまでのビューパースペクティブに基づき得る。そのため、データストアは、これまでのビューパースペクティブを含むデータテーブルを含み得る。ビューパースペクティブが何回要求されたかによって、好みが表示され得る。したがって、クエリまたはフィルタは、しきい値カウンタ値未満の結果を取り除くことを含み得る。言い換えれば、これまでのビューパースペクティブを含むデータテーブルのクエリのために設定されたパラメータは、カウンタまたはランキングについての値を含み得る。ここで、クエリの結果は、カウンタについてのしきい値より上でなければならない。これまでのビューパースペクティブを含むデータテーブルのクエリの結果は、少なくとも1つの好ましいビューパースペクティブとして設定され得る。 At step S310, at least one preferred view perspective is determined. For example, a data store (eg, view perspective data store 815) may be queried or filtered based on information associated with the view perspective. The data store may be queried or filtered based on the latitude and longitude position on the spherical video in the view perspective. In an exemplary implementation, at least one preferred view perspective may be based on a previous view perspective. As such, the data store may include a data table that includes the previous view perspective. Preferences may be displayed depending on how many times the view perspective has been requested. Thus, a query or filter may include removing results that are less than a threshold counter value. In other words, the parameters set for the data table query including the previous view perspective may include values for counters or rankings. Here, the result of the query must be above the threshold for the counter. The results of a query of the data table containing the previous view perspective may be set as at least one preferred view perspective.
加えて、デフォルトの好ましいビューパースペクティブ(または複数の当該ビューパースペクティブ)が、3Dビデオに関連付けられ得る。デフォルトの好ましいビューパースペクティブは、ディレクターズカット、関心点(たとえば、地平線、移動物体、優先物体)などであり得る。たとえば、あるゲームの目的は、物体(たとえば、ビルまたは車両)を破壊することである場合がある。この物体は、優先物体とラベル付けされてもよい。優先物体を含むビューパースペクティブは、好ましいビューパースペクティブとして表示され得る。デフォルトの好ましいビューパースペクティブは、これまでのビューパースペクティブに加えて、またはこれまでのビューパースペクティブに代えて含まれ得る。デフォルト配向はたとえば、(たとえばビデオが最初にアップロードされた場合はこれまでのデータがないため)たとえば自動コンピュータビジョンアルゴリズムに基づいた最初の一組の好ましいビューパースペクティブであり得る。ビジョンアルゴリズムは、動きまたは複雑な詳細、または何がおもしろそうか推測するための近くのステレオ物体、および/または、他のこれまでのビデオの好ましいビューに存在していた特徴を有する、ビデオの好ましいビューパースペクティブ部分を判断してもよい。 In addition, a default preferred view perspective (or multiple such view perspectives) may be associated with the 3D video. Default preferred view perspectives may be director's cuts, points of interest (eg, horizon, moving objects, priority objects), and so on. For example, the purpose of some games may be to destroy objects (eg, buildings or vehicles). This object may be labeled as a priority object. The view perspective that includes the priority object may be displayed as a preferred view perspective. A default preferred view perspective may be included in addition to, or instead of, a previous view perspective. The default orientation can be, for example, the first set of preferred view perspectives based on, for example, an automatic computer vision algorithm (eg, because there is no previous data if the video was first uploaded). The vision algorithm can be used for video preferred, with motion or complex details, or nearby stereo objects to infer what might be interesting, and / or other features that were present in the preferred view of the video. The view perspective portion may be determined.
少なくとも1つの好ましいビューパースペクティブを判断する際に、他の要因を使用することができる。たとえば、少なくとも1つの好ましいビューパースペクティブは、現在のビューパースペクティブの範囲内にある(たとえば、現在のビューパースペクティブに接近した)これまでのビューパースペクティブであり得る。たとえば、少なくとも1つの好ましいビューパースペクティブは、現在のユーザの、または現在のユーザが属するグループ(タイプまたはカテゴリー)のこれまでのビューパースペクティブの範囲内にある(たとえば、当該ビューパースペクティブに接近した)これまでのビューパースペクティブであり得る。言い換えれば、少なくとも1つの好ましいビューパースペクティブは、格納されたこれまでのビューパースペクティブと距離が近い、および/または時間が近いビューパースペクティブ(またはタイル)を含み得る。デフォルトの好ましいビューパースペクティブは、これまでのビューパースペクティブを含むデータストア815に、または図示されない別個の(たとえば追加の)データストアに格納され得る。
Other factors can be used in determining at least one preferred view perspective. For example, the at least one preferred view perspective may be a previous view perspective that is within range of the current view perspective (eg, close to the current view perspective). For example, at least one preferred view perspective is one that is within (eg, has approached) the previous view perspective of the current user or of the group (type or category) to which the current user belongs. View perspective. In other words, the at least one preferred view perspective may include a view perspective (or tile) that is close in distance and / or close in time to a stored previous view perspective. The default preferred view perspective may be stored in the
ステップS315で、3Dビデオは、少なくとも1つの好ましいビューパースペクティブに基づいた少なくとも1つの符号化パラメータを用いて符号化される。たとえば、3Dビデオ(またはその一部)は、少なくとも1つの好ましいビューパースペクティブを含む部分が3Dビデオの残りとは異なるように符号化されるように、符号化され得る。そのため、少なくとも1つの好ましいビューパースペクティブを含む部分は、3Dビデオの残りに比べてより高いQoSで符号化され得る。その結果、HMD上でレンダリングされる場合、少なくとも1つの好ましいビューパースペクティブを含む部分は、3Dビデオの残りに比べてより高い解像度を有し得る。 In step S315, the 3D video is encoded using at least one encoding parameter based on at least one preferred view perspective. For example, the 3D video (or a portion thereof) may be encoded such that a portion including at least one preferred view perspective is encoded differently than the rest of the 3D video. As such, portions that include at least one preferred view perspective may be encoded with higher QoS than the rest of the 3D video. As a result, when rendered on the HMD, the portion containing at least one preferred view perspective may have a higher resolution than the rest of the 3D video.
ステップS320で、符号化された3Dビデオはストリーミングされる。たとえば、タイルが、送信用パケットに含まれてもよい。パケットは、圧縮されたビデオビット10Aを含んでいてもよい。パケットは、球状ビデオフレームの符号化された2D表現と、符号化されたタイル(または複数のタイル)とを含んでいてもよい。パケットは、送信用ヘッダを含んでいてもよい。ヘッダは、とりわけ、エンコーダによるフレーム内符号化におけるモードまたはスキーム使用を示す情報を含んでいてもよい。ヘッダは、球状ビデオフレームのフレームを2D矩形表現に変換するために使用されるパラメータを示す情報を含んでいてもよい。ヘッダは、符号化された2D矩形表現の、および符号化されたタイルのQoSを獲得するために使用されるパラメータを示す情報を含んでいてもよい。上述のように、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルのQoSは、少なくとも1つの好ましいビューパースペクティブに関連付けられていないタイルに比べ、異なっていてもよい(たとえば、より高くてもよい)。
In step S320, the encoded 3D video is streamed. For example, a tile may be included in a packet for transmission. The packet may include the
3Dビデオをストリーミングすることは、優先段階の使用を通して実現され得る。たとえば、第1の優先段階では、低い(または最低基準の)QoSで符号化されたビデオデータがストリーミングされ得る。これにより、HMDのユーザは、バーチャルリアリティ体験を開始できるようになる。次に、より高いQoSのビデオがHMDにストリーミングされ、(たとえば、バッファ830に格納されたデータ)以前にストリーミングされた低い(または最低基準)のQoSで符号化されたビデオデータを置き換えることができる。一例として、第2の段階では、現在のビューパースペクティブに基づいて、より高い品質のビデオまたは画像データがストリーミングされ得る。次の段階では、1つ以上の好ましいビューパースペクティブに基づいて、より高いQoSのビデオまたは画像データがストリーミングされ得る。これは、HMDバッファが実質的に高QoSビデオまたは画像データのみを含むようになるまで続き得る。加えて、この段階的なストリーミングは、QoSが次第により高くなるビデオまたは画像データを用いてループし得る。言い換えれば、第1の繰返しの後で、HMDは第1のQoSで符号化されたビデオまたは画像データを含み、第2の繰返しの後で、HMDは第2のQoSで符号化されたビデオまたは画像データを含み、第3の繰返しの後で、HMDは第3のQoSで符号化されたビデオまたは画像データを含む、というふうになっている。例示的な実現化例では、第2のQoSは第1のQoSよりも高く、第3のQoSは第2のQoSよりも高い、というふうになっている。 Streaming 3D video can be achieved through the use of a priority stage. For example, in a first priority stage, video data encoded at a low (or lowest reference) QoS may be streamed. This allows the user of the HMD to start a virtual reality experience. The higher QoS video may then be streamed to the HMD to replace previously streamed video data encoded with a lower (or lowest reference) QoS (eg, data stored in buffer 830). . As an example, in a second stage, higher quality video or image data may be streamed based on the current view perspective. In the next stage, higher QoS video or image data may be streamed based on one or more preferred view perspectives. This may continue until the HMD buffer contains substantially only high QoS video or image data. In addition, this gradual streaming may loop with video or image data with progressively higher QoS. In other words, after the first iteration, the HMD includes video or image data encoded with a first QoS, and after the second iteration, the HMD includes video or image encoded with a second QoS. It includes image data, and after a third iteration, the HMD contains video or image data encoded with a third QoS. In an exemplary implementation, the second QoS is higher than the first QoS, and the third QoS is higher than the second QoS.
エンコーダ625は、球状ビデオをストリーミング用に利用可能にするためのセットアップ手順の一環として、オフラインで動作してもよい。複数のタイルの各々は、ビューフレームストレージ795に格納されてもよい。複数のタイルの各々は、複数のタイルの各々がフレームを参照して(たとえば時間依存性)、およびビューを参照して(たとえばビュー依存性)格納され得るように、索引付けされてもよい。したがって、複数のタイルの各々は、時間およびビュー、パースペクティブ、またはビューパースペクティブに依存しており、時間依存性およびビュー依存性に基づいて呼び戻され得る。
The
そのため、例示的な実現化例では、エンコーダ625は、フレームが選択され、そのフレームの一部がビューパースペクティブに基づいてタイルとして選択されるループを実行するように構成されてもよい。タイルは次に符号化され、格納される。ループは、複数のビューパースペクティブを通して循環し続ける。たとえば球状画像の垂直線を中心に5度ずつ、および水平線を中心に5度ずつの所望数のビューパースペクティブがタイルとして保存される場合、新しいフレームが選択され、プロセスは、球状ビデオのすべてのフレームがそれらのために保存された所望数のタイルを有するようになるまで繰り返す。例示的な実施形態では、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルは、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルではないタイルに比べ、より高いQoSで符号化され得る。これは、タイルを符号化し、保存するための1つの例示的な実現化例に過ぎない。
Thus, in an exemplary implementation,
図4は、符号化された3Dビデオを格納するための方法を示す。図4は、将来のストリーミングのために、ストリーミング3Dビデオが前もって符号化され、格納されるシナリオを説明する。図4に示すように、ステップS405で、3Dビデオについての少なくとも1つの好ましいビューパースペクティブが判断される。たとえば、データストア(たとえばビューパースペクティブデータストア815)が、ビューパースペクティブに関連付けられた情報に基づいてクエリまたはフィルタされ得る。データストアは、ビューパースペクティブの球状ビデオ上の緯度および経度位置に基づいてクエリまたはフィルタされてもよい。例示的な実現化例では、少なくとも1つの好ましいビューパースペクティブは、これまでのビューパースペクティブに基づき得る。そのため、データテーブルは、これまでのビューパースペクティブを含む。ビューパースペクティブが何回要求されたかによって、好みが表示され得る。したがって、クエリまたはフィルタは、しきい値カウンタ値未満の結果を取り除くことを含み得る。言い換えれば、これまでのビューパースペクティブを含むデータテーブルのクエリのために設定されたパラメータは、カウンタについての値を含み得る。ここで、クエリの結果は、カウンタについてのしきい値より上でなければならない。これまでのビューパースペクティブを含むデータテーブルのクエリの結果は、少なくとも1つの好ましいビューパースペクティブとして設定され得る。 FIG. 4 shows a method for storing encoded 3D video. FIG. 4 illustrates a scenario where streaming 3D video is pre-encoded and stored for future streaming. As shown in FIG. 4, at step S405, at least one preferred view perspective for the 3D video is determined. For example, a data store (eg, view perspective data store 815) may be queried or filtered based on information associated with the view perspective. The data store may be queried or filtered based on the latitude and longitude position on the spherical video in the view perspective. In an exemplary implementation, at least one preferred view perspective may be based on a previous view perspective. Therefore, the data table includes the previous view perspective. Preferences may be displayed depending on how many times the view perspective has been requested. Thus, a query or filter may include removing results that are less than a threshold counter value. In other words, the parameters set for the query of the data table containing the previous view perspective may include the value for the counter. Here, the result of the query must be above the threshold for the counter. The results of a query of the data table containing the previous view perspective may be set as at least one preferred view perspective.
加えて、デフォルトの好ましいビューパースペクティブ(または複数の当該ビューパースペクティブ)が、3Dビデオに関連付けられ得る。デフォルトの好ましいビューパースペクティブは、ディレクターズカット、関心点(たとえば、地平線、移動物体、優先物体)などであり得る。たとえば、あるゲームの目的は、物体(たとえば、ビルまたは車両)を破壊することである場合がある。この物体は、優先物体とラベル付けされてもよい。優先物体を含むビューパースペクティブは、好ましいビューパースペクティブとして表示され得る。デフォルトの好ましいビューパースペクティブは、これまでのビューパースペクティブに加えて、またはこれまでのビューパースペクティブに代えて含まれ得る。少なくとも1つの好ましいビューパースペクティブを判断する際に、他の要因を使用することができる。たとえば、少なくとも1つの好ましいビューパースペクティブは、現在のビューパースペクティブの範囲内にある(たとえば、現在のビューパースペクティブに接近した)これまでのビューパースペクティブであり得る。たとえば、少なくとも1つの好ましいビューパースペクティブは、現在のユーザの、または現在のユーザが属するグループ(タイプまたはカテゴリー)のこれまでのビューパースペクティブの範囲内にある(たとえば、当該ビューパースペクティブに接近した)これまでのビューパースペクティブであり得る。デフォルトの好ましいビューパースペクティブは、これまでのビューパースペクティブを含むデータストアに、または別個の(たとえば追加の)データテーブルに格納され得る。 In addition, a default preferred view perspective (or multiple such view perspectives) may be associated with the 3D video. Default preferred view perspectives may be director's cuts, points of interest (eg, horizon, moving objects, priority objects), and so on. For example, the purpose of some games may be to destroy objects (eg, buildings or vehicles). This object may be labeled as a priority object. The view perspective that includes the priority object may be displayed as a preferred view perspective. A default preferred view perspective may be included in addition to, or instead of, a previous view perspective. Other factors can be used in determining at least one preferred view perspective. For example, the at least one preferred view perspective may be a previous view perspective that is within range of the current view perspective (eg, close to the current view perspective). For example, at least one preferred view perspective is one that is within (eg, has approached) the previous view perspective of the current user or of the group (type or category) to which the current user belongs. View perspective. The default preferred view perspective may be stored in the data store containing the previous view perspective, or in a separate (eg, additional) data table.
ステップS410で、3Dビデオは、少なくとも1つの好ましいビューパースペクティブに基づいた少なくとも1つの符号化パラメータを用いて符号化される。たとえば、3Dビデオのフレームが選択され、そのフレームの一部がビューパースペクティブに基づいてタイルとして選択され得る。タイルは次に符号化される。例示的な実施形態では、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルは、より高いQoSで符号化され得る。少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルは、3Dビデオの残りに関連付けられたタイルに比べ、より高いQoSで符号化され得る。 In step S410, the 3D video is encoded using at least one encoding parameter based on at least one preferred view perspective. For example, a frame of the 3D video may be selected and a portion of the frame may be selected as a tile based on a view perspective. The tile is then encoded. In an exemplary embodiment, tiles associated with at least one preferred view perspective may be encoded with a higher QoS. Tiles associated with at least one preferred view perspective may be encoded with a higher QoS than tiles associated with the rest of the 3D video.
代替的な実現化例(および/または追加の実現化例)では、エンコーダは、少なくとも1つの好ましいビューパースペクティブに関連付けられたタイルを、3Dビデオフレームの残りの2D表現を生成するために使用されるものとは異なる投影手法またはアルゴリズムを使用して投影することができる。投影によっては、フレームのあるエリアに歪みを有する場合がある。したがって、タイルを球状フレームとは異なるように投影することは、最終画像の品質を向上させること、および/または、画素をより効率的に使用することができる。1つの例示的な実現化例では、投影アルゴリズムに基づいて歪みが最小となる位置にタイルを向けるために、タイルを投影する前に球状画像を回転させることができる。別の例示的な実現化例では、タイルは、タイルの位置に基づいた投影アルゴリズムを使用する(および/または修正する)ことができる。たとえば、球状ビデオフレームを2D表現に投影することは正距円筒投影を使用でき、一方、球状ビデオフレームをタイルとして選択されるべき部分を含む表現に投影することは立方体投影を使用できる。 In alternative implementations (and / or additional implementations), an encoder is used to generate a tile associated with at least one preferred view perspective to generate a remaining 2D representation of the 3D video frame. The projection can be performed using a different projection technique or algorithm. Some projections may have distortion in certain areas of the frame. Thus, projecting tiles differently than spherical frames can improve the quality of the final image and / or use pixels more efficiently. In one example implementation, the spherical image can be rotated before projecting the tiles to direct the tiles to locations where distortion is minimal based on the projection algorithm. In another example implementation, the tile may use (and / or modify) a projection algorithm based on the location of the tile. For example, projecting a spherical video frame into a 2D representation can use an equirectangular projection, while projecting a spherical video frame onto a representation that includes a portion to be selected as a tile can use a cubic projection.
ステップS415で、符号化された3Dビデオは格納される。たとえば、複数のタイルの各々は、ビューフレームストレージ795に格納されてもよい。3Dビデオに関連付けられた複数のタイルの各々は、複数のタイルの各々がフレームを参照して(たとえば時間依存性)、およびビューを参照して(たとえばビュー依存性)格納され得るように、索引付けされてもよい。したがって、複数のタイルの各々は、時間およびビュー、パースペクティブ、またはビューパースペクティブに依存しており、時間依存性およびビュー依存性に基づいて呼び戻され得る。
In step S415, the encoded 3D video is stored. For example, each of the plurality of tiles may be stored in
例示的な実現化例では、3Dビデオ(たとえば、それに関連付けられたタイル)は、可変符号化パラメータを用いて符号化され、格納されてもよい。したがって、3Dビデオは、異なる符号化状態で格納されてもよい。これらの状態は、QoSに基づいて変わってもよい。たとえば、3Dビデオは、同じQoSで各々符号化された複数のタイルとして格納されてもよい。たとえば、3Dビデオは、異なるQoSで各々符号化された複数のタイルとして格納されてもよい。たとえば、3Dビデオは、符号化された少なくとも1つの好ましいビューパースペクティブに基づいたQoSで一部が符号化された複数のタイルとして格納されてもよい。 In an exemplary implementation, 3D video (eg, tiles associated therewith) may be encoded and stored using variable encoding parameters. Thus, 3D video may be stored in different encoding states. These states may change based on QoS. For example, 3D video may be stored as multiple tiles each encoded with the same QoS. For example, 3D video may be stored as multiple tiles, each encoded with a different QoS. For example, 3D video may be stored as multiple tiles partially coded with QoS based on at least one preferred view perspective coded.
図5は、3Dビデオについての好ましいビューパースペクティブを判断するための方法を示す。3Dビデオについての好ましいビューパースペクティブは、3Dビデオのこれまでの視聴に基づいた好ましいビューパースペクティブに加わるものであってもよい。図6に示すように、ステップS505で、少なくとも1つのデフォルトビューパースペクティブが判断される。たとえば、デフォルトの好ましいビューパースペクティブは、データストア(たとえばビューパースペクティブデータストア815)に含まれるデータテーブルに格納され得る。データストアは、3Dビデオについてのデフォルト表示に基づいてクエリまたはフィルタされ得る。クエリまたはフィルタが結果を返す場合、3Dビデオは、関連付けられたデフォルトビューパースペクティブを有する。結果を返さない場合、3Dビデオは、関連付けられたデフォルトビューパースペクティブを有していない。デフォルトの好ましいビューパースペクティブは、ディレクターズカット、関心点(たとえば、地平線、移動物体、優先物体)などであり得る。たとえば、あるゲームの目的は、物体(たとえば、ビルまたは車両)を破壊することである場合がある。この物体は、優先物体とラベル付けされてもよい。優先物体を含むビューパースペクティブは、好ましいビューパースペクティブとして表示され得る。 FIG. 5 shows a method for determining a preferred view perspective for 3D video. The preferred view perspective for 3D video may be in addition to the preferred view perspective based on previous viewing of the 3D video. As shown in FIG. 6, at step S505, at least one default view perspective is determined. For example, a default preferred view perspective may be stored in a data table included in a data store (eg, view perspective data store 815). The data store may be queried or filtered based on the default display for 3D video. If the query or filter returns results, the 3D video will have an associated default view perspective. If no result is returned, the 3D video does not have a default view perspective associated with it. Default preferred view perspectives may be director's cuts, points of interest (eg, horizon, moving objects, priority objects), and so on. For example, the purpose of some games may be to destroy objects (eg, buildings or vehicles). This object may be labeled as a priority object. The view perspective that includes the priority object may be displayed as a preferred view perspective.
ステップS510で、ユーザの特性/好み/カテゴリーに基づいた少なくとも1つのビューパースペクティブが判断される。たとえば、HMDのユーザは、HMDの以前の使用に基づいた特性を有していてもよい。これらの特性は、統計的な視聴の好み(たとえば、遠くにある物体ではなく、すぐ近くの物体を見る方を好むこと)に基づいていてもよい。たとえば、HMDのユーザは、HMDに関連付けられたユーザの好みを格納していてもよい。これらの好みは、セットアッププロセスの一環として、ユーザによって選択されてもよい。好みは、一般的なもの(たとえば、動きに引き寄せられること)であってもよく、または、ビデオ特有のもの(たとえば、音楽演奏でギタリストに注目しがちなこと)であってもよい。たとえば、HMDのユーザは、あるグループまたはカテゴリー(たとえば、15〜22才の男性)に属してもよい。たとえば、ユーザの特性/好み/カテゴリーは、データストア(たとえばビューパースペクティブデータストア815)に含まれたデータテーブルに格納され得る。データストアは、3Dビデオについてのデフォルト表示に基づいてクエリまたはフィルタされ得る。クエリまたはフィルタが結果を返す場合、3Dビデオは、ユーザについての関連付けられた特性/好み/カテゴリーに基づいた、少なくとも1つの関連付けられた好ましいビューパースペクティブを有する。結果を返さない場合、3Dビデオは、ユーザに基づいた、関連付けられたビューパースペクティブを有していない。 In step S510, at least one view perspective based on the user's characteristics / preferences / categories is determined. For example, a user of the HMD may have characteristics based on previous use of the HMD. These characteristics may be based on statistical viewing preferences (e.g., preferring to see nearby objects rather than objects that are far away). For example, a user of the HMD may have stored user preferences associated with the HMD. These preferences may be selected by the user as part of the setup process. The preference may be general (eg, attracted to movement) or video-specific (eg, tend to focus on guitarists in music performances). For example, HMD users may belong to a group or category (eg, men aged 15-22). For example, user characteristics / preferences / categories may be stored in a data table included in a data store (eg, view perspective data store 815). The data store may be queried or filtered based on the default display for 3D video. If the query or filter returns results, the 3D video has at least one associated preferred view perspective based on the associated characteristics / favorite / category for the user. If no result is returned, the 3D video does not have an associated view perspective based on the user.
ステップS515で、関心領域に基づいた少なくとも1つのビューパースペクティブが判断される。たとえば、関心領域は、現在のビューパースペクティブであってもよい。たとえば、少なくとも1つの好ましいビューパースペクティブは、現在のビューパースペクティブの範囲内にある(たとえば、現在のビューパースペクティブに接近した)これまでのビューパースペクティブであり得る。たとえば、少なくとも1つの好ましいビューパースペクティブは、現在のユーザの、または現在のユーザが属するグループ(タイプまたはカテゴリー)のこれまでのビューパースペクティブの範囲内にある(たとえば、当該ビューパースペクティブに接近した)これまでのビューパースペクティブであり得る。 At step S515, at least one view perspective based on the region of interest is determined. For example, the region of interest may be the current view perspective. For example, the at least one preferred view perspective may be a previous view perspective that is within range of the current view perspective (eg, close to the current view perspective). For example, at least one preferred view perspective is one that is within (eg, has approached) the previous view perspective of the current user or of the group (type or category) to which the current user belongs. View perspective.
ステップS520で、少なくとも1つのシステム特性に基づいた少なくとも1つのビューパースペクティブが判断される。たとえば、HMDは、ユーザ体験を強化し得る特徴を有していてもよい。1つの特徴は、強化された音声であってもよい。したがって、バーチャルリアリティ環境で、ユーザは特定の音に引き付けられるかもしれない(たとえば、ゲームユーザは爆発音に引き付けられるかもしれない)。好ましいビューパースペクティブは、これらの可聴キューを含むビューパースペクティブに基づいていてもよい。ステップS525で、前述のビューパースペクティブ判断の各々、および/または、それらの組合せ/サブ組合せに基づいた、3Dビデオについての少なくとも1つの好ましいビューパースペクティブが判断される。たとえば、少なくとも1つの好ましいビューパースペクティブは、前述のクエリの結果を合併または結合することによって生成されてもよい。 At step S520, at least one view perspective based on at least one system characteristic is determined. For example, an HMD may have features that can enhance the user experience. One feature may be enhanced speech. Thus, in a virtual reality environment, a user may be drawn to a particular sound (eg, a game user may be drawn to an explosion sound). Preferred view perspectives may be based on view perspectives that include these audible cues. At step S525, at least one preferred view perspective for the 3D video is determined based on each of the aforementioned view perspective determinations and / or combinations / sub-combinations thereof. For example, at least one preferred view perspective may be generated by merging or combining the results of the aforementioned queries.
図6Aの例において、ビデオエンコーダシステム600は、少なくとも1つのコンピューティングデバイスであってもよく、または少なくとも1つのコンピューティングデバイスを含んでいてもよく、ここに説明される方法を行なうように構成された事実上あらゆるコンピューティングデバイスを表わし得る。そのため、ビデオエンコーダシステム600は、ここに説明される手法、もしくはその異なるバージョンまたは将来のバージョンを実現するために利用され得るさまざまなコンポーネントを含み得る。例として、ビデオエンコーダシステム600は、少なくとも1つのプロセッサ605と、少なくとも1つのメモリ610(たとえば、非一時的なコンピュータ読取可能記憶媒体)とを含むとして図示される。
In the example of FIG. 6A,
図6Aは、少なくとも1つの例示的な実施形態に従ったビデオエンコーダシステムを示す。図6Aに示すように、ビデオエンコーダシステム600は、少なくとも1つのプロセッサ605と、少なくとも1つのメモリ610と、コントローラ620と、ビデオエンコーダ625とを含む。少なくとも1つのプロセッサ605、少なくとも1つのメモリ610、コントローラ620、およびビデオエンコーダ625は、バス615を介して通信可能に結合される。
FIG. 6A illustrates a video encoder system according to at least one example embodiment. As shown in FIG. 6A, the
少なくとも1つのプロセッサ605は、少なくとも1つのメモリ610上に格納された命令を実行するために利用されてもよく、それにより、ここに説明されるさまざまな特徴および機能、もしくは追加のまたは代替的な特徴および機能を実現する。少なくとも1つのプロセッサ605および少なくとも1つのメモリ610は、さまざまな他の目的のために利用されてもよい。特に、少なくとも1つのメモリ610は、ここに説明されるモジュールのうちのいずれか1つを実現するために使用され得るさまざまなタイプのメモリならびに関連するハードウェアおよびソフトウェアの一例を表わし得る。
The at least one
少なくとも1つのメモリ610は、ビデオエンコーダシステム600に関連付けられたデータおよび/または情報を格納するように構成されてもよい。たとえば、少なくとも1つのメモリ610は、球状ビデオを符号化することに関連付けられたコーデックを格納するように構成されてもよい。たとえば、少なくとも1つのメモリは、球状ビデオのフレームの一部を、球状ビデオの符号化とは別に符号化されるべきタイルとして選択することに関連付けられた符号を格納するように構成されてもよい。少なくとも1つのメモリ610は、共有リソースであってもよい。以下により詳細に説明されるように、タイルは、球状ビューア(たとえばHMD)の再生中に視聴者のビューパースペクティブに基づいて選択された複数の画素であってもよい。複数の画素は、ユーザによって見られ得る球状画像の一部を含み得る、ブロック、複数のブロック、またはマクロブロックであってもよい。たとえば、ビデオエンコーダシステム600は、より大型のシステム(たとえば、サーバ、パーソナルコンピュータ、モバイルデバイスなど)の要素であってもよい。したがって、少なくとも1つのメモリ610は、より大型のシステム内の他の要素(たとえば、画像/ビデオ供給、ウェブブラウジング、または有線/無線通信)に関連付けられたデータおよび/または情報を格納するように構成されてもよい。
At least one
コントローラ620は、さまざまな制御信号を生成し、ビデオエンコーダシステム600におけるさまざまなブロックに当該制御信号を通信するように構成されてもよい。コントローラ620は、以下に説明される手法を実現するために当該制御信号を生成するように構成されてもよい。コントローラ620は、例示的な実施形態によれば、画像、画像のシーケンス、ビデオフレーム、ビデオシーケンスなどを符号化するようビデオエンコーダ625を制御するように構成されてもよい。たとえば、コントローラ620は、球状ビデオを符号化するためのパラメータに対応する制御信号を生成してもよい。ビデオエンコーダ625およびコントローラ620の機能および動作に関するさらなる詳細が、少なくとも図7A、図4A、図5A、図5Bおよび図6〜9に関連して以下に説明される。
ビデオエンコーダ625は、ビデオストリーム入力5を受信し、圧縮された(たとえば符号化された)ビデオビット10を出力するように構成されてもよい。ビデオエンコーダ625は、ビデオストリーム入力5を離散ビデオフレームに変換してもよい。ビデオストリーム入力5はまた、画像であってもよく、したがって、圧縮された(たとえば符号化された)ビデオビット10も、圧縮された画像ビットであってもよい。ビデオエンコーダ625はさらに、各離散ビデオフレーム(または画像)をブロックのマトリックス(以下、ブロックと称される)に変換してもよい。たとえば、ビデオフレーム(または画像)は、各々が多数の画素を有するブロックの16×16、16×8、8×8、8×4、4×4、4×2、2×2などのマトリックスに変換されてもよい。これらの例示的なマトリックスが列挙されているが、例示的な実施形態はそれらに限定されない。
圧縮されたビデオビット10は、ビデオエンコーダシステム600の出力を表わしていてもよい。たとえば、圧縮されたビデオビット10は、符号化されたビデオフレーム(または符号化された画像)を表わしていてもよい。たとえば、圧縮されたビデオビット10は、受信デバイス(図示せず)への送信の準備ができていてもよい。たとえば、ビデオビットは、受信デバイスへの送信のためにシステムトランシーバ(図示せず)に送信されてもよい。
The
少なくとも1つのプロセッサ605は、コントローラ620および/またはビデオエンコーダ625に関連付けられたコンピュータ命令を実行するように構成されてもよい。少なくとも1つのプロセッサ605は、共有リソースであってもよい。たとえば、ビデオエンコーダシステム600は、より大型のシステム(たとえばモバイルデバイス)の要素であってもよい。したがって、少なくとも1つのプロセッサ605は、より大型のシステム内の他の要素(たとえば、画像/ビデオ供給、ウェブブラウジング、または有線/無線通信)に関連付けられたコンピュータ命令を実行するように構成されてもよい。
At least one
図6Bの例において、ビデオデコーダシステム650は、少なくとも1つのコンピューティングデバイスであってもよく、ここに説明される方法を行なうように構成された事実上あらゆるコンピューティングデバイスを表わし得る。そのため、ビデオデコーダシステム650は、ここに説明される手法、もしくはその異なるバージョンまたは将来のバージョンを実現するために利用され得るさまざまなコンポーネントを含み得る。例として、ビデオデコーダシステム650は、少なくとも1つのプロセッサ655と、少なくとも1つのメモリ660(たとえば、コンピュータ読取可能記憶媒体)とを含むとして図示される。
In the example of FIG. 6B,
このため、少なくとも1つのプロセッサ655は、少なくとも1つのメモリ660上に格納された命令を実行するために利用されてもよく、それにより、ここに説明されるさまざまな特徴および機能、もしくは追加のまたは代替的な特徴および機能を実現する。少なくとも1つのプロセッサ655および少なくとも1つのメモリ660は、さまざまな他の目的のために利用されてもよい。特に、少なくとも1つのメモリ660は、ここに説明されるモジュールのうちのいずれか1つを実現するために使用され得るさまざまなタイプのメモリならびに関連するハードウェアおよびソフトウェアの一例を表わし得る。例示的な実施形態によれば、ビデオエンコーダシステム600およびビデオデコーダシステム650は、同じより大型のシステム(たとえば、パーソナルコンピュータ、モバイルデバイスなど)に含まれていてもよい。例示的な実施形態によれば、ビデオデコーダシステム650は、ビデオエンコーダシステム600に関して説明されたものとは逆または反対の手法を実現するように構成されてもよい。
Thus, at least one
少なくとも1つのメモリ660は、ビデオデコーダシステム650に関連付けられたデータおよび/または情報を格納するように構成されてもよい。たとえば、少なくとも1つのメモリ610は、符号化された球状ビデオデータを復号することに関連付けられたコーデックを格納するように構成されてもよい。たとえば、少なくとも1つのメモリは、符号化されたタイルおよび別個に符号化された球状ビデオフレームを復号することに関連付けられた符号、ならびに、復号された球状ビデオフレームにおける画素を復号されたタイルと置き換えるための符号を格納するように構成されてもよい。少なくとも1つのメモリ660は、共有リソースであってもよい。たとえば、ビデオデコーダシステム650は、より大型のシステム(たとえば、パーソナルコンピュータ、モバイルデバイスなど)の要素であってもよい。したがって、少なくとも1つのメモリ660は、より大型のシステム内の他の要素(たとえば、ウェブブラウジング、または無線通信)に関連付けられたデータおよび/または情報を格納するように構成されてもよい。
At least one
コントローラ670は、さまざまな制御信号を生成し、ビデオデコーダシステム650におけるさまざまなブロックに当該制御信号を通信するように構成されてもよい。コントローラ670は、以下に説明されるビデオ復号手法を実現するために当該制御信号を生成するように構成されてもよい。コントローラ670は、例示的な実施形態によれば、ビデオフレームを復号するようビデオデコーダ675を制御するように構成されてもよい。コントローラ670は、ビデオの復号に対応する制御信号を生成するように構成されてもよい。ビデオデコーダ675およびコントローラ670の機能および動作に関するさらなる詳細が、以下に説明される。
ビデオデコーダ675は、圧縮された(たとえば符号化された)ビデオビット10入力を受信し、ビデオストリーム5を出力するように構成されてもよい。ビデオデコーダ675は、圧縮されたビデオビット10の離散ビデオフレームをビデオストリーム5に変換してもよい。圧縮された(たとえば符号化された)ビデオビット10はまた、圧縮された画像ビットであってもよく、したがって、ビデオストリーム5も画像であってもよい。
少なくとも1つのプロセッサ655は、コントローラ670および/またはビデオデコーダ675に関連付けられたコンピュータ命令を実行するように構成されてもよい。少なくとも1つのプロセッサ655は、共有リソースであってもよい。たとえば、ビデオデコーダシステム650は、より大型のシステム(たとえば、パーソナルコンピュータ、モバイルデバイスなど)の要素であってもよい。したがって、少なくとも1つのプロセッサ655は、より大型のシステム内の他の要素(たとえば、ウェブブラウジング、または無線通信)に関連付けられたコンピュータ命令を実行するように構成されてもよい。
At least one
図7Aおよび図7Bはそれぞれ、少なくとも1つの例示的な実施形態に従った、図6Aに示すビデオエンコーダ625、および図6Bに示すビデオデコーダ675についてのフロー図を示す。(上述の)ビデオエンコーダ625は、球状−2D表現ブロック705と、予測ブロック710と、変換ブロック715と、量子化ブロック720と、エントロピー符号化ブロック725と、逆量子化ブロック730と、逆変換ブロック735と、再構築ブロック740と、ループフィルタブロック745と、タイル表現ブロック790と、ビューフレームストレージ795とを含む。ビデオエンコーダ625の他の構造変形例が、入力ビデオストリーム5を符号化するために使用され得る。図7Aに示すように、破線は、いくつかのブロック間の再構築経路を表わし、実線は、いくつかのブロック間の順方向経路を表わす。
7A and 7B show a flow diagram for the
前述のブロックの各々は、(たとえば図6Aに示すような)ビデオエンコーダシステムに関連付けられたメモリ(たとえば少なくとも1つのメモリ610)に格納され、当該ビデオエンコーダシステムに関連付けられた少なくとも1つのプロセッサ(たとえば少なくとも1つのプロセッサ605)によって実行される、ソフトウェアコードとして実行されてもよい。しかしながら、特殊用途プロセッサとして具現化されるビデオエンコーダといった、代替的な実施形態が考えられる。たとえば、(単独の、および/または組合された)前述のブロックの各々は、特定用途向け集積回路、すなわちASICであってもよい。たとえば、ASICは、変換ブロック715および/または量子化ブロック720として構成されてもよい。
Each of the foregoing blocks is stored in a memory (eg, at least one memory 610) associated with the video encoder system (eg, as shown in FIG. 6A) and includes at least one processor (eg, such as shown in FIG. 6A) associated with the video encoder system. It may be executed as software code, executed by at least one processor 605). However, alternative embodiments are conceivable, such as a video encoder embodied as a special purpose processor. For example, each of the foregoing blocks (alone and / or combined) may be an application specific integrated circuit, ie, an ASIC. For example, the ASIC may be configured as
球状−2D表現ブロック705は、球状フレームまたは画像を球状フレームまたは画像の2D表現にマッピングするように構成されてもよい。たとえば、球が、別の形状(たとえば、正方形、矩形、円筒、および/または立方体)の表面上に投影されてもよい。その投影は、たとえば、正距円筒または半正距円筒であってもよい。
The spherical-
予測ブロック710は、ビデオフレーム整合性(たとえば、以前に符号化された画素と比べて変わっていない画素)を利用するように構成されてもよい。予測は、2つのタイプを含んでいてもよい。たとえば、予測は、フレーム内予測とフレーム間予測とを含んでいてもよい。フレーム内予測は、画像のブロックにおける画素値を、同じ画像の以前に符号化された隣接するブロックにおける基準サンプルと比べて予測することに関する。フレーム内予測では、サンプルは、予測変換コーデックの変換(たとえばエントロピー符号化ブロック725)およびエントロピー符号化(たとえばエントロピー符号化ブロック725)部分によって符号化される残差を減少させるために、同じフレーム内の再構築された画素から予測される。フレーム間予測は、画像のブロックにおける画素値を、以前に符号化された画像のデータと比べて予測することに関する。
The
変換ブロック715は、画素の値を空間ドメインから変換ドメインにおける変換係数に変換するように構成されてもよい。変換係数は、元のブロックと通常同じサイズである係数の2次元マトリックスに対応していてもよい。言い換えれば、元のブロックにおける画素と同じぐらい多くの変換係数が存在していてもよい。しかしながら、変換により、変換係数の一部はゼロに等しい値を有していてもよい。
変換ブロック715は、(予測ブロック710からの)残りを、たとえば周波数ドメインにおける変換係数に変換するように構成されてもよい。典型的には、変換は、カルフネン−ロエヴェ変換(Karhunen-Loeve Transform:KLT)、離散コサイン変換(Discrete Cosine Transform:DCT)、特異値分解変換(Singular Value Decomposition Transform:SVD)、および非対称離散サイン変換(asymmetric discrete sine transform:ADST)を含む。
量子化ブロック720は、各変換係数におけるデータを減少させるように構成されてもよい。量子化は、比較的大きい範囲内の値を比較的小さい範囲内の値にマッピングすることを伴ってもよく、このため、量子化された変換係数を表わすのに必要なデータの量を減少させる。量子化ブロック720は、変換係数を、量子化された変換係数または量子化レベルと称される離散量子値に変換してもよい。たとえば、量子化ブロック720は、変換係数に関連付けられたデータにゼロを加えるように構成されてもよい。たとえば、符号化規準は、スカラー量子化プロセスにおける128個の量子化レベルを規定してもよい。
量子化された変換係数は、エントロピー符号化ブロック725によってエントロピー符号化される。その後、エントロピー符号化された係数は、使用される予測のタイプ、運動ベクトル、および量子化器の値といった、ブロックを復号するのに必要とされる情報とともに、圧縮されたビデオビット10として出力される。圧縮されたビデオビット10は、ランレングス符号化(run-length encoding:RLE)およびゼロラン符号化(zero-run coding)といったさまざまな手法を使用してフォーマットされ得る。
The quantized transform coefficients are entropy coded by an
図7Aにおける再構築経路は、ビデオエンコーダ625および(図7Bに関して以下に説明される)ビデオデコーダ675の双方が、同じ基準フレームを使用して、圧縮されたビデオビット10(または圧縮された画像ビット)を復号することを保証するために存在する。当該再構築経路は、以下により詳細に説明される、復号処理中に行なわれる機能に類似する機能を行なう。当該機能は、微分残差(derivative residual)ブロック(微分残差)を作り出すために、逆量子化ブロック730で、量子化された変換係数を逆量子化することと、逆変換ブロック735で、逆量子化された変換係数を逆変換することとを含む。再構築ブロック740で、再構築ブロックを作り出すために、予測ブロック710で予測された予測ブロックは微分残差に加えられ得る。次に、ブロッキングアーティファクトなどの歪みを減少させるために、ループフィルタ745が再構築ブロックに適用され得る。
The reconstruction path in FIG. 7A is such that both
タイル表現ブロック790は、画像および/またはフレームを複数のタイルに変換するように構成され得る。1つのタイルは、画素のグループ化であり得る。タイルは、ビューまたはビューパースペクティブに基づいて選択された複数の画素であってもよい。複数の画素は、ユーザによって見られ得る(または見られることが予測される)球状画像の一部を含み得る、ブロック、複数のブロック、またはマクロブロックであってもよい。タイルとしての球状画像の一部は、長さと幅とを有していてもよい。球状画像の一部は、2次元、または実質的に2次元であってもよい。タイルは、可変サイズ(たとえば、タイルは球の何割をカバーするか)を有し得る。たとえば、タイルのサイズは、たとえば、視聴者の視野がどれくらい広いか、別のタイルへの近接性、および/または、ユーザがどれくらい速く自分の頭を回転させているかに基づいて、符号化され、ストリーミングされ得る。たとえば、視聴者が絶えず見回している場合、より大きく、より低品質のタイルが選択されるかもしれない。しかしながら、視聴者が1つのパースペクティブに注目している場合、より小さく、より詳細なタイルが選択されるかもしれない。
一実現化例では、タイル表現ブロック790は、球状−2D表現ブロック705にタイルを生成させる、球状−2D表現ブロック705への命令を起動する。別の実現化例では、タイル表現ブロック790がタイルを生成する。いずれの実現化例でも、各タイルは次に、個々に符号化される。さらに別の実現化例では、タイル表現ブロック790は、ビューフレームストレージ795に、符号化された画像および/またはビデオフレームをタイルとして格納させる、ビューフレームストレージ795への命令を起動する。タイル表現ブロック790は、ビューフレームストレージ795に、タイルについての情報またはメタデータとともにタイルを格納させる、ビューフレームストレージ795への命令を起動できる。たとえば、タイルについての情報またはメタデータは、画像またはフレーム内のタイル位置の表示、タイルの符号化に関連付けられた情報(たとえば、解像度、帯域幅、および/または3D−2D投影アルゴリズム)、1つ以上の関心領域との関連付けなどを含んでいてもよい。
In one implementation, the
例示的な実現化例によれば、エンコーダ625は、フレーム、フレームの一部、および/またはタイルを、異なる品質(またはQoS(Quality of Service))で符号化してもよい。例示的な実施形態によれば、エンコーダ625は、フレーム、フレームの一部、および/またはタイルを複数回、各々異なるQoSで符号化してもよい。したがって、ビューフレームストレージ795は、画像またはフレーム内の同じ位置を表わすフレーム、フレームの一部、および/またはタイルを、異なるQoSで格納できる。そのため、タイルについての前述の情報またはメタデータは、フレーム、フレームの一部、および/またはタイルが符号化された際のQoSの表示を含んでいてもよい。
According to an example implementation,
QoSは、圧縮アルゴリズム、解像度、伝送速度、および/または符号化スキームに基づき得る。したがって、エンコーダ625は、フレーム、フレームの一部、および/またはタイルごとに、異なる圧縮アルゴリズムおよび/または符号化スキームを使用してもよい。たとえば、符号化されたタイルは、エンコーダ625によって符号化された(タイルに関連付けられたた)フレームに比べ、より高いQoSであってもよい。上述のように、エンコーダ625は、球状ビデオフレームの2D表現を符号化するように構成されてもよい。したがって、(球状ビデオフレームの一部を含む可視パースペクティブとしての)タイルは、球状ビデオフレームの2D表現に比べ、より高いQoSで符号化され得る。QoSは、復号された場合にフレームの解像度に影響を与えるかもしれない。したがって、(球状ビデオフレームの一部を含む可視パースペクティブとしての)タイルは、タイルが、復号された場合に、球状ビデオフレームの復号された2D表現と比べて、フレームのより高い解像度を有するように、符号化され得る。タイル表現ブロック790は、タイルが符号化されるべきQoSを示してもよい。タイル表現ブロック790は、フレーム、フレームの一部、および/またはタイルが関心領域であるか、関心領域内にあるか、シード領域に関連付けられているか否かなどに基づいて、QoSを選択してもよい。関心領域およびシード領域は、以下により詳細に説明される。
QoS may be based on compression algorithm, resolution, transmission rate, and / or coding scheme. Accordingly,
図7Aに関して上述されたビデオエンコーダ625は、図示されたブロックを含む。しかしながら、例示的な実施形態はそれらに限定されない。使用される異なるビデオ符号化構成および/または手法に基づいて、追加のブロックが追加されてもよい。また、図7Aに関して上述されたビデオエンコーダ625に示されるブロックの各々は、使用される異なるビデオ符号化構成および/または手法に基づくオプションのブロックであってもよい。
図7Bは、圧縮されたビデオビット10(または圧縮された画像ビット)を復号するように構成されたデコーダ675の概略ブロック図である。デコーダ675は、前述のエンコーダ625の再構築経路に類似して、エントロピー復号ブロック750と、逆量子化ブロック755と、逆変換ブロック760と、再構築ブロック765と、ループフィルタブロック770と、予測ブロック775と、ブロック解除フィルタブロック780と、2D表現−球状ブロック785とを含む。
FIG. 7B is a schematic block diagram of a
圧縮されたビデオビット10内のデータ要素は、一組の量子化された変換係数を生成するために、(たとえば、コンテキスト適応型二値算術復号方式(Context Adaptive Binary Arithmetic Decoding)を使用して)エントロピー復号ブロック750によって復号され得る。逆量子化ブロック755は、量子化された変換係数を逆量子化し、逆変換ブロック760は、逆量子化された変換係数を(ADSTを使用して)逆変換して、エンコーダ625における再構築段階によって作り出されたものと同一であり得る微分残差を作り出す。
The data elements in the
圧縮されたビデオビット10から復号されたヘッダ情報を使用して、デコーダ675は、エンコーダ675において作り出されたのと同じ予測ブロックを作り出すために、予測ブロック775を使用することができる。予測ブロックは、再構築ブロック765によって再構築ブロックを作り出すために、微分残差に加えられ得る。ブロッキングアーティファクトを減少させるために、ループフィルタブロック770が再構築ブロックに適用され得る。ブロッキング歪みを減少させるために、ブロック解除フィルタブロック780が再構築ブロックに適用され得る。その結果が、ビデオストリーム5として出力される。
Using the header information decoded from the
2D表現−球状ブロック785は、球状フレームまたは画像の2D表現を球状フレームまたは画像にマッピングするように構成されてもよい。たとえば、球状フレームまたは画像の2D表現を球状フレームまたは画像にマッピングすることは、エンコーダ625によって行なわれる3D−2Dマッピングの逆であり得る。
The 2D representation-
図7Bに関して上述されたビデオデコーダ675は、図示されたブロックを含む。しかしながら、例示的な実施形態はそれらに限定されない。使用される異なるビデオ符号化構成および/または手法に基づいて、追加のブロックが追加されてもよい。また、図7Bに関して上述されたビデオデコーダ675に示されるブロックの各々は、使用される異なるビデオ符号化構成および/または手法に基づくオプションのブロックであってもよい。
エンコーダ625およびデコーダ675はそれぞれ、球状ビデオおよび/または画像を符号化するように、ならびに球状ビデオおよび/または画像を復号するように構成されてもよい。球状画像は、球状に組織化された複数の画素を含む画像である。言い換えれば、球状画像は、全方向に連続している画像である。したがって、球状画像の視聴者は、任意の方向(たとえば、上方向、下方向、左方向、右方向、またはそれらの任意の組合せ)に位置または向きを変える(たとえば、自分の頭または目を動かす)ことができ、画像の一部を連続的に見ることができる。
例示的な実現化例では、エンコーダ625において使用され、および/またはエンコーダ625によって判断されたパラメータは、エンコーダ405の他の要素によって使用され得る。たとえば、2D表現を符号化するために使用される(たとえば、予測において使用されるような)運動ベクトルが、タイルを符号化するために使用されてもよい。また、予測ブロック710、変換ブロック715、量子化ブロック720、エントロピー符号化ブロック725、逆量子化ブロック730、逆変換ブロック735、再構築ブロック740、およびループフィルタブロック745において使用され、および/または当該ブロックによって判断されたパラメータは、エンコーダ625とエンコーダ405との間で共有されてもよい。
In an exemplary implementation, the parameters used at and / or determined by
球状ビデオフレームまたは画像の一部は、画像として処理されてもよい。したがって、球状ビデオフレームの一部は、ブロックのC×Rマトリックス(以下、ブロックと称される)に変換(または分解)されてもよい。たとえば、球状ビデオフレームの一部は、各々が多数の画素を有するブロックの16×16、16×8、8×8、8×4、4×4、4×2、2×2などのマトリックスといったC×Rマトリックスに変換されてもよい。 Part of the spherical video frame or image may be processed as an image. Thus, a portion of the spherical video frame may be transformed (or decomposed) into a C × R matrix of blocks (hereinafter referred to as blocks). For example, a portion of a spherical video frame may be a 16 × 16, 16 × 8, 8 × 8, 8 × 4, 4 × 4, 4 × 2, 2 × 2, etc. matrix of blocks each having a large number of pixels. It may be converted to a C × R matrix.
図8は、少なくとも1つの例示的な実施形態に従ったシステム800を示す。図8に示すように、システム700は、コントローラ620と、コントローラ670と、ビデオエンコーダ625と、ビューフレームストレージ795と、配向センサ835とを含む。コントローラ620はさらに、ビュー位置制御モジュール805と、タイル制御モジュール810と、ビューパースペクティブデータストア815とを含む。コントローラ670はさらに、ビュー位置判断モジュール820と、タイル要求モジュール825と、バッファ830とを含む。
FIG. 8 illustrates a system 800 according to at least one example embodiment. As shown in FIG. 8, the system 700 includes a
例示的な実現化例によれば、配向センサ835は、視聴者の目(または頭)の配向(または配向の変化)を検出し、ビュー位置判断モジュール820は、検出された配向に基づいて、ビュー、パースペクティブ、またはビューパースペクティブを判断し、タイル要求モジュール825は、(球状ビデオに加えて)ビュー、パースペクティブ、またはビューパースペクティブを、タイルまたは複数のタイルに対する要求の一部として通信する。別の例示的な実現化例によれば、配向センサ835は、HMDまたはディスプレイ上でレンダリングされる際の画像パン配向(image panning orientation)に基づいて、配向(または配向の変化)を検出する。たとえば、HMDのユーザは、焦点深度を変更してもよい。言い換えれば、HMDのユーザは、配向の変化の有無にかかわらず、遠くにあった物体から近くにある物体に自分の焦点を変更してもよい(逆もまた同様)。たとえば、ユーザは、ディスプレイ上にレンダリングされる際の球状ビデオまたは画像の一部の選択、移動、ドラッグ、拡大などを行なうために、マウス、トラックパッド、または(たとえばタッチ感知ディスプレイ上での)ジェスチャを使用してもよい。
According to an exemplary implementation,
タイルに対する要求は、球状ビデオのフレームに対する要求とともに通信されてもよい。タイルに対する要求は、球状ビデオのフレームに対する要求とは別に、ともに通信されてもよい。たとえば、タイルに対する要求は、変更されたビュー、パースペクティブ、またはビューパースペクティブに応答してもよく、以前に要求された、および/または待ち行列に入れられたタイルを置き換える必要性をもたらす。 Requests for tiles may be communicated with requests for frames of the spherical video. Requests for tiles may be communicated separately from requests for frames of the spherical video. For example, a request for a tile may respond to a modified view, perspective, or view perspective, resulting in a need to replace a previously requested and / or queued tile.
ビュー位置制御モジュール805は、タイルに対する要求を受信し、処理する。たとえば、ビュー位置制御モジュール805は、ビューに基づいて、フレームと、そのフレームにおけるタイルまたは複数のタイルの位置とを判断し得る。次に、ビュー位置制御モジュール805は、タイル制御モジュール810に、タイルまたは複数のタイルを選択するよう命令し得る。タイルまたは複数のタイルを選択することは、パラメータをビデオエンコーダ625へ渡すことを含み得る。パラメータは、球状ビデオおよび/またはタイルの符号化中にビデオエンコーダ625によって使用され得る。これに代えて、タイルまたは複数のタイルを選択することは、ビューフレームストレージ795からタイルまたは複数のタイルを選択することを含み得る。
View position control module 805 receives and processes requests for tiles. For example, view position control module 805 may determine a frame and a position of a tile or tiles in the frame based on the view. Next, view position control module 805 may instruct tile control module 810 to select a tile or multiple tiles. Selecting the tile or tiles may include passing parameters to
したがって、タイル制御モジュール810は、球状ビデオを見ているユーザのビューまたはパースペクティブまたはビューパースペクティブに基づいてタイル(または複数のタイル)を選択するように構成されてもよい。タイルは、ビューに基づいて選択された複数の画素であってもよい。複数の画素は、ユーザによって見られ得る球状画像の一部を含み得る、ブロック、複数のブロック、またはマクロブロックであってもよい。球状画像の一部は、長さと幅とを有していてもよい。球状画像の一部は、2次元、または実質的に2次元であってもよい。タイルは、可変サイズ(たとえば、タイルは球の何割をカバーするか)を有し得る。たとえば、タイルのサイズは、たとえば、視聴者の視野がどれくらい広いか、および/または、ユーザがどれくらい速く自分の頭を回転させているかに基づいて、符号化され、ストリーミングされ得る。たとえば、視聴者が絶えず見回している場合、より大きく、より低品質のタイルが選択されるかもしれない。しかしながら、視聴者が1つのパースペクティブに注目している場合、より小さく、より詳細なタイルが選択されるかもしれない。 Accordingly, the tile control module 810 may be configured to select a tile (or multiple tiles) based on the view or perspective or view perspective of the user watching the spherical video. A tile may be a plurality of pixels selected based on a view. The plurality of pixels may be a block, a plurality of blocks, or a macroblock, which may include a portion of a spherical image that may be viewed by a user. Part of the spherical image may have a length and a width. A portion of the spherical image may be two-dimensional, or substantially two-dimensional. Tiles may have variable sizes (eg, what percentage of a sphere a tile covers). For example, the size of the tiles may be encoded and streamed, for example, based on how wide the viewer's field of view is and / or how fast the user is turning his or her head. For example, if the viewer is constantly looking around, larger, lower quality tiles may be selected. However, if the viewer is looking at one perspective, smaller, more detailed tiles may be selected.
したがって、配向センサ835は、視聴者の目(または頭)の配向(または配向の変化)を検出するように構成され得る。たとえば、配向センサ835は、動きを検出するために加速度計を、および、配向を検出するためにジャイロスコープを含み得る。これに代えて、またはこれに加えて、配向センサ835は、視聴者の目または頭の配向を判断するために、視聴者の目または頭に焦点を合わせたカメラまたは赤外線センサを含み得る。これに代えて、またはこれに加えて、配向センサ835は、球状ビデオまたは画像の配向を検出するために、ディスプレイ上でレンダリングされるような球状ビデオまたは画像の一部を判断し得る。配向センサ835は、配向および配向変化情報をビュー位置判断モジュール820に通信するように構成され得る。
Accordingly,
ビュー位置判断モジュール820は、球状ビデオに関してビューまたはパースペクティブビュー(たとえば、視聴者が現在見ている球状ビデオの一部)を判断するように構成され得る。ビュー、パースペクティブ、またはビューパースペクティブは、球状ビデオ上の位置、点、または焦点として判断され得る。たとえば、ビューは、球状ビデオ上の緯度および経度位置であってもよい。ビュー、パースペクティブ、またはビューパースペクティブは、球状ビデオに基づいて立方体の辺として判断され得る。ビュー(たとえば、緯度および経度位置、または辺)は、たとえばハイパーテキスト転送プロトコル(HTTP)を使用して、ビュー位置制御モジュール805に通信され得る。
The view
ビュー位置制御モジュール805は、球状ビデオ内のタイルまたは複数のタイルのビュー位置(たとえば、フレーム、およびそのフレーム内での位置)を判断するように構成されてもよい。たとえば、ビュー位置制御モジュール805は、ビュー位置、点、または焦点(たとえば、緯度および経度位置、または辺)を中心とする矩形を選択し得る。タイル制御モジュール810は、当該矩形をタイルまたは複数のタイルとして選択するように構成され得る。タイル制御モジュール810は、(たとえば、パラメータまたは構成設定を介して)ビデオエンコーダ625に、選択されたタイルまたは複数のタイルを符号化するよう命令するように構成され得る。および/または、タイル制御モジュール810は、ビューフレームストレージ795からタイルまたは複数のタイルを選択するように構成され得る。
The view position control module 805 may be configured to determine a view position (eg, a frame and a position within the frame) of a tile or multiple tiles in the spherical video. For example, view position control module 805 may select a rectangle centered on a view position, point, or focus (eg, a latitude and longitude position, or a side). Tile control module 810 may be configured to select the rectangle as a tile or multiple tiles. Tile control module 810 may be configured to instruct video encoder 625 (eg, via parameters or configuration settings) to encode the selected tile or tiles. And / or the tile control module 810 can be configured to select a tile or multiple tiles from the
理解されるように、図6Aに示すシステム600および図6Bに示すシステム650、および/または図8に示すシステム800は、図9に関して以下に説明される汎用コンピュータデバイス900および/または汎用モバイルコンピュータデバイス950の要素および/または拡張として実現されてもよい。これに代えて、またはこれに加えて、図6Aに示すシステム600および図6Bに示すシステム650、および/または図8に示すシステム800は、汎用コンピュータデバイス900および/または汎用モバイルコンピュータデバイス950に関して以下に説明される特徴のうちのいくつかまたはすべてを有する、汎用コンピュータデバイス900および/または汎用モバイルコンピュータデバイス950とは別個のシステムにおいて実現されてもよい。
As will be appreciated, the
図9は、ここに説明される手法を実現するために使用され得るコンピュータデバイスおよびモバイルコンピュータデバイスの概略ブロック図である。図9は、ここに説明される手法を用いて使用され得る汎用コンピュータデバイス900および汎用モバイルコンピュータデバイス950の一例である。コンピューティングデバイス900は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータといった、さまざまな形態のデジタルコンピュータを表わすよう意図されている。コンピューティングデバイス950は、携帯情報端末、携帯電話、スマートフォン、および他の同様のコンピューティングデバイスといった、さまざまな形態のモバイルデバイスを表わすよう意図されている。ここに示すコンポーネント、それらの接続および関係、ならびにそれらの機能は単なる例示であることが意図されており、本文書に記載のおよび/または請求項に記載の本発明の実現化例を限定するよう意図されてはいない。
FIG. 9 is a schematic block diagram of a computing device and a mobile computing device that may be used to implement the techniques described herein. FIG. 9 is an example of a general
コンピューティングデバイス900は、プロセッサ902と、メモリ904と、記憶装置906と、メモリ904および高速拡張ポート910に接続している高速インターフェイス908と、低速バス914および記憶装置906に接続している低速インターフェイス912とを含む。コンポーネント902、904、906、908、910、および912の各々は、さまざまなバスを使用して相互接続されており、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。プロセッサ902は、コンピューティングデバイス900内で実行される命令を処理可能であり、これらの命令は、GUIのためのグラフィック情報を、高速インターフェイス908に結合されたディスプレイ916などの外部入出力デバイス上に表示するために、メモリ904内または記憶装置906上に格納された命令を含む。他の実現化例では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよび複数のタイプのメモリとともに適宜使用されてもよい。また、複数のコンピューティングデバイス900が接続されてもよく、各デバイスは(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の部分を提供する。
The
メモリ904は、情報をコンピューティングデバイス900内に格納する。一実現化例では、メモリ904は1つまたは複数の揮発性メモリユニットである。別の実現化例では、メモリ904は1つまたは複数の不揮発性メモリユニットである。メモリ904はまた、磁気ディスクまたは光ディスクといった別の形態のコンピュータ読取可能媒体であってもよい。
Memory 904 stores information in
記憶装置906は、コンピューティングデバイス900のための大容量記憶を提供可能である。一実現化例では、記憶装置906は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、もしくはテープデバイス、フラッシュメモリまたは他の同様のソリッドステートメモリデバイス、もしくは、ストレージエリアネットワークまたは他の構成におけるデバイスを含むデバイスのアレイといった、コンピュータ読取可能媒体であってもよく、または当該コンピュータ読取可能媒体を含んでいてもよい。コンピュータプログラム製品が情報担体において有形に具現化され得る。コンピュータプログラム製品はまた、実行されると上述のような1つ以上の方法を行なう命令を含んでいてもよい。情報担体は、メモリ904、記憶装置906、またはプロセッサ902上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体である。
The
高速コントローラ908はコンピューティングデバイス900のための帯域幅集約的な動作を管理し、一方、低速コントローラ912はより低い帯域幅集約的な動作を管理する。機能のそのような割当ては例示に過ぎない。一実現化例では、高速コントローラ908は、メモリ904、ディスプレイ916に(たとえば、グラフィックスプロセッサまたはアクセラレータを介して)、および、さまざまな拡張カード(図示せず)を受付け得る高速拡張ポート910に結合される。この実現化例では、低速コントローラ912は、記憶装置906および低速拡張ポート914に結合される。さまざまな通信ポート(たとえば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、無線イーサネット)を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナなどの1つ以上の入出力デバイスに、もしくは、スイッチまたはルータなどのネットワーキングデバイスに、たとえばネットワークアダプタを介して結合されてもよい。
コンピューティングデバイス900は、図に示すように多くの異なる形態で実現されてもよい。たとえばそれは、標準サーバ920として、またはそのようなサーバのグループで複数回実現されてもよい。それはまた、ラックサーバシステム924の一部として実現されてもよい。加えて、それは、ラップトップコンピュータ922などのパーソナルコンピュータにおいて実現されてもよい。これに代えて、コンピューティングデバイス900からのコンポーネントは、デバイス950などのモバイルデバイス(図示せず)における他のコンポーネントと組合されてもよい。そのようなデバイスの各々は、コンピューティングデバイス900、950のうちの1つ以上を含んでいてもよく、システム全体が、互いに通信する複数のコンピューティングデバイス900、950で構成されてもよい。
コンピューティングデバイス950は、数あるコンポーネントの中でも特に、プロセッサ952と、メモリ964と、ディスプレイ954などの入出力デバイスと、通信インターフェイス966と、トランシーバ968とを含む。デバイス950にはまた、追加の格納を提供するために、マイクロドライブまたは他のデバイスなどの記憶装置が設けられてもよい。コンポーネント950、952、964、954、966、および968の各々は、さまざまなバスを使用して相互接続されており、当該コンポーネントのうちのいくつかは、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。
The
プロセッサ952は、メモリ964に格納された命令を含む、コンピューティングデバイス950内の命令を実行可能である。プロセッサは、別個の複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実現されてもよい。プロセッサは、たとえば、ユーザインターフェイス、デバイス950が実行するアプリケーション、およびデバイス950による無線通信の制御といった、デバイス950の他のコンポーネント同士の連携を提供してもよい。
プロセッサ952は、ディスプレイ954に結合された制御インターフェイス958およびディスプレイインターフェイス956を介してユーザと通信してもよい。ディスプレイ954は、たとえば、TFT LCD(Thin-Film-Transistor Liquid Crystal Display:薄膜トランジスタ液晶ディスプレイ)、またはOLED(Organic Light Emitting Diode:有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であってもよい。ディスプレイインターフェイス956は、ディスプレイ954を駆動してグラフィカル情報および他の情報をユーザに提示するための適切な回路を含んでいてもよい。制御インターフェイス958は、ユーザからコマンドを受信し、それらをプロセッサ952に送出するために変換してもよい。加えて、デバイス950と他のデバイスとの近接エリア通信を可能にするように、外部インターフェイス962がプロセッサ952と通信した状態で設けられてもよい。外部インターフェイス962は、たとえば、ある実現化例では有線通信を提供し、他の実現化例では無線通信を提供してもよく、複数のインターフェイスも使用されてもよい。
メモリ964は、情報をコンピューティングデバイス950内に格納する。メモリ964は、1つまたは複数のコンピュータ読取可能媒体、1つまたは複数の揮発性メモリユニット、もしくは、1つまたは複数の不揮発性メモリユニットのうちの1つ以上として実現され得る。拡張メモリ974も設けられ、拡張インターフェイス972を介してデバイス950に接続されてもよく、拡張インターフェイス972は、たとえばSIMM(Single In Line Memory Module)カードインターフェイスを含んでいてもよい。そのような拡張メモリ974は、デバイス950に余分の格納スペースを提供してもよく、もしくは、デバイス950のためのアプリケーションまたは他の情報も格納してもよい。具体的には、拡張メモリ974は、上述のプロセスを実行または補足するための命令を含んでいてもよく、安全な情報も含んでいてもよい。このため、たとえば、拡張メモリ974はデバイス950のためのセキュリティモジュールとして設けられてもよく、デバイス950の安全な使用を許可する命令でプログラミングされてもよい。加えて、ハッキング不可能な態様でSIMMカード上に識別情報を載せるといったように、安全なアプリケーションが追加情報とともにSIMMカードを介して提供されてもよい。
メモリはたとえば、以下に説明されるようなフラッシュメモリおよび/またはNVRAMメモリを含んでいてもよい。一実現化例では、コンピュータプログラム製品が情報担体において有形に具現化される。コンピュータプログラム製品は、実行されると上述のような1つ以上の方法を行なう命令を含む。情報担体は、メモリ964、拡張メモリ974、またはプロセッサ952上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体であり、たとえばトランシーバ968または外部インターフェイス962を通して受信され得る。
The memory may include, for example, flash memory and / or NVRAM memory as described below. In one implementation, a computer program product is tangibly embodied in an information carrier. The computer program product includes instructions that, when executed, perform one or more methods as described above. The information carrier is a computer-readable or machine-readable medium, such as
デバイス950は、必要に応じてデジタル信号処理回路を含み得る通信インターフェイス966を介して無線通信してもよい。通信インターフェイス966は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、またはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSといった、さまざまなモードまたはプロトコル下での通信を提供してもよい。そのような通信は、たとえば無線周波数トランシーバ968を介して生じてもよい。加えて、ブルートゥース、Wi−Fi、または他のそのようなトランシーバ(図示せず)などを使用して、短距離通信が生じてもよい。加えて、GPS(Global Positioning System:全地球測位システム)レシーバモジュール970が、追加のナビゲーション関連および位置関連無線データをデバイス950に提供してもよく、当該データは、デバイス950上で実行されるアプリケーションによって適宜使用されてもよい。
デバイス950はまた、ユーザから口頭情報を受信してそれを使用可能なデジタル情報に変換し得る音声コーデック960を使用して、音声通信してもよい。音声コーデック960はまた、たとえばデバイス950のハンドセットにおいて、スピーカを介するなどして、ユーザに聞こえる音を生成してもよい。そのような音は、音声電話からの音を含んでいてもよく、録音された音(たとえば、音声メッセージ、音楽ファイルなど)を含んでいてもよく、デバイス950上で動作するアプリケーションが生成する音も含んでいてもよい。
コンピューティングデバイス950は、図に示すように多くの異なる形態で実現されてもよい。たとえばそれは、携帯電話980として実現されてもよい。それはまた、スマートフォン982、携帯情報端末、または他の同様のモバイルデバイスの一部として実現されてもよい。
上述の例示的な実施形態のうちのいくつかは、フローチャートとして示されるプロセスまたは方法として説明される。これらのフローチャートは動作を逐次プロセスとして説明しているが、動作の多くは、並列、同時または一斉に行なわれてもよい。加えて、動作の順序は並び替えられてもよい。それらの動作が完了されるとプロセスは終了されてもよいが、図に含まれていない追加のステップも有していてもよい。これらのプロセスは、方法、機能、手順、サブルーチン、サブプログラムなどに対応していてもよい。 Some of the exemplary embodiments described above are described as processes or methods illustrated as flowcharts. Although these flowcharts describe operations as sequential processes, many of the operations may be performed in parallel, simultaneously, or all at once. In addition, the order of the operations may be rearranged. The process may be terminated when those operations are completed, but may have additional steps not included in the figure. These processes may correspond to methods, functions, procedures, subroutines, subprograms, etc.
そのいくつかがフローチャートによって示されている、上述された方法は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実現されてもよい。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードにおいて実現される場合、必要なタスクを行なうプログラムコードまたはコードセグメントは、記憶媒体などの機械読取可能媒体またはコンピュータ読取可能媒体に格納されてもよい。プロセッサが必要なタスクを行なってもよい。 The methods described above, some of which are illustrated by flowcharts, may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, program code or code segments that perform the necessary tasks may be stored on machine-readable or computer-readable media, such as storage media. The processor may perform the necessary tasks.
ここに開示された具体的な構造詳細および機能詳細は、例示的な実施形態を説明するための代表的なものに過ぎない。しかしながら、例示的な実施形態は、多くの代替的な形態で具現化され、ここに述べられた実施形態のみに限定されると解釈されるべきでない。 The specific structural and functional details disclosed herein are merely representative for describing example embodiments. However, the exemplary embodiments may be embodied in many alternative forms and should not be construed as limited to only the embodiments set forth herein.
第1、第2などといった用語は、さまざまな要素を説明するためにここに使用され得るが、これらの要素はこれらの用語によって限定されるべきでない、ということが理解されるであろう。これらの用語は、1つの要素を別の要素と区別するために使用されているに過ぎない。たとえば、例示的な実施形態の範囲から逸脱することなく、第1の要素を第2の要素と称してもよく、同様に、第2の要素を第1の要素と称してもよい。ここに使用されるように、「および/または」という用語は、関連付けられる列挙された項目の1つ以上のいずれかおよびすべての組合せを含む。 Terms such as first, second, etc. may be used herein to describe various elements, but it will be understood that these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element without departing from the scope of the exemplary embodiments. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
ある要素が別の要素に接続または結合されると称される場合、ある要素は別の要素に直接接続または結合され得るか、または介在要素が存在し得る、ということが理解されるであろう。対照的に、ある要素が別の要素に直接接続または直接結合されると称される場合、介在要素は存在しない。要素間の関係を説明するために使用される他の文言は、類似の態様(たとえば、「間に」と「間に直接」、「隣接」と「直接隣接」など)で解釈されるべきである。 When one element is referred to as being connected or coupled to another element, it will be understood that one element may be directly connected or coupled to another element or that there may be intervening elements. . In contrast, when one element is referred to as being directly connected to or directly coupled to another element, there are no intervening elements. Other language used to describe relationships between elements should be construed in a similar manner (eg, "between" and "directly between", "adjacent" and "directly adjacent", etc.). is there.
ここに使用される用語は特定の実施形態を説明するためのものに過ぎず、例示的な実施形態の限定であるよう意図されてはいない。ここに使用されるように、単数形は、文脈が別の態様を明らかに示していない限り、複数形も含むよう意図される。「備える(comprises, comprising)」および/または「含む(includes, including)」という用語は、ここに使用される場合、言及された特徴、整数、ステップ、動作、要素および/またはコンポーネントの存在を特定するが、1つ以上の他の特徴、整数、ステップ、動作、要素、コンポーネントおよび/またはそれらのグループの存在または追加を排除しない、ということがさらに理解されるであろう。 The terms used in the description are intended to describe certain embodiments only, and are not intended to be limiting of the exemplary embodiments. As used herein, the singular is also intended to include the plural unless the context clearly indicates otherwise. The terms "comprises, comprising" and / or "includes, including" as used herein identify the presence of the feature, integer, step, operation, element and / or component mentioned. It will be further understood, however, that this does not preclude the presence or addition of one or more other features, integers, steps, acts, elements, components and / or groups thereof.
また、いくつかの代替的な実現化例では、言及された機能/行為が、図に示された順番とは異なって起きてもよい。たとえば、連続して示される2つの図は実際には、関与する機能性/行為に依存して、同時に実行されてもよく、または、時には逆の順序で実行されてもよい。 Also, in some alternative implementations, the functions / acts noted may occur out of the order noted in the figures. For example, two figures shown in succession may, in fact, be performed simultaneously, or sometimes in the reverse order, depending on the functionality / acts involved.
別の態様で定義されていない限り、ここに使用されるすべての用語(技術用語および科学用語を含む)は、例示的な実施形態が属する技術の当業者によって一般に理解されているのと同じ意味を有する。さらに、たとえば一般に使用されている辞書で定義されているような用語は、関連技術の文脈におけるそれらの意味と一致する意味を有すると解釈されるべきであり、ここに明らかにそう定義されていない限り、理想化されたまたは過度に形式的な意味で解釈されない、ということが理解されるであろう。 Unless defined otherwise, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art to which the exemplary embodiment belongs. Having. Furthermore, terms such as those defined in commonly used dictionaries should be construed as having meanings consistent with their meanings in the context of the relevant art, and are not explicitly so defined herein. It will be understood that, as long as it is not interpreted in an idealized or overly formal sense.
ソフトウェア、または、コンピュータメモリ内でのデータビットに対する動作のアルゴリズムおよび記号的表現に関して、上述の例示的な実施形態および対応する詳細な説明の部分が提示される。これらの説明および表現は、当業者が自分の研究の内容を他の当業者に効果的に伝えるものである。アルゴリズムとは、その用語がここに使用される場合、および一般的に使用される場合、所望の結果に至るステップの首尾一貫したシーケンスであると考えられる。これらのステップは、物理量の物理的操作を必要とするものである。必ずではないものの、通常は、これらの量は、格納、転送、組合せ、比較、および別の態様での操作が可能である光学信号、電気信号、または磁気信号の形態を取る。これらの信号をビット、値、要素、記号、文字、項、または数字などと称することは、主に一般的な使用の理由により、時に便利であることが証明されている。 With respect to software or algorithms and symbolic representations of operations on data bits within a computer memory, portions of the illustrative embodiments described above and corresponding detailed description are presented. These descriptions and expressions enable those skilled in the art to effectively convey the substance of their work to others skilled in the art. An algorithm, as the term is used herein, and as it is commonly used, is considered to be a consistent sequence of steps leading to a desired result. These steps require physical manipulation of physical quantities. Usually, but not necessarily, these quantities take the form of optical, electrical, or magnetic signals that can be stored, transferred, combined, compared, and otherwise manipulated. Referencing these signals as bits, values, elements, symbols, characters, terms, or numbers, etc., has proven convenient at times, primarily for reasons of common usage.
上述の例示的な実施形態において、プログラムモジュールまたは機能的プロセスとして実現され得る(たとえばフローチャートの形態での)行為および動作の記号的表現への参照は、特定のタスクを行ない、または特定の抽象データタイプを実現するとともに、既存の構造要素で既存のハードウェアを使用して記述および/または実現され得る、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。そのような既存のハードウェアは、1つ以上の中央処理装置(CPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路、または、フィールドプログラマブルゲートアレイ(FPGA)コンピュータなどを含み得る。 In the above-described exemplary embodiments, references to symbolic representations of acts and acts (eg, in the form of flowcharts) that can be implemented as program modules or functional processes perform particular tasks, or implement particular abstract data Includes routines, programs, objects, components, data structures, etc. that implement the type and can be described and / or implemented with existing hardware using existing hardware. Such existing hardware may include one or more central processing units (CPUs), digital signal processors (DSPs), application specific integrated circuits, or field programmable gate array (FPGA) computers.
しかしながら、これらおよび同様の用語はすべて、適切な物理量に関連付けられるべきであり、これらの量に適用された便利なラベルに過ぎない、ということが念頭に置かれるべきである。特に別記されない限り、あるいは説明から明らかであるように、表示の処理、コンピューティング、計算、または判断といった用語は、コンピュータシステムのレジスタおよびメモリ内で物理的な電子量として表わされるデータを操作し、当該データを、コンピュータシステムメモリ、レジスタ、もしくは他のそのような情報記憶デバイス、送信デバイスまたは表示デバイス内の物理量として同様に表わされる他のデータに変換する、コンピュータシステムまたは同様の電子コンピューティングデバイスのアクションおよびプロセスを指す。 However, it should be kept in mind that all of these and similar terms should be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless otherwise stated, or as will be apparent from the description, terms such as processing, computing, calculating, or determining display manipulate data represented as physical quantities of electrons in registers and memories of computer systems; A computer system or similar electronic computing device that converts the data into computer system memory, registers, or other such information storage devices, transmitting devices or other data that are also represented as physical quantities in a display device. Refers to actions and processes.
また、例示的な実施形態のソフトウェアによって実現される局面は典型的には、何らかの形態の非一時的なプログラム記憶媒体上で符号化されるか、または、何らかのタイプの伝送媒体上で実現される。プログラム記憶媒体は、磁気的(たとえば、フロッピーディスクまたはハードドライブ)であるか、または光学的(たとえば、コンパクトディスク読み取り専用メモリ、すなわちCD ROM)であってもよく、読み取り専用またはランダムアクセスであってもよい。同様に、伝送媒体は、当該技術について公知であるツイストペア線、同軸ケーブル、光ファイバ、または何らかの他の好適な伝送媒体であってもよい。例示的な実施形態は、所与の実現化例のこれらの局面によって限定されない。 Also, aspects implemented by the software of the exemplary embodiments are typically encoded on some form of non-transitory program storage media, or implemented on some type of transmission medium. . The program storage medium may be magnetic (eg, a floppy disk or hard drive) or optical (eg, a compact disk read-only memory, ie, CD ROM), read-only or random-access. Is also good. Similarly, the transmission medium may be a twisted pair wire, coaxial cable, optical fiber, or any other suitable transmission medium known in the art. The illustrative embodiments are not limited by these aspects of a given implementation.
最後に、添付の請求の範囲は、ここに説明された特徴の特定の組合せを述べているが、本開示の範囲は、請求されるその特定の組合せに限定されず、代わりに、その特定の組合せが現時点で添付の請求の範囲において具体的に列挙されているか否かに関わらず、ここに開示された特徴または実施形態の任意の組合せを包含するように広がる。 Finally, while the appended claims set forth certain combinations of the features described herein, the scope of the disclosure is not limited to the specific combinations claimed, but instead includes those specific combinations. Whether or not the combinations are specifically recited in the appended claims at this time, they extend to encompass any combination of the features or embodiments disclosed herein.
Claims (21)
3次元(3D)ビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するステップを含み、前記ビューパースペクティブは、前記3Dビデオの視聴者によって見られた少なくとも1つの基準点に基づいて選択された領域に対応し、
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化するステップと、
前記3Dビデオの第2の部分を第2の品質で符号化するステップとを含み、前記第1の品質は前記第2の品質と比べてより高い品質であり、
ストリーミングビデオに対する要求を受信するステップをさらに含み、前記要求は、前記3Dビデオに関連付けられたユーザビューパースペクティブの表示を含み、前記方法はさらに、
前記ユーザビューパースペクティブがビューパースペクティブデータストアに格納されているかどうかを判断するステップと、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていると判断すると、前記ユーザビューパースペクティブに関連付けられたカウンタをインクリメントするステップと、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていないと判断すると、前記ユーザビューパースペクティブを前記ビューパースペクティブデータストアに追加し、前記ユーザビューパースペクティブに関連付けられた前記カウンタを1に設定するステップとを含む、方法。 The method
Determining at least one preferred view perspective associated with a three-dimensional (3D) video, wherein the view perspective is a region selected based on at least one reference point viewed by a viewer of the 3D video. Corresponding to
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
Encoding a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality;
Further comprising receiving a request for streaming video, wherein the request includes displaying a user view perspective associated with the 3D video, the method further comprising:
Determining whether the user view perspective is stored in a view perspective data store;
Upon determining that the user view perspective is stored in the view perspective data store, incrementing a counter associated with the user view perspective;
Determining that the user view perspective is not stored in the view perspective data store, adding the user view perspective to the view perspective data store, and setting the counter associated with the user view perspective to 1; Including, methods.
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化するステップと、
前記3Dビデオの第2の部分を第2の品質で符号化するステップとを含み、前記第1の品質は前記第2の品質と比べてより高い品質であり、
前記3Dビデオの前記第2の部分の少なくとも一部を前記第1の品質で繰り返し符号化するステップと、
前記3Dビデオの前記第2の部分の前記少なくとも一部をストリーミングするステップとをさらに含む、方法。 Determining at least one preferred view perspective associated with a three-dimensional (3D) video, wherein the view perspective is a region selected based on at least one reference point viewed by a viewer of the 3D video. Corresponding to
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
Encoding a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality;
Repeatedly encoding at least a portion of the second portion of the 3D video with the first quality;
Streaming said at least a portion of said second portion of said 3D video.
前記複数の履歴ビューパースペクティブに関連付けられたランキング値が閾値よりも大きく、前記複数の履歴ビューパースペクティブの残りに対する条件を満たしているか否かを判断するステップと、
前記ランキング値が閾値よりも大きく、前記条件を満たしているとの判断に応答して、前記3Dビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブとして、前記複数の履歴ビューパースペクティブの一つを選択するステップと、
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化するステップと、
前記3Dビデオの第2の部分を第2の品質で符号化するステップとを含み、前記第1の品質は前記第2の品質と比べてより高い品質である、方法。 Storing the view perspective as one of a plurality of historical view perspectives for the three-dimensional (3D) video based on the previously viewed view perspective associated with the three-dimensional (3D) video; The view perspective corresponds to an area selected based on at least one reference point viewed by a viewer of the 3D video;
Determining whether the ranking value associated with the plurality of history view perspectives is greater than a threshold and satisfies a condition for the rest of the plurality of history view perspectives,
The ranking value is greater than the threshold value, in response to determining that meets the above conditions, as at least one preferred view perspectives associated et a in the 3D video, selecting one of the plurality of history view perspectives Steps to
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
Encoding a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality.
前記3Dビデオの前記第2の部分を前記データストアに格納するステップと、
ストリーミングビデオに対する要求を受信するステップと、
前記データストアから前記3Dビデオの前記第1の部分と前記3Dビデオの前記第2の部分とを前記ストリーミングビデオとしてストリーミングするステップとをさらに含む、請求項1〜3のいずれかに記載の方法。 Storing the first portion of the 3D video in a data store;
Storing the second portion of the 3D video in the data store;
Receiving a request for streaming video;
The method of any of claims 1 to 3, further comprising: streaming the first portion of the 3D video and the second portion of the 3D video from the data store as the streaming video.
前記ユーザビューパースペクティブに対応する3Dビデオを、前記3Dビデオの符号化された前記第1の部分として選択するステップと、
前記3Dビデオの選択された前記第1の部分と前記3Dビデオの前記第2の部分とを前記ストリーミングビデオとしてストリーミングするステップとを含む、請求項1〜3のいずれかに記載の方法。 Further comprising receiving a request for streaming video, wherein the request comprises displaying a user view perspective, the method further comprising:
Selecting a 3D video corresponding to the user view perspective as the encoded first portion of the 3D video;
4. The method of any of the preceding claims, comprising streaming the selected first portion of the 3D video and the second portion of the 3D video as the streaming video.
前記ユーザビューパースペクティブがビューパースペクティブデータストアに格納されているかどうかを判断するステップと、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていると判断すると、前記ユーザビューパースペクティブに関連付けられたカウンタをインクリメントするステップと、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていないと判断すると、前記ユーザビューパースペクティブを前記ビューパースペクティブデータストアに追加し、前記ユーザビューパースペクティブに関連付けられた前記カウンタを1に設定するステップとを含む、請求項1〜3のいずれかに記載の方法。 Further comprising receiving a request for streaming video, wherein the request includes displaying a user view perspective associated with the 3D video, the method further comprising:
Determining whether the user view perspective is stored in a view perspective data store;
Upon determining that the user view perspective is stored in the view perspective data store, incrementing a counter associated with the user view perspective;
Determining that the user view perspective is not stored in the view perspective data store, adding the user view perspective to the view perspective data store, and setting the counter associated with the user view perspective to 1; The method according to claim 1, comprising:
前記3Dビデオの前記第1の部分を符号化するステップは、少なくとも1つの第2のQoS(Quality of Service)パラメータを第2のパス符号化動作で使用するステップを含む、請求項1〜6のいずれか1項に記載の方法。 Encoding the second portion of the 3D video includes using at least one first quality of service (QoS) parameter in a first pass encoding operation;
7. The method of claim 1, wherein encoding the first portion of the 3D video comprises using at least one second Quality of Service (QoS) parameter in a second pass encoding operation. A method according to any one of the preceding claims.
前記デフォルトビューパースペクティブは、
ディスプレイデバイスのユーザの特性、
前記ディスプレイデバイスの前記ユーザに関連付けられたグループの特性、
ディレクターズカット、および、
前記3Dビデオの特性、のうちの少なくとも1つに基づいている、請求項1〜3のいずれかに記載の方法。 Determining the at least one preferred view perspective associated with the 3D video is based on a default view perspective;
The default view perspective is
Display device user characteristics,
Characteristics of a group associated with the user of the display device;
Director's cut, and
The method according to any of the preceding claims, wherein the method is based on at least one of the characteristics of the 3D video.
3次元(3D)ビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するように構成されたコントローラと、
エンコーダとを含み、前記ビューパースペクティブは、前記3Dビデオの視聴者によって見られた少なくとも1つの基準点に基づいて選択された領域に対応し、
前記エンコーダは、
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化し、
前記3Dビデオの第2の部分を第2の品質で符号化するように構成され、前記第1の品質は前記第2の品質と比べてより高い品質であり、
前記コントローラはさらに、
ストリーミングビデオに対する要求を受信するように構成され、前記要求は、前記3Dビデオに関連付けられたユーザビューパースペクティブの表示を含み、前記コントローラはさらに、
前記ユーザビューパースペクティブがビューパースペクティブデータストアに格納されているかどうかを判断し、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていると判断すると、前記ユーザビューパースペクティブに関連付けられたカウンタをインクリメントし、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていないと判断すると、前記ユーザビューパースペクティブを前記ビューパースペクティブデータストアに追加し、前記ユーザビューパースペクティブに関連付けられた前記カウンタを1に設定するように構成される、ストリーミングサーバ。 A streaming server,
A controller configured to determine at least one preferred view perspective associated with the three-dimensional (3D) video;
An encoder, wherein the view perspective corresponds to an area selected based on at least one reference point viewed by a viewer of the 3D video;
The encoder is
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
Configured to encode a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality;
The controller further comprises:
The controller is configured to receive a request for streaming video, the request including displaying a user view perspective associated with the 3D video, the controller further comprising:
Determining whether the user view perspective is stored in a view perspective data store,
Upon determining that the user view perspective is stored in the view perspective data store, incrementing a counter associated with the user view perspective,
Upon determining that the user view perspective is not stored in the view perspective data store, adding the user view perspective to the view perspective data store and setting the counter associated with the user view perspective to one. Configured streaming server.
3次元(3D)ビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブを判断するように構成されたコントローラと、
エンコーダとを含み、前記ビューパースペクティブは、前記3Dビデオの視聴者によって見られた少なくとも1つの基準点に基づいて選択された領域に対応し、
前記エンコーダは、
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化し、
前記3Dビデオの第2の部分を第2の品質で符号化するように構成され、前記第1の品質は前記第2の品質と比べてより高い品質であり、
前記コントローラはさらに、
前記3Dビデオの前記第2の部分の少なくとも一部を前記第1の品質で繰り返し符号化し、
前記3Dビデオの前記第2の部分の前記少なくとも一部をストリーミングするように構成される、ストリーミングサーバ。 A streaming server,
A controller configured to determine at least one preferred view perspective associated with the three-dimensional (3D) video;
An encoder, wherein the view perspective corresponds to an area selected based on at least one reference point viewed by a viewer of the 3D video;
The encoder is
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
Configured to encode a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality;
The controller further comprises:
Iteratively encoding at least a portion of the second portion of the 3D video with the first quality;
A streaming server configured to stream the at least a portion of the second portion of the 3D video.
過去に視聴されて3次元(3D)ビデオに関連づけられたビューパースペクティブに基づいて、当該3次元(3D)ビデオについての複数の履歴ビューパースペクティブのうちの一つとしてビューパースペクティブを保存するように構成されたメモリを備え、前記複数の履歴ビューパースペクティブは前記3次元(3D)ビデオの複数のユーザに関連付けられており、前記ビューパースペクティブは、前記3Dビデオの視聴者によって見られた少なくとも1つの基準点に基づいて選択された領域に対応し、
コントローラを備え、前記コントローラは、
前記複数の履歴ビューパースペクティブに関連付けられたランキング値が閾値よりも大きく、前記複数の履歴ビューパースペクティブの残りに対する条件を満たしているか否かを判断し、
前記ランキング値が閾値よりも大きく、前記条件を満たしているとの判断に応答して、前記3Dビデオに関連付けられた少なくとも1つの好ましいビューパースペクティブとして、前記複数の履歴ビューパースペクティブの一つを選択するように構成されており、
エンコーダを備え、前記エンコーダは、
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化し、
前記3Dビデオの第2の部分を第2の品質で符号化するように構成されており、前記第1の品質は前記第2の品質と比べてより高い品質である、方法。 A streaming server,
Based on a view perspective previously viewed and associated with the three-dimensional (3D) video, configured to store the view perspective as one of a plurality of historical view perspectives for the three-dimensional (3D) video. Wherein the plurality of historical view perspectives are associated with a plurality of users of the three-dimensional (3D) video, wherein the view perspective includes at least one reference point viewed by a viewer of the 3D video Corresponding to the region selected based on
Comprising a controller, wherein the controller comprises:
The ranking value associated with the plurality of history view perspectives is greater than a threshold, and determines whether or not a condition for the rest of the plurality of history view perspectives is satisfied,
The ranking value is greater than the threshold value, in response to determining that meets the above conditions, as at least one preferred view perspectives associated et a in the 3D video, selecting one of the plurality of history view perspectives Is configured to
Comprising an encoder, wherein the encoder comprises:
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
The method, wherein the method is configured to encode a second portion of the 3D video at a second quality, wherein the first quality is higher quality than the second quality.
前記3Dビデオの前記第1の部分をデータストアに格納し、
前記3Dビデオの前記第2の部分を前記データストアに格納し、
ストリーミングビデオに対する要求を受信し、
前記データストアから前記3Dビデオの前記第1の部分と前記3Dビデオの前記第2の部分とを前記ストリーミングビデオとしてストリーミングするように構成される、請求項10〜12のいずれかに記載のストリーミングサーバ。 The controller further comprises:
Storing the first portion of the 3D video in a data store;
Storing the second portion of the 3D video in the data store;
Receiving a request for streaming video,
The streaming server according to any of claims 10 to 12, wherein the streaming server is configured to stream the first part of the 3D video and the second part of the 3D video as the streaming video from the data store. .
ストリーミングビデオに対する要求を受信するように構成され、前記要求は、ユーザビューパースペクティブの表示を含み、前記コントローラはさらに、
前記ユーザビューパースペクティブに対応する3Dビデオを、3Dビデオの符号化された前記第1の部分として選択し、
前記3Dビデオの選択された前記第1の部分と前記3Dビデオの前記第2の部分とを前記ストリーミングビデオとしてストリーミングするように構成される、請求項10〜12のいずれかに記載のストリーミングサーバ。 The controller further comprises:
Configured to receive a request for streaming video, wherein the request includes displaying a user view perspective, the controller further comprising:
Selecting a 3D video corresponding to the user view perspective as the encoded first portion of the 3D video;
The streaming server according to any of claims 10 to 12, wherein the streaming server is configured to stream the selected first part of the 3D video and the second part of the 3D video as the streaming video.
前記3Dビデオの前記第1の部分を符号化することは、少なくとも1つの第2のQoS(Quality of Service)パラメータを第2のパス符号化動作で使用することを含む、請求項10〜12のいずれか1項に記載のストリーミングサーバ。 Encoding the second portion of the 3D video includes using at least one first quality of service (QoS) parameter in a first pass encoding operation;
13. The method of claim 10, wherein encoding the first portion of the 3D video comprises using at least one second Quality of Service (QoS) parameter in a second pass encoding operation. A streaming server according to any one of the preceding claims.
前記デフォルトビューパースペクティブは、
ディスプレイデバイスのユーザの特性、
前記ディスプレイデバイスの前記ユーザに関連付けられたグループの特性、
ディレクターズカット、および、
前記3Dビデオの特性、のうちの少なくとも1つに基づいている、請求項10〜12のいずれかに記載のストリーミングサーバ。 Determining the at least one preferred view perspective associated with the 3D video is based on a default view perspective,
The default view perspective is
Display device user characteristics,
Characteristics of a group associated with the user of the display device;
Director's cut, and
The streaming server according to claim 10, wherein the streaming server is based on at least one of the characteristics of the 3D video.
前記3Dビデオの前記第2の部分の少なくとも一部を前記第1の品質で繰り返し符号化することと、
前記3Dビデオの前記第2の部分の前記少なくとも一部をストリーミングすることとを引き起こすように構成される、請求項10または12に記載のストリーミングサーバ。 The controller further comprises:
Iteratively encoding at least a portion of the second portion of the 3D video with the first quality;
The streaming server according to claim 10 or 12, wherein the streaming server is configured to cause the at least a portion of the second portion of the 3D video to be streamed.
ストリーミングビデオに対する要求を受信するステップを含み、前記要求は、3次元(3D)ビデオに関連付けられたユーザビューパースペクティブの表示を含み、前記ユーザビューパースペクティブは、前記3Dビデオの視聴者によって見られた少なくとも1つの基準点に基づいて選択された領域に対応し、
前記方法はさらに、
前記ユーザビューパースペクティブがビューパースペクティブデータストアに格納されているかどうかを判断するステップと、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていると判断すると、前記ユーザビューパースペクティブに関連付けられたランキング値をインクリメントするステップと、
前記ユーザビューパースペクティブが前記ビューパースペクティブデータストアに格納されていないと判断すると、前記ユーザビューパースペクティブを前記ビューパースペクティブデータストアに追加し、前記ユーザビューパースペクティブに関連付けられた前記ランキング値を1に設定するステップとを含む、方法。 The method
Receiving a request for streaming video, wherein the request includes displaying a user view perspective associated with the three-dimensional (3D) video, wherein the user view perspective includes at least Corresponding to the area selected based on one reference point,
The method further comprises:
Determining whether the user view perspective is stored in a view perspective data store;
When determining that the user view perspective is stored in the view perspective data store, incrementing a ranking value associated with the user view perspective,
Determining that the user view perspective is not stored in the view perspective data store, adding the user view perspective to the view perspective data store and setting the ranking value associated with the user view perspective to 1; And a method comprising:
前記少なくとも1つの好ましいビューパースペクティブに対応する前記3Dビデオの第1の部分を第1の品質で符号化するステップと、
前記3Dビデオの第2の部分を第2の品質で符号化するステップとをさらに含み、前記第1の品質は前記第2の品質と比べてより高い品質である、請求項19に記載の方法。 Determining at least one preferred view perspective associated with the 3D video based on the ranking value associated with the stored user view perspective;
Encoding a first portion of the 3D video corresponding to the at least one preferred view perspective with a first quality;
Encoding the second portion of the 3D video at a second quality, wherein the first quality is a higher quality compared to the second quality. .
前記プログラムは、前記コンピュータに、請求項1〜9、19および20のいずれか1項に記載の方法を実行させる、プログラム。 A program executed by a computer,
The program causing the computer to execute the method according to any one of claims 1 to 9, 19, and 20.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562167261P | 2015-05-27 | 2015-05-27 | |
US62/167,261 | 2015-05-27 | ||
PCT/US2016/034698 WO2016191702A1 (en) | 2015-05-27 | 2016-05-27 | Method and apparatus to reduce spherical video bandwidth to user headset |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018522430A JP2018522430A (en) | 2018-08-09 |
JP6672327B2 true JP6672327B2 (en) | 2020-03-25 |
Family
ID=56137532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017550903A Active JP6672327B2 (en) | 2015-05-27 | 2016-05-27 | Method and apparatus for reducing spherical video bandwidth to a user headset |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP3304895A1 (en) |
JP (1) | JP6672327B2 (en) |
KR (1) | KR101969943B1 (en) |
CN (1) | CN107409203A (en) |
WO (1) | WO2016191702A1 (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11164606B2 (en) * | 2017-06-30 | 2021-11-02 | Qualcomm Incorporated | Audio-driven viewport selection |
US11290758B2 (en) * | 2017-08-30 | 2022-03-29 | Samsung Electronics Co., Ltd. | Method and apparatus of point-cloud streaming |
WO2019068310A1 (en) * | 2017-10-02 | 2019-04-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for improved encoding of immersive video |
CN109996069B (en) | 2018-01-03 | 2021-12-10 | 华为技术有限公司 | Video image coding and decoding method and device |
EP3515082B1 (en) * | 2018-01-19 | 2020-05-13 | Nokia Technologies Oy | Server device for streaming video content and client device for receiving and rendering video content |
CN109089097A (en) * | 2018-08-28 | 2018-12-25 | 恒信东方文化股份有限公司 | A kind of object of focus choosing method based on VR image procossing |
WO2021097803A1 (en) * | 2019-11-22 | 2021-05-27 | 北京小米移动软件有限公司 | Resource switching method and apparatus and storage medium |
WO2023090961A1 (en) * | 2021-11-22 | 2023-05-25 | 주식회사 컬러버스 | System and method for providing plurality of pieces of three-dimensional content by using web browser |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3579526B2 (en) * | 1995-10-31 | 2004-10-20 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Method and system for processing access to storage device |
JP2004072694A (en) * | 2002-08-09 | 2004-03-04 | Sony Corp | Information providing system and method, information providing apparatus and method, recording medium, and program |
CN101453639B (en) * | 2007-11-29 | 2012-05-30 | 展讯通信(上海)有限公司 | Encoding, decoding method and system for supporting multi-path video stream of ROI region |
US8280226B2 (en) * | 2009-04-06 | 2012-10-02 | International Business Machines Corporation | Content recorder multi-angle viewing and playback |
US8863204B2 (en) * | 2010-12-20 | 2014-10-14 | Comcast Cable Communications, Llc | Cache management in a video content distribution network |
US9201495B2 (en) * | 2012-04-24 | 2015-12-01 | Mobitv, Inc. | Control of perspective in multi-dimensional media |
US9106934B2 (en) * | 2013-01-29 | 2015-08-11 | Espial Group Inc. | Distribution of adaptive bit rate live streaming video via hyper-text transfer protocol |
JP2014157459A (en) * | 2013-02-15 | 2014-08-28 | Nippon Telegr & Teleph Corp <Ntt> | Cache device, content distribution system, and content distribution method |
JP6548203B2 (en) * | 2013-03-18 | 2019-07-24 | 任天堂株式会社 | Information processing program, information processing apparatus, information processing system, and panoramic video display method |
EP3008896B1 (en) * | 2013-07-15 | 2021-03-31 | Sony Corporation | Extensions of motion-constrained tile sets sei message for interactivity |
-
2016
- 2016-05-27 WO PCT/US2016/034698 patent/WO2016191702A1/en active Application Filing
- 2016-05-27 EP EP16730574.7A patent/EP3304895A1/en not_active Withdrawn
- 2016-05-27 CN CN201680019374.5A patent/CN107409203A/en active Pending
- 2016-05-27 KR KR1020177027231A patent/KR101969943B1/en active IP Right Grant
- 2016-05-27 JP JP2017550903A patent/JP6672327B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3304895A1 (en) | 2018-04-11 |
KR20170122791A (en) | 2017-11-06 |
WO2016191702A1 (en) | 2016-12-01 |
CN107409203A (en) | 2017-11-28 |
JP2018522430A (en) | 2018-08-09 |
KR101969943B1 (en) | 2019-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6672327B2 (en) | Method and apparatus for reducing spherical video bandwidth to a user headset | |
US20160353146A1 (en) | Method and apparatus to reduce spherical video bandwidth to user headset | |
US10379601B2 (en) | Playing spherical video on a limited bandwidth connection | |
JP6501904B2 (en) | Spherical video streaming | |
US9917877B2 (en) | Streaming the visible parts of a spherical video | |
EP3782368A1 (en) | Processing video patches for three-dimensional content | |
US20210314670A1 (en) | Content based stream splitting of video data | |
US9918094B2 (en) | Compressing and representing multi-view video | |
US20240119660A1 (en) | Methods for transmitting and rendering a 3d scene, method for generating patches, and corresponding devices and computer programs | |
US20170048532A1 (en) | Processing encoded bitstreams to improve memory utilization | |
US12095967B2 (en) | Bitstream structure for immersive teleconferencing and telepresence for remote terminals | |
JP7516513B2 (en) | Bitstream structure with fallback bitstreams for viewport-based streaming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171204 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180828 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20181127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190305 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20190604 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190801 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200304 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6672327 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |