TWI749426B - 用於媒體資料之嵌入式呈現引擎 - Google Patents

用於媒體資料之嵌入式呈現引擎 Download PDF

Info

Publication number
TWI749426B
TWI749426B TW108146040A TW108146040A TWI749426B TW I749426 B TWI749426 B TW I749426B TW 108146040 A TW108146040 A TW 108146040A TW 108146040 A TW108146040 A TW 108146040A TW I749426 B TWI749426 B TW I749426B
Authority
TW
Taiwan
Prior art keywords
neural network
data
media
engine model
media data
Prior art date
Application number
TW108146040A
Other languages
English (en)
Other versions
TW202028997A (zh
Inventor
豪 黄
志修 李
家夫 羅
Original Assignee
美商高通公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商高通公司 filed Critical 美商高通公司
Publication of TW202028997A publication Critical patent/TW202028997A/zh
Application granted granted Critical
Publication of TWI749426B publication Critical patent/TWI749426B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/4223Cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42203Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] sound input device, e.g. microphone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6547Transmission by server directed to the client comprising parameters, e.g. for client setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8458Structuring of content, e.g. decomposing content into time segments involving uncompressed content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Library & Information Science (AREA)
  • Image Processing (AREA)

Abstract

本發明提供用於提供用於原始媒體資料之一呈現引擎模型的技術及系統。在一些實例中,一系統獲得由一資料擷取器件擷取之媒體資料並將包括經組態以處理該媒體資料並產生一特定媒體資料輸出的一神經網路之一描述的一呈現引擎模型嵌入於含有該媒體資料之一媒體項中,該描述界定用於該神經網路之一神經網路架構。該系統接著輸出該媒體項,其中該媒體項中嵌入有該呈現引擎模型,該呈現引擎模型指示如何執行該神經網路以基於該神經網路之該描述來處理該媒體項中之該媒體資料並產生該特定媒體資料輸出。

Description

用於媒體資料之嵌入式呈現引擎
本發明大體而言係關於媒體呈現,且更特定言之係關於將呈現引擎模型嵌入於媒體項中以用於呈現媒體項中之原始媒體資料。
諸如數位攝影機及麥克風之媒體資料擷取產品之增加的通用性已允許媒體擷取能力整合至種類繁多的器件中。使用者可自裝備有此類媒體擷取能力之任一器件擷取視訊、影像及/或音訊。視訊、影像及音訊可經擷取用於休閒用途、專業用途、監測及自動化以及其他應用。媒體擷取器件可擷取原始媒體資料(諸如原始影像或音訊資料)並產生含有原始媒體資料之檔案或串流。為呈現檔案或串流中之原始媒體資料,諸如解碼器之適合於彼特定檔案或串流的單獨呈現引擎係需要的。舉例而言,視訊解碼器為呈現及觀看視訊檔案中之內容所必需且影像解碼器為呈現及觀看影像檔案中之內容所必需。此類呈現引擎能夠理解、處理並呈現檔案或串流中之原始媒體資料。
存在用於媒體資料之各式各樣檔案格式及類型,以及用於呈現不同類型檔案的軟體工具。不同檔案具有不同要求、規範及性能,且僅僅與一些媒體軟體工具相容。若使用者想要在一器件上呈現特定媒體檔案,則使用者需要具有安裝於該器件上的適合於彼媒體檔案之媒體軟體。 不幸的是,在許多情況下,使用者之器件可不具有用於特定媒體檔案之必要媒體軟體。結果,使用者常常不能在其器件上呈現媒體檔案,除非其能夠找到並安裝用於其想要呈現的每一媒體檔案之必要媒體軟體。過程可係令人沮喪的,常常防止使用者對媒體內容的存取,妨礙使用者之媒體內容體驗,或迫使使用者每當其希望呈現與其器件上之軟體不相容的媒體檔案時找到及安裝合適之媒體軟體。由可獲得的不同類型媒體檔案所引起的相容性問題已促使經由標準化增加互操作性的各種努力。然而,標準化可係繁重的,當添加新的媒體能力及特徵時導致冗長且複雜的過程。
本文中所描述的技術可經實施以產生含有原始或經擷取媒體資料(例如,影像資料、視訊資料、音訊資料等)及用於原始媒體資料的呈現引擎之完整規範的媒體項,諸如媒體檔案或串流。呈現引擎模型可連同原始媒體資料一起嵌入於媒體項中。媒體項中之呈現引擎模型允許器件在無單獨媒體呈現工具(例如,解碼器、編碼器、影像處理器、神經網路處理器及/或其他媒體呈現工具)情況下處理及呈現原始媒體資料。媒體項因此預先裝備有用於不管媒體項之類型或格式而呈現原始媒體資料的工具,籍此避免通常在試圖呈現不同類型的媒體項時發生的令人沮喪的相容性問題。基於媒體項中之呈現引擎模型,使用者可執行經界定用於媒體資料的呈現引擎並呈現來自使用者之器件的媒體資料而不必首先確保器件具有與將被顯現之媒體項相容的單獨媒體呈現工具。
藉由在媒體項中包括呈現引擎模型或規範,器件上之任何合適之處理器可使用媒體項中之原始媒體資料及呈現引擎模型產生呈現輸出。因而,器件不需要用於特定媒體項之單獨及相容媒體呈現工具。本文 中媒體項及方法因此可去除或顯著減小對媒體項之標準化的需求,支援用於處理媒體資料之新的解決方案,並提供用於不同類型媒體資料的定製處理。本文中媒體項中之呈現引擎模型可經設計用於媒體項中之原始媒體資料且可經定製用於特定呈現意圖及結果。
根據至少一個實例,提供用於產生含有媒體資料(例如,原始或經擷取媒體資料)及用於呈現媒體資料的嵌入式呈現引擎模型的媒體項之方法。方法可包括獲得由資料擷取器件擷取的媒體資料,將呈現引擎模型嵌入於含有媒體資料之媒體項中,及提供(例如,發送、儲存、輸出等)媒體項至一或多個器件,其中媒體項中嵌入有呈現引擎模型。一或多個器件可獲得媒體項並儲存媒體項或使用媒體項中之呈現引擎模型來執行神經網路以處理及呈現媒體項中之媒體資料。神經網路可使用媒體資料作為輸入以產生呈現之媒體資料輸出。
媒體資料可包括影像資料、視訊資料、音訊資料等。媒體項可包括檔案、串流或可含有或囊封媒體資料及呈現引擎模型的任何其他類型之資料容器或物件。呈現引擎模型可包括經組態以處理媒體資料並產生特定媒體資料輸出的神經網路之描述。媒體項中之呈現引擎模型可指示如何執行神經網路以基於神經網路之描述來處理媒體資料並產生特定媒體資料輸出。舉例而言,媒體項中之呈現引擎模型可將如何執行神經網路以處理媒體資料並產生特定媒體資料輸出的媒體項之複本通知該一或多個器件及/或任何其他器件。
神經網路的描述可界定用於神經網路之神經網路架構。神經網路架構可包括例如神經網路結構(例如,層之數目、每一層中之節點的數目、層互連等)、神經網路濾波器或操作、激勵函數、參數(例如,權 重、偏差等)等。描述亦可界定神經網路中之層如何互連,如何形成神經網路之輸入,及如何形成來自神經網路之輸出。此外,描述可界定神經網路之一或多個任務,諸如用於以下各者的一或多個定製任務:編碼媒體資料、解碼媒體資料、壓縮或解壓縮媒體資料、執行影像處理操作(例如,影像恢復、影像增強、去馬賽克、濾波、縮放、色彩校正、色彩轉換、雜訊減小、空間濾波、影像呈現等)、執行圖框速率轉換(例如,向上轉換、向下轉換)、執行音訊信號修改操作(例如,自窄頻帶音訊輸入檔案產生寬頻音訊信號)等。
在另一實例中,提供用於產生含有媒體資料(例如,原始或經擷取媒體資料)及用於呈現媒體資料的嵌入式呈現引擎模型的媒體項之裝置。實例裝置可包括經組態以獲得由資料擷取器件擷取的媒體資料,將呈現引擎模型嵌入於含有媒體資料之媒體項中,及提供(例如,儲存、發送、輸出等)媒體項至一或多個器件,其中媒體項中嵌入有呈現引擎模型。一或多個器件可獲得媒體項並儲存其或使用媒體項中之呈現引擎模型來執行神經網路以處理及呈現媒體項中之媒體資料。神經網路可使用媒體資料作為輸入以產生呈現之媒體資料輸出。
媒體資料可包括影像資料、視訊資料、音訊資料等。媒體項可包括檔案、串流或可含有或囊封媒體資料及呈現引擎模型的任何其他類型之資料容器或物件。呈現引擎模型可包括經組態以處理媒體資料並產生特定媒體資料輸出的神經網路之描述。媒體項中之呈現引擎模型可指示如何執行神經網路以基於神經網路之描述來處理媒體資料並產生特定媒體資料輸出。舉例而言,媒體項中之呈現引擎模型可將如何執行神經網路以處理媒體資料並產生特定媒體資料輸出的媒體項之複本通知該一或多個器 件及/或任何其他器件。
神經網路的描述可界定用於神經網路之神經網路架構。神經網路架構可包括例如神經網路結構(例如,層之數目、每一層中之節點的數目、層互連等)、神經網路濾波器或操作、激勵函數、參數(例如,權重、偏差等)等。描述亦可界定神經網路中之層如何互連,如何形成神經網路之輸入,及如何形成來自神經網路之輸出。此外,描述可界定神經網路之一或多個任務,諸如用於以下各者的一或多個定製任務:編碼媒體資料、解碼媒體資料、壓縮或解壓縮媒體資料、執行影像處理操作(例如,影像恢復、影像增強、去馬賽克、濾波、縮放、色彩校正、色彩轉換、雜訊減小、空間濾波、影像呈現等)、執行圖框速率轉換(例如,向上轉換、向下轉換)、執行音訊信號修改操作(例如,自窄頻帶音訊輸入檔案產生寬頻音訊信號)等。
在另一實例中,提供用於產生含有媒體資料(例如,原始或經擷取媒體資料)之媒體項的非暫時性電腦可讀媒體並提供用於呈現媒體資料的嵌入式呈現引擎模型。非暫時性電腦可讀取媒體可儲存指令,該等指令在由一或多個處理器執行時促使一或多個處理器獲得由資料擷取器件擷取的媒體資料,將呈現引擎模型嵌入於含有媒體資料之媒體項中,及提供(例如,儲存、發送、輸出等)媒體項至一或多個器件,其中媒體項中嵌入有呈現引擎模型。一或多個器件可獲得媒體項並儲存其或使用媒體項中之呈現引擎模型來執行神經網路以處理及呈現媒體項中之媒體資料。神經網路可使用媒體資料作為輸入以產生呈現之媒體資料輸出。
在另一實例中,提供用於產生含有媒體資料(例如,原始或經擷取媒體資料)及用於呈現媒體資料的嵌入式呈現引擎模型的媒體項之 裝置。實例裝置可包括用於獲得由資料擷取器件擷取的媒體資料的構件,用於將呈現引擎模型嵌入於含有媒體資料之媒體項中的構件,及用於提供(例如,儲存、發送、輸出等)媒體項至一或多個器件的構件,其中媒體項中嵌入有呈現引擎模型。一或多個器件可獲得媒體項並儲存其或使用媒體項中之呈現引擎模型來執行神經網路以處理及呈現媒體項中之媒體資料。神經網路可使用媒體資料作為輸入以產生呈現之媒體資料輸出。
媒體資料可包括影像資料、視訊資料、音訊資料等。媒體項可包括檔案、串流或可含有或囊封媒體資料及呈現引擎模型的任何其他類型之資料容器或物件。呈現引擎模型可包括經組態以處理媒體資料並產生特定媒體資料輸出的神經網路之描述。媒體項中之呈現引擎模型可指示如何執行神經網路以基於神經網路之描述來處理媒體資料並產生特定媒體資料輸出。舉例而言,媒體項中之呈現引擎模型可將如何執行神經網路以處理媒體資料並產生特定媒體資料輸出的媒體項之複本通知該一或多個器件及/或任何其他器件。
神經網路的描述可界定用於神經網路之神經網路架構。神經網路架構可包括例如神經網路結構(例如,層之數目、每一層中之節點的數目、層互連等)、神經網路濾波器或操作、激勵函數、參數(例如,權重、偏差等)等。描述亦可界定神經網路中之層如何互連,如何形成神經網路之輸入,及如何形成來自神經網路之輸出。此外,描述可界定神經網路之一或多個任務,諸如用於以下各者的一或多個定製任務:編碼媒體資料、解碼媒體資料、壓縮或解壓縮媒體資料、執行影像處理操作(例如,影像恢復、影像增強、去馬賽克、濾波、縮放、色彩校正、色彩轉換、雜訊減小、空間濾波、影像呈現等)、執行圖框速率轉換(例如,向上轉換、 向下轉換)、執行音訊信號修改操作(例如,自窄頻帶音訊輸入檔案產生寬頻音訊信號)等。
在一些態樣中,上文所描述的方法、裝置及電腦可讀媒體可進一步包括將多個呈現引擎模型嵌入於媒體項中。舉例而言,方法、裝置及電腦可讀媒體可包括將額外呈現引擎模型嵌入於媒體項中。額外呈現引擎模型可包括經組態以處理媒體資料並產生不同媒體資料輸出的額外神經網路之額外描述。額外描述可界定用於額外神經網路之不同神經網路架構。不同神經網路架構可基於不同神經網路層、濾波器或操作、激勵函數、參數等而定製用於不同操作結果或呈現意圖。
具有呈現引擎模型及額外呈現引擎模型之媒體項可經提供至一或多個器件以用於儲存媒體項、處理媒體項及/或呈現媒體項中之媒體資料。在一些實例中,媒體項可經提供至一或多個器件以用於儲存。在其他實例中,媒體項可經提供至一或多個器件以用於處理及/或呈現媒體項中之媒體資料。舉例而言,一或多個器件可接收媒體項並選擇多個呈現引擎模型(例如,呈現引擎模型或額外呈現引擎模型)中之一者,且基於所選擇的呈現引擎模型,執行與所選擇呈現引擎模型相關聯之各別神經網路。一或多個器件可接著使用各別神經網路來處理媒體項中之媒體資料以自各別神經網路獲得或產生媒體資料輸出。
在一些態樣中,上文所描述的方法、裝置及電腦可讀媒體亦可包括產生經組態以處理並呈現原始媒體資料的測試神經網路,及基於媒體資料樣本訓練測試神經網路。測試神經網路可包括一測試神經網路架構,其可包括特定神經網路結構(例如,層、節點、互連件等)、測試濾波器或操作、測試激勵函數、測試參數(例如,權重、偏差等)等等。測試神 經網路之訓練可包括使用測試神經網路處理媒體資料樣本,基於與媒體資料樣本相關聯的一或多個輸出判定測試神經網路之效能,基於測試神經網路之效能判定對測試神經網路(及/或測試神經網路架構)之一或多個調整,及基於測試神經網路之效能調整測試神經網路(例如,測試神經架構、測試參數、測試濾波器或操作、測試激勵函數、測試神經網路中之層等)。
在一些情況下,判定測試神經網路之效能可包括判定測試神經網路之準確程度及/或來自測試神經網路之一或多個輸出的損失或誤差。舉例而言,判定測試神經網路之效能可包括將損失函數(諸如均方誤差(MSE)函數)應用於一或多個輸出以產生回饋,該回饋可包括損失或誤差計算或結果。回饋可用以識別及進行調整以調諧測試神經網路。
在一些情況下,訓練及一或多個調整可用以判定與媒體項中之呈現引擎模型相關聯的神經網路架構。舉例而言,測試神經網路架構及經由訓練判定的對該測試神經網路架構進行的一或多個調整可用以判定可用作嵌入於媒體項中的呈現引擎模型之基礎的一特定神經網路架構及組態。
在一些實例中,上文所描述的方法、裝置及電腦可讀媒體可包括將至遠端呈現引擎模型或遠端呈現引擎模型之遠端位置的位址(例如,統一資源識別符(URI);路徑;網路、儲存或目的地位址;鏈路;資源定位器;等)嵌入於媒體項中。遠端呈現引擎模型可包括經組態以處理媒體資料並產生各別媒體資料輸出的神經網路之各別描述。具有位址之媒體項可經提供至一或多個器件,其可使用該位址以自遠端位置擷取遠端呈現引擎模型,並基於遠端呈現引擎模型中之各別描述,產生與遠端呈現引擎模型相關聯的神經網路並使用神經網路來處理媒體項中之媒體資料以產 生各別媒體資料輸出(例如,媒體資料之呈現)。
本概述並不意欲識別所主張標的物之關鍵或基本特徵,亦不係詳盡的或意欲單獨地用於判定所主張標的物之範疇。應參考本發明之整個說明書的適當部分、圖式及申請專利範圍理解標的物。
在參考以下說明書、申請專利範圍及隨附圖式時,前述內容連同其他特徵及實施例將變得更顯而易見。
100:計算環境
102:媒體處理系統
104:計算組件
106A:處理器
106B:處理器
106N:處理器
108:儲存器
110:計算引擎
112:資料擷取器件
114:資料擷取器件/圖形處理單元(GPU)
116:計算引擎
118:計算引擎
120:遠端系統
130:遠端系統
140:遠端系統
150:計算引擎
152:資料擷取器件
154:資料擷取器件
156:儲存器
200:實例流程
210:媒體資料
220:媒體項
230:呈現引擎模型
240:呈現引擎模型
250:實例流程
310:呈現輸出
350:實例流程
400:神經網路架構
402:神經網路描述/輸入層
404A:隱藏層/卷積隱藏層
404B:隱藏層/池化隱藏層
404C:完全連接層
404N:隱藏層
406:輸出層
408A:節點
408B:節點
408C:節點
410:神經網路
602:媒體項
604:位址
606:呈現引擎模型
700:流程
702:媒體資料樣本
704:呈現輸出
706:損失函數
708:回饋
800:方法
802:步驟
804:步驟
806:步驟
900:計算系統架構
905:連接件
910:處理單元/處理器
912:快取記憶體
915:記憶體
920:唯讀記憶體(ROM)
925:隨機存取記憶體(RAM)
930:儲存器件
932:服務1
934:服務2
935:輸出器件
936:服務3
940:通信介面
945:輸入器件
下文參考如下圖式詳細描述本申請案之說明性實施例:圖1為說明根據一些實例的包括媒體處理系統之實例環境的方塊圖;圖2A及圖2B說明根據一些實例之用於產生具有嵌入式呈現引擎模型之媒體項的實例流程;圖3A及圖3B說明根據一些實例之用於處理具有嵌入式呈現引擎模型之媒體項及產生呈現輸出的實例流程;圖4說明根據一些實例之實例呈現引擎模型及由呈現引擎模型界定的實例神經網路架構;圖5說明根據一些實例之由用於處理媒體項中之影像資料的呈現引擎模型界定的神經網路之實例使用;圖6說明根據一些實例之具有至用於媒體項中之媒體資料之遠端呈現引擎模型的嵌入式位址之媒體項的實例實施;圖7說明根據一些實例之用於訓練神經網路以識別用於描述神經網路之呈現引擎模型的神經網路之最佳化組態的實例程序;圖8說明根據一些實例之用於提供呈現引擎模型給媒體項 的實例方法;且圖9說明根據一些實例之實例計算器件架構。
35 U.S.C.§ 119下的優先權主張
本專利申請案主張2018年12月17日申請之名為「EMBEDDED RENDERING ENGINE FOR MEDIA DATA」的非臨時申請案第16/222,885號之優先權,該非臨時申請案轉讓給其受讓人且特此以引用之方式明確併入本文中。
下文提供本發明之某些態樣及實施例。此等態樣及實施例中之一些可被獨立地應用且其中之一些可以將對熟習此項技術者顯而易見之組合來加以應用。在以下描述中,出於解釋之目的,闡述眾多特定細節以便提供對本申請案之實施例之透徹理解。然而,將顯而易見的是,可在無此等特定細節之情況下實踐各種實施例。諸圖及描述不意欲為限制性的。
隨後描述僅僅提供實例實施例及特徵,且不意欲限制本發明之範疇、適用性或組態。相反,實例實施例之隨後描述將為熟習此項技術者提供用於實施實例實施例之能夠實現的描述。應理解,可在不背離如所附申請專利範圍中所闡述之本申請案之精神及範疇的情況下對元件之功能及配置做出各種變化。
在以下描述中給定具體細節從而提供實施例之透徹理解。然而,一般熟習此項技術者應理解,實施例可在無需此等具體細節的情況下實踐。舉例而言,電路、裝置、網路、程序及其他組件可以方塊圖形式展示為組件以免以不必要的細節混淆實施例。在其他情況下,已在無不必 要之細節的情況下展示已知電路、程序、演算法、結構及技術以便避免混淆實施例。
另外,應注意,實施例可描述為被描繪為流程圖、流圖、資料流圖、結構圖或方塊圖之程序。儘管流程圖可能將操作描述為順序程序,但許多操作可並行地或同時加以執行。另外,可再配置操作之次序。程序在其操作完成時終止,但可具有不包括於圖中之額外步驟。程序可對應於方法、函數、程序、次常式、次程式等。當程序對應於函數時,其終止可對應於函數傳回至呼叫函數或主函數。
術語「電腦可讀媒體」包括(但不限於)攜帶型或非攜帶型儲存器件、光儲存器件及能夠儲存、含有或攜載指令及/或資料的各種其他媒體。電腦可讀媒體可包括非暫時性媒體,其中可儲存資料並且不包括載波及/或無線地或經由有線連接傳播之暫時電子信號。非暫時性媒體之實例可包括(但不限於)磁碟或磁帶、諸如緊密光碟(CD)或數位化通用光碟(DVD)之光學儲存媒體、快閃記憶體、記憶體或記憶體器件。電腦可讀媒體可具有儲存於其上之程式碼及/或機器可執行指令,該等程式碼及/或機器可執行指令可表示程序、函數、子程式、程式、常式、次常式、模組、軟體套件、類別,或指令、資料結構或程式語句之任何組合。一碼段可藉由傳遞及/或接收資訊、資料、論證、參數或記憶體內容耦接至另一碼段或硬體電路。資訊、引數、參數、資料等可經由包括記憶體共用、訊息傳遞、符記傳遞、網路傳輸或其類似者之任何合適方式傳遞、轉遞或傳輸。
此外,可由硬體、軟體、韌體、中間軟體、微碼、硬件描述語言或其任何組合實施特徵及實施例。當以軟體、韌體、中間軟體或微碼實施時,用以執行特定任務之程式碼或碼段(例如,電腦程式產品)可儲 存於電腦可讀或機器可讀媒體中。一或多個處理器可執行特定任務。
所揭示技術提供用於產生含有原始媒體資料及用於在沒有單獨媒體呈現工具(例如,解碼器、編碼器、影像處理器、神經網路處理器及/或其他媒體呈現工具)情況下呈現及處理原始媒體資料的呈現引擎模型之媒體項的系統、方法及電腦可讀儲存媒體。原始媒體資料可包括由資料擷取器件或感測器(例如,影像或視訊感測器、音訊感測器等)擷取的媒體資料,諸如藉由資料擷取器件或感測器擷取及/或輸出的粗、簡單、未壓縮及/或未經處理資料(例如,視訊資料、影像資料、音訊資料等)。
在一些態樣中,原始媒體資料可包括來自擷取器件或感測器之影像資料(例如,在由影像信號處理器之一或多個組件處理之前或之後)。影像資料可藉由彩色濾波器陣列來濾波。在一些實例中,彩色濾波器陣列包括拜耳彩色濾波器陣列。在一些態樣中,原始媒體資料可包括原始影像資料片。原始影像資料片可包括由資料擷取器件或感測器擷取的原始影像資料之圖框的子集。在一些態樣中,原始媒體資料可包括原始音訊資料。原始音訊資料可包括於原始音訊檔案中,該等原始音訊檔案可含有例如未壓縮之單聲脈碼調變資料。
在一些情況下,含有原始視訊及/或影像資料之原始媒體資料可包括複數個像素。舉例而言,原始媒體資料可包括表示與原始媒體資料相關聯的影像之原始影像像素的多維數目陣列。在一個實例中,陣列可包括具有128個像素位置列及128個像素位置行以及每個像素位置11個輸入值的128×128×11之數目陣列。在另一說明性實例中,原始媒體資料可包括含有原始影像像素之128×128陣列的原始影像片。
此外,含有原始影像或視訊資料之原始媒體資料可包括每 個像素一或多個色彩分量或色彩分量值。舉例而言,在一些情況下,原始媒體資料可包括用於每一像素位置之色彩或灰度值。彩色濾波器陣列可與資料擷取器件或感測器整合或可結合資料擷取器件或感測器(例如,置於相關聯光電二極體內)使用以將單色資訊轉換成色彩值。舉例而言,具有彩色濾波器陣列(諸如拜耳型式彩色濾波器陣列)(在每一像素位置處具有紅色、綠色或藍色濾波器)之感測器可用以擷取每個像素位置具有一色彩之原始影像資料。
在一些實例中,描述用於產生具有嵌入式呈現引擎模型之媒體項的一或多個裝置、方法及電腦可讀媒體。裝置、方法及電腦可讀媒體可經實施以產生含有原始或經擷取媒體資料(例如,影像資料、視訊資料、音訊資料等)及用於原始媒體資料之呈現引擎之完整規範的媒體項(諸如媒體檔案或串流)。呈現引擎模型可連同原始媒體資料一起嵌入於媒體項中。呈現引擎模型可用以在不運用單獨媒體呈現工具情況下處理及呈現原始媒體資料,而不管媒體項之類型或格式或媒體項中之原始媒體資料的要求。
計算器件可使用媒體項中之呈現引擎模型來執行經界定用於媒體資料的呈現引擎,並呈現媒體資料而無對與待呈現之媒體項相容的單獨媒體呈現工具之需求。藉由在媒體項中包括呈現引擎模型或規範,器件上之任何合適之處理器可使用媒體項中之呈現引擎模型來呈現原始媒體資料。本文中媒體項及方法因此可去除或顯著減小對媒體項之標準化的需求,支援用於媒體資料之新的解決方案,並提供用於不同類型媒體資料的定製處理。本文中呈現引擎模型可經定製以根據特定呈現意圖及結果處理媒體項中之原始媒體資料。
舉例而言,經壓縮音訊檔案可包括界定如何處理或恢復音訊檔案中之音訊串流的呈現引擎模型,且視訊檔案可含有界定如何自視訊檔案解壓縮視訊串流的呈現引擎模型。在其他實例中,影像檔案可含有用於以8倍縮放呈現原始影像資料至RGB(紅色、綠色及藍色)可觀看影像的呈現引擎模型,窄頻帶音訊檔案可包括用於產生寬頻信號的呈現引擎模型,且視訊檔案可包括用於2倍圖框速率向上轉換的呈現引擎模型。
在一些實施中,媒體項可包括多個呈現引擎模型。不同呈現引擎模型可經調適用於不同呈現意圖及處理結果。舉例而言,媒體項可包括原始媒體資料、用於特定結果之第一呈現引擎模型(諸如具有品質折衷之快速服務)及用於不同結果之第二呈現引擎模型(諸如具有速度折衷之較高品質)。多個呈現引擎模型可方便地提供不同呈現及處理能力,且向使用者提供對呈現及處理結果之外加控制。
在一些情況下,呈現引擎模型可包括經組態以處理媒體項並產生特定媒體資料輸出的神經網路之描述。神經網路可充當用於媒體項之呈現引擎。神經網路之描述可界定神經網路架構及經調適用於特定呈現意圖或所需結果的特定調諧及其他參數。舉例而言,描述可界定用於神經網路之構建塊,諸如操作(例如,2d卷積、1d卷積、池化、正規化、全連接等)及激勵函數(例如,整流線性單元、指數線性單元等);用於神經網路操作之參數,諸如權重或偏差;此類構建塊如何互連;如何自媒體資料形成至神經網路的輸入(例如,來自輸入影像之像素資料的128×128像素資料片);及如何形成來自神經網路之輸出(例如,輸出64×64×3片並將輸出片拼塊在一起以產生最終輸出)。
神經網路可經定製用於各種操作或呈現意圖,諸如資料編 碼及/或解碼、影像/視訊處理、資料壓縮及/或解壓縮、縮放、濾波、影像恢復(例如,雜訊減小等)、影像增強或改變等。神經網路亦可經定製用於特定呈現或處理結果,諸如速度、品質、輸出準確度、輸出大小(例如,影像大小等)、增強的使用者體驗等。神經網路之描述可完全指定如何使用神經網路處理一段資料。舉例而言,原始影像檔案可包括運用原始影像資料模型化一攝影機影像信號處理器(ISP)如此神經網路可完全呈現如預期之結果的神經網路之描述。
神經網路描述可經實施有諸如檔案或資料之串流的媒體項。舉例而言,攝影機感測器可串流傳輸原始資料至處理器。用於資料之呈現引擎模型可藉由攝影機感測器運用串流發送至處理器。呈現引擎模型可包括神經網路架構與參數之描述以用於自原始感測器資料呈現可觀看影像。處理器可使用呈現引擎模型以執行神經網路並相應地呈現原始資料。作為另一實例,包括呈現引擎模型之經壓縮音訊串流可發送至處理器。呈現引擎模型可經定製用於解壓縮音訊及/或任何其他處理結果。呈現引擎模型可包括神經網路架構以及用於解壓縮音訊的參數之描述,處理器可使用該等參數來執行神經網路並解壓縮音訊。
將在以下揭示內容中更詳細地描述所揭示技術。論述開始於用於產生具有嵌入式呈現引擎模型之媒體項、定製用於特定呈現意圖及處理結果的媒體項中之呈現引擎模型及運用呈現引擎模型實施神經網路的實例系統、架構及方法之描述,如圖1至圖7中所展示。將接著遵循用於產生具有嵌入式呈現引擎模型之媒體項的實例方法之描述,如圖8中所說明。論述以如圖9中所說明的實例計算器件架構之描述結束,該計算器件架構包括適合於產生具有嵌入式呈現引擎模型之媒體項、執行包括神經網 路之呈現引擎及執行其他計算操作的實例硬體組件。揭示內容現在轉至圖1。
圖1為說明包括媒體處理系統102及遠端系統120、130、140之實例計算環境100的圖。媒體處理系統102可獲得、儲存及/或產生呈現引擎模型及/或產生具有如本文所描述之嵌入式呈現引擎模型的媒體項。如本文所用,術語「媒體項」可包括檔案、串流或位元串流,或能夠儲存、含有或囊封媒體資料、呈現引擎模型及任何其他資料的任何其他資料對象或容器。
在此說明性實例中,媒體處理系統102包括計算組件104、儲存器108、計算引擎110及資料擷取器件112、114。媒體處理系統102可為計算器件或多個計算器件之部分。在一些實例中,媒體處理系統102可為一電子器件(或多個器件)之部分,諸如攝影機系統(例如,數位攝影機、IP攝影機、視訊攝影機、安全攝影機等)、電話系統(例如,智慧型電話、蜂巢式電話、會議系統等)、桌上型電腦、膝上型電腦或筆記本電腦、平板電腦、機上盒、電視、顯示器件、數位媒體播放器、遊戲控制台、串流傳輸器件、無人機、汽車中之電腦、物聯網(IoT)器件、伺服器、分佈式系統或任何其他合適電子器件。
在一些實施中,計算組件104、儲存器108、計算引擎110及資料擷取器件112、114可為相同計算器件之部分。舉例而言,在一些情況下,計算組件104、儲存器108、計算引擎110及資料擷取器件112、114可整合至智慧型電話、膝上型電腦、平板電腦、智慧型可穿戴式器件、遊戲系統及/或任何其他計算器件中。在其他實施中,計算組件104、儲存器108、計算引擎110及資料擷取器件112、114可為兩個或多於兩個 單獨計算器件之部分。舉例而言,計算組件104、儲存器108及計算引擎110可為一個計算器件之部分,諸如智慧型電話或膝上型電腦,且資料擷取器件112、114可為(或表示)一或多個單獨計算器件之部分,諸如一或多個單獨攝影機或電腦。
儲存器108可包括用於儲存資料之任一或多個實體及/或邏輯儲存器件。此外,儲存器108可儲存來自媒體處理系統102之組件中之任一者的資料。舉例而言,儲存器108可儲存來自資料擷取器件112、114之資料(例如,影像、視訊及/或音訊資料)、來自計算組件104之資料(例如,處理參數、計算、處理輸出、與計算引擎110相關聯的資料等)、一或多個呈現引擎模型等。儲存器108亦可儲存藉由媒體處理系統102自其他器件(諸如遠端系統120、130、140)接收的資料。舉例而言,儲存器108可儲存由遠端系統120、130上之資料擷取器件152、154擷取的媒體資料、來自遠端系統140之呈現引擎模型或參數等。
資料擷取器件112、114可包括用於擷取或記錄媒體資料(例如,音訊、影像及/或視訊資料)的任一感測器或器件,諸如數位攝影機感測器、視訊攝影機感測器、智慧型電話攝影機感測器、諸如電視或電腦之電子裝置上的影像/視訊擷取器件、攝影機、麥克風等。在一些實例中,資料擷取器件112可為影像/視訊擷取器件(例如,攝影機、視訊及/或影像感測器等)且資料擷取器件114可為音訊擷取器件(例如,麥克風)。
此外,資料擷取器件112、114可為獨立式器件或一或多個單獨計算器件之部分,諸如數位攝影機、視訊攝影機、IP攝影機、智慧型電話、智慧型電視、遊戲系統、IoT器件、膝上型電腦等。在一些實例中,資料擷取器件112、114可包括用於處理所擷取資料、產生用於所擷 取資料之呈現引擎模型、產生含有所擷取資料及呈現引擎模型之媒體項及/或執行任何其他媒體處理操作的計算引擎116、118。在一些情況下,資料擷取器件112、114可擷取媒體資料並使用計算引擎116、118以局部產生含有所擷取媒體資料及用於處理及呈現如本文所描述之所擷取媒體資料的呈現引擎模型的媒體項。在其他情況下,資料擷取器件112、114可擷取媒體資料並發送所擷取媒體資料至其他器件或計算引擎,諸如計算組件104及計算引擎110,以用於將所擷取媒體資料封裝於含有用於所擷取媒體資料之至少一個呈現引擎模型的媒體項中。
計算組件104可包括一或多個處理器106A至106N(下文中統稱為「106」),諸如中央處理單元(CPU)、圖形處理單元(GPU)114、數位信號處理器(DSP)、影像信號處理器(ISP)等。處理器106可執行各種操作,諸如影像增強、圖形呈現、擴增實境、影像/視訊處理、感測器資料處理、識別(例如,本文辨識、物件辨識、特徵辨識、追蹤或圖案辨識、場景辨識等)、影像穩定化、機器學習、濾波、資料處理,及本文中所描述的各種操作中之任一者。在一些情況下,計算組件104亦可包括用以執行本文中所描述的各種操作中之任一者的其他電子電路或硬體、電腦軟體、韌體、或其任何組合。
計算組件104可實施計算引擎110。計算引擎110可藉由來自計算組件104的處理器106中之一或多者實施。計算引擎110可處理媒體資料,呈現媒體資料,產生用於處理及呈現如本文中所描述之原始或所擷取媒體資料的呈現引擎模型,產生含有原始或所擷取媒體資料及用於該原始或所擷取媒體資料之呈現引擎模型的媒體項,執行機器學習操作(例如,產生、組態、執行及/或訓練神經網路或其他機器學習系統),及/或執 行任何其他媒體處理及計算操作。
計算引擎110可包括一或多個媒體處理引擎,諸如呈現引擎、前端處理引擎、影像處理引擎、數位信號處理引擎等。一或多個媒體處理引擎可執行各種媒體處理操作,諸如濾波、去馬賽克、縮放、色彩校正、色彩轉換、雜訊減小、空間濾波、縮放、圖框速率轉換、音訊信號處理、雜訊控制或消除、影像增強、資料壓縮及/或解壓縮、資料編碼及/或解碼等。在一些實例中,計算引擎110可包括可經組態以執行相同或不同計算操作之多個處理引擎。
在一些情況下,計算引擎110可接收由計算環境100中之資料擷取器件102、104、152、154中之任一者擷取的媒體資料(例如,影像資料、視訊資料、音訊資料等),且自儲存器接收、產生及/或擷取用於媒體資料之一或多個呈現引擎模型。計算引擎110可將一或多個呈現引擎模型嵌入於含有媒體資料的媒體項中,及/或將至一或多個呈現引擎模型之位址(例如,統一資源識別符(URI);鏈路;路徑;網路、儲存或目的地位址;資源定位器;等)嵌入於含有媒體資料之媒體項中。
遠端系統120、130、140可表示用戶端器件,諸如智慧型電話或攜帶型電腦、雲計算環境或服務、伺服器、IoT器件、智慧型器件,或任何其他網路、器件或基礎架構。在圖1中所說明之實例中,遠端系統120、130表示用戶端器件且遠端系統140表示伺服器或雲計算環境。在此實例中,遠端系統120、130可包括用於擷取或記錄媒體資料(諸如視訊、影像及/或音訊)的資料擷取器件152、154,且遠端系統140可包括可充當媒體資料、呈現引擎模型、參數及/或其他資料之儲存庫的儲存器156。儲存器156可包括一或多個實體及/或邏輯儲存器件。舉例而言,儲 存器156可表示分佈式儲存系統。
遠端系統120、130、140亦可包括計算引擎150。計算引擎150可包括例如而不限於影像處理引擎、數位信號處理引擎、呈現引擎、前端處理引擎及/或任何其他處理或媒體引擎。計算引擎150可執行各種操作,諸如濾波、去馬賽克、縮放、色彩校正、色彩轉換、雜訊減小、空間濾波、縮放、圖框速率轉換、音訊信號處理、雜訊控制或消除、影像增強、資料壓縮及/或解壓縮、資料編碼及/或解碼、機器學習等。此外,計算引擎150可執行或產生如藉由與特定媒體項相關聯之呈現引擎模型指定的呈現引擎,使用呈現引擎以處理並呈現媒體項中之媒體資料,產生呈現引擎模型等。
媒體處理系統102可經由一或多個網路(諸如私用網路(例如,區域網路、虛擬專用網路、虛擬私用雲等)、公用網路(例如,網際網路)等)與遠端系統120、130、140通信。媒體處理系統102可與遠端系統120、130、140通信以發送或接收媒體資料(例如,原始或所擷取媒體資料,諸如視訊、影像及/或音訊資料)、發送或接收呈現引擎模型、發送或接收具有嵌入式呈現引擎模型之媒體項、儲存或擷取用於媒體項之呈現引擎模型等。
雖然媒體處理系統102、資料擷取器件112、114及遠端系統120、130、140經展示包括某些組件,但一般熟習此項技術者應瞭解媒體處理系統102、資料擷取器件112、114及/或遠端系統120、130、140可包括比圖1中所展示之彼等組件更多或更少之組件。舉例而言,媒體處理系統102、資料擷取器件112、114及遠端系統120、130、140在一些情況下亦可包括一或多個記憶體器件(例如,RAM、ROM、快取記憶體等 等)、一或多個網路連接介面(例如,有線及/或無線通信介面等)、一或多個顯示器件,及/或圖1中未展示之其他硬體或處理器件。下文參看圖9描述可實施有媒體處理系統102、資料擷取器件112、114及遠端系統120、130、140的計算器件及硬體組件之說明性實例。
圖2A說明用於產生具有一或多個嵌入式呈現引擎模型230、240之媒體項220的實例流程200。在此實例中,媒體處理系統102上之計算引擎110可接收媒體資料210並產生包括媒體資料210及一或多個呈現引擎模型230、240之媒體項220。媒體資料210可包括由媒體擷取器件擷取的原始媒體資料,諸如由資料擷取器件112、114、152或154擷取的音訊、影像及/或視訊資料。
計算引擎110可產生或獲得經組態以處理及呈現媒體資料210的一或多個呈現引擎模型230、240。每一呈現引擎模型230、240可包括經組態以處理媒體資料210並產生特定媒體資料輸出的呈現引擎之描述或規範。呈現引擎可經定製用於特定處理結果(例如,速度、品質、效能等)及/或呈現意圖(例如,大小、格式、播放或呈現品質及特性、輸出組態等)。由呈現引擎產生的特定媒體資料輸出因此可根據此類處理結果及/或呈現意圖。
在一些實例中,呈現引擎可藉由神經網路實施。此處,用於神經網路之呈現引擎模型(230或240)可包括神經網路之描述或規範,其可描述如何產生、組態及執行神經網路。舉例而言,神經網路之描述或規範可界定用於神經網路之架構,諸如輸入節點之數目、隱藏層之數目及類型、每一隱藏層中之節點的數目、輸出節點之數目、藉由神經網路實施的濾波器或操作、神經網路中之激勵函數、用於神經網路之參數(諸如權重 及偏差)等。神經網路之描述或規範可進一步界定神經網路中之層如何經連接以形成互連層之路徑、如何基於媒體資料210形成神經網路之輸入,及如何形成來自神經網路之輸出。
神經網路之描述或規範亦可包括用於組態及/或執行神經網路以針對特定處理結果或呈現意圖處理媒體資料210的任何其他資訊或指令。舉例而言,神經網路之描述或規範可界定神經網路之一或多個定製任務,諸如編碼媒體資料210、解碼媒體資料210、對媒體資料210執行一或多個壓縮或解壓縮操作、對媒體資料210執行一或多個影像處理操作(例如,影像恢復、影像增強、濾波、縮放、影像呈現、去馬賽克、色彩校正、再大小設計等)、對該媒體資料210執行圖框速率轉換操作、對媒體資料210執行音訊信號修改操作等等。
在產生或獲得一或多個呈現引擎模型230、240之後,計算引擎110可使用媒體資料210及一或多個呈現引擎模型230、240產生媒體項220。舉例而言,計算引擎110可產生檔案、串流或資料容器,且在檔案、串流或資料容器中包括或嵌入媒體資料210及一或多個呈現引擎模型230、240。媒體項220可表示具有媒體資料210及一或多個呈現引擎模型230、240的所得檔案、串流或資料容器。
在一些實例中,媒體項220可包括經組態以處理並呈現媒體資料210的單一呈現引擎模型(例如,230或240)。單一呈現引擎模型可經定製用於特定處理結果及/或呈現意圖,如前解釋。在其他實例中,媒體項220可包括經組態以根據不同處理結果及/或呈現意圖處理並呈現媒體資料210的多個呈現引擎模型(例如,230及240)。多個呈現引擎模型可提供外加之呈現及處理撓性、控制及選項。處理媒體項220之器件或使用者 可選擇特定呈現引擎模型用於媒體項220中之呈現媒體資料210。可基於所需處理結果及/或呈現意圖而選擇特定呈現引擎模型。
在媒體項220產生後,其準備處理且可由計算引擎110使用以呈現媒體資料210,或可經傳輸至計算器件,諸如遠端系統(例如,120、130、140)或內部處理器件(例如,106A、106B、106N),以用於處理及呈現。
圖2B說明用於使用資料擷取器件112來擷取媒體資料210並產生具有一或多個嵌入呈現引擎模型230、240之媒體項220的實例流程250。在此實例中,資料擷取器件112可執行流程250並產生媒體資料210及具有一或多個嵌入式呈現引擎模型230、240的媒體項220兩者。此實施允許媒體項220待由擷取媒體資料210的相同器件(例如,112)產生,而非使一個器件擷取媒體資料210及一單獨或外部器件自媒體資料210產生媒體項220。
舉例而言,攝影機或裝備有攝影機之器件(例如,智慧型電話、膝上型電腦、智慧型電視等)可擷取媒體資料210並產生含有媒體資料210及一或多個呈現引擎模型230、240之媒體項220。此時,媒體項220準備藉由任一處理器件呈現。因此,若使用者想要自攝影機或裝備攝影機之器件擷取媒體資料(例如,影像、視訊等)且在另一器件上呈現媒體資料,則攝影機或裝備攝影機之器件可擷取媒體資料210並準備媒體項220,如此準備自任何其他計算器件呈現。使用者將能夠呈現來自另一器件(如自攝影機或裝備攝影機之器件接收且不需要單獨解碼器安裝於器件上)的媒體項220。運用此實施,攝影機或裝備攝影機之器件的製造者可確保攝影機或裝備攝影機之器件可在無單獨解碼器工具及沒有(或具有有限)相容性 問題情況下擷取媒體資料並產生準備藉由其他器件呈現的最終輸出。
返回至實例流程250,資料擷取器件112可首先擷取媒體資料210。資料擷取器件112可將媒體資料210作為輸入提供至計算引擎116,且計算引擎116可產生含有媒體資料210及用於呈現媒體資料210之一或多個呈現引擎模型230、240的媒體項220。計算引擎116可添加或嵌入媒體資料210及一或多個呈現引擎模型230、240至檔案、串流或資料容器或物件以產生媒體項220。
此時,媒體項220準備藉由資料擷取器件112或另一計算器件呈現。舉例而言,若使用者想要自單獨器件呈現媒體資料210,則資料擷取器件112可提供媒體項220至單獨器件以用於呈現。如下文參看圖3A至圖3B將進一步解釋,單獨器件可接收媒體項220,且使用媒體項220中之呈現引擎模型(例如,呈現引擎模型230或240)以執行藉由呈現引擎模型描述或模型化的呈現引擎。呈現引擎可經組態以根據特定處理結果及/或呈現意圖處理並呈現媒體資料210。單獨器件上之呈現引擎可接著相應地處理並呈現媒體項220中之媒體資料210。
在其中媒體項220包括多個呈現引擎模型的實例實施中,使用者或單獨器件可基於例如與各種呈現引擎模型(例如,230及240)相關聯的各別處理結果及/或呈現意圖選擇特定呈現引擎模型。單獨器件可使用如先前所描述之所選擇呈現引擎模型呈現媒體資料210,且若需要不同處理結果或呈現意圖,則不同呈現引擎模型可經選擇及實施以產生不同呈現及/或處理結果。
圖3A說明用於處理媒體項220及產生呈現輸出310的實例流程300。在此實例中,媒體項220係藉由媒體處理系統102上之計算引擎 110處理。媒體項220可藉由計算引擎110自另一器件或組件(諸如資料擷取器件112)接收,或藉由如先前解釋之計算引擎110產生。因此,在一些情況下,計算引擎110可皆產生及處理媒體項220。
在流程300中,計算引擎110根據媒體項220中之呈現引擎模型(例如,230或240)執行呈現引擎。呈現引擎模型可指定如何產生呈現引擎。計算引擎110可分析所選擇呈現引擎模型以判定如何產生或執行呈現引擎。呈現引擎模型可識別用於呈現引擎之結構、參數、組態、實施資訊等,計算引擎110可使用其來產生或執行呈現引擎。
在計算引擎110執行呈現引擎後,該計算引擎可輸入媒體資料210至呈現引擎中,呈現引擎可接著處理媒體資料210以產生呈現輸出310。呈現輸出310可為根據呈現引擎之呈現意圖或組態及/或呈現引擎模型中反映的呈現意圖或組態的媒體資料210之呈現。
在一些情況下,呈現引擎可為經組態以作為用於媒體資料210之呈現引擎執行的神經網路。此處,呈現引擎模型可包括神經網路之描述或規範。神經網路之描述或規範可指定神經網路之構建塊及架構,及描述如何產生或執行神經網路的任何其他資訊,諸如神經網路參數(例如,權重、偏差等)、神經網路中之操作或濾波器、神經網路中之層的數目及類型、每一層中之節點的數目、層如何互連、如何形成或處理輸入、如何形成輸出等。計算引擎110可使用描述或規範來執行如藉由描述或規範所界定的神經網路。神經網路可處理媒體資料210並產生呈現輸出310。
圖3B說明用於處理媒體項220並產生呈現輸出310的另一實例流程350。在此實例中,媒體項220係藉由遠端系統130處理及呈現。 媒體處理系統102可產生並發送媒體項220至遠端系統130。遠端系統130可接收媒體項220並使用遠端系統130上之計算引擎150處理其。
計算引擎150可使用媒體項220中之呈現引擎模型(例如,230或240)以產生用於媒體資料210之呈現引擎。計算引擎150可分析呈現引擎模型以識別用於呈現引擎的參數、組態資訊、指令等,並相應地產生或執行呈現引擎。舉例而言,如前解釋,呈現引擎模型可包括呈現引擎(諸如基於神經網路之呈現引擎)之描述或規範,計算引擎150可使用該描述或規範執行呈現引擎。
在計算引擎150執行呈現引擎後,呈現引擎可處理媒體項220中之媒體資料210並產生呈現輸出310(例如,媒體資料210之呈現)。呈現引擎可根據一處理結果及/或呈現意圖處理並呈現媒體資料210,呈現引擎經組態以達成該處理結果及/或呈現意圖(例如,如呈現引擎模型中所反映)。遠端系統130因此可接收含有原始或所擷取媒體資料(210)的媒體項220,處理媒體項220,並基於媒體項220中之呈現引擎模型(例如,230或240)呈現媒體項220中之原始或所擷取媒體資料,而不使用單獨解碼器或媒體呈現軟體。
圖4說明由呈現引擎模型230中之實例神經網路描述402界定的神經網路410之實例架構400。神經網路410可表示用於呈現媒體資料的呈現引擎之神經網路實施。神經網路描述402可包括神經網路410之完整規範,包括神經網路架構400。舉例而言,神經網路描述402可包括神經網路410的架構400之描述或規範(例如,層、層互連、每一層中之節點的數目等);指示輸入及輸出如何形成或處理的輸入及輸出描述;神經網路中之激勵函數、神經網路中之操作或濾波器等的指示;神經網路參數, 諸如權重、偏差等;等等。
神經網路410反映神經網路描述402中界定之架構400。在此實例中,神經網路410包括輸入層402,其包括輸入資料,諸如媒體資料(例如,210)。在一個說明性實例中,輸入層402可包括表示輸入媒體資料(例如,210)之一部分的資料,諸如對應於輸入媒體資料的影像中之資料或像素之片(例如,128×128資料片)。
神經網路410包括隱藏層404A至404N(下文中統稱為「404」)。隱藏層404可包括n數目個隱藏層,其中n為大於或等於一的整數。該數目個隱藏層可包括根據所要處理結果及/或呈現意圖所需要數目個層。神經網路410進一步包括提供由藉由隱藏層404執行的處理所產生之輸出(例如,呈現輸出310)的輸出層406。在一個說明性實例中,輸出層406可提供輸入媒體資料(例如,210)的呈現。在一些情況下,輸出層406可產生用於每一輸入資料片(例如,先前實例中之128×128資料片)的輸出片(例如,64×64×3片),且拼塊或聚集每一輸出片以產生一最終輸出,該最終輸出提供輸入媒體資料之呈現。
在此實例中,神經網路410為互連節點之多層神經網路。每一節點可表示一段資訊。與節點相關聯之資訊在不同層之中共用且當資訊被處理時每一層保持資訊。在一些情況下,神經網路410可包括前饋神經網路,在此情況下不存在回饋連接,其中神經網路之輸出回饋至自身中。在其他情況下,神經網路410可包括遞迴神經網路,其可具有允許資訊橫越節點攜載同時在輸入中讀取的迴路。
資訊可經由各種層之間的節點至節點互連在節點之間交換。輸入層402之節點可激勵第一隱藏層404A中之節點之集合。舉例而 言,如所展示,輸入層402的輸入節點中之每一者連接至第一隱藏層404A的節點中之每一者。隱藏層404A之節點可藉由將激勵函數應用於資訊而變換每一輸入節點之資訊。自變換導出的資訊可接著經傳遞至並可激勵下一隱藏層(例如,404B)之節點,該等節點可執行其自身指定函數。實例函數包括卷積、上取樣、資料變換、池化及/或任何其他合適之函數。隱藏層(例如,404B)之輸出可接著激勵下一隱藏層(例如,404N)之節點,等等。最後隱藏層之輸出可激勵輸出層406之一或多個節點,此時提供一輸出。在一些情況下,雖然神經網路410中之節點(例如,節點408A、408B、408C)經展示為具有多個輸出線,但節點具有單一輸出且展示為自節點輸出的所有線表示相同輸出值。
在一些情況下,節點之間的每一節點或互連可具有為自訓練神經網路410導出的參數之一集合的權重。舉例而言,節點之間的互連可表示瞭解互連節點之一段資訊。互連可具有可經調諧(例如,基於訓練資料集)的數值權重,從而允許神經網路410適應於輸入並能夠在更多資料被處理時學習。
神經網路410可經預先訓練以使用不同隱藏層404處理來自輸入層402中之資料的特徵,以便經由輸出層406提供輸出。在神經網路410用以呈現影像的一實例中,可使用包括實例影像之訓練資料來訓練神經網路410。舉例而言,訓練影像可輸入至神經網路410中,其可由神經網路410處理以產生可用以調諧神經網路410之一或多個態樣的輸出,諸如權重、偏差等。
在一些情況下,神經網路410可使用稱為反向傳播之訓練程序來調整節點之權重。反向傳播可包括前向傳遞、損失函數、後向傳遞 及權重更新。前向傳遞、損失函數、後向傳遞及參數更新經執行用於一個訓練迭代。程序可經重複某一數目個迭代用於訓練媒體資料之每一集合直至層之權重經精確調諧為止。
對於呈現影像之實例,前向傳遞可包括經由神經網路410傳遞訓練影像。在訓練神經網路410之前,權重可經初始地隨機化。影像可包括例如表示影像之像素的數目之一陣列。在陣列中之每一數目可包括描述在陣列中之彼位置處之像素強度的0至255之值。在一個實例中,陣列可包括具有28列及28行像素及3個色彩分量(諸如紅色、綠色及藍色,或明度及兩個色度分量,或其類似者)的28×28×3數目陣列。
對於神經網路410之第一訓練迭代,輸出可包括歸因於在初始化時隨機選擇的權重而不給予任一特定類別優先權的值。舉例而言,若輸出為具有物件包括不同類別的機率之向量,則不同類別中之每一者的機率值可相等或至少非常類似(例如,對於十個可能類別,每一類別可具有0.1之機率值)。運用初始權重,神經網路410不能判定低層級特徵且因此不能對物件之分類可能係何物進行準確判定。損失函數可用以分析輸出之誤差。可使用任何合適的損失函數定義。
損失(或誤差)可對於第一訓練資料集(例如,影像)為高,此係由於實際值將不同於所預測輸出。訓練之目標係最小化損失之量,以使得所預測輸出與目標或理想輸出一致。神經網路410可藉由判定對神經網路410之損失貢獻最多的那些輸入(權重)執行後向傳遞,且可調整該等權重以使得損失降低且最終被最小化。
損失相對於權重的導數可經計算以判定對神經網路410之損失貢獻最多的權重。在計算導數之後,可藉由更新濾波器之權重執行權 重更新。舉例而言,權重可經更新以使得其在梯度之相反方向上改變。學習速率可經設定至任何合適的值,其中高學習速率包括較大權重更新且較低值指示較小權重更新。
神經網路410可包括任何合適的神經或深度學習網路。一個實例包括卷積神經網路(CNN),其包括輸入層及輸出層,在輸入層與輸出層之間具有多個隱藏層。CNN之隱藏層包括一系列卷積、非線性、池化(用於下取樣)及完全連接層。在其他實例中,神經網路410可表示任何其他神經或深度學習網路,諸如自動編碼器、深度信念網(DBN)、遞迴神經網路(RNN)等。
圖5說明由用於處理媒體項(例如,220)。中之影像資料(例如,210)之呈現引擎模型230界定的神經網路410之實例使用。
在此實例中,神經網路410包括輸入層402、卷積隱藏層404A、池化隱藏層404B、完全連接層404C,及輸出層406。神經網路410可呈現輸入影像資料以產生經再現影像(例如,呈現輸出310)。第一,影像資料中之像素的每一像素或片視為具有可學習權重及偏差之神經元。每一神經元接收一些輸入,執行內積且視情況運用非線性函數跟隨其。神經網路410亦可藉由自一端的原始影像資料(例如,像素)至另一端之類別分數表達可微評分函數編碼某些性質至架構中且處理來自目標影像之特徵。在呈現影像之部分之後,神經網路410可產生每一呈現部分的均值分數(或z分數)並取得使用者定義緩衝器內之分數的平均值。
在一些實例中,輸入層402包括原始或所擷取媒體資料(例如,210)。舉例而言,媒體資料可包括表示影像之像素的數目之陣列,其中陣列中之每一數目包括描述陣列中之彼位置處的像素強度之0至255的 值。影像可傳遞通過卷積隱藏層404A、可選非線性激勵層、池化隱藏層404B及完全連接隱藏層406以得到輸出層406處之輸出310。輸出310可為影像之呈現。
卷積隱藏層404A可分析輸入層402之資料。卷積隱藏層404A之每一節點可連接至輸入資料(例如,影像)的節點(例如,像素)之區。卷積隱藏層404A可視為一或多個濾波器(每一濾波器對應於不同激勵或特徵圖),其中濾波器之每一卷積迭代為卷積隱藏層404A之節點或神經元。在節點與彼節點之感受野(節點(例如,像素)之區)之間的每一連接學習一權重,及在一些情況下學習總偏差,使得每一節點學習分析輸入影像中之其特定局部感受野。
卷積隱藏層404A之卷積性質係歸因於卷積層之每一節點應用於其對應感受野。舉例而言,卷積隱藏層404A之濾波器可在輸入影像陣列之左上角中開始且可卷積輸入資料(例如,影像)。如上文所提及,濾波器之每一卷積迭代可視為卷積隱藏層404A之節點或神經元。在每一卷積迭代處,濾波器之值乘以影像之原始像素值的對應數目。來自每一卷積迭代之倍增可一起求和以獲得彼迭代或節點的總和。程序接下來根據卷積隱藏層404A中之下一節點之感受野在輸入資料(例如,影像)中之下一位置處繼續。處理在輸入體之每一唯一位置處的濾波器產生表示彼位置之濾波器結果的數目,從而導致總和值經判定用於卷積隱藏層404A之每一節點。
自輸入層402至卷積隱藏層404A之映射可被稱作激勵圖(或特徵圖)。激勵圖包括表示在輸入體之每一位置處的濾波器結果之每一節點的值。激勵圖可包括包括由輸入體上的濾波器之每一迭代產生之各種總 和值的陣列。卷積隱藏層404A可包括表示資料(例如,影像)中之多個特徵空間的若干激勵圖。
在一些實例中,非線性隱藏層可在卷積隱藏層404A之後應用。非線性層可用以引入非線性至已計算線性運算的系統。
池化隱藏層404B可在卷積隱藏層404A之後(及在當使用時非線性隱藏層之後)應用。池化隱藏層404B用以簡化來自卷積隱藏層404A之輸出中之資訊。舉例而言,池化隱藏層404B可採用自卷積隱藏層404A輸出的每一激勵圖並使用池化函數產生經凝聚激勵圖(或特徵圖)。最大池化係藉由池化隱藏層執行的函數之一個實例。可藉由池化隱藏層404B使用其他形式之池化函數,諸如平均池化或其他合適之池化函數。
池化函數(例如,最大池化濾波器)經應用於包括於卷積隱藏層404A中的每一激勵圖。在圖5中所展示實例中,三個池化濾波器用於卷積隱藏層404A中之三個激勵圖。池化函數(例如,最大池化)可減小、聚集或串接輸入(例如,影像)中之輸出或特徵表示。最大池化(以及其他池化方法)供應存在較少池化特徵之權益,因此減小稍後層中所需要的參數之數目。
完全連接層404C可將來自池化隱藏層404B之每一節點連接至輸出層406中之每一輸出節點。完全連接層404C可獲得前一池化隱藏層404B之輸出(其可表示高層級特徵之激勵圖)並判定提供資料之最佳表示的特徵或特徵表示。舉例而言,完全連接層404C可判定提供資料之最佳或最接近表示的高層級特徵,且可包括用於高層級特徵之權重(節點)。可在完全連接層404C與池化隱藏層404B之權重之間計算積以獲得用於不同特徵的機率。
來自輸出層406之輸出可包括輸入媒體資料之呈現(例如,310)。在一些實例中,來自輸出層406的輸出可包括接著經拼塊或組合以產生最終呈現或輸出(例如,310)的輸出片。亦可提供其他實例輸出。
圖6說明含有媒體資料210及嵌入式位址604的媒體項602至在遠端儲存的呈現引擎模型606之實例實施。呈現引擎模型606可為能夠呈現媒體資料210之特定呈現引擎模型。在此實例中,呈現引擎模型606儲存於遠端系統140中。遠端系統140可儲存用於媒體資料210(及其他媒體資料)之一或多個呈現引擎模型606、230、240,其可藉由媒體處理系統102(及任何其他器件)存取以處理並呈現媒體資料。
在一些情況下,遠端系統140可儲存經組態用於不同處理結果、呈現意圖及/或媒體資料的多個呈現引擎模型。舉例而言,遠端系統140可儲存用於媒體資料210之多個呈現引擎模型,其中每一呈現引擎模型經定製用於不同處理結果及/或呈現意圖。遠端系統140可計算及/或儲存多個呈現引擎模型以提供種類繁多的定製化選項。此外,遠端系統140可經實施以分流用於儲存及/或計算呈現引擎模型的處理及資源使用,提供較大數量呈現引擎模型選項至用戶端,減小媒體項(例如,602)之大小,及/或以其他方式減小用戶端上的負擔(處理及/或資源使用)並將增加之定製化或粒度提供給種類繁多之呈現引擎模型。
在一些情況下,遠端系統140可具有用以計算及/或維持大量呈現引擎模型的基礎架構及能力,諸如儲存及/或計算能力。舉例而言,遠端系統140可為含有呈現引擎模型之較大儲存庫並具有用以產生及儲存具有增加之複雜度、定製化、大小等的呈現引擎模型的計算能力的伺服器或雲服務。遠端系統140亦可訓練呈現引擎模型並使經訓練呈現引擎 模型可如本文所描述而獲得。遠端系統140可利用其資源來訓練及調諧呈現引擎模型並提供高度調諧呈現引擎模型。
在圖6中之說明性實例中,媒體項602包括媒體資料210及至遠端系統140上之呈現引擎模型606的位址604。位址604可包括例如統一資源識別符(URI)、鏈路、路徑、資源定位器或任何其他位址(諸如網路、儲存或目的地位址)。位址604指示呈現引擎模型606位於何處及/或可如何擷取其。當媒體處理系統102處理媒體項602(例如,如圖3A中所說明的流程300中所描述)時,其可使用位址604以自遠端系統140擷取呈現引擎模型606。在媒體處理系統102已自遠端系統140擷取呈現引擎模型606後,該媒體處理系統可使用該呈現引擎模型來執行藉由呈現引擎模型606描述的呈現引擎。媒體處理系統102可接著使用呈現引擎來處理及呈現媒體資料210。
在一些情況下,媒體項602可包括至多個呈現引擎模型之多個位址。舉例而言,媒體項602可包括至遠端系統140上之呈現引擎模型606、230及240的位址。此可向媒體處理系統102提供種類繁多之處理及呈現選項。媒體處理系統102(或相關聯使用者)可選擇或識別對應於位址中之一者的特定呈現引擎模型以供用於處理媒體資料210。媒體處理系統102(或相關聯使用者)可基於例如與彼呈現引擎模型相關聯的特定處理結果及/或呈現意圖選擇特定呈現引擎模型。
為了說明,媒體處理系統102(或相關聯使用者)可比較與位址及/或其各別處理結果及/或呈現意圖相關聯的呈現引擎模型。媒體處理系統102(或相關聯使用者)可接著選擇最佳匹配或伺服所需處理結果及/或呈現意圖的特定呈現引擎模型。媒體處理系統102可使用媒體項602中 之對應位址擷取所選擇呈現引擎模型,且使用所選擇呈現引擎模型以如先前所描述執行相關聯呈現引擎並處理媒體資料210。
在一些情況下,為在媒體項602具有多個位址且因此提供多個選項時幫助媒體處理系統102(或相關聯使用者)選擇呈現引擎模型,媒體項602上的位址中之每一者可包括關於與彼位址相關聯之各別呈現引擎模型的資訊。舉例而言,每一位址可包括描述、唯一識別符,及/或關於其指向的呈現引擎模型的其他資訊。位址中之描述可包括例如而不限於與呈現引擎模型相關聯的處理結果、與呈現引擎模型相關聯的呈現意圖、呈現引擎模型之一或多個參數、與呈現引擎模型相關聯的統計資料、呈現引擎模型及/或其規範之概述、與呈現引擎模型相關聯的等級、對於何時或如何選擇或實施呈現引擎模型的建議或推薦、與呈現引擎模型相關聯的優點及缺點之清單,等等。
在一些情況下,即使一位址(例如,604)為媒體項602中之唯一位址,其仍可包括此類資訊(例如,描述資訊)。媒體處理系統102(或相關聯使用者)可使用此資訊來判定與位址相關聯的呈現引擎模型係適合於特定個例抑或與所需處理或呈現結果一致。若媒體處理系統102(或相關聯使用者)判定與位址相關聯之呈現引擎模型不合適或需要,或媒體處理系統102(或相關聯使用者)想要不同呈現引擎模型或額外選項,則媒體處理系統102可產生如先前所描述之不同呈現引擎模型,或向遠端系統140請求不同呈現引擎模型。遠端系統140可基於請求識別或計算用於媒體處理系統102之不同呈現引擎模型。舉例而言,遠端系統140可基於在來自媒體處理系統102之請求中提供的資訊來計算不同呈現引擎模型。請求中之資訊可包括例如所需處理結果及/或呈現意圖之指示、用於呈現引 擎模型之一或多個所需參數或組態細節之指示,等等。
在一些情況下,媒體處理系統102(或相關聯使用者)可在使用或不使用位址中之描述性資訊情況下以不同方式選擇呈現引擎模型。舉例而言,為在與媒體項602中之多個位址相關聯的呈現引擎模型之間選擇,媒體項602可與遠端系統140通信以請求或擷取關於呈現引擎模型的資訊,諸如呈現引擎模型的各別處理結果及/或呈現意圖之描述、呈現引擎模型之各別規範的描述、與呈現引擎模型相關聯的統計資料、相關聯等級等等。在另一實例中,媒體處理系統102可發送含有描述所需呈現引擎模型之參數或屬性(例如,處理結果、呈現意圖、組態參數等)的查詢至遠端系統140。遠端系統140可接收查詢並使用該等參數或屬性以識別、建議或計算呈現引擎模型。
圖7說明用於訓練神經網路410以識別神經網路410之最佳化組態的實例流程700。自訓練導出的最佳化組態可用以產生描述具有最佳化組態之神經網路410的呈現引擎模型。神經網路410之訓練可經執行用於各種呈現引擎模型實施情境。舉例而言,神經網路410之訓練可用以訓練並調諧呈現引擎及如圖6中所展示由遠端系統140提供至用戶端的相關聯呈現引擎模型。
作為另一實例,神經網路410之訓練可在資料擷取器件(例如,112、114、152、154)經調適以不僅擷取媒體資料(例如,210)而且提供該媒體資料與用於該媒體資料之一或多個呈現引擎模型的情況下使用,如圖2B中所展示。為了說明,知曉資料擷取器件112之能力及由資料擷取器件112擷取的媒體資料之特性,資料擷取器件112之製造者可設計適合於呈現由資料擷取器件112擷取之媒體資料的呈現引擎模型,資料擷取器 件112可將呈現引擎模型提供給其擷取的媒體資料。呈現引擎模型可藉由製造者預先組態,且可描述已如流程700中所描述經訓練及調諧的呈現引擎(例如,神經網路)。與呈現引擎模型相關聯的呈現引擎可適合於資料擷取器件112之能力及/或其產生的媒體資料之特性。
返回至流程700,媒體資料樣本702可用作神經網路410之訓練輸入。媒體資料樣本702可包括影像、視訊及/或音訊資料之n個樣本,其中n為大於或等於一的整數。在一些實例中,媒體資料樣本702可包括由一或多個資料擷取器件擷取的原始影像或圖框(例如,影像及/或視訊圖框)。
媒體資料樣本702可用以訓練神經網路410以達成特定處理結果及/或呈現意圖。目標可為找到最佳調諧及組態參數(例如,權重、偏差等)以達成特定處理結果及/或呈現意圖。
媒體資料樣本702首先經由神經網路410(例如,經由輸入層402、隱藏層404及輸出層406)基於節點408A至408C之現有權重或神經網路410中之節點408A至408C之間的互連而處理。神經網路410接著經由輸出層406輸出經產生用於媒體資料樣本702的呈現輸出704。來自神經網路410之呈現輸出704經提供至損失函數706,諸如均方誤差(MSE)函數或任何其他損失函數,其產生用於神經網路410之回饋708。回饋708提供呈現輸出704中之成本或誤差(例如,均方誤差)。在一些情況下,成本或誤差與目標或理想輸出(諸如用於媒體資料樣本702之目標呈現輸出)有關。
神經網路410可基於回饋708調整/調諧節點408A至408C之權重或神經網路410中之節點408A至408C之間的互連。藉由基於回饋708調整/調整權重,神經網路410可減小神經網路410之呈現輸出(例如,704) 的誤差並最佳化神經網路410之效能及輸出。程序可重複某一數目個迭代用於訓練資料(例如,該媒體資料樣本702)之每一集合直至神經網路410中之權重經調諧至所需位準為止。
在揭示實例系統及概念後,本發明現在轉至用於向媒體項提供呈現引擎模型的實例方法800,如圖8中所展示。為清楚起見,方法800係參考經組態以執行方法800中之各種步驟的媒體處理系統102及圖1中展示之各個組件以及圖4、圖5及圖7中展示之神經網路410來描述。本文中概述之步驟為實例且可以其任何組合(包括排除、添加或修改某些步驟之組合)實施。
在步驟802處,媒體處理系統102獲得由資料擷取器件(例如,112)擷取的媒體資料(例如,210)。該媒體資料可包括例如原始影像資料、原始視訊資料、原始音訊資料、後設資料等。
在步驟804處,媒體處理系統102將呈現引擎模型(例如,230)嵌入於含有該媒體資料(例如,210)的媒體項(例如,220)中。呈現引擎模型可包括經組態以處理媒體項中之媒體資料並產生特定媒體資料輸出(例如,呈現輸出310)的神經網路(例如,410)之描述(例如,402)。呈現引擎模型可經最佳化或定製用於擷取媒體資料所根據之條件、媒體資料之特性、用於解密媒體資料、提供特定處理及/或呈現選項或特徵至使用者的計算複雜度的量等。
描述可界定用於神經網路之神經網路架構(例如,400),諸如神經網路之結構(例如,層之數目、每一層中之節點的數目、層之互連等)、藉由神經網路實施的濾波器或操作之集合、藉由神經網路實施之激勵函數、沿著神經網路中之互連層之路徑實施的參數(例如,權重、偏差 等)等。在一些情況下,神經網路之描述可界定神經網路中之層如何互連,如何基於媒體資料形成神經網路之輸入(例如,輸入或資料片大小及特性等)及如何自神經網路形成輸出(例如輸出大小及特性等)。
舉例而言,描述可指示輸入為來自媒體資料之128×128資料片,且神經網路輸出來自媒體資料之64×64×3資料貼片並組合或拼塊64×64×3個輸出資料片以獲得最終輸出。此外,在一些情況下,神經網路之描述可界定神經網路之一或多個任務,諸如用於以下各者的一或多個定製任務:編碼媒體資料、解碼媒體資料、壓縮或解壓縮媒體資料、執行影像處理操作(例如,影像恢復、影像增強、去馬賽克、濾波、縮放、色彩校正、色彩轉換、雜訊減小、空間濾波、影像呈現等)、執行圖框速率轉換(例如,向上轉換、向下轉換)、執行音訊信號修改操作(例如,自窄頻帶音訊輸入檔案產生寬頻音訊信號)等。
在步驟806處,媒體處理系統102可提供(例如,發送、儲存、輸出等)含有媒體資料(例如,210)及呈現引擎模型(例如,230)之媒體項(例如,220)至接收者(例如,計算引擎110、遠端系統120、遠端系統130、儲存器件或其他接收者)以用於呈現及/或儲存。在一些情況下,接收者可為媒體處理系統102內之器件或組件。在其他情況下,接收者可為單獨或外部器件,諸如伺服器、儲存系統、請求媒體項的用戶端器件、媒體處理系統102(例如,經由指令或信號)識別為媒體項之預期接收者的用戶端器件,等。
媒體項中之呈現引擎模型可包括用於執行神經網路以處理媒體項(例如,220)中之媒體資料(例如,210)並基於神經網路之描述產生特定媒體資料輸出(例如,呈現輸出310)的指令。指令可向接收者指示如 何基於神經網路之描述執行神經網路並產生特定媒體輸出。接收者可接收媒體項並使用媒體項中之呈現引擎模型以執行神經網路以處理及呈現媒體項中之媒體資料。神經網路可使用媒體資料作為輸入以產生呈現之媒體資料輸出。
在一些情況下,媒體處理系統102可將多個呈現引擎模型(例如,230、240)及/或位址(例如,604)包括在媒體項中。舉例而言,媒體處理系統102可將額外呈現引擎模型(例如,240)嵌入於媒體項(例如,220)中。額外呈現引擎模型可包括經組態以處理媒體資料(例如,210)並產生不同媒體資料輸出的額外神經網路之額外描述。額外描述可界定用於額外神經網路之不同神經網路架構。不同神經網路架構可基於不同神經網路層、濾波器、激勵函數、參數等而定製用於不同操作結果。媒體處理系統102可發送具有呈現引擎模型及額外呈現引擎模型之媒體項至接收者以用於處理及呈現媒體資料。
接收者可接收媒體項並選擇多個呈現引擎模型(例如,呈現引擎模型或額外呈現引擎模型)中之一者,且基於所選擇的呈現引擎模型,產生與所選擇呈現引擎模型相關聯之各別神經網路。接收者可接著使用各別神經網路來處理媒體項中之媒體資料以自各別神經網路獲得或產生媒體資料輸出。
在一些情況下,方法800可包括產生經組態以處理及呈現原始媒體資料的測試神經網路及基於媒體資料樣本(例如,702)訓練該測試神經網路。測試神經網路可包括一測試神經網路架構,其可包括特定神經網路結構(例如,層、節點、互連件等)、測試濾波器或操作、測試激勵函數、測試參數(例如,權重、偏差等)等等。測試神經網路之訓練可包括 使用測試神經網路處理媒體資料樣本,基於與媒體資料樣本相關聯的一或多個輸出(例如,704)判定測試神經網路之效能,基於測試神經網路之效能判定對測試神經網路(及/或測試神經網路架構)之一或多個調整(例如,708),及基於測試神經網路之效能調整測試神經網路(例如,測試神經架構、測試參數、測試濾波器或操作、測試激勵函數、測試神經網路中之層等)。
在一些情況下,判定測試神經網路之效能可包括判定測試神經網路之準確程度及/或來自測試神經網路之一或多個輸出的損失或誤差。舉例而言,判定測試神經網路之效能可包括將損失函數(例如,706)應用於一或多個輸出以產生回饋(例如,708),回饋可包括損失或誤差計算。回饋可用以識別及進行調整以調諧測試神經網路。
在一些情況下,訓練及一或多個調整可用以判定與媒體項(例如,220)中之呈現引擎模型(例如,230)相關聯的神經網路架構。舉例而言,測試神經網路架構及經由訓練判定的對該測試神經網路架構進行的一或多個調整可用以判定可用作包括於媒體項中的呈現引擎模型之基礎的一特定神經網路架構及組態。
在一些實施中,方法800可包括將至一遠端呈現引擎模型或該遠端呈現引擎模型之一遠端位置的位址(例如,604)嵌入於媒體項中。遠端呈現引擎模型可包括經組態以處理媒體資料並產生各別媒體資料輸出的神經網路之各別描述。具有位址之媒體項可經發送至一接收者,其可使用該位址以自遠端位置擷取遠端呈現引擎模型,並基於遠端呈現引擎模型中之各別描述,產生與遠端呈現引擎模型相關聯的神經網路並使用神經網路來處理媒體項中之媒體資料以產生各別媒體資料輸出(例如,媒體 資料之呈現)。
在一些實例中,方法800可藉由計算器件或裝置(諸如在圖9中展示之計算器件或圖1中展示之媒體處理系統102)執行。在一些情況下,計算器件或裝置可包括處理器、微處理器、微電腦或經組態以實施方法800之步驟的器件之其他組件。在一些實例中,計算器件或裝置可包括經組態以擷取媒體資料(諸如音訊、影像及/或視訊資料(例如,視訊圖框))的資料擷取器件(例如,112、114、152、154)。舉例而言,計算器件可包括具有資料擷取器件或系統之行動器件(例如數位攝影機、IP攝影機、包括影像擷取器件之行動電話或平板電腦、或具有資料擷取器件之其他類型的系統)。在一些實例中,資料擷取器件可與計算器件分開,在此情況下計算器件接收所擷取媒體資料。
在一些情況下,計算器件可包括用於顯示輸出媒體資料(諸如所呈現影像、視訊及/或音訊)之顯示器。在一些情況下,計算器件可包括視訊編解碼器。計算器件可進一步包括經組態以傳達資料(諸如影像、音訊及/或視訊資料)之網路介面。網路介面可經組態以傳達基於網際網路協定(IP)之資料或其他合適之網路資料。
方法800經說明為邏輯流程圖,其步驟表示可以硬體、電腦指令或其組合實施之一系列步驟或操作。在電腦指令之上下文中,操作表示儲存於一或多個電腦可讀儲存媒體上之當藉由一或多個處理器執行時執行所敍述之操作的電腦可執行指令。一般而言,電腦可執行指令包括執行特定功能或實施特定資料類型的常式、程式、目標、組件、資料結構等。描述操作之次序並不意欲被理解為限制或要求,且任何數目個經描述操作可按任何次序及/或與實施程序並行地組合。
另外,方法800可在經組態有可執行指令之一或多個電腦系統之控制下執行,且可被實施為共同在一或多個處理器上執行之程式碼(例如,可執行指令、一或多個電腦程式或一或多個應用程式)、藉由硬體實施或其組合。如上文所提及,程式碼可儲存於電腦可讀或機器可讀儲存媒體上,例如,呈包含可由一或多個處理器執行之複數個指令之電腦程式的形式。電腦可讀或機器可讀儲存媒體可為非暫時性的。
如上文所描述,神經網路可用以呈現媒體資料。任何合適的神經網路可用以呈現媒體資料。可使用的神經網路之說明性實例包括卷積神經網路(CNN)、自動編碼器、深度信念網(DBN)、遞迴神經網路(RNN)或任何其他合適之神經網路。
在一些實例中,經解碼或呈現之資料可自輸出介面輸出至儲存器件。類似地,經解碼或呈現之資料可藉由輸入介面自儲存器件存取。儲存器件可包括多種分散式或本端存取之資料儲存媒體中之任一者,諸如,硬碟機、Blu-ray碟片、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體或用於儲存經編碼視訊資料之任何其他合適之數位儲存媒體。在另一實例中,儲存器件可對應於檔案伺服器或可儲存經解碼或呈現之資料的另一中間儲存器件。器件可經由串流傳輸或下載而自儲存器件存取所儲存之資料。檔案伺服器可為能夠儲存資料且將彼資料傳輸至目的地器件的任何類型之伺服器。實例檔案伺服器包括網頁伺服器(例如,用於網站)、FTP伺服器、網路附加儲存(NAS)器件或本端磁碟機。器件可經由任何標準資料連接(包括網際網路連接)而存取資料。此可包括適合於存取儲存於伺服器上之資料的無線通道(例如,Wi-Fi連接)、有線連接(例如,DSL、纜線數據機等)或兩者之組合。自儲存器件的資料之傳輸可為串流 傳輸、下載傳輸或其組合。
本發明之技術可應用於多種多媒體應用中之任一者中,諸如,空中電視廣播、有線電視傳輸、衛星電視傳輸、網際網路串流視訊傳輸(諸如,經由HTTP之動態自適應串流(DASH))、資料儲存媒體上之數位視訊、儲存於資料儲存媒體上的數位媒體之解碼或其他應用。在一些實例中,系統可經組態以支援單向或雙向視訊傳輸從而支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
在前述描述中,參考其特定實施例描述申請案之態樣,但熟習此項技術者將認識到本申請案不限於此。因此,儘管本文中已詳細描述申請案之說明性實施例,但應理解,本發明概念可以其他方式不同地體現並使用,且所附申請專利範圍意欲解釋為包括此等變化。上文所描述之標的物之各種特徵及態樣可單獨地或聯合地使用。此外,實施例可用於超出本文中所描述之彼等環境及應用的任何數目個環境及應用,而不脫離本說明書之更廣精神及範疇。因此,本說明書及圖式被視為說明性而非限定性。出於說明之目的,以特定次序描述方法。應瞭解,在替代實施例中,可以與所描述之次序不同之次序來執行該等方法。
在組件被描述為「經組態以」執行某些操作之情況下,可(例如)藉由設計電子電路或其他硬體以執行操作、藉由程式化可程式化電子電路(例如,微處理器或其他適合之電子電路)以執行操作或其任何組合來實現此組態。
一般技術者將瞭解,在不脫離本說明書之範疇之情況下,本文中所使用之小於(「<」)及大於(「>」)符號或術語可分別用小於或等於(「
Figure 108146040-A0305-02-0047-1
」)及大於或等於(「
Figure 108146040-A0305-02-0047-2
」)符號替換。
結合本文中所揭示之特徵而描述之各種說明性邏輯區塊、模組、電路及演算法步驟可被實施為電子硬體、電腦軟體、韌體或其組合。為了清楚地說明硬體與軟體之此可互換性,各種說明性組件、區塊、模組、電路及步驟已在上文大體按其功能性加以了描述。將此功能性實施為硬體抑或軟體取決於特定應用及強加於整個系統上之設計約束。熟習此項技術者可針對每一特定應用而以變化之方式實施所描述之功能性,而不應將此等實施決策解譯為致使脫離本發明之範疇。
本文中所描述之技術亦可實施於電子硬體、電腦軟體、韌體或其任何組合中。此等技術可實施於多種器件中之任何者中,諸如,通用電腦、無線通信器件手機或具有多種用途(包括在無線通信器件手機及其他器件中之應用)之積體電路器件。可將描述為模組或組件之任何特徵共同實施於整合式邏輯器件中或分開實施為離散但可互操作之邏輯器件。若以軟體實施,則該等技術可至少部分由包含包括當經執行時執行上文所描述方法中之一或多者之指令之程式碼的電腦可讀資料儲存媒體實現。電腦可讀資料儲存媒體可形成電腦程式產品之部分,電腦程式產品可包括封裝材料。電腦可讀媒體可包括記憶體或資料儲存媒體,諸如,隨機存取記憶體(RAM),諸如,同步動態隨機存取記憶體(SDRAM)、唯讀記憶體(ROM)、非揮發性隨機存取記憶體(NVRAM)、電可抹除可程式化唯讀記憶體(EEPROM)、快閃記憶體、磁性或光學資料儲存媒體,及其類似者。另外或替代地,該等技術可至少部分由電腦可讀通信媒體實現,電腦可讀通信媒體攜載或傳達呈指令或資料結構形式且可由電腦存取、讀取及/或執行的程式碼,諸如,經傳播的信號或波。
程式碼可由可包括一或多個處理器之處理器執行,諸如, 一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效積體或離散邏輯電路。此處理器可經組態以執行本發明中所描述之技術中之任一者。通用處理器可為微處理器;但在替代例中,處理器可為任何習知之處理器、控制器、微控制器或狀態機。處理器亦可實施為計算器件之組合,例如,DSP與微處理器之組合、複數個微處理器、結合DSP核心之一或多個微處理器或任何其他此類組態。因此,如本文中所使用之術語「處理器」可指前述結構中之任一者、前述結構之任何組合或適合於實施本文中所描述之技術的任何其他結構或裝置。
圖9說明可實施本文中所描述之各種技術的計算器件之實例計算系統架構900。舉例而言,計算系統架構900可藉由圖1中所展示的媒體處理系統102實施以執行本文中所描述之媒體資料處理及呈現技術。計算系統架構900之組件經展示使用連接件905(諸如匯流排)彼此電連通。實例計算器件900包括處理單元(CPU或處理器)910及計算器件連接件905,其將包括計算器件記憶體915(諸如唯讀記憶體(ROM)920及隨機存取記憶體(RAM)925)耦接至處理器910的各種計算器件組件。計算器件900可包括直接與處理器910連接、非常接近於該處理器910或作為該處理器910之部分整合的高速記憶體之快取記憶體。計算器件900可將來自記憶體915及/或儲存器件930之資料複本至快取記憶體912,以供處理器910快速存取。以此方式,快取記憶體可提供避免處理器910在等待資料時發生延遲的效能提昇。此等及其他模組可控制或經組態以控制處理器910來執行各種動作。其他計算器件記憶體915亦可係可供使用的。該記憶體915可包括具有不同效能特性之多個不同類型記憶體。處理器910可包括 任一通用處理器及經組態以控制處理器910以及其中軟體指令併入至處理器設計中之專用處理器的硬體或軟體服務(諸如儲存於儲存器件930中的服務1 932、服務2 934及服務3 936)。處理器910可為自含系統,其含有多個核心或處理器、匯流排、記憶體控制器、快取記憶體等等。多核心處理器可為對稱或不對稱的。
為使得使用者能夠與計算器件900互動,輸入器件945可表示任何數目之輸入機構,諸如用於話音之麥克風、用於示意動作或圖形輸入之觸敏式螢幕、鍵盤、滑鼠、運動輸入件、揚聲器等等。輸出器件935亦可為熟習此項技術者已知的若干輸出機構中之一或多者,諸如顯示器、投影儀、電視、揚聲器器件等。在一些情況下,多峰式計算器件可使得使用者能夠提供多個類型之輸入,以與計算器件900進行通信。通信介面940可大體上控管並管理使用者輸入及計算器件輸出。不存在對任一特定硬體配置上之操作的限制且因此此處基本特徵可在其被開發時容易地取代改良之硬體或韌體配置。
儲存器件930為非揮發性記憶體,且可為可儲存由電腦存取之資料的硬碟或其他類型之電腦可讀媒體,諸如磁性卡式帶、快閃記憶卡、固態記憶體器件、數位多功能光碟、卡匣、隨機存取記憶體(RAM)925、唯讀記憶體(ROM)920及其混合。
儲存器件930可包括用於控制處理器910之服務932、934、936。涵蓋其他硬體或軟體模組。儲存器件930可連接至計算器件連接件905。在一個態樣中,執行特定功能之硬體模組可包括結合必要硬體組件(諸如處理器910、連接件905、輸出器件935等)以實施功能的儲存於電腦可讀媒體中的軟體組件。
為了解釋之清楚起見,在一些情況下,本發明技術可表現為包括個別功能區塊,其包括包含軟體或硬體及軟體之組合中所體現的器件、器件組件、方法中之步驟或常式的功能區塊。
在一些實施例中,電腦可讀儲存器件、媒體及記憶體可包括含有位元串流及類似者之纜線或無線信號。然而,當提到時,非暫時性電腦可讀儲存媒體明確地排除諸如能量、載波信號、電磁波及信號本身之媒體。
可使用儲存或以其他方式可自電腦可讀媒體獲得的電腦可執行指令實施根據上文所描述之實例的方法。此等指令可包括(例如)導致或以其他方式組態通用電腦、專用電腦或處理器件以執行某一功能或功能群組之指令及資料。可經由網路存取所使用的電腦資源之部分。電腦可執行指令可為(例如)二進位中間格式指令,諸如,組合語言、韌體、原始程式碼等。可用於儲存指令、所使用資訊及/或根據所描述實例之方法期間所產生的資訊之電腦可讀媒體的實例包括磁碟或光碟、快閃記憶體、具備非揮發性記憶體之USB器件、網路連接儲存器件等等。
實施根據此等揭示內容之方法的器件可包括硬體、韌體及/或軟體,且可呈多種外觀尺寸中之任一者。此類外觀尺寸之典型實例包括膝上型電腦、智慧型手機、小外觀尺寸個人電腦、個人數位助理、機架式器件、獨立式器件等。本文中所描述之功能性亦可體現於周邊裝置或附加卡。作為進一步之實例,此功能性亦可實施於不同晶片或執行於單一器件中之不同程序中的電路板上。
該等指令、用於輸送此等指令之媒體、用於執行此等媒體之計算資源,及用於支援此等計算資源之其他結構為用於提供本發明中所 描述之功能的實例構件。
儘管多種實例及其他資訊用於解釋屬於所附申請專利範圍之範圍內的態樣,但基於此等實例中之特定特徵或配置,應認識到並不限制申請專利範圍,此係由於一般技術者將能夠使用此等實例以導出廣泛多種實施。另外且儘管可已以特定於結構性特徵及/或方法步驟之實例的語言來描述一些標的物,但應理解,所附申請專利範圍中所定義之標的物未必限於此等所描述特徵或動作。舉例而言,此功能性可不同地分佈,或執行於除了本文中所識別之彼等組件的組件中。實情為,將所描述特徵及步驟揭示為屬於所附申請專利範圍之範疇內的組件、計算器件及方法之實例。
列舉集合「中之至少一者」之技術方案語言指示該集合中之一個構件或該集合中之多個構件符合技術方案。舉例而言,列舉「A及B中之至少一者」的技術方案語言意謂A、B或A及B。
100:計算環境
102:媒體處理系統
104:計算組件
106A:處理器
106B:處理器
106N:處理器
108:儲存器
110:計算引擎
112:資料擷取器件
114:資料擷取器件/圖形處理單元(GPU)
116:計算引擎
118:計算引擎
120:遠端系統
130:遠端系統
140:遠端系統
150:計算引擎
152:資料擷取器件
154:資料擷取器件
156:儲存器

Claims (31)

  1. 一種提供用於原始媒體資料之一呈現引擎模型的方法,該方法包含:獲得由一資料擷取器件擷取之媒體資料,該媒體資料包含影像資料、視訊資料及音訊資料中之至少一者;將該呈現引擎模型嵌入於含有該媒體資料之一媒體項中,該呈現引擎模型包含經組態以處理該媒體資料並產生可被顯示的一特定呈現資料輸出的一神經網路之一描述,該描述界定用於該神經網路之一神經網路架構;將一額外呈現引擎模型嵌入於該媒體項中,該額外呈現引擎模型包含至經組態以處理該媒體資料並產生可被顯示的一各別呈現資料輸出的一額外神經網路之一額外描述的一遠端位置的一位址,該額外描述界定用於該額外神經網路之一各別神經網路架構;及提供該媒體項至一或多個器件,其中該媒體項中嵌入有該呈現引擎模型,該媒體項中之該呈現引擎模型包括用於執行該神經網路以基於該神經網路之該描述來處理該媒體資料並產生可被顯示的該特定呈現資料輸出的指令。
  2. 如請求項1之方法,其中該神經網路架構包含沿著該神經網路架構中之互連層之一路徑實施的一組濾波器、激勵函數及參數,其中該等參數包含與該等互連層中之一或多者相關聯的權重。
  3. 如請求項2之方法,其中該神經網路之該描述包含: 連接資訊,其界定該等互連層如何連接以形成互連層之該路徑;輸入資訊,其界定如何基於該媒體資料形成用於該神經網路之一輸入;及輸出資訊,其界定如何形成來自該神經網路之一輸出。
  4. 如請求項1之方法,其中該神經網路之該描述界定該神經網路之一或多個定製任務,該一或多個定製任務包含以下各者中之至少一者:編碼該媒體資料、解碼該媒體資料、對該媒體資料執行一或多個壓縮操作、對該媒體資料執行一或多個影像處理操作、執行一圖框速率轉換操作,及執行一音訊信號修改操作。
  5. 如請求項4之方法,其中該一或多個影像處理操作包含以下各者中之至少一者:一影像恢復操作、一影像增強操作、一濾波操作、一縮放操作,及一影像呈現操作。
  6. 如請求項1之方法,其中該媒體項包含一資料檔案或一資料串流,該方法進一步包含:將一額外呈現引擎模型嵌入於該媒體項中,該額外呈現引擎模型包含經組態以處理該媒體資料並產生可被顯示的一不同呈現資料輸出的一額外神經網路之一額外描述,該額外描述界定用於該額外神經網路之一不同神經網路架構,該不同神經網路架構係基於以下各者中之至少一者而定製用於一不同操作結果:經界定用於該不同神經網路架構之不同層、不同濾波器、不同激勵函數及不同參數;及 提供該媒體項至該一或多個器件,其中該媒體項中嵌入有該呈現引擎模型及該額外呈現引擎模型。
  7. 如請求項6之方法,其進一步包含:基於該呈現引擎模型或該額外呈現引擎模型中之一者,產生該神經網路或該不同神經網路中之一者;及使用該神經網路或該不同神經網路中之該一者處理該媒體資料以產生該呈現資料輸出或該不同呈現資料輸出中之一者。
  8. 如請求項1之方法,其中該媒體資料包含來自該資料擷取器件之原始媒體資料,其中該資料擷取器件包含一影像擷取器件、一視訊擷取器件及一音訊擷取器件中之至少一者。
  9. 如請求項1之方法,其進一步包含:該各別神經網路架構係基於以下各者中之至少一者而定製用於一各別操作結果:經界定用於該各別神經網路架構之各別層、各別濾波器、各別激勵函數及各別參數;及提供該媒體項至該一或多個器件,其中該媒體項中嵌入有該呈現引擎模型及該額外呈現引擎模型。
  10. 如請求項9之方法,其進一步包含:基於該位址自該遠端位置擷取該額外神經網路之該額外描述;基於該額外神經網路之該額外描述,產生該額外神經網路;及 使用該額外神經網路處理該媒體資料以產生該各別呈現資料輸出,該各別呈現資料輸出包含呈現之媒體資料。
  11. 如請求項1之方法,其進一步包含:接收該媒體項,其中該媒體項中嵌入有該呈現引擎模型;基於該呈現引擎模型,產生該神經網路;及使用該神經網路來處理該媒體項中之該媒體資料以產生該特定呈現資料輸出,該特定呈現資料輸出包含呈現之媒體資料。
  12. 如請求項1之方法,其中提供具有該呈現引擎模型之該媒體項至該一或多個器件包含將具有該呈現引擎模型之該媒體項儲存於該一或多個器件上及發送具有該呈現引擎模型之該媒體項至該一或多個器件中之至少一者。
  13. 一種用於提供用於原始媒體資料之一呈現引擎模型的裝置,該裝置包含:一記憶體;及一處理器,其經組態以:獲得由一資料擷取器件擷取之媒體資料,該媒體資料包含影像資料、視訊資料及音訊資料中之至少一者;將該呈現引擎模型嵌入於含有該媒體資料之一媒體項中,該呈現引擎模型包含經組態以處理該媒體資料並產生可被顯示的一特定呈現資料輸出的一神經網路之一描述,該描述界定用於該神經網路之 一神經網路架構;將一額外呈現引擎模型嵌入於該媒體項中,該額外呈現引擎模型包含至經組態以處理該媒體資料並產生可被顯示的一各別呈現資料輸出的一額外神經網路之一額外描述的一遠端位置之一位址,該額外描述界定用於該額外神經網路之一各別神經網路架構;及輸出該媒體項,其中該媒體項中嵌入有該呈現引擎模型,該媒體項中之該呈現引擎模型包括指定如何執行該神經網路以基於該神經網路之該描述來處理該媒體資料並產生可被顯示的該特定呈現資料輸出的指令。
  14. 如請求項13之裝置,其中該神經網路架構包含沿著該神經網路架構中之互連層之一路徑實施的一組濾波器、激勵函數及參數,其中該等參數包含與該等互連層中之一或多者相關聯的權重。
  15. 如請求項14之裝置,其中該神經網路之該描述包含:連接資訊,其界定該等互連層如何連接以形成互連層之該路徑;輸入資訊,其界定如何基於該媒體資料形成用於該神經網路之一輸入;及輸出資訊,其界定如何形成來自該神經網路之一輸出。
  16. 如請求項13之裝置,其中該神經網路之該描述界定該神經網路之一或多個定製任務,該一或多個定製任務包含以下各者中之至少一者:編碼該媒體資料、解碼該媒體資料、對該媒體資料執行一或多個壓縮操作、對 該媒體資料執行一或多個影像處理操作、執行一圖框速率轉換操作,及執行一音訊信號修改操作。
  17. 如請求項16之裝置,其中該一或多個影像處理操作包含以下各者中之至少一者:一影像恢復操作、一影像增強操作、一濾波操作、一縮放操作,及一影像呈現操作。
  18. 如請求項13之裝置,其中該媒體項包含一資料檔案或一資料串流,其中該處理器經組態以:將一額外呈現引擎模型嵌入於該媒體項中,該額外呈現引擎模型包含經組態以處理該媒體資料並產生可被顯示的一不同呈現資料輸出的一額外神經網路之一額外描述,該額外描述界定用於該額外神經網路之一不同神經網路架構,該不同神經網路架構係基於以下各者中之至少一者而定製用於一不同操作結果:經界定用於該不同神經網路架構之不同層、不同濾波器、不同激勵函數及不同參數;及輸出該媒體項,其中該媒體項中嵌入有該呈現引擎模型及該額外呈現引擎模型。
  19. 如請求項18之裝置,其中該處理器經組態以進行以下操作:基於該呈現引擎模型或該額外呈現引擎模型中之一者產生該神經網路或該不同神經網路中之一者;及使用該神經網路或該不同神經網路中之該一者處理該媒體資料以產生該呈現資料輸出或該不同呈現資料輸出中之一者。
  20. 如請求項13之裝置,其中該裝置包含以下各者中之至少一者:一行動裝置、該資料擷取器件、該一或多個器件及用於顯示該特定呈現資料輸出的一顯示器。
  21. 如請求項13之裝置,其中該處理器經組態以進行以下操作:該各別神經網路架構係基於以下各者中之至少一者而定製用於一各別操作結果:經界定用於該各別神經網路架構之各別層、各別濾波器、各別激勵函數及各別參數;及輸出該媒體項,其中該媒體項中嵌入有該呈現引擎模型及該額外呈現引擎模型。
  22. 如請求項21之裝置,其中該處理器經組態以進行以下操作:基於該位址自該遠端位置擷取該額外神經網路之該額外描述;基於該額外神經網路之該額外描述,產生該額外神經網路;及使用該額外神經網路來處理該媒體資料以產生該各別呈現資料輸出,該各別呈現資料輸出包含呈現之媒體資料。
  23. 如請求項13之裝置,其中該處理器經組態以進行以下操作:基於該媒體項中之該呈現引擎模型產生該神經網路;及使用該神經網路來處理該媒體項中之該媒體資料以產生該特定呈現資料輸出,該特定呈現資料輸出包含呈現之媒體資料。
  24. 如請求項13之裝置,其中該裝置包含一行動器件。
  25. 如請求項13之裝置,其進一步包含用於擷取該媒體資料之該資料擷取器件。
  26. 如請求項13之裝置,其進一步包含用於顯示一或多個影像之一顯示器。
  27. 一種非暫時性電腦可讀儲存媒體,其用於提供用於原始媒體資料之一呈現引擎模型,該非暫時性電腦可讀儲存媒體包含:儲存於其中之指令,該等指令在由一或多個處理器執行時促使該一或多個處理器執行以下操作:獲得由一資料擷取器件擷取之媒體資料,該媒體資料包含影像資料、視訊資料及音訊資料中之至少一者;將該呈現引擎模型嵌入於含有該媒體資料之一媒體項中,該呈現引擎模型包含經組態以處理該媒體資料並產生可被顯示的一特定呈現資料輸出的一神經網路之一描述,該描述界定用於該神經網路之一神經網路架構;將一額外呈現引擎模型嵌入於該媒體項中,該額外呈現引擎模型包含至經組態以處理該媒體資料並產生可被顯示的一各別呈現資料輸出的一額外神經網路之一額外描述的一遠端位置的一位址,該額外描述界定用於該額外神經網路之一各別神經網路架構;及輸出該媒體項,其中該媒體項中嵌入有該呈現引擎模型,該媒體 項中之該呈現引擎模型包括用於執行該神經網路以基於該神經網路之該描述來處理該媒體資料並產生可被顯示的該特定呈現資料輸出的指令。
  28. 如請求項27之非暫時性電腦可讀儲存媒體,其中該神經網路架構包含沿著該神經網路架構中之互連層之一路徑實施的一組濾波器、激勵函數及參數,其中該等參數包含與該等互連層中之一或多者相關聯的權重。
  29. 如請求項28之非暫時性電腦可讀儲存媒體,其中該神經網路之該描述包含:連接資訊,其界定該等互連層如何連接以形成互連層之該路徑;輸入資訊,其界定如何基於該媒體資料形成用於該神經網路之一輸入;及輸出資訊,其界定如何形成來自該神經網路之一輸出。
  30. 如請求項27之非暫時性電腦可讀儲存媒體,其中該神經網路經組態以執行包含以下各者中之至少一者的一或多個定製任務:編碼該媒體資料、解碼該媒體資料、對該媒體資料執行一或多個壓縮操作、對該媒體資料執行一或多個影像處理操作、執行一圖框速率轉換操作,及執行一音訊信號修改操作。
  31. 如請求項27之非暫時性電腦可讀儲存媒體,其儲存額外指令,該等額外指令在由該一或多個處理器執行時促使該一或多個處理器執行以下操 作:將一額外呈現引擎模型嵌入於該媒體項中,該額外呈現引擎模型包含經組態以處理該媒體資料並產生可被顯示的一不同呈現資料輸出的一額外神經網路之一額外描述,該額外描述界定用於該額外神經網路之一不同神經網路架構,該不同神經網路架構係基於以下各者中之至少一者而定製用於一不同操作結果:經界定用於該不同神經網路架構之不同層、不同濾波器、不同激勵函數及不同參數;及輸出該媒體項,其中該媒體項中嵌入有該呈現引擎模型及該額外呈現引擎模型。
TW108146040A 2018-12-17 2019-12-16 用於媒體資料之嵌入式呈現引擎 TWI749426B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/222,885 2018-12-17
US16/222,885 US10904637B2 (en) 2018-12-17 2018-12-17 Embedded rendering engine for media data

Publications (2)

Publication Number Publication Date
TW202028997A TW202028997A (zh) 2020-08-01
TWI749426B true TWI749426B (zh) 2021-12-11

Family

ID=69160434

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108146040A TWI749426B (zh) 2018-12-17 2019-12-16 用於媒體資料之嵌入式呈現引擎

Country Status (6)

Country Link
US (1) US10904637B2 (zh)
EP (1) EP3899802A1 (zh)
KR (1) KR20210101233A (zh)
CN (1) CN113196302A (zh)
TW (1) TWI749426B (zh)
WO (1) WO2020131645A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10945033B2 (en) * 2018-03-14 2021-03-09 Idomoo Ltd. System and method to generate a customized, parameter-based video
US11393132B2 (en) * 2019-03-07 2022-07-19 Samsung Electronics Co., Ltd. Mesh compression
US11067786B2 (en) * 2019-06-07 2021-07-20 Leica Microsystems Inc. Artifact regulation methods in deep model training for image transformation
US11620476B2 (en) * 2020-05-14 2023-04-04 Micron Technology, Inc. Methods and apparatus for performing analytics on image data
US11678018B2 (en) * 2020-09-15 2023-06-13 Arris Enterprises Llc Method and system for log based issue prediction using SVM+RNN artificial intelligence model on customer-premises equipment
US11941139B2 (en) * 2020-12-10 2024-03-26 Disney Enterprises, Inc. Application-specific access privileges in a file system
KR102610429B1 (ko) * 2021-09-13 2023-12-06 연세대학교 산학협력단 인공신경망과 연산 가속기 구조 통합 탐색 장치 및 방법
GB2612306A (en) * 2021-10-25 2023-05-03 Sony Interactive Entertainment Inc Streaming system and method
US11711449B2 (en) 2021-12-07 2023-07-25 Capital One Services, Llc Compressing websites for fast data transfers
KR20240011089A (ko) 2022-07-18 2024-01-25 고려대학교 산학협력단 심층 신경망의 선형 근사를 기반으로 하는 설명 맵 생성 장치 및 방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201539335A (zh) * 2014-03-21 2015-10-16 Qualcomm Inc 實現神經網路處理器
US20170109584A1 (en) * 2015-10-20 2017-04-20 Microsoft Technology Licensing, Llc Video Highlight Detection with Pairwise Deep Ranking
US20180150704A1 (en) * 2016-11-28 2018-05-31 Kwangwoon University Industry-Academic Collaboration Foundation Method of detecting pedestrian and vehicle based on convolutional neural network by using stereo camera
TW201822076A (zh) * 2016-12-13 2018-06-16 瑞典商安訊士有限公司 用於訓練神經網路之方法、電腦程式產品及裝置
WO2018150083A1 (en) * 2017-02-16 2018-08-23 Nokia Technologies Oy A method and technical equipment for video processing
TW201840187A (zh) * 2016-12-21 2018-11-01 瑞典商安訊士有限公司 用於偵測事件之方法及設備
TW201841131A (zh) * 2017-03-22 2018-11-16 美商美光科技公司 用於操作神經網路的裝置及方法

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US8261315B2 (en) * 2000-03-02 2012-09-04 Tivo Inc. Multicasting multimedia content distribution system
US7068789B2 (en) * 2001-09-19 2006-06-27 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) group security infrastructure and method
US7650624B2 (en) * 2002-10-01 2010-01-19 Koplar Interactive Systems International, L.L.C. Method and apparatus for modulating a video signal with data
US8046806B2 (en) * 2002-10-04 2011-10-25 Wall William E Multiroom point of deployment module
US7474832B2 (en) * 2002-11-21 2009-01-06 International Business Machines Corporation Personal video recording with storage space distributed among remote personal video recorders
US7614069B2 (en) * 2003-12-01 2009-11-03 General Instrument Corporation Multi-device distributed digital video recording systems and methods
US8095098B2 (en) * 2004-06-01 2012-01-10 Time Warner Cable Inc. Apparatus and methods for network interface and spectrum management
US8763063B2 (en) * 2004-06-01 2014-06-24 Time Warner Cable Enterprises Llc Controlled isolation splitter apparatus and methods
GB2423287B (en) * 2005-02-18 2007-02-21 Visteon Global Tech Inc In-vehicle multimedia system
US20060225105A1 (en) * 2005-04-05 2006-10-05 Scientific-Atlanta, Inc. Networked multi-room system ad insertion
US20070050822A1 (en) * 2005-08-31 2007-03-01 Cable Television Laboratories, Inc. Method and system of providing shared community experience
US20070079341A1 (en) * 2005-10-05 2007-04-05 Scientific-Atlanta, Inc. Dvd multi-room playback after headend conversation
US20070101185A1 (en) * 2005-10-28 2007-05-03 Scientific-Atlanta, Inc. Multi-room network guide with scheduling device indicators
US20070130601A1 (en) * 2005-12-05 2007-06-07 Weiping Li Internet protocol (IP) television
US20070157281A1 (en) * 2005-12-23 2007-07-05 United Video Properties, Inc. Interactive media guidance system having multiple devices
US7721313B2 (en) * 2006-06-30 2010-05-18 Microsoft Corporation Multi-DVR node communication
US20080022330A1 (en) * 2006-06-30 2008-01-24 Microsoft Corporation Multi-DVR Content Management
US20080022331A1 (en) * 2006-06-30 2008-01-24 Microsoft Corporation Multi-DVR Media Stream Transition
CN101536374B (zh) * 2006-09-29 2012-05-09 意大利电信股份公司 通过不同的电子设备享用广播的通信服务的方法
US8612847B2 (en) 2006-10-03 2013-12-17 Adobe Systems Incorporated Embedding rendering interface
US20080155615A1 (en) * 2006-12-22 2008-06-26 Guideworks, Llc Systems and methods for supporting multi-user media content access using index points
US8955030B2 (en) * 2007-03-23 2015-02-10 Wi-Lan, Inc. System and method for personal content access
US20080235587A1 (en) * 2007-03-23 2008-09-25 Nextwave Broadband Inc. System and method for content distribution
US8160426B2 (en) * 2007-10-12 2012-04-17 Rovi Guides, Inc. Storage management of a recording device in a multi-user system
WO2009069692A1 (ja) * 2007-11-27 2009-06-04 Nec Corporation コンテンツ配信システム、コンテンツ配信サーバ、コンテンツ配信方法およびコンテンツ配信用プログラム
JP2009146146A (ja) * 2007-12-13 2009-07-02 Panasonic Corp 情報処理装置およびホームネットワークシステム
US20090162032A1 (en) * 2007-12-21 2009-06-25 Aceurity, Inc. Smart Viewing Rights System and Switch
JP4388125B2 (ja) * 2008-05-13 2009-12-24 株式会社東芝 中継装置、および中継方法
US8929331B2 (en) * 2009-05-22 2015-01-06 Broadcom Corporation Traffic management in a hybrid femtocell/WLAN wireless enterprise network
US9602864B2 (en) * 2009-06-08 2017-03-21 Time Warner Cable Enterprises Llc Media bridge apparatus and methods
US20110066744A1 (en) * 2009-09-17 2011-03-17 General Instrument Corporation Transitioning between Multiple Services in an MPEG Stream
US8644354B2 (en) * 2009-10-14 2014-02-04 Verizon Patent And Licensing Inc. Methods and systems for automatically registering a mobile phone device with one or more media content access devices
US10264029B2 (en) * 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
US8525850B2 (en) 2009-12-31 2013-09-03 International Business Machines Corporation Automatic targeting of browser content to optimal rendering engine
US20110191810A1 (en) * 2010-02-01 2011-08-04 Thomas Christopher L Method and System for Distribution of Computer and Entertainment Information
US8346755B1 (en) 2010-05-04 2013-01-01 Google Inc. Iterative off-line rendering process
US8910196B2 (en) * 2012-01-30 2014-12-09 Syncbak, Inc. Broadcast area identification and content distribution
US8949923B2 (en) * 2012-02-21 2015-02-03 Time Warner Cable Enterprises Llc Remote media streaming
US8797330B1 (en) 2013-10-18 2014-08-05 Google Inc. Systems and methods for detecting and animating changes in application state
US20150382081A1 (en) 2014-06-27 2015-12-31 BlurbIQ, Inc. Generation of video content
US10460231B2 (en) 2015-12-29 2019-10-29 Samsung Electronics Co., Ltd. Method and apparatus of neural network based image signal processor
US10430978B2 (en) 2017-03-02 2019-10-01 Adobe Inc. Editing digital images utilizing a neural network with an in-network rendering layer
US10607393B2 (en) 2017-03-10 2020-03-31 Siemens Healthcare Gmbh Consistent 3D rendering in medical imaging
US10643306B2 (en) * 2017-10-11 2020-05-05 Qualcomm Incoporated Image signal processor for processing images
CN108062780B (zh) 2017-12-29 2019-08-09 百度在线网络技术(北京)有限公司 图像压缩方法和装置
US20190222891A1 (en) * 2018-01-18 2019-07-18 Melo Inc. Systems and methods for managing presentation services

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201539335A (zh) * 2014-03-21 2015-10-16 Qualcomm Inc 實現神經網路處理器
US20170109584A1 (en) * 2015-10-20 2017-04-20 Microsoft Technology Licensing, Llc Video Highlight Detection with Pairwise Deep Ranking
US20180150704A1 (en) * 2016-11-28 2018-05-31 Kwangwoon University Industry-Academic Collaboration Foundation Method of detecting pedestrian and vehicle based on convolutional neural network by using stereo camera
TW201822076A (zh) * 2016-12-13 2018-06-16 瑞典商安訊士有限公司 用於訓練神經網路之方法、電腦程式產品及裝置
TW201840187A (zh) * 2016-12-21 2018-11-01 瑞典商安訊士有限公司 用於偵測事件之方法及設備
WO2018150083A1 (en) * 2017-02-16 2018-08-23 Nokia Technologies Oy A method and technical equipment for video processing
TW201841131A (zh) * 2017-03-22 2018-11-16 美商美光科技公司 用於操作神經網路的裝置及方法

Also Published As

Publication number Publication date
WO2020131645A1 (en) 2020-06-25
EP3899802A1 (en) 2021-10-27
US20200196024A1 (en) 2020-06-18
KR20210101233A (ko) 2021-08-18
CN113196302A (zh) 2021-07-30
TW202028997A (zh) 2020-08-01
US10904637B2 (en) 2021-01-26

Similar Documents

Publication Publication Date Title
TWI749426B (zh) 用於媒體資料之嵌入式呈現引擎
JP2020526994A5 (zh)
US20210150769A1 (en) High efficiency image and video compression and decompression
WO2023030348A1 (zh) 图像生成方法、装置、设备及存储介质
US9456055B2 (en) Apparatus and method for communicating media content
CN112887728A (zh) 电子装置、电子装置的控制方法以及系统
US11809771B2 (en) Orchestrated control for displaying media
US20240048738A1 (en) Methods, apparatuses, computer programs and computer-readable media for processing configuration data
JP2023546392A (ja) マルチレイヤ信号符号化の分散解析
CN115409716B (zh) 视频处理方法、装置、存储介质及设备
TW202312031A (zh) 使用機器學習系統的網路參數子空間中的實例自我調整影像和視訊壓縮
US11854164B2 (en) Method for denoising omnidirectional videos and rectified videos
US11735144B2 (en) Image display apparatus and image displaying method
US20230336795A1 (en) Smart client for streaming of scene-based immersive media
JP7419478B2 (ja) コーデックレート歪み補償ダウンサンプラ
US11991424B2 (en) Immersive media data complexity analyzer for transformation of asset formats
US11930059B2 (en) Immersive media streaming prioritized by frequency of asset reuse
KR102634627B1 (ko) 라이브 스트리밍 방법 및 장치
US20230146230A1 (en) Immersive media analyzer for reuse of scene assets
US20230338834A1 (en) Smart client for streaming of scene-based immersive media to game engine
Amezcua Aragon Real-time neural network based video super-resolution as a service: design and implementation of a real-time video super-resolution service using public cloud services
WO2022173440A1 (en) Parameterized noise synthesis for graphical artifact removal
WO2022232547A1 (en) Learning-based point cloud compression via tearing transform
WO2024039731A1 (en) Systems and methods for quality of experience computation
CN113301427A (zh) 数据处理方法、装置、电子设备和存储介质