TWI802204B - 用於導出的沉浸式軌道的方法和系統 - Google Patents
用於導出的沉浸式軌道的方法和系統 Download PDFInfo
- Publication number
- TWI802204B TWI802204B TW111100410A TW111100410A TWI802204B TW I802204 B TWI802204 B TW I802204B TW 111100410 A TW111100410 A TW 111100410A TW 111100410 A TW111100410 A TW 111100410A TW I802204 B TWI802204 B TW I802204B
- Authority
- TW
- Taiwan
- Prior art keywords
- media
- immersive
- tracks
- samples
- track
- Prior art date
Links
Images
Classifications
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8146—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Polarising Elements (AREA)
- Processing Or Creating Images (AREA)
Abstract
本文所描述的技術涉及方法、裝置和計算機可讀媒體,其被配置為訪問第一三維(3D)沉浸式媒體體驗的媒體資料,包括媒體軌道和導出的沉浸式軌道,每個媒體軌道包括用於第一 3D 沉浸式媒體體驗的不同組件的相關媒體資料樣本系列,每個導出的沉浸式軌道包括要執行的一組導出操作,以生成用於第二 3D 沉浸式媒體體驗的不同組件的相關媒體資料樣本系列,並針對一個或多個導出的沉浸式軌道中的每一個,通過處理一導出操作指定的一個或多個媒體軌道的相關樣本,執行該組導出操作中之該導出操作,以生成第二3D沉浸式媒體體驗的媒體資料的相關媒體資料樣本系列。
Description
本文描述的技術一般涉及使用導出的(derived)視覺軌道來實現場景描述,包括使用導出的沉浸式軌道(immersive track)對視覺輸入執行導出操作(例如,以獲得沉浸式媒體的視訊資料)。
存在各種類型的3D內容、沉浸式內容和多向內容。例如,坐向視訊是一種使用一組攝像機捕獲的視訊,而不是像傳統單向視訊(unidirectional video)那樣僅使用單個攝像機。例如,可以將攝像機放置在特定的中心點周圍,以便每個攝像機在場景的球形覆蓋範圍內捕獲一部分視訊,從而捕獲360度視訊。來自多個攝像機的視訊可以被拼接(stitched)、可能旋轉,並投影以生成代表球形內容的投影的二維圖像。例如,可以使用等長矩形投影(equal rectangular projection)將球面映射到二維圖像中。然後可以進一步處理,例如,使用二維編碼和壓縮技術。最終,使用期望的傳送機制(例如,拇指驅動器、數位視訊磁碟(DVD)、文件下載、數位廣播和/或在線流媒體)來存儲和傳送編碼和壓縮的內容。這種視訊可用於虛擬現實(VR)和/或3D視訊。
在客戶端,當客戶端處理內容時,視訊解碼器對編碼和壓縮的視訊進行解碼,並執行反向投影以將內容放回球體上。用戶然後可以查看呈現的
內容,例如使用頭戴式查看設備。內容通常根據用戶的視埠(viewport)呈現,視埠代表用戶查看內容的角度。視埠還可以包括表示觀看區域的組件,該組件可以描述觀看者以特定角度觀看的區域的大小和形狀。
根據所公開的主題,提供了用於使用導出的沉浸式軌道對視覺輸入執行導出操作的設備、系統和方法。例如,由導出的沉浸式軌道指定的導出操作可用於為沉浸式3D體驗生成媒體資料。
一些實施例涉及一種用於獲得沉浸式媒體的視訊資料的方法。該方法包括訪問用於第一三維(3D)沉浸式媒體體驗的媒體資料,包括:一個或多個媒體軌道,每個媒體軌道包括用於第一3D沉浸式媒體體驗的不同組件的媒體資料的相關聯繫列樣本;以及一個或多個導出的沉浸式軌道,每個包括一組要執行的導出操作以生成用於第二3D沉浸式媒體體驗的不同組件的相關聯的媒體資料樣本系列(associated series of samples of media data)。該方法還包括:對於一個或多個導出的沉浸式軌道中的每一個,通過處理由導出操作指定的一個或多個媒體軌道的關聯樣本以生成第二3D沉浸式媒體體驗的媒體資料關聯的一系列樣本,來執行該組導出操作的導出操作。在一些實施例中,導出操作是用於再現一個或多個媒體軌道的關聯樣本的恆等操作(identity operation)。
在一些實施例中,導出操作包括填充操作,用於通過填充由像素寬度、像素高度和像素深度指定的大小的單一顏色(a single color of a size)來生成第二3D沉浸式媒體體驗的媒體資料樣本系列。
在一些實施例中,導出操作包括用於混合樣本的操作,使得一個或多個媒體軌道的第一媒體軌道的一個或多個第一樣本淡入到一個或多個媒體的第二媒體軌道的一個或多個第二樣本軌道。
在一些實施例中,導出操作包括用於裁剪一個或多個媒體軌道的相關樣本的操作。
在一些實施例中,導出操作包括用於旋轉一個或多個媒體軌道的相關樣本的操作。
在一些實施例中,導出操作包括用於鏡像一個或多個媒體軌道的相關樣本的操作。
在一些實施例中,導出操作包括用於將一個或多個媒體軌道的相關樣本縮放到指定大小的操作。
在一些實施例中,一個或多個媒體軌道包括包含媒體資料的第一系列樣本的第一輸入軌道和包含指定3D坐標資料的元資料的第二輸入軌道,並且導出操作包括用於基於指定的3D坐標資料處理第一輸入軌道的第一系列樣本的一個或多個樣本的操作。
在一些實施例中,生成第二3D沉浸式媒體體驗的一個或多個導出樣本系列包括生成包括第二3D沉浸式媒體體驗的一個或多個第一導出樣本的第一系列的第一輸出軌道和生成包括第二3D沉浸式媒體體驗的一個或多個第二導出樣本的第二系列的第二輸出軌道。
在一些實施例中,一個或多個導出的沉浸式軌道的數量等於一個或多個媒體軌道的數量,並且其中生成第二3D沉浸式媒體體驗的一系列樣本包括針對一個或多個導出的沉浸式軌道的每一個執行該組導出操作的一導出操作,以及生成包括第二3D沉浸式媒體體驗的媒體資料的所生成的相關樣本系列的輸出軌道。
在一些實施例中,一個或多個媒體軌道包括多個媒體軌道,並且導出操作包括用於生成多個媒體軌道中的每一個的媒體樣本的組合的操作。
在一些實施例中,一個或多個媒體軌道包括多個媒體軌道,並且
導出操作包括用於將多個媒體軌道的第一媒體軌道的一個或多個第一樣本覆蓋在多個媒體軌道中的第二媒體軌道的一個或多個第二樣本上的操作。
一些實施例涉及一種被配置為對視訊資料進行解碼的裝置。該裝置包括與記憶體通信的處理器,該處理器被配置為執行存儲在記憶體中的指令,該指令使處理器執行訪問媒體資料以用於第一三維(3D)沉浸式媒體體驗,包括:一個或多個媒體軌道,每個媒體軌道包括用於第一3D沉浸式媒體體驗的不同組件的相關聯的媒體資料樣本系列;以及一個或多個導出的沉浸式軌道,每個包括一組要執行的導出操作以生成用於第二3D沉浸式媒體體驗的不同組件的相關聯的媒體資料樣本系列,並針對一個或多個導出的每一個執行沉浸式軌道,通過處理導出操作指定的一個或多個媒體軌道的相關樣本以生成第二3D沉浸式媒體體驗的媒體資料的相關樣本系列來執行導出操作集合的一導出操作。
在一些示例中,生成第二3D沉浸式媒體體驗的媒體資料樣本系列包括生成包括第二3D沉浸式媒體體驗的一個或多個第一導出樣本的第一系列的第一輸出軌道,以及生成第二輸出軌道包括第二3D沉浸式媒體體驗的一個或多個第二導出樣本的第二系列。
在一些示例中,一個或多個導出的沉浸式軌道的數量等於一個或多個媒體軌道的數量,並且其中生成第二3D沉浸式媒體體驗的一系列樣本包括針對一個或多個導出的沉浸式軌道的每一個執行該組導出操作的一導出操作,以及生成輸出軌道包括所生成的第二3D沉浸式媒體體驗的媒體資料的相關樣本系列。
一些實施例涉及存儲處理器可執行指令的至少一種非暫時性計算機可讀存儲介質,當由至少一個處理器執行時,使處理器執行包括訪問用於第一三維(3D)沉浸式媒體體驗的媒體資料的方法,包括:一個或多個媒體軌道,每個媒體軌道包括用於第一3D沉浸式媒體體驗的不同組件的相關媒體資料
樣本系列;以及一個或多個導出的沉浸式軌道,每個包括要執行的一組導出操作以生成用於第二3D沉浸式媒體體驗的不同組件的相關聯的媒體資料樣本系列,並針對一個或多個導出的沉浸式軌道的每一個,通過處理導出操作指定的一個或多個媒體軌道的相關樣本以生成第二3D沉浸式媒體體驗的媒體資料的相關樣本系列來執行導出操作集合的一導出操作。
在一些示例中,生成第二3D沉浸式媒體體驗的樣本系列包括生成第一輸出軌道,第一輸出軌道包括第二3D沉浸式媒體體驗的一個或多個第一導出樣本的第一系列,以及生成第二輸出軌道,第二輸出軌道包括第二3D沉浸式媒體體驗的一個或多個第二導出樣本的第二系列。
在一些示例中,一個或多個導出的沉浸式軌道的數量等於一個或多個媒體軌道的數量,並且其中生成第二3D沉浸式媒體體驗的一系列樣本包括針對一個或多個導出的沉浸式軌道的每一個執行一組導出操作的一導出操作;以及生成包括第二3D沉浸式媒體體驗所生成的媒體資料樣本的關聯繫列的輸出軌道。
在一些示例中,導出操作是用於再現一個或多個媒體軌道的關聯樣本的恆等操作。
因此,已經相當廣泛地概述了所公開主題的特徵,以便可以更好地理解下面的詳細描述,並且可以更好地理解對本領域的當前貢獻。當然,所公開的主題的附加特徵將在下文中描述並且將形成所附申請專利範圍的主題。應當理解,這裡使用的措辭和術語是為了描述的目的而不應被視為限制性的。
100:視訊編碼配置
102A-102N:相機
104:編碼設備
106:視訊處理器
108:編碼器
110:解碼設備
112:解碼器
114:渲染器
116:顯示器
200:流程
201:球形視埠
202~212:塊
300:軌道分層結構
302~314k、404、408、502~508、711、721A、721B、731、741A、741B:軌道
400:示例
600:軌道導出操作
402A~402N:輸入軌道/圖像
500:體積視訊
510:地圖集資料
520:幾何資料
530:屬性資料
531~533:軌道參考
601:3D場景
602:2D視訊
603:屏幕
710、720、730、740:管線
713、723、733、743:處理步驟
714、724、734、744:緩衝器
750:呈現引擎
800:表
801:恆等變換
810:sRGB填充操作
820:分解操作
830:裁剪操作
840:旋轉操作
850:鏡像操作
860:縮放操作
870:選擇操作
880:網格組合操作
890:覆蓋操作
900、1000、1100、1200、1300、1400、1500、1600、1700、1800:語法
1001~1007、1101~1102、1201~1212、1301~1303、1401、1501~1506、1701~1706、1801~1803:字段
1900:方法
1902~1904:步驟
在附圖中,各個圖中所示的每個相同或幾乎相同的部件由相同的附圖標記表示。為清楚起見,並非每個組件都可以在每張圖中標記。附圖不一
定按比例繪製,而是重點放在說明本文描述的技術和設備的各個方面。
第1圖示出了根據一些實施例的示例性視訊編碼配置。
第2圖示出了根據一些示例的用於VR內容的基於視埠的(viewport dependent)內容流程。
第3圖示出了根據一些實施例的示例性軌道分層結構。
第4圖示出了根據一些示例的軌道導出操作的示例。
第5圖示出了根據一些實施例的示例性體積視訊(volumetric video)的資料結構。
第6圖示出了根據一些實施例的包括2D視訊的示例性3D場景。
第7圖示出了根據一些實施例的用於MPEG-I場景描述媒體處理的示例性過程。
第8A圖示出了根據一些實施例的描述用於導出的沉浸式軌道的導出變換的示例性表格。
第8B圖示出了根據一些實施例的描述用於導出的沉浸式軌道的導出變換的另一個示例性表格。
第9圖示出了根據一些實施例的可用於再現沉浸式視覺輸入的示例性語法。
第10圖示出了根據一些實施例的可用於再現沉浸式視覺輸入的示例性語法。
第11圖示出了根據一些實施例的可用於提供兩個沉浸式視覺輸入的平滑混合的示例性語法。
第12圖示出了根據一些實施例的可用於指定沉浸式視覺輸入的裁剪變換的示例性語法。
第13圖示出了根據一些實施例的可用於旋轉沉浸式視覺輸入的示例性語法。
第14圖示出了根據一些實施例的可用於圍繞軸鏡像沉浸式視覺輸入的示例性語法。
第15圖示出了根據一些實施例的可用於將輸入縮放到指定大小的示例性語法。
第16圖示出了根據一些實施例的可以使用在第二輸入軌道中攜帶的3D笛卡爾坐標來裁剪第一輸入軌道的樣本的示例性語法。
第17圖示出了根據一些實施例的以給定3D網格順序提供沉浸式視覺輸入的組合的示例性語法。
第18圖示出了根據一些實施例的在表示背景(backdrop)的另一個視覺輸入上提供沉浸式視覺輸入的組合的示例性語法。
第19圖示出了根據一些實施例的用於獲得沉浸式媒體的視訊資料的示例性計算機化方法。
導出的視覺軌道可用於提供視覺變換操作的定時序列,其應用於輸入靜止圖像和/或圖像定時序列的樣本(samples of timed sequences)。因此,傳統的導出視覺軌道方法受到限制並且僅提供在輸入靜止圖像、二維圖像或二維圖像或畫面的時間序列樣本上使用導出的軌道。傳統導出視覺軌道的導出操作的結果是二維視訊或圖像集。因此,導出的視覺軌道不能用於承載或處理三維沉浸式內容,例如體積視覺軌道。例如,在N00022:“ISO/IEC 23 090-10 Carriage of Visual Volumetric Video-based Coding Data”(ISO/IEC JTC 1/SC 29/WG 3,2020年10月)和N00047:14496-12:2020 DAM 1 Support for new media types(haptics,volumetric vision)and other Improvement”(ISO/IEC JTC 1/SC 29/WG 3,2020年10月)中描述了體積軌道的示例,在此通過引用併入其整體。作為另一個示例,MPEG包括許多用於指定沉浸式媒體內容的不同標準,包括MPEG-I,第10部分,“Carriage of Visual Volumetric Video-based Coding Data”(例如,包括MPEG-I第5部分的承載(carriage),“Video-based Point Cloud
Compression and Visual Volumetric Video-based Coding”和MPEG-I第12部分的承載,“Immersive Video”),MPEG-I 14,“Scene Descriptions for Immersive Media”(例如,包括覆蓋沉浸式和傳統媒體內容的使用情況)和MPEG-18,“Carriage of Geometry-based Point Cloud Compression Data”。值得注意的是,這些沉浸式媒體內容方法都不是傳統的2D圖像或視訊內容。
作為說明性示例,傳統的導出視覺軌道僅限於使用2D壓縮技術。由於點雲資料(point cloud data)或其他沉浸式媒體內容位於3D空間中(例如,投影到立方體的六個面上),因此沉浸式媒體內容通常包括幾個不同的軌道。例如,沉浸式媒體內容可以包括地圖集軌道(atlas track)和一個或多個視訊分量軌道,例如幾何軌道、屬性軌道和占用軌道,這些都是沉浸式媒體內容所必需的。由於導出視覺軌道僅限於僅適用於傳統2D圖像或2D視訊軌道的2D壓縮,因此傳統的導出視覺軌道方法不能用於這種沉浸式媒體內容。
發明人已經認識到,希望提供使用導出軌道方法來實現各種沉浸式媒體場景和體驗的技術。因此,本文描述的技術的一些方面提供了可以承載沉浸式媒體內容的導出沉浸式軌道方法。在一些實施例中,導出的沉浸式軌道方法可以將輸入沉浸式媒體內容(例如,一個或多個體積軌道)作為輸入和/或生成沉浸式媒體內容(例如,一個或多個體積軌道)作為輸出。一些實施例提供了一種基於文件格式的方法,該方法使用導出的沉浸式軌道來實現三維沉浸式媒體場景。例如,導出的沉浸式軌道可以描述由導出操作的有序列表組成的導出樣本的定時序列(timed sequence),其中每個導出操作可以應用導出變換。在一些實施例中,導出的沉浸式軌道可以包括指定可用於使用輸入軌道或圖像生成輸出沉浸式軌道(例如,諸如點雲資料軌道的體積3D軌道)的導出變換的樣本。在一些實施例中,導出的沉浸式軌道可以指定對包含在輸入軌道中的沉浸式媒體內容的導出操作。一些實施例提供包括沉浸式媒體內容和傳統2D圖像
或2D視訊內容的內容的混合。
在以下描述中,闡述了關於所公開主題的系統和方法以及此類系統和方法可以在其中運行的環境等的許多具體細節,以便提供對所公開主題的透徹理解。此外,應當理解,以下提供的示例是示例性的,並且可以預期在所公開主題的範圍內還有其他系統和方法。
第1圖示出了根據一些實施例的示例性視訊編碼配置100。攝像機102A-102N是N個攝像機,並且可以是任何類型的攝像機(例如,包括音訊記錄能力的攝像機,和/或單獨的攝像機和音訊記錄功能)。編碼設備104包括視訊處理器106和編碼器108。視訊處理器106處理從攝像機102A-102N接收的視訊,例如拼接、投影和/或映射。編碼器108對二維視訊資料進行編碼和/或壓縮。解碼設備110接收編碼資料。解碼設備110可以通過廣播網路、通過移動網路(例如,蜂窩網路)和/或通過互聯網接收作為視訊產品(例如,數位視訊盤或其他計算機可讀介質)的視訊。解碼設備110例如可以是計算機、手持裝置、頭戴式顯示器的一部分或任何其他具有解碼能力的裝置。解碼設備110包括解碼器112,其被配置為對編碼的視訊進行解碼。解碼設備110還包括渲染器114,用於將二維內容渲染回用於回放的格式。顯示器116顯示來自渲染器114的渲染內容。
通常,可以使用球形內容來表示3D內容,以提供場景的360度視圖(例如,有時稱為全向媒體內容(omnidirectional media content))。雖然使用3D球體可以支持多個視圖,但終端用戶通常只查看3D球體上的一部分內容。傳輸整個3D球體所需的帶寬會給網路帶來沉重的負擔,並且可能不足以支持球體內容。因此,希望使3D內容交付更有效。可以執行基於視埠的處理(Viewport dependent processing)以改進3D內容交付。3D球面內容可以劃分為區域/圖塊/子圖像,只有與觀看屏幕相關的內容(例如,視埠)才能傳輸並交付給終端用戶。
第2圖示出了根據一些示例的用於VR內容的基於視埠的內容流程200。如圖所示,球形視埠201(例如,其可以包括整個球體)在塊202經歷拼接、投影、映射(以生成投影和映射區域),在塊204被編碼(以生成多種品質的編碼/轉碼圖塊),在塊206交付(作為圖塊),在塊208解碼(以生成解碼的圖塊),在塊210構造(以構造球形渲染視埠),並在塊212渲染。塊214處的用戶交互可以選擇一個視埠,它會啟動許多“即時(just-in-time)”流程步驟,如虛線箭頭所示。
在過程200中,由於當前的網路帶寬限制和各種適配要求(例如,不同的品質、編解碼器和保護方案),3D球形VR內容首先被處理(拼接、投影和映射)到2D平面(藉由塊202),然後封裝在多個基於圖塊的(或基於子圖像的)和分段的文件中(在塊204)以用於傳送和回放。在這種基於圖塊的分段文件中,2D平面中的空間圖塊(例如,它表示空間部分,通常為2D平面內容的矩形形狀)通常被封裝為其變體的集合,例如以不同的品質和位元率,或採用不同的編解碼器和保護方案(例如,不同的加密算法和模式)。在一些示例中,這些變體對應於MPEG DASH中的適配集中的表示。在一些示例中,基於用戶在視埠上的選擇,當不同圖塊的這些變體放在一起時,提供所選視埠的覆蓋範圍,其由接收器檢索或傳送到接收器(通過傳送塊206),然後解碼(在塊208)以構造和渲染所需的視埠(在塊210和212)。
如第2圖所示,視埠的概念是終端用戶所看到的,它涉及球體上區域的角度和大小。對於360度內容,通常,這些技術將所需的圖塊/子圖像內容傳遞給客戶端,以覆蓋用戶將查看的內容。這個過程是基於視埠的,因為這些技術只提供覆蓋當前感興趣的視埠的內容,而不是整個球形內容。視埠(例如,一種球形區域)可以改變,因此不是靜態的。例如,當用戶移動他們的頭部時,系統需要獲取相鄰的圖塊(或子圖像)以覆蓋用戶接下來想要查看的內
容。
例如,可以將內容的平面文件結構(flat file structure)用於單個電影的視訊軌道。對於VR內容,存在多於發送和/或被接收設備顯示的內容的內容。例如,如本文所討論的,可以存在整個3D球體的內容,其中用戶僅觀看一小部分。為了更有效地編碼、存儲、處理和/或傳遞這樣的內容,可以將內容分成不同的軌道。
第3圖示出了根據一些實施例的示例性軌道分層結構300。頂部軌道302是3D VR球形內容軌道,頂部軌道302下方是關聯元資料軌道304(每個軌道具有關聯元資料)。軌道306是2D投影軌道。軌道308是2D大畫面(big picture)軌道。區域軌道被示為軌道310A到310R,通常稱為子畫面軌道310。每個區域軌道310具有一組相關聯的變體軌道。區域軌道310A包括變體軌道312A到312K。區域軌道310R包括變體軌道314A到314K。因此,如軌道層次結構300所示,可以開發以實體多個變體區域軌道312開始的結構,並且可以為區域軌道310(子圖像或圖塊軌道)、投影和打包的2D軌道308、投影2D軌道306和VR 3D視訊軌道302,以及與它們相關聯的適當元資料軌道建立軌道層次結構。
在操作中,變體軌道包括實際的圖像資料。設備在交替變化的軌道中進行選擇,以挑選代表子畫面區域(或子畫面軌道)310的那個。子畫面軌道310被平鋪(tiled)並一起組合成2D大畫面軌道308。然後最終,軌道308被反向映射,例如,以重新排列一些部分以生成軌道306。軌道306然後被反向投影回3D軌道302,其是原始3D圖像。
示例性軌道分層結構可以包括以下方面所述的方面,例如:m39971:“Deriving Composite Tracks in ISOBMFF”,2017年1月(瑞士日內瓦);m40384:“Deriving Composite Tracks in ISOBMFF using track grouping mechanisms”,2017年4月(澳大利亞霍巴特);m40385:“Deriving VR
Projection and Mapping related Tracks in ISOBMFF”;m40412:“Deriving VR ROI and Viewport related Tracks in ISOBMFF”,MPEG第118次會議,2017年4月,通過引用將其全部併入本文。在第3圖中,rProjection、rPacking、compose和alternate分別表示軌道導出TransformProperty項reverse'proj'、reverse'pack'、'cmpa'和'cmp1',用於說明目的並且不旨在限制。元資料軌道中顯示的元資料類似地用於說明目的並且不旨在限制。例如,可以使用來自OMAF的元資料框,如w17235:“Text of ISO/IEC FDIS 23090-2 Omnidirectional Media Format”(MPEG第120次會議,2017年10月(中國澳門))中所述,其全文通過引用併入本文。
第3圖中所示的軌道數旨在說明性而非限制性的。例如,在如第3圖所示的層次結構中不一定需要一些中間導出軌道的情況下,可以將相關的導出步驟組合成一個(例如,將反向打包和反向投影組合在一起以消除投影軌道306的存在)。
導出的視覺軌道可以通過其包含類型“dtrk”的樣本條目來指示。導出樣本包含要對輸入圖像或樣本的有序列表(ordered list)執行的操作的有序列表。每個操作都可以由變換屬性指定或指示。通過按順序執行指定的操作來重建導出的視覺樣本。ISOBMFF中可用於指定軌道導出的變換屬性示例(包括ISOBMFF最新的正在考慮的技術(Technologies Under Consideration,簡寫為TuC)中的那些(參見例如,N17833,“Technologies under Consideration for ISOBMFF”,2018年7月,盧布爾雅那,SK,其全部內容通過引用併入本文))包括:“idtt”(恆等(identity))變換屬性;“clap”(清潔光圈(clean aperture))變換屬性;“srot”(旋轉(rotation))變換屬性;'dslv'(溶解(dissolve))變換屬性;'2dcc'(ROI裁剪(crop))變換屬性;'tocp'(軌道覆蓋組合(Track Overlay Composition))變換屬性;'tgcp'(軌道網格組合(Track Grid Composition))變
換屬性;'tgmc'(使用矩陣值軌道網格組合(Track Grid Composition using Matrix values))變換屬性;'tgsc'(軌道網格子圖像組合(Track Grid Sub-Picture Composition))變換屬性;'tmcp'(變換矩陣組合(Transform Matrix Composition))變換屬性;'tgcp'(軌道分組組合(Track Grouping Composition))變換屬性;和“tmcp”(使用矩陣值軌道分組組合(Track Grouping Composition using Matrix Values))變換屬性。所有這些軌道導出都與空間處理有關,包括圖像處理和輸入軌道的空間組合。
導出的視覺軌道可用於指定將應用於導出操作的輸入軌道的視覺變換操作的定時序列。輸入軌道可以包括例如具有靜止圖像和/或圖像的定時序列樣本的軌道。在一些實施例中,導出的視覺軌道可以包含在ISOBMFF中提供的方面,其在w18855,“Text of ISO/IEC 14496-12 6th edition”,2019年10月,瑞士日內瓦,中指定,其通過引用整體併入本文。例如,ISOBMFF可用於提供基本媒體文件設計(base media file design)和一組變換操作。示例性變換操作包括,例如,Identity、Dissolve、Crop、Rotate、Mirror、Scaling、Region-of-interest和Track Grid,如w19428(“Revised text of ISO/IEC CD 23001-16 Derived visual tracks in the ISO base media file format”,2020年7月,在線會議,通過引用將其全部併入本文)中所說明的。TuC w19450(“Technologies under Consideration on ISO/IEC 23001-16”,2020年7月,在線會議,在此通過引用將其全部內容併入本文)提供了一些額外的導出變換候選,包括與組合和沉浸式媒體處理相關的變換操作。
第4圖示出了根據一些示例的軌道導出操作的示例400。多個輸入軌道/圖像一(1)402A、二(2)402B到N 402N被輸入到導出的視覺軌道404,其承載用於變換樣本的變換操作。軌道導出操作406將變換操作應用於導出的視覺軌道404的變換樣本以生成包括視覺樣本的導出的視覺軌道408。
第5圖示出了根據一些實施例的體積視訊500的示例性資料結構。體積視訊500可以由組件軌道(component track)攜帶,例如攜帶地圖集資料510的地圖集軌道1 502、攜帶幾何資料520的軌道2 504、攜帶屬性資料530的軌道3 506和攜帶佔用資料(occupancy data)540的軌道4 508。軌道1 502可以包括至幾何軌道2 504(具有沉浸式媒體的幾何資料)、屬性軌道3 506(具有沉浸式媒體的屬性資料)和佔用軌道4 508(具有沉浸式媒體的佔用資料)的軌道參考(track reference)531-533。在一些實施例中,接收或訪問沉浸式媒體資料因此包括訪問幾何資料、屬性資料和佔用圖資料(ccupancy map data)作為單獨的位元流(每個位元流攜帶其自己的關聯樣本集)。
場景描述(scene description)(例如,MPEG-I場景描述)可以提供用於提供沉浸式媒體體驗的描述的格式。例如,場景描述可以提供基於沉浸式內容的格式,例如3DoF和6DoF內容。該格式可以與一種或多種技術一起使用,例如增強現實(Augmented Reality,簡寫為AR)、虛擬現實(VR)和/或混合現實(Mixed Reality,簡寫為MR)技術。場景描述可以存儲3D資料,例如合成的3D資料(例如,由計算機創建)和/或自然3D資料(例如,使用攝像機從現實世界捕獲)。場景描述還可以包括其他資料,例如2D資料、音訊資料等。在一些示例中,場景描述可以暴露格式的組件之間的接口和/或啟用3D交互體驗。例如,除了描述場景之外,場景描述可以包括場景(例如,與場景相關聯的各種2D和/或3D內容源)中的組件之間的接口。
根據一些實施例,場景描述可以被輸入到呈現引擎(presentation engine)並由其使用,呈現引擎使用場景描述來向觀看者渲染場景(例如,3D場景)。場景描述規範中提供的擴展可以允許使用沉浸式媒體(例如MPEG媒體)創建沉浸式體驗。
場景描述可以利用各種結構來描述場景。根據一些實施例,場景
圖(scene graph)是一種場景描述,其中,例如,使用圖結構來描述場景。場景圖可以用於描述包括不同類型的視訊、圖像、音訊等的場景,並且可以通過提供場景描述格式的擴展來實現以支持沉浸式媒體。支持MPEG媒體的示例在“The GL Transmission Format(glTF)2.0”,N19290,“WD on Scene Description for MPEG Media”,2020年7月,在線會議中進行了描述,在此通過引用將其全部內容併入本文。在其他實施例中,可以使用其他場景描述,例如包括使用對象列表的關係的場景描述。
作為說明性示例,MPEG-I場景描述,無論是作為場景圖和/或其他格式實現,都可以用於不同的參考使用場景,如N18339(“Requirements on Integration of Scene Description in MPEG-I”,3月2019年,瑞士日內瓦)中所描述的,在此通過引用將其全部內容併入本文。這些參考使用場景提供了需要實現的高級概念。參考使用場景的第一個示例是使用360度圖像和/或視訊的場景。例如,可能希望提供描述包括360度圖像的場景的場景描述。場景的內容可以從各種來源獲得。根據一些實施例,可以在本地引用圖像。根據一些實施例,可以通過網路引用圖像。
該第一示例性場景的變化是可能的。例如,圖像和/或視訊可以通過網路流式傳輸(例如,使用HTTP上的動態自適應流式傳輸(DASH))。在一些示例中,圖像或視訊的幾何形狀基於球面幾何形狀,但不限於此,並且可以以不同於球體的格式提供(例如,作為立方體)。根據一些示例,視訊是立體格式的。在一些示例中,引用的內容是被格式化為全向媒體格式(OMAF)文件的360度視訊。在一些示例中,視訊作為一個或多個軌道包含在OMAF文件中,並且OMAF文件還可以包含音訊軌道。
參考使用場景的第二個示例是用於3D音訊和360度視訊。例如,場景描述可能需要描述由360度圖像和3D音訊組成的場景。在一些實施
例中,360度圖像和3D音訊都包含在一個本地文件中。在一些示例中,音訊可以是立體聲音訊。在一些示例中,音訊是3D音訊。在一些示例中,音訊包含3D音訊和非劇情內容。
參考使用場景的第三個示例是360度視訊和字幕。根據一些實施例,可能希望場景描述描述由360度圖像和字幕軌道組成的場景。字幕軌道的渲染可以通過場景描述來控制。
參考使用場景的第四個示例是與本地對象組合。根據一些實施例,可能希望場景描述將場景(例如,如在前三個示例性參考使用場景之一中所討論的)與本地對象組合。例如,作為本文所述實施例的補充或替代,本地對象可以與場景描述一起出現。例如,將圖像放置為場景的覆蓋和/或可以將本地音訊源添加到場景。
參考使用場景的第五個示例是具有2D視訊的3D場景。根據一些實施例,場景描述可用於組合3D和2D場景並在3D區域上顯示2D視訊。2D視訊可以在本地或通過網路引用。
第6圖示出了根據一些示例的包括2D視訊602的示例性3D場景601。如第6圖所示,起居室的示例性3D場景601可以包括一個或多個2D區域,例如3D平面屏幕的屏幕603。2D視訊602可以顯示在一個或多個2D區域上。
第7圖示出了根據一些示例(例如,如上文引用的N19290中所述)的MPEG-I場景描述媒體處理的示例性過程。在第7圖的例子中,管線(pipeline)710、720、730、740中的每一個將一個或多個媒體或元資料軌道作為輸入,並將解碼和處理的內容輸出到與每個管線相關聯的一個或多個緩衝器。例如,管線710將軌道711作為輸入並輸出到緩衝器714,管線720將軌道721A-B作為輸入並輸出到緩衝器724,管線730將軌道731作為輸入並輸出到緩衝器734A-B,並且管線740將軌道741A-B作為輸入並且輸出到緩衝器744。
每個流水線可以被配置為執行一個或多個處理步驟(例如,713、723、733和743),包括例如流式傳輸(streaming)、解復用、解碼、解密和/或格式變換以匹配預期的緩衝器格式。場景描述可以包括描述如何處理來自緩衝器(例如,714、724、734A-B和744)的內容的資料,該緩衝器(例如,714、724、734A-B和744)將內容饋送到呈現引擎750中。如本文所述,場景描述可以被輸入呈現引擎750和/或者由呈現引擎750訪問以處理來自各個緩衝器的內容,以便將場景(例如,3D場景)渲染給觀看者。在一些示例中,處理步驟可以變換緩衝資料的格式,可以創建新的靜態或動態緩衝器(例如,基於從文件本身接收的元資料的索引緩衝器)等。
導出的視覺軌道可用於提供應用於傳統輸入2D靜止圖像和/或2D圖像(例如,2D視訊)的定時序列樣本的視覺變換操作的定時序列。結果,發明人已經認識到,導出的視覺軌道不能用於承載或處理三維沉浸式內容,例如體積視覺軌道。特別是,傳統的導出的視覺軌道僅限於使用2D壓縮技術。由於點雲資料或其他沉浸式媒體內容在3D空間中(例如,投影到立方體的六個面上),如本文所述(例如,結合第5圖),沉浸式媒體內容通常包括幾個不同的軌道,例如作為圖集軌道和一個或多個視訊組件軌道,如幾何軌道、屬性軌道和占用軌道,這些都是沉浸式媒體內容所必需的,因此許多場景無法使用傳統的導出視覺軌道來處理。例如,這種傳統方法不能用於如第6圖描述的那樣渲染具有2D視訊的3D空間。作為另一個示例,在第7圖中,一個或多個管線可以包括沉浸式媒體內容,因此不能使用傳統的導出技術用於此類管線。
因此,發明人開發了可以承載沉浸式媒體內容的導出的沉浸式軌道方法。例如,可以創建3D沉浸式媒體內容並將其封裝在文件格式中,例如使用ISOBMFF完成的文件格式。在一些實施例中,導出的沉浸式軌道方法可以將沉浸式媒體內容(例如,一個或多個體積軌道)作為輸入和/或將沉浸式媒
體內容(例如,一個或多個體積軌道)作為輸出。例如,導出的沉浸式軌道可以包括描述由導出操作的有序列表組成的導出樣本的定時序列的樣本,其中每個導出操作可以在沉浸式媒體軌道上應用導出變換和/或生成沉浸式媒體軌道(例如,體積3D軌道,例如點雲資料軌道)。在一些實施例中,導出變換可以包括三維(3D)和/或沉浸式導出變換。在一些實施例中,導出的沉浸式軌道可以包括指定可以使用的導出變換的樣本。在一些實施例中,導出的沉浸式軌道可以指定對包含在輸入軌道中的沉浸式媒體內容的導出操作。
因此,本文描述的技術可以提供所需的功能,例如類似於由二維和/或視覺導出變換提供的變換功能(例如,如N00037(“Text of ISO/IEC DIS 23001-16 Derived visual tracks in the ISO base media file format”,ISO/IEC JTC 1/SC 29/WG 3,2020年10月)中所述,在此通過引用的方式整體併入)可用於沉浸式媒體內容。因此,本文描述的技術可以提供用於基於導出的視覺軌道的方面配置的導出的沉浸式軌道(例如,如N00037的第4節所述)。在一些示例中,沉浸式軌道的導出變換可以基於對導出的視覺軌道的一個或多個導出變換(例如,如N00037的第8節中所述),如本文進一步描述的。
根據本發明的一些方面,這些技術提供了一種基於文件格式的方法,該方法使用導出的沉浸式軌道來實現三維(3D)沉浸式媒體場景。例如,導出的沉浸式軌道可以描述由導出操作的有序列表組成的導出樣本的定時序列,其中每個導出操作可以應用導出變換。例如,支持的變換可能包括恆等、組合、旋轉、縮放和網格組合操作。例如,導出的沉浸式軌道可以採用3D輸入軌道並執行一系列導出操作(例如,組合和/或覆蓋操作)以生成可用於實現沉浸式媒體使用場景的導出軌道,例如在此處所描述的那些。
根據一些實施例,所導出的沉浸式軌道可用於處理傳統的2D視訊內容以及沉浸式媒體內容以呈現沉浸式媒體場景。作為說明性示例,導出的
沉浸式軌道可以指定對輸入軌道的導出操作,輸入軌道可以包括沉浸式媒體內容以及視訊內容,以便呈現沉浸式媒體場景,例如第6圖中所示的。例如,導出的沉浸式軌道可以指定要在輸入軌道(例如,視覺和/或沉浸式)中執行的組成變換,並且可以執行軌道導出以使用關聯的輸入軌道(例如,在場景描述中指定)表示沉浸式媒體體驗的合成的沉浸式軌道。
因此,本文描述的技術提供了可以對不同輸入、輸出進行操作的導出的沉浸式媒體軌道,並且為沈浸式媒體上下文提供新的導出操作。因此,雖然可以提供與在導出的視覺軌道中使用的功能類似的功能,但是如在此使用不同的示例性規範所描述的,這樣的功能以不同的方式實現。因此,這些技術通過創建可用於沉浸式媒體內容的新導出沉浸式軌道方法來提供對傳統導出方法的技術改進。應當理解,雖然這裡提供了各種類型的沉浸式媒體內容和導出的沉浸式軌道操作的示例,但是這些示例僅出於說明性目的而提供並且不旨在進行限制。
在一些實施例中,導出的沉浸式軌道可以描述由導出操作的有序列表組成的導出樣本的定時序列。每個導出操作可以在導出樣本的持續時間內對同一表示(presentation)中表示的輸入的有序列表應用導出變換。根據一些示例,導出的沉浸式軌道可以是沉浸式媒體軌道(例如,如ISO/IEC 14496-12中規定的,MediaBox的HandlerBox中具有“volv”處理程式類型的軌道)。
根據一些示例,可以基於樣本條目類型來指定和/或識別導出的沉浸式軌道。例如,導出的沉浸式軌道可以通過其包含的類型“ditk”DerivedImmersiveSampleEntry的樣本條目來識別,並且由DerivedImmersiveSampleEntry描述的每個樣本都可以是導出的樣本。根據一些實施例,導出的視覺軌道可以包括TrackReferenceTypeBox,其reference_type等於'ditk',指代它的所有輸入軌道。每個引用(reference,本文中亦稱為參考)可
以是(a.i)軌道中導出的樣本使用的軌道的track_ID,或者(a.ii)如果如ISO/IEC 14496-12的規定使用統一的ID,則為track_group_id,或(b)圖像項的item_ID,在文件級(file-level)MetaBox中,由軌道中的導出樣本使用。
在一些實施例中,可以以一種或多種方式解析(resolve)軌道參考中的ID值。例如,只要文件包含具有此類ID的軌道,ID值就可以解析為track_ID。track_ID可以是導出的沉浸式軌道或導出的視覺軌道的ID。在一些實施例中,每當使用統一ID並且文件包含具有這種ID的軌道組時,軌道參考中的ID值被解析為track_group_id。在一些實施例中,軌道參考中的ID值被解析為item_ID。
在一些實施例中,這些技術可以與替代組(alternate group)結合使用。例如,如果參考的軌道是替代組的成員和/或如果所述參考是軌道組,則讀取方(例如,解碼器或編碼器)可以從組中挑選軌道作為導出的沉浸式的輸入。類似地,如果參考的圖像項是替代組的成員,則讀取方(例如,解碼器或編碼器)可以從組中挑選一個圖像項作為導出沉浸式軌道的輸入。
根據一些實施例,導出的樣本包含要執行的導出操作的有序列表。每個導出操作可以對輸入軌道的有序列表應用導出變換。在一些示例中,層語法元素(例如,在TrackHeaderBox中)對導出的樣本的輸入軌道的排序沒有影響。
根據一些實施例,來自軌道中的導出樣本所使用的導出操作的導出變換可以與代碼相關聯,例如四字符代碼(four-character code)。每個代碼都可以在示例條目中列出(例如,DerivedImmersiveSampleEntry),並且默認輸入和參數值也可以在示例條目中提供。在一些示例中,軌道中的導出樣本可以使用鏈接的樣本條目中列出的所有或部分導出操作(例如,DerivedImmersiveSampleEntry),但可能不使用樣本條目中未列出的導出操作。
根據一些實施例,導出的樣本持續時間可以指定或記錄由導出操作的有序列表表示的導出活動的時間。因此,導出的沉浸式軌道中指定的樣本數量不一定需要與輸入圖像項的數量或正在變換的輸入軌道的樣本數量一一匹配。例如,單個導出持續時間可以跨越源軌道中的多個樣本。在一些示例中,導出的樣本中的導出變換可能具有內部時間結構(例如,用於交叉淡入淡出(cross-fade)),使得沉浸式媒體可以在樣本持續時間期間改變。這與例如經典視訊形成對比。
在一些示例中,導出的沉浸式軌道可能不會在輸入軌道上使用組合時間重新排序(composition-time re-ordering)。例如,它們可以附加地或替代地在其輸入軌道(包括當用作視覺輸入時在導出的沉浸式軌道上)的合成時間線上(例如,在應用編輯列表之前)進行操作。然而,在一些實施例中,輸入軌道可以被限制以使得它們不包括編輯列表。對於這樣的約束,輸入軌道的任何編輯列表(如果存在)都可以被忽略。
在一些實施例中,當需要在輸入軌道之間進行時間對齊調整時,可以使用輸入軌道中的正負號組合偏移(signed composition offset)。
根據一些實施例,導出的沉浸式軌道可以具有編輯列表。例如,使用本文描述的恆等變換並具有編輯列表的導出的沉浸式軌道可以提供作為輸入軌道的時間重新映射的視覺輸出。
導出的樣本中的導出操作的輸入可以是輸入圖像項(例如,來自文件級MetaBox)或輸入視訊軌道、圖像序列軌道或元資料軌道的間隔(例如,可能跨越多個樣本)、先前導出操作的視覺輸出,和/或輸入圖像(例如,默認輸入填充圖像)。
根據一些實施例,可以在執行導出操作之前應用與輸入圖像項或輸入軌道的樣本相關聯的可變換的或變換的項屬性(例如,清潔光圈、軌道矩
陣等)。在一些示例中,如果導出的樣本需要參考所參考軌道中的一個顯式樣本值(例如,除了時間對齊的樣本值之外),則可以創建和參考具有與所需樣本值相同的資料的項目。
根據一些實施例,導出的樣本中的視覺輸入可以具有一致的像素縱橫比和位元深度。例如,輸入圖像項、輸入軌道樣本或導出樣本可能具有各種寬度和高度以及深度(對於3D情況)。在某些示例中,當寬度、高度和深度的差異導致像素永遠不會被導出操作“繪製(painted)”或變換時,這些空像素將根據參數default_derivation_input的值填充,該參數在DerivedVisualTrackConfigRecord(黑色、白色或灰色像素)中傳訊。在一些示例中,當寬度、高度和深度的差異導致像素超出導出操作的視覺輸出大小時,可以裁剪這些像素。在一些示例中,諸如裁剪或填充像素之類的默認行為可以被導出操作規範(derivation operation specification)覆蓋。
在一些實施例中,可以通過依次執行指定的導出操作來重構導出的樣本。一些導出操作可以標記為非必要的,這表明導出操作可能會被讀取方跳過。然而,為了獲得有效的導出樣本,可以操作將其標記為必要的操作。在一些示例中,當導出的樣本中列出了一個以上的導出操作時,不在列表中的第一個導出操作可以包括任何先前導出操作的輸出結果(例如,視覺輸出)、只有新的輸入,或它們的某種組合。
根據一些實施例,一些源軌道(例如,由“ditk”軌道參考指向的源軌道)不打算用於顯示。當不打算顯示軌道時,對於該軌道,指示該軌道是否將在電影中的字段(例如,track_in_movie)可能等於0。導出的樣本的視覺輸出可能是來自樣本中最後一個導出操作的輸出。在一些示例中,如果沒有導出操作,則空的導出樣本(例如,樣本大小為0)相當於空編輯,例如,此時導出的沉浸式軌道沒有視覺輸出。
根據一些實施例,一系列(例如,鏈(chain))導出操作可以建立在一個單一導出的沉浸式軌道上。在一些實施例中,一系列(例如,鏈)導出操作可以建立在多個導出的沉浸式軌道和導出的視覺軌道的層次結構上。例如,一個沉浸式或視覺軌道的導出操作的輸出可以用作另一個導出的沉浸式或視覺軌道的輸入。在一些示例中,這可能僅在層次結構中的每個導出的沉浸式或視覺軌道本身也需要時發生。
第8A圖和第8B圖示出了根據一些示例描述用於導出的沉浸式軌道的導出變換的示例性表800。如第8A-8B圖所示,導出變換可以包括恆等變換801。恆等變換可以採用一個輸入,例如沉浸式視覺輸入。恆等變換可以再現沉浸式視覺輸入。第9圖描述了用於指定恆等變換的語法,如下面進一步討論的。
導出變換可以包括填充操作,例如sRGB填充操作810。填充操作可以用於生成單色的沉浸式視覺輸出。填充操作可以不需要輸入,可以有紅色填充、藍色填充、綠色填充、不透明度、輸出寬度、輸出高度和輸出深度等參數。紅色填充、綠色填充和藍色填充參數可用於分別指示紅色、綠色和藍色通道的像素值,並且一起可以指定沉浸式視覺輸出的顏色。沉浸式視覺輸出的大小可以由寬度、高度和深度參數指定,並且不透明度參數可以指示輸出的不透明度。第10圖描述了用於指定填充變換的語法,如下面進一步討論的。
導出變換(derivation transformation)可以包括分解操作820。例如,根據一些實施例,可以用於提供兩個沉浸式視覺輸入的平滑混合(smooth blending)。例如,可以輸入兩個沉浸式視覺輸入,並且變換可以通過從第一沉浸式視覺輸入淡入到第二沉浸式視覺輸入來提供平滑混合。變換可能有兩個參數,指定用於混合輸入的比例或權重。第11圖描述了用於指定混合變換(blending transformation)的語法,如下面進一步討論的。
導出變換可以包括裁剪操作830。裁剪操作830可以接收沉浸式視
覺輸入並且基於由包括寬度分子、寬度分母、高度分子、高度分母、深度分子、深度分母、X偏移分子、X偏移分母、Y偏移分子、Y偏移分母、Z偏移分子、Z偏移分母的值裁剪輸入。第12圖描述了用於指定裁剪變換(cropping transformation)的語法,如下面進一步討論的。
導出變換可以包括旋轉操作840。旋轉操作840可以接收沉浸式視覺輸入並且圍繞x、y和/或z軸旋轉輸入。例如,沉浸式視覺輸入可以旋轉由X-Y角度、Y-Z角度和X-Z角度指定的值。例如,第13圖是用於指定旋轉操作的語法示例,如下面進一步討論的。
導出變換可以包括鏡像操作(mirroring operation)850。鏡像操作850可以接受沉浸式視覺輸入並且垂直地、水平地或使用堆疊鏡像(stacked mirroring)來鏡像輸入。鏡像的類型可以由參數軸指定。第14圖是用於指定鏡像操作的語法示例,如下面進一步討論的。
導出變換可以包括縮放操作860。縮放操作860可以接收沉浸式視覺輸入並且將輸入以一因子(由參數指定的)縮放以產生沉浸式視覺輸出。參數可以包括目標寬度分子、目標寬度分母、目標高度分子、目標高度分母、目標深度分子和目標深度分母。每個分子可以除以相應的分母以指定視覺輸入的比例因子。例如,第15圖是用於指定縮放操作的語法示例,如下面進一步討論的。
導出變換可以包括用於選擇沉浸式視覺輸入的感興趣區域的選擇操作870。在一些實施例中,該導出變換可以具有兩個輸入,並且輸入可以包括視覺軌道和承載3D笛卡爾坐標的ROI定時元資料軌道。第二輸入軌道中承載的3D笛卡爾坐標可用於裁剪第一輸入軌道的樣本,使得導出變換的視覺輸出可以僅包含由ROI定時元資料軌道的3D笛卡爾坐標指定的矩形。第16圖是用於指定用於選擇感興趣區域的操作的語法示例,如下面進一步討論的。
導出變換可以包括網格組合操作880。例如,網格組合操作可以以給定的3D網格順序提供沉浸式視覺輸入的輸出合成。導出變換的輸入數量可以是正好等於行數乘以列數乘以沉浸式視覺輸入的層數的值。輸出組合可以是由參數輸出寬度、輸出高度和輸出深度指定的寬度、高度和深度。第17圖是用於指定網格組合操作的語法示例,如下面進一步討論的。
導出變換可以包括用於將第一輸入覆蓋在第二輸入上的覆蓋操作890。該變換可以採用兩個視覺輸入,包括第一輸入和背景(backdrop)輸入。可以使用由參數(例如水平、垂直和深度偏移量)指定的值的偏移量,將覆蓋沉浸式視覺輸入複製到背景視覺輸入上。例如,第18圖是用於指定覆蓋組合操作的語法示例,如下面進一步討論的。
可以使用各種語法和結構來提供和/或表示導出變換。儘管下面提供了一些示例,但應當理解,這是出於示例性目的並且不旨在進行限制,因為可以使用其他約定、語法、名稱等來執行本文描述的技術。
如本文所述,導出變換可以是恆等變換。例如,第9圖示出了可用於再現沉浸式視覺輸入的示例性語法900。根據一些示例,當導出樣本中存在具有恆等導出變換的導出操作時,相同的導出樣本中不應存在其他導出操作。
如本文所述,導出變換可以是填充變換。例如,第10圖示出了根據一些實施例的可用於生成單色的沉浸式視覺輸出的示例性語法1000。具有視覺大小output_width、output_height和output_depth像素的SRGBFill導出變換。red_fill_value字段1001可以指示紅色通道的像素值。在一些實施例中,紅色值的像素值可以是根據IEC 61966-2-1中規定的sRGB色彩空間的值。green_fill_value字段1002可以指示綠色通道的像素值。在一些實施例中,綠色通道的像素值可以是根據IEC 61966-2-1中規定的sRGB色彩空間的值。blue_fill_value字段1003可以指示藍色通道的像素值。在一些實施例中,藍色通
道的像素值可以是根據IEC 61966-2-1中規定的sRGB色彩空間的值。
opacity_value 1004可以指示不透明度值。根據一些實施例,不透明度值字段的範圍可以從0(例如,表示完全透明)到65535(例如,表示完全不透明)。output_width字段1005、output_height字段1006、output_depth字段1007可以分別指定沉浸式視覺輸出的寬度、高度和深度(例如,以像素為單位)。
如本文所述,導出變換可以是混合操作。第11圖示出了根據一些實施例的可用於提供兩個沉浸式視覺輸入的平滑混合的示例性語法1100。例如,語法可以通過從第一沉浸式視覺輸入逐漸淡入到第二沉浸式視覺輸入來提供平滑混合。在一些實施例中,視覺輸出並置(co-located)的像素值O(x,y,z)通過兩個沉浸式視覺輸入的加權求和來計算,其中權重是由start_weight字段和end_weight字段的值所提供的比例的基於時間的過渡(time-based transition)。在以下等式中,T的值從與導出樣本開始時相關聯的0線性過渡到導出樣本結束時。在一些示例中,視覺輸入的大小可以在混合操作之前被標準化為兩個視覺輸入中較大者的大小。
方程1:O(x,y,z)=A(x,y,z)*(T *(end_weight-start_weight)+start_weight)/256+B(x,y,z)*((1-T)*(end_weight-start_weight)+start_weight)/256
在等式1中,符號“/”旨在表示截斷除法(division by truncation)。在一些示例中,O(x,y,z)飽和至像素值的動態範圍。end_weight字段1101和start_weight字段1102可以各自是例如1到255之間的值,其表示要與並置的輸入像素相乘的初始權重和最終權重。根據一些實施例,end_weight的默認值可以是1,start_weight的默認值可以是255。在一些實施例中,保留值0。
在一些示例中,如果需要任一沉浸式視覺輸入的副本,則可以在之前或之後的導出樣本中使用恆等導出變換。
第12圖示出了可用於指定沉浸式視覺輸入的裁剪變換的示例性語法1200。cleanApertureWidthN字段1201的值除以cleanApertureWidthD字段1202的值可以是指定視覺輸入的確切寬度(例如,以計數像素(counted pixel)計)的小數。cleanApertureHeightN字段1203除以cleanApertureHeightD字段1204的值可以是指定視覺輸入的準確高度(例如,以計數像素計)的小數。cleanApertureDepthN字段1205的值除以cleanApertureDepthD字段1206的值可以是指定視覺輸入的準確深度(例如,以計數像素計)的小數。根據一些實施例,cleanApertureWidthD字段1202、cleanApertureHeightD字段1204和/或cleanApertureDepthD字段1206中的一個或多個的值可以被設置或默認為值1。在一些示例中,cleanApertureWidthN字段1201、cleanApertureHeightN字段1203和/或cleanApertureDepthN字段1205的值可以分別指定視覺輸入的準確寬度、高度和/或深度(例如,以計數像素計)。
根據一些實施例,cleanApertureWidthD字段1202、cleanApertureHeightD字段1204和/或cleanApertureDepthD字段1206中的一個或多個的值可以被設置或默認為值1。在一些示例中,cleanApertureWidthN字段1201、cleanApertureHeightN字段1203和/或cleanApertureDepthN字段1205的值可以分別指定視覺輸入的準確寬度、高度和/或深度(例如,以計數像素計)。根據一些實施例,字段1201-1206可以全部為正或要求為正。
horizOffN字段1207除以horizOffD字段1208(horizOffN field 1207 divided by the horizOffD field 1208)的值可以是指定清潔光圈中心的水平偏移減去寬度減去一且除以二的小數(例如,以計數像素計)。vertOffN字段1209的值除以vertOffD字段1210的值可以是指定清潔光圈中心的垂直偏移減去寬度減一併除以二的小數(例如,以計數像素計)。depOffN字段1211的值除以depOffD字段1212的值可以是指定清潔光圈中心的深度偏移減去寬度減一併除以二的小
數(例如,以計數像素計)。由這些值創建的小數值通常可以是0。根據一些示例,語法1200內的語法元素的語義與ISO/IEC 14496-12中為CleanApertureBox的語法元素指定的那些相同。例如,每對字段創建的分數可以用簡化的方式(reduced term)來指定。根據一些示例,horizOffN和vertOffN的值可以是正的或負的。在某些示例中,horizOffD、vertOffD、depOffD的值必須指定為正值。
根據一些實施例,導出變換可以包括沉浸式視覺輸入的旋轉。第13圖示出了可用於旋轉沉浸式視覺輸入的示例性語法1300。例如,該語法可用於在逆時針方向上以90度為單位旋轉沉浸式視覺輸入,例如在XY、XZ和YZ平面中。角度XY字段1301的值乘以90、角度XZ字段1302的值乘以90以及角度YZ字段1303的值乘以90可以指定角度的值(例如,在逆時針方向)(例如,以度為單位),分別在XY、XZ和YZ平面上旋轉。
根據一些實施例,導出變換可以包括沉浸式視覺輸入的鏡像。第14圖示出了可用於圍繞垂直(例如,圍繞Y軸)、水平(例如,圍繞X軸)或堆疊(例如,圍繞Z軸)軸鏡像沉浸式視覺輸入的示例性語法1400。軸字段1401的值可以指定用於鏡像變換的軸。例如,字段1401的值0可以表示垂直軸,字段1401的值1可以表示水平軸,字段1401的值2可以表示鏡像變換的堆疊軸。在一些實施例中,垂直鏡像是左右鏡像,水平鏡像是上下鏡像,和/或堆疊鏡像是前後鏡像。
根據一些實施例,導出變換可以包括將沉浸式視覺輸入縮放到目標尺寸。第15圖示出了可用於將輸入縮放到指定大小的示例性語法1500。
target_width_numerator 1501可以指定在水平維度上調整大小的圖像的縮放比例的分子(例如,並且可以被限制為不使用值0)。target_width_denominator 1502可以指定在水平維度上調整大小的圖像的縮放比例的分母(例如,並且可以被限制為不使用值0)。target_height_numerator 1503可以指定在垂直維度上調整大小的圖像的縮放比例的分子(例如,並且可以被限
制為不使用值0)。target_height_denominator 1504可以指定在垂直維度上調整大小的圖像的縮放比例的分母(例如,並且可以被限制為不使用值0)。target_depth_numerator 1505可以指定深度維度中調整大小的圖像的縮放比例的分子(例如,並且可以被限制為不使用值0)。target_depth_denominator 1506可以指定在深度維度上調整大小的圖像的縮放比的分母(例如,並且可以被限制為不使用值0)。在一些示例中,字段1501-1506可以是默認值1。
根據一些實施例,導出變換內的語法元素的語義與為ISO/IEC 23008-12中指定的ImageScaling的語法元素指定的那些語義相同。例如,根據語法元素計算目標大小可能與ISO/IEC 23008-12中為ImageScaling指定的大小相同。
根據一些實施例,導出變換可以包括選擇沉浸式視覺輸入的感興趣區域(ROI)。在一些實施例中,該導出變換可以具有兩個輸入,並且用於該導出變換的輸入可以是視覺軌道和承載3D笛卡爾坐標的ROI定時元資料軌道(例如,如ISO/IEC 23001-10中所規定的)。
第16圖示出了可以使用在第二輸入軌道中攜帶的3D笛卡爾坐標來裁剪第一輸入軌道的樣本的示例性語法1600。換言之,承載3D笛卡爾坐標的ROI定時元資料軌道被規定性地應用於作為ROI選擇導出變換的輸入的視覺軌道。導出變換的視覺輸出可能僅包含由ROI定時元資料軌道的3D笛卡爾坐標指定的矩形。
根據一些實施例,導出變換可以提供沉浸式視覺輸入的網格組合。
例如,第17圖是語法1700的示例,其以給定的3D網格順序提供沉浸式視覺輸入的組合。導出變換的輸入數量可以是正好等於行數乘以列數乘以沉浸式視覺輸入的層數的值。根據一些示例,第一個視覺輸入是網格的左上
角單元格,和/或最後一個視覺輸入是網格的右下角單元格。
根據一些實施例,視覺輸入可以按行優先順序(row-major order),頂行在前,從左到右,按照它們被列為導出操作輸入的順序來提供。視覺輸入的數量可以等於行數乘以列數乘以層數。在一些示例中,每個沉浸式視覺輸入可能具有完全相同的寬度、高度和深度。在某些情況下,這可能需要調整大小。沉浸式視覺輸入組合在一起時,根據3D網格完全“覆蓋”變換的沉浸式視覺輸出,其中寬度乘以列數等於output_width的值,其中高度乘以行數等於output_height的值,深度乘以層數等於output_depth的值。例如,變換的視覺輸出可以通過將視覺輸入鋪成列寬等於寬度、行高等於高度、層深度等於深度,沒有任何間隙或重疊的3D網格來形成。
output_width字段1704、output_height字段1705和output_depth字段1706可以分別指定沉浸式視覺輸入被放置在其上的重構的沉浸式視覺輸出的寬度、高度和深度。
rows_minus_one字段1701、columns_minus_one字段1702和layers_minus_one字段1703指定3D網格中的行數、列數和層數。根據一些實施例,字段1701、1702和1703的值可以分別比行數、列數或層數小一。這樣,還可以通過將rows_minus_one字段1701和1的值之和乘以columns_minus_one字段1702和1的值之和並隨後將該值乘以layers_minus_one字段1703的值和1之和來計算如本文所述的視覺輸入的數量(例如,(rows_minus_one+1)*(columns_minus_one+1)*(layers_minus_one+1))。根據一些實施例,視覺輸入以導出操作輸入的列出順序,首先填充頂行,然後是第二行和隨後的行。
根據一些實施例,導出變換可以提供沉浸式視覺輸入的覆蓋組合(overlay composition)。例如,第18圖是語法1800的示例,其提供沉浸式視覺輸
入與表示背景的另一個視覺輸入的組合。例如,沉浸式視覺輸出可以是覆蓋沉浸式視覺輸入(overlay immersive visual input)和背景視覺輸入的組合。
根據一些實施例,可以使用由語法1800指定的偏移量將覆蓋沉浸式視覺輸入複製到背景視覺輸入上。例如,可以使用horizontal_offset字段1801、vertical_offset字段1802和stacked_offset字段1803的值的偏移量將覆蓋沉浸式視覺輸入複製到背景視覺輸入上。根據一些實施例,horizontal_offset字段1801、vertical_offset字段1802和stacked_offset字段1803指定從背景視覺輸入的左上前角(top-left-front corner)到覆蓋沉浸式視覺輸入所在位置的偏移。在一些示例中,具有負偏移值的像素位置不包括在重構的沉浸式視覺輸出中。
在一些示例中,重構的視覺輸出的大小可以等於背景視覺輸入的大小。例如,可能超出裁剪操作的背景視覺輸入大小之外的覆蓋視覺輸入的像素可被裁剪掉。例如,大於或等於背景視覺輸入寬度的水平像素位置可能不包括在重構的沉浸式視覺輸出中。在一些示例中,大於或等於背景視覺輸入的高度的垂直像素位置可能不包括在重構的沉浸式視覺輸出中。大於或等於背景視覺輸入深度的堆疊像素位置不包括在重建的沉浸式視覺輸出中。在一些示例中,當視覺輸入具有關聯的alpha平面(alpha plane)時,應對視覺輸入執行alpha混合(alpha blending)。
根據一些實施例,導出操作鏈可用於創建多個覆蓋組合導出變換的序列。這可以允許多個視覺輸入以有序的順序覆蓋在初始背景視覺輸入上。例如,覆蓋組合序列中的第一覆蓋組合導出變換的背景視覺輸入可以表示初始背景視覺輸入。在序列中的後續覆蓋組合導出變換中,背景視覺輸入應指定序列中前一個覆蓋組合導出變換的視覺輸出(例如,第n次覆蓋組合導出變換的輸入背景視覺輸入應為第n-1次覆蓋組合導出變換的輸出)。因此,序列中的第一個覆蓋組合導出變換表示最底部覆蓋視覺輸入對於初始背景視覺輸入的覆蓋組
合。序列中的最後一個覆蓋組合導出變換表示最頂部覆蓋視覺輸入對於序列中先前覆蓋導出變換的重構視覺輸出的覆蓋組合。在一些實施例中,sRGB填充導出變換的視覺輸出可以用作初始背景視覺輸入。
第19圖示出了根據一些實施例的用於獲得沉浸式媒體的視訊資料的示例性計算機化方法1900。
在步驟1902,該方法包括訪問媒體資料以獲得第一3D沉浸式媒體體驗。媒體資料可以包括一個或多個媒體軌道,其中每個媒體軌道包括用於第一3D沉浸式媒體體驗的不同組件的相關聯的一系列媒體資料樣本。媒體資料還可以包括一個或多個導出的沉浸式軌道,每個都包括要執行的一組導出操作以生成用於第二3D沉浸式媒體體驗的不同組件的媒體資料的關聯樣本系列。
在步驟1904,該方法包括針對一個或多個導出的沉浸式軌道中的每一個執行該組導出操作中之一導出操作,通過處理該導出操作指定的一個或多個媒體軌道的關聯樣本,生成第二3D沉浸式媒體體驗的媒體資料的關聯樣本系列。
例如,導出操作可以是用於再現一個或多個媒體軌道的關聯樣本的恆等操作、用於通過填充像素寬度、像素高度和像素深度指定的大小的單一顏色來生成第二3D沉浸式媒體體驗的媒體資料的一系列樣本的填充操作,用於混合樣本使得一個或多個媒體軌道的第一媒體軌道的一個或多個第一樣本淡入到該一個或多個媒體軌道的第二媒體軌道的一個或多個第二樣本的操作,用於裁剪一個或多個媒體軌道的相關樣本的操作,用於旋轉一個或多個媒體軌道的相關樣本的操作,用於鏡像一個或多個媒體軌道的相關樣本的操作,和/或用於將一個或多個媒體軌道的相關樣本縮放到指定大小的操作。
在一些示例中,一個或多個媒體軌道可以包括包含第一系列媒體資料樣本的第一輸入軌道和包括指定3D坐標資料的元資料的第二輸入軌道,並
且導出操作可以是用於選擇感興趣區域的操作。例如,導出操作可以是用於基於指定的3D坐標資料處理第一輸入軌道的第一系列樣本中的一個或多個樣本的操作。
在一些示例中,一個或多個媒體軌道可以包括多個媒體軌道,導出操作可以包括用於生成多個媒體軌道中的每一個的媒體樣本的組合的操作。
在一些示例中,一個或多個媒體軌道包括多個媒體軌道,並且導出操作可以是用於將多個媒體軌道的第一媒體軌道的一個或多個第一樣本覆蓋在多個媒體軌道的第二媒體軌道的一個或多個第二樣本上的操作。
在一些示例中,生成3D沉浸式媒體體驗的樣本系列包括生成包括第二3D沉浸式媒體體驗的一個或多個第一導出樣本的第一系列的第一輸出軌道,以及生成包括第二3D沉浸式媒體體驗的一個或多個第二導出樣本的第二系列的第二輸出軌道。
在一些實施例中,一個或多個導出的沉浸式軌道的數量等於一個或多個媒體軌道的數量。生成第二3D沉浸式媒體體驗的樣本系列可以包括,針對一個或多個導出的沉浸式軌道中的每一個執行導出操作集合的一導出操作進一步包括生成輸出軌道,該輸出軌道包括所生成的第二3D沉浸式媒體體驗的媒體資料的關聯樣本序列。
根據本文描述的原理操作的技術可以以任何合適的方式實施。上述流程圖的處理和決策塊表示可能包含在執行這些不同過程的算法中的步驟和動作。源自這些過程的算法可以實現為與一個或多個單一或多用途處理器集成並指導其操作的軟體,可以實現為功能等效電路,例如數位信號處理(DSP)電路或應用程式專用積體電路(ASIC),或者可以以任何其他合適的方式實現。應當理解,這裡包括的流程圖不描述任何特定電路或任何特定程式語言或程式語言類型的語法或操作。相反,流程圖說明了所屬領域具有通常知識者可用於製
造電路或實現計算機軟體算法以執行本文描述的技術類型的特定裝置的處理的功能資訊。還應當理解,除非本文另有說明,否則每個流程圖中描述的步驟和/或動作的特定順序僅說明可以實現並且可以在本文描述的原理的實現和實施例中變化的算法。
因此,在一些實施例中,本文描述的技術可以體現為實現為軟體的計算機可執行指令,包括應用軟體、系統軟體、韌體、中間件、嵌入式代碼或任何其他合適類型的計算機代碼。這樣的計算機可執行指令可以使用多種合適的程式語言和/或程式或腳本工具中的任何一種來編寫,並且還可以編譯為在框架或虛擬機上執行的可執行機器語言代碼或中間代碼。
當本文描述的技術體現為計算機可執行指令時,這些計算機可執行指令可以以任何合適的方式實現,包括作為多個功能設施,每個提供一個或多個操作以完成根據這些技術操作的算法的執行。“功能設施”,無論如何實例化,都是計算機系統的結構組件,當它與一台或多台計算機集成並由一台或多台計算機執行時,會使一台或多台計算機執行特定的操作角色。功能設施可以是軟體元素的一部分或整個軟體元素。例如,功能設施可以實現為過程的函數,或作為離散過程,或任何其他合適的處理單元。如果此處描述的技術被實現為多個功能設施,則每個功能設施都可以以其自己的方式實現;所有這些都不需要以相同的方式實現。此外,這些功能設施可以酌情並行和/或串行執行,並且可以使用正在執行它們的計算機上的共享記憶體、使用消息傳遞協議或以其他任何合適的方式在彼此之間傳遞資訊。
通常,功能設施包括執行特定任務或實現特定抽像資料類型的例程、程式、對象、組件、資料結構等。通常,功能設施的功能可以根據需要在它們運行的系統中組合或分佈。在一些實施方式中,執行本文技術的一個或多個功能設施可以一起形成完整的軟體包。在替代實施例中,這些功能設施可以
適於與其他不相關的功能設施和/或過程交互,以實現軟體程式應用。
這裡已經描述了一些示例性功能設施,用於執行一項或多項任務。然而,應當理解,所描述的功能設施和任務的劃分僅僅是說明可以實現本文描述的示例性技術的功能設施的類型,並且實施例不限於以任何特定數量、劃分、或功能設施類型。在一些實現中,所有功能都可以在單個功能設施中實現。還應當理解,在一些實施方式中,本文描述的一些功能設施可以與其他功能設施一起或分開實施(即,作為單個單元或單獨的單元),或者這些功能設施中的一些可以不實施。
在一些實施例中,實現本文描述的技術的計算機可執行指令(當實現為一個或多個功能設施或以任何其他方式實現時)可以被編碼在一個或多個計算機可讀介質上以向該介質提供功能。計算機可讀介質包括諸如硬碟驅動器之類的磁性介質、諸如壓縮碟(CD)或數位多功能碟(DVD)之類的光學介質、持久性或非持久性固態記憶體(例如,閃存、磁RAM等)或任何其他合適的存儲介質。這種計算機可讀介質可以以任何合適的方式實現。如本文所用,“計算機可讀介質”(也稱為“計算機可讀存儲介質”)是指有形存儲介質。有形存儲介質是非臨時性的,並且具有至少一個實體結構組件。在如本文所用的“計算機可讀介質”中,至少一個實體結構組件具有至少一個實體特性,該實體特性可以在創建具有嵌入資訊的介質的過程、在其上記錄資訊的過程期間以某種方式改變,或任何其他用資訊對媒體進行編碼的過程。例如,計算機可讀介質的實體結構的一部分的磁化狀態可以在記錄過程中改變。
此外,上述一些技術包括以某些方式存儲資訊(例如,資料和/或指令)以供這些技術使用的動作。在這些技術的一些實施方式中——例如這些技術被實施為計算機可執行指令的實施方式——資訊可以被編碼在計算機可讀存儲介質上。在本文將特定結構描述為存儲該資訊的有利格式的情況下,這些結
構可用於在編碼在存儲介質上時賦予資訊的實體組織。然後,這些有利的結構可以通過影響與資訊交互的一個或多個處理器的操作來為存儲介質提供功能;例如,通過提高處理器執行的計算機操作的效率。
在其中技術可以體現為計算機可執行指令的一些但不是全部實現中,這些指令可以在一個或多個在任何合適的計算機系統中運行的合適的計算設備或一個或多個計算設備上執行(或者一個或多個計算設備的一個或多個處理器)可以被程式為執行計算機可執行指令。計算設備或處理器可以被程式為在指令以計算設備或處理器可訪問的方式存儲時執行指令,例如在資料存儲(例如,片上高速緩存或指令寄存器、計算機可讀存儲)中可通過匯流排訪問的介質、可通過一個或多個網路訪問且可由設備/處理器訪問的計算機可讀存儲介質等)。包括這些計算機可執行指令的功能設施可以與單個多功能可程式數位計算設備、共享處理能力並共同執行本文所述技術的兩個或多個多功能計算設備的協調系統集成並指導其操作、專用於執行本文所述技術的單個計算設備或計算設備的協調系統(位於同一地點或地理分佈)、用於執行本文所述技術的一個或多個現場可程式門陣列(FPGA)或任何其他合適的系統。
計算設備可以包括至少一個處理器、網路適配器和計算機可讀存儲介質。計算設備可以是例如台式或膝上型個人計算機、個人數位助理(PDA)、智能移動電話、服務器或任何其他合適的計算設備。網路適配器可以是使計算設備能夠通過任何合適的計算網路與任何其他合適的計算設備進行有線和/或無線通信的任何合適的硬體和/或軟體。計算網路可以包括無線接入點、交換機、路由器、網關和/或其他網路設備以及任何合適的有線和/或無線通信介質或用於在兩個或多個計算機之間交換資料的介質,包括互聯網。計算機可讀介質可以適於存儲要處理的資料和/或要由處理器執行的指令。處理器能夠處理資料和執行指令。資料和指令可以存儲在計算機可讀存儲介質上。
計算設備可以另外具有一個或多個組件和外圍設備,包括輸入和輸出設備。除其他外,這些設備可用於呈現用戶界面。可用於提供用戶界面的輸出設備的示例包括用於視覺呈現輸出的打印機或顯示屏以及用於可聽呈現輸出的揚聲器或其他聲音生成設備。可用於用戶界面的輸入設備的示例包括鍵盤和指針設備,例如滑鼠、觸摸板和數位化平板電腦。作為另一個示例,計算設備可以通過語音識別或其他可聽格式接收輸入資訊。
已經描述了在電路和/或計算機可執行指令中實現技術的實施例。應當理解,一些實施例可以是一種方法的形式,已經提供了該方法的至少一個示例。作為該方法的一部分執行的動作可以以任何合適的方式排序。因此,可以構造其中以不同於圖示的順序執行動作的實施例,這可以包括同時執行一些動作,即使在說明性實施例中被示為順序動作。
上述實施例的各個方面可以單獨使用、組合使用或以在前述實施例中未具體討論的各種佈置方式使用,因此其應用不限於本說明書中闡述的部件的細節和佈置。前面的描述或在附圖中說明。例如,一個實施例中描述的方面可以以任何方式與其他實施例中描述的方面組合。
在申請專利範圍中使用諸如“第一”、“第二”、“第三”等順序術語來修改申請專利範圍要素本身並不意味著一個申請專利範圍要素相對於另一個或時間的任何優先權、優先級或順序執行方法的動作的順序,但僅用作標籤,以區分具有特定名稱的一個申請專利範圍元素與另一個具有相同名稱的元素(但使用序數術語)以區分申請專利範圍元素。
此外,本文使用的措辭和術語是出於描述的目的,不應被視為限制。本文中使用的“包括”、“包含”、“具有”、“由...組成”、“涉及”及其變體意在涵蓋其後列出的項目及其等同物以及附加項目。
此處使用“示例性”一詞來表示用作示例、實例或說明。因此,本
文作為示例性描述的任何實施例、實施方式、過程、特徵等應被理解為說明性示例並且不應被理解為優選或有利示例,除非另有說明。
已經如此描述了至少一個實施例的幾個方面,應當理解,所屬領域具有通常知識者將容易想到各種改變、修改和改進。此類變更、修改和改進旨在成為本公開的一部分,並且旨在落入本文所述原理的精神和範圍內。因此,前述描述和附圖僅作為示例。
1900:方法
1902~1904:步驟
Claims (17)
- 一種獲取沉浸式媒體的視訊資料的方法,該方法包括:訪問媒體資料以獲得第一三維沉浸式媒體體驗,包括:一個或多個媒體軌道,每個媒體軌道包括用於該第一三維沉浸式媒體體驗的不同組件的相關媒體資料樣本系列;以及一個或多個導出的沉浸式軌道,每個導出的沉浸式軌道包括要執行的一導出操作集合,用以生成第二三維沉浸式媒體體驗的不同組件的相關媒體資料樣本系列;以及對於該一個或多個導出的沉浸式軌道中的每一個,通過處理一導出操作指定的該一個或多個媒體軌道的相關樣本來執行該導出操作集合的該導出操作,以生成該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列,其中生成該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列包括:生成包括該第二三維沉浸式媒體體驗的一個或多個第一導出樣本的第一系列的第一輸出軌道;以及生成包括該第二三維沉浸式媒體體驗的一個或多個第二導出樣本的第二系列的第二輸出軌道。
- 如請求項1所述之方法,其中,該導出操作是用於再現該一個或多個媒體軌道的該相關樣本的恆等操作。
- 如請求項1所述之方法,其中,該導出操作包括填充操作,用於通過填充由像素寬度、像素高度和像素深度指定的大小的單一顏色來生成該第二三維沉浸式媒體體驗的樣本系列。
- 如請求項1所述之方法,其中,該導出操作包括用於混合樣本的操作,使得該一個或多個媒體軌道的第一媒體軌道的一個或多個第一樣本淡入到該一個或多個媒體軌道的第二媒體軌道的一個或多個第二樣本。
- 如請求項1所述之方法,其中,該導出操作包括用於裁剪該一個或多個媒體軌道的該相關樣本的操作。
- 如請求項1所述之方法,其中,該導出操作包括用於旋轉該一個或多個媒體軌道的該相關樣本的操作。
- 如請求項1所述之方法,其中,該導出操作包括用於鏡像該一個或多個媒體軌道的該相關樣本的操作。
- 如請求項1所述之方法,其中,該導出操作包括用於將該一個或多個媒體軌道的該相關樣本縮放到指定大小的操作。
- 如請求項1所述之方法,其中:該一個或多個媒體軌道包括:第一輸入軌道,包括第一系列媒體資料樣本;以及第二輸入軌道,包括指定三維坐標資料的元資料;以及該導出操作包括用於基於指定的該三維坐標資料處理該第一輸入軌道的該第一系列樣本中的一個或多個樣本的操作。
- 如請求項1所述之方法,其中該一個或多個導出的沉浸式軌道的數量等於該一個或多個媒體軌道的數量,並且其中生成該第二三維沉浸式媒體體驗的相關媒體資料樣本系列包括:生成包括所生成的該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列的輸出軌道。
- 如請求項1所述之方法,其中:該一個或多個媒體軌道包括多個媒體軌道;以及該導出操作包括用於生成該多個媒體軌道中的每一個的媒體樣本的組合的操作。
- 如請求項1所述之方法,其中: 該一個或多個媒體軌道包括多個媒體軌道;以及該導出操作包括用於將該多個媒體軌道的第一媒體軌道的一個或多個第一樣本覆蓋在該多個媒體軌道的第二媒體軌道的一個或多個第二樣本上的操作。
- 一種被配置為對視訊資料進行解碼的裝置,該裝置包括與記憶體通信的處理器,該處理器被配置為執行存儲在該記憶體中的指令,該指令使該處理器執行:訪問媒體資料以獲得第一三維沉浸式媒體體驗,包括:一個或多個媒體軌道,每個媒體軌道包括用於該第一三維沉浸式媒體體驗的不同組件的相關媒體資料樣本系列;以及一個或多個導出的沉浸式軌道,每個導出的沉浸式軌道包括要執行的一導出操作集合以生成第二三維沉浸式媒體體驗的不同組件的相關媒體資料樣本系列;以及對於該一個或多個導出的沉浸式軌道中的每一個,通過處理一導出操作指定的該一個或多個媒體軌道的相關樣本來執行該導出操作集合的該導出操作,以生成該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列,其中生成該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列包括:生成包括該第二三維沉浸式媒體體驗的一個或多個第一導出樣本的第一系列的第一輸出軌道;以及生成包括該第二三維沉浸式媒體體驗的一個或多個第二導出樣本的第二系列的第二輸出軌道。
- 如請求項13所述之裝置,其中該一個或多個導出的沉浸式軌道的數量等於該一個或多個媒體軌道的數量,並且其中生成該第二三維沉浸式媒體體驗的相關媒體資料樣本系列包括:為該一個或多個導出的沉浸式軌道中的每一個執行該導出操作集合之一導 出操作;以及生成包括所生成的該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列的輸出軌道。
- 一種存儲處理器可執行指令的非暫時性計算機可讀存儲介質,當由處理器執行時,使該處理器執行一種方法,該方法包括:訪問媒體資料以獲得第一三維沉浸式媒體體驗,包括:一個或多個媒體軌道,每個媒體軌道包括用於該第一三維沉浸式媒體體驗的不同組件的相關媒體資料樣本系列;以及一個或多個導出的沉浸式軌道,每個導出的沉浸式軌道包括要執行的一導出操作集合以生成第二三維沉浸式媒體體驗的不同組件的相關媒體資料樣本系列;以及對於該一個或多個導出的沉浸式軌道中的每一個,通過處理一導出操作指定的該一個或多個媒體軌道的相關樣本來執行該導出操作集合的該導出操作,以生成該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列,其中生成該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列包括:生成包括該第二三維沉浸式媒體體驗的一個或多個第一導出樣本的第一系列的第一輸出軌道;以及生成包括該第二三維沉浸式媒體體驗的一個或多個第二導出樣本的第二系列的第二輸出軌道。
- 如請求項15所述之至少一種非暫時性計算機可讀存儲介質,其中該一個或多個導出的沉浸式軌道的數量等於該一個或多個媒體軌道的數量,並且其中生成該第二三維沉浸式媒體體驗的相關媒體資料樣本系列包括:為該一個或多個導出的沉浸式軌道中的每一個執行該導出操作集合之一導出操作;以及 生成包括所生成的該第二三維沉浸式媒體體驗的該相關媒體資料樣本系列的輸出軌道。
- 如請求項15所述之至少一種非暫時性計算機可讀存儲介質,其中,該導出操作是用於再現該一個或多個媒體軌道的相關樣本的恆等操作。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163133808P | 2021-01-05 | 2021-01-05 | |
US63/133,808 | 2021-01-05 | ||
US17/568,112 | 2022-01-04 | ||
US17/568,112 US11743559B2 (en) | 2021-01-05 | 2022-01-04 | Methods and systems for derived immersive tracks |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202232958A TW202232958A (zh) | 2022-08-16 |
TWI802204B true TWI802204B (zh) | 2023-05-11 |
Family
ID=82218893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111100410A TWI802204B (zh) | 2021-01-05 | 2022-01-05 | 用於導出的沉浸式軌道的方法和系統 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11743559B2 (zh) |
TW (1) | TWI802204B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW202042551A (zh) * | 2019-03-19 | 2020-11-16 | 新加坡商聯發科技(新加坡)私人有限公司 | 沈浸式媒體資料軌道之軌道導出方法和裝置 |
US20200396471A1 (en) * | 2019-06-14 | 2020-12-17 | Mediatek Singapore Pte. Ltd. | Methods and apparatus for spatial grouping and coordinate signaling for immersive media data tracks |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
BR112019016820B1 (pt) * | 2017-04-11 | 2022-05-24 | Dolby Laboratories Licensing Corporation | Método para experiências de entretenimento aumentadas em camadas |
US11183220B2 (en) * | 2018-10-03 | 2021-11-23 | Mediatek Singapore Pte. Ltd. | Methods and apparatus for temporal track derivations |
-
2022
- 2022-01-04 US US17/568,112 patent/US11743559B2/en active Active
- 2022-01-05 TW TW111100410A patent/TWI802204B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW202042551A (zh) * | 2019-03-19 | 2020-11-16 | 新加坡商聯發科技(新加坡)私人有限公司 | 沈浸式媒體資料軌道之軌道導出方法和裝置 |
US20200396471A1 (en) * | 2019-06-14 | 2020-12-17 | Mediatek Singapore Pte. Ltd. | Methods and apparatus for spatial grouping and coordinate signaling for immersive media data tracks |
Also Published As
Publication number | Publication date |
---|---|
US20220217452A1 (en) | 2022-07-07 |
TW202232958A (zh) | 2022-08-16 |
US11743559B2 (en) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI709325B (zh) | 用於編解碼視訊資料的方法及裝置 | |
TWI768308B (zh) | 沈浸式媒體資料軌道之軌道導出方法和裝置 | |
US11509878B2 (en) | Methods and apparatus for using track derivations for network based media processing | |
CN110049330B (zh) | 用于编码和解码虚拟现实内容的方法和装置 | |
US11457231B2 (en) | Methods and apparatus for signaling spatial relationships for point cloud multimedia data tracks | |
TWI768372B (zh) | 用於沉浸式媒體資料軌道的空間分組以及坐標信令的方法及裝置 | |
TW201907720A (zh) | 用軌道分組獲取合成軌道之方法及裝置 | |
TWI688263B (zh) | 一種推導合成軌道的方法及裝置 | |
US10931930B2 (en) | Methods and apparatus for immersive media content overlays | |
TWI782386B (zh) | 基於網路之媒體處理應用中利用軌道推導產生新軌道之方法和裝置 | |
TW201946464A (zh) | 用於提供二維空間關係的方法以及裝置 | |
TWI785458B (zh) | 用於編碼/解碼沉浸式媒體的視訊資料的方法和裝置 | |
TW201944776A (zh) | 編碼和解碼虛擬實境內容的方法和裝置 | |
US11922561B2 (en) | Methods and systems for implementing scene descriptions using derived visual tracks | |
TWI802204B (zh) | 用於導出的沉浸式軌道的方法和系統 | |
TWI793567B (zh) | 用以重定時序和縮放輸入視頻軌道的方法和裝置 |